.boss-skill-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}.boss-skill-list>li{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:8px}.boss-skill-copy{min-width:0}.boss-skill-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1px 8px;margin-bottom:1px;line-height:1.4}.boss-skill-heading>strong{font-size:12px;font-weight:600;color:var(--ink)}.boss-skill-heading>small{font-size:10px;font-weight:400;color:var(--ink-muted)}.boss-skill-list .boss-skill-copy>p{margin:0;font-size:12px;line-height:1.55;color:var(--ink-muted);overflow-wrap:anywhere}.hunt-boss-broodmother{--hunt-tone: var(--sage-deep);--hunt-light: var(--surface-sunken)}.hunt-boss-magmaColossus{--hunt-tone: var(--clay-soft);--hunt-light: var(--surface-cream)}.hunt-boss-skyWyrm{--hunt-tone: var(--info);--hunt-light: var(--surface-cool)}.hunt-boss-graveWarden{--hunt-tone: var(--gold);--hunt-light: var(--gold-tint)}.hunt-boss-art{display:block;color:var(--hunt-tone);width:128px;height:112px;flex-shrink:0}.enemy-detail-sheet .sheet-frame{background:var(--surface-paper)}.enemy-detail-sheet .sheet-header{padding:12px 14px 7px}.enemy-detail-sheet .sheet-header h2{font-size:17px;letter-spacing:.5px}.enemy-detail-sheet .sheet-header .icon-button{width:34px;height:34px;background:transparent;border-color:transparent}.enemy-detail-sheet .sheet-body{padding:10px 14px max(12px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.enemy-detail-heading{display:flex;align-items:center;gap:8px}.enemy-detail-heading>.hunt-boss-art{width:48px;height:42px}.enemy-detail-heading>div{min-width:0}.enemy-detail-token{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:2px solid var(--clay-soft);border-radius:50%;background:var(--surface-cream);color:var(--danger);box-shadow:inset 0 0 0 3px var(--surface-paper);font-size:22px;font-weight:700}.enemy-detail-token.is-boss{border-color:var(--gold);color:var(--gold);background:var(--surface-warm)}.enemy-detail-token.is-huge{width:56px;height:56px;font-size:30px;box-shadow:inset 0 0 0 4px var(--surface-paper)}.enemy-detail-heading h3{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;margin:0;font-size:15px}.enemy-detail-heading h3 small{padding:2px 5px;border-radius:4px;background:var(--gold-tint);color:var(--gold);font-size:10px;font-weight:500}.enemy-detail-heading p{margin:2px 0 0;font-size:10px;line-height:1.5;color:var(--ink-muted)}.enemy-detail-health{margin-top:8px}.enemy-detail-health>div:first-child{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;font-size:12px}.enemy-detail-health strong{font-variant-numeric:tabular-nums}.enemy-detail-health small{color:var(--ink-muted);font-size:11px;font-weight:400}.enemy-detail-health .health-track{height:5px}.enemy-detail-health .health-track>div{background:var(--clay-soft)}.enemy-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;margin:6px 0 0}.enemy-detail-stats>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1px 4px;padding:6px 0;border-bottom:1px solid var(--line-wash)}.enemy-detail-stats dt{color:var(--ink-muted);font-size:11px}.enemy-detail-stats dd{margin:0;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.enemy-detail-stats dd small{margin-left:3px;font-size:10px;color:var(--ink-muted);font-weight:400}.enemy-detail-section{margin-top:10px}.enemy-detail-section h4{display:flex;justify-content:space-between;margin:0;font-size:12px}.enemy-detail-section h4>span{color:var(--ink-muted);font-size:11px;font-weight:400}.enemy-detail-section>p{margin:4px 0 0;color:var(--ink-muted);font-size:12px;line-height:1.55}.enemy-detail-section>.boss-skill-list{margin-top:6px}.enemy-detail-states{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 0;padding:0;list-style:none}.enemy-detail-states li{padding:4px 7px;border-radius:5px;color:var(--ink);background:var(--surface-warm);font-size:11px;line-height:1.4}.enemy-detail-terrain{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px;margin-top:9px;padding-top:8px;border-top:1px solid var(--line-wash);font-size:11px;color:var(--ink-muted)}.enemy-detail-terrain strong{color:var(--ink);font-weight:500}.enemy-detail-terrain>span:last-child{margin-left:auto}.terrain-bar{display:flex;align-items:center;width:100%;min-height:40px;padding:5px 11px;gap:8px;border:0;border-top:1px solid var(--line-soft);background:var(--surface-soft);color:var(--ink-muted);font-size:11px}.terrain-current{display:inline-flex;align-items:center;gap:4px;font-weight:600}.terrain-preview{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:1}.terrain-preview>span{display:inline-flex;align-items:center;gap:3px}.terrain-preview i{width:7px;height:7px;background:currentColor;border-radius:2px;opacity:.6}.terrain-brush{color:var(--accent)}.terrain-highland{color:var(--gold-mid)}.terrain-water{color:#437c8a}.terrain-detail p{font-size:13px;line-height:1.85;margin:8px 0;color:var(--ink-muted)}.terrain-detail strong{font-size:19px}.terrain-detail>small,.terrain-coordinate{font-size:11px;color:var(--ink-muted)}.terrain-detail h3{display:flex;align-items:center;gap:10px;font-size:15px}.terrain-detail h3 small{margin-left:auto;font-size:11px;font-weight:400}.terrain-guide .terrain-detail+.terrain-detail{border-top:1px solid var(--surface-sunken);margin-top:15px;padding-top:15px}.terrain-guide-note{border-top:1px solid var(--surface-sunken);padding-top:12px;margin-top:16px;font-size:11px;line-height:1.8;color:var(--ink-muted)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:8px 1px 10px;margin:0}.page-heading-title{display:flex;align-items:baseline;gap:8px;min-width:0}.page-heading h1{margin:0;color:var(--ink);font-family:var(--serif);font-size:27px;font-weight:600;line-height:1.35;letter-spacing:2px;white-space:nowrap}.page-heading-title>span{color:var(--ink-muted);font-size:12px;white-space:nowrap}.page-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-height:44px;flex-shrink:0}.page-heading-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:6px 9px;border:1px solid var(--line-mid);border-radius:8px;background:var(--surface-soft);color:var(--mint);font-size:12px;white-space:nowrap}.page-heading-actions>.has-points{color:var(--gold)}.page-heading-actions>svg{color:#758b66}.page-heading-badge{padding:6px 8px;border:1px solid #ab915c32;border-radius:8px;color:var(--gold);background:#bb99580c;font-size:12px;line-height:1.5}.character-portrait{display:block;flex-shrink:0;object-fit:cover;aspect-ratio:1;border-radius:9px;background:var(--surface-page)}.character-portrait.portrait-warrior{background:var(--surface-warm)}.character-portrait.portrait-ranger{background:var(--surface-sunken)}.character-portrait.portrait-mage{background:var(--surface-cool)}.character-avatar:has(.character-portrait){width:38px;height:38px;background:transparent}.ribbon-emblem:has(.character-portrait){background:transparent;border:0;padding:0}.leaderboard-sheet .sheet-frame{background:var(--surface-paper)}.leaderboard-sheet .sheet-heading-icon{color:var(--gold)}.leaderboard-sheet .sheet-body{padding:14px 14px max(18px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.leaderboard-tabs{position:sticky;z-index:2;top:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-sunken)}.leaderboard-tabs button{min-width:0;min-height:40px;padding:6px 2px;border:0;border-radius:7px;background:none;color:var(--ink-muted);font-size:12px}.leaderboard-tabs button:hover{color:var(--ink);background:var(--surface-soft)}.leaderboard-tabs button[aria-selected=true]{background:var(--surface-raised);color:var(--accent-deep);font-weight:600;box-shadow:0 2px 8px #526c3c12}.leaderboard-board{margin-top:14px}.leaderboard-board-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 3px 13px;border-bottom:1px solid var(--line-wash)}.leaderboard-board-heading>div{min-width:0}.leaderboard-board-heading h3{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.45;letter-spacing:.5px}.leaderboard-board-heading p{margin-top:3px;color:var(--ink-muted);font-size:11px;line-height:1.5}.leaderboard-board-heading>span{flex-shrink:0;padding:4px 7px;border:1px solid var(--line-wash);border-radius:5px;color:var(--ink-muted);background:var(--surface-soft);font-size:10px;font-variant-numeric:tabular-nums}.leaderboard-columns{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:10px 8px 5px;color:var(--ink-muted);font-size:10px;line-height:1.5}.leaderboard-columns span:nth-child(2){padding-left:48px}.leaderboard-columns span:last-child{text-align:right}.leaderboard-list{display:grid;gap:5px;list-style:none;margin:0;padding:0}.leaderboard-list li{display:grid;grid-template-columns:34px 40px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:60px;padding:8px;border:1px solid var(--line-wash);border-radius:9px;background:var(--surface-raised)}.leaderboard-list li.mine{border-color:var(--accent-light);background:var(--surface-sunken)}.leaderboard-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--ink-muted);background:var(--surface-soft);font-size:12px;font-variant-numeric:tabular-nums}.leaderboard-list li.podium .leaderboard-rank{border:1px solid var(--gold-light);color:var(--gold);background:var(--gold-tint);font-weight:700}.leaderboard-portrait{display:grid;place-items:center;width:40px;height:40px;overflow:hidden;border:1px solid var(--line-soft);border-radius:10px;color:var(--ink-muted);background:var(--surface-soft)}.leaderboard-portrait .character-portrait{width:40px;height:40px;border-radius:9px}.leaderboard-name{display:grid;min-width:0;gap:3px}.leaderboard-player{display:flex;align-items:center;min-width:0;gap:5px}.leaderboard-player strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}.leaderboard-player em{flex-shrink:0;padding:1px 4px;border-radius:4px;color:var(--accent-deep);background:var(--surface-paper);font-size:9px;line-height:1.5}.leaderboard-name small{overflow:hidden;color:var(--ink-muted);font-size:10px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.leaderboard-value{flex-shrink:0;color:var(--accent-deep);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.leaderboard-state{display:grid;justify-items:center;padding:42px 24px 36px;color:var(--ink-muted);text-align:center}.leaderboard-state>svg{margin-bottom:10px;color:var(--sage-deep)}.leaderboard-state strong{color:var(--ink);font-size:14px;font-weight:600}.leaderboard-state p{max-width:300px;margin-top:6px;font-size:12px;line-height:1.7}.leaderboard-state .small-button{margin-top:14px;min-height:40px}.leaderboard-error>svg{color:var(--danger)}.leaderboard-loading{display:grid;gap:6px;padding-top:10px}.leaderboard-skeleton{display:grid;grid-template-columns:28px minmax(0,1fr) 55px;align-items:center;gap:12px;min-height:58px;padding:8px 10px;border:1px solid var(--line-wash);border-radius:9px;background:var(--surface-raised)}.leaderboard-skeleton>*{display:block;height:10px;border-radius:6px;background:var(--surface-sunken)}.leaderboard-skeleton i{width:28px;height:28px;border-radius:50%}.leaderboard-skeleton b{width:55%}.leaderboard-footnote{display:flex;align-items:flex-start;gap:7px;margin-top:13px;padding:10px;border-radius:8px;color:var(--ink-muted);background:var(--surface-soft);font-size:10px;line-height:1.6}.leaderboard-footnote>svg{flex-shrink:0;margin-top:1px}@media(max-width:374px){.leaderboard-sheet .sheet-body{padding-right:10px;padding-left:10px}.leaderboard-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.leaderboard-tabs button{min-height:36px}.leaderboard-list li{grid-template-columns:30px 36px minmax(0,1fr) auto;gap:6px;padding:7px 6px}.leaderboard-portrait,.leaderboard-portrait .character-portrait{width:36px;height:36px}.leaderboard-columns{grid-template-columns:30px minmax(0,1fr) auto}.leaderboard-columns span:nth-child(2){padding-left:42px}.leaderboard-player strong{font-size:13px}.leaderboard-value{font-size:12px}}.battle-mode-list{display:grid;gap:9px;list-style:none;margin:0;padding:0}.battle-mode-list>li{min-width:0}.battle-mode-card{--mode-ink: var(--accent);--mode-tint: var(--surface-sunken);display:flex;flex-direction:column;gap:11px;width:100%;padding:13px 13px 10px;text-align:left;color:var(--ink);background:var(--surface-paper);border:1px solid var(--line-soft);border-radius:10px}.battle-mode-card:not(:disabled):hover{border-color:var(--accent-light);background:var(--surface-soft)}.battle-mode-heading{display:flex;align-items:center;gap:10px;width:100%}.battle-mode-emblem{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:9px;background:var(--mode-tint);color:var(--mode-ink)}.battle-mode-copy{flex:1;min-width:0}.battle-mode-title{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px}.battle-mode-title strong{font-size:16px;font-weight:600;line-height:1.4}.battle-mode-title small{padding:2px 6px;border-radius:4px;background:var(--mode-tint);color:var(--mode-ink);font-size:10px;line-height:1.4}.battle-mode-description{display:block;margin-top:4px;font-size:12px;line-height:1.6;color:var(--ink-muted);overflow-wrap:anywhere}.battle-mode-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding-top:8px;border-top:1px solid var(--line-wash)}.battle-mode-progress{min-width:0;color:var(--ink-muted);font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.battle-mode-action{display:inline-flex;align-items:center;gap:4px;color:var(--mode-ink);font-size:12px;font-weight:600;white-space:nowrap}.campaign-mode-card{--mode-ink: var(--gold);--mode-tint: var(--gold-tint)}.hunt-mode-card{--mode-ink: var(--clay-soft);--mode-tint: var(--surface-cream)}.abyss-mode-card{--mode-ink: var(--abyss);--mode-tint: var(--abyss-tint)}.abyss-mode-card:not(:disabled):hover{border-color:var(--abyss-mid)}.arena-mode-card{--mode-ink: var(--info);--mode-tint: color-mix(in srgb, var(--info) 12%, var(--surface-raised))}.hunt-mode-card:not(:disabled):hover,.arena-mode-card:not(:disabled):hover{border-color:var(--mode-ink)}.battle-mode-card.is-resumable{border-color:var(--accent-pale);background:var(--surface-soft)}.battle-mode-card:disabled{opacity:1;background:var(--surface-hollow);border-style:dashed}.battle-mode-card:disabled .battle-mode-emblem,.battle-mode-card:disabled .battle-mode-title small{background:var(--surface-page);color:var(--ink-muted)}.battle-mode-card:disabled .battle-mode-action{color:var(--ink-muted);font-weight:400}.battle-hub-note{display:flex;align-items:flex-start;gap:6px;margin:0 0 10px;padding:9px 10px;border-radius:8px;background:var(--surface-sunken);color:var(--ink-muted);font-size:11px;line-height:1.6}.battle-hub-note>svg{flex-shrink:0;margin-top:1px}.battle-breadcrumb{display:flex;align-items:center;justify-content:space-between;margin-top:8px;color:var(--ink-muted);font-size:12px}.battle-breadcrumb button{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 8px 0 0}.battle-breadcrumb button svg{transform:rotate(180deg)}.battle-breadcrumb+.chapter-heading{padding-top:3px}@media(max-width:360px){.battle-mode-card{padding:11px 10px 9px}.battle-mode-heading{gap:8px}.battle-mode-emblem{width:36px;height:36px}}.abyss-panel{margin:12px 0 14px;border:1px solid var(--abyss-line);border-radius:12px;background:linear-gradient(160deg,var(--surface-raised),var(--surface-cool));overflow:hidden}.abyss-briefing{display:flex;align-items:center;gap:7px;width:100%;min-height:40px;margin:0 0 6px;padding:7px 10px;border:1px solid var(--abyss-pale);border-radius:8px;background:var(--surface-cool);color:var(--abyss);text-align:left}.abyss-briefing strong{flex:1;min-width:0;font-size:12px;font-weight:550}.abyss-briefing>span{font-size:10px;white-space:nowrap}.abyss-briefing-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.abyss-briefing-copy small{font-size:10px;line-height:1.3;font-variant-numeric:tabular-nums}.abyss-briefing-copy strong{line-height:1.3}.sheet-body .abyss-panel{margin:0}.abyss-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 15px 8px;font-size:13px}.abyss-heading strong{display:flex;align-items:center;gap:6px;color:var(--abyss-deep)}.abyss-heading>span{color:var(--ink-muted);font-size:12px}.abyss-modifiers{list-style:none;margin:0;padding:4px 15px 6px;display:grid;gap:8px}.abyss-modifiers li{display:grid;gap:2px;padding:9px 11px;border:1px solid var(--abyss-pale);border-radius:9px;background:#ffffffb8}.abyss-modifiers strong{font-size:13px;color:#4d3f7a}.abyss-modifiers span{font-size:12px;color:var(--ink);line-height:1.6}.abyss-modifiers small{font-size:11px;color:var(--ink-muted);line-height:1.6}.abyss-intel{padding:6px 15px 13px;margin:0;font-size:12px;line-height:1.7;color:var(--ink-muted)}.battle-overview{margin:0 0 6px}.battle-location{display:flex;align-items:center;gap:4px;padding:9px 12px 9px 0}.battle-back{display:grid;place-items:center;width:40px;min-height:48px;padding:0;flex-shrink:0;border:0;background:transparent;color:var(--sage-deep)}.battle-back svg{transform:rotate(180deg)}.battle-exit-sheet .sheet-body>p{color:var(--ink-muted);font-size:13px;line-height:1.7}.battle-exit-sheet .sheet-body>p+p{margin-top:6px}.battle-exit-sheet .button-row>button{min-height:44px;padding:10px 12px;font-size:14px}.battle-location-copy{min-width:0;flex:1}.battle-location-copy p{color:var(--ink-muted);font-size:11px;line-height:1.5}.battle-location-copy h1{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:23px;letter-spacing:1px;line-height:1.4;margin-top:2px;overflow-wrap:anywhere}.battle-location-copy h1:first-child{margin-top:0}.battle-location-copy h1>span{font-size:10px;font-weight:400;line-height:1.5;letter-spacing:0;color:var(--gold-deep);background:var(--gold-tint);border-radius:4px;padding:2px 5px}.battle-location-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.battle-location-side:empty{display:none}.battle-location-side button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 8px;border:0;border-radius:7px;background:#eaf1e1;color:#486b54;font-size:12px}.battle-location-copy p>span{white-space:nowrap}.battle-overview.is-compact{margin:0 0 6px;border:0;border-radius:0;background:transparent;overflow:visible}.battle-overview.is-compact .battle-location{padding:0;gap:5px;min-height:44px}.battle-overview.is-compact .battle-back{width:32px;min-height:44px}.battle-overview.is-compact .battle-location-copy{display:flex;align-items:center;gap:8px}.battle-overview.is-compact .battle-location-copy h1{display:block;flex:1;min-width:0;margin:0;font-size:15px;line-height:1.4;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battle-overview.is-compact .battle-location-copy p{display:flex;align-items:center;gap:5px;flex-shrink:0;font-size:10px;white-space:nowrap}.battle-boss-label{padding:1px 4px;border-radius:4px;color:var(--gold-deep);background:var(--gold-tint);font-size:9px}.battle-overview.is-compact .battle-location-side button{gap:3px;padding:0 7px;background:transparent;font-size:11px}.battle-hero-row{display:flex;align-items:center;gap:12px;padding:5px 12px;background:#eaf2e2a1;border-top:1px solid #c9d7bd77}.battle-hero-identity{display:flex;align-items:center;gap:7px;min-width:0;flex:1;min-height:44px;padding:0;border:0;background:transparent;text-align:left;color:var(--ink)}.battle-hero-identity>span{min-width:0}.battle-hero-identity strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500}.battle-hero-identity small{display:block;margin-top:2px;font-size:11px;color:var(--ink-muted)}.battle-hero-health{width:43%;flex-shrink:0}.battle-hero-health>div:first-child{display:flex;align-items:center;gap:4px;margin-bottom:6px;color:var(--mint);font-size:12px;font-variant-numeric:tabular-nums}.battle-hero-health>div:first-child>svg{color:#ad7760}.battle-hero-health small{color:var(--ink-muted);font-size:10px}.battle-hero-shield{display:inline-flex;align-items:center;gap:2px;margin-left:auto;color:var(--info-soft);font-size:10px}.combat-tools{display:flex;align-items:center;gap:8px;margin-top:8px}.combat-tools button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-height:44px;padding:5px 8px;border:1px solid var(--line-mid);border-radius:8px;background:var(--surface-soft);color:var(--sage-deep);font-size:12px}.combat-tools small{font-size:11px;color:var(--ink-muted)}.adventure-view .combat-skill-strip{gap:6px;margin-top:8px}.adventure-view .combat-skill-strip>button,.adventure-view .combat-skill-strip>div{position:relative;padding:7px 3px;gap:4px}.adventure-view .combat-skill-strip small{font-size:10px}.combat-cooldown{position:absolute;top:-4px;right:-7px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:1px solid #d3c39d;border-radius:5px;background:var(--surface-warm);color:var(--gold);font-size:10px;font-variant-numeric:tabular-nums}.adventure-view .arena-legend{padding:7px 10px;font-size:10px}.adventure-view .arena-auto{display:none}.adventure-view .battle-feedback{min-height:32px;padding:5px 2px;font-size:11px}.adventure-view .controls{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;grid-template-areas:"sound action speed";align-items:center;padding:8px 0;gap:8px}.adventure-view .controls button{min-width:0;min-height:48px;white-space:nowrap}.adventure-view .controls .sound-button{grid-area:sound}.adventure-view .controls .speed-button{grid-area:speed;gap:4px;font-variant-numeric:tabular-nums}.adventure-view .controls .utility-button{padding-inline:4px}.adventure-view .controls .primary-button{grid-area:action;font-size:15px;padding:9px 10px;gap:7px}.adventure-view .game-tabs{min-height:60px}.adventure-view .game-tabs button{padding:7px 0;gap:3px}.game-shell.adventure-view{--dock-height: 126px;padding-top:max(8px,var(--safe-area-inset-top, env(safe-area-inset-top)))}.combat-support{margin-top:8px;border:1px solid var(--line-mid);border-radius:11px;background:var(--surface-soft);overflow:hidden}.combat-support .battle-hero-row.has-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;padding:7px 10px 9px;border:0;background:transparent}.combat-support .battle-hero-identity{min-height:40px}.combat-support .battle-hero-health{grid-column:1 / -1;display:flex;align-items:center;gap:8px;width:auto;min-width:0}.combat-support .battle-hero-row.has-actions .battle-hero-health>div:first-child{flex-shrink:0;flex-wrap:wrap;gap:2px 4px;margin-bottom:0;font-size:11px}.combat-support .battle-hero-health>div:first-child>span{white-space:nowrap}.combat-support .battle-hero-health>.health-track{flex:1;min-width:24px;height:5px}.adventure-view .combat-support .combat-skill-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:5px;margin:0;padding:0 8px 8px}.adventure-view .combat-support .combat-skill-strip>button,.adventure-view .combat-support .combat-skill-strip>div{flex-direction:column;justify-content:flex-start;gap:5px;min-height:60px;padding:6px 0;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface-paper);color:var(--accent-deep)}.combat-support .combat-skill-strip>button:hover{background:#eaf1e1}.combat-support .combat-skill-icon{position:relative;flex-shrink:0}.combat-support .combat-skill-strip strong{max-width:100%;font-size:11px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:center}.combat-support .combat-skill-strip .warning-text{font-size:9px;line-height:1.2}.combat-support .on-cooldown .skill-art{filter:saturate(.35);opacity:.65}.adventure-view .combat-support .combat-skill-strip>.combat-skill-empty{flex-direction:row;align-items:center;justify-content:center;gap:9px;min-height:48px}.combat-skill-empty>span{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.combat-support .combat-tools{gap:4px;margin:0;border:0}.combat-support .combat-tools button,.combat-support .potion-status{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;gap:2px;padding:3px;border:0;border-radius:7px;font-size:10px;line-height:1.4;white-space:nowrap}.combat-support .combat-tools button{background:#eaf0e3;color:#607257}.combat-support .potion-status{background:var(--surface-warm);color:var(--ink-muted)}.combat-support .potion-status>svg{color:var(--danger);flex-shrink:0}.combat-support .potion-status b{color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}.combat-support button:focus-visible{outline:2px solid #718d5e;outline-offset:-2px}.combat-support .combat-tools button:hover{background:#eaf1e1}.adventure-view .combat-support .battle-feedback{border-top:1px solid var(--line-wash);padding:6px 10px;line-height:1.5}.combat-support .battle-feedback>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combat-support .battle-feedback>svg{flex-shrink:0}.combat-focus>.app-header{display:none}.combat-focus .battle-overview{margin:0 0 6px;border-radius:10px}.combat-focus .battle-location{padding:3px 8px 3px 0}.combat-focus .battle-back{min-height:44px;width:34px}.combat-focus .battle-location-copy h1{font-size:18px;letter-spacing:0;line-height:1.3;margin-top:1px}.combat-focus .battle-location-copy p{font-size:10px}.combat-focus .battle-hero-row{padding:2px 10px}.combat-focus .battle-hero-health>div:first-child{margin-bottom:4px}.combat-focus .battle-topbar{height:32px;font-size:11px}.combat-focus .arena-wrap{aspect-ratio:auto;height:var(--arena-fit-height, auto)}.combat-focus .battle-intro.has-briefing{display:flex;align-items:center;gap:6px;margin-bottom:6px}.combat-focus .battle-intro.has-briefing .battle-overview{flex:1;min-width:0;margin:0}.combat-focus .battle-intro.has-briefing .battle-location-copy p{display:none}.combat-focus .battle-intro.has-briefing .abyss-briefing{width:auto;max-width:48%;min-height:44px;margin:0;padding:5px 8px;gap:5px}.combat-focus .battle-intro.has-briefing .abyss-briefing strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.combat-focus .battle-intro.has-briefing .abyss-briefing>svg{flex-shrink:0}@media(max-height:700px){.combat-support .battle-hero-row.has-actions{padding-top:4px}}@media(max-width:374px){.battle-location-copy h1{font-size:21px}.battle-back{width:33px}.battle-hero-row{gap:8px;padding-inline:10px}.combat-tools{gap:6px}}.hunt-heading{display:flex;align-items:baseline;gap:8px;flex:1;min-width:0}.hunt-heading>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.4}.hunt-heading>strong>small{margin-left:6px;color:var(--clay-soft);font-size:10px;font-weight:400;font-variant-numeric:tabular-nums}.hunt-heading>span{flex-shrink:0;margin-left:auto;color:var(--ink-muted);font-size:10px;line-height:1.5;white-space:nowrap;font-variant-numeric:tabular-nums}.hunt-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;margin:8px 0 0;padding:0}.hunt-roster>li{min-width:0}.hunt-target{display:flex;flex-direction:column;align-items:center;gap:7px;width:100%;height:100%;min-height:188px;padding:14px 8px 13px;border:1px solid var(--line-mid);border-radius:14px;background:radial-gradient(ellipse at top,var(--hunt-light),var(--surface-paper) 75%);color:var(--ink);text-align:center}.hunt-target>.hunt-boss-art{width:min(100%,132px);height:112px;margin-bottom:1px}.hunt-target>strong{font-family:var(--serif);font-size:16px;font-weight:600;line-height:1.4}.hunt-target-meta{display:flex;align-items:center;gap:5px;font-size:11px;line-height:1.4;color:var(--hunt-tone);font-variant-numeric:tabular-nums}.hunt-target.is-locked{background:var(--surface-soft);border-color:var(--line-soft)}.hunt-target.is-locked>.hunt-boss-art{filter:grayscale(.8);opacity:.45}.hunt-target.is-locked>strong,.hunt-target.is-locked .hunt-target-meta{color:var(--ink-muted)}.hunt-sheet .sheet-frame{background:var(--surface-paper)}.hunt-sheet .sheet-header{gap:8px;padding:14px 14px 9px}.hunt-sheet .sheet-heading{gap:8px}.hunt-sheet .sheet-heading-icon .hunt-boss-art{width:46px;height:40px}.hunt-sheet .sheet-header h2{font-size:17px;letter-spacing:.5px}.hunt-sheet .sheet-subtitle{font-size:10px}.hunt-sheet .sheet-header .icon-button{width:34px;height:34px;background:transparent;border-color:transparent}.hunt-sheet .sheet-body{padding:10px 14px}.hunt-sheet .sheet-footer{flex-shrink:0;padding:9px 14px max(12px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)));border-top:1px solid var(--line-wash)}.hunt-sheet .hunt-enter{width:100%;min-height:44px;padding:9px 12px;font-size:14px}.hunt-unlock{margin:0 0 9px;color:var(--ink-muted);text-align:center;font-size:11px;line-height:1.5}.hunt-panel{display:grid;gap:9px}.hunt-intel>p,.hunt-trophy p{margin:0;color:var(--ink-muted);font-size:12px;line-height:1.55;overflow-wrap:anywhere}.hunt-section{padding-top:9px;border-top:1px solid var(--line-wash)}.hunt-section-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:3px 8px;margin-bottom:6px}.hunt-section-heading h3{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--ink)}.hunt-trophy .hunt-section-heading>strong{font-size:12px;font-weight:600;color:var(--gold)}.hunt-section-heading h3>svg{color:var(--gold)}.hunt-trophy small{display:block;margin-top:4px;font-size:10px;line-height:1.5;color:var(--ink-muted)}@media(hover:hover){.hunt-target:hover{border-color:var(--hunt-tone);background:var(--surface-paper)}}@media(max-width:374px){.hunt-heading{gap:5px}.hunt-heading>strong{font-size:14px}.hunt-roster{gap:9px}.hunt-target{min-height:174px;padding-top:10px}.hunt-target>.hunt-boss-art{height:102px}.hunt-target>strong{font-size:15px}}.equipment-type-line{color:var(--ink-muted);font-size:12px;line-height:1.6;margin-top:5px}.equipment-stat-section{border-top:1px solid var(--line-wash);margin-top:10px;padding-top:9px}.equipment-stat-section h4{display:flex;align-items:center;justify-content:space-between;margin:0 0 5px;font-size:12px;font-weight:600}.equipment-stat-section h4 span{font-size:10px;color:var(--ink-muted);font-weight:400}.equipment-stat-section dl{margin:0;display:grid;gap:4px}.equipment-stat-section dl>div{display:flex;justify-content:space-between;gap:10px;font-size:13px;line-height:1.6}.equipment-stat-section dt{color:var(--ink-muted)}.equipment-stat-section dd{margin:0;font-variant-numeric:tabular-nums;color:var(--mint);text-align:right}.equipment-stat-section>p{color:var(--ink-muted);font-size:12px}.equipment-usable-filter{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-muted);min-height:44px;cursor:pointer}.equipment-usable-filter input{width:17px;height:17px;accent-color:#537c47}.equipment-restriction-note{margin-top:12px;padding:10px 12px;border:1px solid var(--gold-sand);background:var(--surface-warm);color:var(--gold-deep);border-radius:8px;font-size:12px;line-height:1.7}.equipment-detail-card{padding:11px 12px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-soft)}.equipment-detail-card+.primary-button{margin-top:12px}.equipment-detail-heading{display:flex;align-items:center;gap:10px}.equipment-detail-heading>div{flex:1;min-width:0}.equipment-detail-heading .item-icon,.equipment-detail-heading .item-icon:has(>.game-art){width:42px;height:42px;aspect-ratio:1}.equipment-detail-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.equipment-detail-title strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.equipment-detail-title>span{flex-shrink:0;color:var(--gold);font-size:12px;font-variant-numeric:tabular-nums}.equipment-detail-heading p{margin-top:4px;color:var(--ink-muted);font-size:11px;line-height:1.5}.equipment-detail-card .equipment-stat-section{margin-top:8px;padding-top:7px}.equipment-detail-card .equipment-stat-section h4{margin-bottom:3px;font-size:11px;color:var(--ink-muted);font-weight:500}.equipment-detail-card .equipment-stat-section dl{gap:2px}.equipment-detail-card .equipment-stat-section dl>div{font-size:12px;line-height:1.65}.equipment-sheet .sheet-header{padding:8px 12px 6px}.equipment-sheet .sheet-frame{height:90dvh}.equipment-sheet .sheet-header h2{font-size:19px}.equipment-sheet .sheet-header .icon-button{width:44px;height:44px}.equipment-sheet .sheet-body{flex:1;padding:0 12px 12px}.equipment-view-switch{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px 0 8px;background:var(--surface-soft)}.equipment-view-switch button{min-width:0;min-height:44px;padding:6px 2px;border:1px solid transparent;border-radius:7px;color:var(--ink-muted);background:transparent;font-size:12px}.equipment-view-switch button[aria-pressed=true]{border-color:var(--line-mid);background:var(--surface-page);color:var(--accent-deep);font-weight:600}.equipment-sheet .sheet-footer{flex-shrink:0;padding:9px 14px max(12px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)));border-top:1px solid var(--line-wash);background:var(--surface-soft)}.equipment-sheet .sheet-footer .primary-button{min-height:44px;padding:9px 12px;font-size:14px}.equipment-footer-actions{display:flex;align-items:stretch;gap:10px}.equipment-footer-actions>.primary-button{flex:1;min-width:0}.equipment-sheet .equipment-comparison{margin-top:13px}.equipment-sheet .equipment-comparison .section-heading{margin:0 0 5px;gap:4px}.equipment-sheet .equipment-comparison h3{font-size:13px;font-weight:600}.equipment-sheet .equipment-comparison .muted{font-size:10px}.equipment-sheet .equipment-comparison table{font-size:12px;font-variant-numeric:tabular-nums}.equipment-sheet .equipment-comparison thead{font-size:10px}.equipment-sheet .equipment-comparison th,.equipment-sheet .equipment-comparison td{padding:4px 3px;line-height:1.5}.equipment-sheet .equipment-comparison tbody th{width:28%;color:var(--ink-muted)}.equipment-sheet .equipment-comparison td{white-space:nowrap}.equipment-sheet .equipment-comparison td:last-child{font-size:11px}.equipment-sheet .equipment-extra-actions{min-width:0;margin:12px 0 0;padding:0;border:0}.equipment-actions-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.equipment-actions-heading h3{margin:0;font-size:14px;font-weight:600}.equipment-actions-heading>span{color:var(--ink-muted);font-size:12px}.equipment-upgrade-level{display:inline-flex;align-items:center;gap:6px;color:var(--ink-muted)}.equipment-upgrade-level strong{color:var(--accent);font-size:14px;font-variant-numeric:tabular-nums}.equipment-upgrade-body{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:12px}.equipment-upgrade-preview{display:grid;gap:5px;margin:0;font-size:12px}.equipment-upgrade-preview>div{display:flex;justify-content:space-between;gap:8px}.equipment-upgrade-preview dt{color:var(--ink-muted)}.equipment-upgrade-preview dd{display:flex;align-items:center;gap:7px;margin:0;font-variant-numeric:tabular-nums}.equipment-upgrade-preview dd>span,.equipment-upgrade-preview svg{color:var(--ink-muted)}.equipment-upgrade-preview strong{color:var(--mint);font-weight:600}.equipment-upgrade-submit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;min-height:44px;padding:5px 3px;border:1px solid var(--accent);border-radius:7px;background:var(--accent);color:#fff;font-size:12px}.equipment-upgrade-submit>span{display:flex;align-items:center;gap:5px}.equipment-upgrade-submit small{font-size:11px}.equipment-reroll-section{margin-top:6px;border-top:1px solid var(--line-soft)}.equipment-reroll-lock summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;color:var(--ink-muted);font-size:11px;cursor:pointer;list-style:none}.equipment-reroll-lock summary::-webkit-details-marker{display:none}.equipment-reroll-lock[open] summary svg{transform:rotate(90deg)}.equipment-reroll-section .equipment-manage-button{width:100%;min-height:44px;margin-top:4px;padding:6px 8px;background:var(--surface-soft);border-color:#d7d1bc}.equipment-reroll-section .equipment-manage-button strong,.equipment-reroll-section .equipment-action-price{font-size:12px}.equipment-manage-button{display:flex;align-items:center;gap:10px;min-height:58px;padding:9px 10px;border:1px solid var(--line-mid);border-radius:10px;background:var(--surface-hollow);color:var(--accent-deep);text-align:left}.equipment-manage-button>svg{flex-shrink:0}.equipment-manage-button>span{min-width:0}.equipment-manage-button strong{display:block;font-size:14px;font-weight:600}.equipment-manage-button small{display:block;margin-top:5px;color:var(--ink-muted);font-size:11px;line-height:1.5}.equipment-manage-button .equipment-action-price{margin-left:auto;flex-shrink:0;text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.equipment-manage-button:not(:disabled):hover{border-color:#829a73;background:var(--surface-sunken)}.equipment-sell-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:0 0 88px;min-height:48px;padding:6px 8px;border:1px solid #d9d2bf;border-radius:8px;background:var(--surface-paper);color:#7d653c;font-size:13px}.equipment-sell-button>span{display:flex;align-items:center;gap:4px}.equipment-sell-button>small{font-size:11px;font-variant-numeric:tabular-nums}.equipment-sell-button:not(:disabled):hover{border-color:#ad9a72;background:var(--surface-warm)}.equipment-extra-actions .reroll-lock{margin:0 0 10px}.equipment-extra-actions .reroll-lock>span{margin-bottom:6px;line-height:1.6}.equipment-extra-actions .reroll-lock>div{gap:6px}.equipment-extra-actions .reroll-lock button{min-height:44px;padding:9px 12px;font-size:12px}.equipment-panel>.page-heading+.section-heading{margin:6px 0 10px}.inventory-type{display:flex;align-items:center;gap:7px;margin-top:3px;color:var(--ink-muted);font-size:10px}.inventory-type em{font-style:normal;color:var(--accent);background:var(--surface-hollow);border-radius:4px;padding:1px 5px}.equipment-stat-sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:10px}.equipment-stat-sources .equipment-stat-section{min-width:0;margin:0;padding-top:7px}.equipment-stat-sources .equipment-stat-section h4{gap:6px;flex-wrap:wrap;margin-bottom:4px;font-size:12px}.equipment-stat-sources .equipment-stat-section dl{gap:3px}.equipment-stat-sources .equipment-stat-section dl>div{flex-wrap:wrap;gap:0 6px;font-size:12px;line-height:1.7}.equipment-stat-sources .equipment-stat-section dd{margin-left:auto}.equipment-stat-sources .equipment-stat-section p{margin:0;font-size:12px;line-height:1.6}.equipment-stat-sources .equipment-material-section,.equipment-stat-sources .equipment-mastery-section{grid-column:1 / -1}.equipment-stat-sources .equipment-material-section,.equipment-stat-sources .equipment-mastery-section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px}.equipment-stat-sources .equipment-material-section h4,.equipment-stat-sources .equipment-mastery-section h4{margin:0}.equipment-stat-sources .equipment-material-section p{color:var(--mint);font-variant-numeric:tabular-nums}.item-plus{margin-left:4px;font-style:normal;color:var(--rarity-legendary);font-weight:600}.equipment-rule{grid-column:1 / -1}.equipment-rule h4>strong{display:inline-flex;align-items:center;gap:5px;color:var(--gold-bright);font-size:12px;font-weight:600}.equipment-rule h4>strong>svg{flex-shrink:0}.equipment-stat-sources .equipment-rule p{color:var(--ink);line-height:1.7;overflow-wrap:anywhere}.equipment-set-detail{grid-column:1 / -1}.equipment-set-detail h4>span{white-space:nowrap}.equipment-set-pieces{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin-bottom:4px;font-size:11px;color:var(--ink-muted)}.equipment-set-pieces>span{display:inline-flex;align-items:center;gap:2px}.equipment-set-pieces .is-worn,.equipment-set-detail.is-active h4>span{color:var(--accent-deep)}.equipment-set-pieces>small{margin-left:auto;font-size:11px}.equipment-stat-sources .equipment-set-detail.is-active p{color:var(--ink)}.equipment-set-change{display:flex;align-items:baseline;gap:5px;margin:9px 0 0;font-size:12px;line-height:1.6}.equipment-set-change svg{flex-shrink:0;align-self:center}.equipment-workshop-card{margin-top:8px;padding:10px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-paper)}.equipment-workshop-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.equipment-workshop-heading h4{margin:0;font-size:15px;font-weight:600}.equipment-workshop-heading>span{color:var(--ink-muted);font-size:11px}.equipment-forge{padding:9px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-paper)}.equipment-forge .equipment-workshop-card{margin:0;padding:0;border:0;border-radius:0;background:none}.equipment-forge .equipment-workshop-heading{margin-bottom:6px}.equipment-forge .equipment-workshop-heading h4{font-size:13px}.equipment-forge .equipment-refine{margin-top:10px;padding-top:9px;border-top:1px solid var(--line-wash)}.equipment-refine-row{display:grid;grid-template-columns:minmax(0,1fr) 124px;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--line-wash)}.equipment-affix-heading{display:flex;flex-direction:column;gap:3px;font-size:12px}.equipment-affix-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 5px}.equipment-affix-heading strong{color:var(--accent);font-variant-numeric:tabular-nums}.equipment-refine-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.equipment-refine-buttons button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:44px;padding:4px 2px;border:1px solid var(--line-mid);border-radius:6px;background:var(--surface-hollow);color:var(--accent-deep);font-size:11px}.equipment-refine-buttons button+button{background:var(--surface-paper);border-color:var(--line-wash);color:var(--ink)}.equipment-refine-buttons button small{color:var(--ink-muted);font-size:11px}.equipment-refine-buttons button:not(:disabled):hover{background:var(--surface-sunken)}.equipment-inherit-balance{justify-content:flex-end;margin-bottom:6px}.equipment-inheritance{padding:10px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-paper)}.equipment-heirloom+.equipment-heirloom{margin-top:12px;padding-top:12px;border-top:1px solid var(--line-wash)}.equipment-heirloom .equipment-workshop-heading{align-items:center;margin-bottom:6px}.equipment-heirloom .equipment-workshop-heading h4{font-size:13px}.equipment-workshop-heading .equipment-inherit-level{display:flex;align-items:center;gap:6px;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.equipment-inherit-level>span,.equipment-inherit-level>svg{color:var(--ink-muted)}.equipment-inherit-level strong{color:var(--accent-deep);font-weight:600}.equipment-workshop-note{margin:8px 0 10px;color:var(--ink-muted);font-size:11px;line-height:1.7}.equipment-material-empty{display:flex;align-items:center;gap:8px;padding:5px 0}.equipment-material-empty>svg{flex-shrink:0;color:var(--ink-muted)}.equipment-material-empty strong{display:block;font-size:12px;font-weight:500}.equipment-material-empty small{display:block;margin-top:2px;font-size:11px;color:var(--ink-muted);line-height:1.6}.equipment-material-label{margin:0 0 6px;color:var(--ink-muted);font-size:11px;line-height:1.6}.equipment-heirloom-materials{display:grid;gap:5px}.equipment-heirloom-materials button{display:flex;align-items:center;gap:7px;min-height:44px;padding:6px 8px;border:1px solid var(--line-wash);border-radius:7px;background:var(--surface-paper);color:var(--ink);font-size:12px;text-align:left}.equipment-heirloom-materials button>span{flex:1;min-width:0;overflow-wrap:anywhere}.equipment-heirloom-materials button>svg{flex-shrink:0}.equipment-heirloom-materials button small{flex-shrink:0;color:var(--ink-muted);font-size:11px}.equipment-heirloom-materials button[aria-pressed=true]{background:var(--surface-hollow);border-color:var(--accent-light)}.equipment-inherit-footer .primary-button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.equipment-inherit-footer .primary-button.is-empty{display:flex;justify-content:center}.equipment-inherit-footer .primary-button>span{min-width:0;text-align:left}.equipment-inherit-footer .primary-button>small{color:inherit;font-size:11px;font-variant-numeric:tabular-nums;opacity:.88}.equipment-inherit-footer .primary-button:disabled>small{color:var(--ink-muted)}.equipment-inherit-shortfall{margin:4px 0 0;color:#966337;font-size:11px;text-align:right}.equipment-inherit-help{margin-top:4px;color:var(--ink-muted);font-size:11px}.equipment-inherit-help summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer}.equipment-inherit-help[open] summary>svg{transform:rotate(90deg)}.equipment-inherit-help p{margin:0 0 6px;line-height:1.7}.inventory-rule{margin-left:6px;padding:1px 5px;border-radius:4px;font-style:normal;font-size:10px;color:var(--gold-bright);background:var(--surface-warm)}.bag-select-toggle{margin-left:auto;flex-shrink:0;min-height:36px;padding:0 4px;font-size:12px}.bag-quick-picks{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}.bag-quick-picks button{min-height:36px;padding:0 11px;border:1px solid var(--line-wash);border-radius:18px;background:var(--surface-paper);color:var(--ink);font-size:12px}.bag-quick-picks button:disabled{opacity:.45}.bag-select-note{margin:0 0 9px;color:var(--ink-muted);font-size:11px;line-height:1.7}.inventory-row.is-selectable{padding-left:8px}.inventory-row.is-picked{border-color:var(--accent-light);background:var(--surface-soft)}.inventory-check{display:grid;place-items:center;flex-shrink:0;width:21px;height:21px;border:1.5px solid #b3c2a6;border-radius:6px;background:var(--surface-paper);color:var(--ink-invert)}.inventory-check.is-checked{border-color:var(--accent);background:var(--accent)}.bag-sell-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface-hollow);box-shadow:0 -2px 10px #526c3c14}.bag-sell-summary{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;font-size:12px}.bag-sell-summary strong{font-size:13px}.bag-sell-summary span{color:var(--gold)}.bag-sell-warning{color:#8d4a3c;font-size:11px;line-height:1.5}.bag-sell-bar .primary-button{flex:0 0 auto;min-height:44px;padding:0 18px}.bag-list-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:6px;margin-bottom:8px}.bag-sort{display:flex;align-items:center;gap:6px;color:var(--ink-muted);font-size:12px}.bag-quality,.bag-sort select{width:100%;min-width:0;min-height:44px;padding:0 6px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-paper);color:var(--ink);font-size:12px}.equipment-panel>.section-heading{margin:10px 0 7px;gap:6px}.equipment-panel>.section-heading h2{font-size:14px}.equipment-panel .equipment-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.equipment-panel .equipment-slot{align-items:center;gap:8px;min-height:58px;padding:9px 7px;text-align:left}.equipment-panel .equipment-slot .slot-copy{gap:4px}.equipment-panel .slot-copy strong{font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equipment-slot-meta{display:flex;align-items:baseline;gap:5px;color:var(--ink-muted);white-space:nowrap}.equipment-slot-meta small:before{content:"·";margin-right:5px}.equipment-slot-art{position:relative;display:inline-flex;flex-shrink:0}.equipment-slot-upgrade{position:absolute;top:-3px;right:-8px;min-width:22px;padding:0 3px;border:1px solid var(--gold-sand);border-radius:5px;background:var(--surface-warm);color:var(--gold-bright);font-size:10px;font-weight:600;line-height:15px;font-variant-numeric:tabular-nums;white-space:nowrap}.equipment-panel .slot-copy small,.equipment-panel .slot-label{font-size:10px}.equipment-panel .item-icon,.equipment-panel .item-icon:has(>.game-art){width:34px;height:36px}.equipment-panel .filter-chips{gap:5px;margin-bottom:6px}.equipment-panel .filter-chips button{min-height:44px;padding:4px 2px;font-size:12px}.equipment-panel .equipment-usable-filter{gap:4px;font-size:11px;white-space:nowrap}.equipment-panel .inventory-list{gap:5px}.equipment-panel .inventory-row{gap:7px;padding:8px}.equipment-panel .inventory-copy{gap:2px}.equipment-panel .inventory-title{gap:5px}.equipment-panel .inventory-title strong{font-size:13px}.equipment-panel .inventory-type{flex-wrap:wrap;gap:3px 5px;margin-top:0}.equipment-panel .inventory-rule{margin-left:0}.equipment-panel .bag-select-toggle,.equipment-panel .bag-quick-picks button{min-height:44px}.equipment-panel .bag-sell-bar{bottom:calc(68px + env(safe-area-inset-bottom,0px))}.equipment-affix-position{color:var(--ink-muted);font-size:10px;font-variant-numeric:tabular-nums}.equipment-inherit-saving{margin:6px 0 0;color:var(--accent-deep);font-size:11px;line-height:1.6}.hero-character-card{overflow:hidden;border:1px solid var(--line-mid);border-radius:18px;background:radial-gradient(ellipse at 100% 0,#dce9c9,transparent 70%),var(--surface-paper);box-shadow:0 7px 22px #526c3c0b}.hero-card-main{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:11px;padding:14px 14px 11px}.hero-card-copy{min-width:0}.hero-name-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}.hero-level{color:var(--gold-deep);font-size:16px;font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums;white-space:nowrap}.hero-card-copy h2{min-width:0;font-size:20px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.hero-profession-icon{display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border:1px solid #b3975a4d;border-radius:6px;background:var(--gold-tint);color:var(--gold)}.tone-ranger .hero-profession-icon{color:#456d42;background:var(--surface-sunken);border-color:#82966f66}.tone-mage .hero-profession-icon{color:#5e6693;background:var(--surface-cool);border-color:#9a9cbd66}.hero-profession{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:5px;font-size:12px;color:var(--ink-muted);line-height:1.5}.hero-profession strong{margin-right:4px;font-weight:500;color:var(--accent-deep)}.hero-portrait{width:56px;height:56px}.hero-portrait img{display:block;width:100%;height:100%;object-fit:cover;border:3px solid #ffffffb3;border-radius:15px;box-shadow:0 3px 10px #6a7d411c}.hero-experience{padding:0 14px 12px}.hero-experience>div:first-child{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 8px;margin-bottom:7px;color:var(--ink-muted);font-size:11px;font-variant-numeric:tabular-nums}.hero-experience b{color:var(--gold);font-weight:600}.hero-experience .xp-track{height:6px;border-radius:4px}.hero-card-records{padding:11px 14px 12px;border-top:1px solid var(--line-wash);background:var(--surface-soft)}.hero-card-records h3{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--accent-deep);font-size:12px;font-weight:600}.hero-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.hero-records>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:3px 6px;min-width:0;padding:9px 10px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-paper)}.hero-records dt{color:var(--ink-muted);font-size:11px;line-height:1.5;white-space:nowrap}.hero-records dd{margin:0 0 0 auto;font-size:14px;line-height:1.5;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.hero-records dd small{margin-left:3px;font-size:10px;font-weight:400;color:var(--ink-muted)}.hero-records .record-empty{color:var(--ink-muted);font-size:11px;font-weight:400}.hero-combat-card{margin-top:12px;overflow:hidden;border:1px solid var(--line-mid);border-radius:14px;background:var(--surface-paper)}.hero-combat-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:11px 14px 0}.hero-combat-heading h2{font-size:14px;font-weight:600}.hero-core-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:10px 0 12px}.hero-core-stats>div{min-width:0;padding:0 6px;text-align:center}.hero-core-stats>div+div{border-left:1px solid var(--line-wash)}.hero-core-stats dt{display:flex;align-items:center;justify-content:center;gap:4px;color:var(--ink-muted);font-size:11px}.hero-core-stats dt svg{width:14px;height:14px;flex-shrink:0}.hero-core-stats dd{margin:4px 0 0;font-size:20px;line-height:1.1;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.hero-core-stats>div:first-child svg{color:var(--clay-soft)}.hero-core-stats>div:nth-child(2) svg{color:#9d7c3d}.hero-core-stats>div:last-child svg{color:#5e8463}.hero-card-attributes,.hero-card-stat-section{border-top:1px solid #8e9c792e;background:#ffffff70}.hero-card-attributes{padding:4px 14px 8px}.hero-card-attributes .hero-card-section-heading{margin-bottom:0}.hero-card-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 10px;margin-bottom:12px}.hero-card-section-heading h3{display:flex;align-items:center;gap:7px;color:var(--accent-deep);font-size:14px;font-weight:600}.hero-card-section-heading>span{color:var(--ink-muted);font-size:12px}.hero-card-stat-section{padding:10px 14px}.hero-card-stat-section .hero-card-section-heading{margin-bottom:4px}.hero-card-stat-section h3{gap:6px;font-size:12px;line-height:1.5}.hero-card-stat-section h3 svg{width:14px;height:14px}.hero-card-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;margin:0}.hero-card-stat-grid>div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:2px 6px;min-width:0;padding:5px 0;border-bottom:1px solid #8e9c7924}.hero-card-stat-grid>div:last-child,.hero-card-stat-grid>div:nth-last-child(2):nth-child(odd){border-bottom:0;padding-bottom:0}.hero-card-stat-grid dt{font-size:12px;color:var(--ink-muted);line-height:1.5}.hero-card-stat-grid dd{display:flex;align-items:baseline;gap:2px;margin:0 0 0 auto;color:var(--ink);font-size:15px;font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.hero-card-stat-grid dd>span{font-size:11px;font-weight:400;color:var(--ink-muted)}.hero-card-stat-grid .stat-inactive dd{color:var(--ink-muted);font-weight:400}.hero-allocation-tools{display:flex;align-items:center;gap:7px;margin-left:auto}.hero-points-remaining{padding:4px 7px;border-radius:6px;background:var(--surface-soft);font-size:12px;color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.hero-points-remaining.has-points{color:var(--gold);background:var(--gold-tint)}.hero-reset-points{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-height:44px;padding:0 3px;border:0;border-radius:5px;background:transparent;color:var(--sage-deep);font-size:12px}.hero-reset-points:not(:disabled):hover{color:var(--ink);background:var(--surface-hollow)}.hero-allocation-locked{margin:0 0 8px;font-size:12px;color:var(--ink-muted)}.hero-attribute-list{display:grid}.hero-attribute{display:flex;align-items:center;gap:8px;min-width:0;padding:2px 0}.hero-attribute+.hero-attribute{border-top:1px solid #c5d2b94d}.hero-stat-toggle{display:flex;align-items:center;flex:1;gap:6px;min-width:0;min-height:44px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--ink);font-size:14px;font-weight:600;text-align:left}.hero-stat-toggle:hover{color:var(--accent)}.hero-stat-toggle:focus-visible{outline-offset:-2px}.hero-main-stat-tag{padding:2px 4px;background:var(--surface-sunken);border-radius:4px;font-size:12px;color:#4f6741;font-weight:400}.hero-attribute .attribute-icon{width:25px;height:27px;border-radius:6px;background:var(--surface-warm);color:var(--gold-mid);flex-shrink:0}.hero-attribute.stat-dex .attribute-icon{color:#4e784b;background:var(--surface-page)}.hero-attribute.stat-int .attribute-icon{color:#7a6595;background:var(--surface-cool)}.hero-attribute.stat-vit .attribute-icon{color:var(--clay-soft);background:var(--surface-cream)}.hero-attribute-value{min-width:0;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.hero-point-buttons{display:grid;width:104px;flex-shrink:0;grid-template-columns:minmax(0,1fr) 60px;align-items:center;gap:8px}.hero-stepper{display:flex;position:relative;border-radius:7px;background:var(--surface-soft)}.hero-stepper:before{content:"";position:absolute;z-index:1;inset:0;border:1px solid var(--line-mid);border-radius:inherit;pointer-events:none}.hero-stepper:after{content:"";position:absolute;top:9px;bottom:9px;left:50%;border-left:1px solid var(--line-mid);pointer-events:none}.hero-point-buttons button{display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:7px 0 0 7px;background:transparent;color:var(--accent-deep);border:0;font-size:16px;font-weight:400;line-height:1}.hero-point-buttons button:last-child{border-radius:0 7px 7px 0}@media(hover:hover){.hero-point-buttons button:not(:disabled):hover{background:var(--surface-sunken);color:var(--ink)}}.hero-point-buttons button:not(:disabled):active{background:var(--surface-sunken)}.hero-point-buttons button:focus-visible{outline-offset:1px}.hero-stat-total{display:flex;align-items:center;gap:12px;margin-bottom:16px}.hero-stat-total>strong{font-size:28px;font-variant-numeric:tabular-nums}.hero-stat-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:12px 0;border:1px solid var(--line-soft);border-radius:10px;background:var(--surface-soft);text-align:center}.hero-stat-sources>div+div{border-left:1px solid var(--line-soft)}.hero-stat-sources dt{color:var(--ink-muted);font-size:12px}.hero-stat-sources dd{margin:5px 0 0;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.hero-stat-detail h3{margin:18px 0 10px;font-size:14px;font-weight:600}.hero-stat-benefits dl{margin:0}.hero-stat-benefits dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line-wash);font-size:14px}.hero-stat-benefits dt{color:var(--ink-muted)}.hero-stat-benefits dd{margin:0;color:var(--mint);font-weight:600}.hero-stat-detail p{color:var(--ink-muted);font-size:13px;line-height:1.8}.hero-stat-growth p+p{margin-top:5px}@media(max-width:374px){.hero-card-main{grid-template-columns:48px minmax(0,1fr);padding:12px 12px 10px;gap:9px}.hero-card-copy h2{font-size:18px}.hero-level{font-size:15px}.hero-portrait{width:48px;height:48px}.hero-experience,.hero-card-records{padding-left:12px;padding-right:12px}.hero-records>div{padding:8px}.hero-records dd{font-size:13px}.hero-card-attributes{padding:4px 12px 8px}.hero-allocation-tools{gap:4px}.hero-points-remaining{padding:4px 5px}.hero-combat-heading{padding-left:12px;padding-right:12px}.hero-card-stat-section{padding:10px 12px}.hero-card-stat-grid{column-gap:12px}.hero-card-stat-grid>div{column-gap:5px}.hero-stat-toggle{gap:4px}.hero-attribute-value{font-size:18px}}.skills-points-button b{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.skills-points-button.has-points{color:var(--gold)}.skills-points-button>svg:last-child{color:var(--ink-muted)}.skills-browser-controls{position:sticky;top:0;z-index:2;padding:6px 0;background:var(--surface-hollow)}.skills-category-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;border-bottom:1px solid var(--line-wash)}.skills-category-switch button{position:relative;min-height:44px;border:0;background:none;color:var(--ink-muted);font-size:13px}.skills-category-switch button[aria-pressed=true]{color:#3e6134;font-weight:600}.skills-category-switch button[aria-pressed=true]:after{content:"";position:absolute;bottom:-1px;left:calc(50% - 22px);width:44px;height:3px;border-radius:3px;background:var(--accent-mid)}.skills-toolbar{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;color:var(--ink-muted);font-size:12px;margin:4px 0 8px}.skills-toolbar>span{display:flex;align-items:baseline;gap:6px;white-space:nowrap;color:var(--ink);font-weight:600}.skills-toolbar>span>small{font-size:10px;color:var(--ink-muted);font-weight:400}.skills-toolbar>small{font-size:11px}.skills-toolbar b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.skill-points-detail>p{margin:12px 0;color:var(--ink-muted);font-size:13px;line-height:1.8}.skills-list{border:1px solid var(--line-wash);border-radius:12px;background:var(--surface-paper);overflow:hidden}.skill-entry{padding:9px 10px;border-bottom:1px solid var(--line-wash)}.skill-entry:last-child{border-bottom:0}.skill-entry.is-equipped{background:var(--surface-soft)}.skill-entry.is-locked{background:var(--surface-paper);padding-top:7px;padding-bottom:7px}.skill-entry-top{display:flex;align-items:center;gap:8px}.skill-inspect{display:flex;align-items:center;gap:9px;flex:1;min-width:0;min-height:44px;padding:0;background:none;border:0;color:var(--ink);text-align:left}.skill-entry-icon{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border-radius:9px}.skill-entry-title{min-width:0}.skill-entry-title strong{display:flex;align-items:center;gap:5px;font-weight:600;font-size:14px;line-height:1.4}.skill-entry-title strong>svg{flex-shrink:0;color:var(--accent)}.skill-entry-title small{display:flex;align-items:center;flex-wrap:wrap;gap:3px 5px;font-size:11px;color:var(--ink-muted);line-height:1.5;margin-top:3px}.is-locked .skill-art{filter:grayscale(.8);opacity:.6}.is-locked .skill-entry-title strong{color:var(--ink-muted)}.skill-equip-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;min-height:44px;padding:0 4px;white-space:nowrap;border:1px solid var(--line-wash);border-radius:7px;background:var(--surface-paper);color:var(--accent);font-size:12px}.skill-equip-button.active{background:#eaf0e2;border-color:var(--line-soft);color:var(--sage-deep)}.skill-learning-note{margin:0 0 8px;color:var(--ink-muted);font-size:12px;line-height:1.6}.skill-equip-button.active:not(:disabled):hover{background:#e6edde}.skill-locked-label{width:48px;flex-shrink:0;text-align:center;font-size:11px;color:var(--ink-soft)}.skill-entry-effect{color:var(--ink-muted);font-size:12px;line-height:1.6;margin:3px 0 0}.skill-base-label{color:var(--ink-muted);font-size:10px;margin-right:5px}.skill-missing-rule{display:flex;align-items:center;gap:4px;color:#9b6a31;font-size:11px;border:0;background:none;padding:4px 0 0;min-height:32px}.skills-busy{color:var(--gold);font-size:12px;margin:8px 0}.skills-icon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.skill-tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:7px 3px 6px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-paper);color:var(--ink)}.skill-tile.is-equipped{background:var(--surface-soft);border-color:var(--line-strong)}.skill-tile-art{display:flex;align-items:center;justify-content:center;gap:4px;flex:0 0 30px;width:100%;height:30px}.skill-tile-art>.skill-art{width:30px;height:30px}.skill-tile-check{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--surface-sunken);color:var(--accent)}.skill-tile-title{display:flex;align-items:center;justify-content:center;gap:4px;max-width:100%;white-space:nowrap}.skill-tile strong{font-size:13px;font-weight:600;line-height:1.4}.skill-tile-level{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex-shrink:0;min-height:15px;padding:1px 3px;border-radius:3px;background:var(--surface-page);color:var(--accent);font-size:10px;line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.skill-tile-level.is-unlearned{background:var(--surface-cream);color:#8a836d;font-size:9px;font-weight:400}.skill-tile-role{color:var(--ink-muted);font-size:11px;line-height:1.4}.skills-loadout{margin:4px 0 8px;padding:6px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-page)}.skills-loadout .skills-toolbar{margin:0 0 5px;gap:3px 6px}.skills-loadout .skills-toolbar>small{font-size:10px}.skill-slot-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.skill-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:44px;padding:3px 1px;border-radius:7px;font-size:10px;line-height:1.3}.skill-slot>.skill-art{width:20px;height:20px}.skill-slot small{max-width:100%;font-size:9px;white-space:nowrap}.skill-slot.is-filled{border:1px solid var(--line-mid);background:var(--surface-paper);color:var(--ink)}.skill-slot.is-filled small{font-weight:600}.skill-slot.is-empty{border:1px dashed var(--line-mid);background:transparent;color:var(--ink-muted)}.skill-slot.is-locked{border:1px dashed var(--line-soft);background:var(--surface-hollow);color:var(--ink-soft)}.skills-library-heading{display:flex;justify-content:space-between;align-items:center;margin:0 1px 7px}.skills-library-heading h2{font-size:12px;font-weight:600}.skills-library-legend{display:flex;align-items:center;gap:9px}.skills-library-heading span{display:flex;align-items:center;gap:3px;color:var(--sage-deep);font-size:10px}.skills-library-heading .skills-legend-mastery{color:var(--accent)}.skill-slot-mastery{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--surface-hollow);color:var(--accent)}.skill-tile-meta{display:flex;align-items:center;justify-content:center;width:100%;height:17px;flex:0 0 17px;white-space:nowrap}.skill-tile-mastery{min-width:0;max-width:calc(100% - 34px);padding:2px 4px;border-radius:4px;background:var(--surface-sunken);color:var(--accent);font-size:10px;line-height:1.3;overflow-wrap:anywhere}.skill-locked-row{display:flex;flex-wrap:wrap;align-items:center;gap:0 5px;margin-top:8px;padding-top:6px;border-top:1px solid var(--line-wash)}.skill-locked-row-label{width:100%;color:var(--ink-muted);font-size:11px}.skill-locked-chip{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:2px 7px;border:0;border-radius:7px;background:transparent;color:var(--ink-muted);font-size:11px}.skill-locked-chip .skill-art{opacity:.7}.skill-locked-chip small{color:#8b7a55;font-weight:600}@media(min-width:480px){.skills-icon-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.skills-rule-notice{min-height:44px;margin-bottom:5px;padding:0}.skill-detail-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--ink-muted);font-size:12px}.skill-detail-meta>span{display:flex;align-items:center;gap:6px}.skill-detail-description{font-size:14px;line-height:1.8;margin:12px 0 18px;color:var(--ink)}.skill-detail-section-title{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-bottom:8px}.skill-detail-section-title h3{font-size:14px;font-weight:600}.skill-detail-section-title>span,.skill-detail-note{color:var(--ink-muted);font-size:12px;line-height:1.6}.skill-mastery-option{display:flex;flex-direction:column;gap:5px;width:100%;min-width:0;min-height:64px;border:1px solid var(--line-soft);border-radius:8px;padding:9px 10px;text-align:left;background:var(--surface-paper);color:var(--ink)}.skill-mastery-option-title{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.skill-mastery-option strong{font-size:13px;font-weight:600}.skill-mastery-option small{font-size:12px;color:var(--ink-muted);line-height:1.6}.skill-mastery-option.selected{border-color:var(--accent);background:var(--surface-hollow)}.skill-mastery-cost{display:inline-flex;align-items:center;gap:3px;font-size:11px;white-space:nowrap;color:var(--accent)}.skill-refund{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px;border:0;background:none;color:var(--ink-muted);font-size:12px;min-height:44px;margin-left:auto;padding:6px 0 6px 6px}.skill-refund small{font-size:10px}.skill-detail-note{margin-top:9px}.skill-detail-help{border-top:1px solid var(--line-wash);margin-top:15px}.skill-detail-help summary{min-height:44px;display:flex;justify-content:space-between;align-items:center;color:var(--ink-muted);font-size:12px;cursor:pointer;list-style:none}.skill-detail-help p{color:var(--ink-muted);font-size:13px;line-height:1.8;padding-bottom:8px}.skill-detail-help[open] summary>svg{transform:rotate(90deg)}.class-passives{margin:8px 0}.class-passives-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.class-passives-heading h2{font-size:15px;font-weight:600}.class-passives-heading span{font-size:12px;color:var(--ink-muted)}.class-passive .skill-entry-effect{margin-top:2px}.class-passive.is-locked .game-art{filter:grayscale(.8);opacity:.6}.innate-armor-passive{border:1px solid var(--line-mid);border-radius:10px;background:var(--surface-soft)}.innate-passive-badge{flex-shrink:0;padding:1px 5px;border-radius:4px;background:var(--surface-sunken);color:var(--accent);font-size:10px;font-style:normal;font-weight:400}.innate-passive-bonus{flex-shrink:0;font-size:12px;color:var(--accent);font-variant-numeric:tabular-nums}.innate-passive-effect{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;margin:5px 0 0;color:var(--ink-muted);font-size:11px;line-height:1.6}.innate-passive-effect>span{color:var(--accent);font-variant-numeric:tabular-nums}.learned-passives-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:5px 10px;margin:12px 0 7px;color:var(--ink-muted);font-size:11px}.innate-passive-note{padding:9px 10px;border-radius:8px;background:var(--surface-hollow);color:var(--accent);font-size:12px;line-height:1.7}.innate-passive-sources{margin:16px 0 0}.innate-passive-sources>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line-wash);font-size:12px}.innate-passive-sources dt{min-width:0}.innate-passive-sources dt>span{display:block;margin-bottom:4px;color:var(--ink-muted);font-size:11px}.innate-passive-sources strong{font-weight:500;overflow-wrap:anywhere}.innate-passive-sources dd{margin:0;flex-shrink:0;color:var(--accent);text-align:right}.innate-passive-total{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:14px 0;font-size:13px}.innate-passive-total strong{color:var(--accent);font-weight:600}.skill-level-badge{font-style:normal;font-size:10px;font-weight:600;color:var(--accent);background:var(--surface-page);padding:0 4px;border-radius:3px;font-variant-numeric:tabular-nums}.skill-sheet .sheet-header{padding:10px 14px 8px}.skill-sheet .sheet-header h2{font-size:20px}.skill-sheet .sheet-header .icon-button{width:44px;height:44px}.skill-sheet .sheet-body{padding:12px 14px max(14px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.skill-sheet .sheet-footer{flex-shrink:0;padding:8px 14px max(8px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)));border-top:1px solid var(--line-wash);background:var(--surface-paper)}.skill-sheet .skill-detail-description{margin:10px 0 14px;font-size:13px;line-height:1.75}.skill-identity-sheet .sheet-header{gap:10px;padding:16px 14px 12px}.skill-identity-sheet .sheet-header h2{line-height:1.3;letter-spacing:.5px}.skill-identity-sheet .sheet-header .icon-button{flex-shrink:0}.skill-identity-sheet .sheet-subtitle>span{white-space:nowrap}.skill-identity-sheet .skill-detail-description{margin-top:0}.skill-active-sheet .sheet-body{padding:10px 14px 8px}.skill-active-sheet .skill-detail-description{margin:0 0 12px;line-height:1.65}.skill-active-sheet .skill-base-label{display:inline;margin-right:6px;font-size:11px}.skill-status{flex-shrink:0;padding:3px 7px;border-radius:5px;background:var(--surface-hollow);color:var(--sage-deep);font-size:11px}.skill-level-section{padding:10px 10px 0;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-paper)}.skill-level-section .skill-detail-section-title{margin-bottom:6px}.skill-detail-section-title h3>b{margin-left:5px;color:var(--accent);font-size:13px;font-variant-numeric:tabular-nums}.skill-detail-section-title>span{font-size:11px}.skill-level-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;list-style:none;margin:8px 0 10px;padding:0}.skill-level-track li{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:4px;border-top:3px solid var(--line-mid);font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.skill-level-track li.is-filled{border-color:var(--accent-mid);color:var(--accent-deep)}.skill-level-track li[aria-current=step]>span{font-weight:700}.skill-level-track li.is-unavailable{border-color:var(--surface-page);color:var(--ink-muted)}.skill-level-track small{font-size:9px}.skill-level-next{display:flex;gap:8px;align-items:baseline;margin:0;font-size:12px;line-height:1.5;color:var(--ink)}.skill-level-next b{flex:none;color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums}.skill-level-unlock{flex:1 1 130px;margin:0;font-size:11px;line-height:1.6;color:var(--ink-muted)}.skill-level-actions{display:flex;gap:4px 8px;align-items:center;flex-wrap:wrap;min-height:44px;margin-top:8px;padding:4px 0;border-top:1px solid var(--line-wash)}.skill-upgrade-button{flex:1 1 120px;display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;border:1px solid var(--accent);border-radius:7px;background:var(--accent);color:var(--ink-invert);font-size:13px}.skill-upgrade-button small{font-size:10px}.skill-mastery-options{margin-top:12px}.skill-mastery-options fieldset{min-width:0}.skill-mastery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.skill-active-sheet .skill-detail-help{margin-top:10px}.skill-detail-resets{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 8px;border-top:1px solid var(--line-wash)}.skill-detail-resets .skill-refund{justify-content:flex-start;margin:0;padding:6px 0;font-size:11px}.skill-detail-resets .skill-refund:last-child{margin-left:auto}.skill-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.skill-detail-footer>span{display:flex;flex-shrink:0;align-items:center;gap:5px;color:var(--gold);font-size:12px}.skill-detail-footer>span>b{font-size:16px;font-variant-numeric:tabular-nums}.skill-detail-action{flex:0 1 190px;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:var(--ink-invert);font-size:14px}.skill-detail-action.is-carried{background:var(--surface-hollow);border-color:var(--line-mid);color:var(--accent)}.skill-sheet button:focus-visible,.skills-panel button:focus-visible{outline:2px solid #718d5e;outline-offset:2px}.skill-summon-stats{list-style:none;margin:8px 0 0;padding:7px 0 0;display:grid;gap:5px;border-top:1px solid var(--line-wash)}.skill-summon-stats li{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.skill-summon-stats strong{font-size:12px;font-weight:600;color:var(--ink)}.skill-summon-stats li>span{white-space:nowrap}@media(max-width:359px){.skill-mastery-grid{grid-template-columns:minmax(0,1fr);gap:6px}}.strategy-panel{margin-top:0}.strategy-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.strategy-presets>button{display:flex;justify-content:center;align-items:center;gap:5px;min-height:44px;padding:5px 2px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-paper);color:var(--ink-muted)}.strategy-presets>button.is-current{border-color:#89a977;background:var(--surface-page);color:var(--mint)}.strategy-presets strong{font-size:13px;color:var(--ink);font-weight:600}.strategy-workspace{margin-top:10px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-paper);overflow:hidden}.strategy-list-heading{display:flex;align-items:center;justify-content:space-between;padding:0 9px;gap:8px;background:var(--surface-soft);border-bottom:1px solid var(--line-wash)}.strategy-list-heading h2{font-size:13px;display:flex;align-items:center;gap:6px}.strategy-list-heading h2 span{font-weight:400;color:var(--ink-muted);font-size:12px}.strategy-list-actions{display:flex;align-items:center;gap:7px}.strategy-list-heading button{min-width:44px;min-height:44px;font-size:11px;white-space:nowrap}.strategy-list-heading button[aria-pressed=true]{color:var(--mint);font-weight:600}.strategy-rule-list{list-style:none;padding:0;margin:0}.strategy-rule-list:empty{display:none}.strategy-rule-list li{display:flex;align-items:center;padding:0 8px;gap:5px}.strategy-rule-list li+li{border-top:1px solid var(--line-wash)}.strategy-rule-list li.is-invalid{background:var(--surface-warm)}.strategy-order{flex:0 0 14px;text-align:center;font-size:10px;color:var(--sage-mid);font-variant-numeric:tabular-nums}.strategy-rule{display:flex;align-items:center;gap:8px;min-width:0;min-height:52px;flex:1;padding:6px 0;border:0;background:none;color:var(--ink);text-align:left}.strategy-action-icon{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;color:var(--mint)}.strategy-rule-copy{flex:1;min-width:0}.strategy-rule-copy strong{display:block;font-size:13px;font-weight:600}.strategy-rule-copy small{display:block;font-size:11px;color:var(--ink-muted);margin-top:1px;line-height:1.5}.strategy-rule>svg:last-child{color:var(--sage-mid)}.strategy-sort{display:flex}.strategy-sort button{display:grid;place-items:center;width:44px;min-height:44px;border:0;background:none;color:var(--mint)}.strategy-empty{padding:20px 10px;font-size:12px;color:var(--ink-muted);text-align:center}.strategy-missing{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:12px;border:1px solid var(--gold-sand);border-radius:9px;background:var(--surface-cream);margin-top:6px}.strategy-missing>span{width:100%;color:var(--gold);font-size:11px}.strategy-missing button{display:flex;align-items:center;gap:5px;padding:5px 8px;min-height:40px;border:1px solid var(--gold-sand);border-radius:6px;background:var(--surface-paper);font-size:12px;color:var(--ink)}.strategy-missing>small{font-size:11px;color:var(--ink-muted)}.strategy-help{margin-top:4px;font-size:11px;color:var(--ink-muted)}.strategy-help summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:44px}.strategy-help p{padding-bottom:12px;line-height:1.8}.strategy-preset-preview>p{color:var(--ink-muted);font-size:12px}.strategy-preset-preview ol{list-style:none;padding:0;margin:14px 0 20px}.strategy-preset-preview li{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid var(--line-wash)}.strategy-preset-preview li>span{color:var(--ink-muted);font-size:11px}.strategy-preset-preview li strong{flex:1;font-size:13px;font-weight:500}.strategy-preset-preview li small{color:var(--ink-muted);font-size:11px;max-width:45%}.strategy-replace-note{display:block;text-align:center;margin-top:10px;color:var(--ink-muted);font-size:11px}.strategy-editor-sheet .sheet-header{padding:14px 14px 10px}.strategy-editor-sheet .sheet-body{padding:12px 14px 14px}.strategy-editor-sheet .sheet-footer{flex-shrink:0;padding:10px 14px max(10px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)));border-top:1px solid var(--line-wash);background:var(--surface-paper)}.strategy-editor h3{margin:0 0 8px;font-size:13px}.strategy-skill-choices,.strategy-basic-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.strategy-skill-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 2px;min-height:62px;font-size:12px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-paper);color:var(--ink)}.strategy-basic-choices{margin-top:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.strategy-basic-choices button{min-width:0;min-height:44px;padding:5px 2px;border:1px solid var(--line-wash);border-radius:7px;background:var(--surface-paper);color:var(--ink-muted);font-size:12px}.strategy-skill-choices button[aria-pressed=true],.strategy-basic-choices button[aria-pressed=true]{border-color:var(--accent-light);background:var(--surface-page);color:var(--accent-deep);box-shadow:inset 0 0 0 1px var(--accent-light);font-weight:600}.strategy-editor-warning{display:flex;align-items:center;gap:6px;margin:10px 0 0;padding:7px 8px;border-radius:6px;background:var(--surface-warm);color:var(--gold);font-size:12px;line-height:1.6}.strategy-editor-warning svg{flex-shrink:0}.strategy-rule-fields{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-wash)}.strategy-select{display:grid;gap:5px;min-width:0;margin:0}.strategy-select>span{font-size:12px;font-weight:600}.strategy-select select{width:100%;min-width:0;min-height:44px;padding:8px;font-size:12px}.strategy-editor-actions{display:flex;gap:10px}.strategy-editor-actions .primary-button{flex:1;min-width:0;min-height:44px;padding:9px 12px;font-size:14px}.strategy-delete{display:flex;justify-content:center;align-items:center;gap:5px;flex:0 0 auto;min-height:44px;padding:8px 10px;border:1px solid #cdbfad;border-radius:7px;background:var(--surface-paper);color:#93624c;font-size:12px}@media(max-width:360px){.strategy-rule{gap:6px}.strategy-rule-list li{padding:0 7px}}.strategy-trial{padding:0 9px;border-top:1px solid var(--line-wash);background:var(--surface-soft)}.strategy-trial-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.strategy-trial-heading .text-button{min-height:44px;font-size:12px;flex-shrink:0}.strategy-trial-heading small{color:var(--ink-muted);font-size:11px;text-align:right}.strategy-trial-result{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 10px;padding-top:7px;border-top:1px solid var(--line-wash)}.strategy-trial-result div{display:grid;gap:2px;text-align:center}.strategy-trial-result dt{color:var(--ink-muted);font-size:10px}.strategy-trial-result dd{margin:0;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.strategy-trial-result dd small{font-size:10px;font-weight:400;color:var(--ink-muted)}.strategy-preset-trial{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 12px}.strategy-preset-trial div{padding:8px 10px;border:1px solid var(--line-wash);border-radius:9px;background:var(--surface-paper)}.strategy-preset-trial dt{color:var(--ink-muted);font-size:11px}.strategy-preset-trial dd{margin:3px 0 0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}.strategy-preset-trial dd small{font-size:11px;font-weight:400;color:var(--ink-muted)}.strategy-preset-trial dd span{display:block;margin-top:2px;font-size:11px;font-weight:400;color:var(--ink-muted)}.campaign-stages{color:var(--ink)}.campaign-progress{display:flex;align-items:baseline;justify-content:space-between;color:var(--ink-muted);font-size:12px}.campaign-progress strong{color:var(--accent);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.campaign-progress small{color:var(--ink-muted);font-size:12px;font-weight:400}.campaign-progress-track{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:8px 0 14px}.campaign-progress-track span{height:4px;background:var(--surface-page);border-radius:3px}.campaign-progress-track .is-cleared{background:var(--accent-light)}.campaign-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.campaign-stage{position:relative;display:flex;align-items:center;gap:8px;min-width:0;min-height:57px;padding:9px 10px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-paper);color:var(--ink);text-align:left}.campaign-stage:hover{background:var(--surface-soft);border-color:var(--line-strong)}.campaign-stage.is-selected{background:var(--surface-sunken);border-color:#72955e;box-shadow:inset 0 0 0 1px #72955e28}.campaign-stage.is-locked{background:var(--surface-soft);color:var(--ink-soft);border-style:dashed}.campaign-stage.is-locked.is-selected{border-style:solid;background:var(--surface-hollow);border-color:#8fa27e}.campaign-stage-number{flex-shrink:0;white-space:nowrap;color:#a0ab92;font-size:13px;font-variant-numeric:tabular-nums;font-weight:500}.campaign-stage-number.is-cleared,.is-selected .campaign-stage-number{color:var(--accent-mid)}.campaign-stage-copy{flex:1;min-width:0}.campaign-stage-copy strong{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:600;line-height:1.5}.campaign-stage-copy strong svg{color:#a28545}.campaign-stage-copy small{display:flex;justify-content:space-between;align-items:center;margin-top:2px;gap:3px;color:var(--ink-muted);font-size:10px;line-height:1.5}.campaign-stage-copy small span{color:var(--accent-mid)}.is-locked .campaign-stage-copy small span{color:var(--ink-soft)}.campaign-stage-check{position:absolute;top:4px;right:4px;color:#76925e;display:flex}.campaign-stage-details{margin-top:14px;padding:13px;background:var(--surface-paper);border:1px solid var(--line-soft);border-radius:11px}.campaign-stage-details>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.campaign-detail-number{font-size:10px;color:var(--ink-muted)}.campaign-stage-details h3{display:flex;align-items:center;gap:7px;margin-top:3px;font-size:18px;font-weight:600;font-family:var(--serif)}.campaign-boss-tag{border-radius:4px;padding:2px 4px;background:var(--surface-warm);color:#96722f;font-size:10px;font-family:var(--sans);font-weight:400}.campaign-enemy-level{text-align:right;white-space:nowrap;font-size:12px;color:#8b7040}.campaign-enemy-level small{display:block;margin-top:4px;font-size:10px;color:var(--ink-muted)}.campaign-enemies{margin-top:10px;font-size:11px;line-height:1.8;color:var(--ink-muted)}.campaign-enemy-details{margin-top:8px;font-size:11px;color:var(--ink-muted)}.campaign-enemy-details summary{display:flex;align-items:center;gap:5px;width:fit-content;min-height:36px;cursor:pointer;list-style:none}.campaign-enemy-details summary::-webkit-details-marker{display:none}.campaign-enemy-details[open] summary svg{transform:rotate(90deg)}.campaign-enemy-details ul{margin:0 0 10px;padding:0;list-style:none;line-height:1.8}.campaign-enemy-details li+li{margin-top:6px}.campaign-enemy-details li strong{margin-right:5px;color:#926e52}.campaign-rewards{display:flex;align-items:center;gap:13px;margin-top:11px;padding-top:11px;border-top:1px solid var(--surface-page);font-size:10px;color:var(--ink-muted)}.campaign-rewards>span{margin-right:auto}.campaign-rewards b{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:#8b7040}.campaign-rewards small{font-size:10px;font-weight:400;color:var(--ink-muted)}.campaign-stage-actions{display:flex;gap:8px;margin-top:13px}.campaign-stage-actions>button{min-height:42px}.campaign-stage-actions .primary-button{flex:1;padding:9px;font-size:13px}.campaign-stage-actions .small-button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:76px;background:var(--surface-hollow);font-size:12px}.campaign-action-note{margin-top:9px;font-size:10px;line-height:1.6;color:var(--ink-muted)}.campaign-restriction{text-align:center;margin-top:13px;padding:10px 5px;border-radius:7px;background:var(--surface-soft);color:var(--ink-soft);font-size:12px}.campaign-sweep-result{display:flex;align-items:flex-start;gap:6px;margin-top:10px;padding:9px;border-radius:7px;background:var(--surface-hollow);color:var(--accent);font-size:11px;line-height:1.7}.campaign-sweep-result svg{flex-shrink:0;margin-top:2px}.detail-sheet:has(.campaign-stages) .sheet-body{padding-top:12px}@media(max-width:374px){.campaign-stage{padding:8px;gap:5px}.campaign-stage-copy strong{font-size:12px}.campaign-stage-number{font-size:11px}.campaign-stage-details{padding:11px}.campaign-rewards{gap:8px}}.arena-panel{display:grid;gap:12px;margin:4px 0 16px}.arena-panel h3{margin:0;font-size:14px;font-weight:600;color:var(--ink)}.arena-view-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line-soft);border-radius:11px;background:var(--surface-sunken)}.arena-view-switch button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:7px 4px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink-muted);font-size:12px}.arena-view-switch button[aria-pressed=true]{border-color:var(--line-soft);background:var(--surface-paper);color:var(--accent-deep);font-weight:600;box-shadow:0 2px 5px #30452b09}.arena-lobby-content{display:grid;gap:16px}.arena-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;margin-bottom:8px}.arena-section-heading h3{display:flex;align-items:center;gap:6px}.arena-section-heading h3>span{min-width:20px;padding:1px 5px;border-radius:5px;background:var(--surface-sunken);color:var(--ink-muted);font-size:10px;text-align:center}.arena-section-heading .text-button{display:flex;align-items:center;gap:3px;min-height:36px;font-size:11px}.arena-roster-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.arena-roster-actions .text-button{min-height:44px}.arena-roster-actions .text-button[aria-pressed=true]{color:var(--accent-deep);font-weight:600}.arena-add-opponent[aria-expanded=true]>svg{transform:rotate(90deg)}.arena-section-heading>small{color:var(--ink-muted);font-size:10px}.arena-hint{margin:7px 0 12px;font-size:12px;line-height:1.7;color:var(--ink-muted)}.arena-roster ul,.arena-spar ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}.arena-roster li,.arena-spar li{display:flex;align-items:center;min-width:0;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface-paper);overflow:hidden}.arena-roster li:hover,.arena-spar li:hover{border-color:var(--accent-light);background:var(--surface-soft)}.arena-opponent{display:flex;flex:1;min-width:0;align-items:center;gap:11px;min-height:66px;padding:12px;border:0;background:transparent;color:var(--ink);text-align:left}.arena-opponent-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.arena-opponent-copy strong{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arena-opponent-copy small{font-size:11px;line-height:1.5;color:var(--ink-muted);font-variant-numeric:tabular-nums}.arena-opponent-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 8px}.arena-record{color:var(--accent-deep);font-size:10px;line-height:1.5;white-space:nowrap}.arena-opponent-action{display:flex;align-items:center;gap:4px;flex-shrink:0;color:var(--accent);font-size:11px}.arena-remove{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex-shrink:0;min-height:44px;margin-right:8px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--ink-muted);font-size:11px}.arena-remove:hover{color:var(--danger);background:var(--surface-warm)}.arena-empty{margin:0;padding:11px 12px;border:1px dashed var(--line-soft);border-radius:9px;background:var(--surface-paper);color:var(--ink-muted);font-size:12px;line-height:1.6}.arena-spar-empty{margin:0;padding:14px;border-radius:10px;background:var(--surface-sunken);font-size:12px;line-height:1.8;color:var(--ink-muted)}.arena-share-card,.arena-import{padding:20px 18px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface-paper)}.arena-share-identity{display:flex;align-items:center;gap:12px;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--line-wash)}.arena-share-identity>span{display:grid;gap:4px;min-width:0}.arena-share-identity strong{font-size:17px;overflow-wrap:anywhere}.arena-share-identity small{font-size:11px;color:var(--ink-muted)}.arena-field-label{display:block;margin:16px 0 8px;font-size:11px;color:var(--ink-muted)}.arena-share-identity+.arena-field-label{margin-top:0}.arena-code{display:block;width:100%;box-sizing:border-box;min-height:100px;max-height:240px;padding:12px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-soft);color:var(--ink-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.7;resize:vertical;word-break:break-all}.arena-code-input{min-height:80px;padding:9px 10px;color:var(--ink);line-height:1.6}.arena-code:focus{outline:2px solid var(--accent);outline-offset:2px;color:var(--ink)}.arena-share-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.arena-share-row.is-single{grid-template-columns:1fr}.arena-copy{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-cool);color:var(--ink);font-size:12px}.arena-share-row .primary-button,.arena-import-button{min-height:46px;font-size:13px}.arena-note{margin:10px 0 0;font-size:12px;line-height:1.7;color:var(--accent-deep)}.arena-privacy,.arena-lobby-footnote{display:flex;align-items:flex-start;gap:6px;margin:14px 0 0;font-size:11px;line-height:1.8;color:var(--ink-muted)}.arena-privacy>svg,.arena-lobby-footnote>svg{flex-shrink:0;margin-top:3px}.arena-lobby-footnote{justify-content:center;margin:0;padding:0 8px}.arena-import{padding:12px;margin-bottom:10px;border-radius:10px}.arena-import .arena-hint{margin:0 0 8px;line-height:1.6}.arena-import .arena-error{margin-top:8px}.arena-import-button{width:100%;min-height:44px;padding:9px 12px;margin-top:10px}.arena-import-button:disabled{opacity:.5}.arena-error{display:flex;align-items:flex-start;gap:6px;margin:0;padding:10px 12px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-warm);font-size:12px;line-height:1.7;color:var(--danger)}.arena-error>svg{flex-shrink:0;margin-top:3px}.arena-adjust{margin-top:8px;font-size:11px;color:var(--ink-muted)}.arena-adjust summary{display:flex;align-items:center;gap:5px;cursor:pointer;line-height:1.5}.arena-adjust ul{margin:6px 0 0;padding-left:18px;display:grid;gap:3px;line-height:1.5}.arena-matchup{margin-bottom:6px;border:1px solid var(--line-soft);border-radius:11px;background:var(--surface-paper)}.arena-versus{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:center;gap:5px;padding:4px 9px}.arena-contestant{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left}.arena-contestant>span{display:flex;flex-direction:column;min-width:0;gap:2px}.arena-contestant strong{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arena-contestant small{color:var(--ink-muted);font-size:10px}.arena-contestant.is-foe{justify-content:flex-end;text-align:right;border-radius:6px}.arena-contestant.is-foe:hover{background:var(--surface-soft)}.arena-contestant.is-foe strong{text-decoration:underline;text-decoration-color:var(--line-mid);text-underline-offset:4px}.arena-versus-mark{color:var(--gold);font-size:12px;font-weight:700;font-style:italic;text-align:center}.arena-matchup.is-finished{margin-top:14px;padding:10px 16px 18px;border-radius:16px}.arena-outcome{display:flex;flex-direction:column;align-items:center;padding:20px 8px;text-align:center}.arena-outcome-emblem{display:grid;place-items:center;width:62px;height:62px;margin-bottom:18px;border:1px solid var(--line-soft);border-radius:50%;color:var(--accent);background:var(--surface-sunken)}.arena-outcome.is-won .arena-outcome-emblem{color:var(--gold);background:var(--gold-tint)}.arena-outcome.is-lost .arena-outcome-emblem{color:var(--ink-muted)}.arena-outcome p{margin:0;color:var(--ink-muted);font-size:11px}.arena-outcome h2{margin:9px 0;font-size:24px;font-weight:600}.arena-outcome>span:last-child{color:var(--ink-muted);font-size:12px}.arena-matchup.is-finished .arena-versus{margin-top:8px;padding-block:15px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.arena-result-note{margin:15px 0;color:var(--ink-muted);font-size:11px;line-height:1.7;text-align:center}.arena-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.arena-result-actions button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px}.arena-panel button:focus-visible,.arena-matchup button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media(max-width:380px){.arena-view-switch button{gap:4px;font-size:11px}.arena-share-card{padding:17px 13px}.arena-import{padding:12px}.arena-opponent{padding:10px;gap:8px}.arena-versus{padding-inline:8px;gap:3px}.arena-contestant{gap:5px}.arena-contestant .character-portrait{width:30px;height:30px}.arena-matchup.is-finished{padding-inline:10px}}.arena-versus-center{display:grid;justify-items:center;gap:2px}.arena-round{color:var(--ink-muted);font-size:9px;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}.arena-fighter-sheet .sheet-header{gap:10px;padding:16px 14px 10px}.arena-fighter-sheet .sheet-title-row h2{font-family:inherit;font-size:16px;font-weight:600;letter-spacing:0;line-height:1.4;overflow-wrap:anywhere}.arena-fighter-sheet .sheet-header>.icon-button{flex-shrink:0;width:40px;height:40px}.arena-fighter-sheet .sheet-body{padding:0 14px max(16px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.arena-detail{min-width:0}.arena-detail-switch{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:4px;padding:8px 0 10px;background:var(--surface-soft)}.arena-detail-switch button{min-width:0;min-height:40px;padding:7px 4px;border:1px solid transparent;border-radius:7px;color:var(--ink-muted);background:transparent;font-size:12px}.arena-detail-switch button[aria-pressed=true]{color:var(--accent-deep);font-weight:600;background:var(--surface-paper);border-color:var(--line-mid)}.arena-detail-content{display:grid;align-content:start;gap:14px;min-height:min(280px,45dvh)}.arena-attributes{border:1px solid var(--line-soft);border-radius:10px;overflow:hidden;background:var(--surface-paper)}.arena-core-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:12px 0;background:var(--surface-sunken)}.arena-core-stats>div{display:grid;gap:4px;text-align:center}.arena-core-stats>div+div{border-left:1px solid var(--line-soft)}.arena-core-stats dt{font-size:11px;color:var(--ink-muted)}.arena-core-stats dd{margin:0;font-size:21px;line-height:1.25;font-weight:600;color:var(--accent-deep);font-variant-numeric:tabular-nums}.arena-secondary-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;margin:0;padding:5px 12px}.arena-secondary-stats>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1px 5px;padding:7px 0;border-bottom:1px solid var(--line-wash);font-size:11px;line-height:1.4}.arena-secondary-stats>div:last-child{border:0}.arena-secondary-stats dt{color:var(--ink-muted)}.arena-secondary-stats dd{margin:0 0 0 auto;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.arena-secondary-stats dd small{font-size:10px;font-weight:400}.arena-detail-section{min-width:0}.arena-detail-section>h3{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:var(--ink);font-size:12px;font-weight:600}.arena-detail-section>h3>span{font-size:10px;font-weight:400;color:var(--ink-muted)}.arena-detail-empty{display:flex;align-items:center;gap:8px;margin:0;padding:12px;border-radius:8px;background:var(--surface-sunken);color:var(--ink-muted);font-size:12px;line-height:1.6}.arena-detail-empty>svg{flex-shrink:0}.arena-detail-skills,.arena-passive-list,.arena-detail-items{display:grid;gap:7px}.arena-skill-detail,.arena-passive-list>details,.arena-gear-detail{border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-paper);overflow:hidden}.arena-detail summary{list-style:none;cursor:pointer}.arena-detail summary::-webkit-details-marker{display:none}.arena-skill-detail>summary{display:flex;align-items:center;gap:9px;min-height:54px;padding:8px 10px}.arena-skill-copy{flex:1;min-width:0;display:grid;gap:4px}.arena-skill-copy strong{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:12px;font-weight:600}.arena-skill-copy small{color:var(--ink-muted);font-size:10px;line-height:1.5;font-weight:400}.arena-skill-copy em{margin-left:8px;font-style:normal;color:var(--gold)}.arena-skill-detail summary>svg:last-child,.arena-passive-list summary>svg:last-child,.arena-gear-detail summary>svg:last-child{flex-shrink:0;color:var(--ink-muted)}.arena-skill-detail[open] summary>svg:last-child,.arena-passive-list details[open] summary>svg:last-child,.arena-gear-detail[open] summary>svg:last-child{transform:rotate(90deg)}.arena-skill-description{display:grid;gap:7px;padding:10px 12px;border-top:1px solid var(--line-wash);background:var(--surface-soft)}.arena-skill-description p,.arena-passive-list details>p{margin:0;font-size:11px;line-height:1.8;color:var(--ink-muted);overflow-wrap:anywhere}.arena-skill-description strong{font-weight:500;color:var(--ink)}.arena-passive-list summary{display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 10px;color:var(--accent)}.arena-passive-list summary strong{flex:1;font-size:12px;font-weight:500}.arena-passive-list details>p{padding:0 12px 10px}.arena-gear-detail>summary{display:flex;align-items:center;gap:9px;min-height:66px;padding:10px}.arena-gear-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-soft)}.arena-gear-copy{display:grid;flex:1;min-width:0;gap:4px}.arena-gear-copy>small{font-size:10px;color:var(--ink-muted)}.arena-gear-copy strong{font-size:13px;line-height:1.5;font-weight:600;overflow-wrap:anywhere}.arena-gear-copy em{margin-left:5px;font-style:normal;color:var(--gold);font-size:11px}.arena-gear-level{flex-shrink:0;color:var(--ink-muted);font-size:11px;font-variant-numeric:tabular-nums}.arena-gear-detail .equipment-detail-card{margin:0;padding:0 12px 10px;border:0;border-top:1px solid var(--line-wash);border-radius:0;background:var(--surface-soft);box-shadow:none}.arena-gear-detail .equipment-detail-heading{display:none}.arena-gear-detail .equipment-stat-sources{margin-top:0}.arena-gear-empty{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 15px;border:1px dashed var(--line-soft);border-radius:9px;color:var(--ink-muted);font-size:12px}.arena-gear-empty small{margin-left:auto;font-size:11px}.arena-detail-rules{display:grid;gap:8px;margin:0;padding:0;list-style:none}.arena-detail-rules>li{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 10px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface-paper)}.arena-rule-number{flex-shrink:0;width:19px;font-size:11px;text-align:center;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.arena-rule-icon{display:grid;place-items:center;flex-shrink:0;width:29px;color:var(--accent)}.arena-detail-rules li>div{min-width:0}.arena-detail-rules strong{font-size:12px;font-weight:600}.arena-detail-rules p{margin:4px 0 0;color:var(--ink-muted);font-size:11px;line-height:1.6;overflow-wrap:anywhere}.arena-detail-rules li>div>small{display:block;margin-top:4px;color:var(--gold);font-size:10px}.arena-rule-hint{margin:-7px 0 0;color:var(--ink-muted);font-size:11px;line-height:1.6}.arena-detail-rules .is-invalid{border-style:dashed;background:var(--surface-soft)}.arena-detail button:focus-visible,.arena-detail summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media(max-width:360px){.arena-fighter-sheet .sheet-header{padding-inline:12px}.arena-fighter-sheet .sheet-body{padding-inline:10px}.arena-secondary-stats{column-gap:12px;padding-inline:10px}.arena-gear-detail>summary{gap:7px;padding-inline:8px}}.ranked-card{padding:16px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface-paper)}.ranked-login{display:grid;justify-items:center;gap:10px;padding:24px 18px;text-align:center;color:var(--accent)}.ranked-login h3{color:var(--ink)}.ranked-login p{margin:0;color:var(--ink-muted);font-size:12px;line-height:1.8}.ranked-login .primary-button{min-height:44px;margin-top:4px;padding-inline:18px}.ranked-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0}.ranked-summary>div{display:grid;gap:4px;justify-items:center;text-align:center}.ranked-summary>div+div{border-left:1px solid var(--line-soft)}.ranked-summary small{color:var(--ink-muted);font-size:11px}.ranked-summary strong{color:var(--accent-deep);font-size:22px;line-height:1.2;font-variant-numeric:tabular-nums}.ranked-summary span{font-size:13px;line-height:1.9;font-variant-numeric:tabular-nums}.ranked-defender{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface-paper)}.ranked-picker{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:9px}.ranked-picker li{display:flex;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface-paper);overflow:hidden}.ranked-picker .arena-opponent[aria-pressed=true]{background:var(--accent-pale)}.ranked-picker .arena-opponent:disabled{opacity:.6}.ranked-history ul{list-style:none;margin:0;padding:0;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface-paper)}.ranked-battle{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px}.ranked-battle+.ranked-battle{border-top:1px solid var(--line-wash)}.ranked-battle-result{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--surface-sunken);color:var(--ink-muted);font-size:12px;font-weight:600}.ranked-battle.is-won .ranked-battle-result{background:var(--gold-tint);color:var(--gold)}.ranked-battle-copy{display:grid;flex:1;min-width:0;gap:2px}.ranked-battle-copy strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranked-battle-copy small{color:var(--ink-muted);font-size:11px;line-height:1.5}.ranked-battle-delta{flex-shrink:0;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.ranked-battle.is-won .ranked-battle-delta{color:var(--accent-deep);font-weight:600}.arena-matchup>.arena-error{margin:0 9px 9px}.arena-matchup:not(.is-finished)>.arena-result-note{margin:0;padding:0 12px 10px}.option-icon.relic-art{position:relative;overflow:hidden;color:var(--relic-ink);background:linear-gradient(145deg,var(--surface-paper),var(--relic-paper) 70%);box-shadow:inset 0 1px 0 var(--surface-paper),inset 0 -2px color-mix(in srgb,var(--relic-ink) 7%,transparent)}.relic-art>svg{display:block;width:100%;height:100%}.relic-art.is-evolved{border-color:color-mix(in srgb,var(--relic-ink) 45%,transparent)}.relic-art.is-tome{border-radius:6px}.option-icon.relic-art.is-boss{border-color:color-mix(in srgb,var(--gold-pale) 78%,var(--relic-ink));background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--relic-paper) 86%,var(--surface-paper)) 0 46%,transparent 72%),linear-gradient(145deg,var(--surface-paper),var(--gold-tint));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold-pale) 26%,transparent),inset 0 -3px color-mix(in srgb,var(--gold) 9%,transparent),0 2px 7px color-mix(in srgb,var(--gold) 13%,transparent)}.relic-art.is-boss>svg{filter:drop-shadow(0 1px 0 color-mix(in srgb,var(--surface-paper) 78%,transparent))}.relic-boss-frame{color:var(--gold-light)}.journey-map-access{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;margin-bottom:8px;padding:6px 11px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-paper);color:var(--accent-deep);text-align:left}.journey-map-access[hidden]{display:none}.journey-map-access>span{flex:1;font-size:12px}.journey-map-access small{margin-left:9px;color:var(--ink-muted);font-size:10px}.journey-map-access b{font-size:12px;font-weight:500}.journey-map-access.is-compact{justify-content:center;gap:3px;width:57px;min-height:34px;margin:0;padding:4px;border:0;border-left:1px solid var(--line-wash);border-radius:0;background:transparent}.journey-map-access.is-compact b{font-size:10px}.journey-atlas{overflow:hidden;border:1px solid var(--line-mid);border-radius:12px;padding:5px;background:var(--surface-paper);box-shadow:0 3px 10px #526c3c08}.atlas-heading{display:flex;align-items:center;gap:8px;padding:7px 10px;border-bottom:1px solid var(--line-wash)}.atlas-region-seal{display:grid;place-items:center;flex-shrink:0;width:26px;height:30px;border:1px solid var(--line-mid);border-radius:2px 2px 9px 9px;color:var(--sage-deep);font:500 16px var(--serif);background:var(--surface-hollow)}.atlas-heading h2{min-width:0;margin:0;font:600 17px/1.35 var(--serif);letter-spacing:.03em}.atlas-supplies{display:inline-flex;align-items:center;flex-shrink:0;gap:4px;margin-left:auto;color:var(--gold-deep);font-size:14px;font-variant-numeric:tabular-nums}.atlas-landscape{position:relative;height:374px;margin:4px 12px 0;isolation:isolate;overflow:hidden;border-radius:8px;background:radial-gradient(ellipse at 50% 45%,var(--surface-paper) 0 25%,transparent 70%),linear-gradient(180deg,var(--surface-hollow),var(--surface-paper));box-shadow:inset 0 0 28px color-mix(in srgb,var(--accent-pale) 12%,transparent)}.atlas-terrain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.atlas-canopy{fill:var(--accent-pale);opacity:.16}.atlas-trunks{stroke:var(--sage-mid);stroke-width:8;stroke-linecap:round;opacity:.12}.atlas-contours{stroke:var(--line-soft);stroke-width:.7;opacity:.65}.atlas-woods{color:var(--accent-pale);opacity:.6}.atlas-flora{color:var(--sage-mid);opacity:.45}.atlas-region-motif{color:var(--sage-deep)}.atlas-region-motif .region-fill{fill:currentColor;opacity:.15}.atlas-region-motif .region-line{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;opacity:.42}.atlas-region-motif .region-wash{fill:currentColor;opacity:.08}.atlas-region-motif .region-dots{fill:currentColor;opacity:.45}.atlas-region-0 .atlas-region-motif{color:var(--gold-light)}.atlas-region-1 .atlas-region-motif{color:var(--sage-deep)}.atlas-region-2 .atlas-region-motif{color:var(--info)}.atlas-region-2 .region-wash{opacity:.09}.atlas-region-3 .atlas-region-motif{color:var(--info)}.atlas-region-4 .atlas-region-motif{color:var(--clay-soft)}.atlas-region-5 .atlas-region-motif{color:var(--gold-mid)}.atlas-north{position:absolute;top:13px;right:5px;color:var(--sage-mid);opacity:.7}.atlas-paths{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.atlas-paths path{fill:none;stroke:var(--line-strong);stroke-width:1.5;stroke-linecap:round;vector-effect:non-scaling-stroke}.atlas-paths .is-ahead{opacity:.65}.atlas-paths .is-walked{stroke:var(--sage-deep);stroke-width:2}.atlas-paths .is-next{stroke:var(--accent-mid);stroke-width:2;stroke-dasharray:3 4}.atlas-paths .is-focused{stroke:var(--accent-deep);stroke-width:2.7}.atlas-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1px;width:68px;min-height:59px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}.atlas-node-symbol{position:relative;display:grid;place-items:center;width:45px;height:41px;border-radius:50%;background:var(--surface-paper)}.atlas-node-name{padding:1px 5px;border-radius:4px;background:var(--surface-paper);color:var(--ink-muted);font-size:10px;line-height:1.4;white-space:nowrap}.atlas-node.is-boss .atlas-node-symbol{width:52px}.atlas-node.is-far{opacity:.27}.atlas-node.is-far .journey-landmark{filter:grayscale(.8)}.atlas-node.is-done .atlas-node-symbol{background:var(--surface-paper)}.atlas-node-symbol i{position:absolute;right:-1px;bottom:0;display:grid;place-items:center;width:12px;height:12px;border:1px solid var(--surface-paper);border-radius:50%;background:var(--sage-deep);color:var(--ink-invert)}.atlas-node.is-current .atlas-node-symbol{box-shadow:0 0 0 1px var(--accent-mid);background:var(--surface-sunken)}.atlas-node.is-current .atlas-node-name{background:var(--accent-deep);color:var(--ink-invert)}.atlas-here{font-size:9px;font-weight:400}.atlas-node.is-open .atlas-node-symbol{background:var(--surface-paper);box-shadow:0 0 0 1px var(--accent-light),0 0 0 4px var(--surface-hollow)}.atlas-node.is-open .atlas-node-name{color:var(--accent-deep);font-weight:600}.atlas-node.is-picked:not(.is-current) .atlas-node-symbol{background:var(--surface-sunken);box-shadow:0 0 0 2px var(--accent-deep)}.atlas-node.is-picked:not(.is-current) .atlas-node-name{color:var(--accent-deep);font-weight:600}.atlas-node:focus-visible{outline:2px solid var(--accent-deep);outline-offset:3px}@media(hover:hover){.atlas-node:hover .atlas-node-symbol{box-shadow:0 0 0 1px var(--accent-mid)}}.atlas-legend{display:flex;justify-content:center;gap:18px;padding:2px 10px 10px;font-size:9px;color:var(--ink-muted)}.atlas-legend span{display:inline-flex;align-items:center;gap:5px}.atlas-legend i{width:6px;height:6px;border-radius:50%;background:var(--line-mid)}.atlas-legend .legend-walked{background:var(--sage-deep)}.atlas-legend .legend-current{background:var(--accent-deep);outline:1px solid var(--accent-mid);outline-offset:2px}.atlas-legend .legend-open{background:var(--surface-paper);border:1px solid var(--accent-mid)}.atlas-preview{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 4px 4px;padding:10px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-soft)}.atlas-preview-copy{min-width:0}.atlas-preview-copy small{display:block;color:var(--ink-muted);font-size:9px;line-height:1.5}.atlas-preview-copy strong{display:block;font-size:14px;line-height:1.5}.atlas-preview-copy p{margin:3px 0 0;color:var(--gold);font-size:10px;line-height:1.5}.atlas-preview-copy p.atlas-field{color:var(--ink-muted)}.atlas-field-name{color:var(--accent-deep);font-size:12px;font-weight:600}.atlas-node-field{margin-left:1px;font-size:9px;font-weight:400}.atlas-preview .primary-button{flex:0 0 auto;min-width:52px;min-height:40px;padding:7px 10px;border-radius:6px;font-size:12px;box-shadow:none}.atlas-prompt{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 4px 4px;padding:12px 6px;border-top:1px solid var(--line-wash);color:var(--ink-muted);font-size:11px}.journey-map-sheet .sheet-header{padding:14px 16px 10px}.journey-map-sheet .sheet-header h2{font-size:18px}.journey-map-sheet .sheet-header .icon-button{width:36px;height:36px}.journey-map-sheet .sheet-body{padding:8px 12px max(16px,env(safe-area-inset-bottom))}.journey-map-sheet .journey-atlas{border:0;border-radius:0;box-shadow:none}@media(max-width:360px){.atlas-landscape{margin-inline:5px;height:364px}.atlas-heading{padding-inline:7px}.atlas-preview{grid-template-columns:minmax(0,1fr) auto}.atlas-preview>.journey-landmark{display:none}}.journey-intro,.journey-panel{border:1px solid var(--line-mid);border-radius:14px;background:var(--surface-paper);margin-bottom:14px;overflow:hidden}.journey-intro{padding:24px 18px 16px;text-align:center;background:radial-gradient(ellipse at top,var(--surface-sunken),var(--surface-paper) 70%)}.journey-emblem{display:inline-grid;place-items:center;width:64px;height:64px;background:#faffee;border:1px solid #bed0a7;border-radius:50%;color:var(--accent-mid);margin-bottom:16px}.journey-intro h2,.journey-end h2{font:600 23px/1.5 var(--serif);margin:7px 0}.journey-intro>p:not(.eyebrow),.journey-choice>p:not(.eyebrow),.journey-end p{color:var(--ink-muted);font-size:13px;line-height:1.8}.journey-retention{display:flex;align-items:center;justify-content:center;gap:10px;text-align:left;background:var(--surface-hollow);padding:12px 8px;border-radius:8px;font-size:13px;line-height:1.8}.journey-retention span{font-size:11px;color:var(--ink-muted)}.journey-campaign{margin:10px auto 0;min-height:44px;display:flex;align-items:center;gap:5px}.journey-heading{padding:13px 15px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.journey-heading strong{display:flex;align-items:center;gap:6px}.journey-heading>span{color:var(--ink-muted);font-size:12px}.journey-choice{padding:17px 13px;border-top:1px solid var(--line-wash)}.option-cards{display:grid;gap:9px;margin-top:14px}.option-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;text-align:left;padding:10px 11px;border:1px solid var(--line-mid);border-radius:10px;background:var(--surface-paper);color:var(--ink);width:100%;box-shadow:0 2px 5px #526c3c06;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}@media(hover:hover){.option-card:hover{background:var(--surface-soft);border-color:var(--accent-light);box-shadow:0 3px 10px #526c3c12}}.option-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.option-card.synergy{border-color:color-mix(in srgb,var(--line-mid) 82%,var(--gold-pale));background:linear-gradient(100deg,color-mix(in srgb,var(--gold-tint) 17%,var(--surface-paper)),var(--surface-paper) 38%);box-shadow:inset 3px 0 var(--gold-pale),0 2px 5px #526c3c06}.option-card.synergy:active{background:var(--surface-warm)}.option-icon{color:var(--relic-ink, var(--accent));display:grid;place-items:center;width:32px;height:32px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:9px;background:var(--relic-paper, var(--surface-hollow))}.journey-option-art{overflow:hidden;background:linear-gradient(145deg,var(--surface-paper),var(--relic-paper) 72%);box-shadow:inset 0 1px 0 var(--surface-paper),inset 0 -2px color-mix(in srgb,currentColor 7%,transparent)}.journey-option-art>svg{width:25px;height:25px;filter:drop-shadow(0 1px 0 color-mix(in srgb,var(--surface-paper) 65%,transparent))}.journey-option-art.is-wish>svg,.journey-option-art.is-relic>svg{width:26px;height:26px}.option-copy{flex:1;min-width:0}.option-title{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.option-name{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 6px;min-width:0}.option-title strong{font-size:15px}.option-name em{padding:1px 4px;border-radius:3px;background:var(--surface-hollow);color:var(--ink-muted);font-size:10px;font-style:normal;font-weight:500;white-space:nowrap}.option-title small{flex-shrink:0;padding:2px 5px;border-radius:4px;background:var(--gold-tint);color:var(--gold);font-size:10px;white-space:nowrap}.option-description{display:block;font-size:12px;line-height:1.7;margin-top:5px}.option-context{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:5px;color:var(--gold);font-size:11px;line-height:1.6}.route-reward{display:flex;align-items:center;gap:5px;margin-top:8px;color:#6e572c;font-size:12px;line-height:1.6;font-weight:600}.route-elite{border-color:#d1b7a4}.route-elite .option-icon,.route-elite .option-title small{color:#8a5340;border-color:#d6b4a188;background:var(--surface-cream)}.route-treasure{border-color:var(--gold-sand)}.route-treasure .option-icon{color:var(--gold-deep);border-color:#ccb77788;background:var(--surface-warm)}.route-normal .option-title small{color:var(--accent);background:var(--surface-hollow)}.journey-intel{padding:12px 14px;border-top:1px solid var(--line-wash)}.journey-intel strong{display:block;font-size:13px;line-height:1.6;margin:5px 0}.journey-intel p:not(.eyebrow){color:var(--ink-muted);font-size:12px;line-height:1.7}.journey-intel small{display:block;margin-top:8px;color:var(--ink-soft);font-size:10px}.journey-return-entry{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 12px;border:0;border-top:1px solid var(--line-wash);background:var(--surface-soft);color:var(--ink-muted);text-align:left;font-size:12px}.journey-return-entry>span{flex:1}.journey-return-entry:hover{background:var(--surface-hollow);color:var(--ink)}.journey-return-summary{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:15px}.journey-return-summary>svg{color:var(--gold)}.journey-return-summary small{margin-left:auto;font-size:12px;color:var(--ink-muted)}.journey-return-effects{margin:16px 0 20px;padding:3px 12px;border:1px solid var(--line-wash);border-radius:9px;background:var(--surface-paper)}.journey-return-effects>div{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:12px}.journey-return-effects>div+div{border-top:1px solid var(--line-wash)}.journey-return-effects dt{display:flex;align-items:center;gap:5px;flex-shrink:0;color:var(--mint)}.journey-return-effects>div:last-child dt{color:var(--gold)}.journey-return-effects dd{margin:0;color:var(--ink-muted);line-height:1.6}.journey-return-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.journey-return-actions>button{min-height:46px;font-size:14px;border-radius:8px}.journey-return-confirm{border:1px solid #c7b798;background:var(--surface-cream);color:#80623b}.journey-combat-bar{position:relative;margin-bottom:6px}.journey-combat-bar .journey-combat-details{margin-bottom:0;border-radius:8px}.journey-combat-bar .journey-combat-details>summary{min-height:36px;padding:3px 119px 3px 9px;gap:5px}.journey-combat-bar .journey-combat-details>summary strong{font-size:11px;white-space:nowrap}.journey-combat-bar .journey-combat-details>summary>span{margin-left:3px;font-size:10px;white-space:nowrap}.journey-combat-bar>.journey-map-access.is-compact{position:absolute;top:1px;right:62px}.journey-combat-bar>.journey-return-entry.is-compact{position:absolute;top:1px;right:1px;width:62px;min-height:34px;padding:4px 6px;justify-content:center;gap:3px;border-top:0;border-left:1px solid var(--line-wash);border-radius:0 7px 7px 0;color:#80623b;font-size:10px}.journey-combat-bar>.journey-return-entry.is-compact>span{flex:none}.journey-end{text-align:center;padding:24px 15px;border-top:1px solid var(--line-wash)}.journey-mode-return{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-bottom:12px}@media(max-width:360px){.option-card{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:10px 9px}.option-icon{width:30px;height:30px;border-radius:8px}.journey-intro{padding-inline:12px}.journey-intro h2{font-size:21px}}.journey-record{margin:0 0 12px;color:var(--gold);font-size:12px}.journey-combat-details{margin-bottom:10px;border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-soft);color:var(--ink-muted)}.journey-combat-details summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:6px 11px;list-style:none;cursor:pointer;font-size:12px}.journey-combat-details summary strong{font-weight:500;color:var(--ink)}.journey-combat-details summary>span{margin-left:auto;font-size:11px}.journey-combat-details[open] summary>svg:last-child{transform:rotate(90deg)}.journey-combat-details>div{padding:0 12px 10px;font-size:12px;line-height:1.8}.journey-combat-details ul{padding-left:17px;margin:9px 0}.journey-combat-details li+li{margin-top:7px}.game-shell.choice-focus{--dock-height: 60px;padding-top:max(8px,var(--safe-area-inset-top, env(safe-area-inset-top)))}.choice-focus>.app-header{display:none}.choice-focus .battle-overview{margin:0 0 8px;border-radius:10px}.choice-focus .battle-location{padding:7px 10px 7px 0}.choice-focus .battle-back{width:36px;min-height:44px}.choice-focus .battle-location-copy h1{font-size:21px;line-height:1.35;letter-spacing:0}.choice-focus .battle-location-copy p{font-size:11px}.journey-panel.is-choosing{border:0;background:none;border-radius:0;margin-bottom:0;overflow:visible}.is-choosing .journey-choice{padding:0;border:0}.journey-panel.is-choosing>.journey-map-access{margin-bottom:8px}.is-choosing .option-cards{gap:7px;margin-top:0}.is-choosing .option-description{line-height:1.55;margin-top:4px}.relic-options{grid-auto-rows:1fr}.is-choosing .relic-options{gap:6px}.relic-options>.option-card{min-height:76px;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:8px 10px;border-radius:9px}.relic-options .option-icon{width:30px;height:30px;border-radius:8px}.relic-options .option-copy{display:flex;flex-direction:column;align-self:stretch}.relic-options .option-title{min-height:21px}.relic-options .option-description{margin-top:3px;line-height:1.5}.relic-options .option-context{margin-top:auto;padding-top:4px}.is-choosing .boss-relic-options>.option-card{grid-template-columns:38px minmax(0,1fr);gap:10px}.is-choosing .boss-relic-options .option-icon{width:38px;height:38px;border-radius:10px}.skill-replacement{padding-top:10px}.skill-replacement-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--gold-pale);border-radius:10px;background:var(--surface-warm)}.skill-replacement-head>.option-icon{width:38px;height:38px}.skill-replacement-head>span{display:flex;min-width:0;flex-direction:column;gap:1px}.skill-replacement-head small{color:var(--ink-soft);font-size:10px}.skill-replacement-head strong{font:600 16px/1.35 var(--serif)}.skill-replacement-head em{padding:3px 6px;border-radius:4px;background:var(--gold-tint);color:var(--gold);font-size:10px;font-style:normal;white-space:nowrap}.skill-replacement-list{display:grid;gap:6px;margin-top:8px}.skill-replacement-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;column-gap:9px;width:100%;min-height:52px;padding:8px 10px;border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-paper);color:var(--ink);text-align:left}.skill-replacement-list .option-icon{width:34px;height:34px}.skill-replacement-list strong{font-size:14px}.skill-replacement-list>button>span:last-child{color:var(--gold);font-size:11px}@media(hover:hover){.skill-replacement-list>button:hover{border-color:var(--gold-pale);background:var(--surface-warm)}}.is-choosing .shelf{margin-top:8px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-hollow)}.is-choosing .journey-return-entry{margin-top:8px;border:1px solid var(--line-wash);border-radius:8px}.journey-difficulty{margin:0 0 14px;padding:12px 10px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-hollow);text-align:left}.journey-difficulty .eyebrow{margin:0 0 9px}.difficulty-row{display:flex;flex-wrap:wrap;gap:6px}.difficulty-pip{flex:1 1 auto;min-width:34px;min-height:36px;padding:0 4px;border:1px solid var(--line-mid);border-radius:8px;background:var(--surface-paper);color:var(--ink-muted);font-size:13px}.difficulty-pip.is-picked{border-color:var(--accent-mid);background:var(--accent-mid);color:#fff}.difficulty-pip.is-locked{opacity:.4}.difficulty-effects{margin-top:10px;border-top:1px solid var(--line-wash)}.difficulty-effects>summary{display:flex;align-items:center;gap:8px;min-height:46px;padding:7px 2px 3px;list-style:none;cursor:pointer}.difficulty-effects>summary::-webkit-details-marker{display:none}.difficulty-effects>summary>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.difficulty-effects>summary strong{color:var(--ink);font-size:12px;font-weight:600}.difficulty-effects>summary small{color:var(--ink-muted);font-size:10px;line-height:1.5}.difficulty-effects>summary em{padding:2px 6px;border-radius:999px;background:var(--surface-paper);color:var(--ink-soft);font-size:9px;font-style:normal;white-space:nowrap}.difficulty-effects>summary>svg{flex-shrink:0;color:var(--sage-deep);transition:transform .16s ease}.difficulty-effects[open]>summary>svg{transform:rotate(90deg)}.difficulty-effects-body{padding:5px 0 1px}.difficulty-scaling{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;padding:8px 9px;border-radius:7px;background:var(--surface-paper);font-size:10px}.difficulty-scaling>span,.difficulty-rules li>em{padding:2px 5px;border-radius:4px;background:var(--surface-cream);color:var(--clay-soft);font-size:9px;font-style:normal;font-weight:600;white-space:nowrap}.difficulty-scaling>b{color:var(--ink);font-weight:600}.difficulty-scaling>small{flex-basis:100%;color:var(--ink-soft);line-height:1.5}.difficulty-rules{list-style:none;margin:4px 0 0;padding:0;color:var(--ink-muted);font-size:11px;line-height:1.6}.difficulty-rules li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:7px 2px;border-top:1px solid var(--line-wash)}.difficulty-rules li.is-hero>em{background:color-mix(in srgb,var(--surface-cool) 72%,var(--surface-paper));color:var(--info)}.difficulty-rules li>span{min-width:0}.difficulty-rules strong{display:block;color:var(--ink);font-weight:500}.difficulty-base-rule{margin:0;padding:8px 3px 3px;color:var(--ink-muted);font-size:11px;line-height:1.7}.difficulty-hint{margin:10px 0 0;color:var(--ink-soft);font-size:11px;line-height:1.7}.journey-node-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.journey-node-head>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:3px}.journey-node-head strong{font:600 17px/1.4 var(--serif)}.journey-node-head small{color:var(--ink-muted);font-size:12px;line-height:1.6}.journey-purse{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid var(--line-wash);border-radius:999px;background:var(--surface-paper);color:var(--gold);font-size:12px}.journey-node-text{margin:0 0 12px;padding:11px 12px;border-left:2px solid var(--line-mid);background:var(--surface-hollow);color:var(--ink-muted);font-size:13px;line-height:1.85}.journey-node-pick-label{margin-top:6px}.journey-node-option{grid-template-columns:40px minmax(0,1fr);align-items:center}.journey-node-option .journey-option-art{width:40px;height:40px;border-radius:11px}.journey-node-option .journey-option-art>svg{width:31px;height:31px}.journey-node-option .journey-option-art.is-wish>svg,.journey-node-option .journey-option-art.is-relic>svg{width:32px;height:32px}.journey-node .option-card:disabled{opacity:.5}.journey-node-leave{width:100%;margin-top:12px}.caravan-scene{display:flex;align-items:center;gap:10px;min-height:112px;padding:5px 12px;margin-bottom:12px;border-top:1px solid var(--line-wash);border-bottom:1px solid var(--line-wash);background:radial-gradient(ellipse at 15% 75%,var(--surface-warm),transparent 65%)}.caravan-scene>.journey-landmark{flex-shrink:0;transform:rotate(-3deg)}.caravan-scene>div{min-width:0}.caravan-scene>div>span{color:var(--gold);font-size:10px;letter-spacing:.16em}.caravan-scene p{margin:5px 0 4px;color:var(--ink);font:500 16px/1.5 var(--serif)}.caravan-scene small{color:var(--ink-muted);font-size:11px;line-height:1.6}.caravan-stock{overflow:hidden;border:1px solid var(--line-mid);border-radius:12px;background:var(--surface-paper)}.caravan-stock>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 13px;border-bottom:1px solid var(--line-wash);background:var(--surface-warm);font-size:11px;color:var(--ink-muted)}.caravan-balance{display:inline-flex;align-items:center;gap:4px;color:var(--gold)}.caravan-balance b{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.caravan-balance small{font-size:10px}.caravan-good{display:grid;grid-template-columns:40px minmax(0,1fr) 56px;align-items:center;gap:10px;width:100%;min-height:93px;padding:13px 12px;border:0;border-radius:0;background:transparent;text-align:left;color:var(--ink)}.caravan-good+.caravan-good{border-top:1px solid var(--line-wash)}.caravan-good-icon{display:grid;place-items:center;width:40px;height:46px;border:1px solid color-mix(in srgb,var(--goods-ink) 25%,transparent);border-radius:5px 5px 13px;background:var(--goods-paper);color:var(--goods-ink)}.caravan-good-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.caravan-good-copy strong{font-size:14px;font-weight:600}.caravan-good-copy>span{color:var(--ink-muted);font-size:11px;line-height:1.6}.caravan-price{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:46px;padding:5px 3px;border:1px solid var(--line-wash);border-radius:6px;background:var(--surface-warm);color:var(--gold)}.caravan-price b{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.caravan-price b small{margin-left:2px;font-size:9px;font-weight:400}.caravan-price>span,.caravan-price>small{font-size:10px}.caravan-good:disabled{cursor:default;opacity:1}.caravan-good:disabled .caravan-price{background:var(--surface-hollow);color:var(--ink-muted);border-color:transparent}.caravan-good.is-sold .caravan-good-icon{opacity:.55}.caravan-good.is-sold .caravan-good-copy{opacity:.65}.caravan-good:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}@media(hover:hover){.caravan-good:not(:disabled):hover{background:var(--surface-soft)}.caravan-good:not(:disabled):hover .caravan-price{border-color:var(--gold-pale)}}.journey-node .journey-node-leave{min-height:44px;border-radius:8px;font-size:14px;box-shadow:none}@media(max-width:360px){.caravan-scene{gap:5px;padding-inline:4px}.caravan-scene>.journey-landmark{width:80px}.caravan-scene p{font-size:15px}.caravan-good{grid-template-columns:34px minmax(0,1fr) 52px;gap:8px;padding-inline:9px}.caravan-good-icon{width:34px;height:42px}.journey-node-option{grid-template-columns:38px minmax(0,1fr)}.journey-node-option .journey-option-art{width:38px;height:38px}}.shelf{padding:0 13px;border-top:1px solid var(--line-wash);background:var(--surface-soft)}.shelf>.shelf-head{display:flex;align-items:center;gap:7px;min-height:44px;margin:0;padding:9px 0;list-style:none;cursor:pointer;color:var(--ink-muted);font-size:11px}.shelf-head::-webkit-details-marker{display:none}.shelf>.shelf-head>span{margin-left:0}.shelf-head b{color:var(--ink);font-weight:500}.shelf>.shelf-head>.shelf-toggle{display:inline-flex;align-items:center;gap:3px;margin-left:auto;font-size:10px;white-space:nowrap}.shelf .when-open,.shelf[open] .when-closed{display:none}.shelf[open] .when-open{display:inline}.shelf[open] .shelf-toggle>svg{transform:rotate(90deg)}.shelf-body{padding:2px 0 12px}.shelf .shelf-grid{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.shelf .shelf-grid>li{margin:0}.shelf-chip{position:relative;display:grid;place-items:center;padding:3px;border:0;border-radius:10px;background:none}.shelf-chip .option-icon{width:38px;height:38px}.shelf-chip.is-open .option-icon{box-shadow:0 0 0 2px var(--accent-mid)}.shelf-badge{position:absolute;right:0;bottom:0;min-width:17px;padding:0 3px;border-radius:999px;background:var(--accent-mid);color:#fff;font-size:9px;line-height:17px;text-align:center}.shelf-detail{margin-top:10px;padding:9px 11px;border:1px solid var(--line-wash);border-radius:9px;background:var(--surface-paper)}.shelf-detail strong{display:flex;align-items:baseline;gap:7px;font:600 14px/1.5 var(--serif)}.shelf-detail strong>span{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:5px}.shelf-mastery{padding:1px 5px;border-radius:4px;background:var(--gold-tint);color:var(--gold);font:500 10px/1.5 system-ui,sans-serif;white-space:nowrap}.shelf-detail small{color:var(--ink-soft);font-size:10px;font-weight:400}.shelf-detail p{margin:5px 0 0;color:var(--ink-muted);font-size:12px;line-height:1.8}.shelf-chip.is-accent .option-icon{border-color:color-mix(in srgb,var(--gold) 42%,var(--line-mid));background:var(--surface-warm)}.shelf-chip.is-accent .shelf-badge{background:var(--gold)}.skills-shelf .shelf-detail{margin-top:8px;padding:8px 10px}.skills-shelf .shelf-detail strong{flex-wrap:wrap;row-gap:2px}.skills-shelf .shelf-detail small{padding:1px 5px;border-radius:4px;background:var(--surface-hollow)}.skills-shelf .shelf-detail p{line-height:1.65}.skills-shelf .shelf-mastery-effect{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 7px;margin-top:7px;padding:6px 8px;border-left:2px solid var(--gold-pale);border-radius:0 5px 5px 0;background:color-mix(in srgb,var(--gold-tint) 48%,transparent)}.skills-shelf .shelf-mastery-effect>span{flex-shrink:0;color:var(--gold);font-size:10px;font-weight:600}.shelf-note{margin:6px 0 0;color:var(--accent-mid);font-size:11px;line-height:1.7}.skills-shelf .shelf-note{padding-top:6px;border-top:1px solid var(--line-wash)}.journey-bonus{display:block;width:100%;margin:0 0 10px;overflow:hidden;border:1px solid color-mix(in srgb,var(--gold-pale) 64%,var(--line-mid));border-radius:11px;background:radial-gradient(circle at 8% 115%,color-mix(in srgb,var(--gold-tint) 92%,transparent),transparent 42%),var(--surface-paper);box-shadow:0 4px 14px #80632f0b;color:var(--ink);font:inherit;text-align:left}.journey-bonus-head{display:flex;align-items:center;justify-content:space-between;min-height:30px;padding:5px 10px;border-bottom:1px solid color-mix(in srgb,var(--gold-pale) 38%,transparent)}.journey-bonus-head strong{color:var(--gold);font-size:10px;font-weight:650;letter-spacing:.08em}.journey-bonus-head em{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--accent-pale) 55%,var(--surface-paper));color:var(--accent-mid);font-size:9px;font-style:normal;white-space:nowrap}.journey-bonus-body{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:9px 11px 10px}.journey-bonus-body>.option-icon{width:38px;height:38px;border-radius:10px;box-shadow:0 2px 7px #69542910}.journey-bonus-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.journey-bonus-copy>strong{font-size:15px;line-height:1.4}.journey-bonus-copy>span{color:var(--ink-muted);font-size:11px;line-height:1.55}.journey-bonus.is-pending{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.journey-bonus.is-pending .journey-bonus-head em{background:var(--gold-tint);color:var(--gold);font-weight:600}.journey-bonus.is-pending:hover{border-color:var(--gold-pale);box-shadow:0 6px 18px #80632f18;transform:translateY(-1px)}.journey-bonus.is-pending:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.journey-pick-label{display:flex;align-items:center;gap:7px;margin:9px 2px 7px;font-size:12px}.journey-pick-label:after{content:"";order:2;flex:1;border-top:1px solid var(--line-wash)}.journey-pick-label>span{color:var(--ink);font-weight:600}.journey-pick-label>small{order:3;color:var(--ink-soft);font-size:10px;font-weight:400}.shelf-grid.is-sortable .shelf-chip{touch-action:none;cursor:grab}.shelf-grid.is-sortable li.is-dragging{opacity:.45}.shelf-grid.is-sortable li.is-drop .shelf-chip{outline:2px dashed var(--accent-mid);outline-offset:2px}.shelf-order{position:absolute;top:-5px;left:-5px;min-width:15px;height:15px;padding:0 3px;display:grid;place-items:center;border-radius:8px;background:var(--surface-sunken);border:1px solid var(--line-strong);color:var(--ink-muted);font-size:10px;font-variant-numeric:tabular-nums}.shelf-strategy{margin-top:8px;overflow:hidden;border-top:1px solid var(--line-wash)}.shelf-strategy>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:35px;padding:5px 2px 0;color:var(--ink-muted);cursor:pointer;list-style:none}.shelf-strategy>summary::-webkit-details-marker{display:none}.shelf-strategy-title{display:inline-flex;align-items:center;gap:5px;color:var(--accent-deep);white-space:nowrap}.shelf-strategy-title b{font-size:11px;font-weight:600}.shelf-strategy>summary>small{overflow:hidden;color:var(--ink-soft);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.shelf-strategy>summary>svg{color:var(--ink-soft);transition:transform .16s ease}.shelf-strategy[open]>summary>svg{transform:rotate(90deg)}.shelf-strategy-body{padding:8px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-hollow)}.shelf-move{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--ink-muted)}.shelf-move>span:first-child{display:inline-flex;align-items:baseline;gap:5px}.shelf-move b{color:var(--ink);font-size:11px;font-weight:600}.shelf-move small{color:var(--ink-soft);font-size:10px}.shelf-move-actions{display:inline-flex;gap:5px}.shelf-move button{display:inline-flex;align-items:center;gap:1px;min-height:28px;padding:0 8px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface-paper);color:var(--ink);font-size:11px}.shelf-move button:disabled{opacity:.4}.shelf-move button:first-of-type svg{transform:rotate(180deg)}.shelf-rule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.shelf-rule label{min-width:0;display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--ink-muted)}.shelf-rule select{width:100%;min-height:32px;padding:0 7px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface-paper);color:var(--ink);font-size:11px}@media(max-width:380px){.shelf-rule{grid-template-columns:1fr}}.journey-choice-skip,.skill-replacement-skip{width:100%;min-height:42px;margin-top:10px;border:1px dashed var(--line-mid);border-radius:8px;background:transparent;color:var(--ink-muted);font-size:12px}@media(hover:hover){.journey-choice-skip:hover,.skill-replacement-skip:hover{background:var(--surface-hollow);color:var(--ink)}}.journey-theme-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin:0;padding:0}.journey-theme-card{display:block;width:100%;padding:0;overflow:hidden;text-align:left;border:1px solid var(--line-mid);border-radius:18px;background:var(--surface-paper);color:var(--ink)}.journey-theme-card:hover{border-color:var(--accent)}.journey-theme-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.journey-theme-art{display:block;width:100%;height:auto}.journey-theme-card>.journey-theme-art{height:clamp(120px,38vw,170px);overflow:hidden}.journey-theme-copy{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}.journey-theme-copy strong{display:block;font-size:18px;letter-spacing:.05em}.journey-theme-copy small{display:block;margin-top:4px;color:var(--ink-muted);font-size:12px;font-weight:400}.journey-theme-copy>svg{color:var(--accent);flex:none}.journey-theme-sheet .sheet-body{padding:16px 18px}.journey-theme-sheet .journey-theme-art{height:130px;overflow:hidden;border-radius:12px}.journey-theme-sheet .sheet-footer{padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line-wash)}.journey-theme-description{margin:12px 0;color:var(--ink-muted);font-size:13px;line-height:1.6}.journey-theme-sheet .journey-difficulty{text-align:left}.journey-theme-retention{display:flex;align-items:center;gap:12px;padding-top:12px;margin-top:12px;border-top:1px solid var(--line-wash);color:var(--ink-muted)}.journey-theme-retention p{margin:0;font-size:13px;line-height:1.5}.journey-theme-retention small{display:block;margin-top:3px;font-size:11px}.journey-theme-enter{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px}.journey-settlement{display:grid;gap:14px;padding-top:8px}.journey-settlement-heading{display:flex;align-items:center;gap:10px}.journey-settlement-emblem{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:12px;background:var(--line-soft);color:var(--accent-deep)}.journey-settlement-heading h1{margin:0;font-size:21px}.journey-settlement-heading p{margin:4px 0 0;color:var(--ink-muted);font-size:12px}.journey-outcome{margin-left:auto;padding:4px 7px;border-radius:5px;background:var(--gold-tint);color:var(--gold-deep);font-size:12px;white-space:nowrap}.journey-settlement-card{padding:14px;border:1px solid var(--line-mid);border-radius:14px;background:var(--surface-paper)}.journey-final-progress{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px;color:var(--ink-muted);font-size:12px}.journey-final-rewards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 0 8px;gap:8px}.journey-final-rewards>div{min-width:0}.journey-final-rewards dt{display:flex;align-items:center;gap:4px;color:var(--ink-muted);font-size:12px}.journey-final-rewards dd{margin:5px 0 0;color:var(--gold-deep);font-size:21px;font-weight:600;overflow-wrap:anywhere}.journey-final-rewards small{margin-left:4px;color:var(--ink-muted);font-size:12px;font-weight:400}.journey-payout-note{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--ink-muted)}.journey-final-growth{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px;margin-top:12px;border-radius:8px;background:var(--surface-soft);color:var(--accent-deep);font-size:13px}.journey-final-growth span{margin-left:auto;font-size:11px}.journey-reward-items{margin-top:12px;border-top:1px solid var(--line-wash)}.journey-reward-items button{display:flex;align-items:center;gap:8px;width:100%;min-height:48px;padding:8px 0;border:0;border-bottom:1px solid var(--line-wash);background:transparent;color:var(--accent-deep);text-align:left}.journey-reward-items strong{flex:1;min-width:0;font-size:13px}.journey-reward-items small{color:var(--ink-muted);font-size:11px;white-space:nowrap}.journey-reward-upgrades{margin-top:12px}.journey-reward-upgrades h2{font-size:13px}.journey-reward-upgrades p{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font-size:12px}.journey-run-report{overflow:hidden;border:1px solid var(--line-mid);border-radius:14px;background:var(--surface-paper)}.journey-report-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:12px 13px;background:var(--surface-hollow)}.journey-report-heading p{margin:0;color:var(--ink-soft);font-size:10px;letter-spacing:.08em}.journey-report-heading h2{margin:1px 0 0;font-size:17px}.journey-report-heading>span{color:var(--ink-muted);font-size:11px;white-space:nowrap}.journey-report-performance,.journey-report-sources,.journey-report-build{padding:12px 13px;border-top:1px solid var(--line-wash)}.journey-report-performance{border-top:0}.journey-report-performance>h3,.journey-report-sources>h3,.journey-report-build>h3{display:flex;align-items:center;gap:6px;margin:0 0 9px;font-size:13px;font-weight:600;color:var(--sage-deep)}.journey-report-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.journey-report-stats>div{min-width:0;padding:8px 7px;border-radius:8px;background:var(--surface-soft)}.journey-report-stats dt{color:var(--ink-muted);font-size:10px}.journey-report-stats dd{margin:3px 0 0;overflow-wrap:anywhere;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.journey-report-footnote{margin:9px 0 0;color:var(--ink-muted);font-size:10px;line-height:1.6}.journey-report-sources ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.journey-report-sources li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px}.journey-report-sources li>span:first-child{display:flex;align-items:center;gap:7px;min-width:0}.journey-report-sources li>span:first-child b{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;border-radius:50%;background:var(--surface-sunken);color:var(--ink-muted);font-size:9px}.journey-report-sources li>span:first-child strong{overflow-wrap:anywhere;font-size:12px;font-weight:500}.journey-source-value{display:inline-flex;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums}.journey-source-value strong{font-size:12px}.journey-source-value small{min-width:28px;color:var(--ink-muted);font-size:10px;text-align:right}.journey-source-track{grid-column:1 / -1;height:3px;overflow:hidden;border-radius:4px;background:var(--surface-sunken)}.journey-source-track i{display:block;height:100%;border-radius:inherit;background:var(--accent-light)}.journey-build-skills,.journey-build-relics{margin:0;padding:0;list-style:none}.journey-build-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.journey-build-skills li{display:flex;align-items:center;gap:7px;min-width:0;padding:7px;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-hollow)}.journey-build-skills li>span{display:flex;min-width:0;flex-direction:column}.journey-build-skills strong{overflow-wrap:anywhere;font-size:12px}.journey-build-skills small{margin-top:1px;color:var(--ink-muted);font-size:10px}.journey-build-group{margin-top:11px;padding-top:9px;border-top:1px solid var(--line-wash)}.journey-build-group h4{margin:0 0 7px;color:var(--ink-muted);font-size:11px;font-weight:500}.journey-build-relics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.journey-build-relics li{display:flex;align-items:center;gap:6px;min-width:0}.journey-build-relics li>span{display:flex;min-width:0;flex-direction:column}.journey-build-relics strong{overflow-wrap:anywhere;font-size:11px;font-weight:500}.journey-build-relics small{color:var(--ink-muted);font-size:9px}.journey-build-passives{display:grid;gap:5px}.journey-build-passives>span{display:flex;align-items:baseline;gap:7px;padding:6px 8px;border-radius:7px;background:var(--surface-hollow)}.journey-build-passives strong{flex-shrink:0;font-size:11px}.journey-build-passives small{color:var(--ink-muted);font-size:10px;line-height:1.5}.journey-report-empty{margin:0;color:var(--ink-muted);font-size:11px}@media(max-width:374px){.journey-report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-build-skills,.journey-build-relics{grid-template-columns:1fr}}.detail-sheet:has(.character-manager) .sheet-header{padding:12px 16px 8px}.detail-sheet:has(.character-manager) .sheet-body{padding:12px 14px max(14px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.character-manager-intro{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;font-size:12px;color:var(--ink-muted);line-height:1.5}.character-manager-intro>span{font-size:11px;white-space:nowrap}.character-list{display:grid;gap:7px}.character-entry{border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-paper);overflow:hidden}.character-entry.is-active{border-color:var(--accent-light);background:var(--surface-hollow)}.character-entry-main{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;padding-right:5px}.character-switch{display:flex;align-items:center;gap:9px;width:100%;min-height:78px;padding:9px 10px;border:0;color:var(--ink);background:transparent;text-align:left}.character-switch:disabled{opacity:1}.character-switch:not(:disabled):hover{background:var(--surface-hollow)}.character-avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:38px;border-radius:8px;background:var(--gold-tint);color:var(--gold-deep)}.character-avatar.tone-ranger{background:var(--surface-sunken);color:var(--accent)}.character-avatar.tone-mage{background:var(--surface-cool);color:#82659e}.character-entry-copy{flex:1;min-width:0;display:grid;gap:2px;line-height:1.5}.character-entry-copy strong{font-size:14px;overflow-wrap:anywhere}.character-entry-copy>span{font-size:11px;color:var(--ink-muted)}.character-entry-copy>small{color:var(--ink-muted);font-size:11px;line-height:1.5}.character-entry-copy span small{color:var(--gold);font-size:11px}.character-entry-actions{display:flex;flex-direction:column;align-items:center;align-self:center}.character-switch-label{display:flex;align-items:center;gap:2px;font-size:10px;color:var(--mint);min-height:18px}.character-entry-actions>button{min-height:44px;min-width:44px;font-size:11px;padding:0}.character-add{display:flex;align-items:center;gap:7px;background:var(--surface-hollow);color:var(--ink);padding:9px 11px;min-height:44px;width:100%;margin-top:9px;border:1px dashed var(--line-strong);border-radius:8px;font-size:13px}.character-add small{margin-left:auto;color:var(--ink-muted);font-size:11px}.character-inventory-summary{display:flex;align-items:center;gap:4px;padding-bottom:10px}.character-create{margin-top:14px}.character-create fieldset{border:0;padding:0;margin:0}.character-create legend{font-size:13px;margin-bottom:10px}.character-class-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.character-class-options label{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;border:1px solid var(--line-mid);border-radius:8px;padding:13px 4px;background:var(--surface-paper);cursor:pointer;font-size:14px}.character-class-options label.selected{border-color:#739a59;background:var(--surface-sunken)}.character-class-options label:focus-within{outline:2px solid var(--gold);outline-offset:2px}.character-class-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.character-class-options small{font-size:10px;color:var(--ink-muted)}.character-name-input{display:block;margin:16px 0;font-size:13px}.character-name-input span{color:var(--ink-muted);font-size:11px}.character-manager input:not([type=radio]){width:100%;margin-top:7px;min-height:44px;background:var(--surface-paper);border:1px solid var(--line-mid);border-radius:7px;padding:9px 11px;color:var(--ink)}.character-manager input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.character-edit{padding:12px 13px;border-top:1px solid var(--line-wash);font-size:12px}.character-edit .button-row{margin-top:10px}.character-edit p{color:var(--ink-muted);font-size:11px;margin-top:8px}.character-busy{background:var(--surface-warm);border:1px solid var(--gold-sand);border-radius:8px;padding:12px;margin-bottom:14px;font-size:12px;line-height:1.7}.character-busy button{margin-top:9px}.ribbon-identity strong{max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-level{max-width:100%;flex-wrap:wrap}.hero-level>span{max-width:100%;overflow-wrap:anywhere}@media(max-width:360px){.ribbon-identity strong{max-width:78px}.character-switch{gap:7px;padding-inline:8px}}.battle-report{overflow:hidden;border:1px solid var(--line-mid);border-radius:12px;background:var(--surface-paper);color:var(--ink);font-size:13px;line-height:1.45}.report-summary{padding:12px 12px 0;background:linear-gradient(135deg,var(--surface-hollow),var(--surface-sunken))}.report-summary.is-defeat{background:linear-gradient(135deg,var(--surface-cream),var(--surface-warm))}.report-heading{display:flex;align-items:center;gap:8px}.report-emblem{display:grid;place-items:center;flex-shrink:0;width:34px;height:36px;border:1px solid #a8bb9570;border-radius:9px 4px;background:#ffffff80;color:var(--accent)}.report-heading>div{flex:1;min-width:0}.report-heading p{color:var(--sage-deep);font-size:10px;letter-spacing:.7px}.report-heading h3{margin-top:1px;overflow-wrap:anywhere;font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.3}.report-result{align-self:flex-start;margin-top:1px;padding:3px 6px;border:1px solid #a1b78666;border-radius:4px;background:var(--surface-soft);color:#4b6b39;font-size:11px;white-space:nowrap}.is-defeat .report-result{background:var(--surface-cream);color:#935d40;border-color:#be967066}.is-defeat .report-emblem{color:#94764f;border-color:#be967066}.report-key-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:10px 0 8px}.report-key-stats>div{min-width:0;padding:7px 4px 6px;border:1px solid #a9bb9433;border-radius:6px;background:#ffffff62;text-align:center}.report-key-stats dt{display:flex;align-items:center;justify-content:center;gap:3px;color:#5e6e54;font-size:10px;white-space:nowrap}.report-key-stats dd{margin:2px 0 0;overflow-wrap:anywhere;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25}.report-key-stats>div:nth-child(2) dt svg{color:var(--clay-soft)}.report-key-stats>div:last-child dt svg{color:var(--info-soft)}.report-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 9px;margin:0 -12px;padding:7px 12px;border-top:1px solid #a9bb943d;background:#ffffff5c;list-style:none}.report-facts li{min-width:0;color:var(--ink-muted);font-size:10px;text-align:center;white-space:nowrap}.report-facts b{color:var(--ink);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.report-facts .is-danger,.report-facts .is-danger b{color:var(--danger)}.report-section{padding:11px 12px;border-top:1px solid #bdcbae66}.report-section-heading{display:flex;align-items:center;justify-content:space-between;gap:5px 9px;margin-bottom:8px}.report-section-heading h3{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}.report-section-heading h3>svg{color:#6b8255}.report-section-heading>span{color:var(--ink-muted);font-size:10px;white-space:nowrap}.report-sources{display:grid;gap:8px;margin:0;padding:0;list-style:none}.report-sources li{display:flex;align-items:flex-start;gap:8px;min-width:0}.report-source-icon{display:grid;place-items:center;flex-shrink:0;width:28px;height:30px;border:1px solid #c1ceac77;border-radius:6px;background:var(--surface-hollow);color:var(--accent-mid)}.report-source-data{flex:1;min-width:0}.report-source-line{display:flex;align-items:baseline;justify-content:space-between;gap:3px 8px;min-width:0;line-height:1.4}.report-source-line>span:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:3px 6px;min-width:0;overflow-wrap:anywhere}.report-source-tag{padding:1px 4px;border-radius:3px;background:var(--gold-tint);color:#7b622e;font-size:10px;white-space:nowrap}.report-source-value{display:inline-flex;flex-shrink:0;align-items:baseline;gap:6px;margin-left:auto;font-variant-numeric:tabular-nums}.report-source-value b{font-size:13px;font-weight:600}.report-source-value>small{min-width:25px;color:var(--ink-muted);font-size:10px;text-align:right}.report-bar{height:3px;margin-top:4px;overflow:hidden;border-radius:3px;background:var(--surface-hollow)}.report-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-light),#a8bd80)}.report-damage-taken .report-source-icon{border-color:#d9bfa266;background:var(--surface-cream);color:#a46f50}.report-source-note{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;margin-top:2px;color:var(--ink-muted);font-size:10px}.report-source-note>span{display:inline-flex;align-items:center;gap:3px;color:var(--info-soft)}.report-empty{display:flex;align-items:center;gap:7px;margin:2px 0;color:var(--ink-muted);font-size:12px}.report-empty svg{flex-shrink:0;color:var(--sage-mid)}.report-rule-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.report-rule-list li{display:flex;align-items:flex-start;gap:8px;padding:7px 0}.report-rule-list li:first-child{padding-top:1px}.report-rule-list li+li{border-top:1px dashed #bdcbae66}.report-rule-list li.is-idle .report-source-line>span:first-child{color:var(--ink-muted)}.report-rule-order{display:grid;place-items:center;flex:0 0 22px;height:22px;border:1px solid var(--line-soft);border-radius:50%;background:var(--surface-soft);color:var(--sage-deep);font-size:10px;font-variant-numeric:tabular-nums}.report-rule-cond{display:inline;color:var(--ink-muted);font-size:10px;font-weight:400}.report-rule-cond:before{content:"·";margin-right:6px}.report-fallback{margin-top:5px;padding:6px 8px;border-radius:5px;background:var(--surface-sunken);color:var(--ink-muted);font-size:10px}.report-survival{background:var(--surface-soft)}.report-survival.is-low-health{background:var(--surface-cream)}.report-health-line{display:flex;align-items:center;justify-content:space-between;gap:8px}.report-health-line>div{display:flex;align-items:baseline;gap:7px}.report-health-line>div>span{color:var(--ink-muted);font-size:11px}.report-health-line strong{color:var(--accent);font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}.report-health-line strong small{margin-left:1px;font-size:12px}.is-low-health .report-health-line strong{color:var(--danger)}.report-health-line>p{font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.report-health-line>p>small{display:block;margin-top:1px;color:var(--ink-muted);font-size:10px}.report-survival .health-track{height:4px;margin-top:5px}.report-taken-sources,.report-potion-block{margin-top:9px;padding-top:8px;border-top:1px solid #bdcbae66}.report-subheading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:3px}.report-subheading h4{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600}.report-subheading h4 svg{color:var(--clay-soft)}.report-subheading>span{color:var(--ink-muted);font-size:10px}.report-potions{margin:0;padding:0;list-style:none}.report-potions li{display:flex;align-items:center;gap:8px;padding:6px 0}.report-potions li+li{border-top:1px dashed #bdcbae88}.report-round{flex-shrink:0;padding:3px 5px;border:1px solid var(--line-soft);border-radius:4px;background:var(--surface-paper);color:var(--ink-muted);font-size:10px;white-space:nowrap}.report-round b{color:var(--ink);font-size:11px;font-weight:600}.report-potions li>div{flex:1;min-width:0}.report-potions strong{color:var(--accent);font-size:12px;font-weight:500}.report-potions p{margin-top:1px;color:var(--ink-muted);font-size:10px;font-variant-numeric:tabular-nums}.report-potion-before{color:var(--ink-muted);font-size:10px;text-align:right}.report-potion-before small{display:block;color:var(--ink);font-size:11px;font-variant-numeric:tabular-nums}@media(max-width:374px){.report-summary{padding-right:10px;padding-left:10px}.report-facts{margin-right:-10px;margin-left:-10px;padding-right:10px;padding-left:10px}.report-section{padding-right:10px;padding-left:10px}.report-key-stats dd{font-size:17px}.report-source-tag{display:none}}.battle-log{display:grid;gap:12px;margin:0;padding:0;list-style:none}.battle-log-empty{color:var(--ink-muted);font-size:12px}.log-round{padding:9px 10px 8px;border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-paper)}.log-round-title{display:flex;align-items:center;gap:8px;color:var(--sage-deep);font-size:11px;letter-spacing:.6px;font-weight:500}.log-round-title:before,.log-round-title:after{content:"";flex:1;height:1px;background:var(--line-wash)}.log-round-title span{flex-shrink:0}.log-round-quiet{margin-top:7px;color:var(--ink-muted);font-size:11px}.log-trace{display:grid;gap:9px;margin:8px 0 0;padding:0;list-style:none}.log-seg{padding-left:9px;border-left:2px solid var(--line-strong)}.log-seg.is-hero{border-left-color:var(--accent-mid)}.log-seg.is-enemy{border-left-color:var(--clay-soft)}.log-seg.is-ally{border-left-color:var(--info-soft)}.log-seg-title{display:flex;align-items:center;gap:5px;color:var(--sage-deep);font-size:11px;font-weight:500}.log-seg.is-enemy .log-seg-title{color:var(--clay-soft)}.log-seg ul{margin:3px 0 0;padding:0;list-style:none;display:grid;gap:2px}.log-seg li{color:var(--ink-muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.log-seg .log-skill,.log-seg .log-wave,.log-seg .log-crit{color:var(--gold)}.log-seg .log-bad{color:var(--danger)}.log-seg .log-good{color:var(--mint)}.log-round-fold{margin-top:8px}.log-round-fold summary{display:flex;align-items:center;gap:5px;min-height:28px;color:var(--sage-deep);font-size:11px;cursor:pointer;list-style:none}.log-round-fold summary::-webkit-details-marker{display:none}.log-round-fold summary>svg{transition:transform .15s ease}.log-round-fold[open] summary>svg{transform:rotate(90deg)}.log-round-fold summary small{color:var(--ink-muted);font-size:10px}.log-round-fold summary small:before{content:"· "}.log-round-fold .log-trace{margin-top:2px}.log-plan{display:grid;gap:4px;margin:2px 0 0;padding:0;list-style:none}.log-plan li{display:flex;align-items:flex-start;gap:7px;min-width:0}.log-plan-order{display:grid;place-items:center;flex-shrink:0;width:18px;min-height:18px;padding:0 3px;border:1px solid var(--line-soft);border-radius:4px;background:var(--surface-hollow);color:var(--ink-muted);font-size:10px}.log-plan-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 7px;min-width:0}.log-plan-copy strong{color:var(--ink-muted);font-size:12px;font-weight:400;overflow-wrap:anywhere}.log-plan-copy small{color:var(--ink-muted);font-size:10px;white-space:nowrap}.log-plan .is-fired .log-plan-order{border-color:var(--accent-pale);background:var(--surface-soft);color:var(--accent-deep)}.log-plan .is-fired strong{color:var(--ink)}.log-plan .is-fired small{color:var(--accent-deep)}.log-plan .is-skipped{opacity:.75}.battle-result-panel{border:1px solid var(--line-mid);border-radius:12px;overflow:hidden;background:var(--surface-paper)}.settlement-heading{display:flex;align-items:center;gap:10px;padding:16px 14px 12px;background:linear-gradient(110deg,var(--surface-hollow),var(--surface-paper))}.settlement-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--surface-page);color:var(--accent)}.settlement-heading>div{flex:1;min-width:0}.settlement-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}.settlement-heading h2{font:600 23px/1.3 var(--serif);outline:none}.settlement-heading p{margin-top:4px;color:var(--ink-muted);font-size:11px}.settlement-first{padding:2px 5px;border-radius:4px;background:var(--gold-tint);color:var(--gold);font-size:10px;white-space:nowrap}.settlement-rewards{display:flex;gap:8px;margin:0 14px 10px;padding:10px 0;border-bottom:1px solid var(--line-wash)}.settlement-rewards>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.settlement-rewards>div+div{padding-left:12px;border-left:1px solid var(--line-wash)}.settlement-rewards span{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--ink-muted)}.settlement-rewards b{color:var(--gold);font-size:23px;line-height:1.2;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.settlement-rewards svg{color:var(--gold);flex-shrink:0}.settlement-gains{margin:0 14px 12px}.settlement-growth,.settlement-loot{display:flex;align-items:center;gap:9px;width:100%;min-height:48px;padding:9px 0;border:0;background:transparent;color:var(--ink);text-align:left}.settlement-growth{padding:8px 10px;border-radius:7px;background:var(--surface-hollow)}.settlement-growth>span:first-of-type,.settlement-loot>span{flex:1;min-width:0}.settlement-growth strong{font-size:13px;font-weight:600}.settlement-growth small,.settlement-loot small{display:block;color:var(--ink-muted);font-size:11px;line-height:1.5;margin-top:2px}.settlement-growth>svg:first-child{color:var(--mint)}.settlement-growth-action{display:flex;align-items:center;gap:3px;font-size:11px;color:var(--accent);white-space:nowrap}.settlement-loot{padding-bottom:0}.settlement-loot strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.settlement-loot>.game-art{width:32px;height:32px;flex-shrink:0}.settlement-note{margin:0 14px 8px;color:var(--ink-muted);font-size:11px;line-height:1.5}.settlement-unlocks{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px;margin-top:7px;color:var(--ink-muted);font-size:11px;line-height:1.5}.settlement-unlocks span{color:var(--accent);overflow-wrap:anywhere}.settlement-no-loot{display:flex;align-items:center;gap:6px;margin-top:8px;color:var(--ink-muted);font-size:11px}.settlement-performance{padding:12px 14px;border-top:1px solid var(--line-wash);background:var(--surface-soft)}.settlement-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0}.settlement-stats dt{color:var(--ink-muted);font-size:10px}.settlement-stats dd{margin:4px 0 0;font-size:17px;line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.settlement-stats dd small{font-size:10px;font-weight:400;color:var(--ink-muted)}.settlement-stats .is-danger dd{color:var(--danger)}.settlement-leading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px 8px;align-items:baseline;margin-top:12px;font-size:11px}.settlement-leading>span{color:var(--ink-muted)}.settlement-leading strong{font-weight:500;overflow-wrap:anywhere}.settlement-leading b{color:var(--mint);font-weight:500}.settlement-damage-track{grid-column:1 / -1;height:3px;border-radius:4px;overflow:hidden;background:var(--surface-page)}.settlement-damage-track>span{display:block;height:100%;background:var(--accent-light)}.settlement-danger{margin-top:8px;color:var(--clay-soft);font-size:11px;line-height:1.5}.settlement-actions{display:flex;gap:8px;padding:4px 10px;border-top:1px solid var(--line-wash)}.settlement-actions>button{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:8px;gap:6px;border:0;border-radius:6px;background:transparent;color:var(--ink-muted);font-size:12px}.settlement-actions>button:hover,.settlement-loot:hover{background:var(--surface-hollow);color:var(--accent)}.battle-result-panel button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.battle-result-panel.is-defeat .settlement-heading{background:var(--surface-cream)}.is-defeat .settlement-icon{color:var(--clay-soft);background:var(--surface-warm)}.adventure-view .controls.is-result{grid-template-columns:90px minmax(0,1fr);grid-template-areas:"secondary action"}.controls.is-result .settlement-prepare{grid-area:secondary}@media(max-width:374px){.settlement-heading{gap:8px;padding:12px 10px}.settlement-heading h2{font-size:21px}.settlement-icon{width:34px;height:34px}.settlement-rewards,.settlement-gains{margin-inline:10px}.settlement-rewards b{font-size:21px}.settlement-performance{padding-inline:10px}.settlement-stats dd{font-size:16px}}.turn-order{--turn-rail: color-mix(in srgb, var(--line-strong, #d9d2c2) 72%, transparent);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;flex:none;width:29px;padding:7px 3px;overflow:hidden;border-right:1px solid var(--line-wash, #81917b25);background:linear-gradient(90deg,var(--surface-soft),color-mix(in srgb,var(--surface-soft) 82%,transparent))}.turn-order-label{z-index:1;display:grid;place-items:center;flex:none;width:19px;height:18px;border:1px solid var(--accent-pale);border-radius:6px;background:var(--surface-sunken);color:var(--accent-deep)}.turn-order-label svg{display:block}.turn-order ol{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;margin:0;padding:0;list-style:none;min-height:0}.turn-order ol:before{content:"";position:absolute;top:5px;bottom:5px;left:50%;width:1px;background:var(--turn-rail);transform:translate(-50%)}.turn-chip{--turn-tone: #6d7a69;--turn-wash: var(--surface-hollow);position:relative;z-index:1;width:21px;height:21px;flex:none;display:grid;place-items:center;border:1px solid var(--turn-tone);border-radius:50%;background:var(--turn-wash);box-shadow:0 0 0 2px var(--surface-soft);color:var(--turn-tone);font-size:11px;font-weight:600;line-height:1}.turn-chip.is-hero{--turn-tone: #3c7167;--turn-wash: var(--surface-sunken)}.turn-chip.is-ally{--turn-tone: #587b9a;--turn-wash: #edf3f4}.turn-chip.is-enemy{--turn-tone: #a85d48;--turn-wash: #f7eeea}.turn-chip.is-next{width:25px;height:25px;margin:-2px 0;border-color:var(--turn-tone);background:var(--turn-tone);color:var(--ink-invert, #fff);box-shadow:0 0 0 2px var(--surface-soft),0 0 0 3px color-mix(in srgb,var(--turn-tone) 42%,transparent);font-size:12px}.turn-cursor{position:absolute;top:50%;right:-6px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:4px solid var(--turn-tone);transform:translateY(-50%)}.turn-chip.is-later{opacity:.38}.turn-chip.is-wrap{margin-top:9px}.turn-chip.is-wrap:before{content:"";position:absolute;left:-5px;right:-5px;top:-6px;border-top:1px dashed var(--line-strong, #d9d2c2)}.turn-chip.is-special{--turn-tone: #b94d2d}.turn-chip.is-special:after{content:"!";position:absolute;right:-4px;top:-4px;display:grid;place-items:center;width:10px;height:10px;border-radius:50%;background:#c4562f;color:#fff;box-shadow:0 0 0 1.5px var(--surface-soft);font-size:7px;font-weight:800;line-height:1}@media(max-width:380px){.turn-order{width:27px;padding-inline:2px}.turn-chip{width:19px;height:19px;font-size:10px}.turn-chip.is-next{width:23px;height:23px;font-size:11px}}.about-entry{display:flex;align-items:center;gap:8px;width:100%;min-height:48px;padding:10px 1px;border:0;border-top:1px solid var(--line-wash);background:none;color:var(--ink-muted);font-size:13px;text-align:left}.about-entry small{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}.about-entry>svg{flex-shrink:0}.about-sheet .sheet-body{padding:16px 18px max(18px,env(safe-area-inset-bottom))}.about-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}.about-brand img{border-radius:14px;box-shadow:0 3px 10px #526c3c18}.about-brand h3{font-family:var(--serif);font-size:22px;font-weight:500}.about-brand p{margin:4px 0 0;color:var(--ink-muted);font-size:12px}.about-versions{margin:0}.about-versions>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;border-top:1px solid var(--line-wash);font-size:13px}.about-versions dt{color:var(--ink-muted)}.about-versions dd{margin:0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.about-update{border-top:1px solid var(--line-wash);padding:12px 0 4px}.about-update p{color:var(--mint);font-size:12px;line-height:1.6;margin:0 0 10px}.about-update .update-error{color:var(--clay-soft)}.about-update button{min-height:44px;justify-content:center}.about-release-link{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--ink-muted);text-decoration:none;font-size:12px}.about-release-link>svg:last-child{margin-left:auto}.about-install-tip{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 0 2px;border-top:1px solid var(--line-wash);color:var(--ink-muted);font-size:12px;line-height:1.7}.about-install-tip>svg{flex-shrink:0;margin-top:3px}.about-entry>span{flex:1;min-width:0}.account-entry{display:inline-flex;align-items:center;gap:5px;max-width:45%;min-height:36px;margin-left:auto;padding:6px 11px;border:1px solid #81917b4a;border-radius:18px;background:var(--surface-page);color:var(--accent-deep);font-size:13px}.account-entry span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-entry>svg{flex-shrink:0}.account-entry:not(.signed-in){color:var(--ink-muted)}.account-intro{margin:0 0 12px}.account-mode{display:flex;gap:4px;padding:3px;margin-bottom:12px;border-radius:8px;background:var(--surface-sunken, var(--line-soft))}.account-mode button{flex:1;min-height:38px;border:0;border-radius:6px;background:none;color:var(--ink-muted);font-size:14px}.account-mode button[aria-selected=true]{background:var(--surface-page);color:var(--accent-deep);font-weight:600}.account-form{display:grid;gap:10px;margin:8px 0 4px}.account-form label{display:grid;gap:4px;color:var(--ink-muted);font-size:12px}.account-form input{width:100%;min-height:44px;padding:8px 11px;border:1px solid #81917b4a;border-radius:6px;background:var(--surface-page);color:var(--ink);font-size:16px}.account-form .panel-note{margin-top:0}.account-form .primary-button{margin-top:4px}.account-profile{display:flex;align-items:center;gap:12px;padding:4px 0 14px}.account-avatar{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--accent-pale);color:var(--accent-deep)}.account-profile div{display:grid;gap:2px;min-width:0}.account-profile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600}.account-profile small{color:var(--ink-muted);font-size:12px}.account-section{padding:2px 0 12px;border-top:1px solid var(--line-wash)}.account-section .section-heading{margin-top:12px}.account-links{display:flex;flex-wrap:wrap;gap:0 18px}.account-status{margin-top:8px}.page-heading-actions>.account-entry{max-width:170px;margin-left:0}.account-restore{margin-top:12px;padding:12px;border:1px solid var(--line-mid);border-radius:8px;background:var(--surface-page)}.account-restore>p:first-child{color:var(--ink);font-size:14px;line-height:1.7}.account-restore .button-row{margin-top:10px}.account-restore .danger{color:#a3432f;border-color:#a3432f40}.account-restore .text-button.inline{display:inline;min-height:0;padding:0;color:var(--accent-deep);text-decoration:underline;font-size:inherit}.account-guest{padding-bottom:0}.account-guest>div:nth-child(2){flex:1}.account-profile .account-guest-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.account-guest .account-avatar{background:var(--surface-sunken, var(--line-soft));color:var(--ink-muted)}.account-guest-actions .small-button{padding:9px 11px;font-size:13px}.settings-view{display:grid;gap:14px}.settings-card{padding:14px 16px;border:1px solid var(--line-mid);border-radius:12px;background:var(--surface-paper)}.settings-card>h2{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--ink)}.settings-list{padding-top:2px;padding-bottom:2px}.settings-list>:first-child{border-top:0}.settings-list .save-details{margin-top:0}.settings-list .save-details>summary>span{flex:1}.settings-card .account-profile{padding-top:0}.settings-about summary small{font-size:12px;font-variant-numeric:tabular-nums}.settings-about summary small.has-update{color:var(--gold);font-weight:600}.settings-about .about-panel{padding:4px 0 14px}.settings-about .about-brand{display:none}.feedback-entry small{margin-left:auto;color:var(--ink-muted);font-size:11px}.feedback-sheet .sheet-frame{background:var(--surface-paper)}.feedback-sheet .sheet-heading-icon{color:var(--accent-deep)}.feedback-sheet .sheet-body{padding:16px 18px max(20px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.feedback-intro{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line-wash);border-radius:10px;background:var(--surface-soft)}.feedback-intro>span{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;color:var(--gold);background:var(--gold-tint)}.feedback-intro p{color:var(--ink-muted);font-size:12px;line-height:1.75}.feedback-form{display:grid;gap:16px;margin-top:18px}.feedback-field{display:grid;gap:8px}.feedback-label{display:flex;align-items:center;gap:7px;color:var(--ink)}.feedback-label strong{font-size:13px;font-weight:600}.feedback-label em{padding:1px 5px;border-radius:4px;color:var(--accent-deep);background:var(--surface-sunken);font-size:9px;line-height:1.6}.feedback-label em.optional{color:var(--ink-muted);background:var(--surface-soft)}.feedback-label small{margin-left:auto;color:var(--ink-muted);font-size:10px;font-variant-numeric:tabular-nums}.feedback-label small.near-limit{color:var(--gold);font-weight:600}.feedback-field textarea,.feedback-field input{width:100%;border:1px solid var(--line-mid);border-radius:9px;background:var(--surface-raised);color:var(--ink);font:inherit;font-size:16px}.feedback-field textarea{min-height:150px;padding:12px;line-height:1.65;resize:vertical}.feedback-field input{min-height:46px;padding:9px 12px}.feedback-field textarea::placeholder,.feedback-field input::placeholder{color:var(--ink-soft)}.feedback-field textarea:focus,.feedback-field input:focus{outline:2px solid var(--accent-light);outline-offset:1px;border-color:var(--accent-light)}.feedback-field textarea:disabled,.feedback-field input:disabled{opacity:.65}.feedback-hint{color:var(--ink-muted);font-size:10px;line-height:1.6}.feedback-identity{display:flex;align-items:center;gap:7px;margin-top:-3px;padding:9px 10px;border-radius:8px;color:var(--ink-muted);background:var(--surface-soft);font-size:11px;line-height:1.5}.feedback-identity>svg{flex-shrink:0}.feedback-identity strong{color:var(--ink);font-weight:600}.feedback-status{display:flex;align-items:flex-start;gap:7px;margin:-5px 0 0;padding:9px 10px;border:1px solid var(--line-wash);border-radius:8px;color:var(--danger);background:var(--surface-cream);font-size:11px;line-height:1.6}.feedback-status>svg{flex-shrink:0;margin-top:1px}.feedback-submit{width:100%;min-height:50px;margin-top:-2px}.feedback-success{display:grid;justify-items:center;min-height:330px;align-content:center;padding:36px 24px;text-align:center}.feedback-success-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:18px;border:1px solid var(--accent-pale);border-radius:50%;color:var(--accent-deep);background:var(--surface-sunken)}.feedback-success h3{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:1px}.feedback-success p{margin-top:8px;color:var(--ink-muted);font-size:13px;line-height:1.7}.feedback-success .small-button{min-width:140px;margin-top:24px}@media(max-height:700px){.feedback-sheet .sheet-body{padding-top:12px}.feedback-intro{padding:9px 10px}.feedback-form{gap:12px;margin-top:13px}.feedback-field textarea{min-height:120px}}:root{color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--surface-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--sans: "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--serif: "Songti SC", "Noto Serif SC", "SimSun", serif;--dock-height: 76px;--line-wash: #81917b38;--surface-page: #e3eddd;--surface-hollow: #eaf0e1;--surface-sunken: #deead5;--surface-soft: #f2f6eb;--surface-paper: #f9fbf5;--surface-raised: #ffffff;--surface-warm: #f1eddc;--surface-cool: #e6e9f4;--surface-cream: #faf0e6;--line-soft: #d1ddc8;--line-mid: #c1d1b4;--line-strong: #b3c39d;--ink: #304638;--ink-muted: #5d6d5f;--ink-soft: #7d8a72;--ink-invert: #ffffff;--accent-deep: #42603b;--accent: #547246;--accent-mid: #63824e;--accent-light: #7d9d6c;--accent-pale: #9db68b;--mint: #397052;--sage-deep: #617654;--sage-mid: #879779;--gold: #866225;--gold-deep: #8a662a;--gold-mid: #92713c;--gold-light: #ab915c;--gold-pale: #b3975a;--gold-sand: #d7c495;--gold-tint: #eee4c9;--gold-bright: #8a5c15;--danger: #a34f3b;--clay-soft: #a1634d;--info: #3b6983;--info-soft: #507a89;--abyss-tint: #e3e7f5;--abyss-pale: #c9cee3;--abyss-line: #b7bdd6;--abyss-mid: #7f8cbf;--abyss: #4d5a86;--abyss-deep: #3f4a75;--rarity-common: #52634d;--rarity-rare: #356982;--rarity-epic: #79549a;--rarity-legendary: #a8681c}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 50% 0,var(--surface-soft),var(--surface-page) 55%,var(--surface-sunken))}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,a{-webkit-user-select:none;user-select:none}button{transition:background .16s,border-color .16s,color .16s}button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{cursor:default;opacity:.38}button:not(:disabled):active{filter:brightness(1.12)}button svg,summary svg{flex-shrink:0}button,select{max-width:100%}h1,h2,h3,p{margin:0}[hidden]{display:none!important}em{font-style:normal}fieldset{min-width:0}.plain-fieldset{border:0;padding:0;margin:0}.plain-fieldset:disabled button,.plain-fieldset:disabled select{opacity:.38;cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-shell{width:100%;max-width:520px;margin:0 auto;min-height:100dvh;padding:max(14px,var(--safe-area-inset-top, env(safe-area-inset-top))) 18px calc(var(--dock-height) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom)) + 24px);background:linear-gradient(165deg,#e8f0df,var(--surface-soft) 55%,#edf3e5)}.adventure-view{--dock-height: 145px}.onboarding-view{--dock-height: 0px}.app-header{height:38px;display:flex;align-items:center;gap:9px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0}.brand-mark img{display:block;width:36px;height:36px;border-radius:10px;box-shadow:0 2px 6px #526c3c1a}.brand-name{font-family:var(--serif);font-size:22px;letter-spacing:3px;font-weight:600}.gold-balance{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--gold);white-space:nowrap}.gold-balance b{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.gold-balance>svg{flex-shrink:0}.management-view>.hero-ribbon{margin-top:0}.hero-ribbon{display:flex;align-items:center;gap:14px;margin-top:13px;padding:11px 12px;background:var(--surface-paper);border:1px solid var(--line-mid);border-radius:10px}.ribbon-identity{display:flex;align-items:center;gap:9px;padding:0;border:0;background:none;text-align:left;color:var(--ink);flex-shrink:0}.ribbon-emblem{display:grid;place-items:center;width:37px;height:39px;border:1px solid #ab915c4a;border-radius:7px;background:#bb995820;color:var(--gold)}.ribbon-identity strong{display:block;font-size:14px;font-weight:500}.ribbon-identity small{display:block;margin-top:3px;color:var(--ink-muted);font-size:12px}.ribbon-vitals{flex:1;min-width:0}.ribbon-vitals>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:6px}.ribbon-vitals span{color:var(--ink-muted);font-size:12px}.ribbon-vitals b{font-size:13px;font-weight:500;color:var(--mint);font-variant-numeric:tabular-nums;white-space:nowrap}.ribbon-vitals em{color:var(--ink-muted);font-size:12px}.health-track{height:5px;border-radius:2px;overflow:hidden;background:var(--surface-sunken)}.health-track>div{height:100%;background:linear-gradient(90deg,#659561,#87b17a);transition:width .17s}.health-track.low>div{background:#b96549}.ribbon-class-note{color:var(--ink-muted);font-size:12px;padding-left:9px;border-left:1px solid var(--line-wash);white-space:nowrap}.ribbon-shield{color:var(--info);font-size:13px;display:flex;align-items:center;gap:4px}.point-notice{display:flex;align-items:center;justify-content:center;gap:4px;background:#bb995816;border:1px solid #ab915c45;padding:7px;border-radius:5px;color:var(--gold);font-size:14px;min-height:34px}.eyebrow{color:var(--ink-muted);font-size:12px;line-height:1.5;letter-spacing:1.5px}h1{font-family:var(--serif);font-size:29px;letter-spacing:2px;font-weight:600;line-height:1.35}.chapter-heading,.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 1px 16px}.chapter-heading h1,.panel-heading h1{margin-top:4px}.battle-card{overflow:hidden;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-hollow);box-shadow:0 10px 30px #526c3c12,inset 0 1px 0 var(--surface-raised)}.battle-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 13px;height:39px;border-bottom:1px solid #81917b25;background:var(--surface-soft)}.wave-indicator{display:flex;align-items:center;gap:6px}.wave-step{display:grid;place-items:center;width:19px;height:19px;border:1px solid #81917b3b;border-radius:4px;color:var(--ink-muted);font-size:12px}.wave-step.current{color:#78571e;border-color:#b69752;background:var(--gold-tint)}.wave-step.done{color:#3c6646;background:var(--surface-sunken);border-color:var(--accent-pale)}.wave-label{color:var(--ink-muted);font-size:12px;margin-left:5px}.battle-timer{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.battle-progress{display:flex;align-items:center;gap:10px;white-space:nowrap}.battle-enemies{display:flex;align-items:baseline;gap:4px;color:var(--ink-muted);font-size:12px;font-variant-numeric:tabular-nums}.battle-enemies b{color:var(--ink);font-weight:600}.status-dot{height:5px;width:5px;border-radius:50%;background:var(--sage-mid)}.status-dot.active{background:var(--accent-mid);box-shadow:0 0 6px #739d6144}.battle-stage{display:flex;align-items:stretch}.battle-stage>.arena-wrap{flex:1;min-width:0}.arena-wrap{position:relative;aspect-ratio:360 / 340;isolation:isolate;background:var(--surface-hollow)}.arena-canvas{position:absolute;inset:0;overflow:hidden}.arena-canvas canvas{display:block;max-width:100%}.arena-legend{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;background:var(--surface-soft);border-top:1px solid var(--line-wash);padding:10px 12px;color:var(--ink-muted);font-size:12px}.arena-legend>span{display:inline-flex;align-items:center;gap:5px}.arena-legend i{display:inline-block;width:6px;height:6px}.legend-hero{background:#3c7167;transform:rotate(45deg)}.legend-enemy{border:1px solid #b16a51;border-radius:50%}.arena-auto{margin-left:auto;color:var(--ink-muted)}.combat-skill-strip{display:flex;gap:8px;margin-top:12px}.combat-skill-strip>button,.combat-skill-strip>div{flex:1;min-width:0;display:flex;align-items:center;flex-direction:column;gap:5px;background:var(--surface-paper);border:1px solid #81917b29;border-radius:8px;padding:10px 4px;color:var(--info)}.combat-skill-icon{color:var(--gold);display:flex}.combat-skill-strip strong{font-size:12px;font-weight:500;white-space:nowrap}.combat-skill-strip small{font-size:12px;color:var(--ink-muted)}.combat-skill-strip .potion-status{flex:.78;background:#bb995808;border-color:#81917b2a}.potion-status .combat-skill-icon{color:var(--danger)}.combat-skill-strip .on-cooldown .combat-skill-icon{color:var(--ink-muted)}.battle-feedback{display:flex;align-items:center;gap:8px;color:var(--ink-muted);font-size:12px;line-height:1.7;min-height:45px;padding:10px 2px}.battle-feedback>svg{flex-shrink:0;color:var(--ink-muted)}.adventure-tools{display:grid;gap:0}.bottom-dock{position:fixed;z-index:20;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:520px;padding:0 14px var(--safe-area-inset-bottom, env(safe-area-inset-bottom));background:#f8fbf2f5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid #81917b29;box-shadow:0 -8px 26px #526c3c12}.controls{display:flex;gap:9px;padding:11px 0;border-bottom:1px solid var(--line-wash)}.controls button{display:flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;min-height:46px}.primary-button{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;min-height:48px;background:linear-gradient(120deg,var(--accent),var(--accent-deep));border:1px solid #45683f;color:var(--ink-invert);font-size:16px;font-weight:600;letter-spacing:.5px;border-radius:8px;box-shadow:inset 0 1px #fff2,0 4px 12px #446a3826;padding:11px 16px}.primary-button:hover{background:var(--accent-deep)}.primary-button.is-running{background:var(--surface-sunken);border-color:var(--accent-pale);color:var(--accent-deep)}.utility-button{flex:0 0 59px;background:var(--surface-hollow);border:1px solid #81917b38;color:var(--accent-deep);font-size:14px}.utility-button.selected{border-color:#ab915c88;background:#bb995812;color:var(--gold)}.utility-button.sound-button{flex-basis:46px}.controls .restart-button{flex-basis:51px;flex-direction:column;gap:2px;font-size:12px}.game-tabs{display:flex;align-items:stretch;min-height:70px}.game-tabs button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;color:var(--ink-muted);padding:10px 0 8px;font-size:12px}.game-tabs .active-tab{color:#3e683a}.nav-icon{position:relative;display:grid;place-items:center;width:42px;height:27px;border-radius:9px}.active-tab .nav-icon{background:var(--surface-sunken)}.tab-badge{position:absolute;top:-5px;right:-2px;min-width:15px;padding:1px 3px;border:2px solid var(--surface-paper);border-radius:10px;color:#694e1c;background:#efdca6;font-size:12px;line-height:1.2}.muted-badge{background:var(--surface-sunken);color:var(--accent-deep)}.section-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:22px 0 13px}.section-heading h2,.section-heading h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:500}.section-heading h2 svg{color:var(--ink-muted)}.section-heading>span,.muted{color:var(--ink-muted);font-size:12px}.panel-heading{padding-top:25px;padding-bottom:18px}.count-pill{color:var(--gold);background:#bb99580c;border:1px solid #ab915c32;border-radius:6px;padding:6px 9px;font-size:12px;white-space:nowrap}.panel-note{color:var(--ink-muted);font-size:13px;line-height:1.8;margin-top:12px}.small-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border:1px solid #81917b4a;border-radius:6px;padding:9px 13px;color:var(--accent-deep);background:var(--surface-page);font-size:14px}.small-button:hover{background:var(--line-soft)}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 2px;border:0;background:none;font-size:13px;color:var(--ink-muted)}.text-button:hover{color:var(--gold)}.icon-button{display:grid;place-items:center;padding:0;width:40px;height:40px;flex-shrink:0;border:1px solid #81917b3b;border-radius:50%;background:var(--surface-hollow);color:var(--accent-deep)}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:13px}.button-row.split>button{flex:1}.full-width{width:100%;margin-top:16px}.inline-tag{display:inline-block;vertical-align:middle;color:var(--gold);padding:2px 5px;margin-left:7px;border:1px solid #ab915c3b;background:#bb995808;font-size:12px;font-weight:400;border-radius:4px}.positive{color:var(--mint)}.negative{color:var(--danger)!important}.warning-text{color:var(--gold)!important}.xp-track{height:4px;border-radius:3px;background:var(--surface-warm);overflow:hidden}.xp-track>div{height:100%;background:linear-gradient(90deg,#ab8745,#d1b674)}.points-chip{padding:6px 8px;border-radius:5px;background:#6c895f10;color:var(--ink-muted);font-size:12px}.points-chip.has-points{color:var(--gold);background:#bb995818}.attribute-icon{display:grid;place-items:center;width:33px;color:var(--gold);flex-shrink:0}.stat-dex .attribute-icon{color:var(--mint)}.stat-int .attribute-icon{color:var(--rarity-epic)}.stat-vit .attribute-icon{color:var(--danger)}.help-details,.save-details{border-top:1px solid var(--line-wash)}.help-details summary,.save-details summary{display:flex;align-items:center;gap:8px;list-style:none;min-height:47px;padding:11px 1px;cursor:pointer;color:var(--ink-muted);font-size:13px;line-height:1.5}summary::-webkit-details-marker{display:none}.help-details summary>svg:last-child,.save-details summary>svg:last-child{margin-left:auto}.help-details[open] summary>svg:last-child,.save-details[open] summary>svg:last-child{transform:rotate(90deg)}.help-details>div{padding:4px 9px 14px;font-size:13px;color:var(--ink-muted);line-height:1.85}.help-details>div p+p{margin-top:8px}.save-details{margin-top:23px}.save-details .save-section{padding:3px 0 13px}.save-section .section-heading{margin-top:8px}.danger-text{color:var(--danger);margin-left:auto}.start-details summary b{font-weight:400;font-size:12px;color:var(--ink-muted);margin-left:9px}.start-position{display:flex;align-items:center;justify-content:space-between;gap:10px}select{max-width:100%;min-width:0;min-height:44px;border:1px solid #81917b3d;border-radius:6px;background:var(--surface-paper);color:var(--ink);padding:10px;font-size:14px}.start-position select{width:65%}.journal-count{color:var(--ink-muted);font-size:12px;margin-left:auto}.journal summary>svg:last-child{margin-left:0}.equipment-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.equipment-slot{display:flex;align-items:center;gap:10px;text-align:left;padding:14px 10px;min-height:91px;background:var(--surface-paper);border:1px solid #81917b4d;border-radius:8px;color:var(--ink)}.equipment-slot.slot-empty{opacity:1;border-style:dashed;color:var(--ink-muted);background:var(--surface-hollow)}.item-icon{display:grid;place-items:center;width:44px;height:48px;border:1px solid currentColor;border-radius:9px 4px;background:#6c895f10;flex-shrink:0}.item-icon.large{width:66px;height:72px}.slot-copy{display:flex;flex-direction:column;min-width:0;flex:1;gap:5px}.slot-label{display:block;color:var(--ink-muted);font-size:12px;font-weight:400}.slot-copy strong{font-size:14px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}.slot-copy small{color:var(--ink-muted);font-size:12px}.rarity-common{color:var(--rarity-common)}.rarity-rare{color:var(--rarity-rare)}.rarity-epic{color:var(--rarity-epic)}.border-rare{border-color:#739cac88}.border-epic{border-color:#997aaf55}.rarity-legendary{color:var(--rarity-legendary)}.border-legendary{border-color:#c8912f88}.filter-chips{display:flex;align-items:center;gap:6px;margin-bottom:13px}.filter-chips button{flex:1;min-width:0;min-height:37px;border:1px solid #81917b22;background:#6c895f06;color:var(--ink-muted);border-radius:5px;padding:6px 3px;font-size:13px}.filter-chips button[aria-pressed=true]{background:#bb99581a;border-color:#ab915c77;color:var(--gold)}.inventory-list{display:grid;gap:6px}.inventory-row{display:flex;align-items:center;gap:9px;padding:10px;width:100%;text-align:left;border:1px solid var(--line-wash);border-radius:8px;background:var(--surface-paper);color:var(--ink-muted)}.inventory-row:hover,.equipment-slot:not(:disabled):hover{background:var(--surface-page)}.inventory-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inventory-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.inventory-title strong{min-width:0;overflow-wrap:anywhere;font-size:14px;font-weight:600;line-height:1.5}.inventory-title small{flex-shrink:0;font-size:11px;font-variant-numeric:tabular-nums}.inventory-row>svg{flex-shrink:0}.item-heading{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;justify-content:space-between}.item-heading strong{font-size:17px;font-weight:500}.item-heading>span{font-size:12px;color:var(--ink-muted)}.item-base{color:var(--ink);font-size:14px;line-height:1.7;margin-top:9px}.affix-list{margin:7px 0 0;padding-left:16px;color:var(--ink-muted);font-size:13px;line-height:1.85}.item-spotlight{display:flex;align-items:flex-start;gap:17px;border:1px solid var(--line-wash);border-radius:9px;padding:18px 14px;background:var(--surface-soft)}.item-spotlight>div{flex:1;min-width:0}.item-spotlight .slot-label{margin-bottom:8px}.comparison{margin-top:23px}.comparison .section-heading{margin-bottom:10px}.comparison table{border-collapse:collapse;width:100%;text-align:right;font-size:14px}.comparison th:first-child{text-align:left}.comparison th{font-weight:400}.comparison thead{font-size:12px;color:var(--ink-muted)}.comparison th,.comparison td{padding:12px 5px;border-bottom:1px solid var(--line-wash)}.comparison td:nth-child(2){color:var(--ink-muted)}.comparison td small{font-size:12px;margin-left:3px}.sheet-actions{margin-top:22px}.empty-state{display:flex;align-items:center;flex-direction:column;gap:12px;padding:35px 22px;border:1px dashed #81917b38;border-radius:9px;text-align:center}.empty-state>svg{color:var(--ink-muted);margin-bottom:3px}.empty-state strong{color:var(--ink-muted);font-size:15px;font-weight:500}.empty-state p{color:var(--ink-muted);font-size:13px;line-height:1.9}.detail-sheet{position:fixed;inset:auto 0 0;margin:0 auto;padding:0;width:min(100%,520px);max-width:100%;max-height:90dvh;border:1px solid #81917b55;border-bottom:0;border-radius:20px 20px 0 0;background:transparent;color:var(--ink);overflow:hidden;box-shadow:0 -20px 80px #42583c12}.detail-sheet::backdrop,.game-dialog::backdrop{background:#2e412a55;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet-frame{display:flex;flex-direction:column;max-height:90dvh;background:linear-gradient(155deg,var(--surface-paper),var(--surface-soft) 50%)}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-shrink:0;padding:20px 20px 15px;border-bottom:1px solid var(--line-wash)}.sheet-header h2{font-size:21px;font-family:var(--serif);font-weight:500;letter-spacing:1px}.sheet-heading{display:flex;align-items:center;gap:10px;min-width:0}.sheet-heading-icon{display:flex;align-items:center;flex-shrink:0}.sheet-heading-copy{min-width:0}.sheet-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.sheet-subtitle{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:3px;color:var(--ink-muted);font-size:11px;line-height:1.5}.sheet-handle{display:block;position:absolute;top:8px;left:calc(50% - 16px);width:32px;height:3px;border-radius:3px;background:#a4b499}.sheet-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:20px 18px max(24px,var(--safe-area-inset-bottom, env(safe-area-inset-bottom)))}.arena-overlay{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px;text-align:center;background:#f2f7e9f2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);overflow-y:auto}.arena-overlay h2{font-family:var(--serif);font-size:27px;font-weight:500;letter-spacing:2px;color:var(--gold);outline:0;margin-top:7px}.arena-overlay>p:not(.eyebrow){font-size:13px;color:var(--ink-muted);line-height:1.8;margin-top:12px}.pause-symbol{display:grid;place-items:center;width:56px;height:56px;border:1px solid #ab915c70;border-radius:50%;color:var(--gold);background:#bb99580a;margin-bottom:15px;flex-shrink:0}.overlay-continue{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;margin-top:22px;border:1px solid #ab915c66;border-radius:6px;background:#bb995817;color:var(--gold);font-size:14px}.arena-loading{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:var(--surface-hollow);color:var(--ink-muted);font-size:14px}.arena-loading button{min-height:44px;border:0;border-radius:6px;background:#456b43;color:var(--ink-invert);padding:10px 20px}.loading-diamond{width:21px;height:21px;border:1px solid var(--gold-light);transform:rotate(45deg);animation:breathe 1.2s infinite alternate}@keyframes breathe{to{opacity:.3}}.notice-toast{position:fixed;z-index:22;left:50%;transform:translate(-50%);bottom:calc(var(--dock-height) + var(--safe-area-inset-bottom, env(safe-area-inset-bottom)) + 12px);width:calc(100% - 36px);max-width:460px;display:flex;align-items:center;gap:9px;padding:9px 9px 9px 13px;border:1px solid #81917b77;border-radius:9px;background:#fafdf4fa;box-shadow:0 6px 24px #42583c22;font-size:13px;color:var(--ink);line-height:1.7}.notice-toast>svg{flex-shrink:0;color:var(--mint)}.notice-toast>span{flex:1}.notice-toast .icon-button{width:31px;height:31px;border:0;background:none}.game-notice,.save-warning,.locked-notice{color:var(--ink-muted);font-size:13px;padding:11px 12px;border:1px solid #81917b38;border-radius:6px;background:#6c895f0b;margin-top:12px;line-height:1.8}.save-warning{color:var(--gold);border-color:#ab915c4d;background:#bb995811}.locked-notice{display:flex;align-items:center;gap:7px;color:var(--gold);border-color:#ab915c40}.locked-notice>svg{flex-shrink:0}.locked-notice>span{flex:1}.locked-notice .text-button{flex-shrink:0}.class-selection{padding-top:18px}.class-selection h1{font-family:var(--sans);font-size:17px;line-height:1.4;letter-spacing:0;margin:0 0 10px}.class-options.plain-fieldset{display:grid;gap:8px;margin:0 0 14px}.class-option{display:flex;position:relative;align-items:center;gap:10px;padding:11px 12px;background:var(--surface-paper);border:1px solid var(--line-soft);border-radius:10px;cursor:pointer}.class-option input{position:absolute;opacity:0;width:1px;height:1px}.class-option:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}.selected-class{background:var(--surface-sunken);border-color:var(--accent-light)}.class-glyph{display:grid;place-items:center;width:51px;height:60px;border-radius:11px 4px;border:1px solid #ab915c55;background:#bb995814;color:var(--gold);flex-shrink:0}.class-copy{flex:1;min-width:0}.class-copy strong{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 8px;font-size:16px;font-weight:600;line-height:1.4;padding-right:18px}.class-copy small{font-size:11px;font-weight:400;color:var(--ink-muted);white-space:nowrap}.class-intro{display:block;margin-top:4px;color:var(--ink-muted);font-size:12px;line-height:1.55}.class-radio{position:absolute;top:13px;right:11px;display:grid;place-items:center;width:15px;height:15px;border:1px solid var(--line-strong);border-radius:50%;color:var(--ink-invert)}.selected-class .class-radio{background:var(--accent);border-color:var(--accent)}.tone-ranger .ribbon-emblem,.tone-ranger .class-glyph{color:var(--mint);border-color:#81917b66;background:#6c895f14}.tone-mage .ribbon-emblem,.tone-mage .class-glyph{color:var(--info);border-color:#81917b6b;background:#6c895f18}.start-adventure{width:100%;min-height:48px}.start-adventure svg:last-child{margin-left:auto}.onboarding-footnote{font-size:12px;color:var(--ink-muted);text-align:center;margin-top:14px}.game-dialog{width:min(400px,90vw);border:1px solid #81917b77;border-radius:12px;padding:25px;background:var(--surface-paper);color:var(--ink)}.game-dialog h2{font-size:21px;font-weight:500}.game-dialog p{margin-top:13px;color:var(--ink-muted);font-size:14px;line-height:1.8}.class-reset-options{display:flex;gap:9px;margin-top:20px;margin-bottom:8px}.app-footer{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--ink-muted);letter-spacing:2px;font-size:12px;margin-top:25px}.app-footer span{height:1px;width:27px;background:#6c895f33}@media(min-width:600px){body{padding-top:22px}.game-shell{border:1px solid #81917b29;border-radius:18px 18px 0 0;min-height:calc(100dvh - 22px);padding-top:17px;padding-left:24px;padding-right:24px;box-shadow:0 20px 80px #526c3c18}.bottom-dock{border-left:1px solid #81917b29;border-right:1px solid #81917b29;padding-left:20px;padding-right:20px}.detail-sheet{inset:0;margin:auto;max-height:85dvh;border:1px solid #81917b55;border-radius:16px}.sheet-frame{max-height:85dvh}.sheet-handle{display:none}}@media(max-width:374px){.game-shell{padding-left:13px;padding-right:13px}.brand-name{font-size:20px}.hero-ribbon{gap:9px;padding:10px}.ribbon-class-note{display:none}.chapter-heading{padding-top:16px;padding-bottom:13px}.chapter-heading h1{font-size:26px}.arena-legend{gap:6px 9px;font-size:12px}.attribute-icon{width:25px}.item-icon{width:36px;height:42px}.equipment-slot{padding:11px 8px;gap:7px}.slot-copy strong{font-size:13px}.class-option{padding:10px;gap:9px}.class-option>.character-portrait{width:42px;height:42px}.item-spotlight{gap:12px;padding:15px 11px}.comparison td small{display:block;margin-top:3px}}@media(max-height:740px)and (max-width:599px){.game-shell{padding-top:max(9px,var(--safe-area-inset-top, env(safe-area-inset-top)))}.hero-ribbon{margin-top:8px;padding-top:9px;padding-bottom:9px}.chapter-heading{padding-top:14px;padding-bottom:12px}.chapter-heading h1{font-size:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}:is(.class-glyph,.ribbon-emblem,.hero-profession-icon,.character-avatar,.hero-attribute .attribute-icon):has(>.game-art){background:transparent;border-color:transparent}:is(.class-glyph,.ribbon-emblem,.hero-profession-icon,.character-avatar,.attribute-icon,.item-icon)>.game-art{width:100%;height:auto}.item-icon:has(>.game-art){height:44px;padding:1px;border-radius:11px;background:transparent}.item-icon>.game-art>rect{stroke-opacity:0}.slot-empty .item-icon:has(>.game-art){opacity:.55;border-style:dashed}.item-icon.large:has(>.game-art){width:66px;height:66px;border-radius:17px}.character-class-options .game-art{width:32px;height:32px}@media(max-width:374px){.item-icon:has(>.game-art){height:36px}}.enemy-mechanics{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:12px;line-height:1.6;color:var(--ink-muted)}.enemy-mechanics li strong{margin-right:6px;font-weight:600;color:#8b4935}.abyss-mechanics{padding:0 15px 4px}.reroll-lock{margin:12px 0 4px}.reroll-lock>span{display:block;margin-bottom:6px;font-size:12px;color:var(--ink-muted)}.reroll-lock>div{display:flex;flex-wrap:wrap;gap:6px}.reroll-lock button{min-height:34px;padding:5px 11px;border:1px solid var(--line-wash);border-radius:7px;background:var(--surface-paper);font-size:12px;color:var(--ink)}.reroll-lock button.selected{border-color:var(--gold-light);background:var(--surface-cream);color:var(--gold);font-weight:600}.controls .speed-button{flex-basis:62px}.controls .speed-button.is-auto{border-color:var(--gold-light);background:var(--gold-tint);color:var(--gold)}.welcome-view{--dock-height: 0px;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 12%,var(--surface-paper),transparent 60%),linear-gradient(180deg,var(--surface-soft),var(--surface-page))}.welcome-content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,4svh,40px);width:100%;max-width:380px;margin:0 auto;padding:clamp(28px,5svh,56px) 0 clamp(24px,4svh,40px)}.welcome-hero{display:grid;justify-items:center;text-align:center}.welcome-emblem{position:relative;padding:6px;border:1px solid var(--line-mid);border-radius:30px;background:var(--surface-paper);box-shadow:0 8px 24px #526c3c12}.welcome-emblem:before{content:"";position:absolute;inset:-9px;border:1px solid var(--line-wash);border-radius:38px;pointer-events:none}.welcome-emblem img{display:block;width:96px;height:96px;border-radius:24px}.welcome-eyebrow{margin-top:29px;color:var(--ink-muted);font-size:10px;font-weight:600;line-height:1.5;letter-spacing:3px;text-indent:3px}.welcome-hero h1{margin-top:8px;font-size:clamp(32px,8vw,40px);letter-spacing:8px;text-indent:8px}.welcome-tagline{margin-top:12px;color:var(--ink-muted);font-size:14px;line-height:1.7;letter-spacing:3px;text-indent:3px}.welcome-divider{display:flex;align-items:center;gap:14px;margin:20px 0 12px;color:var(--sage-deep)}.welcome-divider:before,.welcome-divider:after{content:"";width:52px;height:1px;background:var(--line-mid)}.welcome-description{color:var(--ink-muted);font-size:12px;line-height:1.7;letter-spacing:1px}.welcome-actions{display:grid;gap:12px;padding:24px;border:1px solid var(--line-mid);border-radius:16px;background:var(--surface-paper)}.welcome-action-heading{margin-bottom:6px;text-align:center}.welcome-action-heading h2{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.4;letter-spacing:2px}.welcome-action-heading p{margin-top:8px;color:var(--ink-muted);font-size:12px;line-height:1.8}.welcome-actions .primary-button,.welcome-actions .small-button{width:100%;min-height:50px;border-radius:9px}.welcome-login>span{flex:1}.welcome-actions .welcome-guest{background:transparent;border-color:var(--line-mid);color:var(--ink);font-size:14px}.welcome-actions .welcome-guest:hover{background:var(--surface-soft);border-color:var(--line-strong)}.welcome-note{color:var(--ink-muted);font-size:12px;line-height:1.8;text-align:center}.welcome-footer{width:100%;max-width:380px;margin:0 auto}.welcome-footer .save-details{margin-top:0}.welcome-footer .save-details>summary,.welcome-footer .about-entry{min-height:48px;padding-right:4px;padding-left:4px}@media(max-width:374px){.welcome-actions{padding:20px 16px}}@media(max-height:740px){.welcome-content{gap:22px;padding-top:20px;padding-bottom:24px}.welcome-emblem img{width:72px;height:72px;border-radius:20px}.welcome-emblem{border-radius:26px}.welcome-emblem:before{border-radius:34px}.welcome-eyebrow{margin-top:22px}.welcome-hero h1{font-size:32px}.welcome-tagline{margin-top:8px}.welcome-divider{margin-top:14px;margin-bottom:8px}.welcome-actions{gap:10px;padding-top:20px;padding-bottom:20px}}
