/* Stage 34 — final product polish. Loaded after app.css. */
:root {
  --stage34-control-min: 44px;
  --stage34-reading: 72ch;
  --stage34-section-gap: clamp(2rem, 4vw, 4.5rem);
}
html { scroll-padding-top: 6rem; }
body { overflow-wrap: anywhere; }
main, .main-content { min-width: 0; }
.page-heading { gap: clamp(1rem, 2vw, 1.5rem); margin-bottom: clamp(1.75rem, 4vw, 3.5rem); }
.page-heading h1 { text-wrap: balance; }
.page-heading__summary, .prose, .empty-state p, .alert__copy p { max-width: var(--stage34-reading); }
section + section, .section + .section { margin-top: var(--stage34-section-gap); }
.surface { overflow: clip; }
.surface--padded { padding: clamp(1.25rem, 3vw, 2.5rem); }
.button, .icon-button, input, select, textarea, summary, [role="button"] { min-height: var(--stage34-control-min); }
.button { padding-inline: 1.125rem; white-space: normal; text-align: center; }
.icon-button { min-width: var(--stage34-control-min); }
label, legend { color: var(--text-1); font-weight: 560; }
.field { display: grid; gap: .5rem; }
.field__hint, .field__error { line-height: 1.45; }
.field__error { color: var(--red); }
.input, input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  width: 100%; border: 1px solid var(--line-strong); border-radius: var(--radius-sm);
  background: var(--surface); color: var(--text-1); padding: .75rem .875rem;
}
textarea { min-height: 7rem; resize: vertical; }
input:focus-visible, select:focus-visible, textarea:focus-visible { border-color: var(--focus); box-shadow: var(--shadow-focus); outline: none; }
[aria-invalid="true"] { border-color: var(--red) !important; }
.status-chip { min-height: 2rem; padding-inline: .75rem; }
.status-chip::before { content: ""; width: .45rem; height: .45rem; border-radius: 50%; background: currentColor; opacity: .9; }
.table-wrap, .responsive-table { width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
th { text-align: left; color: var(--text-3); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
th, td { padding: .9rem 1rem; vertical-align: top; border-bottom: 1px solid var(--line); }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: color-mix(in srgb, var(--surface-blue) 45%, transparent); }
.empty-state, .loading-state, .error-state, .success-state {
  min-height: 14rem; display: grid; place-items: center; align-content: center; gap: 1rem;
  padding: clamp(2rem, 6vw, 5rem); text-align: center; border-radius: var(--radius-lg); background: var(--surface);
}
.loading-state[aria-busy="true"]::before { content: ""; width: 1.5rem; height: 1.5rem; border: 2px solid var(--line); border-top-color: var(--blue); border-radius: 50%; animation: stage34-spin .8s linear infinite; }
@keyframes stage34-spin { to { transform: rotate(1turn); } }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid color-mix(in srgb, var(--focus) 70%, white); outline-offset: 3px; }
[aria-disabled="true"], :disabled { cursor: not-allowed; }
[data-danger-zone] { border-inline-start: 4px solid var(--red); }
[data-next-safe-action] { box-shadow: 0 0 0 2px color-mix(in srgb, var(--blue) 22%, transparent), var(--shadow-1); }
[data-stress-state="warning"] { background: var(--surface-amber); }
[data-stress-state="blocked"] { background: var(--surface-red); }
[data-stress-state="verified"] { background: var(--surface-green); }
@media (max-width: 720px) {
  .page-heading__actions, .toolbar, .form-actions { align-items: stretch; flex-direction: column; }
  .page-heading__actions .button, .toolbar .button, .form-actions .button { width: 100%; }
  .surface--padded { border-radius: var(--radius-md); }
  table[data-mobile-cards] thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  table[data-mobile-cards], table[data-mobile-cards] tbody, table[data-mobile-cards] tr, table[data-mobile-cards] td { display: block; width: 100%; }
  table[data-mobile-cards] tr { padding: 1rem; border-bottom: 1px solid var(--line); }
  table[data-mobile-cards] td { display: grid; grid-template-columns: minmax(7rem, 42%) 1fr; gap: .75rem; padding: .45rem 0; border: 0; }
  table[data-mobile-cards] td::before { content: attr(data-label); color: var(--text-3); font-size: var(--text-xs); font-weight: 650; letter-spacing: .06em; text-transform: uppercase; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media (forced-colors: active) {
  .surface, .button, input, select, textarea, .status-chip { border: 1px solid CanvasText; box-shadow: none; }
}


/* 27I: make platform administration unmistakably discoverable on compact screens. */
.platform-admin-shortcut { gap: .5rem; white-space: nowrap; text-decoration: none; }
.account-menu-item--admin { align-items: flex-start; background: rgba(55, 116, 225, .08); }
.account-menu-item--admin span { display: grid; gap: .15rem; }
.account-menu-item--admin small { color: var(--text-secondary, #667085); font-size: .75rem; font-weight: 500; }
@media (max-width: 760px) {
  .platform-admin-shortcut { position: fixed; right: 1.25rem; bottom: calc(1.25rem + env(safe-area-inset-bottom)); z-index: 80; min-height: 3.25rem; padding-inline: 1rem; border-radius: 999px; box-shadow: 0 18px 44px rgba(15, 35, 70, .22); }
  .platform-admin-shortcut span { display: inline; }
}

/* 27N — universal visual-consistency and editorial-spacing rootfix.
   Presentation only: no routes, permissions, data, forms or application logic changed. */
:root {
  --canvas: #f5f7fa;
  --surface-subtle: #f2f4f7;
  --text-1: #0b1b2e;
  --text-2: #536174;
  --text-3: #788597;
  --line: #e5eaf0;
  --line-strong: #d7dee7;
  --shadow-1: 0 1px 2px rgba(15, 29, 48, .025), 0 14px 38px rgba(15, 29, 48, .045);
  --shadow-2: 0 4px 14px rgba(15, 29, 48, .06), 0 30px 80px rgba(15, 29, 48, .12);
  --radius-md: 20px;
  --radius-lg: 28px;
  --radius-xl: 36px;
  --content-max: 82rem;
}

body {
  background: var(--canvas);
  font-weight: 390;
  line-height: 1.58;
  letter-spacing: -.012em;
}

h1, h2, h3, h4 {
  color: var(--text-1);
  font-weight: 470;
  letter-spacing: -.045em;
  line-height: 1.08;
  text-wrap: balance;
}

p { line-height: 1.62; }

.topbar {
  min-height: 5.5rem;
  padding-inline: clamp(1.5rem, 3vw, 3.25rem);
  background: rgba(245, 247, 250, .88);
  border-bottom-color: rgba(215, 222, 231, .62);
  backdrop-filter: blur(28px) saturate(145%);
  -webkit-backdrop-filter: blur(28px) saturate(145%);
}

.main-content {
  padding: clamp(3rem, 5vw, 5.25rem) clamp(1.5rem, 4vw, 4rem) clamp(6rem, 10vw, 9rem);
}

.page-stack {
  display: grid;
  gap: clamp(3rem, 6vw, 5.5rem);
}

.page-heading {
  gap: 1.25rem;
  margin-bottom: 0;
  max-width: 66rem;
}

.page-heading > div {
  display: grid;
  gap: 1.15rem;
}

.page-heading h1 {
  max-width: 17ch;
  font-size: clamp(2.5rem, 5vw, 4.75rem);
  font-weight: 430;
  letter-spacing: -.055em;
}

.page-heading p,
.page-heading__summary {
  max-width: 53rem;
  color: var(--text-2);
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  font-weight: 340;
  line-height: 1.65;
  letter-spacing: -.018em;
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, 2.2vw, 2rem);
  align-items: stretch;
}

.feature-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.feature-card {
  min-width: 0;
  min-height: 22rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(2rem, 3.2vw, 3rem);
  border: 0;
  border-radius: var(--radius-xl);
  background: rgba(255, 255, 255, .96);
  box-shadow: var(--shadow-1);
}

.feature-card > .ui-icon {
  width: 2.35rem;
  height: 2.35rem;
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
  color: var(--blue-strong);
  stroke-width: 1.35;
}

.feature-card h2 {
  margin: 0 0 .85rem;
  font-size: clamp(1.65rem, 2.2vw, 2.25rem);
  font-weight: 470;
  letter-spacing: -.048em;
  line-height: 1.08;
}

.feature-card p {
  max-width: 34ch;
  margin: 0 0 2.25rem;
  color: var(--text-2);
  font-size: 1rem;
  font-weight: 350;
  line-height: 1.62;
}

.feature-card .button {
  min-height: 3rem;
  margin-top: auto;
  padding: .76rem 1.25rem;
  font-size: .9rem;
  font-weight: 570;
  box-shadow: inset 0 0 0 1px var(--line);
}

.feature-card .button--primary {
  box-shadow: 0 10px 28px rgba(8, 115, 219, .18);
}

.context-banner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 1rem;
  padding: 1.35rem 1.5rem;
  border-radius: var(--radius-md);
  background: rgba(237, 246, 255, .74);
  color: #245e88;
  font-size: .9rem;
  line-height: 1.55;
}

.surface {
  border: 0;
  box-shadow: var(--shadow-1);
}

.button {
  font-weight: 560;
  letter-spacing: -.015em;
}

@media (max-width: 1180px) {
  .feature-grid--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  :root { --topbar-height: 5rem; }

  .topbar {
    min-height: var(--topbar-height);
    padding-inline: 1.1rem;
  }

  .main-content {
    padding: 3.5rem 1.25rem calc(7rem + env(safe-area-inset-bottom));
  }

  .page-stack { gap: 3.25rem; }

  .page-heading {
    gap: 1rem;
    margin-bottom: 0;
  }

  .page-heading > div { gap: 1rem; }

  .page-heading h1 {
    max-width: none;
    font-size: clamp(2.15rem, 10vw, 3rem);
    line-height: 1.04;
  }

  .page-heading p,
  .page-heading__summary {
    max-width: 35ch;
    font-size: 1rem;
    line-height: 1.65;
  }

  .feature-grid,
  .feature-grid--three {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .feature-card {
    min-height: 0;
    padding: 1.75rem;
    border-radius: 26px;
  }

  .feature-card > .ui-icon {
    width: 1.85rem;
    height: 1.85rem;
    margin-bottom: 2rem;
  }

  .feature-card h2 {
    margin-bottom: .65rem;
    font-size: clamp(1.55rem, 7vw, 1.9rem);
    line-height: 1.08;
  }

  .feature-card p {
    max-width: 32ch;
    margin-bottom: 1.75rem;
    font-size: .96rem;
    line-height: 1.62;
  }

  .feature-card .button {
    width: auto;
    min-height: 2.9rem;
    align-self: flex-start;
    padding-inline: 1.15rem;
    font-size: .88rem;
  }

  .context-banner {
    padding: 1.15rem 1.2rem;
    border-radius: 18px;
    font-size: .84rem;
  }

  .surface--padded { padding: 1.5rem; }

  .content-section { margin-top: 3rem; }
}

@media (max-width: 390px) {
  .main-content { padding-inline: 1rem; }
  .feature-card { padding: 1.55rem; border-radius: 24px; }
  .feature-card h2 { font-size: 1.55rem; }
  .feature-card p { font-size: .93rem; }
}

/* 27P — universal Apple-level visual system and sacred-whitespace pass.
   Presentation only. No routes, controllers, permissions, forms, data or workflows changed. */
:root {
  --canvas: #f7f8fa;
  --surface: #ffffff;
  --surface-subtle: #f3f5f8;
  --surface-blue: #eef5ff;
  --text-1: #101c2d;
  --text-2: #536174;
  --text-3: #7c8999;
  --line: rgba(18, 36, 60, .075);
  --line-strong: rgba(18, 36, 60, .13);
  --radius-sm: 14px;
  --radius-md: 22px;
  --radius-lg: 30px;
  --radius-xl: 38px;
  --shadow-1: 0 1px 2px rgba(15, 29, 48, .025), 0 16px 46px rgba(15, 29, 48, .045);
  --shadow-2: 0 4px 14px rgba(15, 29, 48, .055), 0 36px 90px rgba(15, 29, 48, .105);
  --content-max: 88rem;
  --editorial-measure: 68ch;
  --editorial-gap: clamp(3.25rem, 7vw, 7.5rem);
}

html {
  background: var(--canvas);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  background:
    radial-gradient(circle at 52% -18rem, rgba(255,255,255,.98) 0, rgba(255,255,255,.35) 28rem, transparent 48rem),
    var(--canvas);
  color: var(--text-1);
  font-weight: 400;
  line-height: 1.62;
  letter-spacing: -.012em;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  color: var(--text-1);
  font-weight: 500;
  letter-spacing: -.042em;
  line-height: 1.08;
  text-wrap: balance;
}

p, li, dd, td { color: var(--text-2); }
p { max-width: var(--editorial-measure); }
strong, b { font-weight: 580; }

.app-shell, .workspace { background: transparent; }
.workspace { min-width: 0; }

.sidebar {
  padding: 1.5rem 1.25rem;
  background: rgba(248, 250, 252, .88);
  border-right: 1px solid rgba(18, 36, 60, .065);
  box-shadow: none;
  backdrop-filter: blur(30px) saturate(135%);
  -webkit-backdrop-filter: blur(30px) saturate(135%);
}
.brand { min-height: 4.5rem; padding-inline: .75rem; }
.brand__copy strong { font-weight: 550; letter-spacing: -.035em; }
.brand__copy span { font-weight: 530; letter-spacing: .15em; }
.tenant-card {
  margin: 1.75rem 0 2rem;
  padding: 1.15rem;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.68);
  box-shadow: none;
}
.primary-nav { padding-block: .5rem 1.25rem; }
.nav-list { gap: .35rem; }
.nav-link {
  min-height: 3rem;
  padding: .75rem .9rem;
  border-radius: 13px;
  font-size: .85rem;
  font-weight: 450;
  letter-spacing: -.012em;
}
.nav-link:hover { background: rgba(255,255,255,.82); }
.nav-link[aria-current="page"] {
  background: #15253a;
  box-shadow: 0 8px 24px rgba(15,29,48,.10);
}
.sidebar__footer { gap: 1rem; padding-top: 1.25rem; }
.boundary-note { padding: 1rem; border-radius: 16px; }

.topbar {
  min-height: 5.75rem;
  padding-inline: clamp(1.25rem, 3vw, 3.5rem);
  background: rgba(247, 248, 250, .82);
  border-bottom: 1px solid rgba(18, 36, 60, .065);
  backdrop-filter: blur(30px) saturate(140%);
  -webkit-backdrop-filter: blur(30px) saturate(140%);
}
.topbar__context strong { font-weight: 520; }
.topbar__context span { font-weight: 400; }
.icon-button, .role-button, .account-button { box-shadow: none; }

.main-content {
  width: min(100%, var(--content-max));
  padding: clamp(4.5rem, 8vw, 8rem) clamp(1.5rem, 5vw, 5.5rem) clamp(8rem, 14vw, 14rem);
}

.page-stack, .workspace, .client-page, .authority-page,
.support-access-page, .support-metadata-page, .custody-page {
  gap: var(--editorial-gap);
}

.page-heading, .workspace-header, .workspace-hero {
  display: grid;
  gap: clamp(1.25rem, 2.5vw, 2rem);
  max-width: 72rem;
  margin: 0;
}

.page-heading > div, .workspace-header > div, .workspace-hero > div {
  display: grid;
  gap: 1rem;
}

.eyebrow {
  color: var(--blue-strong);
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .19em;
  line-height: 1.25;
  text-transform: uppercase;
}

.page-heading h1, .workspace-header h1, .workspace-hero h1 {
  max-width: 18ch;
  margin: 0;
  font-size: clamp(2.65rem, 5.6vw, 5.25rem);
  font-weight: 470;
  letter-spacing: -.058em;
  line-height: 1.01;
}

.page-heading p, .page-heading__summary,
.workspace-header p, .workspace-hero p {
  max-width: 55rem;
  margin: 0;
  color: var(--text-2);
  font-size: clamp(1.05rem, 1.55vw, 1.3rem);
  font-weight: 380;
  line-height: 1.66;
  letter-spacing: -.018em;
}

.context-banner, .preview-banner, .security-boundary-callout,
.support-identity-banner, .alert {
  gap: 1rem;
  padding: clamp(1.2rem, 2vw, 1.6rem) clamp(1.25rem, 2.4vw, 1.8rem);
  border: 0;
  border-radius: 20px;
  box-shadow: none;
  font-size: .9rem;
  line-height: 1.6;
}
.context-banner { margin: 0; background: rgba(232,243,255,.74); }

.surface, .section-card, .public-card, .identity-card,
.support-access-card, .principle-card, .metric-card, .feature-card {
  border: 1px solid rgba(18, 36, 60, .055);
  background: rgba(255,255,255,.94);
  box-shadow: var(--shadow-1);
}

.surface, .section-card, .public-card, .identity-card,
.support-access-card, .principle-card {
  border-radius: var(--radius-lg);
}

.surface--padded, .section-card, .identity-card,
.support-access-card, .principle-card, .public-card {
  padding: clamp(1.75rem, 3.5vw, 3.25rem);
}

section + section, .section + .section, .content-section,
.section-stack { margin-top: var(--editorial-gap); }

.section-heading, .section-header {
  align-items: flex-end;
  gap: 1.5rem;
  margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}
.section-heading > div, .section-header__copy { gap: .75rem; }
.section-heading h2, .section-header h2 {
  font-size: clamp(1.65rem, 2.6vw, 2.5rem);
  font-weight: 480;
  letter-spacing: -.045em;
}
.section-heading p, .section-header p {
  max-width: 58rem;
  font-size: .98rem;
  line-height: 1.65;
}

.metric-grid, .metrics-grid, .operations-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
  margin-top: clamp(2.5rem, 5vw, 4.5rem);
}
.metric-card {
  min-width: 0;
  min-height: 9.5rem;
  display: grid;
  align-content: space-between;
  gap: 1.25rem;
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-radius: 22px;
}
.metric-card__label, .metric-card small, .metric-card dt {
  color: var(--text-3);
  font-size: .7rem;
  font-weight: 560;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.metric-number, .metric-card__value, .metric-card strong {
  color: var(--text-1);
  font-size: clamp(1.8rem, 3.2vw, 3rem);
  font-weight: 440;
  letter-spacing: -.05em;
  line-height: 1;
}

.feature-grid, .feature-grid--three, .component-grid,
.two-column, .three-column, .dashboard-grid,
.identity-summary-grid, .authority-principles,
.support-grant-grid, .metadata-grid {
  gap: clamp(1.25rem, 2.4vw, 2rem);
}

.feature-card {
  min-height: 23rem;
  padding: clamp(2.25rem, 3.5vw, 3.5rem);
  border-radius: var(--radius-xl);
}
.feature-card > .ui-icon { margin-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.feature-card h2 {
  margin-bottom: .85rem;
  font-size: clamp(1.65rem, 2.3vw, 2.25rem);
  font-weight: 480;
}
.feature-card p { margin-bottom: 2.5rem; font-weight: 380; }

.button {
  min-height: 3.15rem;
  padding: .8rem 1.3rem;
  border-radius: 999px;
  font-size: .9rem;
  font-weight: 560;
  letter-spacing: -.012em;
  box-shadow: none;
}
.button--primary {
  background: #3478df;
  box-shadow: 0 10px 28px rgba(52,120,223,.16);
}
.button--primary:hover { box-shadow: 0 13px 34px rgba(52,120,223,.22); }
.button:not(.button--primary) { background: rgba(255,255,255,.78); }
.button--small { min-height: 2.6rem; padding: .62rem 1rem; font-size: .8rem; }

.input, input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  min-height: 3.2rem;
  padding: .78rem 1rem;
  border: 1px solid var(--line-strong);
  border-radius: 14px;
  background: rgba(255,255,255,.92);
  box-shadow: inset 0 1px 1px rgba(15,29,48,.025);
  font: inherit;
}
.field { gap: .65rem; }
label, legend { font-size: .88rem; font-weight: 520; }
.form-grid, .form-grid--four { gap: 1.4rem; }
.form-actions { gap: .85rem; margin-top: 2rem; }

.table-wrap, .responsive-table {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255,255,255,.72);
}
table { background: transparent; }
th {
  padding: 1rem 1.15rem;
  color: var(--text-3);
  font-size: .68rem;
  font-weight: 580;
  letter-spacing: .1em;
}
td { padding: 1.15rem; font-size: .9rem; line-height: 1.55; }
tbody tr:hover { background: rgba(238,245,255,.48); }

.status-chip, .status-pill {
  min-height: 1.9rem;
  padding: .38rem .7rem;
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 570;
  letter-spacing: .035em;
}

.empty-state, .loading-state, .error-state, .success-state {
  min-height: 18rem;
  gap: 1.25rem;
  padding: clamp(3rem, 8vw, 7rem);
  border-radius: var(--radius-lg);
}

.code-block, pre, code {
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}
.code-block, pre {
  padding: 1.25rem 1.4rem;
  border-radius: 18px;
  background: #162235;
  line-height: 1.65;
}

@media (max-width: 1180px) {
  .metric-grid, .metrics-grid, .operations-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .main-content { padding-top: clamp(4rem, 8vw, 6rem); }
  .dashboard-grid, .two-column, .three-column { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  :root { --topbar-height: 5.25rem; --editorial-gap: 4.5rem; }
  .topbar { min-height: var(--topbar-height); padding-inline: 1rem; }
  .main-content {
    padding: 4.75rem 1.35rem calc(8.5rem + env(safe-area-inset-bottom));
  }
  .page-stack, .workspace, .client-page, .authority-page,
  .support-access-page, .support-metadata-page, .custody-page { gap: 4.5rem; }
  .page-heading, .workspace-header, .workspace-hero { gap: 1.35rem; }
  .eyebrow { font-size: .68rem; letter-spacing: .17em; }
  .page-heading h1, .workspace-header h1, .workspace-hero h1 {
    max-width: none;
    font-size: clamp(2.3rem, 10vw, 3.45rem);
    line-height: 1.025;
  }
  .page-heading p, .page-heading__summary,
  .workspace-header p, .workspace-hero p {
    max-width: 34ch;
    font-size: 1rem;
    line-height: 1.66;
  }
  .context-banner, .preview-banner, .security-boundary-callout,
  .support-identity-banner, .alert {
    padding: 1.15rem 1.2rem;
    border-radius: 18px;
    font-size: .84rem;
  }
  .surface--padded, .section-card, .identity-card,
  .support-access-card, .principle-card, .public-card {
    padding: 1.6rem;
    border-radius: 24px;
  }
  .feature-grid, .feature-grid--three, .component-grid,
  .metric-grid, .metrics-grid, .operations-metrics,
  .identity-summary-grid, .authority-principles,
  .support-grant-grid, .metadata-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .feature-card {
    min-height: 0;
    padding: 1.85rem;
    border-radius: 28px;
  }
  .feature-card > .ui-icon { margin-bottom: 2.35rem; }
  .feature-card h2 { font-size: 1.75rem; }
  .feature-card p { max-width: 31ch; font-size: .95rem; }
  .metric-card { min-height: 8.5rem; padding: 1.45rem; }
  .section-heading, .section-header {
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 1.5rem;
  }
  .section-heading h2, .section-header h2 { font-size: 1.75rem; }
  .section-heading .button, .section-header .button { width: auto; }
  table[data-mobile-cards] tr { padding: 1.25rem; }
  table[data-mobile-cards] td { grid-template-columns: 1fr; gap: .25rem; padding: .55rem 0; }
  .button { min-height: 3.2rem; }
}

@media (max-width: 390px) {
  .main-content { padding-inline: 1.1rem; }
  .page-heading h1, .workspace-header h1, .workspace-hero h1 { font-size: 2.2rem; }
  .feature-card { padding: 1.65rem; }
}

/* 27Q — Ive-grade spatial rhythm, restrained typography and mobile shell icon rootfix.
   Presentation-only. No routes, forms, permissions, data or application behaviour changed. */
:root {
  --editorial-gap: clamp(5.5rem, 9vw, 10rem);
  --content-max: 96rem;
  --reading-measure: 62ch;
  --surface-pad: clamp(2.5rem, 4.8vw, 5.25rem);
  --surface-radius: 32px;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  letter-spacing: -.012em;
  background: #f7f8fa;
}

h1, h2, h3, h4, h5, h6,
strong, b, label, legend, .button, .nav-link {
  font-weight: 500;
}

h1, h2, h3, h4 { text-wrap: balance; }
p, li, dd, td, .field__hint { text-wrap: pretty; }

.topbar {
  min-height: 6rem;
  padding-inline: clamp(1.5rem, 3.6vw, 4.5rem);
}

/* Explicit shell control geometry prevents generic pill/button rules from
   inflating the mobile controls and guarantees the inline SVG remains legible. */
.topbar .icon-button,
.topbar .mobile-menu-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  min-height: 3rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #10213a;
  background: rgba(255,255,255,.72);
  box-shadow: 0 1px 0 rgba(16,33,58,.05), inset 0 0 0 1px rgba(16,33,58,.055);
}
.topbar .icon-button .ui-icon,
.topbar .mobile-menu-button .ui-icon {
  display: block !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  min-width: 1.35rem;
  color: #10213a !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.topbar .mobile-menu-button .ui-icon { width: 1.45rem !important; height: 1.45rem !important; stroke-width: 2.15 !important; }

.main-content {
  width: min(100%, var(--content-max));
  padding: clamp(6rem, 10vw, 10rem) clamp(2rem, 6vw, 7rem) clamp(10rem, 16vw, 16rem);
}

.page-stack, .client-page, .authority-page,
.support-access-page, .support-metadata-page, .custody-page {
  display: grid;
  gap: var(--editorial-gap);
}

.page-heading, .workspace-header, .workspace-hero {
  gap: clamp(1.75rem, 3vw, 3rem);
  margin: 0;
}
.page-heading__copy { display: grid; gap: clamp(1.4rem, 2.5vw, 2.25rem); }
.page-heading h1, .workspace-header h1, .workspace-hero h1 {
  max-width: 15ch;
  font-size: clamp(3rem, 5.8vw, 6rem);
  line-height: .98;
  font-weight: 470;
  letter-spacing: -.058em;
}
.page-heading p, .page-heading__summary,
.workspace-header p, .workspace-hero p {
  max-width: var(--reading-measure);
  font-size: clamp(1.08rem, 1.45vw, 1.35rem);
  line-height: 1.68;
  font-weight: 390;
}
.eyebrow {
  font-size: .72rem;
  font-weight: 560;
  letter-spacing: .19em;
}

.context-banner, .preview-banner, .security-boundary-callout,
.support-identity-banner, .alert {
  padding: clamp(1.5rem, 2.8vw, 2.5rem);
  border-radius: 24px;
  line-height: 1.65;
}

.surface, .section-card, .identity-card, .support-access-card,
.principle-card, .public-card, .feature-card, .metric-card {
  border-radius: var(--surface-radius);
  border-color: rgba(16,33,58,.07);
  box-shadow: 0 1px 1px rgba(16,33,58,.025), 0 18px 55px rgba(16,33,58,.045);
}
.surface--padded, .section-card, .identity-card,
.support-access-card, .principle-card, .public-card {
  padding: var(--surface-pad);
}

.dashboard-grid, .two-column, .three-column,
.feature-grid, .feature-grid--three, .component-grid,
.identity-summary-grid, .authority-principles,
.support-grant-grid, .metadata-grid {
  gap: clamp(2.5rem, 4vw, 4.5rem);
}

.surface--padded > .eyebrow,
.surface--padded > h2,
.surface--padded > p { max-width: var(--reading-measure); }
.surface--padded > .eyebrow + h2,
.surface--padded > h2 + p { margin-top: 1.35rem; }
.surface--padded > h2 {
  font-size: clamp(2rem, 3.1vw, 3.25rem);
  line-height: 1.03;
  font-weight: 470;
  letter-spacing: -.05em;
}

.form-stack {
  display: grid;
  gap: clamp(2rem, 3.2vw, 3rem);
  margin-top: clamp(3rem, 5vw, 5.25rem);
}
.form-grid, .form-grid--four { gap: clamp(2rem, 3vw, 3rem); }
.field { display: grid; gap: .9rem; }
label, legend {
  font-size: .9rem;
  line-height: 1.3;
  font-weight: 520;
  letter-spacing: -.01em;
}
.input, input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  min-height: 4rem;
  padding: 1rem 1.15rem;
  border-radius: 18px;
  font-size: 1rem;
  line-height: 1.4;
  background: rgba(255,255,255,.9);
}
textarea { min-height: 10rem; }
.field__hint, .field__error {
  max-width: 52ch;
  font-size: .84rem;
  line-height: 1.58;
  font-weight: 400;
}
.form-actions { margin-top: clamp(2rem, 4vw, 3.5rem); }
.form-stack > .button, .form-actions .button { justify-self: start; }

.button {
  min-height: 3.5rem;
  padding: .92rem 1.55rem;
  font-size: .92rem;
  font-weight: 520;
}

.settings-list { margin-top: clamp(2.75rem, 5vw, 5rem); }
.settings-row {
  padding-block: clamp(1.5rem, 2.5vw, 2.25rem);
  gap: 2rem;
}
.settings-row strong { font-weight: 500; }
.settings-row p { margin-top: .55rem; line-height: 1.65; }

.section-heading, .section-header {
  margin-bottom: clamp(2.5rem, 4.5vw, 4.5rem);
}
section + section, .section + .section, .content-section, .section-stack {
  margin-top: var(--editorial-gap);
}

@media (max-width: 900px) {
  .main-content { padding-top: 7rem; }
  .dashboard-grid, .two-column, .three-column { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  :root {
    --topbar-height: 6rem;
    --editorial-gap: 6.5rem;
    --surface-pad: 2.25rem;
    --surface-radius: 30px;
  }
  .topbar {
    min-height: var(--topbar-height);
    padding-inline: 1.25rem;
  }
  .topbar .icon-button,
  .topbar .mobile-menu-button {
    width: 3rem;
    min-width: 3rem;
    height: 3rem;
    min-height: 3rem;
  }
  .main-content {
    padding: 7.5rem 1.5rem calc(10rem + env(safe-area-inset-bottom));
  }
  .page-stack, .client-page, .authority-page,
  .support-access-page, .support-metadata-page, .custody-page {
    gap: 6.5rem;
  }
  .page-heading, .workspace-header, .workspace-hero { gap: 1.75rem; }
  .page-heading__copy { gap: 1.4rem; }
  .page-heading h1, .workspace-header h1, .workspace-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.55rem, 11.2vw, 3.55rem);
    line-height: .99;
    letter-spacing: -.055em;
  }
  .page-heading p, .page-heading__summary,
  .workspace-header p, .workspace-hero p {
    max-width: 31ch;
    font-size: 1.02rem;
    line-height: 1.72;
  }
  .context-banner, .preview-banner, .security-boundary-callout,
  .support-identity-banner, .alert {
    padding: 1.45rem 1.5rem;
    border-radius: 22px;
  }
  .surface--padded, .section-card, .identity-card,
  .support-access-card, .principle-card, .public-card {
    padding: 2.25rem;
  }
  .surface--padded > .eyebrow + h2 { margin-top: 1.4rem; }
  .surface--padded > h2 {
    font-size: 2rem;
    line-height: 1.04;
  }
  .dashboard-grid, .two-column, .three-column,
  .feature-grid, .feature-grid--three, .component-grid,
  .metric-grid, .metrics-grid, .operations-metrics,
  .identity-summary-grid, .authority-principles,
  .support-grant-grid, .metadata-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .form-stack {
    gap: 2.25rem;
    margin-top: 3.5rem;
  }
  .field { gap: .8rem; }
  .input, input:not([type="checkbox"]):not([type="radio"]), select, textarea {
    min-height: 4.15rem;
    padding: 1rem 1.1rem;
    border-radius: 18px;
  }
  .form-stack > .button, .form-actions .button {
    width: 100%;
    justify-self: stretch;
    margin-top: .5rem;
  }
  .settings-list { margin-top: 3.25rem; }
  .settings-row { padding-block: 1.75rem; }
}

@media (max-width: 390px) {
  .main-content { padding-inline: 1.25rem; }
  .surface--padded, .section-card, .identity-card,
  .support-access-card, .principle-card, .public-card { padding: 2rem; }
}


/* 27R — AURORA Editorial Design System reconstruction.
   Presentation-only global system: sacred whitespace, quiet typography, deterministic shell icons. */
:root {
  --aurora-space-1: .25rem;
  --aurora-space-2: .5rem;
  --aurora-space-3: .75rem;
  --aurora-space-4: 1rem;
  --aurora-space-5: 1.5rem;
  --aurora-space-6: 2rem;
  --aurora-space-7: 3rem;
  --aurora-space-8: 4rem;
  --aurora-space-9: 6rem;
  --aurora-space-10: 8rem;
  --aurora-reading: 66ch;
  --aurora-page: 82rem;
  --aurora-card-pad: clamp(2.5rem, 4.4vw, 5rem);
  --aurora-section-gap: clamp(6rem, 10vw, 10rem);
  --aurora-card-gap: clamp(2.5rem, 5vw, 4.5rem);
}

html { -webkit-text-size-adjust: 100%; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", Inter, "Segoe UI", sans-serif;
  font-weight: 400;
  letter-spacing: -.008em;
  line-height: 1.72;
}

/* Deterministic shell controls: generic button/SVG rules can never collapse these again. */
.topbar .mobile-menu-button {
  display: inline-grid !important;
  place-items: center !important;
  width: 3.5rem !important;
  min-width: 3.5rem !important;
  height: 3.5rem !important;
  min-height: 3.5rem !important;
  padding: 0 !important;
  color: #0b1b2e !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.shell-hamburger {
  width: 1.45rem;
  height: 1.1rem;
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
  opacity: 1 !important;
  visibility: visible !important;
}
.shell-hamburger > span {
  display: block !important;
  width: 100% !important;
  height: 2px !important;
  min-height: 2px !important;
  border-radius: 999px;
  background: currentColor !important;
  opacity: 1 !important;
  transform: none !important;
}
.topbar .icon-button:not(.mobile-menu-button) .ui-icon {
  width: 1.25rem !important;
  height: 1.25rem !important;
  opacity: 1 !important;
}

.main-content {
  width: min(100%, var(--aurora-page));
  padding: clamp(7rem, 11vw, 11rem) clamp(2rem, 6vw, 6rem) clamp(12rem, 18vw, 18rem) !important;
}
.main-content > .context-banner { margin-bottom: clamp(5rem, 9vw, 9rem) !important; }

.page-stack,
.client-page,
.authority-page,
.support-access-page,
.support-metadata-page,
.custody-page {
  display: grid;
  gap: var(--aurora-section-gap) !important;
}

.page-heading,
.workspace-header,
.workspace-hero {
  display: grid;
  gap: clamp(2rem, 4vw, 3.5rem) !important;
  margin: 0 !important;
}
.page-heading__copy { display: grid; gap: clamp(1.75rem, 3vw, 3rem) !important; }
.page-heading h1,
.workspace-header h1,
.workspace-hero h1 {
  max-width: 14ch;
  font-size: clamp(3rem, 6vw, 5.75rem);
  line-height: 1.02 !important;
  font-weight: 470 !important;
  letter-spacing: -.052em !important;
}
.page-heading p,
.page-heading__summary,
.workspace-header p,
.workspace-hero p,
.prose {
  max-width: var(--aurora-reading);
  font-size: clamp(1.08rem, 1.55vw, 1.32rem);
  line-height: 1.78 !important;
  font-weight: 400 !important;
  letter-spacing: -.012em !important;
}
.eyebrow {
  font-size: .76rem !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  letter-spacing: .22em !important;
}

/* Every major surface follows one internal rhythm. */
.surface--padded,
.section-card,
.identity-card,
.support-access-card,
.principle-card,
.public-card,
.feature-card,
.metric-card,
.empty-state,
.loading-state,
.error-state,
.success-state {
  padding: var(--aurora-card-pad) !important;
  border-radius: clamp(2rem, 3vw, 2.75rem) !important;
}
.surface--padded > * + *,
.section-card > * + *,
.identity-card > * + *,
.support-access-card > * + *,
.principle-card > * + *,
.public-card > * + *,
.feature-card > * + *,
.metric-card > * + * {
  margin-top: 1.5rem !important;
}
.surface--padded > h2 + p,
.section-card > h2 + p,
.feature-card > h2 + p,
.public-card > h2 + p { margin-top: 1.75rem !important; }
.surface--padded > p + .button,
.section-card > p + .button,
.feature-card > p + .button,
.public-card > p + .button { margin-top: 2.5rem !important; }

.surface--padded h2,
.section-card h2,
.feature-card h2,
.public-card h2 {
  max-width: 17ch;
  font-size: clamp(2rem, 3.2vw, 3.15rem);
  line-height: 1.08 !important;
  font-weight: 470 !important;
  letter-spacing: -.045em !important;
}
.surface--padded h3,
.section-card h3,
.feature-card h3,
.public-card h3 {
  margin-top: 2.75rem !important;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  line-height: 1.28 !important;
  font-weight: 540 !important;
  letter-spacing: -.025em !important;
}
.surface--padded p,
.section-card p,
.feature-card p,
.public-card p,
.settings-row p,
.alert__copy p {
  max-width: var(--aurora-reading);
  line-height: 1.78 !important;
  letter-spacing: -.008em !important;
}

.dashboard-grid,
.two-column,
.three-column,
.feature-grid,
.feature-grid--three,
.component-grid,
.identity-summary-grid,
.authority-principles,
.support-grant-grid,
.metadata-grid,
.metric-grid,
.metrics-grid,
.operations-metrics {
  gap: var(--aurora-card-gap) !important;
}

.context-banner,
.preview-banner,
.security-boundary-callout,
.support-identity-banner,
.alert {
  padding: clamp(1.75rem, 3vw, 2.75rem) !important;
  gap: 1.25rem !important;
  border-radius: 1.75rem !important;
  line-height: 1.72 !important;
}

.form-stack {
  display: grid;
  gap: clamp(2.75rem, 5vw, 4.5rem) !important;
  margin-top: clamp(4rem, 7vw, 7rem) !important;
}
.form-grid,
.form-grid--four { gap: clamp(2.5rem, 4vw, 4rem) !important; }
.field { display: grid; gap: 1rem !important; }
label, legend {
  font-size: .98rem !important;
  line-height: 1.4 !important;
  font-weight: 560 !important;
  letter-spacing: -.012em !important;
}
.input,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
  min-height: 4.5rem !important;
  padding: 1.2rem 1.35rem !important;
  border-radius: 1.35rem !important;
  font-size: 1.05rem !important;
  line-height: 1.5 !important;
}
textarea { min-height: 12rem !important; }
.field__hint, .field__error {
  margin-top: .25rem !important;
  max-width: 54ch;
  font-size: .9rem !important;
  line-height: 1.7 !important;
}
.form-actions {
  margin-top: clamp(3rem, 5vw, 5rem) !important;
  gap: 1.25rem !important;
}

.button {
  min-height: 3.75rem !important;
  padding: 1rem 1.7rem !important;
  border-radius: 999px !important;
  font-size: .98rem !important;
  line-height: 1.2 !important;
  font-weight: 560 !important;
  letter-spacing: -.012em !important;
}

.settings-list { margin-top: clamp(3.5rem, 6vw, 6rem) !important; }
.settings-row {
  padding-block: clamp(2.25rem, 4vw, 3.5rem) !important;
  gap: 2.5rem !important;
}

.section-heading,
.section-header { margin-bottom: clamp(3rem, 6vw, 6rem) !important; }
section + section,
.section + .section,
.content-section + .content-section { margin-top: var(--aurora-section-gap) !important; }

th, td { padding: 1.4rem 1.25rem !important; line-height: 1.6 !important; }
th { letter-spacing: .11em !important; font-weight: 600 !important; }

@media (max-width: 680px) {
  :root {
    --aurora-card-pad: 2.5rem 2rem;
    --aurora-section-gap: 7rem;
    --aurora-card-gap: 2.5rem;
  }
  .topbar {
    min-height: 7.25rem !important;
    padding-inline: 1.25rem !important;
  }
  .topbar .mobile-menu-button {
    width: 3.5rem !important;
    min-width: 3.5rem !important;
    height: 3.5rem !important;
    min-height: 3.5rem !important;
  }
  .main-content {
    padding: 8.5rem 1.5rem calc(12rem + env(safe-area-inset-bottom)) !important;
  }
  .main-content > .context-banner { margin-bottom: 6.5rem !important; }
  .page-heading h1,
  .workspace-header h1,
  .workspace-hero h1 {
    max-width: 12ch;
    font-size: clamp(2.65rem, 11vw, 3.65rem);
    line-height: 1.04 !important;
  }
  .page-heading p,
  .page-heading__summary,
  .workspace-header p,
  .workspace-hero p {
    max-width: 31ch;
    font-size: 1.05rem;
    line-height: 1.82 !important;
  }
  .surface--padded > * + *,
  .section-card > * + *,
  .identity-card > * + *,
  .support-access-card > * + *,
  .principle-card > * + *,
  .public-card > * + *,
  .feature-card > * + *,
  .metric-card > * + * { margin-top: 1.6rem !important; }
  .surface--padded h3,
  .section-card h3,
  .feature-card h3,
  .public-card h3 { margin-top: 3rem !important; }
  .form-stack { gap: 3rem !important; margin-top: 4.5rem !important; }
  .form-stack > .button,
  .form-actions .button { width: 100% !important; }
  .dashboard-grid,
  .two-column,
  .three-column,
  .feature-grid,
  .feature-grid--three,
  .component-grid,
  .metric-grid,
  .metrics-grid,
  .operations-metrics,
  .identity-summary-grid,
  .authority-principles,
  .support-grant-grid,
  .metadata-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 390px) {
  :root { --aurora-card-pad: 2.25rem 1.75rem; }
  .main-content { padding-inline: 1.25rem !important; }
}

/* 27S — deterministic dismiss controls and mobile account identity refinement. */
.sidebar-close,
.modal [data-modal-close].icon-button {
  position: relative !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 3.25rem !important;
  min-width: 3.25rem !important;
  height: 3.25rem !important;
  min-height: 3.25rem !important;
  padding: 0 !important;
  border: 1px solid rgba(15, 31, 52, .10) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.94) !important;
  color: #0d1b2e !important;
  box-shadow: 0 1px 0 rgba(15,31,52,.04) !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 5;
}
.shell-close-glyph {
  position: relative;
  display: block !important;
  width: 1.2rem !important;
  height: 1.2rem !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.shell-close-glyph > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block !important;
  width: 1.25rem !important;
  height: 2px !important;
  min-height: 2px !important;
  border-radius: 999px;
  background: currentColor !important;
  opacity: 1 !important;
}
.shell-close-glyph > span:first-child { transform: translate(-50%,-50%) rotate(45deg) !important; }
.shell-close-glyph > span:last-child  { transform: translate(-50%,-50%) rotate(-45deg) !important; }

.brand { position: relative; }
.brand .sidebar-close {
  margin-left: auto !important;
  flex: 0 0 3.25rem;
}
.modal__header {
  position: relative;
  align-items: flex-start !important;
  gap: 2rem !important;
}
.modal__header > div:first-child { min-width: 0; padding-right: .5rem; }
.modal__header [data-modal-close].icon-button {
  flex: 0 0 3.25rem;
  margin-left: auto;
}

.account-button {
  width: 3.5rem !important;
  min-width: 3.5rem !important;
  height: 3.5rem !important;
  min-height: 3.5rem !important;
  padding: 0 !important;
  border: 1px solid rgba(15,31,52,.08) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 1px 0 rgba(15,31,52,.04) !important;
  overflow: hidden;
}
.account-button .role-button__copy,
.account-button > .ui-icon { display: none !important; }
.role-avatar {
  display: grid !important;
  place-items: center !important;
  width: 2.65rem !important;
  min-width: 2.65rem !important;
  height: 2.65rem !important;
  min-height: 2.65rem !important;
  border-radius: 50% !important;
  background: #10213a !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden;
}
.role-avatar > span {
  display: block;
  font-size: .82rem;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .04em;
  white-space: nowrap;
  transform: none !important;
}
.account-popover .role-avatar {
  width: 2.8rem !important;
  min-width: 2.8rem !important;
  height: 2.8rem !important;
  min-height: 2.8rem !important;
}

@media (max-width: 680px) {
  .topbar { column-gap: 1rem !important; }
  .topbar__actions { gap: .85rem !important; }
  .topbar .mobile-menu-button,
  .topbar .icon-button,
  .account-button {
    width: 3.35rem !important;
    min-width: 3.35rem !important;
    height: 3.35rem !important;
    min-height: 3.35rem !important;
  }
  .role-avatar {
    width: 2.45rem !important;
    min-width: 2.45rem !important;
    height: 2.45rem !important;
    min-height: 2.45rem !important;
  }
  .sidebar-close,
  .modal [data-modal-close].icon-button {
    width: 3rem !important;
    min-width: 3rem !important;
    height: 3rem !important;
    min-height: 3rem !important;
  }
  .modal__header { gap: 1.25rem !important; }
  .modal__header h2 { padding-right: 0 !important; }
}

/* 27T — unified public-site-inspired editorial application system.
   Presentation only: shell, typography, spacing, cards, forms and responsive composition. */
:root {
  --t-space-1: .5rem;
  --t-space-2: .75rem;
  --t-space-3: 1rem;
  --t-space-4: 1.5rem;
  --t-space-5: 2rem;
  --t-space-6: 3rem;
  --t-space-7: 4.5rem;
  --t-space-8: 6.5rem;
  --t-space-9: 9rem;
  --t-reading: 64ch;
  --t-page: 86rem;
  --t-radius: 30px;
  --t-line: rgba(18,36,60,.065);
  --t-shadow: 0 24px 70px rgba(20,35,55,.055);
}

/* Calm desktop shell, matching the public site's editorial restraint. */
.sidebar {
  width: 18.5rem !important;
  padding: 2rem 1.5rem 1.75rem !important;
  background: rgba(249,250,252,.94) !important;
}
.brand { padding: 0 .35rem !important; margin-bottom: 2.4rem !important; }
.brand__mark { width: 3.25rem !important; height: 3.25rem !important; }
.brand__copy { gap: .16rem !important; }
.brand__copy strong { font-size: 1rem !important; font-weight: 560 !important; letter-spacing: -.025em !important; }
.brand__copy span { font-size: .72rem !important; letter-spacing: .15em !important; }
.tenant-card {
  padding: 1.55rem 1.35rem !important;
  margin: 0 0 2.6rem !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
}
.tenant-card__label { margin-bottom: .85rem !important; }
.tenant-card strong { font-size: 1rem !important; line-height: 1.35 !important; }
.tenant-card > span:last-child { margin-top: .65rem !important; line-height: 1.55 !important; }
.nav-list { gap: .65rem !important; }
.nav-link {
  min-height: 3.65rem !important;
  padding: .95rem 1rem !important;
  border-radius: 17px !important;
  gap: .9rem !important;
  font-size: .91rem !important;
  line-height: 1.45 !important;
}
.nav-link[aria-current="page"] { box-shadow: 0 12px 30px rgba(15,31,52,.10) !important; }
.sidebar__footer { margin-top: auto !important; padding-top: 2rem !important; }
.boundary-note { padding: 1.25rem !important; line-height: 1.65 !important; }

.topbar {
  min-height: 6rem !important;
  padding: 0 clamp(1.75rem,3vw,3.75rem) !important;
  background: rgba(249,250,252,.9) !important;
}
.topbar__actions { gap: 1.15rem !important; }
.topbar__context { gap: .25rem !important; }
.topbar__context strong { font-size: .95rem !important; font-weight: 560 !important; }
.topbar__context span { font-size: .78rem !important; line-height: 1.4 !important; }
.topbar .icon-button,
.topbar .mobile-menu-button,
.account-button {
  width: 3.5rem !important;
  min-width: 3.5rem !important;
  height: 3.5rem !important;
  min-height: 3.5rem !important;
}

.main-content {
  width: min(100%, var(--t-page)) !important;
  margin-inline: auto !important;
  padding: clamp(5.5rem,7vw,8.5rem) clamp(2.5rem,5vw,6.25rem) clamp(10rem,14vw,15rem) !important;
}
.main-content > .context-banner {
  max-width: 66rem !important;
  margin-bottom: clamp(5.5rem,8vw,8rem) !important;
}
.context-banner {
  padding: 1.6rem 1.8rem !important;
  border-radius: 24px !important;
  font-size: .98rem !important;
  line-height: 1.75 !important;
}

.page-heading,
.workspace-header,
.workspace-hero {
  max-width: 76rem !important;
  margin-bottom: clamp(5.5rem,8vw,8.5rem) !important;
}
.page-heading__copy,
.page-heading > div,
.workspace-header > div,
.workspace-hero > div {
  gap: 1.65rem !important;
}
.page-heading h1,
.workspace-header h1,
.workspace-hero h1 {
  max-width: 15ch !important;
  font-size: clamp(3.25rem,5vw,5.4rem) !important;
  line-height: .99 !important;
  font-weight: 450 !important;
  letter-spacing: -.062em !important;
}
.page-heading p,
.page-heading__summary,
.workspace-header p,
.workspace-hero p {
  max-width: var(--t-reading) !important;
  font-size: clamp(1.08rem,1.45vw,1.28rem) !important;
  line-height: 1.78 !important;
  font-weight: 390 !important;
}
.eyebrow {
  font-size: .75rem !important;
  line-height: 1.35 !important;
  letter-spacing: .21em !important;
}

/* Every content surface receives real internal whitespace, including section-stack surfaces. */
.surface,
.section-card,
.identity-card,
.support-access-card,
.principle-card,
.public-card,
.feature-card,
.metric-card {
  overflow: visible !important;
  border-color: var(--t-line) !important;
  box-shadow: var(--t-shadow) !important;
}
.surface--padded,
.surface.section-stack,
.section-card,
.identity-card,
.support-access-card,
.principle-card,
.public-card {
  padding: clamp(3rem,4.8vw,5.25rem) !important;
  border-radius: var(--t-radius) !important;
}
.surface.section-stack { display: grid !important; gap: 2rem !important; }
.surface.section-stack > .eyebrow + h2 { margin-top: .25rem !important; }
.surface.section-stack > h2 { max-width: 20ch !important; }
.surface.section-stack > p { max-width: var(--t-reading) !important; line-height: 1.78 !important; }
.surface--padded > * + *,
.surface.section-stack > * + *,
.section-card > * + *,
.identity-card > * + *,
.support-access-card > * + *,
.principle-card > * + *,
.public-card > * + * { margin-top: 1.65rem !important; }
.surface--padded > .form-stack,
.surface.section-stack > .form-stack,
.section-card > .form-stack { margin-top: 3.5rem !important; }

/* Deliberate large breaks between peer sections. */
.dashboard-grid,
.two-column,
.three-column,
.feature-grid,
.feature-grid--three,
.component-grid,
.metric-grid,
.metrics-grid,
.operations-metrics,
.identity-summary-grid,
.authority-principles,
.support-grant-grid,
.metadata-grid {
  gap: clamp(2.5rem,4vw,4.5rem) !important;
}
.dashboard-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  align-items: start !important;
  margin-bottom: clamp(6rem,9vw,10rem) !important;
}
.dashboard-grid > * { min-width: 0 !important; width: 100% !important; }
section + section,
.dashboard-grid + section,
.metric-grid + section,
.metrics-grid + section,
.operations-metrics + section {
  margin-top: clamp(6rem,9vw,10rem) !important;
}

.surface h2,
.section-card h2,
.public-card h2 {
  max-width: 18ch !important;
  font-size: clamp(2rem,3.2vw,3.15rem) !important;
  line-height: 1.07 !important;
  font-weight: 470 !important;
  letter-spacing: -.05em !important;
}
.surface h3,
.section-card h3,
.public-card h3 {
  font-size: clamp(1.25rem,1.8vw,1.65rem) !important;
  line-height: 1.25 !important;
  font-weight: 520 !important;
}
.surface p,
.section-card p,
.public-card p,
.feature-grid p {
  line-height: 1.78 !important;
}

.form-stack {
  display: grid !important;
  gap: 2.35rem !important;
}
.field { gap: .85rem !important; }
label, legend {
  font-size: .94rem !important;
  line-height: 1.4 !important;
  font-weight: 550 !important;
}
.input,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
  min-height: 4.15rem !important;
  padding: 1.05rem 1.25rem !important;
  border-radius: 18px !important;
  font-size: 1rem !important;
  line-height: 1.5 !important;
}
.field__hint,
.field__error {
  margin-top: .25rem !important;
  font-size: .9rem !important;
  line-height: 1.7 !important;
}
.form-stack > .button,
.form-actions { margin-top: 1.25rem !important; }
.button {
  min-height: 3.65rem !important;
  padding: .95rem 1.6rem !important;
  font-size: .95rem !important;
  font-weight: 560 !important;
}

.feature-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  margin-top: 2.5rem !important;
}
.feature-grid > div {
  min-width: 0 !important;
  padding: 1.4rem 0 2rem !important;
}
.feature-grid > div strong { display: block !important; margin-bottom: .6rem !important; }
.feature-grid > div p { margin: 0 !important; max-width: 34ch !important; }

/* Search sheet: clear close affordance, calmer geometry and ordered footer. */
.modal {
  width: min(46rem,calc(100vw - 3rem)) !important;
  max-height: calc(100dvh - 3rem) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  box-shadow: 0 36px 100px rgba(15,31,52,.22) !important;
}
.modal__header { padding: 3rem 3rem 1.75rem !important; }
.modal__body { padding: 1.25rem 3rem 2.5rem !important; }
.modal__footer {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 0 3rem 3rem !important;
}
.modal__header h2 { max-width: 17ch !important; font-size: clamp(2rem,4vw,3rem) !important; }
.modal [data-modal-close].icon-button,
.sidebar-close {
  color: #0d1b2e !important;
  background: #fff !important;
  border: 1px solid rgba(15,31,52,.12) !important;
  opacity: 1 !important;
}
.shell-close-glyph,
.shell-close-glyph > span { opacity: 1 !important; visibility: visible !important; }

/* Account identity is a true circular mark on compact layouts; desktop retains useful identity copy. */
@media (min-width: 901px) {
  .account-button {
    width: auto !important;
    min-width: 14rem !important;
    height: 3.65rem !important;
    padding: .45rem .85rem .45rem .55rem !important;
    border-radius: 999px !important;
    overflow: visible !important;
  }
  .account-button .role-button__copy { display: grid !important; min-width: 0 !important; text-align: left !important; }
  .account-button > .ui-icon { display: block !important; margin-left: auto !important; }
}
.role-avatar { aspect-ratio: 1 !important; }

@media (max-width: 1180px) {
  .main-content { padding-inline: clamp(2.25rem,4vw,4rem) !important; }
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    max-width: 16ch !important;
    font-size: clamp(3rem,6vw,4.4rem) !important;
  }
  .dashboard-grid { gap: 2.25rem !important; }
  .surface--padded,.surface.section-stack,.section-card,.identity-card,.support-access-card,.principle-card,.public-card {
    padding: clamp(2.6rem,4vw,4rem) !important;
  }
}

@media (max-width: 900px) {
  .dashboard-grid,.two-column,.three-column { grid-template-columns: 1fr !important; }
  .feature-grid { grid-template-columns: 1fr !important; }
  .main-content { padding-top: 6.5rem !important; }
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    max-width: 14ch !important;
    font-size: clamp(2.8rem,7.4vw,4.1rem) !important;
  }
}

@media (max-width: 680px) {
  :root { --t-radius: 26px; }
  .topbar {
    min-height: 6.25rem !important;
    padding-inline: 1.25rem !important;
  }
  .topbar__context { display: none !important; }
  .topbar .icon-button,
  .topbar .mobile-menu-button,
  .account-button {
    width: 3.65rem !important;
    min-width: 3.65rem !important;
    height: 3.65rem !important;
    min-height: 3.65rem !important;
    border-radius: 50% !important;
  }
  .main-content {
    padding: 7rem 1.35rem calc(10rem + env(safe-area-inset-bottom)) !important;
  }
  .main-content > .context-banner { margin-bottom: 6.5rem !important; }
  .context-banner {
    padding: 1.6rem 1.45rem !important;
    font-size: .94rem !important;
    line-height: 1.8 !important;
  }
  .page-heading,.workspace-header,.workspace-hero { margin-bottom: 6.5rem !important; }
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    max-width: 12ch !important;
    font-size: clamp(2.65rem,11vw,3.65rem) !important;
    line-height: 1.01 !important;
  }
  .page-heading p,.page-heading__summary,.workspace-header p,.workspace-hero p {
    max-width: 32ch !important;
    font-size: 1.04rem !important;
    line-height: 1.82 !important;
  }
  .surface--padded,.surface.section-stack,.section-card,.identity-card,.support-access-card,.principle-card,.public-card {
    padding: 2.5rem 2rem !important;
    border-radius: 27px !important;
  }
  .surface h2,.section-card h2,.public-card h2 {
    max-width: 15ch !important;
    font-size: 2.15rem !important;
  }
  .form-stack { gap: 2.65rem !important; margin-top: 3.75rem !important; }
  .field { gap: .95rem !important; }
  .input,input:not([type="checkbox"]):not([type="radio"]),select,textarea {
    min-height: 4.35rem !important;
    border-radius: 19px !important;
  }
  .form-stack > .button,.form-actions .button { width: 100% !important; }
  .dashboard-grid { gap: 3rem !important; margin-bottom: 7rem !important; }
  section + section,.dashboard-grid + section,.metric-grid + section,.metrics-grid + section,.operations-metrics + section {
    margin-top: 7rem !important;
  }
  .modal {
    width: calc(100vw - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    border-radius: 30px !important;
  }
  .modal__header { padding: 2.25rem 1.75rem 1.25rem !important; }
  .modal__body { padding: 1rem 1.75rem 2rem !important; }
  .modal__footer {
    flex-direction: column-reverse !important;
    align-items: stretch !important;
    padding: 0 1.75rem 2.25rem !important;
  }
  .modal__footer .button { width: 100% !important; }
  .sidebar { width: min(88vw,22rem) !important; padding: 1.5rem 1.25rem !important; }
  .brand { margin-bottom: 2rem !important; }
  .sidebar-close { display: inline-grid !important; }
}

/* 27U — universal responsive integrity, typography restraint and tablet drawer lifecycle.
   Presentation-safe: prevents overflow/truncation and gives phones, tablets and desktops
   distinct, coherent scales without altering application semantics. */

/* Every layout participant must be allowed to shrink inside grid/flex containers. */
.app-shell,
.workspace,
.main-content,
.main-content > *,
.page-heading,
.workspace-header,
.workspace-hero,
.surface,
.surface > *,
.section-card,
.section-card > *,
.public-card,
.public-card > *,
.feature-card,
.feature-card > *,
.metric-card,
.metric-card > *,
.dashboard-grid > *,
.two-column > *,
.three-column > *,
.form-stack,
.field,
.field > *,
.table-wrap,
.responsive-table,
.modal,
.modal > *,
.drawer,
.drawer > * {
  min-width: 0 !important;
  max-width: 100%;
  box-sizing: border-box;
}

/* Never let prose, identifiers, badges or controls escape their surface. */
h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,small,strong,span,a,button,
.eyebrow,.page-heading__summary,.context-banner,.boundary-note,.nav-link,
.metric-card,.metadata-grid,.status-chip,.badge,.pill,.button {
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

img,svg,canvas,video { max-width: 100%; height: auto; }
pre,code { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; }

/* Cards grow with their content. No visual crop, accidental fixed height or hidden footer. */
.surface,
.surface--padded,
.surface.section-stack,
.section-card,
.identity-card,
.support-access-card,
.principle-card,
.public-card,
.feature-card,
.metric-card {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

/* One calm, lighter typographic hierarchy. */
.page-heading h1,.workspace-header h1,.workspace-hero h1 {
  font-weight: 420 !important;
}
.surface h2,.section-card h2,.public-card h2,.feature-card h2,
.surface h3,.section-card h3,.public-card h3,.feature-card h3 {
  font-weight: 500 !important;
  letter-spacing: -.035em !important;
  line-height: 1.12 !important;
}
.surface p,.section-card p,.public-card p,.feature-card p,.metric-card p,
.field-help,.help-text,.description {
  line-height: 1.72 !important;
}

/* Universal internal rhythm: heading, copy, controls and actions must never collide. */
.surface--padded > * + *,
.surface.section-stack > * + *,
.section-card > * + *,
.identity-card > * + *,
.support-access-card > * + *,
.principle-card > * + *,
.public-card > * + *,
.feature-card > * + *,
.metric-card > * + * { margin-top: clamp(1.25rem,2vw,2rem) !important; }

.surface h2 + p,.section-card h2 + p,.public-card h2 + p,.feature-card h2 + p,
.surface h3 + p,.section-card h3 + p,.public-card h3 + p,.feature-card h3 + p {
  margin-top: clamp(1rem,1.8vw,1.5rem) !important;
}
.form-actions,.card-actions,.button-row,.actions {
  margin-top: clamp(2rem,3vw,3.25rem) !important;
  gap: 1rem !important;
  flex-wrap: wrap !important;
}

/* Desktop: editorial but controlled; avoid billboard titles inside an application. */
@media (min-width: 1181px) and (pointer: fine) {
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    font-size: clamp(3rem,4.1vw,4.75rem) !important;
    max-width: 17ch !important;
    line-height: 1.02 !important;
  }
  .surface h2,.section-card h2,.public-card h2 { font-size: clamp(1.8rem,2.35vw,2.65rem) !important; }
  .surface h3,.section-card h3,.public-card h3,.feature-card h3 { font-size: clamp(1.25rem,1.55vw,1.6rem) !important; }
}

/* Tablets, including iPad landscape: overlay navigation, moderate type, generous margins. */
@media (max-width: 1180px), (pointer: coarse) and (max-width: 1400px) {
  :root { --sidebar-width: 0rem; }
  .workspace { margin-left: 0 !important; }
  .sidebar {
    width: min(82vw,23rem) !important;
    transform: translateX(-105%) !important;
    transition: transform 240ms cubic-bezier(.2,.8,.2,1) !important;
    box-shadow: 0 24px 70px rgba(15,31,52,.18) !important;
    visibility: hidden;
  }
  .sidebar[data-open="true"] { transform: translateX(0) !important; visibility: visible; }
  .sidebar-scrim {
    position: fixed !important;
    z-index: 55 !important;
    inset: 0 !important;
    display: block !important;
    background: rgba(18,30,48,.34) !important;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transition: opacity 180ms ease !important;
  }
  .sidebar-scrim[data-open="true"] { opacity: 1; pointer-events: auto; visibility: visible; }
  .mobile-menu-button { display: inline-grid !important; }
  .sidebar-close { display: inline-grid !important; }
  .account-button {
    width: 3.55rem !important;
    min-width: 3.55rem !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }
  .account-button .role-button__copy,
  .account-button > .ui-icon { display: none !important; }
  .main-content {
    width: 100% !important;
    padding-inline: clamp(2rem,5vw,4.5rem) !important;
  }
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    font-size: clamp(2.8rem,5.6vw,4.1rem) !important;
    max-width: 16ch !important;
    line-height: 1.04 !important;
  }
  .page-heading p,.page-heading__summary,.workspace-header p,.workspace-hero p {
    font-size: clamp(1.02rem,1.7vw,1.2rem) !important;
  }
  .surface h2,.section-card h2,.public-card h2 { font-size: clamp(1.75rem,3.1vw,2.35rem) !important; }
  .surface h3,.section-card h3,.public-card h3,.feature-card h3 { font-size: clamp(1.2rem,2.1vw,1.5rem) !important; }
  .dashboard-grid,.two-column,.three-column,.feature-grid,.component-grid {
    gap: clamp(2rem,4vw,3.5rem) !important;
  }
}

/* Phones: smaller, lighter titles and protected card gutters. */
@media (max-width: 680px) {
  .main-content { padding-inline: 1.25rem !important; }
  .page-heading h1,.workspace-header h1,.workspace-hero h1 {
    font-size: clamp(2.15rem,9.2vw,3rem) !important;
    max-width: 15ch !important;
    font-weight: 430 !important;
    letter-spacing: -.05em !important;
    line-height: 1.06 !important;
  }
  .page-heading p,.page-heading__summary,.workspace-header p,.workspace-hero p {
    font-size: 1rem !important;
    line-height: 1.72 !important;
    max-width: 34ch !important;
  }
  .surface--padded,.surface.section-stack,.section-card,.identity-card,
  .support-access-card,.principle-card,.public-card,.feature-card,.metric-card {
    padding: 2.25rem 1.5rem !important;
    border-radius: 24px !important;
  }
  .surface h2,.section-card h2,.public-card h2 { font-size: clamp(1.65rem,7vw,2.05rem) !important; max-width: 18ch !important; }
  .surface h3,.section-card h3,.public-card h3,.feature-card h3 { font-size: clamp(1.18rem,5.4vw,1.45rem) !important; max-width: 22ch !important; }
  .eyebrow { font-size: .68rem !important; letter-spacing: .17em !important; }
  .button { max-width: 100%; white-space: normal !important; text-align: center; }
  .field,.form-stack { width: 100%; }
  input,select,textarea { width: 100% !important; max-width: 100% !important; }
  .table-wrap,.responsive-table { margin-inline: 0 !important; max-width: 100% !important; }
}

/* 27V — universal surface inset integrity.
   Plain .surface containers historically relied on page-specific markup for padding,
   leaving section headings and empty-state/table headers nearly flush with card edges.
   Give every unpadded surface a guaranteed responsive content inset on every viewport. */
.surface:not(.surface--padded):not(.section-stack) {
  padding: clamp(2rem, 3.2vw, 3.5rem) !important;
}

.surface:not(.surface--padded):not(.section-stack) > .table-wrap,
.surface:not(.surface--padded):not(.section-stack) > .responsive-table,
.surface:not(.surface--padded):not(.section-stack) > table {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
}

.surface:not(.surface--padded):not(.section-stack) > .section-heading,
.surface:not(.surface--padded):not(.section-stack) > .section-header {
  margin: 0 0 clamp(1.75rem, 3vw, 2.75rem) !important;
  padding: 0 !important;
}
.surface:not(.surface--padded):not(.section-stack) > h2,
.surface:not(.surface--padded):not(.section-stack) > h3,
.surface:not(.surface--padded):not(.section-stack) > .eyebrow {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 680px) {
  .surface:not(.surface--padded):not(.section-stack) {
    padding: 2.25rem 1.5rem !important;
  }
  .surface:not(.surface--padded):not(.section-stack) > .section-heading,
  .surface:not(.surface--padded):not(.section-stack) > .section-header {
    margin-bottom: 2rem !important;
  }
}

@media (max-width: 380px) {
  .surface:not(.surface--padded):not(.section-stack) {
    padding-inline: 1.25rem !important;
  }
}

/* 27W — sidebar viewport economy and navigation-scroll integrity.
   Keeps branding/context and footer concise so role navigation owns the available height. */
.sidebar {
  display: flex !important;
  flex-direction: column !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  padding-block: clamp(.9rem, 1.8vh, 1.35rem) !important;
}

.sidebar .brand {
  flex: 0 0 auto !important;
  min-height: 3.25rem !important;
  margin: 0 0 clamp(.7rem, 1.4vh, 1rem) !important;
  padding-inline: .25rem !important;
}
.sidebar .brand__mark {
  width: 2.65rem !important;
  height: 2.65rem !important;
  flex: 0 0 2.65rem !important;
}
.sidebar .brand__copy strong { font-size: .92rem !important; }
.sidebar .brand__copy span { font-size: .64rem !important; line-height: 1.2 !important; }

.sidebar .tenant-card {
  flex: 0 0 auto !important;
  margin: 0 0 clamp(.75rem, 1.6vh, 1.15rem) !important;
  padding: .9rem 1rem !important;
  border-radius: 18px !important;
}
.sidebar .tenant-card__label {
  margin-bottom: .45rem !important;
  font-size: .66rem !important;
  line-height: 1.2 !important;
}
.sidebar .tenant-card strong {
  font-size: .91rem !important;
  line-height: 1.3 !important;
}
.sidebar .tenant-card > span:last-child {
  margin-top: .35rem !important;
  font-size: .72rem !important;
  line-height: 1.35 !important;
}

.sidebar .primary-nav {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-gutter: stable !important;
  padding: .25rem .15rem .75rem 0 !important;
  margin: 0 !important;
}
.sidebar .nav-list { gap: .3rem !important; }
.sidebar .nav-link {
  min-height: 3.05rem !important;
  padding: .7rem .82rem !important;
  border-radius: 14px !important;
  gap: .75rem !important;
  font-size: .84rem !important;
  line-height: 1.35 !important;
}
.sidebar .nav-link .ui-icon {
  width: 1.15rem !important;
  height: 1.15rem !important;
  flex: 0 0 1.15rem !important;
}
.sidebar .nav-link__badge {
  font-size: .62rem !important;
  padding: .25rem .45rem !important;
}

.sidebar .sidebar__footer {
  flex: 0 0 auto !important;
  margin-top: .65rem !important;
  padding-top: .65rem !important;
  gap: .55rem !important;
  border-top: 1px solid rgba(18,36,60,.055) !important;
}
.sidebar .boundary-note {
  display: grid !important;
  grid-template-columns: 1.15rem minmax(0,1fr) !important;
  gap: .65rem !important;
  padding: .72rem .8rem !important;
  border-radius: 14px !important;
}
.sidebar .boundary-note .ui-icon {
  width: 1.05rem !important;
  height: 1.05rem !important;
  margin-top: .08rem !important;
}
.sidebar .boundary-note p {
  margin: 0 !important;
  font-size: .7rem !important;
  line-height: 1.42 !important;
}
.sidebar .sidebar-version {
  padding-inline: .25rem !important;
  font-size: .64rem !important;
  line-height: 1.2 !important;
}

/* Touch drawers need even more of the viewport reserved for navigation. */
@media (max-width: 1180px), (pointer: coarse) and (max-width: 1400px) {
  .sidebar {
    padding: max(.8rem, env(safe-area-inset-top)) 1rem max(.75rem, env(safe-area-inset-bottom)) !important;
  }
  .sidebar .brand { margin-bottom: .7rem !important; }
  .sidebar .tenant-card { margin-bottom: .75rem !important; }
  .sidebar .nav-link {
    min-height: 3.15rem !important;
    padding: .72rem .8rem !important;
  }
  .sidebar .sidebar__footer { margin-top: .5rem !important; padding-top: .5rem !important; }
}

/* Short phones/tablets: retain the essential footer message without sacrificing the menu. */
@media (max-height: 760px) {
  .sidebar .tenant-card { padding: .72rem .85rem !important; }
  .sidebar .tenant-card > span:last-child { display: none !important; }
  .sidebar .boundary-note { padding: .58rem .7rem !important; }
  .sidebar .boundary-note p {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }
  .sidebar .sidebar-version { display: none !important; }
}

@media (max-height: 620px) {
  .sidebar .tenant-card { display: none !important; }
  .sidebar .boundary-note { display: none !important; }
  .sidebar .sidebar__footer { border-top: 0 !important; padding-top: 0 !important; margin-top: .25rem !important; }
}

/* 27X — compact-but-present sidebar chrome.
   Header/context and footer remain visible on every viewport; only their footprint is reduced. */
.sidebar .tenant-card,
.sidebar .boundary-note,
.sidebar .sidebar-version {
  display: block !important;
}
.sidebar .brand {
  min-height: 2.8rem !important;
  margin-bottom: .55rem !important;
}
.sidebar .brand__mark {
  width: 2.35rem !important;
  height: 2.35rem !important;
  flex-basis: 2.35rem !important;
}
.sidebar .brand__copy strong {
  font-size: .86rem !important;
  line-height: 1.12 !important;
}
.sidebar .brand__copy span {
  font-size: .58rem !important;
  line-height: 1.15 !important;
}
.sidebar .tenant-card {
  margin-bottom: .55rem !important;
  padding: .62rem .75rem !important;
  border-radius: 14px !important;
}
.sidebar .tenant-card__label {
  margin-bottom: .25rem !important;
  font-size: .58rem !important;
}
.sidebar .tenant-card strong {
  font-size: .82rem !important;
  line-height: 1.22 !important;
}
.sidebar .tenant-card > span:last-child {
  display: block !important;
  margin-top: .2rem !important;
  font-size: .64rem !important;
  line-height: 1.25 !important;
}
.sidebar .sidebar__footer {
  display: grid !important;
  flex: 0 0 auto !important;
  margin-top: .4rem !important;
  padding-top: .4rem !important;
  gap: .3rem !important;
}
.sidebar .boundary-note {
  display: grid !important;
  grid-template-columns: .95rem minmax(0,1fr) !important;
  gap: .45rem !important;
  padding: .5rem .6rem !important;
  border-radius: 12px !important;
}
.sidebar .boundary-note .ui-icon {
  width: .9rem !important;
  height: .9rem !important;
}
.sidebar .boundary-note p {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  font-size: .62rem !important;
  line-height: 1.3 !important;
}
.sidebar .sidebar-version {
  display: block !important;
  font-size: .56rem !important;
  line-height: 1.1 !important;
  padding-inline: .15rem !important;
}

@media (max-height: 760px) {
  .sidebar .tenant-card,
  .sidebar .boundary-note,
  .sidebar .sidebar-version {
    display: block !important;
  }
  .sidebar .tenant-card > span:last-child {
    display: none !important;
  }
  .sidebar .boundary-note p {
    -webkit-line-clamp: 1 !important;
  }
}

@media (max-height: 620px) {
  .sidebar .tenant-card,
  .sidebar .boundary-note,
  .sidebar .sidebar-version {
    display: block !important;
  }
  .sidebar .tenant-card {
    padding: .45rem .6rem !important;
  }
  .sidebar .tenant-card > span:last-child,
  .sidebar .boundary-note p {
    display: none !important;
  }
  .sidebar .boundary-note {
    grid-template-columns: 1fr !important;
    justify-items: start !important;
    padding: .35rem .5rem !important;
  }
  .sidebar .sidebar__footer {
    border-top: 1px solid rgba(18,36,60,.055) !important;
    padding-top: .3rem !important;
    margin-top: .3rem !important;
  }
}


/* 27Y — permanent cryptographic assurance marker in the compact drawer footer. */
.sidebar .sidebar-version { display: none !important; }
.sidebar .sidebar-security-mark {
  display: inline-flex !important;
  align-items: center !important;
  gap: .5rem !important;
  min-width: 0 !important;
  padding: .22rem .18rem !important;
  color: var(--text-muted, #718096) !important;
  font-size: .68rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: .01em !important;
  white-space: nowrap !important;
}
.sidebar .sidebar-security-mark__icon {
  width: .9rem !important;
  height: .9rem !important;
  flex: 0 0 .9rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.65 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
@media (min-width: 768px) {
  .sidebar .sidebar-security-mark { font-size: .72rem !important; }
}
@media (max-height: 620px) {
  .sidebar .sidebar-security-mark {
    display: inline-flex !important;
    padding-block: .12rem !important;
    font-size: .62rem !important;
  }
}

/* 27Z — compact translucent navigation drawer.
   Narrows the mobile/tablet overlay, introduces a restrained liquid-glass surface,
   and preserves high legibility and a generous scrolling menu region. */
@media (max-width: 1180px), (pointer: coarse) and (max-width: 1400px) {
  .sidebar {
    top: .65rem !important;
    bottom: .65rem !important;
    left: .65rem !important;
    height: auto !important;
    width: min(78vw, 20rem) !important;
    max-width: calc(100vw - 4.5rem) !important;
    padding: .9rem .8rem .75rem !important;
    border: 1px solid rgba(255,255,255,.72) !important;
    border-radius: 28px !important;
    background: linear-gradient(155deg, rgba(250,252,255,.88), rgba(241,246,252,.76)) !important;
    box-shadow:
      0 28px 80px rgba(16,31,50,.22),
      0 2px 8px rgba(16,31,50,.06),
      inset 0 1px 0 rgba(255,255,255,.92) !important;
    backdrop-filter: blur(38px) saturate(165%) !important;
    -webkit-backdrop-filter: blur(38px) saturate(165%) !important;
    overflow: hidden !important;
  }

  .sidebar-scrim {
    background: rgba(15,28,45,.27) !important;
    backdrop-filter: blur(8px) saturate(105%) !important;
    -webkit-backdrop-filter: blur(8px) saturate(105%) !important;
  }

  .sidebar .brand {
    min-height: 2.65rem !important;
    padding: .12rem .15rem .12rem .25rem !important;
    margin-bottom: .42rem !important;
  }

  .sidebar .brand__mark {
    width: 2.15rem !important;
    height: 2.15rem !important;
    flex-basis: 2.15rem !important;
  }

  .sidebar .brand__copy strong { font-size: .8rem !important; }
  .sidebar .brand__copy span { font-size: .53rem !important; }

  .sidebar-close {
    width: 2.7rem !important;
    height: 2.7rem !important;
    min-width: 2.7rem !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.68) !important;
    border: 1px solid rgba(18,36,60,.08) !important;
    box-shadow: 0 8px 22px rgba(16,31,50,.08) !important;
  }

  .sidebar .tenant-card {
    margin-bottom: .45rem !important;
    padding: .55rem .68rem !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.50) !important;
    border-color: rgba(18,36,60,.07) !important;
  }

  .sidebar .primary-nav {
    padding: .2rem .05rem .3rem !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(65,85,110,.22) transparent !important;
  }

  .sidebar .nav-list { gap: .16rem !important; }
  .sidebar .nav-link {
    min-height: 2.72rem !important;
    padding: .58rem .68rem !important;
    border-radius: 14px !important;
    font-size: .8rem !important;
    background: transparent !important;
  }
  .sidebar .nav-link:hover { background: rgba(255,255,255,.54) !important; }
  .sidebar .nav-link[aria-current="page"] {
    background: rgba(21,37,58,.96) !important;
    box-shadow: 0 10px 26px rgba(15,29,48,.15) !important;
  }
  .sidebar .nav-link .ui-icon {
    width: 1.05rem !important;
    height: 1.05rem !important;
  }
  .sidebar .nav-link__badge {
    padding: .22rem .42rem !important;
    font-size: .55rem !important;
  }

  .sidebar .sidebar__footer {
    margin-top: .28rem !important;
    padding-top: .35rem !important;
    gap: .24rem !important;
    border-top: 1px solid rgba(18,36,60,.055) !important;
  }
  .sidebar .boundary-note {
    padding: .42rem .52rem !important;
    border-radius: 12px !important;
    background: rgba(231,241,255,.60) !important;
  }
  .sidebar .boundary-note p {
    font-size: .58rem !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 1 !important;
  }
  .sidebar .sidebar-security-mark {
    padding: .14rem .14rem .06rem !important;
    font-size: .64rem !important;
  }
}

@media (max-width: 430px) {
  .sidebar {
    left: .5rem !important;
    top: .5rem !important;
    bottom: .5rem !important;
    width: min(81vw, 19rem) !important;
    max-width: calc(100vw - 3.75rem) !important;
    border-radius: 24px !important;
    padding: .75rem .65rem .65rem !important;
  }
}

/* 27AA — FINAL JONY IVE / STEVE-LEVEL VISUAL QA PASS
   Application-wide presentation integrity only. No workflow, route, permission,
   controller, database or security behaviour is changed. */

:root {
  --aa-page-gutter: clamp(1.25rem, 3.6vw, 4.5rem);
  --aa-section-gap: clamp(4rem, 7vw, 8rem);
  --aa-card-gap: clamp(1.5rem, 2.8vw, 3rem);
  --aa-card-pad: clamp(1.75rem, 3.5vw, 4rem);
  --aa-reading: 68ch;
  --aa-radius-lg: clamp(1.5rem, 2.5vw, 2.25rem);
  --aa-radius-md: 1.25rem;
  --aa-border: rgba(15, 36, 62, .075);
  --aa-shadow: 0 24px 64px rgba(15, 34, 58, .055), 0 2px 8px rgba(15, 34, 58, .025);
}

html { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", Inter, "Segoe UI", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: -.008em;
}

/* Global content-integrity guardrail. */
*, *::before, *::after { box-sizing: border-box; }
.app-shell *, .modal * { min-width: 0; }
.main-content, .main-content > *, .surface, .section-card, .metric-card,
.page-heading, .section-heading, .section-header, .field, .form-grid,
.grid, .stack, .settings-row, .alert, .table-wrap {
  max-width: 100%;
}
.main-content p, .main-content li, .main-content dd, .main-content td,
.main-content th, .main-content h1, .main-content h2, .main-content h3,
.main-content h4, .main-content strong, .main-content span,
.sidebar a, .sidebar span, .modal * {
  overflow-wrap: anywhere;
  word-break: normal;
}

/* One calm type system. */
h1, h2, h3, h4, h5, h6,
.page-heading h1, .workspace-hero h1, .section-heading h2,
.section-header h2, .section-card h2, .surface h2, .surface h3 {
  font-weight: 500 !important;
  letter-spacing: -.04em !important;
  text-wrap: balance;
}
.page-heading h1, .workspace-hero h1 {
  font-size: clamp(2.35rem, 5.4vw, 5rem) !important;
  line-height: .98 !important;
  max-width: 17ch;
}
.section-heading h2, .section-header h2, .surface h2, .section-card h2 {
  font-size: clamp(1.75rem, 3.1vw, 3rem) !important;
  line-height: 1.04 !important;
}
.surface h3, .section-card h3, .metric-card h3 {
  font-size: clamp(1.15rem, 1.65vw, 1.45rem) !important;
  line-height: 1.22 !important;
  font-weight: 550 !important;
}
p, li, dd, .page-heading__summary, .section-header__copy p,
.metric-card__detail, .field__hint, .alert__copy, .settings-row__copy {
  line-height: 1.7 !important;
}
.page-heading__summary, .workspace-hero > p, .section-header__copy > p {
  max-width: var(--aa-reading) !important;
  font-size: clamp(1.05rem, 1.65vw, 1.35rem) !important;
  font-weight: 400 !important;
  color: #56657a !important;
}
.eyebrow {
  font-size: clamp(.7rem, .85vw, .82rem) !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  letter-spacing: .22em !important;
}

/* Editorial page rhythm. */
.main-content {
  width: min(100%, 92rem) !important;
  margin-inline: auto !important;
  padding: clamp(4rem, 8vw, 8rem) var(--aa-page-gutter) clamp(7rem, 12vw, 12rem) !important;
}
.main-content > .context-banner { margin-bottom: clamp(4rem, 7vw, 7rem) !important; }
.page-stack, .section-stack { gap: var(--aa-section-gap) !important; }
.page-heading, .workspace-hero { gap: clamp(1.75rem, 3vw, 3rem) !important; }
.page-heading__copy { gap: clamp(1.3rem, 2.2vw, 2.1rem) !important; }
.page-heading__actions { gap: 1rem !important; margin-top: .75rem !important; }
.section-heading, .section-header { margin-bottom: clamp(1.75rem, 3vw, 3rem) !important; }
.section-heading { gap: 1rem !important; }
.grid, .metric-grid, .metrics-grid { gap: var(--aa-card-gap) !important; align-items: stretch; }
.stack, .form-stack, .settings-list { gap: clamp(1.5rem, 2.5vw, 2.5rem) !important; }

/* Surfaces: spacious, quiet, never clipped. */
.surface, .section-card, .metric-card, .feature-card, .state-card {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  border: 1px solid var(--aa-border) !important;
  border-radius: var(--aa-radius-lg) !important;
  box-shadow: var(--aa-shadow) !important;
}
.surface:not(.surface--navy), .section-card, .feature-card, .state-card {
  background: rgba(255, 255, 255, .94) !important;
}
.surface, .surface--padded, .section-card, .feature-card, .state-card {
  padding: var(--aa-card-pad) !important;
}
.metric-card {
  padding: clamp(1.5rem, 2.7vw, 2.75rem) !important;
  gap: clamp(.9rem, 1.6vw, 1.4rem) !important;
}
.surface > :first-child, .section-card > :first-child, .metric-card > :first-child { margin-top: 0 !important; }
.surface > :last-child, .section-card > :last-child, .metric-card > :last-child { margin-bottom: 0 !important; }
.surface > * + *, .section-card > * + *, .feature-card > * + * { margin-top: clamp(1.15rem, 2vw, 2rem); }
.metric-number, .metric-card__value {
  font-weight: 450 !important;
  letter-spacing: -.055em !important;
  line-height: 1 !important;
}

/* Forms: consistent and generous. */
.form-grid { gap: clamp(1.5rem, 2.8vw, 2.75rem) !important; }
.field { gap: .75rem !important; }
.field label {
  font-size: .98rem !important;
  line-height: 1.35 !important;
  font-weight: 550 !important;
  letter-spacing: -.015em !important;
}
.input, .select, textarea, input:not([type="checkbox"]):not([type="radio"]), select {
  width: 100% !important;
  min-height: 3.75rem !important;
  padding: 1rem 1.15rem !important;
  border-radius: 1.15rem !important;
  border-color: rgba(21, 42, 68, .13) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  background: rgba(255,255,255,.9) !important;
}
textarea { min-height: 10rem !important; resize: vertical; }
.field__hint { margin-top: .15rem !important; font-size: .9rem !important; color: #78869a !important; }
.form-actions { gap: 1rem !important; margin-top: clamp(1.5rem, 3vw, 3rem) !important; }
.button {
  min-height: 3.2rem !important;
  padding: .85rem 1.35rem !important;
  border-radius: 999px !important;
  font-size: .96rem !important;
  line-height: 1.2 !important;
  font-weight: 550 !important;
  letter-spacing: -.012em !important;
  white-space: normal !important;
  text-align: center;
}
.button--primary { box-shadow: 0 10px 28px rgba(29, 105, 220, .16) !important; }

/* Tables and settings: no edge collisions. */
.table-wrap { overflow-x: auto !important; border-radius: 1.1rem; }
table { width: 100% !important; border-collapse: separate !important; border-spacing: 0 !important; }
th, td { padding: 1.15rem 1.25rem !important; line-height: 1.55 !important; vertical-align: top !important; }
th { font-size: .78rem !important; font-weight: 600 !important; letter-spacing: .08em !important; }
.settings-row {
  padding: clamp(1.35rem, 2.3vw, 2.25rem) 0 !important;
  gap: clamp(1.25rem, 2vw, 2rem) !important;
  align-items: flex-start !important;
}
.alert, .context-banner, .boundary-note {
  padding: clamp(1.25rem, 2.2vw, 2rem) !important;
  gap: 1rem !important;
  border-radius: 1.35rem !important;
}
.context-banner span { max-width: 72ch; line-height: 1.65 !important; }

/* Shell: optical alignment and reduced visual weight. */
.topbar {
  min-height: clamp(5.5rem, 8vw, 7rem) !important;
  padding-inline: clamp(1.25rem, 3vw, 3rem) !important;
  border-bottom-color: rgba(15,36,62,.06) !important;
  background: rgba(248,250,253,.78) !important;
  backdrop-filter: blur(28px) saturate(155%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(155%) !important;
}
.topbar__actions { gap: clamp(.7rem, 1.3vw, 1.2rem) !important; }
.icon-button {
  width: 3.35rem !important;
  height: 3.35rem !important;
  min-width: 3.35rem !important;
  padding: 0 !important;
  border-radius: 50% !important;
}
.ui-icon { width: 1.25rem !important; height: 1.25rem !important; flex: 0 0 auto !important; }
.role-avatar {
  width: 2.55rem !important;
  height: 2.55rem !important;
  min-width: 2.55rem !important;
  border-radius: 50% !important;
}
.role-avatar span { font-size: .82rem !important; font-weight: 600 !important; letter-spacing: .08em !important; }
.account-button { padding: .55rem .8rem .55rem .6rem !important; gap: .75rem !important; }
.account-popover { border-radius: 1.5rem !important; padding: 1rem !important; }

/* Final drawer: narrower, calmer glass, compact persistent chrome. */
@media (max-width: 1180px), (pointer: coarse) and (max-width: 1400px) {
  .sidebar {
    width: min(74vw, 18.5rem) !important;
    max-width: calc(100vw - 4.75rem) !important;
    top: .75rem !important;
    bottom: .75rem !important;
    left: .75rem !important;
    padding: .72rem .65rem .62rem !important;
    border-radius: 1.8rem !important;
    background: linear-gradient(155deg, rgba(252,253,255,.83), rgba(239,245,252,.70)) !important;
    border: 1px solid rgba(255,255,255,.82) !important;
    box-shadow: 0 30px 90px rgba(10,25,44,.24), inset 0 1px 0 rgba(255,255,255,.9) !important;
    backdrop-filter: blur(42px) saturate(175%) !important;
    -webkit-backdrop-filter: blur(42px) saturate(175%) !important;
  }
  .sidebar-scrim {
    background: rgba(20,31,46,.29) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
  }
  .sidebar .brand { min-height: 2.45rem !important; margin-bottom: .3rem !important; padding: .08rem .1rem .08rem .18rem !important; }
  .sidebar .brand__mark { width: 2rem !important; height: 2rem !important; flex-basis: 2rem !important; }
  .sidebar .brand__copy strong { font-size: .78rem !important; font-weight: 600 !important; }
  .sidebar .brand__copy span { font-size: .5rem !important; letter-spacing: .16em !important; }
  .sidebar-close { width: 2.45rem !important; height: 2.45rem !important; min-width: 2.45rem !important; }
  .sidebar .tenant-card { margin-bottom: .3rem !important; padding: .48rem .58rem !important; }
  .sidebar .tenant-card__label { font-size: .53rem !important; }
  .sidebar .tenant-card strong { font-size: .77rem !important; }
  .sidebar .tenant-card > span:last-child { font-size: .58rem !important; }
  .sidebar .primary-nav { padding: .12rem .02rem .18rem !important; }
  .sidebar .nav-list { gap: .08rem !important; }
  .sidebar .nav-link {
    min-height: 2.52rem !important;
    padding: .48rem .58rem !important;
    border-radius: .95rem !important;
    font-size: .76rem !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
  }
  .sidebar .nav-link .ui-icon { width: 1rem !important; height: 1rem !important; }
  .sidebar .nav-link__badge { font-size: .5rem !important; padding: .18rem .34rem !important; }
  .sidebar .sidebar__footer { margin-top: .2rem !important; padding-top: .25rem !important; gap: .16rem !important; }
  .sidebar .boundary-note { padding: .34rem .44rem !important; border-radius: .8rem !important; }
  .sidebar .boundary-note p { font-size: .54rem !important; line-height: 1.22 !important; }
  .sidebar .sidebar-security-mark { font-size: .61rem !important; padding: .1rem .12rem .02rem !important; gap: .4rem !important; }
}

/* Search and dialog composition. */
.modal {
  width: min(92vw, 42rem) !important;
  max-height: min(88dvh, 48rem) !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.84) !important;
  border-radius: 2rem !important;
  background: rgba(252,253,255,.93) !important;
  box-shadow: 0 35px 100px rgba(10,25,45,.24) !important;
  backdrop-filter: blur(38px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(38px) saturate(160%) !important;
}
.modal__header, .modal__body, .modal__footer { padding-inline: clamp(1.5rem, 4vw, 3rem) !important; }
.modal__header { padding-top: clamp(1.5rem, 4vw, 3rem) !important; padding-bottom: 1.5rem !important; gap: 1.5rem !important; }
.modal__body { padding-block: clamp(1.25rem, 3vw, 2.5rem) !important; }
.modal__footer { padding-top: 1.25rem !important; padding-bottom: clamp(1.5rem, 4vw, 3rem) !important; gap: 1rem !important; }
.modal h2 { font-size: clamp(1.75rem, 4vw, 2.8rem) !important; font-weight: 500 !important; line-height: 1.04 !important; }

/* Device-specific scale, not one-size-fits-all. */
@media (max-width: 600px) {
  :root { --aa-page-gutter: 1.35rem; --aa-section-gap: 4.75rem; --aa-card-pad: 1.65rem; --aa-card-gap: 1.35rem; }
  .main-content { padding-top: 4.5rem !important; padding-bottom: 8rem !important; }
  .main-content > .context-banner { margin-bottom: 5rem !important; }
  .page-heading h1, .workspace-hero h1 { font-size: clamp(2.3rem, 11vw, 3.45rem) !important; line-height: 1.01 !important; max-width: 13ch; }
  .section-heading h2, .section-header h2, .surface h2, .section-card h2 { font-size: clamp(1.65rem, 8vw, 2.25rem) !important; }
  .page-heading__summary, .workspace-hero > p, .section-header__copy > p { font-size: 1.05rem !important; line-height: 1.68 !important; }
  .surface, .surface--padded, .section-card, .feature-card, .state-card { border-radius: 1.7rem !important; }
  .grid--2, .grid--3, .form-grid { grid-template-columns: minmax(0,1fr) !important; }
  .button { width: 100%; justify-content: center; }
  .topbar { min-height: 6.25rem !important; padding-inline: 1.25rem !important; }
  .topbar__context { display: none !important; }
  .icon-button { width: 3.2rem !important; height: 3.2rem !important; min-width: 3.2rem !important; }
  .account-button { width: 3.2rem !important; height: 3.2rem !important; min-width: 3.2rem !important; padding: .32rem !important; }
  .account-button .role-button__copy, .account-button > .ui-icon { display: none !important; }
  .account-button .role-avatar { width: 2.5rem !important; height: 2.5rem !important; }
  .modal__footer { flex-direction: column-reverse !important; }
  .modal__footer .button { width: 100% !important; }
}

@media (min-width: 601px) and (max-width: 1180px) {
  :root { --aa-page-gutter: clamp(2.5rem, 5vw, 4rem); --aa-card-pad: clamp(2.25rem, 4vw, 3.5rem); }
  .page-heading h1, .workspace-hero h1 { font-size: clamp(3.4rem, 7vw, 5rem) !important; }
  .main-content { padding-top: clamp(5rem, 8vw, 7rem) !important; }
}

@media (min-width: 1181px) and (pointer: fine) {
  .main-content { padding-left: clamp(4rem, 6vw, 7rem) !important; padding-right: clamp(4rem, 6vw, 7rem) !important; }
  .sidebar { padding-inline: 1.35rem !important; }
  .nav-link { border-radius: 1rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Stage 42 / 27AB — Apple-style inline live search and calm dismiss controls. */
.sidebar-close:focus:not(:focus-visible),
.sidebar-close:active,
.live-search__cancel:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
.sidebar-close:focus-visible {
  outline: 3px solid rgba(46, 125, 229, .55) !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

.live-search {
  position: fixed;
  z-index: 180;
  top: calc(env(safe-area-inset-top, 0px) + 5.75rem);
  left: clamp(1rem, 3vw, 2.5rem);
  right: clamp(1rem, 3vw, 2.5rem);
  max-width: 58rem;
  margin-inline: auto;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-14px) scale(.985);
  transition: opacity .24s cubic-bezier(.2,.75,.25,1), transform .32s cubic-bezier(.2,.75,.25,1);
}
.live-search[data-open="true"] {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}
.live-search__bar {
  min-height: 3.65rem;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .45rem .55rem .45rem 1rem;
  border: 1px solid rgba(255,255,255,.88);
  border-radius: 1.2rem;
  background: rgba(250,252,255,.88);
  box-shadow: 0 18px 54px rgba(10,25,45,.16), inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter: blur(28px) saturate(175%);
  -webkit-backdrop-filter: blur(28px) saturate(175%);
}
.live-search__icon {
  display: grid;
  place-items: center;
  color: #4e5d72;
}
.live-search__icon .ui-icon { width: 1.2rem !important; height: 1.2rem !important; }
.live-search__bar input {
  min-width: 0;
  width: 100%;
  min-height: 2.7rem !important;
  padding: .35rem .1rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  font: inherit;
  font-size: 1rem !important;
  font-weight: 430 !important;
  letter-spacing: -.015em;
  color: #102139;
  appearance: none;
  -webkit-appearance: none;
}
.live-search__bar input::-webkit-search-cancel-button { display: none; }
.live-search__bar input::placeholder { color: #8490a1; opacity: 1; }
.live-search__cancel {
  min-height: 2.7rem;
  padding: .35rem .75rem;
  border: 0;
  background: transparent;
  color: #2774d7;
  font: inherit;
  font-size: .92rem;
  font-weight: 550;
  cursor: pointer;
}
.live-search__results {
  margin-top: .65rem;
  max-height: min(62dvh, 34rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: .65rem;
  border: 1px solid rgba(255,255,255,.84);
  border-radius: 1.45rem;
  background: rgba(249,251,254,.94);
  box-shadow: 0 28px 76px rgba(10,25,45,.22), inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter: blur(34px) saturate(170%);
  -webkit-backdrop-filter: blur(34px) saturate(170%);
  animation: liveSearchResultsIn .24s cubic-bezier(.2,.75,.25,1) both;
}
@keyframes liveSearchResultsIn { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
.live-search__status {
  margin: .25rem .65rem .5rem;
  color: #7b8798;
  font-size: .75rem;
  font-weight: 550;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.live-search__result-list { display: grid; gap: .2rem; }
.live-search__result {
  min-width: 0;
  display: grid;
  grid-template-columns: 2.25rem minmax(0,1fr) auto;
  align-items: center;
  gap: .85rem;
  padding: .8rem .85rem;
  border-radius: 1rem;
  color: #17283f;
  text-decoration: none;
  transition: background .16s ease, transform .16s ease;
}
.live-search__result:hover,
.live-search__result:focus-visible {
  background: rgba(38,116,220,.09);
  outline: none;
}
.live-search__result:active { transform: scale(.992); }
.live-search__result-icon {
  width: 2.25rem;
  height: 2.25rem;
  display: grid;
  place-items: center;
  border-radius: .75rem;
  background: rgba(38,116,220,.08);
  color: #236bc8;
}
.live-search__result-icon .ui-icon { width: 1.05rem !important; height: 1.05rem !important; }
.live-search__result-copy { min-width: 0; display: grid; gap: .15rem; }
.live-search__result-copy strong {
  overflow-wrap: anywhere;
  font-size: .94rem;
  line-height: 1.25;
  font-weight: 550;
  letter-spacing: -.012em;
}
.live-search__result-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #8490a1;
  font-size: .72rem;
  line-height: 1.3;
}
.live-search__result-arrow { color: #8d98a8; font-size: 1.35rem; font-weight: 300; }
.live-search__empty {
  padding: 2.25rem 1.25rem;
  text-align: center;
  color: #758296;
}
.live-search__empty strong { display: block; margin-bottom: .35rem; color: #24364d; font-weight: 550; }
.live-search__empty span { font-size: .9rem; }
.live-search-scrim {
  position: fixed;
  z-index: 170;
  inset: 0;
  border: 0;
  padding: 0;
  background: rgba(25,35,49,.22);
  backdrop-filter: blur(9px) saturate(105%);
  -webkit-backdrop-filter: blur(9px) saturate(105%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}
.live-search-scrim[data-open="true"] { opacity: 1; pointer-events: auto; }

@media (min-width: 1181px) and (pointer: fine) {
  .live-search { left: calc(19rem + clamp(2rem, 4vw, 4rem)); top: 6.25rem; }
}
@media (max-width: 600px) {
  .live-search {
    top: calc(env(safe-area-inset-top, 0px) + 6.05rem);
    left: .85rem;
    right: .85rem;
  }
  .live-search__bar { min-height: 3.4rem; padding-left: .85rem; border-radius: 1.05rem; }
  .live-search__bar input { font-size: .96rem !important; }
  .live-search__cancel { padding-inline: .55rem; font-size: .86rem; }
  .live-search__results { max-height: min(58dvh, 30rem); border-radius: 1.25rem; }
  .live-search__result { padding: .78rem .7rem; gap: .7rem; }
}
@media (prefers-reduced-motion: reduce) {
  .live-search, .live-search-scrim, .live-search__results { transition: none !important; animation: none !important; }
}

/* Stage 42 / 27AC — true inline Apple search beneath the navigation bar. */
.sidebar-close,
.sidebar-close:focus,
.sidebar-close:focus-visible,
.sidebar-close:active {
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: 0 10px 28px rgba(16, 32, 52, .10), inset 0 1px 0 rgba(255,255,255,.82) !important;
  -webkit-tap-highlight-color: transparent !important;
}

.workspace > .live-search {
  position: relative !important;
  z-index: 180 !important;
  inset: auto !important;
  width: auto !important;
  max-width: none !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 clamp(1rem, 3.2vw, 3.25rem) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-.7rem) !important;
  overflow: visible !important;
  transition: max-height .34s cubic-bezier(.2,.72,.2,1), padding .34s cubic-bezier(.2,.72,.2,1), opacity .2s ease, transform .34s cubic-bezier(.2,.72,.2,1) !important;
}
.workspace > .live-search[data-open="true"] {
  max-height: 5.75rem !important;
  padding-top: .8rem !important;
  padding-bottom: .8rem !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
.workspace > .live-search .live-search__bar {
  width: min(100%, 54rem) !important;
  min-height: 3.45rem !important;
  margin-inline: auto !important;
  padding: .35rem .45rem .35rem .95rem !important;
  border: 1px solid rgba(112, 126, 145, .16) !important;
  border-radius: 1.15rem !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 10px 34px rgba(16,32,52,.09), inset 0 1px 0 rgba(255,255,255,.94) !important;
  backdrop-filter: blur(24px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(150%) !important;
}
.workspace > .live-search .live-search__results {
  position: absolute !important;
  top: calc(100% - .25rem) !important;
  left: 50% !important;
  width: min(calc(100% - 2rem), 54rem) !important;
  max-height: min(60dvh, 34rem) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  border-radius: 1.35rem !important;
  background: rgba(252,253,255,.92) !important;
  box-shadow: 0 26px 72px rgba(13,29,49,.22), inset 0 1px 0 rgba(255,255,255,.96) !important;
  backdrop-filter: blur(30px) saturate(165%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(165%) !important;
}
.live-search-scrim {
  background: rgba(31,40,53,.28) !important;
  backdrop-filter: blur(8px) saturate(95%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(95%) !important;
}

@media (max-width: 600px) {
  .workspace > .live-search {
    padding-left: .8rem !important;
    padding-right: .8rem !important;
  }
  .workspace > .live-search[data-open="true"] {
    max-height: 5.15rem !important;
    padding-top: .62rem !important;
    padding-bottom: .62rem !important;
  }
  .workspace > .live-search .live-search__bar {
    min-height: 3.35rem !important;
    border-radius: 1rem !important;
  }
  .workspace > .live-search .live-search__results {
    top: calc(100% - .1rem) !important;
    width: calc(100% - 1.2rem) !important;
    max-height: min(56dvh, 29rem) !important;
    border-radius: 1.15rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .workspace > .live-search { transition: none !important; }
}


/* Stage 42 / 27AD — definitive inline search; retired sheet can never reappear. */
[data-inline-search-v2].live-search {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 clamp(1rem, 3vw, 3rem) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  overflow: visible !important;
  pointer-events: none !important;
  transform: translateY(-10px) !important;
}
[data-inline-search-v2].live-search[data-open="true"] {
  max-height: 5.4rem !important;
  padding-top: .72rem !important;
  padding-bottom: .72rem !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
[data-inline-search-v2] .live-search__bar {
  width: min(100%, 52rem) !important;
  min-height: 3.35rem !important;
  margin: 0 auto !important;
  padding: .35rem .45rem .35rem .9rem !important;
  border: 1px solid rgba(117,130,148,.16) !important;
  border-radius: 1.05rem !important;
  background: rgba(255,255,255,.84) !important;
  box-shadow: 0 10px 30px rgba(16,32,52,.08), inset 0 1px 0 rgba(255,255,255,.95) !important;
  backdrop-filter: blur(24px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(150%) !important;
}
[data-inline-search-v2] .live-search__results {
  position: absolute !important;
  top: calc(100% - .15rem) !important;
  left: 50% !important;
  width: min(calc(100% - 2rem), 52rem) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
}
/* Never display the retired large search sheet classes. */
.search-modal,
[data-search-modal],
#platform-search-modal,
#global-search-modal,
.platform-search-sheet { display: none !important; }
.sidebar-close,
.sidebar-close:hover,
.sidebar-close:active,
.sidebar-close:focus,
.sidebar-close:focus-visible {
  outline: 0 !important;
  outline-offset: 0 !important;
  border-color: rgba(119,132,149,.16) !important;
  box-shadow: 0 10px 28px rgba(16,32,52,.10), inset 0 1px 0 rgba(255,255,255,.84) !important;
}
@media (max-width: 600px) {
  [data-inline-search-v2].live-search { padding-inline: .8rem !important; }
  [data-inline-search-v2].live-search[data-open="true"] { max-height: 4.85rem !important; padding-block: .58rem !important; }
  [data-inline-search-v2] .live-search__bar { min-height: 3.25rem !important; border-radius: .95rem !important; }
  [data-inline-search-v2] .live-search__results { width: calc(100% - 1.2rem) !important; }
}

/* Stage 42 / 27AE — isolated Apple inline live search. No modal or sheet dependency. */
.apple-search {
  position: relative;
  z-index: 181;
  width: 100%;
  max-height: 0;
  padding: 0 clamp(1rem, 3vw, 3rem);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-.65rem);
  transition: max-height .32s cubic-bezier(.22,.72,.2,1), padding .32s cubic-bezier(.22,.72,.2,1), opacity .18s ease, transform .32s cubic-bezier(.22,.72,.2,1);
}
.apple-search[data-open="true"] {
  max-height: 5.25rem;
  padding-top: .7rem;
  padding-bottom: .7rem;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.apple-search__bar {
  display: flex;
  align-items: center;
  gap: .65rem;
  width: min(100%, 52rem);
  min-height: 3.35rem;
  margin-inline: auto;
  padding: .35rem .45rem .35rem .95rem;
  border: 1px solid rgba(112,126,145,.16);
  border-radius: 1.05rem;
  background: rgba(255,255,255,.84);
  box-shadow: 0 10px 30px rgba(16,32,52,.08), inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
}
.apple-search__icon { display: grid; place-items: center; flex: 0 0 auto; color: #607086; }
.apple-search__icon svg { width: 1.15rem; height: 1.15rem; }
.apple-search__bar input {
  min-width: 0;
  flex: 1 1 auto;
  width: 100%;
  border: 0 !important;
  outline: 0 !important;
  padding: .65rem 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font: inherit;
  font-size: 1rem !important;
  font-weight: 450 !important;
  color: #13243a;
}
.apple-search__bar input::placeholder { color: #8a95a5; opacity: 1; }
.apple-search__cancel {
  flex: 0 0 auto;
  min-height: 2.65rem;
  border: 0;
  border-radius: .8rem;
  padding: .55rem .8rem;
  background: transparent;
  color: #286fcf;
  font: inherit;
  font-size: .9rem;
  font-weight: 550;
}
.apple-search__results {
  position: absolute;
  top: calc(100% - .1rem);
  left: 50%;
  z-index: 205;
  width: min(calc(100% - 2rem), 52rem);
  max-height: min(60dvh, 34rem);
  overflow: auto;
  transform: translateX(-50%);
  border: 1px solid rgba(112,126,145,.14);
  border-radius: 1.3rem;
  padding: .65rem;
  background: rgba(252,253,255,.94);
  box-shadow: 0 26px 72px rgba(13,29,49,.22), inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter: blur(30px) saturate(165%);
  -webkit-backdrop-filter: blur(30px) saturate(165%);
}
.apple-search__status { margin: 0; padding: .45rem .65rem .6rem; color: #7b8798; font-size: .76rem; font-weight: 550; letter-spacing: .04em; }
.apple-search__result-list { display: grid; gap: .22rem; }
.apple-search__result {
  display: grid;
  grid-template-columns: 2.4rem minmax(0,1fr) auto;
  align-items: center;
  gap: .8rem;
  min-height: 3.85rem;
  padding: .72rem .75rem;
  border-radius: .9rem;
  color: #203249;
  text-decoration: none;
}
.apple-search__result:hover, .apple-search__result:focus-visible { background: rgba(225,236,251,.72); outline: none; }
.apple-search__result-icon { display: grid; place-items: center; color: #58708e; }
.apple-search__result-icon svg { width: 1.2rem; height: 1.2rem; }
.apple-search__result-copy { display: grid; gap: .12rem; min-width: 0; }
.apple-search__result-copy strong { overflow-wrap: anywhere; font-size: .94rem; line-height: 1.25; font-weight: 550; }
.apple-search__result-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #8490a1; font-size: .72rem; }
.apple-search__result-arrow { color: #8d98a8; font-size: 1.35rem; font-weight: 300; }
.apple-search__empty { padding: 2.25rem 1.25rem; text-align: center; color: #758296; }
.apple-search__empty strong { display: block; margin-bottom: .35rem; color: #24364d; font-weight: 550; }
.apple-search__empty span { font-size: .9rem; }
.apple-search-scrim {
  position: fixed;
  z-index: 170;
  inset: 0;
  border: 0;
  padding: 0;
  background: rgba(31,40,53,.27);
  backdrop-filter: blur(8px) saturate(95%);
  -webkit-backdrop-filter: blur(8px) saturate(95%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;
}
.apple-search-scrim[data-open="true"] { opacity: 1; pointer-events: auto; }
html.apple-search-active .main-content { position: relative; z-index: 1; }
@media (max-width: 600px) {
  .apple-search { padding-inline: .8rem; }
  .apple-search[data-open="true"] { max-height: 4.85rem; padding-block: .58rem; }
  .apple-search__bar { min-height: 3.25rem; border-radius: .95rem; }
  .apple-search__results { width: calc(100% - 1.2rem); max-height: min(56dvh,29rem); border-radius: 1.1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .apple-search, .apple-search-scrim { transition: none !important; }
}


/* Stage 42 / 27AG — canonical search rootfix: one trigger, one bar, no modal. */
#global-search,
#platform-search-modal,
.search-modal,
.platform-search-sheet,
[data-search-modal] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.apple-search[data-search-architecture="27ag"] {
  position: relative !important;
  z-index: 181 !important;
  width: 100% !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 clamp(1rem, 3vw, 3rem) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(-10px) !important;
  overflow: visible !important;
  transition: max-height .30s cubic-bezier(.22,.72,.2,1), padding .30s cubic-bezier(.22,.72,.2,1), opacity .16s ease, transform .30s cubic-bezier(.22,.72,.2,1) !important;
}
.apple-search[data-search-architecture="27ag"][data-open="true"] {
  max-height: 5.15rem !important;
  padding-top: .66rem !important;
  padding-bottom: .66rem !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
.apple-search[data-search-architecture="27ag"] .apple-search__bar {
  width: min(100%, 48rem) !important;
  min-height: 3.2rem !important;
  margin-inline: auto !important;
  border: 1px solid rgba(112,126,145,.14) !important;
  border-radius: 1rem !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 26px rgba(16,32,52,.08), inset 0 1px 0 rgba(255,255,255,.96) !important;
  backdrop-filter: blur(26px) saturate(155%) !important;
  -webkit-backdrop-filter: blur(26px) saturate(155%) !important;
}
.apple-search[data-search-architecture="27ag"][data-active="true"] .apple-search__results {
  display: block;
}
.apple-search-scrim[data-open="true"] {
  opacity: 1 !important;
  pointer-events: auto !important;
  background: rgba(24,33,46,.24) !important;
  backdrop-filter: blur(8px) saturate(92%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(92%) !important;
}
@media (max-width: 600px) {
  .apple-search[data-search-architecture="27ag"] { padding-inline: .75rem !important; }
  .apple-search[data-search-architecture="27ag"][data-open="true"] { max-height: 4.7rem !important; padding-block: .52rem !important; }
  .apple-search[data-search-architecture="27ag"] .apple-search__bar { min-height: 3.1rem !important; border-radius: .95rem !important; }
  .apple-search[data-search-architecture="27ag"] .apple-search__results { width: calc(100% - 1rem) !important; }
}
