/* V46.8: calmer readability; richer room UI. All copy remains real DOM text. */
:root{--v468-sand:#f5e8cf;--v468-ink:#0d1d33;--v468-turquoise:#9bf1df;--v468-coral:#f5a8ae}
.room-info{background:linear-gradient(170deg,#13243b,#0e182e);padding:clamp(16px,2vw,28px)!important;scrollbar-color:#86b9b2 #172940}
.room-info>h2{font-size:clamp(23px,2.1vw,31px);line-height:1.55;color:#fff3df;margin:8px 0 7px}
.room-info>p{font-size:14px;line-height:2.05;color:#d6e3ed}
.room-layout{grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr)}
.room-scene{background:#0d182b}.room-scene canvas{image-rendering:pixelated}
.room-object-list button{transition:background .17s ease,transform .17s ease;border-color:#678092!important;font-size:12px;line-height:1.7}
.room-object-list button:hover{transform:translateY(-2px);background:#34516b}
.v468-room-quest{margin:17px 0;padding:18px;background:#10263c;border:1px solid #6a929a;border-radius:14px;color:#e9f6f3}
.v468-q-kicker{color:#a1efdd;font-size:10px;font-weight:800;letter-spacing:1px}
.v468-q-header h3{font-size:19px;color:#ffeaca;line-height:1.55;margin:7px 0 5px}
.v468-q-header p{font-size:12px;color:#c7dbe5;line-height:1.9;margin:3px 0 13px}
.v468-q-meter{height:6px;border-radius:10px;background:#2c4860;overflow:hidden;margin:12px 0 15px}.v468-q-meter span{display:block;height:100%;background:linear-gradient(90deg,#a2f2d2,#f2bd93);transition:width .2s ease}
.v468-q-cards{display:grid;grid-template-columns:1fr;gap:9px}.v468-q-card{background:#1e344c;border-radius:10px;padding:12px;border:1px solid #536e83;display:grid;gap:6px}.v468-q-card.completed{border-color:#83ceb4;background:#183f48}
.v468-q-step{display:flex;justify-content:space-between;align-items:center;gap:8px}.v468-q-step span{font:700 11px ui-monospace,monospace;color:#a7efe2}.v468-q-step strong{flex:1;font-size:13px;color:#fff0d7}.v468-q-step b{color:#a1ecce}
.v468-q-card p{font-size:12px;line-height:1.85;color:#d3e2ec;margin:0}
.v468-q-action{justify-self:start;background:#a4efdb;border:1px solid #d5f7e4;color:#152b37;padding:8px 14px;border-radius:7px;cursor:pointer;font-size:12px;font-weight:700;font-family:inherit;min-height:42px}
.v468-q-action:hover,.v468-q-action:focus-visible{background:#e7f7d4;outline:2px solid #fce5af;outline-offset:2px}
.v468-q-bottom{margin-top:13px;display:grid;gap:10px}.v468-q-feedback{font-size:12px;color:#d8ebed;line-height:1.9;margin:0}
.v468-q-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#f5b9a0;border-radius:8px;padding:10px 13px;color:#2b2638!important;font-weight:800;text-decoration:none;font-size:13px}
.v468-game-links{display:flex;flex-wrap:wrap;gap:8px}.v468-game-links a{border:1px solid #6a98ab;padding:8px 12px;border-radius:7px;color:#c9f1f0;text-decoration:none}
#roomEvidence img{max-height:150px;object-fit:cover;object-position:top;max-width:100%}
@media(max-width:1050px){.room-layout{grid-template-columns:1fr}.room-info{max-height:none!important}.room-scene{min-height:310px}}
@media(max-width:700px){.room-scene{min-height:250px}.room-info{padding:13px!important}.v468-room-quest{padding:12px;margin:10px 0}.room-pad{max-width:100%}.v468-q-card{padding:11px}.room-info>h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.v468-q-meter span,.room-object-list button{transition:none!important}}

/* Ship It! Bonus incident response, remains optional after main game */
.ship-incident-lab{margin:22px 0 12px;padding:18px;border:1px solid #7196a1;background:linear-gradient(145deg,#12283d,#202c4b);border-radius:13px;display:grid;gap:11px}
.ship-incident-kicker{color:#a8f0d4;font:800 11px ui-monospace,monospace;letter-spacing:1px}
.ship-incident-lab h4{font-size:19px;color:#ffe6ba;margin:0}.ship-incident-lab>p{font-size:12px;line-height:1.9;color:#d3e6ef;margin:0}
.ship-incident-card{border:1px solid #506b86;background:#1c314a;padding:13px;border-radius:9px}
.ship-incident-card>strong{font-size:14px;color:#fff0db}.ship-incident-card>p{color:#d5e0eb;font-size:12px;line-height:1.9}
.ship-incident-choices{display:flex;flex-wrap:wrap;gap:7px}.ship-incident-choices button{white-space:normal;min-height:42px;padding:8px 12px;border:1px solid #83a6bc;background:#243f58;color:#f7f0df;border-radius:6px;cursor:pointer}
.ship-incident-choices button.selected{background:#e6c79e;color:#232d3c}
.ship-incident-card .ship-incident-correct{color:#a0f3c7}.ship-incident-card .ship-incident-wrong{color:#ffb2a2}
.ship-incident-score{font-weight:800;color:#b8f4dc!important}

/* Custom functional stations for the fourteen interiors */
.v468-interactive{border-radius:14px;border:1px solid #6688a2;background:#1b2c45;padding:16px;margin:16px 0;display:grid;gap:10px;color:#eef6f6}
.v468-interactive[hidden]{display:none!important}
.v468-lab-header h3{font-size:18px;line-height:1.6;margin:5px 0;color:#ffdec4}.v468-lab-header p{line-height:1.8;font-size:12px;color:#c4dfe7;margin:5px 0}
.v468-lab-button,.v468-lab-link{min-height:43px;display:inline-flex;align-items:center;justify-content:center;background:#2b4860;color:#f0fbf9;border:1px solid #8ac4c6;padding:9px 13px;border-radius:7px;cursor:pointer;text-align:center;text-decoration:none;font-size:12px;line-height:1.6}
.v468-lab-link{background:#fad0a8;color:#14263a!important;border-color:#ffdcb8;font-weight:800}
.v468-lab-button:hover,.v468-lab-button:focus-visible,.v468-lab-link:focus-visible{outline:2px solid #f5d0a7;outline-offset:3px;background:#3e6479}
.v468-lab-choices{display:flex;flex-wrap:wrap;gap:7px}.v468-lab-button[aria-pressed=true]{background:#a9eed6;color:#102637}
.v468-lab-output{padding:13px;background:#253e57;border-radius:7px;color:#dff2f3;font-size:12px;line-height:1.9;border-right:3px solid #b2f0cf;margin:0}
.v468-architecture{direction:ltr;text-align:left;overflow-wrap:anywhere;padding:15px;border:1px dashed #80c0c5;font:700 11px/2 ui-monospace,monospace;color:#a7efe2;background:#12273d;border-radius:9px}
.v468-lab-select,.v468-lab-textarea{width:100%;background:#e9f2ec;color:#173044;padding:12px;border:1px solid #6ca6af;border-radius:7px;font:inherit;font-size:13px}.v468-lab-textarea{min-height:90px}
.v468-ui-preview{background:#f6f1e8;color:#172944;padding:20px;border-radius:9px;display:grid;gap:8px}.v468-ui-preview>p{margin:0!important;color:#283d52!important}.v468-ui-preview>span{background:#1c4264;color:#fff;padding:10px;justify-self:start;border-radius:5px}.v468-ui-preview.low-contrast{background:#e0e1e1;color:#b1b5b8}.v468-ui-preview.low-contrast>p{color:#b3b6b9!important}.v468-ui-preview.low-contrast>span{background:#c1c8ce;color:#b4b9bd}
@media(max-width:700px){.room-scene{height:calc(100vw * .63 + 40px);min-height:0!important;max-height:34dvh}.v468-interactive{padding:12px}.v468-lab-header h3{font-size:16px}}

/* Entering the city: story card politely clears the scene, while the primary nav remains available. */
.world-sticky .hero{transition:opacity .35s ease,transform .35s ease}
.world-sticky.v468-exploring .hero{opacity:0;transform:translate3d(30px,-8px,0) scale(.96);pointer-events:none}
@media(min-width:1100px){.world-sticky .hero{width:min(370px,30vw)!important}}
@media(prefers-reduced-motion:reduce){.world-sticky .hero{transition:none!important}}
