.lab{--paper:#f3e6c8;--ink:#312f2a;--brass:#ccae70;max-width:1480px;margin:0 auto;padding:clamp(12px,3vw,40px)}.lab-heading{justify-content:space-between;align-items:baseline;gap:20px;padding:0 8px 16px;display:flex}.lab-heading h1{color:#e6d0a2;order:-1;margin:0;font:italic 400 clamp(40px,5vw,70px)/1 Cormorant Garamond,Georgia,serif}.lab-heading p{color:#a9bfb5;margin:0;font-size:.8rem}.lab-room{aspect-ratio:3/2;isolation:isolate;background:#183336;border:8px solid #3f3529;border-radius:7px;position:relative;box-shadow:0 18px 70px #0008,inset 0 0 0 1px #cbae7050}.lab-room-art{object-fit:fill;border-radius:2px;width:100%;height:100%;display:block}.lab-object{color:#fae4ad;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:end;min-width:44px;min-height:44px;padding:0;display:flex;position:absolute}.lab-object:hover,.lab-object:focus-visible{background:#ffda7017;border-color:#f4d9a57d;box-shadow:0 0 25px #ffe0a13b,inset 0 0 24px #ffe0a11a}.lab-object span{opacity:0;white-space:nowrap;pointer-events:none;background:#253734f2;border:1px solid #d0b178;border-radius:4px;padding:5px 9px;font:500 12px/1.3 IBM Plex Mono,monospace;transition:opacity .15s;transform:translateY(70%)}.lab-object:hover span,.lab-object:focus-visible span{opacity:1}.lab-object-translate span{transform:translate(-28%,70%)}.lab-object-translate{right:0;left:auto!important}.lab-stations{background:#98816044;border:1px solid #98816044;border-radius:0 0 8px 8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.lab-stations button{text-align:left;color:#e6d4af;cursor:pointer;min-width:0;font:inherit;background:#14272a;border:0;padding:18px 22px}.lab-stations button:hover,.lab-stations button:focus-visible{background:#203a3a}.lab-stations small,.lab-stations b,.lab-stations span{display:block}.lab-stations small{color:#9fb3a5;font-size:.64rem}.lab-stations b{margin:5px 0;font:600 26px/1.2 Cormorant Garamond,Georgia,serif}.lab-stations span{color:#c1bca8;font-size:.69rem;line-height:1.5}.lab-room-note{text-align:center;color:#a7ada0;margin:20px 0 8px;font-size:.72rem}.lab-dialog{color-scheme:light;--ink:#312f2a;box-sizing:border-box;width:min(1080px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);background:#f1e4c8;border:7px solid #5b4a32;border-radius:16px;padding:0;overflow:auto;box-shadow:0 24px 100px #0009}.lab-dialog::backdrop{backdrop-filter:blur(4px);background:#060f13c9}.lab-dialog{max-width:calc(100% - 16px)}.lab-dialog>header{z-index:5;background:#e1d0a7;border-bottom:1px solid #a58e62;justify-content:space-between;align-items:center;gap:20px;padding:18px 26px;display:flex;position:sticky;top:0}.lab-dialog h2{margin:0;font:600 36px/1.1 Cormorant Garamond,Georgia,serif}.lab-dialog header p{color:#736a52;margin:0 0 4px;font-size:.68rem}.lab-dialog button,.lab-dialog input,.lab-dialog select,.lab-dialog textarea{font:inherit;color:inherit}.lab-dialog button,.lab-dialog select,.lab-dialog input[type=number]{cursor:pointer;background:#fff7e2;border:1px solid #aa9672;border-radius:8px;min-height:44px;padding:8px 12px}.lab-dialog button:hover{background:#dfc993}.lab-dialog button[aria-pressed=true]{color:#fff5d9;background:#315b58;border-color:#315b58}.lab-dialog button:disabled{cursor:default;opacity:.55}.lab-dialog .lab-close{border-radius:50%;flex:none;width:44px;padding:0}.lab-dialog :focus-visible{outline-offset:3px;outline:3px solid #257b85}.lab-dialog select option{color:#312f2a;background:#fff7e2}#lab-instrument-content{padding:22px 26px}.lab-intro{margin:0 0 18px;font:18px/1.5 Georgia,serif}.lab-workbench{grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr);align-items:start;gap:22px;display:grid}.lab-display{min-width:0;margin:0}.lab-display canvas{touch-action:none;box-sizing:border-box;background:#172d32;border:2px solid #9d8860;border-radius:12px;width:100%;height:auto;display:block}.lab-display figcaption{color:#625c4c;margin-top:10px;font-size:.68rem;line-height:1.55}.lab-controls{gap:17px;min-width:0;display:grid}.lab-controls label,.lab-field{gap:5px;min-width:0;font-size:.76rem;display:grid}.lab-controls input[type=range]{accent-color:#366865;cursor:pointer;width:100%;height:44px;margin:0}.lab-control-title{justify-content:space-between;gap:10px;display:flex}.lab-readout{overflow-wrap:anywhere;white-space:pre-line;background:#f9f0d8;border:1px solid #b9a47b;border-radius:10px;margin:0;padding:16px;font-size:.85rem;line-height:1.65}.lab-readout b{font-size:1.1rem}.lab-buttons{flex-wrap:wrap;gap:7px;display:flex}.lab-buttons button{font-size:.72rem}.lab-prompt{border-left:3px solid #658f82;margin:0;padding:6px 0 6px 12px;font:italic 17px/1.5 Georgia,serif}.lab-source{margin:18px 0 0;font-size:.68rem;line-height:1.7}.lab-dialog a{color:#236d70;text-underline-offset:3px}.lab-planet-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.lab-planet-buttons button{padding:8px 3px;font-size:.7rem}.lab-language-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.lab-dialog textarea{box-sizing:border-box;resize:vertical;background:#fff9e9;border:1px solid #b5a180;border-radius:8px;width:100%;min-height:160px;padding:14px;line-height:1.6}.lab-translation-status{min-height:2.8em;font-size:.75rem;line-height:1.5}.lab-converter{gap:20px;max-width:650px;margin:0 auto;display:grid}.lab-convert-row{grid-template-columns:minmax(80px,1fr) minmax(90px,1fr);gap:12px;display:grid}.lab-dialog input[type=number],.lab-dialog select{box-sizing:border-box;width:100%;min-width:0}.lab-convert-result{text-align:center;color:#315b58;padding:24px 8px;font-size:clamp(22px,4vw,36px)}.lab-research-note{max-width:580px;margin:12px auto 26px;font:20px/1.7 Georgia,serif}@media (width<=700px){.lab-heading p{max-width:130px;font-size:.7rem}.lab-room{border-width:4px}.lab-stations{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-stations button{padding:14px 12px}.lab-stations b{font-size:24px}.lab-stations small{font-size:.58rem}.lab-workbench{grid-template-columns:minmax(0,1fr)}.lab-dialog{border-width:4px;border-radius:10px;width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.lab-dialog>header{padding:14px}#lab-instrument-content{padding:16px 14px}.lab-dialog h2{font-size:30px}.lab-language-grid{grid-template-columns:minmax(0,1fr)}.lab-object span{display:none}.lab-research-door{border-width:2px;font-size:9px}}@media (prefers-reduced-motion:reduce){.lab-object span{transition:none}}.lab-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lab-measure-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.lab-measure-tabs button{flex:85px;min-height:44px}.lab-measure-tabs [aria-pressed=true]{color:#292d28;background:#e4ca8c;border-color:#ead49d}.lab-research-books span{transform:translateY(-5%)}.lab-research-books{bottom:2%;top:auto!important}.lab-trig-picker{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lab-trig-picker button{min-width:0;padding-inline:5px}.lab-measure-tabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lab-measure-tabs button{min-width:0;padding-inline:7px}.lab-globe-dialog>header{background:0 0;border:0;height:0;padding:0;top:8px;overflow:visible}.lab-globe-dialog>header>div{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-globe-dialog>header .lab-close{background:#fff7e2;position:absolute;top:0;right:8px;box-shadow:0 2px 12px #0003}.lab-globe-dialog #lab-instrument-content{padding:8px}@media (width<=440px){.lab-measure-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
