:root{--ink:#132016;--moss:#1d3a24;--leaf:#3e7a45;--gold:#e6c15a;--parchment:#f3e6c4;--wood:#2a1c12;--bark:#5a3a22}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;color:var(--parchment);background:#0d1a12;font-family:Nunito,system-ui,sans-serif;overflow:hidden}canvas#game{cursor:crosshair;width:100%;height:100%;display:block}#hud{pointer-events:none;position:fixed;inset:0}#hud.hidden,.hidden{display:none!important}.hud-left{flex-direction:column;gap:8px;display:flex;position:absolute;top:22px;left:22px}.stat{background:linear-gradient(#142016d1,#0c140eb8);border:1px solid #e6c15a47;border-radius:12px;justify-content:space-between;align-items:baseline;gap:16px;min-width:150px;padding:10px 14px;display:flex;box-shadow:0 8px 24px #00000047}.stat .label{letter-spacing:.14em;text-transform:uppercase;color:#b7c9b0;font-size:11px}.stat span:last-child{color:var(--gold);font-size:18px;font-weight:800}.hud-right{text-align:center;position:absolute;top:22px;right:22px}#minimap{background:#142016;border:2px solid #e6c15a66;border-radius:16px;width:176px;height:176px;display:block;box-shadow:0 10px 28px #00000059}.minimap-label{letter-spacing:.16em;text-transform:uppercase;color:#c9d7c4;text-shadow:0 1px 2px #000;margin-top:6px;font-size:11px}.toast{opacity:0;pointer-events:none;background:#121c14e0;border:1px solid #e6c15a59;border-radius:999px;padding:10px 16px;font-weight:700;transition:opacity .25s;position:absolute;top:22px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}.prompt{letter-spacing:.02em;opacity:0;background:#101a12e6;border:1px solid #f3e6c433;border-radius:14px;padding:12px 18px;font-size:15px;font-weight:700;transition:opacity .15s;position:absolute;bottom:88px;left:50%;transform:translate(-50%)}.prompt.show{opacity:1}.prompt .bar{background:#243328;border-radius:99px;height:6px;margin-top:8px;display:block;overflow:hidden}.prompt .bar>i{background:linear-gradient(90deg,#c9a227,#f0de8a);width:0;height:100%;display:block}.hint-bar{color:#d7e3d3;letter-spacing:.04em;white-space:nowrap;background:#0a120c8c;border-radius:999px;gap:18px;padding:8px 16px;font-size:12px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.title-screen,.modal{z-index:5;background:radial-gradient(circle at 50% 30%,#28462a73,#060c08d1);place-items:center;display:grid;position:fixed;inset:0}.title-inner,.modal-card{text-align:center;background:linear-gradient(#2b2116,#1a140e);border:1px solid #e6c15a59;border-radius:22px;width:min(640px,100vw - 32px);padding:36px 40px;box-shadow:0 30px 80px #00000073}.shop-card{text-align:left;width:min(920px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto}.eyebrow{color:var(--gold);letter-spacing:.22em;text-transform:uppercase;font-size:12px;font-weight:800}h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:700}h1{color:#f7ecd0;margin:8px 0 12px;font-size:clamp(56px,10vw,92px);line-height:.9}h2{color:#f7ecd0;margin:4px 0 8px;font-size:36px}h3{color:#efe3c0;margin-bottom:10px;font-size:22px}.tag,.blurb{color:#d9ccae;margin-bottom:22px;line-height:1.5}.fine{color:#bba98a;margin-top:14px;font-size:12px}.btn{pointer-events:auto;appearance:none;color:#f6edd4;font:inherit;cursor:pointer;background:#3a2a18;border:1px solid #e6c15a73;border-radius:12px;padding:10px 16px;font-weight:800}.btn:hover{filter:brightness(1.12)}.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn.primary{color:#24180a;background:linear-gradient(#d7b24a,#b88922);border-color:#f0d78a}.btn.big{padding:14px 28px;font-size:18px}.btn.ghost{background:0 0;width:100%;margin-top:16px}.shop-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}#shop-inv,#shop-upgrades{flex-direction:column;gap:8px;display:flex}.row,.upgrade{background:#00000038;border:1px solid #f3e6c414;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.row .name,.upgrade .name{font-weight:800}.muted{color:#cbbda0;font-size:13px}.help-list{text-align:left;color:#e6d9bb;flex-direction:column;gap:10px;margin:8px 0 22px;line-height:1.45;display:flex}@media (max-width:800px){.shop-grid{grid-template-columns:1fr}.hint-bar{display:none}}
