      :root {
        --bg:#f4f8f8; --bg-soft:#eef3f5; --bg-subtle:#fafcfc; --panel:#fff; --surface:var(--bg-soft); --surface-hover:#f1f5f6;
        --border:#d9e3e5; --border-strong:#c2d0d8; --border-hover:#b7c8cf; --border-focus:rgba(107,143,182,.34);
        --text:#2a4156; --text-secondary:#60737f; --text-tertiary:#7f909c; --accent:#6b8fb6; --accent-hover:#5d81a7;
        --accent-soft:#e7eef5; --accent-subtle:rgba(107,143,182,.10); --accent-border:rgba(107,143,182,.22);
        --success:#13804a; --success-subtle:rgba(19,128,74,.09); --success-border:rgba(19,128,74,.22);
        --warning:#b56a09; --warning-subtle:rgba(181,106,9,.09); --warning-border:rgba(181,106,9,.22);
        --danger:#c23a2c; --danger-subtle:rgba(194,58,44,.09); --danger-border:rgba(194,58,44,.22); --info:#527598;
        --info-subtle:rgba(82,117,152,.09); --info-border:rgba(82,117,152,.22); --font-sans:"Manrope",ui-sans-serif,system-ui,sans-serif;
        --font-mono:ui-monospace,"SFMono-Regular","Cascadia Code",Menlo,monospace; --text-xs:.75rem; --text-sm:.8125rem;
        --text-base:.9375rem; --text-md:1rem; --text-lg:1.125rem; --text-xl:1.25rem; --text-2xl:1.625rem; --text-4xl:clamp(2.35rem,4vw,3.6rem);
        --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px; --space-6:24px; --space-7:32px; --space-8:40px; --space-9:48px; --space-10:64px;
        --home-shell:1120px; --home-shell-wide:1280px;
        --radius-sm:10px; --radius-md:16px; --radius-lg:22px; --radius-xl:28px; --radius-pill:999px; --shadow-sm:0 8px 24px rgba(23,32,51,.06);
        --shadow-md:0 16px 36px rgba(23,32,51,.09); --shadow-glow:0 0 0 4px rgba(47,92,255,.12), 0 18px 38px rgba(47,92,255,.14); --shadow-focus:0 0 0 4px rgba(47,92,255,.14);
        --duration-fast:160ms; --duration-base:220ms; --ease-default:ease; --leading-relaxed:1.7;
        --weight-medium:500; --weight-semi:600; --weight-bold:700; --min-target-size:44px;
      }
      @media (prefers-reduced-motion: reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } }
      *,*::before,*::after { box-sizing:border-box; }
      html,body { min-height:100%; }
      body { margin:0; background:linear-gradient(180deg,#fcfdfd 0%,#f6f9fa 24%,var(--bg) 100%); color:var(--text); font-family:var(--font-sans); font-size:var(--text-base); line-height:1.55; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
      h1,h2,h3,h4,h5,h6 { margin:0; color:var(--text); font-weight:800; letter-spacing:-.03em; }
      p { margin:0; } img,svg { display:block; max-width:100%; }
      a { color:var(--accent); text-decoration:none; } a:hover { color:var(--accent-hover); text-decoration:underline; }
      a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible { outline:2px solid transparent; box-shadow:var(--shadow-focus); }
      .skip-link { position:absolute; top:-100%; left:var(--space-4); z-index:9999; padding:var(--space-3) var(--space-5); border-radius:var(--radius-md); background:var(--accent); color:#fff; text-decoration:none; }
      .skip-link:focus { top:var(--space-4); }
      .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
      header.topbar { position:sticky; top:0; z-index:50; display:flex; align-items:center; gap:var(--space-4); min-height:72px; padding:var(--space-4) var(--space-7); border-bottom:1px solid rgba(216,224,235,.92); background:rgba(251,252,254,.92); backdrop-filter:blur(16px); }
      .public-header { position:sticky; top:0; z-index:60; padding:var(--space-4) var(--space-6); border-bottom:1px solid rgba(216,224,235,.82); background:rgba(251,252,254,.88); backdrop-filter:blur(18px); }
      .public-header__shell { max-width:1280px; margin:0 auto; display:flex; align-items:center; gap:var(--space-5); }
      .public-header__brand { flex:0 0 auto; }
      .public-nav-panel { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); flex:1; }
      .public-nav-links,.public-nav-actions { display:flex; align-items:center; gap:var(--space-2); }
      .public-nav-links { flex-wrap:wrap; }
      .public-nav-actions { margin-left:auto; }
      .auth-header { position:sticky; top:0; z-index:60; padding:var(--space-4) var(--space-6); border-bottom:1px solid rgba(216,224,235,.82); background:rgba(251,252,254,.92); backdrop-filter:blur(18px); }
      .auth-header__shell { max-width:1080px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); }
      .auth-header__actions { display:flex; align-items:center; gap:var(--space-2); flex-wrap:wrap; }
      .auth-header__back-link { min-width:0; justify-content:flex-start; text-align:left; }
      .auth-header__nav-action { flex:0 0 auto; white-space:nowrap; }
      .workspace-header { position:sticky; top:0; z-index:58; padding:10px var(--space-6); border-bottom:1px solid rgba(216,224,235,.86); background:rgba(251,252,254,.92); backdrop-filter:blur(18px); }
      .workspace-header__shell { max-width:1280px; margin:0 auto; display:flex; align-items:center; gap:var(--space-5); }
      .workspace-header__body { flex:1; min-width:0; }
      .workspace-header__context { display:flex; align-items:center; gap:10px; min-width:0; flex:0 1 auto; }
      .workspace-header__eyebrow { display:inline-flex; align-items:center; min-height:28px; padding:0 10px; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:800; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }
      .workspace-header__title { font-size:var(--text-sm); line-height:1.2; color:var(--text); letter-spacing:-.02em; white-space:nowrap; }
      .workspace-header__menu { display:flex; align-items:center; gap:var(--space-3); min-width:0; width:100%; }
      .workspace-header__nav,.workspace-header__actions { display:flex; align-items:center; gap:var(--space-2); flex-wrap:wrap; }
      .workspace-header__nav { flex:1 1 auto; min-width:0; }
      .workspace-header__actions { flex:0 0 auto; justify-content:flex-end; margin-left:auto; }
      .workspace-header__actions .btn-sm { min-height:38px; border-radius:var(--radius-pill); }
      .workspace-link,.workspace-badge { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 14px; border-radius:var(--radius-pill); font-size:var(--text-sm); font-weight:700; text-decoration:none; }
      .workspace-link { color:var(--text-secondary); background:rgba(255,255,255,.74); border:1px solid transparent; }
      .workspace-link:hover { background:var(--accent-soft); color:var(--text); text-decoration:none; }
      .workspace-link.active { background:var(--accent-soft); border-color:rgba(47,92,255,.16); color:var(--accent); }
      .workspace-badge { border:1px solid var(--border); background:var(--panel); color:var(--text-secondary); }
      .workspace-header__form { margin:0; }
      .workspace-header--client { --workspace-accent:36,160,128; }
      .workspace-header--provider { --workspace-accent:47,92,255; }
      .workspace-header--law-firm { --workspace-accent:198,126,22; }
      .workspace-header[class*="workspace-header--"] .workspace-header__eyebrow {
        background:rgba(var(--workspace-accent),.12);
        color:rgb(var(--workspace-accent));
      }
      .workspace-header[class*="workspace-header--"] .workspace-link.active {
        background:rgba(var(--workspace-accent),.12);
        border-color:rgba(var(--workspace-accent),.18);
        color:rgb(var(--workspace-accent));
      }
      .workspace-header--law-firm .workspace-header__eyebrow,
      .workspace-header--law-firm .workspace-link.active {
        color:var(--text);
      }
      .public-nav-toggle { display:none; min-height:44px; padding:0 14px; border:1px solid var(--border); border-radius:14px; background:rgba(255,255,255,.82); color:var(--text); font-family:inherit; font-size:var(--text-sm); font-weight:700; cursor:pointer; }
      .public-nav-toggle__bars { display:inline-grid; gap:4px; margin-left:8px; }
      .public-nav-toggle__bars span { width:14px; height:2px; border-radius:999px; background:currentColor; }
      .public-nav-cta { white-space:nowrap; }
      .uid-pill { font-size:var(--text-xs); }
      .topbar-inline-form { margin:0; }
      .topbar-logout { margin-left:auto; flex-shrink:0; }
      .brand { display:inline-flex; align-items:center; gap:var(--space-3); color:var(--text); text-decoration:none; }
      .brand-mark { width:20px; height:20px; display:block; object-fit:contain; flex:0 0 auto; }
      .brand:hover { color:var(--text); text-decoration:none; }
      .brand-title { font-size:1.7rem; font-weight:800; letter-spacing:-.04em; }
      .topbar-nav { display:flex; align-items:center; gap:var(--space-2); flex-wrap:wrap; } .topbar-nav form { margin:0; }
      .nav-link,.pill,.badge { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); min-height:36px; padding:0 14px; border-radius:var(--radius-pill); font-size:var(--text-sm); font-weight:700; text-decoration:none; }
      .nav-link { color:var(--text-secondary); } .nav-link:hover { background:var(--accent-soft); color:var(--text); text-decoration:none; } .nav-link.active { color:var(--accent); background:var(--accent-subtle); }
      .pill,.badge { border:1px solid var(--border); background:var(--panel); color:var(--text-secondary); } button.pill { cursor:pointer; font-family:inherit; }
      .badge { min-height:30px; padding:0 12px; background:var(--bg-soft); }
      .badge--accent { border-color:rgba(47,92,255,.16); background:var(--accent-soft); color:var(--accent); }
      .badge--success { border-color:var(--success-border); background:var(--success-subtle); color:var(--success); }
      button,.btn,.btn-primary,.btn-secondary,.btn-danger { display:inline-flex; align-items:center; justify-content:center; align-content:center; gap:var(--space-2); min-height:var(--min-target-size); padding:0 18px; border:1px solid var(--border); border-radius:14px; background:var(--panel); color:var(--text); font-family:inherit; font-size:var(--text-sm); font-weight:700; line-height:1; text-align:center; vertical-align:middle; cursor:pointer; text-decoration:none; transition:transform 160ms ease,border-color 160ms ease,background 160ms ease,box-shadow 160ms ease; }
      button:hover,.btn:hover,.btn-primary:hover,.btn-secondary:hover,.btn-danger:hover { transform:translateY(-1px); border-color:var(--border-strong); text-decoration:none; }
      button.primary,.btn-primary { border-color:var(--accent); background:var(--accent); color:#fff; box-shadow:0 10px 24px rgba(47,92,255,.18); }
      button.primary:hover,.btn-primary:hover { background:var(--accent-hover); border-color:var(--accent-hover); color:#fff; }
      button.secondary,.btn-secondary { background:rgba(255,255,255,.8); color:var(--text); }
      button.danger,.btn-danger { border-color:var(--danger-border); background:var(--danger-subtle); color:var(--danger); }
      .btn-lg { min-height:48px; padding:0 22px; border-radius:16px; font-size:var(--text-base); line-height:1.1; } .btn-sm { min-height:36px; padding:0 14px; border-radius:12px; font-size:var(--text-sm); line-height:1.1; }
      .btn-cta { display:inline-flex; align-items:center; justify-content:center; text-align:center; line-height:1.1; white-space:nowrap; }
      button:disabled,.btn:disabled { opacity:.55; cursor:not-allowed; pointer-events:none; }
      label { display:block; margin:0 0 var(--space-2); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; }
      input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),textarea,select { width:100%; min-height:var(--min-target-size); padding:0 16px; border:1px solid var(--border); border-radius:14px; background:var(--panel); color:var(--text); font-family:inherit; font-size:var(--text-base); line-height:1.4; }
      textarea { min-height:120px; padding:14px 16px; resize:vertical; } input[type="checkbox"],input[type="radio"] { width:18px; height:18px; accent-color:var(--accent); } input::placeholder,textarea::placeholder { color:var(--text-tertiary); }
      main.container { max-width:1180px; margin:0 auto; padding:var(--space-7); } main.container.wide { max-width:none; padding:0; }
      .workspace-review-shell { max-width:1280px; margin:0 auto; padding:var(--space-6) var(--space-7) 0; }
      .workspace-review-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); }
      .workspace-review-panel { display:grid; gap:var(--space-4); }
      .workspace-review-panel__header { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; }
      .workspace-review-list { display:grid; gap:var(--space-3); }
      .workspace-review-card { display:grid; gap:var(--space-3); padding:var(--space-4); border:1px solid var(--border); border-radius:18px; background:var(--bg-subtle); }
      .workspace-review-card__header { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; }
      .workspace-review-form { display:grid; gap:var(--space-3); }
      .workspace-review-form__actions { display:flex; gap:var(--space-2); flex-wrap:wrap; }
      .workspace-review-empty { padding:var(--space-4); border:1px dashed var(--border); border-radius:18px; background:var(--bg-subtle); color:var(--text-secondary); }
      .banner { margin-bottom:var(--space-4); padding:14px 16px; border:1px solid var(--border); border-radius:var(--radius-md); background:var(--panel); color:var(--text); }
      .banner.success { border-color:var(--success-border); background:var(--success-subtle); } .banner.warning { border-color:var(--warning-border); background:var(--warning-subtle); } .banner.error { border-color:var(--danger-border); background:var(--danger-subtle); } .banner.info { border-color:var(--info-border); background:var(--info-subtle); }
      .card,.section-card,.feature-card,.metric,.dashboard-shell,.review-card,.engagement-card,.board-col,.board-card { border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); box-shadow:var(--shadow-sm); }
      .card,.section-card,.feature-card,.metric,.review-card,.engagement-card,.board-card { padding:var(--space-6); }
      .dashboard-shell { max-width:1180px; margin:0 auto; padding:var(--space-6); border-radius:var(--radius-xl); background:rgba(255,255,255,.82); backdrop-filter:blur(14px); } .dashboard-shell.narrow { max-width:980px; } .dashboard-shell.wide { max-width:1260px; }
      .hero { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-5); flex-wrap:wrap; margin-bottom:var(--space-5); } .hero h1 { font-size:var(--text-2xl); line-height:1.18; } .hero .subtle { margin-top:var(--space-2); color:var(--text-secondary); font-size:var(--text-sm); max-width:680px; }
      .row { display:flex; align-items:center; gap:var(--space-3); } .row.space { justify-content:space-between; } .row.wrap { flex-wrap:wrap; } .row.start { align-items:flex-start; } .row.end { align-items:flex-end; } .grid2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); } .field-grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-4); } .meta,.badge-row,.stack-sm,.stack-md { display:grid; gap:var(--space-2); } .badge-row { display:flex; flex-wrap:wrap; }
      .stack-md { gap:var(--space-4); } .meta { display:flex; flex-wrap:wrap; } .auth-wrap { max-width:560px; margin:var(--space-8) auto; }
      .auth-wrap--wide { max-width:640px; }
      .auth-title { margin:0 0 var(--space-2); font-size:var(--text-2xl); }
      .auth-title--hero { font-size:clamp(2.15rem, 4.4vw, 3.1rem); }
      .auth-title--otp { font-size:clamp(2.05rem, 4.2vw, 2.9rem); }
      .form-grid { display:grid; gap:var(--space-4); }
      .support-stack { display:grid; gap:var(--space-3); }
      .text-left { text-align:left; }
      .ordered-steps { margin:0; padding-left:var(--space-5); color:var(--text); }
      .ordered-step + .ordered-step { margin-top:var(--space-3); }
      .mono-textarea { font-family:var(--font-mono); }
      .inline-code {
        font-family:var(--font-mono);
        background:var(--surface);
        padding:2px var(--space-2);
        border-radius:var(--radius-sm);
      }
      .checkbox-row { display:flex; align-items:center; gap:var(--space-3); margin:0; } .checkbox-row.start { align-items:flex-start; } .checkbox-row input[type="checkbox"],.checkbox-row input[type="radio"] { width:auto; flex:0 0 auto; } .checkbox-row--compact { gap:var(--space-2); }
      .fieldset-reset { border:0; padding:0; margin:0; }
      .legend-muted { margin:0 0 var(--space-2); color:var(--text-secondary); font-size:var(--text-sm); font-weight:var(--weight-semi); }
      .form-stack { display:grid; gap:var(--space-4); }
      .flow-stack { display:grid; gap:var(--space-3); }
      .surface-subtle { background:var(--bg-subtle); }
      .surface-soft { background:var(--bg-soft); }
      .is-hidden { display:none !important; }
      .text-inherit { color:inherit; }
.m-0 { margin:0 !important; } .mt-1 { margin-top:var(--space-1) !important; } .mt-2 { margin-top:var(--space-2) !important; } .mt-3 { margin-top:var(--space-3) !important; } .mt-4 { margin-top:var(--space-4) !important; } .mb-2 { margin-bottom:var(--space-2) !important; } .mb-3 { margin-bottom:var(--space-3) !important; } .ml-2 { margin-left:var(--space-2) !important; }
.w-auto { width:auto !important; }
.inline-form { display:inline; }
      .minw-150 { min-width:150px; } .minw-180 { min-width:180px; } .minw-220 { min-width:220px; } .minw-320 { min-width:320px; } .grow-1 { flex:1 1 auto; } .grow-1-min0 { flex:1 1 auto; min-width:0; }
      .tabbar { display:flex; flex-wrap:wrap; gap:var(--space-2); margin:0 0 var(--space-5); } .tab { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 16px; border:1px solid transparent; border-radius:var(--radius-pill); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; line-height:1.15; text-align:center; text-decoration:none; } .tab:hover { background:var(--accent-soft); color:var(--text); text-decoration:none; } .tab.active { border-color:rgba(47,92,255,.18); background:var(--accent-soft); color:var(--accent); }
      .grid-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:var(--space-3); margin-bottom:var(--space-5); }
      .metric .k { font-size:1.8rem; font-weight:800; line-height:1; } .metric .l,.help,.muted,.feature-card__desc,.step-item__desc { color:var(--text-secondary); font-size:var(--text-sm); } .metric .l { margin-top:var(--space-2); }
      .section-title,.feature-card__title,.step-item__title { font-size:var(--text-lg); line-height:1.2; } .small { font-size:var(--text-sm); } .mono { font-family:var(--font-mono); font-size:var(--text-sm); }
      .table-wrap { overflow:auto; border:1px solid var(--border); border-radius:var(--radius-md); background:var(--panel); } .table-wrap.mt-3 { margin-top:var(--space-3); } table.slim { width:100%; border-collapse:collapse; font-size:var(--text-sm); } table.slim th,table.slim td { padding:12px 14px; border-bottom:1px solid var(--border); text-align:left; vertical-align:top; } table.slim th { background:var(--bg-soft); color:var(--text-tertiary); font-size:var(--text-xs); letter-spacing:.06em; text-transform:uppercase; } table.slim tr:last-child td { border-bottom:0; } table.slim tbody tr:hover td { background:rgba(234,240,255,.38); } table.slim tbody tr:focus-within td { background:rgba(234,240,255,.58); }
      .flow-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-2); margin:0 0 var(--space-5); } .flow-step { min-height:44px; display:flex; align-items:center; justify-content:center; padding:8px 12px; border:1px solid var(--border); border-radius:14px; background:var(--panel); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; text-align:center; } .flow-step.active { border-color:rgba(47,92,255,.2); background:var(--accent-soft); color:var(--accent); } .flow-step.done { border-color:var(--success-border); background:var(--success-subtle); color:var(--success); }
      .status,.status-pill,.chip { display:inline-flex; align-items:center; gap:6px; min-height:26px; padding:0 10px; border:1px solid var(--border); border-radius:var(--radius-pill); font-size:var(--text-xs); font-weight:700; } .chip { min-height:34px; padding:0 14px; background:var(--panel); color:var(--text-secondary); } .chip.selected { border-color:rgba(47,92,255,.16); background:var(--accent-soft); color:var(--accent); }
      .status.active { color:var(--success); border-color:var(--success-border); background:var(--success-subtle); } .status.pending { color:var(--warning); border-color:var(--warning-border); background:var(--warning-subtle); } .status.error { color:var(--danger); border-color:var(--danger-border); background:var(--danger-subtle); } .status.info { color:var(--info); border-color:var(--info-border); background:var(--info-subtle); }
      .nav-link:focus-visible,.workspace-link:focus-visible,.tab:focus-visible,a.pill:focus-visible,button.pill:focus-visible,.badge:focus-visible { border-color:var(--border-focus); box-shadow:var(--shadow-focus); text-decoration:none; }
      .actions { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; margin-top:var(--space-4); }
      .workspace-inline-actions { display:flex; align-items:center; gap:var(--space-2); flex-wrap:wrap; }
      .workspace-block-actions { display:flex; flex-direction:column; gap:var(--space-2); }
      .workspace-detail-list { display:grid; gap:var(--space-1); }
      .workspace-detail-list .muted,.workspace-detail-list .help { margin:0; }
      .workspace-compact-note { margin-top:var(--space-2); }
      .board-col { padding:var(--space-4); } .board-col__header { display:flex; align-items:center; justify-content:space-between; gap:var(--space-2); margin-bottom:var(--space-3); } .board-col__title,.board-card__title { font-weight:800; } .board-col__count { min-width:28px; min-height:28px; display:inline-flex; align-items:center; justify-content:center; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:800; } .board-card__subtitle { color:var(--text-secondary); font-size:var(--text-sm); }
      .hero-block { display:grid; gap:var(--space-5); } .hero-block__headline { font-size:var(--text-4xl); line-height:1.18; } .hero-block__subhead,.section-lead { color:var(--text-secondary); font-size:var(--text-lg); line-height:1.65; } .hero-block__actions,.hero-actions,.trust-strip,.steps-row,.card-grid { display:grid; gap:var(--space-4); }
      .auth-shell { max-width:1080px; margin:0 auto; }
      .auth-shell--compact { max-width:760px; }
      .auth-shell__grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(280px,.98fr); gap:var(--space-5); align-items:start; }
      .auth-shell__grid--single { grid-template-columns:minmax(0,1fr); }
      .auth-shell__panel,.auth-shell__aside { border:1px solid rgba(196,207,222,.92); border-radius:var(--radius-xl); background:rgba(255,255,255,.94); box-shadow:var(--shadow-md); }
      .auth-shell__panel { display:grid; gap:var(--space-5); padding:clamp(24px,4vw,36px); }
      .auth-shell__aside { display:grid; gap:var(--space-4); padding:clamp(20px,3vw,28px); background:linear-gradient(180deg,rgba(246,249,255,.96),rgba(255,255,255,.98)); }
      .auth-shell__eyebrow { display:inline-flex; align-items:center; min-height:30px; width:max-content; padding:0 12px; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
      .auth-shell__title { font-size:clamp(2.05rem,4vw,3rem); line-height:1.02; letter-spacing:-.05em; }
      .auth-shell__lead { color:var(--text-secondary); font-size:var(--text-lg); line-height:1.62; max-width:42rem; }
      .auth-shell__support { display:grid; gap:var(--space-3); }
      .auth-shell__support-card { padding:var(--space-4); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); }
      .auth-shell__support-card strong { display:block; margin-bottom:var(--space-2); font-size:var(--text-base); }
      .auth-shell__support-card span { color:var(--text-secondary); font-size:var(--text-sm); line-height:1.55; }
      .auth-shell__support-note { color:var(--text-secondary); font-size:var(--text-sm); line-height:1.6; }
      .auth-shell__alt-actions { display:flex; flex-wrap:wrap; gap:var(--space-3); align-items:center; }
      .auth-shell__inline-note { color:var(--text-secondary); font-size:var(--text-sm); }
      .auth-shell__microproofs { display:flex; flex-wrap:wrap; gap:var(--space-2); }
      .auth-shell__microproof { display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border:1px solid rgba(47,92,255,.16); border-radius:var(--radius-pill); background:rgba(234,240,255,.52); color:var(--accent); font-size:var(--text-xs); font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
      .auth-shell__form-section { display:grid; gap:var(--space-4); padding:var(--space-4); border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(247,249,252,.86); }
      .auth-shell__section-copy { display:grid; gap:var(--space-2); }
      .auth-shell__section-label { display:inline-flex; align-items:center; width:max-content; min-height:28px; padding:0 10px; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
      .auth-shell__section-title { font-size:var(--text-base); line-height:1.2; }
      .auth-shell__section-body { color:var(--text-secondary); font-size:var(--text-sm); line-height:1.6; }
      .auth-shell__progress { display:grid; gap:var(--space-2); }
      .auth-shell__progress-step { display:flex; align-items:center; gap:var(--space-3); padding:12px 14px; border:1px solid var(--border); border-radius:16px; background:rgba(255,255,255,.72); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; }
      .auth-shell__progress-step strong { color:var(--text); font-size:var(--text-xs); letter-spacing:.05em; text-transform:uppercase; }
      .auth-shell__progress-step.is-active { border-color:rgba(47,92,255,.18); background:rgba(234,240,255,.52); color:var(--text); }
      .auth-role-switch { display:flex; flex-wrap:wrap; gap:var(--space-2); }
      .auth-role-switch__link { display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border:1px solid var(--border); border-radius:var(--radius-pill); background:rgba(255,255,255,.8); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; text-decoration:none; }
      .auth-role-switch__link:hover { background:var(--accent-soft); color:var(--text); text-decoration:none; }
      .auth-role-switch__link.is-active { border-color:rgba(47,92,255,.18); background:var(--accent-soft); color:var(--accent); }
      .token-disclosure { display:grid; gap:var(--space-3); padding:var(--space-4); border:1px dashed rgba(47,92,255,.24); border-radius:var(--radius-lg); background:rgba(234,240,255,.45); }
      .token-disclosure summary { cursor:pointer; color:var(--accent); font-size:var(--text-sm); font-weight:800; }
      .token-disclosure[open] summary { margin-bottom:var(--space-1); }
      .eyebrow { display:inline-flex; align-items:center; gap:var(--space-2); width:fit-content; min-height:32px; padding:0 12px; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
      .hero-split { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); gap:var(--space-5); align-items:stretch; }
      .hero-panel { display:grid; align-content:center; gap:var(--space-4); padding:clamp(28px,4vw,44px); border:1px solid var(--border); border-radius:var(--radius-xl); background:var(--panel); box-shadow:var(--shadow-sm); }
      .hero-stage { display:grid; gap:var(--space-4); min-height:100%; padding:clamp(20px,3vw,28px); border:1px solid rgba(47,92,255,.14); border-radius:var(--radius-xl); background:linear-gradient(180deg,rgba(234,240,255,.82),rgba(255,255,255,.96)); box-shadow:var(--shadow-md); }
      .mock-window { display:grid; gap:var(--space-3); padding:var(--space-4); border:1px solid rgba(47,92,255,.12); border-radius:var(--radius-lg); background:rgba(255,255,255,.92); }
      .mock-toolbar { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); }
      .mock-dots { display:flex; gap:6px; } .mock-dots span { width:8px; height:8px; border-radius:50%; background:#d8dce6; }
      .mock-chip { min-height:28px; display:inline-flex; align-items:center; padding:0 10px; border-radius:var(--radius-pill); background:var(--accent-soft); color:var(--accent); font-size:var(--text-xs); font-weight:700; }
      .mock-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-2); }
      .mock-card { min-height:72px; padding:12px; border:1px solid var(--border); border-radius:14px; background:var(--bg-soft); }
      .mock-card strong { display:block; font-size:var(--text-sm); line-height:1.35; } .mock-card span { display:block; margin-top:var(--space-2); color:var(--text-tertiary); font-size:var(--text-xs); }
      .mock-map { min-height:220px; border-radius:var(--radius-lg); background:linear-gradient(135deg,rgba(232,237,244,.86),rgba(248,250,252,.98)); position:relative; overflow:hidden; }
      .mock-pin { position:absolute; width:14px; height:14px; border-radius:50% 50% 50% 0; transform:rotate(-45deg); background:var(--accent); box-shadow:0 8px 18px rgba(47,92,255,.2); } .mock-pin::after { content:""; position:absolute; inset:3px; border-radius:50%; background:#fff; }
      .info-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:var(--space-3); }
      .info-card { padding:var(--space-4); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); box-shadow:var(--shadow-sm); }
      .info-card strong { display:block; margin-bottom:var(--space-2); font-size:var(--text-xl); } .info-card span { color:var(--text-secondary); font-size:var(--text-sm); }
      .faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); }
      .faq-card,.support-card { display:grid; gap:var(--space-2); }
      .search-toolbar { display:grid; gap:var(--space-3); padding:var(--space-4); border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(255,255,255,.74); box-shadow:var(--shadow-sm); }
      .search-inline { display:flex; align-items:center; gap:var(--space-3); flex-wrap:wrap; } .search-inline form { display:flex; gap:var(--space-3); flex:1; min-width:min(100%,420px); flex-wrap:wrap; } .search-inline .search-field { flex:1; min-width:220px; }
      .search-scope { display:flex; flex-wrap:wrap; gap:var(--space-2); }
      .search-row { display:flex; gap:var(--space-2); align-items:stretch; }
      .search-row input { flex:1; min-width:0; }
      .empty-state__icon { font-size:var(--text-2xl); margin-bottom:var(--space-3); }
      .empty-state__message { margin:0; font-size:var(--text-md); }
      .search-layout { display:grid; grid-template-columns:360px minmax(0,1fr) 320px; gap:var(--space-4); align-items:start; }
      .results-panel,.preview-panel,.map-panel { min-width:0; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); box-shadow:var(--shadow-sm); }
      .results-panel,.preview-panel { padding:var(--space-5); } .map-panel { padding:var(--space-4); }
      .results-list { display:grid; gap:var(--space-3); max-height:640px; overflow:auto; }
      .result-card { display:grid; gap:var(--space-3); padding:var(--space-4); border:1px solid var(--border); border-radius:18px; background:var(--bg-soft); cursor:pointer; transition:border-color 160ms ease,transform 160ms ease,box-shadow 160ms ease; }
      .result-card:hover { transform:translateY(-1px); border-color:rgba(47,92,255,.16); box-shadow:var(--shadow-sm); } .result-card.is-active { border-color:rgba(47,92,255,.24); background:var(--accent-soft); box-shadow:var(--shadow-sm); }
      .result-card__head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); } .result-card__title { font-size:var(--text-md); font-weight:800; } .result-card__meta { color:var(--text-secondary); font-size:var(--text-sm); }
      .result-card__actions { display:flex; flex-wrap:wrap; gap:var(--space-2); }
      .map-frame { min-height:520px; border-radius:20px; overflow:hidden; background:linear-gradient(180deg,#f8fafc 0%,#eef2f8 100%); } #lawFirmMap { width:100%; height:520px; }
      .map-fallback,.empty-state { display:grid; place-items:center; padding:var(--space-6); color:var(--text-secondary); text-align:center; } .map-fallback { min-height:520px; } .empty-state { min-height:220px; border:1px dashed var(--border); border-radius:18px; }
      .beta-note { border:1px solid rgba(47,92,255,.14); border-radius:16px; background:var(--accent-soft); color:var(--text-secondary); padding:14px 16px; font-size:var(--text-sm); }
      .token-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:var(--space-5); } .token-card,.timeline-card { display:grid; gap:var(--space-4); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); box-shadow:var(--shadow-sm); padding:var(--space-6); }
      .token-code { display:flex; align-items:center; justify-content:center; min-height:64px; padding:0 16px; border:1px solid rgba(47,92,255,.16); border-radius:18px; background:var(--accent-soft); color:var(--accent); font-family:var(--font-mono); font-size:1.2rem; font-weight:800; letter-spacing:.24em; }
      .timeline { display:grid; gap:var(--space-4); } .timeline-item { position:relative; display:grid; gap:6px; padding-left:24px; } .timeline-item::before { content:""; position:absolute; left:0; top:6px; width:10px; height:10px; border-radius:50%; background:var(--accent); } .timeline-item::after { content:""; position:absolute; left:4px; top:20px; bottom:-18px; width:2px; background:rgba(47,92,255,.18); } .timeline-item:last-child::after { display:none; }
      .selection-item { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); padding:12px 0; border-bottom:1px solid var(--border); } .selection-item:last-child { border-bottom:0; }
      .hero-actions,.hero-block__actions,.trust-strip,.badge-row { display:flex; flex-wrap:wrap; } .card-grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); } .card-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); } .card-grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); } .card-link { color:inherit; text-decoration:none; } .card-link:hover { color:inherit; text-decoration:none; }
      .feature-card { display:grid; gap:var(--space-3); height:100%; } .feature-card__icon { width:52px; height:52px; display:inline-flex; align-items:center; justify-content:center; border-radius:18px; background:var(--accent-soft); color:var(--accent); } .feature-card__icon svg,.trust-item__icon svg { width:22px; height:22px; } .feature-card__meta { margin-top:auto; padding-top:var(--space-2); color:var(--accent); font-size:var(--text-sm); font-weight:700; }
      .trust-strip { padding:var(--space-5) var(--space-6); border:1px solid var(--border); border-radius:var(--radius-lg); background:rgba(255,255,255,.74); } .trust-item { display:inline-flex; align-items:center; gap:var(--space-3); color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; } .trust-item__icon { width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:12px; background:var(--accent-soft); color:var(--accent); }
      .steps-row { grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); } .step-item { display:grid; gap:var(--space-3); align-content:start; padding:var(--space-5); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--panel); box-shadow:var(--shadow-sm); } .step-item__number { width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; border:1px solid rgba(47,92,255,.16); background:var(--accent-soft); color:var(--accent); font-weight:800; }
      .section-heading { display:grid; gap:var(--space-4); max-width:760px; margin-bottom:clamp(28px,4vw,44px); }
      .section-heading--center { margin-left:auto; margin-right:auto; text-align:center; }
      .section-heading__eyebrow { justify-self:start; }
      .section-heading--center .section-heading__eyebrow { justify-self:center; }
      .landing-section__title { font-size:clamp(2rem,4vw,3.15rem); line-height:1.08; letter-spacing:-.05em; }
      .landing-section__lead { color:var(--text-secondary); font-size:var(--text-lg); line-height:1.72; }
      .role-page { --role-shell:min(1180px,calc(100vw - 48px)); --role-accent-rgb:47,92,255; --role-accent-soft:rgba(var(--role-accent-rgb),.10); --role-accent-glow:rgba(var(--role-accent-rgb),.14); }
      .role-page--clients { --role-accent-rgb:36,160,128; }
      .role-page--providers { --role-accent-rgb:47,92,255; }
      .role-page--firms { --role-accent-rgb:198,126,22; }
      .role-page .role-shell { width:var(--role-shell); margin:0 auto; }
      .role-page .role-section { position:relative; padding:clamp(68px,8vw,104px) 0; }
      .law-firm-console-page { background:linear-gradient(180deg,#fbfaf6 0%,#f4f1e8 26%,#efece4 100%); }
      .law-firm-console-header { position:sticky; top:0; z-index:62; border-bottom:1px solid rgba(207,199,182,.88); background:rgba(250,248,242,.92); backdrop-filter:blur(18px); }
      .law-firm-console-header__shell { max-width:1440px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; gap:20px; }
      .law-firm-console-header__body { flex:1; min-width:0; display:flex; align-items:center; justify-content:space-between; gap:16px; }
      .law-firm-console-header__identity,.law-firm-console-header__actions,.law-firm-console-header__titles,.law-firm-inline-actions,.law-firm-inline-form { display:flex; align-items:center; gap:12px; }
      .law-firm-console-header__titles { min-width:0; gap:8px; flex-wrap:wrap; color:#4f5b6e; font-size:var(--text-sm); }
      .law-firm-console-header__titles strong { color:#172033; font-size:var(--text-base); }
      .law-firm-console-header__eyebrow,.law-firm-section-head__eyebrow,.law-firm-panel__eyebrow,.law-firm-rail-panel__eyebrow { display:inline-flex; align-items:center; min-height:28px; width:max-content; padding:0 10px; border-radius:var(--radius-pill); background:rgba(190,151,86,.12); color:#172033; font-size:var(--text-xs); font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
      .law-firm-console-header__form,.law-firm-inline-form { margin:0; }
      .law-firm-console { max-width:1440px; margin:0 auto; padding:24px; display:grid; grid-template-columns:220px minmax(0,1fr); gap:24px; }
      .law-firm-console__rail { position:sticky; top:88px; align-self:start; display:grid; gap:16px; }
      .law-firm-rail,.law-firm-rail-panel,.law-firm-panel,.law-firm-signal-card,.law-firm-empty-state { border:1px solid rgba(207,199,182,.92); border-radius:22px; background:rgba(255,255,252,.92); box-shadow:0 14px 36px rgba(38,43,56,.06); }
      .law-firm-rail { display:grid; gap:4px; padding:10px; }
      .law-firm-rail__link { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:0 14px; border-radius:16px; color:#556172; font-size:var(--text-sm); font-weight:700; text-decoration:none; }
      .law-firm-rail__link:hover { background:rgba(28,44,77,.06); color:#172033; text-decoration:none; }
      .law-firm-rail__link.is-active { background:#172033; color:#fff; }
      .law-firm-rail-panel { display:grid; gap:12px; padding:18px; }
      .law-firm-rail-panel__metric { display:grid; gap:2px; }
      .law-firm-rail-panel__metric strong { color:#172033; font-size:1.6rem; line-height:1; }
      .law-firm-rail-panel__metric span { color:#6a7485; font-size:var(--text-sm); }
      .law-firm-console__main,.law-firm-intake-grid,.law-firm-queue-grid,.law-firm-overview-grid,.law-firm-context-grid,.law-firm-workbench { display:grid; gap:16px; }
      .law-firm-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding:10px 4px 0; }
      .law-firm-section-head__copy { display:grid; gap:8px; max-width:760px; }
      .law-firm-section-head__copy h1 { font-size:clamp(2rem,3vw,2.7rem); line-height:1.02; letter-spacing:-.05em; }
      .law-firm-section-head__copy p { color:#5d6878; font-size:1rem; line-height:1.65; }
      .law-firm-subnav { display:flex; gap:10px; flex-wrap:wrap; }
      .law-firm-subnav__pill { display:inline-flex; align-items:center; min-height:42px; padding:0 16px; border:1px solid rgba(207,199,182,.9); border-radius:var(--radius-pill); background:rgba(255,255,252,.75); color:#5c6778; font-size:var(--text-sm); font-weight:700; text-decoration:none; }
      .law-firm-subnav__pill:hover { background:rgba(28,44,77,.06); color:#172033; text-decoration:none; }
      .law-firm-subnav__pill.is-active { background:rgba(190,151,86,.14); border-color:rgba(190,151,86,.28); color:#172033; }
      .law-firm-status { display:inline-flex; align-items:center; min-height:34px; padding:0 12px; border:1px solid rgba(207,199,182,.92); border-radius:var(--radius-pill); background:rgba(255,255,252,.72); color:#172033; font-size:var(--text-xs); font-weight:800; letter-spacing:.03em; text-transform:uppercase; }
      .law-firm-status--warning { background:rgba(190,151,86,.18); border-color:rgba(190,151,86,.28); }
      .law-firm-panel,.law-firm-empty-state { padding:20px; }
      .law-firm-panel--embedded { padding:18px; background:#faf8f1; box-shadow:none; }
      .law-firm-panel__head,.law-firm-panel__head--stack,.law-firm-billing-row { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
      .law-firm-panel__head--stack { flex-direction:column; align-items:flex-start; }
      .law-firm-panel__lead,.law-firm-empty-inline,.law-firm-queue-row span,.law-firm-billing-row p,.law-firm-roster__item span { color:#657183; font-size:var(--text-sm); }
      .law-firm-panel__head h2,.law-firm-empty-state h2 { font-size:var(--text-xl); line-height:1.08; }
      .law-firm-overview-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
      .law-firm-intake-grid,.law-firm-queue-grid,.law-firm-context-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .law-firm-workbench { grid-template-columns:300px minmax(0,1fr) 280px; align-items:start; }
      .law-firm-signal-card { display:grid; gap:10px; padding:18px; }
      .law-firm-signal-card__label { color:#667286; font-size:var(--text-xs); font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
      .law-firm-signal-card strong { color:#172033; font-size:2rem; line-height:1; }
      .law-firm-form-grid,.law-firm-context-stack { display:grid; gap:14px; }
      .law-firm-form-row { display:grid; gap:14px; }
      .law-firm-form-row--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .law-firm-template-list,.law-firm-roster,.law-firm-simple-list { display:grid; gap:10px; }
      .law-firm-checklist { display:flex; flex-wrap:wrap; gap:8px; }
      .law-firm-checklist__item { display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border-radius:var(--radius-pill); background:#f3efe3; color:#172033; font-size:var(--text-xs); font-weight:700; }
      .law-firm-missing-list { display:grid; gap:10px; margin-top:10px; }
      .law-firm-missing-list__row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid rgba(220,214,201,.92); border-radius:16px; background:#fcfbf7; }
      .law-firm-roster__item,.law-firm-queue-row,.law-firm-template-list__item,.law-firm-billing-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 16px; border:1px solid rgba(220,214,201,.92); border-radius:18px; background:#fcfbf7; color:#172033; text-decoration:none; }
      .law-firm-roster__item,.law-firm-template-list__item { display:grid; gap:8px; }
      .law-firm-roster__item:hover,.law-firm-queue-row:hover,.law-firm-template-list__item:hover { border-color:rgba(23,32,51,.18); text-decoration:none; }
      .law-firm-roster__item.is-active,.law-firm-template-list__item.is-active,.law-firm-queue-row.is-emphasized { border-color:rgba(190,151,86,.34); background:#f6f1e5; }
      .law-firm-billing-row { grid-template-columns:minmax(0,1.1fr) minmax(120px,.7fr) minmax(110px,.6fr) minmax(90px,.5fr) auto; }
      .law-firm-inline-actions--wrap { flex-wrap:wrap; }
      .law-firm-inline-form input[type="text"] { min-width:180px; }
      .law-firm-context-note { padding:14px 16px; border:1px solid rgba(220,214,201,.9); border-radius:18px; background:#faf8f1; }
      .law-firm-context-note strong { display:block; margin-bottom:6px; color:#172033; font-size:var(--text-sm); }
      .law-firm-empty-state { display:grid; gap:10px; min-height:240px; place-content:center; text-align:center; }
      .law-firm-empty-inline { margin:0; }
      .law-firm-panel--span-2 { grid-column:1 / -1; }
      @media (max-width: 1180px) {
        .law-firm-console { grid-template-columns:1fr; }
        .law-firm-console__rail { position:static; }
        .law-firm-workbench { grid-template-columns:1fr; }
      }
      @media (max-width: 920px) {
        .law-firm-overview-grid,.law-firm-intake-grid,.law-firm-queue-grid,.law-firm-context-grid { grid-template-columns:1fr; }
        .law-firm-billing-row { grid-template-columns:1fr; align-items:flex-start; }
      }
      @media (max-width: 720px) {
        .law-firm-console-header__shell,.law-firm-console { padding:16px; }
        .law-firm-console-header__body,.law-firm-console-header__actions,.law-firm-form-row--2 { display:grid; }
        .law-firm-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      }
      .role-page .role-section--tight { padding:40px 0; }
      .role-page .role-section--soft { background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(239,244,249,.78)); }
      .role-page .role-section--contrast { background:radial-gradient(circle at top right,rgba(var(--role-accent-rgb),.11),transparent 28%),linear-gradient(180deg,#10192d,#172440); color:#e6ecf8; }
      .role-page .role-section--contrast h2,.role-page .role-section--contrast h3,.role-page .role-section--contrast strong { color:#fff; }
      .role-page .role-section--contrast .landing-section__lead,.role-page .role-section--contrast .role-final-panel__lead,.role-page .role-section--contrast .role-final-panel__support { color:rgba(230,236,248,.8); }
      .role-page .role-hero { overflow:clip; padding:clamp(40px,6vw,72px) 0 32px; }
      .role-page .role-hero::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 12% 16%,rgba(var(--role-accent-rgb),.14),transparent 28%),radial-gradient(circle at 86% 8%,rgba(23,32,51,.08),transparent 32%); pointer-events:none; }
      .role-page .role-hero__grid,.role-page .role-layout--split,.role-page .role-final-panel__grid { position:relative; z-index:1; display:grid; gap:clamp(24px,4vw,44px); grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr); align-items:start; }
      .role-page .role-hero__copy { display:grid; gap:var(--space-5); }
      .role-page .role-hero__headline { font-size:clamp(2.8rem,6vw,4.9rem); line-height:.98; letter-spacing:-.06em; max-width:12ch; }
      .role-page .role-hero__lead,.role-page .role-note-panel__body,.role-page .role-checklist__item span,.role-page .role-proof-card__detail,.role-page .role-stat__detail { color:var(--text-secondary); font-size:var(--text-lg); line-height:1.68; }
      .role-page .role-hero__actions,.role-page .role-final-panel__actions,.role-page .role-search-form { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
      .role-page .role-search-form { align-items:end; }
      .role-page .role-search-form__field { flex:1 1 260px; min-width:0; }
      .role-page .role-hero__support { color:var(--text-secondary); font-size:var(--text-sm); font-weight:700; }
      .role-page .role-hero__aside,.role-page .role-note-panel,.role-page .role-proof-card,.role-page .role-stat,.role-page .role-visual-panel { border:1px solid rgba(196,207,222,.9); border-radius:28px; background:rgba(255,255,255,.92); box-shadow:var(--shadow-sm); }
      .role-page .role-hero__aside { display:grid; gap:16px; padding:24px; background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(238,243,250,.94)); box-shadow:0 24px 48px rgba(23,32,51,.10); }
      .role-page .role-board,.role-page .role-visual-list,.role-page .role-checklist { display:grid; gap:12px; }
      .role-page .role-board__header,.role-page .role-visual-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
      .role-page .role-board__header strong,.role-page .role-visual-row strong { font-size:var(--text-sm); line-height:1.3; }
      .role-page .role-board__chip,.role-page .role-pill { display:inline-flex; align-items:center; min-height:28px; padding:0 10px; border-radius:var(--radius-pill); background:var(--role-accent-soft); color:rgb(var(--role-accent-rgb)); font-size:var(--text-xs); font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
      .role-page .role-board__card,.role-page .role-visual-row,.role-page .role-checklist__item { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:14px 16px; border:1px solid rgba(216,224,235,.9); border-radius:18px; background:rgba(243,245,248,.78); }
      .role-page .role-board__card > div,.role-page .role-visual-row > div,.role-page .role-checklist__item > div { display:grid; gap:6px; min-width:0; }
      .role-page .role-board__card span,.role-page .role-visual-row span { color:var(--text-secondary); font-size:var(--text-sm); }
      .role-page .role-proof-grid,.role-page .role-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
      .role-page .role-proof-card,.role-page .role-stat { display:grid; gap:10px; padding:20px; }
      .role-page .role-proof-card__value,.role-page .role-stat__value { font-size:clamp(1.4rem,3vw,2.1rem); line-height:1; letter-spacing:-.05em; }
      .role-page .role-proof-card__label,.role-page .role-stat__label { font-size:var(--text-sm); font-weight:800; color:var(--text); }
      .role-page .role-panel-grid { display:grid; gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); }
      .role-page .role-visual-panel { display:grid; gap:16px; padding:24px; }
      .role-page .role-visual-panel__title { font-size:1.35rem; line-height:1.12; letter-spacing:-.04em; }
      .role-page .role-mini-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
      .role-page .role-mini-card { min-height:92px; padding:14px; border:1px solid rgba(216,224,235,.9); border-radius:18px; background:rgba(243,245,248,.78); }
      .role-page .role-mini-card strong { display:block; font-size:var(--text-sm); line-height:1.35; }
      .role-page .role-mini-card span { display:block; margin-top:var(--space-2); color:var(--text-secondary); font-size:var(--text-xs); }
      .role-page .role-map-card { min-height:240px; border-radius:24px; background:linear-gradient(135deg,rgba(232,237,244,.90),rgba(248,250,252,.98)); position:relative; overflow:hidden; }
      .role-page .role-map-card::before,.role-page .role-map-card::after { content:""; position:absolute; border-radius:999px; background:rgba(23,32,51,.08); }
      .role-page .role-map-card::before { width:180%; height:2px; top:48%; left:-36%; transform:rotate(12deg); }
      .role-page .role-map-card::after { width:150%; height:2px; top:58%; left:-24%; transform:rotate(-18deg); }
      .role-page .role-map-pin { position:absolute; width:16px; height:16px; border-radius:50% 50% 50% 0; transform:rotate(-45deg); background:rgb(var(--role-accent-rgb)); box-shadow:0 8px 18px rgba(var(--role-accent-rgb),.22); }
      .role-page .role-map-pin::after { content:""; position:absolute; inset:4px; border-radius:50%; background:#fff; }
      .role-page .role-note-panel { display:grid; gap:16px; padding:24px; background:rgba(19,28,48,.44); border-color:rgba(134,154,196,.22); box-shadow:none; }
      .role-page .role-note-panel__title { font-size:clamp(1.75rem,3vw,2.4rem); line-height:1.08; letter-spacing:-.05em; color:#fff; }
      .role-page .role-checklist__item { padding:18px 20px; }
      .role-page .role-checklist__item strong { display:block; font-size:clamp(1.02rem,1.4vw,1.14rem); line-height:1.3; letter-spacing:-.02em; }
      .role-page .role-checklist__item span { display:block; font-size:var(--text-base); line-height:1.7; color:rgba(230,236,248,.9); }
      .role-page .role-section--contrast .role-note-panel { background:linear-gradient(180deg,rgba(16,26,46,.86),rgba(22,34,58,.78)); border-color:rgba(118,139,181,.28); box-shadow:0 24px 48px rgba(7,12,25,.22); }
      .role-page .role-section--contrast .role-note-panel__body { color:rgba(231,237,248,.86); }
      .role-page .role-section--contrast .role-checklist__item { border-color:rgba(136,154,184,.34); background:linear-gradient(180deg,rgba(223,229,239,.94),rgba(207,216,231,.90)); box-shadow:inset 0 1px 0 rgba(255,255,255,.38); }
      .role-page .role-section--contrast .role-checklist__item strong { color:#17233b; }
      .role-page .role-section--contrast .role-checklist__item span { color:rgba(47,63,93,.94); }
      .role-page .role-section--contrast .role-visual-panel { border-color:rgba(157,174,204,.22); background:linear-gradient(180deg,rgba(228,234,244,.93),rgba(214,223,238,.88)); box-shadow:0 24px 48px rgba(7,12,25,.18); }
      .role-page .role-section--contrast .role-visual-panel h3,.role-page .role-section--contrast .role-visual-panel strong { color:#152039; }
      .role-page .role-section--contrast .role-visual-row { border-color:rgba(152,168,197,.42); background:rgba(243,247,253,.78); box-shadow:inset 0 1px 0 rgba(255,255,255,.42); }
      .role-page .role-section--contrast .role-visual-panel__title { color:#152039; }
      .role-page .role-section--contrast .role-visual-row span { color:rgba(43,58,86,.96); }
      .role-page .role-section--contrast .role-pill { border:1px solid rgba(var(--role-accent-rgb),.18); background:rgba(var(--role-accent-rgb),.12); color:rgb(var(--role-accent-rgb)); box-shadow:none; }
      .role-page .role-final-panel { padding:clamp(28px,4vw,44px); border:1px solid rgba(134,154,196,.22); border-radius:32px; background:rgba(255,255,255,.06); }
      .role-page .role-final-panel__copy { display:grid; gap:16px; max-width:680px; }
      .role-page .role-final-panel__title { font-size:clamp(2rem,4vw,3rem); line-height:1.04; letter-spacing:-.05em; }
      .role-page .role-final-panel__lead { font-size:var(--text-lg); line-height:1.68; }
      .role-page .role-final-panel__support { font-size:var(--text-sm); font-weight:700; }
      .role-page footer.site-footer { margin-top:0; padding-top:0; border-top:0; }
      @media (max-width: 1100px) { .role-page .role-hero__grid,.role-page .role-layout--split,.role-page .role-final-panel__grid,.role-page .role-proof-grid,.role-page .role-stat-grid,.role-page .role-panel-grid { grid-template-columns:1fr 1fr; } .role-page .role-hero__grid,.role-page .role-layout--split,.role-page .role-final-panel__grid { grid-template-columns:1fr; } }
      footer.site-footer { margin-top:var(--space-8); padding:var(--space-6) var(--space-7) var(--space-8); border-top:1px solid rgba(216,224,235,.9); color:var(--text-tertiary); font-size:var(--text-sm); text-align:center; }
      @media (max-width: 960px) { main.container { padding:var(--space-6); } .grid2,.field-grid-3,.card-grid--2,.card-grid--3,.card-grid--4,.flow-steps,.faq-grid,.hero-split,.search-layout,.token-grid,.workspace-review-grid { grid-template-columns:1fr; } }
      @media (max-width: 920px) {
        .public-header { padding:var(--space-4); }
        .public-header__shell { flex-wrap:wrap; }
        .public-nav-toggle { display:inline-flex; align-items:center; justify-content:center; margin-left:auto; }
        .public-nav-panel { display:none; width:100%; flex-direction:column; align-items:stretch; padding-top:var(--space-4); }
        .public-nav-panel[data-open="true"] { display:flex; }
        .public-nav-links,.public-nav-actions { width:100%; flex-direction:column; align-items:stretch; }
        .public-nav-actions { margin-left:0; }
        .public-nav-links .nav-link,.public-nav-actions .nav-link { width:100%; justify-content:flex-start; }
        .public-nav-actions .btn { width:100%; justify-content:center; text-align:center; }
        .workspace-header { padding:var(--space-4); }
        .workspace-header__shell { flex-wrap:wrap; }
        .workspace-header__body { width:100%; }
        .workspace-header__context,.workspace-header__menu,.workspace-header__nav,.workspace-header__actions { width:100%; justify-content:flex-start; }
        .workspace-header__menu,
        .workspace-header__nav,.workspace-header__actions { flex-direction:column; align-items:stretch; }
        .workspace-header__context { flex-wrap:wrap; }
        .workspace-link,.workspace-header__actions .nav-link { width:100%; justify-content:flex-start; }
        .workspace-header__actions .btn,.workspace-header__actions .btn-sm { width:100%; justify-content:center; text-align:center; }
        .auth-header { padding:var(--space-4); }
        .auth-header__shell { flex-wrap:wrap; }
        .auth-header__actions { width:100%; }
        .auth-shell__grid { grid-template-columns:1fr; }
      }
      @media (max-width: 820px) { header.topbar { padding:var(--space-4); align-items:flex-start; } .topbar-nav { width:100%; } }
      @media (max-width: 820px) { .role-page { --role-shell:min(100vw - 32px,1180px); } .role-page .role-proof-grid,.role-page .role-stat-grid,.role-page .role-panel-grid,.role-page .role-mini-grid { grid-template-columns:1fr; } }
      @media (max-width: 560px) { header.topbar { min-height:auto; gap:var(--space-3); } .brand-title { font-size:1.45rem; } .auth-header { padding:var(--space-4); } .auth-header__shell { align-items:flex-start; flex-wrap:wrap; } .auth-header__actions { width:100%; justify-content:space-between; gap:var(--space-3); } .auth-header__back-link { flex:1 1 0; padding-left:0; } .auth-header__nav-action { flex:0 0 auto; } main.container { padding:var(--space-5); } .workspace-review-shell { padding:var(--space-5) var(--space-5) 0; } .workspace-review-form__actions .btn-sm { width:100%; } .card,.section-card,.feature-card,.metric,.review-card,.engagement-card,.board-card,.dashboard-shell { padding:var(--space-5); } .hero-block__headline { font-size:clamp(2rem,9vw,2.6rem); } .hero-block__subhead,.section-lead,.landing-section__lead,.role-page .role-hero__lead,.role-page .role-final-panel__lead { font-size:var(--text-base); } .flow-step { justify-content:flex-start; } .role-page { --role-shell:min(100vw - 24px,1180px); } .role-page .role-section { padding:56px 0; } .role-page .role-hero { padding-top:32px; } .role-page .role-hero__headline { font-size:clamp(2.5rem,13vw,3.7rem); } .role-page .role-hero__actions,.role-page .role-final-panel__actions,.role-page .role-search-form { flex-direction:column; align-items:stretch; } .role-page .role-hero__actions a,.role-page .role-final-panel__actions a,.role-page .role-search-form__field { width:100%; } .role-page .role-search-form__field { flex:0 0 auto; } }
