:root{
  /* pulled from AQUA screenshots */
  --navy:#1B2A54;
  --navy-2:#22346A;
  --navy-3:#2C3F78;
  --slate:#6274AF;          /* section header bars */
  --slate-2:#7C8CC0;
  --page:#EFEFEF;
  --card:#FFFFFF;
  --row-alt:#EEF2FC;
  --border:#D8DCE6;
  --border-2:#E8EAF0;
  --text:#22304F;
  --text-2:#5A6784;
  --text-3:#8A94A8;
  --req:#E03B3B;
  --purple:#9B4DE0;
  --green:#4BAE5A;
  --coral:#F4656B;
  --amber:#EDA92F;
  --blue:#7FA8DC;
  --red:#DC4A3D;
  --success:#22C55E;
  --r:6px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:13px;color:var(--text);background:var(--page);
  -webkit-font-smoothing:antialiased;
}
.app{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}

/* ============ SIDEBAR ============ */
.sidebar{
  background:var(--navy);color:#fff;display:flex;flex-direction:column;
  position:sticky;top:0;height:100vh;
}
.logo-wrap{padding:16px 20px 18px;border-bottom:1px solid rgba(255,255,255,.13)}
.logo{font-size:30px;font-weight:700;letter-spacing:.02em;line-height:1;margin-top:2px;position:relative;display:inline-block}
.logo .wave{
  position:absolute;right:12px;bottom:5px;width:22px;height:8px;
  border-bottom:2px solid #fff;border-radius:0 0 60% 60%/0 0 100% 100%;transform:rotate(-6deg);
}
.logo-sub{font-size:8.5px;letter-spacing:.34em;font-weight:400;margin-top:3px;opacity:.9}

nav{padding:10px 0;flex:1;overflow-y:auto}
.nav-item{
  display:flex;align-items:center;gap:11px;padding:11px 20px;
  color:rgba(255,255,255,.86);font-size:12.5px;font-weight:400;
  cursor:pointer;border:none;background:none;width:100%;text-align:left;
  transition:.15s;font-family:inherit;
}
.nav-item:hover{background:rgba(255,255,255,.06)}
.nav-item.on{background:var(--navy-3);font-weight:500;color:#fff}
.nav-item svg{width:15px;height:15px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7}
.nav-item .tag{
  margin-left:auto;font-size:8px;font-weight:700;letter-spacing:.06em;
  background:var(--success);color:#0B2C16;padding:2px 5px;border-radius:3px;
}
.nav-sep{height:1px;background:rgba(255,255,255,.13);margin:10px 20px}
.nav-cap{padding:6px 20px 4px;font-size:10px;letter-spacing:.14em;color:rgba(255,255,255,.42);text-transform:uppercase}
.recent{padding:4px 20px 16px}
.recent h6{font-size:13px;font-weight:600;margin-bottom:9px}
.recent .r{font-size:11px;color:rgba(255,255,255,.78);line-height:1.5;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.recent .r span{display:block;font-size:9.5px;color:rgba(255,255,255,.45)}
.recent-link{display:block;text-decoration:none;cursor:pointer}
.recent-link:hover{color:#fff;background:rgba(255,255,255,.06);margin:0 -8px;padding-left:8px;padding-right:8px}
.recent-muted{color:rgba(255,255,255,.5)!important;font-style:italic}

/* ============ TOP ============ */
.topbar{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:12px 26px;background:var(--page);
}
.crumb{font-size:12px;color:var(--text-2)}
.crumb b{color:var(--text);font-weight:600}
.user{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--text)}
.avatar{
  width:26px;height:26px;border-radius:50%;background:#8B5E10;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;
}
main{padding:0 26px 40px}

/* ============ STAT CARDS ============ */
.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:18px}
.stat{
  background:var(--card);border-radius:var(--r);padding:14px 16px 20px;position:relative;
  box-shadow:0 1px 3px rgba(27,42,84,.07);min-height:82px;
}
.stat .t{font-size:12px;font-weight:500;color:var(--text)}
.stat .n{font-size:23px;font-weight:600;margin-top:4px;line-height:1.1}
.stat .n small{font-size:12px;font-weight:400;color:var(--text-3);margin-left:2px}
.stat .f{font-size:9.5px;color:var(--text-3);margin-top:3px;line-height:1.3}
.stat .ic{
  position:absolute;right:14px;bottom:-11px;width:30px;height:30px;border-radius:5px;
  display:flex;align-items:center;justify-content:center;color:#fff;
  box-shadow:0 2px 6px rgba(27,42,84,.18);
}
.stat.active{background:var(--purple);color:#fff}
.stat.active .t,.stat.active .n{color:#fff}
.stat.active .f{color:rgba(255,255,255,.8)}
.stat .ic svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.9}

/* ============ TOOLBAR ============ */
.card{background:var(--card);border-radius:var(--r);box-shadow:0 1px 3px rgba(27,42,84,.07);margin-bottom:18px}
.card-pad{padding:20px 22px}
.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:20px 22px 4px}
select.aq,input.aq{
  font-family:inherit;font-size:12px;color:var(--text);
  border:1px solid var(--border);border-radius:4px;padding:8px 10px;background:#fff;height:36px;
}
select.aq{min-width:170px}
input.aq{min-width:220px}
.btn{
  font-family:inherit;font-size:12px;font-weight:500;color:#fff;background:var(--navy);
  border:none;border-radius:20px;padding:9px 20px;cursor:pointer;transition:.15s;white-space:nowrap;
}
.btn:hover{background:var(--navy-2)}
.btn:focus-visible{outline:2px solid var(--slate);outline-offset:2px}
.btn.sq{border-radius:4px;padding:9px 13px}
.btn.lt{background:#fff;color:var(--navy);border:1px solid var(--navy)}
.btn.lt:hover{background:#F2F4FA}
.btn:disabled,.btn.lt:disabled{background:#E4E7ED;color:#7B8496;border-color:#C8CCD6;cursor:not-allowed;opacity:.85}
.btn.dis{background:#C8CCD6;cursor:not-allowed}
.btn.sm{font-size:11px;padding:7px 15px}
.btn-row{display:flex;gap:10px;flex-wrap:wrap}

/* ============ TABLE ============ */
.tw{overflow-x:auto;padding:16px 22px 6px}
table.dt{width:100%;border-collapse:collapse;font-size:11.5px}
table.dt thead th{
  background:var(--navy);color:#fff;font-weight:600;font-size:11px;
  padding:12px 10px;text-align:center;border-right:1px solid rgba(255,255,255,.12);
}
table.dt thead th:first-child{border-radius:var(--r) 0 0 0}
table.dt thead th:last-child{border-right:none;border-radius:0 var(--r) 0 0}
table.dt tbody td{padding:10px;text-align:center;border-bottom:1px solid #E6E9F0;vertical-align:middle}
table.dt tbody tr{cursor:pointer;transition:.12s}
table.dt tbody tr:nth-child(even){background:var(--row-alt)}
table.dt tbody tr:hover{background:#E3EAF9}
table.dt tbody tr.sel{background:#DCE6FA;box-shadow:inset 3px 0 0 var(--slate)}
td .nm{font-weight:500;font-size:12px}
td .sb{font-size:10px;color:var(--text-3);margin-top:1px}
td.l{text-align:left}
.qbox{
  display:inline-block;border:1px solid var(--navy);border-radius:4px;
  min-width:76px;padding:5px 9px;font-size:11px;color:var(--navy);font-weight:500;background:#fff;cursor:pointer;transition:.15s;white-space:nowrap;
}
.qbox:hover{background:#EEF3FF;border-color:var(--slate);box-shadow:0 0 0 2px rgba(98,116,175,.12)}
.acts{color:var(--navy);text-align:center;vertical-align:middle;white-space:nowrap}
.acts .action-trigger{min-width:76px;justify-content:center;margin:0 auto}
.acts svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.6;cursor:pointer}
.acts svg:hover{color:var(--slate)}
.action-cell{position:relative;min-width:104px}
.action-trigger{font-family:inherit;font-size:10.5px;font-weight:600;color:var(--navy);background:#fff;border:1px solid #BFC9E2;border-radius:5px;padding:6px 9px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;box-shadow:0 1px 2px rgba(27,42,84,.06)}
.action-trigger:hover,.action-trigger.open{background:#F2F5FB;border-color:var(--slate);color:var(--navy-2)}
.action-trigger svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.8}
.action-menu{display:none;position:absolute;z-index:30;left:50%;top:calc(100% - 2px);transform:translateX(-50%);width:190px;background:#fff;border:1px solid var(--border);border-radius:7px;box-shadow:0 10px 24px rgba(27,42,84,.18);padding:5px;text-align:left}
.action-menu.open{display:block;animation:menuIn .15s ease}
.action-menu.floating{position:fixed;z-index:100;transform:none;left:auto;top:auto}
.action-menu button{display:flex;width:100%;align-items:center;gap:8px;border:0;background:#fff;color:var(--text);font:500 10.5px Poppins,system-ui,sans-serif;text-align:left;padding:8px 9px;border-radius:4px;cursor:pointer}
.action-menu button:hover{background:#F2F5FB;color:var(--navy)}
.action-menu button.danger{color:#A62B2B}.action-menu button.danger:hover{background:#FEF1F1}
.action-menu .mi{width:15px;text-align:center;color:var(--slate);font-size:12px}
@keyframes menuIn{from{opacity:0;transform:translateX(-50%) translateY(-4px)}to{opacity:1;transform:translateX(-50%)}}
.action-toast{position:fixed;right:24px;bottom:24px;z-index:80;background:var(--navy);color:#fff;border-radius:7px;padding:12px 15px;box-shadow:0 10px 28px rgba(27,42,84,.25);font-size:11.5px;max-width:360px;display:none}
.action-toast.show{display:block;animation:toastIn .2s ease}.action-toast b{display:block;font-size:12px;margin-bottom:2px}.action-toast span{color:rgba(255,255,255,.75)}
@keyframes toastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.action-drawer-backdrop{position:fixed;inset:0;background:rgba(17,29,61,.34);z-index:70;display:none}
.action-drawer-backdrop.open{display:block}
.action-drawer{position:absolute;right:0;top:0;height:100%;width:min(470px,92vw);background:#fff;box-shadow:-12px 0 32px rgba(27,42,84,.24);padding:22px 24px;overflow:auto;animation:drawerIn .22s ease}
@keyframes drawerIn{from{transform:translateX(100%)}to{transform:none}}
.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:16px}.drawer-head h3{font-size:16px;font-weight:600}.drawer-head p{font-size:10.5px;color:var(--text-2);margin-top:3px}.drawer-close{border:0;background:#F2F5FB;color:var(--navy);width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px}
.drawer-card{border:1px solid var(--border);border-radius:6px;padding:12px 13px;margin-bottom:11px}.drawer-card h4{font-size:11.5px;margin-bottom:7px}.drawer-card p{font-size:11px;color:var(--text-2);line-height:1.55}.drawer-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px;padding-top:15px;border-top:1px solid var(--border)}
.drawer-timeline{display:grid;gap:8px}.drawer-timeline div{font-size:10.5px;color:var(--text-2);padding-left:12px;border-left:2px solid var(--slate)}.drawer-timeline b{color:var(--text)}

.pager{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:14px 22px 18px;font-size:11.5px;color:var(--text-2)}
.pg{
  min-width:28px;height:28px;border:1px solid var(--border);background:#fff;border-radius:4px;
  font-family:inherit;font-size:11.5px;color:var(--text);cursor:pointer;
}
.pg.on{background:var(--navy);color:#fff;border-color:var(--navy)}

/* ============ SECTION PANEL (slate header) ============ */
.sect{border:1px solid var(--border);border-radius:5px;overflow:hidden;margin-bottom:16px;background:#fff}
.sect-h{
  background:var(--slate);color:#fff;padding:9px 14px;font-size:12.5px;font-weight:500;
  display:flex;align-items:center;gap:9px;
}
.sect-h .car{font-size:10px}
.sect-h .rt{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:400}
.sect-b{padding:16px 16px 18px}

/* ============ BANNER (quote header) ============ */
.banner{
  background:var(--slate);color:#fff;border-radius:5px;padding:12px 18px;margin-bottom:16px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:6px 24px;font-size:12px;
}
.banner .k{opacity:.86;font-weight:300}
.banner b{font-weight:600}

/* ============ FORM FIELDS ============ */
.fgrid{display:grid;gap:14px 18px}
.field-section{margin:0 0 18px;padding:14px 16px 16px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2,rgba(255,255,255,.02))}
.field-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 13px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.field-section-heading b{display:block;font-size:13px;color:var(--text)}
.field-section-heading span:not(.field-section-count){display:block;margin-top:3px;font-size:10.5px;color:var(--muted)}
.field-section-count{flex:0 0 auto;font-size:10px;color:var(--muted);white-space:nowrap}
.f3{grid-template-columns:repeat(3,1fr)}
.f2{grid-template-columns:repeat(2,1fr)}
.fld label{display:block;font-size:11.5px;font-weight:500;color:var(--text);margin-bottom:5px}
.fld.critical label{color:#B4232D;font-weight:700}
.fld label .req{color:var(--req);margin-left:2px}
.ctl{
  display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:4px;
  background:#fff;padding:8px 10px;min-height:36px;font-size:12px;
}
.ctl .val{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctl.ai{background:#F4F8FF;border-color:#BBD0EE}
.ctl.warn{background:#FFF8EC;border-color:#F0C97A}
.ctl.bad{background:#FEF1F1;border-color:#F0A9A9}
.fld.critical .ctl{border:2px solid #E03B3B;background:#FFF7F7}
.ctl .val.miss{color:var(--req);font-style:italic}
.cbadge{
  font-size:9.5px;font-weight:600;padding:2px 6px;border-radius:10px;white-space:nowrap;
}
.cb-g{background:#E4F5E7;color:#2E7D3C}
.cb-a{background:#FDF0DA;color:#9C6A0E}
.cb-r{background:#FBE3E3;color:#A62B2B}
.srcline{font-size:9.5px;color:var(--text-3);margin-top:4px}
.cf{display:grid;gap:10px}
.cfrow{border:1px solid var(--border);border-left-width:3px;border-radius:4px;padding:11px 13px;background:#fff}
.cfrow.high{border-left-color:var(--coral);background:#FEF6F6}
.cfrow.med{border-left-color:var(--amber);background:#FFFAF1}
.cfrow.low{border-left-color:var(--green);background:#F5FBF6}
.cfrow .ct{font-size:11.5px;font-weight:600;margin-bottom:5px;display:flex;gap:8px;align-items:flex-start}
.source-ref{margin-left:auto;font-size:10px;font-weight:600;color:var(--navy);text-decoration:underline;white-space:nowrap}
.cfrow .cd{font-size:11px;color:var(--text-2);line-height:1.65}
.source-hint{font-size:10px;color:var(--text-3);margin-top:6px}
.cfrow .cr{font-size:11px;color:var(--text);line-height:1.6;margin-top:7px;padding-top:7px;border-top:1px dashed var(--border)}
.cfrow .cr b.lab{color:var(--slate);font-weight:600}
.review-guide{display:flex;gap:8px;flex-direction:column;padding:10px 12px;border:1px solid #D3DEF3;background:#F4F7FD;border-radius:5px;color:var(--text-2);font-size:11px;line-height:1.5}
.review-guide b{color:var(--navy);font-size:11.5px}
.severity-pill{display:inline-block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 6px;border-radius:9px;vertical-align:1px}
.severity-pill.high{background:#FBE3E3;color:#A62B2B}.severity-pill.med{background:#FDF0DA;color:#9C6A0E}.severity-pill.low{background:#E4F5E7;color:#2E7D3C}
.conflict-finding{font-size:12px;color:var(--text);line-height:1.55;padding:8px 10px;background:rgba(255,255,255,.7);border-radius:4px}.conflict-finding b{font-size:10px;color:var(--slate);text-transform:uppercase;letter-spacing:.04em}
.source-chips{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:10px;color:var(--text-3)}
.source-chip{background:#EEF2FC;color:#2C4C87;border:1px solid #D3DEF3;border-radius:10px;padding:3px 7px;text-decoration:none;font-weight:600}.source-chip:hover{text-decoration:underline}
.severity-pill{display:inline-block;border-radius:10px;padding:3px 7px;font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.severity-pill.high{background:#FDE4E4;color:#A72B2B}.severity-pill.med{background:#FFF0C9;color:#8A5A00}.severity-pill.low{background:#DFF5E4;color:#24723A}.source-chip.muted{color:var(--slate);background:#F4F5F7;border-color:#D8DDE5}
.email-rendered{overflow:visible;max-height:none;background:#fff}.email-rendered img{max-width:100%;height:auto}.email-rendered table{max-width:100%;border-collapse:collapse}.email-rendered td,.email-rendered th{padding:0;border:0}.email-plain{white-space:pre-wrap;font:inherit;margin:0}.approval-help{color:#8A5A00}
.field-edit-input{width:100%;border:0;background:transparent;color:inherit;font:inherit;outline:0;min-width:0}
.conflict-expectation{font-size:12px;color:#20385f;line-height:1.55;padding:8px 10px;margin-top:7px;background:#EEF4FF;border-left:3px solid #6B84C4;border-radius:4px}.conflict-expectation b{font-size:10px;color:#36558D;text-transform:uppercase;letter-spacing:.04em}
.handoff-panel{margin:14px 0;padding:12px;background:#F4F7FD;border:1px solid #D3DEF3;border-radius:5px}.handoff-panel label{display:block;color:var(--navy);font-size:12px}.handoff-panel p{margin:4px 0 8px}.handoff-notes{width:100%;box-sizing:border-box;min-height:280px;border:1px solid #C7D3EA;border-radius:4px;padding:8px;font:inherit;font-size:12px;line-height:1.45;color:var(--text);background:#fff;resize:vertical;margin-bottom:7px}
.source-document-link{display:inline-flex;align-items:center;gap:4px;color:var(--navy);text-decoration:none;border:1px solid #D3DEF3;background:#F4F7FD;border-radius:4px;padding:5px 8px;margin:2px 4px 2px 0;font-size:10px}.source-document-link:hover{background:#E8EFFC;text-decoration:underline}.source-document-link span{color:var(--text-3);font-weight:400}
.load-error{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 22px;padding:12px 14px;border-left:3px solid var(--coral);background:#FEF6F6;color:var(--text-2);font-size:11px}.load-error b{color:var(--text)}.load-error span{flex:1;min-width:260px}
.handoff-notes{height:auto;overflow:hidden;resize:none}
.decision-prompt{font-size:11px;font-weight:600;color:var(--navy);margin-top:10px}.conflict-actions{display:flex;gap:7px;align-items:center}.conflict-actions .aq{flex:1;max-width:none}
.realtag{background:var(--success);color:#0B2C16;font-size:8.5px;font-weight:700;letter-spacing:.06em;padding:2px 6px;border-radius:3px;vertical-align:middle;margin-left:6px}
.tbl{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:9.5px;background:#EEF2FC;color:#2C4C87;border:1px solid #D3DEF3;border-radius:3px;padding:1px 5px;white-space:nowrap}
.sect-h .tbl{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.3);color:#fff}
.sect-h .rt{flex-wrap:wrap;justify-content:flex-end;max-width:60%}

/* ============ CHIPS ============ */
.chip{display:inline-block;font-size:10px;font-weight:600;padding:4px 10px;border-radius:12px;white-space:nowrap}
.ch-g{background:#E4F5E7;color:#2E7D3C}
.ch-a{background:#FDF0DA;color:#9C6A0E}
.ch-r{background:#FBE3E3;color:#A62B2B}
.ch-b{background:#E5EDFA;color:#2C4C87}
.ch-p{background:#F1E5FB;color:#6B2E9E}
.ch-m{background:#EDEFF3;color:#6C7689}

/* ============ PIPELINE ============ */
.pipe{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:6px;position:relative;padding:6px 0 2px;align-items:start}
.pipe::before{content:"";position:absolute;left:6%;right:6%;top:23px;height:2px;background:var(--border)}
.pstep{text-align:center;position:relative;z-index:1;min-width:0}
.pnode{
  width:32px;height:32px;border-radius:50%;margin:0 auto 9px;background:#fff;
  border:2px solid var(--border);color:var(--text-3);
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;transition:.3s;
}
.pstep.done .pnode{border-color:var(--green);background:var(--green);color:#fff}
.pstep.act .pnode{border-color:var(--slate);background:var(--slate);color:#fff;box-shadow:0 0 0 5px rgba(98,116,175,.18);animation:pipeline-pulse 1.15s ease-in-out infinite}
@keyframes pipeline-pulse{0%,100%{box-shadow:0 0 0 4px rgba(98,116,175,.14)}50%{box-shadow:0 0 0 8px rgba(98,116,175,.28)}}
.pname{font-size:10.5px;font-weight:600;white-space:nowrap}
.pagent{font-size:8.5px;color:var(--text-3);margin-top:2px;white-space:nowrap}
.pmetric{font-size:10px;color:var(--slate);font-weight:600;margin-top:5px;min-height:14px}

/* ============ SCORE ============ */
.decomp{display:flex;height:28px;border-radius:4px;overflow:hidden;border:1px solid var(--border);margin-bottom:14px}
.decomp>div{
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:600;
  transition:flex-grow .7s cubic-bezier(.2,.8,.2,1);
}
.decomp>div.gap{background:#EDEFF3;color:var(--text-3)}
.lg{display:grid;gap:11px}
.lg-row{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;font-size:12px}
.sw{width:10px;height:10px;border-radius:2px}
.lg-why{grid-column:2/4;font-size:10.5px;color:var(--text-2);line-height:1.5;margin-top:-6px}
.lg-tot{border-top:1px solid var(--border-2);padding-top:11px;margin-top:3px;font-weight:600}

/* ============ EMAIL ============ */
.mail{border:1px solid var(--border);border-radius:5px;overflow:visible}
.mail-h{padding:11px 13px;background:#F6F8FC;border-bottom:1px solid var(--border)}
.mail-h .fr{font-size:12px;font-weight:600}
.mail-h .ad{font-size:10.5px;color:var(--text-3);margin-top:2px}
.mail-h .su{font-size:12px;font-weight:500;margin-top:7px}
.mail-b{padding:12px 13px;font-size:11.5px;color:var(--text-2);line-height:1.7;max-height:none;overflow:visible}
.email-rendered,.email-rendered *{max-height:none!important;overflow:visible!important}
.att{display:flex;flex-wrap:wrap;gap:6px;padding:10px 13px;border-top:1px solid var(--border-2);background:#FAFBFD}
.att span{font-size:10px;padding:4px 9px;border:1px solid var(--border);border-radius:12px;color:var(--text-2);background:#fff}
.att span b{color:var(--navy);font-weight:600}
.source-review-panel{margin-top:18px;padding-top:14px;border-top:1px solid var(--border-2)}
.source-review-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:9px;font-size:12px;font-weight:600;color:var(--navy)}
.source-review-sub{font-size:10px;font-weight:400;color:var(--text-3)}

/* ============ ENRICH / SUBJECTIVITIES ============ */
.enr{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ecard{border:1px solid var(--border);border-radius:5px;padding:12px 14px}
.ecard .t{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px}
.ecard .t b{font-size:11.5px;font-weight:600}
.ecard .d{font-size:11px;color:var(--text-2);line-height:1.6}
.subj{display:grid;gap:8px}
.subj-row{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--border);border-radius:4px;padding:9px 12px;font-size:11.5px;color:var(--text-2)}
.subj-row input{margin-top:2px;accent-color:var(--navy)}
.subj-row.aiadd{background:#F4F8FF;border-color:#BBD0EE}
.subj-row .why{display:block;font-size:10px;color:var(--slate);margin-top:3px;font-weight:500}

/* ============ COMPANION ============ */
.cmp-log{padding:14px;display:flex;flex-direction:column;gap:12px;max-height:340px;overflow:auto}
.msg{font-size:11.5px;line-height:1.65;max-width:94%}
.msg.u{align-self:flex-end;background:var(--navy);color:#fff;padding:9px 13px;border-radius:12px 12px 3px 12px}
.msg.a{align-self:flex-start;background:#F2F5FB;border:1px solid var(--border-2);color:var(--text);padding:10px 13px;border-radius:12px 12px 12px 3px}
.msg.a .who{display:block;font-size:9.5px;font-weight:700;letter-spacing:.1em;color:var(--slate);margin-bottom:5px}
.msg.a .cite{display:block;font-size:9.5px;color:var(--text-3);margin-top:8px;padding-top:7px;border-top:1px dashed var(--border)}
.cmp-ask{padding:12px 14px;border-top:1px solid var(--border-2);display:flex;flex-wrap:wrap;gap:7px}
.ask{
  font-family:inherit;font-size:10.5px;padding:6px 12px;border:1px solid var(--border);
  border-radius:14px;background:#fff;color:var(--text-2);cursor:pointer;text-align:left;transition:.14s;
}
.ask:hover{border-color:var(--navy);color:var(--navy)}
.typing{display:inline-flex;gap:3px}
.typing i{width:5px;height:5px;border-radius:50%;background:var(--slate);animation:bl 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes bl{0%,60%,100%{opacity:.25}30%{opacity:1}}

/* ============ MISC ============ */
.g-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px}
.stack{display:grid;gap:16px;align-content:start}
.field-review-actions{position:sticky;top:14px;align-self:start;max-height:calc(100vh - 28px);overflow:auto;padding-right:2px}
.hdr{margin:4px 0 16px}
.hdr h2{font-size:19px;font-weight:600}
.hdr p{font-size:12px;color:var(--text-2);margin-top:5px;max-width:820px;line-height:1.65}
.view{display:none}
.view.on{display:block;animation:fi .25s ease}
@keyframes fi{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.note{background:#F4F8FF;border-left:3px solid var(--slate);padding:12px 14px;border-radius:0 4px 4px 0;font-size:11.5px;color:var(--text-2);line-height:1.65}
.note b{color:var(--text)}
.kv{display:flex;justify-content:space-between;font-size:11.5px;padding:6px 0;border-bottom:1px dotted var(--border)}
.kv:last-child{border:none}
.kv span:first-child{color:var(--text-2)}
.kv span:last-child{font-weight:500}
.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ph{border:1px solid var(--border);border-radius:5px;overflow:hidden;background:#fff}
.ph-h{padding:12px 14px;background:var(--slate);color:#fff}
.ph-h .w{font-size:9.5px;letter-spacing:.13em;opacity:.9}
.ph-h .n{font-size:14px;font-weight:600;margin-top:3px}
.ph.p1 .ph-h{background:var(--navy)}
.ph.fut .ph-h{background:var(--slate-2)}
.ph-b{padding:13px 15px}
.ph-b li{font-size:11.5px;color:var(--text-2);line-height:1.55;margin-bottom:8px;list-style:none;padding-left:13px;position:relative}
.ph-b li::before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--slate-2)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.split ol{padding-left:18px}
.split li{font-size:11.5px;color:var(--text-2);line-height:1.6;margin-bottom:9px}
.bottom-bar{display:flex;gap:10px;flex-wrap:wrap;padding:16px 0 0;border-top:1px solid var(--border);margin-top:4px}
.action-guide{display:flex;flex-direction:column;gap:3px;padding:13px 15px;margin-top:16px;background:#F2F5FB;border-left:4px solid var(--slate);color:var(--navy);font-size:13px;line-height:1.45}
.action-guide span{color:#58657B}
.clearance-match-panel{margin-top:18px;padding:14px 0;border-top:1px solid var(--border)}
.clearance-match-table{font-size:12px}
.clearance-match-table td{vertical-align:middle}
.clearance-match-table tr{cursor:pointer}
.clearance-selection{margin:10px 0 0;padding:9px 12px;background:#F2F5FB;border-left:3px solid var(--slate)}
.clarification-panel{margin-top:18px;padding:14px;background:#FFF9EC;border:1px solid #E8C36A;border-left:4px solid #EDA92F}
.decline-panel{margin-top:18px;padding:14px;background:#FFF3F3;border:1px solid #E5A3A3;border-left:4px solid #D95D5D}
.audit-panel{margin-top:18px}.audit-list{margin-top:10px}.audit-row{padding:10px 0;border-bottom:1px solid #E4E8F0;font-size:12px}.audit-row:last-child{border-bottom:0}.audit-note{margin-top:5px;color:#4E6080;white-space:pre-wrap}
.button-spinner{display:inline-block;width:14px;height:14px;margin-right:7px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:button-spin .8s linear infinite}
@keyframes button-spin{to{transform:rotate(360deg)}}
.quote-workspace-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:16px 20px;margin:14px 0}
.quote-workspace-summary div{display:flex;flex-direction:column;gap:4px}.quote-workspace-summary .k{font-size:12px;color:var(--muted)}
.quote-workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quote-workspace-card h3{margin:0 0 14px;color:var(--navy);font-size:16px}.quote-workspace-card label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--navy);font-weight:600}.quote-workspace-card textarea{width:100%;resize:vertical;margin:6px 0 12px}.quote-limit-table{display:flex;flex-direction:column;gap:8px}.quote-limit-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.7fr);gap:10px;align-items:center;color:var(--navy);font-size:13px}.quote-workspace-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0 36px}
@media(max-width:900px){.quote-workspace-summary,.quote-workspace-grid{grid-template-columns:1fr}.quote-limit-row{grid-template-columns:1fr}}
.quote-view{font-size:11px}.quote-view .g-main{display:block}.quote-view > .g-main{display:none}.quote-view .quote-side{display:none}.quote-view .banner{margin:0 0 11px;border-radius:4px;padding:8px 16px;grid-template-columns:repeat(3,1fr);gap:3px 20px;background:#6682C0;font-size:10px}.quote-view .banner b{font-weight:600}
.quote-toolbar{display:flex;align-items:center;justify-content:space-between;padding:3px 15px 8px;background:#fff}.quote-toolbar .radios{display:flex;gap:18px;color:#9AA1AE}.quote-toolbar label{display:flex;align-items:center;gap:5px}.quote-toolbar input{accent-color:#2B8BE8}.quote-status{display:flex;align-items:center;gap:8px;font-weight:600}.quote-status select{height:28px;min-width:145px;border:1px solid var(--border);font:10px Poppins;background:#fff;padding:4px 8px}
.legacy-section{border:1px solid #BFC3CA;background:#fff;margin:0 16px 12px;box-shadow:0 1px 2px rgba(0,0,0,.04)}.legacy-bar{background:#6682C0;color:#fff;padding:8px 12px;font-size:10.5px;font-weight:600;display:flex;align-items:center;gap:8px;cursor:pointer}.legacy-bar .car{font-size:9px}.legacy-bar .tag-right{margin-left:auto;font-weight:400;opacity:.88}.legacy-body{padding:12px 13px 14px}.legacy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px 14px}.legacy-grid.three{grid-template-columns:repeat(3,1fr)}.legacy-grid.two{grid-template-columns:repeat(2,1fr)}.legacy-field label{display:block;color:#303743;font-size:9px;font-weight:600;margin-bottom:3px}.legacy-field label .req{color:var(--req)}.legacy-input{height:25px;border:1px solid #D5D8DE;background:#fff;border-radius:2px;padding:5px 7px;color:#4C5563;font:9.5px Poppins;display:flex;align-items:center;justify-content:space-between;gap:6px;white-space:nowrap;overflow:hidden}.legacy-input span:first-child{overflow:hidden;text-overflow:ellipsis}.legacy-input.ai{background:#F5F9FF;border-color:#BDD0EA}.legacy-input.warn{background:#FFF9ED;border-color:#EBCF8D}.legacy-rule{border-top:1px solid #E1E3E7;margin:12px 0}.quote-action{background:#20345F;color:#fff;border:0;border-radius:2px;font:600 9px Poppins;padding:7px 12px;cursor:pointer}.quote-action:hover{background:#304A82}.legacy-table{width:100%;border-collapse:collapse;font-size:9px}.legacy-table th{background:#6682C0;color:#fff;padding:6px 7px;font-weight:600;text-align:center}.legacy-table td{border:1px solid #DCE0E5;padding:6px 7px;text-align:center;color:#596272}.legacy-table tr:nth-child(even) td{background:#F8F9FB}.legacy-table .mini-input{border:1px solid #D4D8DE;height:24px;width:100%;padding:4px;font:9px Poppins}.legacy-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.checkgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;align-content:start}.checkrow{display:flex;align-items:center;justify-content:space-between;min-height:25px;color:#5A6472;font-size:9px}.checkrow input{accent-color:#2D8DE8}.yesno{display:flex;gap:7px;flex:none}.legacy-list{display:grid;gap:5px}.legacy-list .checkrow{border-bottom:1px solid #ECEEF1;padding-bottom:4px}.legacy-footer{display:flex;gap:10px;flex-wrap:wrap;padding:12px 16px 18px;background:#fff;border-top:1px solid #D9DDE4}.quote-view .legacy-collapsed .legacy-body{display:none}.quote-view .terms{font-size:9px;line-height:1.55;color:#5A6472;min-height:115px;border:1px solid #D5D8DE;padding:9px;background:#fff}

/* Submission 360: production-like working scale and interaction affordances */
.quote-view{font-size:14px;max-width:1540px;margin:0 auto}.quote-view .banner{margin:0 0 16px;padding:13px 20px;gap:8px 28px;font-size:13px}.quote-toolbar{padding:10px 18px 13px;font-size:13px}.quote-toolbar .radios{gap:22px}.quote-status select{height:36px;min-width:180px;font-size:13px}.quote-view .legacy-section{margin:0 0 16px}.quote-view .legacy-bar{padding:11px 15px;font-size:13px}.quote-view .legacy-body{padding:16px 18px 18px}.quote-view .legacy-grid{gap:14px 20px}.quote-view .legacy-grid:not(.three):not(.two){grid-template-columns:repeat(2,minmax(0,1fr))}.quote-view .legacy-field label{font-size:12px;margin-bottom:5px}.quote-view .legacy-input{height:36px;padding:7px 10px;font:13px Poppins;color:#303743}.quote-view .legacy-input[contenteditable="true"]{cursor:text}.quote-view .legacy-input[contenteditable="true"]:focus{outline:2px solid #7FA8DC;outline-offset:1px;background:#fff}.quote-view .legacy-two{gap:28px}.quote-view .checkgrid{gap:14px 34px}.quote-view .checkrow{min-height:32px;font-size:12px}.quote-view .checkrow input{width:16px;height:16px}.quote-view .yesno{gap:10px}.quote-view .legacy-list{gap:9px}.quote-view .legacy-list .checkrow{padding-bottom:7px}.quote-view .legacy-table{font-size:12px}.quote-view .legacy-table th,.quote-view .legacy-table td{padding:9px 10px}.quote-view .legacy-table .mini-input{height:34px;padding:6px 8px;font:12px Poppins}.quote-view .quote-action{font-size:12px;padding:9px 16px}.quote-view .terms{font-size:12px;line-height:1.7;min-height:150px;padding:12px}.quote-view .legacy-footer{padding:16px 0 6px;background:transparent}.quote-view .legacy-footer .quote-action{min-width:160px;flex:1}.quote-view .legacy-table [data-premises-action]{border:0;background:transparent;color:var(--navy);font:600 14px Poppins;cursor:pointer;padding:2px 5px}.quote-view .legacy-table [data-premises-action="delete"]{color:var(--red)}.quote-view .quote-dirty{box-shadow:inset 0 -3px 0 var(--amber)}

.quote-view>.legacy-section,.quote-view>.legacy-footer{display:none}.quote-active .topbar{display:none}.quote-active main{padding-top:10px}.prod-form{background:#fff;padding:0 0 18px}.prod-section{border:1px solid #AEB3BA;margin:0 0 18px;background:#fff;box-shadow:0 1px 3px rgba(20,31,60,.12)}.prod-section-head{width:100%;border:0;background:#6682C0;color:#fff;padding:12px 18px;text-align:left;font:600 13px Poppins;cursor:pointer;display:flex;align-items:center;gap:10px}.prod-section-head .chev{font-size:10px}.prod-section-body{padding:24px 22px}.prod-section.closed .prod-section-body{display:none}.prod-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px 14px;align-items:end}.prod-field{min-width:0}.prod-field label,.prod-block-title{display:block;font-size:12px;font-weight:600;color:#2F333A;margin-bottom:6px}.prod-field .req{color:var(--req)}.prod-field input,.prod-field select,.prod-field textarea{width:100%;height:36px;border:1px solid #C8CCD2;background:#fff;padding:7px 10px;font:12.5px Poppins;color:#282D35}.prod-field textarea{height:180px;resize:vertical;line-height:1.65}.prod-field input:focus,.prod-field select:focus,.prod-field textarea:focus{outline:2px solid #7FA8DC;outline-offset:0;border-color:#7FA8DC}.prod-field input.ai,.prod-field select.ai{background:#F5F9FF;border-color:#BDD0EA}.prod-divider{height:1px;background:#DADDE2;margin:20px 0}.prod-inline{display:flex;align-items:center;gap:12px;min-height:36px;font-size:12px}.prod-inline label{display:flex;align-items:center;gap:6px;margin:0;font-weight:400}.prod-inline input[type="radio"],.prod-inline input[type="checkbox"]{width:16px;height:16px;accent-color:#2B8BE8}.prod-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}.prod-button{border:0;background:#20345F;color:#fff;padding:9px 17px;font:600 12px Poppins;border-radius:2px;cursor:pointer}.prod-button:hover{background:#304A82}.prod-button.red{background:#ED454B}.prod-button.mini{padding:6px 10px}.prod-table{width:100%;border-collapse:collapse;font-size:12px}.prod-table th{background:#6682C0;color:#fff;padding:10px 8px;font-weight:600;text-align:center;border-right:1px solid rgba(255,255,255,.35)}.prod-table td{border:1px solid #D7DBE1;padding:8px;text-align:center}.prod-table input,.prod-table select{width:100%;height:34px;border:1px solid #C8CCD2;padding:6px 8px;font:12px Poppins}.prod-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.prod-question{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;font-size:12px}.prod-question>span:first-child{font-weight:500}.prod-question .prod-inline{flex:none}.prod-check-list{display:grid;gap:10px;margin-top:8px}.prod-check-list label{display:flex;align-items:center;gap:8px;font-size:12px}.prod-subjectivities{display:grid}.prod-subjectivity{display:grid;grid-template-columns:42px 1fr;align-items:center;border:1px solid #CBD0D8;border-bottom:0;background:#fff}.prod-subjectivity:nth-child(even){background:#EEF2FC}.prod-subjectivity:last-child{border-bottom:1px solid #CBD0D8}.prod-subjectivity input[type="checkbox"]{width:16px;height:16px;margin:auto;accent-color:#2B8BE8}.prod-subjectivity input[type="text"]{height:34px;margin:4px;border:1px solid #C8CCD2;padding:6px 9px;font:12px Poppins}.prod-footer{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:16px}.prod-footer .prod-button:disabled{background:#A9ADB5;cursor:not-allowed}.prod-note{font-size:11px;color:#697386;margin-top:5px}.prod-span-2{grid-column:span 2}.prod-span-3{grid-column:span 3}.prod-span-4{grid-column:span 4}.prod-span-5{grid-column:span 5}.prod-span-6{grid-column:span 6}.prod-span-7{grid-column:span 7}.prod-span-8{grid-column:span 8}.prod-span-12{grid-column:span 12}

.fld .ctl[contenteditable="true"]{cursor:text}.fld .ctl[contenteditable="true"]:focus{outline:2px solid #7FA8DC;outline-offset:1px}.fld .ctl[contenteditable="true"] .cbadge{pointer-events:none}
@media (max-width:1300px){.stats{grid-template-columns:repeat(3,1fr)}.g-main{grid-template-columns:1fr}.field-review-actions{position:static;max-height:none;overflow:visible;padding-right:0}.enr,.phases,.split{grid-template-columns:1fr}.pipe{grid-template-columns:repeat(4,1fr);row-gap:18px}.pipe::before{display:none}}
@media (max-width:900px){
  .app{grid-template-columns:1fr}
  .sidebar{position:relative;height:auto}
  .stats{grid-template-columns:repeat(2,1fr)}
  .pipe{grid-template-columns:repeat(3,1fr);row-gap:18px}.pipe::before{display:none}
  .f3,.f2,.banner{grid-template-columns:1fr}
  main{padding:0 14px 30px}.topbar{padding:12px 14px}
  .prod-grid{grid-template-columns:1fr}.prod-grid>[class*="prod-span-"]{grid-column:1}.prod-three,.prod-footer{grid-template-columns:1fr}.prod-section-body{padding:16px 14px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ============ Blazor host / error UI (kept, does not affect POC look) ============ */
#blazor-error-ui{
  background:var(--coral);color:#fff;bottom:0;box-shadow:0 -1px 8px rgba(0,0,0,.2);
  display:none;left:0;padding:.85rem 1.25rem;position:fixed;width:100%;z-index:1000;font-size:.9rem;
}
#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.85rem;top:.6rem}
.blazor-error-boundary{background:var(--coral);color:#fff;padding:1rem;border-radius:6px}
:focus-visible{outline:2px solid var(--slate);outline-offset:2px}

/* ============ THEME TOGGLE ============ */
.topbar-actions{display:flex;align-items:center;gap:16px}
.theme-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:18px;padding:7px 11px;background:var(--card);color:var(--text);font:500 11px Poppins,system-ui,sans-serif;cursor:pointer;transition:.15s}
.theme-toggle:hover{border-color:var(--slate);background:var(--row-alt)}
.theme-toggle-icon{font-size:15px;line-height:1}

html[data-theme="dark"]{
  color-scheme:dark;
  --page:#101827;
  --card:#172235;
  --row-alt:#1D2B42;
  --border:#34445E;
  --border-2:#293951;
  --text:#E8EEF8;
  --text-2:#B0BDD1;
  --text-3:#8291AA;
  --navy:#263B70;
  --navy-2:#314A87;
  --navy-3:#385392;
  --slate:#5F78B6;
  --slate-2:#748CC6;
}
html[data-theme="dark"] body{background:var(--page);color:var(--text)}
html[data-theme="dark"] .stat,
html[data-theme="dark"] .card,
html[data-theme="dark"] .sect,
html[data-theme="dark"] .ph,
html[data-theme="dark"] .prod-form,
html[data-theme="dark"] .prod-section,
html[data-theme="dark"] .quote-toolbar,
html[data-theme="dark"] .legacy-section,
html[data-theme="dark"] .quote-view .terms,
html[data-theme="dark"] .legacy-footer{background:var(--card);color:var(--text)}
html[data-theme="dark"] select.aq,html[data-theme="dark"] input.aq,
html[data-theme="dark"] .ctl,html[data-theme="dark"] .ask,
html[data-theme="dark"] .action-menu,html[data-theme="dark"] .action-menu button,
html[data-theme="dark"] .drawer-close,html[data-theme="dark"] .drawer-card,
html[data-theme="dark"] .handoff-notes,html[data-theme="dark"] .mail-h,
html[data-theme="dark"] .att,html[data-theme="dark"] .att span,
html[data-theme="dark"] .prod-field input,html[data-theme="dark"] .prod-field select,
html[data-theme="dark"] .prod-field textarea,html[data-theme="dark"] .prod-table input,
html[data-theme="dark"] .prod-table select,html[data-theme="dark"] .legacy-input,
html[data-theme="dark"] .legacy-table .mini-input{background:#1B293E;color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .btn.lt{background:transparent;color:var(--text);border-color:var(--slate-2)}
html[data-theme="dark"] .btn.lt:hover,html[data-theme="dark"] .action-menu button:hover,
html[data-theme="dark"] .ask:hover,html[data-theme="dark"] .drawer-close:hover{background:#263754}
html[data-theme="dark"] table.dt tbody td,html[data-theme="dark"] .prod-table td{border-color:var(--border)}
html[data-theme="dark"] table.dt tbody tr:hover,html[data-theme="dark"] table.dt tbody tr.sel{background:#263B5C}
html[data-theme="dark"] .qbox,html[data-theme="dark"] .action-trigger,.theme-toggle{background:var(--card);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] .action-trigger:hover,html[data-theme="dark"] .action-trigger.open{background:#263754;color:var(--text)}
html[data-theme="dark"] .cfrow,html[data-theme="dark"] .review-guide,html[data-theme="dark"] .handoff-panel,
html[data-theme="dark"] .source-document-link,html[data-theme="dark"] .note,
html[data-theme="dark"] .action-guide,html[data-theme="dark"] .clearance-selection,
html[data-theme="dark"] .msg.a,.quote-view .legacy-input.ai,html[data-theme="dark"] .prod-field input.ai,
html[data-theme="dark"] .prod-field select.ai,html[data-theme="dark"] .subj-row.aiadd{background:#1C3151;color:var(--text);border-color:#42608F}
html[data-theme="dark"] .ctl.ai{background:#1C3151;border-color:#42608F}
html[data-theme="dark"] .ctl.warn,html[data-theme="dark"] .legacy-input.warn{background:#3A321F;border-color:#80682D}
html[data-theme="dark"] .ctl.bad,html[data-theme="dark"] .fld.critical .ctl,
html[data-theme="dark"] .clarification-panel,html[data-theme="dark"] .decline-panel{background:#3A2229;border-color:#8A4B57}
html[data-theme="dark"] .prod-field label,html[data-theme="dark"] .legacy-field label,
html[data-theme="dark"] .quote-workspace-card label,html[data-theme="dark"] .quote-workspace-card h3{color:var(--text)}
html[data-theme="dark"] .prod-subjectivity,html[data-theme="dark"] .prod-subjectivity:nth-child(even){background:var(--card);border-color:var(--border)}
html[data-theme="dark"] .legacy-table tr:nth-child(even) td{background:#1D2B42}
html[data-theme="dark"] .email-rendered{background:#fff;color:#111}
html[data-theme="dark"] .topbar{background:var(--page)}
html[data-theme="dark"] .theme-toggle:hover{background:#263754}

/* ============ LOGIN ============ */
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--page)}
.login-card{width:min(420px,100%);padding:34px 36px;background:var(--card);color:var(--text)}
.login-logo{color:var(--navy);font-size:34px}
.login-logo-sub{color:var(--text-3);font-size:9px;letter-spacing:.28em;font-weight:600;margin:4px 0 28px}
.login-card h1{font-size:20px;margin-bottom:7px}
.login-intro{color:var(--text-2);font-size:12px;line-height:1.6;margin-bottom:22px}
.login-field{display:block;color:var(--text);font-size:11.5px;font-weight:600;margin-bottom:14px}
.login-field span{display:block;margin-bottom:6px}
.login-field input{width:100%;height:40px;border:1px solid var(--border);border-radius:4px;background:var(--page);color:var(--text);font:13px Poppins;padding:8px 10px}
.login-field input:focus{outline:2px solid var(--blue);outline-offset:1px}
.login-submit{width:100%;margin-top:8px}
.login-error{border-left:3px solid var(--coral);background:#FEF1F1;color:#A62B2B;padding:10px 12px;font-size:11px;margin-bottom:16px}
html[data-theme="dark"] .login-logo{color:var(--text)}
html[data-theme="dark"] .login-error{background:#3A2229;color:#F3A5B0}
.validation-warning{margin-top:5px;padding:6px 8px;border-left:3px solid var(--coral);background:#FFF3F3;color:#A62B2B;font-size:10px;line-height:1.45}
html[data-theme="dark"] .validation-warning{background:#3A2229;color:#F3A5B0}
html[data-theme="dark"] .field-section{background:rgba(255,255,255,.025)}

/* ============ .eml import drop zone (Submission Intake, dev/test) ============ */
.eml-dropzone{
  position:relative;border:2px dashed var(--border,#ccc);border-radius:8px;
  padding:18px 16px;text-align:center;background:transparent;cursor:pointer;
  transition:background .15s ease,border-color .15s ease;
}
.eml-dropzone:hover{border-color:var(--slate,#4a5568);background:rgba(74,85,104,0.04)}
.eml-dropzone.drag-over{border-color:var(--green,#2f9e44);background:rgba(47,158,68,0.08)}
.eml-dropzone .eml-dz-title{font-size:12.5px;font-weight:600;color:var(--text-2,#334155)}
.eml-dropzone .eml-dz-sub{font-size:10.5px;color:var(--text-3,#64748b);margin-top:4px}
.eml-dropzone .eml-dz-icon{opacity:.55;margin-bottom:6px}
.eml-dropzone input[type=file]{
  position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;
}
.eml-dropzone.disabled{opacity:.55;cursor:not-allowed}
.eml-dropzone.disabled input[type=file]{cursor:not-allowed}

/* ============ intake processing indicator ============ */
.intake-progress{
  display:flex;align-items:center;gap:9px;margin:10px 22px 0;padding:9px 12px;
  border:1px solid rgba(47,158,68,.28);border-radius:5px;background:rgba(47,158,68,.07);
  color:var(--text-2,#334155);font-size:11px
}
.intake-spinner{
  width:13px;height:13px;border:2px solid rgba(47,158,68,.25);border-top-color:var(--green,#2f9e44);
  border-radius:50%;animation:intake-spin .8s linear infinite;flex:0 0 auto
}
@keyframes intake-spin{to{transform:rotate(360deg)}}
.eml-file-chip{
  display:inline-flex;align-items:center;gap:4px;font-size:10.5px;background:rgba(74,85,104,0.08);
  border-radius:4px;padding:2px 7px;margin:2px 3px 0 0;
}
.eml-file-chip.ok{color:var(--green,#2f9e44);background:rgba(47,158,68,0.1)}
.eml-file-chip.err{color:var(--coral,#e64980);background:rgba(230,73,128,0.1)}
