.terrain-material-experiment{grid-template-columns:minmax(0,1.8fr) minmax(17rem,.6fr);gap:1rem;max-width:1440px;margin:0 auto;display:grid}.terrain-material-experiment__views{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.terrain-material-experiment__view{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;min-width:0;overflow:hidden}.terrain-material-experiment__view.is-focused{border-color:#9acbd1;box-shadow:0 0 0 1px #9acbd166}.terrain-material-experiment__view header{color:#dce8f1;flex-direction:column;gap:.35rem;min-height:4.2rem;padding:.75rem .7rem;font-size:.78rem;display:flex}.terrain-material-experiment__view header span{color:#aebbd0;font-size:.65rem;line-height:1.4}.terrain-material-experiment__canvas{background:#09111b;height:clamp(19rem,40vw,34rem);position:relative}.terrain-material-experiment__canvas canvas{position:absolute;inset:0}.terrain-material-experiment__view p{color:#aebbd0;min-height:4.2rem;margin:0;padding:.6rem .7rem .3rem;font-family:monospace;font-size:.62rem;line-height:1.5}.terrain-material-experiment__view p.terrain-material-experiment__cost{color:#9ee3e7;min-height:2.8rem;padding-top:0}.terrain-material-experiment__controls{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;flex-direction:column;gap:1rem;padding:1rem;display:flex}.terrain-material-experiment__toggle{color:#dce8f1;align-items:center;gap:.55rem;font-size:.82rem;display:flex}.terrain-material-experiment__toggle input{accent-color:#83c3cd}.terrain-material-experiment__note{color:#aebbd0;margin:0;font-size:.69rem;line-height:1.55}@media (width<=1050px){.terrain-material-experiment{grid-template-columns:1fr}.terrain-material-experiment__views{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.terrain-material-experiment__views{grid-template-columns:1fr}.terrain-material-experiment__canvas{height:min(85vw,28rem)}}:root{color:#f0f3fa;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#080d18;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}body{min-height:100svh}.world-shell{background:radial-gradient(at 50% 48%,#111c32 0%,#0a1120 52%,#080d18 100%);width:100%;height:100svh;min-height:100%;position:relative;overflow:hidden}.world-heading{z-index:2;top:max(1.25rem, env(safe-area-inset-top));left:max(1.5rem, env(safe-area-inset-left));pointer-events:none;text-shadow:0 2px 16px #050811;max-width:min(25rem,100vw - 3rem);position:absolute}.eyebrow,.world-footer{color:#8b9ab5;letter-spacing:.2em;font-family:SFMono-Regular,Consolas,monospace;font-size:.68rem}.eyebrow{color:#9fb9cc;margin:0 0 .45rem}.world-heading h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.15rem,2.4vw,1.65rem);font-weight:500}.world-caption{color:#a2aec1;margin:.45rem 0 0;font-size:.75rem}.planet-stage{width:100%;height:100%;position:absolute;inset:0}.planet-stage:before{z-index:0;content:"";filter:blur(110px);opacity:.1;background:#3a7992;border-radius:50%;position:absolute;inset:18%}.planet-stage canvas{z-index:1;position:absolute;inset:0;width:100%!important;height:100%!important}.planet-controls{flex-wrap:wrap;justify-content:center;gap:.4rem;width:100%;max-width:calc(100vw - 2rem);display:flex}.planet-controls button{color:#d8e7ee;font:inherit;cursor:pointer;background:#101c2bdc;border:1px solid #71889c88;border-radius:999px;padding:.45rem .7rem;font-size:.68rem}.planet-controls button:hover,.planet-controls button[aria-pressed=true]{background:#1c3547;border-color:#9acbd1}.status-message{z-index:2;color:#a2aec1;text-align:center;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;inset:0}.webgl-error{flex-direction:column;padding:2rem}.webgl-error h2{color:#f0f3fa;margin:0 0 .5rem;font-size:1.1rem;font-weight:500}.webgl-error p{max-width:22rem;margin:0;line-height:1.6}.world-footer{display:none}.world-lab-link{z-index:10;color:#9fb9cc;letter-spacing:0;text-decoration:none;position:fixed;top:1rem;right:1rem}.world-lab-link:hover{color:#c5e5ed}.planet-stage canvas{cursor:grab;touch-action:none}.planet-stage canvas:active{cursor:grabbing}.camera-tools{z-index:2;bottom:max(1.25rem, env(safe-area-inset-bottom));left:max(1.5rem, env(safe-area-inset-left));pointer-events:none;flex-direction:column;align-items:flex-start;gap:.55rem;display:flex;position:absolute}.camera-presets{pointer-events:auto;gap:.4rem;display:flex}.camera-presets button{color:#e7edf5;font:inherit;cursor:pointer;background:#101a2bdd;border:1px solid #53677e;border-radius:999px;padding:.4rem .75rem;font-size:.72rem}.camera-presets button:focus-visible,.developer-tools summary:focus-visible,.planet-controls button:focus-visible,.lighting-controls button:focus-visible{outline-offset:3px;outline:2px solid #b5e6ef}.camera-presets button:hover,.camera-presets button:focus-visible{background:#1b2a40;border-color:#a9d7e7}.developer-tools{z-index:3;right:max(1.5rem, env(safe-area-inset-right));bottom:max(1.25rem, env(safe-area-inset-bottom));color:#d8e7ee;text-align:right;max-width:min(34rem,100vw - 3rem);font-size:.68rem;position:absolute}.developer-tools summary{cursor:pointer;background:#101c2ddc;border:1px solid #71889c88;border-radius:999px;width:fit-content;margin-left:auto;padding:.4rem .65rem;list-style:none}.developer-tools summary::-webkit-details-marker{display:none}.developer-tools[open]{background:#0b1424ee;border:1px solid #71889c88;border-radius:.8rem;flex-direction:column;align-items:flex-end;gap:.45rem;padding:.55rem;display:flex}.camera-debug{color:#b4c1d2;text-shadow:0 1px 4px #050811;font-family:SFMono-Regular,Consolas,monospace;font-size:.62rem}.render-metrics{color:#9daec1;text-align:center;text-shadow:0 1px 4px #050811;max-width:calc(100% - 2rem);font-family:SFMono-Regular,Consolas,monospace;font-size:.58rem;line-height:1.4}.lighting-controls{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.lighting-controls button{color:#dce8f2;font:inherit;cursor:pointer;background:#101a2bdd;border:1px solid #53677e;border-radius:999px;padding:.35rem .65rem;font-size:.66rem}.lighting-controls button:hover,.lighting-controls button[aria-pressed=true]{background:#263a50;border-color:#c4d9e8}@media (width<=600px){.world-heading{top:max(.9rem, env(safe-area-inset-top));left:max(1rem, env(safe-area-inset-left));max-width:calc(100vw - 9rem)}.world-heading h1{font-size:1.1rem}.world-caption{max-width:18rem;font-size:.68rem;line-height:1.4}.camera-tools{right:0;bottom:max(1rem, env(safe-area-inset-bottom));align-items:center;left:0}.camera-presets{flex-wrap:wrap;justify-content:center;gap:.3rem;max-width:calc(100vw - 1.5rem)}.camera-presets button{padding:.42rem .62rem;font-size:.68rem}.developer-tools{top:max(.8rem, env(safe-area-inset-top));right:max(.75rem, env(safe-area-inset-right));max-width:calc(100vw - 1.5rem);bottom:auto}.developer-tools[open]{max-height:calc(100svh - 6rem);overflow-y:auto}.planet-controls button,.lighting-controls button{padding:.4rem .55rem;font-size:.62rem}.world-lab-link{top:auto;bottom:max(3.6rem, calc(env(safe-area-inset-bottom) + 3rem));right:max(.75rem, env(safe-area-inset-right));font-size:.66rem}}.lab-shell{color:#e8edf5;background:radial-gradient(at 50% 30%,#182945 0%,#0a1220 54%,#070b13 100%);min-height:100vh;padding:1.5rem clamp(1rem,5vw,4.5rem) 4rem}.lab-header{border-bottom:1px solid #a6b8cf22;justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding-bottom:1.25rem;display:flex}.lab-brand,.lab-game-link,.lab-card,.lab-action{color:inherit;text-decoration:none}.lab-brand{letter-spacing:.12em;font:600 .78rem SFMono-Regular,Consolas,monospace}.lab-brand span{color:#83c3cd}.lab-game-link{color:#b2c2d5;font-size:.82rem}.lab-game-link:hover,.lab-brand:hover{color:#9ee3e7}.lab-page-heading{max-width:1240px;margin:4rem auto 2.2rem}.lab-eyebrow,.lab-card-kind{color:#83c3cd;letter-spacing:.15em;text-transform:uppercase;font:.68rem SFMono-Regular,Consolas,monospace}.lab-page-heading h1,.lab-empty h1{letter-spacing:-.05em;margin:.55rem 0;font-size:clamp(2rem,5vw,3.5rem);font-weight:500}.lab-page-heading p:last-child{color:#aebbd0}.lab-index{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;max-width:1240px;margin:0 auto;display:grid}.lab-card{background:#101b2bba;border:1px solid #9cb5d02b;border-radius:1rem;flex-direction:column;min-height:13rem;padding:1.4rem;transition:border-color .14s,transform .14s;display:flex}.lab-card:hover{border-color:#83c3cd99;transform:translateY(-2px)}.lab-card h2{margin:1rem 0 .4rem;font-size:1.15rem;font-weight:500}.lab-card p{color:#aebbd0;margin:0;line-height:1.6}.lab-card-open{color:#9ee3e7;margin-top:auto;padding-top:1.5rem;font-size:.84rem}.lighting-lab{grid-template-columns:minmax(0,1.5fr) minmax(17rem,.7fr);gap:1.25rem;max-width:1240px;margin:0 auto;display:grid}.lighting-stage{background:radial-gradient(circle at 50% 48%,#17364d 0%,#07111e 64%);border:1px solid #9cb5d02b;border-radius:1rem;min-height:28rem;position:relative;overflow:hidden}.lighting-stage canvas{position:absolute;inset:0}.lab-controls{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:1rem;flex-direction:column;gap:1.5rem;padding:1.4rem;display:flex}.lab-control-label{color:#aebbd0;margin:0 0 .65rem;font-size:.8rem}.lab-button-row{flex-wrap:wrap;gap:.45rem;display:flex}.lab-button-row button,.lab-reset,.lab-action{color:#dce8f1;font:inherit;cursor:pointer;background:#111e30;border:1px solid #71889c66;border-radius:999px;padding:.5rem .75rem;font-size:.78rem}.lab-button-row button:hover,.lab-button-row button[aria-pressed=true],.lab-reset:hover,.lab-action:hover{background:#1c3547;border-color:#9acbd1}.lab-range-control{color:#dce8f1;gap:.65rem;font-size:.82rem;display:grid}.lab-range-control span{justify-content:space-between;gap:1rem;display:flex}.lab-range-control output{color:#9ee3e7;font-family:monospace}.lab-range-control input{accent-color:#83c3cd;width:100%}.lab-control-footer{color:#95a7bc;justify-content:space-between;align-items:center;gap:.6rem;font-size:.7rem;display:flex}.lab-reset{flex:none}.lab-url-state{overflow-wrap:anywhere;color:#9aabc0;font-size:.68rem;line-height:1.5}.lab-webgl-error{color:#aebbd0;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;height:100%;min-height:28rem;padding:2rem;display:flex}.lab-webgl-error strong{color:#f0f3fa;font-size:1.1rem;font-weight:500}.lab-empty{max-width:1240px;margin:8rem auto}.terrain-lab{grid-template-columns:minmax(0,1.8fr) minmax(17rem,.6fr);gap:1rem;max-width:1440px;margin:0 auto;display:grid}.terrain-lab-views{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.terrain-lab-view{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;min-width:0;overflow:hidden}.terrain-lab-view header{color:#dce8f1;justify-content:space-between;gap:.5rem;padding:.8rem .9rem;font-size:.76rem;display:flex}.terrain-lab-view header span,.terrain-lab-view p,.terrain-lab-note{color:#aebbd0;font-size:.7rem}.terrain-lab-canvas{background:#09111b;height:clamp(18rem,44vw,36rem);position:relative}.terrain-lab-canvas canvas{position:absolute;inset:0}.terrain-lab-view p{min-height:2.5em;margin:0;padding:.65rem .9rem;font-family:monospace;line-height:1.5}.terrain-lab-controls{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;flex-direction:column;gap:1.2rem;padding:1.1rem;display:flex}.terrain-lab-note{line-height:1.55}.lab-action{margin-top:1rem;display:inline-flex}.ocean-lab{grid-template-columns:minmax(0,1.8fr) minmax(17rem,.6fr);gap:1rem;max-width:1440px;margin:0 auto;display:grid}.ocean-lab-views{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.ocean-lab-view{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;min-width:0;overflow:hidden}.ocean-lab-view header{color:#dce8f1;flex-direction:column;gap:.3rem;padding:.8rem .9rem;font-size:.76rem;display:flex}.ocean-lab-view header span,.ocean-lab-view p{color:#aebbd0;font-size:.68rem}.ocean-lab-canvas{background:#09111b;height:clamp(18rem,44vw,36rem);position:relative}.ocean-lab-canvas canvas{position:absolute;inset:0}.ocean-lab-view p{min-height:3em;margin:0;padding:.65rem .9rem;font-family:monospace;line-height:1.5}.ocean-lab-controls{background:#101b2bcc;border:1px solid #9cb5d02b;border-radius:.85rem;flex-direction:column;gap:1.2rem;padding:1.1rem;display:flex}.ocean-lab-toggle{color:#dce8f1;align-items:center;gap:.55rem;font-size:.82rem;display:flex}.ocean-lab-toggle input{accent-color:#83c3cd}@media (width<=760px){.lab-page-heading{margin-top:2.5rem}.lighting-lab{grid-template-columns:1fr}.lighting-stage{min-height:min(95vw,30rem)}.terrain-lab,.terrain-lab-views{grid-template-columns:1fr}.terrain-lab-canvas{height:min(85vw,28rem)}.ocean-lab,.ocean-lab-views{grid-template-columns:1fr}.ocean-lab-canvas{height:min(85vw,28rem)}}
