@font-face{font-family:Nunito;src:url('assets/fonts/nunito-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Nunito;src:url('assets/fonts/nunito-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Nunito;src:url('assets/fonts/nunito-latin-900-normal.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}
:root{font-family:Nunito,system-ui,sans-serif;--muted:#e5ebd7;--border:#eef7da38;background:#547858}
body{min-height:100dvh;background:linear-gradient(180deg,#142e291c,#142e294a),url('assets/forest-immersive.webp') center/cover fixed}
.topbar{background:#173b304d;border-bottom:1px solid #edf6d52e;backdrop-filter:blur(10px)}
.brand{font-weight:900;letter-spacing:.08em;font-size:17px;text-shadow:0 2px 6px #1b342844}
.brand small{font-size:8px;font-weight:700}
.brandmark{border-radius:14px;background:#dcebc722}
.title-row{padding:26px 0 22px}
h1{font-size:40px;font-weight:900;letter-spacing:-.035em;text-shadow:0 3px 14px #102c2980}
h1 span{font-weight:700;color:#fff7d9}
.title-row .eyebrow,.live{color:#fbffe8;font-weight:900;text-shadow:0 1px 5px #183d33}
.lab{background:transparent;border-radius:24px;border-color:#eef8de4a;box-shadow:0 20px 65px #1d3c3626}
.world{background:none;min-height:630px}
.world-shade{background:radial-gradient(ellipse at 50% 62%,#e3efc924,transparent 75%)}
.console{background:#244a37bd;backdrop-filter:blur(22px);border-left:1px solid #e0ecd246}
h2{font-weight:900;font-size:24px}
.event>strong,.path strong{font-weight:900}
.event p{font-size:12px}
.eyebrow{font-weight:900;font-size:10px;letter-spacing:.13em}
.path span{font-weight:900;font-size:9px}
.event-icon,.answer-input,.primary{border-radius:14px}
.answer-input input{font-weight:900;font-size:30px}
.primary{font-weight:900;font-size:14px;background:linear-gradient(180deg,#f2f9d9,#dcebad);box-shadow:0 4px 0 #29493180,inset 0 1px 0 #fff9}
.primary:hover{background:#f4fadf;transform:translateY(-1px)}
.primary:active{transform:translateY(2px);box-shadow:0 1px 0 #29493180}
.path{border-color:#e4efd13a}
.sensor{border-radius:18px;background:#f8fcebed}
.sensor strong{font-weight:900}
.sensor>span{font-weight:700}
.icon-button{background:#46643ade;border-color:#e9f4d56b;border-radius:12px;box-shadow:0 3px 0 #1c3d3273}
.icon-button:hover{background:#718947}
.scene-bottom{gap:12px;align-items:flex-end}
.camera-controls{display:flex;align-items:center;gap:6px;padding:7px;border-radius:16px;background:#f5f9e9e8;border:1px solid #ffffff70;box-shadow:0 5px 20px #173b3030}
.camera-controls .icon-button{width:38px;height:38px;border:0;box-shadow:none}
#zoom-value{min-width:42px;text-align:center;font-size:12px;color:#274932;font-weight:900}
.orbit-hint{font-weight:700;border-radius:12px}
#scene{touch-action:none}
#rain{display:none}
#explanation{font-size:12px}
.console-foot{font-size:11px}
label{font-weight:700;font-size:14px}
.conclusion,dialog{background:#2f543ee8;backdrop-filter:blur(20px);border-color:#eaf4d264;border-radius:22px}
footer{color:#fff8dc;text-shadow:0 1px 5px #15362c;font-weight:700}
.future{background:#1d3f3073;padding:8px 12px;border-radius:10px}
footer #offline-status{background:#1d3f3073;padding:8px 12px;border-radius:10px}
@media(max-width:700px){body{background-position:48% center}.brand{font-size:13px}.brand small{font-size:7px}.topbar{padding-block:13px}h1{font-size:30px}.world{height:450px;min-height:0}.console{border-left:0;border-top:1px solid #e0ecd246;background:#244a37d1}.title-row{padding:20px 0}.sensor{top:60px}.sensor strong{font-size:31px}.scene-bottom{justify-content:flex-end}.orbit-hint{position:absolute;bottom:61px;left:0;font-size:9px;padding:7px 10px}.camera-controls{padding:5px}.camera-controls .icon-button{width:36px;height:36px}.conclusion h2{font-size:23px}footer{font-size:9px}.lab{border-radius:20px}}
@media(prefers-reduced-transparency:reduce){.console,.conclusion,dialog{background:#315640;backdrop-filter:none}.topbar{background:#315640}}


.soil-switch{display:flex;gap:6px;padding:4px;background:#e4e9d7;border-radius:15px}.soil-switch button{flex:1;border:0;border-radius:12px;padding:10px 5px;font:800 14px Nunito,sans-serif;color:#526249;background:transparent;cursor:pointer}.soil-switch button[aria-pressed=true]{background:#fff8e9;color:#694722;box-shadow:0 2px 8px #25422418}.soil-description{font-size:12px;color:#667357;margin:8px 0 15px}.fire-panel{margin-top:15px;padding-top:14px;border-top:1px solid #d5dcc8}.fire-button{width:100%;border:1px solid #edb16f;background:#fff0d6;color:#914216;font:800 15px Nunito,sans-serif;border-radius:14px;padding:11px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.fire-button img{width:22px;height:22px}.fire-button:disabled{opacity:.55;cursor:default}.fire-panel p{font-size:12px;line-height:1.45;color:#6e684e;margin:8px 0 0}.console{overflow:visible}

.console .soil-description,.console .fire-panel p{color:#f0e5ce}.console .fire-panel{border-color:#eef7da38}

body:before{content:"";position:fixed;inset:0;background:linear-gradient(180deg,#cec9b9,#bfb8a6);opacity:var(--haze,0);pointer-events:none;z-index:0}main,.topbar{position:relative;z-index:1}.atmosphere{margin-top:14px;padding:10px 12px;background:#f5eddb12;border:1px solid #f5eddb33;border-radius:12px;display:grid;grid-template-columns:1fr 70px;gap:5px 12px;font-size:12px;font-weight:700;color:#fff0d8}.atmosphere small{grid-column:1/-1;font-size:10px;font-weight:400;color:#e4e6d6}.atmosphere meter{width:70px;height:12px;accent-color:#d5aa73}.atmosphere meter::-webkit-meter-optimum-value{background:#d5aa73}
