:root {
  --brand-hue: 183;
  --brand-saturation: 42%;
  --brand-lightness: 29%;
  --color-brand: hsl(var(--brand-hue) var(--brand-saturation) var(--brand-lightness));
  --color-brand-strong: hsl(var(--brand-hue) 50% 22%);
  --color-brand-soft: hsl(var(--brand-hue) 40% 94%);
  --color-canvas: hsl(190 28% 97%);
  --color-surface: hsl(0 0% 100%);
  --color-text: hsl(210 22% 16%);
  --color-text-muted: hsl(210 11% 43%);
  --color-border: hsl(200 18% 88%);
  --color-focus: hsl(210 82% 46%);
  --color-danger: hsl(4 66% 42%);
  --radius-small: 0.625rem;
  --radius-medium: 0.875rem;
  --radius-large: 1.25rem;
  --shadow-surface: 0 0.75rem 2rem hsl(190 32% 18% / 0.07);
  --shadow-elevated: 0 1.25rem 3.5rem hsl(190 40% 16% / 0.12);
  --sidebar-width: 16.5rem;
  --content-max-width: 90rem;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.auth-page { min-height: 100vh; display: grid; place-items: center; padding: 2rem; background: var(--color-surface-subtle, #f3f7f6); }
.auth-card { width: min(100%, 28rem); padding: 2.5rem; border: 1px solid #dbe5e2; border-radius: 1.25rem; background: #fff; box-shadow: 0 1rem 3rem rgb(19 52 45 / 8%); }
.auth-brand { display: flex; align-items: center; gap: .75rem; margin-bottom: 2rem; }
.auth-form, .field-group { display: grid; gap: .5rem; }
.auth-form { gap: 1.25rem; margin-top: 2rem; }
.auth-form input { width: 100%; padding: .8rem .9rem; border: 1px solid #aebfba; border-radius: .65rem; font: inherit; }
.auth-form input:focus { outline: 3px solid rgb(22 112 92 / 20%); border-color: #16705c; }
.primary-button { min-height: 2.75rem; border: 0; border-radius: .65rem; padding: .75rem 1rem; color: #fff; background: #146b59; font: inherit; font-weight: 700; cursor: pointer; }
.flash { position: fixed; z-index: 10; top: 1rem; left: 50%; translate: -50%; max-width: min(90vw, 36rem); padding: .75rem 1rem; border-radius: .65rem; background: #e8f4f1; color: #16483d; box-shadow: 0 .4rem 1.5rem rgb(0 0 0 / 10%); }
.flash--alert { background: #fff0ed; color: #8a2f20; }
.user-email { color: #52645f; font-size: .875rem; }
.auth-card--wide { width: min(100%, 38rem); }
.auth-links { margin: 1rem 0 0; text-align: center; font-size: .9rem; }
.field-help { color: var(--color-text-muted); font-size: .82rem; }
.form-errors { padding: .8rem 1rem; border-radius: var(--radius-small); background: #fff0ed; color: var(--color-danger); }
.form-surface { max-width: 48rem; margin-inline: auto; padding: var(--space-6); border: 1px solid var(--color-border); border-radius: var(--radius-large); background: var(--color-surface); box-shadow: var(--shadow-surface); }
.guided-form { display: grid; gap: var(--space-4); margin-top: var(--space-5); }
.guided-form input, .guided-form select, .auth-form select { width: 100%; padding: .8rem .9rem; border: 1px solid #aebfba; border-radius: .65rem; background: #fff; }
.form-actions, .setup-actions { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-4); }
.secondary-button { display: inline-flex; align-items: center; text-decoration: none; }
.progress-label { color: var(--color-brand); }
.progress-track { width: 100%; height: .6rem; margin-bottom: var(--space-5); overflow: hidden; border: 0; border-radius: 999px; background: var(--color-border); }
.progress-track::-webkit-progress-bar { background: var(--color-border); }
.progress-track::-webkit-progress-value { background: var(--color-brand); }
.progress-track::-moz-progress-bar { background: var(--color-brand); }
.setup-list { display: grid; gap: var(--space-3); }
.setup-step { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--space-4); padding: var(--space-4); border: 1px solid var(--color-border); border-radius: var(--radius-medium); background: var(--color-surface); text-decoration: none; box-shadow: var(--shadow-surface); }
.setup-step:hover { border-color: var(--color-brand); }
.setup-step small, .record-row small { display: block; margin-top: .25rem; color: var(--color-text-muted); }
.step-number { width: 2rem; height: 2rem; display: grid; place-items: center; border-radius: 50%; background: var(--color-brand-soft); color: var(--color-brand-strong); font-weight: 800; }
.setup-step--complete .step-number { background: var(--color-brand); color: white; }
.record-list { display: grid; gap: var(--space-2); margin-block: var(--space-5); }
.record-row { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-small); }
.inline-form { grid-template-columns: minmax(0, 1fr) minmax(9rem, .4fr) auto; align-items: end; }
.primary-button:disabled { opacity: .5; cursor: not-allowed; }
.secret-value { display: block; width: fit-content; margin-top: .5rem; padding: .6rem .75rem; border-radius: var(--radius-small); background: var(--color-brand-soft); font-family: ui-monospace, monospace; letter-spacing: .08em; overflow-wrap: anywhere; }
.recovery-codes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; padding: 0; list-style: none; }
.recovery-codes code { display: block; padding: .7rem; border: 1px solid var(--color-border); border-radius: var(--radius-small); text-align: center; }
.scheduling-slot { display: grid; grid-template-columns: minmax(14rem, 1fr) minmax(12rem, .7fr) auto; }
.scheduling-history { margin-top: var(--space-5); }
.office-switcher { display: grid; gap: var(--space-1); margin-top: var(--space-2); }
.office-switcher select { width: 100%; }
.membership-row { display: grid; grid-template-columns: minmax(14rem, 1fr) minmax(9rem, .4fr) auto auto; }
.messaging-history { margin-top: var(--space-5); }
.voice-section { margin-top: var(--space-5); }
.billing-section { margin-top: var(--space-5); }
.billing-rate-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-3); }
.invoice-totals { display: grid; justify-content: end; gap: var(--space-2); margin-top: var(--space-4); text-align: right; }
.invoice-totals span { display: flex; justify-content: space-between; gap: var(--space-6); }
.reporting-section, .operations-section { margin-top: var(--space-5); }
.trust-section { margin-top: var(--space-5); }
.pilot-section { margin-top: var(--space-5); }
.release-section { margin-top: var(--space-5); }

* { box-sizing: border-box; }

html { background: var(--color-canvas); color: var(--color-text); font-family: var(--font-family); }
body { margin: 0; min-width: 20rem; background: var(--color-canvas); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }
h1, h2, p { margin-top: 0; }
h1 { margin-bottom: var(--space-2); font-size: clamp(1.75rem, 3vw, 2.35rem); line-height: 1.15; letter-spacing: -0.025em; }
h2 { margin-bottom: var(--space-1); font-size: 1.05rem; line-height: 1.3; }

:focus-visible { outline: 0.1875rem solid var(--color-focus); outline-offset: 0.1875rem; }
.skip-link { position: absolute; left: var(--space-4); top: -4rem; z-index: 10; padding: var(--space-3) var(--space-4); background: var(--color-text); color: var(--color-surface); border-radius: var(--radius-small); }
.skip-link:focus { top: var(--space-4); }
.skip-link:focus-visible { outline-color: white; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--sidebar-width) minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; gap: var(--space-5); padding: var(--space-5) var(--space-4); border-right: 1px solid hsl(185 22% 88%); background: linear-gradient(180deg, hsl(184 32% 96%), hsl(187 28% 98%)); }
.brand { display: flex; align-items: center; gap: var(--space-3); font-weight: 700; }
.brand > span:last-child { display: grid; gap: .08rem; }
.brand small { color: var(--color-text-muted); font-size: .68rem; font-weight: 600; letter-spacing: .04em; }
.brand-mark { position: relative; width: 2.5rem; height: 2.5rem; display: block; overflow: hidden; border-radius: .8rem; background: linear-gradient(145deg, hsl(174 63% 40%), hsl(188 70% 25%)); box-shadow: 0 .45rem 1rem hsl(183 52% 25% / .2); }
.brand-mark span { position: absolute; background: white; border-radius: 999px; }
.brand-mark span:first-child { width: .48rem; height: 1.3rem; left: .72rem; top: .6rem; }
.brand-mark span:last-child { width: .78rem; height: .48rem; left: 1.05rem; top: 1.02rem; }
.brand-name { font-size: 1.05rem; }
.primary-nav { display: grid; gap: var(--space-4); overflow-y: auto; scrollbar-width: thin; }
.nav-group { display: grid; gap: .2rem; }
.nav-group__label { padding: 0 .75rem .25rem; color: hsl(205 10% 52%); font-size: .67rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.mobile-navigation { display: none; }
.mobile-navigation summary { padding: .7rem .8rem; border: 1px solid var(--color-border); border-radius: var(--radius-small); background: var(--color-surface); font-weight: 700; cursor: pointer; }
.mobile-navigation[open] summary { margin-bottom: var(--space-2); }
.nav-link { position: relative; display: flex; align-items: center; gap: .75rem; min-height: 2.65rem; padding: 0.65rem 0.75rem; border-radius: .75rem; color: hsl(205 13% 38%); text-decoration: none; font-size: .91rem; font-weight: 650; transition: background .16s ease, color .16s ease, transform .16s ease; }
.nav-link:hover { background: hsl(0 0% 100% / .85); color: var(--color-text); transform: translateX(.12rem); }
.nav-link--active { background: var(--color-surface); color: var(--color-brand-strong); box-shadow: 0 .35rem 1.1rem hsl(185 30% 23% / .08); }
.nav-link--active::after { content: ""; position: absolute; right: -.25rem; width: .22rem; height: 1.35rem; border-radius: 999px; background: hsl(174 58% 39%); }
.nav-link--active:hover { background: var(--color-surface); color: var(--color-brand-strong); }
.nav-icon { width: 1.15rem; height: 1.15rem; display: inline-grid; flex: 0 0 auto; place-items: center; color: currentColor; font-size: .95rem; font-weight: 800; line-height: 1; }
.nav-icon::before { content: "•"; }
.nav-icon--home::before { content: "⌂"; font-size: 1.25rem; }
.nav-icon--calendar::before { content: "▦"; }
.nav-icon--inbox::before { content: "✉"; }
.nav-icon--template::before { content: "▤"; }
.nav-icon--phone::before { content: "◖"; transform: rotate(-35deg); }
.nav-icon--chart::before, .nav-icon--trend::before { content: "⌁"; font-size: 1.25rem; }
.nav-icon--card::before { content: "▰"; }
.nav-icon--pulse::before { content: "⌁"; }
.nav-icon--shield::before { content: "◇"; }
.nav-icon--rocket::before { content: "↗"; }
.nav-icon--check::before { content: "✓"; }
.nav-icon--settings::before { content: "⚙"; }
.nav-icon--search::before { content: "⌕"; font-size: 1.3rem; }
.nav-icon--message::before { content: "✦"; }
.nav-icon--menu::before { content: "☰"; }
.office-context { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .7rem; margin-top: auto; padding: .8rem; border: 1px solid hsl(185 18% 88%); border-radius: .85rem; background: hsl(0 0% 100% / .72); }
.office-avatar, .user-avatar { width: 2.15rem; height: 2.15rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: .7rem; background: var(--color-brand-soft); color: var(--color-brand-strong); font-size: .82rem; font-weight: 800; }
.office-context__details { min-width: 0; display: grid; gap: .05rem; }
.office-context__details strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .85rem; }
.office-context__details .field-label { font-size: .6rem; }
.office-context__details .secondary-text { font-size: .7rem; }
.office-switcher { grid-column: 1 / -1; }
.workspace { min-width: 0; }
.workspace-header { position: sticky; top: 0; z-index: 5; min-height: 4.5rem; display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); padding: .75rem var(--space-6); border-bottom: 1px solid hsl(200 18% 90%); background: hsl(0 0% 100% / .88); backdrop-filter: blur(1rem); }
.workspace-header__actions, .action-group { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.workspace-search { width: min(31rem, 40vw); display: flex; align-items: center; gap: .7rem; padding: .65rem .8rem; border: 1px solid hsl(200 16% 88%); border-radius: .75rem; background: hsl(190 24% 98%); color: var(--color-text-muted); font-size: .83rem; }
.workspace-search kbd { margin-left: auto; padding: .1rem .4rem; border: 1px solid var(--color-border); border-radius: .3rem; background: white; color: var(--color-text-muted); font: inherit; font-weight: 700; }
.header-create-button { display: inline-flex; align-items: center; gap: .45rem; min-height: 2.5rem; padding: .6rem .85rem; border-radius: .7rem; background: var(--color-text); color: white; text-decoration: none; font-size: .82rem; font-weight: 750; }
.header-create-button span { font-size: 1.25rem; font-weight: 400; line-height: .7; }
.header-divider { width: 1px; height: 1.7rem; margin-inline: .25rem; background: var(--color-border); }
.user-identity { display: grid; line-height: 1.15; }
.user-identity strong { max-width: 8rem; overflow: hidden; text-overflow: ellipsis; font-size: .78rem; }
.user-identity small { color: var(--color-text-muted); font-size: .67rem; }
.sign-out-button { min-height: 2.1rem; font-size: .75rem; }
.main-content { width: min(100%, var(--content-max-width)); margin-inline: auto; padding: var(--space-6); }
.page-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-5); margin-bottom: var(--space-5); }
.breadcrumb, .field-label, .secondary-text, .section-heading p, .patient-heading p { color: var(--color-text-muted); }
.breadcrumb { margin-bottom: var(--space-2); font-size: 0.875rem; }
.page-intro { margin-bottom: 0; color: var(--color-text-muted); }
.field-label { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.035em; text-transform: uppercase; }
.secondary-text { font-size: 0.875rem; }
.dashboard-hero { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--space-5); margin-bottom: 1.65rem; }
.dashboard-hero h1 { font-size: clamp(2rem, 3vw, 2.75rem); letter-spacing: -.04em; }
.eyebrow { margin-bottom: .45rem; color: var(--color-brand); font-size: .7rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.live-dot { width: .45rem; height: .45rem; display: inline-block; margin-right: .35rem; border-radius: 50%; background: hsl(151 60% 43%); box-shadow: 0 0 0 .25rem hsl(151 60% 43% / .13); }
.hero-actions, .button-with-icon { display: flex; align-items: center; gap: .5rem; }
.metric-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin-bottom: var(--space-5); }
.metric-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.metric-card, .surface { border: 1px solid var(--color-border); background: var(--color-surface); box-shadow: var(--shadow-surface); }
.metric-card { position: relative; display: grid; grid-template-columns: auto 1fr; align-items: start; gap: .85rem; padding: 1.1rem; overflow: hidden; border-radius: 1rem; }
.metric-card--accent { border-color: hsl(177 32% 80%); background: linear-gradient(145deg, white, hsl(177 45% 96%)); }
.metric-card > div { display: grid; gap: .1rem; }
.metric-card small { color: var(--color-text-muted); font-size: .72rem; }
.metric-icon { width: 2.2rem; height: 2.2rem; border-radius: .68rem; background: var(--color-brand-soft); color: var(--color-brand); }
.metric-value { font-size: 1.8rem; line-height: 1.15; letter-spacing: -.03em; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(19rem, .65fr); gap: var(--space-4); align-items: start; }
.dashboard-rail { display: grid; gap: var(--space-4); }
.surface { border-radius: var(--radius-large); padding: var(--space-5); }
.surface--flush { padding: 0; overflow: hidden; }
.section-heading--padded { padding: var(--space-5); margin-bottom: 0; }
.section-heading .eyebrow { margin-bottom: .3rem; }
.section-heading h2 { font-size: 1.15rem; }
.text-link { color: var(--color-brand); font-size: .8rem; font-weight: 750; text-decoration: none; }
.text-link:hover { text-decoration: underline; }
.action-queue { display: grid; border-top: 1px solid var(--color-border); }
.action-row { display: grid; grid-template-columns: 1.75rem minmax(13rem, 1fr) auto auto; align-items: center; gap: .8rem; padding: .85rem 1.25rem; border-bottom: 1px solid hsl(200 18% 92%); transition: background .15s ease; }
.action-row:last-child { border-bottom: 0; }
.action-row:hover { background: hsl(183 35% 98%); }
.priority-number { color: hsl(205 10% 58%); font-size: .72rem; font-weight: 800; }
.action-row__identity { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.action-row__identity > span:last-child { min-width: 0; display: grid; gap: .1rem; }
.action-row__identity strong, .action-row__identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.action-row__identity strong { font-size: .84rem; }
.action-row__identity small { color: var(--color-text-muted); font-size: .72rem; }
.patient-avatar { width: 2.15rem; height: 2.15rem; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: hsl(201 48% 94%); color: hsl(201 48% 34%); font-size: .65rem; font-weight: 800; }
.compact-button { min-height: 2.05rem; padding: .35rem .65rem; font-size: .72rem; }
.empty-state { min-height: 17rem; display: grid; place-items: center; align-content: center; gap: .55rem; padding: 2rem; border-top: 1px solid var(--color-border); text-align: center; background: radial-gradient(circle at 50% 35%, var(--color-brand-soft), transparent 38%); }
.empty-state__icon { width: 3rem; height: 3rem; margin-bottom: .4rem; border-radius: 1rem; background: var(--color-brand); color: white; font-size: 1.25rem; box-shadow: 0 .65rem 1.5rem hsl(183 50% 25% / .2); }
.empty-state h3, .empty-state p { margin: 0; }
.empty-state p { max-width: 26rem; color: var(--color-text-muted); font-size: .85rem; }
.setup-card { position: relative; overflow: hidden; background: linear-gradient(155deg, hsl(184 55% 20%), hsl(190 52% 13%)); color: white; box-shadow: var(--shadow-elevated); }
.setup-card .eyebrow { color: hsl(172 70% 71%); }
.setup-card > p:not(.eyebrow) { color: hsl(180 20% 81%); font-size: .82rem; }
.setup-card__visual { position: absolute; right: -1.5rem; top: -2rem; width: 9rem; height: 9rem; opacity: .22; transform: rotate(18deg); }
.setup-card__visual span { position: absolute; inset: 0; border: 1px solid hsl(170 80% 70%); border-radius: 2rem; }
.setup-card__visual span:nth-child(2) { inset: 1.4rem; }
.setup-card__visual span:nth-child(3) { inset: 2.8rem; }
.quick-actions { display: grid; gap: .45rem; margin-top: 1rem; }
.quick-actions > a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .7rem; padding: .7rem; border: 1px solid hsl(0 0% 100% / .11); border-radius: .75rem; background: hsl(0 0% 100% / .06); color: white; text-decoration: none; transition: background .15s ease, transform .15s ease; }
.quick-actions > a:hover { background: hsl(0 0% 100% / .12); transform: translateX(.15rem); }
.quick-action__icon { width: 2rem; height: 2rem; border-radius: .6rem; background: hsl(0 0% 100% / .1); color: hsl(172 70% 75%); }
.quick-actions strong, .quick-actions small { display: block; }
.quick-actions strong { font-size: .78rem; }
.quick-actions small { margin-top: .15rem; color: hsl(180 15% 72%); font-size: .67rem; }
.activity-feed { display: grid; gap: .85rem; }
.activity-feed__item { display: grid; grid-template-columns: auto 1fr; gap: .65rem; }
.activity-feed__item strong, .activity-feed__item small { display: block; }
.activity-feed__item strong { font-size: .78rem; }
.activity-feed__item small { margin-top: .12rem; color: var(--color-text-muted); font-size: .68rem; }
.activity-marker { width: .5rem; height: .5rem; margin-top: .28rem; border: .12rem solid white; border-radius: 50%; background: hsl(174 55% 43%); box-shadow: 0 0 0 .13rem hsl(174 55% 43% / .2); }
.quiet-empty { margin: .5rem 0 0; color: var(--color-text-muted); font-size: .8rem; line-height: 1.5; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.section-heading, .patient-heading { display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); margin-bottom: var(--space-3); }
.section-heading p, .patient-heading p { margin-bottom: 0; font-size: 0.875rem; }
.queue-list { display: grid; }
.queue-item { width: 100%; display: grid; grid-template-columns: minmax(9rem, 1.2fr) minmax(8rem, 0.85fr) minmax(6rem, 0.65fr); gap: var(--space-3); align-items: center; padding: var(--space-3); border: 0; border-top: 1px solid var(--color-border); background: transparent; color: var(--color-text); text-align: left; }
.queue-item:first-child { border-top: 0; }
.queue-item > span:first-child { display: grid; gap: var(--space-1); }
.queue-item small { color: var(--color-text-muted); }
.queue-item--selected { border-radius: var(--radius-small); background: var(--color-brand-soft); }
.status-pill { width: fit-content; padding: 0.3rem 0.6rem; border-radius: 999px; background: var(--color-brand-soft); color: var(--color-brand-strong); font-size: 0.8rem; font-weight: 700; }
.patient-panel { display: grid; gap: var(--space-4); }
.appointment-summary { display: grid; gap: var(--space-1); }
.activity-list { display: grid; gap: var(--space-3); margin: 0; padding-left: 1.25rem; }
.activity-list li { padding-left: var(--space-1); }
.activity-list li::marker { color: var(--color-brand); }
.activity-list span { display: block; margin-top: var(--space-1); color: var(--color-text-muted); font-size: 0.875rem; }
.guided-callout { display: grid; gap: var(--space-1); padding: var(--space-3); border-radius: var(--radius-medium); background: var(--color-brand-soft); }
.primary-button, .secondary-button, .quiet-button, .icon-button, .user-button { min-height: 2.5rem; border-radius: var(--radius-small); font-weight: 700; }
.primary-button { padding: 0.65rem 1rem; border: 1px solid var(--color-brand); background: var(--color-brand); color: var(--color-surface); }
.primary-button:hover { background: var(--color-brand-strong); }
.secondary-button, .quiet-button, .icon-button { padding: 0.65rem 1rem; border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-text); }
.secondary-button:hover, .quiet-button:hover, .icon-button:hover { background: var(--color-brand-soft); }
.quiet-button { min-height: 2.25rem; padding-block: 0.45rem; }
.quiet-button--full { width: 100%; }
.user-button { width: 2.5rem; border: 0; background: var(--color-brand-soft); color: var(--color-brand-strong); }

/* Phase 10B: high-frequency scheduling and messaging workspaces */
.appointment-summary { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .65rem; margin-bottom: var(--space-4); }
.summary-chip { display: flex; align-items: baseline; gap: .55rem; min-width: 0; padding: .75rem .9rem; border: 1px solid var(--color-border); border-radius: .8rem; background: hsl(0 0% 100% / .72); color: var(--color-text-muted); text-decoration: none; transition: .15s ease; }
.summary-chip:hover { border-color: hsl(180 30% 74%); background: white; transform: translateY(-.1rem); }
.summary-chip strong { color: var(--color-text); font-size: 1.15rem; }
.summary-chip span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .72rem; font-weight: 700; }
.summary-chip--active { border-color: hsl(177 40% 70%); background: var(--color-brand-soft); color: var(--color-brand-strong); box-shadow: inset 0 -2px var(--color-brand); }
.scheduling-workspace { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(20rem, .65fr); gap: var(--space-4); align-items: start; }
.compact-search { min-width: min(100%, 17rem); display: flex; align-items: center; gap: .45rem; padding: .5rem .65rem; border: 1px solid var(--color-border); border-radius: .7rem; background: var(--color-canvas); }
.compact-search:focus-within { border-color: var(--color-brand); box-shadow: 0 0 0 .2rem hsl(183 42% 29% / .1); }
.compact-search input { width: 100%; min-width: 0; padding: 0; border: 0; outline: 0; background: transparent; font-size: .78rem; }
.appointment-list { display: grid; border-top: 1px solid var(--color-border); }
.appointment-row { display: grid; grid-template-columns: 3.2rem auto minmax(10rem, 1fr) auto auto; align-items: center; gap: .85rem; padding: .9rem 1.2rem; border-bottom: 1px solid hsl(200 18% 92%); }
.appointment-row:hover { background: hsl(183 35% 98%); }
.appointment-time { display: grid; grid-template-columns: auto 1fr; align-items: baseline; }
.appointment-time strong { font-size: .88rem; }.appointment-time > span { margin-left: .15rem; color: var(--color-text-muted); font-size: .58rem; font-weight: 800; }.appointment-time small { grid-column: 1/-1; color: var(--color-text-muted); font-size: .63rem; }
.appointment-row__details { min-width: 0; display: grid; gap: .08rem; }.appointment-row__details strong,.appointment-row__details small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.appointment-row__details strong { font-size: .82rem; }.appointment-row__details small,.appointment-reference { color: var(--color-text-muted); font-size: .68rem; }.appointment-reference { font-family: ui-monospace,monospace; }
.appointment-actions { display: flex; gap: .35rem; }.status-pill--confirmed { background: hsl(151 45% 92%); color: hsl(151 48% 28%); }.status-pill--cancelled { background: hsl(5 56% 94%); color: hsl(5 55% 36%); }.status-pill--rescheduled { background: hsl(38 80% 93%); color: hsl(34 70% 30%); }
.booking-panel { position: sticky; top: 5.5rem; box-shadow: var(--shadow-elevated); }.booking-panel__intro { color: var(--color-text-muted); font-size: .8rem; line-height: 1.5; }
.booking-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: .35rem; margin: 1rem 0 1.2rem; padding: 0; list-style: none; }.booking-steps li { display: grid; justify-items: center; gap: .3rem; color: var(--color-text-muted); font-size: .62rem; font-weight: 700; }.booking-steps li span { width: 1.65rem; height: 1.65rem; display: grid; place-items: center; border: 1px solid var(--color-border); border-radius: 50%; background: white; }.booking-steps .booking-step--active { color: var(--color-brand); }.booking-steps .booking-step--active span { border-color: var(--color-brand); background: var(--color-brand); color: white; }
.availability-filter { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; padding-bottom: 1rem; border-bottom: 1px solid var(--color-border); }.availability-filter .secondary-button { grid-column: 1/-1; justify-content: center; }.availability-filter input,.availability-filter select,.slot-booking-form input { width: 100%; min-height: 2.45rem; padding: .55rem .65rem; border: 1px solid var(--color-border); border-radius: .6rem; background: white; font-size: .75rem; }
.slot-list { display: grid; gap: .55rem; margin-top: 1rem; }.slot-card { overflow: hidden; border: 1px solid var(--color-border); border-radius: .75rem; background: hsl(190 24% 99%); }.slot-card[open] { border-color: hsl(177 38% 75%); background: white; box-shadow: var(--shadow-surface); }.slot-card summary { display: flex; justify-content: space-between; align-items: center; padding: .7rem .8rem; cursor: pointer; list-style: none; }.slot-card summary::-webkit-details-marker { display:none; }.slot-card summary > span:first-child { display:grid; gap:.1rem; }.slot-card summary strong { font-size:.78rem; }.slot-card summary small { color:var(--color-text-muted); font-size:.67rem; }.slot-select { color:var(--color-brand); font-size:.68rem; font-weight:800; }.slot-booking-form { display:grid; gap:.65rem; padding:.8rem; border-top:1px solid var(--color-border); background:var(--color-brand-soft); }.slot-booking-form small,.new-conversation-panel small { color:var(--color-text-muted); font-size:.66rem; }

.inbox-shell { min-height:40rem; display:grid; grid-template-columns:minmax(15rem,.68fr) minmax(25rem,1.4fr) minmax(14rem,.55fr); gap:var(--space-3); }.conversation-sidebar,.conversation-panel { min-height:40rem; }.conversation-sidebar { display:flex; flex-direction:column; }.conversation-sidebar__header { display:grid; gap:.75rem; padding:1rem; border-bottom:1px solid var(--color-border); }.conversation-sidebar__header>div { display:flex; align-items:center; gap:.5rem; }.conversation-sidebar__header h2 { margin:0; }.conversation-count { padding:.15rem .35rem; border-radius:999px; background:var(--color-brand-soft); color:var(--color-brand); font-size:.65rem; font-weight:800; }
.conversation-list { display:grid; align-content:start; overflow-y:auto; }.conversation-item { display:grid; grid-template-columns:auto 1fr; gap:.65rem; padding:.8rem; border-bottom:1px solid hsl(200 18% 92%); text-decoration:none; }.conversation-item:hover { background:hsl(183 35% 98%); }.conversation-item--active { background:var(--color-brand-soft); box-shadow:inset 3px 0 var(--color-brand); }.conversation-item__body { min-width:0; display:grid; gap:.18rem; }.conversation-item__body>span:first-child { display:flex; justify-content:space-between; gap:.5rem; }.conversation-item__body strong,.conversation-item__body small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.conversation-item__body strong { font-size:.74rem; }.conversation-item__body time { color:var(--color-text-muted); font-size:.58rem; }.conversation-item__body>small { color:var(--color-text-muted); font-size:.66rem; }
.consent-state { width:fit-content; color:hsl(151 48% 32%); font-size:.61rem; font-weight:750; }.consent-state::before { content:""; width:.35rem; height:.35rem; display:inline-block; margin-right:.3rem; border-radius:50%; background:hsl(151 55% 43%); }.consent-state--blocked { color:hsl(5 55% 38%); }.consent-state--blocked::before { background:hsl(5 60% 48%); }.conversation-empty { display:grid; justify-items:center; gap:.35rem; padding:2rem 1rem; color:var(--color-text-muted); text-align:center; }.conversation-empty strong { color:var(--color-text); font-size:.78rem; }.conversation-empty small { font-size:.68rem; }
.new-conversation-panel { margin-top:auto; padding:.8rem; border-top:1px solid var(--color-border); }.new-conversation-panel summary { color:var(--color-brand); cursor:pointer; font-size:.72rem; font-weight:800; list-style:none; }.conversation-panel { display:grid; grid-template-rows:auto 1fr auto; }.conversation-header { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.75rem; padding:.9rem 1rem; border-bottom:1px solid var(--color-border); }.conversation-header .eyebrow { margin:0 0 .15rem; font-size:.56rem; }.conversation-header h2 { margin:0; font-size:.95rem; }.patient-avatar--large { width:2.65rem; height:2.65rem; }.conversation-header__actions { margin-left:auto; }
.message-thread { display:flex; flex-direction:column; gap:.8rem; min-height:20rem; max-height:32rem; overflow-y:auto; padding:1.2rem; background:linear-gradient(180deg,hsl(190 28% 98%),white); }.thread-date { display:flex; align-items:center; gap:.7rem; color:var(--color-text-muted); font-size:.6rem; font-weight:700; text-transform:uppercase; }.thread-date::before,.thread-date::after { content:""; height:1px; flex:1; background:var(--color-border); }
.message-bubble { width:min(80%,28rem); display:grid; gap:.35rem; padding:.7rem .85rem; border-radius:.9rem .9rem .9rem .25rem; background:white; box-shadow:0 .25rem .8rem hsl(190 25% 20%/.08); }.message-bubble--outbound { align-self:end; border-radius:.9rem .9rem .25rem .9rem; background:var(--color-brand); color:white; }.message-bubble p { margin:0; font-size:.78rem; line-height:1.5; white-space:pre-wrap; }.message-bubble footer { display:flex; gap:.4rem; flex-wrap:wrap; color:var(--color-text-muted); font-size:.57rem; }.message-bubble--outbound footer { color:hsl(180 30% 84%); }.delivery-state { margin-left:auto; font-weight:750; }.message-takeover { width:fit-content; padding:0; border:0; background:transparent; color:var(--color-brand); font-size:.6rem; font-weight:800; }
.thread-empty { margin:auto; display:grid; justify-items:center; gap:.45rem; text-align:center; }.thread-empty h3,.thread-empty p { margin:0; }.thread-empty p { color:var(--color-text-muted); font-size:.75rem; }.message-composer { display:grid; gap:.55rem; padding:.85rem 1rem; border-top:1px solid var(--color-border); background:white; }.composer-form { overflow:hidden; border:1px solid var(--color-border); border-radius:.8rem; }.composer-form:focus-within { border-color:var(--color-brand); box-shadow:0 0 0 .2rem hsl(183 42% 29%/.1); }.composer-form textarea { width:100%; padding:.7rem; resize:vertical; border:0; outline:0; font-size:.78rem; }.composer-footer { display:flex; justify-content:space-between; align-items:center; gap:.5rem; padding:.45rem .55rem; border-top:1px solid var(--color-border); background:hsl(190 24% 99%); }.composer-footer>span { display:flex; align-items:center; color:var(--color-text-muted); font-size:.58rem; }
.composer-warning { display:flex; gap:.35rem; padding:.55rem .65rem; border-radius:.6rem; background:hsl(5 60% 96%); color:hsl(5 55% 34%); font-size:.67rem; }.simulate-reply summary { width:fit-content; color:var(--color-text-muted); cursor:pointer; font-size:.62rem; font-weight:700; }.simulate-reply__form { display:flex; gap:.5rem; margin-top:.5rem; }.simulate-reply__form input { flex:1; min-width:0; padding:.55rem .65rem; border:1px solid var(--color-border); border-radius:.6rem; }
.conversation-context { align-self:start; }.conversation-context h2 { font-size:.95rem; }.context-list { display:grid; gap:.7rem; margin:1rem 0; }.context-list div { display:grid; gap:.12rem; padding-bottom:.65rem; border-bottom:1px solid var(--color-border); }.context-list dt { color:var(--color-text-muted); font-size:.62rem; font-weight:700; text-transform:uppercase; }.context-list dd { margin:0; overflow-wrap:anywhere; font-size:.74rem; font-weight:650; }.safety-card { display:grid; grid-template-columns:auto 1fr; gap:.55rem; padding:.7rem; border-radius:.7rem; background:var(--color-brand-soft); color:var(--color-brand-strong); }.safety-card strong { font-size:.7rem; }.safety-card p { margin:.2rem 0 0; color:var(--color-text-muted); font-size:.64rem; line-height:1.45; }.empty-state--conversation { min-height:40rem; border-top:0; }

/* Phase 10C: intelligence, voice operations, and workspace administration */
.data-freshness,.environment-badge,.plan-badge { display:inline-flex; align-items:center; gap:.45rem; padding:.55rem .75rem; border:1px solid var(--color-border); border-radius:999px; background:white; color:var(--color-text-muted); font-size:.7rem; font-weight:750; }.environment-badge { background:hsl(38 80% 95%); color:hsl(34 65% 30%); }.plan-badge span { color:var(--color-brand); font-weight:850; }
.reports-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(17rem,.55fr); gap:var(--space-4); align-items:start; }.report-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }.report-card { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.8rem; min-height:7rem; padding:1rem; border:1px solid var(--color-border); border-radius:.9rem; background:hsl(190 20% 99%); text-decoration:none; transition:.16s ease; }.report-card:hover { border-color:hsl(177 38% 72%); background:white; box-shadow:var(--shadow-surface); transform:translateY(-.12rem); }.report-card__icon { width:2.6rem; height:2.6rem; border-radius:.8rem; background:var(--color-brand-soft); color:var(--color-brand); }.report-card strong,.report-card small { display:block; }.report-card strong { font-size:.8rem; }.report-card small { margin-top:.25rem; color:var(--color-text-muted); font-size:.68rem; line-height:1.4; }.report-card__arrow { color:var(--color-brand); font-weight:800; }
.insight-panel { overflow:hidden; background:linear-gradient(155deg,hsl(184 55% 20%),hsl(190 52% 13%)); color:white; box-shadow:var(--shadow-elevated); }.insight-panel .eyebrow { color:hsl(172 70% 71%); }.insight-visual { height:8rem; display:flex; align-items:end; gap:.45rem; margin:1rem 0; padding:.8rem; border-bottom:1px solid hsl(0 0% 100%/.2); }.insight-visual span { flex:1; min-height:.25rem; border-radius:.25rem .25rem 0 0; background:linear-gradient(hsl(171 67% 64%),hsl(183 58% 42%)); }.insight-list { display:grid; gap:.55rem; margin:0; padding:0; list-style:none; }.insight-list li { display:flex; align-items:center; gap:.45rem; color:hsl(180 20% 85%); font-size:.7rem; }.insight-list .nav-icon { color:hsl(171 67% 70%); }
.report-workspace { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(17rem,.55fr); gap:var(--space-4); align-items:start; }.report-sidebar { display:grid; gap:var(--space-3); }.result-chart { display:grid; gap:1rem; margin-top:1rem; }.result-bar { display:grid; gap:.4rem; }.result-bar>span { display:flex; justify-content:space-between; align-items:center; }.result-bar strong { font-size:.75rem; }.result-bar small { color:var(--color-text-muted); font-size:.7rem; }.result-bar>div { height:.65rem; overflow:hidden; border-radius:999px; background:hsl(190 18% 93%); }.result-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--color-brand),hsl(170 55% 48%)); }.report-sidebar input,.report-sidebar select { width:100%; min-height:2.55rem; padding:.55rem .65rem; border:1px solid var(--color-border); border-radius:.6rem; background:white; }.methodology-card summary { cursor:pointer; color:var(--color-brand); font-size:.75rem; font-weight:800; }.methodology-card strong { display:block; margin-top:.8rem; font-size:.68rem; }.methodology-card p { margin:.25rem 0 0; color:var(--color-text-muted); font-size:.68rem; line-height:1.5; }
.voice-workspace { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(19rem,.6fr); gap:var(--space-4); align-items:start; }.call-list { display:grid; border-top:1px solid var(--color-border); }.call-row { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:.75rem; padding:.85rem 1rem; border-bottom:1px solid hsl(200 18% 92%); text-decoration:none; }.call-row:hover { background:hsl(183 35% 98%); }.call-direction { width:2.2rem; height:2.2rem; border-radius:.7rem; background:var(--color-brand-soft); color:var(--color-brand); }.call-row strong,.call-row small { display:block; }.call-row strong { font-size:.78rem; }.call-row small { margin-top:.12rem; color:var(--color-text-muted); font-size:.66rem; }.voice-launch { position:sticky; top:5.5rem; box-shadow:var(--shadow-elevated); }.launch-checklist { display:grid; gap:.55rem; margin:1rem 0; padding:0; list-style:none; }.launch-checklist li { display:grid; grid-template-columns:auto 1fr; gap:.6rem; padding:.7rem; border:1px solid var(--color-border); border-radius:.7rem; }.launch-checklist li>.nav-icon { width:1.9rem; height:1.9rem; border-radius:.55rem; background:hsl(38 80% 94%); color:hsl(34 65% 35%); }.launch-checklist li.is-complete>.nav-icon { background:hsl(151 45% 92%); color:hsl(151 48% 28%); }.launch-checklist strong,.launch-checklist small { display:block; }.launch-checklist strong { font-size:.72rem; }.launch-checklist small { margin-top:.15rem; color:var(--color-text-muted); font-size:.64rem; }.launch-form select { width:100%; padding:.6rem; border:1px solid var(--color-border); border-radius:.6rem; background:white; }
.configuration-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); margin-top:var(--space-4); }.configuration-count { min-width:1.8rem; padding:.25rem .45rem; border-radius:999px; background:var(--color-brand-soft); color:var(--color-brand); font-size:.7rem; font-weight:800; text-align:center; }.configuration-form { margin:.8rem 0; padding:.65rem; border:1px dashed hsl(180 25% 78%); border-radius:.7rem; }.configuration-form summary { cursor:pointer; color:var(--color-brand); font-size:.72rem; font-weight:800; }.configuration-form input,.configuration-form textarea { width:100%; padding:.6rem; border:1px solid var(--color-border); border-radius:.6rem; }.configuration-list { display:grid; }.configuration-list>div { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.65rem; padding:.65rem 0; border-bottom:1px solid var(--color-border); }.configuration-list>div:last-child { border-bottom:0; }.configuration-list strong,.configuration-list small { display:block; }.configuration-list strong { font-size:.73rem; }.configuration-list small { color:var(--color-text-muted); font-size:.63rem; }
.admin-readiness { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; margin-bottom:var(--space-4); padding:1rem 1.2rem; }.readiness-score { display:grid; padding-right:1rem; border-right:1px solid var(--color-border); }.readiness-score strong { color:var(--color-brand); font-size:1.35rem; }.readiness-score span { color:var(--color-text-muted); font-size:.62rem; }.readiness-progress>span { height:.45rem; display:block; overflow:hidden; border-radius:999px; background:var(--color-border); }.readiness-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--color-brand),hsl(151 55% 45%)); }.readiness-progress p { margin:.4rem 0 0; color:var(--color-text-muted); font-size:.68rem; }.admin-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }.admin-card { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.8rem; min-height:7rem; padding:1rem; border:1px solid var(--color-border); border-radius:.9rem; background:hsl(190 20% 99%); text-decoration:none; transition:.15s ease; }.admin-card:hover { border-color:hsl(177 38% 72%); background:white; box-shadow:var(--shadow-surface); transform:translateY(-.1rem); }.admin-card--sensitive { background:hsl(38 70% 98%); }.admin-card__icon { width:2.6rem; height:2.6rem; border-radius:.8rem; background:var(--color-brand-soft); color:var(--color-brand); }.admin-card strong,.admin-card small,.admin-card em { display:block; }.admin-card strong { font-size:.8rem; }.admin-card small { margin:.2rem 0 .45rem; color:var(--color-text-muted); font-size:.68rem; line-height:1.4; }.admin-card em { width:fit-content; color:var(--color-brand); font-size:.62rem; font-style:normal; font-weight:800; }.integration-state--not_configured { color:hsl(34 65% 35%)!important; }

/* Phase 10D: billing, trust, and operations */
.billing-workspace,.trust-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(18rem,.55fr); gap:var(--space-4); align-items:start; }.billing-sidebar { display:grid; gap:var(--space-3); }.invoice-list,.health-list,.exception-list,.control-list { display:grid; border-top:1px solid var(--color-border); }.invoice-row { display:grid; grid-template-columns:auto 1fr auto auto auto; align-items:center; gap:.8rem; padding:.85rem 1rem; border-bottom:1px solid var(--color-border); text-decoration:none; }.invoice-row:hover { background:hsl(183 35% 98%); }.invoice-icon { width:2.2rem; height:2.2rem; border-radius:.65rem; background:var(--color-brand-soft); color:var(--color-brand); }.invoice-row strong,.invoice-row small { display:block; }.invoice-row strong { font-size:.76rem; }.invoice-row small { color:var(--color-text-muted); font-size:.64rem; }.subscription-card { background:linear-gradient(155deg,hsl(184 55% 20%),hsl(190 52% 13%)); color:white; box-shadow:var(--shadow-elevated); }.subscription-card .eyebrow { color:hsl(172 70% 71%); }.subscription-card .context-list dt,.subscription-card .quiet-empty { color:hsl(180 20% 78%); }.subscription-card .context-list div { border-color:hsl(0 0% 100%/.13); }.plan-price { display:block; margin:.8rem 0; font-size:1.8rem; font-weight:850; }.plan-price small { font-size:.65rem; color:hsl(180 20% 75%); }.payment-boundary { display:grid; grid-template-columns:auto 1fr; gap:.65rem; padding:.85rem; border:1px solid hsl(177 35% 82%); border-radius:.8rem; background:var(--color-brand-soft); }.payment-boundary p { margin:.2rem 0 0; color:var(--color-text-muted); font-size:.65rem; }.billing-config-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-3); margin-top:var(--space-4); }.billing-config-grid>.configuration-form { margin:0; }.billing-config-grid input,.billing-config-grid select { width:100%; padding:.6rem; border:1px solid var(--color-border); border-radius:.6rem; }
.operations-status { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.75rem; margin-bottom:var(--space-4); padding:.85rem 1rem; }.operations-status__signal { width:2.5rem; height:2.5rem; display:grid; place-items:center; border-radius:.75rem; background:hsl(151 45% 92%); }.operations-status__signal i { width:.65rem; height:.65rem; border-radius:50%; background:hsl(151 55% 43%); box-shadow:0 0 0 .25rem hsl(151 55% 43%/.16); }.operations-status__signal.has-warning { background:hsl(38 80% 93%); }.operations-status__signal.has-warning i { background:hsl(34 70% 45%); }.operations-status strong { font-size:.8rem; }.operations-status p { margin:.12rem 0 0; color:var(--color-text-muted); font-size:.66rem; }.operations-grid,.trust-grid--secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); align-items:start; }.health-row { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.7rem; padding:.8rem 1rem; border-bottom:1px solid var(--color-border); }.health-dot { width:.55rem; height:.55rem; border-radius:50%; background:hsl(205 10% 60%); }.health-dot--healthy { background:hsl(151 55% 43%); }.health-dot--degraded { background:hsl(38 75% 48%); }.health-dot--unavailable { background:hsl(5 60% 48%); }.health-row strong,.health-row small { display:block; }.health-row small { color:var(--color-text-muted); font-size:.63rem; }.exception-list article { display:grid; grid-template-columns:auto 1fr auto; gap:.7rem; align-items:center; padding:.8rem 1rem; border-bottom:1px solid var(--color-border); }.exception-icon { width:2rem; height:2rem; border-radius:.6rem; background:hsl(38 80% 93%); color:hsl(34 70% 34%); }.exception-list strong,.exception-list small,.exception-list time { display:block; }.exception-list small,.exception-list time { color:var(--color-text-muted); font-size:.62rem; }.operations-grid--lower,.emergency-panel { margin-top:var(--space-4); }.maintenance-card select { width:100%; padding:.6rem; border:1px solid var(--color-border); border-radius:.6rem; }.toggle-row { display:flex; justify-content:space-between; align-items:center; padding:.7rem; border:1px solid var(--color-border); border-radius:.7rem; }.toggle-row strong,.toggle-row small { display:block; }.toggle-row small { color:var(--color-text-muted); font-size:.62rem; }
.trust-disclaimer { display:inline-flex; align-items:center; gap:.4rem; padding:.55rem .7rem; border:1px solid hsl(38 50% 78%); border-radius:999px; background:hsl(38 75% 96%); color:hsl(34 58% 32%); font-size:.66rem; font-weight:750; }.trust-readiness { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.8rem; margin-bottom:var(--space-4); padding:1rem; border:1px solid hsl(5 45% 84%); border-radius:var(--radius-large); background:hsl(5 60% 97%); }.trust-readiness.is-ready { border-color:hsl(151 35% 78%); background:hsl(151 45% 96%); }.trust-readiness__icon { width:2.6rem; height:2.6rem; border-radius:.8rem; background:hsl(5 55% 92%); color:hsl(5 55% 38%); }.trust-readiness h2 { margin:.1rem 0; font-size:.95rem; }.trust-readiness p { margin:0; color:var(--color-text-muted); font-size:.68rem; }.trust-readiness summary { cursor:pointer; color:var(--color-brand); font-size:.68rem; font-weight:800; }.trust-nav { position:sticky; top:4.5rem; z-index:4; display:flex; gap:.3rem; overflow-x:auto; margin-bottom:var(--space-4); padding:.4rem; border:1px solid var(--color-border); border-radius:.8rem; background:hsl(0 0% 100%/.9); }.trust-nav a { padding:.5rem .7rem; border-radius:.55rem; color:var(--color-text-muted); font-size:.66rem; font-weight:750; text-decoration:none; }.control-list article { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:.65rem; padding:.75rem 1rem; border-bottom:1px solid var(--color-border); }.control-framework { padding:.25rem .4rem; border-radius:.4rem; background:var(--color-brand-soft); color:var(--color-brand); font-size:.57rem; font-weight:850; }.control-list strong,.control-list small { display:block; }.control-list small { color:var(--color-text-muted); font-size:.62rem; }.risk-list { display:grid; gap:.5rem; }.risk-item { display:grid; grid-template-columns:auto 1fr auto; gap:.6rem; align-items:center; padding:.7rem; border-left:3px solid hsl(205 15% 70%); border-radius:.65rem; background:var(--color-canvas); }.risk-item--high,.risk-item--critical { border-color:hsl(5 60% 48%); }.risk-severity { color:hsl(5 55% 38%); font-size:.58rem; font-weight:850; }.risk-item strong,.risk-item small { display:block; }.risk-item small { color:var(--color-text-muted); font-size:.62rem; }.risk-item .action-group { grid-column:2/-1; }.switch-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }.switch-card { display:grid; grid-template-columns:auto 1fr; gap:.6rem; padding:.75rem; border:1px solid var(--color-border); border-radius:.75rem; }.switch-card.is-active { border-color:hsl(5 50% 75%); background:hsl(5 60% 97%); }.switch-card strong,.switch-card small { display:block; }.switch-card small { color:var(--color-text-muted); font-size:.62rem; }.switch-card form { grid-column:1/-1; display:grid; gap:.4rem; }.switch-card input[type=text] { width:100%; padding:.5rem; border:1px solid var(--color-border); border-radius:.5rem; }.governance-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-4); margin-top:var(--space-4); }.governance-card summary { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.6rem; cursor:pointer; list-style:none; }.governance-card summary strong,.governance-card summary small { display:block; }.governance-card summary small { color:var(--color-text-muted); font-size:.62rem; }.governance-card[open] summary { padding-bottom:.7rem; border-bottom:1px solid var(--color-border); }

/* Phase 10E: resilient accessibility preferences and keyboard navigation */
.pilot-package { margin-bottom: var(--space-4); }
.package-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.package-checklist article { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.65rem; padding:.75rem; border:1px solid var(--color-border); border-radius:.75rem; background:var(--color-canvas); }
.package-checklist strong,.package-checklist small { display:block; }
.package-checklist small { margin-top:.12rem; color:var(--color-text-muted); font-size:.64rem; }
.readiness-hero { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:1rem; margin-bottom:var(--space-4); padding:1rem 1.2rem; border:1px solid hsl(38 55% 75%); border-radius:var(--radius-large); background:hsl(38 75% 97%); }
.readiness-hero.is-ready { border-color:hsl(151 38% 72%); background:hsl(151 48% 96%); }
.readiness-hero h2,.readiness-hero p { margin:.1rem 0; }.customer-readiness-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(18rem,.55fr); gap:var(--space-4); align-items:start; }.customer-readiness-sidebar { display:grid; gap:var(--space-4); }.customer-discovery-form { grid-template-columns:repeat(2,minmax(0,1fr)); }.customer-discovery-form .field-group:nth-last-child(-n+3),.customer-discovery-form .primary-button { grid-column:1/-1; }.readiness-checklist,.training-list { display:grid; }.readiness-checklist>div,.training-list article { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.6rem; padding:.65rem 0; border-bottom:1px solid var(--color-border); }.readiness-checklist>div:last-child,.training-list article:last-child { border-bottom:0; }.readiness-checklist strong,.readiness-checklist small,.training-list strong,.training-list small { display:block; }.readiness-checklist small,.training-list small { margin-top:.1rem; color:var(--color-text-muted); font-size:.62rem; }.training-form { display:flex; gap:.35rem; }.training-form input { min-width:10rem; padding:.5rem; border:1px solid var(--color-border); border-radius:.5rem; }.customer-rehearsal,.acceptance-panel { margin-top:var(--space-4); }.dataset-results { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }.dataset-results div { display:grid; gap:.15rem; padding:.7rem; border:1px solid var(--color-border); border-radius:.7rem; background:var(--color-canvas); }.dataset-results span { color:var(--color-text-muted); font-size:.61rem; font-weight:750; text-transform:uppercase; }.dataset-results strong { font-size:.75rem; }
.launch-readiness-list .record-row { align-items:start; }.launch-item-form { display:grid; grid-template-columns:minmax(9rem,1fr) auto minmax(11rem,1.2fr) auto auto; gap:.35rem; }.launch-item-form input,.launch-item-form select { min-height:2.25rem; padding:.4rem .5rem; border:1px solid var(--color-border); border-radius:.5rem; background:white; font-size:.66rem; }
[id] { scroll-margin-top: 6rem; }
button, input, select, textarea, summary, a { touch-action: manipulation; }

@media (max-width: 62rem) {
  :root { --sidebar-width: 12rem; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .metric-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .user-identity, .header-divider { display: none; }
  .scheduling-workspace { grid-template-columns: 1fr; }
  .booking-panel { position: static; }
  .inbox-shell { grid-template-columns: minmax(14rem,.7fr) minmax(22rem,1.3fr); }
  .conversation-context { display: none; }
  .reports-layout,.report-workspace,.voice-workspace { grid-template-columns:1fr; }
  .billing-workspace,.trust-grid { grid-template-columns:1fr; }
  .billing-config-grid,.governance-grid { grid-template-columns:1fr; }
  .voice-launch { position:static; }
}

@media (max-width: 46rem) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { border-right: 0; border-bottom: 1px solid var(--color-border); gap: var(--space-3); }
  .desktop-navigation, .office-context { display: none; }
  .mobile-navigation { display: block; }
  .mobile-navigation .primary-nav { max-height: 60vh; overflow-y: auto; }
  .workspace-header { display: none; }
  .main-content { padding: var(--space-4); }
  .page-heading { align-items: stretch; flex-direction: column; }
  .metric-grid { grid-template-columns: 1fr; }
  .dashboard-hero { align-items: stretch; flex-direction: column; }
  .hero-actions { flex-wrap: wrap; }
  .hero-actions > * { flex: 1; justify-content: center; }
  .action-row { grid-template-columns: auto 1fr auto; }
  .action-row .status-pill { display: none; }
  .action-row .action-group { grid-column: 2 / -1; }
  .queue-item { grid-template-columns: 1fr; }
  .billing-rate-grid { grid-template-columns: 1fr; }
  .appointment-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .appointment-row { grid-template-columns: 3rem auto 1fr; }
  .appointment-row .status-pill { grid-column: 2; }
  .appointment-actions { grid-column: 3; grid-row: 2; }
  .appointment-toolbar { align-items: stretch; flex-direction: column; }
  .compact-search { width: 100%; }
  .inbox-shell { grid-template-columns: 1fr; }
  .conversation-sidebar { min-height: auto; max-height: 26rem; }
  .conversation-panel { min-height: 34rem; }
  .report-card-grid,.configuration-grid,.admin-card-grid { grid-template-columns:1fr; }
  .admin-readiness { grid-template-columns:1fr; }
  .readiness-score { border-right:0; border-bottom:1px solid var(--color-border); padding:0 0 .7rem; }
  .operations-grid,.trust-grid--secondary { grid-template-columns:1fr; }
  .switch-grid { grid-template-columns:1fr; }
  .package-checklist { grid-template-columns:1fr; }
  .customer-readiness-layout { grid-template-columns:1fr; }
  .launch-item-form { grid-template-columns:1fr; width:100%; }
  .customer-discovery-form { grid-template-columns:1fr; }
  .customer-discovery-form .field-group,.customer-discovery-form .primary-button { grid-column:auto; }
  .dataset-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .operations-status,.trust-readiness { grid-template-columns:auto 1fr; }
  .operations-status>.data-freshness,.trust-readiness>details { grid-column:1/-1; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
}

@media (prefers-contrast: more) {
  :root { --color-border: hsl(190 18% 62%); --color-text-muted: hsl(191 20% 26%); }
  .surface, .metric-card, .status-pill, input, select, textarea { border-width: 2px; }
  a { text-decoration-thickness: .12em; }
}

@media (forced-colors: active) {
  .surface, .metric-card, .status-pill, .nav-icon, input, select, textarea, button { border: 1px solid CanvasText; }
  .health-dot, .live-dot, .operations-status__signal i, .consent-state::before { background: CanvasText; }
  .result-bar i, .insight-visual span, .readiness-progress i { background: Highlight; }
}
