:root{color-scheme:dark;--bg: #06101a;--panel: rgba(15, 33, 49, .94);--panel-soft: rgba(20, 42, 62, .92);--panel-strong: rgba(11, 24, 37, .98);--line: rgba(215, 192, 138, .55);--line-soft: rgba(104, 142, 181, .35);--text: #f3f4f6;--muted: #b7c6d5;--accent: #e4c47a;--accent-soft: #33587c;--danger: #d26b6b;--shadow: 0 24px 70px rgba(0, 0, 0, .35)}@media (max-width: 820px){html:has(#game-shell .investigation-screen),body:has(#game-shell .investigation-screen),html:has(#game-shell .aftermath-dialogue-card),body:has(#game-shell .aftermath-dialogue-card){width:100%;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}body:has(#game-shell .investigation-screen),body:has(#game-shell .aftermath-dialogue-card){padding-block:0!important}#game-shell:has(.investigation-screen),#game-shell:has(.aftermath-dialogue-card),#game-shell:has(.investigation-screen) .app-shell,#game-shell:has(.aftermath-dialogue-card) .app-shell{width:100%;height:100dvh!important;min-height:0!important;max-height:100dvh!important;overflow:hidden!important}#game-shell .screen-frame.investigation-screen{display:grid!important;width:100%;height:100dvh!important;min-height:0!important;max-height:100dvh!important;padding:6px!important;place-items:stretch;overflow:hidden!important;scrollbar-width:none}#game-shell .screen-frame.investigation-screen::-webkit-scrollbar{display:none}#game-shell .investigation-panel{display:flex;flex-direction:column;width:100%;height:calc(100dvh - 12px)!important;min-height:0!important;max-height:calc(100dvh - 12px)!important;margin:0;padding:12px 12px max(10px,env(safe-area-inset-bottom));border-radius:20px;overflow:hidden!important}#game-shell .investigation-panel .section-title-row{flex:0 0 auto;gap:6px}#game-shell .investigation-panel .eyebrow{margin-bottom:3px;font-size:10px}#game-shell .investigation-panel .section-title-row h1{font-size:clamp(22px,6.8vw,29px);line-height:1.08}#game-shell .investigation-panel .section-title-row p:last-child{margin-top:6px;font-size:clamp(11px,3.2vw,13px);line-height:1.35}#game-shell .investigation-clue-grid{flex:1 1 auto;grid-template-rows:repeat(3,minmax(0,1fr));min-height:0;gap:6px;margin:8px 0}#game-shell .investigation-clue{min-height:0;padding:9px 12px;border-radius:14px;overflow:hidden}#game-shell .investigation-clue span{margin-bottom:3px;font-size:clamp(12px,3.3vw,14px);line-height:1.25}#game-shell .investigation-clue strong{margin-bottom:5px;font-size:clamp(17px,4.6vw,20px);line-height:1.22}#game-shell .investigation-clue p{display:-webkit-box;overflow:hidden;font-size:clamp(14px,3.8vw,16px);line-height:1.38;-webkit-box-orient:vertical;-webkit-line-clamp:3}#game-shell .investigation-actions{flex:0 0 auto}#game-shell .investigation-actions button{min-height:38px;padding:7px 12px;font-size:13px}#game-shell .screen-frame.story-screen:has(>.aftermath-dialogue-card),#game-shell .story-card.aftermath-dialogue-card{width:100%;height:100dvh!important;min-height:0!important;max-height:100dvh!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important;overflow:hidden!important}#game-shell .aftermath-dialogue-card>.story-meta{flex:0 0 auto}#game-shell .aftermath-dialogue-card>.story-meta h2{margin-block:3px 0;font-size:clamp(21px,6vw,30px);line-height:1.12}#game-shell .aftermath-dialogue-card>.story-line.visual-dialogue-box{max-height:none!important;margin-bottom:max(36px,env(safe-area-inset-bottom))!important;padding:22px 14px 10px!important;overflow:visible!important}#game-shell .aftermath-dialogue-card .dialogue-standing-layer{bottom:max(0px,calc(var(--aftermath-dialogue-offset, 190px) - 12px))!important}#game-shell .aftermath-dialogue-card .dialogue-standing{bottom:0;width:min(78vw,390px);height:min(58dvh,540px);max-width:82%;max-height:100%;object-position:center bottom}#game-shell .aftermath-dialogue-card .visual-dialogue-box .story-line-copy>p{min-height:0;max-height:none!important;margin-top:2px;overflow:hidden!important;font-size:clamp(13px,2.15dvh,17px);line-height:1.4}#game-shell .aftermath-dialogue-card .visual-dialogue-box .dialogue-navigation{margin-top:7px;gap:6px}#game-shell .aftermath-dialogue-card .dialogue-navigation button{min-height:38px;padding:7px 10px;font-size:13px}}@media (max-width: 820px){html,body{height:auto!important;min-height:100%!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important}body{padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}#app,#game-shell,#game-shell .app-shell,#game-shell .screen-frame,#game-shell .camp-screen,#game-shell .battle-screen,#game-shell .content-scroll,#game-shell .camp-content,#game-shell .battle-stage{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#game-shell,#game-shell .app-shell,#game-shell .screen-frame{min-height:100dvh!important}#game-shell .content-scroll,#game-shell .screen-frame{padding-bottom:max(20px,env(safe-area-inset-bottom))!important}#game-shell .modal-backdrop,#game-shell .battle-confirm-backdrop,#game-shell .skill-order-modal-backdrop{align-items:flex-start!important;overflow-y:auto!important;padding-top:max(12px,env(safe-area-inset-top))!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important}#game-shell .modal-window,#game-shell .battle-confirm-dialog,#game-shell .skill-order-modal{max-height:none!important;margin-block:auto!important}#game-shell .utility-card,#game-shell .story-card:not(.visual-dialogue-card),#game-shell .recruitment-card,#game-shell .investigation-card{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#game-shell .screen-frame.story-screen{display:block!important;height:100dvh!important;min-height:100dvh!important;padding:0!important;overflow:hidden!important}#game-shell .story-card.has-story-background:not(.visual-dialogue-card){width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;overflow:hidden!important}#game-shell .story-card.has-story-background .story-overlay-content{height:100%!important;min-height:0!important;padding-top:max(12px,env(safe-area-inset-top))!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important}#game-shell .story-card.has-story-background .story-meta{flex:0 0 auto;margin-top:0!important}#game-shell .story-card.has-story-background .story-line.visual-dialogue-box{max-height:none!important;overflow:visible!important}#game-shell .story-card.has-story-background .visual-dialogue-box .story-line-copy>p{max-height:18dvh;overflow-x:hidden!important;overflow-y:auto!important;overflow-wrap:anywhere;overscroll-behavior:contain}#game-shell .next-label-desktop{display:none}#game-shell .next-label-mobile{display:inline!important}#game-shell .battle-trajectory :is(.battle-vfx-object-svg,.battle-vfx-object-image){scale:.78;transform-origin:left center}#game-shell .battle-cast-anchor,#game-shell .battle-impact-anchor{width:100px;height:100px}#game-shell .battle-impact-anchor{--impact-image-size: 116px !important}#game-shell .party-card .battle-floating-numbers{top:12%!important}#game-shell .party-card .battle-floating-numbers strong{font-size:24px!important}}.next-label-mobile{display:none}@media (max-width: 820px){html:has(#game-shell>.cinematic-screen),body:has(#game-shell>.cinematic-screen){width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;padding:0!important;overflow:hidden!important;scrollbar-width:none!important}html:has(#game-shell>.cinematic-screen)::-webkit-scrollbar,body:has(#game-shell>.cinematic-screen)::-webkit-scrollbar,#game-shell:has(>.cinematic-screen)::-webkit-scrollbar,#game-shell>.cinematic-screen::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}#game-shell:has(>.cinematic-screen){display:block!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;padding:0!important;overflow:hidden!important}#game-shell>.screen-frame.cinematic-screen{position:relative!important;display:block!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;padding:0!important;overflow:hidden!important}#game-shell>.cinematic-screen .cinematic-chapter-mark{top:max(14px,env(safe-area-inset-top))!important;left:16px!important;max-width:calc(100% - 132px)}#game-shell>.cinematic-screen .cinematic-chapter-mark strong{font-size:clamp(22px,7vw,30px);line-height:1.15}#game-shell>.cinematic-screen .cinematic-skip{top:max(14px,env(safe-area-inset-top))!important;right:14px!important}#game-shell>.cinematic-screen .cinematic-caption{bottom:max(14px,env(safe-area-inset-bottom))!important;width:calc(100% - 28px)!important}#game-shell>.cinematic-screen .cinematic-caption p{margin:6px 0 12px!important;font-size:clamp(16px,4.8vw,22px)!important;line-height:1.45!important}}@media (max-width: 820px){html,body{height:auto!important;min-height:100%!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto}body{padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}#app,#game-shell,#game-shell .app-shell,#game-shell .screen-frame,#game-shell .camp-screen,#game-shell .battle-screen{height:auto!important;min-height:100dvh!important;max-height:none!important;overflow:visible!important}#game-shell .content-scroll,#game-shell .camp-content,#game-shell .battle-stage{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#game-shell .content-scroll,#game-shell .screen-frame{padding-bottom:max(20px,env(safe-area-inset-bottom))!important}#game-shell button,#game-shell [tabindex]{scroll-margin-block:16px}#game-shell .modal-backdrop,#game-shell .battle-confirm-backdrop,#game-shell .skill-order-modal-backdrop{align-items:flex-start!important;overflow-x:hidden!important;overflow-y:auto!important;padding-top:max(12px,env(safe-area-inset-top))!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important}#game-shell .modal-window,#game-shell .battle-confirm-dialog,#game-shell .skill-order-modal{max-height:none!important;margin:auto 0!important;overflow:visible!important}.legendary-forge-grid{grid-template-columns:1fr!important}.legendary-forge-card{grid-template-columns:auto minmax(0,1fr)!important}.legendary-forge-card>button{grid-column:1 / -1}}.legendary-forge{margin-top:18px}.legendary-forge-wallet{display:flex;flex-wrap:wrap;gap:8px 16px;color:#f5cf62}.legendary-forge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.legendary-forge-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(245,207,98,.35);border-radius:14px;background:rgba(8,27,43,.72)}.legendary-forge-card>div{display:grid;gap:3px;min-width:0}.legendary-forge-card>div>strong{color:#f5cf62}.legendary-forge-card.is-owned{opacity:.68}.cinematic-screen{position:relative;min-height:100vh;overflow:hidden;padding:0;background:#02060d;isolation:isolate}.cinematic-backdrop{position:absolute;top:-3%;right:-3%;bottom:-3%;left:-3%;z-index:-3;background:var(--cinematic-image) center / cover no-repeat;animation:cinematic-camera 2.9s cubic-bezier(.2,.7,.2,1) both}.cinematic-tone-awakening .cinematic-backdrop{animation:cinematic-zoom 4.2s ease-out both}.cinematic-tone-corruption .cinematic-backdrop{animation:cinematic-shake 3.8s ease-in-out both}.story-auto-toggle{margin-left:auto}@keyframes cinematic-zoom{0%{transform:scale(1.08);filter:brightness(.72)}to{transform:scale(1.01);filter:brightness(1)}}@keyframes cinematic-shake{0%,to{transform:scale(1.04) translate(0)}35%{transform:scale(1.05) translate(-3px,1px)}65%{transform:scale(1.05) translate(3px,-1px)}}.cinematic-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,rgba(0,4,12,.36),transparent 30%,transparent 58%,rgba(0,3,10,.92)),radial-gradient(circle,transparent 28%,rgba(0,2,8,.5) 100%)}.cinematic-light-burst{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;opacity:0;pointer-events:none}.cinematic-tone-awakening .cinematic-light-burst{background:radial-gradient(circle at 50% 43%,rgba(255,248,194,.82),rgba(255,187,57,.12) 30%,transparent 55%);animation:cinematic-flash 1.25s ease-out both}.cinematic-tone-corruption .cinematic-light-burst{background:radial-gradient(circle at 50% 45%,rgba(143,71,255,.48),rgba(15,3,35,.16) 34%,transparent 62%);animation:cinematic-corrupt-pulse 1.15s ease-out both}.cinematic-chapter-mark{position:absolute;top:clamp(24px,5vh,64px);left:clamp(24px,6vw,96px);display:grid;gap:5px;color:#f9edd0;text-shadow:0 3px 18px #000;animation:cinematic-mark-in .7s .2s both}.cinematic-chapter-mark span,.cinematic-caption>span{color:#dfb75b;font-size:13px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.cinematic-chapter-mark strong{font-size:clamp(22px,3vw,40px)}.cinematic-skip{position:absolute;top:clamp(22px,5vh,58px);right:clamp(20px,4vw,64px);padding:9px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#ffffffd1;background:rgba(3,9,18,.52);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer}.cinematic-skip kbd{margin-left:5px;color:#e6c36e;font:inherit;font-size:11px}.cinematic-caption{position:absolute;left:50%;bottom:clamp(28px,7vh,84px);width:min(880px,calc(100% - 40px));transform:translate(-50%);color:#fff;text-align:center;text-shadow:0 3px 18px #000,0 1px 4px #000;animation:cinematic-caption-in .75s .25s both}.cinematic-caption p{margin:10px 0 22px;font-size:clamp(18px,2.1vw,30px);font-weight:700;line-height:1.55}.cinematic-progress{display:grid;grid-template-columns:repeat(var(--frame-count, 3),1fr);gap:7px;width:min(360px,65vw);margin:auto}.cinematic-progress i{height:3px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.25)}.cinematic-progress i.is-complete{background:#dcb65a}.cinematic-progress i.is-current:after{content:"";display:block;width:100%;height:100%;background:#f6db89;transform-origin:left;animation:cinematic-progress var(--frame-duration) linear both}.cinematic-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.cinematic-particles i{position:absolute;bottom:-8%;width:3px;height:3px;border-radius:50%;background:#f7d879;box-shadow:0 0 10px #f4c85d;animation:cinematic-particle 3.8s linear infinite}.cinematic-particles i:nth-child(1){left:12%;animation-delay:-.4s}.cinematic-particles i:nth-child(2){left:25%;animation-delay:-2.2s}.cinematic-particles i:nth-child(3){left:38%;animation-delay:-1.1s}.cinematic-particles i:nth-child(4){left:48%;animation-delay:-3s}.cinematic-particles i:nth-child(5){left:61%;animation-delay:-.8s}.cinematic-particles i:nth-child(6){left:73%;animation-delay:-2.6s}.cinematic-particles i:nth-child(7){left:84%;animation-delay:-1.7s}.cinematic-particles i:nth-child(8){left:92%;animation-delay:-3.4s}.cinematic-tone-corruption .cinematic-particles i{background:#a268ff;box-shadow:0 0 11px #6f2bea}@keyframes cinematic-camera{0%{transform:scale(1.08);filter:brightness(.68)}to{transform:scale(1);filter:brightness(1)}}@keyframes cinematic-caption-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@keyframes cinematic-mark-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cinematic-flash{0%{opacity:0}16%{opacity:.85}to{opacity:0}}@keyframes cinematic-corrupt-pulse{0%{opacity:.9;filter:saturate(2)}to{opacity:0;filter:saturate(1)}}@keyframes cinematic-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.investigation-screen{position:relative;min-height:100vh;overflow:hidden;padding:clamp(20px,4vw,56px);display:grid;place-items:center}.investigation-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(5,16,27,.35),rgba(5,16,27,.94)),var(--investigation-image) center/cover;filter:saturate(.78);transform:scale(1.03)}.investigation-panel{position:relative;z-index:1;width:min(1100px,100%);padding:clamp(22px,4vw,44px);border:1px solid rgba(110,169,201,.42);border-radius:28px;background:rgba(7,24,38,.91);box-shadow:0 24px 80px #0000007a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.investigation-clue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.investigation-clue{min-height:220px;padding:22px;border:1px solid #31536b;border-radius:20px;color:#dceaf3;background:linear-gradient(145deg,#102b40,#091b2a);text-align:left;cursor:pointer;transition:transform .18s,border-color .18s}.investigation-clue:hover{transform:translateY(-3px);border-color:#78b9dc}.investigation-clue.is-found{border-color:#4bc47c;background:linear-gradient(145deg,#123b39,#0b252e)}.investigation-clue span{display:block;margin-bottom:18px;color:#8fc9e8;font-size:.82rem;letter-spacing:.08em}.investigation-clue strong{display:block;margin-bottom:12px;font-size:1.12rem}.investigation-clue p{margin:0;line-height:1.65;color:#b9cbd6}.investigation-actions{display:flex;justify-content:flex-end;gap:12px}@media (max-width: 760px){.screen-frame.investigation-screen{display:block;width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;padding:12px;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92);-webkit-overflow-scrolling:touch;touch-action:pan-y}.investigation-screen::-webkit-scrollbar{width:8px}.investigation-screen::-webkit-scrollbar-track{background:rgba(7,20,31,.92);border-radius:999px}.investigation-screen::-webkit-scrollbar-thumb{min-height:42px;border:2px solid rgba(7,20,31,.92);border-radius:999px;background:rgba(228,196,122,.86)}.investigation-backdrop{position:fixed;transform:none}.investigation-panel{width:100%;margin:0 auto;padding:16px 14px max(16px,env(safe-area-inset-bottom));border-radius:22px}.investigation-panel .section-title-row{gap:8px}.investigation-panel .eyebrow{margin-bottom:5px;font-size:12px}.investigation-panel .section-title-row h1{margin:0;font-size:clamp(25px,7.5vw,32px);line-height:1.18}.investigation-panel .section-title-row p:last-child{margin:10px 0 0;font-size:14px;line-height:1.55}.investigation-panel .section-title-row>strong{flex:none;font-size:15px}.investigation-clue-grid{grid-template-columns:1fr;gap:10px;margin:14px 0}.investigation-clue{min-height:116px;padding:14px 16px;border-radius:16px}.investigation-clue span{margin-bottom:8px;font-size:12px}.investigation-clue strong{margin-bottom:6px;font-size:16px}.investigation-clue p{font-size:13px;line-height:1.5}.investigation-actions{gap:8px}.investigation-actions button{min-height:44px;padding:9px 14px}}@keyframes cinematic-particle{0%{transform:translateY(0) scale(.7);opacity:0}20%{opacity:1}to{transform:translateY(-105vh) scale(1.4);opacity:0}}@media (max-width: 720px){.cinematic-backdrop{background-position:50% center}.cinematic-chapter-mark{top:22px;left:20px}.cinematic-skip{top:20px;right:16px;font-size:12px}.cinematic-skip kbd{display:none}.cinematic-caption{bottom:34px}}html.cursor-hidden,html.cursor-hidden *{cursor:none!important}@media (max-width: 1080px){#game-shell:has(>.screen-frame.camp-layout){display:block;height:100dvh;min-height:0;padding:12px;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92);-webkit-overflow-scrolling:touch}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar,.codex-panel .codex-scroll::-webkit-scrollbar,.shop-catalog-grid::-webkit-scrollbar,.utility-card::-webkit-scrollbar,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar,.recruitment-card::-webkit-scrollbar,.skill-order-modal-list::-webkit-scrollbar{width:8px;height:8px}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar-track,.codex-panel .codex-scroll::-webkit-scrollbar-track,.shop-catalog-grid::-webkit-scrollbar-track,.utility-card::-webkit-scrollbar-track,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar-track,.recruitment-card::-webkit-scrollbar-track,.skill-order-modal-list::-webkit-scrollbar-track{background:rgba(7,20,31,.92);border-radius:999px}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar-thumb,.codex-panel .codex-scroll::-webkit-scrollbar-thumb,.shop-catalog-grid::-webkit-scrollbar-thumb,.utility-card::-webkit-scrollbar-thumb,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar-thumb,.recruitment-card::-webkit-scrollbar-thumb,.skill-order-modal-list::-webkit-scrollbar-thumb{min-height:42px;border:2px solid rgba(7,20,31,.92);border-radius:999px;background:rgba(228,196,122,.86)}.screen-frame.camp-layout,.screen-frame.camp-layout.is-sidebar-collapsed{width:100%;height:auto;min-height:calc(100dvh - 24px);grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;overflow:visible}.camp-layout .sidebar-panel{min-height:0;max-height:none;padding:16px;overflow:visible;border-right:0;border-bottom:1px solid var(--line-soft);border-radius:28px 28px 0 0}.camp-layout .content-panel{min-width:0;min-height:0;overflow:visible}.camp-layout .content-scroll,.camp-layout .content-scroll-camp{height:auto;max-height:none;padding-right:4px;overflow:visible}.camp-layout .camp-status-bar{top:-1px}.camp-layout .codex-panel .codex-scroll,.camp-layout .shop-catalog-grid{max-height:none;padding-right:0;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}}@media (max-width: 720px){#game-shell:has(>.screen-frame.camp-layout){padding:6px}.screen-frame.camp-layout,.screen-frame.camp-layout.is-sidebar-collapsed{min-height:calc(100dvh - 12px);border-radius:18px}.camp-layout .sidebar-panel,.camp-layout.is-sidebar-collapsed .sidebar-panel{padding:12px;border-radius:18px 18px 0 0}.camp-layout .content-panel{padding:14px 12px 18px}.camp-layout.is-sidebar-collapsed .sidebar-toggle{margin-bottom:0}.camp-layout.is-sidebar-collapsed .camp-next-action,.camp-layout.is-sidebar-collapsed .menu-stack,.camp-layout.is-sidebar-collapsed .memo-card{display:none}.camp-layout .menu-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.camp-layout .menu-icon-button{min-height:64px;padding:8px 4px;font-size:12px}.camp-layout .camp-next-action{min-height:68px;margin-block:10px 12px}.camp-status-bar{flex-wrap:wrap}.camp-status-title{flex-basis:100%}.dialogue-navigation{flex-wrap:wrap}.dialogue-navigation>.primary-button,.dialogue-navigation>.secondary-button{width:auto;min-width:120px;min-height:48px;flex:1 1 120px}.utility-card,.story-card:not(.visual-dialogue-card),.recruitment-card,.skill-order-modal-list{scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92)}.tab-grid,.slot-grid,.skill-grid,.save-grid,.item-grid{min-width:0}button,[role=button],select,input{touch-action:manipulation}}@media (prefers-reduced-motion: reduce){.cinematic-backdrop,.cinematic-light-burst,.cinematic-chapter-mark,.cinematic-caption,.cinematic-particles i{animation:none!important}.cinematic-progress i.is-current:after{animation-duration:1ms}}.cinematic-library-count{padding:8px 13px;border:1px solid rgba(218,181,91,.38);border-radius:999px;color:#e9c972;background:rgba(218,181,91,.08);font-weight:800;white-space:nowrap}.cinematic-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));gap:18px}.cinematic-library-card{overflow:hidden;padding:0;border-color:#d6b15657}.cinematic-library-thumbnail{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#040914}.cinematic-library-thumbnail:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 45%,rgba(2,6,14,.86))}.cinematic-library-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.cinematic-library-card.is-unlocked:hover .cinematic-library-thumbnail img{transform:scale(1.035)}.cinematic-library-card.is-locked .cinematic-library-thumbnail img{filter:grayscale(1) brightness(.2) blur(2px)}.cinematic-library-thumbnail span{position:absolute;right:14px;bottom:12px;z-index:1;padding:5px 9px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#f5df9f;background:rgba(2,7,15,.72);font-size:12px;font-weight:800}.cinematic-library-copy{display:grid;gap:8px;padding:18px}.cinematic-library-copy small{color:#d3aa4e;font-weight:800;letter-spacing:.08em}.cinematic-library-copy h3,.cinematic-library-copy p{margin:0}.cinematic-library-copy p{min-height:3em;color:var(--text-muted);line-height:1.55}.cinematic-library-copy .primary-button{justify-self:start;min-width:132px;margin-top:6px}.battle-item-section{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(160,190,218,.18)}.battle-item-section h4{margin:0;color:#ead28b}.battle-item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.battle-item-button{min-height:54px}.battle-item-icon img{width:34px;height:34px;object-fit:contain}.boss-telegraph-badge,.boss-phase-badge{display:block;padding:4px 7px;border-radius:6px;font-size:11px;font-weight:900}.boss-telegraph-badge{color:#ffe0d3;background:rgba(178,42,31,.78);animation:boss-warning-pulse .8s ease-in-out infinite alternate}.boss-phase-badge{color:#e5c6ff;background:rgba(87,41,127,.72)}.equipment-unique-effect{color:#f2d477!important;font-weight:800}.audio-settings-box{display:grid;gap:14px;padding:18px;border:1px solid rgba(150,184,214,.24);border-radius:14px;background:rgba(4,13,24,.42)}.audio-settings-box label{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:center}.audio-settings-box input[type=range]{width:100%;accent-color:#d8b353}@keyframes boss-warning-pulse{0%{box-shadow:0 0 #ff574000}to{box-shadow:0 0 16px #ff574099}}@media (max-width: 720px){.cinematic-library-section .section-title-row{align-items:flex-start;gap:12px}.cinematic-library-grid,.battle-item-grid{grid-template-columns:1fr}.audio-settings-box label{grid-template-columns:1fr;gap:6px}}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overflow-x:hidden}body{min-height:100vh;background:radial-gradient(circle at top,rgba(255,214,154,.14),transparent 28%),linear-gradient(180deg,#0b1621,#05080d);color:var(--text);font-family:Pretendard,Malgun Gothic,Apple SD Gothic Neo,sans-serif}button,input,textarea,select{font:inherit}#game-shell{width:100%;max-width:100vw;height:100dvh;min-height:0;display:flex;justify-content:center;padding:24px}.screen-frame{width:min(1280px,100%);max-width:100%;height:calc(100dvh - 48px);min-height:0;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,rgba(20,35,53,.95),rgba(8,18,29,.98));box-shadow:var(--shadow);overflow:visible}.screen-frame.camp-layout{width:min(1760px,100%)}.title-screen,.story-screen,.utility-screen{display:grid;place-items:center;padding:28px}.title-card,.story-card,.utility-card{width:min(760px,100%);background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:inset 0 1px #ffffff0a;max-height:calc(100dvh - 56px);overflow-y:auto}.title-key-art{width:100%;max-height:360px;margin-bottom:22px;border:1px solid var(--line);border-radius:18px;object-fit:cover;object-position:center 28%}.story-key-item-art{float:right;width:min(220px,38%);max-height:300px;margin:0 0 18px 22px;border:1px solid var(--line);border-radius:16px;object-fit:cover}.story-antagonist-art{width:100%;max-height:320px;margin-bottom:20px;border:1px solid var(--line);border-radius:16px;object-fit:cover;object-position:center 24%}.utility-card.wide{width:min(1040px,100%)}.eyebrow{margin:0 0 8px;color:var(--accent);font-size:14px;letter-spacing:.12em;text-transform:uppercase}.title-card h1,.story-card h2,.utility-card h2,.content-section h2,.sidebar-head h1,.battle-stage h2{margin:0;font-size:clamp(32px,4vw,48px);line-height:1.05}.title-copy,.story-line p,.utility-head p,.section-title-row p,.muted{color:var(--muted)}.title-actions,.utility-actions,.story-actions,.inventory-actions,.battle-mode-toggle{display:flex;flex-wrap:wrap;gap:12px}.primary-button,.secondary-button,.ghost-button,.menu-button,.tab-button,.skill-button,.item-card,.save-card,.battle-card{border:1px solid transparent;border-radius:16px;background:var(--panel-soft);color:var(--text);transition:.18s ease}.battle-card.is-last-target{outline:2px solid #ffd166;outline-offset:-3px}.battle-skill-grid kbd{margin-left:auto;padding:2px 6px;border:1px solid rgba(228,196,122,.45);border-radius:5px;color:#e4c47a;background:rgba(3,10,17,.75);font:inherit;font-size:.72rem}.primary-button,.secondary-button,.ghost-button,.menu-button,.tab-button{padding:12px 16px;cursor:pointer}.primary-button{background:linear-gradient(180deg,#40698f,#2d5378);border-color:#e4c47a99}.secondary-button,.menu-button,.tab-button,.skill-button,.item-card,.save-card,.battle-card{background:rgba(23,49,73,.96);border-color:var(--line-soft)}.ghost-button{background:transparent;border-color:var(--line-soft)}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.menu-button:hover,.tab-button:hover,.skill-button:hover,.item-card:hover,.save-card:hover,.battle-card.is-targetable:hover{transform:translateY(-1px);border-color:var(--line);background:rgba(44,76,108,.98)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}.camp-layout{display:grid;grid-template-columns:272px minmax(0,1fr);position:relative;transition:grid-template-columns .18s ease}.sidebar-panel{padding:20px 16px;border-right:1px solid var(--line-soft);background:linear-gradient(180deg,rgba(14,29,43,.98),rgba(9,18,28,.98));border-top-left-radius:28px;border-bottom-left-radius:28px;min-height:0;overflow-y:auto}.sidebar-toggle{width:100%;min-height:38px;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:12px;padding:7px 10px;border-color:#688eb53d;background:rgba(12,27,40,.72);color:var(--muted);font-size:12px}.camp-layout.is-sidebar-collapsed{grid-template-columns:84px minmax(0,1fr)}.camp-layout.is-sidebar-collapsed .sidebar-panel{padding-inline:10px}.camp-layout.is-sidebar-collapsed .sidebar-toggle{justify-content:center;padding-inline:4px}.camp-layout.is-sidebar-collapsed .sidebar-toggle strong,.camp-layout.is-sidebar-collapsed .memo-card,.camp-layout.is-sidebar-collapsed .camp-next-action,.camp-layout.is-sidebar-collapsed .menu-icon-button>span:last-child{display:none}.camp-layout.is-sidebar-collapsed .menu-stack{grid-template-columns:1fr;gap:7px}.camp-layout.is-sidebar-collapsed .menu-icon-button{min-height:56px;padding:7px 3px}.camp-layout.is-sidebar-collapsed .menu-symbol{width:34px;height:34px}.sidebar-head p,.memo-card span,.memo-card strong{margin:0}.sidebar-head{display:grid;gap:8px}.camp-layout .sidebar-head{display:none}.memo-card,.info-card,.battle-action-panel,.battle-log{background:var(--panel);border:1px solid var(--line-soft);border-radius:20px;padding:18px}.memo-card{display:grid;gap:8px;margin:20px 0 24px}.camp-next-action{width:100%;min-height:76px;margin:14px 0 18px;display:grid;gap:5px;align-content:center;justify-items:start;text-align:left}.camp-next-action span{color:#ffe08a;font-size:.86rem;font-weight:800;opacity:1;text-shadow:0 0 12px rgba(255,208,92,.38)}.camp-next-action strong{font-size:1.05rem}.menu-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.menu-icon-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:76px;padding:10px 5px;text-align:center;font-size:13px;font-weight:700;line-height:1.2}.menu-symbol{display:grid;place-items:center;width:30px;height:30px;color:var(--accent);font-size:25px;line-height:1}.menu-button.is-active,.tab-button.is-active,.secondary-button.is-active,.ghost-button.is-active,.save-card.is-active{background:linear-gradient(180deg,#476f96,#36587b);border-color:var(--line)}.content-panel{min-height:0;padding:clamp(16px,1.5vw,24px);overflow:hidden;display:flex;flex-direction:column}.camp-status-bar{position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:flex-start;gap:10px;margin-bottom:14px;padding:4px 0 10px;background:linear-gradient(180deg,rgba(10,21,33,.98),rgba(10,21,33,.82) 72%,rgba(10,21,33,0))}.camp-status-title{font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-.03em;color:var(--text);margin-right:auto}.camp-status-chip{display:inline-grid;gap:2px;min-width:170px;padding:10px 14px;border-radius:16px;border:1px solid rgba(104,142,181,.32);background:rgba(12,27,40,.92);box-shadow:inset 0 1px #ffffff0a;text-align:right}.camp-status-chip strong{color:var(--accent);font-size:12px;letter-spacing:.04em}.camp-status-chip span{color:var(--text);font-size:15px;font-weight:700}.camp-status-gold strong{color:#ffd46f}.camp-status-gold span,.shop-card-price{color:#ffd45f!important;font-weight:900!important;text-shadow:0 1px 8px rgba(255,191,59,.18)}.mobile-auto-equip-button{display:none}.content-scroll-camp{height:auto;max-height:none;flex:1;min-height:0}.content-scroll-camp.jobs-scroll{overflow-y:scroll;scrollbar-gutter:stable;scrollbar-color:rgba(228,196,122,.78) rgba(8,19,29,.72)}.content-scroll-camp.jobs-scroll::-webkit-scrollbar-thumb{background:rgba(228,196,122,.78)}.camp-action-message{margin:0 0 14px;padding:12px 16px;border:1px solid rgba(238,184,91,.55);border-radius:12px;color:#ffe0a0;background:rgba(83,42,24,.92)}.content-scroll{height:calc(100vh - 96px);max-height:860px;overflow-y:auto;overflow-x:visible;padding-right:10px;padding-left:6px}.content-scroll-camp>.content-section>.section-title-row h2{display:none}.dialogue-navigation{display:flex;align-items:center;justify-content:flex-end;gap:10px}.dialogue-navigation>.primary-button,.dialogue-navigation>.secondary-button{display:inline-flex;align-items:center;justify-content:center;width:148px;min-height:60px;margin:0;padding:12px 16px;line-height:1.25}.shop-tooltip-host{display:grid;place-items:center;width:56px;height:56px;min-height:56px;padding:0;border:0;border-radius:12px;background:transparent;cursor:help;box-shadow:none;overflow:visible}.shop-tooltip-host:hover,.shop-tooltip-host:focus-visible{transform:none;background:transparent;outline:0}.shop-tooltip-host .icon-chip{width:56px;height:56px;border-width:1px!important}.shop-tooltip-host:hover .icon-chip,.shop-tooltip-host:focus-visible .icon-chip{outline:2px solid rgba(228,196,122,.72);outline-offset:2px}.auto-equip-message{margin:0 0 10px;color:#9fe2b4;font-size:13px}.training-grid,.world-codex-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.training-card,.world-entry-list,.world-entry-list article{display:grid;gap:9px}.training-card p,.world-entry-list p{margin:0;color:var(--muted);line-height:1.55}.training-card.is-locked{opacity:.58}.world-codex-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.recruitment-screen{display:grid;place-items:center;padding:24px;overflow:hidden}.recruitment-card{width:min(1180px,100%);max-height:calc(100dvh - 96px);display:grid;gap:20px;padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--panel);overflow-y:auto}.recruitment-card h1,.recruitment-card h2,.recruitment-card p{margin:0}.recruitment-list article{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:start;gap:26px}.recruitment-list img{width:180px;height:230px;border-radius:18px;object-fit:cover;object-position:top}.recruitment-portrait{display:grid;gap:10px;text-align:center}.recruitment-portrait span,.recruitment-origin{color:var(--muted);font-size:13px;font-weight:700}.recruitment-story{display:grid;gap:9px}.recruitment-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:4px}.recruitment-story-grid section{padding:13px 14px;border:1px solid rgba(104,142,181,.2);border-radius:14px;background:rgba(8,22,34,.72)}.recruitment-story-grid section>strong{color:var(--accent);font-size:13px}.recruitment-story-grid p{margin-top:7px;color:var(--muted);font-size:13px;line-height:1.65}.recruitment-story blockquote{margin:3px 0;padding:11px 14px;border-left:3px solid var(--accent);background:rgba(238,184,91,.08);color:#ffe0a0;font-weight:700}.content-scroll::-webkit-scrollbar{width:10px}.content-scroll::-webkit-scrollbar-thumb{background:rgba(82,122,160,.7);border-radius:999px}.content-section{display:grid;gap:18px}.section-title-row h2,.sidebar-head h1,.battle-stage h2{font-size:clamp(30px,3vw,42px)}.section-title-row p{margin:8px 0 0}.tab-grid,.slot-grid,.skill-grid,.save-grid,.item-grid{display:grid;gap:12px}.tab-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}.party-section>.section-title-row{display:none}.stat-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 14px;margin-top:0;padding-top:2px}.compact-stat-chip{min-height:auto;padding:4px 0;gap:8px;align-items:center;background:transparent;border:none;border-radius:0}.compact-stat-chip .icon-chip{width:26px;height:26px}.stat-chip-copy{display:grid;gap:2px;min-width:0}.stat-chip-label{color:var(--muted);font-size:10px;font-weight:700;line-height:1}.stat-chip-value{color:var(--text);font-size:14px;line-height:1.1;letter-spacing:-.02em}.battle-forfeit-button{border-color:#d26b6b61;color:#ffd1d1}.stat-chip,.equipment-row,.set-box,.progress-list div,.skill-pill,.inventory-summary,.battle-turn-head,.detail-meta div,.candidate-main{display:flex;align-items:center;gap:12px}.stat-chip,.equipment-row,.set-box{min-height:52px;padding:10px 12px;background:rgba(12,27,40,.75);border:1px solid rgba(104,142,181,.18);border-radius:14px}.equipment-list,.list-stack,.battle-notes{display:grid;gap:10px}.equipment-row{justify-content:space-between}.equipment-label{color:var(--muted);min-width:56px}.equipment-value{display:flex;align-items:center;gap:10px}.skill-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.skill-pill,.skill-button,.item-card,.save-card{padding:12px}.skill-pill{width:100%;text-align:left;position:relative;background:rgba(12,27,40,.78);border:1px solid rgba(104,142,181,.18);border-radius:14px;cursor:default;overflow:visible}.skill-tooltip{position:absolute;left:12px;right:12px;bottom:calc(100% + 10px);z-index:10;display:grid;gap:6px;padding:12px 14px;border-radius:14px;background:rgba(6,16,26,.98);border:1px solid rgba(228,196,122,.48);box-shadow:0 14px 30px #00000047;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease}.skill-tooltip strong{color:var(--text)}.skill-tooltip p,.skill-tooltip span{margin:0;color:var(--muted);line-height:1.45}.skill-pill:hover .skill-tooltip{opacity:1;transform:translateY(0)}.mannequin-slot,.candidate-row,.equip-icon-card,.equip-icon-display{position:relative}.item-tooltip-trigger{display:inline-grid;place-items:center;position:relative;border-radius:12px;outline:none}.item-tooltip-trigger:focus-visible{box-shadow:0 0 0 2px #84c8ef}.equipment-tooltip{position:absolute;left:50%;right:auto;width:min(320px,calc(100vw - 40px));min-width:260px;max-width:calc(100vw - 40px);bottom:calc(100% + 10px);z-index:40;display:grid;gap:8px;padding:14px 16px;border-radius:14px;background:rgba(6,16,26,.98);border:1px solid rgba(228,196,122,.48);box-shadow:0 14px 30px #00000047;opacity:0;pointer-events:none;transform:translate(-50%,6px);transition:opacity .16s ease,transform .16s ease;word-break:keep-all;overflow-wrap:break-word}.has-floating-tooltip>.equipment-tooltip{opacity:0!important}.floating-equipment-tooltip{position:fixed!important;inset:auto!important;z-index:30000!important;margin:0!important;opacity:1!important;transform:none!important;pointer-events:none!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain}.slot-weapon .equipment-tooltip,.slot-ring .equipment-tooltip{left:0;right:auto;transform:translateY(6px)}.slot-shield .equipment-tooltip,.slot-necklace .equipment-tooltip{left:auto;right:0;transform:translateY(6px)}.tooltip-align-left .equipment-tooltip{left:0;right:auto;transform:translateY(6px)}.tooltip-align-right .equipment-tooltip{left:auto;right:0;transform:translateY(6px)}.tooltip-align-center .equipment-tooltip{left:50%;right:auto;transform:translate(-50%,6px)}.slot-helmet .equipment-tooltip,.slot-weapon .equipment-tooltip,.slot-shield .equipment-tooltip{top:calc(100% + 10px);bottom:auto}.slot-helmet .equipment-tooltip{transform:translate(-50%,-6px)}.slot-weapon .equipment-tooltip,.slot-shield .equipment-tooltip{transform:translateY(-6px)}.equipment-tooltip strong{font-size:19px;line-height:1.35;color:var(--text)}.equipment-tooltip .item-name{color:inherit}.equipment-tooltip p,.equipment-tooltip span{margin:0;color:var(--muted);line-height:1.45}.equipment-tooltip-change{display:grid;gap:8px;margin-top:4px;padding-top:10px;border-top:1px solid rgba(104,142,181,.18)}.equipment-tooltip-change strong{font-size:14px;color:var(--accent)}.mannequin-slot:hover .equipment-tooltip,.candidate-row:hover .equipment-tooltip,.detail-current-card:hover .equipment-tooltip,.equip-icon-card:hover .equipment-tooltip,.equip-icon-display:hover .equipment-tooltip{opacity:1;transform:translate(-50%)}.slot-weapon:hover .equipment-tooltip,.slot-ring:hover .equipment-tooltip,.slot-shield:hover .equipment-tooltip,.slot-necklace:hover .equipment-tooltip{transform:translate(0)}.slot-helmet:hover .equipment-tooltip{transform:translate(-50%)}.tooltip-align-left:hover .equipment-tooltip,.tooltip-align-right:hover .equipment-tooltip{transform:translate(0)}.tooltip-align-center:hover .equipment-tooltip{transform:translate(-50%)}.delta-inline{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:-.01em;border:1px solid rgba(104,142,181,.2);background:rgba(18,39,58,.88)}.delta-inline.is-positive{color:#8ff0b0;border-color:#60d47f6b;background:rgba(18,73,42,.92)}.delta-inline.is-negative{color:#ffb1b1;border-color:#de6e6e6b;background:rgba(84,28,32,.92)}.delta-inline.is-neutral{color:#d6e2ef;border-color:#688eb53d;background:rgba(23,44,64,.92)}.delta-inline-separator{display:inline-flex;align-items:center;margin:0 6px;color:#b0c3d8b8}.item-name{font-weight:800;letter-spacing:-.01em}.item-rarity-common{color:#f3f4f6!important}.item-rarity-uncommon{color:#5fd47a!important}.item-rarity-rare{color:#4ea3ff!important}.item-rarity-epic{color:#b27cff!important}.item-rarity-legendary{color:#ffb347!important}.rarity-border-common{border-color:#ffffff2e!important}.rarity-border-uncommon{border-color:#5fd47a94!important}.rarity-border-rare{border-color:#4ea3ff9e!important}.rarity-border-epic{border-color:#b27cff9e!important}.rarity-border-legendary{border-color:#ffb347b8!important}.item-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.equipment-icon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:12px;min-width:0;align-items:start}.inventory-icon-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.shop-list{gap:12px}.shop-sections{display:grid;gap:14px;overflow:visible}.shop-group{display:grid;gap:12px}.shop-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-group-head h3{margin:0}.shop-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px;overflow:visible}.shop-card{display:grid;gap:8px;padding:12px;border-radius:16px;background:rgba(12,27,40,.78);border:1px solid rgba(104,142,181,.18);position:relative;overflow:visible;align-content:start}.shop-card:hover{z-index:8}.shop-filter-tabs{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.shop-job-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:12px 14px;border:1px solid rgba(104,142,181,.24);border-radius:14px;background:rgba(10,29,44,.72)}.shop-job-filter{display:inline-flex;align-items:center;gap:10px;font-weight:800}.shop-job-filter select{min-width:150px;min-height:42px;padding:8px 34px 8px 12px;border:1px solid rgba(104,142,181,.5);border-radius:10px;color:var(--text);background:#102b40;font:inherit}.shop-card-top{display:grid;grid-template-columns:56px minmax(0,1fr);gap:22px;align-items:start}.shop-card-copy{display:grid;gap:4px;min-width:0;padding-top:2px}.shop-select-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}.shop-select-toggle input{width:18px;height:18px;accent-color:var(--accent)}.shop-item-icon.icon-chip{background:transparent;border:0;box-shadow:none;padding:0}.shop-card .shop-tooltip-host,.shop-card .shop-tooltip-host:hover,.shop-card .shop-tooltip-host:focus-visible{width:56px;height:56px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}.shop-card-meta,.shop-card-description,.shop-card-detail,.shop-card-price{margin:0;color:var(--muted)}.shop-card-meta{font-size:12px}.shop-card-actions{display:grid;gap:8px}.shop-card-actions .primary-button,.shop-card-actions .secondary-button{width:100%;justify-content:center}.shop-quantity-control{display:grid;grid-template-columns:38px minmax(54px,1fr) 38px;align-items:center;gap:5px}.shop-quantity-control .ghost-button{width:38px;min-width:38px;min-height:34px;padding:3px;font-size:20px;line-height:1}.shop-quantity-control output{display:grid;min-height:34px;place-items:center;border:1px solid rgba(104,142,181,.42);border-radius:9px;color:var(--text);background:rgba(4,17,28,.82);font-size:13px;font-weight:850}.shop-card-price{font-weight:800;color:var(--text);font-size:13px}.shop-bulk-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.shop-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}.shop-row-main{display:flex;align-items:center;gap:16px;min-width:0}.shop-row-copy{display:grid;gap:6px;min-width:0}.shop-row-copy p,.shop-row-meta,.shop-row-detail{margin:0;color:var(--muted)}.shop-row-meta{font-weight:700}.shop-row-detail{font-size:14px}.shop-row-actions{display:grid;justify-items:end;gap:8px}.item-card,.save-card,.battle-card{text-align:left;cursor:pointer}.item-card{display:flex;align-items:center;gap:14px}.equip-icon-card{display:grid;place-items:center;min-height:112px;padding:10px;border-radius:18px;border:none;background:rgba(12,27,40,.78);box-shadow:inset 0 0 0 1px #688eb51f,inset 0 -14px 18px #00000024;cursor:pointer;transition:.18s ease}.equip-icon-card:hover{transform:translateY(-1px);background:rgba(25,49,71,.94);box-shadow:inset 0 0 0 1px #85aad133,inset 0 -14px 18px #0000002e}.equip-icon-card.is-static{cursor:default}.equip-card-icon{box-shadow:0 10px 24px #00000038}.equip-icon-empty .icon-chip{background:rgba(15,31,46,.9)}.icon-only-panel{justify-items:start}.current-equip-main,.detail-current-card .equip-icon-card{min-height:128px}.current-equip-panel{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:18px}.current-equip-copy{display:grid;gap:8px;min-width:0}.current-equip-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.current-equip-heading{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.current-equip-slot{color:var(--muted);font-size:13px;font-weight:700;white-space:nowrap}.current-equip-title{margin:0;font-size:21px;line-height:1.2}.current-equip-rarity,.current-equip-description,.current-equip-stats{margin:0}.current-equip-rarity{font-size:14px;font-weight:800}.current-equip-description{color:var(--muted);line-height:1.55}.current-equip-stats{color:var(--text);font-weight:700}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:28px;background:rgba(3,8,14,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-window{width:min(1160px,calc(100vw - 48px));max-height:min(86vh,900px);border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,35,53,.98),rgba(8,18,29,.98));box-shadow:var(--shadow);padding:24px;overflow:hidden}.codex-window{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:16px;min-height:min(78vh,760px)}.codex-panel{min-height:0;height:100%;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}.codex-panel .codex-scroll{max-height:none;overflow:visible;padding-right:0}.codex-head{margin-bottom:0;align-items:flex-start;flex-wrap:wrap}.codex-head>div{min-width:0;flex:1}.codex-head h2{margin:0;word-break:keep-all}.codex-subtitle{margin:10px 0 0;max-width:720px;line-height:1.5}.codex-tabs{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.codex-tabs .tab-button{flex:0 0 132px}.codex-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:8px}.detail-heading-inline{display:inline-flex;align-items:center;gap:10px;min-width:0}.detail-inline-button{min-height:34px;padding:6px 12px;font-size:13px;white-space:nowrap}.codex-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.codex-card{display:grid;gap:12px;padding:16px;border-radius:18px;background:rgba(12,27,40,.75);border:1px solid rgba(104,142,181,.18);min-width:0}.codex-card-top{display:flex;align-items:flex-start;gap:14px;min-width:0}.codex-card-copy{display:grid;gap:6px;min-width:0}.codex-card-copy strong,.codex-card p,.codex-meta,.codex-stat{word-break:keep-all;overflow-wrap:anywhere}.codex-card p,.codex-stat,.codex-meta{margin:0;color:var(--muted)}.codex-stat{display:block;padding:10px 12px;border-radius:12px;border:1px solid rgba(104,142,181,.2);background:rgba(8,19,29,.82)}.job-codex-tabs{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.job-codex-tabs .tab-button{display:flex;flex-direction:column;align-items:center;gap:8px}.job-tab-icon{width:54px;height:54px;border-radius:13px;object-fit:cover}.job-codex-icon{width:96px;height:96px;border-radius:20px;object-fit:cover;border:1px solid rgba(228,196,122,.45)}.encounter-prep-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:14px}.encounter-condition-card,.acquisition-route-grid{display:grid;gap:8px}.encounter-condition-card span,.acquisition-route-grid span{color:var(--muted);line-height:1.5}.acquisition-guide{margin-top:18px}.acquisition-route-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.acquisition-route-grid>div{display:grid;gap:4px;padding:12px;border-radius:12px;background:rgba(21,45,67,.55)}.encounter-brief{display:flex;align-items:center;gap:18px}.encounter-type-mark{display:grid;place-items:center;flex:0 0 76px;height:76px;border-radius:18px;background:linear-gradient(145deg,#345f82,#172d43);border:1px solid rgba(228,196,122,.46);color:var(--accent);font-size:40px}.enemy-preview-list,.reward-preview{display:grid;gap:10px}.enemy-preview-list span{padding:8px 10px;border-radius:10px;background:rgba(8,19,29,.75)}.reward-preview strong{color:var(--accent);font-size:20px}.encounter-launch-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(10,22,34,.9)}.encounter-launch-bar p{margin:0;color:var(--muted)}.job-codex-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px}.job-codex-badge{width:18px;height:100%;min-height:96px;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--job-accent) 88%,white 12%),color-mix(in srgb,var(--job-accent) 58%,black 42%));box-shadow:0 0 0 1px #ffffff14 inset}.job-codex-summary{display:grid;gap:6px;justify-items:end;text-align:right}.skill-codex-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.skill-codex-card{display:grid;gap:14px}.skill-codex-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.skill-codex-title{display:flex;align-items:flex-start;gap:14px}.skill-codex-title h3{margin:0 0 6px}.skill-codex-title p,.skill-codex-effects span{margin:0}.skill-codex-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:320px}.skill-codex-meta span,.skill-codex-effects{border-radius:12px;border:1px solid rgba(104,142,181,.2);background:rgba(12,27,40,.72)}.skill-codex-meta span{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;color:var(--muted)}.skill-codex-effects{display:grid;gap:6px;padding:12px 14px}.party-detail-layout{display:grid;grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:20px;align-items:start}.party-section{height:100%;min-height:0;overflow:hidden}.party-dashboard{height:100%;min-height:0;display:grid;grid-template-columns:96px minmax(270px,.68fr) minmax(350px,.92fr) minmax(350px,1fr);grid-template-areas:"rail stats equipment candidates";gap:12px;align-items:stretch;overflow:hidden}.party-roster-rail{grid-area:rail}.party-dashboard>.party-overview-card{grid-area:stats}.party-dashboard>.mannequin-panel{grid-area:equipment}.party-dashboard>.party-candidates-card{grid-area:candidates}.party-roster-rail{min-height:0;display:grid;grid-auto-rows:min-content;gap:8px;padding-right:4px;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}.party-roster-tab{min-width:0;min-height:92px;display:grid;justify-items:center;align-content:center;gap:5px;padding:7px 5px;border:1px solid rgba(104,142,181,.3);border-radius:16px;background:rgba(12,27,40,.8);color:var(--muted)}.party-roster-tab img{width:54px;height:58px;border-radius:11px;object-fit:cover;object-position:center center;border:1px solid rgba(132,169,205,.34);background:rgba(5,14,22,.9)}.party-roster-tab strong{max-width:100%;overflow:hidden;color:inherit;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.party-roster-tab.is-active{border-color:#eeb85bc7;background:linear-gradient(180deg,rgba(66,105,143,.98),rgba(42,71,99,.98));color:#fff4d4;box-shadow:inset 3px 0 0 var(--accent)}.party-dashboard>.mannequin-panel,.party-dashboard>.party-overview-card,.party-dashboard>.party-candidates-card{min-width:0;min-height:0;height:100%;overflow:hidden}.party-dashboard .mannequin-panel{grid-template-rows:auto minmax(390px,1fr)}.party-dashboard .mannequin-stage{min-height:390px;height:100%}.party-dashboard .icon-xl{width:64px;height:64px}.party-dashboard .mannequin-slot{width:94px;gap:6px}.party-dashboard .slot-helmet,.party-dashboard .slot-armor,.party-dashboard .slot-shoes{margin-left:-47px;transform:none}.party-dashboard .slot-name{min-height:30px;min-width:68px;padding:5px 11px;font-size:12px}.party-dashboard .slot-weapon,.party-dashboard .slot-shield{top:88px}.party-dashboard .slot-armor{top:136px}.party-dashboard .slot-ring,.party-dashboard .slot-necklace{top:226px}.party-dashboard .party-overview-card{grid-template-rows:auto auto minmax(0,1fr);align-content:stretch}.party-dashboard .stat-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.party-skills-panel{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid rgba(104,142,181,.2)}.party-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.party-subsection-head h3{margin:0;font-size:17px}.party-subsection-head span{color:var(--muted);font-size:12px}.party-skill-grid{min-height:0;grid-template-columns:1fr;align-content:start;gap:7px;padding-right:4px;overflow-x:hidden;overflow-y:auto}.party-skill-grid .skill-pill{min-height:44px;padding:7px 9px;font-size:12px}.party-candidates-card{display:flex;flex-direction:column}.party-candidates-card>.equipment-icon-grid{flex:1 1 auto;min-height:0;align-content:start;padding:2px 6px 6px 2px;overflow-x:hidden;overflow-y:auto}.party-candidates-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.party-candidates-actions .auto-equip-button{min-height:36px;padding:7px 10px;font-size:12px}.party-dashboard .equipment-icon-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:9px}@media (max-width: 1449px) and (min-width: 1081px){.party-dashboard{grid-template-columns:88px minmax(340px,.9fr) minmax(320px,1fr);grid-template-rows:minmax(410px,1fr) minmax(190px,.46fr);grid-template-areas:"rail stats equipment" "rail candidates candidates"}.party-roster-rail{grid-row:1 / span 2}.party-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.equipment-tooltip:not(.floating-equipment-tooltip){display:none!important}.floating-equipment-tooltip{display:grid!important;z-index:2147483647!important;isolation:isolate;visibility:visible!important}.party-dashboard .skill-pill:hover>.skill-tooltip,.party-dashboard .skill-pill:focus>.skill-tooltip,.party-dashboard .skill-pill:focus-within>.skill-tooltip,.party-dashboard .skill-pill:active>.skill-tooltip,.party-dashboard .mannequin-slot:hover>.equipment-tooltip,.party-dashboard .mannequin-slot:focus>.equipment-tooltip,.party-dashboard .mannequin-slot:focus-within>.equipment-tooltip,.party-dashboard .mannequin-slot:active>.equipment-tooltip,.party-dashboard .equip-icon-card:hover>.equipment-tooltip,.party-dashboard .equip-icon-card:focus>.equipment-tooltip,.party-dashboard .equip-icon-card:focus-within>.equipment-tooltip,.party-dashboard .equip-icon-card:active>.equipment-tooltip{display:grid!important;position:fixed!important;inset:auto 24px 24px auto!important;width:min(360px,calc(100vw - 48px))!important;min-width:0!important;max-width:calc(100vw - 48px)!important;max-height:calc(100dvh - 48px)!important;overflow-y:auto!important;margin:0!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important;z-index:2147483647!important;isolation:isolate}.shop-tooltip-host:hover>.equipment-tooltip,.shop-tooltip-host:focus>.equipment-tooltip,.shop-tooltip-host:focus-within>.equipment-tooltip,.shop-tooltip-host:active>.equipment-tooltip{display:grid!important;position:fixed!important;inset:auto 24px 24px auto!important;width:min(360px,calc(100vw - 48px))!important;min-width:0!important;max-width:calc(100vw - 48px)!important;max-height:calc(100dvh - 48px)!important;overflow-y:auto!important;margin:0!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important;z-index:2147483647!important;isolation:isolate}.party-dashboard .skill-pill:hover>.skill-tooltip,.party-dashboard .skill-pill:focus>.skill-tooltip,.party-dashboard .skill-pill:focus-within>.skill-tooltip,.party-dashboard .skill-pill:active>.skill-tooltip{font-size:16px;line-height:1.45;padding:16px 18px;border:1px solid rgba(228,196,122,.72);border-radius:16px;color:var(--text);background:rgba(5,15,24,.99);box-shadow:0 20px 50px #0000009e}.party-dashboard .skill-tooltip strong{font-size:19px;line-height:1.35}.rarity-surface,.equip-icon-card .icon-chip,.mannequin-slot .icon-chip{border-width:1px!important;box-shadow:0 8px 16px #00000029!important}.party-dashboard .equip-icon-card{min-height:92px;box-shadow:inset 0 -10px 16px #00000024}.party-dashboard .equip-icon-card:hover,.party-dashboard .equip-icon-card:focus,.party-dashboard .equip-icon-card:focus-within{transform:none}.detail-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.detail-panel-side{display:grid;justify-items:end;gap:8px;text-align:right}.detail-toggle{display:flex;gap:8px}.detail-panel{display:grid;gap:14px}.party-detail-main{display:grid;gap:16px;align-content:start}@media (min-width: 1450px){.party-detail-layout{grid-template-columns:minmax(390px,.9fr) minmax(270px,.62fr) minmax(420px,1fr);gap:16px}.party-detail-main{display:contents}.party-overview-card,.party-candidates-card{align-self:start}.party-overview-card .stat-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}.party-overview-card{display:grid;gap:8px;padding:12px 16px}.party-overview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.party-overview-title{min-width:0}.party-overview-title h3{margin:0;font-size:23px;line-height:1.1;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.party-overview-title h3 span{color:var(--muted);font-size:14px;font-weight:600}.party-set-chip{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid rgba(118,158,200,.34);background:rgba(15,33,49,.92);color:var(--text);font-size:13px;font-weight:700;white-space:nowrap}.party-set-chip.is-subtle{color:var(--muted);border-color:#688eb538;background:rgba(12,27,40,.64)}.detail-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.detail-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.detail-head h3{margin:6px 0 0}.detail-meta,.detail-candidates{display:grid;gap:10px}.detail-current-card,.detail-meta div,.candidate-row{justify-content:space-between;padding:12px 14px;border-radius:14px;background:rgba(12,27,40,.75);border:1px solid rgba(104,142,181,.18)}.detail-current-card{position:relative;display:grid;gap:12px}.party-candidates-card{display:grid;gap:12px;padding:14px 16px}.party-candidates-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.party-dashboard .party-candidates-card{display:grid;grid-template-rows:auto minmax(0,1fr);align-content:start;justify-content:stretch}.party-dashboard .party-candidates-card:has(.auto-equip-message){grid-template-rows:auto auto minmax(0,1fr)}.party-dashboard .party-candidates-head{align-self:start;min-height:38px}.party-dashboard .party-candidates-card>.equipment-icon-grid{width:100%;height:100%}.party-dashboard .party-candidates-card .empty-state{align-self:center}.party-candidates-head h3{margin:0;font-size:19px}.party-candidates-note{color:var(--muted);font-size:13px;font-weight:700}.codex-menu-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.current-equip-main{position:relative;z-index:1}.detail-meta div{align-items:flex-start}.detail-meta strong{min-width:72px}.candidate-row{display:flex;align-items:center;gap:16px}.candidate-main{flex:1;min-width:0}.candidate-preview{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:320px}.candidate-main p,.candidate-row p{margin:4px 0 0;color:var(--muted)}.delta-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:-.01em;border:1px solid rgba(104,142,181,.22);background:rgba(21,43,64,.92);color:var(--muted)}.delta-badge.is-positive{color:#9ef0bf;border-color:#5ac4784d;background:rgba(22,63,43,.92)}.delta-badge.is-negative{color:#ffb4b4;border-color:#d26b6b59;background:rgba(74,28,33,.92)}.delta-badge.is-neutral{color:var(--muted)}.candidate-delta{color:var(--accent)!important}.mannequin-panel{display:grid;align-content:start}.mannequin-stage{position:relative;min-height:430px;padding:18px 18px 20px;border-radius:20px;background:radial-gradient(circle at top,rgba(77,121,162,.12),transparent 48%),rgba(8,19,29,.92);border:1px solid rgba(104,142,181,.32);box-shadow:inset 0 0 0 1px #a8c5e414,inset 0 -18px 28px #00000029}.mannequin-slot{position:absolute;width:108px;min-height:auto;display:grid;grid-template-rows:auto auto;justify-items:center;gap:10px;padding:0;border:none;background:transparent;box-shadow:none;color:var(--text);cursor:pointer;overflow:visible}.mannequin-slot-icon{display:grid;place-items:center;padding:0}.slot-name{display:flex;align-items:center;justify-content:center;min-height:34px;min-width:78px;margin:0;padding:6px 14px;font-size:13px;font-weight:700;color:var(--text);background:rgba(16,34,50,.96);border:1px solid rgba(118,158,200,.42);border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff0a,0 8px 14px #00000024}.mannequin-slot.is-active{background:transparent;box-shadow:none}.mannequin-slot.is-active .slot-name{border-color:#d6e6f7d1;background:linear-gradient(180deg,rgba(70,111,150,.96),rgba(46,76,105,.98));color:#f8fbff}.mannequin-slot:hover{z-index:20}.mannequin-slot:hover .slot-name{border-color:#a8c5e4a3;background:rgba(24,47,68,.98)}.slot-helmet{top:4px;left:50%;transform:translate(-50%)}.slot-weapon{top:104px;left:2px}.slot-shield{top:104px;right:2px}.slot-armor{top:160px;left:50%;transform:translate(-50%);z-index:2}.slot-ring{top:270px;left:8px}.slot-necklace{top:270px;right:8px}.slot-shoes{bottom:6px;left:50%;transform:translate(-50%)}.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}.save-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:16px 0}.save-card{display:grid;gap:8px}.utility-head,.section-title-row,.battle-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.notice-bar{margin-top:16px;padding:12px 14px;border-radius:14px;background:rgba(35,70,102,.8);color:var(--text)}.story-choice-panel{display:grid;width:100%;gap:10px;padding:16px;border:1px solid var(--line-soft);border-radius:16px;background:rgba(14,28,42,.86)}.story-scene-label{display:inline-flex;width:fit-content;margin-bottom:6px;padding:4px 9px;border:1px solid rgba(228,196,122,.45);border-radius:999px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.04em}.story-choice-panel .primary-button{width:100%;justify-content:flex-start;text-align:left}.ending-variant{display:grid;gap:8px}.ending-variant p{margin:0;line-height:1.7}.bond-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.bond-card{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px}.bond-card img{width:72px;height:72px;grid-row:span 2;border-radius:16px;object-fit:cover;object-position:top center}.bond-card h3,.bond-card p{margin:0 0 5px}.bond-card span{color:var(--muted);font-size:13px}.bond-card .primary-button{grid-column:1 / -1;justify-content:center}.difficulty-box{display:grid;gap:8px;justify-items:center;padding:28px 16px;margin:24px 0;border-radius:20px;background:rgba(14,28,42,.82);border:1px solid var(--line-soft)}.story-card{display:grid;gap:24px}#game-shell:has(.story-card.has-story-background){padding:0}.screen-frame.story-screen:has(.story-card.has-story-background){width:100%;height:100dvh;min-height:100vh;padding:0;border:0;border-radius:0;background:#030912}.story-card.has-story-background{position:relative;isolation:isolate;width:100%;min-height:100vh;padding:0;overflow:hidden;border:0;border-radius:0;background:#030912;box-shadow:none}.story-card.has-story-background .story-chapter-visual{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;margin:0;overflow:hidden;background:#081522}.story-card.has-story-background .story-chapter-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(2,8,15,.72) 0%,rgba(2,8,15,.2) 38%,rgba(2,8,15,.54) 100%),linear-gradient(90deg,rgba(2,8,15,.48),transparent 62%);pointer-events:none}.story-card.has-story-background .story-chapter-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.story-overlay-content{display:grid;align-content:start;gap:18px}.story-card.has-story-background .story-overlay-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;width:100%;min-height:100vh;padding:clamp(28px,5vh,58px) clamp(28px,5vw,84px) clamp(24px,5vh,52px);box-sizing:border-box;pointer-events:none}.story-meta{display:grid;gap:8px}.story-card.has-story-background .story-meta{width:fit-content;padding:14px 20px 16px;border-left:4px solid var(--accent);border-radius:0 14px 14px 0;background:linear-gradient(90deg,rgba(3,11,20,.9),rgba(3,11,20,.58));text-shadow:0 2px 12px rgba(0,0,0,.85);pointer-events:auto}.story-card.has-story-background .story-meta h2{font-size:clamp(28px,3.2vw,46px)}.story-line{padding:24px;border-radius:20px;background:rgba(10,22,34,.88);border:1px solid var(--line-soft)}.story-card.has-story-background .story-line{width:min(880px,100%);margin:auto auto 0;padding:20px 24px;border-color:#e4c47a7a;background:linear-gradient(90deg,rgba(4,13,23,.95),rgba(8,23,37,.82));box-shadow:0 18px 48px #0000006b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto}.story-card.has-story-background .story-actions,.story-card.has-story-background .ending-variant{width:min(880px,100%);margin:12px auto 0;pointer-events:auto}.story-card.has-story-background .story-actions{position:relative;z-index:5}.story-card.has-story-background .story-choice-panel{background:rgba(7,19,31,.97);box-shadow:0 18px 48px #0000008c}.story-line.has-dialogue-portrait{display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:22px}.story-dialogue-portrait{width:116px;height:138px;border:1px solid rgba(228,196,122,.42);border-radius:16px;object-fit:cover;object-position:center top;background:#081522;box-shadow:0 12px 24px #00000047}.story-line-copy{display:flex;flex-direction:column;min-width:0}.story-next-button{align-self:auto;margin-top:0}.story-line strong{color:var(--accent);font-size:20px}.story-line p{margin:16px 0 0;font-size:22px;line-height:1.7;color:var(--text)}@media (max-width: 640px){.story-card.has-story-background .story-overlay-content{width:100%;padding:18px 12px 20px;gap:12px}.story-card.has-story-background .story-meta{padding:10px 14px 12px}.story-card.has-story-background .story-meta h2{font-size:26px}.story-card.has-story-background .story-line p{margin-top:8px;font-size:17px;line-height:1.55}.story-line.has-dialogue-portrait{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px}.story-dialogue-portrait{width:76px;height:96px;border-radius:12px}}.rarity-surface{border-width:3px;box-shadow:inset 0 0 0 1px #ffffff0d,0 10px 20px #0000002e}.rarity-surface-common{background:linear-gradient(180deg,rgba(35,56,79,.95),rgba(15,31,46,.96));border-color:#ffffff38!important}.rarity-surface-uncommon{background:linear-gradient(180deg,rgba(28,82,44,.95),rgba(14,42,22,.96));border-color:#5fd47ab8!important}.rarity-surface-rare{background:linear-gradient(180deg,rgba(22,67,122,.96),rgba(10,32,58,.96));border-color:#4ea3ffc7!important}.rarity-surface-epic{background:linear-gradient(180deg,rgba(78,41,114,.96),rgba(35,18,53,.98));border-color:#b27cffd1!important}.rarity-surface-legendary{background:linear-gradient(180deg,rgba(120,74,18,.98),rgba(58,32,8,.98));border-color:#ffb347eb!important}.equip-icon-card .icon-chip,.mannequin-slot .icon-chip{border-width:3px;border-style:solid}@media (max-width: 900px){.encounter-prep-grid{grid-template-columns:1fr}.job-codex-hero,.skill-codex-head{grid-template-columns:1fr;display:grid}.skill-codex-list,.codex-grid{grid-template-columns:1fr}.stat-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.job-codex-summary,.skill-codex-meta{justify-items:start;justify-content:flex-start;text-align:left}}.battle-screen{width:100%;height:100dvh;min-height:0;padding:16px;overflow:hidden;border:0;border-radius:0}#game-shell:has(.battle-screen){height:100dvh;min-height:0;padding:0;overflow:hidden}.battle-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;height:100%;min-height:0}.battle-layout.is-completed{grid-template-columns:minmax(0,1fr)}.battle-result-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;display:grid;place-items:center;padding:20px;background:rgba(2,8,14,.66);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.battle-result-modal{position:relative;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;padding:26px;border:1px solid rgba(228,196,122,.62);border-radius:24px;background:rgba(10,27,41,.98);box-shadow:0 28px 90px #00000094}.battle-result-modal h2{margin:0;font-size:clamp(22px,3vw,30px)}.battle-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.battle-result-head h2{min-width:0}.battle-result-next{flex:0 0 auto;align-self:flex-start}.battle-result-content{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:8px;overscroll-behavior:contain}.battle-levelup-events{display:grid;gap:10px;margin-bottom:14px}.battle-levelup-events article{display:grid;gap:5px;padding:14px;border:1px solid rgba(228,196,122,.56);border-radius:14px;background:linear-gradient(135deg,rgba(99,71,24,.42),rgba(17,42,60,.85))}.battle-levelup-events span,.battle-levelup-events small{color:var(--accent)}.battle-levelup-events p{margin:0;color:var(--muted)}.battle-stage{display:grid;grid-template-rows:auto auto minmax(260px,1fr) auto auto;min-width:0;min-height:0;gap:12px;overflow-x:hidden;overflow-y:auto;padding-right:4px}.battle-arena{position:relative;display:grid;align-items:end;min-height:280px;overflow:hidden;padding:72px 18px 18px;border:1px solid rgba(228,196,122,.28);border-radius:22px;background:#07131f;box-shadow:inset 0 0 42px #00000080}.battle-arena-background,.battle-arena-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.battle-arena-background{object-fit:cover}.battle-arena-overlay{background:linear-gradient(180deg,rgba(3,10,17,.02),rgba(3,10,17,.52)),linear-gradient(90deg,rgba(3,10,17,.12),transparent 50%,rgba(3,10,17,.12))}.battle-arena .battle-enemies{position:absolute;left:18px;right:18px;bottom:18px;z-index:1}.battle-enemies,.battle-party{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.enemy-card{min-width:0;min-height:126px}.battle-party.is-large-party{grid-template-columns:repeat(var(--party-size),minmax(0,1fr));gap:8px}.battle-party-command-zone{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,390px);align-items:stretch;gap:12px;min-width:0}.battle-command-dock{position:relative;min-width:0;border:1px solid rgba(228,196,122,.52);border-radius:18px;background:rgba(11,30,45,.98);box-shadow:0 12px 30px #00000047}.battle-command-dock:before{content:"";position:absolute;top:28px;left:-9px;width:16px;height:16px;border-left:1px solid rgba(228,196,122,.52);border-bottom:1px solid rgba(228,196,122,.52);background:rgba(11,30,45,.98);transform:rotate(45deg)}.battle-command-dock .battle-action-panel{position:relative;z-index:1;max-height:250px;padding:14px;background:transparent}.battle-command-dock .battle-skill-grid,.battle-command-dock .battle-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-party.is-large-party .battle-card{grid-template-columns:58px minmax(0,1fr);gap:8px;padding:9px}.battle-party.is-large-party .battle-portrait{width:58px;height:72px}.battle-party.is-large-party .battle-card-copy{gap:3px;font-size:12px}.battle-card{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;padding:16px;overflow:hidden}.battle-portrait{width:88px;height:104px;border:1px solid rgba(228,196,122,.28);border-radius:12px;object-fit:cover;object-position:center top;background:#0b1826}.battle-portrait-frame{position:relative;display:block;width:88px;height:104px;border-radius:12px;overflow:hidden;background:radial-gradient(circle at 50% 35%,rgba(228,196,122,.22),transparent 42%),#0b1826}.battle-portrait-frame .battle-portrait{position:absolute;top:0;right:0;bottom:0;left:0}.party-battle-portrait-frame{display:block;width:88px;height:104px;overflow:hidden;border:1px solid rgba(228,196,122,.28);border-radius:12px;background:#0b1826}.party-battle-portrait-frame>.battle-portrait{width:100%;height:100%;border:0;border-radius:inherit}.battle-arena .enemy-stage-unit .enemy-sprite-frame{background-image:none!important}.battle-portrait-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#e4c47a;font-size:2rem;font-weight:800}.battle-party.is-large-party .battle-portrait-frame{width:58px;height:72px}.battle-card-copy{display:grid;min-width:0;gap:6px}.battle-gauge{display:block;width:100%;height:7px;overflow:hidden;border-radius:999px;background:rgba(2,8,13,.78);box-shadow:inset 0 0 0 1px #ffffff14}.battle-gauge>span{display:block;height:100%;border-radius:inherit;transition:width .24s ease}.battle-gauge-hp>span{background:linear-gradient(90deg,#b63838,#ef665b)}.battle-gauge-mp>span{background:linear-gradient(90deg,#2868ad,#58a8f0)}.battle-card.is-down{opacity:.4}.battle-card.is-targetable{border-color:#e4c47ab3}.party-card.is-acting{border-color:#e4c47a;box-shadow:0 0 0 2px #e4c47a33,0 10px 26px #0000004d}.party-card.is-acting:after{content:"행동 중";position:absolute;top:8px;right:8px;padding:3px 7px;border-radius:999px;color:#07131f;background:#e4c47a;font-size:11px;font-weight:900}.party-card{position:relative}.battle-card[aria-disabled=true]{cursor:default}.battle-exp-label{color:#c9dcf0;font-size:12px}.battle-exp-compact{display:block;width:100%}.battle-gauge-exp{height:6px}.battle-gauge-exp>span{background:linear-gradient(90deg,#159a56,#52dc87)}.battle-effect-list{display:flex;flex-wrap:wrap;gap:4px;grid-column:1 / -1}.battle-effect-badge{padding:3px 6px;border-radius:6px;font-size:10px;font-weight:900;line-height:1.2}.battle-effect-badge.is-buff{color:#9cd8ff;background:rgba(27,104,166,.5)}.battle-effect-badge.is-debuff{color:#ffb1ad;background:rgba(145,43,43,.52)}.battle-effect-badge.is-status{color:#eed28a;background:rgba(105,76,18,.58)}.battle-floating-numbers{position:absolute;top:18px;left:44px;z-index:40;display:grid;justify-items:center;pointer-events:none}.battle-floating-numbers strong{grid-area:1 / 1;font-size:25px;font-weight:1000;text-shadow:0 2px 5px #000,0 0 12px currentColor;animation:battle-number-float 1.15s ease-out both}.battle-floating-numbers .is-damage{color:#ff746c}.battle-floating-numbers .is-heal{color:#69ed99}.battle-floating-numbers .is-buff{color:#70c8ff}.battle-floating-numbers .is-debuff{color:#f3a168}@keyframes battle-number-float{0%{opacity:0;transform:translateY(8px) scale(.78)}18%{opacity:1;transform:translateY(0) scale(1.12)}75%{opacity:1}to{opacity:0;transform:translateY(-42px) scale(1)}}.battle-sidebar{display:grid;grid-template-rows:minmax(0,1fr);gap:16px;min-height:0;overflow:hidden}.battle-log-drawer{min-width:0;border:1px solid rgba(104,142,181,.35);border-radius:14px;background:rgba(8,24,37,.94)}.battle-log-drawer summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:12px;align-items:center;padding:10px 14px;cursor:pointer;list-style:none}.battle-log-drawer summary::-webkit-details-marker{display:none}.battle-log-drawer summary:before{content:"＋";color:var(--accent)}.battle-log-drawer[open] summary:before{content:"－"}.battle-log-drawer summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.battle-log-drawer .battle-log{max-height:180px;padding:12px 16px;border-top:1px solid rgba(104,142,181,.22)}.battle-action-panel{max-height:55dvh;overflow-x:hidden;overflow-y:auto}.battle-log{min-height:0;overflow-x:hidden;overflow-y:auto}.battle-skill-button{position:relative;overflow:visible}.battle-skill-tooltip{position:absolute;left:50%;bottom:calc(100% + 9px);z-index:120;display:grid;gap:5px;width:min(280px,calc(100vw - 40px));padding:12px 14px;border:1px solid rgba(228,196,122,.58);border-radius:12px;color:var(--text);background:rgba(5,15,24,.98);box-shadow:0 16px 34px #0000007a;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,6px);transition:opacity .14s ease,transform .14s ease;text-align:left}.floating-battle-skill-tooltip{position:fixed!important;inset:auto!important;z-index:30000!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important}.floating-skill-tooltip{position:fixed!important;inset:auto!important;z-index:2147483647!important;display:grid!important;width:min(320px,calc(100vw - 24px))!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important}.skill-pill.has-floating-skill-tooltip>.skill-tooltip{opacity:0!important}.battle-skill-button.has-floating-skill-tooltip>.battle-skill-tooltip{opacity:0!important}.battle-item-button .item-tooltip-trigger{pointer-events:auto}.elite-encounter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.elite-encounter-card{display:grid;gap:9px}.elite-encounter-card h3,.elite-encounter-card p{margin:0}.elite-encounter-card.is-cleared{opacity:.68}.training-growth-note{color:#75dba3;font-size:12px;line-height:1.45}.recruitment-role{display:block;margin:8px 0;color:var(--accent);font-weight:800}.recruitment-list small{color:var(--muted)}.battle-skill-tooltip span{color:var(--muted);line-height:1.45}.battle-skill-tooltip small{color:var(--accent)}.battle-skill-button:hover .battle-skill-tooltip,.battle-skill-button:focus-visible .battle-skill-tooltip,.battle-skill-button:active .battle-skill-tooltip{opacity:1;visibility:visible;transform:translate(-50%)}.battle-log h3,.battle-action-panel h3,.info-card h3{margin:0 0 14px}.battle-log p,.battle-notes p{margin:0 0 10px;color:var(--muted);line-height:1.5}.battle-log-ally{color:#77c8ff}.battle-log-enemy{color:#ff9292}.battle-log-damage{color:#ffb06b}.battle-log-heal{color:#79e6a4}.battle-log-critical{color:#ffe06f;text-shadow:0 0 10px rgba(255,211,75,.38)}.battle-log-weakness{color:#df9dff}.battle-log-resist{color:#9aaec2}.battle-loot-toast{display:grid;gap:8px;margin:14px 0;padding:12px;border:1px solid rgba(228,196,122,.48);border-radius:16px;background:linear-gradient(135deg,rgba(65,49,25,.72),rgba(16,37,54,.94));box-shadow:0 12px 28px #0000003d}.battle-loot-toast .eyebrow{margin:0}.battle-loot-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:10px}.battle-loot-item{width:100%;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;padding:9px;color:var(--text);text-align:left;cursor:pointer}.battle-loot-item>span{display:grid;gap:4px}.battle-loot-item small,.battle-loot-help,.battle-no-loot{color:var(--muted);font-size:12px}.battle-loot-item .battle-loot-source{color:var(--gold);font-weight:800}.battle-loot-item>.equipment-tooltip{bottom:calc(100% + 12px);left:50%;right:auto;z-index:20020}.battle-loot-item:hover>.equipment-tooltip,.battle-loot-item:focus-visible>.equipment-tooltip,.battle-loot-item.is-tooltip-open>.equipment-tooltip{opacity:1;transform:translate(-50%)}@media (max-height: 800px) and (min-width: 721px){.battle-screen{padding:10px}.battle-stage-head h2{font-size:28px}.battle-stage-head p{margin:6px 0 0}.battle-card{padding:9px}.battle-portrait,.battle-portrait-frame{width:62px;height:76px}.battle-card{grid-template-columns:62px minmax(0,1fr)}}.battle-skill-grid{grid-template-columns:1fr}.skill-button{display:flex;align-items:center;gap:12px;cursor:pointer}.icon-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:14px;background:rgba(8,19,29,.92);border:1px solid rgba(104,142,181,.3);overflow:hidden}.icon-chip span{color:var(--muted);font-weight:700}.icon-chip img{width:74%;height:74%;object-fit:contain}.icon-chip.is-empty span{font-size:22px}.icon-sm{width:34px;height:34px}.icon-md{width:42px;height:42px}.icon-lg{width:54px;height:54px}.icon-xl{width:76px;height:76px}.empty-state{padding:28px;border-radius:18px;background:rgba(12,27,40,.78);color:var(--muted);text-align:center}@media (max-width: 1080px){#game-shell{padding:12px}.screen-frame{min-height:calc(100vh - 24px)}.camp-layout,.camp-layout.is-sidebar-collapsed,.party-detail-layout{grid-template-columns:1fr}.camp-layout.is-sidebar-collapsed .sidebar-panel{padding:16px}.camp-layout.is-sidebar-collapsed .sidebar-toggle strong,.camp-layout.is-sidebar-collapsed .memo-card,.camp-layout.is-sidebar-collapsed .camp-next-action,.camp-layout.is-sidebar-collapsed .menu-icon-button>span:last-child{display:revert}.camp-layout.is-sidebar-collapsed .menu-stack{grid-template-columns:repeat(3,minmax(0,1fr))}.content-scroll{height:auto;max-height:none}.party-section{height:auto;overflow:visible}.party-dashboard{height:auto;grid-template-columns:1fr;grid-template-areas:"rail" "stats" "equipment" "candidates";grid-template-rows:auto;overflow:visible}.party-roster-rail{grid-auto-flow:column;grid-auto-columns:84px;overflow-x:auto;overflow-y:hidden;padding:0 0 5px}.party-roster-tab{min-height:86px}.party-dashboard>.mannequin-panel,.party-dashboard>.party-overview-card,.party-dashboard>.party-candidates-card{height:auto;overflow:visible}.party-skill-grid,.party-candidates-card>.equipment-icon-grid{max-height:280px}}@media (max-width: 720px){.mobile-auto-equip-button{display:inline-flex;width:100%;min-height:48px;justify-content:center;margin:0 0 12px;border-color:#efc766b8;color:#ffe08a}.party-candidates-actions .auto-equip-button{display:none}.side-story-section{position:relative;display:flow-root;clear:both;min-width:0;margin-block:22px}.side-story-section>.section-title-row{position:relative;z-index:2;display:block;width:100%;margin:0 0 14px}.side-story-section>.section-title-row>div{width:100%;min-width:0}.side-story-section>.bond-grid,.side-story-section>.side-story-card{position:relative;z-index:1}.acquisition-route-grid,.training-grid,.world-codex-columns{grid-template-columns:1fr}.recruitment-list article{grid-template-columns:1fr}.recruitment-list img{width:120px;height:154px;margin-inline:auto}.recruitment-story-grid{grid-template-columns:1fr}.sidebar-panel,.content-panel,.battle-screen,.title-screen,.story-screen,.utility-screen{padding:16px}.battle-arena{min-height:240px;padding:40px 8px 8px}.battle-arena .battle-enemies{left:8px;right:8px;bottom:8px}.battle-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 190px;gap:8px}.battle-stage{grid-template-rows:auto auto minmax(240px,auto) auto auto}.battle-party-command-zone{grid-template-columns:1fr}.battle-command-dock:before{top:-9px;left:28px;transform:rotate(135deg)}.battle-result-overlay{padding:8px}.battle-result-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:16px}.battle-result-head{align-items:stretch;flex-direction:column}.battle-result-next{width:100%;order:-1}.battle-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:8px}.battle-action-panel,.battle-log{overflow:auto;padding:12px}.battle-party.is-large-party{grid-template-columns:repeat(2,minmax(0,1fr))}.title-card,.story-card,.utility-card{padding:20px}.story-line p{font-size:18px}}.save-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483600;display:grid;place-items:center;padding:20px;background:rgba(2,8,14,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.save-confirm-dialog{display:grid;gap:16px;width:min(460px,calc(100vw - 32px));padding:24px;border:1px solid rgba(228,196,122,.72);border-radius:20px;background:rgba(7,21,33,.99);box-shadow:0 24px 70px #000000b3}.save-confirm-dialog h3,.save-confirm-dialog p{margin:0}.save-confirm-summary{display:grid;gap:8px;padding:14px;border:1px solid var(--line-soft);border-radius:14px;color:var(--muted);background:rgba(23,49,73,.72)}.save-confirm-summary strong{color:var(--text)}.save-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.save-confirm-actions button{min-height:48px}.save-utility-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.save-utility-actions button{min-height:48px;white-space:normal;line-height:1.35}.save-delete-button:not(:disabled){color:#ffd5d5;border-color:#d26b6ba6}@media (max-width: 720px){.save-confirm-backdrop{padding:12px}.save-confirm-dialog{width:calc(100vw - 24px);padding:18px}.save-utility-actions{grid-template-columns:minmax(0,1fr)}.save-utility-actions button{width:100%;min-height:52px}}.battle-mobile-log-toggle{display:none}@media (max-width: 720px){#game-shell:has(>.battle-screen){display:block;height:100dvh;min-height:0;padding:0;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92);-webkit-overflow-scrolling:touch}#game-shell:has(>.battle-screen)::-webkit-scrollbar{width:7px}#game-shell:has(>.battle-screen)::-webkit-scrollbar-track{background:rgba(7,20,31,.92)}#game-shell:has(>.battle-screen)::-webkit-scrollbar-thumb{border:1px solid rgba(7,20,31,.92);border-radius:999px;background:rgba(228,196,122,.86)}.screen-frame.battle-screen{width:100%;height:auto;min-height:100dvh;padding:12px;overflow:visible;background:linear-gradient(180deg,#0c1c2c,#06111c)}.battle-layout,.battle-layout:not(.is-completed){display:block;width:100%;height:auto;min-height:0;overflow:visible}.battle-stage{display:grid;grid-template-rows:auto 340px auto;width:100%;height:auto;min-height:0;gap:12px;padding:0;overflow:visible;scrollbar-gutter:auto}.battle-stage-head{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.battle-title-copy,.battle-title-line{width:100%;min-width:0}.battle-title-copy .eyebrow{margin-bottom:4px;font-size:11px;letter-spacing:.16em}.battle-title-line{display:flex;align-items:baseline;justify-content:space-between;flex-direction:row;flex-wrap:wrap;gap:5px 12px}.battle-title-line h2,.battle-stage h2{font-size:clamp(24px,7vw,30px);line-height:1.05}.battle-recommendation{margin:0;font-size:12px;white-space:normal}.battle-mode-toggle{width:100%;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.battle-mode-toggle>.battle-strategy-select{grid-column:1 / -1;width:100%;min-width:0;min-height:52px}.battle-strategy-select select{min-width:0}.battle-strategy-tooltip{right:0;left:0;width:100%;max-width:none}.battle-mode-toggle [data-action=run-instant-auto]{display:none!important}.battle-mode-toggle>button{width:100%;min-width:0;min-height:48px;padding:9px 7px;white-space:normal}.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{width:100%;height:340px!important;min-height:340px!important;padding:0!important;overflow:hidden;border-radius:18px}.battle-arena>.battle-enemies{position:absolute!important;top:0!important;right:6px!important;bottom:6px!important;left:6px!important;width:auto!important;height:auto!important;min-height:0!important;display:grid!important;grid-template-columns:repeat(var(--enemy-count, 3),minmax(0,1fr))!important;align-items:stretch!important;gap:3px!important;overflow:visible!important}.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{width:100%!important;min-width:0!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame{position:absolute!important;top:14px!important;right:0!important;bottom:58px!important;left:0!important;width:auto!important;height:auto!important;min-height:0!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel,.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel{left:2px!important;right:2px!important;bottom:4px!important;width:auto!important;min-width:0!important;min-height:52px!important;padding:6px!important;font-size:10px!important}.battle-arena .enemy-status-panel strong,.battle-arena .enemy-display-name{max-width:100%;overflow:hidden;font-size:11px!important;text-overflow:ellipsis;white-space:nowrap}.battle-party-command-zone{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;min-width:0;overflow:visible}.battle-party,.battle-party-list,.battle-party-list.is-grid-party,.battle-party.is-large-party,.battle-party-list.is-large-party{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row;gap:8px;width:100%;min-width:0;height:auto;overflow:visible}.battle-party-row,.battle-party-row:not(.is-acting-row){width:100%;min-width:0;height:auto;opacity:1}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card,.battle-party-list.is-large-party .battle-card{width:100%;min-width:0;min-height:112px;display:grid;grid-template-columns:48px minmax(0,1fr)!important;align-items:center;gap:7px;padding:8px;overflow:hidden}.battle-party-row .party-card .battle-portrait,.battle-party-list.is-large-party .battle-portrait{width:48px!important;height:62px!important;border-radius:9px}.battle-party-row .battle-card-copy,.battle-party-list.is-large-party .battle-card-copy{min-width:0;gap:4px;font-size:10px}.party-card-identity{min-width:0;padding-right:0}.party-card-identity>strong,.party-card-identity>span:not(.battle-effect-list){max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-card.is-acting:after{top:5px;right:5px;padding:2px 5px;font-size:9px}.battle-exp-compact{display:none}.battle-gauge{height:13px}.battle-gauge-value{font-size:9px!important}.battle-effect-list{gap:2px}.battle-status-icon{transform:scale(.86);transform-origin:left center}.battle-command-dock.battle-command-bar{position:sticky;bottom:8px;z-index:500;width:100%;min-width:0;border-radius:16px;box-shadow:0 12px 34px #00000094}.battle-command-dock.battle-command-bar:before{display:none}.battle-command-dock .battle-action-panel,.battle-command-bar .battle-action-panel.is-skill-command{max-height:min(38dvh,270px);padding:10px;overflow-x:hidden;overflow-y:auto}.battle-command-bar .battle-action-panel.is-skill-command{grid-template-columns:minmax(0,1fr) 68px!important;column-gap:7px!important}.battle-command-bar .battle-item-menu,.battle-command-bar .battle-item-menu-button{min-width:68px!important;width:68px!important;max-width:68px!important}.battle-skill-button{min-width:76px;min-height:58px;padding:7px}.battle-log-sidebar{display:block;width:100%;height:auto;min-height:0;margin-top:10px;overflow:visible}.battle-mobile-log-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:10px 14px}.battle-log-sidebar .battle-log{display:none;width:100%;max-height:none;margin-top:8px;padding:14px;overflow:visible}.battle-log-sidebar.is-mobile-open .battle-log{display:block}}.replay-battle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.replay-battle-button{min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;text-align:left}.replay-battle-button span{font-size:.84rem;opacity:.78}.battle-arena .battle-enemies{align-items:end;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:clamp(10px,2vw,24px)}.enemy-stage-unit{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;min-height:220px;padding:0;gap:7px;overflow:visible;border:0;border-radius:14px;background:transparent;box-shadow:none}.enemy-stage-unit:hover,.enemy-stage-unit.is-targetable:hover{transform:translateY(-3px);background:transparent}.enemy-stage-unit.is-targetable{background:transparent;box-shadow:none;filter:drop-shadow(0 0 12px rgba(255,216,112,.42))}.enemy-stage-unit.is-last-target{outline:0;filter:drop-shadow(0 0 16px rgba(255,216,112,.75))}.enemy-stage-unit.is-last-target:before{content:"▼";position:absolute;z-index:4;top:-10px;left:50%;color:#ffd86f;font-size:18px;text-shadow:0 2px 3px #000;transform:translate(-50%)}.enemy-stage-unit .enemy-sprite-frame{width:100%;height:142px;overflow:visible;border-radius:0;background:transparent;filter:drop-shadow(0 10px 7px rgba(0,0,0,.58))}.enemy-stage-unit .enemy-sprite-frame .battle-portrait{width:100%;height:100%;border:0;border-radius:0;object-fit:contain;object-position:center bottom;background:transparent;opacity:1;visibility:visible;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(ellipse 49% 50% at 50% 50%,#000 62%,rgba(0,0,0,.92) 78%,transparent 100%);mask-image:radial-gradient(ellipse 49% 50% at 50% 50%,#000 62%,rgba(0,0,0,.92) 78%,transparent 100%)}.enemy-stage-unit .battle-portrait-fallback{position:absolute;inset:auto 25% 8px;min-height:88px;border:2px solid rgba(228,196,122,.62);border-radius:50%;background:rgba(8,20,31,.82)}.enemy-status-panel{width:min(168px,calc(100% - 8px));align-self:center;gap:3px;padding:3px 8px 5px;border:0;border-radius:6px;color:#f6fbff;text-align:left;background:rgba(4,14,23,.7);box-shadow:none}.enemy-display-name{overflow:hidden;color:#fff;font-size:clamp(.9rem,1.35vw,1.08rem);line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 3px #000}.enemy-status-panel>span:not(.battle-gauge):not(.battle-effect-list):not(.boss-telegraph-badge):not(.boss-phase-badge){font-size:.78rem}.enemy-status-panel .enemy-hp-label{color:#fff;font-size:.86rem!important;font-weight:800}.enemy-status-panel .battle-gauge-hp{width:100%;height:7px;border:0;background:rgba(0,0,0,.78);box-shadow:0 1px 2px #000000b3}.party-card.is-acting{border:3px solid #f5cc58;box-shadow:0 0 0 4px #f5cc5840,0 0 24px #f5cc5833,0 10px 26px #0000006b}.party-card.is-acting:after{top:7px;right:7px;padding:6px 12px;border:2px solid #231900;border-radius:999px;color:#120d02;background:#f5cc58;box-shadow:0 2px #000,0 0 0 2px #fff0ab66;font-size:15px;line-height:1;letter-spacing:.02em;font-weight:950}@media (max-width: 760px){.battle-arena .battle-enemies{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px}.enemy-stage-unit{min-height:178px}.enemy-stage-unit .enemy-sprite-frame{height:104px}.enemy-status-panel{padding:5px 6px 7px}.enemy-display-name{font-size:.78rem}.enemy-status-panel .enemy-hp-label{font-size:.72rem!important}.party-card.is-acting:after{padding:5px 9px;font-size:13px}}.enemy-stage-unit.is-hit .enemy-sprite-frame .battle-portrait{animation:enemy-hit-flash .42s cubic-bezier(.2,.8,.2,1) both}@keyframes enemy-hit-flash{0%{filter:brightness(1) saturate(1);transform:translate(0) scale(1)}12%{filter:brightness(4) saturate(0);transform:translate(-5px) scale(1.035)}28%{filter:brightness(1.45) saturate(.7);transform:translate(5px) scale(1.02)}45%{filter:brightness(3.2) saturate(.15);transform:translate(-3px) scale(1.025)}68%{filter:brightness(1.2) saturate(.9);transform:translate(2px) scale(1.01)}to{filter:brightness(1) saturate(1);transform:translate(0) scale(1)}}@media (prefers-reduced-motion: reduce){.enemy-stage-unit.is-hit .enemy-sprite-frame .battle-portrait{animation-duration:.12s}}.enemy-stage-unit:is([data-template-id=slime],[data-template-id=bat],[data-template-id=crimson_imp],[data-template-id=goblin_raider],[data-template-id=masked_scout],[data-template-id=venom_spider],[data-template-id=wolf],[data-template-id=skeleton],[data-template-id=lizard_warrior],[data-template-id=gargoyle],[data-template-id=black_sacred_guardian],[data-template-id=golem],[data-template-id=fire_elemental],[data-template-id=frost_wraith],[data-template-id=shadow_panther],[data-template-id=arcane_eye],[data-template-id=witch],[data-template-id=necromancer],[data-template-id=heretic_inquisitor],[data-template-id=abyss_cultist],[data-template-id=astel_longbow],[data-template-id=astel_spearman],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=corrupted_knight],[data-template-id=black_commander],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame .battle-portrait{mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none}.battle-layout:not(.is-completed){grid-template-columns:minmax(0,1fr) minmax(260px,330px);gap:12px}.battle-stage{grid-template-rows:auto minmax(300px,1fr) auto}.battle-party-command-zone{display:block;min-width:0}.battle-party-list,.battle-party-list.is-large-party{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.battle-party-row{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,390px);align-items:stretch;gap:12px;min-width:0}.battle-party-row:not(.is-acting-row){grid-template-columns:minmax(300px,1fr) minmax(300px,390px)}.battle-party-row:not(.is-acting-row) .party-card{grid-column:1}.battle-party-row .battle-command-dock{grid-column:2;grid-row:1}.battle-party-list.is-large-party .battle-card{grid-template-columns:72px minmax(0,1fr);padding:11px}.battle-party-list.is-large-party .battle-portrait{width:72px;height:86px}.battle-command-dock.is-unanchored{width:min(390px,100%);margin:8px 0 0 auto}.battle-sidebar.battle-log-sidebar{min-height:0;overflow:hidden;border:1px solid rgba(104,142,181,.35);border-radius:18px;background:rgba(8,24,37,.96)}.battle-log-sidebar .battle-log{height:100%;max-height:none;padding:16px}.battle-log-sidebar .battle-log h3{position:sticky;top:-16px;z-index:2;margin:-16px -16px 12px;padding:16px;background:rgba(8,24,37,.98);border-bottom:1px solid rgba(104,142,181,.28)}.enemy-stage-unit .battle-portrait-fallback{display:none!important}.enemy-stage-unit .enemy-sprite-frame,.enemy-stage-unit .enemy-sprite-frame .battle-portrait{opacity:1!important;visibility:visible!important}.enemy-stage-unit .enemy-sprite-frame .battle-portrait{display:block!important;mix-blend-mode:normal!important;-webkit-mask-image:none!important;mask-image:none!important;background:transparent!important}@media (max-width: 1100px){.battle-layout:not(.is-completed){grid-template-columns:minmax(0,1fr) 250px}.battle-party-row,.battle-party-row:not(.is-acting-row){grid-template-columns:minmax(260px,1fr) minmax(270px,340px)}}@media (max-width: 820px){.battle-layout:not(.is-completed){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;overflow-y:auto}.battle-party-row,.battle-party-row:not(.is-acting-row){grid-template-columns:minmax(0,1fr)}.battle-party-row .battle-command-dock,.battle-party-row:not(.is-acting-row) .party-card{grid-column:1}.battle-party-row .battle-command-dock{grid-row:2}.battle-command-dock:before{top:-9px;left:28px;transform:rotate(135deg)}.battle-sidebar.battle-log-sidebar{min-height:220px;max-height:300px}}.battle-arena,.battle-card,.party-card,.enemy-stage-unit{isolation:isolate}.battle-skill-vfx{--vfx-color: #d8bb61;--vfx-color-soft: rgba(216, 187, 97, .16);position:absolute;top:4%;right:4%;bottom:4%;left:4%;z-index:75;display:block;overflow:hidden;border-radius:22px;pointer-events:none;opacity:.82;mix-blend-mode:normal}.enemy-stage-unit>.battle-skill-vfx{top:0;right:0;bottom:62px;left:0;z-index:70}.party-card>.battle-skill-vfx{top:3px;right:3px;bottom:3px;left:3px;z-index:12}.vfx-tone-physical{--vfx-color: #d8cab1;--vfx-color-soft: rgba(193, 169, 130, .14)}.vfx-tone-fire{--vfx-color: #d96638;--vfx-color-soft: rgba(205, 72, 28, .18)}.vfx-tone-ice{--vfx-color: #6fc4df;--vfx-color-soft: rgba(58, 145, 190, .17)}.vfx-tone-lightning{--vfx-color: #9a82d8;--vfx-color-soft: rgba(112, 82, 194, .19)}.vfx-tone-wind{--vfx-color: #69c69b;--vfx-color-soft: rgba(49, 158, 117, .16)}.vfx-tone-holy{--vfx-color: #dec975;--vfx-color-soft: rgba(205, 171, 58, .17)}.vfx-tone-dark{--vfx-color: #9c61c2;--vfx-color-soft: rgba(92, 41, 150, .22)}.vfx-tone-arcane{--vfx-color: #659fcf;--vfx-color-soft: rgba(48, 102, 169, .18)}.vfx-tone-astral{--vfx-color: #788fcf;--vfx-color-soft: rgba(77, 68, 171, .19)}.vfx-tone-nature{--vfx-color: #68c08b;--vfx-color-soft: rgba(43, 155, 95, .17)}.vfx-tone-dawn{--vfx-color: #dcbf69;--vfx-color-soft: rgba(206, 119, 56, .18)}.battle-skill-vfx .vfx-core,.battle-skill-vfx .vfx-skill-sigil,.battle-skill-vfx .vfx-secondary,.battle-skill-vfx .vfx-secondary b,.battle-skill-vfx .vfx-ring,.battle-skill-vfx .vfx-particles,.battle-skill-vfx .vfx-particles i{position:absolute;pointer-events:none}.battle-skill-vfx .vfx-skill-sigil{top:var(--vfx-origin-y, 50%);left:var(--vfx-origin-x, 50%);width:clamp(54px,24%,118px);aspect-ratio:1;display:block;overflow:hidden;border-radius:50%;opacity:0;filter:saturate(.55) brightness(.72) contrast(1.08);transform:translate(-50%,-50%);animation:battle-vfx-sigil var(--vfx-duration, .9s) ease-out both}.battle-skill-vfx .vfx-skill-sigil>img,.battle-skill-vfx .vfx-skill-sigil>i,.battle-skill-vfx .vfx-skill-sigil>b{position:absolute;pointer-events:none}.battle-skill-vfx .vfx-skill-sigil>img{inset:var(--vfx-sigil-inset, 18%);width:auto;height:auto;object-fit:contain;opacity:.24;filter:saturate(.42) contrast(1.08)}.battle-skill-vfx .vfx-skill-sigil>i{top:0;right:0;bottom:0;left:0;border-radius:50%;background:repeating-conic-gradient(from var(--vfx-sigil-rotation, 0deg),var(--vfx-color) 0 2deg,transparent 2deg var(--vfx-sigil-step, 45deg));-webkit-mask:radial-gradient(circle,transparent 0 45%,#000 47% 60%,transparent 62%);mask:radial-gradient(circle,transparent 0 45%,#000 47% 60%,transparent 62%);opacity:.68}.battle-skill-vfx .vfx-skill-sigil>b{inset:calc(var(--vfx-sigil-inset, 18%) + 5%);border:1px dashed var(--vfx-color);border-radius:22%;opacity:.56;transform:rotate(var(--vfx-sigil-rotation, 0deg))}.battle-skill-vfx .vfx-core,.battle-skill-vfx .vfx-ring{top:var(--vfx-origin-y, 50%);left:var(--vfx-origin-x, 50%);transform:translate(-50%,-50%)}.battle-skill-vfx .vfx-ring{width:32%;aspect-ratio:1;border:3px solid var(--vfx-color);border-radius:50%;box-shadow:0 0 8px var(--vfx-color-soft),inset 0 0 12px var(--vfx-color-soft);animation:battle-vfx-ring var(--vfx-duration, .9s) cubic-bezier(.16,.75,.2,1) both}.battle-skill-vfx .vfx-particles{top:0;right:0;bottom:0;left:0}.battle-skill-vfx .vfx-particles i{left:var(--vfx-origin-x, 50%);top:var(--vfx-origin-y, 50%);width:5px;height:5px;border-radius:50%;background:var(--vfx-color);box-shadow:0 0 6px 1px var(--vfx-color-soft);animation:battle-vfx-particle var(--vfx-duration, .9s) ease-out both;animation-delay:var(--particle-delay, 0ms)}.battle-skill-vfx .vfx-particles i:nth-child(1){--px: -95px;--py: -64px;animation-delay:20ms}.battle-skill-vfx .vfx-particles i:nth-child(2){--px: -48px;--py: -106px;animation-delay:60ms}.battle-skill-vfx .vfx-particles i:nth-child(3){--px: 20px;--py: -116px;animation-delay:.1s}.battle-skill-vfx .vfx-particles i:nth-child(4){--px: 82px;--py: -72px;animation-delay:40ms}.battle-skill-vfx .vfx-particles i:nth-child(5){--px: 102px;--py: 4px;animation-delay:90ms}.battle-skill-vfx .vfx-particles i:nth-child(6){--px: 54px;--py: 72px;animation-delay:20ms}.battle-skill-vfx .vfx-particles i:nth-child(7){--px: -26px;--py: 80px;animation-delay:70ms}.battle-skill-vfx .vfx-particles i:nth-child(8){--px: -92px;--py: 26px;animation-delay:.11s}.battle-skill-vfx.is-caster:not(.is-target){top:22%;right:22%;bottom:22%;left:22%;border-radius:50%;animation:battle-vfx-caster var(--vfx-duration, .9s) ease-out both}.vfx-kind-slash .vfx-core{width:132%;height:9px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--vfx-color) 35%,color-mix(in srgb,var(--vfx-color) 72%,#fff) 50%,var(--vfx-color) 65%,transparent);box-shadow:0 0 6px var(--vfx-color-soft),0 0 12px var(--vfx-color-soft);animation:battle-vfx-slash var(--vfx-duration, .9s) cubic-bezier(.2,.8,.25,1) both}.vfx-kind-slash .vfx-core:after{content:"";position:absolute;top:-24px;right:15%;bottom:-24px;left:15%;border-top:4px solid var(--vfx-color);border-radius:50%;transform:rotate(-17deg);filter:drop-shadow(0 0 4px var(--vfx-color-soft))}.vfx-kind-magic .vfx-core,.vfx-kind-burst .vfx-core,.vfx-kind-ailment .vfx-core{width:24%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--vfx-color) 62%,#fff) 0 7%,var(--vfx-color) 17%,var(--vfx-color-soft) 48%,transparent 72%);box-shadow:0 0 18px 6px var(--vfx-color-soft);animation:battle-vfx-impact var(--vfx-duration, .9s) cubic-bezier(.1,.8,.2,1) both}.vfx-kind-burst .vfx-core{width:42%}.vfx-kind-ailment .vfx-core{filter:saturate(1.3) contrast(1.15)}.vfx-kind-heal .vfx-core,.vfx-kind-cleanse .vfx-core,.vfx-kind-resonance .vfx-core,.vfx-kind-ultimate .vfx-core{width:72%;height:110%;background:linear-gradient(90deg,transparent 14%,var(--vfx-color-soft) 34%,color-mix(in srgb,var(--vfx-color) 45%,transparent) 50%,var(--vfx-color-soft) 66%,transparent 86%);filter:blur(2px) drop-shadow(0 0 8px var(--vfx-color-soft));animation:battle-vfx-heal-column var(--vfx-duration, .9s) ease-out both}.vfx-kind-cleanse .vfx-core{width:100%;background:conic-gradient(from 0deg,transparent,var(--vfx-color),transparent 32%,var(--vfx-color),transparent 68%);border-radius:50%;filter:blur(0) drop-shadow(0 0 12px var(--vfx-color));animation:battle-vfx-cleanse var(--vfx-duration, .9s) ease-out both}.vfx-kind-guard .vfx-core{width:58%;aspect-ratio:.82;border:4px solid var(--vfx-color);border-radius:48% 48% 55% 55%/24% 24% 72% 72%;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 52%),var(--vfx-color-soft);box-shadow:inset 0 0 26px var(--vfx-color-soft),0 0 22px var(--vfx-color-soft);animation:battle-vfx-guard var(--vfx-duration, .9s) cubic-bezier(.2,.8,.2,1) both}.battle-skill-vfx .vfx-secondary{top:0;right:0;bottom:0;left:0;pointer-events:none}.battle-skill-vfx .vfx-secondary b{top:var(--vfx-origin-y, 50%);left:var(--vfx-origin-x, 50%);width:78%;height:4px;border-radius:999px;background:linear-gradient(90deg,transparent 4%,var(--vfx-color) 38% 62%,transparent 96%);opacity:0;transform:translate(-50%,calc(-50% + var(--stroke-offset, 0px))) rotate(var(--stroke-angle, 0deg));box-shadow:0 0 5px var(--vfx-color-soft);animation:battle-vfx-stroke var(--vfx-duration, .9s) ease-out var(--strike-delay, 0ms) both}.vfx-weapon-blade .vfx-secondary b{height:5px}.vfx-weapon-dagger .vfx-secondary b{width:56%;height:3px}.vfx-weapon-spear .vfx-secondary b{width:112%;height:3px}.vfx-weapon-spear .vfx-secondary b:after,.vfx-weapon-bow .vfx-secondary b:after{position:absolute;top:50%;right:9%;width:12px;height:12px;border-top:3px solid var(--vfx-color);border-right:3px solid var(--vfx-color);transform:translateY(-50%) rotate(45deg);content:""}.vfx-weapon-bow .vfx-secondary b{width:105%;height:2px;background:linear-gradient(90deg,transparent,var(--vfx-color) 28% 78%,transparent)}.vfx-weapon-staff .vfx-secondary b,.vfx-weapon-rod .vfx-secondary b,.vfx-weapon-focus .vfx-secondary b{width:38%;height:auto;aspect-ratio:1;border:2px solid var(--vfx-color);border-radius:50%;background:transparent;box-shadow:inset 0 0 10px var(--vfx-color-soft),0 0 6px var(--vfx-color-soft)}.vfx-weapon-shield .vfx-secondary b{width:42%;height:52%;border:3px solid var(--vfx-color);border-radius:45% 45% 58% 58%/24% 24% 70% 70%;background:var(--vfx-color-soft)}.vfx-weapon-hammer .vfx-secondary b{width:58%;height:9px;border-radius:3px}.vfx-weapon-voice .vfx-secondary b{width:28%;height:28%;border:3px solid var(--vfx-color);border-width:3px 3px 0 0;border-radius:50%;background:transparent}.vfx-kind-projectile .vfx-core,.vfx-kind-volley .vfx-core,.vfx-kind-pierce .vfx-core{width:118%;height:3px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--vfx-color) 38% 78%,transparent);box-shadow:0 0 6px var(--vfx-color-soft);animation:battle-vfx-projectile var(--vfx-duration, .9s) ease-out both}.vfx-kind-volley .vfx-core{height:7px;background:repeating-linear-gradient(0deg,transparent 0 2px,var(--vfx-color) 2px 3px)}.vfx-kind-pierce .vfx-core{height:5px}.vfx-kind-flurry .vfx-core{width:72%;height:4px;background:var(--vfx-color);box-shadow:0 0 6px var(--vfx-color-soft);animation:battle-vfx-flurry var(--vfx-duration, .9s) ease-out both}.vfx-kind-crush .vfx-core,.vfx-kind-quake .vfx-core{width:34%;aspect-ratio:1;border:5px solid var(--vfx-color);border-radius:18%;background:var(--vfx-color-soft);animation:battle-vfx-crush var(--vfx-duration, .9s) ease-out both}.vfx-kind-quake .vfx-ring{width:58%;border-style:dashed}.vfx-kind-sonic .vfx-core{width:24%;aspect-ratio:1;border:4px double var(--vfx-color);border-radius:50%;background:transparent;animation:battle-vfx-sonic var(--vfx-duration, .9s) ease-out both}.vfx-pattern-0 .vfx-ring,.vfx-pattern-6 .vfx-ring{border-style:dashed}.vfx-pattern-1 .vfx-ring,.vfx-pattern-7 .vfx-ring{border-radius:22%;transform:translate(-50%,-50%) rotate(45deg)}.vfx-pattern-2 .vfx-ring,.vfx-pattern-8 .vfx-ring{aspect-ratio:1.5}.vfx-pattern-3 .vfx-particles i,.vfx-pattern-9 .vfx-particles i{width:3px;height:9px;border-radius:2px}.vfx-pattern-4 .vfx-ring,.vfx-pattern-10 .vfx-ring{border-width:1px 4px}.vfx-pattern-5 .vfx-core,.vfx-pattern-11 .vfx-core{filter:saturate(.78) contrast(.92)}.vfx-rarity-uncommon .vfx-ring{border-style:dashed}.vfx-rarity-rare .vfx-ring{border-width:2px 4px}.vfx-rarity-epic .vfx-ring{outline:1px solid var(--vfx-color-soft);outline-offset:7px}.vfx-rarity-legendary .vfx-ring{border-style:double;border-width:5px;outline:1px dashed var(--vfx-color-soft);outline-offset:9px}.battle-skill-cast-banner{--vfx-color: #f6d66f;position:absolute;z-index:110;top:18px;left:50%;display:grid;min-width:min(320px,70%);padding:10px 24px 12px;border:1px solid color-mix(in srgb,var(--vfx-color) 72%,transparent);border-radius:999px;color:#fff;text-align:center;background:linear-gradient(90deg,transparent,rgba(4,13,25,.9) 16% 84%,transparent);text-shadow:0 2px 8px #000,0 0 12px var(--vfx-color);transform:translate(-50%);pointer-events:none;animation:battle-vfx-banner var(--vfx-duration, .9s) ease-out both}.battle-skill-cast-banner small{color:var(--vfx-color);font-size:12px;font-weight:800}.battle-skill-cast-banner strong{font-size:clamp(18px,2vw,26px)}.battle-global-vfx{--vfx-color: #f6d66f;--vfx-color-soft: rgba(246, 214, 111, .28);position:absolute;z-index:45;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;opacity:0}.battle-global-vfx:is(.vfx-kind-burst,.vfx-kind-resonance,.vfx-kind-ultimate,.vfx-kind-volley,.vfx-kind-quake,.vfx-kind-sonic){opacity:.62;background:radial-gradient(circle at 50% 58%,var(--vfx-color-soft),transparent 54%);animation:battle-vfx-global var(--vfx-duration, .9s) ease-out both}.battle-global-vfx i{position:absolute;left:50%;top:62%;width:18%;aspect-ratio:1;border:3px solid var(--vfx-color);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 22px var(--vfx-color-soft),inset 0 0 18px var(--vfx-color-soft);animation:battle-vfx-global-ring var(--vfx-duration, .9s) ease-out both}.battle-global-vfx i:nth-child(2){animation-delay:90ms}.battle-global-vfx i:nth-child(3){animation-delay:.18s}.battle-arena.has-skill-vfx:is(.vfx-kind-slash,.vfx-kind-magic,.vfx-kind-burst,.vfx-kind-crush,.vfx-kind-quake)>.battle-arena-background{animation:battle-vfx-camera var(--vfx-duration, .9s) ease-out both}@keyframes battle-vfx-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.18)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(2.2)}}@keyframes battle-vfx-particle{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}22%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--px)),calc(-50% + var(--py))) scale(1.5)}}@keyframes battle-vfx-caster{0%{opacity:0;transform:scale(.5) rotate(-12deg)}28%{opacity:1}to{opacity:0;transform:scale(1.25) rotate(8deg)}}@keyframes battle-vfx-slash{0%{opacity:0;transform:translate(-82%,-50%) rotate(var(--vfx-angle, -30deg)) scaleX(.1)}18%{opacity:1}56%{opacity:.88;transform:translate(-50%,-50%) rotate(var(--vfx-angle, -30deg)) scaleX(1)}to{opacity:0;transform:translate(-18%,-50%) rotate(var(--vfx-angle, -30deg)) scaleX(.7)}}@keyframes battle-vfx-stroke{0%{opacity:0;clip-path:inset(0 100% 0 0)}26%{opacity:.72}62%{opacity:.48;clip-path:inset(0 0 0 0)}to{opacity:0;clip-path:inset(0 0 0 100%)}}@keyframes battle-vfx-sigil{0%{opacity:0;transform:translate(-50%,-50%) scale(.55) rotate(-8deg)}28%,62%{opacity:.3;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.24) rotate(7deg)}}@keyframes battle-vfx-projectile{0%{opacity:0;transform:translate(-110%,-50%) rotate(var(--vfx-angle, 0deg)) scaleX(.35)}28%{opacity:.82}72%{opacity:.62;transform:translate(-42%,-50%) rotate(var(--vfx-angle, 0deg)) scaleX(1)}to{opacity:0;transform:translate(12%,-50%) rotate(var(--vfx-angle, 0deg)) scaleX(.65)}}@keyframes battle-vfx-flurry{0%{opacity:0;transform:translate(-82%,-80%) rotate(var(--vfx-angle, -25deg)) scaleX(.2)}34%{opacity:.76;transform:translate(-50%,-50%) rotate(var(--vfx-angle, -25deg)) scaleX(1)}58%{opacity:.62;transform:translate(-50%,-50%) rotate(var(--vfx-secondary-angle, 35deg)) scaleX(.82)}to{opacity:0;transform:translate(-18%,-24%) rotate(var(--vfx-secondary-angle, 35deg)) scaleX(.45)}}@keyframes battle-vfx-crush{0%{opacity:0;transform:translate(-50%,-135%) rotate(var(--vfx-angle, 0deg)) scale(.48)}44%{opacity:.82;transform:translate(-50%,-48%) rotate(var(--vfx-angle, 0deg)) scale(1)}70%{opacity:.45;transform:translate(-50%,-40%) scale(1.18,.72)}to{opacity:0;transform:translate(-50%,-34%) scale(1.45,.4)}}@keyframes battle-vfx-sonic{0%{opacity:0;transform:translate(-50%,-50%) scale(.12)}32%{opacity:.68}to{opacity:0;transform:translate(-50%,-50%) scale(3.2,1.55)}}@keyframes battle-vfx-impact{0%{opacity:0;transform:translate(-50%,-50%) scale(.08)}34%{opacity:1;transform:translate(-50%,-50%) scale(1.25)}to{opacity:0;transform:translate(-50%,-50%) scale(3.4)}}@keyframes battle-vfx-heal-column{0%{opacity:0;transform:translate(-50%,35%) scaleY(.2)}32%{opacity:.92;transform:translate(-50%,-50%) scaleY(1)}to{opacity:0;transform:translate(-50%,-72%) scaleY(1.15)}}@keyframes battle-vfx-cleanse{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-120deg)}42%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.8) rotate(150deg)}}@keyframes battle-vfx-guard{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}35%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.12)}}@keyframes battle-vfx-banner{0%{opacity:0;transform:translate(-50%,-14px) scale(.9)}20%,68%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-8px) scale(1.02)}}@keyframes battle-vfx-global{0%{opacity:0;filter:brightness(.7)}30%{opacity:1;filter:brightness(1.45)}to{opacity:0;filter:brightness(1)}}@keyframes battle-vfx-global-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.15) rotate(-10deg)}25%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%) scale(5.4) rotate(20deg)}}@keyframes battle-vfx-camera{0%,to{transform:scale(1);filter:brightness(1)}20%{transform:scale(1.008) translate(-2px);filter:brightness(1.12)}30%{transform:scale(1.008) translate(2px)}42%{transform:scale(1.004) translate(-1px)}}.vfx-theme-physical{--vfx-color: #d4c4aa;--vfx-accent: #8f7557;--vfx-color-soft: rgba(166, 137, 98, .18)}.vfx-theme-steel{--vfx-color: #d7e1e8;--vfx-accent: #71899a;--vfx-color-soft: rgba(142, 171, 190, .18)}.vfx-theme-fire{--vfx-color: #e56b32;--vfx-accent: #ffb43e;--vfx-color-soft: rgba(218, 70, 25, .2)}.vfx-theme-ice{--vfx-color: #79d9ed;--vfx-accent: #d9fbff;--vfx-color-soft: rgba(77, 178, 216, .2)}.vfx-theme-lightning{--vfx-color: #aa91eb;--vfx-accent: #cfe5ff;--vfx-color-soft: rgba(105, 79, 203, .2)}.vfx-theme-wind{--vfx-color: #79d2ad;--vfx-accent: #d7fff0;--vfx-color-soft: rgba(64, 169, 125, .18)}.vfx-theme-holy{--vfx-color: #e5ca6d;--vfx-accent: #fff4b3;--vfx-color-soft: rgba(205, 168, 48, .19)}.vfx-theme-heal{--vfx-color: #67d8a0;--vfx-accent: #d8ffe9;--vfx-color-soft: rgba(48, 179, 111, .18)}.vfx-theme-nature{--vfx-color: #72cc78;--vfx-accent: #dbffb0;--vfx-color-soft: rgba(65, 164, 74, .18)}.vfx-theme-arcane{--vfx-color: #6fa8df;--vfx-accent: #d7eaff;--vfx-color-soft: rgba(58, 111, 181, .19)}.vfx-theme-cosmic{--vfx-color: #8d83df;--vfx-accent: #f2ddff;--vfx-color-soft: rgba(83, 66, 181, .2)}.vfx-theme-dark{--vfx-color: #9860c6;--vfx-accent: #d7a6ee;--vfx-color-soft: rgba(90, 38, 143, .22)}.vfx-theme-poison{--vfx-color: #8fc94e;--vfx-accent: #d8ff79;--vfx-color-soft: rgba(105, 163, 44, .2)}.vfx-theme-smoke{--vfx-color: #8f9aa5;--vfx-accent: #c7d0d8;--vfx-color-soft: rgba(92, 106, 117, .2)}.vfx-theme-blood{--vfx-color: #c84e5e;--vfx-accent: #ff9b8e;--vfx-color-soft: rgba(157, 41, 57, .21)}.vfx-theme-moon{--vfx-color: #b5afe8;--vfx-accent: #f4edff;--vfx-color-soft: rgba(110, 94, 186, .2)}.vfx-theme-dawn{--vfx-color: #e2a85f;--vfx-accent: #fff0a3;--vfx-color-soft: rgba(205, 115, 43, .2)}.vfx-theme-astral{--vfx-color: #748edc;--vfx-accent: #c9d7ff;--vfx-color-soft: rgba(65, 77, 178, .2)}.vfx-theme-sound{--vfx-color: #6bc8c8;--vfx-accent: #fac2ea;--vfx-color-soft: rgba(58, 157, 164, .18)}.vfx-theme-earth{--vfx-color: #b88a5c;--vfx-accent: #e8c58b;--vfx-color-soft: rgba(142, 94, 53, .2)}.semantic-skill-vfx{overflow:visible;opacity:.88;filter:saturate(.9) brightness(.82)}.semantic-skill-vfx .semantic-vfx-glyph,.semantic-skill-vfx .semantic-vfx-glyph i,.semantic-skill-vfx .semantic-vfx-trails,.semantic-skill-vfx .semantic-vfx-trails b,.semantic-skill-vfx .semantic-vfx-particles,.semantic-skill-vfx .semantic-vfx-particles i{position:absolute;pointer-events:none}.semantic-skill-vfx .semantic-vfx-glyph{top:var(--vfx-origin-y, 50%);left:var(--vfx-origin-x, 50%);width:clamp(54px,25%,124px);aspect-ratio:1;opacity:0;transform:translate(-50%,-50%);animation:semantic-vfx-impact var(--vfx-duration, 1.25s) cubic-bezier(.18,.74,.24,1) both}.semantic-skill-vfx .semantic-vfx-glyph i{top:15%;right:15%;bottom:15%;left:15%;display:block;border:2px solid var(--vfx-color);background:linear-gradient(135deg,color-mix(in srgb,var(--vfx-accent) 52%,transparent),var(--vfx-color-soft));box-shadow:0 0 9px var(--vfx-color-soft);transform:rotate(calc(var(--vfx-sigil-rotation, 0deg) + var(--glyph-turn, 0deg)))}.semantic-skill-vfx .semantic-vfx-glyph i:nth-child(2){top:28%;right:28%;bottom:28%;left:28%;--glyph-turn: 45deg;opacity:.72}.semantic-skill-vfx .semantic-vfx-glyph i:nth-child(3){top:40%;right:40%;bottom:40%;left:40%;--glyph-turn: 90deg;background:var(--vfx-accent);opacity:.62}.semantic-skill-vfx .semantic-vfx-trails,.semantic-skill-vfx .semantic-vfx-particles{top:0;right:0;bottom:0;left:0}.semantic-skill-vfx .semantic-vfx-trails b{top:var(--vfx-origin-y, 50%);left:var(--vfx-origin-x, 50%);width:92%;height:4px;border-radius:999px;opacity:0;background:linear-gradient(90deg,transparent 3%,var(--vfx-color) 28% 70%,transparent 97%);box-shadow:0 0 5px var(--vfx-color-soft);transform:translate(-50%,calc(-50% + var(--stroke-offset, 0px))) rotate(var(--stroke-angle, 0deg));animation:semantic-vfx-trail var(--vfx-duration, 1.25s) ease-out var(--trail-delay, 0ms) both}.semantic-skill-vfx .semantic-vfx-particles i{left:var(--vfx-origin-x, 50%);top:var(--vfx-origin-y, 50%);width:5px;height:5px;border-radius:50%;background:var(--vfx-color);box-shadow:0 0 5px var(--vfx-color-soft);animation:semantic-vfx-particle var(--vfx-duration, 1.25s) ease-out var(--particle-delay, 0ms) both}.semantic-skill-vfx.is-caster:not(.is-target){top:18%;right:18%;bottom:18%;left:18%;opacity:.58}.semantic-skill-vfx.is-caster:not(.is-target) .semantic-vfx-trails{display:none}.semantic-skill-vfx.is-caster:not(.is-target) .semantic-vfx-glyph{animation-name:semantic-vfx-charge}.semantic-skill-vfx:is(.vfx-shape-flame-bolt,.vfx-shape-purging-flame,.vfx-shape-last-stand,.vfx-shape-meteor,.vfx-shape-apocalypse) .semantic-vfx-glyph i{border:0;border-radius:62% 38% 70% 30%/72% 42% 58% 28%;clip-path:polygon(50% 0,72% 28%,91% 52%,72% 100%,48% 78%,27% 100%,9% 55%,34% 29%);background:radial-gradient(circle at 52% 70%,var(--vfx-accent),var(--vfx-color) 46%,rgba(116,20,8,.25) 72%)}.semantic-skill-vfx:is(.vfx-shape-flame-bolt,.vfx-shape-purging-flame,.vfx-shape-last-stand,.vfx-shape-meteor,.vfx-shape-apocalypse) .semantic-vfx-particles i{width:4px;height:10px;border-radius:70% 30% 60% 40%}.semantic-skill-vfx:is(.vfx-shape-frost-spike,.vfx-shape-absolute-zero) .semantic-vfx-glyph i{clip-path:polygon(50% 0,63% 34%,100% 50%,63% 63%,50% 100%,37% 63%,0 50%,37% 34%);background:linear-gradient(135deg,var(--vfx-accent),var(--vfx-color) 48%,transparent 50%);border:0}.semantic-skill-vfx:is(.vfx-shape-frost-spike,.vfx-shape-absolute-zero) .semantic-vfx-particles i{border-radius:1px;transform:rotate(45deg)}.semantic-skill-vfx:is(.vfx-shape-lightning-chain,.vfx-shape-blitz-daggers) .semantic-vfx-glyph i{top:7%;right:34%;bottom:7%;left:34%;border:0;clip-path:polygon(56% 0,100% 0,67% 38%,96% 38%,20% 100%,40% 55%,8% 55%);background:linear-gradient(var(--vfx-accent),var(--vfx-color))}.semantic-skill-vfx:is(.vfx-shape-lightning-chain,.vfx-shape-blitz-daggers) .semantic-vfx-trails b{height:10px;border-radius:0;clip-path:polygon(0 45%,18% 22%,35% 64%,54% 30%,73% 70%,100% 43%,100% 58%,74% 86%,54% 48%,35% 82%,18% 40%,0 60%)}.semantic-skill-vfx:is(.vfx-shape-blade,.vfx-shape-cyclone-blade,.vfx-shape-sword-beam,.vfx-shape-royal-blade,.vfx-shape-judgement-blade,.vfx-shape-dawn-blades,.vfx-shape-backstab,.vfx-shape-fan-blades,.vfx-shape-venom-blade,.vfx-shape-phantom-blades,.vfx-shape-bleeding-dagger,.vfx-shape-starlight-claw,.vfx-shape-daybreak-sunblade,.vfx-shape-eclipse-blade,.vfx-shape-weapon-blade,.vfx-shape-weapon-daggers) .semantic-vfx-glyph i{top:44%;right:2%;bottom:44%;left:2%;height:8%;border:0;border-radius:100% 0;clip-path:polygon(0 70%,88% 0,100% 50%,88% 100%);background:linear-gradient(90deg,transparent,var(--vfx-color) 22%,var(--vfx-accent))}.semantic-skill-vfx:is(.vfx-shape-starlight-claw,.vfx-shape-fan-blades,.vfx-shape-phantom-blades,.vfx-shape-weapon-daggers) .semantic-vfx-glyph i:nth-child(2){transform:translateY(-18px) rotate(calc(var(--vfx-angle) + 7deg))}.semantic-skill-vfx:is(.vfx-shape-starlight-claw,.vfx-shape-fan-blades,.vfx-shape-phantom-blades,.vfx-shape-weapon-daggers) .semantic-vfx-glyph i:nth-child(3){transform:translateY(18px) rotate(calc(var(--vfx-angle) - 7deg))}.semantic-skill-vfx:is(.vfx-shape-double-arrow,.vfx-shape-power-arrow,.vfx-shape-arrow-rain,.vfx-shape-piercing-arrow,.vfx-shape-triple-arrow,.vfx-shape-sky-arrow,.vfx-shape-star-arrow,.vfx-shape-tempest-arrows,.vfx-shape-formation-arrows,.vfx-shape-formation-spear,.vfx-shape-light-lance,.vfx-shape-shining-lance,.vfx-shape-halo-spear,.vfx-shape-weapon-arrow,.vfx-shape-weapon-spear) .semantic-vfx-glyph i{top:46%;right:0;bottom:46%;left:0;height:5%;border:0;background:linear-gradient(90deg,transparent,var(--vfx-color) 24% 84%,var(--vfx-accent));clip-path:polygon(0 40%,78% 40%,78% 0,100% 50%,78% 100%,78% 60%,0 60%)}.semantic-skill-vfx:is(.vfx-shape-wall,.vfx-shape-shield,.vfx-shape-fortress,.vfx-shape-oath,.vfx-shape-broken-shield,.vfx-shape-aegis,.vfx-shape-pure-wall,.vfx-shape-seraph-wing,.vfx-shape-aurora,.vfx-shape-twilight-wing,.vfx-shape-guardian-beast,.vfx-shape-immortal-fortress,.vfx-shape-royal-shield,.vfx-shape-weapon-shield) .semantic-vfx-glyph i{top:7%;right:20%;bottom:7%;left:20%;border-radius:42% 42% 58% 58%/18% 18% 78% 78%;clip-path:polygon(50% 0,96% 18%,87% 70%,50% 100%,13% 70%,4% 18%)}.semantic-skill-vfx:is(.vfx-shape-broken-shield,.vfx-shape-shield) .semantic-vfx-glyph i:nth-child(2){clip-path:polygon(0 0,46% 0,33% 35%,62% 43%,42% 100%,0 100%)}.semantic-skill-vfx:is(.vfx-shape-cross,.vfx-shape-greater-cross,.vfx-shape-light-heart,.vfx-shape-blessing-halo,.vfx-shape-sanctuary,.vfx-shape-salvation-halo,.vfx-shape-holy-droplets,.vfx-shape-prayer,.vfx-shape-salvation-bell,.vfx-shape-stigma,.vfx-shape-miracle,.vfx-shape-resurrection-wing,.vfx-shape-weapon-light) .semantic-vfx-glyph i{top:10%;right:10%;bottom:10%;left:10%;border-radius:50%;background:conic-gradient(from 45deg,transparent 0 10%,var(--vfx-color) 11% 14%,transparent 15% 35%,var(--vfx-accent) 36% 39%,transparent 40% 60%,var(--vfx-color) 61% 64%,transparent 65% 85%,var(--vfx-accent) 86% 89%,transparent 90%)}.semantic-skill-vfx:is(.vfx-shape-cross,.vfx-shape-greater-cross,.vfx-shape-miracle) .semantic-vfx-glyph i:nth-child(3){top:22%;right:42%;bottom:22%;left:42%;clip-path:polygon(36% 0,64% 0,64% 36%,100% 36%,100% 64%,64% 64%,64% 100%,36% 100%,36% 64%,0 64%,0 36%,36% 36%)}.semantic-skill-vfx:is(.vfx-shape-focus-rune,.vfx-shape-mana-orb,.vfx-shape-shift-rune,.vfx-shape-falling-stars,.vfx-shape-cosmos-collapse,.vfx-shape-curse-orb,.vfx-shape-skull-hex,.vfx-shape-court-orb,.vfx-shape-sealing-chain,.vfx-shape-hunter-mark,.vfx-shape-weak-point,.vfx-shape-crescent,.vfx-shape-night-tide,.vfx-shape-constellation,.vfx-shape-weapon-magic,.vfx-shape-weapon-focus) .semantic-vfx-glyph i{top:9%;right:9%;bottom:9%;left:9%;border-radius:50%;background:repeating-conic-gradient(from var(--vfx-sigil-rotation),var(--vfx-color) 0 3deg,transparent 3deg var(--vfx-sigil-step));-webkit-mask:radial-gradient(circle,transparent 0 34%,#000 36% 48%,transparent 50% 61%,#000 63% 66%,transparent 68%);mask:radial-gradient(circle,transparent 0 34%,#000 36% 48%,transparent 50% 61%,#000 63% 66%,transparent 68%)}.semantic-skill-vfx:is(.vfx-shape-crescent,.vfx-shape-eclipse-blade) .semantic-vfx-glyph i{border:0;border-radius:50%;background:var(--vfx-color);clip-path:path("M 50 0 A 50 50 0 1 0 50 100 A 37 50 0 0 1 50 0");-webkit-mask:none;mask:none}.semantic-skill-vfx:is(.vfx-shape-hammer,.vfx-shape-titan,.vfx-shape-fissure,.vfx-shape-stone-fist,.vfx-shape-weapon-hammer) .semantic-vfx-glyph i{top:14%;right:14%;bottom:14%;left:14%;border:0;border-radius:10%;clip-path:polygon(8% 18%,37% 5%,54% 21%,86% 12%,100% 45%,78% 65%,69% 94%,35% 87%,18% 100%,0 66%);background:linear-gradient(145deg,var(--vfx-accent),var(--vfx-color) 52%,#493222)}.semantic-skill-vfx:is(.vfx-shape-fissure,.vfx-shape-stone-fist) .semantic-vfx-trails b{height:9px;clip-path:polygon(0 40%,18% 20%,35% 63%,51% 31%,69% 73%,100% 43%,100% 68%,69% 100%,50% 57%,34% 87%,17% 45%,0 65%)}.semantic-skill-vfx:is(.vfx-shape-crown-roar,.vfx-shape-seraph-song,.vfx-shape-salvation-bell,.vfx-shape-screech,.vfx-shape-command-banner) .semantic-vfx-glyph i{border-radius:50%;background:transparent;border-width:3px 3px 0 0}.semantic-skill-vfx.vfx-shape-valor .semantic-vfx-glyph i{top:9%;right:18%;bottom:9%;left:18%;border:0;clip-path:polygon(8% 90%,0 40%,25% 58%,38% 10%,54% 55%,82% 0,74% 62%,100% 42%,90% 90%);background:linear-gradient(0deg,var(--vfx-color),var(--vfx-accent))}.semantic-skill-vfx.vfx-shape-sun .semantic-vfx-glyph i{top:8%;right:8%;bottom:8%;left:8%;border:0;border-radius:50%;background:repeating-conic-gradient(var(--vfx-accent) 0 8deg,transparent 8deg 22deg),radial-gradient(circle,var(--vfx-accent) 0 28%,var(--vfx-color) 29% 43%,transparent 45%)}.semantic-skill-vfx.vfx-shape-broken-crown .semantic-vfx-glyph i{top:28%;right:8%;bottom:28%;left:8%;border:0;clip-path:polygon(0 22%,22% 58%,38% 5%,55% 63%,78% 14%,100% 48%,88% 100%,10% 100%);background:linear-gradient(145deg,var(--vfx-accent),var(--vfx-color))}.semantic-skill-vfx:is(.vfx-shape-clear-feather,.vfx-shape-wind-feather) .semantic-vfx-glyph i{top:7%;right:28%;bottom:7%;left:28%;border-radius:100% 0;border-width:2px 0 0 2px;background:linear-gradient(135deg,var(--vfx-color-soft),transparent 62%);transform:rotate(calc(var(--vfx-angle) + var(--glyph-turn)))}.semantic-skill-vfx.vfx-shape-divine-pillar .semantic-vfx-glyph i{top:-32%;right:37%;bottom:-32%;left:37%;border:0;border-radius:50%;background:linear-gradient(90deg,transparent,var(--vfx-accent),var(--vfx-color),transparent);filter:blur(1px)}.semantic-skill-vfx.vfx-shape-hawk-eye .semantic-vfx-glyph i{top:26%;right:2%;bottom:26%;left:2%;border-radius:80% 0;background:radial-gradient(circle at 50% 50%,var(--vfx-accent) 0 12%,transparent 14% 28%,var(--vfx-color) 30% 35%,transparent 37%);transform:rotate(45deg)}.semantic-skill-vfx.vfx-shape-shadow-step .semantic-vfx-glyph i{top:12%;right:32%;bottom:12%;left:32%;border:0;border-radius:48% 48% 20% 20%;background:linear-gradient(90deg,transparent,var(--vfx-color),transparent);filter:blur(4px)}.semantic-skill-vfx.vfx-shape-shadow-step .semantic-vfx-glyph i:nth-child(1){transform:translate(-18px);opacity:.35}.semantic-skill-vfx.vfx-shape-shadow-step .semantic-vfx-glyph i:nth-child(2){transform:translate(0);opacity:.7}.semantic-skill-vfx.vfx-shape-shadow-step .semantic-vfx-glyph i:nth-child(3){transform:translate(18px);opacity:.28}.semantic-skill-vfx.vfx-shape-smoke-cloud .semantic-vfx-glyph i{border:0;border-radius:50%;background:radial-gradient(circle,var(--vfx-accent),var(--vfx-color) 48%,transparent 70%);filter:blur(7px)}.semantic-skill-vfx:is(.vfx-shape-venom-blade,.vfx-shape-life-heart,.vfx-shape-eden-garden,.vfx-shape-afterglow-breath) .semantic-vfx-particles i{width:7px;height:11px;border-radius:80% 20% 65% 35%}.semantic-skill-vfx:is(.vfx-shape-body-slam,.vfx-shape-fang,.vfx-shape-natural-strike) .semantic-vfx-glyph i{top:24%;right:24%;bottom:24%;left:24%;border-radius:46% 54% 42% 58%}.semantic-skill-vfx.vfx-motion-strike .semantic-vfx-glyph{animation-name:semantic-vfx-impact}.semantic-skill-vfx.vfx-motion-sweep .semantic-vfx-trails b{width:118%;height:6px;animation-name:semantic-vfx-trail}.semantic-skill-vfx.vfx-motion-projectile .semantic-vfx-glyph{animation-name:semantic-vfx-projectile}.semantic-skill-vfx.vfx-motion-pierce .semantic-vfx-glyph{animation-name:semantic-vfx-pierce}.semantic-skill-vfx.vfx-motion-dash .semantic-vfx-glyph{animation-name:semantic-vfx-dash}.semantic-skill-vfx.vfx-motion-spin .semantic-vfx-glyph{animation-name:semantic-vfx-spin}.semantic-skill-vfx.vfx-motion-field .semantic-vfx-glyph{animation-name:semantic-vfx-field}.semantic-skill-vfx.vfx-motion-fall .semantic-vfx-glyph{animation-name:semantic-vfx-fall}.semantic-skill-vfx.vfx-motion-shatter .semantic-vfx-glyph{animation-name:semantic-vfx-shatter}.semantic-skill-vfx:is(.vfx-motion-roar,.vfx-motion-wave,.vfx-motion-pulse) .semantic-vfx-glyph{animation-name:semantic-vfx-wave}.semantic-skill-vfx:is(.vfx-motion-burst,.vfx-motion-implode) .semantic-vfx-glyph{animation-name:semantic-vfx-burst}.semantic-skill-vfx:is(.vfx-motion-rain,.vfx-motion-volley,.vfx-motion-scatter) .semantic-vfx-trails b{animation-name:semantic-vfx-rain}.semantic-skill-vfx:is(.vfx-motion-rise,.vfx-motion-orbit) .semantic-vfx-glyph{animation-name:semantic-vfx-rise}.semantic-skill-vfx:is(.vfx-motion-warp,.vfx-motion-afterimage,.vfx-motion-eclipse) .semantic-vfx-glyph{animation-name:semantic-vfx-warp}.semantic-skill-vfx.vfx-motion-chain .semantic-vfx-trails b{animation-name:semantic-vfx-chain}.semantic-skill-vfx:is(.vfx-motion-guard,.vfx-motion-bind) .semantic-vfx-glyph{animation-name:semantic-vfx-guard}.semantic-skill-vfx.vfx-motion-double-strike .semantic-vfx-trails b:nth-child(2){animation-delay:.18s;transform:translate(-50%,-50%) rotate(calc(var(--stroke-angle) * -1))}.semantic-global-vfx:is(.vfx-motion-field,.vfx-motion-burst,.vfx-motion-implode,.vfx-motion-rain,.vfx-motion-volley,.vfx-motion-roar,.vfx-motion-wave,.vfx-motion-shatter){opacity:.42;background:radial-gradient(circle at 50% 58%,var(--vfx-color-soft),transparent 56%);animation:battle-vfx-global var(--vfx-duration, 1.25s) ease-out both}.semantic-global-vfx i{border-color:var(--vfx-color);box-shadow:0 0 14px var(--vfx-color-soft),inset 0 0 12px var(--vfx-color-soft)}.battle-arena.has-skill-vfx:is(.vfx-motion-fall,.vfx-motion-shatter,.vfx-motion-burst,.vfx-motion-implode)>.battle-arena-background{animation:battle-vfx-camera var(--vfx-duration, 1.25s) ease-out both}@keyframes semantic-vfx-impact{0%{opacity:0;transform:translate(-50%,-50%) scale(.18) rotate(-22deg)}34%{opacity:.9;transform:translate(-50%,-50%) scale(1) rotate(0)}72%{opacity:.62}to{opacity:0;transform:translate(-50%,-50%) scale(1.7) rotate(18deg)}}@keyframes semantic-vfx-charge{0%{opacity:0;transform:translate(-50%,-50%) scale(1.45) rotate(-34deg)}38%,70%{opacity:.72;transform:translate(-50%,-50%) scale(.72) rotate(8deg)}to{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(38deg)}}@keyframes semantic-vfx-projectile{0%{opacity:0;transform:translate(-190%,-50%) scale(.42) rotate(var(--vfx-angle))}34%{opacity:.92}72%{opacity:.72;transform:translate(-50%,-50%) scale(1) rotate(var(--vfx-angle))}to{opacity:0;transform:translate(70%,-50%) scale(.68) rotate(var(--vfx-angle))}}@keyframes semantic-vfx-pierce{0%{opacity:0;transform:translate(-150%,-50%) scaleX(.25) rotate(var(--vfx-angle))}44%{opacity:.94;transform:translate(-50%,-50%) scaleX(1.3) rotate(var(--vfx-angle))}to{opacity:0;transform:translate(85%,-50%) scaleX(.5) rotate(var(--vfx-angle))}}@keyframes semantic-vfx-dash{0%{opacity:0;transform:translate(-140%,30%) skew(-18deg) scale(.45)}38%{opacity:.9;transform:translate(-50%,-50%) skew(-8deg) scale(1)}to{opacity:0;transform:translate(65%,-110%) skew(10deg) scale(.7)}}@keyframes semantic-vfx-spin{0%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotate(-180deg)}42%{opacity:.88;transform:translate(-50%,-50%) scale(1.25) rotate(90deg)}to{opacity:0;transform:translate(-50%,-50%) scale(2) rotate(420deg)}}@keyframes semantic-vfx-field{0%{opacity:0;transform:translate(-50%,15%) scale(.2,.08)}40%,72%{opacity:.78;transform:translate(-50%,-50%) scale(1.55,.62)}to{opacity:0;transform:translate(-50%,-65%) scale(2.15,.85)}}@keyframes semantic-vfx-fall{0%{opacity:0;transform:translate(-50%,-260%) scale(.42) rotate(-28deg)}52%{opacity:.94;transform:translate(-50%,-45%) scale(1.18) rotate(0)}to{opacity:0;transform:translate(-50%,25%) scale(1.55,.42)}}@keyframes semantic-vfx-shatter{0%{opacity:0;transform:translate(-50%,-50%) scale(.35);clip-path:inset(0)}46%{opacity:.9;transform:translate(-50%,-50%) scale(1.12);clip-path:inset(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2.1) rotate(24deg);clip-path:inset(18% 4% 30% 22%)}}@keyframes semantic-vfx-wave{0%{opacity:0;transform:translate(-50%,-50%) scale(.12,.4)}38%{opacity:.84}to{opacity:0;transform:translate(-50%,-50%) scale(3.1,1.45)}}@keyframes semantic-vfx-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.06) rotate(-55deg)}44%{opacity:.95;transform:translate(-50%,-50%) scale(1.35) rotate(8deg)}to{opacity:0;transform:translate(-50%,-50%) scale(2.7) rotate(74deg)}}@keyframes semantic-vfx-rise{0%{opacity:0;transform:translate(-50%,80%) scale(.35) rotate(-18deg)}42%,70%{opacity:.83;transform:translate(-50%,-50%) scale(1) rotate(8deg)}to{opacity:0;transform:translate(-50%,-170%) scale(1.35) rotate(40deg)}}@keyframes semantic-vfx-warp{0%{opacity:0;transform:translate(-120%,-50%) scaleX(.25);filter:blur(8px)}35%{opacity:.82;transform:translate(-50%,-50%) scaleX(1.3);filter:blur(1px)}62%{opacity:.4;transform:translate(30%,-50%) scaleX(.55)}to{opacity:0;transform:translate(-10%,-50%) scaleX(1.6);filter:blur(10px)}}@keyframes semantic-vfx-guard{0%{opacity:0;transform:translate(-50%,-50%) scale(.28)}38%,74%{opacity:.86;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.18)}}@keyframes semantic-vfx-trail{0%{opacity:0;clip-path:inset(0 100% 0 0)}32%{opacity:.72}68%{opacity:.48;clip-path:inset(0)}to{opacity:0;clip-path:inset(0 0 0 100%)}}@keyframes semantic-vfx-rain{0%{opacity:0;transform:translate(-50%,-260%) rotate(72deg)}42%{opacity:.78}to{opacity:0;transform:translate(-50%,190%) rotate(72deg)}}@keyframes semantic-vfx-chain{0%{opacity:0;clip-path:inset(0 100% 0 0)}28%,42%,56%{opacity:.82}35%,49%,63%{opacity:.22}to{opacity:0;clip-path:inset(0)}}@keyframes semantic-vfx-particle{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}26%{opacity:.75}to{opacity:0;transform:translate(calc(-50% + var(--px)),calc(-50% + var(--py))) scale(1.25) rotate(110deg)}}.battle-screen{position:relative;isolation:isolate}.battle-screen:has(>.battle-trajectory-layer) .battle-skill-vfx{display:none}.battle-trajectory-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:120;overflow:hidden;pointer-events:none}.battle-trajectory-layer:not(.is-positioned) .battle-vfx-object-svg,.battle-trajectory-layer:not(.is-positioned) .battle-vfx-object-image,.battle-trajectory-layer:not(.is-positioned) .battle-vfx-impact-image,.battle-trajectory-layer:not(.is-positioned) .battle-cast-anchor i,.battle-trajectory-layer:not(.is-positioned) .battle-impact-anchor,.battle-trajectory-layer:not(.is-positioned) .battle-impact-anchor i{animation-play-state:paused}.battle-trajectory,.battle-cast-anchor,.battle-impact-anchor{position:absolute;display:block;pointer-events:none}.battle-trajectory{left:var(--start-x, 50%);top:var(--start-y, 50%);width:var(--trajectory-distance, 160px);height:1px;color:var(--vfx-color, #e6d48a);transform:rotate(var(--trajectory-angle, 0deg));transform-origin:0 50%;opacity:.94}.battle-vfx-object-svg{position:absolute;top:50%;left:0;width:var(--object-length, 108px);height:var(--object-height, 30px);overflow:visible;color:var(--vfx-color);filter:drop-shadow(0 0 4px var(--vfx-color-soft));transform:translate(-50%,-50%);animation:battle-object-direct var(--vfx-duration, 1.25s) linear var(--projectile-delay, 0ms) both}.battle-vfx-object-image{position:absolute;top:50%;left:0;width:var(--object-length, 108px);height:var(--object-height, 48px);object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none;filter:brightness(.88) saturate(1.05) drop-shadow(0 0 3px rgb(0 0 0 / .78)) drop-shadow(0 0 5px var(--vfx-color-soft));transform:translate(-50%,-50%);animation:battle-object-direct var(--vfx-duration, 1.25s) linear var(--projectile-delay, 0ms) both}.battle-vfx-object-svg .vfx-object-line{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.battle-vfx-object-svg .vfx-object-line.is-heavy{stroke-width:4.5}.battle-vfx-object-svg .vfx-object-fill{fill:currentColor;stroke:color-mix(in srgb,currentColor 70%,#fff);stroke-width:1}.battle-vfx-object-svg .vfx-object-fill.is-translucent{fill:color-mix(in srgb,currentColor 46%,transparent)}.battle-trajectory.vfx-object-arrow{--object-length: 112px;--object-height: 28px}.battle-trajectory.vfx-object-spear{--object-length: 142px;--object-height: 32px}.battle-trajectory.vfx-object-dagger{--object-length: 78px;--object-height: 28px}.battle-trajectory.vfx-object-blade{--object-length: 96px;--object-height: 34px}.battle-trajectory.vfx-object-shield{--object-length: 76px;--object-height: 54px}.battle-trajectory.vfx-object-hammer{--object-length: 92px;--object-height: 48px}.battle-trajectory.vfx-object-lightning{--object-length: 132px;--object-height: 38px}.battle-trajectory.vfx-object-sound{--object-length: 118px;--object-height: 58px}.battle-trajectory.vfx-object-meteor{--object-length: 128px;--object-height: 58px}.battle-trajectory.vfx-object-flame{--object-length: 126px;--object-height: 66px}.battle-trajectory.vfx-object-ice{--object-length: 148px;--object-height: 50px}.battle-trajectory.vfx-object-orb{--object-length: 82px;--object-height: 82px}.battle-trajectory.vfx-object-light{--object-length: 88px;--object-height: 88px}.battle-trajectory.vfx-object-nature{--object-length: 96px;--object-height: 76px}.battle-trajectory.vfx-object-smoke{--object-length: 124px;--object-height: 92px}.battle-trajectory.vfx-object-claw{--object-length: 104px;--object-height: 76px}.battle-trajectory.vfx-object-fang{--object-length: 106px;--object-height: 70px}.battle-trajectory.vfx-object-body{--object-length: 108px;--object-height: 74px}.battle-trajectory.vfx-object-arrow :is(.battle-vfx-object-svg,.battle-vfx-object-image){filter:drop-shadow(0 0 2px #07111a) drop-shadow(0 0 4px var(--vfx-color-soft))}.battle-trajectory.vfx-shape-power-arrow{--object-length: 142px;--object-height: 36px}.battle-trajectory.vfx-shape-power-arrow .vfx-object-line{stroke-width:3.6}.battle-trajectory.vfx-shape-power-arrow .vfx-object-fill{filter:drop-shadow(0 0 5px var(--vfx-color))}.battle-trajectory:is(.vfx-shape-arrow-rain,.vfx-shape-formation-arrows,.vfx-shape-tempest-arrows){--object-length: 78px;--object-height: 22px}.battle-trajectory.vfx-shape-piercing-arrow{--object-length: 154px;--object-height: 24px}.battle-trajectory.vfx-shape-piercing-arrow .vfx-object-line{stroke-width:3}.battle-trajectory.vfx-shape-triple-arrow{--object-length: 102px}.battle-trajectory.vfx-shape-sky-arrow{--object-length: 164px;--object-height: 40px}.battle-trajectory.vfx-shape-sky-arrow :is(.battle-vfx-object-svg,.battle-vfx-object-image){filter:brightness(.9) drop-shadow(0 0 7px var(--vfx-color))}.battle-trajectory.vfx-shape-star-arrow{--object-length: 132px;--object-height: 34px}.battle-trajectory.vfx-shape-star-arrow :is(.battle-vfx-object-svg,.battle-vfx-object-image){filter:brightness(.88) drop-shadow(0 0 9px var(--vfx-accent))}.battle-trajectory.vfx-shape-hunter-mark :is(.battle-vfx-object-svg,.battle-vfx-object-image){filter:brightness(.86) drop-shadow(0 0 6px var(--vfx-color))}.battle-trajectory.vfx-shape-sword-beam{--object-length: 168px;--object-height: 48px}.battle-trajectory.vfx-shape-sword-beam :is(.battle-vfx-object-svg,.battle-vfx-object-image){opacity:.9;filter:brightness(.82) drop-shadow(0 0 8px var(--vfx-color))}.battle-trajectory:is(.vfx-shape-light-lance,.vfx-shape-shining-lance,.vfx-shape-halo-spear){--object-length: 158px;--object-height: 38px}.battle-trajectory.vfx-shape-frost-spike{--object-length: 150px;--object-height: 40px}.battle-trajectory.vfx-shape-flame-bolt{--object-length: 124px;--object-height: 44px}.battle-trajectory.vfx-shape-meteor{--object-length: 146px;--object-height: 72px}.battle-trajectory.vfx-shape-lightning-chain :is(.battle-vfx-object-svg,.battle-vfx-object-image){filter:brightness(.82) drop-shadow(0 0 8px var(--vfx-accent))}.battle-trajectory.vfx-object-hammer :is(.battle-vfx-object-svg,.battle-vfx-object-image),.battle-trajectory.vfx-object-shield :is(.battle-vfx-object-svg,.battle-vfx-object-image),.battle-trajectory.vfx-object-body :is(.battle-vfx-object-svg,.battle-vfx-object-image){animation-timing-function:cubic-bezier(.38,.02,.64,1)}.battle-trajectory.vfx-path-fall :is(.battle-vfx-object-svg,.battle-vfx-object-image){animation-name:battle-object-fall}.battle-trajectory.vfx-path-dash :is(.battle-vfx-object-svg,.battle-vfx-object-image){animation-name:battle-object-dash}.battle-trajectory:is(.vfx-path-fan,.vfx-path-volley) :is(.battle-vfx-object-svg,.battle-vfx-object-image){animation-name:battle-object-volley}.battle-trajectory.vfx-path-chain :is(.battle-vfx-object-svg,.battle-vfx-object-image){animation-name:battle-object-chain}.battle-cast-anchor,.battle-impact-anchor{left:var(--anchor-x, 50%);top:var(--anchor-y, 50%);width:128px;height:128px;color:var(--vfx-color, #e6d48a);transform:translate(-50%,-50%)}.battle-cast-anchor i,.battle-impact-anchor i{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:2px solid var(--vfx-color);border-radius:50%;opacity:0;box-shadow:0 0 14px var(--vfx-color-soft),inset 0 0 12px var(--vfx-color-soft)}.battle-cast-anchor i{animation:battle-cast-ring var(--vfx-duration, 1.25s) ease-out both}.battle-cast-anchor i:nth-child(2){top:31%;right:31%;bottom:31%;left:31%;animation-delay:80ms;animation-direction:reverse}.vfx-cast-bow-draw .battle-cast-anchor i:first-child{top:13%;right:28%;bottom:13%;left:28%;border-width:3px 3px 3px 0;border-radius:0 100% 100% 0}.vfx-cast-bow-draw .battle-cast-anchor i:nth-child(2){top:13%;right:48%;bottom:13%;left:48%;border-width:0 0 0 2px;border-radius:0}.vfx-cast-weapon-ready .battle-cast-anchor i:first-child,.vfx-cast-spear-ready .battle-cast-anchor i:first-child{top:47%;right:6%;bottom:47%;left:6%;border-width:2px 0 0;border-radius:50%;transform:rotate(-18deg)}.vfx-cast-shield-ready .battle-cast-anchor i:first-child{top:18%;right:28%;bottom:18%;left:28%;border-radius:45% 45% 58% 58%/20% 20% 75% 75%}.vfx-cast-heavy-windup .battle-cast-anchor i:first-child{top:3%;right:44%;bottom:3%;left:44%;border-width:0 5px 0 0;border-radius:0;transform:rotate(-38deg)}.vfx-cast-voice-charge .battle-cast-anchor i{border-width:3px 3px 0 0}.vfx-cast-healing-prayer .battle-cast-anchor i:first-child{top:19%;right:44%;bottom:19%;left:44%;border:0;border-radius:0;background:linear-gradient(90deg,transparent,var(--vfx-color),transparent);box-shadow:none}.vfx-cast-healing-prayer .battle-cast-anchor i:first-child:after{position:absolute;top:32%;left:-34%;width:168%;height:18%;background:var(--vfx-color);content:""}.battle-impact-anchor{z-index:3;opacity:0;animation:battle-impact-show .56s ease-out var(--impact-delay, .6s) both}.battle-impact-anchor>.battle-vfx-object-svg{left:50%;width:104px;opacity:.75;animation:none;transform:translate(-50%,-50%) rotate(-12deg)}.battle-vfx-impact-image{position:absolute;top:50%;left:50%;z-index:2;width:var(--impact-image-size, 148px);height:var(--impact-image-size, 148px);object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none;filter:brightness(.86) saturate(1.04) drop-shadow(0 0 7px rgb(0 0 0 / .7)) drop-shadow(0 0 8px var(--vfx-color-soft));transform:translate(-50%,-50%)}.battle-impact-anchor:is(.vfx-impact-arrow-stick,.vfx-impact-armor-pierce,.vfx-impact-spear-pierce){--impact-image-size: 132px}.battle-impact-anchor:is(.vfx-impact-ground-crack,.vfx-impact-fire-burst,.vfx-impact-ice-shatter,.vfx-impact-electric-arc){--impact-image-size: 172px}.battle-impact-anchor:is(.vfx-impact-healing-bloom,.vfx-impact-aura-field){--impact-image-size: 164px}.battle-impact-anchor i{animation:battle-impact-ring .52s ease-out var(--impact-delay, .6s) both}.battle-impact-anchor i:nth-of-type(2){animation-delay:calc(var(--impact-delay, .6s) + 70ms)}.battle-impact-anchor i:nth-of-type(3){animation-delay:calc(var(--impact-delay, .6s) + .13s)}.battle-impact-anchor.vfx-impact-arrow-stick>.battle-vfx-object-svg{left:44%;width:92px;opacity:.92;transform:translate(-50%,-50%) rotate(-9deg)}.battle-impact-anchor.vfx-impact-arrow-stick i{top:34%;right:34%;bottom:34%;left:34%;border-width:1px}.battle-impact-anchor.vfx-impact-armor-pierce>.battle-vfx-object-svg,.battle-impact-anchor.vfx-impact-spear-pierce>.battle-vfx-object-svg{width:142px;opacity:.86}.battle-impact-anchor.vfx-impact-target-mark i:first-of-type{top:12%;right:12%;bottom:12%;left:12%;border-width:3px;border-style:dashed}.battle-impact-anchor.vfx-impact-target-mark i:nth-of-type(2){top:34%;right:34%;bottom:34%;left:34%;background:radial-gradient(circle,var(--vfx-color) 0 12%,transparent 14%)}.battle-impact-anchor:is(.vfx-impact-blade-cut,.vfx-impact-dagger-cut,.vfx-impact-claw-rake) i{top:48%;right:-8%;bottom:48%;left:-8%;height:4px;border:0;border-radius:99px;background:linear-gradient(90deg,transparent,var(--vfx-color) 28% 72%,transparent);transform:rotate(calc(var(--vfx-angle, -25deg) + 15deg))}.battle-impact-anchor.vfx-impact-ground-crack i{top:54%;right:-15%;bottom:20%;left:-15%;border:0;border-radius:0;clip-path:polygon(0 48%,18% 32%,35% 55%,52% 22%,68% 61%,84% 37%,100% 53%,83% 57%,67% 80%,51% 45%,35% 76%,18% 50%);background:var(--vfx-color)}.battle-impact-anchor.vfx-impact-fire-burst i{border:0;border-radius:55% 45% 65% 35%;background:radial-gradient(circle,var(--vfx-accent),var(--vfx-color) 42%,transparent 70%)}.battle-impact-anchor.vfx-impact-ice-shatter i{border:0;border-radius:0;clip-path:polygon(50% 0,62% 36%,100% 50%,63% 62%,50% 100%,37% 62%,0 50%,36% 36%);background:linear-gradient(135deg,var(--vfx-accent),var(--vfx-color) 48%,transparent 50%)}.battle-impact-anchor.vfx-impact-electric-arc i{top:17%;right:6%;bottom:17%;left:6%;border:0;border-radius:0;clip-path:polygon(0 45%,18% 22%,35% 64%,54% 30%,73% 70%,100% 43%,100% 58%,74% 86%,54% 48%,35% 82%,18% 40%,0 60%);background:var(--vfx-color)}.battle-impact-anchor:is(.vfx-impact-healing-bloom,.vfx-impact-aura-field) i{top:22%;right:22%;bottom:22%;left:22%;border-style:double;border-width:4px}.battle-impact-anchor.vfx-impact-smoke-cloud i{border:0;background:radial-gradient(circle,var(--vfx-color) 0 18%,transparent 68%);filter:blur(8px)}.battle-impact-anchor.vfx-impact-sound-wave i{border-width:3px 3px 0 0}@keyframes battle-object-direct{0%{left:0;opacity:0;transform:translate(-50%,-50%) scale(.72)}12%{opacity:1}58%{left:100%;opacity:1;transform:translate(-50%,-50%) scale(1)}88%{left:100%;opacity:.88;transform:translate(-50%,-50%) scale(.98)}to{left:100%;opacity:0;transform:translate(-50%,-50%) scale(.94)}}@keyframes battle-object-fall{0%{left:0;top:50%;opacity:0;transform:translate(-50%,-50%) rotate(12deg) scale(.7)}14%{opacity:1}64%{left:100%;top:50%;opacity:1;transform:translate(-50%,-50%) rotate(12deg) scale(1)}to{left:100%;opacity:0;transform:translate(-50%,-50%) rotate(12deg) scale(.88)}}@keyframes battle-object-dash{0%{left:0;opacity:0;transform:translate(-50%,-50%) scaleX(.35);filter:blur(7px)}18%{opacity:.9}46%{left:100%;opacity:1;transform:translate(-50%,-50%) scaleX(1.3);filter:blur(0)}to{left:100%;opacity:0;transform:translate(-50%,-50%) scaleX(.7);filter:blur(8px)}}@keyframes battle-object-volley{0%{left:0;top:calc(50% - var(--arc-height));opacity:0}18%{opacity:1}52%{left:50%;top:calc(50% - var(--arc-height));opacity:1}68%{left:100%;top:50%;opacity:1}to{left:100%;top:50%;opacity:0}}@keyframes battle-object-chain{0%,18%{left:0;opacity:0}24%,36%,48%{opacity:1}30%,42%,54%{opacity:.25}60%{left:100%;opacity:1}to{left:100%;opacity:0}}@keyframes battle-cast-ring{0%{opacity:0;transform:scale(.25) rotate(-30deg)}24%,48%{opacity:.86;transform:scale(1) rotate(0)}72%{opacity:.42;transform:scale(1.18) rotate(22deg)}to{opacity:0;transform:scale(1.35) rotate(42deg)}}@keyframes battle-impact-show{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}18%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.12)}}@keyframes battle-impact-ring{0%{opacity:0;transform:scale(.2)}30%{opacity:.9}to{opacity:0;transform:scale(1.9)}}@media (prefers-reduced-motion: reduce){.battle-skill-vfx *,.battle-skill-vfx,.battle-skill-cast-banner,.battle-global-vfx,.battle-global-vfx *{animation-duration:.68s!important;animation-iteration-count:1!important}.battle-arena.has-skill-vfx>.battle-arena-background{animation:none!important}}.battle-arena .enemy-stage-unit>.battle-floating-numbers{top:50%!important;left:50%!important;z-index:160!important;transform:translate(-50%,-50%)!important}.battle-arena .enemy-stage-unit>.battle-floating-numbers strong{font-size:clamp(25px,2.1vw,34px)!important;animation-duration:1.3s!important}@media (max-width: 820px){.battle-arena .enemy-stage-unit>.battle-floating-numbers{top:50%!important}}.battle-party-list,.battle-party-list.is-large-party{display:grid;grid-template-columns:repeat(var(--battle-flow-count),minmax(250px,1fr));align-items:stretch;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;scroll-snap-type:x proximity}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card,.battle-party-row .battle-command-dock{grid-column:auto;grid-row:1;min-width:250px;scroll-snap-align:start}.battle-party-row .battle-command-dock{height:100%}.battle-party-row .battle-command-dock:before{top:28px;left:-9px;transform:rotate(45deg)}.battle-command-dock.is-unanchored{display:none}@media (max-width: 1100px){.battle-party-list,.battle-party-list.is-large-party{grid-template-columns:repeat(var(--battle-flow-count),minmax(250px,310px))}.battle-party-row,.battle-party-row:not(.is-acting-row){display:contents}}@media (max-width: 820px){.battle-party-list,.battle-party-list.is-large-party{grid-template-columns:repeat(var(--battle-flow-count),minmax(240px,280px))}.battle-party-row,.battle-party-row:not(.is-acting-row){display:contents}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card,.battle-party-row .battle-command-dock{grid-column:auto;grid-row:1;min-width:240px}.battle-party-row .battle-command-dock:before{top:28px;left:-9px;transform:rotate(45deg)}}.battle-party-command-zone{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.battle-party-list,.battle-party-list.is-large-party{display:grid;grid-template-columns:repeat(var(--party-size),minmax(0,1fr));gap:8px;overflow:visible;padding:2px}.battle-party-row,.battle-party-row:not(.is-acting-row){display:contents}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{grid-column:auto;grid-row:1;min-width:0;min-height:112px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:9px;padding:10px}.battle-party-list.is-large-party .battle-card{grid-template-columns:58px minmax(0,1fr);gap:8px;padding:9px}.battle-party-row .party-card .battle-portrait,.battle-party-list.is-large-party .battle-portrait,.battle-party-row .party-battle-portrait-frame{width:64px;height:82px}.battle-party-list.is-large-party .battle-portrait,.battle-party-list.is-large-party .party-battle-portrait-frame{width:58px;height:76px}.party-card .battle-card-copy,.battle-party-list.is-large-party .battle-card-copy{display:grid;gap:5px;min-width:0;font-size:13px}.party-card-identity{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}.party-card-identity strong{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;font-size:15px}.party-card-identity>span{flex:0 0 auto;color:var(--muted);font-size:12px}.party-card .battle-exp-compact{display:block}.party-card .battle-exp-compact .battle-gauge{height:6px}.party-card .battle-gauge.has-value{position:relative;height:23px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:rgba(3,13,21,.86)}.party-card .battle-gauge.has-value>span{height:100%;border-radius:6px}.battle-gauge-value{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:900;line-height:1;letter-spacing:.01em;text-shadow:0 1px 3px #000,0 0 4px #000}.battle-command-dock.battle-command-bar{grid-column:1;width:100%;min-height:72px;border-radius:14px}.battle-command-dock.battle-command-bar:before{display:none}.battle-command-bar .battle-action-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;max-height:none;min-height:70px;padding:9px 12px;overflow:visible}.battle-command-bar .battle-turn-head{min-width:120px}.battle-command-bar .battle-turn-head h3,.battle-command-bar .battle-action-panel>h3{margin:0;white-space:nowrap}.battle-command-bar .battle-turn-head>span{display:none}.battle-command-bar .battle-skill-grid,.battle-command-bar .battle-item-grid{display:flex;grid-template-columns:none;gap:7px;min-width:0;overflow-x:auto;padding:2px 2px 4px}.battle-command-bar .battle-skill-button,.battle-command-bar .battle-item-button{flex:0 0 auto;min-width:126px;min-height:50px;padding:7px 9px}.battle-command-bar .battle-item-section{display:flex;align-items:center;gap:7px;min-width:0;padding:0 0 0 10px;border-top:0;border-left:1px solid rgba(104,142,181,.25)}.battle-command-bar .battle-item-section h4{margin:0;color:var(--accent);white-space:nowrap}.battle-command-bar .battle-action-panel>p{margin:0;color:var(--muted)}.battle-command-bar .battle-action-panel>.ghost-button,.battle-command-bar .battle-action-panel>.primary-button{justify-self:end}@media (max-width: 1250px){.battle-party-list,.battle-party-list.is-large-party{grid-template-columns:repeat(var(--party-size),minmax(235px,1fr));overflow-x:auto;scroll-snap-type:x proximity}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{min-width:235px;scroll-snap-align:start}.battle-command-bar .battle-action-panel{grid-template-columns:auto minmax(0,1fr)}.battle-command-bar .battle-item-section{grid-column:1 / -1;padding:7px 0 0;border-top:1px solid rgba(104,142,181,.25);border-left:0}}@media (max-width: 820px){.battle-party-list,.battle-party-list.is-large-party{grid-template-columns:repeat(var(--party-size),minmax(220px,260px))}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{min-width:220px}.battle-command-bar .battle-action-panel{grid-template-columns:minmax(0,1fr)}.battle-command-bar .battle-turn-head,.battle-command-bar .battle-action-panel>h3{min-width:0}.battle-command-bar .battle-item-section{grid-column:1}.battle-command-bar .battle-action-panel>.ghost-button,.battle-command-bar .battle-action-panel>.primary-button{justify-self:start}}.party-card.is-acting{border-color:var(--turn-accent);box-shadow:0 0 0 4px var(--turn-glow),0 0 24px var(--turn-glow),0 10px 26px #0000006b}.party-card.is-acting:after{border-color:#030a11eb;color:#071018;background:var(--turn-accent);box-shadow:0 2px #000,0 0 0 2px var(--turn-glow)}.battle-command-dock.battle-command-bar{border:2px solid var(--turn-accent);box-shadow:0 0 0 3px var(--turn-glow),0 12px 30px #00000052}.battle-command-bar .battle-action-panel.is-skill-command{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;min-height:112px;padding:9px 10px;overflow:visible}.battle-command-bar .battle-skill-grid{display:flex;align-items:stretch;gap:8px;min-width:0;overflow-x:auto;overflow-y:visible;padding:2px 3px 6px}.battle-command-bar .battle-skill-button{position:relative;display:grid;grid-template-rows:58px auto auto;place-items:center;align-content:center;gap:3px;flex:1 0 96px;min-width:96px;min-height:96px;padding:7px 8px 6px;text-align:center}.battle-skill-icon-wrap{position:relative;display:grid;place-items:center}.battle-command-bar .battle-skill-icon-wrap .icon-chip{width:54px;height:54px;border-color:color-mix(in srgb,var(--turn-accent) 55%,transparent);box-shadow:0 0 12px var(--turn-glow)}.battle-command-bar .battle-skill-icon-wrap .icon-chip img{width:88%;height:88%}.battle-command-bar .battle-skill-icon-wrap kbd{position:absolute;right:-5px;bottom:-2px;margin:0;min-width:19px;padding:2px 4px;background:rgba(3,10,17,.94)}.battle-command-bar .battle-skill-button>strong{display:block;max-width:100%;overflow:hidden;color:#fff;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.battle-command-bar .battle-skill-button>small{color:var(--turn-accent);font-size:10px;font-weight:800}.battle-command-bar .battle-skill-tooltip{bottom:calc(100% + 10px)}.battle-item-menu{position:relative;z-index:30;display:grid;align-items:stretch;min-width:112px}.battle-item-menu>summary{list-style:none}.battle-item-menu>summary::-webkit-details-marker{display:none}.battle-item-menu-button{display:flex;align-items:center;justify-content:center;gap:7px;height:100%;min-height:94px;border-color:color-mix(in srgb,var(--turn-accent) 58%,transparent);cursor:pointer;font-weight:900}.battle-item-menu-button>span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:999px;color:#071018;background:var(--turn-accent);font-size:11px}.battle-item-menu[open] .battle-item-menu-button{color:var(--turn-accent);border-color:var(--turn-accent);background:rgba(44,76,108,.98)}.battle-item-popover{position:absolute;right:0;bottom:calc(100% + 10px);z-index:200;display:grid;gap:10px;width:min(660px,calc(100vw - 48px));max-height:320px;padding:14px;overflow-y:auto;border:2px solid var(--turn-accent);border-radius:15px;background:rgba(7,22,34,.99);box-shadow:0 18px 45px #00000094,0 0 22px var(--turn-glow)}.battle-item-popover-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.battle-item-popover-head small{color:var(--muted)}.battle-item-popover .battle-item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;padding:0}.battle-item-popover .battle-item-button{min-width:0;min-height:58px;padding:8px 10px;text-align:left}@media (max-width: 820px){.battle-command-bar .battle-action-panel.is-skill-command{grid-template-columns:minmax(0,1fr) 94px}.battle-command-bar .battle-skill-button{flex-basis:88px;min-width:88px}.battle-item-menu{min-width:94px}.battle-item-popover{position:fixed;right:12px;bottom:12px;width:calc(100vw - 24px);max-height:min(70vh,420px)}.battle-item-popover .battle-item-grid{grid-template-columns:minmax(0,1fr)}}.battle-command-bar .battle-skill-button,.battle-command-bar .battle-skill-button:hover,.battle-command-bar .battle-skill-button:focus-visible{flex:0 0 96px;border-color:transparent;outline-offset:-2px;background:transparent;box-shadow:none;transform:none}.battle-command-bar .battle-skill-button:hover .battle-skill-icon-wrap .icon-chip,.battle-command-bar .battle-skill-button:focus-visible .battle-skill-icon-wrap .icon-chip{border-color:var(--turn-accent);background:rgba(44,76,108,.72);box-shadow:0 0 18px var(--turn-glow);transform:translateY(-2px)}.battle-command-bar .battle-skill-icon-wrap .icon-chip{transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.battle-item-popover[popover]{position:fixed;inset:50% auto auto 50%;width:min(680px,calc(100vw - 32px));max-height:min(70dvh,480px);margin:0;padding:16px;overflow-x:hidden;overflow-y:auto;color:var(--text);transform:translate(-50%,-50%)}.battle-item-popover[popover]::backdrop{background:rgba(2,8,14,.62);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.battle-item-popover[popover]:popover-open{display:grid}.battle-item-menu:has(+.battle-item-popover:popover-open) .battle-item-menu-button,.battle-item-menu:has(.battle-item-popover:popover-open) .battle-item-menu-button{color:var(--turn-accent);border-color:var(--turn-accent)}@media (max-width: 820px){.battle-command-bar .battle-skill-button,.battle-command-bar .battle-skill-button:hover,.battle-command-bar .battle-skill-button:focus-visible{flex-basis:88px}.battle-item-popover[popover]{position:fixed;inset:50% auto auto 50%;right:auto;bottom:auto;width:calc(100vw - 24px);max-height:min(76dvh,520px);transform:translate(-50%,-50%)}}#game-shell:has(.game-title-screen){display:block;width:100vw;max-width:none;height:100dvh;padding:0;overflow:hidden;background:#000}.screen-frame.title-screen.game-title-screen{position:relative;isolation:isolate;display:grid;place-items:center;width:100vw;max-width:none;height:100dvh;min-height:100dvh;padding:0;overflow:hidden;border:0;border-radius:0;background:#000;box-shadow:none}.title-background-video{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;width:100%;height:100%;border:0;object-fit:cover;object-position:center}.title-video-shade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.22),transparent 35%,rgba(0,0,0,.28)),radial-gradient(circle at center,transparent 30%,rgba(0,0,0,.35) 100%);pointer-events:none}.game-title-content{display:grid;justify-items:center;gap:clamp(44px,9vh,92px);width:min(960px,calc(100vw - 40px));color:#fff;text-align:center;text-shadow:0 3px 14px rgba(0,0,0,.95)}.game-title-content h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,8vw,112px);font-weight:500;line-height:.95;letter-spacing:.035em}.game-title-menu{display:flex;flex-direction:column;align-items:center;gap:13px}.game-title-menu button{position:relative;min-width:240px;padding:5px 28px;border:0;border-radius:0;outline-offset:5px;color:#ffffffe6;background:transparent;box-shadow:none;cursor:pointer;font-family:Georgia,Times New Roman,serif;font-size:clamp(17px,1.7vw,24px);font-weight:600;line-height:1.35;letter-spacing:.18em;text-shadow:0 2px 7px rgba(0,0,0,.98);transition:color .16s ease,letter-spacing .16s ease,transform .16s ease}.game-title-menu button:hover,.game-title-menu button:focus-visible{border:0;color:#f3d88d;background:transparent;transform:scale(1.045);letter-spacing:.23em}.game-title-menu button:disabled{color:#ffffff59;background:transparent;opacity:1;cursor:default;transform:none}@media (max-width: 720px){#game-shell:has(.game-title-screen),.screen-frame.title-screen.game-title-screen{width:100vw;height:100dvh;min-height:100dvh;padding:0}.game-title-content{gap:54px}.game-title-content h1{font-size:clamp(46px,14vw,76px)}.game-title-menu button{min-width:210px}}.battle-item-menu-button{anchor-name:--battle-item-button}.battle-item-popover[popover]:not(:popover-open){display:none!important}.battle-item-popover[popover]{position:fixed;position-anchor:--battle-item-button;inset:auto 342px 146px auto;right:anchor(right);bottom:calc(anchor(top) + 10px);width:min(590px,calc(100vw - 32px));max-height:min(410px,calc(100dvh - 180px));margin:0;padding:14px;transform:none}.battle-item-popover[popover]::backdrop{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.battle-item-popover[popover]:popover-open{display:grid!important}.battle-command-bar .battle-skill-button.is-unavailable{opacity:.46;cursor:not-allowed}.battle-command-bar .battle-skill-button.is-unavailable>small{color:#9aaec2}.floating-battle-skill-tooltip.skill-tooltip{gap:7px;width:min(360px,calc(100vw - 32px))!important;padding:16px 18px;border:1px solid rgba(228,196,122,.72);border-radius:16px;color:var(--text);background:rgba(5,15,24,.99);box-shadow:0 20px 50px #0000009e;font-size:15px;line-height:1.45}.floating-battle-skill-tooltip.skill-tooltip strong{font-size:19px;line-height:1.35}.floating-battle-skill-tooltip.skill-tooltip p,.floating-battle-skill-tooltip.skill-tooltip span{margin:0;color:var(--muted)}.battle-item-popover .battle-item-button{position:relative}.enemy-status-panel{gap:6px}.enemy-identity{display:flex;align-items:baseline;justify-content:center;gap:8px;min-width:0;white-space:nowrap}.enemy-identity>span{color:#d8e1eb;font-size:12px;font-weight:700}.enemy-status-panel .battle-gauge-hp.has-value{position:relative;width:100%;height:23px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:rgba(3,13,21,.86);box-shadow:none}.enemy-status-panel .battle-gauge-hp.has-value>span{height:100%;border-radius:6px}.enemy-status-panel .battle-gauge-value{display:grid;font-size:12px}@media (max-width: 820px){.battle-item-popover[popover]{position:fixed;position-anchor:--battle-item-button;inset:auto 12px 132px auto;right:max(12px,anchor(right));bottom:calc(anchor(top) + 8px);width:min(520px,calc(100vw - 24px));max-height:min(55dvh,390px);transform:none}}.party-card.is-acting,.battle-command-dock.battle-command-bar{border:3px solid var(--turn-accent);border-radius:16px;box-shadow:0 0 0 4px var(--turn-glow),0 0 24px var(--turn-glow),0 10px 26px #0000006b}.battle-command-dock.battle-command-bar{height:176px;min-height:176px;overflow:visible}.battle-command-bar .battle-action-panel,.battle-command-bar .battle-action-panel.is-skill-command{width:100%;height:100%;min-height:0;max-height:none}.battle-command-bar .battle-action-panel:not(.is-skill-command){grid-template-columns:minmax(180px,auto) minmax(0,1fr) auto;align-content:center;padding:18px 22px}.battle-skill-button:hover>.battle-skill-tooltip,.battle-skill-button:focus-visible>.battle-skill-tooltip,.battle-item-button:hover .equipment-tooltip,.battle-item-button:focus-visible .equipment-tooltip{visibility:visible;opacity:1}.enemy-stage-unit{min-height:246px}.enemy-stage-unit .enemy-sprite-frame{height:174px}.enemy-status-panel{width:min(194px,calc(100% - 4px))}@media (max-width: 1100px){.enemy-stage-unit{min-height:224px}.enemy-stage-unit .enemy-sprite-frame{height:156px}}@media (max-width: 820px){.battle-command-dock.battle-command-bar{height:168px;min-height:168px}.enemy-stage-unit{min-height:196px}.enemy-stage-unit .enemy-sprite-frame{height:124px}}.battle-screen,.battle-layout,.battle-stage{min-height:0;overflow:hidden}.battle-stage{grid-template-rows:auto minmax(238px,1fr) auto;padding-right:0}.battle-screen *,.battle-screen *:before,.battle-screen *:after{scrollbar-width:none}.battle-screen *::-webkit-scrollbar{display:none;width:0;height:0}.battle-party-command-zone{position:relative;z-index:50;overflow:visible}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{height:124px;min-height:124px;overflow:visible}.battle-command-dock.battle-command-bar{height:150px;min-height:150px}.battle-command-bar .battle-action-panel,.battle-command-bar .battle-action-panel.is-skill-command,.battle-command-bar .battle-skill-grid{overflow:visible}.party-card .battle-floating-numbers{top:18%;left:50%;z-index:500;transform:translate(-50%)}.party-card .battle-floating-numbers strong{font-size:30px;animation-name:battle-number-float-inside-card}@keyframes battle-number-float-inside-card{0%{opacity:0;transform:translateY(18px) scale(.78)}18%{opacity:1;transform:translateY(8px) scale(1.14)}75%{opacity:1}to{opacity:0;transform:translateY(-32px) scale(1)}}@keyframes battle-number-float-above{0%{opacity:0;transform:translateY(10px) scale(.78)}18%{opacity:1;transform:translateY(0) scale(1.14)}75%{opacity:1}to{opacity:0;transform:translateY(-72px) scale(1)}}.battle-arena{z-index:1;min-height:238px;overflow:hidden;padding:8px 14px}.battle-arena .battle-enemies{bottom:8px;z-index:5}.enemy-stage-unit{min-height:218px}.enemy-stage-unit .enemy-sprite-frame{height:158px;flex:0 0 158px}.enemy-stage-unit .enemy-sprite-frame .battle-portrait,.enemy-stage-unit .enemy-sprite-frame .battle-portrait:not([hidden]){display:block!important;opacity:1!important;visibility:visible!important}.enemy-stage-unit .enemy-sprite-frame .battle-portrait.is-load-failed{min-height:150px;color:transparent}.battle-screen .battle-skill-button:hover>.battle-skill-tooltip,.battle-screen .battle-skill-button:focus-visible>.battle-skill-tooltip,.battle-screen .battle-skill-button:focus-within>.battle-skill-tooltip{display:grid!important;position:fixed!important;inset:auto 354px 18px auto!important;z-index:2147483647!important;width:min(360px,calc(100vw - 40px))!important;margin:0!important;padding:16px 18px!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important;border:1px solid rgba(228,196,122,.72);border-radius:16px;color:var(--text);background:rgba(5,15,24,.99);box-shadow:0 20px 50px #0000009e}.battle-screen .battle-skill-button:hover>.battle-skill-tooltip strong,.battle-screen .battle-skill-button:focus-visible>.battle-skill-tooltip strong{font-size:19px}.battle-screen .battle-item-button:hover>.equipment-tooltip,.battle-screen .battle-item-button:focus-visible>.equipment-tooltip,.battle-screen .battle-item-button:focus-within>.equipment-tooltip{display:grid!important;position:fixed!important;inset:auto 354px 18px auto!important;z-index:2147483647!important;width:min(360px,calc(100vw - 40px))!important;margin:0!important;padding:16px 18px!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important;border:1px solid rgba(228,196,122,.72);border-radius:16px;color:var(--text);background:rgba(5,15,24,.99);box-shadow:0 20px 50px #0000009e}@media (max-width: 1100px){.battle-stage{grid-template-rows:auto minmax(220px,1fr) auto}.battle-arena{min-height:220px}.enemy-stage-unit{min-height:202px}.enemy-stage-unit .enemy-sprite-frame{height:144px;flex-basis:144px}.battle-screen .battle-skill-button:hover>.battle-skill-tooltip,.battle-screen .battle-skill-button:focus-visible>.battle-skill-tooltip,.battle-screen .battle-item-button:hover>.equipment-tooltip,.battle-screen .battle-item-button:focus-visible>.equipment-tooltip{right:18px!important}}@media (max-height: 760px){.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{height:112px;min-height:112px}.battle-command-dock.battle-command-bar{height:138px;min-height:138px}.battle-stage{grid-template-rows:auto minmax(205px,1fr) auto;gap:7px}.battle-arena{min-height:205px}.enemy-stage-unit{min-height:190px}.enemy-stage-unit .enemy-sprite-frame{height:134px;flex-basis:134px}}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{height:142px;min-height:142px}.battle-command-dock.battle-command-bar{height:138px;min-height:138px}.battle-screen .battle-skill-button>.battle-skill-tooltip,.battle-screen .battle-skill-button:hover>.battle-skill-tooltip,.battle-screen .battle-skill-button:focus-visible>.battle-skill-tooltip,.battle-screen .battle-skill-button:focus-within>.battle-skill-tooltip{display:none!important}body>.floating-battle-skill-tooltip{display:grid!important;position:fixed!important;width:min(360px,calc(100vw - 24px))!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:none!important;z-index:2147483647!important}.battle-stage{grid-template-rows:auto minmax(258px,1fr) auto}.battle-arena{min-height:258px}.battle-arena .battle-enemies{bottom:22px}.enemy-stage-unit{min-height:234px}.enemy-stage-unit .enemy-sprite-frame{height:174px;flex-basis:174px}@media (max-width: 1100px){.battle-stage{grid-template-rows:auto minmax(238px,1fr) auto}.battle-arena{min-height:238px}.battle-arena .battle-enemies{bottom:18px}.enemy-stage-unit{min-height:218px}.enemy-stage-unit .enemy-sprite-frame{height:158px;flex-basis:158px}}@media (max-height: 760px){.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card{height:132px;min-height:132px}.battle-command-dock.battle-command-bar{height:128px;min-height:128px}.battle-stage{grid-template-rows:auto minmax(222px,1fr) auto}.battle-arena{min-height:222px}.battle-arena .battle-enemies{bottom:14px}.enemy-stage-unit{min-height:204px}.enemy-stage-unit .enemy-sprite-frame{height:146px;flex-basis:146px}}.party-card.is-acting:after{content:none!important;display:none!important}.battle-item-menu{min-width:82px!important;width:82px;align-self:center}.battle-item-menu-button{width:82px;min-width:82px;height:82px;min-height:82px!important;padding:8px 6px;flex-direction:column;gap:5px;font-size:14px}.battle-item-menu-button>span{min-width:21px;height:21px;font-size:10px}.battle-screen .battle-item-button>.equipment-tooltip,.battle-screen .battle-item-button:hover>.equipment-tooltip,.battle-screen .battle-item-button:focus-visible>.equipment-tooltip,.battle-screen .battle-item-button:focus-within>.equipment-tooltip{display:none!important}body>.floating-equipment-tooltip{display:grid!important;position:fixed!important;max-height:calc(100dvh - 24px);overflow-y:auto;pointer-events:none!important;z-index:2147483647!important}.battle-effect-list{overflow:visible!important}.battle-status-icon{position:relative;display:inline-grid;grid-template-columns:1fr auto;place-items:center;min-width:34px;height:30px;padding:2px 4px 2px 6px;border:1px solid rgba(238,210,138,.7);border-radius:8px;color:#fff2c4;background:rgba(65,42,12,.9);box-shadow:0 2px 6px #00000059;cursor:help;font:inherit}.battle-status-icon>span:first-child{font-size:18px;line-height:1}.battle-status-icon>small{align-self:end;color:#ffe080;font-size:10px;font-weight:900;line-height:1}.battle-status-icon:hover,.battle-status-icon:focus-visible{border-color:#ffe27d;background:rgba(100,64,13,.98);outline:2px solid rgba(255,226,125,.25)}.battle-status-icon>.battle-status-tooltip,.battle-status-icon:hover>.battle-status-tooltip,.battle-status-icon:focus-visible>.battle-status-tooltip,.battle-status-icon:focus-within>.battle-status-tooltip{display:none!important}body>.floating-battle-skill-tooltip.battle-status-tooltip{width:min(320px,calc(100vw - 24px))!important}@media (max-width: 820px){.battle-command-bar .battle-action-panel.is-skill-command{grid-template-columns:minmax(0,1fr) 74px}.battle-item-menu,.battle-item-menu-button{width:74px;min-width:74px!important}}.battle-command-bar .battle-skill-icon-wrap,.battle-command-bar .battle-skill-icon-wrap .icon-chip,.battle-command-bar .battle-skill-button:hover .battle-skill-icon-wrap .icon-chip,.battle-command-bar .battle-skill-button:focus-visible .battle-skill-icon-wrap .icon-chip{border:0!important;outline:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.battle-command-bar .battle-skill-icon-wrap .icon-chip:before,.battle-command-bar .battle-skill-icon-wrap .icon-chip:after{content:none!important;display:none!important}.party-card-identity{align-items:center;width:100%;min-height:30px;overflow:visible}.party-card-identity>.battle-effect-list{display:flex;flex:0 0 auto;align-items:center;flex-wrap:nowrap;gap:3px;max-width:104px;height:22px;margin-left:auto;overflow:visible!important;color:inherit}.party-card-identity .battle-status-icon.combat-effect-icon{display:inline-grid;grid-template-columns:1fr auto;flex:0 0 22px;min-width:22px;width:22px;height:22px;padding:1px;border-width:1px;border-style:solid;border-radius:6px;box-shadow:none}.battle-status-icon.combat-effect-icon.is-buff{color:#baffd1;border-color:#48dc7fcc;background:rgba(18,91,50,.86)}.battle-status-icon.combat-effect-icon.is-debuff{color:#ffd0cc;border-color:#ff6459d9;background:rgba(117,30,27,.88)}.party-card-identity .battle-status-icon.combat-effect-icon>span:first-child{font-size:12px}.party-card-identity .battle-status-icon.combat-effect-icon>small{color:currentColor;font-size:7px}.battle-status-icon.battle-effect-more>span:first-child{font-size:11px;font-weight:950;letter-spacing:-1px}body>.floating-battle-skill-tooltip.battle-effect-more-tooltip{gap:8px;width:min(380px,calc(100vw - 24px))!important;max-height:calc(100dvh - 24px);overflow-y:auto}body>.floating-battle-skill-tooltip .effect-summary{display:grid;gap:2px;margin:0;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.045)}body>.floating-battle-skill-tooltip .effect-summary.is-buff b{color:#77efa2}body>.floating-battle-skill-tooltip .effect-summary.is-debuff b{color:#ff9188}body>.floating-battle-skill-tooltip .effect-summary span{font-size:13px}.enemy-status-panel>.battle-effect-list{display:flex;justify-content:center;gap:4px}@media (max-width: 1100px){.party-card-identity>.battle-effect-list{max-width:98px}.party-card-identity>.battle-effect-list .combat-effect-icon:nth-child(3):not(.battle-effect-more){display:none}}.party-dashboard .skill-pill>.skill-tooltip,.party-dashboard .skill-pill:hover>.skill-tooltip,.party-dashboard .skill-pill:focus>.skill-tooltip,.party-dashboard .skill-pill:focus-within>.skill-tooltip,.party-dashboard .skill-pill:active>.skill-tooltip,.party-dashboard .mannequin-slot>.equipment-tooltip,.party-dashboard .mannequin-slot:hover>.equipment-tooltip,.party-dashboard .mannequin-slot:focus>.equipment-tooltip,.party-dashboard .mannequin-slot:focus-within>.equipment-tooltip,.party-dashboard .mannequin-slot:active>.equipment-tooltip,.party-dashboard .equip-icon-card>.equipment-tooltip,.party-dashboard .equip-icon-card:hover>.equipment-tooltip,.party-dashboard .equip-icon-card:focus>.equipment-tooltip,.party-dashboard .equip-icon-card:focus-within>.equipment-tooltip,.party-dashboard .equip-icon-card:active>.equipment-tooltip{display:none!important;visibility:hidden!important;opacity:0!important}.battle-command-bar .battle-skill-button,.battle-command-bar .battle-skill-button:hover,.battle-command-bar .battle-skill-button:focus-visible{border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important}.battle-command-bar .battle-skill-icon-wrap{width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important}.battle-command-bar .battle-skill-icon-wrap .icon-chip,.battle-command-bar .battle-skill-icon-wrap .icon-chip.icon-sm{display:block!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;padding:0!important;overflow:visible!important}.battle-command-bar .battle-skill-icon-wrap .icon-chip img{display:block;width:56px!important;height:56px!important;max-width:none!important;max-height:none!important;object-fit:contain!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.battle-stage-head{align-items:center}.battle-title-copy{flex:1 1 auto;min-width:0}.battle-title-line{display:flex;align-items:baseline;gap:22px;min-width:0}.battle-title-line h2{flex:0 1 auto;margin:0}.battle-recommendation{display:flex;flex:0 0 auto;align-items:center;gap:10px;margin:0!important;color:#c8d8e8;white-space:nowrap}.battle-recommendation span{color:var(--turn-accent, #e4c47a)}.battle-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483600;display:grid;place-items:center;padding:20px;background:rgba(2,8,14,.76);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.battle-confirm-dialog{display:grid;gap:14px;width:min(460px,calc(100vw - 40px));padding:26px;border:1px solid rgba(228,196,122,.72);border-radius:18px;background:rgba(7,21,33,.99);box-shadow:0 24px 70px #000000ad}.battle-confirm-dialog h3,.battle-confirm-dialog p{margin:0}.battle-confirm-dialog>div{display:flex;justify-content:flex-end;gap:10px}.battle-confirm-dialog .is-danger{color:#fff;border-color:#d45c5c;background:#a93636}@media (max-width: 980px){.battle-title-line{align-items:flex-start;flex-direction:column;gap:3px}}.battle-levelup-events{gap:14px!important;margin:4px 0 22px!important}.battle-levelup-events article{position:relative;gap:10px!important;padding:20px 22px!important;border:2px solid #f4ca58!important;background:radial-gradient(circle at 100% 0,rgba(244,202,88,.22),transparent 46%),linear-gradient(135deg,rgba(91,58,12,.76),rgba(12,39,59,.98))!important;box-shadow:0 0 24px #f4ca5833,inset 0 0 24px #f4ca5814!important}.battle-levelup-events article>span{width:max-content;padding:4px 10px;border-radius:999px;background:#f4ca58;color:#172536!important;font-size:14px;font-weight:900;letter-spacing:.12em}.battle-levelup-events article>strong{color:#fff7cf;font-size:clamp(24px,3vw,34px);line-height:1.15;text-shadow:0 2px 12px rgba(244,202,88,.32)}.battle-levelup-events article>p{padding-top:10px;border-top:1px solid rgba(244,202,88,.35);color:#f7e6a8!important;font-size:clamp(16px,2vw,19px);font-weight:800;line-height:1.7}.battle-levelup-events article>small{color:#7edcff!important;font-size:16px;font-weight:800}.party-relic-panel{grid-column:2 / -1;display:grid;gap:14px}.relic-equipped-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;border-radius:14px;background:linear-gradient(135deg,rgba(86,58,20,.82),rgba(15,34,52,.94))}.relic-equipped-card.is-empty{background:rgba(10,27,42,.7)}.relic-equipped-card p,.relic-card small,.relic-route-note{margin:4px 0 0;color:var(--muted)}.relic-symbol{display:grid;place-items:center;width:52px;height:52px;font-size:31px;color:#ffd76b;text-shadow:0 0 15px rgba(255,205,80,.65)}.relic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.relic-card{min-height:118px;display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:3px 9px;padding:12px;text-align:left;border:1px solid rgba(111,149,185,.32);border-radius:13px;background:rgba(13,34,52,.88);color:var(--text)}.relic-card .relic-symbol{grid-row:1 / 3;width:44px;height:44px;font-size:26px}.relic-card.is-active{border-color:#ffd15d;box-shadow:0 0 0 2px #ffd15d38}.relic-card.is-locked{opacity:.62;filter:grayscale(.7)}.relic-route-note{font-size:13px}@media (max-width: 1100px){.relic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-relic-panel{grid-column:1 / -1}}@media (max-width: 650px){.relic-grid{grid-template-columns:1fr}.relic-equipped-card{grid-template-columns:48px 1fr}.relic-equipped-card button{grid-column:1 / -1}}.battle-relic-reward{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:14px;padding:16px;border-radius:15px;border:1px solid rgba(255,209,93,.65);background:linear-gradient(135deg,rgba(93,61,17,.9),rgba(11,30,47,.96))}.battle-relic-reward strong,.battle-relic-reward small{display:block}.battle-relic-reward strong{color:#ffe08a;font-size:20px}.battle-relic-reward small{margin-top:5px;color:var(--muted)}.party-header-tabs{display:flex;align-items:stretch;gap:8px;margin-right:auto;min-width:0}.party-header-tab{position:relative;display:grid;align-content:center;gap:2px;min-height:62px;padding:8px 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.party-header-tab>span:first-child{font-size:clamp(24px,2.4vw,36px);font-weight:850;letter-spacing:-.04em}.party-header-tab>strong{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#e8c66f}.party-header-tab.is-active{border-bottom-color:var(--accent);color:var(--text)}.party-header-tab:hover,.party-header-tab:focus-visible{color:var(--text);background:rgba(38,75,106,.22)}.party-relic-tab-tooltip{position:absolute;z-index:80;top:calc(100% + 8px);left:10px;display:none;width:min(340px,70vw);padding:13px 15px;border:1px solid rgba(228,196,122,.7);border-radius:12px;background:rgba(5,17,28,.98);box-shadow:0 14px 32px #0006;pointer-events:none}.party-relic-tab-tooltip b,.party-relic-tab-tooltip small{display:block}.party-relic-tab-tooltip b{color:#ffe08a;font-size:16px}.party-relic-tab-tooltip small{margin-top:6px;color:var(--text);font-size:14px;line-height:1.5;white-space:normal}.party-relic-tab:hover .party-relic-tab-tooltip,.party-relic-tab:focus-visible .party-relic-tab-tooltip{display:block}.party-relic-page{padding-top:4px}.party-relic-page .party-relic-panel{grid-column:auto}@media (max-width: 820px){.camp-status-bar{flex-wrap:wrap}.party-header-tabs{width:100%}.party-header-tab{flex:1}.camp-status-chip{min-width:145px}}.battle-levelup-events article{gap:8px!important;padding:16px 18px!important}.battle-levelup-events article>span{padding:3px 9px;font-size:12px}.battle-levelup-events article>strong{font-size:clamp(20px,2.2vw,27px)}.battle-levelup-events article>p{padding-top:8px;font-size:clamp(14px,1.6vw,17px);line-height:1.55}.battle-levelup-events article>small{font-size:14px}.party-header-tab>span:first-child{font-size:clamp(22px,2vw,30px);line-height:1.15;font-weight:850;letter-spacing:-.04em;white-space:nowrap}.party-header-tab>strong{min-height:16px;line-height:16px}.enemy-stage-unit .enemy-sprite-frame{position:relative!important;display:block!important;overflow:visible!important;background:transparent!important;background-image:var(--enemy-sprite-image, none)!important;background-repeat:no-repeat!important;background-position:center bottom!important;background-size:contain!important;opacity:1!important;visibility:visible!important;isolation:isolate}.enemy-stage-unit .enemy-sprite-frame .enemy-sprite-image,.enemy-stage-unit .enemy-sprite-frame .enemy-sprite-image:not([hidden]){position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:2!important;display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;opacity:1!important;visibility:visible!important;border:0!important;background:transparent!important;mix-blend-mode:normal!important;-webkit-mask-image:none!important;mask-image:none!important}.enemy-stage-unit .enemy-sprite-frame .enemy-sprite-image[hidden],.enemy-stage-unit .enemy-sprite-frame .battle-portrait-fallback{display:none!important}.enemy-stage-unit .enemy-sprite-frame.image-failed .battle-portrait-fallback{position:absolute!important;top:12%!important;right:28%!important;bottom:4px!important;left:28%!important;z-index:1!important;display:grid!important;place-items:center!important;min-height:88px!important;color:#ffe09a!important;font-size:42px!important;font-weight:900!important;border:2px solid rgba(228,196,122,.62)!important;border-radius:50%!important;background:rgba(8,20,31,.9)!important}.enemy-stage-unit.is-hit .enemy-sprite-frame .enemy-sprite-image{animation:enemy-hit-flash .42s cubic-bezier(.2,.8,.2,1) both}.party-card.is-hit{animation:party-card-hit .42s cubic-bezier(.2,.8,.2,1) both}.party-card.is-hit .battle-portrait{animation:enemy-hit-flash .42s cubic-bezier(.2,.8,.2,1) both}@keyframes party-card-hit{0%{filter:brightness(1)}22%{filter:brightness(2.1) saturate(.25);box-shadow:0 0 0 3px #ff6960e6,0 0 28px #ff5048a6}55%{transform:translate(-4px)}75%{transform:translate(3px)}to{filter:brightness(1);transform:translate(0)}}.battle-floating-numbers{display:flex!important;flex-direction:column-reverse;align-items:center;gap:4px;min-width:max-content}.battle-floating-numbers strong{grid-area:auto!important;display:block;position:relative;white-space:nowrap}.battle-floating-numbers .is-status{padding:3px 9px;border-radius:999px;color:#ffe38b;font-size:17px!important;background:rgba(53,35,8,.9);border:1px solid rgba(255,211,91,.65)}.stat-tooltip-trigger{position:relative;overflow:visible;color:inherit;text-align:left;cursor:help;font:inherit}.stat-tooltip-trigger:hover,.stat-tooltip-trigger:focus-visible{z-index:60;outline:none}.stat-tooltip-trigger:hover .stat-chip-value,.stat-tooltip-trigger:focus-visible .stat-chip-value{color:#ffe08a;box-shadow:0 0 0 1px #e4c47a80}.stat-tooltip-trigger>.stat-info-tooltip{top:calc(100% + 8px);bottom:auto;left:0;right:auto;width:min(320px,70vw);transform:translateY(6px)}.stat-tooltip-trigger:hover>.stat-info-tooltip,.stat-tooltip-trigger:focus-visible>.stat-info-tooltip,.stat-tooltip-trigger:focus-within>.stat-info-tooltip{display:grid;opacity:1;visibility:visible;transform:translateY(0);pointer-events:none}.enemy-status-panel .enemy-effect-row{display:flex;align-items:center;min-height:0;width:100%;margin-bottom:2px}.enemy-status-panel .enemy-effect-row:empty{display:none}.enemy-status-panel .enemy-effect-row>.battle-effect-list{display:flex;align-items:center;justify-content:flex-start;gap:4px;max-width:100%}.enemy-status-panel .combat-effect-icon.is-buff{color:#aaffc1;border-color:#59dc7db8;background:rgba(20,91,47,.92)}.enemy-status-panel .combat-effect-icon.is-debuff,.enemy-status-panel .combat-effect-icon.is-status{color:#ffc0bc;border-color:#f25b53c2;background:rgba(111,31,32,.94)}.enemy-status-panel .battle-status-tooltip{bottom:calc(100% + 8px);top:auto;z-index:2147483647}.party-dashboard .stat-tooltip-trigger>.stat-info-tooltip,.party-dashboard .stat-tooltip-trigger:hover>.stat-info-tooltip,.party-dashboard .stat-tooltip-trigger:focus-visible>.stat-info-tooltip,.party-dashboard .stat-tooltip-trigger:focus-within>.stat-info-tooltip{display:none!important;visibility:hidden!important;opacity:0!important}body>.floating-equipment-tooltip.stat-info-tooltip{display:grid!important;visibility:visible!important;opacity:1!important}.battle-strategy-select{display:inline-flex;align-items:center;gap:8px;padding:0 12px;min-height:46px;border-radius:14px;background:rgba(7,25,40,.88);color:#c8d8e8;font-size:13px;white-space:nowrap}.battle-strategy-select select{min-width:132px;border:0;outline:0;background:transparent;color:#ffd166;font:inherit;font-weight:800;cursor:pointer}.battle-strategy-select option{background:#0b2133;color:#eef6ff}.battle-strategy-select{position:relative}.battle-strategy-tooltip{position:absolute;z-index:160;top:calc(100% + 10px);right:0;display:none;width:min(340px,calc(100vw - 24px));padding:15px 17px;border:1px solid rgba(228,196,122,.7);border-radius:14px;background:rgba(4,18,29,.98);color:#eef6ff;box-shadow:0 14px 34px #00000073;white-space:normal;pointer-events:none}.battle-strategy-tooltip strong,.battle-strategy-tooltip small{display:block}.battle-strategy-tooltip strong{margin-bottom:7px;color:#ffd166;font-size:16px}.battle-strategy-tooltip small{color:#c8d8e8;font-size:14px;line-height:1.55}.battle-strategy-select:hover .battle-strategy-tooltip,.battle-strategy-select:focus-within .battle-strategy-tooltip{display:block}.battle-result-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px}.battle-result-log-toggle{min-height:46px;white-space:nowrap}.battle-result-log{margin:16px 0;border:1px solid rgba(126,167,199,.32);border-radius:16px;background:rgba(3,16,27,.72);overflow:hidden}.battle-result-log-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-bottom:1px solid rgba(126,167,199,.22)}.battle-result-log-head strong{color:#ffd166}.battle-result-log-head small{color:#9fb3c7}.battle-result-log-list{max-height:260px;overflow-y:auto;padding:10px 15px;overscroll-behavior:contain}.battle-result-log-list p{margin:0;padding:7px 0;color:#cbd9e6;font-size:14px;line-height:1.45}.battle-result-log-list p+p{border-top:1px solid rgba(126,167,199,.12)}@media (max-width: 720px){.battle-result-actions{width:100%;align-items:stretch;flex-direction:column-reverse}.battle-result-log-toggle,.battle-result-next{width:100%}}.camp-next-action small{display:block;margin-top:5px;color:#d7e5f2;font-size:14px;font-weight:700}.battle-defeat-announcement{position:absolute;z-index:18;inset:50% auto auto 50%;transform:translate(-50%,-50%);padding:18px 30px;border-radius:16px;background:rgba(4,12,20,.9);color:#ff8f8f;font-size:clamp(24px,3.2vw,42px);font-weight:900;letter-spacing:-.02em;text-align:center;white-space:nowrap;text-shadow:0 3px 16px rgba(0,0,0,.9);animation:battle-defeat-reveal .35s ease-out both}@keyframes battle-defeat-reveal{0%{opacity:0;transform:translate(-50%,-44%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.side-story-section>.section-title-row h2{color:var(--accent)}.side-story-section .side-story-card{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-width:0;height:100%}.side-story-section .side-story-card>div{display:grid;align-content:start;gap:10px;min-width:0}.side-story-section .side-story-card h3{margin:0;color:var(--accent);line-height:1.45;word-break:keep-all;overflow-wrap:break-word}.side-story-section .side-story-card p{margin:0;line-height:1.75;word-break:keep-all;overflow-wrap:break-word}.side-story-section .side-story-card span{line-height:1.55;word-break:keep-all;overflow-wrap:break-word}.side-story-section .side-story-card .primary-button{width:100%;margin-top:auto}.equipment-set-effect{display:grid;gap:5px;margin-top:5px;padding:10px 12px;border-left:3px solid #f2c75c;color:#f7e5ad;background:rgba(242,199,92,.08)}.equipment-set-effect strong{color:#ffd56a;font-size:15px}.equipment-set-effect span{color:#e8d9ad}.equip-icon-card .icon-chip,.equip-icon-display .icon-chip,.mannequin-slot .icon-chip,.shop-item-icon.icon-chip,.item-tooltip-trigger .icon-chip,.battle-item-icon.icon-chip{border:0!important;outline:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.equip-icon-card .icon-chip img,.equip-icon-display .icon-chip img,.mannequin-slot .icon-chip img,.shop-item-icon.icon-chip img,.item-tooltip-trigger .icon-chip img,.battle-item-icon.icon-chip img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;filter:var(--item-icon-filter, none)!important}.item-set-warrior_legend{--item-icon-filter: hue-rotate(155deg) saturate(1.18)}.item-set-hero_legend{--item-icon-filter: none}.item-set-priest_legend{--item-icon-filter: hue-rotate(330deg) saturate(.82) brightness(1.08)}.item-set-saint_legend{--item-icon-filter: hue-rotate(285deg) saturate(.72) brightness(1.12)}.item-set-mage_legend{--item-icon-filter: hue-rotate(48deg) saturate(1.28)}.item-set-archer_legend{--item-icon-filter: hue-rotate(285deg) saturate(1.15)}.item-set-thief_legend{--item-icon-filter: hue-rotate(72deg) saturate(.95) brightness(.82)}.item-set-titan_oath_accessory{--item-icon-filter: hue-rotate(165deg) saturate(.92)}.item-set-dawn_crown_accessory{--item-icon-filter: hue-rotate(340deg) saturate(1.12)}.item-set-seraph_grace_accessory{--item-icon-filter: hue-rotate(315deg) saturate(.72) brightness(1.12)}.item-set-astral_orbit_accessory{--item-icon-filter: hue-rotate(58deg) saturate(1.3)}.item-set-tempest_eye_accessory{--item-icon-filter: hue-rotate(275deg) saturate(1.18)}.item-set-eclipse_whisper_accessory{--item-icon-filter: hue-rotate(82deg) saturate(1.12) brightness(.86)}.rarity-surface{border:2px solid var(--item-rarity-color, rgba(255, 255, 255, .34))!important;border-radius:12px!important;background:transparent!important;box-shadow:0 0 0 1px #030a11d1,0 0 12px var(--item-rarity-glow, rgba(255, 255, 255, .08))!important}.rarity-surface-common{--item-rarity-color: rgba(218, 226, 235, .62);--item-rarity-glow: rgba(218, 226, 235, .12)}.rarity-surface-uncommon{--item-rarity-color: #5fd47a;--item-rarity-glow: rgba(95, 212, 122, .28)}.rarity-surface-rare{--item-rarity-color: #4ea3ff;--item-rarity-glow: rgba(78, 163, 255, .32)}.rarity-surface-epic{--item-rarity-color: #b27cff;--item-rarity-glow: rgba(178, 124, 255, .34)}.rarity-surface-legendary{--item-rarity-color: #ffb347;--item-rarity-glow: rgba(255, 179, 71, .38)}.party-overview-head{flex-wrap:wrap}.party-deployment-control{display:flex;align-items:center;gap:10px;margin-left:auto}.party-deployment-control>span{color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap}.party-deployment-control .secondary-button{min-width:150px}.party-deployment-control .secondary-button.is-deployed{border-color:#63d995;color:#8ff0b5;background:rgba(29,112,71,.28)}@media (max-width: 820px){.party-deployment-control{width:100%;order:3;margin-left:0}.party-deployment-control .secondary-button{flex:1}}.icon-chip.rarity-surface{box-sizing:border-box!important;border-style:solid!important;border-width:3px!important;border-color:var(--item-rarity-color, rgba(218, 226, 235, .62))!important;border-radius:12px!important;background:rgba(4,13,22,.36)!important;box-shadow:0 0 0 1px #030a11e6,0 0 14px var(--item-rarity-glow, rgba(255, 255, 255, .12))!important}@keyframes game-toast-lifecycle{0%{opacity:0;transform:translate(-50%,-12px)}12%,82%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}.game-toast{position:fixed;top:24px;left:50%;z-index:10000;max-width:min(520px,calc(100vw - 32px));padding:12px 20px;border-radius:999px;background:rgba(6,24,38,.96);color:#ffe49a;box-shadow:0 10px 30px #0006;font-size:1rem;font-weight:800;text-align:center;pointer-events:none;animation:game-toast-lifecycle 1.5s ease both}.codex-icon.icon-chip{width:64px!important;height:64px!important}.enemy-stage-unit.is-elite-boss .enemy-sprite-frame{transform:translateY(-5%) scale(1.12);transform-origin:center bottom}.enemy-stage-unit.is-elite-boss .enemy-display-name{color:#ffd36a}.tower-section{display:grid;gap:18px}.tower-title-row{align-items:center}.tower-title-row>div{min-width:0}.tower-title-challenge{flex:0 0 auto;min-width:132px;min-height:48px;font-size:17px;white-space:nowrap}.tower-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tower-status-grid .info-card{min-height:132px;display:flex;flex-direction:column;gap:8px;justify-content:center}.tower-status-grid span,.tower-ranking small{color:#9fb3c7}.tower-status-grid strong{color:#f7d36a;font-size:clamp(24px,2.4vw,38px)}.tower-status-grid small{color:#b8c8d7;line-height:1.45}.tower-reward{background:linear-gradient(145deg,rgba(87,61,20,.55),rgba(10,29,45,.92))}.tower-main-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;align-items:start}.tower-preview{display:grid;gap:14px}.tower-rule{margin:0;padding:10px 12px;border-radius:10px;background:rgba(95,68,24,.34);color:#c7d6e4;line-height:1.5}.tower-rule strong{color:#f7d36a}.tower-preview h3,.tower-ranking h3{margin:0}.tower-launch{display:flex;align-items:center;justify-content:space-between;gap:14px}.tower-ranking ol{list-style:none;padding:0;margin:14px 0;display:grid;gap:7px}.tower-ranking li{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:9px 11px;border-radius:8px;background:rgba(5,17,29,.58)}.tower-ranking li b{color:#f7d36a}.tower-ranking li strong{color:#dbeeff}.tower-reward-list{grid-column:1 / -1;display:grid;gap:14px}.tower-reward-list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.tower-reward-list-head h3,.tower-reward-list-head p{margin:0}.tower-reward-list-head small{color:#9fb3c7}.tower-reward-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.tower-reward-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 13px;border-radius:10px;background:rgba(5,17,29,.62)}.tower-reward-row>strong{color:#f7d36a}.tower-reward-row>span{color:#e7f2fb}.tower-reward-row>small{color:#9fb3c7}.tower-reward-row.is-claimed{background:rgba(26,73,57,.38)}.tower-reward-row.is-claimed>small{color:#74dfa6}.tower-reward-cycle{margin:0;color:#aebfd0;line-height:1.55}.tower-reward-cycle strong{color:#f7d36a}@media (max-width: 1050px){.tower-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tower-main-grid,.tower-reward-rows{grid-template-columns:1fr}}@media (max-width: 620px){.tower-title-row{align-items:stretch;flex-direction:column}.tower-title-challenge{width:100%}.tower-status-grid,.tower-reward-rows{grid-template-columns:1fr}.tower-launch,.tower-reward-list-head{align-items:stretch;flex-direction:column}.tower-reward-row{grid-template-columns:54px minmax(0,1fr)}.tower-reward-row>small{grid-column:2}}.battle-arena>.battle-enemies{position:absolute!important;left:14px!important;right:14px!important;bottom:18px!important;z-index:20!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;align-items:end!important;gap:clamp(8px,1.5vw,20px)!important;min-height:260px!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}.battle-arena>.battle-enemies>.enemy-stage-unit{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;min-width:0!important;min-height:254px!important;opacity:1!important;visibility:visible!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame{display:block!important;flex:0 0 220px!important;width:100%!important;height:220px!important;opacity:1!important;visibility:visible!important}.battle-arena .enemy-stage-unit .enemy-status-panel{position:relative!important;z-index:3!important;display:grid!important;width:min(194px,calc(100% - 4px))!important;min-height:48px!important;opacity:1!important;visibility:visible!important}@media (max-height: 760px){.battle-arena>.battle-enemies{bottom:10px!important;min-height:220px!important}.battle-arena>.battle-enemies>.enemy-stage-unit{min-height:216px!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:185px!important;height:185px!important}}.battle-arena .enemy-stage-unit .enemy-sprite-frame{background-color:transparent!important;background-image:var(--enemy-sprite-image, none)!important;background-repeat:no-repeat!important;background-position:center bottom!important;background-size:contain!important}.tower-reward-item{display:flex;align-items:center;min-width:0;gap:10px;color:#e7f2fb}.tower-reward-item>.item-tooltip-trigger{flex:0 0 46px;width:46px;height:46px;cursor:help}.tower-reward-item .tower-reward-icon{width:46px;height:46px}.tower-reward-item .tower-reward-icon img{width:100%;height:100%;object-fit:contain}.tower-reward-item>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 620px){.tower-reward-item>.item-tooltip-trigger,.tower-reward-item .tower-reward-icon{width:40px;height:40px;flex-basis:40px}}.story-card,.story-overlay-content,.visual-dialogue-card{position:relative}.visual-dialogue-card{display:flex;flex-direction:column;min-height:calc(100dvh - 24px);overflow:hidden;padding:clamp(22px,3vw,44px);background:radial-gradient(circle at 50% 30%,rgba(55,79,108,.32),transparent 48%),linear-gradient(180deg,#101d2c 0%,#07111d 100%)}.visual-dialogue-card.has-scene-background{background-color:#07111d;background-image:linear-gradient(180deg,rgba(3,9,16,.2) 0%,rgba(3,9,16,.08) 48%,rgba(3,9,16,.7) 100%),radial-gradient(circle at 50% 43%,rgba(245,165,72,.08),rgba(2,8,14,.34) 76%),var(--dialogue-scene-background);background-position:center,center,center;background-size:cover,cover,cover;background-repeat:no-repeat}.visual-dialogue-card.aftermath-dialogue-card.has-scene-background{background-image:linear-gradient(180deg,rgba(3,9,16,.42) 0%,rgba(3,9,16,.2) 46%,rgba(3,9,16,.82) 100%),radial-gradient(circle at 50% 42%,rgba(211,174,100,.08),rgba(2,8,14,.48) 78%),var(--dialogue-scene-background)}.dialogue-standing-layer{position:absolute;inset:clamp(56px,8vh,100px) 0 clamp(150px,23vh,230px);z-index:1;overflow:hidden;pointer-events:none}.dialogue-standing{position:absolute;bottom:-3%;display:block;width:min(48vw,690px);height:min(73vh,760px);object-fit:contain;object-position:center bottom;opacity:1;filter:drop-shadow(0 22px 24px rgba(0,0,0,.58));transition:opacity .22s ease,filter .22s ease,transform .22s ease;transform-origin:center bottom}.dialogue-standing-left{left:clamp(-100px,-4vw,-28px)}.dialogue-standing-right{right:clamp(-100px,-4vw,-28px)}.dialogue-standing.is-speaking{z-index:2;transform:scale(1.04)}.dialogue-standing.is-listening{z-index:1;opacity:.5;filter:brightness(.42) saturate(.58) drop-shadow(0 18px 18px rgba(0,0,0,.5));transform:scale(.93)}.story-overlay-content>.story-meta,.story-overlay-content>.visual-dialogue-box,.visual-dialogue-card>.story-meta,.visual-dialogue-card>.visual-dialogue-box{position:relative;z-index:4}.visual-dialogue-card>.story-meta{display:flex;align-items:flex-start;justify-content:space-between;text-shadow:0 2px 12px #000}.story-line.visual-dialogue-box{width:min(1120px,calc(100% - 32px));min-height:174px;margin:auto auto 0;padding:28px 30px 20px;border:2px solid rgba(229,192,91,.92);border-radius:8px 8px 20px 20px;background:linear-gradient(135deg,rgba(76,17,24,.97),rgba(31,9,19,.97)),#2b0c16;box-shadow:0 0 0 3px #040b14eb,0 20px 48px #00000094;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto}.story-line.visual-dialogue-box:before,.story-line.visual-dialogue-box:after{position:absolute;top:-2px;width:64px;height:22px;border-top:3px solid #e5c05b;content:""}.story-line.visual-dialogue-box:before{left:-2px;border-left:3px solid #e5c05b;border-radius:8px 0 0}.story-line.visual-dialogue-box:after{right:-2px;border-right:3px solid #e5c05b;border-radius:0 8px 0 0}.visual-dialogue-box .story-line-copy>strong{align-self:flex-start;min-width:150px;margin:-49px 0 8px;padding:9px 24px 8px;border:2px solid #e5c05b;border-radius:8px 8px 0 0;color:#ffe89b;text-align:center;background:linear-gradient(180deg,#4d1723,#260b15);box-shadow:0 -5px 16px #0000004d}.visual-dialogue-box .story-line-copy>p{min-height:66px;margin:4px 0 0;color:#fff8ec;font-size:clamp(19px,1.65vw,25px);line-height:1.68;text-shadow:0 2px 4px rgba(0,0,0,.9)}.visual-dialogue-box .dialogue-navigation{justify-content:flex-end;margin-top:12px}.story-dialogue-navigation .story-auto-toggle{margin-right:auto;margin-left:0}@media (max-width: 820px){.dialogue-standing-layer{top:72px;right:0;bottom:190px;left:0}.dialogue-standing{width:62vw;height:60vh}.dialogue-standing-left{left:-18vw}.dialogue-standing-right{right:-18vw}.story-line.visual-dialogue-box{width:calc(100% - 12px);min-height:162px;padding:25px 18px 16px}.visual-dialogue-box .story-line-copy>strong{min-width:120px;margin-top:-45px;padding:7px 16px}.visual-dialogue-box .story-line-copy>p{font-size:17px;line-height:1.55}}@media (max-width: 520px){.dialogue-standing-layer{top:88px;right:0;bottom:220px;left:0}.dialogue-standing{width:76vw;height:52vh}.dialogue-standing.is-listening{opacity:.3}.visual-dialogue-card{padding:16px 8px}.story-line.visual-dialogue-box{width:100%}.visual-dialogue-box .dialogue-navigation{gap:8px}.visual-dialogue-box .dialogue-navigation button{min-width:0;padding-inline:12px}}.screen-frame.story-screen:has(>.visual-dialogue-card){display:block;min-height:100dvh;padding:0;overflow:hidden}.story-card.visual-dialogue-card{box-sizing:border-box;width:100%;max-width:none;height:100dvh;min-height:0;margin:0;padding:clamp(20px,3vw,42px);border:0;border-radius:0;box-shadow:none;overflow:hidden}.visual-dialogue-card .dialogue-standing-layer{inset:clamp(72px,9vh,104px) clamp(12px,2vw,32px) 0;overflow:visible}.visual-dialogue-card .dialogue-standing{bottom:0;width:min(43vw,580px);height:min(64dvh,620px);max-width:48%;max-height:100%}.visual-dialogue-card .dialogue-standing-left{left:0}.visual-dialogue-card .dialogue-standing-right{right:0}.visual-dialogue-card>.story-line.visual-dialogue-box{box-sizing:border-box;flex:0 0 auto;width:min(1060px,calc(100% - 32px));min-height:0;max-height:min(31dvh,250px);margin:auto auto 0;padding:28px 30px 18px;border:0;border-radius:16px;box-shadow:0 18px 42px #00000085}.visual-dialogue-card>.story-line.visual-dialogue-box:before,.visual-dialogue-card>.story-line.visual-dialogue-box:after{display:none}.visual-dialogue-card .visual-dialogue-box .story-line-copy>strong{margin-top:-43px;border:0;box-shadow:none}@media (max-width: 820px){.visual-dialogue-card .dialogue-standing-layer{top:76px;right:4px;bottom:0;left:4px}.visual-dialogue-card .dialogue-standing{width:58vw;height:57dvh;max-width:62%}.visual-dialogue-card .dialogue-standing-left{left:-12vw}.visual-dialogue-card .dialogue-standing-right{right:-12vw}.visual-dialogue-card>.story-line.visual-dialogue-box{width:calc(100% - 12px);max-height:32dvh;padding:25px 18px 15px}}@media (max-width: 520px){.story-card.visual-dialogue-card{padding:14px 8px}.visual-dialogue-card .dialogue-standing-layer{top:86px;right:0;bottom:0;left:0}.visual-dialogue-card .dialogue-standing{width:72vw;height:51dvh;max-width:76%}.visual-dialogue-card>.story-line.visual-dialogue-box{width:100%;max-height:36dvh}}.visual-dialogue-card>.story-line.visual-dialogue-box{border:2px solid rgba(229,192,91,.92)}.battle-arena .enemy-stage-unit.is-hit .enemy-sprite-frame{animation:enemy-hit-flash .42s cubic-bezier(.2,.8,.2,1) both}.battle-arena .enemy-stage-unit.is-hit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-hit .enemy-sprite-frame .enemy-sprite-image,.enemy-stage-unit.is-hit .enemy-sprite-frame .battle-portrait{animation:none!important;transform:none!important;opacity:1!important;visibility:visible!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:block;background-image:var(--enemy-sprite-image, none);background-repeat:no-repeat;background-position:center bottom;background-size:contain;filter:brightness(4) saturate(0);opacity:0;pointer-events:none;content:""}.battle-arena .enemy-stage-unit.is-hit .enemy-sprite-frame:after{animation:enemy-hit-overlay .42s cubic-bezier(.2,.8,.2,1) both}@keyframes enemy-hit-overlay{0%{opacity:0}16%{opacity:.95}38%{opacity:.12}62%{opacity:.72}to{opacity:0}}.battle-arena .enemy-stage-unit .enemy-sprite-frame{filter:none!important;transform:none!important;animation:none!important;opacity:1!important;visibility:visible!important;content-visibility:visible!important;backface-visibility:visible!important;will-change:auto!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){display:block!important;filter:none!important;transform:none!important;animation:none!important;transition:none!important;opacity:1!important;visibility:visible!important;mix-blend-mode:normal!important;-webkit-mask-image:none!important;mask-image:none!important;backface-visibility:visible!important;will-change:auto!important}.battle-arena{isolation:isolate!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;align-items:end!important}.battle-arena>.battle-arena-background{z-index:0!important;filter:brightness(.74) saturate(.8) contrast(.94)}.battle-arena>.battle-arena-overlay{z-index:1!important;pointer-events:none!important;background:radial-gradient(ellipse at 50% 48%,transparent 0 24%,rgba(2,8,14,.12) 58%,rgba(2,8,14,.32) 100%),linear-gradient(180deg,rgba(3,10,17,.08) 0%,rgba(3,10,17,.18) 42%,rgba(3,10,17,.56) 100%)!important}@media (max-width: 820px){.battle-arena>.battle-arena-background{filter:brightness(.68) saturate(.76) contrast(.92)}.battle-arena>.battle-arena-overlay{background:radial-gradient(ellipse at 50% 48%,transparent 0 20%,rgba(2,8,14,.16) 55%,rgba(2,8,14,.38) 100%),linear-gradient(180deg,rgba(3,10,17,.1) 0%,rgba(3,10,17,.22) 38%,rgba(3,10,17,.62) 100%)!important}}.battle-arena>.battle-enemies{position:relative!important;inset:auto!important;z-index:10!important;align-self:end!important;justify-self:stretch!important;width:calc(100% - 28px)!important;min-width:0!important;min-height:260px!important;margin:0 14px 14px!important;transform:none!important;opacity:1!important;visibility:visible!important;overflow:visible!important}.battle-arena>.battle-enemies>.enemy-stage-unit{z-index:1!important;opacity:1!important;visibility:visible!important;content-visibility:visible!important}.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{opacity:.42!important}.party-roster-portrait{position:relative;display:block;width:54px;height:58px}.party-roster-portrait-crop{display:block;width:100%;height:100%;overflow:hidden;box-sizing:border-box;border:1px solid rgba(132,169,205,.34);border-radius:11px;background:rgba(5,14,22,.9)}.party-roster-portrait-crop>img{display:block;width:100%;height:100%;border:0;border-radius:0;object-fit:cover;object-position:center center;transform-origin:var(--portrait-focus-x, 50%) var(--portrait-focus-y, 24%);transform:translate(calc(50% - var(--portrait-focus-x, 50%)),calc(50% - var(--portrait-focus-y, 24%))) scale(var(--portrait-zoom, 2.1))}.party-equipment-upgrade-dot{position:absolute;top:-4px;right:-5px;z-index:3;width:13px;height:13px;border:2px solid #f7fbff;border-radius:50%;background:#ef3e46;box-shadow:0 0 0 2px #081521e6,0 0 10px #ef3e46b8;pointer-events:none}.mannequin-slot-icon{position:relative}.mannequin-slot-upgrade-dot{top:-2px;right:-5px;z-index:5}.candidate-equipment-upgrade-dot{top:5px;right:5px;z-index:6}.menu-symbol{position:relative}.menu-equipment-upgrade-dot{top:-3px;right:-5px;z-index:4}.dialogue-standing{max-height:calc(100% - 16px)}.dialogue-standing.is-speaking{transform:scale(.96)}.visual-dialogue-card .dialogue-standing{width:min(41vw,550px);height:min(61dvh,590px);max-height:calc(100% - 16px)}@media (max-width: 820px){.visual-dialogue-card .dialogue-standing{width:55vw;height:54dvh}}@media (max-width: 520px){.visual-dialogue-card .dialogue-standing{width:68vw;height:48dvh}}.story-card.has-story-background .story-overlay-content>.story-meta{align-self:center;justify-items:center;box-sizing:border-box;width:min(680px,calc(100% - 240px));padding:14px 24px 16px;border-top:4px solid var(--accent);border-left:0;border-radius:0 0 16px 16px;text-align:center;background:linear-gradient(180deg,rgba(3,11,20,.92),rgba(3,11,20,.62))}.story-card.has-story-background .story-overlay-content>.story-meta .story-auto-toggle{justify-self:center}.visual-dialogue-card>.story-meta{justify-content:center;box-sizing:border-box;width:min(720px,calc(100% - 220px));margin-inline:auto;padding-inline:72px;text-align:center}.visual-dialogue-card>.story-meta>div{display:grid;justify-items:center}.visual-dialogue-card>.story-meta>span{position:absolute;top:0;right:0}@media (max-width: 820px){.story-card.has-story-background .story-overlay-content>.story-meta,.visual-dialogue-card>.story-meta{width:calc(100% - 24px)}.visual-dialogue-card>.story-meta{padding-inline:48px}}.visual-dialogue-box .story-line-copy>strong{margin-left:clamp(38px,4vw,64px)}.story-card.has-story-background .dialogue-standing-layer,.story-card.visual-dialogue-card .dialogue-standing-layer{bottom:calc(var(--dialogue-panel-offset, 220px) - 1px)!important}.story-card .dialogue-standing.is-speaking{transform:translateY(var(--dialogue-alpha-bottom-shift, 0px)) scale(.96)!important}.story-card .dialogue-standing.is-listening{transform:translateY(var(--dialogue-alpha-bottom-shift, 0px)) scale(.93)!important}@media (max-width: 520px){.visual-dialogue-box .story-line-copy>strong{margin-left:20px}}.encounter-title-row{align-items:center}.encounter-title-row>div{min-width:0}.encounter-title-launch{flex:0 0 auto;min-width:148px;min-height:48px;white-space:nowrap}@media (max-width: 620px){.encounter-title-row{align-items:stretch;flex-direction:column}.encounter-title-launch{width:100%}}.battle-arena.is-elite-arena{min-height:400px!important}.battle-arena.is-elite-arena>.battle-enemies{min-height:335px!important}.battle-arena.is-elite-arena>.battle-enemies>.enemy-stage-unit{min-height:330px!important}.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:280px!important;height:280px!important}.battle-arena.is-elite-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame{flex-basis:340px!important;height:340px!important}.battle-arena.is-elite-arena .enemy-stage-unit .enemy-status-panel{z-index:6!important;margin-top:-54px!important;background:rgba(5,17,28,.9)}@media (max-height: 760px){.battle-arena.is-elite-arena{min-height:330px!important}.battle-arena.is-elite-arena>.battle-enemies{min-height:275px!important}.battle-arena.is-elite-arena>.battle-enemies>.enemy-stage-unit{min-height:270px!important}.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:225px!important;height:225px!important}.battle-arena.is-elite-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame{flex-basis:280px!important;height:280px!important}.battle-arena.is-elite-arena .enemy-stage-unit .enemy-status-panel{margin-top:-40px!important}}.battle-arena>.battle-enemies[data-rendered-enemy-count="2"]{grid-template-columns:repeat(2,minmax(0,300px))!important;justify-content:center!important;justify-self:center!important;column-gap:clamp(28px,5vw,72px)!important;width:min(680px,calc(100% - 28px))!important;margin:0 auto 14px!important}.battle-arena.is-tower-arena{min-height:350px!important}.battle-arena.is-tower-arena>.battle-enemies{min-height:292px!important}.battle-arena.is-tower-arena>.battle-enemies>.enemy-stage-unit{min-height:282px!important}.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:220px!important;height:220px!important}.battle-arena.is-tower-boss-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:240px!important;height:240px!important}.battle-arena.is-tower-boss-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame{flex-basis:320px!important;height:320px!important}.battle-arena.is-tower-arena .enemy-stage-unit .enemy-status-panel{z-index:6!important;margin-top:-42px!important;background:rgba(5,17,28,.9)}@media (max-height: 760px){.battle-arena.is-tower-arena{min-height:300px!important}.battle-arena.is-tower-arena>.battle-enemies{min-height:248px!important}.battle-arena.is-tower-arena>.battle-enemies>.enemy-stage-unit{min-height:240px!important}.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:185px!important;height:185px!important}.battle-arena.is-tower-boss-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:205px!important;height:205px!important}.battle-arena.is-tower-boss-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame{flex-basis:270px!important;height:270px!important}.battle-arena.is-tower-arena .enemy-stage-unit .enemy-status-panel{margin-top:-34px!important}}.battle-arena.is-story-arena{min-height:460px!important}.battle-arena.is-story-arena>.battle-enemies{min-height:350px!important}.battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit{min-height:344px!important}.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:300px!important;height:300px!important}.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel{z-index:6!important;margin-top:-110px!important;background:rgba(5,17,28,.9)}.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame{background-size:auto 430px!important}.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame>.enemy-sprite-image,.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){inset:auto auto 0 50%!important;width:auto!important;height:430px!important;max-width:none!important;transform:translate(-50%)!important;transform-origin:center bottom!important}@media (max-height: 760px){.battle-arena.is-story-arena{min-height:380px!important}.battle-arena.is-story-arena>.battle-enemies,.battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit{min-height:300px!important}.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:260px!important;height:260px!important}.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel{margin-top:-88px!important}.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame{background-size:auto 350px!important}.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame>.enemy-sprite-image,.battle-arena.is-story-arena .enemy-stage-unit:is([data-template-id=witch],[data-template-id=necromancer],[data-template-id=skeleton],[data-template-id=corrupted_knight],[data-template-id=abyss_cultist],[data-template-id=astel_spearman],[data-template-id=astel_longbow],[data-template-id=royal_guard],[data-template-id=court_mage],[data-template-id=black_commander],[data-template-id=masked_scout],[data-template-id=heretic_inquisitor],[data-template-id=drowned_sentinel],[data-template-id=cursed_king],[data-template-id=demon_king]) .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:350px!important}}.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{min-height:460px!important}.battle-arena>.battle-enemies,.battle-arena.is-story-arena>.battle-enemies,.battle-arena.is-elite-arena>.battle-enemies,.battle-arena.is-tower-arena>.battle-enemies{min-height:350px!important}.battle-arena>.battle-enemies>.enemy-stage-unit{min-height:344px!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-boss-arena .enemy-stage-unit .enemy-sprite-frame{flex:0 0 300px!important;width:100%!important;height:300px!important;background-position:center bottom!important;background-size:contain!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}.battle-arena .enemy-stage-unit .enemy-status-panel{z-index:6!important;margin-top:-72px!important;background:rgba(5,17,28,.9)}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame{background-size:auto 430px!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){inset:auto auto 0 50%!important;width:auto!important;height:430px!important;max-width:none!important;object-fit:contain!important;transform:translate(-50%)!important}.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame{background-size:auto 430px!important}.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:430px!important}.battle-arena .enemy-stage-unit[data-template-id=drowned_sentinel].is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit[data-template-id=drowned_sentinel].is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){transform:translate(-50%) scale(1.22)!important;transform-origin:center bottom!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel{margin-top:-110px!important}.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame{flex-basis:360px!important;height:360px!important}.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame{background-size:auto 480px!important}.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:480px!important}@media (max-width: 820px){.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{min-height:390px!important}.battle-arena>.battle-enemies,.battle-arena>.battle-enemies>.enemy-stage-unit{min-height:300px!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame{flex-basis:260px!important;height:260px!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:360px!important;background-size:auto 360px!important}.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:360px!important;background-size:auto 360px!important}}.battle-arena>.battle-enemies>.enemy-stage-unit{isolation:isolate}.battle-arena .enemy-stage-unit .enemy-sprite-frame{position:relative!important;z-index:1!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel,.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-status-panel,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-status-panel{position:absolute!important;z-index:50!important;left:50%!important;right:auto!important;bottom:0!important;display:grid!important;width:min(230px,calc(100% - 4px))!important;min-height:54px!important;margin:0!important;transform:translate(-50%)!important;opacity:1!important;visibility:visible!important;background:rgba(5,17,28,.92)!important}.battle-arena .enemy-stage-unit .enemy-status-panel .battle-gauge-hp.has-value{display:block!important;width:100%!important;min-height:23px!important;opacity:1!important;visibility:visible!important}.battle-arena .enemy-stage-unit .enemy-status-panel .battle-gauge-value{display:grid!important;opacity:1!important;visibility:visible!important}.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{height:100%!important;min-height:300px!important}.battle-arena>.battle-enemies,.battle-arena.is-story-arena>.battle-enemies,.battle-arena.is-elite-arena>.battle-enemies,.battle-arena.is-tower-arena>.battle-enemies{top:0!important;bottom:0!important;height:100%!important;min-height:0!important;align-items:stretch!important}.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{box-sizing:border-box!important;height:100%!important;min-height:0!important;padding:0!important;opacity:1!important;transform:none!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-boss-arena .enemy-stage-unit .enemy-sprite-frame{position:absolute!important;top:28px!important;right:0!important;bottom:64px!important;left:0!important;flex:none!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;transform:none!important;transform-origin:center bottom!important;background-position:center bottom!important;background-size:contain!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;transform-origin:center bottom!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:0!important;right:0!important;bottom:64px!important;left:0!important;flex:none!important;height:auto!important;min-height:0!important;background-size:contain!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]),.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;transform-origin:center bottom!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame:after{background-position:center bottom!important;background-size:contain!important;transform:none!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame:after{background-position:center bottom!important;background-size:contain!important}.battle-arena>.battle-enemies>.enemy-stage-unit.is-down .enemy-sprite-frame{opacity:.42!important;filter:grayscale(1) brightness(.58)!important;transform:none!important}.battle-arena>.battle-enemies>.enemy-stage-unit.is-down .enemy-status-panel{opacity:.82!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel,.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-status-panel,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-status-panel{bottom:8px!important;min-height:58px!important;margin:0!important}@media (max-width: 820px){.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{height:100%!important;min-height:280px!important}.battle-arena>.battle-enemies,.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{height:100%!important;min-height:0!important}.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{padding:0!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:18px!important;right:0!important;bottom:58px!important;left:0!important;flex:none!important;height:auto!important;min-height:0!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:100%!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame:after{background-size:contain!important}.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){height:100%!important}}.battle-command-bar .battle-action-panel.is-skill-command{grid-template-columns:minmax(0,1fr) 82px!important;column-gap:14px!important;isolation:isolate}.battle-command-bar .battle-skill-grid{grid-column:1;min-width:0;max-width:100%;padding-right:10px!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain}.battle-command-bar .battle-item-menu{position:relative;z-index:2;grid-column:2;min-width:82px!important;width:82px!important;margin:0;align-self:stretch}.battle-command-bar .battle-item-menu-button{width:82px;min-width:82px!important;max-width:82px}@media (max-width: 820px){.battle-command-bar .battle-action-panel.is-skill-command{grid-template-columns:minmax(0,1fr) 74px!important;column-gap:8px!important}.battle-command-bar .battle-item-menu,.battle-command-bar .battle-item-menu-button{min-width:74px!important;width:74px!important;max-width:74px}}.party-skills-panel .party-subsection-head>div:first-child{display:grid;gap:2px}.skill-order-head-actions{display:flex;align-items:center;gap:8px}.skill-order-reset{min-height:30px;padding:4px 9px;font-size:11px}.party-skill-grid.skill-order-list{grid-template-columns:minmax(0,1fr)!important}.party-skill-grid .skill-order-card{position:relative;display:grid;grid-template-columns:28px 38px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;padding:6px 7px;border:1px solid rgba(104,142,181,.28);border-radius:10px;background:rgba(6,20,32,.62);cursor:grab;transition:border-color .15s ease,background .15s ease,opacity .15s ease,transform .15s ease}.party-skill-grid .skill-order-card:active{cursor:grabbing}.party-skill-grid .skill-order-card.is-dragging{opacity:.36}.party-skill-grid .skill-order-card.is-drop-target{border-color:var(--accent);background:rgba(50,91,126,.7);transform:translateY(2px)}.skill-order-position{display:grid;place-items:center;width:25px;height:25px;border-radius:999px;color:#071018;background:var(--accent);font-size:11px;font-weight:900}.skill-order-card>.icon-chip{width:36px;height:36px;min-width:36px}.skill-order-card>.icon-chip img{width:100%;height:100%;object-fit:contain}.skill-order-copy{display:grid;min-width:0;gap:2px}.skill-order-copy strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.skill-order-copy small{color:var(--muted);font-size:10px}.skill-order-controls{display:flex;gap:4px}.skill-order-button{display:grid;place-items:center;width:29px;height:29px;padding:0;border:1px solid rgba(126,170,209,.42);border-radius:7px;color:var(--text);background:rgba(31,63,91,.78);cursor:pointer}.skill-order-button:hover:not(:disabled),.skill-order-button:focus-visible:not(:disabled){border-color:var(--accent);color:var(--accent)}.skill-order-button:disabled{opacity:.25;cursor:default}.skill-effect-summary{display:inline-flex!important;flex-wrap:wrap;align-items:center;gap:4px;color:var(--muted)}.skill-effect-entry{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap}.skill-effect-equipment-bonus,.skill-tooltip .skill-effect-equipment-bonus,.battle-skill-tooltip .skill-effect-equipment-bonus,body>.floating-battle-skill-tooltip .skill-effect-equipment-bonus{color:#61e995!important;font-family:inherit;font-size:inherit!important;line-height:inherit!important;font-weight:800}.skill-effect-separator{color:#a6bccf8c}.skill-codex-effects>strong{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:7px}.skill-codex-effects>strong small{color:#61e995;font-size:11px;font-weight:800}.party-skills-panel.skill-order-launch-panel{grid-template-rows:auto;align-content:start;min-height:0}.skill-order-head-actions>span{color:var(--muted);white-space:nowrap}.skill-order-open-button{min-height:38px;padding:7px 13px;white-space:nowrap}.skill-order-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;display:grid;place-items:center;padding:24px;background:rgba(2,9,16,.78);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.skill-order-modal{width:min(860px,calc(100vw - 32px));max-height:min(82dvh,760px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:20px;overflow:hidden;border:2px solid var(--accent);border-radius:18px;background:rgba(7,22,34,.99);box-shadow:0 24px 70px #0000009e,0 0 26px color-mix(in srgb,var(--accent) 24%,transparent)}.skill-order-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.skill-order-modal-head>div{display:grid;gap:5px;min-width:0}.skill-order-modal-head .eyebrow{margin:0;color:var(--accent);font-size:11px;letter-spacing:.14em}.skill-order-modal-head h2{margin:0;color:var(--text);font-size:clamp(20px,2.4vw,28px)}.skill-order-modal-head p:last-child{margin:0;color:var(--muted);font-size:13px}.skill-order-modal-close{flex:none;min-height:36px;padding:6px 12px}.skill-order-modal-list.party-skill-grid{min-height:0;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-content:start;gap:9px;padding:2px 8px 2px 2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.skill-order-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:14px;border-top:1px solid rgba(126,170,209,.22)}.skill-order-modal-actions button{min-height:40px}@media (max-width: 720px){.skill-order-modal-backdrop{padding:12px}.skill-order-modal{width:calc(100vw - 20px);max-height:88dvh;gap:12px;padding:14px}.skill-order-modal-head{gap:10px}.skill-order-modal-head p:last-child{font-size:12px}.skill-order-modal-list.party-skill-grid{grid-template-columns:minmax(0,1fr)!important}.skill-order-modal-actions{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 1080px){#game-shell:has(>.screen-frame.camp-layout){display:block;height:100dvh;min-height:0;padding:12px;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92);-webkit-overflow-scrolling:touch}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar,.codex-panel .codex-scroll::-webkit-scrollbar,.shop-catalog-grid::-webkit-scrollbar,.utility-card::-webkit-scrollbar,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar,.recruitment-card::-webkit-scrollbar,.skill-order-modal-list::-webkit-scrollbar{width:8px;height:8px}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar-track,.codex-panel .codex-scroll::-webkit-scrollbar-track,.shop-catalog-grid::-webkit-scrollbar-track,.utility-card::-webkit-scrollbar-track,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar-track,.recruitment-card::-webkit-scrollbar-track,.skill-order-modal-list::-webkit-scrollbar-track{background:rgba(7,20,31,.92);border-radius:999px}#game-shell:has(>.screen-frame.camp-layout)::-webkit-scrollbar-thumb,.codex-panel .codex-scroll::-webkit-scrollbar-thumb,.shop-catalog-grid::-webkit-scrollbar-thumb,.utility-card::-webkit-scrollbar-thumb,.story-card:not(.visual-dialogue-card)::-webkit-scrollbar-thumb,.recruitment-card::-webkit-scrollbar-thumb,.skill-order-modal-list::-webkit-scrollbar-thumb{min-height:42px;border:2px solid rgba(7,20,31,.92);border-radius:999px;background:rgba(228,196,122,.86)}.screen-frame.camp-layout,.screen-frame.camp-layout.is-sidebar-collapsed{width:100%;height:auto;min-height:calc(100dvh - 24px);grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;overflow:visible}.camp-layout .sidebar-panel{min-height:0;max-height:none;padding:16px;overflow:visible;border-right:0;border-bottom:1px solid var(--line-soft);border-radius:28px 28px 0 0}.camp-layout .content-panel,.camp-layout .content-scroll,.camp-layout .content-scroll-camp{min-width:0;min-height:0;height:auto;max-height:none;overflow:visible}.camp-layout .content-scroll,.camp-layout .content-scroll-camp{padding-right:4px}.camp-layout .camp-status-bar{top:-1px}.camp-layout .codex-panel .codex-scroll,.camp-layout .shop-catalog-grid{max-height:none;padding-right:0;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}}@media (max-width: 720px){#game-shell:has(>.screen-frame.camp-layout){padding:6px}.screen-frame.camp-layout,.screen-frame.camp-layout.is-sidebar-collapsed{min-height:calc(100dvh - 12px);border-radius:18px}.camp-layout .sidebar-panel,.camp-layout.is-sidebar-collapsed .sidebar-panel{padding:12px;border-radius:18px 18px 0 0}.camp-layout .content-panel{padding:14px 12px 18px}.camp-layout.is-sidebar-collapsed .sidebar-toggle{margin-bottom:0}.camp-layout.is-sidebar-collapsed .camp-next-action,.camp-layout.is-sidebar-collapsed .menu-stack,.camp-layout.is-sidebar-collapsed .memo-card{display:none}.camp-layout .menu-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.camp-layout .menu-icon-button{min-height:64px;padding:8px 4px;font-size:12px}.camp-layout .camp-next-action{min-height:68px;margin-block:10px 12px}.camp-status-bar{flex-wrap:wrap}.camp-status-title{flex-basis:100%}.dialogue-navigation{flex-wrap:wrap}.dialogue-navigation>.primary-button,.dialogue-navigation>.secondary-button{width:auto;min-width:120px;min-height:48px}button,[role=button]{touch-action:manipulation}.battle-stage{min-width:0;overflow-x:hidden;overflow-y:scroll;scrollbar-width:thin;scrollbar-color:rgba(228,196,122,.86) rgba(7,20,31,.92);scrollbar-gutter:stable}.battle-stage::-webkit-scrollbar,.battle-party::-webkit-scrollbar,.battle-action-panel::-webkit-scrollbar,.battle-log::-webkit-scrollbar{width:8px;height:8px}.battle-stage::-webkit-scrollbar-track,.battle-party::-webkit-scrollbar-track,.battle-action-panel::-webkit-scrollbar-track,.battle-log::-webkit-scrollbar-track{background:rgba(7,20,31,.92);border-radius:999px}.battle-stage::-webkit-scrollbar-thumb,.battle-party::-webkit-scrollbar-thumb,.battle-action-panel::-webkit-scrollbar-thumb,.battle-log::-webkit-scrollbar-thumb{border:2px solid rgba(7,20,31,.92);border-radius:999px;background:rgba(228,196,122,.86)}.battle-stage-head{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.battle-title-copy,.battle-title-line,.battle-mode-toggle{width:100%;min-width:0}.battle-title-line{flex-wrap:wrap}.battle-mode-toggle{justify-content:flex-start;flex-wrap:wrap}.battle-party,.battle-party.is-large-party{width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 721px){.battle-arena>.battle-enemies{overflow:hidden!important}.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{position:relative!important;overflow:visible!important}.battle-party-list:is([data-rendered-party-count="3"],[data-rendered-party-count="4"]){grid-template-columns:repeat(var(--party-size),minmax(0,1fr))!important;grid-auto-flow:column!important}.battle-party-list:is([data-rendered-party-count="3"],[data-rendered-party-count="4"])>.battle-party-row{grid-column:auto!important;width:100%!important;min-width:0!important}.party-card-identity>strong{display:inline-flex;align-items:baseline;gap:5px}.party-card-identity .party-card-level{color:#b9cde0;font-size:11px;font-weight:700}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame{position:absolute!important;top:18px!important;right:6px!important;bottom:64px!important;left:6px!important;width:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;background-image:none!important;transform:none!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]),.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]),.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel{bottom:8px!important;margin:0!important}#game-shell .battle-arena>.battle-enemies>.enemy-stage-unit .enemy-sprite-frame,#game-shell .battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame,#game-shell .battle-arena.is-elite-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame,#game-shell .battle-arena.is-tower-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame{position:absolute!important;top:18px!important;right:6px!important;bottom:64px!important;left:6px!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;background-image:none!important;background-size:contain!important;transform:none!important}#game-shell .battle-arena>.battle-enemies>.enemy-stage-unit .enemy-sprite-frame>img.enemy-sprite-image,#game-shell .battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame>img.enemy-sprite-image,#game-shell .battle-arena.is-elite-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame>img.enemy-sprite-image,#game-shell .battle-arena.is-tower-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame>img.enemy-sprite-image{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}}@media (max-width: 720px){.battle-stage{display:grid!important;grid-template-rows:auto 340px auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:0!important}.battle-arena,.battle-arena.is-story-arena,.battle-arena.is-elite-arena,.battle-arena.is-tower-arena,.battle-arena.is-tower-boss-arena{height:340px!important;min-height:340px!important;max-height:340px!important;padding:0!important}.battle-arena>.battle-enemies{position:absolute!important;top:0!important;right:6px!important;bottom:6px!important;left:6px!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;align-self:auto!important;justify-self:auto!important;z-index:10!important;display:grid!important;grid-template-columns:repeat(var(--mobile-enemy-columns, 3),minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important;gap:3px!important}.battle-arena>.battle-enemies>.enemy-stage-unit,.battle-arena>.battle-enemies>.enemy-stage-unit.is-down{width:100%!important;min-width:0!important;height:100%!important;min-height:0!important;max-height:100%!important;padding:0!important}.battle-party-command-zone{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;overflow:visible!important}.battle-party,.battle-party-list,.battle-party.is-large-party,.battle-party-list.is-large-party{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;width:100%!important;min-width:0!important;height:auto!important;overflow:visible!important}.battle-party-row,.battle-party-row:not(.is-acting-row),.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card,.battle-party-list.is-large-party .battle-card{width:100%!important;min-width:0!important;max-width:100%!important}.battle-party-row .party-card,.battle-party-row:not(.is-acting-row) .party-card,.battle-party-list.is-large-party .battle-card{grid-template-columns:48px minmax(0,1fr)!important;min-height:112px!important;padding:8px!important;overflow:hidden!important}.battle-party-row .party-card .party-battle-portrait-frame,.battle-party-list.is-large-party .party-battle-portrait-frame{width:48px!important;height:62px!important;overflow:hidden!important;border-radius:9px!important}.battle-party-row .party-card .party-battle-portrait-frame>.battle-portrait,.battle-party-list.is-large-party .party-battle-portrait-frame>.battle-portrait{width:100%!important;height:100%!important;border:0!important;border-radius:0!important;object-fit:cover!important;object-position:center center!important;transform-origin:var(--portrait-focus-x, 50%) var(--portrait-focus-y, 24%)!important;transform:translate(calc(50% - var(--portrait-focus-x, 50%)),calc(50% - var(--portrait-focus-y, 24%))) scale(var(--portrait-zoom, 2.1))!important}.battle-party-row .party-card .party-card-identity,.battle-party-list.is-large-party .party-card-identity{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:5px!important;row-gap:1px!important;width:100%!important;min-width:0!important;min-height:36px!important;white-space:normal!important}.battle-party-row .party-card .party-card-identity>strong,.battle-party-list.is-large-party .party-card-identity>strong{grid-column:1 / -1!important;grid-row:1!important;max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;font-size:14px!important;line-height:1.2!important}.battle-party-row .party-card .party-card-identity>span:not(.battle-effect-list),.battle-party-list.is-large-party .party-card-identity>span:not(.battle-effect-list){grid-column:1!important;grid-row:2!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10px!important}.battle-party-row .party-card .party-card-identity>.battle-effect-list,.battle-party-list.is-large-party .party-card-identity>.battle-effect-list{grid-column:2!important;grid-row:2!important;margin-left:0!important}.battle-sidebar.battle-log-sidebar{display:block!important;grid-template-columns:none!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}.battle-log-sidebar .battle-log{display:none!important}.battle-log-sidebar.is-mobile-open .battle-log{display:block!important}.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit .enemy-sprite-frame,.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:4px!important;right:0!important;bottom:46px!important;left:0!important}.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit .enemy-status-panel{min-height:42px!important;padding:4px!important}.battle-mode-toggle{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}.battle-mode-toggle>.battle-strategy-select{grid-column:1 / -1!important}.battle-mode-toggle>button{min-height:44px!important;padding:7px 3px!important;font-size:11px!important;line-height:1.15!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit .enemy-sprite-frame,.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:4px!important;right:0!important;bottom:18px!important;left:0!important;z-index:3!important;display:block!important;visibility:visible!important;opacity:1!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important}.battle-arena .enemy-stage-unit[data-template-id=drowned_sentinel].is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit[data-template-id=drowned_sentinel].is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){transform:scale(1.22)!important;transform-origin:center bottom!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel,.battle-arena.is-story-arena .enemy-stage-unit .enemy-status-panel{z-index:8!important;bottom:4px!important;background:rgba(5,17,28,.84)!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.battle-enemies[data-rendered-enemy-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(1){grid-column:2 / 4}.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(2){grid-column:4 / 6}.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(3){grid-column:1 / 3}.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(4){grid-column:3 / 5}.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(5){grid-column:5 / 7}.battle-arena.is-optional-arena>.battle-enemies{z-index:4!important}.battle-arena.is-optional-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-patrol-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-bounty-arena .enemy-stage-unit .enemy-sprite-frame{position:absolute!important;top:4px!important;right:0!important;bottom:18px!important;left:0!important;width:100%!important;height:auto!important;min-height:0!important;z-index:5!important;display:block!important;visibility:visible!important;opacity:1!important;background-position:center bottom!important;background-size:contain!important}.battle-arena.is-optional-arena .enemy-stage-unit .enemy-sprite-image,.battle-arena.is-optional-arena .enemy-stage-unit .enemy-sprite-image:not([hidden]){position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:block!important;width:100%!important;height:100%!important;min-width:1px!important;min-height:1px!important;visibility:visible!important;opacity:1!important;object-fit:contain!important;object-position:center bottom!important}.battle-arena.is-optional-arena .enemy-stage-unit .enemy-status-panel{z-index:7!important}.battle-arena .enemy-stage-unit>.battle-skill-vfx{--vfx-origin-y: 50% !important}.battle-arena .battle-enemies:is([data-rendered-enemy-count="1"],[data-rendered-enemy-count="2"],[data-rendered-enemy-count="3"]) .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-optional-arena .battle-enemies:is([data-rendered-enemy-count="1"],[data-rendered-enemy-count="2"],[data-rendered-enemy-count="3"]) .enemy-stage-unit .enemy-sprite-frame{top:-28px!important;right:0!important;bottom:50px!important;left:0!important}.battle-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame,.battle-arena.is-optional-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame{top:-14px!important;right:0!important;bottom:34px!important;left:0!important}.battle-arena .battle-enemies:is([data-rendered-enemy-count="1"],[data-rendered-enemy-count="2"],[data-rendered-enemy-count="3"]) .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame{top:-46px!important;right:0!important;bottom:68px!important;left:0!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-elite-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-optional-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena.is-tower-arena .enemy-stage-unit .enemy-sprite-frame{background-image:none!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-elite-boss .enemy-sprite-frame,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame,.battle-arena.is-story-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame,.battle-arena.is-optional-arena .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame{position:absolute!important;top:18px!important;right:2px!important;bottom:50px!important;left:2px!important;width:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;background-image:none!important;transform:none!important}.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit .enemy-sprite-frame>.enemy-sprite-image:not([hidden]),.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid .enemy-sprite-frame>.enemy-sprite-image:not([hidden]),.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image,.battle-arena .enemy-stage-unit.is-humanoid.is-elite-boss .enemy-sprite-frame>.enemy-sprite-image:not([hidden]){position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit .enemy-sprite-frame,.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit.is-humanoid .enemy-sprite-frame,.battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"]) .enemy-stage-unit[data-template-id=goblin_raider] .enemy-sprite-frame{top:2px!important;right:1px!important;bottom:44px!important;left:1px!important}.battle-arena .enemy-stage-unit .enemy-status-panel,.battle-arena .enemy-stage-unit.is-humanoid .enemy-status-panel{bottom:4px!important;margin:0!important}#game-shell .battle-arena>.battle-enemies>.enemy-stage-unit .enemy-sprite-frame,#game-shell .battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame,#game-shell .battle-arena.is-optional-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame{position:absolute!important;top:18px!important;right:2px!important;bottom:50px!important;left:2px!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;background-image:none!important;transform:none!important}#game-shell .battle-arena>.battle-enemies>.enemy-stage-unit .enemy-sprite-frame>img.enemy-sprite-image,#game-shell .battle-arena.is-story-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame>img.enemy-sprite-image,#game-shell .battle-arena.is-optional-arena>.battle-enemies>.enemy-stage-unit.is-humanoid .enemy-sprite-frame>img.enemy-sprite-image{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}#game-shell .battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit .enemy-sprite-frame,#game-shell .battle-arena .battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:2px!important;right:1px!important;bottom:60px!important;left:1px!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="4"],#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;gap:3px!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="4"]>.enemy-stage-unit:nth-child(1){grid-area:1 / 1 / 2 / 4!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="4"]>.enemy-stage-unit:nth-child(2){grid-area:1 / 4 / 2 / 7!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="4"]>.enemy-stage-unit:nth-child(3){grid-area:2 / 1 / 3 / 4!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="4"]>.enemy-stage-unit:nth-child(4){grid-area:2 / 4 / 3 / 7!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(1){grid-area:1 / 2 / 2 / 4!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(2){grid-area:1 / 4 / 2 / 6!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(3){grid-area:2 / 1 / 3 / 3!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(4){grid-area:2 / 3 / 3 / 5!important}#game-shell .battle-arena>.battle-enemies[data-rendered-enemy-count="5"]>.enemy-stage-unit:nth-child(5){grid-area:2 / 5 / 3 / 7!important}#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit,#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit.is-down{position:relative!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;overflow:hidden!important;contain:layout paint!important}#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit .enemy-sprite-frame,#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit.is-humanoid .enemy-sprite-frame{top:2px!important;right:1px!important;bottom:60px!important;left:1px!important;overflow:hidden!important}#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit .enemy-status-panel{position:absolute!important;inset:auto 2px 2px!important;z-index:8!important;width:auto!important;max-width:none!important;min-width:0!important;min-height:56px!important;max-height:58px!important;margin:0!important;box-sizing:border-box!important;transform:none!important;overflow:hidden!important}#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit .enemy-status-panel{gap:2px!important;padding:3px 5px!important}#game-shell .battle-arena>.battle-enemies:is([data-rendered-enemy-count="4"],[data-rendered-enemy-count="5"])>.enemy-stage-unit .enemy-effect-row{position:absolute!important;top:-34px!important;right:4px!important;z-index:9!important;width:auto!important;max-width:calc(100% - 8px)!important;margin:0!important}#game-shell .battle-party-list:is([data-rendered-party-count="3"],[data-rendered-party-count="4"]){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:max-content!important;grid-auto-flow:row!important;align-items:start!important}#game-shell .battle-party-list:is([data-rendered-party-count="3"],[data-rendered-party-count="4"])>.battle-party-row{display:block!important;grid-column:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}#game-shell .battle-party-row .party-card,#game-shell .battle-party-row:not(.is-acting-row) .party-card,#game-shell .battle-party-list.is-large-party .battle-card{grid-template-columns:40px minmax(0,1fr)!important;align-self:start!important;min-height:0!important;height:auto!important;padding:5px!important;gap:5px!important}#game-shell .battle-party-row .party-card .party-battle-portrait-frame,#game-shell .battle-party-list.is-large-party .party-battle-portrait-frame{width:40px!important;height:50px!important}#game-shell .party-card .battle-card-copy,#game-shell .battle-party-list.is-large-party .battle-card-copy{gap:3px!important}#game-shell .battle-party-row .party-card .party-card-identity,#game-shell .battle-party-list.is-large-party .party-card-identity{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto!important;min-height:20px!important;column-gap:4px!important}#game-shell .battle-party-row .party-card .party-card-identity>strong,#game-shell .battle-party-list.is-large-party .party-card-identity>strong{grid-column:1!important;grid-row:1!important;display:flex!important;align-items:baseline!important;gap:4px!important;min-width:0!important;font-size:13px!important}#game-shell .party-card-identity>strong>span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}#game-shell .party-card-identity .party-card-level{flex:0 0 auto!important;color:#b9cde0!important;font-size:10px!important;font-weight:700!important}#game-shell .party-card-identity>.party-card-role{display:none!important}#game-shell .battle-party-row .party-card .party-card-identity>.battle-effect-list,#game-shell .battle-party-list.is-large-party .party-card-identity>.battle-effect-list{grid-column:2!important;grid-row:1!important;flex-wrap:nowrap!important;gap:2px!important;width:auto!important;max-width:58px!important;height:18px!important;min-height:18px!important;overflow:visible!important}#game-shell .party-card-identity .battle-status-icon.combat-effect-icon{flex:0 0 18px!important;min-width:18px!important;width:18px!important;height:18px!important;padding:1px!important;border-radius:5px!important;transform:none!important}#game-shell .party-card-identity .battle-status-icon.combat-effect-icon>span:first-child{font-size:10px!important}#game-shell .party-card-identity .battle-status-icon.combat-effect-icon>small{font-size:6px!important}#game-shell .party-card .battle-exp-compact .battle-gauge{height:5px!important}#game-shell .party-card .battle-gauge.has-value{height:16px!important;min-height:16px!important;border-radius:5px!important}#game-shell .party-card .battle-gauge-value{font-size:9px!important;line-height:1!important}#game-shell .screen-frame.battle-screen{padding:7px!important}#game-shell .battle-stage{gap:7px!important}#game-shell .battle-stage-head{gap:6px!important}#game-shell .battle-title-copy .eyebrow{margin-bottom:1px!important;font-size:9px!important}#game-shell .battle-title-line h2,#game-shell .battle-stage h2{font-size:clamp(21px,6vw,26px)!important;line-height:1!important}#game-shell .battle-recommendation{font-size:10px!important;line-height:1.2!important}#game-shell .battle-mode-toggle{gap:5px!important}#game-shell .battle-mode-toggle>.battle-strategy-select{min-height:40px!important;padding:7px 10px!important}#game-shell .battle-mode-toggle>button{min-height:38px!important;padding:5px 2px!important}#game-shell .battle-command-dock.battle-command-bar{height:auto!important;min-height:0!important}#game-shell .battle-command-bar .battle-action-panel.is-skill-command{min-height:0!important;padding:5px 6px!important;column-gap:5px!important}#game-shell .battle-command-bar .battle-skill-grid{gap:2px!important;padding:1px 0 2px!important}#game-shell .battle-command-bar .battle-skill-button{grid-template-rows:46px auto auto!important;flex-basis:76px!important;min-width:76px!important;min-height:76px!important;padding:3px 2px 2px!important;gap:1px!important}#game-shell .battle-command-bar .battle-skill-icon-wrap,#game-shell .battle-command-bar .battle-skill-icon-wrap .icon-chip,#game-shell .battle-command-bar .battle-skill-icon-wrap .icon-chip.icon-sm,#game-shell .battle-command-bar .battle-skill-icon-wrap .icon-chip img{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}}@media (max-width: 820px){html,body{height:auto!important;min-height:100%!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important}body{padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}#app,#game-shell,#game-shell .app-shell,#game-shell .screen-frame,#game-shell .camp-screen,#game-shell .battle-screen,#game-shell .content-scroll,#game-shell .camp-content,#game-shell .battle-stage{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#game-shell,#game-shell .app-shell,#game-shell .screen-frame{min-height:100dvh!important}#game-shell .content-scroll,#game-shell .screen-frame{padding-bottom:max(20px,env(safe-area-inset-bottom))!important}#game-shell .modal-backdrop,#game-shell .battle-confirm-backdrop,#game-shell .skill-order-modal-backdrop{align-items:flex-start!important;overflow-y:auto!important;padding-top:max(12px,env(safe-area-inset-top))!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important}#game-shell .modal-window,#game-shell .battle-confirm-dialog,#game-shell .skill-order-modal{max-height:none!important;margin-block:auto!important}#game-shell .utility-card,#game-shell .story-card:not(.visual-dialogue-card),#game-shell .recruitment-card,#game-shell .investigation-card{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}}#game-shell .battle-arena .enemy-stage-unit .enemy-sprite-frame{overflow:hidden!important;background-image:none!important}#game-shell .battle-arena .enemy-stage-unit .enemy-sprite-frame:after{display:none!important;content:none!important}
