.business-profile-mark {
  width: 76px; height: 76px; display: grid; place-items: center; flex: 0 0 auto;
  border: 1px solid #e5d7ee; border-radius: 22px; color: var(--business-brand-accent, #755ca3);
  background: linear-gradient(145deg, #f7f0fa, #fffaf7); font: 600 25px/1 "Source Serif 4", serif;
}

.business-live-card {
  margin-top: 18px; padding: 22px; border: 1px solid #eadfd7; border-radius: 24px;
  background: rgba(255,252,249,.94); box-shadow: 0 10px 28px rgba(81,61,50,.05);
}
.business-live-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.business-live-card-heading p { margin: 0 0 2px; color: #a08070; font-size: 10px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.business-live-card-heading h2 { margin: 0; color: #3e312c; font: 600 25px/1.05 "Source Serif 4", serif; }
.business-directory-summary { min-height: 18px; margin: 0 0 12px; color: #816f65; font-size: 12px; }
.business-directory-list { display: grid; gap: 8px; }
.business-directory-empty { padding: 18px; border: 1px dashed #dfd1c7; border-radius: 16px; color: #8a776d; text-align: center; font-size: 12px; }
.business-directory-empty.error { color: #a4413d; border-color: #efcbc7; background: #fff4f2; }

.business-directory-row {
  width: 100%; display: grid; grid-template-columns: 38px minmax(0,1fr) auto auto 20px;
  align-items: center; gap: 10px; padding: 11px; border: 1px solid #eee3dc; border-radius: 16px;
  color: #493a33; background: #fffdfa; text-align: left; cursor: pointer;
}
.business-directory-row:hover { border-color: #d7c4e5; background: #fbf7fd; }
.business-directory-mark, .business-member-mark {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px;
  color: #72559e; background: #f1eaf6; font-size: 11px; font-weight: 800;
}
.business-directory-identity { min-width: 0; }
.business-directory-identity strong, .business-directory-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.business-directory-identity strong { font-size: 12px; }
.business-directory-identity small { margin-top: 2px; color: #927d72; font-size: 10px; }
.business-directory-role, .business-directory-status { padding: 5px 8px; border-radius: 999px; font-size: 9px; font-weight: 700; white-space: nowrap; }
.business-directory-role { color: #6e5796; background: #f1ebf5; }
.business-directory-status { color: #4f7656; background: #edf5ed; }
.business-directory-status.removed, .business-directory-status.revoked, .business-directory-status.expired { color: #9a5550; background: #f9ecea; }
.business-directory-status.pending { color: #8d682d; background: #fbf1dc; }
.business-directory-status.delivery-failed { display: inline-flex; align-items: center; gap: 4px; color: #9d3e39; background: #fae9e7; }
.business-directory-status.delivery-failed .material-symbols-rounded { font-size: 14px; }
.business-directory-row > .material-symbols-rounded { color: #ad9a90; font-size: 18px; }

.business-primary-button, .business-secondary-button, .business-danger-button {
  min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  padding: 9px 15px; border-radius: 999px; font-size: 11px; font-weight: 750; cursor: pointer;
}
.business-primary-button[hidden], .business-secondary-button[hidden], .business-danger-button[hidden] { display: none; }
.business-primary-button { border: 0; color: #fff; background: #58413d; box-shadow: 0 7px 16px rgba(88,65,61,.15); }
.business-primary-button .material-symbols-rounded { font-size: 16px; }
.business-primary-button:disabled { opacity: .48; cursor: not-allowed; box-shadow: none; }
.business-secondary-button { border: 1px solid #e4d5ca; color: #69564d; background: #fffaf6; }
.business-danger-button { border: 1px solid #efcac6; color: #a43e39; background: #fff5f3; }

.business-privacy-note { display: flex; gap: 12px; margin-top: 18px; padding: 15px 17px; border: 1px solid #ded1e7; border-radius: 18px; color: #5d4b68; background: #f6f1f8; }
.business-privacy-note > .material-symbols-rounded { color: #7b60a2; }
.business-privacy-note p, .business-privacy-note strong, .business-privacy-note span { display: block; margin: 0; }
.business-privacy-note strong { font-size: 11px; }
.business-privacy-note span { margin-top: 3px; color: #806f87; font-size: 10px; line-height: 1.45; }

.business-dialog { width: min(720px, calc(100% - 28px)); max-height: min(90vh, 820px); padding: 0; border: 0; border-radius: 25px; color: #493a33; background: #fffaf6; box-shadow: 0 30px 90px rgba(55,39,34,.24); overflow: auto; }
.business-dialog[open] { position: fixed; inset: 0; margin: auto; }
.business-dialog::backdrop { background: rgba(40,29,34,.52); backdrop-filter: blur(4px); }
.business-dialog form, .business-invitation-shell { display: grid; gap: 16px; padding: 23px; }
.business-dialog header { display: grid; grid-template-columns: 42px minmax(0,1fr) 34px; align-items: center; gap: 11px; }
.business-dialog header p, .business-dialog header h2, .business-dialog header small { margin: 0; }
.business-dialog header p { color: #9a7e70; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.business-dialog header h2 { margin-top: 2px; font: 600 23px/1.05 "Source Serif 4", serif; }
.business-dialog header small { display: block; margin-top: 3px; color: #8d786d; }
.business-dialog-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px; color: #72559e; background: #f0e9f5; }
.business-dialog-close { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 50%; color: #806e64; background: #f5ece6; cursor: pointer; }
.business-dialog label { display: grid; gap: 6px; color: #5c4940; font-size: 11px; font-weight: 700; }
.business-dialog input:not([type="checkbox"]), .business-dialog select, .business-dialog textarea { width: 100%; min-height: 43px; padding: 9px 11px; border: 1px solid #e3d4ca; border-radius: 13px; color: #463832; background: #fffdfa; font: inherit; }
.business-dialog textarea { min-height: 92px; resize: vertical; line-height: 1.4; }
.business-invite-batch-count { justify-self: end; margin-top: -2px; color: #8c786e; font-size: 9px; font-weight: 600; }
.business-invite-batch-count.error { color: #ae423d; }
.business-csv-import { display: flex; align-items: center; gap: 11px; }
.business-csv-import button { min-height: 34px; padding: 7px 12px; }
.business-csv-import button .material-symbols-rounded { font-size: 15px; }
.business-csv-import button:disabled { opacity: .52; cursor: not-allowed; }
.business-csv-import small { color: #88756b; font-size: 9px; }
.business-invite-review { overflow: hidden; border: 1px solid #e3d6ce; border-radius: 15px; background: #fffdfa; }
.business-invite-review > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 11px 13px; border-bottom: 1px solid #eadfd8; }
.business-invite-review > header strong { font-size: 11px; }
.business-invite-review > header small { color: #8d786d; font-size: 9px; }
.business-invite-review > div { max-height: 250px; overflow: auto; }
.business-invite-review-row { display: grid; grid-template-columns: minmax(160px,1.4fr) minmax(120px,.75fr) minmax(150px,1fr) 30px; align-items: center; gap: 8px; padding: 9px 11px; border-top: 1px solid #eee4de; }
.business-invite-review-row:first-child { border-top: 0; }
.business-invite-review-email { min-width: 0; }
.business-invite-review-email strong, .business-invite-review-email small { display: block; overflow-wrap: anywhere; }
.business-invite-review-email strong { font-size: 10px; }
.business-invite-review-email small { margin-top: 2px; color: #a24740; font-size: 8px; }
.business-invite-review-row select { min-height: 35px; padding: 7px 8px; font-size: 9px; }
.business-invite-review-remove { width: 30px; height: 30px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; color: #a24740; background: #faecea; cursor: pointer; }
.business-invite-review-remove .material-symbols-rounded { font-size: 16px; }
.business-attestation { grid-template-columns: 18px minmax(0,1fr); align-items: start; padding: 13px; border: 1px solid #ded1e7; border-radius: 15px; background: #f7f2f9; }
.business-attestation input { margin-top: 2px; accent-color: #76599d; }
.business-attestation strong, .business-attestation small { display: block; }
.business-attestation small { margin-top: 3px; color: #7e7083; font-weight: 500; line-height: 1.45; }
.business-dialog footer { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.business-invitation-shell footer { display: grid; grid-template-columns: auto 1fr auto auto; }
.business-dialog-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.business-member-overview { display: flex; flex-wrap: wrap; gap: 7px; }
.business-member-overview span { display: inline-flex; align-items: center; gap: 5px; padding: 6px 8px; border-radius: 999px; color: #76645b; background: #f3ebe5; font-size: 9px; font-weight: 700; }
.business-member-overview .material-symbols-rounded { font-size: 14px; }
.business-seat-impact { margin: 0; padding: 10px 12px; border-radius: 12px; color: #6f5d54; background: #f5eee8; font-size: 10px; }
.business-seat-impact.warning { color: #a33f3a; background: #fff0ee; }
.business-form-status { min-height: 16px; margin: 0; color: #76645b; font-size: 10px; }
.business-form-status.error { color: #ae423d; }
.business-form-status.success { color: #4d7956; }
.business-invitation-details { display: grid; grid-template-columns: minmax(110px,auto) 1fr; gap: 8px 15px; margin: 0; padding: 14px; border-radius: 15px; background: #f7f0eb; font-size: 10px; }
.business-invitation-details dt { color: #947d70; }
.business-invitation-details dd { margin: 0; color: #4e3d35; font-weight: 700; }
.settings-tabs button:disabled { opacity: .46; cursor: not-allowed; }
.organization-settings-list .organization-setting-row:disabled { opacity: .82; cursor: default; }
.organization-settings-list .organization-setting-row:disabled .setting-chevron { opacity: .28; }
.settings-dock .business-dock-disabled { display: flex; align-items: center; justify-content: center; gap: 7px; padding: 8px 10px; color: #b3a29a; opacity: .62; cursor: not-allowed; }

html.dark .business-live-card, html.dark .business-directory-row, html.dark .business-dialog { color: #eee5f2; border-color: rgba(255,255,255,.1); background: #292432; }
html.dark .business-live-card-heading h2, html.dark .business-directory-row { color: #f2e9f5; }
html.dark .business-directory-row:hover { background: #332c3e; }

@media (max-width: 620px) {
  .business-live-card { padding: 16px; }
  .business-live-card-heading { align-items: flex-start; }
  .business-primary-button { padding-inline: 11px; }
  .business-directory-row { grid-template-columns: 34px minmax(0,1fr) auto 18px; }
  .business-directory-role { display: none; }
  .business-dialog-fields { grid-template-columns: 1fr; }
  .business-invitation-shell footer { grid-template-columns: 1fr 1fr; }
  .business-invitation-shell footer > span { display: none; }
  .business-invite-review > header { align-items: flex-start; flex-direction: column; gap: 3px; }
  .business-invite-review-row { grid-template-columns: minmax(0,1fr) 30px; }
  .business-invite-review-row select { grid-column: 1 / -1; }
  .business-invite-review-remove { grid-column: 2; grid-row: 1; }
}

/* The authenticated Business settings page shares Home's fluid desktop width. */
.business-organization-grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 18px; margin-top: 18px; align-items: start; }
.business-organization-card { display: grid; gap: 15px; min-width: 0; padding: 25px; border: 1px solid #eadfd7; border-radius: 24px; color: #493a33; background: rgba(255,252,249,.94); box-shadow: 0 10px 28px rgba(81,61,50,.05); }
.business-organization-card .business-eyebrow { margin: 0; color: #9b7b69; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.business-organization-card h2 { margin: -10px 0 0; color: #3e312c; font: 600 28px/1.15 'Source Serif 4',serif; }
.business-organization-card > p:not(.business-eyebrow) { margin: -5px 0 3px; color: #776960; font-size: 14px; line-height: 1.45; }
.business-organization-card label { display: grid; gap: 7px; color: #58463d; font-size: 13px; font-weight: 700; }
.business-organization-card label small { color: #8b7970; font-size: 11px; font-weight: 400; }
.business-organization-card input:not([type=file]), .business-organization-card select { width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid #dfd2c8; border-radius: 12px; color: #493a33; background: #fffdfa; font: 500 14px/1.3 'Albert Sans',sans-serif; }
.business-organization-card input[type=color] { padding: 4px 7px; max-width: 90px; cursor: pointer; }
.business-organization-card input[type=file] { width: 100%; max-width: 290px; font-size: 11px; font-weight: 400; }
.business-organization-card input:focus-visible, .business-organization-card select:focus-visible { outline: 3px solid #c1a9dc; outline-offset: 2px; }
.business-logo-control { display: flex; align-items: center; gap: 18px; padding: 15px; border: 1px solid #e7d9e9; border-radius: 18px; background: #f8f3f8; }
.business-logo-preview { width: 75px; height: 75px; display: grid; place-items: center; flex: 0 0 auto; overflow: hidden; border: 1px solid #dfd1e8; border-radius: 17px; color: #76599d; background: #fff; font: 600 23px/1 'Source Serif 4',serif; }
.business-logo-preview img { width: 100%; height: 100%; object-fit: contain; }
.business-contact-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; padding-top: 13px; border-top: 1px solid #eadfd7; }
.business-contact-fields h3 { grid-column: 1 / -1; margin: 0; color: #493a33; font-size: 14px; }
.business-contact-fields h3 small { color: #8b7970; font-size: 11px; font-weight: 400; }
.business-profile-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; padding-top: 8px; }
.business-profile-actions .business-form-status { min-height: 0; font-size: 12px; }
.business-profile-policy, .business-account-summary { margin: 14px 0 0; color: #75665e; font-size: 13px; }
.business-profile-policy { padding: 13px 16px; border: 1px solid #ead9b8; border-radius: 13px; background: #fbf3e6; }
.business-profile-policy[hidden] { display: none; }
.business-account-summary strong { text-transform: capitalize; }
html.dark .business-organization-card { color: #eee5f2; border-color: rgba(255,255,255,.1); background: #292432; }
html.dark .business-organization-card h2, html.dark .business-contact-fields h3 { color: #eee5f2; }
html.dark .business-organization-card label { color: #e5dbe9; }
html.dark .business-organization-card input:not([type=file]), html.dark .business-organization-card select { color: #eee5f2; border-color: #594d60; background: #332c3e; }
html.dark .business-logo-control { border-color: #594d60; background: #332c3e; }
@media (max-width: 850px) { .business-organization-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .business-organization-card { padding: 18px; }.business-contact-fields { grid-template-columns: 1fr; }.business-logo-control { align-items: flex-start; } }
@media (min-width: 701px) {
  :root { --settings-max: min(1540px, calc(100vw - 48px)); }
  .settings-hero { min-height: 190px; padding-bottom: 35px; }
  .hero-inner, .settings-main { padding-inline: 20px; }
  .settings-hero h1 { font-size: 34px; }
  .organization-line > strong { font-size: 19px; }
  .hero-description, .hero-trust { font-size: 14px; }
  .admin-badge { font-size: 10px; }
  .settings-tabs { width: min(600px, calc(100% - 48px)); max-width: none; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .settings-tabs button { font-size: 14px; }
  .settings-main { padding-top: 22px; }
  #panel-members:not([hidden]) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; align-items: start; }
  #panel-members > .member-summary-card,
  #panel-members > .business-privacy-note,
  #panel-members > .admin-notice { grid-column: 1 / -1; margin-top: 0; }
  #panel-members > .business-live-card { min-width: 0; margin-top: 0; }
  .business-directory-list { max-height: min(52vh,540px); overflow-y: auto; scrollbar-width: thin; }
  .business-live-card-heading p { font-size: 12px; }
  .business-live-card-heading h2 { font-size: 28px; }
  .business-directory-summary { font-size: 14px; line-height: 1.45; }
  .business-directory-row { min-height: 66px; }
  .business-directory-identity strong { font-size: 15px; }
  .business-directory-identity small { font-size: 13px; }
  .business-directory-role, .business-directory-status { font-size: 12px; }
  .business-primary-button, .business-secondary-button, .business-danger-button { min-height: 43px; font-size: 14px; }
  .member-summary-card { min-height: 88px; }
  .member-summary-copy strong { font-size: 26px; }
  .member-summary-copy small, .invite-status-summary .member-summary-copy strong { font-size: 14px; }
  .business-privacy-note strong, .admin-notice strong { font-size: 14px; }
  .business-privacy-note span, .admin-notice p { font-size: 13px; }
  .organization-profile-card { min-height: 116px; display: flex; align-items: center; gap: 22px; padding: 19px 22px; }
  .organization-profile-details { position: static; min-width: 0; }
  .organization-type { font-size: 17px; }
  .organization-account-state { margin-top: 9px; font-size: 14px; }
  .organization-setting-row { min-height: 76px; grid-template-columns: 44px minmax(0,1fr) minmax(160px,.65fr) 18px; gap: 14px; }
  .setting-copy strong { font-size: 19px; }
  .setting-copy small, .setting-value, .serif-value, .status-pill { font-size: 14px; }
  .business-dialog label { font-size: 15px; }
  .business-dialog header p, .business-invite-batch-count, .business-csv-import small { font-size: 12px; }
  .business-dialog header h2 { font-size: 27px; }
  .business-dialog input:not([type="checkbox"]), .business-dialog select, .business-dialog textarea { min-height: 47px; font-size: 15px; }
  .business-attestation small, .business-form-status, .business-seat-impact { font-size: 13px; }
  .business-invitation-details { font-size: 14px; }
}

@media (max-width: 700px) {
  .business-directory-summary { font-size: 13px; line-height: 1.4; }
  .business-directory-identity strong { font-size: 13px; }
  .business-directory-identity small { font-size: 11px; }
  .business-directory-role, .business-directory-status { font-size: 11px; }
  .member-summary-copy small { font-size: 10px; }
  .business-privacy-note strong, .admin-notice strong { font-size: 12px; }
  .business-privacy-note span, .admin-notice p { font-size: 11px; }
  .organization-setting-row { min-height: 67px; }
  .setting-copy small, .setting-value { font-size: 11px; }
  .business-dialog label { font-size: 13px; }
  .business-dialog input:not([type="checkbox"]), .business-dialog select, .business-dialog textarea { font-size: 14px; }
  .business-attestation small, .business-form-status { font-size: 12px; }
}
