/* Workflow shell: stable header, contextual setup, and one export menu. */
[hidden]{display:none!important}
button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
#topbar{height:70px;min-height:70px;flex-wrap:nowrap;padding:0 26px;justify-content:space-between;gap:20px;z-index:30}
#topbar .brand{display:flex;align-items:center;gap:10px;font-size:20px;letter-spacing:-.6px;white-space:nowrap}#topbar .brand img{flex:none}
.session-actions{display:flex;align-items:center;gap:20px;min-width:0}#reviewSaveState{font-size:11px;color:#8dc6b2;white-space:nowrap}#reviewSaveState.dirty{color:#f6cf83}
.quiet{border:0;background:transparent;color:#a9bed3;font:inherit;font-size:12px;padding:8px 0;cursor:pointer}.quiet:hover{color:#7dd3fc}.quiet:disabled{opacity:.5;cursor:default}
.btn{font-weight:550;padding:10px 14px;border-radius:7px}.btn.primary,.export-trigger{background:#38bdf1!important;border:1px solid #38bdf1!important;color:#052b40!important;font-weight:700}
.action-menu{position:relative}.action-menu>summary{cursor:pointer;list-style:none;padding:10px 13px;font-size:13px;border-radius:7px;white-space:nowrap}.action-menu>summary::-webkit-details-marker{display:none}.action-menu[open]>summary{box-shadow:0 0 0 1px #4f7a98}.menu-items{position:absolute;right:0;top:calc(100% + 9px);width:260px;padding:7px;background:#182a40;border:1px solid #38516d;border-radius:10px;box-shadow:0 12px 35px #0008;z-index:50}.menu-items>a,.menu-items>button{display:block;width:100%;border:0;background:none;color:#e0ecf8;text-align:left;text-decoration:none;padding:12px;font:inherit;font-size:13px;border-radius:6px}.menu-items>a:hover,.menu-items>button:not(:disabled):hover{background:#26435d}.menu-items small{display:block;color:#8fa8c2;font-size:11px;margin-top:5px;line-height:1.5}.menu-items button:disabled{opacity:.55;cursor:not-allowed}
#workflow{height:74px;min-height:74px;flex:none;padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#101e30;border-bottom:1px solid #293b51;z-index:20}.workflow-steps,.workflow-actions{display:flex;align-items:center;gap:15px}.workflow-step{display:flex;align-items:center;gap:8px;color:#8097af;background:none;border:0;font:inherit;font-size:12px;padding:6px 0;cursor:pointer;white-space:nowrap}.step-number{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;border:1px solid #344961;font-size:11px}.workflow-step[aria-current="step"]{color:#e3f5ff;font-weight:650}.workflow-step[aria-current="step"] .step-number{background:#38bdf1;color:#062a3e;border-color:#38bdf1}.workflow-step.done .step-number{background:#15352e;color:#71d9b1;border-color:#2c6253}.workflow-step:disabled{cursor:default;opacity:.6}.step-arrow{color:#4a627c}#workflowStatus{font-size:11px;color:#8ca6bf;max-width:230px;line-height:1.4}
#workspaceShell{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}#main{grid-template-columns:260px minmax(0,1fr) 350px}body[data-loaded="false"] #main{visibility:hidden}
#welcome{position:absolute;inset:0;overflow:auto;background:radial-gradient(ellipse at 50% 15%,#152e46 0,transparent 64%),#091320;z-index:10;display:grid;place-items:center;padding:36px 24px}.welcome-inner{width:100%;max-width:970px;text-align:center}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#68d0f3;font-weight:650}.welcome-inner h1{font-size:clamp(26px,3vw,35px);letter-spacing:-1px;font-weight:600;margin:16px 0 12px}.welcome-lead{color:#91a9c2;font-size:14px;line-height:1.7}.start-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.start-card{display:flex;flex-direction:column;align-items:flex-start;padding:28px;border:1px solid #2d425b;border-radius:12px;background:#101e30;color:var(--text);text-decoration:none;text-align:left;font:inherit;cursor:pointer}.start-card:hover{border-color:#71ccea;background:#152b40}.start-card.featured{border-color:#319bc3;background:linear-gradient(135deg,#19394e,#102135)}.card-icon{font-size:24px;color:#66d4fb;margin-bottom:24px}.start-card strong{font-size:17px;font-weight:600;margin-bottom:12px}.start-card>span:not(.card-icon){font-size:13px;line-height:1.7;color:#99b1c9;margin-bottom:24px}.start-card b{font-size:12px;color:#7bd7f9;margin-top:auto}.privacy-note{font-size:11px;color:#7993ac;margin:30px 0 0}
#projectSetup{flex:none;padding:21px 18px 18px;border-bottom:1px solid #293d54}.setup-heading{font-size:10px;letter-spacing:1.4px;color:#87a5bf;display:flex;align-items:center;justify-content:space-between}.setup-heading .quiet{color:#70d2f3;font-size:11px}#fileLabel{font-size:13px;line-height:1.6;margin:9px 0 18px;overflow-wrap:anywhere}#requirementsPanel{border-top:1px solid #293d54;padding-top:17px}#requirementsPanel>summary{font-size:13px;font-weight:600;cursor:pointer;margin-bottom:12px}#requirementsPanel label{display:block;font-size:11px;color:#8fa8c1;margin-bottom:8px}#profileSelect{width:100%;max-width:100%;padding:10px 8px;font-size:11px}#editProfileBtn{color:#6bc8ed;font-size:11px}.ids-setup{border-top:1px solid #263a50;padding-top:13px;margin-top:8px}.ids-setup label span{color:#6e8ba5}#idsLabel{display:block;font-size:11px;line-height:1.5;color:#b6c9dd;overflow-wrap:anywhere}.setup-actions{display:flex;gap:10px;margin-top:10px}.setup-actions .btn,.setup-actions .quiet{font-size:11px;padding:7px 8px}.side-header{font-weight:600;font-size:12px;padding:16px 18px}#treePanel{overflow-y:auto}#treeBody{min-height:100px}
.viewport-label{position:absolute;top:20px;left:22px;color:#d8e9f8;font-size:12px;z-index:5;pointer-events:none}#navtools{top:auto;right:auto;left:50%;bottom:58px;transform:translateX(-50%);flex-direction:row;padding:5px;gap:2px;white-space:nowrap}#navtools .sep{width:1px;height:auto;margin:4px}#navtools button{min-width:38px;padding:8px 10px;font-weight:500}#status{bottom:12px;max-width:calc(100% - 24px);font-size:11px}#viewcube{width:76px;height:76px}#viewcube canvas{width:76px;height:76px}
#panelBody{padding:20px 16px}#panelBody h3{font-size:18px;font-weight:600;margin-top:0}.finding{padding:16px;margin-bottom:12px;background:#142439;border-color:#344a62}.finding .d{line-height:1.7}.vnote{padding:10px 12px}.ids-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:20px 0;font-size:8px;letter-spacing:.3px;text-align:center}.ids-totals>div{background:#17283c;padding:13px 3px;border-radius:7px;color:#a6b9ce}.ids-totals strong{display:block;font-size:23px;font-weight:600;margin-bottom:6px}.ids-totals .pass{color:#78d6b2}.ids-totals .fail{color:#ffb08d}#idsStatusFilter{background:#172a40;color:#d9e8f6;border:1px solid #3a526c;border-radius:5px;padding:7px;margin:0 0 8px 6px}#sampleGuide{max-height:24vh}#mobilePanels{display:none}
@media(max-width:1180px){#workflowStatus{display:none}.workflow-steps{gap:10px}#main{grid-template-columns:230px minmax(0,1fr) 320px}.session-actions{gap:13px}#topbar,#workflow{padding-left:18px;padding-right:18px}}
@media(max-width:1000px){#main{grid-template-columns:minmax(0,1fr)}#treePanel,#panel{position:absolute;top:39px;bottom:0;height:auto;width:min(350px,90vw);z-index:12;box-shadow:0 10px 35px #0008;display:none}#treePanel{left:0}#panel{right:0}body[data-panel="setup"] #treePanel,body[data-panel="results"] #panel{display:flex}#mobilePanels{display:flex;flex:none;min-height:39px;background:#132338;border-bottom:1px solid #2a4058;gap:4px;padding:3px 12px}#mobilePanels button{flex:1;background:transparent;border:0;border-radius:5px;color:#91adc7;font:inherit;font-size:11px;padding:8px}#mobilePanels button[aria-pressed="true"]{background:#25455f;color:#e1f5ff}body[data-loaded="false"] #mobilePanels{visibility:hidden}.workflow-step{font-size:11px}.workflow-actions{gap:10px}}
@media(max-width:650px){#topbar{height:100px;min-height:100px;display:grid;grid-template-columns:1fr;padding:12px 16px;gap:8px}#topbar .brand{font-size:18px}#topbar .brand img{width:27px;height:27px}.session-actions{gap:16px;justify-content:flex-start}.session-actions .btn,.session-actions .quiet{font-size:11px;padding:5px 8px}#helpMenu{position:absolute;right:13px;top:12px}#reviewSaveState{font-size:10px;order:3;margin-left:auto}.action-menu>summary{font-size:12px;padding:8px 10px}#workflow{height:68px;min-height:68px;padding:0 12px;gap:8px}.workflow-steps{gap:5px}.step-arrow{display:none}.step-label{display:none}.workflow-step[aria-current="step"] .step-label{display:inline;font-size:10px}.workflow-step{gap:5px}.step-number{width:23px;height:23px}.workflow-actions{gap:6px}.workflow-actions .btn{font-size:11px;padding:8px}#workflowStatus{display:none}#welcome{padding:28px 18px;place-items:start center}.start-cards{grid-template-columns:1fr;gap:12px;margin-top:24px}.start-card{padding:19px;display:grid;grid-template-columns:28px 1fr;column-gap:15px}.card-icon{grid-row:1/4;margin:0}.start-card strong{font-size:15px;margin-bottom:7px}.start-card>span:not(.card-icon){margin-bottom:12px;font-size:12px}.start-card b{grid-column:2}.welcome-lead{font-size:13px}.eyebrow{font-size:9px}.privacy-note{margin-top:22px}.menu-items{width:min(260px,calc(100vw - 24px))}#navtools{bottom:75px}#sampleGuide,#savedReviewGuide{max-height:20vh!important}}

#requirementsSummary{font-size:11px;line-height:1.7;color:#8fa9c2;margin:0;overflow-wrap:anywhere}#requirementsPanel[open]+#requirementsSummary{display:none}#welcomeStatus{font-size:12px;color:#a6c3da;line-height:1.6}#savedReviewGuide.restored{display:flex;align-items:center;gap:18px;padding:10px 18px!important}#savedReviewGuide.restored>strong,#savedReviewGuide.restored>p:last-child{display:none}#savedReviewGuide.restored #savedReviewMessage{font-size:12px;line-height:1.5;margin:0;flex:1}#savedReviewGuide.restored button{flex:none;font-size:11px}
@media(max-width:650px){.workflow-step{min-height:44px;min-width:30px}#savedReviewGuide.restored{align-items:flex-start}#savedReviewGuide.restored #closeSavedReview{max-width:110px}}

@media(max-width:1000px){#mobilePanels{height:44px;min-height:44px}#mobilePanels button{padding:4px 8px;line-height:14px}#treePanel,#panel{top:44px}}

#topbar .release-badge{font-size:10px;letter-spacing:0;color:#93dbf7;border:1px solid #38627c;border-radius:5px;padding:4px 6px;text-decoration:none} @media(max-width:650px){#topbar .brand{gap:6px;font-size:16px}#topbar .release-badge{font-size:9px;padding:3px 4px}}
