:root{
  --bg:#e7eafb;
  --surface:#fff;
  --surface-soft:#f6f6fc;
  --text:#14162b;
  --muted:#585b77;
  --line:#d9dced;
  --primary:#3e5cff;
  --primary-strong:#304be0;
  --accent:#e01e86;
  --success:#24795d;
  --danger:#b9415d;
  --warning:#985b19;
  --shadow:0 12px 32px rgba(10,12,34,.07);
  --radius:16px;
  --font:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --display-font:'Fraunces',Georgia,serif;
  color-scheme:light;
}
body{font-family:var(--font);letter-spacing:-.012em}
body.dark{
  --bg:#0a0c22;--surface:#14123a;--surface-soft:#1c1650;--text:#f5f4fc;
  --muted:#b6b8d9;--line:rgba(182,184,217,.2);--primary:#8ca0ff;
  --primary-strong:#aab7ff;--accent:#f472b6;--success:#71d1aa;
  --danger:#ff8fae;--warning:#f4bf7a;--shadow:0 14px 42px rgba(0,0,0,.3);
  color-scheme:dark;
}
button,input,select,textarea{font-family:var(--font)}
button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 40%,transparent);outline-offset:2px}
.page-heading h1,#matterWorkspace .mw-flow-heading h2,#matterWorkspace .mw-chat-intro h1,#matterWorkspace .mw-work-name{font-family:var(--display-font);letter-spacing:-.035em}
.login-brand-panel{background:radial-gradient(100% 85% at 0% 0%,#1c1650 0%,#0a0c22 68%);color:#f5f4fc}
.login-brand-panel:after{border-color:rgba(140,160,255,.13);box-shadow:0 0 0 50px rgba(224,30,134,.045),0 0 0 110px rgba(62,92,255,.04)}
.brand-mark{border-color:rgba(224,30,134,.6);color:#f472b6}
.brand-lockup b{color:var(--accent)}
.button,.small-button,.icon-button,.nav-link,.quick-action,.quiet-link,.account-row,.global-search-trigger{border-radius:12px}
.button.primary{background:var(--primary);box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 22%,transparent)}
.button.primary:hover{background:var(--primary-strong);box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 28%,transparent)}
.button.secondary,.small-button{background:var(--surface);border-color:var(--line)}
input,select,textarea{border-radius:11px;border-color:var(--line);background:var(--surface);transition:border-color .16s,box-shadow .16s}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent);outline:0}
.sidebar{background:color-mix(in srgb,var(--surface) 95%,var(--bg));border-right-color:var(--line);padding:18px 11px 12px}
.sidebar-brand{padding:0 6px 20px;min-height:54px}
.brand-mark{border-radius:10px;background:var(--surface);box-shadow:0 1px 3px rgba(10,12,34,.07)}
.nav-group-label{letter-spacing:.09em;font-size:10px}
.nav-link{min-height:44px;font-size:13px;padding:9px 11px}
.nav-link.active{background:color-mix(in srgb,var(--primary) 10%,var(--surface));box-shadow:inset 3px 0 var(--accent)}
.collapse-button{display:grid!important;place-items:center;flex:none;width:34px;height:34px;border:1px solid var(--line);background:var(--surface);border-radius:10px;color:var(--muted);font-size:19px;z-index:2}
.sidebar.collapsed .sidebar-brand{gap:3px}
.sidebar.collapsed .brand-lockup{min-width:0}
.sidebar.collapsed .collapse-button{display:grid!important;width:27px;height:32px}
.topbar{background:color-mix(in srgb,var(--surface) 92%,var(--bg));backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}
.main-content{padding-top:32px}
.stat-card,.panel,.data-card,.table-wrap{border-radius:16px;box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--line) 84%,transparent)}
.stat-card{padding:18px}.panel{padding:20px}.data-card{padding:18px}
.quick-action{background:var(--surface);box-shadow:0 2px 9px rgba(10,12,34,.045)}
.filter-bar{border-radius:14px;box-shadow:var(--shadow)}
.modal{border-radius:20px}.toast{border-radius:14px}
.mobile-nav{backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}
#matterWorkspace{
  --mw-bg:var(--bg);--mw-surface:var(--surface);--mw-soft:var(--surface-soft);--mw-line:var(--line);
  --mw-ink:var(--text);--mw-muted:var(--muted);--mw-blue:var(--primary);
  --mw-blue-soft:color-mix(in srgb,var(--primary) 10%,var(--surface));--mw-gold:var(--accent);
  --mw-red:var(--danger);--mw-amber:var(--warning);--mw-green:var(--success);
  --mw-shadow:var(--shadow);--mw-radius:16px;font-family:var(--font);letter-spacing:-.01em;
}
#matterWorkspace .mw-topbar{background:color-mix(in srgb,var(--surface) 93%,var(--bg));backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}
#matterWorkspace .mw-pane,#matterWorkspace .mw-center{background:var(--surface)}
#matterWorkspace .mw-pane{border-color:var(--line)}
#matterWorkspace .mw-left-scroll,#matterWorkspace .mw-right-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 30%,transparent) transparent}
#matterWorkspace .mw-work-scroll{background:var(--bg)}
#matterWorkspace .mw-flow,#matterWorkspace .mw-demo-journey,#matterWorkspace .mw-chat-box,#matterWorkspace .mw-review-summary,#matterWorkspace .mw-risk-card,#matterWorkspace .mw-check-card,#matterWorkspace .mw-source-card,#matterWorkspace .mw-document-area>*,#matterWorkspace .mw-draft-view>*,#matterWorkspace .mw-research-results>*{border-radius:16px}
#matterWorkspace .mw-tab,#matterWorkspace .mw-right-tab{transition:color .16s,background .16s,border-color .16s}
#matterWorkspace .mw-tab.active,#matterWorkspace .mw-right-tab.active{color:var(--primary);border-color:var(--primary)}
#matterWorkspace .mw-primary{background:var(--primary);border-radius:12px;box-shadow:0 3px 10px color-mix(in srgb,var(--primary) 20%,transparent)}
#matterWorkspace .mw-primary:hover{background:var(--primary-strong)}
#matterWorkspace .mw-secondary,#matterWorkspace .mw-iconbtn,#matterWorkspace .mw-topbtn{border-radius:11px}
#matterWorkspace input,#matterWorkspace select,#matterWorkspace textarea{border-radius:11px;border-color:var(--line);background:var(--surface);color:var(--text)}
#matterWorkspace .mw-matter-list,#matterWorkspace .mw-session-list,#matterWorkspace .mw-case-files{min-width:0;width:100%;overflow-x:hidden}
#matterWorkspace .mw-matter-list>*,#matterWorkspace .mw-session-list>*,#matterWorkspace .mw-case-files>*{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
#matterWorkspace .mw-case-files button,#matterWorkspace .mw-case-files a,#matterWorkspace .mw-case-files [role=button]{width:100%;min-width:0;justify-content:flex-start;white-space:normal;text-align:left;overflow-wrap:anywhere;word-break:break-word}
#matterWorkspace .mw-case-files *{max-width:100%}
#matterWorkspace .mw-switcher{min-width:0;max-width:100%;border-radius:12px}
#matterWorkspace .mw-left .mw-pane-head,#matterWorkspace .mw-right .mw-pane-head{min-width:0}
#matterWorkspace .mw-left .mw-pane-head h2,#matterWorkspace .mw-right .mw-pane-head h2{overflow-wrap:anywhere}
@media(min-width:721px) and (max-width:900px){
  .sidebar .collapse-button,.sidebar.collapsed .collapse-button{display:grid!important}
  .sidebar.collapsed .sidebar-brand{justify-content:space-between;padding-inline:0}
  .sidebar.collapsed .brand-lockup{justify-content:center}
  .sidebar.collapsed .sidebar-brand .brand-mark{width:30px;height:34px}
}
@media(max-width:720px){
  .sidebar .collapse-button{display:grid!important}
  .sidebar.mobile-open .sidebar-brand{justify-content:space-between}
  .main-content{padding-top:22px}
  #matterWorkspace .mw-case-files>*{padding-inline:8px}
}
/* Create/edit dialogs: refined legal-workspace surface and aiest.legal actions */
.modal-backdrop{background:rgba(10,12,34,.48);backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);}
.modal{position:relative;width:min(100%,620px);max-height:min(90dvh,820px);padding:30px;border:1px solid color-mix(in srgb,var(--primary) 12%,var(--line));border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--bg));box-shadow:0 28px 90px rgba(10,12,34,.25);}
.modal:before{content:"";position:absolute;inset:0 22px auto;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,var(--accent),var(--primary));}
.modal-header{align-items:flex-start;margin-bottom:22px;padding-right:4px;}
.modal-header .eyebrow{margin-bottom:7px;color:var(--accent);font-size:10px;letter-spacing:.16em;}
.modal-header h2{font-family:var(--font);font-size:25px;line-height:1.2;font-weight:800;letter-spacing:-.04em;color:var(--text);}
.modal-header .icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:var(--surface);font-size:20px;}
.modal-fields{gap:16px 14px;}
.modal-field{min-width:0;display:grid;align-content:start;gap:7px;}
.modal-field label{margin:0;color:var(--text);font-size:12px;font-weight:700;letter-spacing:-.01em;}
.modal-fields input,.modal-fields select,.modal-fields textarea{min-width:0;min-height:46px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(10,12,34,.025);}
.modal-fields input:focus,.modal-fields select:focus,.modal-fields textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 13%,transparent);}
.modal-fields textarea{min-height:100px;resize:vertical;}
.modal-field small{color:var(--muted);font-size:11px;line-height:1.5;}
.modal-actions{gap:10px;margin-top:22px;padding-top:17px;border-top:1px solid var(--line);}
.modal-actions .button{min-height:46px;padding:11px 20px;border-radius:0;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));font-size:13px;font-weight:800;}
.modal-actions .button.primary{background:var(--accent);color:#0a0c22;border-color:var(--accent);box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 24%,transparent);}
.modal-actions .button.primary:hover{background:color-mix(in srgb,var(--accent) 82%,white);border-color:color-mix(in srgb,var(--accent) 82%,white);color:#0a0c22;transform:translateY(-2px);}
.modal-actions .button.secondary{background:transparent;border-color:color-mix(in srgb,var(--text) 24%,var(--line));color:var(--text);}
.modal-actions .button.secondary:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px);}
body.dark .modal{background:color-mix(in srgb,var(--surface) 96%,#0a0c22);}
body.dark .modal-actions .button.primary{color:#0a0c22;}
@media(max-width:720px){
  .modal-backdrop{align-items:end;padding:0;}
  .modal{width:100%;max-height:92dvh;padding:25px 18px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;}
  .modal:before{inset-inline:18px;}
  .modal-header{margin-bottom:18px;}
  .modal-header h2{font-size:22px;}
  .modal-fields{gap:14px;}
  .modal-actions{position:sticky;bottom:calc(-18px - env(safe-area-inset-bottom));margin-inline:-18px;margin-bottom:calc(-18px - env(safe-area-inset-bottom));padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 96%,var(--bg));}
  .modal-actions .button{flex:1;}
}
@media(prefers-reduced-motion:reduce){button{transition:none}}
