:root{
  --bg:#f4f6f8;
  --surface:#fff;
  --surface-soft:#f6f8fa;
  --text:#172b3a;
  --muted:#596b79;
  --line:#dce4e9;
  --primary:#173d57;
  --primary-strong:#0e2d43;
  --accent:#b68b52;
  --success:#28765d;
  --danger:#b94348;
  --warning:#93651f;
  --shadow:0 12px 32px rgba(21,43,59,.08);
  --radius:14px;
  --font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --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:var(--radius);
}
body{background:var(--bg);color:var(--text);font-family:var(--font)}
body.dark{
  --bg:#101a23;
  --surface:#182733;
  --surface-soft:#202f3b;
  --text:#edf3f6;
  --muted:#adbbc4;
  --line:#344652;
  --primary:#a9c7d9;
  --primary-strong:#c2d8e4;
  --accent:#d1ad70;
  --success:#83c3a6;
  --danger:#ed9290;
  --warning:#e2bd78;
  --shadow:0 16px 40px rgba(0,0,0,.24);
  --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) 18%,var(--surface));
  --mw-gold:var(--accent);
  --mw-red:var(--danger);
  --mw-amber:var(--warning);
  --mw-green:var(--success);
  --mw-shadow:var(--shadow);
}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:3px}
.stat-card,.panel,.data-card,.table-wrap,.work-queue,.search-dialog,.modal{border-color:var(--line);box-shadow:var(--shadow)}
.stat-card,.panel,.data-card{position:relative;overflow:hidden}
.stat-card:before,.data-card:before{content:"";position:absolute;left:0;top:0;width:3px;height:34px;background:var(--accent);opacity:.82}
.quick-action{border-radius:0 13px 0 13px;background:var(--surface);box-shadow:0 6px 18px rgba(10,12,34,.045)}
.quick-action:hover,.data-card:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}
.button.primary,.work-queue-add{background:var(--primary);color:#fff}
.button.primary:hover,.work-queue-add:hover{background:var(--primary-strong);color:#fff}
body.dark .button.primary,body.dark .work-queue-add{color:#0a0c22}
.work-queue-shell{width:100%;margin:0 auto}
.work-queue{position:relative;overflow:hidden;padding:clamp(20px,3vw,34px);border:1px solid var(--line);border-top:2px solid var(--accent);border-radius:0 18px 0 18px;background:var(--surface)}
.work-queue:after{content:"";position:absolute;right:-70px;top:-110px;width:210px;height:210px;border:1px solid color-mix(in srgb,var(--primary) 12%,transparent);transform:rotate(45deg);pointer-events:none}
.work-queue-head{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.work-queue-head>div:first-child{min-width:0}
.work-queue-kicker{display:block;margin-bottom:12px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.16em}
.work-queue-head h2{margin:0;color:var(--text);font-size:clamp(21px,2vw,28px);line-height:1.2;letter-spacing:-.035em}
.work-queue-head p{margin:8px 0 0;color:var(--muted);font-size:13px}
.work-queue-tools{display:flex;align-items:center;gap:10px;flex:none}
.work-queue-tools select{width:auto;min-width:180px;min-height:44px;border-radius:0 10px 0 10px;background:var(--surface-soft);color:var(--text)}
.work-queue-add{min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:0 10px 0 10px;font-weight:750;white-space:nowrap;box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 20%,transparent)}
.task-form{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(150px,1fr) minmax(130px,.8fr) minmax(130px,.8fr) auto;align-items:end;gap:10px;margin:0 0 14px;padding:15px;border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:0 12px 0 12px;background:var(--surface-soft)}
.task-form input,.task-form select{min-width:0;min-height:44px;border-radius:0 8px 0 8px}
.task-list{display:grid;gap:10px;margin:0;padding:0}
.task-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto 38px;align-items:center;gap:14px;min-height:78px;padding:15px 17px;border:1px solid var(--line);border-left:3px solid color-mix(in srgb,var(--primary) 48%,var(--line));border-radius:0 13px 0 13px;background:var(--surface);transition:border-color .18s,transform .18s,background .18s}
.task-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,var(--line))}
.task-row.is-done{opacity:.72}
.task-check{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-height:18px!important;margin:0!important;padding:0!important;accent-color:var(--accent);cursor:pointer}
.task-copy{display:grid;gap:4px;min-width:0}
.task-copy strong{color:var(--text);font-size:14px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}
.task-copy small{color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.task-row.is-done .task-copy strong{text-decoration:line-through;text-decoration-color:var(--muted)}
.task-priority{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 10px;border:1px solid var(--line);border-radius:0 8px 0 8px;background:var(--surface-soft);color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}
.task-priority.high{border-color:color-mix(in srgb,var(--danger) 38%,var(--line));background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}
.task-priority.medium{border-color:color-mix(in srgb,var(--warning) 38%,var(--line));background:color-mix(in srgb,var(--warning) 10%,var(--surface));color:var(--warning)}
.task-priority.low{color:var(--success)}
.task-delete{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:0 9px 0 9px;background:transparent;color:var(--muted);font-size:21px;line-height:1}
.task-delete:hover{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger)}
.task-count{margin:14px 0 0;color:var(--muted);font-size:12px;font-weight:650}
.task-empty{padding:28px 18px;border:1px dashed var(--line);color:var(--muted);text-align:center}
@media(max-width:900px){.task-form{grid-template-columns:repeat(2,minmax(0,1fr))}.task-form input:first-child,.task-form>div{grid-column:1/-1}}
@media(max-width:720px){
  .work-queue-shell{padding:0 14px calc(92px + env(safe-area-inset-bottom))}
  .work-queue{padding:19px 15px;border-radius:0 16px 0 16px}
  .work-queue-head{display:grid;gap:16px;margin-bottom:16px}
  .work-queue-kicker{margin-bottom:8px}
  .work-queue-head h2{font-size:21px}
  .work-queue-head p{font-size:12px;line-height:1.55}
  .work-queue-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:8px}
  .work-queue-tools select{width:100%;min-width:0;min-height:46px}
  .work-queue-add{min-height:46px;padding:9px 13px;font-size:12px}
  .task-form{grid-template-columns:minmax(0,1fr);padding:12px}
  .task-form input:first-child,.task-form>div{grid-column:auto}
  .task-row{grid-template-columns:20px minmax(0,1fr) 38px;gap:10px;padding:13px 11px;min-height:74px}
  .task-copy{grid-column:2;grid-row:1}
  .task-priority{grid-column:2;grid-row:2;justify-self:start;min-height:25px;font-size:10px}
  .task-delete{grid-column:3;grid-row:1;width:36px;height:36px}
  .task-copy strong{font-size:13px}
  .task-copy small{font-size:11px}
}
@media(max-width:380px){.work-queue-tools{grid-template-columns:1fr}.work-queue-add{width:100%}.task-row{grid-template-columns:18px minmax(0,1fr) 34px;gap:8px;padding-inline:9px}}
@media(prefers-reduced-motion:reduce){.task-row,.quick-action{transition:none}}

/* Shared visual foundation */
button,input,select,textarea{font-family:var(--font)}
input,select,textarea{border-color:var(--line);border-radius:10px;background:var(--surface);color:var(--text)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.78}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:color-mix(in srgb,var(--primary) 62%,var(--accent));outline-offset:2px}
.button,.small-button,.icon-button,.nav-link,.quick-action,.case-card,.case-start-card,.case-promise-card,.data-card,.panel,.stat-card,.table-wrap,.modal,.search-dialog{border-radius:var(--radius)}
.button,.small-button,.icon-button,.nav-link,.quick-action{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.button.primary,.work-queue-add,.mw-primary{background:var(--primary);color:#fff}
.button.primary:hover,.work-queue-add:hover,.mw-primary:hover{background:var(--primary-strong);color:#fff}
body.dark :is(.button.primary,.work-queue-add,.mw-primary){background:#d1ad70;color:#192630}
body.dark :is(.button.primary,.work-queue-add,.mw-primary):hover{background:#e0c28d;color:#192630}
.tag,.case-status,.task-priority{border-radius:999px}
.stat-card,.panel,.data-card,.table-wrap,.search-dialog,.modal,.chat-box{border-color:var(--line);box-shadow:var(--shadow)}
.quick-action{background:var(--surface);box-shadow:0 3px 12px rgba(21,43,59,.04)}
.quick-action:hover,.small-button:hover,.icon-button:hover{border-color:color-mix(in srgb,var(--primary) 34%,var(--line))}
.nav-link.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));box-shadow:inset 3px 0 var(--accent)}
.work-queue,.work-queue-tools select,.work-queue-add,.task-form,.task-form input,.task-form select,.task-row,.task-priority,.task-delete{border-radius:10px}
.work-queue{border-top-color:var(--accent);background:var(--surface)}
.work-queue-add{box-shadow:none}
.task-form{background:var(--surface-soft)}
.task-row{border-left-color:color-mix(in srgb,var(--primary) 44%,var(--line));background:var(--surface)}
.task-priority{background:color-mix(in srgb,var(--surface-soft) 75%,var(--surface))}
#matterWorkspace .mw-primary{background:var(--primary);color:#fff}
body.dark #matterWorkspace .mw-primary{background:#d1ad70;color:#192630}
@media(prefers-reduced-motion:reduce){.button,.small-button,.icon-button,.nav-link,.quick-action{transition:none}}
