:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#102422;--ink:#102422;--ink-soft:#2e4a44;--paper:#e9ddc3;--panel:#fdf5debd;--line:#1024222e;--gold:#e2b877;--mint:#b9ce96;--ember:#ef6c4f;background:#e9ddc3;font-family:Avenir Next,Trebuchet MS,Verdana,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button{font:inherit}.shell{background:radial-gradient(circle at 8% 10%,#36d6a452,#0000 24rem),radial-gradient(circle at 92% 18%,#ef6c4f47,#0000 22rem),linear-gradient(135deg,#f0e4ca 0%,#d8c094 48%,#122825 49%,#102422 100%);min-height:100vh;padding:clamp(18px,3vw,42px)}.hero{justify-content:space-between;align-items:end;gap:18px;max-width:1440px;margin:0 auto 18px;display:flex}.eyebrow,.section-kicker{color:var(--ink-soft);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:800}.hero h1{max-width:760px;color:var(--ink);letter-spacing:-.07em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.25rem,5vw,5.8rem);line-height:.88}.seed-chip{border:1px solid var(--line);background:#fff9e8b8;border-radius:999px;gap:4px;min-width:230px;padding:14px 16px;display:grid;box-shadow:0 18px 48px #10242229}.seed-chip span,.metric span,.outcome-stamp span,.settlement span{color:#102422a3;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.seed-chip strong{font-family:Courier New,monospace;font-size:.9rem}.app-grid{grid-template-columns:minmax(220px,280px) minmax(420px,1fr) minmax(240px,330px);gap:16px;max-width:1440px;margin:0 auto;display:grid}.rail,.log-panel,.arena-panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 70px #07161529}.rail{flex-direction:column;gap:14px;min-height:520px;padding:22px;display:flex}.rail-left{border-radius:34px 12px 12px 34px}.rail-right{border-radius:12px 34px 34px 12px}.metric,.settlement,.outcome-stamp{border-top:1px solid var(--line);gap:6px;padding:16px 0;display:grid}.metric strong,.settlement strong,.outcome-stamp strong{color:var(--ink);letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,2vw,2rem)}.metric small,.settlement small{color:#102422ad;line-height:1.45}.metric.hot strong{color:#9b3e25}.outcome-stamp{margin-top:auto}.outcome-stamp[data-outcome=player] strong{color:#147858}.outcome-stamp[data-outcome=enemy] strong{color:#a54129}.arena-panel{background:linear-gradient(180deg, #102422f5, #091312f0), var(--ink);border-radius:28px;grid-template-rows:auto auto;align-content:start;display:grid;position:relative;overflow:hidden}.battle-canvas{height:auto;position:relative;overflow:hidden}.battle-loading{color:#fff7dfc2;letter-spacing:.14em;text-transform:uppercase;place-items:center;height:max(520px,62vh);min-height:520px;font-size:.82rem;font-weight:900;display:grid}.battle-mount{height:clamp(280px,48svh,460px);position:relative;overflow:hidden}.battle-canvas canvas{display:block}.battle-beat{z-index:2;color:#fff7df;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;background:radial-gradient(circle at 12% 0,#fff7df24,#0000 12rem),#050f0eb8;border:1px solid #fff7df29;border-radius:24px 8px;gap:4px;width:min(520px,100% - 36px);padding:14px 18px;display:grid;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 42px #050f0e42}.battle-beat:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;position:absolute;inset:-1px}.battle-canvas[data-beat-tone=critical] .battle-beat:before,.battle-canvas[data-beat-tone=victory] .battle-beat:before,.battle-canvas[data-beat-tone=defeat] .battle-beat:before{animation:.52s ease-out beat-flare}.battle-beat[data-tone=player]{border-color:#36d6a461}.battle-beat[data-tone=enemy],.battle-beat[data-tone=impact],.battle-beat[data-tone=death],.battle-beat[data-tone=defeat]{border-color:#ef6c4f6b}.battle-beat[data-tone=critical],.battle-beat[data-tone=victory]{background:radial-gradient(circle at 12% 0,#f0c36a3d,#0000 12rem),#050f0ec7;border-color:#f0c36a94}.battle-beat[data-tone=heal],.battle-beat[data-tone=shield]{border-color:#82c9ff6b}.battle-beat span{color:#fff7dfa8;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:900}.battle-beat strong{color:#fff7df;letter-spacing:-.05em;text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,2.8vw,2.45rem);line-height:.96;overflow:hidden}.battle-beat small{color:#fff7dfb8;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.74rem;font-weight:800;overflow:hidden}@keyframes beat-flare{0%{opacity:1;box-shadow:inset 0 0 #f0c36aa3,0 0 #f0c36a38}to{opacity:0;box-shadow:inset 0 0 0 8px #f0c36a00,0 0 0 26px #f0c36a00}}.fighter-overlays{pointer-events:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;padding:10px;display:grid;position:relative}.fighter-label{color:#fff7df;text-align:center;background:#050f0eb8;border:1px solid #ffffff2e;border-radius:14px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 8px;min-width:0;padding:8px 10px;display:grid;position:relative}.fighter-skill-list{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:5px;display:grid}.fighter-skill-chip{text-align:left;background:#fff7df12;border:1px solid #fff7df21;border-radius:9px;gap:2px;min-width:0;padding:5px 6px;display:grid}.fighter-skill-chip[data-ready=true]{background:#36d6a421;border-color:#36d6a47a}.fighter-portrait{background-position:50%;background-size:cover;border:1px solid #ffffff38;border-radius:12px;grid-row:span 3;width:34px;height:34px;display:block;box-shadow:inset 0 0 18px #ffffff14}.fighter-label[data-team=player]{grid-area:1/1/span 3}.fighter-label[data-team=enemy]{grid-column:2}.fighter-label strong{font-size:.75rem}.fighter-skill-chip strong{color:#fff7df;font-size:.62rem}.fighter-label span,.fighter-label em,.fighter-skill-chip small{color:#fff7dfb8;font-size:.66rem;font-style:normal}.fighter-label strong,.fighter-label span,.fighter-label em,.fighter-skill-chip strong,.fighter-skill-chip small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fighter-defense{align-items:center;gap:7px;display:flex}.fighter-defense[data-guarded=true]>span{color:#b9e9ed;font-weight:700}.controls{background:#fff7df14;border-top:1px solid #ffffff1a;flex-wrap:wrap;align-content:start;align-items:center;gap:10px;padding:14px;display:flex}.controls button{color:#fff7df;cursor:pointer;background:#fff7df14;border:1px solid #fff7df33;border-radius:999px;min-height:42px;padding:0 16px;transition:transform .16s,background .16s}.controls button:hover{background:#fff7df2e;transform:translateY(-1px)}.controls button:disabled{cursor:not-allowed;opacity:.46;transform:none}.controls .primary{background:var(--gold);color:#1f1710;border-color:#0000;margin-left:auto;font-weight:800}.protocol-list{counter-reset:protocol;gap:12px;margin:0;padding:0;list-style:none;display:grid}.protocol-list li{color:var(--ink);counter-increment:protocol;grid-template-columns:34px 1fr;align-items:center;gap:10px;line-height:1.25;display:grid}.protocol-list li:before{content:counter(protocol);color:#fff7df;background:#102422;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.settlement{margin-top:auto}.log-panel{border-radius:24px;grid-column:1/-1;grid-template-columns:minmax(220px,.72fr) minmax(0,1fr);gap:18px;padding:20px;display:grid}.log-panel h2{color:var(--ink);letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,3vw,2.45rem);line-height:1}.log-detail{color:#102422b8;max-width:520px;margin:10px 0 0;line-height:1.45}.replay-progress{gap:8px;margin-top:16px;display:grid}.replay-progress>span{color:#1024229e;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.replay-progress-track{background:#1024221f;border-radius:999px;height:9px;overflow:hidden}.replay-progress-track i{border-radius:inherit;background:linear-gradient(90deg, var(--mint), var(--gold), var(--ember));height:100%;transition:width .18s;display:block}.log-list{gap:8px;display:grid}.log-list p,.log-empty{color:#102422c7;margin:0;line-height:1.35}.log-entry{background:#fff9e85c;border:1px solid #10242214;border-radius:14px;padding:8px 10px}.log-entry[data-tone=player]{background:#36d6a41f;border-color:#1478582e}.log-entry[data-tone=enemy],.log-entry[data-tone=death]{background:#ef6c4f1f;border-color:#a541292e}.log-entry[data-tone=status],.log-entry[data-tone=item],.log-entry[data-tone=relic]{background:#d49a451f;border-color:#7b5b222e}.log-entry[data-tone=round]{background:#10242214}.log-entry>span{vertical-align:middle;min-width:42px;height:24px;color:var(--ink);background:#1024221a;border-radius:999px;justify-content:center;place-items:center;margin-right:8px;font-size:.72rem;font-weight:900;display:inline-flex}@media (width<=1080px){.hero{flex-direction:column;align-items:stretch}.app-grid{grid-template-columns:1fr}.rail,.rail-left,.rail-right,.arena-panel,.log-panel{border-radius:26px;min-height:auto}.rail{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rail .section-kicker,.outcome-stamp,.settlement{grid-column:1/-1}.route-board{grid-template-columns:1fr}.route-dossier{order:-1}.battle-loading{height:max(460px,58vh);min-height:460px}}@media (width<=680px){.shell{padding:14px}.hero h1{font-size:clamp(2.2rem,18vw,4rem)}.rail,.log-panel{grid-template-columns:1fr;padding:16px}.controls .primary{margin-left:0}.route-stage{padding:20px}.route-row{grid-template-columns:1fr}.route-row-label{min-height:auto}.route-row-nodes{grid-template-columns:1fr}}.outcome-stamp[data-outcome=win] strong{color:#147858}.outcome-stamp[data-outcome=loss] strong{color:#a54129}.outcome-stamp[data-outcome=route] strong{color:#7b5b22}.route-stage{color:#fff7df;background:radial-gradient(circle at 22% 18%,#36d6a42e,#0000 18rem),radial-gradient(circle at 82% 80%,#ef6c4f33,#0000 20rem),linear-gradient(150deg,#102422f5,#071211fa);align-content:start;gap:20px;min-height:0;padding:clamp(20px,4vw,58px);display:grid}.route-stage .section-kicker{color:#fff7dfa8}.route-stage h2{letter-spacing:-.06em;max-width:720px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,4.4rem);line-height:.94}.route-stage p{color:#fff7dfb8;max-width:680px;margin:0;line-height:1.6}.route-stage .soft-copy{color:#fff7dfb3}.route-board{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;min-height:0;display:grid}.route-map{gap:12px;max-height:min(460px,54vh);padding-right:4px;display:grid;overflow:auto}.route-choice-deck{align-content:start;gap:14px;min-height:0;display:grid}.route-choice-header{background:radial-gradient(circle at 12% 0,#d7f28a24,#0000 14rem),#fff7df12;border:1px solid #fff7df24;border-radius:24px 12px;justify-content:space-between;align-items:end;gap:12px;padding:14px 16px;display:flex}.route-choice-header div{gap:4px;display:grid}.route-choice-header span,.route-choice-header small,.route-progress>span,.route-progress-row small{color:#fff7dfa8;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:900}.route-choice-header strong{color:#fff7df;letter-spacing:-.05em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2.8vw,2.4rem);line-height:.95}.route-row{grid-template-columns:92px minmax(0,1fr);align-items:stretch;gap:10px;display:grid}.route-row-label{background:#fff7df0f;border:1px solid #fff7df1f;border-radius:18px;align-content:center;gap:4px;min-height:108px;padding:10px;display:grid}.route-row-label span,.route-row-label small,.route-node span,.route-node small,.route-node em,.route-dossier span,.route-dossier small{color:#fff7dfa8;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-style:normal;font-weight:900}.route-row-label span{color:#fff7df}.route-row-nodes{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.route-current-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}.route-progress{background:#0614133d;border:1px solid #fff7df1c;border-radius:18px;gap:10px;padding:14px;display:grid}.route-progress-rows{gap:7px;display:grid}.route-progress-row{grid-template-columns:82px minmax(0,1fr);align-items:center;gap:8px;display:grid}.route-progress-dots{flex-wrap:wrap;gap:5px;display:flex}.route-progress-dots i{background:#fff7df1c;border:1px solid #fff7df24;border-radius:999px;width:12px;height:12px;display:block}.route-progress-dots i[data-tone=fight],.route-progress-dots i[data-tone=elite]{background:#ef6c4fb3}.route-progress-dots i[data-tone=boss]{background:#f0c36a;box-shadow:0 0 14px #f0c36a59}.route-progress-dots i[data-tone=rest],.route-progress-dots i[data-tone=shrine]{background:#36d6a4b8}.route-progress-dots i[data-tone=shop],.route-progress-dots i[data-tone=event]{background:#d49a45c7}.route-progress-dots i.current{outline-offset:2px;outline:2px solid #fff7dfb8}.route-progress-dots i.reachable{transform:scale(1.18)}.route-progress-dots i.visited:not(.current){opacity:.82}.route-progress-dots i.hidden{opacity:.46;background:#fff7df0d;border-style:dashed}.reward-list{gap:10px;display:grid}.route-node{color:#fff7df;text-align:left;cursor:pointer;background:linear-gradient(#fff7df14,#fff7df0a),#06141352;border:1px solid #fff7df24;border-radius:20px;align-content:start;gap:6px;width:100%;min-height:108px;padding:12px;transition:border-color .16s,background .16s,transform .16s;display:grid;position:relative}.route-node:before{content:"";background:#fff7df57;border-radius:999px;width:8px;height:8px;position:absolute;inset:8px auto auto 8px}.route-node[data-tone=fight]:before,.route-node[data-tone=elite]:before{background:var(--ember)}.route-node[data-tone=boss]:before{background:#f0c36a;box-shadow:0 0 18px #f0c36a66}.route-node[data-tone=rest]:before,.route-node[data-tone=shrine]:before{background:var(--mint)}.route-node[data-tone=shop]:before,.route-node[data-tone=event]:before{background:var(--gold)}.route-node strong{color:#fff7df;letter-spacing:-.04em;text-overflow:ellipsis;max-width:100%;font-family:Georgia,Times New Roman,serif;font-size:1.08rem;line-height:1.02;overflow:hidden}.route-node small,.route-node em{line-height:1.25}.route-node:hover:not(:disabled),.route-node.reachable{background:radial-gradient(circle at 8% 0,#d7f28a2e,#0000 12rem),#fff7df14;border-color:#d7f28a6b}.route-node:hover:not(:disabled){transform:translateY(-1px)}.route-node.selected{background:radial-gradient(circle at 12% 0,#d7f28a42,#0000 12rem),#d7f28a1f;border-color:#d7f28ad1}.route-node.current{border-color:#36d6a49e}.route-node.visited:not(.current){opacity:.72}.route-node.hidden{opacity:.48;border-style:dashed}.route-node:disabled{cursor:not-allowed}.route-dossier{background:radial-gradient(circle at 20% 0,#36d6a41f,#0000 14rem),#fff7df14;border:1px solid #fff7df29;border-radius:24px 12px;align-self:start;gap:10px;padding:16px;display:grid}.route-dossier strong{color:#fff7df;letter-spacing:-.05em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2.4rem);line-height:.95}.route-dossier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.route-dossier-grid small{text-align:center;background:#10242247;border:1px solid #fff7df1f;border-radius:999px;padding:9px 10px}.reward-choice{color:#fff7df;text-align:left;cursor:pointer;background:#fff7df14;border:1px solid #fff7df29;border-radius:18px;gap:4px;width:100%;padding:12px 14px;display:grid}.reward-choice:hover:not(:disabled),.reward-choice.selected{background:#d7f28a24;border-color:#d7f28a9e}.reward-choice:disabled{cursor:not-allowed;opacity:.62}.reward-choice span{color:#fff7dfa8;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.reward-choice strong{letter-spacing:0;font-family:inherit;font-size:.95rem}.controls button.ghost{margin-left:auto}.menu-shell{background:radial-gradient(circle at 14% 16%,#36d6a457,#0000 22rem),radial-gradient(circle at 82% 78%,#ef6c4f47,#0000 22rem),linear-gradient(128deg,#102422 0%,#173a35 48%,#d8c094 49%,#f0e4ca 100%);grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:center;gap:clamp(18px,4vw,42px);min-height:100vh;padding:clamp(18px,5vw,72px);display:grid}.prep-shell{background:radial-gradient(circle at 18% 10%,#d49a454d,#0000 20rem),radial-gradient(circle at 82% 72%,#36d6a447,#0000 23rem),linear-gradient(134deg,#102422 0%,#173a35 42%,#d8c094 43%,#f0e4ca 100%);place-items:center;min-height:100vh;padding:clamp(18px,5vw,72px);display:grid}.menu-card,.profile-card,.prep-card{color:#fff7df;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#061413b8;border:1px solid #fff7df2e;box-shadow:0 28px 90px #050f0e57}.menu-card{border-radius:42px 16px;max-width:920px;padding:clamp(24px,6vw,72px)}.prep-card{border-radius:18px 46px;gap:20px;width:min(1120px,100%);padding:clamp(22px,4vw,54px);display:grid}.menu-card .eyebrow{color:#fff7dfa8}.menu-card h1,.prep-card h1{letter-spacing:-.08em;max-width:820px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,9vw,8rem);line-height:.82}.menu-card p,.prep-card>p{color:#fff7dfb8;max-width:680px;font-size:clamp(1rem,2vw,1.22rem);line-height:1.6}.prep-section{background:#fff7df12;border:1px solid #fff7df24;border-radius:26px 12px;gap:12px;padding:18px;display:grid}.prep-section-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.prep-section-title span,.loadout-choice span{color:#fff7dfa8;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.prep-section-title strong{color:var(--mint);text-transform:uppercase;font-family:Courier New,monospace;font-size:.92rem}.loadout-skill-grid,.loadout-option-row{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.loadout-choice{color:#fff7df;text-align:left;cursor:pointer;background:#10242257;border:1px solid #fff7df24;border-radius:18px;gap:7px;min-height:136px;padding:14px;display:grid}.loadout-choice.compact{min-height:118px}.loadout-choice[data-selected=true]{background:radial-gradient(circle at 10% 0,#36d6a433,#0000 12rem),#10242285;border-color:#36d6a470}.loadout-choice:hover:not(:disabled){border-color:#d49a4570}.loadout-choice:disabled{cursor:not-allowed;opacity:.48}.loadout-choice strong{color:#fff7df;letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;line-height:1}.loadout-choice small{color:#fff7dfa8;line-height:1.4}.prep-empty{color:#fff7dfa8;background:#1024223d;border:1px dashed #fff7df2e;border-radius:18px;margin:0;padding:14px;line-height:1.5}.prep-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.menu-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.menu-warning{color:#fff7dfb8;margin-top:14px;line-height:1.45;display:block}.onboarding-card{background:radial-gradient(circle at 6% 0,#36d6a433,#0000 16rem),#fff7df14;border:1px solid #36d6a447;border-radius:12px 30px;gap:14px;margin-top:28px;padding:20px;display:grid}.onboarding-card>span{color:#fff7dfa8;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.onboarding-card h2{color:#fff7df;letter-spacing:-.06em;max-width:620px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,3.2rem);line-height:.94}.onboarding-card ol{gap:10px;margin:0;padding-left:20px;display:grid}.onboarding-card li{color:#fff7dfbd;line-height:1.5}.onboarding-card li::marker{color:var(--mint);font-weight:900}.onboarding-card li strong{color:#fff7df}.onboarding-card button{color:#fff7df;cursor:pointer;background:#36d6a42e;border:1px solid #fff7df33;border-radius:999px;justify-self:start;min-height:42px;padding:0 16px}.run-end-card{background:radial-gradient(circle at 8% 0,#36d6a42e,#0000 16rem),#fff7df14;border:1px solid #fff7df2e;border-radius:28px 12px;gap:14px;margin-top:28px;padding:20px;display:grid}.run-end-card[data-outcome=loss]{background:radial-gradient(circle at 10% 0,#ef6c4f33,#0000 16rem),#fff7df14}.run-end-card>span,.xp-bank small,.skill-allocation span,.skill-allocation small{color:#fff7dfa8;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.run-end-card h2{color:#fff7df;letter-spacing:-.06em;max-width:640px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,4.2rem);line-height:.9}.run-end-copy{margin:0}.run-end-stats{flex-wrap:wrap;gap:8px;display:flex}.run-end-stats small{color:#fff7dfbd;background:#10242257;border:1px solid #fff7df29;border-radius:999px;padding:8px 10px}.xp-bank{border-top:1px solid #fff7df24;justify-content:space-between;align-items:end;gap:14px;padding-top:8px;display:flex}.xp-bank strong{color:var(--mint);letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,3vw,2.6rem)}.skill-allocation-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.skill-allocation{color:#fff7df;text-align:left;cursor:pointer;background:#fff7df14;border:1px solid #fff7df29;border-radius:18px;gap:5px;min-height:112px;padding:14px;display:grid}.skill-allocation:hover:not(:disabled){background:#36d6a424;border-color:#36d6a485}.skill-allocation strong{color:#fff7df;letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:1.32rem}.skill-allocation:disabled{cursor:not-allowed;opacity:.48}.run-end-dismiss{color:#fff7df;cursor:pointer;background:#fff7df1f;border:1px solid #fff7df33;border-radius:999px;justify-self:start;min-height:42px;padding:0 16px}.menu-actions button,.prep-actions button{color:#fff7df;cursor:pointer;background:#fff7df14;border:1px solid #fff7df33;border-radius:999px;min-height:48px;padding:0 18px}.menu-actions button.primary,.prep-actions button.primary{background:var(--gold);color:#1f1710;border-color:#0000;font-weight:900}.menu-actions button:disabled,.prep-actions button:disabled{cursor:not-allowed;opacity:.45}.profile-card{border-radius:18px 34px;gap:10px;padding:24px;display:grid}.profile-card span{color:#fff7dfa3;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:900}.profile-card strong{letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,4rem);line-height:.9}.profile-card small,.soft-copy,.reward-choice small{color:#102422ad;line-height:1.45}.profile-card small{color:#fff7dfad}.audio-toggle{color:#fff7df;cursor:pointer;background:#fff7df1a;border:1px solid #fff7df2e;border-radius:999px;min-height:38px;margin-top:8px}.audio-toggle[data-enabled=true]{background:#36d6a424;border-color:#36d6a45c}.sync-card{background:#fff7df14;border:1px solid #fff7df29;border-radius:22px 10px;gap:8px;margin-top:18px;padding:14px;display:grid}.sync-details summary{cursor:pointer;padding:12px 0}.world-card{background:#fff7df14;border:1px solid #fff7df29;border-radius:10px 22px;gap:8px;margin-top:18px;padding:14px;display:grid}.world-card[data-state=online]{background:radial-gradient(circle at 10% 0,#d49a4538,#0000 10rem),#fff7df14;border-color:#d49a456b}.world-card[data-state=offline]{border-color:#ef6c4f4d}.world-card[data-state=loading]{border-color:#36d6a457}.world-card strong{color:#fff7df;letter-spacing:0;font-family:inherit;font-size:1.22rem;line-height:1.08}.world-message{color:#36d6a4db!important}.world-error,.world-hint{color:#ffae91e6!important}.world-actions{grid-template-columns:1fr;gap:8px;display:grid}.world-actions button{color:#fff7df;cursor:pointer;background:#fff7df1a;border:1px solid #fff7df2e;border-radius:999px;min-height:38px}.world-actions button:disabled{cursor:not-allowed;opacity:.5}.sync-card[data-state=online]{background:radial-gradient(circle at 8% 0,#36d6a433,#0000 10rem),#fff7df14;border-color:#36d6a452}.sync-card[data-state=offline]{background:radial-gradient(circle at 8% 0,#ef6c4f29,#0000 10rem),#fff7df14;border-color:#ef6c4f4d}.sync-card[data-state=syncing]{border-color:#d49a455c}.sync-card strong{color:#fff7df;letter-spacing:0;font-family:inherit;font-size:1.22rem;line-height:1.08}.sync-card button{color:#fff7df;cursor:pointer;background:#fff7df1a;border:1px solid #fff7df2e;border-radius:999px;min-height:38px;margin-top:4px}.sync-card button:disabled{cursor:not-allowed;opacity:.5}.choice-settlement{margin-top:0}.feedback-tray{z-index:40;pointer-events:none;gap:10px;width:min(360px,100vw - 32px);display:grid;position:fixed;top:16px;right:16px}.feedback-toast{color:#fff7df;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;background:#061413db;border:1px solid #fff7df2e;border-radius:18px 8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:13px 14px;display:grid;box-shadow:0 18px 48px #050f0e47}.feedback-toast[data-tone=success]{border-color:#36d6a473}.feedback-toast[data-tone=warning]{border-color:#d49a4580}.feedback-toast[data-tone=danger]{border-color:#ef6c4f85}.feedback-toast strong{font-size:.9rem;display:block}.feedback-toast small{color:#fff7dfb3;margin-top:4px;line-height:1.35;display:block}.feedback-toast button{color:#fff7df9e;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;font-size:.7rem;font-weight:900}.feedback-tray:has(.app-update-toast){top:calc(max(24px, env(safe-area-inset-top)) + 64px);bottom:auto;right:max(12px, env(safe-area-inset-right))}.app-update-toast{background:#14271e;border-color:#e2b87780;grid-template-columns:minmax(0,1fr);gap:8px}.update-toast-actions{gap:8px;display:flex}.update-toast-actions button{letter-spacing:0;text-transform:none;color:#f0e7d4;border-radius:7px;min-width:44px;min-height:44px;padding:8px 12px;font-size:.78rem;font-weight:600}.update-toast-actions button:first-child{background:var(--gold);color:#14271e;flex:1}.update-toast-actions button:disabled{opacity:.55;cursor:default}.update-toast-actions button:focus-visible{outline-offset:2px;outline:2px solid #f0e7d4}.combat-tactics{background:radial-gradient(circle at 12% 0,#36d6a429,#0000 12rem),#10242214;border:1px solid #10242224;border-radius:20px;gap:10px;padding:14px;display:grid}.combat-tactics>span{color:#102422a8;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.combat-tactics>small,.tactics-empty{color:#102422ad;line-height:1.4}.tactic-group{gap:8px;display:grid}.tactic-group>strong{color:#102422c7;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.tactic-group>small{color:#1024229e;line-height:1.35}.tactic-choice{color:var(--ink);background:#10242214;border-color:#10242224}.tactic-choice:hover:not(:disabled){background:#36d6a429;border-color:#1478586b}.tactic-choice span,.tactic-choice small,.tactic-choice:disabled small{color:#1024229e}.reward-choice small{color:#fff7df9e}.reward-choice:disabled small{color:#fff7df70}.combat-tactics .tactic-choice small,.combat-tactics .tactic-choice:disabled small{color:#1024229e}.fighter-label[data-asset=enemy_warden]{border-color:#f0c36a80;box-shadow:0 0 28px #f0c36a29}@media (width<=900px){.menu-shell{grid-template-columns:1fr;align-content:center}}@media (width<=680px){.menu-card,.profile-card{border-radius:28px}.menu-actions button{width:100%}.fighter-label[data-team=player]{grid-area:auto/1/auto/-1}.fighter-label[data-team=enemy]{grid-column:auto}button{touch-action:manipulation;min-height:44px}}.run-shell{padding:20px}.run-shell .hero{align-items:center;margin-bottom:14px}.run-shell .hero h1{letter-spacing:-.055em;font-size:2.6rem}.run-shell .seed-chip{min-width:0;padding:10px 18px}.run-shell .app-grid{grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:14px}.run-status{border-radius:20px;grid-area:1/1/auto/-1;grid-template-columns:minmax(160px,1.3fr) repeat(3,minmax(90px,.6fr)) minmax(140px,1fr);align-items:center;gap:16px;min-height:0;padding:14px 20px;display:grid}.run-location{margin:0;font-size:.9rem;font-weight:800}.run-location span{color:var(--ink-soft);margin-top:5px;font-size:.72rem;font-weight:500;display:block}.run-status .metric{border:0;gap:3px;padding:0}.run-status .metric strong{white-space:nowrap;font-size:1.55rem}.pack-details{font-size:.75rem;line-height:1.5}.pack-details p{overflow-wrap:anywhere}summary{cursor:pointer}.run-shell .arena-panel{grid-area:2/1;align-self:start}.run-shell .rail-right{border-radius:22px;grid-area:2/2/span 2;align-self:start;min-height:0}.run-shell .choice-settlement{margin-top:0}.run-shell .controls{background:#203b34;border:1px solid #fff7df26;border-radius:18px;grid-area:3/1;align-self:start;gap:8px;padding:10px}.run-shell .log-panel{grid-row:4}.replay-tools{color:#fff7df;font-size:.8rem;position:relative}.replay-tools summary{padding:13px 10px}.replay-tools>div{z-index:12;background:#203b34;border:1px solid #6c8978;border-radius:16px;gap:6px;width:max-content;max-width:85vw;padding:10px;display:flex;position:absolute;bottom:calc(100% + 12px);left:0;box-shadow:0 8px 28px #07161544}.combat-tactics{display:block}.combat-tactics summary{padding:4px 0;font-size:.85rem;font-weight:800}.combat-tactics>small{margin:12px 0;display:block}.combat-tactics .tactic-group{margin-top:12px}.route-memory{color:#dce4d6;font-size:.78rem}.route-memory summary{padding:10px 0}.route-memory .route-progress{margin-top:8px}.run-shell .route-stage{gap:14px;padding:24px}.run-shell .route-stage h2{font-size:clamp(1.6rem,3vw,2.6rem)}.run-shell .route-board{grid-template-columns:1fr}.run-shell .route-dossier{order:0;padding:14px}.run-shell .route-dossier-grid{grid-template-columns:1fr 1fr}.run-shell .route-current-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}.run-shell .route-node{min-height:120px}.run-shell .route-choice-header{padding:10px 14px}.run-shell .route-choice-header strong{font-size:1.5rem}.run-shell .battle-canvas{flex-direction:column;display:flex}.run-shell .battle-beat{width:auto;box-shadow:none;border-radius:12px;order:-1;margin:8px 8px 0;padding:9px 12px;position:relative;top:auto;left:auto;transform:none}.run-shell .battle-beat strong{letter-spacing:-.02em;font-family:inherit;font-size:clamp(.9rem,2vw,1.3rem);line-height:1.25}.run-shell .battle-beat span{font-size:.6rem}.run-shell .fighter-label{text-align:left}.run-shell .fighter-label[data-team=player]{grid-area:1/1/span 3}.run-shell .fighter-label[data-team=enemy]{grid-column:2}.run-shell .fighter-skill-list{grid-template-columns:1fr 1fr}@media (width<=1080px){.run-shell .app-grid{grid-template-columns:minmax(0,1fr)}.run-shell .app-grid>*{grid-area:auto/1}.run-shell .hero{flex-direction:row}.run-status{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 14px;padding:12px 16px}.run-location{grid-column:1/-1;font-size:.76rem}.run-location span{margin:0;display:inline}.pack-details{grid-column:1/-1}.pack-details summary{min-height:28px;padding-top:6px}.run-shell .run-status{order:0}.run-shell .arena-panel{order:1}.run-shell .rail-right{order:2;padding:16px;display:block}.run-shell .controls{bottom:max(8px, env(safe-area-inset-bottom));z-index:10;order:3;position:sticky;box-shadow:0 4px 20px #07161540}.run-shell .log-panel{order:4}.run-shell .rail-right>.section-kicker{display:none}.run-shell .choice-settlement{border:0;padding:0}.run-shell .choice-settlement>strong{font-size:1.4rem}.run-shell .combat-tactics{margin-top:6px}.run-shell .tactics-list{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.run-shell .battle-mount{height:clamp(240px,31svh,350px)}.run-shell .log-panel{grid-template-columns:1fr}.run-shell .log-list{max-height:180px}.run-shell .log-panel h2{font-size:1.25rem}.rail,.arena-panel,.log-panel,.battle-beat,.feedback-toast{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (width<=680px){.run-shell{padding:12px 10px calc(12px + env(safe-area-inset-bottom))}.run-shell .hero{gap:10px;margin-bottom:10px}.run-shell .hero h1{font-size:1.75rem}.run-shell .eyebrow{margin-bottom:5px;font-size:.58rem}.run-shell .seed-chip{box-shadow:none;padding:8px 12px}.run-shell .seed-chip span{font-size:.55rem}.run-shell .seed-chip strong{font-size:.7rem}.run-shell .app-grid{gap:10px}.run-status .metric strong{font-size:1.3rem}.run-status{grid-template-columns:1.5fr 1fr 1fr}.run-status .metric:first-of-type strong{font-size:1.1rem}.run-status .metric span{font-size:.6rem}.run-shell .route-stage{padding:16px}.run-shell .route-stage>p:not(.section-kicker){font-size:.8rem;line-height:1.4}.run-shell .route-current-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.run-shell .route-node{gap:7px;min-height:126px;padding:12px 9px}.run-shell .route-node small,.run-shell .route-node em{letter-spacing:.02em;font-size:.58rem}.run-shell .route-node strong{font-size:.95rem}.run-shell .route-dossier>strong{font-size:1.1rem}.run-shell .route-dossier>small{font-size:.65rem}.run-shell .fighter-overlays{gap:6px;padding:8px}.run-shell .fighter-label{grid-template-columns:24px minmax(0,1fr);gap:2px 5px;padding:7px}.run-shell .fighter-portrait{border-radius:6px;width:24px;height:28px}.run-shell .fighter-label strong{font-size:.68rem}.run-shell .fighter-label em{display:none}.run-shell .fighter-skill-chip{padding:4px}.run-shell .fighter-skill-chip strong{font-size:.55rem}.run-shell .fighter-skill-chip small{font-size:.58rem}.run-shell .controls{border-radius:14px;gap:6px;padding:8px}.run-shell .controls button{min-height:44px;padding:0 8px;font-size:.75rem}.run-shell .controls .primary{flex:1 0 100%;order:1}.run-shell .replay-tools summary{padding:14px 5px;font-size:.72rem}.feedback-tray{width:min(310px,100vw - 20px);top:auto;bottom:90px;right:10px}.feedback-toast{padding:10px}.menu-shell{align-content:start;gap:16px;padding:16px}.menu-card,.profile-card{padding:22px}.menu-card h1{font-size:clamp(2.4rem,11vw,3.5rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.prep-card h1{font-size:clamp(2.4rem,6vw,4.5rem);line-height:1}.prep-card>p{margin:0}.prep-card{gap:18px;max-width:960px}.starter-builds{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.starter-builds .loadout-choice{min-height:0}.prep-hint{color:#dce4d6;margin:0;font-size:.85rem;line-height:1.5}.prep-disclosure{display:block}.prep-disclosure>summary{color:#fff7df;align-content:center;min-height:44px;font-size:.9rem;font-weight:700}.prep-disclosure>section,.prep-disclosure>.prep-hint,.prep-disclosure>.loadout-skill-grid{margin-top:16px}.prep-disclosure section .loadout-skill-grid,.prep-disclosure section .loadout-option-row{margin-top:12px}.skill-slot-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.skill-slot-row button{color:#fff7df;cursor:pointer;background:#203b34;border:1px solid #728679;border-radius:14px;min-height:44px;padding:10px 14px}.skill-slot-row button[aria-pressed=true]{border-color:var(--mint);background:#255743}.prep-actions{z-index:5;background:#142e27;border:1px solid #56715e;border-radius:18px;align-items:center;padding:12px}.prep-actions>small{color:#dce4d6;margin-right:auto;font-size:.8rem}.route-goal{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.route-goal span{color:#b8ccbb;text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;display:block}.route-goal strong{color:#fff7df;margin-top:5px;font-size:1rem;display:block}.route-goal>small{color:#dce4d6;font-size:.72rem}.route-goal-track{background:#456050;border-radius:999px;flex-basis:100%;height:5px;overflow:hidden}.route-goal-track i{background:var(--mint);height:100%;display:block}.resolution-preview{color:#f3e9d1;flex-basis:100%;order:1;margin:0;padding:4px;font-size:.8rem;line-height:1.4}.run-shell .controls .primary{order:2}.battle-result{background:#e2efdc;border:1px solid #45775b;border-radius:14px;gap:5px;padding:14px;display:grid}.battle-result[data-outcome=loss]{background:#f2e1d1;border-color:#c1886c}.battle-result>strong{color:#163b2b;font-size:1.1rem}.battle-result>small{color:#284e3b;font-size:.85rem}.choice-settlement .reward-choice{color:#102422;background:#f4ead3;border-color:#a9b397}.choice-settlement .reward-choice span,.choice-settlement .reward-choice small{color:#3b5144}.choice-settlement .reward-choice:disabled{background:#e4ddc7}.choice-settlement .reward-choice:disabled small{color:#52614f}.choice-settlement .reward-choice.selected,.choice-settlement .reward-choice:hover:not(:disabled){background:#dfeecf;border-color:#497a50}.run-shell .log-list{overscroll-behavior:contain;min-height:0;overflow-y:auto}.loadout-choice:focus-visible,.route-node:focus-visible,.reward-choice:focus-visible,.skill-slot-row button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media (width<=680px){.prep-shell{place-items:start center;padding:16px 10px}.prep-card{border-radius:24px;gap:16px;padding:20px 16px}.prep-section{padding:14px}.starter-builds{grid-template-columns:1fr}.starter-builds .loadout-choice{gap:5px;padding:12px}.starter-builds .loadout-choice strong{font-size:1.2rem}.starter-builds .loadout-choice span{font-size:.6rem}.prep-actions{bottom:max(8px, env(safe-area-inset-bottom));gap:8px;position:sticky}.prep-actions>small{flex-basis:100%}.prep-actions .primary{flex:1}.route-goal strong{font-size:.9rem}.route-goal>small{font-size:.65rem}.resolution-preview{font-size:.75rem}}.game-frame{min-height:100svh;padding:max(24px, env(safe-area-inset-top)) max(28px, env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(28px, env(safe-area-inset-left));color:#f0e7d4;background:radial-gradient(at 50% 0,#354335 0%,#192b23 42%,#101f1a 100%)}.game-frame .menu-shell,.game-frame .prep-shell,.game-frame .shell{background:0 0;max-width:1200px;min-height:0;margin:0 auto;padding:0}.game-frame .menu-shell{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch;gap:24px}.game-frame .menu-card,.game-frame .profile-card,.game-frame .prep-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1c3026;border:1px solid #c5d0aa24;border-radius:18px;box-shadow:0 12px 32px #08140e24}.game-frame .menu-card{max-width:none;padding:0;overflow:hidden}.forest-vista{width:100%;height:240px;display:block}.camp-copy{padding:28px 32px 30px}.game-frame .eyebrow,.game-frame .section-kicker{letter-spacing:.1em;font-size:.68rem;font-weight:600}.camp-copy .eyebrow{color:#b2c49b;margin:0 0 12px;font-size:.65rem}.game-frame .menu-card h1{letter-spacing:-.04em;font-size:clamp(2rem,4vw,3.3rem);line-height:1.08}.game-frame .menu-card .camp-copy>p:not(.eyebrow){color:#c6cfbb;max-width:520px;margin:14px 0 0;font-size:.94rem;line-height:1.6}.camp-copy .menu-actions{gap:10px;margin-top:24px}.game-frame .menu-card .camp-copy>.camp-first-goal{color:#e8d29f;font-size:.82rem;line-height:1.4}.expedition-objective{color:#c6cfbb;margin:8px 0 0;font-size:.78rem;line-height:1.45}.expedition-objective strong{color:#e8d29f;font-weight:600;display:block}.expedition-objective span{margin-top:3px;display:block}.run-score{background:#c5d0aa16;border-radius:10px;gap:4px;padding:12px;font-size:.9rem;display:grid}.run-score span{color:#c6cfbb;font-size:.78rem}.endless-choice{background:#e5e9d8;border:1px solid #8b9f66;border-radius:10px;padding:12px}.game-frame .endless-choice p{color:#344c35;font-size:.8rem;line-height:1.45}.endless-choice button{width:100%;min-height:44px;margin:8px 0}@media (width<=680px){.game-frame .run-shell .hero.combat-hero h1{font-size:1.2rem;line-height:1.2}.expedition-objective{margin-top:4px;font-size:.7rem}.combat-hero .expedition-objective span{display:none}}.game-frame .menu-actions button,.game-frame .prep-actions button,.route-enter,.encounter-confirm button,.guide-footer button{color:#f0e7d4;cursor:pointer;background:#ffffff08;border:1px solid #c5d0aa33;border-radius:10px;justify-content:space-between;align-items:center;gap:24px;min-height:48px;padding:0 20px;font-size:.9rem;font-weight:600;display:inline-flex}.game-frame .menu-actions button.primary,.game-frame .prep-actions button.primary,.route-enter,.encounter-confirm button,.guide-footer button{background:var(--gold);color:#292719;border-color:var(--gold)}.game-frame button.primary:hover:not(:disabled){background:#eed2a0;border-color:#eed2a0}.camp-cost{color:#a9b59f;margin-top:12px;font-size:.72rem;line-height:1.45;display:block}.game-frame .profile-card{align-content:start;gap:22px;padding:24px}.camp-supplies{gap:16px;display:grid}.profile-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.game-frame .profile-card span{color:#b9c9a7;letter-spacing:.08em;font-size:.65rem;font-weight:600}.profile-heading>small{color:#94a58e;font-size:.65rem}.camp-meters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.camp-meters>div{gap:8px;display:grid}.camp-meters strong{color:#f0e7d4;letter-spacing:-.03em;font-size:1.9rem;line-height:1}.camp-meters strong small{color:#9cab92;font:.82rem Avenir Next,Trebuchet MS,sans-serif}.camp-record,.camp-bank{border-top:1px solid #c5d0aa24;padding-top:18px}.game-frame .profile-card p{color:#c6cfbb;margin:8px 0 0;font-size:.85rem;line-height:1.5}.camp-record p strong{font:inherit;letter-spacing:0;color:#f0e7d4;font-weight:600}.camp-bank>small{margin-top:6px;font-size:.75rem;display:block}.save-settings,.sync-details{color:#b8c3ae;border-top:1px solid #c5d0aa24;padding-top:4px;font-size:.75rem}.save-settings summary,.sync-details summary{min-height:44px;padding:12px 0}.game-frame .save-settings p{margin:8px 0 12px;font-size:.75rem}.save-settings button{color:#e3c8ad;cursor:pointer;background:#d9b49212;border:1px solid #d4b79560;border-radius:8px;min-height:44px;padding:8px 12px;font-size:.75rem}.save-settings .text-button{background:0 0;border:0;padding-left:0}.reset-actions{gap:8px;display:flex}.game-frame .sync-card,.game-frame .world-card{background:#ffffff06;border-radius:12px;margin-top:0}.game-frame .sync-card strong,.game-frame .world-card strong{font-size:1.3rem}.game-frame .run-end-card{border-radius:12px;margin:0 24px 24px}.game-frame .run-end-card h2{letter-spacing:-.03em;font-size:2rem;line-height:1.1}.game-frame .prep-shell{max-width:960px;display:block}.game-frame .prep-card{gap:22px;width:100%;max-width:none;padding:30px}.game-frame .prep-card h1{letter-spacing:-.04em;font-size:2.6rem;line-height:1.1}.game-frame .prep-card>p:not(.eyebrow){color:#c6cfbb;max-width:680px;font-size:.95rem;line-height:1.6}.game-frame .prep-card .eyebrow{color:#b2c49b;margin-bottom:-10px}.game-frame .prep-section{background:#ffffff04;border-color:#c5d0aa24;border-radius:12px;gap:14px;padding:18px}.game-frame .prep-section-title span,.game-frame .loadout-choice span{letter-spacing:.06em;font-size:.62rem;font-weight:600}.game-frame .prep-section-title strong{text-transform:none;color:#b9c9a7;font-family:inherit;font-size:.75rem;font-weight:500}.game-frame .loadout-choice{background:#13251d;border-color:#c5d0aa2b;border-radius:10px;padding:16px}.game-frame .loadout-choice strong{letter-spacing:0;font-family:inherit;font-size:1.02rem;font-weight:600;line-height:1.3}.game-frame .loadout-choice small{color:#b9c4af;font-size:.78rem;line-height:1.5}.game-frame .loadout-choice[data-selected=true]{background:#354931;border-color:#bacb95;box-shadow:inset 0 0 0 1px #bacb95}.game-frame .loadout-choice[data-selected=true] span{color:#d3e4b4}.game-frame .starter-builds .loadout-choice{align-content:start;min-height:140px}.game-frame .prep-hint{color:#b9c4af;font-size:.78rem}.game-frame .prep-disclosure>summary{color:#d5ddc8;font-size:.84rem;font-weight:500}.game-frame .skill-slot-row button{border-color:#bacb9533;border-radius:8px;font-size:.78rem}.game-frame .skill-slot-row button[aria-pressed=true]{background:#354931;border-color:#bacb95}.game-frame .prep-actions{background:#14251c;border-color:#c5d0aa33;border-radius:12px}.game-frame .prep-actions>small{color:#b9c4af;font-size:.78rem}.game-frame .run-shell .hero{margin-bottom:20px}.game-frame .run-shell .hero h1{color:#f0e7d4;letter-spacing:-.04em;font-size:2rem;line-height:1.1}.game-frame .run-shell .hero .eyebrow{color:#a9b99c}.expedition-details{color:#a9b99c;text-align:right;font-size:.72rem}.expedition-details summary{min-height:44px;padding:12px 0}.expedition-details small{font-family:monospace;display:block}.game-frame .run-shell .app-grid{grid-template-columns:minmax(0,1fr) 340px;gap:16px}.game-frame .rail,.game-frame .log-panel{-webkit-backdrop-filter:none;backdrop-filter:none;color:#253c2b;background:#eee7d6;border-color:#eee7d6;box-shadow:0 8px 24px #08140e14}.game-frame .run-status{border-radius:12px;padding:16px 20px}.game-frame .run-location{color:#344c35;font-size:.85rem}.game-frame .run-status .metric span{letter-spacing:.06em;font-size:.6rem;font-weight:600}.game-frame .run-status .metric strong{letter-spacing:-.03em;font-family:inherit;font-size:1.4rem;font-weight:600}.health-track{background:#52623e33;border-radius:3px;width:100%;max-width:150px;height:4px;margin-top:3px;overflow:hidden}.health-track i{background:#567044;height:100%;display:block}.game-frame .pack-details summary{font-size:.75rem}.game-frame .run-shell .arena-panel{box-shadow:none;border-color:#b2c49b26;border-radius:16px}.game-frame .run-shell .route-stage{background:#1c3026;gap:16px;padding:24px}.game-frame .run-shell .route-stage h2{letter-spacing:-.03em;font-size:2rem;line-height:1.1}.game-frame .run-shell .route-stage>p:not(.section-kicker){color:#bac5af;max-width:600px;font-size:.88rem;line-height:1.5}.game-frame .route-goal{border-top:1px solid #c5d0aa24;border-bottom:1px solid #c5d0aa24;padding:16px 0}.game-frame .route-goal span,.game-frame .route-choice-header span,.game-frame .route-choice-header small{letter-spacing:.06em;font-size:.62rem;font-weight:600}.game-frame .route-goal strong{font-size:.9rem;font-weight:500}.game-frame .route-goal-track{background:#bacb9526;height:4px}.game-frame .route-choice-header{background:0 0;border:0;border-radius:0;padding:8px 0 0}.game-frame .route-choice-header strong{letter-spacing:0;font-family:inherit;font-size:1.1rem;font-weight:600}.game-frame .route-node{background:#13251d;border-color:#bacb9540;border-radius:10px;min-height:144px}.game-frame .route-node:before{background:#abc18e;height:3px}.game-frame .route-node strong{letter-spacing:0;font-family:inherit;font-size:1.05rem;font-weight:600;line-height:1.25}.game-frame .route-node span,.game-frame .route-node small,.game-frame .route-node em{letter-spacing:0;text-transform:none;font-size:.66rem;font-weight:500;line-height:1.4}.game-frame .route-node.reachable{background:#14291f}.game-frame .route-node.selected{background:#354931;border-color:#bacb95;box-shadow:inset 0 0 0 1px #bacb95}.game-frame .route-node[data-tone=fight]:before,.game-frame .route-node[data-tone=elite]:before{background:#c79b76}.game-frame .route-dossier{background:#11231b;border-color:#bacb9526;border-radius:12px;gap:12px;padding:20px;display:grid}.game-frame .route-dossier>strong{letter-spacing:0;font-family:inherit;font-size:1.15rem;font-weight:600}.game-frame .route-dossier>span,.game-frame .route-dossier small{text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:500;line-height:1.5}.route-enter{width:100%;margin-top:6px}.route-enter:after,.encounter-confirm button:after{content:"→";font-weight:400}.route-enter:disabled{opacity:.45;cursor:not-allowed}.game-frame .run-shell .rail-right{border-radius:16px;padding:22px}.game-frame .choice-settlement>strong{letter-spacing:-.025em;font-family:inherit;font-size:1.4rem;font-weight:600;line-height:1.2}.game-frame .choice-settlement>span{letter-spacing:.07em;font-size:.62rem;font-weight:600}.game-frame .choice-settlement>small{font-size:.8rem;line-height:1.5}.game-frame .choice-settlement .reward-choice{box-shadow:none;background:#f7f2e5;border-color:#677d4933;border-radius:10px}.game-frame .choice-settlement .reward-choice.selected{background:#dde4c9;border-color:#627c40;box-shadow:inset 0 0 0 1px #627c40}.game-frame .reward-choice strong{letter-spacing:0;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.3}.game-frame .reward-choice span{letter-spacing:.05em;font-size:.6rem;font-weight:600}.game-frame .reward-choice small{font-size:.78rem;line-height:1.5}.game-frame .battle-result{background:#dfe6d1;border-color:#74875755;border-radius:10px}.game-frame .battle-result strong{font-size:1rem}.game-frame .combat-tactics{background:#d8decb;border-radius:10px}.game-frame .combat-tactics>summary{font-size:.82rem;font-weight:600}.encounter-confirm{border-top:1px solid #627c4033;gap:12px;margin-top:4px;padding-top:16px;display:grid}.encounter-confirm .resolution-preview{color:#425438;order:0;padding:0;font-size:.78rem}.encounter-confirm button{text-align:left;gap:12px;width:100%;font-size:.85rem}.game-frame .run-shell .controls{box-shadow:none;background:#1c3026;border-color:#bacb9526;border-radius:12px;position:static}.game-frame .run-shell .controls button{border-radius:8px;font-size:.8rem}.game-frame .run-shell .controls:not(:has(>button)){background:0 0;border:0;padding:0}.game-frame .run-shell .route-layout .arena-panel{grid-column:1/-1}.game-frame .route-layout .route-board{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.game-frame .route-layout .route-goal{grid-column:1/-1}.game-frame .route-layout .route-choice-deck{grid-column:1}.game-frame .route-layout .route-dossier{grid-column:2;align-self:start}.game-frame .battle-beat small{letter-spacing:0;text-transform:none;font-weight:500}.game-frame .run-shell .log-panel{border-radius:12px}.game-frame .log-panel h2{letter-spacing:-.02em;font-family:inherit;font-size:1.15rem;font-weight:600;line-height:1.3}.game-frame .log-detail{font-size:.8rem}.game-frame .replay-progress>span{letter-spacing:.06em;font-size:.6rem;font-weight:600}.game-frame .replay-progress-track{height:4px}.game-frame .replay-progress-track i{background:#718a50}.game-frame .log-entry{border-radius:8px;font-size:.78rem}.game-frame .log-entry>span{font-size:.6rem;font-weight:600}.field-guide{overscroll-behavior:contain;color:#263a2c;background:#f0e9d8;border:1px solid #b7c79b66;border-radius:18px;width:min(460px,100vw - 32px);max-width:none;height:calc(100svh - 32px);max-height:880px;margin:auto 16px auto auto;padding:0;overflow:auto;box-shadow:0 24px 100px #050c0870}.field-guide[open]{flex-direction:column;display:flex}.field-guide::backdrop{background:#07120dd9}.guide-heading{border-bottom:1px solid #677d4926;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.field-guide .eyebrow{color:#5b714c;letter-spacing:.1em;margin:0;font-size:.65rem;font-weight:600}.guide-close{color:#354b35;cursor:pointer;background:0 0;border:1px solid #677d4933;border-radius:10px;width:44px;height:44px;font-size:1.65rem}.guide-body{overscroll-behavior:contain;min-height:0;padding:24px;overflow-y:auto}.guide-body h2{letter-spacing:-.035em;margin:0;font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1.1}.guide-body>p{color:#5c6b4f;margin:14px 0 24px;font-size:.87rem;line-height:1.6}.guide-steps{gap:14px;margin:0;padding:0;list-style:none;display:grid}.guide-steps li{border:1px solid #677d4926;border-radius:12px;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:14px;display:grid}.guide-steps li[aria-current=step]{background:#dce3cb;border-color:#81965e80}.guide-number{color:#7a8c5c;padding-top:4px;font:.85rem Georgia,serif}.guide-steps h3{margin:0;font-size:.92rem;font-weight:600;line-height:1.4}.guide-steps p,.guide-save-note p{color:#566548;margin:6px 0 0;font-size:.8rem;line-height:1.6}.guide-save-note{border-top:1px solid #677d4926;margin-top:24px;padding:18px 0 0}.guide-save-note strong{font-size:.82rem;font-weight:600}.guide-footer{background:#e7e1ce;border-top:1px solid #677d4926;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding:18px 24px;display:flex}.guide-footer small{color:#61714f;max-width:170px;font-size:.72rem;line-height:1.5}.guide-footer button{justify-content:center;min-width:100px}.game-frame button:focus-visible,.game-frame summary:focus-visible,.field-guide button:focus-visible{outline-offset:4px;outline:3px solid #c8a765}@media (width<=1080px){.game-frame .run-shell .app-grid{grid-template-columns:minmax(0,1fr)}.game-frame .run-shell .app-grid>*{grid-area:auto/1}.game-frame .run-shell .controls{order:2}.game-frame .run-shell .rail-right{order:3}.game-frame .run-shell .log-panel{order:4}.game-frame .route-layout .route-board{grid-template-columns:minmax(0,1fr)}.game-frame .route-layout .route-board>*{grid-column:1}}@media (width<=900px){.game-frame .menu-shell{grid-template-columns:minmax(0,1fr);max-width:680px}.game-frame .profile-card{gap:18px}.forest-vista{height:200px}}@media (width<=680px){.game-frame{padding:env(safe-area-inset-top) max(14px, env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left))}.game-frame .menu-shell,.game-frame .prep-shell,.game-frame .shell{margin-top:0}.game-frame .menu-shell{gap:16px}.forest-vista{height:150px}.camp-copy{padding:24px 20px}.game-frame .menu-card h1{font-size:2rem}.game-frame .menu-card .camp-copy>p:not(.eyebrow){font-size:.85rem;line-height:1.55}.camp-copy .menu-actions{margin-top:20px}.game-frame .menu-actions button{width:100%;font-size:.85rem}.game-frame .profile-card{padding:20px}.game-frame .prep-card{gap:18px;padding:22px 16px}.game-frame .prep-card h1{font-size:2.1rem}.game-frame .prep-card>p:not(.eyebrow){font-size:.85rem}.game-frame .prep-section{gap:12px;padding:14px}.game-frame .starter-builds .loadout-choice{min-height:0;padding:14px}.game-frame .prep-actions{gap:10px;padding:12px;position:static}.game-frame .prep-actions button{padding:0 14px;font-size:.8rem}.game-frame .prep-actions>small{font-size:.72rem}.game-frame .run-shell .hero h1{font-size:1.65rem}.game-frame .run-shell .hero .eyebrow{font-size:.6rem}.expedition-details{max-width:100px;font-size:.62rem}.game-frame .run-status{padding:14px}.game-frame .run-status .metric strong{font-size:1.1rem}.game-frame .run-location{font-size:.74rem}.game-frame .pack-details summary{font-size:.68rem}.game-frame .run-shell .route-stage{gap:14px;padding:20px 16px}.game-frame .run-shell .route-stage h2{font-size:1.6rem}.game-frame .run-shell .route-stage>p:not(.section-kicker){font-size:.8rem}.game-frame .route-current-choices{grid-template-columns:minmax(0,1fr)}.game-frame .route-node{gap:7px;min-height:0;padding:14px}.game-frame .route-node small,.game-frame .route-node em{font-size:.7rem}.game-frame .route-node em{display:none}.game-frame .route-dossier{padding:16px}.game-frame .route-goal strong{font-size:.85rem}.game-frame .route-goal>small{font-size:.65rem}.game-frame .run-shell .rail-right{padding:18px}.field-guide{border-radius:14px;width:calc(100vw - 16px);height:calc(100svh - 16px);max-height:none;margin:auto}.guide-heading{padding:12px 20px}.guide-body{padding:22px 20px}.guide-body h2{font-size:1.9rem}.guide-steps li{grid-template-columns:28px minmax(0,1fr);gap:8px;padding:12px}.guide-footer{padding:16px 20px}.game-frame .run-shell{margin-top:14px}.game-frame .run-shell .hero{margin-bottom:12px}.game-frame .run-shell .hero .eyebrow{display:none}.game-frame .run-shell .app-grid{gap:12px}.game-frame .run-status{gap:8px 12px;padding:10px 14px}.game-frame .run-location{grid-column:1/3}.game-frame .pack-details{text-align:right;grid-area:1/3}.game-frame .pack-details summary{min-height:32px;padding-top:8px}.game-frame .pack-details summary small{display:none}.game-frame .pack-details[open]{text-align:left;grid-area:auto/1/auto/-1}.game-frame .run-shell .battle-beat{gap:4px;padding:8px 12px}.game-frame .run-shell .battle-beat span{display:none}.game-frame .run-shell .battle-beat strong{font-size:.9rem;line-height:1.3}.game-frame .run-shell .battle-beat small{font-size:.65rem;line-height:1.3}}.companion-offers{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.companion-offer{color:#f0e7d4;cursor:pointer;background:#13251d;border:1px solid #c5d0aa2b;border-radius:12px;align-content:start;justify-items:center;gap:6px;min-width:0;padding:14px 10px;display:grid}.companion-offer[data-selected=true]{background:#354931;border-color:#bacb95;box-shadow:inset 0 0 0 1px #bacb95}.companion-role{color:#bacb95;letter-spacing:.06em;text-transform:uppercase;font-size:.62rem}.companion-portrait{flex-shrink:0;width:64px;height:64px}.companion-offer strong{font-size:.9rem;line-height:1.3}.companion-offer small{color:#c4cdb6;font-size:.75rem}.companion-offer-status{color:#d3e4b4;margin-top:4px;font-size:.65rem}.companion-preview{background:#10231b;border:1px solid #bacb9526;border-radius:10px;padding:14px 16px}.companion-preview>strong{font-size:.85rem}.companion-preview p{color:#c6cfbb;margin:8px 0 0;font-size:.8rem;line-height:1.5}.companion-preview p.companion-fit{color:#b9c4af;font-size:.75rem}.companion-preview .companion-fit[data-matched=true]{color:#d3e4b4}.companion-badge{text-align:left;flex:0 260px;font-size:.78rem}.companion-badge summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:4px 8px;display:flex}.companion-badge .companion-portrait{width:36px;height:36px}.companion-badge summary>span{font-size:.85rem;font-weight:600;line-height:1.3}.companion-badge summary small{color:#bac5af;text-transform:capitalize;margin-top:3px;font-size:.65rem;font-weight:400;display:block}.companion-badge-body{background:#13251d;border:1px solid #bacb9526;border-radius:10px;padding:10px 12px}.companion-badge-body p{color:#d3dbc5;margin:0 0 8px;line-height:1.5}.companion-badge-body>small{color:#a9b99c;font-size:.65rem}.fighter-companion{border:1px solid #0000;border-radius:8px;grid-column:1/-1;align-items:center;gap:6px;padding:3px 5px;transition:background-color .16s,border-color .16s;display:flex}.fighter-companion .companion-portrait{width:24px;height:24px}.fighter-label .fighter-companion span{text-transform:none;letter-spacing:0;color:#dbe7c9;font-size:.72rem;line-height:1.3}.fighter-companion[data-active=true]{background:#b9ce9626;border-color:#bacb95}@media (width<=680px){.companion-offers{gap:7px}.companion-offer{gap:5px;padding:10px 5px}.companion-offer .companion-portrait{width:48px;height:48px}.companion-offer strong{text-align:center;align-items:center;min-height:2.6em;font-size:.74rem;display:flex}.companion-offer small{font-size:.62rem}.companion-role,.companion-offer-status{font-size:.57rem}.companion-preview{padding:12px}.companion-badge{flex-basis:142px}.companion-badge summary{gap:6px;padding:0}.companion-badge .companion-portrait{width:30px;height:30px}.companion-badge summary>span{font-size:.7rem}.companion-badge summary small{font-size:.55rem}.companion-badge-body{font-size:.7rem}.fighter-companion{gap:4px;padding:2px 3px}.fighter-companion .companion-portrait{width:20px;height:20px}.fighter-label .fighter-companion span{font-size:.6rem}.game-frame .run-shell .replay-tools>div{left:auto;right:0}}.app-install-panel{border-top:1px solid #9aa57c44;padding-top:12px}.install-settings summary{align-content:center;min-height:44px;display:list-item}.game-frame .app-install-panel p{color:#c6cfbb;margin:8px 0;font-size:.78rem;line-height:1.5}.game-frame .app-install-panel small{color:#a9b99c;margin-top:8px;font-size:.7rem;line-height:1.5;display:block}.app-install-panel button{min-height:44px;margin:4px 0}.game-frame .app-install-panel .offline-ready{color:#c2d6a8;font-size:.72rem}.app-update{background:#dfe5cd;border:1px solid #7c9462;border-radius:10px;margin-bottom:8px;padding:12px}.game-frame .app-update strong{color:#25442e;font-size:.82rem}.game-frame .app-update p{color:#40543e}.game-frame .prep-ready{background:#14251c;border:1px solid #bacb9533;border-radius:12px;grid-template-columns:1fr 1.2fr;gap:20px;padding:18px;display:grid}.prep-build-summary{align-content:start;gap:4px;display:grid}.prep-ready strong{color:#f0e7d4;font-size:1rem;line-height:1.3;display:block}.prep-ready small{color:#b9c9a7;font-size:.68rem;line-height:1.4;display:block}.prep-ready p{color:#c6cfbb;margin:4px 0 0;font-size:.78rem;line-height:1.45}.prep-pet-summary{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px;display:grid}.prep-pet-summary .companion-portrait{width:40px;height:40px}.prep-pet-summary small{text-transform:capitalize;margin-bottom:3px}.prep-ready .companion-fit[data-matched=true]{color:#d3e4b4}.game-frame .prep-card>.prep-disclosure>:not(summary){margin-top:14px}.game-frame .prep-card>.prep-disclosure>summary{min-height:44px}.companion-contribution{background:#e6ead9;border:1px solid #74875755;border-radius:10px;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px;padding:14px;display:grid}.companion-contribution .companion-portrait{width:40px;height:40px}.game-frame .companion-contribution small{color:#466044;font-size:.7rem;line-height:1.4;display:block}.game-frame .companion-contribution strong{color:#163b2b;margin-top:3px;font-size:1rem;line-height:1.4;display:block}.companion-contribution p{color:#3b5144;margin:5px 0 0;font-size:.74rem;line-height:1.5}.action-log{color:#d9e2cc;z-index:11;background:#14251c;border:1px solid #bacb9533;border-radius:10px;grid-column:1/-1;min-width:0;position:relative}.action-log>summary{cursor:pointer;min-height:44px;padding:10px 14px;display:block}.action-log>summary::marker{display:none}.action-log>summary::-webkit-details-marker{display:none}.action-log>summary small{color:#b9c9a7;margin-bottom:4px;font-size:.65rem;display:block}.action-log>summary>span{font-size:.8rem;line-height:1.45;display:block}.action-log>summary strong{color:#f0e7d4;font-weight:600}.action-log>summary:focus-visible,.route-stop-details>summary:focus-visible,.battle-visual>summary:focus-visible,.battle-log>summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.action-history{background:#14251c;border:1px solid #bacb9577;border-radius:10px;padding:12px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 12px 30px #07120d99}.action-history>div{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.action-history button{color:#e5e9dc;cursor:pointer;background:0 0;border:1px solid #bacb9555;border-radius:8px;min-height:44px;padding:0 12px}.action-history ol{overscroll-behavior:contain;max-height:min(260px,40svh);margin:8px 0 0;padding:0;list-style:none;overflow-y:auto}.action-history li{border-top:1px solid #bacb9526;padding:10px 0;font-size:.8rem;line-height:1.45}.action-history li small{color:#a9b99c;font-size:.65rem;display:block}.action-history li p{margin:4px 0 0}.route-memory{grid-column:1/-1}.route-tools{grid-column:1/-1;justify-content:space-between;gap:12px;display:flex;position:relative}.route-tool-body{z-index:12;overscroll-behavior:contain;background:#14251c;border:1px solid #bacb9555;border-radius:10px;max-height:40svh;padding:14px;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 30px #07120d99}.route-progress-row>strong{color:#d9e2cc;font-size:.72rem;font-weight:500}.route-memory>summary,.route-stop-details>summary,.battle-visual>summary,.battle-log>summary{cursor:pointer;align-content:center;min-height:44px;padding:8px 12px;font-size:.78rem}.route-stop-details{color:#bac5af;font-size:.8rem}.route-stop-details>summary{padding-left:0}.build-fit-hint{color:var(--stage-muted,#bcc9b2);line-height:1.5;display:block}.game-frame .main-action-stage .build-fit-hint{color:var(--stage-muted)}.game-frame .main-action-stage .reward-choice>small.build-fit-hint[data-tone=loss],.game-frame .main-action-stage .reward-choice>small.build-fit-hint[data-tone=needs]{color:#e8bd89}.game-frame .main-action-stage .reward-choice>small.build-fit-hint[data-tone=gain]{color:#bdd29b}.game-frame .main-action-stage .reward-choice.icon-choice.relic-replacement-option>.content-icon{grid-row:1;align-self:start}.enemy-scouting{border-top:1px solid var(--stage-line);margin-top:12px;padding-top:8px}.route-stop-details .route-tool-body>header{z-index:1;background:#14251c;justify-content:space-between;align-items:center;gap:8px;padding-block:5px;display:flex;position:sticky;top:-14px}.route-stop-details .route-tool-body>header>button{border:1px solid var(--stage-line);min-width:44px;min-height:44px;color:var(--stage-text);cursor:pointer;background:0 0;border-radius:7px;flex:none;padding:7px 12px}.enemy-scouting h3,.enemy-scouting h4{margin:6px 0;font-size:.85rem}.enemy-scouting article+article{border-top:1px solid var(--stage-line);margin-top:10px;padding-top:6px}.scouted-skill{align-items:flex-start;gap:8px;margin-top:8px;display:flex}.scouted-skill>.content-icon{flex:0 0 26px;width:26px;height:26px}.scouted-skill>div{min-width:0}.scouted-skill p{margin:3px 0}.scouted-skill small{color:var(--stage-muted)}.route-stop-details p{margin:4px 0 12px;line-height:1.5}.battle-visual:not(.finished)>summary{display:none}.battle-log{color:#d9e2cc;border:1px solid #bacb9533;border-radius:10px;grid-column:1/-1;min-width:0}.battle-log .log-panel{margin-top:0}.game-frame .noncombat-layout .noncombat-choices{grid-column:1/-1}.encounter-title{margin:0;font-size:1.3rem;font-weight:600;line-height:1.25}.encounter-description{color:#425438;margin:0;font-size:.8rem;line-height:1.5}.choice-list-hint{display:none}.selected-reward-info{position:relative}.reward-info-label{display:none}.selected-reward-info>summary{cursor:pointer;align-content:center;min-height:44px}.selected-reward-info>p{z-index:12;color:#425438;background:#eee7d6;border:1px solid #627c4077;border-radius:10px;margin:0;padding:12px;font-size:.78rem;line-height:1.5;position:absolute;bottom:calc(100% + 6px);left:0;right:0;box-shadow:0 12px 30px #07120d66}.game-frame .companion-contribution{padding:0;display:block}.companion-contribution>summary{cursor:pointer;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;min-height:44px;padding:10px;display:grid}.companion-contribution-body{padding:0 10px 10px}@media (width>=1081px){.game-frame .app-grid:has(.action-log) .arena-panel{grid-row:3}.game-frame .app-grid:has(.action-log) .rail-right{grid-row:3/span 2}.game-frame .app-grid:has(.action-log) .controls{grid-row:4}.action-log{grid-row:2}.battle-log{grid-row:5}}@media (width<=1080px){.action-log{order:0}.battle-log{order:4}}@media (width<=680px){.game-frame{padding-bottom:max(8px, env(safe-area-inset-bottom))}.game-frame .run-shell{margin-top:8px}.game-frame .run-shell .hero{gap:8px;margin-bottom:8px}.game-frame .run-shell .hero h1,.game-frame .run-shell .hero.combat-hero h1{font-size:1.05rem}.game-frame .run-shell .hero .eyebrow{margin:0 0 3px;font-size:.58rem;display:block}.game-frame .run-shell .expedition-objective{margin-top:3px;font-size:.7rem}.game-frame .run-shell .expedition-objective>span{display:none}.game-frame .run-shell .companion-badge{flex:0 0 44px;position:relative}.game-frame .run-shell .companion-badge summary{justify-content:center;min-height:44px}.game-frame .run-shell .companion-badge summary>span{display:none}.game-frame .run-shell .companion-badge-body{z-index:14;width:min(260px,80vw);position:absolute;top:100%;right:0}.game-frame .run-shell .app-grid{gap:8px}.game-frame .run-status{grid-template-columns:1.7fr .7fr .7fr .65fr;gap:8px;padding:8px 10px;position:relative}.game-frame .run-status .run-location{display:none}.game-frame .run-status .metric strong{font-size:.9rem}.game-frame .run-status .metric span{font-size:.58rem}.game-frame .run-status .pack-details{text-align:right;grid-area:1/4}.game-frame .run-status .pack-details>summary{align-content:center;min-height:44px;padding:0;font-size:.7rem}.game-frame .run-status .pack-details[open]{grid-area:1/4}.game-frame .run-status .pack-body{z-index:13;text-align:left;overscroll-behavior:contain;background:#eee7d6;border:1px solid #627c4077;border-radius:10px;max-height:30svh;padding:10px 14px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.game-frame .run-status:has(.pack-details[open]){grid-template-columns:1.7fr .7fr .7fr .65fr}.action-log>summary{padding:8px 10px}.action-log>summary>span{font-size:.74rem;line-height:1.4}.game-frame .run-shell .route-stage{gap:6px;padding:8px}.game-frame .run-shell .route-stage>.section-kicker,.game-frame .run-shell .route-stage>p:not(.section-kicker){display:none}.game-frame .run-shell .route-stage h2{font-size:1rem}.game-frame .route-layout .route-board{gap:8px}.game-frame .route-goal{gap:4px;padding:6px 0}.game-frame .route-goal>div:first-child{display:none}.game-frame .route-goal-track{flex:1}.game-frame .route-choice-header{display:none}.game-frame .run-shell .route-current-choices{grid-template-columns:1fr;gap:6px}.game-frame .run-shell .route-node{text-align:left;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:3px 8px;min-height:44px;padding:6px 8px}.game-frame .route-node>span,.game-frame .route-node>em{display:none}.game-frame .route-node>strong{font-size:.8rem}.game-frame .route-node>small{font-size:.65rem}.game-frame .route-dossier{gap:4px;padding:8px 10px}.game-frame .route-dossier>strong{display:none}.game-frame .route-dossier>span{font-size:.68rem}.game-frame .route-dossier:not(.has-selection)>:not(button){display:none}.game-frame .route-dossier .route-enter{order:1;min-height:44px;margin-top:0;padding:8px 12px;font-size:.8rem}.game-frame .route-dossier .route-stop-details{order:2}.game-frame .route-stop-details>summary,.game-frame .route-memory>summary{padding:8px 0;font-size:.7rem}.game-frame .run-shell .rail-right{padding:12px}.game-frame .choice-settlement{gap:8px}.game-frame .choice-settlement>strong{font-size:1.05rem}.game-frame .choice-settlement>small{font-size:.74rem}.game-frame .choice-settlement .reward-list{gap:6px}.game-frame .choice-settlement .reward-choice{gap:3px;min-height:54px;padding:8px 10px}.game-frame .choice-settlement .reward-choice strong{font-size:.82rem}.game-frame .choice-settlement .reward-choice small{font-size:.7rem}.game-frame .choice-settlement .reward-choice span{font-size:.55rem}.game-frame .noncombat-choices .reward-choice{grid-template-columns:minmax(0,1fr) auto}.game-frame .noncombat-choices .reward-choice>strong{grid-area:1/1}.game-frame .noncombat-choices .reward-choice>span{grid-area:1/2}.game-frame .noncombat-choices .reward-choice>small{grid-column:1/-1}.game-frame .encounter-confirm{gap:8px;padding-top:10px}.game-frame .encounter-confirm .resolution-preview{font-size:.73rem}.game-frame .encounter-confirm button{min-height:44px;font-size:.8rem}.game-frame .encounter-title{font-size:1.05rem}.game-frame .encounter-description{font-size:.74rem;line-height:1.4}.game-frame .companion-contribution{grid-template-columns:28px minmax(0,1fr);gap:8px;padding:8px}.game-frame .companion-contribution .companion-portrait{width:28px;height:28px}.game-frame .companion-contribution strong{font-size:.82rem}.game-frame .companion-contribution p{margin-top:3px;font-size:.68rem}.game-frame .battle-result{gap:3px;padding:8px}.game-frame .battle-result strong{font-size:.85rem}.game-frame .battle-result small{font-size:.72rem}.game-frame .companion-contribution>summary{grid-template-columns:28px minmax(0,1fr);gap:8px;padding:6px 8px}.game-frame .choice-list-hint{color:#425438;font-size:.65rem;display:block}:is(.game-frame .run-shell:has(.noncombat-layout),.game-frame .run-shell:has(.combat-complete)){height:calc(100svh - 60px - env(safe-area-inset-top) - max(8px, env(safe-area-inset-bottom)));flex-direction:column;display:flex}:is(.game-frame .run-shell:has(.noncombat-layout)>.hero,.game-frame .run-shell:has(.combat-complete)>.hero){flex-shrink:0}.game-frame .run-shell .noncombat-layout,.game-frame .run-shell .combat-complete{flex:1;min-height:0}.game-frame .run-shell .noncombat-layout{flex-direction:column;display:flex}.game-frame .noncombat-layout>.run-status,.game-frame .noncombat-layout>.action-log{flex-shrink:0}.game-frame .run-shell .noncombat-layout>.rail-right,.game-frame .run-shell .combat-complete>.rail-right{flex-direction:column;align-self:stretch;gap:6px;min-height:0;display:flex;overflow:visible}.game-frame .noncombat-layout>.rail-right{flex:1}.game-frame .noncombat-layout .choice-settlement,.game-frame .combat-complete .choice-settlement{overscroll-behavior:contain;flex:1;align-content:start;min-height:0;padding:2px;overflow-y:auto}.game-frame .noncombat-layout .encounter-confirm,.game-frame .combat-complete .encounter-confirm{flex-shrink:0}.game-frame .run-shell .combat-complete{grid-template-rows:auto minmax(0,1fr) 44px;grid-template-columns:repeat(3,minmax(0,1fr))}.game-frame .combat-complete>.action-log{display:none}.game-frame .run-shell .combat-complete>.run-status{grid-area:1/1/auto/-1}.game-frame .run-shell .combat-complete>.rail-right{order:1;grid-area:2/1/auto/-1;padding:8px}.game-frame .run-shell .combat-complete>.arena-panel{order:2;grid-area:3/1;overflow:visible}.game-frame .run-shell .combat-complete>.controls{order:2;grid-area:3/2;margin:0;padding:0}.game-frame .run-shell .combat-complete>.battle-log{order:2;grid-area:3/3}.game-frame .combat-complete .battle-visual>summary,.game-frame .combat-complete .battle-log>summary{padding:4px 6px;font-size:.65rem}.game-frame .combat-complete .battle-visual[open]>:not(summary),.game-frame .combat-complete .battle-log[open]>.log-panel{z-index:13;max-height:60svh;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto}.game-frame .combat-complete>.battle-log{position:relative}.game-frame .combat-complete>.battle-log[open]>.log-panel{width:calc(100vw - 28px);left:auto;right:0}.game-frame .run-shell .replay-tools>div{left:14px;right:14px;bottom:max(64px, calc(env(safe-area-inset-bottom) + 64px));overscroll-behavior:contain;width:auto;max-width:none;max-height:calc(100svh - 96px);position:fixed;overflow-y:auto}.game-frame .combat-complete>.arena-panel .battle-visual[open]>:not(summary){width:calc(100vw - 28px)}.game-frame .combat-complete .choice-settlement{gap:4px}.game-frame .combat-complete .choice-settlement>span,.game-frame .combat-complete .choice-settlement>small{display:none}.game-frame .combat-complete .choice-settlement .reward-choice{grid-template-columns:minmax(0,1fr) auto;min-height:44px;padding:6px 8px}.game-frame .combat-complete .reward-choice>strong{grid-area:1/1}.game-frame .combat-complete .reward-choice>span{grid-area:1/2}.game-frame .combat-complete .reward-choice>small{display:none}.game-frame .combat-complete .encounter-confirm{gap:4px;padding-top:6px}.game-frame .combat-complete .encounter-confirm:has(.selected-reward-info){flex-direction:row;align-items:center;gap:8px;display:flex}.game-frame .combat-complete .selected-reward-info{flex:0 0 54px}.game-frame .combat-complete .selected-reward-info>summary{text-align:center;min-height:44px}.game-frame .combat-complete .reward-info-copy{display:none}.game-frame .combat-complete .reward-info-label{font-size:.72rem;display:inline}.game-frame .combat-complete .selected-reward-info>p{width:calc(100vw - 60px);right:auto}.game-frame .combat-complete .encounter-confirm:has(.selected-reward-info)>button{flex:1;width:auto}.game-frame .combat-complete .companion-contribution{order:1;padding:0}.game-frame .prep-card{gap:14px;padding:18px 16px}.game-frame .prep-card h1{font-size:1.8rem}.game-frame .prep-ready{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px}.game-frame .prep-actions{gap:8px;padding:10px}}@media (width<=360px){.game-frame .prep-card{gap:12px;padding:14px}.game-frame .prep-card h1{font-size:1.5rem}.game-frame .prep-card>p:not(.eyebrow){font-size:.78rem;line-height:1.45}.game-frame .prep-ready{gap:10px;padding:12px}.prep-ready p{font-size:.74rem;line-height:1.4}.prep-ready strong{font-size:.9rem}.prep-pet-summary{grid-template-columns:32px minmax(0,1fr);gap:8px}.prep-pet-summary .companion-portrait{width:32px;height:32px}}.game-frame{--stage:#1c3026;--stage-raised:#263e30;--stage-text:#f0e7d4;--stage-muted:#bfccb6;--stage-line:#a7bd922f;padding-bottom:env(safe-area-inset-bottom)}.game-frame .run-shell{height:calc(100svh - max(24px, env(safe-area-inset-top)) - max(28px, env(safe-area-inset-bottom)));flex-direction:column;margin-top:0;display:flex}.run-heading,.game-frame .run-status{flex-shrink:0}.run-heading{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:8px;padding-right:48px;display:flex}.run-heading .expedition-objective{margin:0;font-size:.76rem}.run-heading .expedition-objective strong{color:var(--stage-text);display:inline}.game-frame .run-heading .expedition-objective span{color:var(--stage-muted);margin-left:12px;display:inline}.run-heading .expedition-objective small{display:none}.run-heading .companion-badge{max-width:220px}.game-frame .run-status{background:var(--stage);border-color:var(--stage-line);min-height:0;color:var(--stage-text);border-radius:10px;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:18px;margin-bottom:8px;padding:10px 16px;display:grid}.game-frame .run-status .run-location{color:var(--stage-muted);align-self:center;margin:0;font-size:.75rem}.game-frame .run-status .metric{border:0;gap:2px;padding:0}.game-frame .run-status .metric strong{color:var(--stage-text);font-size:1.05rem}.game-frame .run-status .metric span{color:var(--stage-muted);font-size:.65rem}.game-frame .run-status .metric.hot strong{color:var(--gold)}.health-track{background:#0d2017;height:5px}.health-track i{background:#83b784}.pack-details{color:var(--stage-muted);align-self:center}.main-action-stage{border:1px solid var(--stage-line);background:var(--stage);border-radius:14px;flex:1;grid-template-rows:auto auto minmax(0,1fr) auto;height:auto;min-height:0;display:grid;position:relative;overflow:hidden}.route-mini-map{border-bottom:1px solid var(--stage-line);background:#14271e;justify-content:center;align-items:center;gap:18px;min-height:74px;padding:4px 16px;display:flex}.route-mini-map svg{width:min(460px,70%);height:66px;display:block;overflow:visible}.route-mini-map path{stroke:#6a805e;stroke-width:1px;fill:none;opacity:.45}.route-mini-map path.travelled{stroke:#a8cc93;opacity:.9}.map-stop circle{fill:#253c2f;stroke:#77916a;stroke-width:1px}.map-stop[data-state=visited] circle{fill:#447b56;stroke:#91ba87}.map-stop[data-state=reachable] circle{fill:#4d6450;stroke:#c5d3ba}.map-stop[data-state=current] circle{fill:var(--gold);stroke:#ffe9b3;stroke-width:2px}.map-stop[data-state=selected] circle{stroke:var(--gold);stroke-width:2px}.map-stop text{fill:#f0e7d4;font-family:inherit;font-size:7px}.map-stop[data-state=current] text{fill:#263020}.map-end-label{fill:#bfccb6;font-family:inherit;font-size:10px}.map-position{color:var(--stage-text);font-size:.78rem}.map-position small{color:var(--stage-muted);margin-top:4px;font-size:.68rem;display:block}.stage-heading{border-bottom:1px solid var(--stage-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;display:flex}.stage-heading h1{color:var(--stage-text);margin:0;font:600 1.25rem Avenir Next,Trebuchet MS,sans-serif}.stage-heading button,.stage-tools button,.stage-tools summary{color:var(--stage-text);border:1px solid var(--stage-line);min-height:44px;font:inherit;cursor:pointer;background:#ffffff08;border-radius:7px;padding:8px 12px;font-size:.78rem}.stage-heading button{padding:4px 10px;font-size:.72rem}.stage-body{min-height:0;overflow:hidden}.game-frame .main-action-stage .route-stage{background:0 0;flex-direction:column;gap:8px;height:100%;min-height:0;padding:12px 18px;display:flex}.game-frame .main-action-stage .route-board{flex:1;grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:1fr;gap:8px;min-height:0;display:grid}.game-frame .main-action-stage .route-goal{border:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:0;display:flex}.game-frame .main-action-stage .route-goal span,.game-frame .main-action-stage .route-goal-track{display:none}.game-frame .main-action-stage .route-goal strong,.game-frame .main-action-stage .route-goal small{color:var(--stage-muted);font-size:.76rem;font-weight:400}.game-frame .main-action-stage .route-choice-deck{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.game-frame .main-action-stage .route-choice-header{padding:0 0 8px}.game-frame .main-action-stage .route-choice-header span{display:none}.game-frame .main-action-stage .route-choice-header strong{color:var(--stage-text);font-size:.86rem}.game-frame .main-action-stage .route-current-choices{grid-template-columns:repeat(var(--route-choice-count,3), minmax(0,1fr));gap:10px;min-height:0;display:grid}.game-frame .main-action-stage .route-node{border:1px solid var(--stage-line);min-height:130px;color:var(--stage-text);background:#243b2d;border-radius:9px;gap:6px;padding:14px}.game-frame .main-action-stage .route-node strong{color:var(--stage-text);font-size:1.05rem}.game-frame .main-action-stage .route-node span,.game-frame .main-action-stage .route-node small,.game-frame .main-action-stage .route-node em{color:var(--stage-muted);font-size:.76rem}.game-frame .main-action-stage .route-node.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:#354632}.game-frame .main-action-stage .route-dossier{border:0;border-top:1px solid var(--stage-line);background:0 0;border-radius:0;grid-template-columns:1fr auto;gap:3px 12px;padding:8px 0 0;display:grid}.game-frame .main-action-stage .route-dossier>span{color:var(--stage-muted);font-size:.7rem}.game-frame .main-action-stage .route-dossier>strong{color:var(--stage-text);grid-column:1;font-size:.85rem}.game-frame .main-action-stage .route-dossier>small{display:none}.game-frame .main-action-stage .route-enter{grid-area:1/2/span 2;width:auto;min-width:160px;margin:0}.game-frame .main-action-stage .route-tools{gap:16px;margin-top:0}.game-frame .main-action-stage .route-tools summary{min-height:32px;color:var(--stage-muted);padding:8px 0;font-size:.72rem}.game-frame .main-action-stage .action-log{color:var(--stage-text);background:#2b4130;border-radius:8px;grid-column:auto;max-height:78px;margin:0;padding:8px 10px;overflow:auto}.game-frame .main-action-stage .action-log summary{font-size:.74rem;line-height:1.4}.game-frame .main-action-stage .action-log small{color:var(--stage-muted)}.game-frame .main-action-stage .action-history{z-index:8;color:var(--stage-text);background:#20362a;position:absolute;inset:40px 12px 12px;overflow:auto}.game-frame .main-action-stage .rail-right{height:100%;min-height:0;max-height:none;color:var(--stage-text);background:0 0;border:0;border-radius:0;grid-template-rows:minmax(0,1fr) auto;gap:10px;margin:0;padding:14px 18px;display:grid;overflow:hidden}.game-frame .main-action-stage .rail-right>.section-kicker{display:none}.game-frame .main-action-stage .choice-settlement{border:0;flex-direction:column;gap:10px;min-height:0;margin:0;padding:0;display:flex;overflow-y:auto}.game-frame .main-action-stage .choice-settlement>strong,.game-frame .main-action-stage .choice-settlement>.encounter-title{display:none}.game-frame .main-action-stage .choice-settlement>span{color:var(--stage-muted);font-size:.72rem}.game-frame .main-action-stage .encounter-description,.game-frame .main-action-stage .choice-settlement>small{color:var(--stage-muted);margin:0;font-size:.82rem;line-height:1.4}.game-frame .main-action-stage .reward-list{flex-shrink:0;gap:8px;display:grid}.game-frame .main-action-stage .reward-choice{border:1px solid var(--stage-line);min-height:66px;color:var(--stage-text);background:#263e30;border-radius:9px;gap:4px;padding:10px 14px;display:grid}.game-frame .main-action-stage .reward-choice>span{color:var(--stage-muted);font-size:.65rem}.game-frame .main-action-stage .reward-choice>strong{color:var(--stage-text);font-family:inherit;font-size:.95rem;line-height:1.25}.game-frame .main-action-stage .reward-choice>small{color:var(--stage-muted);font-size:.76rem;line-height:1.4}.game-frame .main-action-stage .reward-choice.selected,.game-frame .main-action-stage .reward-choice:hover:not(:disabled){border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:#354632}.game-frame .main-action-stage .reward-choice:disabled{opacity:.6}.game-frame .main-action-stage .encounter-confirm{border-top:1px solid var(--stage-line);background:0 0;gap:8px;margin:0;padding:10px 0 0;position:static}.game-frame .main-action-stage .resolution-preview{color:var(--stage-muted);margin:0;font-size:.76rem;line-height:1.35}.game-frame .main-action-stage .encounter-confirm button{width:100%;min-height:44px;font-size:.85rem}.game-frame .main-action-stage .battle-result{color:var(--stage-text);background:#294231;border:0;margin:0;padding:10px 12px}.game-frame .main-action-stage .battle-result>strong{color:var(--stage-text)}.game-frame .main-action-stage .selected-reward-info>p{width:min(420px,100vw - 56px);color:var(--stage-text);border-color:var(--stage-line);background:#20362a;right:auto}.game-frame .run-status .pack-body{color:var(--stage-text);border-color:var(--stage-line);background:#20362a}.game-frame .main-action-stage .battle-result small,.game-frame .main-action-stage .companion-contribution small{color:var(--stage-muted)}.game-frame .main-action-stage .companion-contribution{border-color:var(--stage-line);color:var(--stage-text);background:#20382a;order:5}.game-frame .main-action-stage .companion-contribution strong{color:var(--stage-text)}.game-frame .main-action-stage .combat-tactics{color:var(--stage-text);background:0 0;border:0;margin:0;padding:0}.game-frame .main-action-stage .combat-tactics>summary,.main-action-stage[data-stage=tactics] .choice-settlement>span,.main-action-stage[data-stage=tactics] .choice-settlement>small{display:none}.game-frame .main-action-stage .combat-tactics .tactic-group{border-color:var(--stage-line)}.game-frame .main-action-stage .combat-tactics>small,.game-frame .main-action-stage .tactic-group>small,.game-frame .main-action-stage .tactics-empty{color:var(--stage-muted)}.game-frame .main-action-stage .tactic-group>strong{color:var(--stage-text);font-family:inherit;font-size:.85rem}.game-frame .main-action-stage .tactic-choice.selected:disabled{opacity:1;cursor:default}.game-frame .main-action-stage .battle-visual{height:100%;min-height:0}.game-frame .main-action-stage .battle-canvas{background:#172b22;grid-template-rows:minmax(120px,1fr) minmax(0,190px);height:100%;min-height:0;display:grid;overflow:hidden}.battle-viewport{min-height:0;position:relative;overflow:hidden}.game-frame .main-action-stage .battle-mount{width:100%;height:100%;min-height:0}.game-frame .main-action-stage .battle-mount canvas{width:100%;height:100%;display:block}.game-frame .main-action-stage .battle-beat{pointer-events:none;background:#10271be8;border:0;border-radius:7px;padding:7px 12px;inset:auto 12px 10px}.game-frame .main-action-stage .battle-beat strong{font-size:.84rem}.game-frame .main-action-stage .battle-beat span,.game-frame .main-action-stage .battle-beat small{font-size:.7rem}.hit-splats{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hit-splat{color:#fff8e8;text-shadow:0 2px #54271b;background:#a83e31;border:2px solid #f0b0a0;border-radius:45% 30%;place-items:center;min-width:46px;min-height:42px;padding:4px 8px;font:800 1.35rem/1 Avenir Next,sans-serif;animation:.95s ease-out both hit-number;display:grid;position:absolute;box-shadow:0 3px 12px #04190d66}.hit-splat small{text-shadow:none;margin-top:3px;font-size:.55rem;font-weight:600}.hit-splat[data-tone=critical]{background:#bb7629;border-color:#ffe0a0;font-size:1.65rem}.hit-splat[data-tone=heal]{background:#315e41;border-color:#b1d79b;border-radius:8px}.hit-splat[data-tone=shield]{background:#31586a;border-color:#b6dbe9;border-radius:5px 5px 18px 18px}.hit-splat[data-tone=miss]{background:#293c30;border-color:#b3c2a6;border-radius:8px;font-size:.82rem}@keyframes hit-number{0%{opacity:0;transform:translate(calc(-50% + var(--splat-offset)), -30%) scale(.8)}15%{opacity:1;transform:translate(calc(-50% + var(--splat-offset)), -65%) scale(1.1)}70%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--splat-offset)), -125%) scale(1)}}.game-frame .main-action-stage .fighter-overlays{background:#10271c;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 12px;display:grid;position:static}.game-frame .main-action-stage .fighter-label{background:0 0;border:0;border-radius:0;grid-template-columns:26px 1fr;align-content:start;gap:3px 7px;padding:0;display:grid}.game-frame .main-action-stage .fighter-portrait{grid-row:1/span 2;width:26px;height:26px}.game-frame .main-action-stage .fighter-label>strong{color:var(--stage-text);font:600 .78rem Avenir Next,sans-serif}.game-frame .main-action-stage .fighter-hp{color:var(--stage-text);font-size:.8rem}.fighter-health-bar{background:#304535;border-radius:3px;grid-column:1/-1;height:5px;overflow:hidden}.fighter-health-bar i{background:#83b784;height:100%;display:block}.fighter-label[data-team=enemy] .fighter-health-bar i{background:#d27c66}.game-frame .main-action-stage .fighter-defense{color:var(--stage-muted);grid-column:1/-1;font-size:.7rem}.game-frame .main-action-stage .fighter-defense em{display:none}.game-frame .main-action-stage .fighter-skill-list{flex-wrap:wrap;grid-column:1/-1;gap:3px 7px;margin:0;display:flex}.game-frame .main-action-stage .fighter-skill-chip{background:0 0;border:0;align-items:center;gap:3px;min-height:16px;padding:0;display:flex}.game-frame .main-action-stage .fighter-skill-chip strong,.game-frame .main-action-stage .fighter-skill-chip small{color:var(--stage-muted);font-size:.64rem;line-height:1.25}.game-frame .main-action-stage .fighter-companion{color:var(--stage-muted);grid-column:1/-1;margin-top:0;font-size:.65rem}.game-frame .main-action-stage .fighter-companion .companion-portrait{width:18px;height:18px}.stage-tools{border-top:1px solid var(--stage-line);background:#172b21;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 12px;display:flex;position:relative}.stage-tools:empty{display:none}.game-frame .main-action-stage .controls{display:contents}.game-frame .main-action-stage .controls>button:first-child{background:var(--gold);color:#262819;border-color:var(--gold);font-weight:600}.game-frame .main-action-stage .replay-tools{margin:0;position:static}.game-frame .main-action-stage .replay-tools[open]>div{border:1px solid var(--stage-line);z-index:10;background:#243d2c;border-radius:8px;gap:6px;width:auto;max-width:none;padding:8px;display:flex;position:absolute;inset:auto 8px calc(100% + 7px)}.game-frame .main-action-stage .replay-tools[open]>div>button{flex:1}.game-frame .main-action-stage .battle-log{margin:0 0 0 auto}.game-frame .main-action-stage .battle-log>summary{padding:8px 10px}.game-frame .main-action-stage .battle-log .log-panel{z-index:12;width:min(540px,100% - 16px);max-height:calc(100svh - 180px);color:var(--stage-text);border:1px solid var(--stage-line);background:#223b2b;border-radius:10px;padding:16px;position:absolute;bottom:calc(100% + 8px);right:8px;overflow-y:auto}.game-frame .main-action-stage .log-panel h2,.game-frame .main-action-stage .log-panel p,.game-frame .main-action-stage .log-panel .section-kicker{color:var(--stage-text)}.game-frame .main-action-stage .log-entry{color:var(--stage-text);background:#ffffff08}.game-frame .main-action-stage .log-entry span{color:var(--stage-muted)}.game-frame .prep-card{gap:14px;padding:24px}.game-frame .prep-section{border:0;border-top:1px solid var(--stage-line);background:0 0;border-radius:0;padding:10px 0}.game-frame .prep-disclosure>summary{min-height:44px;color:var(--stage-muted)}.game-frame .prep-ready{background:#243b2d;border:0;border-radius:9px}.game-frame .prep-actions{background:0 0;border:0;padding:8px 0}.game-frame .profile-card{gap:16px}.game-settings{border:1px solid var(--stage-line);color:var(--stage-text);background:#20362a;border-radius:14px;width:min(480px,100vw - 24px);max-height:calc(100svh - 32px);padding:0;overflow:hidden}.game-settings::backdrop{background:#08170fc9}.game-settings>header{border-bottom:1px solid var(--stage-line);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.game-settings h2{margin:0;font-size:1.3rem}.game-settings h3{margin:16px 0 8px;font-size:.92rem}.game-settings>header button{min-width:44px;min-height:44px;color:var(--stage-text);cursor:pointer;background:#ffffff08;border:0;border-radius:7px;font-size:1.5rem}.settings-body{max-height:calc(100svh - 116px);padding:16px 20px 24px;overflow-y:auto}.game-settings .app-install-panel{border-top:0;padding-top:0}.game-settings p,.game-settings small{color:var(--stage-muted);font-size:.8rem;line-height:1.5}.game-settings button{font:inherit}.game-settings .install-settings summary{color:var(--stage-text)}.game-settings .app-install-panel button{border:1px solid var(--gold);background:var(--gold);color:#292719;cursor:pointer;border-radius:7px;padding:10px 16px}.game-settings .save-settings{border-color:var(--stage-line);margin-top:18px}@media (width>=901px){.game-frame.camp-frame{padding-bottom:max(28px, env(safe-area-inset-bottom));flex-direction:column;display:flex}.game-frame.camp-frame .menu-shell{flex:1;width:100%}.game-frame.camp-frame .menu-card{flex-direction:column;display:flex}.camp-frame .camp-scene{flex:1 0 240px;min-height:240px}.camp-frame .camp-copy{flex-shrink:0}.game-frame.camp-frame .profile-card{flex-direction:column;justify-content:space-between;display:flex}}@media (width<=680px){.game-frame{padding-top:max(12px, env(safe-area-inset-top));padding-left:12px;padding-right:12px}.feedback-tray{top:56px;bottom:auto}.run-heading{gap:5px;min-height:44px;margin-bottom:5px}.run-heading .expedition-objective{font-size:.65rem;line-height:1.45}.game-frame .run-heading .expedition-objective span{margin-left:0;font-size:.65rem;display:block}.run-heading .companion-badge{max-width:110px}.game-frame .run-status{grid-template-columns:1fr .7fr .7fr auto;gap:10px;margin-bottom:6px;padding:8px 10px}.game-frame .run-status .run-location{display:none}.game-frame .run-status .metric strong{font-size:.9rem}.game-frame .run-status .metric span{font-size:.62rem}.game-frame .run-shell{height:calc(100svh - max(12px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)))}.main-action-stage{border-radius:10px}.route-mini-map{gap:5px;min-height:62px;padding:2px 8px}.route-mini-map svg{width:100%;height:58px}.map-position{display:none}.stage-heading{gap:5px;min-height:36px;padding:5px 10px}.stage-heading h1{font-size:.93rem}.stage-heading button{min-height:44px;font-size:.65rem}.game-frame .main-action-stage .route-stage{gap:6px;padding:8px 10px}.game-frame .main-action-stage .route-board{gap:5px}.game-frame .main-action-stage .route-goal strong,.game-frame .main-action-stage .route-goal small{font-size:.68rem}.game-frame .main-action-stage .route-choice-header{padding-bottom:4px}.game-frame .main-action-stage .route-current-choices{grid-template-columns:1fr;gap:5px}.game-frame .main-action-stage .route-node{grid-template-columns:1fr auto;gap:2px;min-height:60px;padding:8px 10px}.game-frame .main-action-stage .route-node>span{grid-area:1/2;font-size:.64rem}.game-frame .main-action-stage .route-node>strong{grid-area:1/1;font-size:.82rem}.game-frame .main-action-stage .route-node small{grid-column:1/-1;font-size:.66rem}.game-frame .main-action-stage .route-node em{display:none}.game-frame .main-action-stage .route-dossier{gap:2px 6px;padding-top:6px}.game-frame .main-action-stage .route-dossier strong{font-size:.72rem}.game-frame .main-action-stage .route-dossier span{font-size:.63rem}.game-frame .main-action-stage .route-enter{min-width:120px;min-height:44px;padding:8px 10px;font-size:.75rem}.game-frame .main-action-stage .route-tools summary{min-height:44px;padding:6px 0;font-size:.66rem}.game-frame .main-action-stage .rail-right{gap:6px;padding:8px 10px}.game-frame .main-action-stage .choice-settlement{gap:7px}.game-frame .main-action-stage .choice-settlement>small,.game-frame .main-action-stage .encounter-description{font-size:.72rem}.game-frame .main-action-stage .reward-list{gap:5px}.game-frame .main-action-stage .reward-choice{gap:2px;min-height:62px;padding:8px 10px}.game-frame .main-action-stage .reward-choice strong{font-size:.8rem}.game-frame .main-action-stage .reward-choice small{font-size:.68rem}.game-frame .main-action-stage .encounter-confirm{gap:5px;padding-top:7px}.game-frame .main-action-stage .resolution-preview{font-size:.68rem}.game-frame .main-action-stage .battle-result{padding:6px 8px}.game-frame .main-action-stage .battle-result strong{font-size:.78rem}.game-frame .main-action-stage .battle-result small{font-size:.68rem}.main-action-stage[data-stage=reward] .choice-settlement>span,.main-action-stage[data-stage=reward] .choice-settlement>small{display:none}.game-frame .main-action-stage[data-stage=reward] .reward-choice{grid-template-columns:minmax(0,1fr) auto;min-height:44px;padding:6px 9px}.main-action-stage[data-stage=reward] .reward-choice>strong{grid-area:1/1}.main-action-stage[data-stage=reward] .reward-choice>span{grid-area:1/2}.main-action-stage[data-stage=reward] .reward-choice>small{display:none}.main-action-stage[data-stage=reward] .companion-contribution{margin:0;padding:0}.main-action-stage[data-stage=reward] .companion-contribution>summary{min-height:44px}.main-action-stage[data-stage=reward] .encounter-confirm:has(.selected-reward-info){align-items:center;gap:8px;display:flex}.main-action-stage[data-stage=reward] .selected-reward-info{flex:0 0 54px}.main-action-stage[data-stage=reward] .selected-reward-info>summary{text-align:center;min-height:44px}.main-action-stage[data-stage=reward] .reward-info-copy{display:none}.main-action-stage[data-stage=reward] .reward-info-label{font-size:.72rem;display:inline}.main-action-stage[data-stage=reward] .encounter-confirm:has(.selected-reward-info)>button{flex:1;width:auto}.game-frame .main-action-stage .fighter-overlays{gap:8px;padding:6px 9px}.game-frame .main-action-stage .fighter-label>strong{font-size:.69rem}.game-frame .main-action-stage .fighter-hp{font-size:.76rem}.game-frame .main-action-stage .fighter-defense{font-size:.65rem}.stage-tools{gap:4px;padding:5px 7px}.stage-tools button,.stage-tools summary{min-height:44px;padding:6px 8px;font-size:.68rem}.game-frame .main-action-stage .battle-log{margin-left:0}.game-frame .main-action-stage .battle-beat strong{font-size:.72rem}.game-frame .main-action-stage .battle-beat small{font-size:.64rem}.game-frame .prep-card{gap:12px;padding:16px}.game-frame .prep-card h1{font-size:1.6rem}.game-frame .prep-section{padding:4px 0}}@media (prefers-reduced-motion:reduce){.hit-splat{animation-name:hit-number-static}@keyframes hit-number-static{0%,85%{opacity:1;transform:translate(calc(-50% + var(--splat-offset)), -80%)}to{opacity:0;transform:translate(calc(-50% + var(--splat-offset)), -80%)}}}.camp-scene{width:100%;height:240px;display:block}.camp-fire-glow{animation:3.5s ease-in-out infinite alternate camp-glow}.camp-flame{transform-box:fill-box;transform-origin:50% 100%;animation:.8s ease-in-out infinite alternate camp-flicker}.flame-inner{animation-duration:.6s;animation-delay:-.4s}.camp-ember{animation:3s ease-out infinite camp-ember}.camp-adventurer,.camp-pet{transform-box:fill-box;transform-origin:50% 100%;animation:4.5s ease-in-out infinite camp-breathe}.camp-pet{animation-delay:-1.8s}@keyframes camp-flicker{0%{transform:scale(.93,.94)skew(-3deg)}to{transform:scale(1.04,1.07)skew(3deg)}}@keyframes camp-glow{0%{opacity:.55}to{opacity:1}}@keyframes camp-ember{0%{opacity:0;transform:translate(0)}20%{opacity:.9}to{opacity:0;transform:translate(12px,-65px)}}@keyframes camp-breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.018)}}.title-screen{isolation:isolate;border:1px solid var(--stage-line);min-height:calc(100svh - max(24px, env(safe-area-inset-top)) - max(28px, env(safe-area-inset-bottom)));border-radius:22px;justify-content:center;align-items:center;max-width:1200px;margin:0 auto;display:flex;position:relative;overflow:hidden}.title-screen .title-camp-scene{z-index:-2;width:100%;height:100%;position:absolute;inset:0}.title-screen:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#10271fa6,#0000 60%,#10271f30);position:absolute;inset:0}.title-copy{text-align:center;max-width:660px;margin-bottom:clamp(48px,18svh,180px);padding:24px}.title-copy .eyebrow,.slot-heading .eyebrow{color:#c8c79d}.title-copy h1{letter-spacing:-.055em;color:#fff4d6;margin:6px 0 14px;font-family:Georgia,serif;font-size:clamp(4.4rem,9vw,7rem);line-height:1}.title-copy>p:not(.eyebrow){color:#d2dbc6;margin:0;font-size:1rem;line-height:1.6}.title-actions{justify-content:center;gap:12px;margin-top:28px;display:flex}.title-actions button{color:#f0ebd5;background:#193227d9;border:1px solid #8c9e7755;border-radius:10px;justify-content:space-between;align-items:center;gap:32px;min-width:180px;min-height:52px;padding:12px 20px;font-weight:600;display:flex}.title-actions button.primary{color:#263021;background:#e3bb77;border-color:#e3bb77}.title-actions button:disabled{opacity:.4;cursor:default}.save-slots-screen{max-width:720px;margin:36px auto 0}.slot-heading{margin-bottom:24px}.slot-heading h1{margin:8px 0 14px;font-size:clamp(2rem,4vw,3.3rem);line-height:1.1}.slot-heading>p:last-child{color:#c6cfbb;margin:0;line-height:1.6}.save-slot-list{gap:12px;display:grid}.save-slot{text-align:left;color:#f2edda;background:#1c3428;border:1px solid #b7c49438;border-radius:14px;grid-template-columns:48px minmax(0,1fr) 20px;align-items:center;gap:20px;min-height:130px;padding:22px;display:grid}.save-slot:hover:not(:disabled){background:#253e2e;border-color:#dbb776}.save-slot .slot-number{color:#b7c494;font:500 2.6rem Georgia,serif}.save-slot strong{margin:6px 0;font-size:1.05rem;display:block}.save-slot small,.save-slot p{color:#bfcbb2;font-size:.8rem;line-height:1.45}.save-slot p{margin:0 0 8px}.save-slot .slot-arrow{color:#e3bb77}.save-slot:disabled{opacity:.5;cursor:default}.save-slots-screen>button{min-height:44px;margin-top:18px}.camp-relic-list{flex-wrap:wrap;gap:6px;max-height:150px;margin:12px 0;display:flex;overflow:auto}.camp-relic-list small{color:#e1d9b9;border:1px solid #b9c9a735;border-radius:6px;padding:5px 8px}.game-frame .prep-shell.pair-prep{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);place-items:stretch stretch;gap:24px;max-width:1200px;display:grid}.prep-camp-art{border:1px solid var(--stage-line);border-radius:20px;width:100%;min-height:500px;overflow:hidden}.prep-camp-art .camp-scene{height:100%}.game-frame .pair-prep .prep-card{flex-direction:column;justify-content:center;gap:22px;display:flex}.game-frame .prep-intro .eyebrow{margin:0 0 12px}.prep-intro h1{margin:0}.prep-intro>p:last-child{color:#c6cfbb;margin:14px 0 0;font-size:.9rem;line-height:1.5}.prep-pair{gap:12px;display:grid}.prep-choice-card{background:#253b2e;border:1px solid #b9c9a733;border-radius:12px;overflow:hidden}.prep-choice-card>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:100px;padding:18px;list-style:none;display:flex}.prep-choice-card>summary::-webkit-details-marker{display:none}.prep-choice-card>summary:focus-visible{outline-offset:-4px;border-radius:12px;outline:2px solid #f5d594}.prep-choice-card[open]{border-color:#dabb7b}.prep-choice-chevron{color:#dabb7b;flex-shrink:0;font-size:1.4rem;transition:transform .15s}.prep-choice-card[open] .prep-choice-chevron{transform:rotate(180deg)}.prep-choice-card .prep-build-summary,.prep-choice-card .prep-pet-summary{min-width:0}.prep-choice-card .prep-pet-summary small{color:#b9c9a7;text-transform:none;font-size:.68rem;line-height:1.4;display:block}.prep-choice-card .prep-build-summary strong,.prep-choice-card .prep-pet-summary strong{color:#fff3d3;font-family:inherit;font-size:1.05rem;line-height:1.3}.prep-choice-card .prep-build-summary p,.prep-choice-card .prep-pet-summary p{color:#c6cfbb;margin:6px 0 0;font-size:.8rem;line-height:1.45}.prep-choice-card .prep-pet-summary{align-items:center;gap:12px;display:flex}.prep-choice-card .prep-pet-summary .companion-portrait{flex-shrink:0;width:48px;height:48px}.prep-choice-options{border-top:1px solid #b9c9a721;gap:16px;max-height:420px;padding:0 18px 18px;display:grid;overflow:auto}.prep-choice-options>.prep-section-title{margin-top:16px}.prep-choice-options .starter-builds{grid-template-columns:1fr;gap:8px}.game-frame .prep-choice-options .loadout-choice{padding:12px}.game-frame .prep-choice-options .prep-section{padding:12px 0 0}.game-frame .pair-prep .prep-actions{margin-top:auto}@media (width<=900px){.game-frame .prep-shell.pair-prep{grid-template-columns:1fr;gap:12px}.prep-camp-art{border-radius:14px;height:clamp(100px,20svh,180px);min-height:0}.prep-camp-art .camp-scene{object-fit:cover}.game-frame .pair-prep .prep-card{gap:14px}}@media (width<=600px){.title-screen{min-height:calc(100svh - max(12px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)));border-radius:14px;margin-top:0}.title-copy{width:100%}.title-copy>p:not(.eyebrow){font-size:.9rem}.title-actions{flex-direction:column;gap:8px;max-width:280px;margin:22px auto 0}.title-actions button{width:100%}.save-slots-screen{margin-top:20px}.slot-heading{margin-bottom:18px}.slot-heading>p:last-child{font-size:.82rem}.save-slot{grid-template-columns:28px minmax(0,1fr) 16px;gap:12px;min-height:108px;padding:14px}.save-slot .slot-number{font-size:1.6rem}.save-slot strong{font-size:.9rem}.save-slot small,.save-slot p{font-size:.7rem}.game-frame .pair-prep .prep-card{gap:12px;padding:14px}.game-frame .pair-prep .prep-card h1{font-size:1.45rem}.game-frame .prep-intro .eyebrow{margin-bottom:7px}.prep-intro>p:last-child{margin-top:8px;font-size:.76rem}.prep-pair{gap:8px}.prep-choice-card>summary{min-height:80px;padding:12px}.prep-choice-card .prep-build-summary strong,.prep-choice-card .prep-pet-summary strong{font-size:.9rem}.prep-choice-card .prep-build-summary p,.prep-choice-card .prep-pet-summary p{font-size:.7rem}.prep-choice-card .prep-pet-summary .companion-portrait{width:36px;height:36px}.prep-choice-options{max-height:35svh;padding:0 12px 12px}.game-frame .pair-prep .prep-actions{background:#1b3225;border-radius:8px;margin:0;padding:0;position:sticky;bottom:8px}.game-frame .pair-prep .prep-actions>small{flex-basis:100%;font-size:.7rem}}@media (prefers-reduced-motion:reduce){.camp-scene *{animation:none}.camp-ember{opacity:0}.prep-choice-chevron{transition:none}}.settings-trigger{z-index:20;top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));color:#e6dfcb;cursor:pointer;background:#14271ed9;border:1px solid #b9c9a72b;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:fixed}.settings-trigger:hover{background:#2b4130}.settings-trigger svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.game-frame:has(>.title-screen)>.settings-trigger{top:calc(max(24px, env(safe-area-inset-top)) + 12px);right:calc(max(28px, env(safe-area-inset-right), (100vw - 1200px) / 2) + 12px)}@media (width<=680px){.game-frame:has(>.title-screen)>.settings-trigger{top:calc(max(12px, env(safe-area-inset-top)) + 12px);right:calc(max(12px, env(safe-area-inset-right)) + 12px)}}.settings-controls{border-bottom:1px solid var(--stage-line);gap:8px;margin-bottom:18px;padding-bottom:18px;display:grid}.settings-option{border:1px solid var(--stage-line);width:100%;min-height:48px;color:var(--stage-text);text-align:left;cursor:pointer;background:#ffffff05;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;display:flex}.settings-option:hover:not(:disabled){background:#ffffff0c;border-color:#b9c9a770}.settings-option[aria-pressed=true] strong{color:#a8cf99}.settings-option:disabled{opacity:.55;cursor:default}.settings-controls>small{padding:0 4px;display:block}.title-sound{color:#e7dfbe;min-height:44px;font:inherit;cursor:pointer;background:#193227d9;border:1px solid #c8c79d55;border-radius:8px;margin:14px auto 0;padding:8px 14px;font-size:.8rem}.title-sound[aria-pressed=true]{color:#c7ddb6}.inspect-build{border:1px solid var(--stage-line);min-height:44px;color:var(--stage-text);font:inherit;text-align:left;cursor:pointer;background:#ffffff08;border-radius:7px;padding:5px 10px;font-size:.76rem}.inspect-build small{color:var(--stage-muted);margin-top:3px;font-size:.65rem;display:block}.build-details{border:1px solid var(--stage-line);width:min(600px,100vw - 24px);max-height:calc(100svh - 24px);color:var(--stage-text);background:#20362a;border-radius:14px;padding:0}.build-details::backdrop{background:#08170fc9}.build-details>header{border-bottom:1px solid var(--stage-line);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.build-details h2{margin:0;font-size:1.1rem}.build-details header button{min-width:44px;min-height:44px;color:var(--stage-text);cursor:pointer;background:#ffffff08;border:0;border-radius:7px;font-size:1.5rem}.build-details-body{overscroll-behavior:contain;max-height:calc(100svh - 96px);padding:0 16px 16px;overflow:auto}.build-details h3{margin:20px 0 8px;font-size:.96rem}.build-details p{color:var(--stage-muted);margin:6px 0;font-size:.8rem;line-height:1.5}.build-details article{border:1px solid var(--stage-line);background:#ffffff04;border-radius:8px;margin:8px 0;padding:10px 12px}.build-details article strong{font-size:.88rem}.build-details article small{color:#d3c7a0;font-size:.72rem}.game-frame .main-action-stage .fighter-statuses{overscroll-behavior:contain;pointer-events:auto;flex-wrap:wrap;grid-column:1/-1;align-content:start;gap:3px;min-width:0;height:48px;display:flex;overflow:auto}.fighter-statuses:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.fighter-statuses>span{color:#e4ecd4;background:#304736;border:1px solid #98b9a766;border-radius:5px;align-items:center;gap:4px;padding:3px 6px;font-size:.66rem;line-height:1.3;display:inline-flex}.fighter-statuses>span[data-status=BLEED],.fighter-statuses>span[data-status=STUN],.fighter-statuses>span[data-status=WEAKNESS]{color:#ffe0d6;background:#61352e;border-color:#dc927c}.fighter-statuses>span[data-status=SHIELD]{color:#d9f2ff;background:#29495a;border-color:#8dbcc9}.fighter-statuses i{font-style:normal}.game-frame .main-action-stage .live-combat-feed{border-bottom:1px solid var(--stage-line);flex:0 0 100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;padding-bottom:5px;display:grid}.live-combat-entries{overscroll-behavior:contain;height:44px;max-height:74px;padding:0 3px;overflow:auto}.live-combat-entries p{color:var(--stage-text);overflow-wrap:anywhere;margin:0 0 4px;font-size:.73rem;line-height:1.4}.live-combat-entries strong{color:#d7bc86;margin-right:4px;font-size:.64rem}.game-frame .main-action-stage .action-log{flex-shrink:0;max-height:none;padding:0;overflow:visible}.game-frame .main-action-stage .action-log[open]{position:static}.game-frame .main-action-stage .action-history{z-index:14;border:1px solid var(--stage-line);border-radius:10px;padding:12px;position:absolute;inset:84px 12px 66px;overflow:auto;box-shadow:0 12px 40px #07170e88}.game-frame .main-action-stage .action-history ol{max-height:none;overflow:visible}.game-frame .main-action-stage .reward-choice:hover:not(.selected):not(:disabled){box-shadow:none;background:#2c4433;border-color:#aebc9855}.game-frame .main-action-stage .reward-choice .choice-description{color:var(--stage-text);line-height:1.4}.game-frame .main-action-stage .reward-choice .choice-consequence{color:#c7c49d;font-size:.7rem}@media (width<=680px){.game-frame .run-status .inspect-build{grid-area:1/4;padding:4px 6px;font-size:.64rem}.inspect-build small{font-size:.6rem}.live-combat-entries{max-height:50px}.live-combat-entries p{font-size:.66rem}.fighter-statuses>span{padding:2px 4px;font-size:.6rem}.game-frame .main-action-stage .action-history{inset:68px 8px 62px}.live-combat-entries p:first-child:not(:last-child),.game-frame .main-action-stage .fighter-skill-list,.game-frame .main-action-stage .fighter-companion{display:none}.game-frame .main-action-stage .fighter-statuses{height:40px}}.game-frame .main-action-stage .fighter-overlays{height:100%;min-height:0}.fighter-team{flex-direction:column;gap:4px;min-width:0;height:100%;min-height:0;display:flex}.fighter-team-heading{color:var(--stage-muted);flex:none;font-size:.65rem;line-height:16px}.player-team-heading{display:none}.game-frame .main-action-stage .fighter-label{box-shadow:none}.fighter-team-list{overscroll-behavior:contain;pointer-events:auto;scrollbar-width:thin;flex-direction:column;gap:6px;min-height:0;padding:1px 2px;display:flex;overflow-y:auto}.fighter-team-list:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.game-frame .main-action-stage .fighter-team-list .fighter-label{flex:none;grid-template-columns:22px minmax(0,1fr) auto;gap:2px 5px}.game-frame .main-action-stage .fighter-team-list .fighter-portrait{grid-row:1;width:18px;height:16px}.game-frame .main-action-stage .fighter-team-list .fighter-label>strong{grid-column:2/-1;line-height:16px}.game-frame .main-action-stage .fighter-team-list .fighter-hp{grid-column:1/3;line-height:16px}.game-frame .main-action-stage .fighter-team-list .fighter-defense{grid-area:2/3;line-height:16px}.game-frame .main-action-stage .fighter-team[data-team=enemy] .fighter-statuses{height:24px}.game-frame .main-action-stage .fighter-team[data-team=enemy] .fighter-label+.fighter-label{border-top:1px solid var(--stage-line);padding-top:6px}@media (width<=680px){.game-frame .main-action-stage .battle-canvas{grid-template-rows:minmax(120px,1fr) minmax(0,164px)}.game-frame .main-action-stage .fighter-overlays{gap:6px}.game-frame .main-action-stage .fighter-team-list .fighter-label{grid-template-columns:20px minmax(0,1fr) auto;gap:2px 4px}.game-frame .main-action-stage .fighter-team-list .fighter-hp{font-size:.65rem}.game-frame .main-action-stage .fighter-team-list .fighter-defense{font-size:.6rem}.game-frame .main-action-stage .fighter-team[data-team=enemy] .fighter-statuses{height:20px}}@media (width>=901px){.game-frame .main-action-stage .battle-canvas{grid-template-rows:minmax(120px,1fr) minmax(0,166px)}.game-frame .main-action-stage .fighter-overlays{gap:16px;padding:10px max(16px,50% - 560px)}.game-frame .main-action-stage .fighter-overlays:not([data-enemy-count="1"]){grid-template-columns:minmax(240px,1fr) minmax(0,2fr)}.player-team-heading{display:block}.fighter-team-heading{font-size:.72rem}.fighter-team-list{flex:1;padding:0}.fighter-team[data-team=enemy] .fighter-team-list{grid-template-columns:repeat(var(--enemy-columns), minmax(0, 1fr));align-content:start;gap:10px;display:grid}.game-frame .main-action-stage .fighter-team-list .fighter-label,.game-frame .main-action-stage .fighter-team[data-team=enemy] .fighter-label+.fighter-label{background:#21382a;border:1px solid #a7bc982e;border-radius:9px;grid-area:auto;grid-template-columns:32px minmax(0,1fr) auto;gap:5px 8px;min-width:0;padding:12px}.game-frame .main-action-stage .fighter-team-list .fighter-label>strong{font-size:.9rem;line-height:20px}.game-frame .main-action-stage .fighter-team-list .fighter-portrait{grid-row:1/3;width:32px;height:32px}.game-frame .main-action-stage .fighter-team-list .fighter-hp{grid-column:2;font-size:.82rem;line-height:18px}.game-frame .main-action-stage .fighter-team-list .fighter-defense{font-size:.75rem;line-height:18px}.game-frame .main-action-stage .fighter-team-list .fighter-label .fighter-statuses{height:38px}}.game-frame .main-action-stage .action-history>div{z-index:1;background:#20362a;padding:4px 0;position:sticky;top:-12px}.game-frame .main-action-stage .relic-trade{grid-template-columns:1fr}.relic-trade-intro{grid-column:1/-1;padding:4px 0 8px}.relic-trade-intro>strong{color:var(--stage-text);font-size:.95rem}.relic-trade-intro p{color:var(--stage-muted);margin:6px 0;font-size:.78rem;line-height:1.4}.relic-trade-intro button{border:1px solid var(--stage-line);min-height:44px;color:var(--stage-text);cursor:pointer;background:0 0;border-radius:7px;padding:7px 12px}.game-frame .main-action-stage .reward-choice.relic-replacement-option{min-height:72px}.game-frame .main-action-stage .reward-choice.relic-replacement-option>small{color:var(--stage-muted);font-size:.74rem;line-height:1.4;display:block}.relic-offer .relic-replacement-option{width:100%;margin-top:6px}@media (width>=901px){.game-frame .main-action-stage .relic-trade{grid-template-columns:repeat(3,minmax(0,1fr))}}.camp-inventory-details summary{align-items:center;min-height:44px;font-size:.8rem;display:flex}.camp-inventory-items{overscroll-behavior:contain;max-height:180px;overflow:auto}.camp-inventory-items article{border-top:1px solid #d9dec426;padding:8px 0}.camp-inventory-items strong{font-size:.8rem}.camp-inventory-items p{font-size:.74rem;line-height:1.4}.stage-title{min-width:0}.tutorial-tip{color:#d5d7b1;margin:3px 0 0;font-size:.76rem;line-height:1.25}.guided-prep-note{color:#d8d5b4;margin:0;font-size:.85rem;line-height:1.4}.prep-fixed-card{padding:14px 18px}.prep-fixed-card strong{color:#fff3d3;font-family:inherit;font-size:1rem}.prep-fixed-card p{color:#c6cfbb;margin:5px 0;font-size:.8rem;line-height:1.4}.prep-fixed-card small{color:#b9c9a7;font-size:.76rem}.prep-fixed-card.prep-pet-summary{align-items:center;gap:12px;display:flex}.prep-fixed-card .companion-portrait{flex-shrink:0;width:46px;height:46px}.game-frame .main-action-stage .illustrated-reward{text-align:left;grid-template-columns:78px minmax(0,1fr);align-content:start;gap:3px 14px}.reward-art{grid-area:1/1/span 3;align-self:center;width:78px;height:78px;display:block}.game-frame .main-action-stage .illustrated-reward>.reward-category{grid-area:1/2}.game-frame .main-action-stage .illustrated-reward>strong{grid-area:2/2}.game-frame .main-action-stage .illustrated-reward>.reward-benefit{color:#e4dec4;grid-area:3/2}.game-frame .main-action-stage .illustrated-reward>.reward-description{grid-area:4/2}.game-frame .main-action-stage .illustrated-reward>.build-fit-hint{grid-area:4/2;display:block}@media (width>=901px){.main-action-stage[data-stage=reward] .choice-settlement>span,.main-action-stage[data-stage=reward] .choice-settlement>small{display:none}.main-action-stage[data-stage=reward] .reward-list{grid-template-columns:repeat(3,minmax(0,1fr))}.game-frame .main-action-stage .illustrated-reward{grid-template-columns:58px minmax(0,1fr);gap:3px 10px}.game-frame .main-action-stage .reward-art{width:58px;height:58px}}@media (width<=900px){.game-frame .guided-prep .prep-camp-art{height:100px}.game-frame .guided-prep .prep-card{gap:10px}.game-frame .guided-prep .prep-intro>p:last-child{margin-top:8px}.guided-prep-note{font-size:.76rem}.prep-fixed-card{padding:10px 12px}.prep-fixed-card strong{font-size:.85rem}.prep-fixed-card p{margin:3px 0;font-size:.74rem}.prep-fixed-card small{font-size:.68rem}.tutorial-tip{font-size:.65rem}.game-frame .main-action-stage[data-stage=reward] .reward-list{gap:5px}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward{grid-template-columns:42px minmax(0,1fr);gap:1px 8px;min-height:56px;padding:4px 8px}.game-frame .main-action-stage .reward-art{grid-row:1/span 3;width:42px;height:42px}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward>.reward-category{grid-area:1/2;font-size:.58rem}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward>strong{grid-area:2/2;font-size:.78rem}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward>.reward-benefit{grid-area:3/2;font-size:.64rem;line-height:1.2;display:block}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward>.reward-description{display:none}.game-frame .main-action-stage[data-stage=reward] .illustrated-reward>.build-fit-hint{grid-area:4/2;font-size:.64rem;line-height:1.3;display:block}}.game-frame .camp-records-button{color:#e4dec9;text-align:left;background:#14291f;border:1px solid #bacb9540;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:44px;margin-top:14px;padding:10px 12px;font-size:.8rem;display:flex}.records-shell{color:#f0e7d4;max-width:980px;margin:0 auto;padding:0 0 24px}.records-heading{z-index:10;background:#192b23f5;justify-content:space-between;align-items:center;gap:20px;padding:12px 0 18px;display:flex;position:sticky;top:0}.records-heading .eyebrow{color:#b9c9a7;margin:0 0 7px}.records-heading h1{letter-spacing:-.03em;margin:0;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.15}.records-heading h1:focus{outline:none}.records-heading button{color:#e4dec9;background:#14291f;border:1px solid #bacb9540;border-radius:9px;flex-shrink:0;min-height:44px;padding:10px 14px}.records-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.records-metric{background:#1c3026;border:1px solid #c5d0aa24;border-radius:12px;min-width:0;padding:16px}.records-metric span,.records-metric strong{display:block}.records-metric span{color:#b9c9a7;margin-bottom:8px;font-size:.74rem}.records-metric strong{overflow-wrap:anywhere;font-size:1.5rem;font-weight:600;line-height:1.1}.records-note,.records-local{color:#b9c4af;margin:12px 0;font-size:.76rem;line-height:1.5}.records-local{border-top:1px solid #c5d0aa24;margin-top:28px;padding-top:16px}.records-views{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:22px 0;display:grid}.records-views button{color:#c6cfbb;background:#14291f;border:1px solid #bacb9540;border-radius:9px;min-height:44px;padding:8px;font-size:.84rem}.records-views button[aria-pressed=true]{color:#f0e7d4;background:#354931;border-color:#bacb95}.records-section{margin-top:24px}.records-section h2{color:#f0e7d4;margin:0 0 8px;font-size:1.15rem}.records-section>p{color:#b9c4af;margin:0 0 16px;font-size:.84rem;line-height:1.5}.records-list{gap:8px;display:grid}.record-row{background:#1c3026;border:1px solid #c5d0aa24;border-radius:12px;overflow:hidden}.record-row summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;min-height:74px;padding:12px 16px;list-style:none;display:grid}.record-row[data-ranked=true] summary{grid-template-columns:26px minmax(0,1fr) auto 16px}.record-row summary::-webkit-details-marker{display:none}.record-row summary:after{content:"+";color:#b9c9a7;text-align:center}.record-row[open] summary:after{content:"−"}.record-rank{color:#e2b877;font-size:.94rem}.record-title{min-width:0}.record-title strong,.record-title small,.record-score small{display:block}.record-title strong{color:#f0e7d4;font-size:.94rem;line-height:1.3}.record-title small{color:#b9c4af;margin-top:4px;font-size:.72rem;line-height:1.4}.record-score{text-align:right;color:#e2b877;font-size:1.4rem;font-weight:600}.record-score small{color:#b9c4af;font-size:.66rem;font-weight:400}.record-details{color:#d5ddc8;overflow-wrap:anywhere;border-top:1px solid #c5d0aa24;padding:16px;font-size:.82rem;line-height:1.5}.record-details>p{color:#b9c4af;margin:0 0 12px}.record-details dl{gap:10px;margin:14px 0;display:grid}.record-details dt{color:#b9c4af;font-size:.72rem}.record-details dd{color:#f0e7d4;margin:3px 0 0}.record-details>small{color:#b9c4af;font-size:.72rem}.record-companion{align-items:center;gap:10px;display:flex}.record-companion .companion-portrait{flex-shrink:0;width:40px;height:40px}.records-pets{gap:10px;display:grid}.records-pet{background:#1c3026;border:1px solid #c5d0aa24;border-radius:12px;align-items:start;gap:16px;padding:18px;display:flex}.records-pet .companion-portrait{flex-shrink:0;width:64px;height:64px}.records-pet[data-unlocked=false] .companion-portrait{opacity:.55}.records-pet h3{color:#f0e7d4;margin:5px 0 8px;font-size:1rem}.records-pet small{color:#b9c9a7;font-size:.74rem}.records-pet[data-unlocked=true] small{color:#e2b877}.records-pet p{color:#b9c4af;margin:4px 0;font-size:.8rem;line-height:1.5}.records-skills{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.records-skills article{background:#1c3026;border:1px solid #c5d0aa24;border-radius:12px;gap:6px;padding:16px;display:grid}.records-skills strong{color:#f0e7d4;font-size:.9rem}.records-skills span{color:#d5ddc8;font-size:.8rem}.records-skills small{color:#b9c4af;font-size:.72rem}.records-shell button:focus-visible,.record-row summary:focus-visible,.camp-records-button:focus-visible{outline-offset:3px;outline:3px solid #e2b877}@media (width<=680px){.records-heading{flex-direction:column;align-items:start;gap:12px;padding:4px 0 14px}.records-heading>div{padding-right:44px}.records-heading h1{font-size:1.45rem}.records-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.records-metric{padding:12px}.records-metric span{margin-bottom:6px;font-size:.67rem}.records-metric strong{font-size:1.2rem}.records-views{grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0}.records-views button{font-size:.74rem}.record-row summary{gap:8px;padding:12px}.record-row[data-ranked=true] summary{grid-template-columns:18px minmax(0,1fr) auto 12px}.record-title strong{font-size:.85rem}.record-title small{font-size:.65rem}.record-score{font-size:1.25rem}.records-pet{gap:12px;padding:14px}.records-pet .companion-portrait{width:48px;height:48px}.records-skills{grid-template-columns:1fr}}.achievement-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.achievement-heading h2{margin:0}.achievement-heading span{color:#e2b877;font-size:.78rem}.achievement-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.achievement-card{background:#1c3026;border:1px solid #c5d0aa24;border-radius:12px;align-items:start;gap:16px;padding:18px;display:flex}.achievement-card[data-earned=true]{border-color:#e2b87750}.achievement-art{color:#96a987;flex-shrink:0;width:64px;height:71px}.achievement-face{fill:#14271e}.achievement-card[data-earned=true] .achievement-art{color:#e2b877}.achievement-card[data-earned=true] .achievement-face{fill:#39452d}.achievement-copy{flex:1;min-width:0}.achievement-status{color:#b9c4af;font-size:.69rem}.achievement-card[data-earned=true] .achievement-status{color:#e2b877}.achievement-copy h3{color:#f0e7d4;margin:5px 0 9px;font-size:1rem;line-height:1.3}.achievement-copy p{color:#b9c4af;margin:5px 0;font-size:.8rem;line-height:1.5}.achievement-copy .achievement-date{color:#e2b877;margin-top:12px;font-size:.73rem}.achievement-progress{color:#c6cfbb;margin-top:14px;font-size:.69rem;line-height:1.4;display:block}.achievement-copy progress{appearance:none;background:#bacb9526;border:none;border-radius:4px;width:100%;height:5px;margin-top:8px;display:block;overflow:hidden}.achievement-copy progress::-webkit-progress-bar{background:#bacb9526}.achievement-copy progress::-webkit-progress-value{background:#b9ce96}.achievement-copy progress::-moz-progress-bar{background:#b9ce96}.achievement-list+.records-note{margin-top:16px;font-size:.76rem}@media (width<=680px){.achievement-list{grid-template-columns:1fr;gap:10px}.achievement-card{gap:12px;padding:14px}.achievement-art{width:52px;height:58px}.achievement-copy h3{font-size:.92rem}}.game-icon{flex-shrink:0;width:24px;height:24px;display:block}.run-party{align-items:center;gap:16px;display:flex}.game-frame .run-heading .expedition-objective .boss-defeated-word{margin:0;display:inline}.party-health{min-width:100px;color:var(--stage-text);grid-template-columns:auto auto;align-items:baseline;gap:3px 8px;display:grid}.party-health>span{color:var(--stage-muted);font-size:.7rem}.party-health>strong{white-space:nowrap;font-size:.95rem}.party-health .health-track{border-radius:8px;grid-column:1/-1;width:100%;height:5px;overflow:hidden}.game-frame .run-status{grid-template-columns:auto minmax(0,1fr) auto;gap:18px;padding:7px 14px}.inventory-belt{align-items:center;gap:7px;min-width:0;display:flex}.game-frame .inventory-belt .inspect-build{min-height:44px;color:var(--stage-muted);align-items:center;gap:7px;margin:0;padding:6px 8px;font-size:.76rem;display:flex}.inventory-slot{border:1px solid var(--stage-line);color:#d1d8b7;cursor:pointer;background:#14271e;border-radius:8px;flex:0 0 44px;place-items:center;width:44px;height:44px;padding:5px;display:grid;position:relative}.inventory-slot.empty{color:#849980;border-style:dashed}.inventory-slot small{color:var(--stage-text);background:#14271e;border-radius:3px;padding:1px 2px;font-size:.64rem;line-height:1.1;position:absolute;bottom:1px;right:3px}.inventory-slot .reward-art{width:34px;height:34px}.belt-gold{text-align:right;min-width:45px}.game-frame .main-action-stage .route-node .route-type{align-items:center;gap:7px;display:flex}.map-memory{flex-shrink:0}.map-memory>summary{cursor:pointer;min-height:44px;color:var(--stage-muted);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:5px 8px;font-size:.72rem;display:flex}.map-memory>summary::marker{content:""}.map-memory>summary::-webkit-details-marker{display:none}.route-mini-map .game-icon{width:20px;height:20px}.map-memory[open]>summary{color:var(--stage-text);background:#354632}.map-memory-body{z-index:12;border:1px solid var(--stage-line);background:#20362a;border-radius:10px;max-height:min(340px,45svh);padding:8px 14px 14px;position:absolute;inset:70px 12px auto;overflow-y:auto;box-shadow:0 12px 35px #07170fcc}.map-memory-body>button{color:var(--stage-text);text-align:right;background:#20362a;border:0;width:100%;min-height:44px;font-size:.78rem;position:sticky;top:0}.map-memory-body .route-progress{margin:0}.map-memory-body .route-progress-row{color:var(--stage-text);background:#14271e}.camp-meters{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=680px){.run-heading{gap:4px;padding-right:48px;position:relative}.run-heading .expedition-objective{flex:1;min-width:0}.game-frame .run-heading .expedition-objective .boss-defeated-word{display:none}.run-party{flex-shrink:0;gap:6px;width:114px}.run-party[data-has-pet=false]{width:64px}.game-frame .run-shell .run-heading .companion-badge{max-width:44px;position:static}.game-frame .run-shell .companion-badge-body{width:auto;max-height:45svh;top:100%;left:0;right:0;overflow-y:auto}.party-health{flex:0 0 64px;grid-template-columns:1fr;gap:1px;width:64px;min-width:64px}.party-health>strong{font-size:.76rem}.party-health>span{font-size:.6rem}.game-frame .run-status{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:5px 7px}.game-frame .run-status .run-location{display:none}.inventory-belt{gap:5px}.game-frame .inventory-belt .inspect-build{flex-direction:column;flex:0 0 44px;justify-content:center;gap:1px;width:44px;padding:1px;font-size:.56rem}.inventory-belt .inspect-build .game-icon{width:21px;height:21px}.inventory-slot{flex-basis:44px}.game-frame .main-action-stage .route-node .route-type{gap:4px}.route-type .game-icon{width:20px;height:20px}.route-mini-map{gap:4px;padding:2px 8px}.route-mini-map>svg{flex:1;width:calc(100% - 90px);min-width:0}.map-memory>summary{flex-direction:column;gap:1px;padding:2px 4px;font-size:.6rem}.map-memory-body{padding:6px 10px 10px;top:61px;left:8px;right:8px}}.content-icon{color:#dbd9b5;vertical-align:middle;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.content-icon>svg,.content-icon .reward-art{width:100%;height:100%}.icon-entry{align-items:flex-start;gap:12px;display:flex}.icon-entry>div{flex:1;min-width:0}.build-details .icon-entry>.content-icon{flex-basis:42px;width:42px;height:42px}.inventory-slot .content-icon{flex-basis:32px;width:32px;height:32px}.game-frame .icon-choice{text-align:left;grid-template-columns:32px minmax(0,1fr);column-gap:10px;display:grid}.game-frame .icon-choice>:not(.content-icon){grid-area:auto/2}.game-frame .icon-choice>.content-icon{color:#dbd9b5;grid-area:1/1/span 4;align-self:center}.game-frame .main-action-stage .reward-choice.icon-choice{grid-template-columns:32px minmax(0,1fr);gap:3px 10px}.game-frame .main-action-stage .reward-choice.icon-choice>:not(.content-icon){grid-area:auto/2}.game-frame .main-action-stage .reward-choice.icon-choice>.content-icon{grid-area:1/1/span 4}.game-frame .loadout-choice.icon-choice>span:not(.content-icon){font-size:.62rem}.build-icon-pair{gap:5px;display:flex}.prep-build-summary{position:relative}.prep-build-summary>.build-icon-pair{position:absolute;top:0;right:0}.prep-build-summary>small{padding-right:70px}.prep-fixed-card>.build-icon-pair{float:right;margin-left:8px}.starter-builds .loadout-choice{position:relative}.starter-builds .build-icon-pair{position:absolute;top:9px;right:12px}.starter-builds .loadout-choice>span{padding-right:70px}.build-icon-pair .content-icon{flex-basis:25px;width:25px;height:25px}.skill-slot-row button{align-items:center;gap:7px;display:flex}.skill-slot-row .content-icon{flex-basis:22px;width:22px;height:22px}.game-frame button>.game-icon{vertical-align:middle;width:18px;height:18px;margin-right:7px;display:inline-block}.game-frame .inventory-belt button>.game-icon{margin-right:0}.title-actions button,.game-frame .menu-actions button{align-items:center;gap:10px;display:flex}.title-actions button>span:last-child,.menu-actions button>span:last-child{margin-left:auto}.title-sound,.records-views button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.title-sound>.game-icon,.records-views button>.game-icon{margin:0}.settings-option>span:first-child{align-items:center;gap:8px;display:inline-flex}.settings-option .game-icon{width:20px;height:20px}.camp-records-button>span:last-child{margin-left:auto}.stage-tools button:has(>.game-icon){justify-content:center;align-items:center;gap:4px;display:inline-flex}.game-frame .stage-tools button>.game-icon{width:14px;height:14px;margin:0}.game-frame .main-action-stage .battle-beat{align-items:center;gap:9px;display:flex}.game-frame .main-action-stage .battle-beat[data-quiet=true]{display:none}.battle-beat>div{gap:3px;min-width:0;display:grid}.game-frame .main-action-stage .fighter-skill-chip .content-icon{flex-basis:15px;width:15px;height:15px}.fighter-statuses .game-icon{vertical-align:middle;width:13px;height:13px;display:inline-block}.live-combat-entries .content-icon{width:14px;height:14px;margin-right:4px}.log-entry>span>.content-icon{flex:0 0 18px;width:18px;height:18px;margin-right:4px}.action-log summary small .game-icon{vertical-align:middle;width:12px;height:12px;margin-right:2px;display:inline-block}.record-content{vertical-align:middle;align-items:center;gap:4px;display:inline-flex}.record-content .content-icon{flex-basis:20px;width:20px;height:20px}@media (width<=680px){.game-frame .main-action-stage[data-stage=combat] .stage-tools:has(.controls>button){grid-template-columns:repeat(3,minmax(0,1fr));row-gap:3px;padding-block:3px;display:grid}.game-frame .main-action-stage[data-stage=combat] .stage-tools>.live-combat-feed,.game-frame .main-action-stage[data-stage=combat] .stage-tools>.feed-toggle{grid-column:1/-1}.game-frame .main-action-stage[data-stage=combat] .stage-tools>.battle-log{grid-column:auto}.game-frame .main-action-stage[data-stage=combat] .stage-tools .controls>button,.game-frame .main-action-stage[data-stage=combat] .stage-tools>button,.game-frame .main-action-stage[data-stage=combat] .stage-tools>details>summary,.game-frame .main-action-stage[data-stage=combat] .stage-tools .replay-tools>summary{width:100%;min-width:0;padding:6px 4px;font-size:.68rem;line-height:1.25}.game-frame .main-action-stage .reward-choice.icon-choice{grid-template-columns:28px minmax(0,1fr);gap:2px 8px}.game-frame .main-action-stage .reward-choice.icon-choice>.content-icon{flex-basis:28px;width:28px;height:28px}.game-frame .stage-heading button>.game-icon{width:14px;height:14px;margin-right:4px}.build-icon-pair .content-icon{flex-basis:21px;width:21px;height:21px}.prep-build-summary>small,.starter-builds .loadout-choice>span{padding-right:50px}}.first-expedition-loop{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.first-expedition-loop li{color:var(--stage-text);align-items:center;gap:8px;font-size:.8rem;display:flex}.first-expedition-loop .game-icon{width:22px;height:22px;color:var(--gold)}.tutorial-tip{border-left:2px solid var(--gold);margin:4px 0 0;padding-left:10px}.tutorial-tip>small{color:#dbbf89;font-size:.64rem;line-height:1.3;display:block}.tutorial-tip>p{color:var(--stage-text);margin:3px 0 0;font-size:.78rem;line-height:1.35}.tutorial-tip[data-step=battle]>p{min-height:2.7em}.records-decisions,.run-growth{color:#d5ddc8;border:1px solid #c5d0aa24;border-radius:8px;padding:12px}.records-decisions>summary,.run-growth>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.records-decisions>summary:before,.run-growth>summary:before{content:"▸"}.records-decisions[open]>summary:before,.run-growth[open]>summary:before{content:"▾"}.run-insights{font-size:.8rem}.run-insights>p,.run-growth p{color:#b9c4af;line-height:1.5}.run-insights dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.run-insights dt{color:#b9c4af}.run-insights dd{color:#f0e7d4;margin:3px 0 0}.relic-remove-actions{flex-wrap:wrap;gap:8px;display:flex}.offer-group{border:1px solid var(--stage-line);background:#1c3026;border-radius:10px;grid-column:1/-1;min-width:0;padding:8px}.offer-group>summary{cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:2px 8px;min-height:44px;list-style:none;display:grid}.offer-group>summary::-webkit-details-marker{display:none}.offer-group>summary>.content-icon{color:#dbd9b5}.offer-group>summary>svg,.offer-group>summary>.content-icon{grid-area:1/1/span 2;width:24px;height:24px}.game-frame .main-action-stage .offer-group>summary>strong{letter-spacing:0;min-width:0;color:var(--stage-text);grid-area:1/2;font-family:inherit;font-size:.85rem;font-weight:600;line-height:1.3}.offer-group>summary:after{content:"⌄";color:var(--stage-muted);grid-area:1/3/span 2}.offer-group>summary>span:not(.content-icon){letter-spacing:0;text-transform:none;color:var(--stage-muted);grid-area:2/2;font-size:.68rem;font-weight:400}.offer-group>p{color:var(--stage-muted);margin:8px 2px;font-size:.78rem;line-height:1.4}.offer-group .reward-choice{width:100%;margin-top:6px}.boss-forecast{color:var(--stage-text);border-left:2px solid #dfb96f;align-items:flex-start;gap:8px;margin:0 0 6px;padding:8px;font-size:.76rem;line-height:1.35;display:flex}.boss-forecast .game-icon{flex:0 0 20px;width:20px;height:20px}.game-frame .main-action-stage .route-dossier>.route-preparation{color:var(--stage-muted);grid-area:1/1/auto/-1;margin:0 0 5px;font-size:.76rem;line-height:1.4;display:block}.game-frame .main-action-stage .route-dossier.has-preparation>span{grid-row:2}.game-frame .main-action-stage .route-dossier.has-preparation>strong{grid-row:3}.game-frame .main-action-stage .route-dossier.has-preparation>.route-enter{grid-row:2/span 2}.boss-plan{color:var(--stage-muted);font-size:.78rem;line-height:1.4}.build-details article button{min-height:44px;color:var(--stage-text);cursor:pointer;background:#ffffff08;border:1px solid #c5d0aa55;border-radius:7px;align-items:center;gap:8px;margin-top:6px;padding:8px 12px;font-size:.78rem;display:inline-flex}.shop-replacements{grid-column:1/-1}.shop-replacements>summary{cursor:pointer;min-height:44px;color:var(--stage-text);align-items:center;gap:8px;display:flex}.shop-replacements>p{color:var(--stage-muted);font-size:.8rem}.style-unlock-hint{color:var(--stage-muted);margin:4px 0;font-size:.75rem;line-height:1.4}.shop-replacements .reward-choice{width:100%;margin:6px 0}.game-frame .main-action-stage .map-memory-body .route-goal{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.game-frame .run-status{background:0 0;border-color:#0000;padding-block:3px}.game-frame .inventory-belt .inspect-build,.game-frame .inventory-slot{background:0 0;border-color:#0000}.game-frame .inventory-belt button:hover,.game-frame .inventory-belt button:focus-visible{border-color:var(--stage-line);background:#ffffff08}.game-frame .main-action-stage .fighter-skill-list,.game-frame .main-action-stage .fighter-companion{display:none}.game-frame .main-action-stage .battle-tools>summary{justify-content:center;align-items:center;gap:5px;list-style:none;display:flex}.battle-tools>summary::-webkit-details-marker{display:none}.battle-tools>summary .game-icon{width:15px;height:15px}.game-frame .main-action-stage .battle-tools[open]>.battle-tools-menu{overscroll-behavior:contain;max-height:min(340px,100svh - 240px);padding:10px;display:block;overflow-y:auto}.battle-tools-menu>header{z-index:1;background:#243d2c;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding-block:4px;display:flex;position:sticky;top:-10px}.battle-tools-menu>header>strong{font-size:.8rem}.battle-tools-menu>header>button{min-width:44px}.battle-tool-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.battle-tool-actions>button{min-width:0;font-size:.72rem}.game-frame .main-action-stage .battle-tools-menu>.battle-log{border:0;border-top:1px solid var(--stage-line);border-radius:0;margin:8px 0 0}.game-frame .main-action-stage .battle-tools-menu .battle-log .log-panel{background:0 0;border:0;width:100%;max-height:180px;padding:8px 0 0;position:static;overflow-y:auto}.battle-tools-menu .log-panel h2{font-size:.85rem}.battle-tools-menu .log-panel .section-kicker{display:none}.battle-tools-menu .log-panel .log-list{max-height:none}.game-frame .main-action-stage .battle-tools-menu .companion-contribution{border:0;border-top:1px solid var(--stage-line);border-radius:0;margin:8px 0 0;padding:0}@media (width<=680px){.first-expedition-loop{gap:6px}.first-expedition-loop li{flex-direction:column;align-items:flex-start;gap:5px;font-size:.68rem;line-height:1.3}.game-frame .guided-prep .prep-camp-art{height:76px}.tutorial-tip>p{font-size:.68rem}.game-frame .main-action-stage .battle-tools-menu button{padding:6px 4px;font-size:.68rem}}.companion-badge[data-lost=true] summary{color:#e1a195}.game-frame .main-action-stage .companion-risk>summary{color:var(--stage-text)}.game-frame .main-action-stage .resolution-preview[data-pet-risk=true]{color:var(--stage-text);border-left:2px solid #dc9d87;padding-left:8px}.main-action-stage[data-environment] .route-mini-map{background:linear-gradient(115deg, var(--world-bg), #192d25 85%);border-top:2px solid var(--world-accent)}.main-action-stage .zone-name{color:var(--world-accent);margin-bottom:3px;font-size:.85rem;display:block}.main-action-stage .zone-subtitle{margin-top:3px;display:block}.zone-arrival{border-left:2px solid var(--world-accent);color:var(--stage-muted);background:#ffffff04;margin:0 0 8px;padding:10px 12px;font-size:.78rem;line-height:1.5}.zone-arrival strong{color:var(--stage-text)}.zone-story{margin:12px 0;font-size:.8rem;line-height:1.55}.zone-story h2{color:var(--world-accent);font-size:1rem}.zone-story p{margin:8px 0}.zone-finds{margin:12px 0}.zone-finds>strong,.zone-finds>small{display:block}.zone-finds>small{color:var(--stage-muted);margin:4px 0}.zone-finds>div{flex-wrap:wrap;gap:6px 12px;display:flex}.zone-finds span{align-items:center;gap:5px;display:inline-flex}.zone-finds .content-icon{flex:0 0 24px;width:24px;height:24px}.zone-journal{border-top:1px solid var(--stage-line);margin-block:12px}.zone-journal summary{cursor:pointer;min-height:44px;padding:12px 0;display:list-item}.zone-journal article{padding-block:8px}.world-ending{grid-column:1/-1;font-size:.9rem;line-height:1.5}@media (width<=680px){.main-action-stage .zone-name{font-size:.74rem}.main-action-stage .zone-subtitle{display:none}.zone-arrival{padding:8px;font-size:.74rem}}.region-guide>summary{cursor:pointer;min-height:44px;color:var(--world-accent);padding:12px 0;font-size:.8rem}@media (width<=680px){.main-action-stage .map-memory>summary{gap:0;line-height:12px}.main-action-stage .map-memory .zone-name{white-space:nowrap;margin-bottom:0;font-size:.68rem;line-height:14px}.main-action-stage .map-memory>summary>.game-icon{width:16px;height:16px}.game-frame .main-action-stage .fighter-team-list .fighter-defense{padding-inline-end:2px}.game-frame .main-action-stage .fighter-team-list .fighter-defense>span{flex-shrink:0}}.audio-mix{gap:10px;padding:8px 12px;display:grid}.audio-mix label{grid-template-columns:1fr auto;align-items:center;gap:0 12px;font-size:.88rem;display:grid}.audio-mix input{width:100%;min-height:44px;accent-color:var(--gold,#e6bf7d);grid-column:1/-1}.audio-mix output{color:#d8c9a8}.fighter-defense em{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.game-frame .main-action-stage button.fighter-label{width:100%;min-height:44px;font:inherit;text-align:left;color:var(--stage-text);cursor:pointer;appearance:none}.game-frame .main-action-stage button.fighter-label:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.game-frame .main-action-stage button.fighter-label:hover>strong{text-underline-offset:3px;text-decoration:underline}.fighter-label>strong>.game-icon{vertical-align:baseline;opacity:.65;width:11px;height:11px;margin-left:4px;display:inline-block}.fighter-details[open]{flex-direction:column;display:flex;overflow:hidden}.fighter-details>header{flex:none;gap:12px}.fighter-details>.build-details-body{min-height:0;max-height:none}.fighter-details>header h2{overflow-wrap:anywhere;min-width:0}.fighter-details>header button{flex:none}.fighter-details .icon-entry>.game-icon{flex:0 0 28px;width:28px;height:28px}.fighter-details p>.game-icon{vertical-align:middle;width:18px;height:18px;display:inline-block}.fighter-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.fighter-stat-grid>div{border:1px solid var(--stage-line);border-radius:7px;min-width:0;padding:8px}.fighter-stat-grid dt{color:var(--stage-muted);font-size:.7rem}.fighter-stat-grid dd{color:var(--stage-text);overflow-wrap:anywhere;margin:4px 0 0;font-size:.9rem}.battle-tools-menu>.battle-recap{border-top:1px solid var(--stage-line);margin-top:8px}.battle-recap>summary{cursor:pointer;align-items:center;min-height:44px;font-size:.8rem;display:flex}.battle-recap p{color:var(--stage-muted);margin:6px 0;font-size:.73rem;line-height:1.5}.recap-entry{border-top:1px solid var(--stage-line);align-items:start;gap:10px;padding:8px 0;display:flex}.recap-entry>.content-icon{flex:0 0 32px;width:32px;height:32px}.recap-entry>div{min-width:0}.recap-entry strong{color:var(--stage-text);font-size:.8rem}.run-observation{line-height:1.5}
