/* Scoped to OPG: CT and IO keep their established viewer styles. */
body.opg-dark{--ink:#f1edf8;--muted:#b6abc7;--line:#44384f;--teal:#be9afb;--mint:#372747;background:#100e17;color-scheme:dark}
body.opg-dark .shell{background:#15111f}
body.opg-dark .grid,body.opg-dark .review{background:#201a2b;box-shadow:none}
body.opg-dark .viewer{background:#18141f}
body.opg-dark .mark{background:#9770e9;color:#190f2b}
body.opg-dark .mode,body.opg-dark .mode.ai-enabled,body.opg-dark .studio-link,body.opg-dark .workflow-help{background:#2c223b;color:#dcc7fa;border-color:#564169}
body.opg-dark .notice{background:#302636;border-color:#584257;color:#e5ccd9}
body.opg-dark .modality-tabs button,body.opg-dark .compact-toolbar>button:not(.primary),body.opg-dark #opgOpenCrop,body.opg-dark #opgViewImage{background:#2b2337;border-color:#50405e;color:#ddd0ee}
body.opg-dark .modality-tabs button.active{background:#44305f;color:#f0e4ff;border-color:#a27ee0}
body.opg-dark .primary,body.opg-dark .actions button:first-child{background:#9f79ee;color:#160d25}
body.opg-dark .opg-evidence-bar{background:#272033;border-color:#4f3d60}
body.opg-dark .opg-evidence-bar button{background:#382b46;color:#e4d7f4;border-color:#635074}
body.opg-dark .opg-evidence-bar button.active{background:#65438b;color:#fff}
body.opg-dark #pathologyQueueSummary,body.opg-dark #constructionQueueSummary{background:#2a2235;border-color:#54425f;color:#ece2f8}
body.opg-dark #pathologyQueueSummary span,body.opg-dark #constructionQueueSummary span{background:#342a41;color:#cdbedb}
body.opg-dark #pathologyQueueSummary p,body.opg-dark #constructionQueueSummary p{color:#d4bd9a}
body.opg-dark #compactQueue .teeth button{background:#2b2437;border-color:#4e405d;color:#d9cee5}
body.opg-dark #compactQueue .teeth button.selected{background:#44315d;border-color:#ae87ef;color:#f3eaff}
body.opg-dark #compactQueue .teeth button b{color:#e9d1ff}
body.opg-dark .compact-pager button{background:#30253d;color:#e3cafb;border-color:#5b436d}
body.opg-dark #candidate .tooth{background:#523974;color:#f6ecff}
body.opg-dark #candidate .confidence{background:#393044}
body.opg-dark #candidate .confidence span{background:#ae80e8}
body.opg-dark #candidate p,body.opg-dark #candidate label{color:#c5b7d2}
body.opg-dark #candidate input,body.opg-dark #candidate select,body.opg-dark #candidate textarea,body.opg-dark #constructionCandidate input,body.opg-dark #constructionCandidate select{background:#221b2d;color:#f0e8f8;border-color:#604e71}
body.opg-dark #candidate button,body.opg-dark #constructionCandidate button{background:#3d2b51;color:#f0e0ff;border-color:#73528a}
body.opg-dark #candidate button:disabled,body.opg-dark #constructionCandidate button:disabled{opacity:.45}
body.opg-dark #candidate .actions,body.opg-dark .compact-correction .actions{background:#201a2b}
body.opg-dark #candidate [class*="warning"],body.opg-dark #candidate [class*="confound"],body.opg-dark #candidate [class*="context"],body.opg-dark #candidate [class*="localization"]{background:#322737;border-color:#725267;color:#e7cbd8}
body.opg-dark #candidate #model,body.opg-dark #candidate .lesion-editor,body.opg-dark #studyContextPanel{background:#2b2236;border-color:#564168;color:#d9c9e7}
body.opg-dark .workflow-dialog{background:#231c2f;color:#f0e8fa;border-color:#6b537f}
body.opg-dark .workflow-dialog button{background:#3e2b53;color:#f0e7fa;border-color:#6d5285}
body.opg-dark .workflow-dialog p,body.opg-dark .workflow-dialog .admission,body.opg-dark .workflow-dialog .admission-gate{background:#31283a;color:#d9c8e7;border-color:#534060}
body.opg-dark .workflow-dialog .admission-next,body.opg-dark .workflow-dialog .admission-section{color:#c3b3d2}
body.opg-dark .workflow-dialog .demo-action,body.opg-dark .workflow-dialog .step i{background:#392c46;color:#d9c5f0;border-color:#594268}
body.opg-dark button:focus-visible,body.opg-dark summary:focus-visible,body.opg-dark canvas:focus-visible{outline:2px solid #d7b5ff;outline-offset:3px}
.opg-view-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 12px}.opg-view-controls label{display:grid;grid-template-columns:1fr auto;gap:5px 10px;flex:1;min-width:135px;font-size:12px;color:#d6c7e8}.opg-view-controls input{grid-column:1/-1;width:100%;accent-color:#bb91f3}.opg-view-controls output{color:#f2e3ff;font-variant-numeric:tabular-nums}.opg-view-controls button{padding:8px 10px;background:#3e2c51;border:1px solid #795f8e;border-radius:8px;color:#eadcf8;cursor:pointer;font-size:12px}#opgCrop canvas{touch-action:none;max-height:none;aspect-ratio:3/2;height:auto}#opgCrop{max-height:94dvh}#opgCrop canvas:focus-visible{outline:2px solid #c59bf6}
@media(max-width:700px){.opg-view-controls{gap:8px}.opg-view-controls label{min-width:100px}}
