.arena-hall{max-width:1000px;margin:20px auto}.arena-hall>h2{color:#f0d6a1;font:32px Georgia}.arena-hall p{font:14px/1.7 'Segoe UI',sans-serif;color:#c3d2be;margin:12px 0}.arena-standing{display:flex;align-items:center;gap:20px;padding:25px 0;border-block:1px solid #b99e5a66;margin:25px 0}.arena-standing>img{width:60px;image-rendering:pixelated}.arena-standing strong{display:block;font:28px Georgia;color:#f3cf8c}.arena-standing span,.arena-standing small{display:block;margin-top:8px}.arena-standing small{color:#a8c6b0}.arena-hall .recruitment{margin-top:25px}.arena-result{margin:30px 0;text-align:center;background:radial-gradient(ellipse,#51452b66,transparent 75%);padding:20px}.arena-result h3{font:28px Georgia;color:#f4d58d}.arena-company{display:flex;justify-content:center;gap:8px}.arena-company img{width:52px;height:64px;object-fit:contain;image-rendering:pixelated}.arena-rivals>h3,.arena-ranking>h3{font:24px Georgia;color:#e8d3a6;margin:25px 0 12px}.rival-line{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #61756877}.rival-line>div:nth-child(2){flex:1}.rival-line small{display:block;font-size:12px;color:#a4c1b0;margin-top:7px}.arena-ranking ol{padding:0;list-style:none}.arena-ranking li{display:flex;align-items:center;gap:15px;padding:12px;border-bottom:1px solid #66785d66}.arena-ranking li>img{width:40px;height:40px;image-rendering:pixelated;object-fit:contain}.arena-ranking li>span{flex:1}.arena-ranking small{display:block;color:#9bb8a5;font:11px 'Segoe UI',sans-serif;margin-top:5px}.arena-ranking .own-rank{background:#99834822;border-left:2px solid #e9bf75}.arena-review-controls{justify-content:center;flex-wrap:wrap}.arena-review-controls>div{display:flex;gap:12px;font:12px 'Segoe UI',sans-serif}.arena-review-controls>div:first-child,.arena-review-controls>div:last-child{width:100%;justify-content:center}.arena-review>canvas{bottom:150px;height:calc(100% - 150px)}.arena-review-controls{min-height:150px}
@media(max-width:700px){.rival-line{gap:8px;flex-wrap:wrap}.rival-line .arena-company img{width:32px;height:44px}.rival-line .btn{margin-left:auto;font-size:12px}.arena-hall>h2{font-size:26px}.arena-review-controls>div{gap:9px;font-size:10px}.title-links{flex-wrap:wrap}.sidebar .nav-btn{min-width:49px;width:49px}}
.arena-redesigned{max-width:1020px;padding:22px;background:#091d21ed;border:1px solid #877348;box-shadow:0 12px 40px #0005;margin:15px auto 95px}.arena-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:16px}.arena-heading h2{font:30px Georgia;color:#f1dcab;margin:8px 0}.arena-score{display:flex;align-items:center;gap:10px}.arena-score>img{width:48px;image-rendering:pixelated}.arena-score strong{font:24px Georgia;color:#f4dc99}.arena-score span,.arena-score small{display:block;font:11px/1.5 'Segoe UI',sans-serif;color:#c5cfbb}.arena-score strong small{display:inline;margin-left:6px}.arena-tabs{display:flex;gap:8px;border-block:1px solid #85734a66;padding:12px 0;margin-bottom:18px}.arena-tabs .btn{flex:1;min-height:42px}.arena-tabs .active{background:#334b43;border-color:#e4c77c;color:#ffe5a8}.arena-duel-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.arena-section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.arena-section-title h3{font:22px Georgia;color:#eeddaf;margin:0}.arena-section-title .btn{font-size:12px;min-height:32px}.arena-team-stage{height:270px;background:linear-gradient(#00121811,#00121822),url('/build/79bab3518bc79acd/assets/arena.png') center/cover;position:relative;border:1px solid #92784b;image-rendering:pixelated}.arena-team-stage .arena-company{position:absolute;inset:auto 15px 23px;justify-content:space-evenly}.arena-team-stage .arena-company img{width:80px;height:86px}.arena-lanes{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:10px;color:#eadcb3}.arena-company figure{margin:0;text-align:center}.arena-company figcaption{font:12px Georgia;color:#f5e2b8}.arena-last-match{padding:14px;margin-top:14px;background:#253531;border-left:2px solid #c5a862;display:grid;gap:6px}.arena-last-match>span,.arena-last-match>small{font-size:12px;color:#bdcab5}.arena-last-match strong{font:19px Georgia;color:#ebd59e}.arena-last-match .btn{justify-self:start;font-size:12px}.arena-opponent-list{display:grid;gap:12px;max-height:470px;overflow:auto;padding-right:3px}.arena-opponent{padding:12px;border:1px solid #536c61;background:#17302b}.rival-heading{display:flex;justify-content:space-between;gap:10px}.rival-heading strong{font:15px Georgia;color:#e8d8af}.rival-heading span{font-size:12px;color:#c1d0bb}.arena-opponent .arena-company{padding:10px 0}.arena-opponent .arena-company img{width:52px;height:54px}.arena-opponent>.btn{width:100%;min-height:38px;font-size:14px}.arena-redesigned .arena-ranking{padding:16px;background:#10282a}.arena-ranking li{background:#102328}.arena-ranking li.own-rank{background:#46533a}.arena-rules{margin-top:18px;border-top:1px solid #66744f;padding-top:12px;font-size:13px;color:#bfcbb5}.arena-formation-room .locked-company{display:none}.arena-save-bar{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #89744d;padding-top:15px}.arena-formation-room .recruit-line{grid-template-columns:repeat(5,minmax(0,1fr))}.arena-formation-room .recruit img{height:64px;width:64px}.arena-formation-room .recruit strong{font-size:17px}.arena-formation-room .assembly-field{max-width:600px}.arena-formation-room .assembly-position img{height:64px;width:64px}
@media(max-width:700px){.arena-redesigned{padding:12px;margin-top:8px}.arena-heading{align-items:start;gap:8px}.arena-heading h2{font-size:23px}.arena-score>img{width:30px}.arena-score strong{font-size:20px}.arena-score span{font-size:9px}.arena-duel-layout{grid-template-columns:1fr;gap:18px}.arena-team-stage{height:220px}.arena-team-stage .arena-company img{width:65px;height:72px}.arena-opponent-list{max-height:none}.arena-formation-room .recruit-line{grid-template-columns:repeat(3,minmax(0,1fr))}.arena-tabs{gap:4px}.arena-tabs .btn{font-size:13px;padding:7px}.arena-save-bar{flex-wrap:wrap}.arena-redesigned .arena-company img{object-fit:contain}}
.arena-tabs{flex-wrap:wrap}.arena-incoming{display:grid;gap:12px}.arena-incoming-actions{display:flex;gap:12px}.arena-incoming-actions .btn{flex:1}.arena-tabs .btn{flex:1 1 100px}

.arena-opponent>.primary{max-width:230px;display:block;margin-inline:auto}.arena-review .expedition-top>div:first-child{max-width:72%}

.arena-review-controls{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px}.arena-review-controls>div:not(.arena-playback-buttons){display:flex;gap:12px;justify-content:center;font-size:11px}.arena-playback-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.arena-playback-buttons .btn{min-width:80px;min-height:36px;padding:5px 10px;font-size:12px;white-space:nowrap}.arena-review-controls>div:last-child{color:#e6b39c}@media(max-width:700px){.arena-review-controls{grid-template-columns:1fr;gap:7px;min-height:110px}.arena-review-controls .arena-playback-buttons{grid-row:1;gap:7px}.arena-playback-buttons .btn{min-width:0;flex:1;max-width:120px;font-size:11px;padding:4px 6px;min-height:34px}.arena-review-controls>div:not(.arena-playback-buttons){font-size:10px;gap:14px}}

.arena-hide{display:none}.arena-result{max-width:600px;margin:15vh auto;text-align:center}.arena-result .btn{margin:10px}

.phase-battle .battle-controls{flex-direction:row;justify-content:flex-end;gap:10px}.phase-battle .battle-controls .pause-command.btn{width:auto;height:24px;min-height:24px;font-size:11px;padding:2px 7px}.phase-battle .party-hud{width:100%;max-width:620px}.phase-battle .expedition-hud{flex-wrap:wrap;gap:6px}@media(max-width:700px){.phase-battle .party-hud{width:100%;max-width:none}.research-line{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px 12px}.research-line>img{width:36px;height:36px}.research-line>div{min-width:0}.research-line>.btn{grid-column:2;justify-self:start;min-height:34px;font-size:12px;padding:5px 14px}.research-line h3{font-size:18px}.research-line p{font-size:12px;line-height:1.5}.research-scroll{min-width:0}.forge-station{min-width:0}}.resource-cost.insufficient small,.resource-cost.affordable small{color:inherit}

/* Let the compact HUD follow its content instead of reserving empty equipment rows. */
@media(max-width:700px){
 .expedition-world .expedition-hud,.expedition-world.phase-battle .expedition-hud{min-height:0;height:auto;padding:6px 12px 8px;gap:4px}
 .party-hud .member-status{grid-template-rows:auto 4px auto;row-gap:4px}
 .party-hud .member-relics{grid-template-rows:auto;min-height:0;gap:2px}
 .party-hud .member-relics:empty{display:none}
 .party-hud .member-relics>span,.party-hud .member-relics>.formation-link{grid-row:auto;line-height:12px}
 .party-hud .ultimate-trigger{margin-top:2px}
 .party-hud .status-badge{margin-block:1px}
 .battle-controls{height:22px;padding-bottom:2px}
 .expedition-world:not(.phase-battle)>canvas{bottom:145px;height:calc(100% - 145px)}
}

.assembly-field.four-slots{grid-template-columns:repeat(2,minmax(0,1fr));max-width:650px;margin-inline:auto}.formation-field:has(.formation-place:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
.party-hud:has(.party-member:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;max-width:650px}
.party-hud:has(.party-member:nth-child(2)) .party-member{display:grid;grid-template-columns:48px minmax(0,1fr);gap:6px;align-items:center}
.party-hud:has(.party-member:nth-child(2)) .hero-inspect,.party-hud:has(.party-member:nth-child(2)) .hero-inspect img{width:48px;height:54px;min-width:48px}
.party-hud:has(.party-member:nth-child(2)) .member-status{grid-template-rows:auto 4px auto;gap:3px}
.party-hud:has(.party-member:nth-child(2)) .member-relics{grid-template-rows:auto;min-height:0}
@media(max-width:700px){.party-hud:has(.party-member:nth-child(2)){width:100%;gap:7px 10px}.party-hud:has(.party-member:nth-child(2)) .member-name .hero-name{font-size:11px}.party-hud:has(.party-member:nth-child(2)) .member-name>span{font-size:8px}.party-hud:has(.party-member:nth-child(2)) .member-relics>span{display:none}}
.has-notification{position:relative}.has-notification::after{content:'';position:absolute;right:5px;top:5px;width:8px;height:8px;border-radius:50%;background:#f34f54;border:1px solid #ffd0b5;box-shadow:0 0 0 2px #102220;pointer-events:none}.nav-btn.has-notification::after{right:12%;top:5px}.hub-tour{position:fixed;z-index:120;top:10px;left:50%;transform:translateX(-50%);width:min(520px,calc(100% - 20px));padding:12px 16px;background:#102220;border:1px solid #d6b877;box-shadow:0 8px 30px #0009}.hub-tour h2{font-size:21px;margin:4px 0}.hub-tour p{font-size:13px;line-height:1.4;margin:6px 0}.hub-tour small{color:#d6b877;font-size:10px}.hub-tour .btn{min-height:34px;margin-top:5px}.hub-highlight{outline:2px solid #ffe194!important;outline-offset:3px;box-shadow:0 0 18px #e4bd5555;scroll-margin-top:190px;scroll-margin-bottom:90px}.hub-tour~*{scroll-margin-top:190px}body:has(.hub-tour) main{padding-top:180px}body:has(.hub-tour) .sidebar{z-index:121}.loot-targets:has(> :nth-child(4)){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.loot-targets:has(> :nth-child(4)) button{min-width:0;width:100%;padding:4px}.loot-targets:has(> :nth-child(4)) img{max-width:48px}
.legacy-choice{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px 14px;align-items:start}.legacy-choice>img{width:40px;height:48px;object-fit:contain;align-self:center}.legacy-choice>div{min-width:0}.legacy-choice>.btn{grid-column:1/-1;justify-self:end;width:auto;min-width:0;max-width:100%;white-space:nowrap;align-self:start}.legacy-choice p{max-width:none}.departure{display:flex;flex-direction:column;align-items:stretch;gap:12px}.departure>.btn{align-self:flex-end;width:auto;min-width:0;max-width:100%;white-space:nowrap;padding-inline:22px}.departure>p{width:100%;margin:0}.departure .btn span{white-space:nowrap}
@media(max-width:700px){.legacy-choice{grid-template-columns:34px minmax(0,1fr);gap:8px 12px}.legacy-choice>img{width:32px}.legacy-choice h3{font-size:22px}.legacy-choice .eyebrow{letter-spacing:1.3px}.departure>.btn{font-size:14px;padding-inline:18px}}

.expedition-world>.world-vignette{background:linear-gradient(#03101799,transparent 24%,transparent 88%,#08121855 100%),radial-gradient(ellipse,transparent 60%,#07151b55)}
html{overflow-x:clip;scrollbar-gutter:stable}body{max-width:100%;overflow-x:clip}.shell,.workspace,main{min-width:0;max-width:100%}.expedition-world{overflow:clip;max-width:100%;height:100dvh;contain:layout paint}.expedition-world>.ultimate-cinematic,.ultimate-cinematic{overflow:clip;max-width:100%;contain:layout paint}.energy-mote{pointer-events:none}.party-hud:has(.party-member:nth-child(2)){display:grid}.expedition-world>canvas,.expedition-world.phase-battle>canvas{bottom:var(--hud-height,150px);height:calc(100% - var(--hud-height,150px))}.expedition-hud{max-width:100%;min-width:0}.guided-lesson,.hub-tour,.modal-card{box-sizing:border-box;overflow-wrap:anywhere}.expedition-top>div:first-child{min-width:0}.expedition-top h2{overflow-wrap:anywhere}.party-member,.member-name{min-width:0}.member-name>span{white-space:nowrap}.assembly-field,.region-grid,.grimoire{min-width:0;max-width:100%}
.expedition-world.phase-battle{display:block}.expedition-world>canvas,.expedition-world.phase-battle>canvas{position:absolute;inset:0 0 var(--hud-height,150px);height:calc(100% - var(--hud-height,150px));width:100%;min-height:0}.expedition-world.phase-battle>.expedition-hud{position:absolute;left:0;right:0;bottom:0}
.modal>.row.between:first-child{position:sticky;top:-1px;z-index:4;background:#102220;padding-block:8px;margin-top:-8px;align-items:center}.modal>.row.between:first-child h2{padding-right:8px}.modal>.row.between:first-child>.btn{flex:none;align-self:flex-start}
.world-route{background:linear-gradient(#0a2028eb,#102528e0);box-shadow:inset 0 0 25px #04101555}.world-route:hover,.world-route:focus-visible{background:linear-gradient(#18383bef,#102528eb)}
.world-loot .forge-preview{font:13px/1.55 'Segoe UI',system-ui,sans-serif;color:#edf3dc;background:#0c2529f2;padding:10px 12px;text-align:left}.world-loot .forge-preview strong{font-size:14px;color:#fff1c8}.world-loot .forge-preview small,.world-loot .forge-preview p,.world-loot .loot-actions>small{font-size:12px;line-height:1.5;color:#d9e5ce}.forge-stat-changes{gap:5px}.loot-element{display:flex;justify-content:center;margin:5px 0 9px}.loot-element .tag{font-size:12px;padding:3px 9px}.world-loot .loot-actions{gap:10px}.world-loot .loot-preserve.btn.primary{position:relative;isolation:isolate;border-image:none;border:10px 24px solid transparent;background:transparent;color:#f3ffe7;min-height:46px;font-size:14px}.world-loot .loot-preserve.btn.primary::before{content:'';position:absolute;inset:-10px -24px;z-index:-1;border:10px 24px solid transparent;border-image:url('/build/79bab3518bc79acd/assets/ui-button.png') 12 28 fill stretch;filter:hue-rotate(72deg) saturate(.8);pointer-events:none}.world-loot .loot-preserve.btn.primary:hover::before{filter:hue-rotate(72deg) saturate(.9) brightness(1.15)}
.collection-tabs,.gear-filters,.gear-heroes{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.collection-tabs>.btn{width:auto}.gear-collection{background:#102220f2;padding:18px;border:1px solid #697f66}.gear-collection h2{font-size:26px;margin:8px 0}.gear-collection header p,.gear-sources p{font:13px/1.6 'Segoe UI',sans-serif}.gear-heroes .btn{display:grid;justify-items:center;width:76px;min-height:85px;padding:5px;font-size:12px}.gear-heroes img{width:44px;height:54px;object-fit:contain;image-rendering:pixelated}.gear-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gear-slot{display:grid;justify-items:center;text-align:center;padding:10px 6px;background:#0a1b22;border:1px solid var(--rarity);gap:6px;font-size:12px}.gear-slot img{width:36px;height:36px;image-rendering:pixelated}.gear-slot .btn{font-size:11px;min-height:30px;padding:3px 6px;width:auto}.gear-empty{font-size:32px;opacity:.5}.gear-sources{margin:18px 0;border-block:1px solid #627c6655;padding:12px 0}.gear-filters>.btn{font-size:11px;padding:4px 9px;min-height:30px;width:auto}.gear-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rarity-0{--rarity:#b7bfb6}.rarity-1{--rarity:#7edb8c}.rarity-2{--rarity:#72b8ff}.rarity-3{--rarity:#d697ff}.rarity-4{--rarity:#ffd46b}.gear-card{background:#0c1c22;border:1px solid var(--rarity);padding:12px;display:flex;flex-direction:column;gap:8px;min-width:0}.gear-card.unowned>img{opacity:.6}.gear-rarity{color:var(--rarity);font:10px/1.4 'Segoe UI',sans-serif}.gear-card>img{width:48px;height:48px;align-self:center;image-rendering:pixelated}.gear-card h3{font-size:18px;color:#e8ddbe}.gear-card p{font:12px/1.6 'Segoe UI',sans-serif}.gear-card>.btn{margin-top:auto;width:100%;min-height:38px;font-size:12px}.gear-card>.resource-cost{font-size:12px}.gear-slot>span{color:var(--rarity)}@media(max-width:700px){.gear-collection{padding:12px 10px}.gear-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gear-heroes{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:5px}.gear-heroes>.btn{flex:0 0 68px}.gear-card{padding:10px}.gear-slots strong{font-size:11px}.gear-card h3{font-size:17px}}
.world-loot .loot-preserve.btn.primary,.world-loot .loot-preserve.btn.primary::before{border-style:solid;border-width:10px 24px;border-color:transparent}
.equipment-permanent{margin:16px 0}.equipment-permanent article{display:flex;align-items:center;gap:12px;padding:10px;margin-top:6px;border-left:2px solid var(--rarity);background:#0c1b22}.equipment-permanent img{width:36px;height:36px;image-rendering:pixelated}.equipment-permanent small{display:block;color:var(--rarity);font-size:11px;margin-top:4px}
.gear-heroes{scrollbar-width:none}.gear-heroes::-webkit-scrollbar{display:none}

.modal>.equipment-heading.row.between:first-child{background:transparent;gap:12px}.equipment-heading h2{position:relative;isolation:isolate;margin:0;flex:1;padding:9px 14px!important;text-shadow:0 1px 2px #000}.equipment-heading h2::before{content:"";position:absolute;inset:0;z-index:-1;background:url("/build/79bab3518bc79acd/assets/ink-heading.svg") center/100% 100% no-repeat;pointer-events:none}.equipment-heading>.btn{position:relative;z-index:1}

.health{position:relative;overflow:hidden}.health>.health-life{height:100%}.health>.health-shield{position:absolute;top:0;bottom:0;height:100%;background:#fff!important;box-shadow:inset 0 0 0 1px #dfe9ee}.shield-value{color:#fff;font-weight:700;white-space:nowrap}

.heroes-hub{max-width:850px;margin:auto}.heroes-hub header p{font:14px/1.5 "Segoe UI",sans-serif;color:#b9cbbd}.heroes-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.heroes-actions .btn{width:auto}.heroes-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hero-overview{min-width:0;text-align:center;padding:18px 12px;background:#102421ed;border:1px solid #88754b66}.hero-overview .hero-portrait{width:80px;height:88px;object-fit:contain;image-rendering:pixelated}.hero-overview h3{font:22px Georgia;margin:6px 0;color:#f1d4a1}.hero-overview>small{color:#b9cbbd}.hero-overview>.btn{display:flex;width:100%;justify-content:center;margin-top:8px;font-size:12px;min-height:36px}.hero-equipped{display:flex;justify-content:center;align-items:center;gap:6px;min-height:36px;margin:10px 0}.hero-equipped img{width:28px;height:28px;image-rendering:pixelated}.hero-equipped span{font:11px "Segoe UI",sans-serif;color:#9cb4aa}.heroes-locked{margin:24px 0}.heroes-locked summary{cursor:pointer;padding:12px;border-bottom:1px solid #88754b66}.heroes-locked p{font:13px/1.5 "Segoe UI",sans-serif}@media(max-width:700px){.heroes-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hero-overview{padding:14px 8px}.heroes-actions{display:grid;grid-template-columns:1fr 1fr}.heroes-actions .btn{font-size:12px;padding-inline:8px}}

.essence-detail{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 0;text-align:center}.essence-detail .lore-art{width:88px;height:88px;object-fit:contain}.essence-detail p{max-width:440px;font:15px/1.6 "Segoe UI",sans-serif}.essence-detail .small{font-size:12px;color:#b7cabc}@media(max-width:850px){.grimoire .lore-page{display:none}.grimoire{grid-template-columns:1fr}.grimoire .inventory-page{border-bottom:0}}

.reward-feedback{position:fixed;z-index:180;left:50%;top:42%;transform:translate(-50%,-50%);width:min(300px,calc(100vw - 32px));box-sizing:border-box;padding:22px 18px;text-align:center;background:linear-gradient(#19372ff5,#10251ff5);border:1px solid #d6b96f;box-shadow:0 0 35px #e4ba4844,0 8px 30px #0008;pointer-events:none;animation:reward-arrival 2.2s ease both}.reward-feedback>strong{display:block;color:#ffe1a7;font:20px Georgia;margin-top:10px}.reward-feedback-name{display:block;color:#e6eecf;font:15px Georgia;margin-top:7px}.reward-feedback-art{position:relative;width:76px;height:76px;margin:auto;display:grid;place-items:center}.reward-feedback-art>img{width:52px;height:52px;object-fit:contain;image-rendering:pixelated;position:relative;animation:reward-item .55s ease-out both;filter:drop-shadow(0 0 10px #f6cf6788)}.reward-feedback-ring{position:absolute;inset:0;border:2px solid #ffe3a1;border-radius:50%;animation:reward-ring .75s ease-out both}.reward-feedback-art>i{position:absolute;left:36px;top:36px;width:4px;height:4px;background:#ffe5a0;transform:rotate(calc(var(--spark)*45deg));animation:reward-spark .8s ease-out both}.reward-feedback-gains{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:14px}.reward-feedback-gains>span{display:flex;align-items:center;gap:5px;color:#bfe4ae;font:bold 16px Georgia}.reward-feedback-gains img{width:24px;height:24px;image-rendering:pixelated}@keyframes reward-arrival{0%{opacity:0;transform:translate(-50%,-45%) scale(.92)}15%,80%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-55%) scale(1)}}@keyframes reward-item{from{transform:scale(.65) rotate(-12deg)}to{transform:scale(1) rotate(0)}}@keyframes reward-ring{from{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.5)}}@keyframes reward-spark{from{opacity:1;transform:rotate(calc(var(--spark)*45deg)) translateX(12px)}to{opacity:0;transform:rotate(calc(var(--spark)*45deg)) translateX(62px)}}.reward-feedback.feedback-reduced,.feedback-reduced .reward-feedback-art>*{animation:none!important}.feedback-reduced .reward-feedback-ring,.feedback-reduced .reward-feedback-art>i{display:none}@media(prefers-reduced-motion:reduce){.reward-feedback,.reward-feedback-art>*{animation:none!important}.reward-feedback-ring,.reward-feedback-art>i{display:none}}

/* A stable portrait frame keeps readiness effects outside the hero artwork. */
.party-hud .hero-inspect{position:relative;isolation:isolate;box-sizing:border-box;border:1px solid #8f8057;border-radius:5px;background:linear-gradient(#172c29,#0b1c1d);box-shadow:inset 0 0 0 2px #071513;overflow:visible}
.party-hud .hero-inspect img{max-width:100%;max-height:100%}
.party-hud .hero-inspect::before{content:"";position:absolute;inset:-2px;pointer-events:none;border-radius:5px;background:linear-gradient(#d9bd7b,#d9bd7b) left top/9px 2px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) left top/2px 9px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) right top/9px 2px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) right top/2px 9px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) left bottom/9px 2px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) left bottom/2px 9px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) right bottom/9px 2px no-repeat,linear-gradient(#d9bd7b,#d9bd7b) right bottom/2px 9px no-repeat}
.party-hud .hero-inspect.ultimate-ready{border-color:#ffe5a1;animation:ult-ready-glow 1.8s ease-in-out infinite}
.party-hud .hero-inspect.ultimate-ready::after{content:"";position:absolute;inset:-7px;pointer-events:none;background:url("/build/79bab3518bc79acd/assets/ult-ready-lightning.svg") center/100% 100% no-repeat;filter:drop-shadow(0 0 3px #ffc74c);animation:ultimate-lightning 1.7s linear infinite;transform-origin:center}
@keyframes ultimate-lightning{0%,100%{opacity:.35;transform:scale(.96)}18%{opacity:1;transform:scale(1)}34%{opacity:.45;transform:scale(.98) rotate(3deg)}54%{opacity:.9;transform:scale(1.03) rotate(-3deg)}76%{opacity:.4;transform:scale(.98)}}
.reduce-motion .party-hud .hero-inspect.ultimate-ready{animation:none}.reduce-motion .party-hud .hero-inspect.ultimate-ready::after{animation:none;opacity:.65;filter:none}
@media(prefers-reduced-motion:reduce){.party-hud .hero-inspect.ultimate-ready,.party-hud .hero-inspect.ultimate-ready::after{animation:none}.party-hud .hero-inspect.ultimate-ready::after{opacity:.65;filter:none}}

.recruitment .recruit-line{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.recruitment .recruit-entry{min-width:0;padding:10px;background:linear-gradient(#15302df5,#0b1d1ef5);border:1px solid #8c79524d;border-radius:6px;display:grid;grid-template-columns:1fr 1fr;gap:8px;box-shadow:0 4px 12px #0003}
.recruitment .recruit-entry:has(.enlisted){border-color:#b7985d;background:linear-gradient(#26382df5,#102522f5)}
.recruitment .recruit{grid-column:1/-1;min-width:0;width:100%;border:0;background:transparent;box-shadow:none;padding:8px 0 12px}
.recruitment .recruit img{height:80px;width:80px;object-fit:contain}.recruitment .recruit strong{font-size:22px;margin-top:6px}.recruitment .recruit small{font:12px/1.5 "Segoe UI",sans-serif;color:#c4d1bd}.recruitment .recruit span{letter-spacing:0;margin:10px 0 0}.recruitment .recruit-assigned{font:12px "Segoe UI",sans-serif;color:#e8cd91}
.recruitment .recruit-learn{min-width:0;min-height:36px;padding:7px 3px;border:1px solid #667a6266;border-radius:3px;background:#20372e;color:#e2dfbc;font:12px "Segoe UI",sans-serif;text-decoration:none;cursor:pointer}.recruitment .recruit-learn:hover,.recruitment .recruit-learn:focus-visible{background:#354c38;border-color:#d6bd7b}
.departure.formation-next{position:sticky;bottom:12px;z-index:4;padding:16px 20px;background:#0e2523f5;border:1px solid #b2945b;box-shadow:0 6px 24px #0008;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;border-radius:5px}.formation-next>div{min-width:0}.formation-next strong{display:block;color:#f1d9a5;font:18px Georgia}.formation-next small{display:block;margin-top:5px;color:#c0ceba;font:12px/1.5 "Segoe UI",sans-serif}.departure.formation-next>.btn{align-self:center;flex-shrink:0;min-height:48px;font-size:17px;filter:drop-shadow(0 0 7px #f6bb4133)}
@media(max-width:700px){.recruitment .recruit-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recruitment .recruit-entry{padding:8px;gap:6px}.recruitment .recruit img{width:72px;height:76px}.recruitment .recruit-learn{font-size:11px}.departure.formation-next{flex-direction:column;align-items:stretch;padding:12px 18px;gap:10px;bottom:8px}.formation-next>div{text-align:center}.formation-next strong{font-size:17px}.departure.formation-next>.btn{align-self:center;min-height:48px;font-size:17px}.formation-next small{font-size:11px}}

/* Stack roster actions on narrow cards so equipment labels remain inside. */
.recruitment .recruit-learn{box-sizing:border-box;max-width:100%;white-space:normal;overflow-wrap:anywhere}
@media(max-width:450px){.recruitment .recruit-learn{grid-column:1/-1;width:100%;font-size:12px;min-height:36px;padding:8px}}

.topbar .essence-menu.active{outline:1px solid #e1c47c;background-color:#31463c}.topbar .resources{min-width:0;flex-wrap:nowrap}.topbar .essence-menu{flex-shrink:0}

@media(max-width:450px){.topbar .wordmark{display:none}.topbar .resources{margin-left:auto;gap:8px}.topbar .resources>.btn{min-width:30px;width:30px;height:34px;padding:3px}.topbar .resource{font-size:12px}.topbar .resource .currency-icon,.topbar .premium-resource>img{width:18px;height:18px}}

.heroes-actions>.btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;box-sizing:border-box;flex:1;min-width:0;font-size:14px;line-height:1.3;text-align:center}.heroes-actions>.btn span{min-width:0;white-space:normal}.hero-overview>.btn{min-height:42px}

.recruitment .recruit .recruit-call{box-sizing:border-box;width:100%;max-width:none;height:36px;min-height:36px;padding:7px 3px}

/* Compact brush headings leave room for the close control on mobile. */
.equipment-heading h2{min-width:0;overflow-wrap:break-word;line-height:1.18}
@media(max-width:700px){.modal>.equipment-heading.row.between:first-child{gap:8px}.equipment-heading h2{font-size:clamp(19px,5.5vw,25px);padding:8px 6px!important}.equipment-heading>.btn{margin:0;flex-shrink:0}}

.modal>.help-heading.row.between:first-child{padding-top:12px;padding-bottom:8px;margin-bottom:20px}.help-heading h2{padding-block:12px!important}

.scene-home .title-center{background:transparent}.scene-home .title-story{text-shadow:0 1px 3px #000,0 0 7px #0009}
