body.inside-cell{overflow:hidden}
.molecular-entry{border-color:#528982!important;color:#b2f2df!important}
#molecular-lab{width:min(1380px,calc(100vw - 32px));max-width:none;height:calc(100dvh - 32px);max-height:none;box-sizing:border-box;padding:24px;border:1px solid #416570;background:#0b1823;color:#e1f0f3;border-radius:18px;overflow:auto}
#molecular-lab::backdrop{background:#061019d9;backdrop-filter:blur(5px)}
#molecular-lab[open]{display:flex;flex-direction:column;gap:16px}
.lab-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.lab-head h2{font-size:clamp(18px,2vw,27px);font-weight:500;margin:8px 0 0}.lab-kicker{color:#63dece;font-size:9px;letter-spacing:1.7px}.lab-head button{white-space:nowrap}
.lab-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.lab-stages button{text-align:left;padding:12px 14px;color:#7898a6;background:#0e2130;border-color:#253e4c}.lab-stages button[aria-current=step]{color:#cbf6e8;border-color:#63dece;background:#194039}
.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:minmax(0,1fr);gap:18px;flex:1;min-height:0}.lab-scene{background:radial-gradient(ellipse at center,#21424780,transparent 68%),radial-gradient(#6ba8a622 .8px,transparent .8px),#0c202b;background-size:auto,24px 24px,auto;border:1px solid #2c4b58;border-radius:16px;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.lab-scene-note{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;color:#b1d9d9;font-size:11px}.lab-scene-note span{color:#6d95a2;letter-spacing:1.5px;font-size:9px}.lab-scene svg{width:100%;flex:1;min-height:0;max-height:570px}.lab-scene svg text{font:14px 'Segoe UI',sans-serif;fill:#b7d5d8}.lab-wall{fill:url(#lab-cell-fill);stroke:#63dece;stroke-width:3}.lab-membrane{fill:none;stroke:#5e9c98;stroke-width:1.5;opacity:.65}.lab-tail{fill:none;stroke:#71c6ba;stroke-width:3}.lab-granules{opacity:.3}
.lab-dna path{fill:none;stroke:#c8a1f0;stroke-width:4;stroke-linecap:round}.lab-dna .lab-dna-rungs{stroke:#8d8ede;stroke-width:2}.lab-rna path{fill:none;stroke:#f5c27c;stroke-width:5;stroke-linecap:round;stroke-dasharray:4 5}.lab-ribosome ellipse{fill:#69a7ba;stroke:#a7d8db;stroke-width:2}.lab-ribosome ellipse+ellipse{fill:#9386bc}.lab-peptide path{fill:none;stroke:#dcd797;stroke-width:4}.lab-peptide circle{fill:#d7df9b;stroke:#fff2c1;stroke-width:1.5}.lab-folded path{fill:#d3dc951a;stroke:#d3dc95;stroke-width:12;stroke-linecap:round}
.lab-rna,.lab-ribosome,.lab-peptide,.lab-folded{opacity:.12;transition:opacity .3s}.lab-folded{display:none}#molecular-lab[data-stage="1"] .lab-rna,#molecular-lab[data-stage="2"] .lab-rna,#molecular-lab[data-stage="3"] .lab-rna{opacity:1}#molecular-lab[data-stage="2"] .lab-ribosome,#molecular-lab[data-stage="3"] .lab-ribosome{opacity:1}#molecular-lab[data-stage="2"] .lab-peptide{opacity:1}#molecular-lab[data-stage="3"] .lab-peptide{display:none}#molecular-lab[data-stage="3"] .lab-folded{display:block;opacity:1}#molecular-lab[data-stage="1"] .lab-rna path{animation:lab-copy 6s linear infinite}@keyframes lab-copy{to{stroke-dashoffset:-54}}
.lab-sequence{padding:14px 20px;background:#0a1924;border-top:1px solid #274653}.lab-sequence small{display:block;font-size:10px;color:#84adb6;margin-bottom:8px}.lab-sequence code{color:#c8a1f0;font:clamp(11px,1.3vw,17px) Consolas,monospace;white-space:normal;word-break:normal}
.lab-aside{padding:0;background:none;border:0;border-radius:0;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:14px}.lab-aside article{width:100%;box-sizing:border-box;padding:18px;background:#102530;border:1px solid #2b4654;border-radius:12px}.lab-aside h3{font-size:17px;font-weight:500;margin:12px 0}.lab-aside p{font-size:13px;line-height:1.65;color:#c0d8dd}.lab-aside small{font-size:11px;line-height:1.6;color:#7ea3b1;display:block}.lab-specimen dl{margin:10px 0}.lab-specimen dl>div{display:flex;justify-content:space-between;gap:10px;margin:9px 0;font-size:11px}.lab-specimen dt{color:#89afb9}.lab-specimen dd{margin:0;color:#c2eee1;font-variant-numeric:tabular-nums}
.lab-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.lab-bottom p{font-size:10px;line-height:1.5;color:#7ea3b1;max-width:650px;margin:0}.lab-bottom button{background:#63dece;color:#123038;white-space:nowrap;border-color:#63dece;padding:12px 18px}.lab-sources{font-size:10px;color:#89afb9;padding:0;margin:0;border:0}.lab-sources p{line-height:1.6}.lab-sources a{color:#a5dfd2}.lab-sources[open]{position:absolute;bottom:20px;left:24px;right:24px;background:#102530;border:1px solid #416570;padding:15px;z-index:2;border-radius:12px;max-height:180px;overflow:auto}
@media(min-width:901px) and (max-height:800px){.lab-aside small{display:none}.lab-aside article{padding:14px}.lab-aside h3{font-size:15px;margin:9px 0}.lab-aside p{font-size:12px;line-height:1.5}.lab-specimen dl>div{margin:8px 0}}
@media(max-width:900px){#molecular-lab{padding:14px;gap:12px!important}.lab-layout{grid-template-columns:1fr;min-height:0;flex:none}.lab-scene{height:35dvh;min-height:200px}.lab-aside{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lab-aside article{padding:12px}.lab-aside h3{font-size:14px;margin:8px 0}.lab-aside p{font-size:11px;line-height:1.5}.lab-aside small{font-size:10px}.lab-head h2{font-size:18px}.lab-head button{font-size:10px;padding:8px}.lab-stages{gap:5px}.lab-stages button{padding:9px 6px;font-size:10px}.lab-sequence{padding:10px 14px}.lab-bottom{gap:10px}.lab-bottom button{padding:10px;font-size:11px}}
@media(max-width:520px){#molecular-lab{width:100vw;height:100dvh;border-radius:0}.lab-head .lab-kicker{font-size:8px;letter-spacing:.7px}.lab-head h2{font-size:15px}.lab-aside small{display:none}.lab-aside p{margin:6px 0}.lab-specimen dl>div{font-size:10px;margin:7px 0}.lab-aside h3{font-size:12px}.lab-bottom p{font-size:9px}.lab-scene-note{padding:10px 14px}.lab-scene-note span{font-size:8px}.lab-sequence code{font-size:11px}.lab-sources{margin-top:auto}}
@media(prefers-reduced-motion:reduce){.lab-rna path{animation:none!important}.lab-rna,.lab-ribosome,.lab-peptide,.lab-folded{transition:none}}

.lab-trna{opacity:.12}.lab-trna path{fill:none;stroke:#e6b386;stroke-width:3}.lab-trna circle{fill:#d7df9b}#molecular-lab[data-stage="2"] .lab-trna,#molecular-lab[data-stage="3"] .lab-trna{opacity:1}
