:root{--gh-night:#011d2c;--gh-deep:#000b14;--gh-teal:#054744;--gh-neon:#32ff8b;--gh-silver:#b1e9f7;--gh-amber:#f7b83d;--gh-ember:#e9454f;--gh-text:#e0f3f4;--gh-muted:#a8c3c8;--gh-ease:cubic-bezier(.22, 1, .36, 1)}@supports (color:lab(0% 0 0)){:root{--gh-night:lab(9.53661% -6.14666 -13.3236);--gh-deep:lab(2.48195% -1.73379 -5.48642);--gh-teal:lab(26.4418% -20.2902 -4.0282);--gh-neon:lab(88.8649% -68.4197 41.1825);--gh-silver:lab(88.8128% -16.0405 -12.987);--gh-amber:lab(79.1609% 15.493 67.4391);--gh-ember:lab(55.0035% 63.7925 33.4468);--gh-text:lab(94.399% -6.32712 -2.65034);--gh-muted:lab(77.0422% -8.64631 -5.72833)}}html,body{background:var(--gh-deep);height:100%;color:var(--gh-text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;font-family:var(--font-inter), system-ui, sans-serif;overflow:hidden}img,canvas{-webkit-user-drag:none}input,textarea,select,[contenteditable],[data-selectable]{-webkit-user-select:text;user-select:text}.gh-root{background:var(--gh-deep);position:fixed;inset:0;overflow:hidden}.gh-canvas{position:absolute;inset:0}.gh-nums{pointer-events:none;z-index:6;position:fixed;inset:0}.gh-vignette{pointer-events:none;z-index:7;opacity:0;background:radial-gradient(ellipse at center, transparent 45%, color-mix(in oklch, var(--gh-ember) 70%, transparent) 100%);position:fixed;inset:0}.gh-num{font:800 22px/1 var(--font-inter), system-ui, sans-serif;font-variant-numeric:tabular-nums lining-nums;text-shadow:0 2px 6px #000408,0 0 2px #000408;text-shadow:0 2px 6px lab(.905302% -.61065 -1.83754),0 0 2px lab(.905302% -.61065 -1.83754);will-change:transform, opacity;white-space:nowrap;position:absolute;top:0;left:0}.gh-num-silver{color:var(--gh-silver)}.gh-num-gold{color:var(--gh-amber);font-size:30px}.gh-num-ember{color:var(--gh-ember);font-size:26px}.gh-num-green{color:var(--gh-neon);font-size:24px}.gh-panel{background:color-mix(in oklch, var(--gh-night) 82%, transparent);border:1px solid color-mix(in oklch, var(--gh-neon) 35%, transparent);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px)}.gh-ico{width:18px;height:18px;color:var(--gh-neon);flex:none}.gh-ico.gh-ember{color:var(--gh-ember)}.gh-ico.gh-amber{color:var(--gh-amber)}.gh-bars{z-index:5;left:max(12px, env(safe-area-inset-left));top:max(12px, env(safe-area-inset-top));gap:8px;width:min(210px,46vw);padding:8px 12px;display:grid;position:fixed}.gh-bar{align-items:center;gap:8px;display:flex}.gh-track{background:color-mix(in oklch, var(--gh-deep) 80%, transparent);border:1px solid color-mix(in oklch, var(--gh-text) 18%, transparent);flex:1;min-width:0;height:10px}.gh-fill{height:100%;transition:width .12s linear}.gh-fill-hp{background:var(--gh-ember)}.gh-fill-st{background:var(--gh-amber)}.gh-val{text-align:right;font-variant-numeric:tabular-nums lining-nums;width:2.4em;font-size:13px;font-weight:700}.gh-tired .gh-track{border-color:var(--gh-amber);animation:.25s steps(2,end) 2 gh-blink}@keyframes gh-blink{50%{background:color-mix(in oklch, var(--gh-amber) 55%, transparent)}}.gh-compass{z-index:5;left:50%;top:max(12px, env(safe-area-inset-top));text-align:center;width:min(300px,44vw);padding:8px 14px 6px;position:fixed;transform:translate(-50%)}.gh-strip{border-bottom:1px solid color-mix(in oklch, var(--gh-neon) 45%, transparent);height:22px;position:relative}.gh-tick{background:var(--gh-text);width:1px;height:8px;position:absolute;bottom:-4px}.gh-mark{transition:left 80ms linear;position:absolute;top:0;transform:translate(-50%)}.gh-dist{font:700 14px/1 var(--font-inter), sans-serif;font-variant-numeric:tabular-nums lining-nums;color:var(--gh-neon);white-space:nowrap;margin-top:4px}.gh-edge{opacity:.8;margin-right:6px}.gh-right{z-index:5;right:max(12px, env(safe-area-inset-right));top:max(12px, env(safe-area-inset-top));flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed}.gh-quest{white-space:nowrap;align-items:center;gap:8px;padding:7px 12px;font-size:13px;display:flex}.gh-quest b{font-variant-numeric:tabular-nums lining-nums;color:var(--gh-neon)}.gh-zoom{gap:6px;display:flex}.gh-iconbtn{width:44px;height:44px;color:var(--gh-text);touch-action:manipulation;cursor:pointer;background:color-mix(in oklch, var(--gh-night) 82%, transparent);border:1px solid color-mix(in oklch, var(--gh-neon) 35%, transparent);transition:background-color .18s var(--gh-ease), transform .18s var(--gh-ease);place-items:center;display:grid}.gh-iconbtn svg{width:20px;height:20px}.gh-iconbtn:active{transform:scale(.96)}@media (hover:hover){.gh-iconbtn:hover{background:color-mix(in oklch, var(--gh-teal) 70%, var(--gh-night))}}.gh-toast{z-index:5;font:600 18px/1.2 var(--font-cinzel), serif;letter-spacing:.02em;background:color-mix(in oklch, var(--gh-night) 82%, transparent);border:1px solid color-mix(in oklch, var(--gh-neon) 35%, transparent);text-align:center;animation:gh-toast 3s var(--gh-ease) both;max-width:90vw;padding:10px 18px;position:fixed;top:22%;left:50%;transform:translate(-50%)}@keyframes gh-toast{0%{opacity:0;transform:translate(-50%,6px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}.gh-chip{z-index:5;left:50%;bottom:max(18px, env(safe-area-inset-bottom));text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 10px;max-width:min(560px,92vw);padding:10px 18px;font-size:15px;display:flex;position:fixed;transform:translate(-50%)}.gh-verb{color:var(--gh-neon);font-weight:800}.gh-target{font-weight:600}.gh-input{color:var(--gh-muted)}.gh-input:before,.gh-prog:before{content:"· "}.gh-prog{font-variant-numeric:tabular-nums lining-nums;font-weight:800}.gh-urgent{border-color:var(--gh-amber)}.gh-urgent .gh-verb{color:var(--gh-amber)}.gh-stick{z-index:5;left:max(18px, env(safe-area-inset-left));bottom:max(18px, env(safe-area-inset-bottom));touch-action:none;background:color-mix(in oklch, var(--gh-night) 55%, transparent);border:1px solid color-mix(in oklch, var(--gh-neon) 40%, transparent);opacity:.8;border-radius:50%;width:120px;height:120px;position:fixed}.gh-knob{background:color-mix(in oklch, var(--gh-neon) 55%, var(--gh-night));pointer-events:none;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute;top:50%;left:50%}.gh-pad{z-index:5;right:max(14px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));pointer-events:none;width:190px;height:170px;position:fixed}.gh-act{pointer-events:auto;color:var(--gh-text);touch-action:none;background:color-mix(in oklch, var(--gh-night) 78%, transparent);border:2px solid color-mix(in oklch, var(--gh-neon) 50%, transparent);border-radius:50%;place-items:center;display:grid;position:absolute}.gh-act svg{width:46%;height:46%}.gh-act-attack{background:color-mix(in oklch, var(--gh-neon) 28%, var(--gh-night));width:84px;height:84px;bottom:0;right:0}.gh-act-jump{width:64px;height:64px;bottom:6px;right:96px}.gh-act-flash{width:64px;height:64px;bottom:98px;right:18px}.gh-act-flash.gh-on{background:color-mix(in oklch, var(--gh-amber) 45%, var(--gh-night));border-color:var(--gh-amber)}.gh-act:active{transform:scale(.95)}@media (pointer:coarse){.gh-chip{bottom:156px}}@media (max-width:480px){.gh-quest span{display:none}.gh-compass{width:40vw}}.gh-debug{z-index:9;color:var(--gh-muted);pointer-events:none;font:11px/1.2 ui-monospace,monospace;position:fixed;bottom:4px;left:8px}.gh-title{z-index:10;transition:opacity .8s var(--gh-ease), visibility 0s linear 0s;place-items:end start;padding:clamp(16px,5vw,56px);display:grid;position:fixed;inset:0}.gh-title[data-hidden=true]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .8s var(--gh-ease), visibility 0s linear .8s}.gh-art{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gh-scrim{background:linear-gradient(90deg, color-mix(in oklch, var(--gh-deep) 78%, transparent), transparent 70%);position:absolute;inset:0}@media (max-width:700px){.gh-scrim{background:linear-gradient(0deg, color-mix(in oklch, var(--gh-deep) 88%, transparent), transparent 80%)}.gh-title{justify-items:center}}.gh-overlay{z-index:12;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:color-mix(in oklch, var(--gh-deep) 55%, transparent);place-items:center;display:grid;position:fixed;inset:0}.gh-card{overscroll-behavior:contain;overflow-wrap:anywhere;background:color-mix(in oklch, var(--gh-night) 94%, transparent);border:1px solid color-mix(in oklch, var(--gh-neon) 35%, transparent);clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);gap:16px;width:100%;max-width:min(520px,100%);max-height:100%;padding:clamp(20px,5vw,32px);display:grid;position:relative;overflow-y:auto}.gh-titlecard{z-index:1;max-width:min(460px,100%)}.gh-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--gh-muted);font-size:12px}.gh-logo{font:700 clamp(44px, 12vw, 72px)/1 var(--font-cinzel), serif;letter-spacing:.06em;color:var(--gh-text)}.gh-lede{font:600 clamp(18px, 4vw, 22px)/1.3 var(--font-cinzel), serif;color:var(--gh-neon)}.gh-h2{font:700 26px/1.2 var(--font-cinzel), serif}.gh-hint,.gh-note,.gh-about{color:var(--gh-muted);font-size:13px;line-height:1.5}.gh-note{align-items:center;gap:8px;display:flex}.gh-error{color:var(--gh-ember);font-weight:600}.gh-row{flex-wrap:wrap;gap:10px;display:flex}.gh-stats{gap:8px;display:grid}.gh-stats>div{border-bottom:1px solid color-mix(in oklch, var(--gh-text) 14%, transparent);justify-content:space-between;gap:12px;padding-bottom:6px;display:flex}.gh-stats dt{color:var(--gh-muted)}.gh-stats dd{font-variant-numeric:tabular-nums lining-nums;font-weight:800}.gh-dead .gh-h2{color:var(--gh-ember)}.gh-won .gh-h2{color:var(--gh-neon)}.gh-btn{white-space:nowrap;cursor:pointer;touch-action:manipulation;min-height:48px;font:700 16px/1 var(--font-inter), sans-serif;color:var(--gh-deep);background:var(--gh-neon);transition:background-color .2s var(--gh-ease), transform .2s var(--gh-ease), box-shadow .2s var(--gh-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 22px;display:inline-flex}.gh-btn svg{width:18px;height:18px}.gh-btn:disabled{opacity:.75;cursor:progress}.gh-btn:active:not(:disabled){transform:scale(.98)}.gh-ghost{color:var(--gh-text);border-color:color-mix(in oklch, var(--gh-text) 30%, transparent);background:0 0}@media (hover:hover){.gh-btn:hover:not(:disabled){background:color-mix(in oklch, var(--gh-neon) 86%, var(--gh-text));transform:translateY(-1px)}.gh-ghost:hover:not(:disabled){background:color-mix(in oklch, var(--gh-teal) 55%, transparent)}}.gh-btn:focus-visible,.gh-iconbtn:focus-visible,.gh-act:focus-visible{outline:2px solid var(--gh-silver);outline-offset:2px}.gh-spin{animation:.9s linear infinite gh-spin}@keyframes gh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.gh-toast{animation:none}.gh-title,.gh-title[data-hidden=true],.gh-btn,.gh-iconbtn{transition:none}.gh-btn:hover:not(:disabled){transform:none}.gh-tired .gh-track{animation:none}}
