/* The canvas owns the page. Only open drawers scroll. */
.workbench-page{height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.workbench-page .app-header{flex:none;padding:12px 22px}
.workbench-page .brand{font-size:1.2rem}.workbench-page .brand-sub{font-size:.7rem}
.workbench{position:relative;flex:1;min-height:0;width:100%;max-width:none!important;margin:0!important;padding:12px 18px 18px!important;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.workbench-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:none;min-width:0}
.workbench-bar h1{font-size:1.1rem;margin:0 10px}.workbench-bar button{font-size:.875rem;padding:9px 12px}
.workbench-spacer{flex:1}.workbench-bar [aria-expanded=true],.workbench-bar [aria-pressed=true]{background:#dff1ec;border-color:#62a59c;color:#075854}
.workbench-stage{position:relative;flex:1;min-height:0;display:flex!important;gap:0!important}
.workbench .library-drawer{position:absolute;top:0;bottom:0;width:min(350px,calc(100% - 20px));z-index:15;padding:20px;background:#f9fbfd;border:1px solid #cbdbe7;border-radius:14px;box-shadow:0 12px 38px #0b243326;overflow:auto;overscroll-behavior:contain;display:block;max-height:none;scrollbar-width:thin}
.workbench .library-drawer[hidden],.workbench [hidden]{display:none!important}
.drawer-left{left:0}.drawer-right{right:0}
.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.drawer-heading h2{font-size:1.1rem!important;margin:0!important}.drawer-heading button{padding:3px 10px;min-width:34px;min-height:34px;font-size:1.4rem}.drawer-heading span{font-size:.75rem;font-weight:400;color:var(--muted)}
.workbench .molecule-view{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}
.workbench .molecule-view-heading{flex:none;padding:12px 18px}.workbench .molecule-view-stage{flex:1;min-height:120px;height:auto!important}
.workbench .structure-camera{position:absolute;bottom:16px;right:16px;z-index:4;gap:5px}
.workbench .structure-camera button{background:#243d50;border-color:#4b6576;color:#eff7fa;width:38px;height:38px}
.workbench .structure-hint{position:absolute;left:18px;bottom:18px;max-width:calc(100% - 175px);color:#bdced9;font-size:.8rem;pointer-events:none;margin:0}
.workbench .structure-controls{padding:0;background:none;border:0}.workbench .structure-actions{gap:12px}.workbench .structure-force-grid{grid-template-columns:1fr}
.workbench .structure-display{display:grid;gap:16px}.workbench .structure-display label:first-child{display:grid;gap:7px}.workbench .structure-display select{margin:0;width:100%}
.workbench .motion-settings{display:flex;flex-wrap:wrap}.workbench .motion-settings .motion-advanced{flex-basis:100%}.workbench .advanced-motion{margin-left:auto}
.workbench .catalog-filters{margin:18px 0}.workbench .molecule-cards{max-height:none;overflow:visible;grid-template-columns:1fr 1fr}
.workbench .catalog>p{font-size:.875rem;color:var(--muted)}.workbench #surprise{margin-top:15px;width:100%}
.workbench .molecule-story>h2{margin:12px 0}.workbench .molecule-story>.look-card{margin:22px 0}.workbench .molecule-story>.library-question{margin:18px 0}
.workbench .library-about{margin:20px 0 0;padding:16px 0 0}.workbench .library-about>div{display:block}.workbench .library-about p{margin:12px 0}
.comparison-tools{flex:none;padding:10px 18px;border-bottom:1px solid var(--line);background:#f7fafc}.comparison-members{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.comparison-chip{display:inline-flex;border:1px solid #cbdce6;border-radius:8px;overflow:hidden}.comparison-chip button{border:0;border-radius:0;padding:6px 10px;min-height:32px;font-size:.8rem}.comparison-chip [aria-pressed=true]{background:#dff1ec;color:#075854}.comparison-tools .segmented{display:inline-flex;flex-wrap:wrap}.comparison-tools>button{float:right;font-size:.8rem;padding:7px 10px}
.comparison-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.comparison-label{position:absolute;transform:translate(-50%,0);color:#d5e5ed;font-size:.8rem;padding:4px 9px;background:#122332d9;border-radius:7px;white-space:nowrap}
.workbench:is(:fullscreen,.window-fullscreen){padding:12px!important;background:#f1f6fa;height:100dvh;width:100vw;overflow:hidden}
.workbench .library-model-caption{font-size:.8rem;padding:12px 0;line-height:1.5}
@media(max-width:720px){.workbench-page .app-header{padding:8px 12px}.workbench-page .brand-sub{display:none}.workbench-page .app-header nav{width:auto;margin-left:auto}.workbench-page .page-link{font-size:.75rem;padding:7px}.workbench{padding:8px!important;gap:8px}.workbench-bar{gap:5px}.workbench-bar h1{display:none}.workbench-bar button{font-size:.8rem;padding:8px}.workbench .library-drawer{width:min(350px,100%);padding:16px}.workbench .structure-hint{display:none}.workbench .molecule-view-heading{padding:10px 12px}.workbench .molecule-view-heading h2{font-size:1rem}.comparison-tools{padding:8px}.comparison-tools .segmented button{font-size:.75rem}.comparison-label{font-size:.7rem}.workbench .structure-camera{bottom:10px;right:10px}.workbench-spacer{display:none}}

/* Reactions use the same canvas-first workbench and optional drawers. */
.workbench .reaction-heading{margin:0;flex:none;gap:16px;align-items:center}.workbench .reaction-heading h1{font-size:1.2rem;margin:0}.workbench .reaction-heading .eyebrow{font-size:.65rem;margin-bottom:3px}.workbench .reaction-heading label{font-size:.7rem;min-width:235px}.workbench .reaction-heading select{padding:6px 10px;min-height:34px;margin-top:2px}
.workbench .reaction-workspace{grid-template-columns:none!important;gap:0!important}.workbench .reaction-experiment{width:100%;min-height:0;display:flex;flex-direction:column;gap:0!important}
.workbench .workbench-view{flex:1;min-height:0;margin:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#f7fafc}
.view-tabs{display:flex;border:1px solid #cbdce6;background:#e8f0f5;border-radius:10px;padding:3px;gap:3px}.view-tabs button{border:0;background:transparent;padding:6px 12px;border-radius:7px}.view-tabs [aria-selected=true]{background:white;box-shadow:0 1px 4px #17334720;color:#06655f}.view-tabs #replayNotice{font-size:.72rem;color:#087267}
.workbench .reaction-toolbar{padding:9px 16px;gap:7px;flex:none}.workbench .reaction-toolbar .eyebrow{display:none}.workbench .reaction-toolbar h2{font-size:1rem}.workbench .reaction-toolbar button{min-height:32px;padding:5px 10px}
.workbench .reaction-equation{padding:7px 16px;font-size:.95rem;flex:none}.workbench .vat-controls{padding:8px 16px;gap:12px;flex:none}.workbench .vat-controls label{font-size:.8rem}.workbench .vat-controls .segmented button{padding:7px 10px;font-size:.8rem}
.workbench .reaction-vat-host .stage-wrap{flex:1;min-height:100px;width:100%!important;max-width:none!important;display:flex;overflow:hidden;background:#142d3e}.workbench .reaction-vat-host .vat-stage{width:100%;height:100%!important;min-height:0;max-height:none;flex:1}
.workbench .vat-process{flex:none;padding:7px 16px 10px;background:#f7fafc;max-height:115px;overflow:auto}.workbench .reaction-phases{margin:0;gap:8px}.workbench .reaction-phases li{padding:4px 8px;font-size:.72rem}.workbench #reactionProgress{height:4px;margin:5px 0}.workbench .phase-text,.workbench #reactionStatus{font-size:.78rem;margin:3px 0;padding:0;background:none;line-height:1.45}.workbench #reactionStatus{color:var(--muted)}
.workbench .reaction-setup,.workbench .reaction-guide{display:block!important;font-size:.875rem}.workbench .library-drawer[hidden]{display:none!important}.workbench .reaction-setup>div,.workbench .reaction-setup>label{margin:14px 0;max-width:none;min-width:0}.workbench .reaction-setup select,.workbench .reaction-setup input[type=number]{width:100%}.workbench .reaction-setup button{margin:4px 3px 4px 0}.workbench .reaction-guide h2{font-size:1.05rem}.workbench .guide-count{margin:8px 0}.workbench .guide-prepare{margin:8px 0;font-size:.8rem}.workbench .reaction-guide details{margin:12px 0;padding-top:12px}.workbench .guide-nav{margin:16px 0}
.workbench #reactionInfoPanel .vat-help{background:transparent;color:var(--ink);padding:0;border:0}.workbench #reactionInfoPanel .vat-legend{background:none;color:var(--ink);padding:12px 0;display:grid;gap:8px}.workbench #reactionInfoPanel .reaction-audit{display:grid;padding:16px 0;margin-top:16px}.workbench #reactionInfoPanel .reaction-model-note{padding:16px 0;border:0;border-top:1px solid var(--line);border-radius:0}.workbench .reaction-playback{display:grid;padding:0;gap:14px}.workbench .vat-motion-controls{padding:0;border:0;background:none}.workbench .library-drawer h3{font-size:.85rem;margin:22px 0 12px;color:#386074}
.workbench .reaction-inspection>#reactionViewer{height:100%;min-height:0}.workbench .reaction-inspection .molecule-picker{flex:none}.workbench .reaction-replay .replay-heading{padding:12px 18px;flex:none}.workbench .reaction-replay h2{font-size:1.05rem}.workbench .reaction-replay [data-content]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto}.workbench .reaction-replay [data-stage]{flex:1;min-height:140px;height:auto;max-height:none;background:#142d3e}.workbench .replay-time{padding:10px 18px;flex:none}.workbench .replay-controls{padding:0 18px 10px;gap:10px;flex:none}.workbench .replay-controls button{padding:6px 10px;min-height:32px}.workbench .replay-phases{padding:0 18px 10px;flex:none}.workbench .reaction-replay [data-caption]{padding:0 18px 12px}.workbench .replay-note{flex:none;padding:10px 18px}.workbench .reaction-replay [data-empty]{margin:auto;text-align:center;max-width:440px;padding:24px;line-height:1.8;color:var(--muted)}
.workbench-page.teacher .reaction-guide{font-size:1rem}.workbench-page.teacher .reaction-vat-host{max-width:none}.workbench .reaction-vat-host:is(:fullscreen,.window-fullscreen){height:100dvh}
@media(max-width:760px){.workbench .reaction-heading{gap:8px}.workbench .reaction-heading h1{font-size:1rem}.workbench .reaction-heading label{min-width:160px;max-width:50%}.workbench .reaction-heading .eyebrow{display:none}.reaction-viewbar{gap:5px}.reaction-viewbar .view-tabs{order:-1;width:100%}.reaction-viewbar .view-tabs button{flex:1;padding:7px}.workbench .vat-controls{gap:7px;padding:6px 10px;flex-wrap:wrap}.workbench .vat-controls label{font-size:.7rem}.workbench .reaction-toolbar{padding:6px 10px}.workbench .vat-process{max-height:75px}.workbench .reaction-equation{font-size:.8rem}.workbench .replay-controls{flex-wrap:wrap}.workbench .reaction-phases{display:none}}

/* Constrain every flex ancestor; canvas backing size must never set layout height. */
.workbench-stage{align-items:stretch!important}.workbench .reaction-experiment{height:100%;max-height:100%;min-width:0}.workbench .workbench-view{height:100%;max-height:100%;flex:1 1 0}.workbench .molecule-view-stage{min-height:0!important;overflow:hidden}.workbench .molecule-view-stage canvas{position:absolute;inset:0;width:100%!important;height:100%!important}.workbench .reaction-inspection>#reactionViewer{flex:1;max-height:100%}
.workbench-page .app-header{padding:8px 16px}.workbench-page .brand-mark{width:40px;height:40px}.workbench{padding:8px 12px 12px!important;gap:7px}.workbench .molecule-view-heading{padding:8px 14px;min-height:50px;gap:10px}.workbench .molecule-view-heading .eyebrow{display:none}.workbench .molecule-view-heading h2{font-size:1.1rem}.workbench .molecule-view-heading button{padding:6px 10px;min-height:34px}
.workbench .reaction-heading{flex-direction:row}.workbench .reaction-heading>div{display:none}.workbench .reaction-heading label{font-size:0;min-width:0;width:285px;max-width:100%}.workbench .reaction-heading select{font-size:.83rem;margin:0}.workbench .reaction-viewbar{gap:6px}.workbench .reaction-viewbar button{padding:7px 10px;min-height:34px;font-size:.82rem}
.workbench .molecule-view-heading .molecule-picker{padding:0;margin:0;border:0;font-size:0;background:none;flex:1;min-width:0;display:flex;flex-direction:row}.workbench .molecule-picker select{font-size:.83rem;padding:6px 10px;min-height:34px;width:min(100%,440px);max-width:100%;margin:0}.workbench .reaction-inspection .molecule-view-heading>div{display:none}.workbench .reaction-inspection .molecule-view-heading>.formula{display:none}
.workbench .reaction-toolbar{padding:6px 12px}.workbench .reaction-toolbar>div:first-child{display:none}.workbench .reaction-toolbar .reaction-equation{padding:0;margin:0 auto 0 0;border:0;background:none;min-width:0;text-align:left}.workbench .vat-process .phase-text{min-height:0}.workbench .vat-process .reaction-phases{padding:0}.workbench #reactionProgress{width:100%}.workbench .vat-process{max-height:90px;padding:6px 12px}
@media(min-width:1050px){.workbench.reaction-main{display:grid;grid-template-columns:285px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:8px}.workbench .reaction-heading{grid-column:1;grid-row:1}.workbench .reaction-viewbar{grid-column:2;grid-row:1}.workbench .reaction-workspace{grid-column:1/-1;grid-row:2}}
@media(max-width:760px){.workbench .reaction-heading label{width:100%;max-width:100%}.workbench .reaction-viewbar .view-tabs{order:0;width:auto;flex:1}.workbench .reaction-viewbar .view-tabs button{padding:7px}.workbench .reaction-toolbar{flex-wrap:nowrap}.workbench .reaction-toolbar button{font-size:.72rem}.workbench .vat-controls .segmented button{font-size:.72rem;padding:5px}.workbench .vat-process .phase-text{display:none}}
@media(max-height:620px){.workbench-page .brand-sub{display:none}.workbench-page .app-header{padding:5px 12px}.workbench-page .brand-mark{width:32px;height:32px}.workbench .vat-controls{padding:5px 10px}.workbench .vat-process .reaction-phases,.workbench .vat-process .phase-text{display:none}.workbench .vat-process{padding:3px 10px}.workbench .molecule-view-heading{min-height:40px;padding:5px 12px}}

.workbench-page .brand-mark{font-size:1rem}.workbench .reaction-toolbar>div:first-child{display:block}.workbench .reaction-toolbar>div:has(#vatTitle){display:none}.workbench .reaction-toolbar .reaction-equation{display:block}.workbench .molecule-view-heading .molecule-picker select{flex:none}

.comparison-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:7px 14px}.comparison-members{margin:0;flex:1;min-width:180px}.comparison-tools>button{float:none;padding:6px 9px;min-height:32px}.comparison-tools .segmented button{padding:6px 9px;min-height:32px;font-size:.78rem}.comparison-chip button{padding:5px 8px}.workbench .comparison-tools .segmented{flex:none}

@media(max-width:600px){.workbench-page .brand>span:last-child{display:none}.workbench-page .app-header{flex-wrap:nowrap;gap:8px;padding:6px 12px}.workbench-page .app-header nav{flex-wrap:nowrap;gap:2px}.workbench-page .app-header nav button{font-size:.72rem;padding:7px}.workbench-page .brand{flex:none}.workbench .reaction-viewbar .view-tabs{width:100%;order:-1;flex:none}.workbench .reaction-viewbar>button{font-size:.74rem;padding:6px 8px;flex:1;white-space:nowrap}.workbench .reaction-heading select{width:100%}.workbench .reaction-heading label{width:100%}.workbench .reaction-heading{width:100%}.workbench .comparison-tools>button{font-size:.72rem}.workbench .comparison-tools .comparison-members{width:100%;flex:none}.workbench .comparison-tools{gap:6px}.workbench .comparison-tools .segmented button{font-size:.7rem;padding:6px}.workbench .library-drawer{max-width:100%}}

.workbench .reaction-replay .replay-heading{padding:8px 16px;min-height:46px}.workbench .replay-heading .eyebrow{display:none}.workbench .reaction-replay [data-content]{overflow:hidden}.workbench .reaction-replay [data-stage]{flex:1 1 0;min-height:80px}.workbench .reaction-replay .replay-time{display:grid;grid-template-columns:auto minmax(40px,1fr) auto;gap:12px;align-items:center;padding:8px 16px}.workbench .replay-time label{font-size:.75rem}.workbench .replay-time input{grid-column:2;grid-row:1}.workbench .replay-time output{grid-column:3;grid-row:1;font-size:.75rem}.workbench .replay-controls{flex-wrap:wrap;align-items:center;padding:0 16px 8px}.workbench .replay-controls label{font-size:.75rem}.workbench .replay-controls select{min-height:30px;padding:4px 7px}.workbench .replay-phases{display:flex;gap:5px;padding:0;margin:0 0 0 auto;flex:1}.workbench .replay-phases button{padding:6px;min-height:30px;font-size:.72rem;white-space:nowrap}.workbench .reaction-replay [data-caption]{min-height:0;padding:0 16px 8px;margin:0;font-size:.8rem}.workbench .replay-note{padding:12px 0;margin-top:16px}.workbench .replay-note p{font-size:.85rem;line-height:1.6}
@media(max-width:760px){.workbench .replay-controls{gap:6px;padding:0 10px 6px}.workbench .replay-controls>label{display:flex;gap:5px;align-items:center}.workbench .replay-controls>label:has([data-speed]){font-size:0}.workbench .replay-phases{flex-basis:100%}.workbench .replay-time label{font-size:0}.workbench .reaction-replay .replay-time{grid-template-columns:0 minmax(40px,1fr) auto;gap:5px;padding:7px 10px}.workbench .reaction-replay [data-caption]{font-size:.72rem}}

.workbench #reactionSettingsPanel .vat-controls{display:grid;grid-template-columns:1fr 1fr;background:transparent;border:0;padding:0;gap:14px 10px}.workbench #reactionSettingsPanel .vat-controls .segmented{grid-column:1/-1;display:flex}.workbench #reactionSettingsPanel .vat-controls .segmented button{flex:1}.workbench #reactionSettingsPanel .vat-controls label{font-size:.8rem}

/* Docked panels share the available viewport with the experiment. */
.workbench.reaction-main{display:flex;flex-direction:column}
.workbench .reaction-heading{display:none}
.workbench-page .app-header{gap:18px;flex-wrap:nowrap}
.workbench-page .app-header nav{display:flex;flex-wrap:nowrap;flex:none;width:auto;margin-left:auto}
.header-lab-picker{flex:0 1 300px;min-width:160px;margin-right:auto}
.workbench-page .header-lab-picker select{width:100%;font-size:.83rem;min-height:36px;padding:7px 11px;background:#f5f9fb;font-weight:600}
.workbench .workbench-stage{display:grid!important;grid-template-columns:var(--dock-left,0px) minmax(0,1fr) var(--dock-right,0px)!important;grid-template-rows:minmax(0,1fr);gap:0!important;align-items:stretch!important}
.workbench-stage>.reaction-experiment,.workbench-stage>#libraryViewer{grid-column:2;grid-row:1;min-width:0;width:100%;height:100%}
.workbench .library-drawer{position:relative;inset:auto;grid-row:1;width:100%;min-width:0;height:100%;max-width:none;max-height:100%;padding:0;display:flex!important;flex-direction:column;border-radius:12px;overflow:visible;box-shadow:none;background:#f9fbfd;z-index:1}
.workbench .library-drawer[hidden]{display:none!important}
.workbench .drawer-left{grid-column:1;margin-right:10px;width:calc(100% - 10px)}
.workbench .drawer-right{grid-column:3;margin-left:10px;width:calc(100% - 10px)}
.workbench .library-drawer>.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;margin:0;padding:12px 14px;border-bottom:1px solid var(--line);min-height:58px;border-radius:12px 12px 0 0;background:#f3f8fb}
.workbench .drawer-heading h2{font-size:1rem!important;min-width:0}
.workbench .library-drawer>.drawer-heading button{width:30px;min-width:30px;height:30px;min-height:30px;padding:0;margin:0;display:grid;place-items:center;font-size:1.25rem;background:transparent;border-color:transparent;flex:none}
.workbench .drawer-heading button:hover{background:#e1ecf2}
.workbench .library-drawer>.drawer-content{display:block;flex:1;min-height:0;min-width:0;max-width:none;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:16px;margin:0;border-radius:0 0 12px 12px}
.workbench .panel-resize{position:absolute;top:0;bottom:0;width:12px;margin:0;padding:0;cursor:col-resize;touch-action:none;z-index:3;display:block}
.workbench .drawer-left>.panel-resize{right:-11px}
.workbench .drawer-right>.panel-resize{left:-11px}
.panel-resize:after{content:'';position:absolute;top:calc(50% - 22px);bottom:auto;left:4px;width:3px;height:44px;border-radius:3px;background:#b4c9d5;transition:background .15s}
.panel-resize:hover:after,.panel-resize:focus-visible:after,.resizing-panel .panel-resize:after{background:#158c82}
.panel-resize:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.resizing-panel{user-select:none;cursor:col-resize}
.resizing-panel .molecule-view-stage,.resizing-panel .stage-wrap{pointer-events:none}
.workbench .drawer-content h3{margin:0 0 12px;font-size:.8rem;color:#36596b;letter-spacing:.01em}
.workbench .panel-section{border:0;border-bottom:1px solid var(--line);padding:0 0 18px;margin:0 0 18px}
.workbench .panel-section:last-child{border:0;padding-bottom:0;margin-bottom:0}
.workbench .panel-section p,.workbench .drawer-content small{font-size:.78rem;color:var(--muted);line-height:1.55}
.workbench .panel-section .check{font-size:.8rem;margin:0}
.workbench .panel-section input[type=checkbox]{margin:0}
.workbench .panel-section select{min-height:36px;padding:7px 10px;font-size:.82rem}
.workbench .structure-display{display:grid;grid-template-columns:1fr 1fr;gap:14px 8px}
.workbench .structure-display label:first-child{grid-column:1/-1;display:grid;gap:7px;font-size:.8rem}
.workbench .structure-display .check{gap:6px;overflow-wrap:anywhere}
.workbench .structure-controls .panel-section>h3{margin-bottom:12px}
.workbench .structure-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.workbench .structure-actions button{font-size:.78rem;padding:7px;min-height:36px}
.workbench .motion-settings{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:12px}
.workbench .motion-settings .motion-advanced{grid-column:1/-1;min-width:0}
.workbench .motion-presets{display:flex;gap:3px;margin:0}
.workbench .motion-presets:before{display:none}
.workbench .motion-presets button{flex:1;min-width:0;min-height:32px;padding:6px 5px;font-size:.72rem}
.workbench .advanced-motion{margin:0;min-height:32px;padding:6px;font-size:.72rem}
.workbench .structure-rotation{margin:15px 0 0}
.workbench .structure-controls>details{margin:0}
.workbench .vibration-modes{padding-top:14px}
.workbench .vibration-modes label{display:grid;gap:6px;font-size:.8rem}
.workbench .vibration-modes p{margin-top:8px}
.workbench .reaction-setup .drawer-content>div{display:grid;gap:9px}
.workbench .reaction-setup .drawer-content>div>h3{margin-bottom:3px}
.workbench .reaction-setup button{margin:0;font-size:.82rem;min-height:38px}
.workbench .reaction-setup #carbonSetup{grid-template-columns:1fr 1fr}
.workbench #carbonSetup h3,.workbench #carbonSetup [data-structure=carbon],.workbench #carbonSetup #addHydrogen{grid-column:1/-1}
.workbench #carbonSetup #addHydrogen{margin-top:7px}
.workbench .reaction-setup .condition-check{padding:10px;background:#e9f3f2;border-radius:8px;margin:0}
.workbench .reaction-setup .reaction-explainer{margin-top:12px}
.workbench .reaction-setup .panel-section .reaction-explainer{border:0;padding-top:0}
.workbench .reaction-setup .reaction-explainer p{font-size:.82rem;line-height:1.65}
.workbench .reaction-setup .drawer-content>details:last-child{border:0;margin:0;padding:0}
.workbench .reaction-playback{gap:12px}
.workbench .reaction-playback>label:not(.check){display:flex;justify-content:space-between;align-items:center;gap:12px}
.workbench .reaction-playback select{width:140px}
.workbench .reaction-guide .guide-count{margin:0 0 8px;font-size:.75rem}
.workbench .reaction-guide #guideTitle{clear:both;margin:12px 0;font-size:1.05rem}
.workbench .reaction-guide #guideQuestion{margin-top:12px}
.workbench .reaction-guide #guideSetup,.workbench .guide-prepare{width:100%;margin-top:12px;font-size:.78rem}
.workbench .reaction-guide #guideInstruction,.workbench .reaction-guide #guideQuestion{font-size:.875rem;line-height:1.65}
.workbench .catalog .drawer-content>p{font-size:.8rem;color:var(--muted)}
.workbench .molecule-story .drawer-content>h2{margin:6px 0 12px}
.workbench .molecule-story .drawer-content>.look-card,.workbench .molecule-story .drawer-content>.library-question{margin:18px 0}
.workbench .drawer-content .molecule-cards{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.workbench .drawer-content .molecule-card{min-width:0}
.workbench .drawer-content .catalog-filters{margin:12px 0}
.workbench .drawer-content .catalog-filters>*{min-width:0}
.workbench .drawer-content #surprise{margin:16px 0 0}
.workbench .drawer-content .vat-legend span{white-space:normal}
.workbench-stage[data-stacked=true]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) var(--dock-height)!important;column-gap:10px!important}
.workbench-stage[data-stacked=true]>.reaction-experiment,.workbench-stage[data-stacked=true]>#libraryViewer{grid-row:1;grid-column:1/-1}
.workbench .workbench-stage[data-stacked=true]>.library-drawer{grid-row:2;margin:10px 0 0;width:100%;height:calc(100% - 10px)}
.workbench-stage[data-stacked=true]>.drawer-left{grid-column:1}
.workbench-stage[data-stacked=true]>.drawer-right{grid-column:2}
.workbench-stage[data-stacked=true][data-left=false]>.drawer-right,.workbench-stage[data-stacked=true][data-right=false]>.drawer-left{grid-column:1/-1}
.workbench .workbench-stage[data-stacked=true] .panel-resize{top:-11px;bottom:auto;left:0;right:0;width:100%;height:12px;cursor:row-resize}
.workbench-stage[data-stacked=true] .panel-resize:after{top:4px;left:calc(50% - 22px);width:44px;height:3px}
@media(max-width:1100px){.reaction-page.workbench-page .brand>span:last-child{display:none}.workbench-page .app-header{gap:12px}}
@media(max-width:760px){.reaction-page.workbench-page .app-header{flex-wrap:wrap;gap:6px 12px}.header-lab-picker{order:3;flex:1 0 100%}.workbench-page .header-lab-picker select{min-height:32px;padding:5px 9px}.workbench .drawer-content .structure-display{grid-template-columns:1fr}.workbench .library-drawer>.drawer-content{padding:12px}.workbench .library-drawer>.drawer-heading{min-height:46px;padding:8px 12px}.workbench .panel-section{padding-bottom:14px;margin-bottom:14px}.workbench-stage[data-left=true][data-right=true] .motion-settings{grid-template-columns:1fr}.workbench-stage[data-left=true][data-right=true] .advanced-motion{justify-self:end}.workbench-stage[data-left=true][data-right=true] .structure-actions{grid-template-columns:1fr}}

.workbench .reaction-setup .drawer-content>.setup-sections{display:block}
.workbench .setup-sections>.panel-section{display:grid;gap:9px}
.workbench .setup-sections>details{border:0;margin:0;padding:0}
.workbench .vat-process{height:4px;max-height:4px;min-height:4px;padding:0;overflow:hidden;flex:none;background:#dce7ec}
.workbench #reactionProgress{display:block;width:100%;height:4px;padding:0;margin:0;border:0;border-radius:0;appearance:none;background:#dce7ec}
.workbench #reactionProgress::-webkit-progress-bar{background:#dce7ec}
.workbench #reactionProgress::-webkit-progress-value{background:#23988a}
.workbench #reactionProgress::-moz-progress-bar{background:#23988a}
.workbench #reactionStatus.sr-only{margin:-1px;padding:0}

.workbench .workbench-stage{transition:none}
.workbench.panels-changing .workbench-stage{transition:grid-template-columns .19s cubic-bezier(.2,.7,.2,1)}
.workbench.resizing-panel .workbench-stage{transition:none}
.workbench .library-drawer>.panel-resize{margin:0}
.workbench .guide-stepbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2px}
.workbench .reaction-guide .guide-count{flex:0 0 auto;margin:0;white-space:nowrap}
.workbench .guide-stepbar .guide-nav{display:flex;gap:4px;margin:0 0 0 auto}
.workbench .guide-stepbar .guide-nav button{min-height:32px;padding:5px 2px;font-size:.75rem;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.workbench.panels-changing .workbench-stage{transition:none}}
@media(max-width:760px){
 .workbench .reaction-toolbar{flex-wrap:wrap;gap:4px}
 .workbench .reaction-toolbar .reaction-equation{flex:1 1 100%}
 .workbench .reaction-toolbar>button{min-height:26px;padding:3px 6px}
 .workbench .reaction-playback>label:not(.check){display:grid;gap:5px}
 .workbench .reaction-playback select{width:100%;margin:0}
 .workbench #reactionSettingsPanel .vat-controls{grid-template-columns:1fr;gap:12px}
 .workbench #reactionSettingsPanel .vat-controls .segmented{flex-wrap:wrap}
 .workbench-stage[data-left=true][data-right=true] .vat-controls .segmented button{flex:1 0 100%}
 .workbench-stage[data-left=true][data-right=true] .structure-display{grid-template-columns:1fr}
 .workbench .panel-section .check{overflow-wrap:anywhere}
 .workbench .panel-section label{min-width:0}
}

/* Keep teaching mode from narrowing or wrapping the shared panel header. */
.workbench .library-drawer{align-items:stretch;gap:0}
.workbench .library-drawer>.drawer-heading{width:100%;flex-wrap:nowrap}
.workbench .drawer-heading h2{flex:1 1 auto}
.workbench .library-drawer>.drawer-content{width:100%}
.workbench-page .brand-mark{display:grid;place-items:center;flex:none;padding:0;font-size:.8rem;line-height:1;letter-spacing:-.04em;overflow:hidden}
.workbench .reaction-playback>label.reaction-tempo{display:grid;grid-template-columns:1fr auto;gap:9px 12px;margin:0;font-size:.82rem}
.reaction-tempo output{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem}
.reaction-tempo input{grid-column:1/-1;width:100%;margin:0;cursor:pointer}
.reaction-tempo .tempo-limits{grid-column:1/-1;display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem}

.workbench .guide-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.workbench .guide-actions button{min-height:36px;padding:8px 10px;font-size:.8rem}
.workbench .guide-actions>.check{flex-basis:100%;font-size:.8rem;margin:3px 0}
.workbench .guide-feedback{font-size:.8rem;line-height:1.5;color:var(--muted);margin-top:10px}
.workbench .guide-feedback:empty{display:none}
