:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2ead8;font-synthesis:none;background:#101912;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;min-height:100%;margin:0}body{background:radial-gradient(circle at 50% 15%,#27352a 0%,#101912 54%,#090d0a 100%);min-height:100vh;overflow:hidden}button{font:inherit}button:focus-visible{outline-offset:3px;outline:3px solid #f2cf74}.world-header{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;padding:18px 22px;display:flex;position:fixed;inset:0 0 auto}.world-header>*{pointer-events:auto}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:#c6b993;margin:0 0 2px;font-size:.7rem}h1,h2,h3,p{margin-top:0}h1{letter-spacing:.08em;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2vw,2rem)}.header-actions{gap:8px;display:flex}.tool-button,.icon-button,.row-actions button,.primary-action{color:#f5eddc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#111913c2;border:1px solid #eddcb147;border-radius:999px;min-width:44px;min-height:44px}.tool-button{padding:0 16px}.tool-button.is-active{color:#17150f;background:#e5c069;border-color:#0000}.icon-button{border-radius:50%;width:44px;font-size:1.5rem}.viewport-shell{position:fixed;inset:0}#viewport{position:absolute;inset:0}#viewport canvas{width:100%;height:100%;display:block}.reticle{pointer-events:none;opacity:.45;border:1px solid #f3d58b8c;border-radius:50%;width:11px;height:11px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.world-status{color:#e9dfc8;text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c120eb8;border-radius:999px;max-width:min(680px,100vw - 40px);min-height:42px;padding:10px 16px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.legend{color:#cfc4a8;pointer-events:none;gap:5px;font-size:.76rem;display:grid;position:absolute;bottom:24px;left:22px}.legend span{align-items:center;gap:8px;display:flex}.legend-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.legend-dot.surface{background:#c29a62}.legend-dot.topsoil{background:#7d5d3e}.legend-dot.subsoil{background:#58473d}.legend-dot.bedrock{background:#68727a}.accessibility-panel{z-index:40;background:#101710;border-left:1px solid #eeddb22e;width:min(540px,100vw);padding:24px;transition:transform .22s;position:fixed;top:0;bottom:0;right:0;overflow:auto;transform:translate(102%)}.accessibility-panel[aria-hidden=false]{transform:translate(0)}.panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-heading h2{font-family:Georgia,Times New Roman,serif;font-size:1.8rem}.panel-intro{color:#bfb59f;line-height:1.55}.accessible-list{gap:10px;display:grid}.learning-row{background:#172018;border:1px solid #eeddb224;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:15px;display:grid}.learning-row h3{margin-bottom:5px;font-size:1rem}.learning-row p{color:#aaa18f;margin-bottom:0;font-size:.83rem}.row-actions{align-items:center;gap:8px;display:flex}.row-actions button{border-radius:12px;padding:0 14px}.row-actions button:disabled{opacity:.45;cursor:not-allowed}.lesson-gateway{z-index:45;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d150ff0;border:1px solid #eddcb142;border-radius:28px;width:min(560px,100vw - 40px);padding:24px;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 28px 80px #00000073}.gateway-close{position:absolute;top:14px;right:14px}.lesson-gateway h2{padding-right:46px;font-family:Georgia,Times New Roman,serif}.lesson-gateway p:not(.eyebrow){color:#c0b6a1;line-height:1.55}.primary-action{color:#17150f;background:#e5c069;border-color:#0000;padding:0 20px;font-weight:700}@media (width<=700px){.world-header{align-items:flex-start}.header-actions{grid-template-columns:repeat(2,auto);display:grid}#open-list{grid-column:span 2}.legend{display:none}.learning-row{grid-template-columns:1fr}.row-actions{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
