/* Nomos Engine legal operations system */
/* Governing reference: Carbon structure; Linear luminance; exact Geist metrics. */
:root{
  --nomos-canvas:#0d0f12;--nomos-sidebar:#12100e;--nomos-surface:#15181c;
  --nomos-raised:#1c2025;--nomos-raised-2:#252b31;--nomos-border:#343a42;
  --nomos-border-strong:#4b5b6d;--nomos-ivy:#52677e;--nomos-moss:#6ea8e6;
  --nomos-focus:#9ac7ef;--nomos-text:#f0eee9;--nomos-muted:#a2a8af;--nomos-signal:#6ea8e6;--nomos-official:#8fc5ff;--nomos-botanical:#789276;--nomos-judicial:#6ea8e6;--nomos-slate:#1f2935;--nomos-walnut:#17120f;--nomos-brass:#b4945a;--nomos-brass-bright:#d2b06b;--nomos-action:#338bd5;
  --nomos-danger:#e18080;--nomos-warning:#d7a85a;--nomos-success:#79b68b;
  --font-brand:Charter,"Iowan Old Style",Palatino,Georgia,serif;
  --font-display:"Geist","Helvetica Neue",sans-serif;
  --font-body:"Geist","Helvetica Neue",sans-serif;
  --font-mono-legal:"Geist Mono",Consolas,monospace;
  --font-mono-technical:"Geist Mono",Consolas,monospace;
  --font-friendly:"Geist","Helvetica Neue",sans-serif;
  --font-tribunal:"Geist","Helvetica Neue",sans-serif;
  --bg:var(--nomos-canvas);--panel:var(--nomos-surface);--surface:var(--nomos-surface);
  --surface2:var(--nomos-raised);--line:var(--nomos-border);--text:var(--nomos-text);
  --muted:var(--nomos-muted);--accent:var(--nomos-moss);--forest:var(--nomos-sidebar);
  --forest-2:var(--nomos-raised);--gold:var(--nomos-moss);--gold-soft:#283126;
  --green:var(--nomos-success);--amber:var(--nomos-warning);--red:var(--nomos-danger);
  --shadow:none;color-scheme:dark
}
:root[data-theme="light"]{
  --nomos-canvas:#f3f5f7;--nomos-sidebar:#e8edf2;--nomos-surface:#ffffff;
  --nomos-raised:#edf1f5;--nomos-raised-2:#e2e8ef;--nomos-border:#c7d0da;
  --nomos-border-strong:#9eacbb;--nomos-ivy:#536b84;--nomos-moss:#1769aa;
  --nomos-focus:#075985;--nomos-text:#111827;--nomos-muted:#556273;
  --nomos-signal:#1769aa;--nomos-official:#075985;--nomos-judicial:#1769aa;--nomos-slate:#dbe3eb;--nomos-action:#1769aa;--nomos-brass-bright:#8a6728;
  --nomos-danger:#a43d3d;--nomos-warning:#8a5d16;--nomos-success:#2f6f47;
  --gold-soft:#dbe8f4;color-scheme:light
}
*{box-sizing:border-box}
html,body{background:var(--nomos-canvas)}
body{margin:0;color:var(--nomos-text);font:400 14px/1.45 var(--font-body);letter-spacing:0;font-feature-settings:"liga" 1}
button,input,select,textarea{font:inherit}
button{touch-action:manipulation}
.lead-card{touch-action:pan-y}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:0;box-shadow:0 0 0 2px var(--nomos-canvas),0 0 0 4px var(--nomos-focus)}
.metric strong,.billing-stopwatch,.billing-entry-duration,.invoice-time-choice,.lead{font-variant-numeric:tabular-nums}
.citation,.legal-pre{font-family:var(--font-mono-legal);font-variant-ligatures:contextual common-ligatures}
pre,code,.billing-stopwatch,.billing-entry-duration{font-family:var(--font-mono-technical);font-variant-ligatures:contextual common-ligatures}

/* Brand: botanical character belongs here and nowhere else. */
.brand-lockup{display:flex;align-items:center;gap:9px;min-width:0}
.wordmark{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.025em}
.wordmark-nomos{font:600 21px/1 var(--font-brand);color:var(--nomos-focus)}
.wordmark-engine{font:500 13px/1 var(--font-body);letter-spacing:.025em;color:var(--nomos-muted);margin-left:2px}
.wordmark-vine{width:23px;height:25px;flex:0 0 auto;overflow:visible}
.wordmark-vine path{stroke:var(--nomos-moss);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;fill:none}
.wordmark-vine path+path{fill:var(--nomos-ivy);stroke:var(--nomos-moss);stroke-width:1}
.brand-lockup.compact{height:auto;padding:0;border:0}
.brand-lockup.compact .wordmark-nomos{font-size:19px}
.brand-lockup.compact .wordmark-engine{font-size:12px}
.brand-lockup.compact .wordmark-vine{width:20px;height:22px}

/* Application frame */
.shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh;background:var(--nomos-canvas)}
.side{position:sticky;top:0;height:100vh;padding:0;display:flex;flex-direction:column;background:var(--nomos-sidebar);border-right:1px solid var(--nomos-border);color:var(--nomos-text);z-index:10}
.side>.brand{height:58px;padding:0 16px;border-bottom:1px solid var(--nomos-border)}
.nav{flex:1;min-height:0;overflow-y:auto;padding:10px 8px}
.nav button{position:relative;width:100%;min-height:34px;margin:1px 0;padding:7px 10px;text-align:left;color:#929d92;background:transparent;border:1px solid transparent;border-radius:2px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color 110ms ease,color 110ms ease,border-color 110ms ease}
.nav button:hover{color:var(--nomos-text);background:var(--nomos-surface)}
.nav button:active{transform:translateY(1px)}
.nav button.active{color:var(--nomos-text);background:#182019;border-color:#273027;font-weight:500}
.nav button.active:before{content:"";position:absolute;left:-1px;top:7px;bottom:7px;width:2px;border-radius:0;background:var(--nomos-moss)}
.legal{position:static;margin:0 17px 16px;padding-top:12px;border-top:1px solid var(--nomos-border);color:#6f796f;font-size:10px;line-height:1.55}
.main{width:100%;max-width:none;margin:0;padding:20px 24px 36px;background:var(--nomos-canvas)}
.top{max-width:1480px;margin:0 auto 16px;padding-bottom:14px;border-bottom:1px solid var(--nomos-border)}
.top h1,.billing-heading h2,.invoice-heading h2{margin:0;color:var(--nomos-text);font:500 28px/1.15 var(--font-display);letter-spacing:-1.12px}
h1,h2,h3{color:var(--nomos-text)}
h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.48px}
h3{font-weight:600}
.sub{margin-top:5px;color:var(--nomos-muted);font-size:13px;max-width:72ch}
.muted{color:var(--nomos-muted)}
.auth{align-items:center}.auth:before{display:none}

/* Inputs and actions */
.auth input,.field,input,select,textarea{min-height:36px;padding:8px 10px;background:#101411;border:1px solid var(--nomos-border);border-radius:2px;color:var(--nomos-text);box-shadow:none;outline:0}
.auth input{width:230px}
textarea{line-height:1.55;resize:vertical}
.auth input:hover,.field:hover,input:hover,select:hover,textarea:hover{border-color:var(--nomos-border-strong)}
.auth input:focus,.field:focus,input:focus,select:focus,textarea:focus{border-color:var(--nomos-focus)}
input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}
.primary,.ghost,.danger,.mini{min-height:36px;padding:7px 12px;border:1px solid var(--nomos-border);border-radius:2px;color:var(--nomos-text);font-size:14px;font-weight:500;box-shadow:none;cursor:pointer;transition:background-color 110ms ease,border-color 110ms ease,color 110ms ease,transform 80ms ease}
.primary{background:var(--nomos-moss);border-color:var(--nomos-moss);color:#10150f}
.primary:hover{background:#94a982;border-color:#94a982}
.ghost,.mini{background:var(--nomos-raised);border-color:var(--nomos-border)}
.ghost:hover,.mini:hover{background:var(--nomos-raised-2);border-color:var(--nomos-border-strong)}
.danger{background:#6a3332;border-color:#8d4e4b;color:#f5e8e6}
.danger:hover{background:#78403d}
.primary:active,.ghost:active,.mini:active,.danger:active{transform:translateY(1px)}
.primary:disabled,.ghost:disabled,.mini:disabled,.danger:disabled{opacity:.48;cursor:not-allowed;transform:none}
.persona-switch .mini.active{border-color:var(--nomos-moss);color:var(--nomos-focus);background:#20291f}

/* Dense data surfaces */
.metrics,.board,.grid,.results,.toolbar{max-width:1480px;margin-left:auto;margin-right:auto}
.metrics{gap:1px;margin-bottom:14px;background:var(--nomos-border)}
.metric,.card,.column,.builder-panel,.lead{background:var(--nomos-surface);border:1px solid var(--nomos-border);border-radius:2px;color:var(--nomos-text);box-shadow:none}
.metric{min-height:76px;padding:12px 14px;border:0;border-radius:0}
.metric strong{font:600 24px/1.1 var(--font-display);letter-spacing:-.96px;color:var(--nomos-text)}
.label,.form-group label{font-family:var(--font-mono-technical);color:#8d988d;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.055em}
.card{padding:16px}.column{padding:9px;background:#111512}.column h3{color:#abb4ab;font:500 11px/1.4 var(--font-mono-technical);letter-spacing:.05em;text-transform:uppercase}
.lead{background:var(--nomos-raised);border-color:#2c342d}.lead:hover{border-color:var(--nomos-border-strong)}
.pill,.badge{border:1px solid var(--nomos-border);border-radius:999px;background:var(--nomos-raised);color:#aab3aa;font-size:10px;font-weight:600;letter-spacing:.035em}
.empty{padding:20px;border:1px dashed var(--nomos-border);border-radius:2px;background:transparent;color:var(--nomos-muted)}
.citation,.public-link{color:#a9bf92;text-underline-offset:3px}
.matter-ws-privacy,.lead-flags,.builder-note{border-radius:2px;box-shadow:none}
.matter-ws-privacy{background:#152018;border-color:#324b36;color:#bac7ba}
.matter-dropzone{border-radius:2px;background:#101411}
.matter-dropzone.drag{border-color:var(--nomos-focus);background:#192219}
.billing-stopwatch{font-family:var(--font-mono-technical);color:var(--nomos-text)}
.billing-entry-duration{font-family:var(--font-mono-technical);color:#b8c6b7}
.invoice-time-choice,.matter-doc-row,.section-editor,.publish-card{border-radius:2px}

/* Calendar */
.calendar-heading,.calendar-month-title,.acct-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.calendar-heading{max-width:1480px;margin:0 auto 14px}.calendar-heading h2{margin:2px 0 4px}.calendar-controls{display:flex;gap:6px}
.calendar-layout{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}.calendar-sidebar{display:grid;gap:14px}.calendar-month{padding:0;overflow:hidden}.calendar-month-title{padding:14px 16px;border-bottom:1px solid var(--nomos-border)}.calendar-month-title h3,.calendar-sidebar h3{margin:3px 0 0}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{background:var(--nomos-raised);border-bottom:1px solid var(--nomos-border)}.calendar-weekdays span{padding:8px;text-align:center;font:500 10px/1.3 var(--font-mono-technical);text-transform:uppercase;letter-spacing:.05em;color:var(--nomos-muted)}
.calendar-day{min-width:0;min-height:112px;padding:7px;text-align:left;border:0;border-right:1px solid var(--nomos-border);border-bottom:1px solid var(--nomos-border);background:var(--nomos-surface);color:var(--nomos-text);cursor:pointer}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover{background:var(--nomos-raised)}.calendar-day.outside{color:var(--nomos-muted);background:color-mix(in srgb,var(--nomos-canvas) 70%,var(--nomos-surface))}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--nomos-focus)}.calendar-day.today .calendar-day-number{display:grid;place-items:center;width:24px;height:24px;background:var(--nomos-moss);color:var(--nomos-canvas)}.calendar-day-number{display:block;margin-bottom:7px;font:600 12px/1 var(--font-mono-technical)}.calendar-day-items{display:grid;gap:4px}.calendar-chip{display:block;overflow:hidden;padding:3px 5px;white-space:nowrap;text-overflow:ellipsis;border-left:2px solid var(--nomos-moss);background:var(--nomos-raised);font-size:10px}.calendar-chip.deposition{border-color:var(--nomos-warning)}.calendar-chip.invoice{border-color:var(--nomos-danger)}.calendar-more{color:var(--nomos-muted);font-size:10px}
.calendar-agenda{display:grid;gap:1px;margin-top:12px;background:var(--nomos-border)}.calendar-agenda-item{display:grid;grid-template-columns:74px 1fr;gap:10px;padding:11px;background:var(--nomos-surface)}.calendar-agenda-item p{margin:4px 0 2px;color:var(--nomos-muted);font-size:12px}.calendar-source{align-self:start;padding:3px 5px;border:1px solid var(--nomos-border);font:500 9px/1.3 var(--font-mono-technical);text-transform:uppercase;color:var(--nomos-muted)}.calendar-source.deposition{color:var(--nomos-warning)}.calendar-source.invoice{color:var(--nomos-danger)}

/* Settings */
.acct-settings-head{padding:18px 20px;border-bottom:1px solid var(--nomos-border)}.acct-settings-head h2{margin:4px 0 0}.acct-settings-tabs{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid var(--nomos-border);background:var(--nomos-raised)}.acct-settings-tabs button{min-height:42px;padding:8px 13px;border:0;border-right:1px solid var(--nomos-border);background:transparent;color:var(--nomos-muted);white-space:nowrap;cursor:pointer}.acct-settings-tabs button.active{background:var(--nomos-surface);color:var(--nomos-text);box-shadow:inset 0 -2px var(--nomos-moss)}.acct-settings-body{min-height:430px;padding:20px}.acct-settings-body>section[hidden]{display:none}.acct-settings-body h3{margin:0 0 8px}.acct-settings-body section section{margin-top:22px;padding-top:18px;border-top:1px solid var(--nomos-border)}.acct-setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid var(--nomos-border)}.acct-setting-row p{margin:3px 0 0}.acct-setting-row input[type="checkbox"]{width:18px;height:18px;min-height:auto}.acct-theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:560px}.acct-theme-options button{min-height:70px;border:1px solid var(--nomos-border);background:var(--nomos-raised);color:var(--nomos-text);cursor:pointer}.acct-theme-options button.active{border-color:var(--nomos-focus);box-shadow:inset 0 0 0 1px var(--nomos-focus)}
.acct-ui-style-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 12px}.acct-ui-style-options button{min-height:92px;padding:13px;text-align:left;border:1px solid var(--nomos-border);background:var(--nomos-raised);color:var(--nomos-text);cursor:pointer}.acct-ui-style-options button:hover{background:var(--nomos-raised-2)}.acct-ui-style-options button.active{border-color:var(--nomos-focus);box-shadow:inset 0 0 0 1px var(--nomos-focus)}.acct-ui-style-options strong small{display:block}.acct-ui-style-options small{margin-top:6px;color:var(--nomos-muted);line-height:1.35}

/* Login and account access */
.login-panel{position:fixed;inset:0;display:grid;grid-template-columns:minmax(0,410px) minmax(0,330px);align-items:stretch;align-content:center;justify-content:center;gap:0;padding:24px;background:rgba(5,7,5,.94);overflow:auto;z-index:50}
.login-panel[hidden]{display:none}
.login-card,#login-panel>#acctSignin{width:100%;min-height:0;margin:0!important;padding:28px 30px;background:var(--nomos-surface);border:1px solid var(--nomos-border-strong);border-radius:2px;box-shadow:0 22px 48px rgba(0,0,0,.38)}
.login-card{border-right:0}
#login-panel>#acctSignin{display:flex;flex-direction:column;justify-content:center;width:100%;box-shadow:0 22px 48px rgba(0,0,0,.38)}
.login-card .brand-lockup{height:auto;margin:0 0 22px;padding:0 0 16px;border-bottom:1px solid var(--nomos-border)}
.login-card h2,#login-panel>#acctSignin h3{margin:0 0 8px!important;font:500 22px/1.2 var(--font-display);letter-spacing:-.88px}
.login-card p,#login-panel>#acctSignin p{line-height:1.55}
.login-card label{font:500 10px/1.4 var(--font-mono-technical);letter-spacing:.055em;text-transform:uppercase;color:#8d988d}
.login-card input,#login-panel>#acctSignin input{width:100%;margin-top:7px}
#login-panel>#acctSignin .form-group{margin-bottom:12px}
#login-panel>#acctSignin button{width:100%;margin-top:8px}
.legal-pre{border-radius:2px;background:#101411;border-color:var(--nomos-border)}

/* Help and feedback */
.title-with-help{gap:8px}.tab-help-toggle{width:26px;height:26px;border:1px solid var(--nomos-border-strong);border-radius:2px;background:var(--nomos-raised);color:var(--nomos-focus);font:600 12px/1 var(--font-display);box-shadow:none}
.tab-help-toggle:hover{background:var(--nomos-raised-2)}
.tab-help-bar{margin:-6px 0 20px;padding:16px;background:var(--nomos-surface);border:1px solid var(--nomos-border);border-radius:2px;box-shadow:none}
.tab-help-bar[hidden]{display:none}
.tab-help-stage{min-height:96px;margin:12px 0;padding:16px;background:var(--nomos-canvas);border:1px solid var(--nomos-border);border-radius:2px}
.tab-help-stage.playing{animation:none}.tab-help-stage.playing:after{display:none}
.tab-help-progress-track{height:3px;border-radius:0;background:var(--nomos-border)}.tab-help-progress-fill{background:var(--nomos-moss)}
.status{border-radius:2px;background:var(--nomos-raised-2);border-color:var(--nomos-border-strong);box-shadow:0 12px 32px rgba(0,0,0,.38)}

/* Legal research workspace */
.legal-corpus-workspace,#legal-rag.rag-chat-workspace,.rag-chat-shell,.rag-chat-sidebar,.rag-chat-main{border-radius:2px;background:var(--nomos-surface)}
.rag-chat-shell,.rag-chat-sidebar,.rag-chat-topbar,.rag-jurisdiction-controls,.rag-coverage{border-color:var(--nomos-border)}
.rag-chat-sidebar,.rag-chat-topbar,.rag-jurisdiction-controls,.rag-coverage{background:var(--nomos-surface)}
.rag-status-dot{background:var(--nomos-success);box-shadow:0 0 0 3px #87ad8720}
.rag-sidebar-footer strong{color:var(--nomos-focus)}
.rag-avatar{background:#1c271d;color:var(--nomos-focus);border:1px solid #3a4b39}
.rag-message.user .rag-message-body{border-radius:2px;background:var(--nomos-raised-2);border-color:var(--nomos-border)}
.rag-prompt-suggestions button{border-radius:2px;background:var(--nomos-raised);border-color:var(--nomos-border);color:var(--nomos-text)}
.rag-composer{border-radius:2px;background:#101411;border-color:var(--nomos-border)}
.rag-send{background:var(--nomos-moss);color:#10150f}

/* Voice */
.voice-toggle{right:18px;bottom:18px;width:46px;height:46px;border:1px solid var(--nomos-border-strong);border-radius:2px;background:var(--nomos-raised);color:var(--nomos-focus);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.voice-panel{border-radius:2px;background:var(--nomos-surface);border-color:var(--nomos-border-strong);box-shadow:0 18px 42px rgba(0,0,0,.45)}
.voice-actions select{border-radius:2px;background:var(--nomos-raised)}
.voice-status{color:var(--nomos-focus)}
.voice-listen{border-radius:2px}.voice-listen.listening{background:#6a3332;border-color:#8d4e4b;animation:none}

/* Website Studio: preserve workflow, remove decorative styling. */
body.studio-mode{overflow:hidden}
body.studio-mode .shell{grid-template-columns:64px minmax(0,1fr)}
body.studio-mode .side{width:64px;padding:0;overflow:hidden}
body.studio-mode .brand{height:64px;padding:0;justify-content:center}
body.studio-mode .wordmark,body.studio-mode .brand .wordmark-vine,body.studio-mode .legal{display:none}
body.studio-mode .brand:after{content:"N";display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--nomos-border-strong);color:var(--nomos-focus);font:600 17px/1 var(--font-display)}
body.studio-mode .nav{display:grid;gap:7px;padding:12px 10px;justify-items:center}
body.studio-mode .nav button{display:none}
body.studio-mode .nav button[data-view="pipeline"],body.studio-mode .nav button[data-view="website"]{display:grid;place-items:center;width:42px;height:42px;min-height:42px;margin:0;padding:0;border:1px solid var(--nomos-border);border-radius:2px;background:var(--nomos-surface);font-size:0;line-height:0;color:transparent}
body.studio-mode .nav button[data-view="pipeline"]:after{content:"N"}
body.studio-mode .nav button[data-view="website"]:after{content:"W"}
body.studio-mode .nav button[data-view="pipeline"]:after,body.studio-mode .nav button[data-view="website"]:after{font:600 15px/1 var(--font-display);color:#aab4aa}
body.studio-mode .nav button.active{background:var(--nomos-raised-2);border-color:var(--nomos-moss);box-shadow:none}
body.studio-mode .nav button.active:before{display:none}
body.studio-mode .nav button.active:after{color:var(--nomos-focus)}
body.studio-mode .main{height:100vh;padding:0;overflow:hidden}
body.studio-mode .top{display:none}
body.studio-mode #website{height:100%;display:block}
body.studio-mode #websiteRoot{height:100%}
.studio-shell{background:var(--nomos-canvas)}
.studio-inspector,.studio-scroll,.studio-actions,.preview-productbar,.publish-strip{background:var(--nomos-surface);border-color:var(--nomos-border);color:var(--nomos-text)}
.studio-productbar{background:var(--nomos-sidebar);border-color:var(--nomos-border)}
.studio-product{gap:12px}.studio-product .brand-lockup{padding:0}.studio-product-context{color:#7f8a7f;font-size:10px;white-space:nowrap}
.studio-steps{background:#101411;border-color:var(--nomos-border)}
.studio-step,.studio-step b,.studio-step.active,.studio-step.active b,.studio-callout,.template-card,.section-row,.focused-editor,.readiness-item,.device-buttons,.device-buttons button.active{border-radius:2px;box-shadow:none}
.studio-step{color:var(--nomos-muted)}.studio-step b{background:var(--nomos-raised);color:#b0b9b0}
.studio-step.active{color:var(--nomos-text);background:var(--nomos-raised-2);border-color:var(--nomos-border-strong)}
.studio-step.active b{background:var(--nomos-moss);color:#10150f}
.studio-eyebrow{color:var(--nomos-moss)}
.studio-page{font:400 14px/1.45 var(--font-friendly)}
.studio-step{font:500 14px/1.43 var(--font-friendly)}
.studio-callout{font:400 14px/1.45 var(--font-friendly)}
.studio-page h2,.template-card strong{font-family:var(--font-display);color:var(--nomos-text)}
.studio-intro,.studio-page .form-group label{color:var(--nomos-muted)}
.studio-callout{background:var(--nomos-raised);border:1px solid var(--nomos-border);border-left:2px solid var(--nomos-moss);color:#bdc5bd}
.studio-callout strong{color:var(--nomos-text)}
.corpus-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:12px 0 16px;padding:1px;background:var(--nomos-border)}
.corpus-signal{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:9px;min-width:0;padding:9px 10px;background:var(--nomos-surface)}
.corpus-signal strong{font:600 18px/1 var(--font-body);letter-spacing:-.5px;color:var(--nomos-text)}
.corpus-signal span{font:500 12px/1.25 var(--font-body);color:#c8d0c8}
.corpus-signal small{grid-column:2;font:400 10px/1.3 var(--font-mono-technical);color:var(--nomos-muted)}
.studio-actions{box-shadow:none}
.studio-actions .ghost{background:var(--nomos-raised);border-color:var(--nomos-border);color:var(--nomos-text)}
.studio-actions .studio-next{border-radius:2px;background:var(--nomos-raised-2);border-color:var(--nomos-border-strong);box-shadow:none}
.template-card,.section-row,.readiness-item{background:var(--nomos-surface);border-color:var(--nomos-border);color:var(--nomos-text)}
.template-card:hover{border-color:var(--nomos-border-strong);box-shadow:none}
.template-card.active,.section-row:hover,.section-row.active{background:var(--nomos-raised-2);border-color:var(--nomos-moss);box-shadow:none}
.template-check{border-color:var(--nomos-border-strong)}.template-card.active .template-check{border-color:var(--nomos-moss)}
.focused-editor{background:var(--nomos-raised);border-color:var(--nomos-border)}
.content-details,.review-fields details{border-color:var(--nomos-border)}
.content-details summary,.review-fields summary{color:#d1d7d1}
.readiness-item{color:#bcc5bc}.readiness-item:before{background:#402725;color:#e2a19d}.readiness-item.ok:before{background:#1c3824;color:#9dcc9b}
.studio-preview{background:#101411}.preview-productbar,.publish-strip{background:var(--nomos-surface)}
.device-buttons{background:var(--nomos-raised)}.device-buttons button{color:var(--nomos-muted)}.device-buttons button.active{background:var(--nomos-raised-2);color:var(--nomos-text);box-shadow:none}
.preview-canvas{background:#111612}.preview-canvas iframe{border-radius:0;background:#fff;box-shadow:0 0 0 1px var(--nomos-border)}

/* Law Library Tribunal — dark oak, legal volumes, and restrained brass authority. */
.shell{grid-template-columns:220px minmax(0,1fr)}.side{background:var(--nomos-sidebar);box-shadow:inset -1px 0 #2b302b}.side>.brand{height:64px;padding:0 17px;background:#0b0d0b}
.wordmark-nomos{font:700 20px/1 var(--font-display);letter-spacing:-.055em;color:#f6f8f2}.wordmark-engine{font:500 11px/1 var(--font-body);letter-spacing:.08em;color:#a6ada3}.wordmark-vine path{stroke:var(--nomos-botanical)}
.nav{padding:13px 8px}.nav button{min-height:39px;margin:1px 0;padding:8px 11px;color:#a8afa6;font-size:13px;font-weight:500;border-radius:1px}.nav button:hover{color:#fff;background:#181b18;border-color:#363c36}.nav button.active{color:#f8fff0;background:#20251d;border-color:#566247;box-shadow:none;font-weight:600}.nav button.active:before{top:7px;bottom:7px;width:3px;background:var(--nomos-signal)}.legal{color:#6f776e}
.main{padding:25px 30px 42px}.top{margin-bottom:20px;padding-bottom:17px;border-color:#363b36}.top h1,.billing-heading h2,.invoice-heading h2{font:600 32px/1.08 var(--font-display);letter-spacing:-.05em}h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.04em}h3{font-family:var(--font-body);font-weight:600}.sub{margin-top:8px;color:#a9b0a7;font-size:13px}
.metric,.card,.column,.builder-panel,.lead{border-color:#373c37;background:#141614}.metrics{background:#373c37}.metric{padding:15px 17px;background:#181b18}.metric strong{font:600 27px/1 var(--font-display)}.column{background:#101210}.lead{background:#191c19}.lead:hover{background:#222622;border-color:#596259}
.primary,.primary.mini{background:var(--nomos-signal);border-color:var(--nomos-signal);color:#11160b}.primary:hover,.primary.mini:hover{background:#d8ff87;border-color:#d8ff87}.ghost,.mini{background:#1b1e1b}.ghost:hover,.mini:hover{background:#272b27}.citation,.public-link{color:var(--nomos-official)}.label,.form-group label{color:#a9b0a7}.auth input,.field,input,select,textarea{background:#101210;border-color:#3b413b}.auth input:focus,.field:focus,input:focus,select:focus,textarea:focus{border-color:var(--nomos-signal)}
.rag-chat-shell{border-color:#3b413b;background:#0d0f0d}.rag-chat-sidebar{background:#111311}.rag-chat-main{background:#0f110f}.rag-chat-topbar{background:#171a17;border-color:#373c37}.rag-message.assistant .rag-message-body{font-family:var(--font-body);font-size:15px;line-height:1.6}.rag-composer{background:#171a17;border-color:#505850}.rag-send{background:var(--nomos-signal);color:#11160b}.rag-avatar{background:#202a16;color:#d8ff87;border-color:#526b32}.rag-status-dot{background:#8fbd6e;box-shadow:0 0 0 3px #8fbd6e20}
.calendar-day{background:#141614}.calendar-day:hover{background:#222622}.calendar-weekdays{background:#191c19}.calendar-chip{background:#252a22;border-color:var(--nomos-signal)}
.acct-settings-workspace{max-width:1480px;margin:0 auto}.acct-settings-page{min-height:calc(100vh - 150px);border-top:1px solid var(--nomos-border);border-bottom:1px solid var(--nomos-border);background:var(--nomos-canvas)}.acct-settings-head{padding:24px 0 20px}.acct-settings-head h2{margin:5px 0 0;font:600 30px/1.08 var(--font-display)}.acct-settings-tabs{padding:0;background:#151815}.acct-settings-tabs button{min-height:48px;padding:10px 17px;border-right:1px solid var(--nomos-border);font-weight:600}.acct-settings-tabs button.active{background:#20251d;color:#f8fff0;box-shadow:inset 0 -3px var(--nomos-signal)}.acct-settings-body{min-height:520px;padding:30px 0}.acct-settings-body>section{max-width:980px}.acct-settings-body h3{font-size:21px}.acct-setting-row{padding:16px 0}.acct-theme-options{max-width:760px}.acct-theme-options button{background:#191c19}.acct-theme-options button.active{border-color:var(--nomos-signal);box-shadow:inset 0 0 0 1px var(--nomos-signal)}
@media(max-width:760px){.side>.brand{height:58px}.main{padding:20px 15px 34px}.top h1,.billing-heading h2,.invoice-heading h2{font-size:27px}.nav{padding:8px}.nav button{min-height:44px}.acct-settings-head{padding-top:18px}.acct-settings-tabs{overflow-x:auto}.acct-settings-body{padding:22px 0}}

@media(max-width:1100px){.billing-grid,.invoice-grid,.calendar-layout{grid-template-columns:1fr}.calendar-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.rag-chat-shell{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:900px){.login-panel{display:flex;align-items:center;justify-content:flex-start;flex-direction:column;padding-top:28px;padding-bottom:28px}.login-card,#login-panel>#acctSignin{width:min(430px,100%);min-height:0;flex:none;justify-content:flex-start;box-shadow:none}.login-card{border-right:1px solid var(--nomos-border-strong);border-bottom:0}}
@media(max-width:820px){body.studio-mode{overflow:auto}body.studio-mode .shell{display:block}body.studio-mode .side{display:none}body.studio-mode .main{height:auto;overflow:visible}.studio-shell{height:auto;display:block}.studio-inspector{height:auto;min-height:100vh}.studio-preview{height:760px}.studio-actions{position:sticky;bottom:0}.studio-page .form-grid{grid-template-columns:1fr}}
@media(max-width:760px){
  .shell{display:block}.side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--nomos-border)}
  .side>.brand{height:56px}.legal{display:none}.nav{display:flex;overflow-x:auto;padding:7px}.nav button{width:auto;min-height:44px;white-space:nowrap;padding:10px 12px}.nav button.active:before{left:8px;right:8px;top:auto;bottom:1px;width:auto;height:2px}
  .main{padding:18px 14px 32px}.top{align-items:flex-start;flex-direction:column;padding-bottom:14px}.top h1{font-size:23px}.auth{width:100%}.auth:before{display:none}.auth input{width:100%}
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:78px}.board,.grid,.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}
  #pipeline .board{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:10px}#pipeline .column{min-width:min(88vw,360px);scroll-snap-align:start}.pipeline-stage-controls{display:grid;grid-template-columns:1fr}.pipeline-stage-controls button{width:100%;min-height:44px}
  .rag-chat-shell{display:block}.rag-chat-sidebar{border-right:0;border-bottom:1px solid var(--nomos-border)}.rag-sidebar-copy{display:none}.rag-sidebar-footer{margin-top:10px}.rag-chat-messages{max-height:none;min-height:420px;padding:24px 16px}.rag-composer-wrap{padding:10px 12px 16px}.rag-chat-topbar{padding:10px 14px}.rag-chat-topbar span{display:none}.rag-composer-meta{display:none}.rag-jurisdiction-controls{grid-template-columns:1fr}
  .login-card,#login-panel>#acctSignin{padding:23px}#login-panel input{font-size:16px}.voice-toggle{right:12px;bottom:12px}.billing-heading{display:block}.billing-heading .pill{margin-top:8px}.calendar-heading{display:block}.calendar-controls{margin-top:12px}.calendar-sidebar{grid-template-columns:1fr}.calendar-day{min-height:78px;padding:5px}.calendar-chip{font-size:0;height:7px;padding:0;border-left-width:3px}.calendar-weekdays span{padding:6px 2px}.acct-settings-body{padding:16px;min-height:0}.acct-theme-options{grid-template-columns:1fr}
}
@media(max-height:700px) and (min-width:761px){.legal{display:none}.nav{padding-top:8px;padding-bottom:8px}.nav button{min-height:35px;padding-top:7px;padding-bottom:7px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Legal workspace declutter: primary research stays visible; secondary scope and binder controls collapse. */
.calendar-chip{display:flex;align-items:baseline;gap:5px}.calendar-chip-time{flex:none;color:var(--nomos-signal);font:600 9px/1 var(--font-mono-technical);font-variant-numeric:tabular-nums}.calendar-chip-title{min-width:0;overflow:hidden;text-overflow:ellipsis}
.rag-chat-shell{grid-template-columns:188px minmax(0,1fr)}.rag-chat-sidebar{padding:12px}.rag-sidebar-copy{margin-top:16px;padding:8px}.rag-sidebar-copy p{display:none}.rag-sidebar-footer{padding-inline:4px}
.rag-binder{margin-top:18px;border-top:1px solid var(--rag-line);border-bottom:1px solid var(--rag-line)}.rag-binder>summary,.rag-scope>summary{list-style:none;cursor:pointer;color:var(--nomos-text);font:600 12px/1.2 var(--font-body)}.rag-binder>summary::-webkit-details-marker,.rag-scope>summary::-webkit-details-marker{display:none}.rag-binder>summary{padding:13px 4px}.rag-binder>summary:after,.rag-scope>summary:after{content:"+";float:right;color:var(--nomos-muted)}.rag-binder[open]>summary:after,.rag-scope[open]>summary:after{content:"−"}.rag-binder .rag-matter-tools{margin:0;padding:0 4px 14px;border:0}
.rag-chat-topbar{min-height:64px;height:auto;overflow:visible}.rag-scope{position:relative}.rag-scope>summary{min-width:138px;padding:10px 12px;border:1px solid var(--nomos-border);background:var(--nomos-raised)}.rag-scope-panel{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:min(620px,72vw);padding:16px;background:var(--nomos-surface);border:1px solid var(--nomos-border-strong)}.rag-scope-panel>label{display:grid;gap:6px;color:var(--nomos-muted);font-size:11px}.rag-scope-panel>label select{width:100%}.rag-scope-panel .rag-jurisdiction-controls{margin-top:12px;padding:0;border:0;grid-template-columns:72px 1fr 1fr}.rag-scope-panel .rag-coverage{padding:10px 0 0}.rag-chat-messages{gap:20px;padding-top:30px}.rag-message.assistant .rag-message-body>strong{font-size:16px}.rag-message.assistant .rag-message-body>p{max-width:760px}.rag-prompt-suggestions{display:none}
@media(max-width:760px){.calendar-chip{display:block}.calendar-chip-time{display:block;margin-bottom:2px}.rag-scope-panel{position:fixed;left:12px;right:12px;top:112px;width:auto;max-height:calc(100vh - 136px);overflow:auto}.rag-scope-panel .rag-jurisdiction-controls{grid-template-columns:1fr}.rag-binder{margin-top:10px}}
/* Counsel Workbench 10 — content-shaped legal operations, not a generic dashboard. */
body{font-family:var(--font-body);letter-spacing:0}.side{background:var(--nomos-sidebar);box-shadow:inset -1px 0 #39342f}.side>.brand{height:68px;background:#0d0c0b;border-bottom:1px solid #39342f}.wordmark-nomos{font-family:var(--font-brand);font-size:22px;letter-spacing:-.025em}.wordmark-vine path{stroke:var(--nomos-brass)}
.nav{padding:14px 8px 18px}.nav-group{margin:0 0 16px}.nav-group:last-child{margin-bottom:0}.nav-group:not(:has(button:not([hidden]))){display:none}.nav-group-label{padding:0 10px 7px;color:#8c8177;font:500 10px/1 var(--font-mono-technical);letter-spacing:.09em;text-transform:uppercase}.nav button{min-height:36px;color:#c8c2bc;font-weight:500}.nav button:hover{background:#211d19;border-color:#474039;color:#fff}.nav button.active{background:#29231e;border-color:#5a4d43;color:#fff;font-weight:500}.nav button.active:before{background:var(--nomos-brass);width:2px}.legal{color:#817970;border-color:#39342f}
.main{background:var(--nomos-canvas)}.top{position:relative;padding-left:0;border-color:var(--nomos-border)}.top h1,.billing-heading h2,.invoice-heading h2,.acct-settings-head h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.035em}.top h1{font-size:30px}.sub{max-width:72ch;color:var(--nomos-muted)}.label,.workbench-kicker{font-family:var(--font-mono-technical);font-size:11px;font-weight:500;letter-spacing:.075em;text-transform:uppercase}.workbench-kicker{display:block;color:var(--nomos-brass);margin-bottom:8px}
button,.field,input,select,textarea{border-radius:2px}.primary,.primary.mini,.rag-send{background:var(--nomos-action);border-color:var(--nomos-action);color:#fff;font-weight:600}.primary:hover,.primary.mini:hover,.rag-send:hover{background:#4d9bdb;border-color:#4d9bdb}.ghost:hover{border-color:#5b6978;background:#20262d}.citation,.public-link{color:#93c6ef}.card,.column,.builder-panel,.lead{border-color:var(--nomos-border);border-radius:2px}.card{background:var(--nomos-surface)}
/* Intake control is a docket: summary, stage record, then inquiry work. */
.pipeline-workbench{max-width:1180px}.pipeline-workbench-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:32px;align-items:end;padding:3px 0 24px;border-bottom:1px solid var(--nomos-border)}.pipeline-workbench-head h2{margin:0 0 7px;font-size:24px;line-height:1.15;letter-spacing:-.025em}.pipeline-workbench-head p{margin:0;color:var(--nomos-muted);max-width:66ch}.pipeline-assurance{padding-left:20px;border-left:1px solid #66543f;font-size:12px;line-height:1.55}.docket-summary{display:flex;margin:0;border:0;border-bottom:1px solid var(--nomos-border);background:transparent}.docket-summary .metric{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;min-height:66px;padding:0 18px;background:transparent;border:0;border-left:1px solid var(--nomos-border)}.docket-summary .metric:first-child{border-left:0;padding-left:0}.docket-summary .label{color:#9ca5ae}.docket-summary strong{font-family:var(--font-mono-technical);font-size:24px;font-weight:500;line-height:1;color:var(--nomos-text);font-variant-numeric:tabular-nums}
.docket-ledger{display:block;margin-top:0;border-top:0}.docket-ledger .column{display:grid;grid-template-columns:150px repeat(auto-fit,minmax(240px,1fr));gap:0;min-height:92px;padding:0;background:transparent;border:0;border-bottom:1px solid var(--nomos-border)}.docket-ledger .column>h3{margin:0;padding:20px 18px 18px 0;border-right:1px solid var(--nomos-border);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:0}.docket-ledger .column>h3 span{display:block;margin-top:7px;color:var(--nomos-muted);font:500 12px/1 var(--font-mono-technical)}.docket-ledger .column>.empty{margin:0;padding:21px 20px;border:0;background:transparent;text-align:left;color:#747d86}.docket-ledger .lead{margin:0;padding:17px 20px;background:transparent;border:0;border-right:1px solid var(--nomos-border);box-shadow:none}.docket-ledger .lead:hover{background:var(--nomos-raised)}.pipeline-empty-state{display:grid;grid-template-columns:170px minmax(180px,260px) minmax(280px,1fr);align-items:start;gap:28px;padding:34px 0;border-bottom:1px solid var(--nomos-border)}.pipeline-empty-state .workbench-kicker{margin:4px 0 0}.pipeline-empty-state strong{font-size:18px;font-weight:600}.pipeline-empty-state p{margin:0;max-width:58ch;color:var(--nomos-muted);line-height:1.55}
/* Legal is a source-bound workbench with a stable authority margin. */
.rag-chat-workspace{height:calc(100vh - 126px);min-height:420px}[data-layout="counsel-workbench"]{display:grid;grid-template-columns:260px minmax(0,1fr);height:100%;min-height:0;border:1px solid #3b444d;border-radius:0;background:#0f1215;overflow:hidden}[data-role="authority-margin"]{position:relative;display:flex;flex-direction:column;min-height:0;padding:16px 14px 14px;background:#121416;border-right:1px solid #3b444d}[data-role="authority-margin"]:before{content:"AUTHORITY";position:absolute;left:15px;top:92px;color:#655b51;font:500 9px/1 var(--font-mono-technical);letter-spacing:.12em;writing-mode:vertical-rl}.rag-new-chat{min-height:38px;text-align:left}.rag-sidebar-copy{margin:26px 0 15px;padding:0 8px 18px 28px;border-bottom:1px solid var(--nomos-border)}.rag-sidebar-copy strong{display:block;margin-bottom:8px}.rag-sidebar-copy p{margin:0;color:var(--nomos-muted);font-size:12px;line-height:1.55}.rag-binder{margin-left:28px}.rag-sidebar-footer{margin: auto 8px 0 28px;padding-top:16px;border-top:1px solid var(--nomos-border)}.rag-sidebar-footer strong{color:var(--nomos-brass)}
[data-layout="work-product"]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;overflow:hidden;background:#0f1215}.rag-chat-topbar{display:flex;align-items:center;justify-content:space-between;min-height:74px;padding:13px 20px;background:#171b20;border-bottom:1px solid #46515d;box-shadow:none}.rag-chat-topbar>div{display:grid;gap:3px}.rag-chat-topbar .workbench-kicker{margin:0 0 2px}.rag-chat-topbar strong{font-size:16px}.rag-chat-topbar span:not(.workbench-kicker){color:#98a4af;font:400 11px/1.4 var(--font-mono-technical)}.rag-chat-messages{padding:26px 34px}.rag-message{max-width:820px}.rag-message.assistant{display:grid;grid-template-columns:34px 1fr;gap:14px}.rag-message-body{max-width:72ch}.rag-message-body .workbench-kicker{margin-bottom:6px}.rag-message-body strong{font-size:18px}.rag-message-body p{font-size:15px;line-height:1.58}.rag-avatar{display:grid;place-items:center;width:32px;height:32px;border:1px solid #4d7596;border-radius:50%;background:#162636;color:#a9d2f1}.rag-scope>summary,.rag-binder>summary{color:var(--nomos-text)}.rag-scope-panel{background:#171b20;border-color:#46515d}.rag-composer-wrap{padding:0 24px 17px}.rag-composer{min-height:62px;background:#171b20;border:1px solid #46515d;border-radius:2px;transition:border-color 120ms ease,box-shadow 120ms ease}.rag-composer:focus-within{border-color:var(--nomos-action);box-shadow:inset 0 0 0 1px var(--nomos-action)}.rag-composer textarea{font-size:14px}.rag-composer #legalChatDeep{min-width:112px}.rag-send{width:auto;min-width:42px;border-radius:2px}.rag-composer-meta{font-family:var(--font-mono-technical);font-size:10px}.rag-status-dot{display:none}
/* Remaining operational surfaces inherit one quiet system. */
.metrics{background:var(--nomos-border)}.metric{background:#171b20}.metric strong{font-family:var(--font-mono-technical);font-variant-numeric:tabular-nums}.grid{gap:12px}.results>*,.invoice-row,.matter-row{border-color:var(--nomos-border)}.calendar-day{background:var(--nomos-surface)}.calendar-day:hover{background:var(--nomos-raised)}.calendar-weekdays{background:#191e24}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--nomos-action)}.calendar-chip{background:#1a2936;border-color:var(--nomos-action)}.calendar-chip-time{color:#93c6ef;font-variant-numeric:tabular-nums}.acct-settings-shell{background:transparent}.acct-settings-tabs{border-bottom:1px solid var(--nomos-border)}.acct-settings-tabs button.active{background:#192535;color:#fff;box-shadow:inset 0 -2px var(--nomos-action)}.acct-settings-panel{max-width:1000px}.acct-settings-section{border-color:var(--nomos-border);border-radius:2px;background:var(--nomos-surface)}
@media(max-width:900px){.pipeline-workbench-head{grid-template-columns:1fr}.pipeline-assurance{padding:0;border:0}.pipeline-empty-state{grid-template-columns:1fr;gap:10px}.docket-ledger .column{grid-template-columns:120px minmax(240px,1fr)}[data-layout="counsel-workbench"]{grid-template-columns:220px minmax(0,1fr)}.rag-chat-messages{padding:22px}}
@media(max-width:760px){.nav-group{display:contents}.nav-group-label{display:none}.top h1{font-size:28px}.docket-summary{overflow-x:auto}.docket-summary .metric{min-width:130px}.docket-ledger .column{display:block}.docket-ledger .column>h3{padding:14px 0;border-right:0}.docket-ledger .lead{border-right:0;border-top:1px solid var(--nomos-border)}.rag-chat-workspace{height:auto;min-height:0}[data-layout="counsel-workbench"]{display:block;overflow:visible}[data-role="authority-margin"]{border-right:0;border-bottom:1px solid var(--nomos-border)}[data-role="authority-margin"]:before{display:none}.rag-sidebar-copy{margin-top:14px;padding-left:0}.rag-binder,.rag-sidebar-footer{margin-left:0}[data-layout="work-product"]{min-height:620px}.rag-chat-topbar{align-items:flex-start;gap:12px}.rag-chat-messages{padding:20px 14px}.rag-composer-wrap{padding:0 12px 14px}.rag-composer #legalChatDeep{min-width:86px}}
