:root { color-scheme: light; font-family: Inter, Segoe UI, system-ui, sans-serif; background:#f4f6f8; color:#17202a; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; }
header { display:flex; justify-content:space-between; gap:2rem; align-items:center; padding:2rem clamp(1rem,4vw,4rem); color:white; background:linear-gradient(120deg,#102a43,#0f766e); }
h1,h2,p { margin-top:0; }
h1 { margin-bottom:.4rem; font-size:clamp(1.8rem,4vw,3rem); }
.eyebrow { margin-bottom:.35rem; text-transform:uppercase; letter-spacing:.16em; font-size:.75rem; font-weight:700; color:#99f6e4; }
.subtitle { margin-bottom:0; max-width:60rem; color:#d8f3ef; }
button,input,select,textarea { font:inherit; }
button { border:0; border-radius:.55rem; padding:.7rem 1rem; cursor:pointer; font-weight:650; }
header button,.primary { color:white; background:#0f766e; box-shadow:0 0 0 1px #5eead4 inset; }
.connection { padding:.7rem clamp(1rem,4vw,4rem); background:#fff7ed; color:#9a3412; border-bottom:1px solid #fed7aa; }.connection.ok{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.connection.bad{background:#fef2f2;color:#991b1b;border-color:#fecaca}
.settings { display:grid; grid-template-columns:repeat(4,minmax(12rem,1fr)); gap:1rem; padding:1rem clamp(1rem,4vw,4rem); background:white; border-bottom:1px solid #d7dee5; }
label { display:grid; gap:.35rem; font-size:.82rem; font-weight:650; color:#425466; }
input,select,textarea { width:100%; padding:.65rem; border:1px solid #b9c4cf; border-radius:.45rem; background:white; }
main { max-width:1500px; margin:auto; padding:2rem clamp(1rem,4vw,4rem) 5rem; }
.summary { display:grid; grid-template-columns:repeat(6,1fr); gap:1rem; margin-bottom:2rem; }
.metric { padding:1.2rem; border-radius:.8rem; background:white; border:1px solid #dde3e8; box-shadow:0 8px 24px #102a4310; }
.metric strong { display:block; font-size:2rem; color:#0f766e; }
.metric small { display:block; margin-top:.35rem; color:#627383; font-size:.7rem; line-height:1.35; }
.section-title { display:flex; justify-content:space-between; align-items:center; margin-top:2rem; }
.queue { display:grid; grid-template-columns:repeat(auto-fill,minmax(310px,1fr)); gap:1rem; }
.card { display:flex; flex-direction:column; gap:.8rem; min-height:220px; padding:1.2rem; border-radius:.8rem; background:white; border:1px solid #dce3e8; box-shadow:0 10px 30px #102a430e; }
.card.compact{min-height:160px}.workspace-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.panel{padding:1.3rem;border:1px solid #dce3e8;border-radius:.8rem;background:white;box-shadow:0 10px 30px #102a430e}.panel.wide{grid-column:1/-1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1rem}.form-grid.four{grid-template-columns:repeat(4,1fr)}.eyebrow.dark{color:#0f766e}.inline-result{margin-top:.8rem;overflow-wrap:anywhere}.success{color:#047857}.error{color:#b42318;white-space:pre-wrap}
.card h3 { margin:0; font-size:1.05rem; }
.badge { align-self:flex-start; padding:.25rem .55rem; border-radius:999px; font-size:.73rem; font-weight:750; background:#e0f2fe; color:#075985; }
.badge.p4 { background:#fef3c7; color:#92400e; }.badge.p5 { background:#fee2e2; color:#991b1b; }
.finding-badges{display:flex;flex-wrap:wrap;gap:.4rem}.finding-badges .badge{align-self:auto}.badge.lifecycle{background:#eef2f6;color:#425466}.auditor-text{padding:.8rem;border-left:4px solid #0f766e;border-radius:.35rem;background:#f0fdfa;color:#334e68}.auditor-text strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.auditor-text p{margin:.3rem 0 0;white-space:pre-wrap}.plan-ready{margin:0;color:#047857;font-weight:700;font-size:.8rem}.section-help{margin-top:-.5rem;color:#627383}.analysis-item{margin:.65rem 0;padding:.7rem;border:1px solid #dce3e8;border-radius:.55rem}.analysis-item p{margin:.35rem 0 0;color:#52606d}.finding-decision{display:grid;gap:.8rem;margin-bottom:1rem;padding:1rem;border-radius:.7rem;background:#f5f8fa}.response-plan-editor{padding:.8rem;border:1px solid #d7dee5;border-radius:.55rem;background:white}.response-plan-editor summary{cursor:pointer;font-weight:750;color:#0f766e}.response-plan-editor label{margin-top:.75rem}
.finding-groups{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;margin-top:2rem;align-items:start}.finding-group{padding:1.25rem;border:2px solid;border-radius:1rem;min-width:0}.finding-group .section-title{margin-top:.35rem;align-items:flex-start}.finding-group .section-title h2{margin-bottom:.2rem}.finding-group .queue{grid-template-columns:1fr}.new-findings{border-color:#bae6fd;background:#f0f9ff}.closure-findings{border-color:#fdba74;background:#fff7ed}.group-label{display:inline-block;padding:.25rem .55rem;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.new-findings .group-label{background:#dbeafe;color:#075985}.closure-findings .group-label{background:#ffedd5;color:#9a3412}.closure-findings .auditor-text{border-color:#c2410c;background:#fffaf5}
.meta { display:grid; grid-template-columns:auto 1fr; gap:.3rem .7rem; margin:0; font-size:.82rem; color:#52606d; }
.meta dt { font-weight:700; }.meta dd { margin:0; overflow-wrap:anywhere; }
.actions { display:flex; gap:.5rem; margin-top:auto; }
.danger { background:#b42318; color:white; }.secondary { background:#e8edf2; color:#243b53; }
.empty { padding:2rem; border:1px dashed #aeb9c4; border-radius:.8rem; color:#52606d; text-align:center; background:#ffffff88; }
dialog { width:min(760px,calc(100vw - 2rem)); max-height:calc(100vh - 2rem); overflow:auto; border:0; border-radius:.9rem; padding:1.4rem; box-shadow:0 24px 80px #0004; }
dialog::backdrop { background:#102a4388; }.dialog-actions { display:flex; justify-content:flex-end; gap:.6rem; margin-top:1rem; }
textarea { min-height:8rem; resize:vertical; }
.management-portal,.operations-portal{margin-bottom:2rem;padding:1.4rem;border:1px solid #cbd5df;border-radius:1rem;background:#fff;box-shadow:0 14px 40px #102a4312}.management-portal{border-top:5px solid #0f766e}.operations-heading{margin-top:0;align-items:flex-end}.operations-heading p{margin-bottom:.25rem;color:#52606d}.operation-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem;margin:1.2rem 0}.operation-stat{padding:.9rem;border-radius:.7rem;background:#f5f8fa;border:1px solid #e0e6eb}.operation-stat span{display:block;font-size:.75rem;color:#52606d}.operation-stat strong{font-size:1.45rem}.operation-stat.attention strong,.status-requires_attention{color:#b45309}.operation-stat.failed strong,.status-failed{color:#b42318}.status-completed{color:#047857}.status-running{color:#0369a1}.hierarchy-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;min-height:330px}.process-tree{padding:.75rem;border-radius:.75rem;background:#f4f7f9;border:1px solid #dce3e8}.process-tree button{display:block;width:100%;padding:.65rem .7rem;text-align:left;background:transparent;color:#334e68}.process-tree button:hover,.process-tree button.selected{background:#dff5f1;color:#075e57}.tree-root{font-weight:800}.tree-area{margin:.9rem .55rem .3rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#7b8794}.tree-process{padding-left:1rem!important;font-size:.84rem}.tree-count{float:right;border-radius:999px;padding:.05rem .4rem;background:#dce5eb;font-size:.7rem}.run-toolbar{display:flex;justify-content:space-between;padding:.35rem .15rem .8rem;color:#334e68}.run-list{display:grid;gap:.7rem}.run{border:1px solid #dce3e8;border-radius:.75rem;background:white;overflow:hidden}.run summary{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,1fr) auto auto;gap:1rem;align-items:center;padding:1rem;cursor:pointer}.run summary::-webkit-details-marker{display:none}.run-ref{font-weight:750}.run-process,.run-time{font-size:.78rem;color:#627383}.run-status{font-size:.72rem;font-weight:800;text-transform:uppercase}.run-body{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:0 1rem 1rem;border-top:1px solid #edf1f4}.run-body h4{margin:1rem 0 .35rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#52606d}.run-body ul{margin:.25rem 0;padding-left:1.1rem}.run-body li{margin:.3rem 0}.run-agents{grid-column:1/-1}.agent-chip{display:inline-block;margin:.2rem .25rem .2rem 0;padding:.25rem .5rem;border-radius:999px;background:#e0f2fe;color:#075985;font-size:.72rem}.run-error{grid-column:1/-1;padding:.7rem;border-radius:.5rem;background:#fef2f2;color:#991b1b}.muted{color:#7b8794}.hierarchy-empty{padding:3rem 1rem;text-align:center;color:#627383;border:1px dashed #b8c3cc;border-radius:.75rem}.portfolio-detail{min-width:0}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem}.portfolio-card{padding:1rem;border:1px solid #dce3e8;border-radius:.75rem;background:#fbfcfd}.portfolio-card h3{margin:.35rem 0;font-size:1rem}.portfolio-card p{margin-bottom:.4rem;color:#52606d}.portfolio-code{font-size:.72rem;font-weight:800;color:#0f766e;letter-spacing:.06em}.portfolio-state{display:inline-block;padding:.2rem .45rem;border-radius:999px;background:#ecfdf5;color:#047857;font-size:.7rem;font-weight:750}.portfolio-state.pending{background:#fff7ed;color:#9a3412}.portfolio-detail-head{padding:1rem;border-radius:.75rem;background:linear-gradient(120deg,#effaf8,#f5f8fa);border:1px solid #cfe5e1}.portfolio-detail-head h3{margin:.25rem 0}.portfolio-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.portfolio-box{padding:1rem;border:1px solid #dce3e8;border-radius:.75rem}.portfolio-box h4{margin:0 0 .6rem}.portfolio-box ul{margin:0;padding-left:1.2rem}.quality-note{padding:.7rem;border-radius:.6rem;background:#fff7ed;color:#9a3412;font-size:.82rem}
@media (max-width:1100px) { .summary{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:1fr 1fr}.operation-summary{grid-template-columns:repeat(3,1fr)} }
@media (max-width:900px) { .settings,.summary,.workspace-grid,.form-grid,.form-grid.four,.hierarchy-layout,.portfolio-columns,.finding-groups { grid-template-columns:1fr; } .panel.wide{grid-column:auto} header { align-items:flex-start; flex-direction:column; }.process-tree{max-height:300px;overflow:auto}.run summary{grid-template-columns:1fr auto}.run-process,.run-time{grid-column:1}.run-body{grid-template-columns:1fr}.run-agents{grid-column:auto} }
