.game-ui.battle-screen .battle-fx{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.game-ui.battle-screen .battle-fx canvas{pointer-events:none;width:100%!important;height:100%!important;display:block!important}.game-ui.battle-screen .combat-status{z-index:5}.game-ui.battle-screen .battle-effect-labels{z-index:6;pointer-events:none;position:absolute;inset:0;overflow:hidden}.game-ui.battle-screen .battle-effect-label{--effect-row:0;color:#fff1d1;text-align:center;white-space:nowrap;text-shadow:0 2px 3px #072b27,0 0 7px #072b27;will-change:transform,opacity;flex-direction:column;align-items:center;max-width:42%;padding:2px 7px;animation:1.1s ease-out both battle-effect-float;display:flex;position:absolute}.game-ui.battle-screen .battle-effect-label.player.active{top:57%;left:24%}.game-ui.battle-screen .battle-effect-label.opponent.active{top:25%;left:74%}.game-ui.battle-screen .battle-effect-label.player.reserve{top:72%;left:76%}.game-ui.battle-screen .battle-effect-label.opponent.reserve{top:17%;left:23%}.game-ui.battle-screen .battle-effect-label strong{font-size:clamp(14px,2.3vw,23px);font-weight:850;line-height:1.15}.game-ui.battle-screen .battle-effect-label small{text-transform:capitalize;color:inherit;font-size:10px}.game-ui.battle-screen .battle-effect-label.effect-condition strong,.game-ui.battle-screen .battle-effect-label.effect-stage strong,.game-ui.battle-screen .battle-effect-label.effect-cleanse strong,.game-ui.battle-screen .battle-effect-label.effect-shield_hit strong,.game-ui.battle-screen .battle-effect-label.effect-shield_break strong{font-size:clamp(11px,1.7vw,16px)}.game-ui.battle-screen .battle-effect-label.effect-heal{color:#c6f6b6}.game-ui.battle-screen .battle-effect-label.effect-cleanse{color:#dceeff}.game-ui.battle-screen .battle-effect-label.effect-burn{color:#ffbe7f}.game-ui.battle-screen .battle-effect-label.effect-poison{color:#e4b9ff}.game-ui.battle-screen .battle-effect-label.effect-paralysis{color:#ffe799}.game-ui.battle-screen .battle-effect-label.effect-chill{color:#bfefff}.game-ui.battle-screen .battle-effect-label.effect-sleep{color:#d7d3ff}.game-ui.battle-screen .battle-effect-label.effect-seeded{color:#cbec9d}.game-ui.battle-screen .battle-effect-label.effect-shield_hit,.game-ui.battle-screen .battle-effect-label.effect-shield_break{color:#c3eaff}.game-ui.battle-screen .battle-monster.condition-sleep:not(.is-attacking):not(.is-hit){transform-origin:50% 90%;animation:3.2s ease-in-out infinite battle-sleep-breathe}@keyframes battle-effect-float{0%{opacity:0;transform:translate(-50%,calc(var(--effect-row) * -23px + 5px))}15%{opacity:1}72%{opacity:1}to{opacity:0;transform:translate(-50%,calc(var(--effect-row) * -23px - 20px))}}@keyframes battle-sleep-breathe{0%,to{scale:1}50%{scale:1.012 .985}}@media (prefers-reduced-motion:reduce){.game-ui.battle-screen .battle-monster.condition-sleep:not(.is-attacking):not(.is-hit){animation:none}.game-ui.battle-screen .battle-effect-label{will-change:opacity;animation-name:battle-effect-fade}@keyframes battle-effect-fade{0%,to{opacity:0;transform:translate(-50%,calc(var(--effect-row) * -23px))}15%,75%{opacity:1;transform:translate(-50%,calc(var(--effect-row) * -23px))}}}.game-ui.battle-screen .combat-effects-summary{color:#ffdda0;text-align:left;white-space:nowrap;text-overflow:ellipsis;text-transform:capitalize;background:0 0;border:0;border-radius:0;width:100%;min-height:22px;padding:2px 0 0;font-size:10px;line-height:1.3;display:block;overflow:hidden}.game-ui.battle-screen .combat-effects-summary:disabled{opacity:1}.game-ui.battle-screen .combat-effects-summary:focus-visible{outline-offset:2px;outline:1px solid #ffdda0}.game-ui.battle-screen .battle-field-banner{z-index:5;color:#fff0bd;text-transform:capitalize;pointer-events:none;white-space:nowrap;background:#102b29df;border:1px solid #ead6a888;border-radius:20px;align-items:center;gap:8px;padding:4px 12px;font-size:12px;display:flex;position:absolute;top:4%;left:50%;transform:translate(-50%)}.game-ui.battle-screen .battle-field-banner small{color:#d7e8dc;font-size:10px}.game-ui.battle-screen .battle-field-banner.sun{border-color:#ffb56b}.game-ui.battle-screen .battle-field-banner.rain{border-color:#87dcee}.game-ui.battle-screen .battle-field-banner.verdant{border-color:#abdf87}.game-ui.battle-screen .battle-field-banner.storm{border-color:#e3c0ff}.game-ui.battle-screen .battle-field-banner.sand{border-color:#e6be83}.game-ui.battle-screen .battle-monster-player{--lunge-x:18px;--lunge-y:-8px;--rush-x:48vw;--rush-y:calc((100dvh - var(--battle-console-height)) * -.36);--hit-x:-10px}.game-ui.battle-screen .battle-monster-opponent{--lunge-x:-14px;--lunge-y:6px;--rush-x:-48vw;--rush-y:calc((100dvh - var(--battle-console-height)) * .36);--hit-x:10px}.game-ui.battle-screen .battle-monster-player{--withdraw-x:-28px;--entry-x:-18px}.game-ui.battle-screen .battle-monster-opponent{--withdraw-x:28px;--entry-x:18px}.game-ui.battle-screen .battle-monster.is-switching{animation:none!important}.game-ui.battle-screen .battle-switch-out,.game-ui.battle-screen .battle-switch-in{transform-origin:50% 90%;pointer-events:none;animation-duration:var(--switch-duration);justify-content:center;align-items:flex-end;animation-timing-function:ease-in-out;animation-fill-mode:both;display:flex;position:absolute;inset:0}.game-ui.battle-screen .battle-switch-out{animation-name:battle-withdraw}.game-ui.battle-screen .battle-switch-out.was-fainted{animation-name:battle-fainted-withdraw}.game-ui.battle-screen .battle-switch-in{animation-name:battle-entry}@keyframes battle-withdraw{0%{opacity:1;filter:brightness();transform:translate(0)scale(1)}30%{opacity:.45;filter:brightness(1.7)}38%,to{opacity:0;transform:translateX(var(--withdraw-x)) scale(.12);filter:brightness(1.7)}}@keyframes battle-fainted-withdraw{0%{opacity:.7;transform:translateY(0)}38%,to{opacity:0;transform:translateY(16px)}}@keyframes battle-entry{0%,39%{opacity:0;transform:translateX(var(--entry-x)) scale(.4);filter:brightness(1.5)}54%{opacity:.65}82%{opacity:1;filter:brightness();transform:translate(0)scale(1.025,.985)}to{opacity:1;filter:brightness();transform:translate(0)scale(1)}}.game-ui.battle-screen .battle-monster.is-attacking{animation:battle-cast var(--battle-attack-duration,1.25s) ease-in-out both;will-change:transform}.game-ui.battle-screen .battle-monster.is-attacking.attack-rush{animation-name:battle-rush}.game-ui.battle-screen .battle-monster.is-hit{animation:battle-hit var(--battle-hit-duration,.56s) ease-out both}.game-ui.battle-screen .combat-stage.has-impact{animation:battle-camera-hit var(--battle-impact-duration,.18s) ease-out}.game-ui.battle-screen .combat-stage.impact-tier-4.has-impact{animation:battle-camera-heavy-hit var(--battle-impact-duration,.22s) ease-out}.game-ui.battle-screen .skill-announcement{z-index:6;color:#fff1c4;pointer-events:none;text-align:center;max-width:40%;animation:battle-skill-label var(--battle-attack-duration,1.25s) both;background:#12382de8;border:1px solid #e7d09c99;border-radius:12px;flex-direction:column;align-items:center;padding:6px 16px;display:flex;position:absolute;top:14%;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #08271e44}.game-ui.battle-screen .skill-announcement span{color:#d5dfcb;font-size:9px}.game-ui.battle-screen .skill-announcement strong{font-size:clamp(12px,2vw,18px);line-height:1.2}.game-ui.battle-screen .skill-announcement.fire{color:#ffd58d;border-color:#ffb569}.game-ui.battle-screen .skill-announcement.water{color:#bcf6ff;border-color:#79deee}.game-ui.battle-screen .skill-announcement.nature{color:#daffa8;border-color:#a6d77e}.game-ui.battle-screen .skill-announcement.lightning{color:#fff5b1;border-color:#e8c6ff}.game-ui.battle-screen .battle-damage{z-index:6;pointer-events:none;filter:drop-shadow(0 2px 2px #08251d);flex-direction:column;align-items:center;animation:.6s ease-out both battle-damage-rise;display:flex;position:absolute}.game-ui.battle-screen .battle-damage strong{color:#fff5d0;-webkit-text-stroke:1px #4f3025;font-size:clamp(25px,5vw,44px);font-weight:900;line-height:1}.game-ui.battle-screen .battle-damage span{color:#ffe4a1;font-size:11px;font-weight:800}.game-ui.battle-screen .damage-opponent{top:20%;left:73%}.game-ui.battle-screen .damage-player{top:57%;left:20%}@keyframes battle-cast{0%,to{transform:translate(0)scale(1)}18%{transform:translate(calc(var(--lunge-x) * -.3),3px) scale(.97,1.02)}32%,52%{transform:translate(var(--lunge-x),var(--lunge-y)) scale(1.03,.98)}72%{transform:translate(0)scale(1)}}@keyframes battle-rush{0%,to{transform:translate(0)}19%{transform:translate(calc(var(--lunge-x) * -.6),3px) scale(.96,1.02)}49%,54%{transform:translate(var(--rush-x),var(--rush-y)) scale(.9)}84%{transform:translate(0)}}@keyframes battle-hit{0%,24%{filter:brightness(2.4);transform:translateX(var(--hit-x))}12%,35%{filter:brightness();transform:translateX(calc(var(--hit-x) * -.4))}65%,to{filter:brightness();transform:translate(0)}}@keyframes battle-camera-hit{0%,to{transform:translate(0)}25%{transform:translate(2px,-1px)}65%{transform:translate(-2px,1px)}}@keyframes battle-camera-heavy-hit{0%,to{transform:translate(0)}20%{transform:translate(3px,-1px)}48%{transform:translate(-3px,2px)}75%{transform:translate(1px,-1px)}}@keyframes battle-skill-label{0%{opacity:0;translate:0 5px}16%,75%{opacity:1;translate:0}to{opacity:0}}@keyframes battle-damage-rise{0%{opacity:0;translate:-50% 4px;scale:.8}15%,65%{opacity:1;scale:1}to{opacity:0;translate:-50% -35px;scale:1}}@media (prefers-reduced-motion:reduce){.game-ui.battle-screen .battle-switch-out,.game-ui.battle-screen .battle-switch-out.was-fainted{animation-name:battle-withdraw-fade}.game-ui.battle-screen .battle-switch-in{animation-name:battle-entry-fade}.game-ui.battle-screen .combat-stage.impact-tier-4.has-impact,.game-ui.battle-screen .battle-monster.is-attacking,.game-ui.battle-screen .battle-monster.is-hit,.game-ui.battle-screen .combat-stage.has-impact{animation:none}.game-ui.battle-screen .skill-announcement{animation:none;translate:0}.game-ui.battle-screen .battle-damage{animation:none;translate:-50%}}@keyframes battle-withdraw-fade{0%{opacity:1}38%,to{opacity:0}}@keyframes battle-entry-fade{0%,39%{opacity:0}82%,to{opacity:1}}.game-ui.battle-screen dialog.battle-results-modal{width:min(850px,var(--modal-width));max-width:var(--modal-width);max-height:var(--modal-height);background:linear-gradient(125deg,#183e32,#0d2a25);border-color:#cab77b88;padding:0;overflow:hidden}.game-ui.battle-screen .battle-results-modal .dialog-wrap{max-height:calc(var(--modal-height) - 2px);flex-direction:column;display:flex;overflow:hidden}.game-ui.battle-screen .battle-results-modal .dialog-head{border-bottom:1px solid #cab77b33;flex:none;padding:12px 18px}.game-ui.battle-screen .battle-results-modal .dialog-head h2{letter-spacing:.1em;text-transform:uppercase;color:#bfcfb9;font-size:13px}.game-ui.battle-screen .battle-results-modal .dialog-body{min-height:0;padding:18px;overflow:auto}.game-ui.battle-screen .battle-results-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:24px;display:grid}.game-ui.battle-screen .battle-result-verdict{flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;min-width:0;display:flex}.game-ui.battle-screen .battle-result-title{color:#f2d796;font:500 clamp(23px,4vw,42px)/1.05 Georgia,serif}.game-ui.battle-screen .result-defeat .battle-result-title{color:#eab7a1}.game-ui.battle-screen .battle-result-verdict p{color:#c1cdbb;margin:0;font-size:12px;line-height:1.45}.game-ui.battle-screen .battle-result-damage{flex-direction:column;gap:3px;margin-top:6px;display:flex}.game-ui.battle-screen .battle-result-damage>span,.game-ui.battle-screen .battle-result-metrics span{color:#bed0b8;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.game-ui.battle-screen .battle-result-damage>strong{font-variant-numeric:tabular-nums;color:#fff0b9;font-size:clamp(24px,4vw,38px);line-height:1}.game-ui.battle-screen .battle-result-team{min-width:0}.game-ui.battle-screen .battle-result-metrics{border-bottom:1px solid #cab77b33;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-bottom:10px;display:grid}.game-ui.battle-screen .battle-result-metrics>div{flex-direction:column;gap:4px;display:flex}.game-ui.battle-screen .battle-result-metrics strong{color:#f0e6c0;font-variant-numeric:tabular-nums;font-size:21px}.game-ui.battle-screen .battle-result-metrics small{color:#b1c4b4;font-size:11px;font-weight:400}.game-ui.battle-screen .battle-result-team h3{text-transform:uppercase;color:#c6d5be;letter-spacing:.09em;margin:12px 0 5px;font-size:11px}.game-ui.battle-screen .battle-result-roster{gap:5px;display:grid}.game-ui.battle-screen .battle-result-companion{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.game-ui.battle-screen .battle-result-companion>div:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.game-ui.battle-screen .battle-result-companion strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.game-ui.battle-screen .battle-result-companion span{color:#bed0bc;font-size:10px}.game-ui.battle-screen .battle-result-companion.fainted span{color:#d5a59a}.game-ui.battle-screen .battle-result-portrait{width:48px;height:43px}.game-ui.battle-screen .battle-result-portrait .screen-portrait{width:100%;height:100%;transform:none}.game-ui.battle-screen .battle-result-hp{background:#061f19;border-radius:3px;max-width:180px;height:3px;overflow:hidden}.game-ui.battle-screen .battle-result-hp i{background:#b2d58c;height:100%;display:block}.game-ui.battle-screen .battle-results-modal .dialog-foot{border-top:1px solid #cab77b44;flex:none;justify-content:space-between;align-items:center;gap:18px;padding:11px 18px;display:flex}.game-ui.battle-screen .battle-results-next{color:#bcb;max-width:55%;margin:0;font-size:10px;line-height:1.4}.game-ui.battle-screen .battle-results-modal .dialog-foot button{white-space:normal;overflow-wrap:anywhere;max-width:100%;min-height:44px}@media (max-height:440px){.game-ui.battle-screen .battle-results-modal .dialog-head{min-height:44px;padding:7px 12px}.game-ui.battle-screen .battle-results-modal .dialog-body{padding:10px 14px}.game-ui.battle-screen .battle-results-layout{gap:18px}.game-ui.battle-screen .battle-result-verdict{gap:6px}.game-ui.battle-screen .battle-result-verdict p{font-size:11px}.game-ui.battle-screen .battle-result-team h3{margin:7px 0 4px}.game-ui.battle-screen .battle-result-metrics{gap:8px;padding-bottom:6px}.game-ui.battle-screen .battle-result-metrics strong{font-size:18px}.game-ui.battle-screen .battle-result-portrait{width:38px;height:34px}.game-ui.battle-screen .battle-result-companion{grid-template-columns:38px minmax(0,1fr);gap:7px}.game-ui.battle-screen .battle-result-roster{gap:3px}.game-ui.battle-screen .battle-result-companion strong{font-size:11px}.game-ui.battle-screen .battle-results-modal .dialog-foot{padding:7px 12px}}@media (orientation:portrait) and (max-width:600px){.game-ui.battle-screen .battle-results-layout{grid-template-columns:1fr;gap:18px}.game-ui.battle-screen .battle-results-next{max-width:48%}}.battle-monster.is-charging{animation:1.1s ease-in-out infinite alternate charge-presence}@keyframes charge-presence{0%{filter:drop-shadow(0 0 5px #f5d26a88)}to{filter:drop-shadow(0 0 18px #fff0aacc)brightness(1.12)}}@media (prefers-reduced-motion:reduce){.battle-monster.is-charging{filter:drop-shadow(0 0 10px #f5d26aaa);animation:none}}
.onboarding-practice{z-index:85;background:#102021;position:fixed;inset:0}.guide-review-links{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.game-ui.battle-screen [data-guided-target=true]{outline-offset:3px;outline:2px solid #f4d28a}.guided-battle-focus{z-index:10000;pointer-events:none;position:fixed;inset:0}.guided-battle-focus>svg{pointer-events:none;max-width:none;max-height:none;display:block;position:fixed;top:0;left:0}.guided-battle-dimmer{fill:#020c12b8;pointer-events:visiblePainted}.guided-battle-ring{fill:none;stroke:#ffe1a0;stroke-width:2px;pointer-events:none}.guided-battle-tip{box-sizing:border-box;color:#fff1d1;text-align:center;pointer-events:none;background:#142d27;border:1px solid #d7bb7d;border-radius:6px;padding:9px 12px;font:600 12px/1.4 system-ui,sans-serif;position:fixed;box-shadow:0 4px 20px #0008}.guided-focus-skip{top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:1;pointer-events:auto;color:#f4e3c3;cursor:pointer;background:#102a25;border:1px solid #d7bb7d88;border-radius:5px;padding:7px 12px;font:600 11px/1.3 system-ui,sans-serif;position:fixed}.guided-info-tip{pointer-events:auto;text-align:left;max-height:calc(100dvh - 24px);overflow:auto}.guided-info-progress{color:#d7bb7d;letter-spacing:.04em;margin-bottom:5px;font-size:10px;display:block}.guided-info-actions{justify-content:space-between;gap:8px;margin-top:9px;display:flex}.guided-info-actions button{color:#fff1d1;cursor:pointer;background:#243d33;border:1px solid #d7bb7d88;border-radius:4px;padding:5px 8px;font:600 11px/1.2 system-ui,sans-serif}.guided-info-actions button:last-child{background:#806c36}.guided-info-actions button:disabled{opacity:.6;cursor:wait}.guided-skill-modal .battle-skill-choice small:nth-of-type(2){display:none}.vn-error button{color:#ffe5d3;font:inherit;background:#402921;border:1px solid #e9bd9e;border-radius:3px;padding:3px 8px}.vn-scene{--vn-gold:#d5bc80;color:#fff3d9;background:#102021;border:0;width:100dvw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;font-family:inherit;position:fixed;inset:0;overflow:hidden}.vn-scene::backdrop{background:#071412}.vn-background,.vn-shade{pointer-events:none;position:absolute;inset:0}.vn-background{background:#18302c 50%/cover no-repeat}.vn-shade{background:linear-gradient(#06181742 0%,#06181738 45%,#06181780 100%)}.vn-top-controls{top:max(12px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));z-index:3;justify-content:space-between;gap:12px;display:flex;position:absolute}.vn-top-controls button{color:#fff1d4;font:inherit;cursor:pointer;background:#102722c9;border:1px solid #e9d49b45;border-radius:5px;align-items:center;gap:6px;min-height:36px;padding:8px 12px;font-size:12px;display:flex}.vn-top-controls button:only-child{margin-left:auto}.vn-character{pointer-events:none;justify-content:center;align-items:flex-end;transition:filter .25s;display:flex;position:absolute;inset:2% 10% -9%}.vn-character img{-o-object-fit:contain;object-fit:contain;-o-object-position:50% 100%;object-position:50% 100%;opacity:0;filter:drop-shadow(0 10px 20px #00141070);width:100%;height:100%;transition:opacity .25s}.vn-character img.is-loaded{opacity:1}.vn-character.is-listening{filter:brightness(.78)saturate(.85)}.vn-portrait-loading,.vn-portrait-fallback{color:#f1d69e;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;top:30%;left:50%;transform:translate(-50%)}.vn-portrait-loading svg{animation:1.4s linear infinite vn-spin}.vn-portrait-fallback span{background:linear-gradient(#b29659,#28463d);border-radius:75px 75px 12px 12px;place-items:center;width:150px;height:180px;font-family:serif;font-size:70px;display:grid}.vn-bottom{bottom:max(12px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));z-index:2;max-width:1120px;margin:auto;position:absolute}.vn-dialogue-box{background:linear-gradient(115deg,#0b211df5,#142824f2);border:1px solid #d9be7d9e;border-radius:7px;position:relative;box-shadow:0 12px 36px #0006,inset 0 0 0 3px #a78c5030}.vn-nameplate{color:#f5d79c;background:#263d30;border:1px solid #d9be7d9e;border-radius:5px 5px 0 0;min-width:100px;max-width:60%;padding:6px 18px;font-size:clamp(12px,1.5vw,17px);font-weight:750;position:absolute;top:0;left:20px;transform:translateY(-85%)}.vn-dialogue-advance{text-align:left;width:100%;min-height:clamp(102px,27dvh,162px);color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:20px 24px 30px;display:block}.vn-dialogue-advance p{letter-spacing:.01em;max-height:18dvh;margin:0;font-size:clamp(14px,2.1dvh + .3vw,21px);line-height:1.6;overflow:auto}.vn-advance-hint{color:#d6c39b;align-items:center;gap:6px;font-size:11px;display:flex;position:absolute;bottom:9px;right:16px}.vn-choices{justify-content:center;gap:10px;max-width:900px;margin:0 auto 32px;display:flex}.vn-choices button{color:#fff0cf;min-width:0;font:inherit;text-align:left;cursor:pointer;background:#142c27ed;border:1px solid #d6be82b0;border-radius:5px;flex:1;padding:12px 16px;box-shadow:0 4px 18px #0004}.vn-choices strong,.vn-choices small{display:block}.vn-choices small{color:#c9cfba;margin-top:4px;font-size:11px}.vn-reward,.vn-error{margin:0;padding:0 24px 12px;font-size:12px}.vn-reward{color:#f1d48c}.vn-error{color:#ffc3b7}.vn-scene button:disabled{cursor:default}.vn-scene button:focus-visible{outline-offset:3px;outline:2px solid #f5da98}.vn-scene .typewriter-layout{opacity:0}.vn-scene .typewriter-text{position:relative}.vn-scene .typewriter-visible{position:absolute;inset:0}.vn-scene .typewriter-accessible{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes vn-spin{to{transform:rotate(360deg)}}.companion-meeting-stage{--body-size:clamp(96px,34dvh,320px);position:absolute;inset:0 0 56dvh}.meeting-reaction .companion-meeting-stage{--body-size:clamp(124px,44dvh,390px);bottom:31dvh}.vn-companion-scene .vn-choices{max-width:300px}.companion-meeting-creature{width:var(--body-size);height:var(--body-size);cursor:pointer;background:0 0;border:0;padding:0;position:absolute;bottom:0;left:50%;overflow:visible;transform:translate(-50%)}.companion-meeting-creature:disabled{opacity:1}.companion-meeting-body{transform-origin:50% 100%;animation:2.6s ease-in-out infinite companion-breathe;display:block;position:absolute;inset:0}.companion-meeting-sheet{width:calc(var(--body-size) * var(--sheet-scale));height:calc(var(--body-size) * var(--sheet-scale));transform:translate(calc(-1 * var(--anchor-x)),calc(-1 * var(--anchor-y)));pointer-events:none;display:block;position:absolute;top:100%;left:50%}.companion-meeting-sheet>svg{overflow:visible}.companion-meeting-shadow{width:calc(var(--body-size) * .8);height:calc(var(--body-size) * .16);pointer-events:none;background:radial-gradient(#17342565,#0000 70%);border-radius:50%;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.is-approaching .companion-meeting-creature{animation:1.2s linear both companion-approach}.is-approaching .companion-meeting-body{animation:none}.phase-reaction.companion-001 .companion-meeting-body{animation:2.8s ease-in-out both companion-sniff-hop}.phase-reaction.companion-005 .companion-meeting-body{animation:2.8s ease-in-out both companion-splash-greet}.phase-reaction.companion-009 .companion-meeting-body{animation:2.8s ease-in-out both companion-nuzzle}.companion-meeting-splash{width:calc(var(--body-size) * 1.1);height:calc(var(--body-size) * .65);-o-object-fit:contain;object-fit:contain;pointer-events:none;opacity:0;animation:1.4s ease-out .7s both companion-splash;position:absolute;bottom:-8px;left:50%}.companion-meeting-leaf{left:calc(50% - var(--body-size) * .42);bottom:calc(var(--body-size) * .45);width:calc(var(--body-size) * .2);pointer-events:none;animation:2.8s ease-in-out both companion-leaf;position:absolute}.companion-meeting-loading{color:#ffedc6;flex-direction:column;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;bottom:20%;left:0;right:0}.companion-meeting-loading button{color:#ffedc6;background:#183b31;border:1px solid #cdb67b;border-radius:5px;padding:8px 12px}@keyframes companion-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.01,1.025)}}@keyframes companion-approach{0%{transform:translateX(calc(-50% + var(--approach-from)));opacity:0}15%{opacity:1}to{opacity:1;transform:translate(-50%)}}@keyframes companion-sniff-hop{0%,to{transform:none}15%,28%{transform:translate(-5%)rotate(-3deg)scaleY(.96)}42%,68%{transform:translateY(0)scale(1.04,.94)}54%,80%{transform:translateY(-15%)scale(.98,1.03)}90%{transform:translateY(0)}}@keyframes companion-splash-greet{0%,to{transform:none}20%{transform:translate(-8%)rotate(-4deg)}40%{transform:rotate(5deg)scaleY(.94)}60%{transform:rotate(-3deg)}80%{transform:rotate(2deg)}}@keyframes companion-nuzzle{0%,to{transform:none}25%{transform:translate(-12%)rotate(-5deg)}48%,68%{transform:translate(-7%)rotate(-2deg)scaleY(.97)}83%{transform:rotate(2deg)}}@keyframes companion-splash{0%{opacity:0;transform:translate(-50%,5%)scale(.25)}30%{opacity:.8}to{opacity:0;transform:translate(-50%,-20%)scale(1.15)}}@keyframes companion-leaf{0%{opacity:0;transform:translate(-30%)rotate(-25deg)}20%,70%{opacity:1;transform:rotate(-5deg)}to{opacity:0;transform:translateY(10%)rotate(10deg)}}@media (prefers-reduced-motion:reduce){.companion-meeting-body,.companion-meeting-creature,.companion-meeting-splash,.companion-meeting-leaf{animation:none!important}.companion-meeting-leaf{opacity:1}.companion-meeting-splash{opacity:.4}}@media (max-height:380px){.vn-bottom{bottom:max(8px,env(safe-area-inset-bottom))}.vn-dialogue-advance{min-height:92px;padding:14px 18px 25px}.vn-dialogue-advance p{max-height:20dvh;font-size:13px;line-height:1.45}.vn-nameplate{padding:4px 12px;left:14px}.vn-choices{gap:6px;margin-bottom:25px}.vn-choices button{padding:8px;font-size:12px}.vn-choices small{font-size:10px}.vn-top-controls button{min-height:32px;padding:5px 9px}}@media (min-width:1300px){.vn-character{inset:3% 18% -9%}.vn-dialogue-advance{padding-left:32px;padding-right:32px}}@media (prefers-reduced-motion:reduce){.vn-character,.vn-character img{transition:none}.vn-portrait-loading svg{animation:none}}
.game-ui .detail-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.game-ui .mini-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 8px;display:grid}.game-ui .monster-tier-badge{white-space:nowrap;color:#f2c59b;vertical-align:middle;background:#513c2ad9;border:1px solid #c89769;border-radius:5px;flex-shrink:0;align-items:center;margin-right:6px;padding:2px 6px;font-size:10px;font-weight:800;line-height:1.4;display:inline-flex}.game-ui .monster-tier-badge.tier-2{color:#e4eff4;background:#34434fd9;border-color:#bfced3}.game-ui .monster-tier-badge.tier-3{color:#ffe5a1;background:#57451ed9;border-color:#e9c267}.game-ui .monster-tier-badge.tier-4{color:#fff0ff;background:linear-gradient(120deg,#53503bd9,#31565bd9,#563f68d9);border-color:#d7b8f8}.game-ui .card-tier-row{flex-shrink:0;justify-content:center;align-items:center;gap:6px;margin-bottom:3px;display:flex}.game-ui .card-tier-row .monster-tier-badge{margin-right:0}.game-ui .card-tier-row .talent-badge small{display:none}.game-ui .card-tier-row .talent-stars{letter-spacing:0;gap:0;font-size:13px}.game-ui .talent-badge{color:#ffe3a0;background:0 0;border:0;flex-shrink:0;align-items:center;gap:5px;max-width:100%;padding:0;line-height:1;display:inline-flex}.game-ui .talent-badge small{color:#bfc9b4;white-space:nowrap;font-size:10px}.game-ui .talent-stars{letter-spacing:0;gap:1px;font-size:15px;display:inline-flex}.game-ui .talent-stars .filled{color:#f2cf79}.game-ui .talent-stars .empty{color:#74866e}.game-ui .monster-detail-badges{flex-wrap:wrap;gap:8px}.game-ui .monster-detail-badges .talent-badge{padding:0 0 0 5px}.game-ui .monster-detail-badges .talent-stars{font-size:18px}.game-ui .collection-note{color:#d5c991;margin-top:4px;font-size:10px;line-height:1.3;display:block}.game-ui .box-view-controls{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.game-ui .box-view-toggle{border:1px solid #c3b17a66;border-radius:9px;flex-shrink:0;display:flex;overflow:hidden}.game-ui .box-view-toggle button{color:#c6d2be;background:#153a2dcc;border:0;border-radius:0;min-height:44px;padding:5px 12px;font-size:12px}.game-ui .box-view-toggle button[aria-pressed=true]{color:#173729;background:#bfa66b;font-weight:800}.game-ui .box-view-summary{align-items:baseline;gap:10px;min-width:0;display:flex}.game-ui .box-view-summary strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.game-ui .box-view-summary small{color:#bdcbb4;white-space:nowrap;font-size:11px}.game-ui .box-collection-grid{scrollbar-gutter:stable;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-auto-rows:104px;align-content:start;gap:8px;padding:1px 6px 8px 1px;display:grid}.game-ui .box-entry{text-align:left;color:#f3e8c8;cursor:pointer;background:linear-gradient(120deg,#285242ed,#15382ef5);border:1px solid #c9bb855c;border-radius:12px;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:8px;min-width:0;height:104px;padding:8px;display:grid;overflow:hidden;box-shadow:inset 0 1px #fff1}.game-ui .box-entry:hover{background:linear-gradient(120deg,#315d49ed,#1c4335f5);border-color:#ebce8d}.game-ui .box-entry:focus-visible{outline-offset:-3px;outline:2px solid #f3d38c}.game-ui .box-entry-art{background:radial-gradient(#d1bf7530,#0000 68%);justify-content:center;align-items:center;width:80px;min-width:0;height:86px;display:flex;position:relative}.game-ui .box-entry-art .screen-portrait{width:100%;height:100%;transform:none}.game-ui .box-entry-art img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.game-ui .box-entry-count{color:#f6dda4;background:#102e27ed;border:1px solid #c5ad7088;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:800;line-height:1.2;position:absolute;bottom:0;right:1px}.game-ui .box-entry-info{flex-direction:column;justify-content:center;gap:5px;min-width:0;display:flex}.game-ui .box-entry-top{justify-content:space-between;align-items:center;gap:5px;min-height:16px;display:flex}.game-ui .box-entry-top .monster-tier-badge{margin:0;padding:1px 5px;font-size:9px;line-height:1.3}.game-ui .box-entry .talent-badge small{display:none}.game-ui .box-entry .talent-stars{gap:0;font-size:13px}.game-ui .box-entry-name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;line-height:1.2;overflow:hidden}.game-ui .box-entry-meta{color:#c2cfb7;align-items:center;gap:6px;min-width:0;font-size:10px;line-height:1.2;display:flex}.game-ui .box-entry-meta .tag{border-radius:4px;padding:2px 4px;font-size:9px;line-height:1.1}.game-ui .box-entry-meta>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.game-ui .box-entry-status{color:#dfca91;white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.2;overflow:hidden}@media (max-width:720px){.game-ui .box-collection-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.game-ui .box-view-summary{flex-direction:column;gap:4px}.game-ui .box-view-summary strong{font-size:13px}}.game-ui .duplicate-heading{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:12px;display:flex}.game-ui .duplicate-list{flex-direction:column;gap:8px;display:flex}.game-ui .duplicate-row{color:#f2e8c9;text-align:left;background:#123c2eaa;border:1px solid #aab18b66;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;min-height:78px;padding:11px 13px;display:grid}.game-ui .duplicate-row:hover{border-color:#e9cc83}.game-ui .duplicate-identity{flex-direction:column;gap:4px;min-width:0;display:flex}.game-ui .duplicate-identity strong{overflow-wrap:anywhere;font-size:15px}.game-ui .duplicate-identity small{color:#bbcbb5;font-size:11px}.game-ui .duplicate-meta{color:#bbcbb5;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px 12px;font-size:11px;display:flex}.game-ui .fusion-mark-badge{color:#ffdda6;background:#6a482655;border:1px solid #e0b67a88;border-radius:5px;align-items:center;padding:3px 6px;font-size:10px;font-weight:700;line-height:1.3;display:inline-flex}.game-ui .fusion-mark-toggle{cursor:pointer;background:#3a432b66;border:1px solid #d4ba7b66;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:11px 12px;display:flex}.game-ui .fusion-mark-toggle>span{flex-direction:column;gap:4px;display:flex}.game-ui .fusion-mark-toggle strong{font-size:13px}.game-ui .fusion-mark-toggle small{color:#bfccb6;font-size:11px}.game-ui .fusion-mark-toggle input{appearance:none;cursor:pointer;background:#183d30;border:1px solid #9fac8d;border-radius:20px;flex-shrink:0;width:46px;height:26px;margin:0;position:relative}.game-ui .fusion-mark-toggle input:before{content:"";background:#b1c0a4;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px}.game-ui .fusion-mark-toggle input:checked{background:#bca26a;border-color:#edcf8b}.game-ui .fusion-mark-toggle input:checked:before{background:#fff0c6;transform:translate(20px)}.game-ui .fusion-mark-toggle input:focus-visible{outline-offset:3px;outline:2px solid #ffe19a}.game-ui .fusion-mark-toggle input:disabled{opacity:.45;cursor:default}.game-ui .training-panel{border-top:1px solid #d5c79044;margin:16px 0;padding-top:12px}.game-ui .training-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0;display:grid}.game-ui .training-row{background:#052d2344;border-radius:9px;grid-template-columns:minmax(65px,1fr) 44px 32px 44px;align-items:center;gap:5px;padding:6px;display:grid}.game-ui .training-row>span{flex-direction:column;display:flex}.game-ui .training-row small{color:#c0cebd;font-size:9px}.game-ui .training-row button{min-height:44px;padding:4px;font-size:20px}.game-ui .training-row>b{text-align:center;font-size:11px}.game-ui .battle-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.game-ui .battle-skill-grid .list-choice{align-items:flex-start;min-height:100px}.game-ui .battle-skill-grid .list-choice small{font-size:11px}.game-ui .fusion-hold{touch-action:none;-webkit-user-select:none;user-select:none;min-height:48px;position:relative;overflow:hidden}.fusion-hold span{z-index:1;position:relative}.fusion-hold .hold-fill{transform-origin:0;pointer-events:none;background:#fff4b344;position:absolute;inset:0}.game-ui dialog.fusion-ritual{color:#fff1cd;width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;background:#06291b88;border:0;border-radius:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.game-ui dialog.fusion-ritual::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#00140d33}.fusion-ritual-stage{position:absolute;inset:12% 22% 15%}.ritual-canvas{pointer-events:none;position:absolute;inset:0}.ritual-canvas canvas{width:100%!important;height:100%!important}.ritual-parent{flex-direction:column;justify-content:center;align-items:center;gap:8px;width:28%;height:52%;display:flex;position:absolute;top:18%}.ritual-parent-0{left:2%}.ritual-parent-1{right:2%}.ritual-parent .screen-portrait{width:100%;height:85%}.ritual-parent-1 .screen-portrait{transform:scaleX(-1)}.ritual-parent strong{white-space:nowrap;text-shadow:0 2px 5px #001c12;font-size:13px}.ritual-egg{place-items:center;width:20%;height:40%;display:grid;position:absolute;top:30%;left:40%}.ritual-egg .egg{width:60px;height:80px;box-shadow:0 0 45px #ddf1be55}.ritual-caption{text-align:center;letter-spacing:.5px;font-size:16px;position:absolute;bottom:7%;left:15%;right:15%}.ritual-skip{position:absolute;top:18px;right:18px}.fusion-sheet{pointer-events:none;background-repeat:no-repeat;display:block;position:absolute;-webkit-mask-image:radial-gradient(#000 58%,#000c 76%,#0000 98%);mask-image:radial-gradient(#000 58%,#000c 76%,#0000 98%)}.ritual-wisp{z-index:3;will-change:transform,opacity;width:clamp(65px,19vh,115px);height:clamp(65px,19vh,115px)}.ritual-vortex{z-index:2;width:clamp(130px,41vh,240px);height:clamp(130px,41vh,240px);top:50%;left:50%;transform:translate(-50%,-50%)}.ritual-egg-anchor{pointer-events:none;z-index:4;width:100%;height:100%;position:absolute;top:0;left:0}.ritual-formed-egg{width:clamp(100px,31vh,180px);height:clamp(100px,31vh,180px);top:50%;left:50%;transform:translate(-50%,-50%)}.ritual-egg-fallback{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ritual-bloom{z-index:1;width:clamp(175px,54vh,300px);height:clamp(175px,54vh,300px);top:50%;left:50%;transform:translate(-50%,-50%)}.fusion-egg-art{flex-shrink:0;max-width:100%;display:inline-block;position:relative}.fusion-egg-art .fusion-sheet{width:100%;height:100%;inset:0}@media (max-height:450px){.game-ui .training-grid{gap:5px}.game-ui .training-row{grid-template-columns:minmax(58px,1fr) 40px 25px 40px;padding:4px}.game-ui .battle-skill-grid .list-choice{min-height:90px}.ritual-caption{font-size:13px}.ritual-egg .egg{width:45px;height:60px}}@media (max-width:620px){.game-ui .training-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.fusion-ritual *{animation:none!important}}.game-ui .battle-skill-grid .battle-skill-choice{border-left-width:3px;flex-direction:column;gap:10px}.game-ui .battle-skill-choice>span:first-child{flex:1;min-width:0}.game-ui .battle-skill-choice.affinity-super{border-left-color:#ffdc83}.game-ui .battle-skill-choice.affinity-effective{border-left-color:#96e5aa}.game-ui .battle-skill-choice.affinity-resisted{border-left-color:#edb080}.game-ui .battle-skill-choice.affinity-neutral{border-left-color:#c3cfc7}.game-ui .battle-skill-choice.affinity-support{border-left-color:#bdb4f1}.game-ui .battle-skill-grid .skill-affinity{border:1px solid;border-radius:8px;flex-wrap:wrap;align-items:center;gap:5px 7px;padding:5px 8px;font-size:11px;font-weight:700;line-height:1.3;display:inline-flex}.game-ui .skill-affinity b{font-size:12px}.game-ui .skill-affinity-super{color:#ffe7a0;background:#493a16;border-color:#dab65b}.game-ui .skill-affinity-effective{color:#bbf6c9;background:#173e2b;border-color:#69bd80}.game-ui .skill-affinity-resisted{color:#ffcca5;background:#493024;border-color:#bf8a61}.game-ui .skill-affinity-neutral{color:#e1e9e4;background:#2c3934;border-color:#7e9589}.game-ui .skill-affinity-support{color:#e0d8ff;background:#332e4a;border-color:#9685c4}.game-ui.battle-screen .combat-inspect-name{min-width:0;min-height:28px;color:inherit;text-align:left;background:0 0;border-radius:4px;align-items:center;padding:0;display:flex}.game-ui.battle-screen .combat-inspect-name>span{color:#e9d19a;flex:none;font-size:11px}.game-ui.battle-screen .combat-inspect-name:disabled{opacity:1}.game-ui .combatant-details-modal{width:min(720px,100vw - 24px)}.game-ui .combatant-details{flex-direction:column;gap:20px;display:flex}.game-ui .combatant-identity{background:radial-gradient(at 15%,#a9d39c22,#0000 65%),#102f2780;border:1px solid #c8b17c55;border-radius:16px;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:16px;padding:14px;display:grid}.game-ui .combatant-portrait{justify-content:center;align-items:center;min-width:0;height:120px;display:flex}.game-ui .combatant-portrait .screen-portrait{width:100%;height:100%}.game-ui .combatant-identity-copy{flex-direction:column;gap:7px;min-width:0;display:flex}.game-ui .combatant-identity-copy h3{overflow-wrap:anywhere;font-size:22px}.game-ui .combatant-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.game-ui .combatant-section{flex-direction:column;gap:10px;display:flex}.game-ui .combatant-section>h3{flex-wrap:wrap;align-items:baseline;gap:6px 12px;font-size:16px;display:flex}.game-ui .combatant-section>h3 .small{font-weight:400}.game-ui .combatant-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.game-ui .combatant-stats>div{background:#0d2d2580;border:1px solid #aec9b52e;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:9px 3px;display:flex}.game-ui .combatant-stats span{color:var(--muted);font-size:10px}.game-ui .combatant-stats b{font-size:19px}.game-ui .combatant-effects{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;display:grid}.game-ui .combatant-effect{border:1px solid #85a99566;border-left-width:3px;border-radius:9px;flex-direction:column;gap:3px;padding:9px 11px;font-size:12px;display:flex}.game-ui .combatant-effect strong{text-transform:capitalize}.game-ui .combatant-effect>span{color:var(--muted);font-size:11px}.game-ui .combatant-effect.effect-buff{background:#173e2b80;border-left-color:#96e5aa}.game-ui .combatant-effect.effect-debuff{background:#49302480;border-left-color:#edb080}.game-ui .combatant-effect.effect-field{background:#332e4a80;border-left-color:#bdb4f1}.game-ui .combatant-ability{background:#bda2650d;border:1px solid #c8b17c55;border-radius:12px;padding:13px;font-size:12px}.game-ui .combatant-skills{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.game-ui .combatant-skill{background:#102f2780;border:1px solid #aec9b544;border-radius:12px;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;padding:12px;font-size:12px;display:flex}.game-ui .combatant-skill-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex}.game-ui .combatant-skill-heading h4{margin:0;font-size:14px}.game-ui .combatant-skill>.skill-affinity{border:1px solid;border-radius:7px;flex-wrap:wrap;align-items:center;gap:5px 7px;margin-top:auto;padding:4px 7px;font-size:11px;font-weight:700;display:inline-flex}.game-ui .combatant-skill-readiness{color:#bbf6c9}.game-ui .combatant-skill-readiness.unavailable{color:#ffcca5}@media (max-width:480px){.game-ui .combatant-identity{grid-template-columns:80px minmax(0,1fr);gap:10px;padding:10px}.game-ui .combatant-portrait{height:100px}.game-ui .combatant-skills,.game-ui .combatant-effects{grid-template-columns:1fr}}.game-ui .element-chart-modal{width:min(620px,100vw - 24px)}.game-ui .element-chart-content{flex-direction:column;gap:15px;display:flex}.game-ui .element-chart-scroll{scrollbar-width:thin;border:1px solid #acc6b755;border-radius:12px;overflow-x:auto}.game-ui .element-chart-scroll:focus-visible{outline-offset:2px;outline:2px solid #f7da8d}.game-ui .element-chart-table{border-collapse:collapse;table-layout:fixed;text-align:center;background:#102f2780;width:100%;min-width:400px;font-size:12px}.game-ui .element-chart-table caption{color:var(--muted);text-align:left;background:#0b2c2480;padding:10px;font-size:11px}.game-ui .element-chart-table th,.game-ui .element-chart-table td{border:1px solid #acc6b72e;padding:11px 3px}.game-ui .element-chart-table th{font-size:10px}.game-ui .element-chart-table td{font-weight:750}.game-ui .chart-element-fire{color:#ffc39e}.game-ui .chart-element-water{color:#b5dcff}.game-ui .chart-element-nature{color:#bbf6c9}.game-ui .chart-element-lightning{color:#ffdf8d}.game-ui .chart-element-earth{color:#dfc4a8}.game-ui .chart-matchup-super{color:#bbf6c9;background:#245c3b80}.game-ui .chart-matchup-resisted{color:#ffcca5;background:#633b2780}.game-ui .chart-matchup-neutral{color:#d4e1d8}.game-ui .element-chart-legend{flex-wrap:wrap;gap:6px;display:flex}.game-ui .element-chart-legend .skill-affinity{border:1px solid;border-radius:8px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;display:inline-flex}.game-ui .element-chart-dual{background:#102f2780;border:1px solid #acc6b733;border-radius:12px;flex-direction:column;gap:8px;padding:13px;display:flex}.game-ui .element-chart-dual h3{font-size:16px}.game-ui .element-chart-dual ul{flex-direction:column;gap:7px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.game-ui .element-chart-dual li b{color:#f3d794;min-width:42px;display:inline-block}.game-ui .battle-help{color:var(--muted);text-align:left;font-size:12px;line-height:1.6}.game-ui .battle-help summary{cursor:pointer;min-height:44px;color:var(--gold);align-content:center;font-weight:600;display:list-item}.game-ui .battle-help dl{overflow-wrap:anywhere;margin:0;padding:0 0 12px}.game-ui .battle-help dt{color:var(--ink);margin-top:10px;font-weight:700}.game-ui .battle-help dd{margin:2px 0 0}
.game-ui dialog.monster-details{background:radial-gradient(at 12% 45%,#52775144,#0000 55%),linear-gradient(130deg,#224738,#0c2b24);width:min(960px,100vw - 32px);max-width:none;height:min(620px,100dvh - 32px);max-height:none;padding:0;overflow:hidden}.game-ui .monster-details .dialog-wrap{grid-template-rows:48px minmax(0,1fr) 56px;height:100%;min-height:0;max-height:none;display:grid}.game-ui .monster-details .dialog-head{min-height:0;padding:0 16px;overflow:hidden}.game-ui .monster-details .dialog-head h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:20px;overflow:hidden}.game-ui .monster-details .dialog-head .icon-button{flex-shrink:0;width:40px;height:40px}.game-ui .monster-details .dialog-body{grid-template-rows:30px 40px minmax(0,1fr);min-height:0;padding:0 16px 10px;display:grid;overflow:hidden}.game-ui .monster-details-identity{white-space:nowrap;align-items:center;gap:9px;min-width:0;display:flex;overflow:hidden}.game-ui .monster-details-identity .monster-tier-badge{margin:0}.game-ui .monster-details-identity .tag{padding:2px 7px;font-size:10px;line-height:1.3}.game-ui .monster-details-identity .talent-badge{gap:4px}.game-ui .monster-details-identity .talent-stars{font-size:16px}.game-ui .monster-personality{border:0;border-left:1px solid var(--edge);min-height:26px;color:var(--gold);background:0 0;border-radius:0;flex-shrink:0;padding:0 7px;font-size:11px}.game-ui .monster-details-species{text-overflow:ellipsis;min-width:0;color:var(--muted);margin-left:auto;font-size:11px;overflow:hidden}.game-ui .monster-deployment-lock{color:var(--gold);margin-left:8px}.game-ui .monster-details-tabs{border-bottom:1px solid var(--edge);align-items:stretch;gap:24px;display:flex}.game-ui .monster-details-tabs button{min-width:70px;min-height:0;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:0 2px;font-size:13px;font-weight:700}.game-ui .monster-details-tabs button[aria-selected=true]{color:var(--gold);border-bottom-color:var(--gold)}.game-ui .monster-details-panel{min-width:0;min-height:0;padding-top:10px;overflow:hidden}.game-ui .monster-details-overview{grid-template-columns:minmax(0,.7fr) minmax(0,1.7fr);gap:20px;display:grid}.game-ui .monster-details-art{background:radial-gradient(at 50% 65%,#b2c67c1f,#0000 70%);justify-content:center;align-items:center;min-width:0;min-height:0;display:flex}.game-ui .monster-details-art .screen-portrait{width:100%;height:100%;transform:none}.game-ui .monster-details-stats{font-variant-numeric:tabular-nums;grid-template-rows:minmax(0,1fr) auto;gap:8px;min-width:0;min-height:0;display:grid}.game-ui .monster-stats-table-scroll{overscroll-behavior:contain;scrollbar-width:thin;min-width:0;min-height:0;overflow:auto}.game-ui .monster-stats-table-scroll:focus-visible{outline:1px solid var(--gold);outline-offset:-1px}.game-ui .monster-details-stats table{border-collapse:collapse;table-layout:fixed;width:100%;height:100%;font-size:14px}.game-ui .monster-details-stats thead{height:26px}.game-ui .monster-details-stats th,.game-ui .monster-details-stats td{text-align:right;vertical-align:middle;border-bottom:1px solid #b6b77626;padding:0 10px;font-weight:500}.game-ui .monster-details-stats th:first-child{text-align:left;width:24%}.game-ui .monster-details-stats thead th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px}.game-ui .monster-details-stats tbody th{padding:0}.game-ui .monster-details-stats tbody button{text-align:left;width:100%;height:100%;min-height:0;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0 10px;font-size:12px;font-weight:700;display:block}.game-ui .monster-details-stats .is-selected{background:#d1b76e12}.game-ui .monster-details-stats .monster-stat-talent{color:var(--gold);font-weight:700}.game-ui .monster-details-stats .monster-stat-total{color:#fff0c6;font-size:18px;font-weight:800}.game-ui .monster-stat-note{max-height:5.6em;color:var(--muted);overflow-wrap:anywhere;align-self:start;margin:0;font-size:10px;line-height:1.4;overflow-y:auto}.game-ui .monster-details .dialog-foot{flex-wrap:nowrap;justify-content:space-between;gap:8px;min-height:0;padding:5px 16px;display:flex;overflow:hidden}.game-ui .monster-details-toggles,.game-ui .monster-details-actions{align-items:center;gap:7px;min-width:0;display:flex}.game-ui .monster-details .dialog-foot button{white-space:nowrap;min-height:40px;padding:5px 12px;font-size:12px}.game-ui .monster-details-toggles button[aria-pressed=true]{color:#ffe5a1;background:#6a572e99;border-color:#d9ba73;box-shadow:inset 0 0 0 1px #f0d58c33}.game-ui .monster-details-skills{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;display:grid}.game-ui .monster-skill-list{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0;display:grid}.game-ui .monster-skill-list button{text-align:left;border:1px solid var(--edge);min-width:0;min-height:0;color:var(--ink);background:#092e2555;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;padding:10px;display:flex}.game-ui .monster-skill-list button[aria-pressed=true]{border-color:var(--gold);background:#b9a25b1c}.game-ui .monster-skill-list strong{overflow-wrap:anywhere;font-size:13px;line-height:1.2}.game-ui .monster-skill-list span,.game-ui .monster-skill-list small{color:var(--muted);text-transform:capitalize;font-size:10px;line-height:1.3}.game-ui .monster-skill-info{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;scrollbar-gutter:stable;overflow-wrap:anywhere;flex-direction:column;gap:10px;min-width:0;min-height:0;padding:4px 8px 4px 0;display:flex;overflow:hidden auto}.game-ui .monster-skill-info>*{flex-shrink:0}.game-ui .monster-skill-info::-webkit-scrollbar{width:5px}.game-ui .monster-skill-info::-webkit-scrollbar-thumb{background:var(--gold);border-radius:5px}.game-ui .monster-skill-info .monster-passive{border-top:1px solid var(--edge);color:var(--muted);margin:auto 0 0;padding-top:7px;font-size:10px;line-height:1.35}.game-ui .monster-passive strong{color:var(--gold);margin-bottom:2px;font-size:11px;display:block}.game-ui .monster-passive span{display:block}.game-ui .tag.neutral{color:#e1eaf2;background:#8592a52b;border-color:#adbbcb77}.game-ui .monster-skill-info>.tag{align-self:flex-start;font-size:10px}.game-ui .monster-skill-info h3{margin:0;font-size:21px;line-height:1.15}.game-ui .monster-skill-info>p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.game-ui .monster-skill-facts{border-top:1px solid var(--edge);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:8px;display:grid}.game-ui .monster-skill-facts span{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.game-ui .monster-skill-facts small{color:var(--muted);font-size:10px}.game-ui .monster-skill-facts b{text-transform:capitalize;font-size:12px}.game-ui .monster-training{grid-template-rows:44px minmax(0,1fr);gap:10px;height:100%;min-height:0;display:grid}.game-ui .monster-training-summary{justify-content:space-between;align-items:center;gap:12px;min-height:0;display:flex}.game-ui .monster-training-summary>span{align-items:baseline;gap:16px;display:flex}.game-ui .monster-training-summary strong{color:var(--gold);font-size:22px}.game-ui .monster-training-summary small{color:var(--muted);margin-left:4px;font-size:11px;font-weight:400}.game-ui .monster-training-summary>span>span{color:var(--muted);font-size:11px}.game-ui .monster-training-summary button{min-height:38px;padding:5px 10px;font-size:11px}.game-ui .monster-training-body{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:24px;min-height:0;display:grid}.game-ui .monster-training-stats{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-height:0;display:grid}.game-ui .monster-training-stats button{border:1px solid var(--edge);min-width:0;min-height:0;color:var(--ink);background:#0c302455;border-radius:8px;justify-content:space-between;align-items:center;padding:6px 12px;display:flex;position:relative;overflow:hidden}.game-ui .monster-training-stats button[aria-pressed=true]{border-color:var(--gold);background:#bba0651c}.game-ui .monster-training-stats strong{font-size:12px}.game-ui .monster-training-stats span{color:var(--gold);font-size:17px;font-weight:700}.game-ui .monster-training-stats small{color:var(--muted);font-size:10px;font-weight:400}.game-ui .monster-training-stats i{background:#dabe77;height:3px;position:absolute;bottom:0;left:0}.game-ui .monster-training-editor{flex-direction:column;justify-content:center;gap:12px;min-width:0;min-height:0;display:flex}.game-ui .monster-training-title{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.game-ui .monster-training-title span{color:var(--muted);font-size:11px}.game-ui .monster-training-controls{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;display:grid}.game-ui .monster-training-controls button{width:44px;min-height:44px;padding:0;font-size:23px}.game-ui .monster-training-controls>span{justify-content:center;align-items:center;gap:8px;display:flex}.game-ui .monster-training-controls small{color:var(--muted);font-size:10px}.game-ui .monster-training-controls strong{font-variant-numeric:tabular-nums;font-size:27px}.game-ui .monster-training-preview{color:var(--gold);text-align:center;margin:0;font-size:12px}.game-ui .monster-training-help{color:var(--muted);margin:0;font-size:11px;line-height:1.4}.game-ui .monster-details button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}@media (max-width:1024px),(max-height:600px){.game-ui dialog.screen-modal.monster-details{width:100vw;max-width:none;height:100dvh;max-height:none;padding:max(4px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border:0;border-radius:0;margin:0;position:fixed;inset:0}.game-ui dialog.screen-modal.monster-details .dialog-wrap{max-height:none}.game-ui .monster-details .dialog-wrap{grid-template-rows:44px minmax(0,1fr) 48px}.game-ui .monster-details .dialog-head{padding:0 8px}.game-ui .monster-details .dialog-body{grid-template-rows:28px 36px minmax(0,1fr);padding:0 8px 6px}.game-ui .monster-details-panel{padding-top:6px}.game-ui .monster-details .dialog-foot{padding:4px 8px}.game-ui .monster-details-overview{grid-template-columns:minmax(0,.65fr) minmax(0,1.65fr);gap:12px}.game-ui .monster-details-stats{gap:6px}.game-ui .monster-details-stats thead{height:20px}.game-ui .monster-details-skills{gap:14px}.game-ui .monster-skill-list button{gap:3px;padding:6px 9px}.game-ui .monster-skill-info{gap:7px;padding:0}.game-ui .monster-skill-info h3{font-size:18px}.game-ui .monster-skill-facts{gap:6px;padding-top:6px}.game-ui .monster-training{grid-template-rows:36px minmax(0,1fr);gap:6px}.game-ui .monster-training-editor{gap:7px}}@media (max-height:370px){.game-ui .monster-details .dialog-wrap{grid-template-rows:40px minmax(0,1fr) 44px}.game-ui .monster-details .dialog-body{grid-template-rows:24px 32px minmax(0,1fr);padding-bottom:2px}.game-ui .monster-details .dialog-head h2{font-size:17px}.game-ui .monster-details-stats table{font-size:12px}.game-ui .monster-details-stats .monster-stat-total{font-size:15px}.game-ui .monster-details-stats tbody button{font-size:11px}.game-ui .monster-details .dialog-foot button{min-height:36px;padding:4px 9px;font-size:11px}.game-ui .monster-training-summary strong{font-size:18px}.game-ui .monster-training-summary button{min-height:32px}.game-ui .monster-training-stats,.game-ui .monster-training-editor{gap:4px}.game-ui .monster-training-help{font-size:10px;line-height:1.3}.game-ui .monster-skill-info>p{font-size:11px;line-height:1.35}.game-ui .monster-skill-info{gap:5px}}@media (orientation:portrait) and (max-width:600px){.game-ui .monster-details-identity{gap:6px}.game-ui .monster-details-species{display:none}.game-ui .monster-details-overview{grid-template-rows:minmax(0,.65fr) minmax(0,1fr);grid-template-columns:1fr;gap:8px}.game-ui .monster-details-skills{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr;gap:12px}.game-ui .monster-training-body{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr;gap:14px}.game-ui .monster-training-summary>span{flex-direction:column;gap:6px}.game-ui .monster-details-toggles,.game-ui .monster-details-actions{gap:4px}.game-ui .monster-details .dialog-foot button{padding:4px 6px;font-size:10px}}.game-ui .monster-details-toggles button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.game-ui .monster-details-toggles button>.game-icon,.game-ui .monster-details-toggles button>svg{flex:none;width:16px;height:16px}.game-ui .monster-details-toggles .monster-flag-fusion[aria-pressed=true]{color:#e6c6ff;background:#62457166;border-color:#b18ac9}.game-ui .monster-details-toggles .monster-flag-release[aria-pressed=true]{color:#ffddb6;background:#76533266;border-color:#d7a46f}@media (max-width:680px){.game-ui .monster-details-toggles button{gap:4px;padding:5px 7px;font-size:10px}}
.game-ui .team-formation{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:hidden}.game-ui .team-formation-summary{flex:none;align-items:center;gap:20px;min-height:40px;display:flex}.game-ui .team-formation-summary>strong{white-space:nowrap;font-size:13px}.game-ui .team-formation-summary>strong>span{color:var(--gold);margin-left:6px}.game-ui .team-formation-health{flex:1;align-items:center;gap:12px;min-width:0;max-width:430px;display:flex}.game-ui .team-formation-health>span{color:var(--muted);white-space:nowrap;font-size:10px}.game-ui .team-formation-health b{color:var(--ink);margin-left:6px;font-weight:500}.game-ui .team-formation-health>.track{flex:1;min-width:30px;height:5px}.game-ui .team-auto-rest{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.game-ui .team-order-toggle{color:#e7d6a7;background:#c3b56b12;border:1px solid #b8af784d;flex:none;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:4px 10px;font-size:11px;display:inline-flex}.game-ui .team-order-toggle[aria-pressed=true]{border-color:var(--gold);background:#bba76426}.game-ui .team-order-hint{min-width:0;color:var(--muted);flex:1;font-size:11px}.game-ui .team-slot-order{gap:6px;width:100%;min-width:0;display:flex}.game-ui .team-slot-order>button{color:#e7d6a7;background:#c3b56b12;border:1px solid #b8af784d;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:34px;padding:4px 5px;font-size:11px;display:flex}.game-ui .team-slot-order>button:disabled{opacity:.35}.game-ui .team-slot[aria-busy=true]{opacity:.7}.game-ui .team-slot{will-change:auto;transition:transform .16s,border-color .16s;position:relative}.game-ui .team-slot-main{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab}.game-ui .team-slot-main[data-drag-disabled=true]{touch-action:auto;cursor:pointer}.game-ui .team-slot-position{align-items:center;gap:3px;display:inline-flex}.game-ui .team-slot-grip{opacity:.6;flex:none}.game-ui .team-formation-slots.is-dragging .team-slot{will-change:transform}.game-ui .team-formation-slots.is-dragging .team-slot-main{cursor:grabbing}.game-ui .team-slot.is-drag-source{z-index:3;border-color:var(--gold);transition:none;box-shadow:0 10px 24px #041e1680}.game-ui .team-slot.is-drop-target{border-color:#efd28c;box-shadow:inset 0 0 0 2px #efd28c60}@media (prefers-reduced-motion:reduce){.game-ui .team-slot{transition:none}}.game-ui .team-formation-slots{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:0;display:grid}.game-ui .team-slot{background:radial-gradient(at 50% 40%,#6c956a22,#0000 70%),linear-gradient(150deg,#254d3ddc,#12382de8);border:1px solid #b5a07870;border-radius:16px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #fff1,0 6px 16px #061e1633}.game-ui .team-slot.is-lead{border-color:#d7bb79a6;box-shadow:inset 0 2px #e6c77c88,0 6px 16px #061e1633}.game-ui .team-slot-main{text-align:left;min-width:0;min-height:0;color:var(--ink);background:0 0;border:0;border-radius:0;flex:1;grid-template-rows:22px minmax(0,1fr) 24px 24px;gap:4px;padding:10px 14px 4px;display:grid}.game-ui .team-slot-top{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.game-ui .team-slot-position{letter-spacing:.08em;text-transform:uppercase;color:#c1cdb9;white-space:nowrap;font-size:10px;font-weight:700}.game-ui .is-lead .team-slot-position{color:#ecd190}.game-ui .team-slot-top .monster-tier-badge{margin:0}.game-ui .team-slot-art{isolation:isolate;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.game-ui .team-slot-art:before{content:"";z-index:-1;background:#061e1744;border-radius:50%;height:5%;position:absolute;bottom:7%;left:22%;right:22%}.game-ui .team-slot-art>.screen-portrait{width:100%;height:100%;min-height:0;transform:none}.game-ui .team-slot-name{text-overflow:ellipsis;white-space:nowrap;align-self:center;min-width:0;font-size:18px;line-height:1.2;overflow:hidden}.game-ui .team-slot-meta{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.game-ui .team-slot-meta .tag{padding:2px 6px;font-size:10px;line-height:1.3}.game-ui .team-slot-meta .talent-badge small{display:none}.game-ui .team-slot-meta .talent-stars{gap:2px;font-size:18px}.game-ui .team-slot-bottom{flex:none;align-items:center;gap:12px;min-height:48px;padding:3px 12px 7px;display:flex}.game-ui .team-slot-health{font-variant-numeric:tabular-nums;flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.game-ui .team-slot-health>span{color:var(--muted);white-space:nowrap;font-size:10px}.game-ui .team-slot-health b{color:var(--ink);font-weight:600}.game-ui .team-slot-health .track{height:5px}.game-ui .team-slot-health.is-low .track i{background:linear-gradient(90deg,#c87559,#e5b56c)}.game-ui .team-slot-change{color:#e7d6a7;background:#c3b56b12;border:1px solid #b8af784d;border-radius:8px;flex:none;min-height:38px;padding:4px 10px;font-size:11px;font-weight:600}.game-ui .team-slot-main:hover,.game-ui .team-slot-change:hover{background-color:#d8cf9810}.game-ui .team-slot-main:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}.game-ui .team-slot-empty{box-shadow:none;background:#11392b88;border-style:dashed;padding:12px}.game-ui .team-slot-empty>button{min-height:0;color:var(--muted);background:0 0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.game-ui .team-slot-empty>button>span{width:48px;height:48px;color:var(--gold);border:1px solid #bdba7b55;border-radius:50%;place-items:center;font-size:26px;display:grid}.game-ui .team-slot-empty strong{font-size:12px;font-weight:500}@media (orientation:landscape) and (max-height:500px){.game-ui .team-formation{gap:6px}.game-ui .team-formation-summary{gap:12px;min-height:34px}.game-ui .team-formation-summary>button{min-height:34px;padding:3px 10px;font-size:11px}.game-ui .team-formation-slots{gap:10px}.game-ui .team-slot{border-radius:12px}.game-ui .team-slot-main{grid-template-rows:18px minmax(0,1fr) 20px 20px;gap:2px;padding:6px 10px 1px}.game-ui .team-slot-name{font-size:15px}.game-ui .team-slot-position{font-size:9px}.game-ui .team-slot-meta .talent-stars{font-size:16px}.game-ui .team-slot-bottom{gap:8px;min-height:40px;padding:2px 8px 5px}.game-ui .team-slot-change{min-height:34px;padding:3px 8px;font-size:10px}}@media (max-width:650px){.game-ui .team-formation-slots{gap:6px}.game-ui .team-formation-health{gap:8px}.game-ui .team-formation-health>span{font-size:9px}.game-ui .team-formation-health b{margin-left:4px}.game-ui .team-slot-main{padding-left:7px;padding-right:7px}.game-ui .team-slot-position{letter-spacing:.02em}.game-ui .team-slot-meta .tag{padding:2px 4px;font-size:9px}.game-ui .team-slot-meta .talent-stars{gap:0;font-size:14px}.game-ui .team-slot-top .monster-tier-badge{padding:1px 4px;font-size:9px}}.game-ui .team-drag-hint{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:11px;line-height:1.35;display:flex}.game-ui .team-drag-hint small{font-size:inherit;color:#d6c794}.game-ui .team-drag-hint>svg{color:#d6c794;flex:none}@media (max-height:430px){.game-ui .team-drag-hint{font-size:10px}.game-ui .team-formation-summary{min-height:26px}}
.game-ui.expedition-screen{z-index:45;isolation:isolate;color:#fff5df;background:#172c29;position:fixed;inset:0;overflow:hidden}.expedition-painting,.expedition-shade{pointer-events:none;z-index:-2;position:absolute;inset:0}.expedition-painting{background-position:50% 58%;background-size:cover;animation:.65s ease-out both expedition-reveal}.expedition-run .expedition-painting{background-position:50% 35%}.expedition-shade{z-index:-1;background:linear-gradient(#071d29a6,#0000 32%,#081b1866 66%,#071d1bed),linear-gradient(90deg,#13241b33,#0000 55%,#101e1f77)}.expedition-run .expedition-shade{background:linear-gradient(#091e278c,#0000 27% 53%,#081d1b77 76%,#071d1bd9),linear-gradient(90deg,#13241b22,#0000 40%,#101e1f22)}.expedition-shell{max-width:1600px;height:100%;padding:max(14px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));flex-direction:column;gap:10px;margin:auto;display:flex}.expedition-header{flex:none;align-items:center;gap:12px;min-height:46px;display:flex}.expedition-heading{text-shadow:0 2px 6px #09171edd;min-width:0}.game-ui .expedition-heading h1{letter-spacing:.015em;font-family:Cinzel,Georgia,serif;font-size:23px;line-height:1.2}.expedition-heading .eyebrow{color:var(--region-tint);letter-spacing:.16em;font-size:9px}.expedition-header-meta{align-items:center;margin-left:auto;display:flex}.expedition-stamina{color:#e9dbb9;background:#102520c9;border:1px solid #e4d0a64d;border-radius:12px;align-items:center;gap:9px;padding:6px 12px;font-size:11px;display:flex}.expedition-stamina svg{color:var(--region-tint)}.expedition-stamina b{color:#fff0c9;font-size:21px;line-height:1.2}.expedition-stamina b small{color:#bfcebb;font-size:12px;font-weight:500}.expedition-elements{background:#102923c7;border:1px solid #dbc99d44;border-radius:14px;flex:none;gap:5px;width:fit-content;padding:3px;display:flex}.game-ui .expedition-elements button{color:#d4dacb;text-transform:capitalize;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:7px 18px;font-size:12px;font-weight:650;display:flex}.expedition-elements svg{width:17px;height:17px}.game-ui .expedition-elements button[aria-pressed=true]{color:#ffefc5;background:linear-gradient(135deg,#bc9a594d,#bf975d22);box-shadow:inset 0 0 0 1px #e0be7980}.expedition-map-layout{flex:1;grid-template-columns:minmax(0,1fr) minmax(270px,30%);gap:20px;min-height:0;display:grid}.expedition-map{min-width:0;min-height:0;position:relative}.expedition-region-caption{text-shadow:0 2px 5px #10251bcc;pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute;top:4%;left:2%}.expedition-region-caption>svg{width:30px;height:30px;color:var(--region-tint);filter:drop-shadow(0 2px 4px #192820)}.expedition-region-caption span{text-transform:uppercase;letter-spacing:.15em;color:#f3e5ce;font-size:10px}.game-ui .expedition-region-caption h2{color:#fff5df;font:600 clamp(15px,2.2vw,27px)/1.3 Cinzel,Georgia,serif}.expedition-map-trail{pointer-events:none;filter:drop-shadow(0 2px 2px #11251c);width:100%;height:100%;position:absolute;inset:0;overflow:visible}.expedition-map-trail path{fill:none;stroke:#f9e1a3bb;stroke-width:1.5px;stroke-dasharray:4 7;vector-effect:non-scaling-stroke}.game-ui .expedition-marker{filter:drop-shadow(0 3px 7px #081b2066);background:0 0;flex-direction:column;align-items:center;gap:7px;width:155px;max-width:31%;min-height:64px;padding:0;display:flex;position:absolute;transform:translate(-50%,-35%)}.expedition-marker-symbol{background:linear-gradient(135deg,#395246,#142e29);border:1px solid #e2c788;border-radius:50% 50% 50% 12%;place-items:center;width:43px;height:43px;display:grid;transform:rotate(-45deg);box-shadow:0 3px #0b201dcc,inset 0 1px #ffe9b944}.expedition-marker-symbol svg{color:#e7d3a4;width:20px;height:20px;transform:rotate(45deg)}.expedition-marker-label{color:#f8ecd4;text-align:center;background:#0d2824e6;border:1px solid #e1ceaa4d;border-radius:8px;flex-direction:column;gap:2px;max-width:100%;padding:5px 10px;display:flex}.expedition-marker-label strong{font-size:12px;line-height:1.25}.expedition-marker-label small{color:#bdccb8;font-size:9px}.game-ui .expedition-marker.selected .expedition-marker-symbol{background:linear-gradient(135deg,#ffe3a3,#b58b49);border-color:#fff3c6;box-shadow:0 0 0 5px #ffe1a324,0 0 24px #ffd19466,0 3px #483d25}.expedition-marker.selected svg{color:#26382b}.expedition-marker.selected .expedition-marker-label{color:#ffeab7;border-color:#e7cd8d}.expedition-marker.locked .expedition-marker-symbol{background:linear-gradient(135deg,#4f5452,#273936);border-color:#a9b0a0}.expedition-marker.locked .expedition-marker-label small{color:#e3bc92}.expedition-map-note{color:#e5e4ca;text-shadow:0 2px 4px #10251b;align-items:center;gap:7px;font-size:11px;display:flex;position:absolute;bottom:0;left:2%}.expedition-map-note svg{width:16px;height:16px}.expedition-route-panel{background:linear-gradient(135deg,#1c3931eb,#112a25f5);border:1px solid #e2cfa46b;border-radius:16px;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:20px;display:flex;box-shadow:inset 0 1px #ffffff14,0 10px 30px #071c1e55}.expedition-route-title{justify-content:space-between;align-items:center;gap:5px;display:flex}.expedition-route-title>span:last-child{color:#c7d5bb;font-size:10px}.game-ui .expedition-route-panel>h2{color:#ffedbe;font:600 clamp(18px,2vw,26px)/1.2 Cinzel,Georgia,serif}.expedition-route-description{color:#d1dbc7;font-size:12px;line-height:1.55}.expedition-section-label{text-transform:uppercase;letter-spacing:.12em;color:#cbbb94;font-size:9px;display:block}.expedition-natives{flex-direction:column;flex:1;gap:4px;min-height:0;display:flex}.expedition-natives>div{flex:1;gap:8px;min-height:0;display:flex}.expedition-natives>div>div{flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex}.expedition-natives>div>div>span{flex:1;width:100%;max-width:125px;min-height:0;max-height:140px;display:block}.expedition-natives strong{color:#e6ddc8;text-align:center;overflow-wrap:anywhere;font-size:11px;font-weight:600;line-height:1.3}.expedition-native-tier{color:#c9ab75;font-size:9px;line-height:1.2}.expedition-route-reward{border-top:1px solid #e2cfa426;border-bottom:1px solid #e2cfa426;flex:none;align-items:center;gap:9px;padding:10px 0;display:flex}.expedition-route-reward>svg{color:var(--region-tint);width:21px;height:21px}.expedition-route-reward small,.expedition-route-reward strong{display:block}.expedition-route-reward small{color:#b8c8b1;font-size:9px}.expedition-route-reward strong{color:#efdfb8;font-size:12px}.expedition-depart{flex-direction:column;flex:none;gap:6px;display:flex}.expedition-depart>span{text-align:center;color:#c4cfb7;font-size:10px}.expedition-depart>.primary{width:100%;min-height:44px;padding:8px;font-size:13px}.expedition-depart .primary>span{font-size:11px;font-weight:600}.expedition-depart>small{text-align:center;color:#edbf99;font-size:10px}.expedition-footer{flex:none;justify-content:space-between;align-items:center;gap:10px;min-height:54px;display:flex}.expedition-team{align-items:center;gap:12px;min-width:0;display:flex}.expedition-team-label{text-transform:uppercase;letter-spacing:.1em;color:#d9c99e;font-size:10px}.expedition-team-units{gap:15px;min-width:0;display:flex}.expedition-team-unit{align-items:center;gap:5px;min-width:0;display:flex}.expedition-team-art{flex:none;width:48px;height:48px;display:block}.expedition-team-health{flex-direction:column;gap:3px;width:75px;min-width:0;display:flex}.expedition-team-health strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.expedition-team-health small{color:#c8d6c0;font-size:9px;line-height:1}.expedition-hp{background:#071e1a;border-radius:3px;height:4px;display:block;overflow:hidden}.expedition-hp i{background:#a2cd8c;border-radius:3px;height:100%;display:block}.expedition-team-unit.fainted{opacity:.45}.game-ui .expedition-rest{color:#ecd5a0;background:#17372cdd;border:1px solid #d6bb7555;border-radius:8px;min-height:40px;padding:5px 12px;font-size:11px}.expedition-footer-note{color:#c6cfb7;font-size:11px}.expedition-scene-actor{pointer-events:none;min-width:0;position:absolute;bottom:0}.expedition-actor-art{width:100%;min-height:0;position:relative}.expedition-actor-art>svg{width:100%;height:100%;display:block;overflow:hidden}.expedition-actor-label{text-transform:uppercase;letter-spacing:.08em;color:#fff0d2;text-align:center;text-shadow:0 2px 4px #132b23;flex-direction:column;justify-content:center;align-items:center;width:100%;height:30px;font-size:8px;line-height:11px;display:flex;overflow:hidden}.expedition-actor-label strong{text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:0;color:#fff5dc;max-width:100%;font-size:clamp(10px,1.6dvh,15px);line-height:17px;display:block;overflow:hidden}.expedition-progress{align-items:center;gap:9px;display:flex}.expedition-progress>span{color:#d4d9c8;text-shadow:0 1px 3px #162b23;align-items:center;gap:6px;font-size:11px;display:flex}.expedition-progress b{background:#17342edd;border:1px solid #e2d8b14d;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.expedition-progress b svg{width:14px;height:14px}.expedition-progress small{font-size:11px}.expedition-progress>i{background:#e2d8b166;width:20px;height:1px}.expedition-progress .current b{color:#233a2d;background:#e9c67f;border-color:#ffdf9d;box-shadow:0 0 0 4px #eac67c22}.expedition-progress .done b{color:#d9edc1;border-color:#adcc9c}.expedition-encounter{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.expedition-encounter-stage{isolation:isolate;flex:1;min-height:0;position:relative}.expedition-run .expedition-traveller:before,.expedition-run .expedition-wild:before{display:none}.expedition-traveller,.expedition-wild{isolation:isolate;flex-direction:column;align-items:center;width:34%;height:95%;display:flex;position:absolute;bottom:3%}.expedition-traveller{width:26%;height:80%;left:9%}.expedition-wild{right:13%}.expedition-traveller:before,.expedition-wild:before{content:"";filter:blur(7px);z-index:-1;background:#16221a66;border-radius:50%;height:10%;position:absolute;bottom:19px;left:20%;right:20%}.expedition-traveller .screen-portrait,.expedition-wild .screen-portrait{flex:1;min-height:0}.expedition-traveller>span,.expedition-wild>span{text-transform:uppercase;letter-spacing:.1em;text-align:center;text-shadow:0 2px 4px #132b23;color:#fff0d2;flex:none;font-size:9px}.expedition-wild strong{text-transform:none;letter-spacing:0;color:#fff5dc;font-size:15px;display:block}.expedition-wild-count{background:#16382bd9;border:1px solid #e3d1ad55;border-radius:20px;padding:6px 12px;font-size:10px;position:absolute;top:12%;right:3%}.expedition-event-panel{background:linear-gradient(110deg,#18392eef,#122d28f5);border:1px solid #e0cfa566;border-radius:14px;flex:none;grid-template-columns:1fr 1fr;align-items:center;gap:24px;min-height:130px;padding:18px 22px;animation:.3s ease-out both expedition-dock-in;display:grid;box-shadow:0 6px 20px #0b222b44}.expedition-event-copy{flex-direction:column;gap:6px;min-width:0;display:flex}.game-ui .expedition-event-copy h2{color:#fff0c8;font:600 clamp(16px,2vw,23px)/1.25 Cinzel,Georgia,serif}.expedition-event-copy p{color:#d0dbc4;font-size:12px;line-height:1.5}.expedition-event-copy .eyebrow{color:var(--region-tint);font-size:9px}.expedition-event-actions{flex-direction:column;align-items:stretch;gap:9px;min-width:0;display:flex}.expedition-event-actions>.primary{align-self:flex-end;min-width:200px}.expedition-encounter-note{color:#cbd7be;text-align:right;font-size:11px}.expedition-discovery-emblem,.expedition-complete-seal{color:#ffe4a3;filter:drop-shadow(0 4px 10px #0a231e99);flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:50%;left:55%;transform:translate(-50%,-50%)}.expedition-discovery-emblem>svg,.expedition-complete-seal>svg{stroke-width:1px;width:clamp(44px,10dvh,95px);height:clamp(44px,10dvh,95px)}.expedition-discovery-emblem>span,.expedition-complete-seal>span{letter-spacing:.1em;text-shadow:0 2px 5px #14251e;font-family:Cinzel,Georgia,serif;font-size:12px}.expedition-complete-seal{left:50%}.expedition-field-choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.game-ui .expedition-field-choices button{text-align:left;color:#ffedc1;background:linear-gradient(140deg,#47624766,#24493888);border:1px solid #d6c59666;border-radius:10px;flex-direction:column;justify-content:center;gap:7px;min-height:100px;padding:12px;transition:border-color .2s,background .2s;display:flex}.game-ui .expedition-field-choices button:hover{background:#496c4688;border-color:#efd290}.expedition-field-choices strong{font-size:12px;line-height:1.2}.expedition-field-choices span{color:#cfdbc1;font-size:10px;line-height:1.4}.expedition-field-choices b{color:#f2db98;justify-content:space-between;align-items:center;gap:4px;font-size:10px;display:flex}.expedition-field-choices b svg{flex:none}.expedition-rewards{justify-content:flex-end;gap:18px;display:flex}.expedition-rewards>span{align-items:center;gap:7px;display:flex}.expedition-rewards svg{color:#e8c981;flex:none;width:18px;height:18px}.expedition-rewards strong{font-size:16px;line-height:1.1}.expedition-rewards small{color:#c2d1b5;max-width:110px;font-size:9px;font-weight:500;line-height:1.3;display:block}.expedition-capture-outcome{color:#e1d7b0;text-align:right;font-size:11px;line-height:1.4}.expedition-capture-rate{justify-content:flex-end;align-items:center;gap:12px;display:flex}.expedition-capture-rate>strong{color:#f2d48d;font-size:28px;line-height:1}.expedition-capture-rate>strong small{font-size:15px}.expedition-capture-rate>span{color:#f4e2b4;font-size:11px}.expedition-capture-rate>span small{color:#bfceb7;font-size:9px;display:block}.expedition-capture-buttons{justify-content:flex-end;gap:8px;display:flex}.expedition-capture-buttons button{padding:8px 12px;font-size:12px}@keyframes expedition-reveal{0%{opacity:.2}to{opacity:1}}@keyframes expedition-dock-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (max-height:540px){.expedition-shell{padding:max(8px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));gap:6px}.expedition-header{gap:9px;min-height:40px}.expedition-header .icon-button{border-radius:11px;width:38px;height:38px}.game-ui .expedition-heading h1{font-size:18px}.expedition-heading .eyebrow{font-size:8px}.expedition-elements{border-radius:10px;padding:2px}.game-ui .expedition-elements button{min-height:34px;padding:5px 14px;font-size:11px}.expedition-elements svg{width:15px;height:15px}.expedition-stamina{padding:4px 10px}.expedition-stamina b{font-size:19px}.expedition-map-layout{grid-template-columns:minmax(0,1fr) minmax(235px,32%);gap:12px}.expedition-route-panel{border-radius:12px;gap:7px;padding:12px}.game-ui .expedition-route-panel>h2{font-size:18px}.expedition-route-description{font-size:10px;line-height:1.4}.expedition-route-reward{gap:7px;padding:5px 0}.expedition-route-reward small{font-size:8px}.expedition-route-reward strong{font-size:11px}.expedition-route-reward>svg{width:17px;height:17px}.expedition-natives>div>div>span{max-height:76px}.expedition-natives strong{font-size:10px}.expedition-depart{gap:4px}.expedition-depart>.primary{min-height:40px;padding:6px;font-size:12px}.expedition-depart>span{font-size:9px}.expedition-footer{min-height:44px}.expedition-team{gap:9px}.expedition-team-art{width:40px;height:40px}.expedition-team-units{gap:9px}.expedition-team-health{width:65px}.expedition-team-label,.expedition-team-health strong{font-size:9px}.expedition-team-health small{font-size:8px}.expedition-footer-note{font-size:10px}.expedition-map-note{font-size:9px}.expedition-marker-symbol{width:35px;height:35px}.expedition-marker-symbol svg{width:17px;height:17px}.expedition-marker-label{padding:4px 7px}.expedition-marker-label strong{font-size:10px}.expedition-marker-label small{font-size:8px}.game-ui .expedition-marker{gap:5px}.expedition-region-caption{gap:7px}.expedition-region-caption span{font-size:8px}.expedition-region-caption>svg{width:23px;height:23px}.expedition-event-panel{gap:18px;min-height:104px;padding:12px 16px}.expedition-event-copy{gap:4px}.expedition-event-copy p{font-size:11px;line-height:1.4}.expedition-event-copy .eyebrow{font-size:8px}.game-ui .expedition-event-copy h2{font-size:17px}.expedition-event-actions{gap:6px}.expedition-field-choices button{gap:5px;min-height:85px;padding:9px}.expedition-field-choices strong{font-size:11px}.expedition-field-choices span,.expedition-field-choices b{font-size:9px}.expedition-progress{gap:6px}.expedition-progress small{font-size:10px}.expedition-progress b{width:23px;height:23px}.expedition-progress>i{width:13px}.expedition-wild strong{font-size:13px}.expedition-encounter-note{font-size:10px}.expedition-rewards{gap:12px}.expedition-rewards strong{font-size:14px}.expedition-rewards small{font-size:8px}.expedition-event-actions>.primary{min-height:40px}}@media (max-height:430px){.expedition-route-description{display:none}.expedition-route-title>span:last-child{font-size:9px}.expedition-route-panel{gap:5px;padding:10px}.expedition-route-reward{padding:4px 0}.expedition-natives{gap:2px}.expedition-section-label{font-size:8px}.expedition-natives>div>div>span{max-height:65px}.expedition-footer-note,.expedition-team-label{display:none}.expedition-map-note{font-size:8px}.expedition-event-panel{grid-template-columns:.9fr 1.1fr;gap:12px;min-height:96px;padding:10px 13px}.expedition-field-choices button{gap:4px;min-height:78px;padding:8px}.expedition-field-choices span{display:none}.expedition-capture-rate>strong{font-size:24px}.expedition-capture-buttons button{min-height:38px;padding:7px 9px;font-size:11px}.expedition-capture-outcome{font-size:9px}.expedition-wild-count{padding:4px 8px;font-size:9px}.expedition-progress>span{gap:4px}.expedition-traveller>span,.expedition-wild>span{font-size:8px}.expedition-rewards{gap:7px}.expedition-rewards>span{gap:4px}.expedition-rewards svg{width:14px;height:14px}}@media (max-width:740px){.expedition-map-layout{grid-template-columns:minmax(0,1fr) 240px;gap:8px}.expedition-progress small{display:none}.expedition-progress b{width:26px;height:26px}.expedition-region-caption span{display:none}.game-ui .expedition-region-caption h2{font-size:15px}.game-ui .expedition-elements button{padding-left:12px;padding-right:12px}.expedition-marker-label strong{font-size:9px}.expedition-map-note{max-width:90%;line-height:1.3}.expedition-map-note svg{flex:none}.expedition-team-health{width:52px}.expedition-team-units{gap:6px}.expedition-team-art{width:36px;height:36px}.expedition-team{gap:6px}.game-ui .expedition-rest{padding:5px 9px;font-size:10px}.expedition-event-panel{grid-template-columns:.85fr 1.15fr}.expedition-event-copy p,.expedition-field-choices strong{font-size:10px}.expedition-field-choices b{font-size:8px}.game-ui .expedition-event-copy h2{font-size:15px}.expedition-event-actions>.primary{min-width:170px;font-size:12px}.expedition-traveller{width:30%;left:3%}.expedition-wild{width:38%;right:10%}}@media (max-height:350px) and (orientation:landscape){.expedition-shell{gap:4px}.expedition-header{min-height:34px}.expedition-header .icon-button{width:34px;height:32px}.game-ui .expedition-heading h1{font-size:16px}.expedition-heading .eyebrow{display:none}.game-ui .expedition-elements button{min-height:30px}.expedition-route-title{display:none}.expedition-route-panel{gap:4px;padding:8px}.game-ui .expedition-route-panel>h2{font-size:16px}.expedition-natives>div>div>span{max-height:42px}.expedition-route-reward small,.expedition-depart>span{display:none}.expedition-depart>.primary{min-height:36px}.expedition-footer{min-height:38px}.expedition-team-art{width:32px;height:32px}.expedition-team-health{gap:2px}.expedition-map-note,.expedition-region-caption>svg{display:none}.expedition-event-panel{min-height:86px;padding:8px 12px}.expedition-event-copy p{font-size:9px}.expedition-event-copy h2{font-size:14px}.expedition-event-actions>.primary{min-height:36px}.expedition-field-choices button{min-height:66px}.expedition-progress small{display:none}}@media (orientation:portrait){.expedition-map-layout{grid-template-columns:minmax(0,1fr) minmax(180px,45%);gap:6px}.expedition-shell{padding-left:8px;padding-right:8px}.expedition-elements{justify-content:space-between;width:100%}.game-ui .expedition-elements button{flex:1;gap:4px;padding:6px;font-size:10px}.expedition-route-panel{gap:8px;padding:10px}.expedition-team-art{width:32px;height:32px}.expedition-team-health{width:40px}.expedition-event-panel{grid-template-columns:1fr;gap:9px}.expedition-event-actions>.primary{width:100%}.expedition-marker-label strong{font-size:9px}.expedition-region-caption,.expedition-route-title>span:last-child,.expedition-progress small,.expedition-stamina>span{display:none}.game-ui .expedition-heading h1{font-size:17px}.expedition-encounter-stage{min-height:120px}.expedition-footer>.text-button{padding:4px;font-size:9px}}@media (min-height:351px) and (max-height:430px) and (orientation:landscape){.expedition-route-title,.expedition-depart>span,.expedition-route-reward small{display:none}.expedition-route-description{font-size:10px;line-height:1.35;display:block}.expedition-route-panel{gap:5px}.expedition-natives>div>div>span{max-height:54px}.expedition-depart>.primary{min-height:42px}}@media (max-width:740px){.expedition-field-choices strong{font-size:11px}.expedition-field-choices b{font-size:10px;line-height:1.3}}@media (prefers-reduced-motion:reduce){.expedition-painting,.expedition-event-panel{animation:none}}.expedition-field-choices button[aria-busy=true]{opacity:1;background:#6f603538;border-color:#f1d598}
.dev-tools{top:max(4px,env(safe-area-inset-top));z-index:100;color:#f7e9be;font:11px/1.4 Inter,Arial,sans-serif;position:fixed;left:50%;transform:translate(-50%)}.dev-tools button{font:inherit;cursor:pointer;touch-action:manipulation}.dev-tools-toggle{color:#f4ce83;background:#172b27ed;border:1px solid #d6b56588;border-radius:0 0 8px 8px;margin:auto;padding:4px 10px;font-size:10px;display:block;box-shadow:0 2px 8px #0004}.dev-tools-panel{background:#112b25fa;border:1px solid #d6b56588;border-radius:10px;flex-direction:column;gap:8px;width:min(320px,90vw);max-height:calc(100dvh - 45px);margin-top:5px;padding:13px;display:flex;overflow:auto;box-shadow:0 6px 25px #0007}.dev-tools-panel p{color:#d0d7bf;margin:0}.dev-tools-panel>button{color:#fce4b1;text-align:left;background:#34503c;border:1px solid #d6b56566;border-radius:6px;min-height:38px;padding:7px 10px}.dev-tools-panel>button:disabled{opacity:.4;cursor:default}.dev-tools-panel small{color:#b4c3aa;font-size:9px}.dev-tools-panel [role=status]{color:#d9e9b5;font-size:10px}.dev-tools button:focus-visible{outline-offset:2px;outline:2px solid #ffe4a1}
.game-ui dialog.capture-ritual{color:#fff1cd;width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;background:#0a211c;border:0;border-radius:0;outline:none;margin:0;padding:0;animation:.25s ease-out capture-open;position:fixed;inset:0;overflow:hidden}.game-ui dialog.capture-ritual::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#071c19d9}.game-ui dialog.capture-ritual[open]{flex-direction:column;display:flex}.capture-camera{transform-origin:65% 48%;will-change:transform,filter;pointer-events:none;background-position:50% 35%;background-size:cover;position:absolute;inset:-3%}.capture-vignette{pointer-events:none;background:radial-gradient(at 50% 49%,#0000 10%,#05161355 65%,#031510c9);position:absolute;inset:0}.capture-composition{isolation:isolate;pointer-events:none;flex:1;min-height:0;position:relative;overflow:hidden}.capture-charm-anchor{aspect-ratio:1;z-index:3;width:min(46dvh,48vw);position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.capture-charm-motion{transform-origin:50% 80%;will-change:transform,opacity;position:absolute;inset:0}.capture-charm-art{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 8px 10px #020f0db3);-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.capture-contact-shadow{filter:blur(4px);z-index:-1;background:radial-gradient(#06120cbb 10%,#06120c55 45%,#0000 72%);border-radius:50%;height:10%;position:absolute;bottom:2%;left:19%;right:19%}.capture-charm-halo{background:radial-gradient(ellipse,var(--capture-color),transparent 64%);mix-blend-mode:screen;filter:blur(8px);border-radius:50%;position:absolute;inset:-15%}.capture-crystal-light{background:radial-gradient(ellipse,#fffbd8 3%,var(--capture-color) 40%,transparent 72%);mix-blend-mode:screen;filter:blur(6px);border-radius:50%;position:absolute;inset:27% 32% 28%}.capture-ground-ring{border:1px solid var(--capture-color);width:min(66dvh,58vw);height:10dvh;box-shadow:0 0 18px color-mix(in srgb,var(--capture-color) 28%,transparent),inset 0 0 20px color-mix(in srgb,var(--capture-color) 20%,transparent);background:radial-gradient(ellipse,color-mix(in srgb,var(--capture-color) 14%,transparent),transparent 70%);z-index:0;border-radius:50%;position:absolute;top:68%;left:50%}.capture-creature{transform-origin:50% 65%;z-index:2;will-change:transform,opacity;width:44dvh;height:44dvh;position:absolute;top:calc(49% - 22dvh);left:calc(50% - 22dvh)}.capture-creature>.screen-portrait{width:100%;height:100%}.capture-element-wisps{z-index:4;width:0;height:0;position:absolute;top:48%;left:50%}.capture-element-wisps>img{-o-object-fit:contain;object-fit:contain;mix-blend-mode:screen;width:10dvh;max-width:none;height:10dvh;filter:drop-shadow(0 0 5px var(--capture-color));will-change:transform,opacity;position:absolute;top:-5dvh;left:-5dvh}.capture-reveal-glow{background:radial-gradient(ellipse,#fff8d8 0%,var(--capture-color) 14%,transparent 62%);mix-blend-mode:screen;z-index:5;pointer-events:none;width:75dvh;height:75dvh;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.capture-result{z-index:6;min-height:min(155px,42dvh);max-height:65%;padding:10px max(18px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));text-align:center;background:linear-gradient(#0000,#03151080);flex-direction:column;flex:0 auto;align-items:center;gap:12px;display:flex;position:relative;overflow-y:auto}.capture-outcome{text-align:center;text-shadow:0 2px 6px #031b15;pointer-events:none;overflow-wrap:anywhere;flex-direction:column;flex:none;align-items:center;gap:6px;width:100%;max-width:600px;display:flex}.capture-outcome>span{text-transform:uppercase;letter-spacing:.22em;color:var(--capture-color);font-size:10px}.game-ui .capture-outcome h2{color:#fff0c6;font:600 clamp(17px,3.5dvh,29px)/1.3 Cinzel,Georgia,serif}.capture-outcome p{color:#d6dfc9;font-size:11px;line-height:1.4}.capture-escape .capture-outcome h2{color:#f2ddbd}.game-ui .capture-continue{pointer-events:auto;cursor:pointer;flex:none;min-width:160px;min-height:44px}.capture-continue:focus-visible{outline-offset:3px;outline:2px solid #ffe7ad}.capture-sr-only{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.capture-charm-fallback{color:#c9f7d9;background:linear-gradient(135deg,#e5ba73,#70572e);border:3px solid #ffda98;border-radius:45%;place-items:center;display:grid;position:absolute;inset:18%;box-shadow:inset 0 2px 8px #fff6}.capture-charm-fallback svg{stroke-width:1.2px;width:65%;height:65%}@keyframes capture-open{0%{opacity:0}to{opacity:1}}@media (max-height:400px){.capture-result{padding-top:8px;padding-bottom:max(8px,env(safe-area-inset-bottom));gap:8px}.capture-outcome{gap:4px}.capture-outcome>span{font-size:9px}.game-ui .capture-outcome h2{font-size:17px}.capture-outcome p{font-size:10px}.game-ui .capture-continue{min-width:140px;padding:7px 16px}}@media (max-height:350px){.capture-outcome{gap:3px}.capture-outcome>span{font-size:8px}.game-ui .capture-outcome h2{font-size:15px}.capture-outcome p{font-size:9px}}@media (prefers-reduced-motion:reduce){.game-ui dialog.capture-ritual{animation:none}.capture-camera,.capture-charm-motion,.capture-creature,.capture-element-wisps>img{will-change:auto}}
.game-ui dialog.hatch-reveal{box-shadow:none;width:100%;max-width:none;height:100dvh;max-height:none;padding:max(16px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));color:#f7efdc;background:radial-gradient(#223f38,#091714 75%);border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow:hidden}.game-ui dialog.hatch-reveal[open]{text-align:center;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;display:grid}.game-ui dialog.hatch-reveal::backdrop{background:#07110f}.hatch-reveal-vignette{pointer-events:none;background:radial-gradient(#0000 25%,#020b0999);position:absolute;inset:0}.hatch-reveal-heading,.hatch-reveal-footer{z-index:2;position:relative}.hatch-reveal-heading h1{margin:5px 0 0;font-family:Cinzel,Georgia,serif;font-size:clamp(20px,4.5vh,38px);line-height:1.2}.hatch-reveal-heading .eyebrow{color:var(--hatch-color);letter-spacing:.2em;font-size:10px}.hatch-reveal-stage{isolation:isolate;place-items:center;min-height:0;display:grid;position:relative}.hatch-reveal-halo{aspect-ratio:1;background:radial-gradient(ellipse,var(--hatch-color),transparent 67%);filter:blur(14px);border-radius:50%;width:min(70vw,65vh);max-height:100%;position:absolute}.hatch-reveal-ground{filter:blur(10px);background:#0006;border-radius:50%;width:min(50vw,48vh);height:10%;position:absolute;bottom:5%}.hatch-reveal-egg,.hatch-reveal-monster{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hatch-reveal-egg .fusion-egg-art{aspect-ratio:1;max-height:280px;filter:drop-shadow(0 0 16px var(--hatch-color));width:auto!important;height:85%!important}.hatch-reveal-cracks{filter:drop-shadow(0 0 7px #fff8cc);background:linear-gradient(114deg,#0000 44%,#fff6c4 48%,#0000 52%) 45% 10%/35% 60% no-repeat,linear-gradient(62deg,#0000 44%,#fff6c4 48%,#0000 52%) 65% 65%/40% 55% no-repeat;width:min(100px,18vh);height:55%;max-height:140px;position:absolute}.hatch-reveal-monster{padding:0 max(8px,5vw)}.hatch-reveal-monster .screen-portrait{justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex;width:min(62vw,62vh)!important;height:100%!important}.hatch-reveal-monster .screen-portrait svg{max-width:100%;max-height:100%}.hatch-reveal-bloom{mix-blend-mode:screen;width:min(80vw,90vh);height:100%;margin:auto;position:absolute;inset:0}.hatch-reveal-footer{flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:90px;display:flex}.hatch-reveal-footer p{color:#d2dace;margin:0;font-size:12px}.hatch-reveal-identity{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.hatch-reveal-footer>.primary{min-width:180px;min-height:42px}.hatch-reveal-error{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.hatch-reveal-error p{flex-basis:100%}@media (max-height:430px) and (orientation:landscape){.game-ui dialog.hatch-reveal{padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom));gap:4px}.hatch-reveal-heading h1{font-size:22px}.hatch-reveal-footer{gap:7px;min-height:77px}.hatch-reveal-footer>.primary{min-height:36px}.hatch-reveal-identity{gap:8px}}
.sanctuary-wardens{z-index:12;right:max(24px,env(safe-area-inset-right));bottom:max(157px,calc(env(safe-area-inset-bottom) + 145px));color:#efd79b;text-align:left;touch-action:manipulation;border-radius:12px;align-items:center;gap:9px;min-height:48px;padding:6px 13px;display:flex;position:absolute}.sanctuary-wardens>.game-icon{width:27px;height:27px}.sanctuary-wardens>span{flex-direction:column;gap:2px;display:flex}.sanctuary-wardens strong{letter-spacing:.07em;font-size:11px}.sanctuary-wardens small{color:#cbd7be;font-size:10px}.sanctuary-seal-sockets{gap:4px;display:flex}.sanctuary-seal-sockets i{background:#18332d;border:1px solid #c9b77d77;border-radius:50%;width:6px;height:6px}.sanctuary-seal-sockets .earned{background:#f1cd80;border-color:#ffdfa4;box-shadow:0 0 5px #f2cd7c55}.sanctuary-wardens.champion,.sanctuary-portrait.champion-crest{border-color:#f0d18c;box-shadow:0 0 13px #ebc26b44,inset 0 0 8px #f0d18c33}.game-ui.warden-screen{z-index:45;isolation:isolate;background:#12362b;position:fixed;inset:0;overflow:hidden}.warden-scenery{z-index:-2;background-position:50% 55%;background-size:cover;position:absolute;inset:0}.warden-scenery:after{content:"";background:linear-gradient(#092b23b3,#0000 45%,#092b23ed),linear-gradient(90deg,#102d2144,#0000 45%,#102d2380);position:absolute;inset:0}.warden-shell{max-width:1500px;height:100%;padding:max(12px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));flex-direction:column;gap:10px;margin:auto;display:flex}.warden-header{flex:none;align-items:center;gap:11px;min-height:46px;display:flex}.game-ui .warden-header h1{color:#ffedbe;text-shadow:0 2px 5px #18372d;font:600 23px/1.2 Cinzel,Georgia,serif}.warden-header .eyebrow{color:#d4d3af;font-size:9px}.warden-seals{align-items:center;gap:7px;margin-left:auto;display:flex}.warden-seals>span{color:#91a38d;background:#16352dc9;border:1px solid #c5c4a144;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.warden-seals>span.earned{color:#ffe4a2;background:#86744b66;border-color:#edcc7e}.warden-seals svg{width:15px;height:15px}.warden-seals b{color:#eed69c;font-size:12px}.warden-level{color:#e1d5ac;white-space:nowrap;border-left:1px solid #d9c99b44;padding-left:10px;font-size:11px}.warden-layout{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,39%);gap:20px;min-height:0;display:grid}.warden-map{min-width:0;min-height:0;position:relative}.warden-map-caption{text-shadow:0 2px 4px #162e24;pointer-events:none;position:absolute;top:0;left:0}.warden-map-caption>span{letter-spacing:.12em;text-transform:uppercase;color:#fff1ce;font-size:11px}.warden-map-caption p{color:#e4e9d2;max-width:36ch;margin-top:4px;font-size:11px}.warden-connections{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.warden-connections path{fill:none;stroke:#edd5a566;stroke-width:1.5px;stroke-dasharray:3 7;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px #0c2c21)}.game-ui .warden-region{color:#f6eacf;text-align:center;text-shadow:0 1px 3px #11281f;background:0 0;flex-direction:column;align-items:center;gap:5px;width:145px;max-width:30%;padding:0;display:flex;position:absolute;transform:translate(-50%,-35%)}.warden-region-symbol{border:1px solid var(--region-color);width:45px;height:45px;color:var(--region-color);background:linear-gradient(145deg,#3c5146,#112c26);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 3px 8px #092b2499,inset 0 1px #fff2}.warden-region-symbol>svg{width:22px;height:22px}.warden-region.selected .warden-region-symbol{border:2px solid #fff0bd;box-shadow:0 0 0 4px #f4d39033,0 0 20px #edcc7e44}.warden-region.cleared .warden-region-symbol{background:linear-gradient(145deg,#867646,#3c4c30)}.warden-region strong{background:#12362bd9;border-radius:5px;padding:3px 6px;font-size:12px;line-height:1.15}.warden-region small{color:#f0dfb4;background:#12362bc9;border-radius:4px;padding:2px 5px;font-size:10px}.warden-region .warden-marker-state{color:#f6d994;background:#17372b;border:1px solid #d5bd7c;border-radius:50%;width:16px;height:16px;padding:2px;position:absolute;bottom:-3px;right:-5px}.warden-head-marker .warden-region-symbol{width:55px;height:55px}.warden-detail{background:linear-gradient(135deg,#234336ed,#0f3027f5);border:1px solid #e4cea966;border-radius:15px;flex-direction:column;gap:10px;min-width:0;min-height:0;padding:17px;display:flex;box-shadow:0 10px 25px #09251f44,inset 0 1px #fff1}.warden-region-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.warden-region-heading .eyebrow{color:var(--warden-tint);font-size:9px}.warden-region-heading>span:last-child{color:#c4d1b8;white-space:nowrap;font-size:9px}.warden-trainer-tabs{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.warden-trainer-tabs.single{grid-template-columns:1fr}.game-ui .warden-trainer-tabs button{color:#cbd5bc;text-align:left;background:#12372acc;border:1px solid #d0bc7c33;border-radius:9px;align-items:center;gap:5px;min-width:0;min-height:48px;padding:7px 5px;display:flex}.game-ui .warden-trainer-tabs button[aria-pressed=true]{color:#fff0bf;background:#73663b55;border-color:#e6c77f}.warden-trainer-tabs button>span:not(.warden-trainer-crest){flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.warden-trainer-tabs small{white-space:nowrap;font-size:8px}.warden-trainer-tabs strong{text-overflow:ellipsis;font-size:11px;overflow:hidden}.warden-trainer-tabs button>svg{flex:none}.warden-trainer-crest{width:29px;height:32px;color:var(--warden-tint,#efd296);background:linear-gradient(#5f705144,#092d23);border:1px solid #d4bd7b66;border-radius:50% 50% 35% 35%;flex:none;place-items:center;display:grid;position:relative}.warden-trainer-crest>svg{opacity:.7;width:20px;height:20px}.warden-trainer-crest>b{color:#ffe8ab;background:#244132;border:1px solid #bba46977;border-radius:50%;place-items:center;width:13px;height:13px;font-size:8px;display:grid;position:absolute;bottom:-2px;right:-1px}.warden-trainer-crest>img{-o-object-fit:cover;object-fit:cover;border-radius:inherit;width:100%;height:100%}.warden-trainer-heading{align-items:baseline;gap:9px;min-width:0;display:flex}.game-ui .warden-trainer-heading h2{color:#ffedba;font:600 25px/1.1 Cinzel,Georgia,serif}.warden-trainer-heading>span{color:#becdb1;font-size:10px;line-height:1.3}.warden-hint{color:#dae3c9;font-size:12px;line-height:1.4}.warden-roster{flex:1;gap:7px;min-height:0;display:flex}.game-ui .warden-roster>button{color:#eee3c6;background:#b7c37e08;border:1px solid #d4bd7b22;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;padding:4px 2px;display:flex}.warden-monster-art{flex:1;width:100%;min-height:0;max-height:180px;display:block}.warden-roster strong{text-align:center;overflow-wrap:anywhere;max-width:100%;font-size:10px;line-height:1.2}.warden-roster button>span:last-child{white-space:nowrap;flex:none;justify-content:center;align-items:center;gap:2px;display:flex}.warden-roster .monster-tier-badge{margin:0;padding:1px 4px;font-size:8px}.warden-talent{color:#efd28b;letter-spacing:-1px;font-size:11px}.warden-trial-reward{color:#dccd9b;border-top:1px solid #d4bd7b33;flex:none;align-items:center;gap:6px;padding:6px 0;font-size:10px;line-height:1.35;display:flex}.warden-trial-reward>svg{color:#e5c47d;flex:none}.warden-challenge{flex-direction:column;flex:none;gap:5px;display:flex}.warden-challenge>span{color:#c6d4ba;text-align:center;font-size:10px}.warden-challenge>.primary{width:100%;min-height:44px;font-size:12px}.warden-footer{flex:none;align-items:center;gap:14px;min-height:45px;display:flex}.warden-footer>span{color:#d3dfc3;margin-left:auto;font-size:11px}.warden-footer .art-small{width:40px;height:40px}.warden-footer .mini-team{gap:7px}.warden-footer .mini-team>.label{font-size:10px}.warden-footer .secondary{min-height:40px;padding:7px 12px;font-size:11px}.game-ui dialog.warden-dialogue{width:min(900px,100vw - 26px);max-width:none}.warden-dialogue .dialog-body{padding:18px}.warden-dialogue-layout{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:24px;min-height:190px;display:grid}.warden-speaker-art{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.warden-speaker-art .warden-trainer-crest{color:#e4c67e;width:115px;height:125px}.warden-speaker-art .warden-trainer-crest>svg{width:70px;height:70px}.warden-speaker-art .warden-trainer-crest>b{width:30px;height:30px;font-size:17px}.warden-speaker-art>strong{color:#ffe2a2;font:600 20px Cinzel,Georgia,serif}.warden-speaker-art>span:last-child{color:#c6d5b7;font-size:10px;line-height:1.3}.warden-dialogue-copy{flex-direction:column;gap:14px;min-width:0;display:flex}.warden-dialogue-copy .eyebrow{align-items:center;gap:5px;font-size:11px;display:flex}.warden-dialogue-copy>p{color:#faf0d1;font:400 clamp(15px,2vw,19px)/1.6 Georgia,serif}.warden-dialogue-reward{color:#eddbab;border-top:1px solid #d4bd7b44;align-items:center;gap:7px;padding:10px;font-size:11px;display:flex}.warden-dialogue-reward>svg{flex:none}.warden-dialogue-error{color:#f5bca0;font-size:11px}.warden-dialogue-progress{color:#c4d3b8;margin-right:auto;font-size:11px}.warden-inspect-layout{grid-template-columns:minmax(160px,.8fr) 1.2fr;gap:22px;display:grid}.warden-inspect-art{height:130px}.warden-inspect-layout .detail-stats{margin-top:12px}.warden-inspect-skills{color:#d1dfc5;flex-direction:column;gap:9px;font-size:11px;display:flex}.warden-inspect-skills p{flex-direction:column;gap:2px;display:flex}.warden-inspect-skills b{color:#f0dca7}.warden-inspect-skills small{color:#c2cdae;font-size:9px}@media (max-height:540px){.warden-shell{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(6px,env(safe-area-inset-bottom));gap:7px}.warden-header{min-height:40px}.warden-header .icon-button{width:38px;height:38px}.game-ui .warden-header h1{font-size:19px}.warden-header .eyebrow{font-size:8px}.warden-layout{grid-template-columns:minmax(0,1fr) minmax(300px,40%);gap:12px}.warden-detail{gap:7px;padding:12px}.warden-trainer-tabs button{min-height:43px;padding:5px}.warden-trainer-crest{width:24px;height:28px}.warden-trainer-crest>svg{width:17px;height:17px}.warden-trainer-tabs small{font-size:7px}.warden-trainer-tabs strong{font-size:10px}.game-ui .warden-trainer-heading h2{font-size:20px}.warden-hint{font-size:11px}.warden-monster-art{max-height:100px}.warden-roster strong{font-size:9px}.warden-trial-reward{padding:4px 0;font-size:9px}.warden-challenge>span{font-size:9px}.warden-challenge>.primary,.warden-footer{min-height:40px}.warden-footer .art-small{width:34px;height:34px}.warden-footer>span{font-size:10px}.warden-region-symbol{width:37px;height:37px}.warden-region-symbol>svg{width:19px;height:19px}.warden-head-marker .warden-region-symbol{width:44px;height:44px}.warden-region strong{font-size:10px}.warden-region small{font-size:9px}.game-ui .warden-region{gap:3px}.warden-map-caption>span,.warden-map-caption p{font-size:9px}.warden-dialogue-layout{grid-template-columns:140px minmax(0,1fr);gap:20px;min-height:160px}.warden-dialogue-copy>p{font-size:16px;line-height:1.5}.warden-speaker-art .warden-trainer-crest{width:84px;height:90px}.warden-speaker-art .warden-trainer-crest>svg{width:50px;height:50px}.warden-speaker-art>strong{font-size:18px}}@media (max-height:400px){.warden-detail{gap:5px;padding:9px}.warden-region-heading{display:none}.warden-trainer-heading>span{font-size:9px}.warden-hint{font-size:10px}.warden-roster{gap:4px}.warden-monster-art{max-height:68px}.warden-trial-reward{font-size:8px}.warden-footer>span{display:none}.warden-footer .secondary{margin-left:auto}.warden-challenge>.primary{min-height:38px}.warden-seals{gap:4px}.warden-seals>span{width:25px;height:25px}.warden-level{font-size:10px}.warden-map-caption p{display:none}.warden-dialogue .dialog-body{padding:10px 16px}.warden-dialogue-layout{grid-template-columns:110px minmax(0,1fr);gap:16px;min-height:135px}.warden-dialogue-copy{gap:9px}.warden-dialogue-copy>p{font-size:15px;line-height:1.4}.warden-speaker-art .warden-trainer-crest{width:65px;height:72px}.warden-speaker-art .warden-trainer-crest>svg{width:40px;height:40px}.warden-speaker-art>strong{font-size:16px}.warden-dialogue-reward{padding:7px;font-size:10px}.warden-speaker-art{gap:5px}}@media (max-width:740px){.warden-shell{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.warden-layout{grid-template-columns:minmax(0,1fr) 290px;gap:8px}.warden-level{display:none}.warden-trainer-tabs button{gap:3px}.warden-trainer-tabs .warden-trainer-crest{width:20px;height:24px}.warden-region strong{font-size:9px}.warden-region small{font-size:8px}.warden-region-symbol{width:33px;height:33px}.warden-head-marker .warden-region-symbol{width:39px;height:39px}.warden-roster .monster-tier-badge{padding:1px 3px;font-size:7px}.warden-roster .warden-talent{font-size:9px}.warden-footer .mini-team>.label{display:none}.warden-trainer-heading{gap:5px}.warden-map-caption>span{font-size:8px}}@media (max-height:350px){.warden-header .eyebrow,.warden-trainer-heading>span{display:none}.warden-header{min-height:34px}.warden-header .icon-button{width:34px;height:32px}.game-ui .warden-header h1{font-size:17px}.warden-shell{gap:5px}.warden-trainer-tabs button{min-height:37px}.warden-roster strong{font-size:8px}.warden-monster-art{max-height:48px}.warden-trial-reward{padding:2px 0;font-size:8px}.warden-challenge>span{font-size:8px}.warden-challenge>.primary,.warden-footer,.warden-footer .secondary{min-height:34px}.warden-footer .art-small{width:28px;height:28px}.warden-detail{gap:4px;padding:7px}.warden-hint{font-size:9px}.game-ui .warden-trainer-heading h2{font-size:17px}.warden-region-symbol{width:29px;height:29px}.warden-region strong{font-size:8px}.warden-region small{font-size:7px}}@media (max-height:390px){.sanctuary-wardens{bottom:max(136px,calc(env(safe-area-inset-bottom) + 124px));min-height:42px;padding:5px 11px}.sanctuary-wardens>.game-icon{width:23px;height:23px}.sanctuary-wardens strong{font-size:10px}.sanctuary-wardens small{font-size:9px}}@media (max-height:430px) and (orientation:landscape){.warden-hint{display:none}.warden-map-caption p{max-width:38ch;font-size:9px;line-height:1.35;display:block}.warden-trial-reward{font-size:9px}}@media (orientation:portrait){.warden-layout{grid-template-rows:minmax(180px,.8fr) minmax(0,1fr);grid-template-columns:1fr}.warden-header h1{font-size:17px}.warden-seals>span{width:20px;height:20px}.warden-seals{gap:3px}.warden-detail{gap:6px;padding:10px}.warden-region-heading,.warden-map-caption,.warden-footer .mini-team>.label,.warden-footer>span{display:none}.warden-dialogue-layout{grid-template-columns:75px minmax(0,1fr);gap:12px}.warden-speaker-art .warden-trainer-crest{width:60px;height:70px}.warden-dialogue-copy>p{font-size:15px}}
.demo-game-root{width:100%;height:100dvh;overflow:hidden}.game-command-feedback{left:50%;bottom:max(8px,env(safe-area-inset-bottom));z-index:160;color:#f8edcf;pointer-events:none;background:#102a24f2;border:1px solid #c6a86b88;border-radius:12px;align-items:center;gap:9px;max-width:calc(100vw - 32px);padding:9px 15px;font:600 12px Inter,sans-serif;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 4px 20px #0006}.game-command-feedback i{border:2px solid #c6a86b44;border-top-color:#f1d598;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:1s linear infinite command-confirm-spin}.game-command-feedback small{color:#d4bfa1;margin-top:3px;font-size:10px;font-weight:400;display:block}@keyframes command-confirm-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.game-command-feedback i{animation:none}}.demo-conflict-block{z-index:150;color:#f5e8c9;background:#071910ed;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.demo-auth-screen{color:#f5e8c9;background:linear-gradient(#071d19bb,#06130ff0),url(/backgrounds/sanctuary-v1.webp) 50%/cover;justify-content:center;align-items:center;height:100dvh;padding:16px;font-family:Inter,sans-serif;display:flex;overflow:auto}.demo-auth-card{background:#102d25f5;border:1px solid #c4a86b77;border-radius:18px;width:min(480px,100%);max-height:100%;padding:24px;overflow:auto;box-shadow:0 15px 70px #0008}.demo-auth-card h1{margin:8px 0 16px;font:600 25px Cinzel,Georgia,serif}.demo-auth-card p{margin:10px 0;font-size:13px;line-height:1.6}.demo-auth-card small{color:#c8bc9d;font-size:11px}.demo-auth-card label{gap:5px;margin:10px 0;font-size:12px;display:grid}.demo-auth-card input{color:#fff;background:#081e19;border:1px solid #ccb87b66;border-radius:7px;width:100%;padding:10px}.demo-auth-card button,.demo-toolbar-panel button{color:#f8edcf;cursor:pointer;background:#2b4c39;border:1px solid #d3b76b66;border-radius:8px;padding:9px 12px;font:600 12px Inter,sans-serif}.demo-auth-card .demo-primary{color:#183227;background:#d1ac65;width:100%;margin-top:10px}.demo-login-tabs{gap:8px;display:flex}.demo-login-tabs button{flex:1}.demo-login-tabs button[aria-pressed=true]{color:#142d24;background:#b59154}.demo-auth-card button:disabled,.demo-toolbar button:disabled{opacity:.5;cursor:default}.demo-toolbar{left:50%;top:max(4px,env(safe-area-inset-top));z-index:130;color:#f8edcf;font:11px Inter,sans-serif;position:fixed;transform:translate(-50%)}.demo-toolbar-toggle{color:inherit;white-space:nowrap;cursor:pointer;background:#102a24ee;border:1px solid #c6a86b88;border-radius:14px;padding:4px 10px}.demo-sync{color:#accca8;margin-left:6px;font-size:9px}.demo-sync.error,.demo-sync.conflict{color:#ffc09d}.demo-toolbar-panel{background:#102a24fa;border:1px solid #c6a86b88;border-radius:12px;flex-direction:column;gap:7px;width:min(340px,100vw - 24px);max-height:calc(100dvh - 48px);padding:14px;display:flex;position:absolute;top:calc(100% + 6px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 8px 35px #0009}.demo-toolbar-panel p{margin:0;font-size:11px;line-height:1.5}.demo-toolbar-panel small{color:#d4bfa1;font-size:10px}.demo-reset-confirm{border:1px solid #dc986e88;border-radius:8px;gap:6px;padding:9px;display:grid}.demo-busy-block{z-index:125;cursor:wait;background:#00140b55;position:fixed;inset:0}@media (max-height:430px){.demo-auth-card{width:min(560px,100%);padding:16px}.demo-auth-card h1{margin-bottom:8px;font-size:20px}.demo-auth-card p{margin:6px 0;font-size:11px}.demo-auth-card label{margin:6px 0}.demo-toolbar-panel{gap:5px;padding:10px}}
.login-install-prompt{border-top:1px solid #c4a86b44;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:12px;font-size:12px;display:flex}.login-install-prompt span,.login-install-prompt button{align-items:center;gap:7px;display:flex}.install-instructions.screen-modal{width:min(580px,calc(100vw - max(16px,env(safe-area-inset-left)) - max(16px,env(safe-area-inset-right))));max-height:calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)));color:#f5e8c9}.install-instructions .dialog-body{font-size:14px;line-height:1.65;overflow:auto}.install-instructions h3{color:#f3d79b;align-items:center;gap:8px;margin:14px 0 6px;font-size:15px;display:flex}.install-instructions ol{margin:8px 0 14px;padding-left:24px;list-style:decimal}.install-instructions li{margin:5px 0;padding-left:3px}.install-instructions strong svg{vertical-align:middle;display:inline}.install-note{color:#d2c6a8;background:#c4a86b0d;border-left:2px solid #c4a86b88;margin-top:14px;padding:8px 12px;font-size:12px}.install-reminder{z-index:120;width:min(360px,calc(100vw - 2 * max(20px,env(safe-area-inset-left),env(safe-area-inset-right))));color:#f5e8c9;background:#102d25f5;border:1px solid #c4a86b99;border-radius:14px;align-items:flex-start;gap:12px;padding:18px;font:13px/1.5 Inter,sans-serif;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 45px #0008}.install-reminder>svg{color:#ddbf80;flex-shrink:0}.install-reminder strong,.install-reminder span{display:block}.install-reminder span{color:#d2c6a8;margin:5px 0 12px;font-size:12px}.install-reminder button{color:#f5e8c9;cursor:pointer;background:#304e3c;border:1px solid #c4a86b88;border-radius:7px;padding:7px 12px}.install-reminder .install-dismiss{background:0 0;border:0;flex-shrink:0;padding:3px}@media (max-height:430px){.login-install-prompt{margin-top:10px;padding-top:8px;font-size:11px}.install-instructions .dialog-body{font-size:12px;line-height:1.5}.install-instructions h3{margin-top:8px}.install-instructions li{margin:3px 0}.install-note{margin-top:8px;font-size:11px}}@media (max-width:380px){.login-install-prompt{flex-direction:column;align-items:flex-start}}
