@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-ext-500-normal-1Z8Q-7rh.woff2) format("woff2"),url(/assets/cinzel-latin-ext-500-normal-BxIh9iwm.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-500-normal-B-2dbOfA.woff2) format("woff2"),url(/assets/cinzel-latin-500-normal-DMNTwV-V.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-ext-700-normal-C24KFjuG.woff2) format("woff2"),url(/assets/cinzel-latin-ext-700-normal-CORa-yIv.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-700-normal-Dkw14w9r.woff2) format("woff2"),url(/assets/cinzel-latin-700-normal-C-gK7hA8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-universe=dusk]{--u-bg: #151c24;--u-bg-2: #1c2530;--u-surface: #273441;--u-surface-2: #334657;--u-surface-3: #41576b;--u-ink: #f2f6fb;--u-ink-dim: #a6b6c6;--u-ink-faint: #6f8092;--u-accent: #f0b429;--u-accent-deep: #d29415;--u-accent-ink: #1b1304;--u-health: #e5484d;--u-endurance: #34c98a;--u-danger: #e0464b;--u-danger-ink: #ff9ea0;--u-heal: #2fbf88;--u-rest: #5f9ed4;--u-shadow-rgb: 5 8 12;--u-emboss-rgb: 232 240 250;--u-texture: 1;--u-radius: 16px;--u-radius-sm: 11px;--u-bevel: .12;--u-font-display: "Cinzel", "Iowan Old Style", Palatino, Georgia, serif;--u-font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--u-map-bg: #0b1016;--u-map-sky: #1a2433;--u-three-light-sky: #fff6e0;--u-three-gate: #6ec6e0;--u-three-mist: #eaf0f5;--u-three-event-recurring: #e8923a;--u-three-event-until: #d9543f;--u-three-event-once: #6ec6e0;--u-three-phase-night: #2b3c5e;--u-three-phase-dawn: #ffb074;--u-three-phase-dusk: #f2925a;--u-three-sky-zenith: #3f70b4;--u-three-sky-horizon: #7aa6d8}[data-universe=frost]{--u-bg: #111923;--u-bg-2: #17212d;--u-surface: #213140;--u-surface-2: #2c4255;--u-surface-3: #38576e;--u-ink: #eef6fb;--u-ink-dim: #9fb6c8;--u-ink-faint: #647e92;--u-accent: #58c7e6;--u-accent-deep: #2fa3c6;--u-accent-ink: #05161d;--u-health: #e5616b;--u-endurance: #3fcfa6;--u-danger: #e0535b;--u-danger-ink: #ffaab0;--u-heal: #3fcfa6;--u-rest: #7e9fe6;--u-shadow-rgb: 4 9 14;--u-emboss-rgb: 226 240 250;--u-map-bg: #081019;--u-map-sky: #15293c;--u-three-light-sky: #eaf6ff;--u-three-gate: #7ad3ee;--u-three-mist: #e6f2fb;--u-three-event-recurring: #e8a24a;--u-three-event-until: #e06a52;--u-three-event-once: #7ad3ee;--u-three-phase-night: #233a59;--u-three-phase-dawn: #ffc79e;--u-three-phase-dusk: #f4a86a;--u-three-sky-zenith: #4078bc;--u-three-sky-horizon: #86b2e2}:root{color-scheme:dark;--bg: var(--u-bg);--surface: var(--u-surface);--surface-2: var(--u-surface-2);--text: var(--u-ink);--muted: var(--u-ink-dim);--accent: var(--u-accent);--on-accent: var(--u-accent-ink);--health: var(--u-health);--endurance: var(--u-endurance);--danger: var(--u-danger);--danger-text: var(--u-danger-ink);--heal: var(--u-heal);--rest: var(--u-rest);--out-good: var(--u-endurance);--out-crit-good: color-mix(in srgb, var(--u-endurance) 55%, #9dffc0);--out-bad: var(--u-danger);--out-crit-bad: color-mix(in srgb, var(--u-danger) 74%, #3d0a10);--map-bg: var(--u-map-bg);--map-sky: var(--u-map-sky);--radius: var(--u-radius);--radius-sm: var(--u-radius-sm);--tap: 44px;--gap: 12px;--font-display: var(--u-font-display);--font-body: var(--u-font-body);--shadow-1: 0 1px 2px rgb(var(--u-shadow-rgb) / .45);--shadow-2: 0 10px 30px rgb(var(--u-shadow-rgb) / .5);--shadow-3: 0 22px 60px rgb(var(--u-shadow-rgb) / .6);--emboss: inset 0 1px 0 rgb(var(--u-emboss-rgb) / var(--u-bevel));--inset-deep: inset 0 2px 7px rgb(var(--u-shadow-rgb) / .55);--hairline: rgb(var(--u-emboss-rgb) / .1);--ring: 0 0 0 2px var(--u-bg), 0 0 0 4px var(--u-accent);--glass: color-mix(in srgb, var(--u-bg) 76%, transparent);--scrim: color-mix(in srgb, var(--u-map-bg) 60%, transparent);--btn-face: linear-gradient( 180deg, color-mix(in srgb, var(--u-surface-2) 86%, white), var(--u-surface-2) );--btn-face-hover: linear-gradient( 180deg, color-mix(in srgb, var(--u-surface-3) 88%, white), var(--u-surface-3) );--btn-edge: color-mix(in srgb, var(--u-surface-3) 65%, var(--u-ink) 8%);--btn-ink: var(--u-ink);--btn-primary-face: linear-gradient( 180deg, color-mix(in srgb, var(--u-accent) 84%, white), var(--u-accent-deep) );--btn-primary-edge: var(--u-accent-deep);--btn-primary-ink: var(--u-accent-ink);--panel-face: linear-gradient( 180deg, color-mix(in srgb, var(--u-surface) 90%, white 4%), var(--u-surface) );--panel-edge: color-mix(in srgb, var(--u-surface-3) 55%, transparent);--narration-face: linear-gradient( 180deg, color-mix(in srgb, var(--u-bg-2) 70%, transparent), color-mix(in srgb, var(--u-bg) 78%, transparent) );--narration-edge: color-mix(in srgb, var(--u-ink) 12%, transparent);--narration-rule: color-mix(in srgb, var(--u-ink) 26%, transparent);--narration-ink: var(--u-ink);--event-face: linear-gradient( 180deg, color-mix(in srgb, var(--u-accent) 12%, transparent), color-mix(in srgb, var(--u-accent) 5%, transparent) );--event-edge: color-mix(in srgb, var(--u-accent) 45%, transparent);--event-rule: var(--u-accent);--event-glow: 0 0 22px color-mix(in srgb, var(--u-accent) 16%, transparent);--three-accent: var(--u-accent);--three-beacon: var(--u-accent);--three-gate: var(--u-three-gate);--three-clear: var(--u-map-bg);--three-light-sky: var(--u-three-light-sky);--three-light-ground: var(--u-surface-2);--three-mist: var(--u-three-mist);--three-event-recurring: var(--u-three-event-recurring);--three-event-until: var( --u-three-event-until );--three-event-once: var(--u-three-event-once);--three-health: var(--u-health);--three-endurance: var(--u-endurance);--three-phase-night: var(--u-three-phase-night);--three-phase-dawn: var(--u-three-phase-dawn);--three-phase-dusk: var(--u-three-phase-dusk);--three-sky-zenith: var(--u-three-sky-zenith);--three-sky-horizon: var(--u-three-sky-horizon);--texture-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--bg);background-image:radial-gradient(135% 90% at 50% -25%,color-mix(in srgb,var(--u-accent) 8%,transparent),transparent 55%),var(--texture-noise);background-size:cover,180px 180px;background-attachment:fixed,fixed;color:var(--text);font-family:var(--font-body);line-height:1.45;-webkit-text-size-adjust:100%}#root{display:flex;flex-direction:column}.app{display:flex;flex-direction:column;min-height:100%;width:100%;max-width:640px;margin:0 auto}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--gap);padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:var(--panel-face);border-bottom:1px solid var(--panel-edge);box-shadow:var(--shadow-1)}.topbar h1{font-family:var(--font-display);font-size:1.15rem;letter-spacing:.04em;margin:0}.topbar .spacer{flex:1}.screen{flex:1;padding:14px;padding-bottom:max(14px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--gap)}.card{position:relative;background:var(--panel-face);border:1px solid var(--panel-edge);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow-2),var(--emboss)}.screen .card:after,.narration:after,.drawer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background-image:var(--texture-noise);background-size:160px 160px;opacity:calc(.5 * var(--u-texture));mix-blend-mode:soft-light;pointer-events:none}.card h2{margin:0 0 8px;font-family:var(--font-display);font-size:.9rem;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.muted{color:var(--muted)}.btn{position:relative;min-height:var(--tap);min-width:var(--tap);padding:11px 16px;border:1px solid var(--btn-edge);border-radius:var(--radius-sm);background:var(--btn-face);color:var(--btn-ink);font-family:inherit;font-size:1rem;cursor:pointer;touch-action:manipulation;box-shadow:var(--shadow-1),var(--emboss);transition:background .12s ease,box-shadow .12s ease,transform .06s ease}@media(hover:hover){.btn:hover{background:var(--btn-face-hover)}}.btn:active{transform:translateY(1px);box-shadow:var(--inset-deep)}.btn:focus-visible{outline:none;box-shadow:var(--ring),var(--shadow-1)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-primary{background:var(--btn-primary-face);border-color:var(--btn-primary-edge);color:var(--btn-primary-ink);font-weight:700;letter-spacing:.01em}@media(hover:hover){.btn-primary:hover{background:var(--btn-primary-face);filter:brightness(1.06)}}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger-text);box-shadow:none}.btn-block{width:100%;text-align:left}.actions{display:flex;flex-direction:column;gap:8px}.gauges{display:flex;flex-direction:column;gap:10px}.gauge-head{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:4px}.gauge-bar{height:14px;border-radius:999px;background:color-mix(in srgb,var(--u-map-bg) 70%,transparent);overflow:hidden;box-shadow:var(--inset-deep)}.gauge-fill{height:100%;border-radius:999px;box-shadow:var(--emboss),0 0 8px rgb(var(--u-emboss-rgb) / .18);transition:width .3s ease,background .3s ease}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stepper{display:flex;align-items:center;gap:8px}.stepper .val{min-width:2ch;text-align:center;font-variant-numeric:tabular-nums}.log{display:flex;flex-direction:column;gap:6px;max-height:40vh;overflow-y:auto}.log-line{font-size:.92rem;padding:7px 10px;background:color-mix(in srgb,var(--u-bg) 55%,transparent);border-radius:9px;border-left:2px solid var(--narration-rule)}.map{height:56vh;min-height:320px;border-radius:var(--radius);overflow:hidden;background:linear-gradient(180deg,var(--map-sky) 0%,var(--map-bg) 100%);border:1px solid var(--panel-edge);box-shadow:var(--shadow-2);touch-action:none}.map canvas{display:block}textarea,input[type=text],input[type=password],input[type=number],select{width:100%;min-height:var(--tap);padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--btn-edge);background:color-mix(in srgb,var(--u-map-bg) 55%,transparent);color:var(--text);font-size:1rem;font-family:inherit;box-shadow:var(--inset-deep)}textarea:focus-visible,input[type=text]:focus-visible,input[type=password]:focus-visible,input[type=number]:focus-visible,select:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--inset-deep),0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent)}textarea{resize:vertical}pre.prompt{white-space:pre-wrap;word-break:break-word;background:color-mix(in srgb,var(--u-map-bg) 55%,transparent);border:1px solid var(--panel-edge);border-radius:var(--radius-sm);padding:12px;max-height:45vh;overflow-y:auto;font-size:.85rem;box-shadow:var(--inset-deep)}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.field label{font-size:.85rem;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.problem{border-left:3px solid var(--danger);padding:6px 10px;background:color-mix(in srgb,var(--u-bg) 55%,transparent);border-radius:6px;margin-bottom:6px}.problem .label{font-weight:600;font-size:.85rem;color:var(--danger-text)}.banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border-radius:var(--radius-sm);text-align:center;font-family:var(--font-display);font-weight:700;letter-spacing:.03em}.banner .ic{font-size:1.3rem}.banner.win{background:color-mix(in srgb,var(--endurance) 18%,transparent);border:1px solid var(--endurance);box-shadow:0 0 22px color-mix(in srgb,var(--endurance) 16%,transparent)}.banner.lose{background:color-mix(in srgb,var(--danger) 18%,transparent);border:1px solid var(--danger);box-shadow:0 0 22px color-mix(in srgb,var(--danger) 16%,transparent)}.scenario-item{display:flex;flex-direction:column;gap:8px}.scenario-item .title{font-family:var(--font-display);font-weight:600;letter-spacing:.02em}.game{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--map-bg)}.game-empty{display:flex;flex-direction:column;gap:var(--gap);align-items:center;justify-content:center;padding:24px}.game .map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;height:100%;min-height:0;border:0;border-radius:0;box-shadow:none}.map-host{position:absolute;top:0;right:0;bottom:0;left:0}.map-controls{position:absolute;z-index:3;right:max(12px,env(safe-area-inset-right));bottom:calc(48dvh + 12px);display:flex;flex-direction:column;gap:8px}.glass{background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--hairline);box-shadow:var(--shadow-2),var(--emboss)}.scrim{position:absolute;left:0;right:0;z-index:1;pointer-events:none}.scrim-top{top:0;height:150px;background:linear-gradient(180deg,var(--scrim),transparent)}.scrim-bottom{bottom:0;height:280px;background:linear-gradient(0deg,color-mix(in srgb,var(--u-map-bg) 80%,transparent),transparent)}.hud{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));pointer-events:none}.hud>*{pointer-events:auto}.hud-gauges{position:relative;display:flex;flex-direction:column;gap:6px;min-width:140px;padding:9px 11px;border-radius:14px}.hud .gauge-head{font-size:.72rem;margin-bottom:2px}.hud .gauge-bar{height:8px}.hud-clock{display:flex;flex-direction:column;gap:5px;margin-top:2px;padding-top:7px;border-top:1px solid var(--hairline);font-family:var(--font-display);font-size:.82rem;letter-spacing:.04em;color:var(--text)}.hud-clock-row{display:flex;align-items:center;gap:6px}.hud-clock-ic{flex:none;font-size:1.05rem;color:var(--phase-ink, var(--accent))}.hud-clock-phase{margin-left:auto;font-size:.72rem;letter-spacing:.02em;color:var(--phase-ink, var(--muted));opacity:.92}.hud-clock-day{display:block;height:3px;border-radius:999px;background:color-mix(in srgb,var(--text) 14%,transparent);overflow:hidden}.hud-clock-day-fill{display:block;height:100%;border-radius:999px;background:var(--phase-ink, var(--accent));transition:width .4s ease}.phase-night{--phase-ink: #9db4e8}.phase-dawn{--phase-ink: #f0a98c}.phase-day{--phase-ink: var(--accent)}.phase-dusk{--phase-ink: #e0916b}.hud-cluster{display:flex;flex-direction:column;align-items:flex-start;gap:7px;max-width:min(64vw,290px);pointer-events:none}.hud-cluster>*{pointer-events:auto}.skill-rail{display:flex;flex-wrap:wrap;gap:5px}.skill-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 9px 4px 7px;border-radius:999px;font-size:.8rem;line-height:1}.skill-chip-ic{font-size:.96rem;color:var(--accent)}.skill-chip-val{font-weight:700;font-variant-numeric:tabular-nums}.craft-panel{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;animation:craft-pulse 1.8s ease-in-out infinite}.craft-panel.open{animation:none;box-shadow:0 0 20px 3px color-mix(in srgb,var(--accent) 26%,transparent)}.craft-head{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 11px;font-family:var(--font-display);font-size:.84rem;letter-spacing:.02em;color:var(--text);cursor:pointer}.craft-head-ic{flex:none;font-size:1.05rem;color:var(--accent);filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .6))}.craft-head-label{flex:1;text-align:left;white-space:nowrap}.craft-head-count{flex:none;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-family:var(--font-body);font-size:.7rem;font-weight:700;line-height:18px;text-align:center}.craft-head-caret{flex:none;font-size:.95rem;color:var(--muted);transform:rotate(90deg);transition:transform .2s ease}.craft-panel.open .craft-head-caret{transform:rotate(-90deg)}.craft-head:active{transform:translateY(1px)}.craft-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease}.craft-panel.open .craft-fold{grid-template-rows:1fr}.craft-list{overflow:hidden;min-height:0;list-style:none;margin:0;padding:0 6px 6px}.craft-list>li+li{border-top:1px solid var(--hairline)}.craft-row{width:100%;display:inline-flex;align-items:center;gap:9px;padding:9px 6px;background:none;border:none;border-radius:9px;color:var(--text);font-size:.92rem;text-align:left;cursor:pointer}.craft-row:active{background:color-mix(in srgb,var(--accent) 12%,transparent)}@media(hover:hover){.craft-row:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.craft-row-ic{flex:none;font-size:1.2rem;color:var(--accent);filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .6))}.craft-row-name{flex:1}.craft-row-cost{flex:none;display:inline-flex;align-items:center;gap:3px;color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums}@keyframes craft-pulse{0%,to{box-shadow:0 0 13px 1px color-mix(in srgb,var(--accent) 16%,transparent)}50%{box-shadow:0 0 22px 3px color-mix(in srgb,var(--accent) 32%,transparent)}}@media(prefers-reduced-motion:reduce){.craft-panel{animation:none}.craft-fold{transition:none}}.icon-btn{width:var(--tap);height:var(--tap);border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;color:var(--text);cursor:pointer;touch-action:manipulation;position:relative;transition:box-shadow .12s ease,transform .06s ease}.icon-btn:active{transform:translateY(1px)}.icon-btn:focus-visible{outline:none;box-shadow:var(--ring)}.icon-btn.on{border-color:var(--accent);box-shadow:var(--shadow-2),0 0 0 1px var(--accent),0 0 16px color-mix(in srgb,var(--accent) 22%,transparent)}.count-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.7rem;font-weight:700;line-height:18px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-1);animation:badge-pop .28s ease-out}@keyframes badge-pop{0%{transform:scale(.5)}60%{transform:scale(1.25)}to{transform:scale(1)}}.bag-accordion{display:flex;flex-direction:column;width:152px;border-radius:14px;transition:width .22s ease}.bag-accordion.open{width:min(82vw,300px)}.bag-accordion.open .bag-fold-inner{max-height:52vh}.bag-fold-inner.scrollable{overflow-y:auto}.bag-head-row{position:relative;display:flex;align-items:center;gap:8px;min-height:34px;padding:5px 11px;border:none;background:none;border-radius:14px;color:var(--text);font-family:var(--font-display);font-size:.84rem;letter-spacing:.02em;cursor:pointer;touch-action:manipulation;transition:transform .06s ease}.bag-head-row:active{transform:translateY(1px)}.bag-row-ic{flex:none;font-size:1.1rem;color:var(--muted)}.bag-row-label{flex:none}.bag-row-count{flex:none;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-family:var(--font-body);font-size:.7rem;font-weight:700;line-height:18px;text-align:center}.bag-row-caret{flex:none;margin-left:auto;font-size:.95rem;color:var(--muted);transform:rotate(90deg);transition:transform .2s ease}.bag-accordion.open .bag-row-caret{transform:rotate(-90deg)}.bag-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.bag-accordion.open .bag-fold{grid-template-rows:1fr}.bag-fold-inner{overflow:hidden;min-height:0;display:flex;flex-direction:column;gap:9px;padding:0 11px}.bag-accordion.open .bag-fold-inner{padding-bottom:11px}.bag-weight-row{display:flex;align-items:center;gap:8px}.bag-weight-cap{flex:none;font-size:.74rem;font-variant-numeric:tabular-nums;color:var(--muted)}.heal-panel{display:flex;flex-direction:column;gap:7px;padding:8px 11px 10px;border-radius:14px;border:1px solid var(--hairline);background:color-mix(in srgb,var(--u-surface) 48%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.heal-label{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-display);font-size:.84rem;letter-spacing:.02em;color:var(--text)}.heal-label-ic{flex:none;font-size:1.05rem;color:var(--heal);filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .6))}.heal-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:7px}.heal-slot{position:relative;width:42px;height:42px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:12px;cursor:pointer;touch-action:manipulation;text-shadow:none;background:color-mix(in srgb,var(--heal) 15%,var(--u-surface));border:1px solid color-mix(in srgb,var(--heal) 42%,transparent);transition:box-shadow .12s ease,transform .06s ease}.heal-slot:active{transform:translateY(1px)}.heal-slot.on{box-shadow:0 0 0 1px var(--heal),0 0 14px color-mix(in srgb,var(--heal) 28%,transparent)}.heal-slot-ic{font-size:1.4rem;color:var(--heal);filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .5))}.heal-slot-qty{position:absolute;right:2px;bottom:2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--heal);color:var(--on-accent);font-size:.66rem;font-weight:700;line-height:16px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-1)}.heal-empty{margin:0;font-size:.8rem;font-style:italic;color:var(--muted)}.rest-btn{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:5px 11px;border:none;border-radius:14px;background:none;color:var(--text);font-family:var(--font-display);font-size:.84rem;letter-spacing:.02em;cursor:pointer;touch-action:manipulation;text-shadow:0 1px 3px rgb(var(--u-shadow-rgb) / .7);transition:transform .06s ease}.rest-btn:active{transform:translateY(1px)}.rest-btn.on{box-shadow:0 0 0 1px color-mix(in srgb,var(--rest) 55%,transparent)}.rest-btn-ic{flex:none;font-size:1.15rem;color:var(--rest);filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .6))}.rest-btn-label{flex:none}@media(hover:hover){.bag-head-row:hover,.rest-btn:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.heal-slot:hover{box-shadow:0 0 0 1px var(--heal)}}.bag-slot-btn{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:0;background:none;border:none;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;transition:transform .06s ease}.bag-slot-btn:active{transform:translateY(1px)}.bag-slot-usable .bag-slot-cell{border-color:color-mix(in srgb,var(--accent) 45%,var(--hairline))}.bag-slot-usable .bag-slot-name{color:var(--text)}@media(hover:hover){.bag-slot-btn:hover .bag-slot-cell{box-shadow:var(--inset-deep),var(--emboss),0 0 0 1px var(--accent)}}.hotbar-confirm-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;background:transparent;border:none;cursor:default}.hotbar-confirm{position:fixed;z-index:12;width:min(244px,72vw);padding:12px 13px;border-radius:14px;display:flex;flex-direction:column;gap:10px}.bag-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;background:transparent;border:none;cursor:default}.bag-panel{position:fixed;z-index:12;width:min(320px,calc(100vw - 24px));max-height:min(72vh,600px);overflow-y:auto;padding:13px;border-radius:16px;display:flex;flex-direction:column;gap:11px}.bag-head{display:flex;align-items:center;gap:8px}.bag-head-ic{flex:none;font-size:1.15rem;color:var(--accent)}.bag-head-title{flex:1;font-family:var(--font-display);font-size:1rem;letter-spacing:.04em}.bag-head-weight{flex:none;font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.bag-close,.panel-close{flex:none;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:9px;color:var(--muted);cursor:pointer}.bag-close:active,.panel-close:active{transform:translateY(1px)}.bag-weight{height:6px;border-radius:999px;background:color-mix(in srgb,var(--u-map-bg) 70%,transparent);overflow:hidden;box-shadow:var(--inset-deep)}.bag-weight-fill{height:100%;border-radius:999px;box-shadow:var(--emboss);transition:width .3s ease,background .3s ease}.bag-section{display:flex;flex-direction:column;gap:7px}.bag-section-title{margin:2px 0 0;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.bag-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:8px}.bag-slot{display:flex;flex-direction:column;align-items:center;gap:4px}.bag-slot-cell{position:relative;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--hairline);background:linear-gradient(180deg,color-mix(in srgb,var(--u-surface-2) 65%,transparent),color-mix(in srgb,var(--u-bg) 55%,transparent));box-shadow:var(--inset-deep),var(--emboss)}.bag-slot-ic{font-size:1.75rem;color:color-mix(in srgb,var(--accent) 24%,var(--text));filter:drop-shadow(0 1px 2px rgb(var(--u-shadow-rgb) / .5))}.bag-slot-qty{position:absolute;right:3px;bottom:3px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.66rem;font-weight:700;line-height:16px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-1)}.bag-slot-name{max-width:100%;font-size:.68rem;line-height:1.15;color:var(--muted);text-align:center;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.bag-empty{margin:4px 0;color:var(--muted);font-size:.9rem}.journal-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;background:transparent;border:none;cursor:default}.journal-panel{position:fixed;z-index:12;top:max(58px,calc(env(safe-area-inset-top) + 50px));right:max(12px,env(safe-area-inset-right));width:min(360px,calc(100vw - 24px));max-height:min(70vh,560px);padding:12px;border-radius:16px;display:flex;flex-direction:column;gap:10px}.journal-head{display:flex;align-items:center;gap:8px}.journal-head-ic{flex:none;font-size:1.1rem;color:var(--accent)}.journal-head-title{flex:1;font-family:var(--font-display);font-size:1rem;letter-spacing:.06em;text-transform:uppercase}.journal-feed{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.journal-empty{margin:6px 2px;color:var(--muted);font-size:.9rem}.journal-entry{display:flex;gap:9px;padding:9px 11px;border-radius:10px;background:var(--narration-face);border:1px solid var(--narration-edge)}.journal-entry-mark{flex:none;width:3px;border-radius:999px;background:var(--narration-rule);align-self:stretch}.journal-entry-body{min-width:0;font-size:.92rem;line-height:1.42;color:var(--narration-ink)}.journal-place{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:.95rem;letter-spacing:.02em;color:var(--text)}.journal-place svg{flex:none;font-size:1.05rem;color:var(--accent)}.journal-timeline{list-style:none;margin:0;padding:0}.tl-node{display:flex;gap:10px;position:relative}.tl-rail{position:relative;flex:none;width:12px;display:flex;justify-content:center}.tl-rail:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:var(--narration-rule)}.tl-node:first-child .tl-rail:before{top:7px}.tl-node:last-child .tl-rail:before{bottom:auto;height:7px}.tl-dot{position:relative;z-index:1;margin-top:3px;width:9px;height:9px;border-radius:999px;background:var(--phase-ink, var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--phase-ink, var(--accent)) 22%,transparent)}.tl-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;padding-bottom:14px}.tl-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tl-time{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-display);font-size:.82rem;letter-spacing:.03em;color:var(--phase-ink, var(--accent))}.tl-time svg{flex:none;font-size:1rem}.tl-body{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:10px;background:var(--narration-face);border:1px solid var(--narration-edge);border-left:2px solid var(--narration-rule)}.fx-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;overflow:hidden}.fly-token{position:fixed;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;color:var(--on-accent);background:var(--accent);box-shadow:var(--shadow-2);will-change:transform,opacity}.fly-token-craft{box-shadow:var(--shadow-2),0 0 14px 2px color-mix(in srgb,var(--accent) 50%,transparent)}.craft-spark{position:fixed;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:999px;pointer-events:none;animation:craft-spark .5s ease-out forwards}@keyframes craft-spark{0%{opacity:.9;transform:scale(.5);box-shadow:0 0 10px 3px color-mix(in srgb,var(--accent) 55%,transparent),0 0 color-mix(in srgb,var(--accent) 60%,transparent)}to{opacity:0;transform:scale(1.4);box-shadow:0 0 0 0 transparent,0 0 0 16px color-mix(in srgb,var(--accent) 0%,transparent)}}.bag-pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:13px;pointer-events:none;animation:bag-pulse .64s ease-out}@keyframes bag-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 65%,transparent);opacity:1}to{box-shadow:0 0 0 13px color-mix(in srgb,var(--accent) 0%,transparent);opacity:0}}@media(prefers-reduced-motion:reduce){.craft-spark,.bag-pulse{display:none}}.pickup-toast{position:fixed;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap;color:var(--text);animation:pickup-rise 1.2s ease-out forwards}@keyframes pickup-rise{0%{opacity:0;transform:translate(-50%,-110%)}20%{opacity:1;transform:translate(-50%,-160%)}80%{opacity:1;transform:translate(-50%,-200%)}to{opacity:0;transform:translate(-50%,-230%)}}.check-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--u-map-bg) 60%,transparent);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:scrim-in .2s ease-out both}@keyframes scrim-in{0%{opacity:0}}.check-fx{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;max-width:320px;padding:16px 22px 18px;border-radius:var(--radius);text-align:center;border:1px solid color-mix(in srgb,var(--tone) 55%,transparent);box-shadow:var(--shadow-3),0 0 34px color-mix(in srgb,var(--tone) 24%,transparent);animation:check-pop .34s cubic-bezier(.2,.9,.25,1) both}.check-fx.tone-good{--tone: var(--out-good)}.check-fx.tone-crit-good{--tone: var(--out-crit-good)}.check-fx.tone-bad{--tone: var(--out-bad)}.check-fx.tone-crit-bad{--tone: var(--out-crit-bad)}.check-fx.tone-crit-good{box-shadow:var(--shadow-3),0 0 50px color-mix(in srgb,var(--tone) 42%,transparent);animation:check-burst .42s cubic-bezier(.2,.9,.25,1) both}.check-fx.tone-crit-bad{box-shadow:var(--shadow-3),0 0 50px color-mix(in srgb,var(--tone) 40%,transparent);animation:check-shake .46s ease-out both}.check-head{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted)}.check-head svg{color:var(--tone)}.check-reroll{font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:1px 7px;border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}.check-break{display:inline-flex;align-items:center;gap:5px;font-size:.92rem;color:var(--muted);font-variant-numeric:tabular-nums}.check-break .check-boost{color:var(--endurance);font-weight:700}.check-break .check-die{color:var(--tone);font-weight:700}.check-break .check-op{opacity:.65}.check-fx .check-break,.check-fx .check-score,.check-fx .check-verdict{animation:check-reveal .3s ease-out both}@keyframes check-reveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.check-fx .check-break,.check-fx .check-score,.check-fx .check-verdict{animation:none}}.die{--die-face: #f4f4ef;--pip: #20232b;flex:none;width:22px;height:22px;filter:drop-shadow(0 1px 1.5px rgb(0 0 0 / .35))}.die-face{fill:var(--die-face);stroke:#00000029;stroke-width:1.5}.die-pip{fill:var(--pip)}.die-roll{width:58px;height:58px;margin:2px 0 4px}.die-roll.is-rolling{animation:die-jiggle .34s ease-in-out infinite}@keyframes die-jiggle{0%,to{transform:rotate(-7deg) scale(1)}50%{transform:rotate(7deg) scale(1.07)}}@media(prefers-reduced-motion:reduce){.die-roll.is-rolling{animation:none}}.check-recap{list-style:none;margin:4px 0 2px;padding:8px 11px;width:100%;display:flex;flex-direction:column;gap:3px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--u-bg) 45%,transparent);font-size:.82rem;color:var(--text)}.check-continue{margin-top:6px}.check-score{display:inline-flex;align-items:baseline;gap:8px}.check-total{min-width:1.5em;font-family:var(--font-display);font-size:2.6rem;font-weight:700;line-height:1.05;color:var(--tone);font-variant-numeric:tabular-nums}.check-vs{font-size:.9rem;color:var(--muted);font-variant-numeric:tabular-nums}.check-verdict{display:inline-flex;align-items:center;gap:5px;margin-top:1px;font-size:.86rem;font-weight:700;letter-spacing:.01em;color:var(--tone)}@keyframes check-pop{0%{opacity:0;transform:scale(.72)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes check-burst{0%{opacity:0;transform:scale(.6)}55%{opacity:1;transform:scale(1.16)}to{opacity:1;transform:scale(1)}}@keyframes check-shake{0%{opacity:0;transform:scale(.82)}30%{opacity:1;transform:translate(-8px) scale(1.03)}45%{transform:translate(8px) scale(1.02)}60%{transform:translate(-5px) scale(1)}75%{transform:translate(4px) scale(1)}to{opacity:1;transform:translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.check-fx,.check-fx.tone-crit-good,.check-fx.tone-crit-bad{animation:none}}.sheet{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0 auto;max-width:720px;max-height:48dvh;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:20px 16px max(14px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0;box-shadow:var(--shadow-3),var(--emboss);background-image:var(--texture-noise);background-size:160px 160px;background-blend-mode:soft-light}.sheet:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:38px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--u-ink) 28%,transparent)}.sheet-end{display:flex;flex-direction:column;gap:10px}.sheet .card,.drawer .card{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.sheet .card:after,.drawer .card:after{display:none}.drawer-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:var(--scrim);border:0;padding:0;cursor:pointer}.drawer{position:absolute;z-index:4;top:0;right:0;bottom:0;width:min(360px,86vw);overflow-y:auto;padding:max(16px,env(safe-area-inset-top)) 16px 16px;border-radius:16px 0 0 16px}.drawer-close{position:absolute;top:10px;right:12px;width:36px;height:36px;border-radius:11px;border:1px solid var(--btn-edge);background:var(--btn-face);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-1),var(--emboss)}.drawer-close:active{transform:translateY(1px)}.ic{flex:none}.inline-ic,.gauge-label{display:inline-flex;align-items:center;gap:5px}.narration{position:relative;background:var(--narration-face);border:1px solid var(--narration-edge);border-left:3px solid var(--narration-rule);border-radius:4px var(--radius-sm) var(--radius-sm) 4px;padding:12px 14px;color:var(--narration-ink);box-shadow:var(--inset-deep)}.narration.is-event{background:var(--event-face);border-color:var(--event-edge);border-left-color:var(--event-rule);box-shadow:var(--inset-deep),var(--event-glow)}.panel-title{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.03em;text-transform:none;color:var(--text)}.panel-title .ic,.panel-title svg{font-size:1.2rem;color:var(--narration-rule)}.narration.is-event .panel-title{color:var(--accent)}.narration.is-event .panel-title .ic,.narration.is-event .panel-title svg{color:var(--accent)}.panel-desc{margin:0;line-height:1.5;text-wrap:pretty}.event-tag{margin:0 0 6px;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.event-tag.is-recurring,.event-tag.is-until{color:var(--danger-text)}.btn-action{display:flex;align-items:center;gap:10px;width:100%;text-align:left}.action-ic{font-size:1.35rem;flex:none;opacity:.92;color:var(--accent)}.action-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;text-align:left}.action-label{font-weight:600}.action-go{flex:none;font-size:1.2rem;color:var(--muted);transition:transform .12s ease,color .12s ease}@media(hover:hover){.btn-action:hover .action-go{color:var(--accent);transform:translate(2px)}}.action-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.action-count{flex:none;align-self:center;min-width:28px;padding:3px 9px;border-radius:999px;font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent) 38%,transparent)}.delta{display:inline-flex;align-items:center;gap:3px;font-size:.82rem;font-weight:600;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:8px;border:1px solid transparent;line-height:1.45;white-space:nowrap}.delta svg{font-size:.95em}.delta-stat.delta-gain{color:var(--endurance);background:color-mix(in srgb,var(--endurance) 16%,transparent);border-color:color-mix(in srgb,var(--endurance) 45%,transparent)}.delta-stat.delta-loss{color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.delta-neutral{color:var(--text);background:color-mix(in srgb,var(--u-bg) 55%,transparent);border-color:var(--hairline)}.delta-time{display:inline-flex;align-items:center;gap:3px;font-size:.82rem;font-weight:600;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:8px;line-height:1.45;white-space:nowrap;color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.delta-time svg{font-size:.95em}.log-line .delta-stat.delta-gain,.check-recap .delta-stat.delta-gain{box-shadow:0 0 10px color-mix(in srgb,var(--endurance) 18%,transparent)}.log-line .delta-stat.delta-loss,.check-recap .delta-stat.delta-loss{box-shadow:0 0 10px color-mix(in srgb,var(--danger) 18%,transparent)}.branch{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:8px;font-size:.8rem}.branch-success{color:var(--endurance);background:color-mix(in srgb,var(--endurance) 15%,transparent)}.branch-fail{color:var(--danger);background:color-mix(in srgb,var(--danger) 15%,transparent)}.chip{display:inline-flex;align-items:center;gap:4px;flex:none;font-size:.78rem;padding:2px 8px;border-radius:999px}.chip-test{background:color-mix(in srgb,var(--accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent)}.chip-boost{background:var(--accent);color:var(--on-accent);font-weight:600}.chip-odds{background:color-mix(in srgb,var(--u-map-bg) 50%,transparent);border:1px solid var(--hairline);font-variant-numeric:tabular-nums}.chip-odds.tone-good{color:var(--endurance);border-color:color-mix(in srgb,var(--endurance) 40%,transparent)}.chip-odds.tone-mid{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.chip-odds.tone-bad{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.chip-odds.tone-none{color:var(--muted)}.testpanel{display:flex;flex-direction:column;gap:12px}.tp-head{display:flex;align-items:center;gap:8px}.tp-head-ic{color:var(--accent);font-size:1.2rem}.tp-title{flex:1;margin:0;font-family:var(--font-display);font-size:1rem;letter-spacing:.02em;color:var(--text)}.tp-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}@media(hover:hover){.tp-close:hover{color:var(--text)}}.tp-formula{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--u-map-bg) 45%,transparent);box-shadow:var(--inset-deep);font-size:.95rem}.tp-term{display:inline-flex;align-items:center;gap:4px}.tp-term b{font-variant-numeric:tabular-nums}.tp-term-die{color:var(--accent)}.tp-term-diff{font-weight:700;color:var(--text)}.tp-term-boost{color:var(--endurance);font-weight:700}.tp-skill{gap:5px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--u-surface-3) 60%,transparent);border:1px solid var(--hairline);box-shadow:var(--emboss)}.tp-skill svg{font-size:1.1em;color:var(--accent)}.tp-skill b{font-variant-numeric:tabular-nums}.tp-op{color:var(--muted)}.tp-summary{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:2px 2px 0}.tp-summary-label{font-size:.82rem;color:var(--muted)}.tp-summary-odds{font-size:.95rem;color:var(--muted)}.tp-summary-odds strong{margin-right:4px;font-size:1.25rem;font-variant-numeric:tabular-nums}.tp-summary-odds.tone-good strong{color:var(--out-good)}.tp-summary-odds.tone-mid strong{color:var(--accent)}.tp-summary-odds.tone-bad strong{color:var(--danger)}.tp-summary-odds.tone-none strong{color:var(--muted)}.tp-boost{display:flex;align-items:center;justify-content:space-between;gap:8px}.tp-boost-label{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--muted)}.tp-boost-label svg{color:var(--accent)}.tp-details{border:1px solid var(--narration-edge);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--u-bg) 40%,transparent);overflow:hidden}.tp-details-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:transparent;color:var(--muted);font-family:inherit;font-size:.85rem;text-align:left;cursor:pointer}.tp-details.is-open .tp-details-toggle{border-bottom:1px solid var(--narration-edge)}.tp-details-caret{flex:none;color:var(--muted);transition:transform .15s ease}.tp-details-toggle[aria-expanded=true] .tp-details-caret{transform:rotate(90deg)}@media(hover:hover){.tp-details-toggle:hover{color:var(--text)}}.tp-details-body{display:flex;flex-direction:column;gap:8px;padding:10px}.tp-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tp-row{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--u-bg) 50%,transparent)}.tp-row-label{flex:none;font-size:.88rem;font-weight:600}.tp-row.tone-crit-good .tp-row-label{color:var(--out-crit-good)}.tp-row.tone-good .tp-row-label{color:var(--out-good)}.tp-row.tone-bad .tp-row-label{color:var(--out-bad)}.tp-row.tone-crit-bad .tp-row-label{color:var(--out-crit-bad)}.tp-row-dice{display:inline-flex;gap:5px}.die-mini{width:30px;height:30px}.tp-row.tone-crit-good .die-mini{--die-face: var(--out-crit-good)}.tp-row.tone-good .die-mini{--die-face: var(--out-good)}.tp-row.tone-bad .die-mini{--die-face: var(--out-bad)}.tp-row.tone-crit-bad .die-mini{--die-face: var(--out-crit-bad);--pip: #f4dede}.tp-row-none{color:var(--muted);opacity:.6}.tp-row-pct{margin-left:auto;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums}.tp-row.tone-crit-good .tp-row-pct{color:var(--out-crit-good)}.tp-row.tone-good .tp-row-pct{color:var(--out-good)}.tp-row.tone-bad .tp-row-pct{color:var(--out-bad)}.tp-row.tone-crit-bad .tp-row-pct{color:var(--out-crit-bad)}.tp-row-out{display:inline-flex;align-items:center;gap:8px}.tp-row-detail{font-size:.82rem;color:var(--muted)}.tp-row.is-impossible{opacity:.5}.tp-hint{display:flex;align-items:center;gap:6px;margin:0;font-size:.78rem;color:var(--muted)}.tp-hint svg{flex:none;color:var(--accent)}.tp-note{display:flex;align-items:center;gap:6px;margin:0;font-size:.82rem;color:var(--danger-text)}.tp-note svg{flex:none;color:var(--danger)}.tp-launch{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:2px}.boost{display:flex;align-items:center;gap:8px;margin-bottom:10px}.boost .action-ic{color:var(--accent)}.boost-label{flex:1;font-size:.82rem;color:var(--muted)}.move-hint{display:flex;align-items:center;gap:6px;margin:2px 2px 0;font-size:.85rem;color:var(--muted)}.move-hint .ic{color:var(--accent)}.map-anchored-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;background:transparent}.map-anchored{position:fixed;left:0;top:0;z-index:7;will-change:transform;transition:opacity .14s ease}.map-anchored.is-offscreen{opacity:.55}.map-anchored:after{content:"";position:absolute;left:var(--caret-x, 50%);bottom:-5px;width:12px;height:12px;transform:translate(-50%) rotate(45deg);background:var(--glass);border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.map-anchored.is-below:after{bottom:auto;top:-5px;border-right:0;border-bottom:0;border-left:1px solid var(--hairline);border-top:1px solid var(--hairline)}.loot-detail{width:min(320px,88vw);padding:16px 16px 14px;border-radius:16px;display:flex;flex-direction:column;gap:12px}.loot-close{position:absolute;top:10px;right:12px;width:34px;height:34px;border-radius:11px;border:1px solid var(--btn-edge);background:var(--btn-face);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-1),var(--emboss)}.loot-close:active{transform:translateY(1px)}.loot-head{display:flex;align-items:center;gap:12px;padding-right:36px}.loot-ic{flex:none;width:38px;height:38px;color:var(--accent)}.loot-headtext{min-width:0}.loot-title{margin:0;font-size:1.1rem;line-height:1.2}.loot-qty{margin:2px 0 0;font-size:.9rem;color:var(--muted)}.loot-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.9rem;color:var(--muted)}.loot-meta-label{flex:none}.loot-act{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%}.loot-far{margin:0;font-size:.9rem;color:var(--muted);text-align:center}.map-menu{display:flex;flex-direction:column;padding:5px;border-radius:15px;max-width:min(300px,86vw)}.map-menu .btn-action{border-color:transparent;background:transparent;box-shadow:none;border-radius:10px;padding:10px 12px}.map-menu .action-ic{font-size:1.2rem}.map-menu .btn-action:active{transform:translateY(1px);background:color-mix(in srgb,var(--text) 10%,transparent)}@media(hover:hover){.map-menu .btn-action:hover{background:color-mix(in srgb,var(--text) 7%,transparent)}}.map-menu .btn-action+.btn-action{margin-top:4px}.map-menu .btn-action+.btn-action:before{content:"";position:absolute;top:-2px;left:10px;right:10px;height:1px;background:var(--hairline)}.place-reveal{position:absolute;z-index:3;top:21%;left:50%;pointer-events:none;font-family:var(--font-display);font-size:clamp(1.7rem,7.5vw,2.9rem);font-weight:700;letter-spacing:.06em;color:var(--text);text-align:center;white-space:nowrap;text-shadow:0 2px 20px var(--u-map-bg),0 1px 4px rgba(0,0,0,.65);animation:place-reveal 2.6s ease forwards}@keyframes place-reveal{0%{opacity:0;transform:translate(-50%,12px) scale(.96)}13%{opacity:1;transform:translate(-50%) scale(1)}68%{opacity:1;transform:translate(-50%) scale(1);letter-spacing:.06em}to{opacity:0;transform:translate(-50%,-12px) scale(1.02);letter-spacing:.16em}}.hud-place{position:absolute;z-index:2;bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px));left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:7px;min-height:34px;max-width:min(62vw,280px);padding:6px 14px;border:none;border-radius:999px;font-family:var(--font-display);font-size:.88rem;letter-spacing:.02em;color:var(--text);cursor:pointer}.place-pill-ic{flex:none;font-size:1.02rem;color:var(--accent)}.place-pill-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.place-pill-go{flex:none;font-size:.95rem;color:var(--muted)}.hud-place:active{transform:translate(-50%) translateY(1px)}@media(hover:hover){.hud-place:hover .place-pill-go{color:var(--accent)}}.place-desc{position:relative;width:min(300px,86vw);padding:14px 14px 13px;border-radius:16px}.place-desc-title{margin:0 0 6px;padding-right:30px;display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.03em}.place-desc-title svg{flex:none;color:var(--accent)}.place-desc-text{margin:0;font-size:.92rem;line-height:1.5;color:var(--text)}.moment-dim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none;background:color-mix(in srgb,var(--u-map-bg) 30%,transparent);transition:opacity .3s ease}.moment-dim.is-peeking{opacity:0}.moment-card{position:fixed;z-index:9;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(440px,94vw);max-height:74dvh;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:14px 16px 16px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--event-rule) 55%,var(--hairline));box-shadow:var(--shadow-3),var(--event-glow);transition:opacity .25s ease,transform .25s ease}.moment-card.is-peeking{opacity:.06;transform:translate(-50%) translateY(8px)}.moment-card .card{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.moment-card .card:after{display:none}.peek-eye{align-self:flex-end;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;border:1px solid var(--btn-edge);background:var(--btn-face);color:var(--muted);font-size:.8rem;font-weight:600;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:var(--emboss)}.peek-eye svg{font-size:.95rem}.peek-eye:active,.peek-eye[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.end-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:color-mix(in srgb,var(--u-map-bg) 48%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.end-overlay .banner{font-size:1.15rem;padding:14px 20px}.end-score{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-display);font-size:1.05rem;letter-spacing:.03em;color:var(--text)}.end-score svg{flex:none;font-size:1.15rem;color:var(--accent)}.end-overlay .btn{min-width:min(280px,80vw)}.auth{flex:1;min-height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow-y:auto;padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))}.auth:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 72% at 50% -12%,color-mix(in srgb,var(--u-accent) 18%,transparent),transparent 60%),radial-gradient(96% 60% at 50% 118%,color-mix(in srgb,var(--u-map-sky) 85%,transparent),transparent 55%),color-mix(in srgb,var(--bg) 60%,transparent)}.auth-inner{width:100%;max-width:400px;display:flex;flex-direction:column;gap:22px}.auth-hero{position:relative;width:100%;min-height:200px;aspect-ratio:16 / 9;max-height:264px;border-radius:var(--radius);overflow:hidden;isolation:isolate;box-shadow:var(--shadow-2)}.auth-diorama{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(130% 116% at 50% -12%,color-mix(in srgb,var(--u-map-sky) 92%,transparent),transparent 72%),linear-gradient(180deg,color-mix(in srgb,var(--u-map-sky) 74%,var(--bg)),var(--bg))}.auth-diorama-host{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .9s ease}.auth-diorama-host canvas{display:block;width:100%;height:100%}.auth-diorama.is-ready .auth-diorama-host{opacity:1}.auth-diorama-emblem{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:3rem;height:3rem;color:var(--accent);opacity:.92;filter:drop-shadow(0 3px 14px color-mix(in srgb,var(--u-accent) 38%,transparent));transition:opacity .6s ease}.auth-diorama.is-ready .auth-diorama-emblem{opacity:0}.auth-hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--bg) 86%,transparent) 100%)}.auth-hero-text{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:0 16px 14px;text-align:center}.auth-title{margin:0;font-family:var(--font-display);font-size:clamp(2.1rem,9vw,2.6rem);font-weight:700;letter-spacing:.2em;text-indent:.2em;line-height:1;text-shadow:0 2px 18px color-mix(in srgb,var(--bg) 78%,transparent)}.auth-tagline{margin:7px 0 0;color:color-mix(in srgb,var(--text) 82%,transparent);font-style:italic;font-size:.92rem;letter-spacing:.01em;text-shadow:0 1px 10px color-mix(in srgb,var(--bg) 86%,transparent)}@media(max-height:680px){.auth-hero{min-height:148px;aspect-ratio:auto;height:168px}}.auth-card{display:flex;flex-direction:column;gap:12px;padding:20px 18px;border-radius:var(--radius)}.auth-card-title{margin:0 0 2px;font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:.04em;text-align:center}.auth-intro{margin:0;font-size:.9rem;line-height:1.5}.auth-card .field{margin-bottom:2px}.btn-auth{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:2px}.btn-auth svg{font-size:1.15rem}.linkish{align-self:center;border:none;background:none;color:var(--muted);font-family:inherit;font-size:.88rem;cursor:pointer;padding:6px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--muted) 45%,transparent)}@media(hover:hover){.linkish:hover{color:var(--accent)}}.auth-cta{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:4px;padding-top:14px;border-top:1px solid var(--hairline)}.auth-cta .muted{font-size:.9rem}.auth-cta .btn{width:100%}.seed-reveal{display:flex;flex-direction:column;gap:12px}.seed-warn{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-sm);font-size:.85rem;line-height:1.45;background:var(--event-face);border:1px solid var(--event-edge)}.seed-warn svg{flex:none;margin-top:1px;color:var(--accent);font-size:1.1rem}.seed-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.seed-word{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--u-map-bg) 55%,transparent);border:1px solid var(--hairline);box-shadow:var(--inset-deep);font-family:var(--font-display);font-size:.98rem;letter-spacing:.02em}.seed-num{flex:none;width:18px;font-size:.72rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.seed-ack{display:flex;align-items:center;gap:8px;font-size:.88rem;cursor:pointer}.seed-ack input{width:18px;height:18px;accent-color:var(--accent)}.auth-status{align-items:center;text-align:center}.auth-status-ic{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-size:2rem;margin:2px auto}.auth-status-ic.is-pending{color:var(--accent);background:color-mix(in srgb,var(--u-accent) 14%,transparent)}.auth-status-ic.is-disabled{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.topbar-user{display:flex;align-items:center;gap:8px}.topbar-username{font-size:.85rem;max-width:28vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-user .icon-btn{width:38px;height:38px;font-size:1rem}.account{position:relative;flex:none}.avatar-btn{width:var(--tap);height:var(--tap);border-radius:999px;padding:0;border:1px solid var(--btn-edge);background:var(--btn-face);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-1),var(--emboss);touch-action:manipulation}.avatar-btn:active{transform:translateY(1px)}.avatar-btn:focus-visible{outline:none;box-shadow:var(--ring)}.avatar-img{width:100%;height:100%;object-fit:cover;display:block}.avatar-img.lg{width:46px;height:46px;border-radius:999px}.avatar-initials{font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--on-accent);width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--u-accent),var(--u-accent-deep))}.avatar-initials.lg{width:46px;height:46px;border-radius:999px;font-size:1.2rem}.account-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:19;background:transparent;border:0;padding:0;cursor:default}.account-menu{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:min(250px,78vw);padding:6px;border-radius:14px;display:flex;flex-direction:column;gap:2px}.account-head{display:flex;align-items:center;gap:10px;padding:8px 10px 10px;border-bottom:1px solid var(--hairline);margin-bottom:4px}.account-id{min-width:0;display:flex;flex-direction:column}.account-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-handle{font-size:.78rem}.menu-sep{height:1px;margin:5px 10px;background:var(--hairline)}.account-menu .btn-action{border-color:transparent;background:transparent;box-shadow:none;border-radius:10px;padding:10px 12px;min-height:0}.account-menu .action-ic{font-size:1.15rem}.account-menu .btn-action:active{transform:translateY(1px);background:color-mix(in srgb,var(--text) 10%,transparent)}@media(hover:hover){.account-menu .btn-action:hover{background:color-mix(in srgb,var(--text) 7%,transparent)}}.section-title{margin:6px 2px 0;font-family:var(--font-display);font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.account-card{display:flex;flex-direction:column;gap:10px}.account-profile{display:flex;align-items:center;gap:16px}.account-profile-fields{flex:1;min-width:0}.account-profile-fields .field{margin-bottom:0}.avatar-picker{display:flex;flex-direction:column;align-items:center;gap:6px;flex:none}.avatar-preview{position:relative;width:84px;height:84px;border-radius:999px;border:1px solid var(--btn-edge);background:color-mix(in srgb,var(--u-map-bg) 55%,transparent);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:var(--inset-deep)}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:2.2rem;color:var(--muted)}.avatar-edit{position:absolute;right:0;bottom:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:linear-gradient(180deg,var(--u-accent),var(--u-accent-deep));color:var(--on-accent);font-size:.85rem;box-shadow:var(--shadow-1)}.avatar-hint{font-size:.75rem}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}.badge svg{font-size:.9em}.badge-active{color:var(--endurance);background:color-mix(in srgb,var(--endurance) 16%,transparent);border-color:color-mix(in srgb,var(--endurance) 40%,transparent)}.badge-pending{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.badge-disabled{color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.badge-admin{color:var(--accent);background:color-mix(in srgb,var(--u-surface-3) 60%,transparent);border-color:var(--hairline)}.admin-user{display:flex;flex-direction:column;gap:10px}.admin-user-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.admin-user-id{min-width:0;display:flex;flex-direction:column;gap:2px}.admin-user-name{font-weight:600}.admin-user-meta{font-size:.78rem}.admin-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none}.admin-actions{gap:8px}.admin-actions .btn{font-size:.9rem;padding:8px 12px;min-height:0}.admin-scenario-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.account-badge{position:absolute;top:-4px;right:-4px;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums;border:2px solid var(--bg);box-shadow:var(--shadow-1);pointer-events:none}.menu-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 7px;border-radius:999px;background:var(--danger);color:#fff;font-size:.74rem;font-weight:700;font-variant-numeric:tabular-nums}.confirm-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--u-map-bg) 62%,transparent);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:scrim-in .18s ease-out both}.confirm-box{width:100%;max-width:340px;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--radius);animation:check-pop .28s cubic-bezier(.2,.9,.25,1) both}.confirm-title{margin:0;font-family:var(--font-display);font-size:1.1rem;letter-spacing:.03em}.confirm-msg{margin:0;font-size:.9rem;line-height:1.45}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.rest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-end;justify-content:center;padding:0 16px calc(28px + env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 42%,transparent 38%,color-mix(in srgb,var(--u-map-bg) 48%,transparent) 100%);animation:scrim-in .35s ease-out both}.rest-card{display:flex;flex-direction:column;align-items:center;gap:7px;width:100%;max-width:300px;padding:14px 22px 16px;border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-3);animation:check-pop .34s cubic-bezier(.2,.9,.25,1) both}.rest-ic{width:26px;height:26px;color:var(--u-accent);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--u-accent) 45%,transparent));animation:rest-flicker 1.6s ease-in-out infinite}@keyframes rest-flicker{0%,to{opacity:.85;transform:scale(1)}45%{opacity:1;transform:scale(1.06)}70%{opacity:.9;transform:scale(.98)}}.rest-title{font-family:var(--u-font-display);font-size:1.02rem;letter-spacing:.02em;color:var(--text)}.rest-sub{font-size:.82rem;color:var(--muted);font-variant-numeric:tabular-nums}.rest-bar{width:100%;height:5px;margin-top:3px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--text) 14%,transparent)}.rest-bar-fill{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--u-accent) 70%,var(--u-accent-deep)),var(--u-accent));animation-name:rest-fill;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes rest-fill{0%{width:0}to{width:100%}}.vital-hint{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 76px);left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:8px;max-width:min(440px,calc(100vw - 32px));padding:8px 15px;border-radius:999px;font-size:.85rem;font-style:italic;line-height:1.25;color:var(--text);background:color-mix(in srgb,var(--tone) 16%,var(--u-surface));border:1px solid color-mix(in srgb,var(--tone) 50%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none;animation:vital-in .4s ease-out both,vital-breathe 3.4s ease-in-out .4s infinite}.vital-hint-ic{width:18px;height:18px;flex:none;color:var(--tone)}.vital-hint-close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin:-5px -8px -5px 0;padding:0;border:none;background:none;border-radius:999px;color:var(--tone);font-size:1rem;opacity:.72;cursor:pointer;pointer-events:auto;touch-action:manipulation}.vital-hint-close:active{opacity:1}@media(hover:hover){.vital-hint-close:hover{opacity:1}}.vital-end{--tone: var(--rest)}.vital-health{--tone: var(--heal)}.vital-danger{--tone: var(--u-danger)}@keyframes vital-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes vital-breathe{0%,to{transform:translate(-50%);box-shadow:0 6px 22px color-mix(in srgb,var(--tone) 16%,transparent)}50%{transform:translate(-50%,-1px);box-shadow:0 8px 28px color-mix(in srgb,var(--tone) 34%,transparent)}}
