:root{--pine:#173d35;--pine-2:#22564a;--gold:#e6b765;--red:#9e3b3b;--red-2:#b54848;--cream:#fff9ed;--leaf:#7c9a78;--ink:#1d2b27;--ink-2:#4a5a54;--shadow:0 4px 0 #173d3559, 0 12px 30px #173d3540;--radius:14px;--font:"Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background:#f3d7b6;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.stage{touch-action:none;position:fixed;inset:0}.loading{height:100%;color:var(--pine);place-items:center;font-weight:800;display:grid}.wordmark{letter-spacing:.04em;color:var(--cream);text-shadow:0 2px 0 var(--pine), 2px 2px 0 var(--pine), -1px 0 0 var(--pine), 0 0 12px #e6b76599;flex-direction:column;margin:0;font-size:1rem;font-weight:900;line-height:.9;display:flex}.wordmark span:last-child{color:var(--gold)}.wordmark--large{text-align:center;font-size:clamp(2.2rem,8vw,3.6rem)}.wordmark--large span{text-shadow:0 4px 0 var(--pine), 4px 4px 0 var(--pine), -2px 0 0 var(--pine), 0 0 24px #e6b765b3}.btn{cursor:pointer;border:2px solid var(--pine);background:var(--cream);min-height:44px;color:var(--pine);box-shadow:0 3px 0 var(--pine);border-radius:12px;justify-content:center;align-items:center;gap:.45em;padding:.55em 1.1em;font-weight:800;transition:transform 80ms,box-shadow 80ms;display:inline-flex}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--pine);transform:translateY(2px)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--red);color:var(--cream);border-color:#6e2626;box-shadow:0 3px #6e2626}.btn--primary:hover:not(:disabled){background:var(--red-2)}.btn--small{min-height:36px;padding:.3em .8em;font-size:.9rem}.btn--chip{min-height:40px;padding:.35em .85em;font-size:.95rem}.btn--path{flex-direction:column;flex:1 1 0;min-height:88px;font-size:1rem}.btn--path span{font-size:1.7rem}.icon-btn{border:2px solid var(--pine);cursor:pointer;width:40px;height:40px;color:var(--pine);background:0 0;border-radius:10px;font-size:1.5rem;line-height:1}kbd{font:inherit;background:#fff9ed40;border:1px solid #fff9ed80;border-radius:4px;padding:0 .4em;font-size:.75em}.hud{z-index:15;pointer-events:none;padding:max(12px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));position:fixed;inset:0}.hud>*,.hud__top>*{pointer-events:auto}.hud__top{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hud__brand{border:2px solid var(--gold);cursor:pointer;box-shadow:var(--shadow);background:#173d35e0;border-radius:12px;padding:8px 12px}.hud__nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.hud__missions{left:16px;bottom:max(16px, env(safe-area-inset-bottom));background:var(--cream);border:2px solid var(--pine);border-radius:var(--radius);color:var(--pine);cursor:pointer;box-shadow:var(--shadow);grid-template-columns:auto 1fr;align-items:center;gap:4px 8px;min-width:200px;padding:8px 12px;font-weight:800;display:grid;position:absolute}.hud__missions .star{color:var(--gold);-webkit-text-stroke:1px var(--pine);grid-row:span 2;font-size:1.4rem}.hud__action{left:50%;bottom:max(96px, calc(env(safe-area-inset-bottom) + 80px));font-size:1.05rem;position:absolute;transform:translate(-50%)}.hud__action:active:not(:disabled){transform:translate(-50%)translateY(2px)}.xp{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-weight:800;display:grid}.xp--compact{gap:6px;font-size:.75rem}.xp__level{background:var(--pine);color:var(--gold);border-radius:6px;padding:1px 6px}.xp__bar{border:2px solid var(--pine);background:#e8dcc4;border-radius:6px;min-width:70px;height:10px;overflow:hidden}.xp__bar span{background:var(--gold);height:100%;transition:width .4s;display:block}.xp__num{color:var(--ink-2)}.toast{background:var(--pine);color:var(--cream);border:2px solid var(--gold);box-shadow:var(--shadow);text-align:center;border-radius:12px;max-width:calc(100vw - 32px);padding:10px 16px;font-weight:800;animation:3.6s forwards toast;position:absolute;top:84px;left:50%;transform:translate(-50%)}@keyframes toast{0%{opacity:0;translate:0 -8px}8%,85%{opacity:1;translate:0}to{opacity:0}}.label3d{pointer-events:none;white-space:nowrap;font-family:var(--font);color:var(--pine);background:var(--cream);border:2px solid var(--pine);box-shadow:0 2px 0 var(--pine);-webkit-user-select:none;user-select:none;border-radius:8px;padding:2px 8px;font-size:13px;font-weight:800}.backdrop{z-index:20;background:#173d3559;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.backdrop--welcome{background:radial-gradient(#173d3533,#173d35a6)}.panel{background:var(--cream);border:3px solid var(--pine);width:min(520px,100%);max-height:calc(100dvh - 32px);box-shadow:var(--shadow);border-radius:18px;outline:none;flex-direction:column;display:flex}.panel--wide{width:min(760px,100%)}.panel__head{border-bottom:2px dashed #173d3533;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 8px;display:flex}.panel__head h2{color:var(--pine);margin:0;font-size:1.45rem;font-weight:900}.panel__body{padding:12px 18px 18px;overflow-y:auto}.panel__body h3{color:var(--pine);margin:18px 0 6px;font-size:1.05rem}.panel__body p{margin:8px 0;line-height:1.45}.kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin:0 0 2px;font-size:.8rem;font-weight:800}.lead{font-size:1.08rem;font-weight:700}.note{color:var(--ink-2);font-size:.88rem}.status{background:var(--gold);color:var(--pine);vertical-align:middle;border-radius:999px;margin-left:4px;padding:0 8px;font-size:.75rem;font-weight:800;display:inline-block}.bullets{margin:6px 0 12px;padding-left:1.2em;line-height:1.5}.facts{background:#f6ecd8;border-radius:12px;grid-template-columns:max-content 1fr;gap:6px 14px;margin:12px 0;padding:12px;display:grid}.facts dt{color:var(--pine);font-weight:900}.facts dd{margin:0}.welcome{text-align:center;border:3px solid var(--pine);width:min(560px,100%);box-shadow:var(--shadow);background:#fff9edf5;border-radius:22px;flex-direction:column;align-items:center;gap:16px;padding:28px 22px;display:flex}.welcome__promise{max-width:40ch;margin:0;font-size:1.1rem;font-weight:700}.welcome__paths{gap:10px;width:100%;display:flex}.hint{color:var(--ink-2);margin:0;font-size:.9rem}.disclaimer{color:var(--ink-2);margin:0;font-size:.75rem}.lot-list,.mission-list,.indicators{gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.lot-list li{border:2px solid #173d3526;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.lot-list span,.mission-list li>span:last-child{flex-direction:column;display:flex}small{color:var(--ink-2);font-size:.82rem}.mission-list li{background:#f6ecd8;border-radius:10px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.mission-list li>span:first-child{color:var(--gold);-webkit-text-stroke:.5px var(--pine);font-size:1.2rem}.mission-list li.done{background:#e4ecd9}.indicators{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.indicators li{background:#f6ecd8;border:2px solid #173d3526;border-radius:12px;flex-direction:column;gap:2px;padding:12px;display:flex}.indicators strong{color:var(--pine);font-size:1.8rem;line-height:1}.indicators span{font-weight:800}.ngo-hud{grid-template-columns:1fr 1fr;gap:16px;display:grid}.memory{grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 14px;display:grid}.card{aspect-ratio:1;border:2px solid var(--pine);cursor:pointer;background:repeating-linear-gradient(45deg, var(--pine) 0 8px, var(--pine-2) 8px 16px);box-shadow:0 3px 0 var(--pine);border-radius:12px;font-size:clamp(1.4rem,7vw,2rem)}.card--up{background:var(--cream)}.card--ok{border-color:var(--leaf);box-shadow:0 3px 0 var(--leaf);background:#e4ecd9}@media (max-width:640px){.hud__nav span{display:none}.hud__nav{flex-direction:column;align-items:flex-end}.welcome__paths{flex-direction:column}.btn--path{flex-direction:row;min-height:56px}.ngo-hud{grid-template-columns:1fr}.hud__missions{right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.hud__action{white-space:nowrap}@media (pointer:coarse){.hud__action kbd{display:none}}
