:root{
  --bg:#f5f7fa;--surface:#fff;--surface2:#f9fafb;--text:#101828;--muted:#667085;--border:#e4e7ec;
  --brand:#111827;--accent:#2563eb;--accentSoft:#eef4ff;--good:#067647;--warn:#b54708;--bad:#b42318;
  --shadow:0 18px 50px rgba(16,24,40,.16);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);background:var(--bg)
}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg)}button,input,select,textarea{font:inherit}
.topbar{height:68px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:800}.brand strong{display:block;font-size:14px;letter-spacing:.08em}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.top-actions,.case-actions,.dialog-footer-actions{display:flex;gap:9px;align-items:center}
.shell{display:grid;grid-template-columns:320px minmax(0,1fr);height:calc(100vh - 68px);min-height:560px}.sidebar{background:var(--surface);border-right:1px solid var(--border);padding:18px 14px;overflow:auto}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px 12px}.sidebar h2{font-size:16px;margin:0}.sidebar-head small{display:block;margin-top:3px;font-size:10px}.workspace{padding:28px;min-width:0;overflow:auto}
.dashboard-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:0 0 11px}.dash-mini{border:1px solid var(--border);background:var(--surface2);border-radius:9px;padding:8px 10px}.dash-mini b{display:block;font-size:16px}.dash-mini span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.filters.stacked{display:grid;grid-template-columns:1fr 112px;gap:7px}
input,textarea,select{width:100%;border:1px solid var(--border);border-radius:9px;padding:10px 11px;background:#fff;color:var(--text);outline:none;min-height:39px}textarea{resize:vertical;line-height:1.4}input:focus,textarea:focus,select:focus{border-color:#84adff;box-shadow:0 0 0 3px #dbe8ff}
.case-list{margin-top:12px;display:flex;flex-direction:column;gap:7px}.case-item{border:1px solid transparent;border-radius:10px;padding:11px;cursor:pointer;background:transparent}.case-item:hover{background:var(--surface2)}.case-item.active{background:var(--accentSoft);border-color:#c7d7fe}.case-item strong{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-item .case-sub{display:flex;justify-content:space-between;color:var(--muted);margin-top:6px;font-size:10px;gap:8px}.case-item .case-customer{font-size:10px;color:#475467;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.empty-state{max-width:820px;margin:80px auto;text-align:center}.hero-icon{width:72px;height:72px;border-radius:20px;background:#eaf0ff;color:var(--accent);display:grid;place-items:center;margin:0 auto 18px;font-size:32px}.empty-state h1{font-size:30px;margin:5px 0 10px}.empty-state p{color:var(--muted);line-height:1.6}.empty-actions{display:flex;justify-content:center;gap:10px;margin-top:22px;flex-wrap:wrap}.principles{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:24px;flex-wrap:wrap}.principles span{padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;font-size:12px}
.case-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.case-header h1{margin:4px 0 5px;font-size:27px}.case-header p{margin:0;color:var(--muted)}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:700}.status-select{width:auto;min-width:150px}
button{border:0;border-radius:8px;padding:9px 13px;cursor:pointer;font-weight:650;font-size:13px}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--brand);color:#fff}.primary:hover{background:#344054}.ghost{background:#fff;border:1px solid var(--border);color:var(--text)}.ghost:hover{background:#f9fafb}.small{padding:7px 10px;font-size:12px}.icon-btn{background:transparent;font-size:24px;padding:2px 7px;color:#475467}
.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.05em}.badge.good{background:#ecfdf3;color:var(--good)}.badge.warn{background:#fffaeb;color:var(--warn)}.badge.bad{background:#fef3f2;color:var(--bad)}.badge.neutral{background:#f2f4f7;color:#475467}.meta-row{display:flex;gap:8px;flex-wrap:wrap;margin:19px 0}.meta-chip{background:#fff;border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:11px;color:#475467}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px;overflow-x:auto}.tabs button{background:transparent;border-radius:0;padding:10px 12px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}.tabs button.active{color:var(--text);border-bottom-color:var(--brand)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:17px;box-shadow:0 1px 2px rgba(16,24,40,.02)}.card h3{font-size:13px;margin:0 0 12px}.card p{color:#475467;line-height:1.5}.span4{grid-column:span 4}.span6{grid-column:span 6}.span8{grid-column:span 8}.span12{grid-column:span 12}.metric{font-size:27px;font-weight:750}.muted{color:var(--muted)}.kv{display:grid;grid-template-columns:155px 1fr;gap:7px 14px;font-size:12px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:500;min-width:0;word-break:break-word}.list{display:flex;flex-direction:column;gap:8px}.list-item{padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff}.list-item strong{font-size:12px}.list-item p{font-size:12px;margin:5px 0 0;line-height:1.5}.role{font-weight:800}.role.CAUSE{color:var(--bad)}.role.CONTRIBUTOR{color:var(--warn)}.role.SYMPTOM{color:#7f56d9}.role.RULED_OUT{color:var(--good)}
.callout{padding:12px 13px;border-radius:9px;background:#f8fafc;border:1px solid var(--border);font-size:12px;line-height:1.55}.callout.good{background:#ecfdf3;border-color:#abefc6}.callout.warn{background:#fffaeb;border-color:#fedf89}.callout.bad{background:#fef3f2;border-color:#fecdca}.dropzone{border:1.5px dashed #98a2b3;border-radius:12px;background:#fafafa;padding:28px;text-align:center;cursor:pointer}.dropzone.drag{background:#eef4ff;border-color:var(--accent)}
table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:var(--muted);font-weight:600;border-bottom:1px solid var(--border);padding:9px 6px}td{border-bottom:1px solid #f2f4f7;padding:9px 6px;vertical-align:top}.table-wrap{overflow:auto}.hidden{display:none!important}pre{white-space:pre-wrap;word-break:break-word;background:#101828;color:#e5e7eb;border-radius:9px;padding:12px;max-height:360px;overflow:auto;font-size:11px}.resolution-form,.note-form{display:grid;gap:12px}.resolution-form label,.note-form label{font-size:11px;font-weight:600;color:#475467}.copy-row{display:flex;justify-content:flex-end;margin-top:8px}
/* Dialogs: designed explicitly for 13/14-inch laptop viewports */
dialog{border:0;padding:0;border-radius:16px;box-shadow:var(--shadow);width:auto;max-width:calc(100vw - 28px);max-height:calc(100vh - 28px);overflow:hidden;background:transparent}dialog::backdrop{background:rgba(16,24,40,.56)}.dialog-shell{background:#fff;display:flex;flex-direction:column;max-height:calc(100vh - 28px);overflow:hidden}.dialog-md{width:min(620px,calc(100vw - 28px))}.dialog-xl{width:min(980px,calc(100vw - 28px))}.dialog-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:20px 24px 14px;border-bottom:1px solid var(--border);background:#fff;flex:0 0 auto}.dialog-header h3{margin:0 0 5px;font-size:20px}.dialog-header p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.dialog-body{padding:18px 24px;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto;min-height:0}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 24px;border-top:1px solid var(--border);background:#fff;flex:0 0 auto;position:sticky;bottom:0}.footer-hint{font-size:11px;color:var(--muted);max-width:60%}
.segmented{display:inline-flex;background:#f2f4f7;padding:3px;border-radius:9px;margin-bottom:18px}.segmented button{background:transparent;color:#475467;padding:8px 14px}.segmented button.active{background:#fff;color:var(--text);box-shadow:0 1px 3px rgba(16,24,40,.12)}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin:2px 0 12px}.section-title h4{margin:0 0 4px;font-size:14px}.section-title p{margin:0;color:var(--muted);font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{font-size:11px;color:#475467;font-weight:600}.form-grid input,.form-grid textarea,.form-grid select{margin-top:5px}.form-grid .span2{grid-column:span 2}.compact-grid{grid-template-columns:1fr 1fr 160px;margin-top:16px}.advanced{border:1px solid var(--border);border-radius:11px;margin-top:16px;background:#fcfcfd}.advanced summary{cursor:pointer;padding:12px 14px;font-size:12px;font-weight:700;color:#344054}.advanced[open] summary{border-bottom:1px solid var(--border)}.advanced .form-grid{padding:14px}
.adopt-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(340px,1.1fr);gap:14px}.engine-case-list{margin-top:8px;border:1px solid var(--border);border-radius:10px;max-height:330px;overflow:auto;background:#fff}.engine-case-item{padding:11px 12px;border-bottom:1px solid #f2f4f7;cursor:pointer}.engine-case-item:last-child{border-bottom:0}.engine-case-item:hover,.engine-case-item.active{background:#eef4ff}.engine-case-item strong{display:block;font-size:12px}.engine-case-item small{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;margin-top:4px}.preview-card{border:1px solid var(--border);border-radius:10px;padding:14px;background:#f9fafb;min-height:180px}.preview-card h4{margin:0 0 8px}.empty-mini{color:var(--muted);font-size:12px;display:grid;place-items:center;min-height:150px;text-align:center}.pipeline{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:16px}.pipeline span{padding:7px 9px;border:1px solid var(--border);border-radius:8px;font-size:11px;background:#f9fafb}.pipeline i{font-style:normal;color:var(--muted)}.check{display:flex;gap:8px;align-items:flex-start;font-size:13px}.check input{width:auto;min-height:auto;margin-top:2px}.toast{position:fixed;right:22px;bottom:22px;background:#101828;color:#fff;padding:11px 14px;border-radius:9px;box-shadow:var(--shadow);font-size:12px;z-index:50;max-width:420px}.progress{height:4px;background:#eaecf0;border-radius:99px;overflow:hidden;margin-top:8px}.progress i{display:block;height:100%;background:var(--accent);animation:pulse 1.3s infinite;width:55%}@keyframes pulse{0%{transform:translateX(-100%)}100%{transform:translateX(220%)}}
.note-head{display:flex;justify-content:space-between;gap:10px}.note-meta{font-size:10px;color:var(--muted)}.note-type{font-size:9px;font-weight:800;letter-spacing:.06em;color:#475467}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat-box{border:1px solid var(--border);border-radius:9px;padding:10px;background:#f9fafb}.stat-box b{display:block;font-size:18px}.stat-box span{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}
@media(max-width:1100px){.shell{grid-template-columns:260px minmax(0,1fr)}.span4,.span6,.span8{grid-column:span 12}.adopt-grid{grid-template-columns:1fr}.engine-case-list{max-height:220px}.compact-grid{grid-template-columns:1fr 1fr}.compact-grid label:last-child{grid-column:span 2}}
@media(max-width:760px){.shell{display:block;height:auto}.sidebar{border-right:0;border-bottom:1px solid var(--border);max-height:320px}.workspace{padding:18px}.case-header{display:block}.case-actions{margin-top:14px;flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:span 1}.compact-grid{grid-template-columns:1fr}.compact-grid label:last-child{grid-column:span 1}.topbar{padding:0 12px}.brand small{display:none}.filters.stacked{grid-template-columns:1fr}.dialog-header,.dialog-body,.dialog-footer{padding-left:16px;padding-right:16px}.dialog-footer{align-items:flex-end}.footer-hint{display:none}.stat-row{grid-template-columns:repeat(2,1fr)}}
/* Team-ready hardening */
.verdict-text{font-size:17px;line-height:1.25;overflow-wrap:anywhere;word-break:break-word;max-width:100%}
.verdict-code{margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:9px;line-height:1.35;color:#667085;overflow-wrap:anywhere}
.stat-row.team-ready{grid-template-columns:repeat(5,minmax(0,1fr))}
.stat-row.evidence-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.evidence-label p{margin:0 0 6px;color:#344054;font-weight:600}
.evidence-label code{display:block;color:#667085;font-size:10px;overflow-wrap:anywhere}
.action-hint{margin-top:8px;line-height:1.5}
.inherited-refs{padding:12px 14px}
.preview-verdict{font-weight:700;font-size:13px;line-height:1.35;margin:4px 0 12px;overflow-wrap:anywhere}
.validation-confirm{padding:10px 12px;border:1px solid #fedf89;background:#fffaeb;border-radius:9px}
@media(max-width:1200px){.stat-row.team-ready{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.stat-row.team-ready,.stat-row.evidence-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Engineer Copilot answer layer */
.engineer-answer{border-width:2px}.engineer-answer.answer-good{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4 0%,#fff 58%)}.engineer-answer.answer-warn{border-color:#fcd34d;background:linear-gradient(180deg,#fffbeb 0%,#fff 58%)}
.answer-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.answer-head h2{margin:4px 0 10px;font-size:26px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#64748b}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin-top:12px}.answer-grid h4{margin:0 0 5px;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.answer-grid p{margin:0;font-size:15px;line-height:1.5}.answer-action{font-weight:750;color:#0f172a}.answer-grid small{display:block;margin-top:5px;color:#64748b}.answer-warning{margin-top:16px}.ai-report{white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:14px;font-size:12px;line-height:1.45}.callout.bad{border-color:#fecaca;background:#fef2f2;color:#991b1b}
@media (max-width:900px){.answer-grid{grid-template-columns:1fr}.answer-head{flex-direction:column}}
