.page-lab{position:relative;z-index:2;max-width:1800px;margin:0 auto;padding:56px 32px 100px}.lab-intro{text-align:center;padding:16px 0 36px}.lab-intro h1{font-family:var(--mono);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:600;letter-spacing:-.03em;color:var(--ink);text-shadow:0 0 40px rgba(200,160,60,.2)}.lab-intro p{margin-top:12px;font-size:.85rem;color:var(--dim);max-width:64ch;margin-left:auto;margin-right:auto;line-height:1.65}.rules-box{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:32px;font-size:.8rem;line-height:1.7;color:var(--dim)}.rules-box b{color:var(--ink)}body.observing .lab-intro,body.observing .rules-box{display:none}body.observing{overflow:hidden}.reactor-box{background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;margin:0 auto 28px}body.observing .reactor-box{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;z-index:20}#reactor-canvas{border-radius:50%}.nucleon-controls{display:flex;flex-direction:column;gap:8px;width:100%}.nucleon-row{display:flex;align-items:center;gap:8px;justify-content:center}.nucleon-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.nucleon-dot.p{background:#ff3b57}.nucleon-dot.n{background:#4d8aff}.step-btn{width:24px;height:24px;border-radius:5px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;font-family:var(--mono);font-size:.9rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.step-btn:hover:not(:disabled){border-color:var(--ink-dim)}.step-btn:disabled{opacity:.3;cursor:default}.nucleon-count{min-width:26px;text-align:center;font-family:var(--mono);font-weight:600;color:var(--ink)}.nucleon-label{font-family:var(--mono);font-size:.62rem;color:var(--ink-dim);min-width:64px;text-align:left}.builder-sym-row{display:flex;align-items:baseline;justify-content:center;gap:2px}.builder-sym{font-family:var(--mono);font-size:1.7rem;font-weight:700;color:var(--ink)}.builder-mass{font-size:.85rem;color:var(--ink-dim)}.builder-name{font-family:var(--mono);font-size:.66rem;color:var(--ink-dim);text-align:center}.decay-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.62rem;padding:5px 12px;border-radius:20px;border:1px solid}.decay-badge.stable{color:var(--chem-radio);border-color:#00e06a66;background:#00e06a14}.decay-badge.alpha{color:#00e06a;border-color:#00e06a66;background:#00e06a14}.decay-badge.beta{color:#a8d84a;border-color:#a8d84a66;background:#a8d84a14}.decay-badge.gamma{color:#ffe066;border-color:#ffe06666;background:#ffe06614}.decay-badge.invalid{color:var(--ink-dim);border-color:var(--line);background:transparent}.observe-btn{font-family:var(--mono);font-size:.72rem;padding:10px 20px;border-radius:7px;border:1px solid rgba(255,176,46,.4);background:#ffb02e1a;color:var(--chem-gold);cursor:pointer;transition:background .15s}.observe-btn:hover:not(:disabled){background:#ffb02e2e}.observe-btn:disabled{opacity:.5;cursor:default}.cancel-btn{display:none;font-family:var(--mono);font-size:.66rem;padding:7px 16px;border-radius:7px;border:1px solid var(--ink-dim);background:none;color:var(--ink-dim);cursor:pointer;transition:color .15s,border-color .15s}.cancel-btn:hover{color:var(--ink);border-color:var(--ink)}body.observing .cancel-btn{display:inline-block}.verdict-back-btn{display:block;margin:10px auto 0;font-family:var(--mono);font-size:.64rem;padding:8px 16px;border-radius:6px;border:1px solid rgba(0,224,106,.4);background:#00e06a24;color:var(--chem-radio);cursor:pointer}.verdict-back-btn:hover{background:#00e06a38}#beam-svg{display:none}body.observing #beam-svg{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:14;pointer-events:none}.detector-layer,.gate-layer{display:none}body.observing .detector-layer,body.observing .gate-layer{display:block;position:fixed;inset:0;z-index:16;pointer-events:none}.detector-station{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:6px;width:120px;transition:border-color .2s}.detector-target-dot{width:16px;height:16px;border-radius:50%;box-shadow:0 0 10px currentColor}.detector-badge{font-family:var(--mono);font-size:.56rem;color:var(--ink-dim);text-align:center;line-height:1.4}.detector-status{font-family:var(--mono);font-size:.56rem;text-align:center;padding:4px 6px;border-radius:6px;width:100%;transition:background .2s,color .2s}.detector-status.idle{color:var(--ink-dim);background:transparent}.detector-status.ok{color:var(--ink-dim);background:#ffffff08}.detector-status.hit{color:#00e06a;background:#00e06a1f}.detector-status.miss{color:var(--chem-gold);background:#ffb02e1f}.detector-status.false{color:var(--chem-decay);background:#ff557724}.material-gate{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;width:104px}.material-select{width:100%;font-family:var(--mono);font-size:.58rem;padding:6px 4px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer}.verdict-banner{text-align:center;font-family:var(--mono);font-size:.78rem;padding:14px 16px;border-radius:10px;margin-bottom:32px;border:1px solid var(--line);color:var(--dim);transition:background .2s,border-color .2s,color .2s}.verdict-banner.win{color:var(--chem-radio);border-color:#00e06a66;background:#00e06a14}body.observing .verdict-banner{position:fixed;left:50%;bottom:108px;transform:translate(-50%);z-index:21;max-width:min(90vw,520px);margin:0}.isotope-list-wrap{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:18px 20px}.isotope-list-title{font-family:var(--mono);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:12px}.isotope-chips{display:flex;flex-wrap:wrap;gap:8px}.isotope-chip{font-family:var(--mono);font-size:.72rem;padding:6px 12px;border-radius:16px;border:1px solid var(--line);background:var(--panel);color:var(--ink);display:flex;align-items:center;gap:7px}.isotope-chip-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.isotope-empty{font-family:var(--mono);font-size:.7rem;color:var(--ink-dim);font-style:italic}body.observing .isotope-list-wrap{position:fixed;left:50%;bottom:42px;transform:translate(-50%);z-index:21;max-width:min(92vw,560px);width:100%}@media (max-width:760px){.reactor-box{max-width:280px}.detector-station{width:96px;padding:8px}.material-gate{width:88px}body.observing .verdict-banner{bottom:96px;font-size:.68rem}}
