
/* Stronger silhouette pass: the button reads as a black-dragon flame, not a generic purple glow. */
.world-boss-available .game-mode-nav{overflow:visible!important}.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]{z-index:4;border-color:#9e54ad;box-shadow:inset 0 2px 0 #d080dd,0 0 17px rgba(87,21,110,.94)}.world-boss-available .world-boss-nav-dragon-fire{inset:-27px -20px -19px;filter:drop-shadow(0 0 7px #120418) drop-shadow(0 -4px 8px rgba(148,39,181,.84))}.world-boss-available .world-boss-nav-dragon-fire::before{background:radial-gradient(ellipse at 50% 91%,#020104 0 24%,#0a030f 26% 39%,rgba(88,19,107,.98) 42%,rgba(186,62,219,.92) 49%,transparent 71%),radial-gradient(ellipse at 13% 83%,#030105 0 16%,#3a0d49 28%,transparent 60%),radial-gradient(ellipse at 87% 83%,#030105 0 16%,#3a0d49 28%,transparent 60%);filter:drop-shadow(0 -2px 6px #c14be6) drop-shadow(0 2px 4px #000);clip-path:polygon(0 100%,1% 61%,12% 35%,8% 6%,28% 32%,31% 0,44% 26%,50% 0,56% 26%,69% 0,72% 32%,92% 6%,88% 35%,99% 61%,100% 100%)}.world-boss-available .world-boss-nav-dragon-fire::after{top:0;width:38px;height:28px;border-color:#ca61df;box-shadow:-25px 15px 0 -15px #050208,25px 15px 0 -15px #050208,0 9px 16px #000}.world-boss-available .world-boss-nav-dragon-fire i{left:14%;right:14%;height:38px;bottom:-1px;box-shadow:0 -6px 18px rgba(178,54,215,.92);background:radial-gradient(ellipse at 50% 100%,#010103 0 21%,#15051d 26%,#6a1e7e 45%,#e070ff 53%,transparent 74%)}.world-boss-available .world-boss-nav-dragon-fire b{width:30px;height:27px;bottom:10px;box-shadow:0 -3px 0 #c65de0,0 0 15px #6c1c84}.world-boss-available .world-boss-nav-dragon-fire b::before,.world-boss-available .world-boss-nav-dragon-fire b::after{top:10px;width:4px;height:4px;background:#fff0ff;box-shadow:0 0 8px #e969ff}
.world-boss-battle-panel{width:100vw!important;max-width:none!important;height:100dvh!important;min-height:100dvh!important}
.world-boss-battle-panel,.world-boss-battle-panel[aria-hidden="false"]{top:0!important;right:0!important;bottom:0!important;left:0!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.world-boss-toast{z-index:210}
/* ── Black-dragon fire surrounding the World Boss navigation button ─────── */
.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]::before,.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]::after{content:none!important}.game-mode-nav button[data-game-mode="worldboss"]{isolation:isolate;overflow:visible}.game-mode-nav button[data-game-mode="worldboss"]>.world-boss-nav-icon,.game-mode-nav button[data-game-mode="worldboss"]>.world-boss-nav-label{position:relative;z-index:3}.game-mode-nav button[data-game-mode="worldboss"] .world-boss-nav-badge{z-index:5}.world-boss-nav-dragon-fire{position:absolute;z-index:0;inset:-17px -15px -12px;display:block;pointer-events:none;opacity:0;transform-origin:50% 74%;filter:drop-shadow(0 2px 2px #000)}.world-boss-available .world-boss-nav-dragon-fire{opacity:1;animation:wbDragonBreath 1.7s ease-in-out infinite}.world-boss-nav-dragon-fire::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 92%,rgba(2,1,5,.98) 0 26%,rgba(36,9,53,.92) 28% 42%,rgba(151,48,203,.7) 45%,transparent 68%),conic-gradient(from 188deg at 50% 89%,transparent 0 7%,#07030a 8% 17%,#662079 20%,transparent 26% 35%,#08040c 37% 48%,#9c3db3 52%,transparent 58% 68%,#050308 70% 83%,#72278a 87%,transparent 94%);clip-path:polygon(4% 100%,0 73%,10% 52%,5% 27%,24% 43%,22% 12%,39% 35%,50% 0,60% 35%,78% 12%,76% 43%,95% 27%,90% 52%,100% 73%,96% 100%);filter:blur(.35px) drop-shadow(0 -1px 7px #8e31aa);animation:wbDragonFlame 1.15s cubic-bezier(.45,0,.55,1) infinite}.world-boss-nav-dragon-fire::after{content:"";position:absolute;left:50%;top:4px;width:30px;height:21px;transform:translateX(-50%);border:2px solid rgba(176,73,210,.68);border-bottom:0;border-radius:70% 70% 42% 42%;box-shadow:-19px 11px 0 -12px #14091c,19px 11px 0 -12px #14091c,0 8px 13px #000;clip-path:polygon(0 38%,22% 0,36% 35%,50% 6%,64% 35%,78% 0,100% 38%,77% 65%,65% 100%,50% 77%,35% 100%,23% 65%);opacity:.9;animation:wbDragonCrest 1.7s ease-in-out infinite}.world-boss-nav-dragon-fire i{position:absolute;left:20%;right:20%;bottom:1px;height:28px;border-radius:45% 45% 50% 50%;background:radial-gradient(ellipse at 50% 100%,#020104 0 22%,#19071f 27%,#6d2081 45%,transparent 70%);box-shadow:0 -4px 13px rgba(122,39,154,.7);clip-path:polygon(0 100%,7% 53%,23% 72%,29% 16%,42% 60%,50% 0,58% 60%,72% 16%,78% 72%,93% 53%,100% 100%);animation:wbDragonCore .96s ease-in-out infinite}.world-boss-nav-dragon-fire b{position:absolute;left:50%;bottom:7px;width:22px;height:20px;transform:translateX(-50%);border-radius:58% 58% 42% 42%;background:linear-gradient(145deg,#050308,#2e0d3b 57%,#09040e);box-shadow:0 -3px 0 #8330a1,0 0 10px #a840c0;clip-path:polygon(5% 100%,0 42%,21% 0,38% 30%,50% 4%,62% 30%,79% 0,100% 42%,95% 100%,73% 76%,50% 100%,27% 76%);animation:wbDragonHead 1.32s ease-in-out infinite}.world-boss-nav-dragon-fire b::before,.world-boss-nav-dragon-fire b::after{content:"";position:absolute;top:8px;width:3px;height:3px;border-radius:50%;background:#f5b5ff;box-shadow:0 0 5px #d85bff}.world-boss-nav-dragon-fire b::before{left:5px}.world-boss-nav-dragon-fire b::after{right:5px}.world-boss-nav-dragon-fire em{position:absolute;left:45%;bottom:11px;width:3px;height:3px;border-radius:50%;background:#d978ff;box-shadow:-25px -11px 0 -1px #42114f,20px -18px 0 -1px #8c2aa5,36px -2px 0 -1px #350d42,-39px -5px 0 -1px #6e2380;opacity:.75;animation:wbDragonEmbers 1.8s linear infinite}
@keyframes wbDragonBreath{0%,100%{transform:scale(.94) translateY(2px)}50%{transform:scale(1.05) translateY(-3px)}}@keyframes wbDragonFlame{0%,100%{transform:scaleX(.92) skewX(-3deg);opacity:.78}35%{transform:scaleX(1.06) skewX(2deg);opacity:1}68%{transform:scaleX(.98) translateY(-4px);opacity:.87}}@keyframes wbDragonCore{0%,100%{transform:scaleY(.86);filter:brightness(.8)}50%{transform:scaleY(1.18) translateY(-4px);filter:brightness(1.28)}}@keyframes wbDragonCrest{50%{transform:translateX(-50%) scale(1.08) translateY(-3px);filter:brightness(1.35)}}@keyframes wbDragonHead{50%{transform:translateX(-50%) translateY(-2px) scale(1.06)}}@keyframes wbDragonEmbers{0%{transform:translate(0,6px) scale(.6);opacity:0}22%{opacity:1}100%{transform:translate(6px,-27px) scale(.12);opacity:0}}
@media(prefers-reduced-motion:reduce){.world-boss-nav-dragon-fire,.world-boss-nav-dragon-fire::before,.world-boss-nav-dragon-fire::after,.world-boss-nav-dragon-fire i,.world-boss-nav-dragon-fire b,.world-boss-nav-dragon-fire em{animation:none!important}}
/* ── Full-screen expedition-style raid battlefield ─────────────────────── */
body.world-boss-battle-active{overflow:hidden;overscroll-behavior:none}
.world-boss-battle-panel{position:fixed!important;z-index:180!important;inset:0!important;display:block!important;min-height:100dvh!important;overflow:hidden!important;isolation:isolate;background:radial-gradient(ellipse at 50% 72%,#25123c 0,#0d0818 48%,#030307 100%);color:#f7edff}
.world-boss-battle-panel[aria-hidden="true"]{display:none!important}
.world-boss-battle-panel .world-boss-3d-canvas{position:absolute;z-index:0;inset:0;background:radial-gradient(ellipse at 50% 0,#321343 0,#08050d 72%)}
.world-boss-battle-panel .world-boss-3d-loading{z-index:20}
.world-boss-battle-vignette{position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,1,6,.75),transparent 26%,transparent 64%,rgba(2,1,5,.82)),radial-gradient(ellipse at 50% 54%,transparent 44%,rgba(0,0,0,.56) 100%);box-shadow:inset 0 0 90px rgba(0,0,0,.74)}
.world-boss-battle-top{position:absolute;z-index:9;top:max(12px,env(safe-area-inset-top));left:50%;display:flex;align-items:flex-start;justify-content:center;width:min(820px,calc(100% - 28px));transform:translateX(-50%);pointer-events:none}
.world-boss-battle-panel .world-boss-target{width:min(720px,calc(100% - 148px));margin:0;padding:11px 14px 10px;border:1px solid rgba(206,131,255,.57);border-radius:4px;background:linear-gradient(90deg,rgba(4,4,11,.91),rgba(34,12,47,.88) 50%,rgba(4,4,11,.91));box-shadow:0 6px 28px rgba(0,0,0,.56),inset 0 1px 0 rgba(255,233,255,.16)}
.world-boss-battle-panel .world-boss-energy-label{font-size:var(--wb-fs-hud-small);letter-spacing:3px}.world-boss-battle-panel .world-boss-hp-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}.world-boss-battle-panel .world-boss-hp-copy strong{font-size:clamp(14px,2.8vw,18px);text-shadow:0 0 13px #d662ff}.world-boss-battle-panel .world-boss-hp-copy span{padding:3px 7px;border:1px solid #a45bc5;background:#25112f;color:#ffe1ff;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);letter-spacing:1px}.world-boss-battle-panel .world-boss-hp{height:13px;margin-top:8px;border:2px solid #120919;background:#050308;box-shadow:inset 0 0 9px #000}.world-boss-battle-panel .world-boss-hp i{background:linear-gradient(90deg,#5d133e,#c22b6c 42%,#ff8b62);box-shadow:0 0 15px rgba(248,66,128,.76)}.world-boss-battle-panel .world-boss-hp-number{margin-top:5px;font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-connection{position:absolute;z-index:11;right:0;top:6px;padding:4px 7px;border:1px solid rgba(143,118,165,.55);background:rgba(5,4,10,.76);font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);letter-spacing:1px}
.world-boss-battle-panel .world-boss-pattern{position:absolute;z-index:13;top:calc(var(--wb-stack-top,150px) + var(--wb-stack-gap,10px));left:50%;width:min(590px,calc(100% - 36px));transform:translateX(-50%);pointer-events:none;font-size:clamp(10px,2.2vw,12px);line-height:1.35}.world-boss-battle-panel .world-boss-pattern.safe{border-color:#5ee6ba;background:#123e35eF;color:#caffed}.world-boss-minor-threat{position:absolute;z-index:12;top:calc(var(--wb-stack-top,150px) + var(--wb-stack-gap,10px) + var(--wb-stack-pattern,0px));left:50%;max-width:calc(100% - 38px);transform:translateX(-50%);padding:5px 9px;border:1px solid rgba(244,174,93,.68);border-radius:999px;background:rgba(37,18,8,.82);color:#ffd79b;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);line-height:1.25;letter-spacing:.5px;pointer-events:none;box-shadow:0 0 15px rgba(244,132,47,.28)}.world-boss-minor-threat[hidden]{display:none}
.world-boss-battle-panel .world-boss-raid-hud{z-index:10;left:12px;right:12px;pointer-events:none}.world-boss-battle-panel .wb-raid-count{font-size:var(--wb-fs-hud-small);padding:6px 9px}.world-boss-battle-panel .wb-raid-count b{font-size:var(--wb-fs-hud-body)}.world-boss-battle-panel .wb-raid-me{padding:5px 7px;font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-rank-board{z-index:10;left:12px;width:min(44%,190px)}.world-boss-battle-panel .wb-rank-row>b,.world-boss-battle-panel .wb-rank-row>small{font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-combat-log{z-index:11;left:12px;bottom:133px;max-width:calc(100% - 24px);padding:6px 9px;border-left:2px solid #9d63ca;background:linear-gradient(90deg,rgba(7,5,11,.88),rgba(7,5,11,.35));font-size:var(--wb-fs-hud-small);pointer-events:none}
.world-boss-battle-bottom{position:absolute;z-index:15;bottom:max(12px,calc(env(safe-area-inset-bottom) + 9px));left:50%;display:grid;gap:7px;width:min(680px,calc(100% - 22px));transform:translateX(-50%);pointer-events:auto}.world-boss-battle-panel .world-boss-controls{position:relative;z-index:1;bottom:auto;padding:7px;border:1px solid rgba(169,108,210,.62);border-radius:5px;background:linear-gradient(90deg,rgba(7,5,12,.92),rgba(30,11,42,.91),rgba(7,5,12,.92));box-shadow:0 8px 30px rgba(0,0,0,.56)}.world-boss-battle-panel .world-boss-controls button{min-height:68px;border-width:1px;border-radius:4px;transition:transform .12s ease,filter .12s ease}.world-boss-battle-panel .world-boss-controls button:hover:not(:disabled){filter:brightness(1.15)}.world-boss-battle-panel .world-boss-controls button:active:not(:disabled){transform:translateY(2px) scale(.985)}.world-boss-battle-panel .world-boss-controls button span{font-size:23px}.world-boss-battle-panel .world-boss-controls button b{font-size:var(--wb-fs-hud-body)}.world-boss-battle-panel .world-boss-controls button small{font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-revive{border-radius:5px;box-shadow:0 7px 28px rgba(0,0,0,.48)}
@media (min-width:760px){.world-boss-battle-panel .world-boss-combat-log{bottom:148px}.world-boss-battle-bottom{width:min(760px,calc(100% - 48px))}.world-boss-battle-panel .world-boss-controls button{min-height:74px}}
@media (max-width:460px){.world-boss-battle-top{width:calc(100% - 16px)}.world-boss-battle-panel .world-boss-target{width:calc(100% - 30px);padding:8px 9px}.world-boss-battle-panel .world-boss-energy-label{font-size:var(--wb-fs-hud-micro);letter-spacing:1.65px}.world-boss-minor-threat{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-combat-log{bottom:121px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-bottom{bottom:max(6px,calc(env(safe-area-inset-bottom) + 4px));width:calc(100% - 12px);gap:4px}.world-boss-battle-panel .world-boss-controls{gap:4px;padding:4px}.world-boss-battle-panel .world-boss-controls button{min-height:55px;padding:4px}.world-boss-battle-panel .world-boss-controls button span{font-size:var(--wb-fs-hero)}.world-boss-battle-panel .world-boss-controls button b{font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-controls button small{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-revive{padding:7px}.world-boss-battle-panel .world-boss-revive button{min-height:34px;font-size:var(--wb-fs-hud-small)}}
:root{--wb-bg:#0e0b16;--wb-panel:#1b1526;--wb-line:#49365e;--wb-gold:#f2c86d;--wb-red:#ef596f;--wb-mint:#70e3c0;--wb-ink:#f8efff;--wb-muted:#b7a8c6;--wb-font:"Galmuri11","Galmuri9",sans-serif;--wb-fs-micro:clamp(10px,2.4vw,11px);--wb-fs-small:clamp(11px,2.8vw,12px);--wb-fs-body:clamp(12px,3.2vw,13px);--wb-fs-lead:clamp(14px,3.8vw,15px);--wb-fs-title:clamp(16px,4.4vw,18px);--wb-fs-hero:clamp(20px,5.6vw,24px);--wb-fs-hud-micro:clamp(9px,2.2vw,10px);--wb-fs-hud-small:clamp(10px,2.6vw,11px);--wb-fs-hud-body:clamp(11px,3vw,12px)}:where([class*="wb-"],[class*="world-boss-"]) :where(small){font-size:var(--wb-fs-micro)}:where(.world-boss-battle-panel) :where(small){font-size:var(--wb-fs-hud-micro)}
.world-boss-shell{position:relative;container-type:inline-size;width:100%;max-width:var(--game-shell-max);min-height:calc(100dvh - var(--mode-nav-height) - env(safe-area-inset-bottom));margin:0 auto;padding:12px 10px calc(var(--mode-nav-height) + 20px + env(safe-area-inset-bottom));box-sizing:border-box;color:var(--wb-ink);font-family:"Galmuri11","Galmuri9",sans-serif;background:radial-gradient(circle at 50% -5%,#4c244f 0,#21142e 27%,#0e0b16 67%);overflow:hidden}
.world-boss-shell::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px}
.world-boss-shell>*{position:relative;z-index:1}.world-boss-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:3px solid #0b0710;background:linear-gradient(110deg,#351c42,#1b1525);box-shadow:inset 0 3px 0 #674678,4px 4px 0 #07050a}.world-boss-eyebrow{display:block;color:var(--wb-gold);font-size:var(--wb-fs-small);letter-spacing:.22em}.world-boss-header h1{margin:4px 0 0;font-size:var(--wb-fs-hero)}.world-boss-header-side{text-align:right}.world-boss-header-side strong{display:block;margin-top:4px;color:#fff1b9;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-title)}.world-boss-connection{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid #564365;background:#1b1523;color:var(--wb-muted);font-size:var(--wb-fs-hud-small)}.world-boss-connection.live{border-color:#438f78;color:#9ff0d3}.world-boss-connection.live::before{content:"";width:6px;height:6px;border-radius:50%;background:#6ee5ba;box-shadow:0 0 7px #6ee5ba}
.world-boss-loading{display:grid;place-items:center;min-height:220px;margin-top:12px;border:2px solid var(--wb-line);background:#17111f;color:var(--wb-muted);font-size:var(--wb-fs-body)}.world-boss-loading[hidden]{display:none}/* ⚠ 단일 열을 암시적 auto 로 두면 트랙이 컨테이너(340px)가 아니라 **가장 긴 문단의 max-content**(한 줄 길이, 실측 573px)로 잡혀 섹션 전체가 화면 밖으로 밀린다. `minmax(0,1fr)` 로 못 박아 항상 컨테이너 폭을 채우게 한다 — 640px 이상 2단 규칙도 같은 형태다. */.world-boss-content{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px}.world-boss-intel,.world-boss-roster,.world-boss-rewards,.world-boss-cosmetics{padding:13px;border:2px solid var(--wb-line);background:linear-gradient(145deg,rgba(40,30,53,.96),rgba(20,15,29,.96));box-shadow:inset 0 2px 0 rgba(255,255,255,.05)}
.wb-intel-top{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px}.wb-boss-sigil{display:grid;place-items:center;width:58px;height:58px;border:2px solid #9d6b9d;border-radius:50%;background:radial-gradient(circle,#e96584 0 15%,#6f295b 18% 40%,#27142d 43%);font-size:25px;box-shadow:0 0 18px rgba(226,75,139,.35)}.wb-intel-title{min-width:0}.wb-intel-title small,.wb-intel-title b{display:block}.wb-intel-title small{color:var(--wb-gold);font-size:var(--wb-fs-small)}.wb-intel-title b{overflow:hidden;margin-top:4px;color:#fff5d5;font-size:var(--wb-fs-title);white-space:nowrap}.wb-state-chip{padding:5px 7px;border:1px solid #8b657f;background:#3b2338;color:#ffd0de;font-size:var(--wb-fs-small)}.wb-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}.wb-info-grid>span{padding:8px;border:1px solid #44364d;background:#17121d;color:var(--wb-muted);font-size:var(--wb-fs-small)}.wb-info-grid b{display:block;margin-top:3px;color:#fff0c6;font-size:var(--wb-fs-body)}.wb-strategy{margin:10px 0 0;padding:9px;border-left:3px solid var(--wb-gold);background:#221a2b;color:#d2c5d8;font-size:var(--wb-fs-small);line-height:1.7}.wb-event-desc{margin:9px 0 0;color:#b8aabe;font-size:var(--wb-fs-small);line-height:1.7}
.world-boss-arena{position:relative;min-height:430px;border:3px solid #08060b;background:linear-gradient(#251433 0,#37183e 44%,#140e1c 45%,#0a080d 100%);box-shadow:inset 0 0 50px #000,0 4px 0 #060408;overflow:hidden}.world-boss-sky{position:absolute;inset:0 0 45%}.world-boss-sky::before{content:"";position:absolute;left:50%;top:28px;width:180px;height:180px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(242,94,142,.22),transparent 70%);animation:wbPulse 2.8s ease-in-out infinite}.world-boss-sky i{position:absolute;width:2px;height:2px;background:#ffd8f3;box-shadow:0 0 5px #fff}.world-boss-sky i:nth-child(1){left:15%;top:24%}.world-boss-sky i:nth-child(2){right:17%;top:16%}.world-boss-sky i:nth-child(3){left:72%;top:57%}.world-boss-target{position:relative;z-index:2;width:min(82%,420px);margin:24px auto 0;text-align:center}.world-boss-avatar{position:relative;width:136px;height:150px;margin:auto;filter:drop-shadow(0 14px 9px #000);animation:wbFloat 3s ease-in-out infinite}.world-boss-avatar::before,.world-boss-avatar::after{content:"";position:absolute;top:38px;width:64px;height:88px;border:4px solid #291027;background:linear-gradient(145deg,#8f3d72,#321536);clip-path:polygon(50% 0,100% 28%,83% 100%,22% 86%,0 27%)}.world-boss-avatar::before{left:4px;transform:rotate(-16deg)}.world-boss-avatar::after{right:4px;transform:rotate(16deg)}.world-boss-core{position:absolute;z-index:2;left:50%;top:42px;width:68px;height:76px;transform:translateX(-50%);border:5px solid #32132f;border-radius:48% 48% 38% 38%;background:radial-gradient(circle at 50% 40%,#fff1c0 0 7%,#ff5c91 9% 19%,#601c55 22% 53%,#241127 56%);box-shadow:0 0 24px #d14589}.world-boss-core::before,.world-boss-core::after{content:"";position:absolute;top:21px;width:14px;height:5px;background:#fff3c6;box-shadow:0 0 9px #fff}.world-boss-core::before{left:8px;transform:rotate(12deg)}.world-boss-core::after{right:8px;transform:rotate(-12deg)}.world-boss-hp-copy{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-5px}.world-boss-hp-copy strong{font-size:var(--wb-fs-hud-body);color:#fff1d2}.world-boss-hp-copy span{color:#ff9eb8;font-size:var(--wb-fs-hud-small)}.world-boss-hp{height:15px;margin-top:5px;padding:2px;border:2px solid #09060b;background:#1a0b11}.world-boss-hp i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#b41d52,#f45e7d,#ffb26a);box-shadow:inset 0 2px 0 rgba(255,255,255,.35);transition:width .25s linear}.world-boss-hp-number{display:flex;justify-content:space-between;margin-top:4px;color:#d3c3d8;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-hud-small)}.world-boss-hp-number span:last-child{color:#83e6c7}
.world-boss-participants{position:absolute;z-index:3;left:10px;right:10px;bottom:41px;display:flex;align-items:flex-end;justify-content:center;gap:4px;min-height:82px}.wb-fighter{position:relative;flex:0 1 54px;max-width:66px;text-align:center;transition:opacity .2s,transform .2s}.wb-fighter.defense{transform:translateY(5px)}.wb-fighter.dead{opacity:.35;filter:grayscale(1)}.wb-fighter-img{position:relative;width:48px;height:48px;margin:auto;border:2px solid #6e547b;border-radius:50%;background:#2b2033 center/contain no-repeat;box-shadow:0 4px 5px #000}.wb-fighter.me .wb-fighter-img{border-color:var(--wb-gold);box-shadow:0 0 0 2px #5c4725,0 4px 5px #000}.wb-fighter.defense .wb-fighter-img::after{content:"🛡";position:absolute;inset:-5px;display:grid;place-items:center;border:2px solid #78ccef;border-radius:50%;background:rgba(39,105,142,.15);font-size:var(--wb-fs-hero)}.wb-fighter b{display:block;overflow:hidden;margin-top:4px;color:#f4eaf7;font-size:var(--wb-fs-hud-micro);white-space:nowrap}.wb-fighter small{display:block;margin-top:2px;color:#81d9ba;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-hud-micro)}.world-boss-combat-log{position:absolute;z-index:4;left:8px;bottom:8px;max-width:58%;overflow:hidden;color:#d8c8dd;font-size:var(--wb-fs-hud-micro);white-space:nowrap}.world-boss-pattern{position:absolute;z-index:6;top:6px;left:50%;width:min(92%,400px);transform:translateX(-50%);padding:10px;border:2px solid #ff8b9d;background:#651c32e8;color:#fff4d2;text-align:center;font-size:var(--wb-fs-hud-body);box-shadow:0 0 20px rgba(255,63,102,.45);animation:wbWarning .55s steps(2,end) infinite}.world-boss-arena.staggered .world-boss-avatar{filter:drop-shadow(0 0 16px #95f8dd) saturate(.5);transform:rotate(7deg)}
.world-boss-controls{position:sticky;z-index:8;bottom:calc(var(--mode-nav-height) + env(safe-area-inset-bottom) + 5px);display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:7px;border:2px solid #0b0710;background:#14101ddd;backdrop-filter:blur(5px)}.world-boss-controls[hidden]{display:none}.world-boss-controls button{min-height:58px;padding:7px;border:2px solid #4c3a57;background:#2b2132;color:#baadbf;font-family:inherit;cursor:pointer}.world-boss-controls button span,.world-boss-controls button b,.world-boss-controls button small{display:block}.world-boss-controls button span{font-size:var(--wb-fs-hero)}.world-boss-controls button b{margin-top:3px;font-size:var(--wb-fs-hud-body)}.world-boss-controls button small{margin-top:3px;font-size:var(--wb-fs-hud-micro)}.world-boss-controls .attack.active{border-color:#ff8798;background:linear-gradient(#793347,#4a2434);color:#fff}.world-boss-controls .defense.active{border-color:#87ddff;background:linear-gradient(#285b76,#1d3f55);color:#fff}
.wb-section-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.wb-section-head>div{min-width:0;flex:1 1 auto}.wb-section-head h2{margin:0;color:#ffe4a0;font-size:var(--wb-fs-lead)}.wb-section-head p{margin:4px 0 0;color:var(--wb-muted);font-size:var(--wb-fs-small);line-height:1.55;white-space:nowrap;overflow:hidden}.wb-pet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.wb-pet-card{position:relative;min-width:0;padding:8px 4px;border:2px solid #4b3a56;background:#211927;color:var(--wb-ink);font-family:inherit;text-align:center;cursor:pointer}.wb-pet-card.selected{border-color:var(--wb-gold);background:#4b3829;box-shadow:inset 0 0 0 2px #8c6a32}.wb-pet-card:disabled{opacity:.38;filter:grayscale(1);cursor:not-allowed}.wb-pet-card img{display:block;width:58px;height:58px;margin:auto;object-fit:contain}.wb-pet-card b,.wb-pet-card small{display:block;flex:none;overflow:hidden;white-space:nowrap;line-height:1.5}.wb-pet-card b{margin-top:4px;font-size:var(--wb-fs-small)}.wb-pet-card small{margin-top:3px;color:#b0a2b6;font-size:var(--wb-fs-micro)}.wb-register-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:10px}.wb-button{min-height:38px;padding:7px 12px;border:2px solid #0b080d;background:#5e456f;color:#fff;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-small);cursor:pointer}.wb-button.primary{background:#9a5639;box-shadow:inset 0 2px 0 #dc8c64}.wb-button.mint{background:#2f7662}.wb-button:disabled{opacity:.45;cursor:not-allowed}.wb-registered{display:flex;align-items:center;gap:9px;margin-top:10px;padding:9px;border:1px solid #6c5638;background:#3b2d25}.wb-registered img{width:50px;height:50px;object-fit:contain}.wb-registered b,.wb-registered small{display:block}.wb-registered b{font-size:var(--wb-fs-body)}.wb-registered small{margin-top:3px;color:#d4c4aa;font-size:var(--wb-fs-small)}
.wb-reward-list,.wb-loot-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:9px}.wb-reward-card,.wb-loot{padding:9px;border:1px solid #4a3a54;background:#1a1420;text-align:center}.wb-reward-card{display:flex;flex-direction:column;gap:3px;min-width:0;transition:border-color .18s ease,background .18s ease}.wb-reward-card span,.wb-reward-card b,.wb-reward-card em{display:block;min-width:0;white-space:nowrap;overflow:hidden}.wb-reward-card span{color:#ab9bb3;font-size:var(--wb-fs-micro);letter-spacing:.04em}.wb-reward-card b{color:#ffe0a1;font-size:var(--wb-fs-lead);line-height:1.35}.wb-reward-card b+b{margin-top:1px}.wb-reward-card em{font-style:normal;font-weight:700;font-size:var(--wb-fs-micro);color:#8f81a0}.wb-reward-card[data-state="earned"]{border-color:#e0a94f;background:linear-gradient(155deg,#42301a,#241a2e);box-shadow:inset 0 0 0 1px rgba(255,203,110,.22),0 0 14px rgba(224,169,79,.18)}.wb-reward-card[data-state="earned"] span{color:#f2d7a3}.wb-reward-card[data-state="earned"] b{color:#ffd77e;text-shadow:0 0 10px rgba(255,190,74,.45)}.wb-reward-card[data-state="earned"] em{color:#9ce8ac}.wb-reward-card[data-state="missed"]{border-style:dashed;border-color:#3b3346;background:#141018}.wb-reward-card[data-state="missed"] span{color:#736a80}.wb-reward-card[data-state="missed"] b{color:#877d94}.wb-reward-card[data-state="missed"] em{color:#6b6276}.wb-grant-box{margin-top:10px;padding:11px;border:2px solid #e0a94f;background:linear-gradient(150deg,#3d2b15,#1e1526)}.wb-grant-box.is-empty{padding:12px 11px;border:1px dashed #4a3a54;background:#171220}.wb-grant-box-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;min-width:0}.wb-grant-box-head b{flex:none;color:#ffd77e;font-size:var(--wb-fs-lead);letter-spacing:.04em}.wb-grant-box-head small{flex:1 1 auto;min-width:0;text-align:right;color:#c9b48d;font-size:var(--wb-fs-micro);white-space:nowrap;overflow:hidden}.wb-grant-box.is-empty b{color:#b7a8c6;font-size:var(--wb-fs-body)}.wb-grant-box.is-empty small{color:#8f81a0}.wb-grant-rows{display:grid;gap:6px;margin-top:9px}.wb-grant-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0;padding:8px 10px;border:1px solid #6d5029;background:rgba(10,7,14,.5)}.wb-grant-row span{flex:none;color:#e6c894;font-size:var(--wb-fs-small);white-space:nowrap}.wb-grant-value{display:grid;gap:1px;flex:1 1 auto;min-width:0;justify-items:end}.wb-grant-value b{max-width:100%;text-align:right;color:#fff1c9;font-size:var(--wb-fs-lead);line-height:1.35;white-space:nowrap;overflow:hidden}.wb-loot{font-family:inherit;color:#f5e9f7;cursor:pointer}.wb-loot b,.wb-loot small{display:block;white-space:nowrap;overflow:hidden}.wb-loot b{font-size:var(--wb-fs-small)}.wb-loot small{margin-top:4px;color:#f1c66e;font-size:var(--wb-fs-micro)}.wb-loot.claimed{opacity:.38;filter:grayscale(1);cursor:not-allowed}.wb-result-banner{padding:12px;border:2px solid #a97545;background:linear-gradient(120deg,#4a2c2d,#2c1d2e);text-align:center}.wb-result-banner strong{display:block;color:#ffe49d;font-size:var(--wb-fs-title)}.wb-result-banner span{display:block;margin-top:5px;color:#d7c6d8;font-size:var(--wb-fs-small)}
.wb-admin-test{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:10px;border:2px solid #d18a45;background:linear-gradient(120deg,#4a3021,#2b1d2f);box-shadow:inset 0 2px 0 rgba(255,223,153,.16)}.wb-admin-test b,.wb-admin-test small{display:block}.wb-admin-test b{color:#ffe09b;font-size:var(--wb-fs-body)}.wb-admin-test small{margin-top:4px;color:#d9c5b3;font-size:var(--wb-fs-small);line-height:1.55}.wb-admin-test-actions{display:flex;flex:0 0 auto;gap:6px}.wb-test-result{border-color:#d18a45;background:linear-gradient(120deg,#4b341f,#2c2133)}
.wb-cosmetic-balance{color:#f2c86d;font-size:var(--wb-fs-small)}.wb-style-draw{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:11px;border:1px solid #6b4f7d;background:linear-gradient(90deg,#1d1428,#2a1a35)}.wb-style-draw b{color:#ffd98a;font-size:var(--wb-fs-lead)}.wb-style-draw small{display:block;margin-top:3px;color:#9f8cac;font-size:var(--wb-fs-micro)}.wb-style-draw button:disabled{opacity:.5;cursor:not-allowed}.wb-style-owned{display:grid;gap:3px;margin-top:9px;padding:11px;border:1px solid #8f6ab5;background:linear-gradient(90deg,#221630,#2c1c38)}.wb-style-owned>span{color:#c9a7e8;font-size:var(--wb-fs-micro);letter-spacing:.5px}.wb-style-owned>b{font-size:var(--wb-fs-lead)}.wb-style-owned>small{color:#9f8cac;font-size:var(--wb-fs-micro)}.wb-odds-list{display:grid;gap:4px;margin-top:9px}.wb-odds-row{display:grid;grid-template-columns:minmax(0,1fr) auto 58px;align-items:center;gap:8px;padding:7px 9px;border:1px solid #4a3a54;background:#1a1420}.wb-odds-row.mine{border-color:#f2c86d;background:#2b2113}.wb-odds-row>b{overflow:hidden;white-space:nowrap;font-size:var(--wb-fs-small)}.wb-odds-row>small{color:#9f8cac;font-size:var(--wb-fs-micro);white-space:nowrap}.wb-odds-row>em{color:#81d9ba;font-style:normal;font-size:var(--wb-fs-small);text-align:right}.world-boss-toast{position:fixed;z-index:95;left:50%;bottom:calc(var(--mode-nav-height) + 15px + env(safe-area-inset-bottom));max-width:min(88%,420px);transform:translate(-50%,20px);padding:9px 12px;border:2px solid #8b6a37;background:#241a21;color:#ffe7ac;font-size:var(--wb-fs-small);opacity:0;pointer-events:none;transition:.2s}.world-boss-toast.show{transform:translate(-50%,0);opacity:1}
.game-mode-nav button[data-game-mode="worldboss"]{position:relative;isolation:isolate;overflow:visible}.game-mode-nav button[data-game-mode="worldboss"] .world-boss-nav-badge{position:absolute;z-index:3;top:2px;right:3px;min-width:14px;padding:1px 3px;border:1px solid #ffb4c1;background:#8d2448;color:#fff;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-micro)}.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]{color:#f7e8ff;background:linear-gradient(180deg,#29152f,#100b17 68%,#07050a);box-shadow:inset 0 3px 0 #6f3a79,0 0 12px rgba(38,9,52,.85)}.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]::before{content:"";position:absolute;z-index:0;left:5px;right:5px;bottom:calc(100% - 5px);height:30px;pointer-events:none;background:radial-gradient(ellipse at 8% 100%,#050308 0 42%,transparent 45%),radial-gradient(ellipse at 25% 100%,#130817 0 49%,transparent 52%),radial-gradient(ellipse at 43% 100%,#030205 0 43%,transparent 46%),radial-gradient(ellipse at 62% 100%,#170a1d 0 52%,transparent 55%),radial-gradient(ellipse at 80% 100%,#030205 0 44%,transparent 47%),radial-gradient(ellipse at 96% 100%,#120716 0 40%,transparent 43%);filter:drop-shadow(0 -2px 3px #6d237c) drop-shadow(0 1px 2px #000);clip-path:polygon(0 100%,0 64%,7% 25%,14% 65%,24% 4%,31% 62%,42% 22%,50% 68%,62% 0,70% 61%,80% 18%,88% 65%,96% 30%,100% 67%,100% 100%);transform-origin:50% 100%;animation:wbBlackFlame 1.05s steps(4,end) infinite}.world-boss-available .game-mode-nav button[data-game-mode="worldboss"]::after{content:"";position:absolute;z-index:1;left:19%;bottom:calc(100% + 9px);width:3px;height:3px;border-radius:50%;pointer-events:none;background:#130817;box-shadow:17px -8px 0 #050308,38px 2px 0 #1c0b22,57px -11px 0 #070309,75px -3px 0 #1a0a20;filter:drop-shadow(0 0 3px #9a3baa);animation:wbBlackEmbers 1.35s steps(5,end) infinite}.game-mode-nav button[data-game-mode="worldboss"].urgent{color:#fff;background:linear-gradient(180deg,#3a173c,#140a1b 72%,#08050b);box-shadow:inset 0 3px 0 #9e4ba2,0 0 15px rgba(84,22,96,.9);animation:wbNavPulse 1.3s ease-in-out infinite}
@keyframes wbPulse{50%{transform:translateX(-50%) scale(1.13);opacity:.65}}@keyframes wbFloat{50%{transform:translateY(-7px)}}@keyframes wbWarning{50%{filter:brightness(1.35)}}@keyframes wbNavPulse{50%{filter:brightness(1.22)}}@keyframes wbBlackFlame{0%,100%{transform:translateY(2px) scaleX(.97) skewX(-2deg);opacity:.82}50%{transform:translateY(-4px) scaleX(1.05) skewX(2deg);opacity:1}}@keyframes wbBlackEmbers{0%{transform:translate(0,5px) scale(.7);opacity:0}25%{opacity:1}100%{transform:translate(5px,-20px) scale(.15);opacity:0}}
@container(min-width:640px){.world-boss-content{grid-template-columns:minmax(0,1fr) 280px}.world-boss-intel,.world-boss-arena,.world-boss-controls,.world-boss-rewards{grid-column:1}.world-boss-roster,.world-boss-cosmetics{grid-column:2}.world-boss-roster{grid-row:1/span 3}.world-boss-cosmetics{grid-row:4/span 2}.wb-pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-boss-arena{min-height:500px}}
@container(max-width:420px){.world-boss-header h1{font-size:var(--wb-fs-title)}.wb-intel-top{grid-template-columns:52px minmax(0,1fr)}.wb-boss-sigil{width:46px;height:46px}.wb-state-chip{grid-column:1/-1;text-align:center}.wb-pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wb-reward-list,.wb-loot-list{grid-template-columns:1fr}.wb-admin-test{align-items:stretch;flex-direction:column}.wb-admin-test-actions{display:grid;grid-template-columns:1fr 1fr}.world-boss-participants{justify-content:flex-start;overflow-x:auto}.wb-fighter{flex-basis:48px;min-width:48px}}
@media(prefers-reduced-motion:reduce){.world-boss-avatar,.world-boss-sky::before,.world-boss-pattern,.game-mode-nav button[data-game-mode="worldboss"].urgent,.game-mode-nav button[data-game-mode="worldboss"]::before,.game-mode-nav button[data-game-mode="worldboss"]::after{animation:none!important}}
.world-boss-3d-canvas{position:absolute;z-index:0;inset:0;background:#08050d}.world-boss-3d-canvas canvas{display:block;width:100%!important;height:100%!important}.world-boss-3d-loading{position:absolute;z-index:7;inset:0;display:grid;place-items:center;padding:20px;background:radial-gradient(circle,rgba(74,29,88,.74),rgba(6,4,10,.96));color:#eadcff;font-size:var(--wb-fs-small);text-align:center}.world-boss-3d-loading[hidden]{display:none}.world-boss-target{z-index:5;width:calc(100% - 20px);margin:10px auto 0;padding:8px;box-sizing:border-box;border:1px solid rgba(226,172,255,.36);background:linear-gradient(90deg,rgba(10,6,15,.9),rgba(31,10,35,.7),rgba(10,6,15,.9));pointer-events:none}.world-boss-hp-copy{margin-top:0}.world-boss-pattern{z-index:9;top:72px}.world-boss-raid-hud{position:absolute;z-index:6;left:8px;right:8px;bottom:30px;display:grid;gap:4px;pointer-events:none}.wb-raid-count{justify-self:start;padding:4px 7px;border:1px solid rgba(152,112,179,.55);background:rgba(10,7,14,.78);color:#d8c7df;font-size:var(--wb-fs-hud-micro)}.wb-raid-count b{color:#83e6c7;font-size:var(--wb-fs-hud-small)}.wb-raid-me{justify-self:start;display:flex;align-items:baseline;gap:5px;padding:4px 7px;border:1px solid rgba(152,112,179,.55);background:rgba(10,7,14,.78);color:#e7d9ea;font-size:var(--wb-fs-hud-micro)}.wb-raid-me>b{color:#ffd98a;font-size:var(--wb-fs-hud-small);white-space:nowrap}.wb-raid-me>small{overflow:hidden;white-space:nowrap;color:#9f8cac}.world-boss-rank-board{position:absolute;z-index:8;top:50%;left:8px;transform:translateY(-50%);display:grid;gap:2px;width:min(48%,164px);max-height:calc(100% - 200px);overflow:hidden;pointer-events:none}.world-boss-rank-board[hidden]{display:none}.wb-rank-head{padding:3px 5px;border:1px solid rgba(152,112,179,.5);background:rgba(10,7,14,.82);color:#c9a7e8;font-size:var(--wb-fs-hud-micro);letter-spacing:.4px;text-align:center}.wb-rank-row{display:grid;grid-template-columns:13px minmax(0,1fr);gap:0 5px;align-items:center;padding:3px 5px;border:1px solid rgba(83,63,96,.68);background:rgba(12,8,16,.74);color:#e7d9ea}.wb-rank-row>i{grid-row:1/3;place-self:center;font-style:normal;font-weight:700;color:#f1ce73;font-size:var(--wb-fs-hud-small);line-height:1}.wb-rank-row>b,.wb-rank-row>small{overflow:hidden;white-space:nowrap;font-size:var(--wb-fs-hud-micro);line-height:1.3}.wb-rank-row>small{color:#81d9ba}.wb-rank-row.me{border-color:#f2c86d;background:rgba(46,33,13,.8)}.wb-rank-row.me>b{color:#fff0b5}.wb-rank-row.empty{opacity:.5}.wb-rank-row.empty>b{color:#9f8cac}.wb-name.has-style{color:var(--wb-style,#e7d9ea);text-shadow:0 0 6px var(--wb-style-accent,transparent)}.wb-style-badge{margin-right:3px;font-style:normal;text-decoration:none}@keyframes wbStyleSparkle{0%,100%{filter:brightness(1)}45%{filter:brightness(1.5) saturate(1.15)}}.wb-name.motion-sparkle{animation:wbStyleSparkle 2.4s ease-in-out infinite}@keyframes wbStylePulse{0%,100%{text-shadow:0 0 4px var(--wb-style-accent)}50%{text-shadow:0 0 13px var(--wb-style-accent),0 0 4px var(--wb-style)}}.wb-name.motion-pulse{animation:wbStylePulse 1.9s ease-in-out infinite}@keyframes wbStyleFlow{to{background-position:-220% 0}}.wb-name.motion-flow{background:linear-gradient(90deg,var(--wb-style),var(--wb-style-accent),var(--wb-style));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;animation:wbStyleFlow 3.2s linear infinite}@media(prefers-reduced-motion:reduce){.wb-name.motion-sparkle,.wb-name.motion-pulse,.wb-name.motion-flow{animation:none}.wb-name.motion-flow{background:none;-webkit-text-fill-color:var(--wb-style);color:var(--wb-style);text-shadow:0 0 6px var(--wb-style-accent)}}.world-boss-combat-log{z-index:7;max-width:calc(100% - 16px);background:rgba(7,5,10,.68);padding:3px 5px}@container(max-width:420px){.world-boss-arena{min-height:470px}.world-boss-target{margin-top:7px}.world-boss-pattern{top:68px}.world-boss-rank-board{width:min(52%,140px)}}
.world-boss-energy-label{margin-bottom:3px;color:#f3c8ff;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-micro);line-height:1;letter-spacing:2.2px;text-shadow:0 0 8px #c65cff}.world-boss-pattern.targeted{border-color:#ff315f;background:#8b102feF;color:#fff;box-shadow:0 0 0 3px rgba(255,43,89,.18),0 0 28px rgba(255,24,70,.75);font-size:var(--wb-fs-hud-body)}.world-boss-pattern.targeted.lethal{animation:wbWarning .34s steps(2,end) infinite}.world-boss-pattern.safe{border-color:#65e5ba;background:#143d36e8;color:#caffee;box-shadow:0 0 18px rgba(77,232,183,.38);animation:none}.wb-late-note{margin:9px 0 0;padding:8px;border:1px solid #b48143;background:#352816;color:#f6d89b;font-size:var(--wb-fs-small);line-height:1.55}.world-boss-controls button:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.45}.world-boss-revive{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:2px solid #ff6b86;background:linear-gradient(110deg,#481b2d,#211321);color:#fff}.world-boss-revive[hidden]{display:none}.world-boss-revive div{min-width:0}.world-boss-revive b,.world-boss-revive small{display:block}.world-boss-revive b{font-size:var(--wb-fs-hud-body)}.world-boss-revive small{margin-top:4px;color:#efcad3;font-size:var(--wb-fs-hud-micro);line-height:1.45}.world-boss-revive button{flex:none;min-height:40px;padding:7px 12px;border:2px solid #89edcf;background:#185746;color:#eafff8;font-family:inherit;font-weight:800;font-size:var(--wb-fs-hud-small);line-height:1.2;cursor:pointer;box-shadow:0 0 13px rgba(90,238,190,.25)}.world-boss-revive button:disabled{border-color:#6b5760;background:#30252a;color:#8d7d84;cursor:not-allowed;box-shadow:none}

/* ── Raid HUD: every essential control remains reachable on a phone ─── */
.world-boss-battle-panel .world-boss-battle-clock{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:5px;margin-top:6px;padding-top:5px;border-top:1px solid rgba(202,140,232,.28);color:#d9c7e4;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);line-height:1;letter-spacing:.35px}.world-boss-battle-panel .world-boss-battle-clock strong{color:#fff0b9;font-size:var(--wb-fs-title);letter-spacing:1px;text-shadow:0 0 8px rgba(255,193,106,.72)}.world-boss-battle-panel .world-boss-battle-clock small{justify-self:end;color:#aa94b7;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-battle-clock.urgent strong{color:#ff8e9d;animation:wbBattleClockPulse .75s steps(2,end) infinite}.world-boss-battle-panel .world-boss-battle-clock.ended strong{color:#ad9caf;text-shadow:none}
/* HUD 는 아래에서 위로 쌓인다: battle-bottom → battle-status → raid-hud. 예전에는 각 층의 bottom 에 이웃 층의 **높이**를 숫자로 박아 뒀는데(12곳), 글자 크기가 바뀌면 그 전제가 깨져 그대로 겹쳤다. 이제 실제 높이를 worldboss.js 의 syncHudStack() 이 재서 --wb-stack-* 로 넘긴다. 브레이크포인트마다 다른 건 간격(--wb-stack-gap)뿐이고, .reviving 변형도 필요 없다(높이 측정이 흡수한다). */.world-boss-battle-panel .world-boss-battle-status{position:absolute;z-index:14;bottom:calc(var(--wb-stack-bottom,108px) + var(--wb-stack-gap,10px));left:50%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;width:min(760px,calc(100% - 24px));transform:translateX(-50%);pointer-events:none}.world-boss-battle-status .world-boss-combat-log{position:relative;z-index:auto;bottom:auto;left:auto;display:flex;align-items:center;max-width:none;min-height:46px;padding:7px 9px;box-sizing:border-box;border:1px solid rgba(153,99,202,.52);border-left:3px solid #b86be6;background:linear-gradient(90deg,rgba(9,6,14,.92),rgba(29,12,39,.78));color:#eee3f3;font-size:var(--wb-fs-hud-small);line-height:1.45;white-space:normal;overflow:hidden}.world-boss-skill-hud{min-width:0;min-height:46px;padding:5px 6px;box-sizing:border-box;border:1px solid rgba(102,167,224,.58);background:linear-gradient(100deg,rgba(5,11,20,.91),rgba(15,28,48,.82));box-shadow:inset 0 1px 0 rgba(183,225,255,.12)}.world-boss-skill-hud-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px;color:#d8edff;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);line-height:1}.world-boss-skill-hud-head small{color:#8fc4ec;font-size:var(--wb-fs-hud-micro)}.world-boss-skill-cooldowns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;min-height:25px;color:#8fa4b8;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-hud-micro);line-height:1}.wb-skill-cooldown{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px;min-width:0;min-height:25px;padding:3px;overflow:hidden;border:1px solid rgba(103,138,169,.42);background:rgba(4,8,15,.68);color:#dbeeff}.wb-skill-cooldown i{display:grid;place-items:center;width:13px;height:13px;border:1px solid #6b9cc4;border-radius:50%;background:#17344d;color:#e5f5ff;font-size:var(--wb-fs-hud-micro);font-style:normal}.wb-skill-cooldown b,.wb-skill-cooldown small{display:block;flex:none;overflow:hidden;white-space:nowrap;line-height:1.5}.wb-skill-cooldown b{font-size:var(--wb-fs-hud-micro)}.wb-skill-cooldown small{color:#87b7da;font-size:var(--wb-fs-hud-micro)}.wb-skill-cooldown em{position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,#5dbbe4,#d9f3ff);box-shadow:0 0 5px #5dbbe4}.wb-skill-cooldown.cooling{border-color:rgba(106,93,181,.68);color:#b8b2df}.wb-skill-cooldown.cooling i{border-color:#8b73db;background:#332761;color:#e3ddff}.wb-skill-cooldown.cooling small{color:#b6aaf0}.wb-skill-cooldown.cooling em{background:linear-gradient(90deg,#8069db,#c8c0ff);box-shadow:0 0 5px #957eea}.wb-skill-cooldown.unavailable{opacity:.55;filter:grayscale(.45)}
.world-boss-battle-panel .world-boss-raid-hud{bottom:calc(var(--wb-stack-bottom,108px) + var(--wb-stack-status,72px) + var(--wb-stack-gap,10px)*2)}
@keyframes wbBattleClockPulse{50%{filter:brightness(1.4);transform:scale(1.04)}}

@media (max-width:600px){.world-boss-battle-panel .world-boss-battle-top{top:max(8px,env(safe-area-inset-top));width:calc(100% - 16px)}.world-boss-battle-panel .world-boss-target{width:calc(100% - 14px);padding:7px 8px}.world-boss-battle-panel .world-boss-energy-label{font-size:var(--wb-fs-hud-micro);letter-spacing:1.35px}.world-boss-battle-panel .world-boss-hp-copy strong{max-width:66%;overflow:hidden;white-space:nowrap;font-size:var(--wb-fs-title)}.world-boss-battle-panel .world-boss-hp-copy span{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-hp{height:10px;margin-top:5px}.world-boss-battle-panel .world-boss-hp-number{margin-top:3px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-battle-clock{margin-top:4px;padding-top:4px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-battle-clock strong{font-size:var(--wb-fs-hud-body)}.world-boss-battle-panel .world-boss-battle-clock small{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-connection{top:auto;right:2px;bottom:-28px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-target{width:calc(100% - 14px)}.world-boss-battle-panel .world-boss-pattern{width:calc(100% - 20px);padding:7px;font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-minor-threat{max-width:calc(100% - 20px);padding:4px 7px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel{--wb-stack-gap:8px}.world-boss-battle-panel .world-boss-battle-status{gap:4px;width:calc(100% - 12px)}.world-boss-battle-status .world-boss-combat-log{min-height:50px;padding:5px 6px;font-size:var(--wb-fs-hud-micro)}.world-boss-skill-hud{min-height:50px;padding:4px}.world-boss-skill-hud-head{margin-bottom:3px;font-size:var(--wb-fs-hud-micro)}.world-boss-skill-hud-head small{font-size:var(--wb-fs-hud-micro)}.world-boss-skill-cooldowns{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;min-height:35px}.wb-skill-cooldown{min-height:16px;padding:2px}.wb-skill-cooldown i{width:10px;height:10px;font-size:var(--wb-fs-hud-micro)}.wb-skill-cooldown b{font-size:var(--wb-fs-hud-micro)}.wb-skill-cooldown small{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-raid-hud{right:6px;left:6px}.world-boss-battle-panel .wb-raid-count{padding:4px 6px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .wb-raid-count b{font-size:var(--wb-fs-hud-body)}.world-boss-battle-panel .wb-raid-me{padding:3px 4px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-rank-board{left:6px;width:min(46%,150px)}.world-boss-battle-panel .wb-rank-row>b,.world-boss-battle-panel .wb-rank-row>small{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-battle-bottom{bottom:max(5px,calc(env(safe-area-inset-bottom) + 4px));width:calc(100% - 12px)}.world-boss-battle-panel .world-boss-controls{gap:4px;padding:4px}.world-boss-battle-panel .world-boss-controls button{min-height:55px;padding:4px}.world-boss-battle-panel .world-boss-controls button span{font-size:var(--wb-fs-hero)}.world-boss-battle-panel .world-boss-controls button b{font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-controls button small{font-size:var(--wb-fs-hud-micro)}}
@media (max-width:960px) and (orientation:landscape) and (max-height:520px){.world-boss-battle-panel .world-boss-battle-top{top:max(5px,env(safe-area-inset-top));width:calc(100% - 18px)}.world-boss-battle-panel .world-boss-target{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:9px;width:min(720px,calc(100% - 132px));padding:4px 7px}.world-boss-battle-panel .world-boss-energy-label{grid-column:1/-1;display:inline;margin-right:5px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-hp-copy{grid-column:1;margin-top:1px}.world-boss-battle-panel .world-boss-hp{grid-column:1;margin-top:3px;height:8px}.world-boss-battle-panel .world-boss-hp-number{grid-column:1;margin-top:2px}.world-boss-battle-panel .world-boss-battle-clock{grid-column:2;grid-row:2/span 3;align-self:center;margin:0;padding:0 0 0 8px;border-top:0;border-left:1px solid rgba(202,140,232,.28)}.world-boss-battle-panel .world-boss-battle-clock strong{font-size:var(--wb-fs-hud-body)}.world-boss-battle-panel .world-boss-connection{top:6px;right:0;bottom:auto}.world-boss-battle-panel .world-boss-pattern{padding:4px 6px;font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-minor-threat{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel{--wb-stack-gap:6px}.world-boss-battle-panel .world-boss-battle-status{min-height:35px}.world-boss-battle-status .world-boss-combat-log,.world-boss-skill-hud{min-height:35px}.world-boss-battle-panel .world-boss-controls{padding:3px}.world-boss-battle-panel .world-boss-controls button{height:42px!important;min-height:42px!important;padding:3px}.world-boss-battle-panel .world-boss-controls button span{font-size:var(--wb-fs-title)}.world-boss-battle-panel .world-boss-controls button b{margin-top:1px;font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-controls button small{display:none}.world-boss-battle-panel .world-boss-revive{min-height:39px;padding:5px 7px}.world-boss-battle-panel .world-boss-revive b{font-size:var(--wb-fs-hud-small)}.world-boss-battle-panel .world-boss-revive small{margin-top:2px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-revive button{min-height:30px;padding:5px 9px;font-size:var(--wb-fs-hud-small)}}

/* ── One-slot raid formation and power-sorted picker ───────────────── */
.wb-formation-slot{position:relative;display:grid;grid-template-columns:auto 76px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:98px;margin-top:10px;padding:9px;border:2px dashed #775e86;background:linear-gradient(115deg,#17111f,#261a2f);color:var(--wb-ink);font-family:inherit;text-align:left;cursor:pointer}.wb-formation-slot:hover,.wb-formation-slot:focus-visible{border-style:solid;border-color:var(--wb-gold);outline:none;box-shadow:0 0 0 2px rgba(242,200,109,.15)}.wb-formation-slot:disabled{opacity:.55;cursor:not-allowed}.wb-formation-slot.filled{border-style:solid;border-color:#866a49;background:linear-gradient(115deg,#2f241f,#24192d)}.wb-formation-slot-index{display:grid;place-items:center;width:22px;height:22px;border:1px solid #806b8e;background:#241a2d;color:#cfbde0;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-small)}.wb-formation-slot img{width:76px;height:76px;object-fit:contain}.wb-formation-slot-copy{min-width:0}.wb-formation-slot-copy b,.wb-formation-slot-copy small{display:block;flex:none;overflow:hidden;white-space:nowrap;line-height:1.5}.wb-formation-slot-copy b{color:#fff0c2;font-size:var(--wb-fs-body)}.wb-formation-slot-copy small{margin-top:6px;color:#baaac1;font-size:var(--wb-fs-small)}.wb-formation-slot em{padding:5px 7px;border:1px solid #806791;background:#4b3957;color:#fff;font-style:normal;font-size:var(--wb-fs-small)}.wb-formation-slot-empty{grid-column:2/-1;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;color:#d7c8dd;font-size:24px}.wb-formation-slot-empty b,.wb-formation-slot-empty small{grid-column:2;display:block}.wb-formation-slot-empty b{font-size:var(--wb-fs-body)}.wb-formation-slot-empty small{margin-top:4px;color:#9e8fa7;font-size:var(--wb-fs-micro)}
.world-boss-pet-modal{position:fixed;z-index:91;inset:0;display:grid;place-items:center;padding:18px;box-sizing:border-box}.world-boss-pet-modal[hidden]{display:none}.world-boss-pet-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(5,3,8,.82);backdrop-filter:blur(5px);cursor:pointer}.world-boss-pet-modal-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(680px,100%);max-height:min(760px,calc(100dvh - 36px));overflow:hidden;border:3px solid #0a0710;background:linear-gradient(155deg,#2d1c39,#130e1a 62%);box-shadow:inset 0 3px 0 #6f4e82,0 18px 60px #000;color:var(--wb-ink)}.world-boss-pet-modal-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-bottom:2px solid #493657;background:linear-gradient(100deg,#3a2247,#211529)}.world-boss-pet-modal-card>header>div{min-width:0;flex:1 1 auto}.world-boss-pet-modal-card header small{color:var(--wb-gold);font-size:var(--wb-fs-micro);letter-spacing:1.5px}.world-boss-pet-modal-card h2{margin:5px 0 0;color:#fff0c4;font-size:var(--wb-fs-title)}.world-boss-pet-modal-card header p{margin:6px 0 0;color:var(--wb-muted);font-size:var(--wb-fs-small);line-height:1.55;white-space:nowrap;overflow:hidden}.world-boss-pet-modal-close{flex:none;width:34px;height:34px;border:2px solid #6c567a;background:#2c2133;color:#fff;font-family:inherit;font-weight:800;font-size:var(--wb-fs-lead);cursor:pointer}.world-boss-pet-modal-sort{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 14px;border-bottom:1px solid #3d3048;background:#17111e;color:#cdbed3;font-size:var(--wb-fs-small)}.world-boss-pet-modal-sort span{padding:4px 6px;border:1px solid #675378;background:#30233a;color:#eadcff}.world-boss-pet-modal-list.wb-pet-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;margin:0;padding:12px;overflow:auto}.world-boss-pet-modal-list .wb-pet-card{min-height:152px}.world-boss-pet-modal-list .wb-pet-card strong{display:block;margin-top:6px;color:#f2c86d;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-small)}.wb-pet-modal-empty{grid-column:1/-1;margin:0;padding:40px 12px;color:#b8a9c0;font-size:var(--wb-fs-small);text-align:center}.wb-skill-cooldown.casting{border-color:#fff0a9;filter:brightness(1.35);animation:wbSkillCastFlash .34s steps(2,end) 2}.wb-skill-cooldown.casting i{background:#8c5e1e;border-color:#ffe29a;color:#fff}.wb-skill-cooldown.casting em{background:#ffe190;box-shadow:0 0 8px #ffd76e}@keyframes wbSkillCastFlash{50%{transform:translateY(-1px);box-shadow:0 0 10px rgba(255,221,119,.8)}}
@media(max-width:600px){.world-boss-pet-modal{align-items:end;padding:0}.world-boss-pet-modal-card{width:100%;max-height:min(82dvh,720px);border-width:3px 0 0}.world-boss-pet-modal-card>header{padding:12px}.world-boss-pet-modal-card h2{font-size:var(--wb-fs-lead)}.world-boss-pet-modal-list.wb-pet-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.world-boss-pet-modal-list .wb-pet-card{min-height:140px}.wb-formation-slot{grid-template-columns:auto 64px minmax(0,1fr) auto;min-height:84px;padding:7px}.wb-formation-slot img{width:64px;height:64px}.wb-register-actions{display:grid;grid-template-columns:1fr 1fr}.wb-register-actions .wb-button{width:100%;padding:7px 5px}}

/* ── Shared HP condition language: identical thresholds in HUD and 3D ─── */
.world-boss-battle-panel .world-boss-target{--wb-hp-color:#70e8ff;--wb-hp-glow:#7f6cff;transition:border-color .35s ease,box-shadow .35s ease}.world-boss-battle-panel .world-boss-hp-copy{justify-content:flex-start}.world-boss-battle-panel .world-boss-hp-copy strong{min-width:0;overflow:hidden;white-space:nowrap}.world-boss-battle-panel .world-boss-hp-copy em{margin-left:auto;padding:3px 8px;border:1px solid color-mix(in srgb,var(--wb-hp-color) 72%,#fff 12%);border-radius:999px;background:color-mix(in srgb,var(--wb-hp-glow) 24%,#08050d 76%);color:var(--wb-hp-color);font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-small);line-height:1.15;font-style:normal;letter-spacing:.45px;white-space:nowrap;box-shadow:0 0 11px color-mix(in srgb,var(--wb-hp-glow) 38%,transparent)}.world-boss-battle-panel .world-boss-hp{position:relative;overflow:hidden;padding:0}.world-boss-battle-panel .world-boss-hp i{position:relative;z-index:1;display:block;height:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--wb-hp-glow) 76%,#19071f),var(--wb-hp-color));box-shadow:0 0 18px var(--wb-hp-glow),inset 0 2px 0 rgba(255,255,255,.42);transition:width .28s linear,background .35s ease,box-shadow .35s ease}.world-boss-hp-marks{position:absolute;z-index:2;inset:0;pointer-events:none}.world-boss-hp-marks u{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,255,255,.62);box-shadow:0 0 3px #000;text-decoration:none}.world-boss-hp-marks u:nth-child(1){left:25%}.world-boss-hp-marks u:nth-child(2){left:50%}.world-boss-hp-marks u:nth-child(3){left:75%}.world-boss-battle-panel .world-boss-hp-number{align-items:center;justify-content:flex-start;gap:9px}.world-boss-battle-panel .world-boss-hp-number>strong{min-width:43px;color:var(--wb-hp-color);font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-hud-body);line-height:1;text-align:left;text-shadow:0 0 8px var(--wb-hp-glow)}.world-boss-battle-panel .world-boss-hp-number span:last-child{margin-left:auto}.world-boss-battle-panel[data-health-state="stable"] .world-boss-target{border-color:rgba(112,232,255,.62)}.world-boss-battle-panel[data-health-state="cracked"] .world-boss-target{border-color:rgba(199,133,255,.78);box-shadow:0 6px 28px #000,inset 0 1px 0 rgba(255,233,255,.2),0 0 18px rgba(157,85,255,.22)}.world-boss-battle-panel[data-health-state="enraged"] .world-boss-target{border-color:rgba(255,173,66,.82);box-shadow:0 6px 28px #000,inset 0 1px 0 rgba(255,245,214,.25),0 0 22px rgba(255,91,50,.31)}.world-boss-battle-panel[data-health-state="critical"] .world-boss-target{border-color:#ff496f;box-shadow:0 6px 28px #000,inset 0 1px 0 rgba(255,235,240,.26),0 0 28px rgba(255,23,79,.48);animation:wbCriticalTarget .72s ease-in-out infinite}.world-boss-battle-panel[data-health-state="defeated"] .world-boss-target{border-color:#ffe08a;filter:saturate(.72)}
@keyframes wbCriticalTarget{50%{filter:brightness(1.17);box-shadow:0 6px 28px #000,inset 0 1px 0 rgba(255,255,255,.38),0 0 38px rgba(255,23,79,.68)}}

/* ── Authoritative boss-clear cinematic: UI-free letterboxed finish ───── */
.world-boss-battle-test-tools{position:absolute;z-index:17;top:calc(var(--wb-stack-top,150px) + var(--wb-stack-gap,10px));right:12px;display:grid;grid-template-columns:repeat(3,auto);gap:4px;padding:5px;border:1px solid rgba(246,207,116,.58);background:rgba(8,6,12,.84);box-shadow:0 8px 24px rgba(0,0,0,.46);backdrop-filter:blur(5px)}.world-boss-battle-test-tools[hidden]{display:none}.world-boss-battle-test-tools small{grid-column:1/-1;color:#e4c77d;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hud-micro);line-height:1;letter-spacing:1px}.world-boss-battle-test-tools button{min-height:26px;padding:4px 7px;border:1px solid #735c81;background:#291d34;color:var(--wb-ink);font-family:inherit;font-weight:800;font-size:var(--wb-fs-hud-micro);line-height:1;cursor:pointer}.world-boss-battle-test-tools button:last-child{border-color:#b37b47;background:#4c2c20;color:#ffe2a4}.world-boss-battle-test-tools button:hover{filter:brightness(1.2)}.world-boss-battle-panel.victory-cinematic>.world-boss-battle-test-tools{opacity:0!important;visibility:hidden!important;transition:opacity .22s ease,visibility .22s ease}
.world-boss-victory-cinematic{position:absolute;z-index:45;inset:0;overflow:hidden;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease}.world-boss-victory-cinematic[aria-hidden="false"]{opacity:1;visibility:visible}.world-boss-letterbox{position:absolute;z-index:4;left:0;width:100%;height:0;background:linear-gradient(180deg,#000 0,#000 82%,#130c08 95%,rgba(244,194,88,.52) 98%,#000 100%);box-shadow:0 0 38px #000;transition:height .55s cubic-bezier(.2,.82,.2,1)}.world-boss-letterbox.top{top:0}.world-boss-letterbox.bottom{bottom:0;transform:scaleY(-1)}.world-boss-final-flash{position:absolute;z-index:2;inset:0;opacity:0;background:radial-gradient(circle at 31% 45%,rgba(255,255,255,.9) 0 1%,rgba(255,232,161,.7) 3%,rgba(255,92,35,.42) 7%,rgba(162,48,255,.18) 14%,transparent 30%);mix-blend-mode:screen}.world-boss-victory-credit{position:absolute;z-index:5;left:50%;top:50%;width:min(860px,calc(100% - 34px));transform:translate(-50%,-50%);opacity:0;color:#fff;text-align:center;text-shadow:0 3px 0 #190d08,0 0 24px rgba(255,191,61,.72)}.world-boss-victory-credit small{display:block;color:#ffd875;font-family:var(--wb-font);font-weight:900;font-size:clamp(9px,1.4vw,14px);line-height:1;letter-spacing:clamp(4px,1.5vw,12px)}.world-boss-victory-credit h2{margin:12px 0 0;color:#fff5cc;font-size:clamp(24px,5.2vw,68px);line-height:1.12;letter-spacing:-.04em}.world-boss-victory-credit p{margin:12px 0 0;color:#e7d7bd;font-size:clamp(11px,1.9vw,16px);letter-spacing:.08em}.world-boss-battle-panel.victory-cinematic>.world-boss-battle-top,.world-boss-battle-panel.victory-cinematic>#worldBossPattern,.world-boss-battle-panel.victory-cinematic>#worldBossMinorThreat,.world-boss-battle-panel.victory-cinematic>#worldBossParticipants,.world-boss-battle-panel.victory-cinematic>.world-boss-battle-status,.world-boss-battle-panel.victory-cinematic>.world-boss-battle-bottom,.world-boss-battle-panel.victory-cinematic>#worldBoss3dLoading{opacity:0!important;visibility:hidden!important;transition:opacity .22s ease,visibility .22s ease}.world-boss-battle-panel[data-victory-stage="final-impact"] .world-boss-final-flash{animation:wbFinalImpact .72s ease-out both}.world-boss-battle-panel[data-victory-stage="final-impact"] .world-boss-victory-credit{top:auto;bottom:clamp(24px,7vh,64px);opacity:.9;transform:translate(-50%,0) scale(.42);animation:wbCreditImpactCaption .7s ease-out both}.world-boss-battle-panel[data-victory-stage="core-fracture"] .world-boss-final-flash{animation:wbCoreFractures 1.1s steps(3,end) infinite}.world-boss-battle-panel[data-victory-stage="core-fracture"] .world-boss-victory-credit,.world-boss-battle-panel[data-victory-stage="colossus-fall"] .world-boss-victory-credit{top:auto;bottom:clamp(24px,7vh,64px);opacity:.9;transform:translate(-50%,0) scale(.42)}.world-boss-battle-panel[data-victory-stage="colossus-fall"] .world-boss-final-flash{opacity:.18;background:radial-gradient(circle at 31% 58%,#ffd35d 0 2%,rgba(255,84,28,.62) 8%,rgba(123,28,194,.3) 22%,transparent 52%)}.world-boss-battle-panel[data-victory-stage="raid-clear"] .world-boss-victory-credit{top:auto;bottom:clamp(20px,6vh,54px);opacity:1;transform:translate(-50%,0) scale(.62);animation:wbRaidClearCaption .9s cubic-bezier(.18,.86,.21,1) both}.world-boss-battle-panel[data-victory-stage="raid-clear"] .world-boss-final-flash{opacity:.16;background:radial-gradient(ellipse at 50% 64%,rgba(255,221,104,.84),rgba(128,72,24,.26) 24%,transparent 58%)}
@keyframes wbFinalImpact{0%{opacity:0}12%{opacity:1}100%{opacity:.12}}@keyframes wbCoreFractures{0%,100%{opacity:.08}50%{opacity:.48}}@keyframes wbCreditPunch{0%{opacity:0;transform:translate(-50%,-50%) scale(1.42)}32%{opacity:1}100%{opacity:.76;transform:translate(-50%,calc(-50% + 18vh)) scale(.7)}}@keyframes wbCreditImpactCaption{0%{opacity:0;transform:translate(-50%,0) scale(.66)}38%{opacity:1}100%{opacity:.9;transform:translate(-50%,0) scale(.42)}}@keyframes wbRaidClearCaption{0%{opacity:0;filter:blur(7px);transform:translate(-50%,14px) scale(.5)}100%{opacity:1;filter:none;transform:translate(-50%,0) scale(.62)}}@keyframes wbRaidClearCredit{0%{opacity:0;filter:blur(9px);transform:translate(-50%,-42%) scale(1.18)}100%{opacity:1;filter:none;transform:translate(-50%,-50%) scale(1)}}
.wb-admin-test-actions{flex-wrap:wrap}.wb-admin-test-actions .wb-button{flex:1 1 108px}
@media(max-width:600px){.world-boss-battle-panel .world-boss-hp-copy{gap:5px}.world-boss-battle-panel .world-boss-hp-copy em{max-width:34%;overflow:hidden;padding:3px 5px;font-size:var(--wb-fs-hud-micro)}.world-boss-battle-panel .world-boss-hp-number{gap:6px}.world-boss-battle-panel .world-boss-hp-number>strong{min-width:34px;font-size:var(--wb-fs-hud-small)}.world-boss-victory-credit{top:53%}.world-boss-victory-credit h2{margin-top:8px}.world-boss-victory-credit p{margin-top:8px;line-height:1.55}.wb-admin-test-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.world-boss-battle-panel[data-health-state="critical"] .world-boss-target,.world-boss-battle-clock.urgent strong,.wb-skill-cooldown.casting,.world-boss-final-flash,.world-boss-victory-credit,.wb-button.primary[data-wb-action="register"],.wb-button.primary[data-wb-action="register"]::after{animation:none!important}.wb-button.primary[data-wb-action="register"]{border-color:#ffd98a;box-shadow:inset 0 2px 0 rgba(255,255,255,.4),0 0 14px rgba(255,196,74,.85)}.wb-button.primary[data-wb-action="register"]::after{opacity:.8}.world-boss-battle-panel.victory-cinematic .world-boss-letterbox{transition:none}.world-boss-battle-panel[data-victory-stage="raid-clear"] .world-boss-victory-credit{opacity:1;filter:none;transform:translate(-50%,0) scale(.62)}}
@media(max-width:600px){.world-boss-battle-test-tools{right:8px;grid-template-columns:repeat(3,auto);gap:2px;padding:3px}.world-boss-battle-test-tools small{font-size:var(--wb-fs-hud-micro)}.world-boss-battle-test-tools button{min-height:22px;padding:3px 5px;font-size:var(--wb-fs-hud-micro)}}

/* Final raid presentation: invitation beacon, memorial stage and Hall of Honor. */
.game-mode-nav,.game-mode-nav-inner,.game-mode-nav button[data-game-mode="worldboss"]{overflow:visible!important}
.world-boss-available .world-boss-nav-dragon-fire{inset:-43px -23px -9px;transform:translateY(-8px);filter:drop-shadow(0 1px 4px #000) drop-shadow(0 -7px 12px rgba(148,39,181,.94)) drop-shadow(0 -16px 20px rgba(35,5,45,.72))}
.wb-button.primary[data-wb-action="register"]{position:relative;animation:wbRegisterGlow 1.15s ease-in-out infinite}.wb-button.primary[data-wb-action="register"]::after{content:"";position:absolute;z-index:-1;inset:-3px;border:1px solid #ffe9a3;opacity:0;animation:wbRegisterHalo 1.15s ease-in-out infinite}@keyframes wbRegisterGlow{0%,100%{box-shadow:inset 0 2px 0 rgba(255,255,255,.28),0 0 0 rgba(255,196,74,0)}50%{box-shadow:inset 0 2px 0 rgba(255,255,255,.4),0 0 16px rgba(255,196,74,.92),0 0 30px rgba(255,120,60,.5)}}@keyframes wbRegisterHalo{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.85;transform:scale(1.045)}}.wb-loot-list{grid-template-columns:repeat(4,minmax(0,1fr))}@container(max-width:420px){.wb-loot-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.wb-loot{padding:7px 5px;font-size:var(--wb-fs-small);line-height:1.35}.wb-loot:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.6)}.wb-loot.claimed{border-color:#3a2f42;background:#150f1b;color:#8b7f95}.wb-loot.is-mine{border-color:#7ad6a1;background:#16281e;color:#dcffe9}.wb-pet-card.dungeon-pet-card{order:0;min-height:278px;padding:10px 6px 8px;display:flex;flex-direction:column;align-items:stretch;gap:5px;text-align:center}.wb-pet-card .wb-pet-card-badges{display:flex;align-items:center;justify-content:space-between;gap:4px}.wb-pet-card .rar-gem{position:static;transform:none}.wb-pet-card .pet-role{position:static;transform:none}.world-boss-pet-modal-list .rar-gem{animation:none}.world-boss-ready-prompt{position:absolute;z-index:8;left:50%;bottom:calc(100% + 25px);width:max-content;max-width:142px;transform:translate(-50%,10px) scale(.9);padding:7px 9px;border:1px solid #ffd77a;border-radius:4px;background:linear-gradient(180deg,#4c153a,#1a0718);box-shadow:0 0 0 2px #10050e,0 0 22px #cf398d,0 8px 18px rgba(0,0,0,.7);color:#fff0bb;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-small);line-height:1.35;text-align:center;white-space:normal;opacity:0;visibility:hidden;pointer-events:none}
.world-boss-ready-prompt::after{content:"";position:absolute;left:50%;top:100%;transform:translateX(-50%);border:7px solid transparent;border-top-color:#ffd77a}
.world-boss-available .game-mode-nav button[data-game-mode="worldboss"].ready-required{z-index:9;animation:wbReadyButtonPulse 1.05s ease-in-out infinite}
.world-boss-available .game-mode-nav button[data-game-mode="worldboss"].ready-required .world-boss-ready-prompt{opacity:1;visibility:visible;animation:wbReadyPrompt 1.05s ease-in-out infinite}
.world-boss-available .game-mode-nav button[data-game-mode="worldboss"].ready-required .world-boss-nav-dragon-fire{filter:drop-shadow(0 1px 4px #000) drop-shadow(0 -7px 13px #c43ee7) drop-shadow(0 -18px 22px rgba(255,55,141,.78))}
@keyframes wbReadyButtonPulse{0%,100%{box-shadow:inset 0 2px 0 #d080dd,0 0 12px #6e1c84}50%{box-shadow:inset 0 2px 0 #ffe6a2,0 0 0 3px rgba(255,213,105,.2),0 0 30px #e345a8;filter:brightness(1.16)}}
@keyframes wbReadyPrompt{0%,100%{transform:translate(-50%,7px) scale(.96)}50%{transform:translate(-50%,0) scale(1.02);box-shadow:0 0 0 2px #10050e,0 0 30px #ee49bd,0 10px 22px rgba(0,0,0,.8)}}

.world-boss-memorial{position:relative;min-height:370px;margin-top:12px;overflow:hidden;border:2px solid #9b7041;background:radial-gradient(ellipse at 50% 68%,#382219 0,#160e1a 48%,#07050a 100%);box-shadow:inset 0 0 58px #000,0 10px 30px rgba(0,0,0,.36)}
.world-boss-memorial[hidden]{display:none}
.world-boss-memorial-stage{position:absolute;z-index:0;inset:0;overflow:hidden}
.world-boss-memorial-stage::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.7),transparent 28%,transparent 63%,rgba(4,2,5,.9)),radial-gradient(ellipse at 50% 65%,transparent 32%,rgba(0,0,0,.54) 100%)}
.world-boss-memorial-stage .world-boss-3d-canvas{position:absolute!important;z-index:1!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;background:transparent!important}
.world-boss-memorial-stage .world-boss-3d-canvas canvas{display:block;width:100%!important;height:100%!important}
.world-boss-memorial-copy{position:absolute;z-index:4;left:50%;bottom:24px;width:min(92%,590px);transform:translateX(-50%);text-align:center;text-shadow:0 2px 0 #000,0 0 18px #b86a27;pointer-events:none}
.world-boss-memorial-copy small{display:block;color:#f5c96a;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-small);line-height:1;letter-spacing:4px}
.world-boss-memorial-copy h2,.world-boss-memorial-copy h3{margin:9px 0 0;color:#fff2bd;font-size:clamp(17px,4vw,24px);line-height:1.2}
.world-boss-memorial-copy p{margin:7px 0 0;color:#e4ccb1;font-size:var(--wb-fs-small);line-height:1.5}
.wb-state-chip.cleared{border-color:#b68a46;background:#4b351e;color:#ffe29a;box-shadow:0 0 14px rgba(240,187,84,.22)}
.wb-memorial-head{align-items:center}

.wb-hall-total{flex:none;padding:6px 8px;border:1px solid #81663f;background:#332719;color:#f2cf7d;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-small)}
.wb-hall-list{display:grid;gap:6px;margin-top:11px}
.wb-hall-row{position:relative;display:grid;grid-template-columns:36px 52px minmax(0,1fr) minmax(110px,1fr) auto;align-items:center;gap:8px;min-width:0;padding:8px;border:1px solid #4f405a;background:linear-gradient(90deg,#19121f,#251a2d);box-shadow:inset 3px 0 0 #6c507b}
.wb-hall-row.is-prize{border-color:#8f6ab5;background:linear-gradient(90deg,#221630,#2a1b33);box-shadow:inset 4px 0 0 #c79bff,0 0 14px rgba(160,110,220,.13)}
.wb-hall-row.is-prize>strong small{color:#d3b0ff}
.wb-hall-row:nth-child(1){border-color:#b98a41;background:linear-gradient(90deg,#3b2919,#2c1c2f);box-shadow:inset 4px 0 0 #ffd66e,0 0 18px rgba(226,166,67,.12)}
.wb-hall-row>strong{color:#f1ce73;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-title);line-height:1;text-align:center}.wb-hall-row>strong small{display:block;margin-top:3px;color:#9f8cac;font-family:var(--wb-font);font-weight:700;font-size:var(--wb-fs-micro);line-height:1}
.wb-hall-pet{display:grid;place-items:center;width:50px;height:50px;border:1px solid #6f5c7c;border-radius:50%;background:radial-gradient(circle,#493256,#17111c)}.wb-hall-pet img{width:46px;height:46px;object-fit:contain}.wb-hall-pet span{font-size:24px}
.wb-hall-name,.wb-hall-damage{min-width:0}.wb-hall-name b,.wb-hall-name small,.wb-hall-damage b,.wb-hall-damage small{display:block;flex:none;overflow:hidden;white-space:nowrap;line-height:1.5}.wb-hall-name b{color:#fff0c5;font-size:var(--wb-fs-small)}.wb-hall-name small{margin-top:4px;color:#ad9bb7;font-size:var(--wb-fs-micro)}.wb-hall-damage b{color:#ffd16d;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-body)}.wb-hall-damage small{margin-top:4px;color:#bfaec7;font-size:var(--wb-fs-micro)}
.wb-hall-row>em{padding:5px 6px;border:1px solid #bd7a37;background:#5a311b;color:#ffe19b;font-style:normal;font-size:var(--wb-fs-micro);line-height:1.2;white-space:nowrap}.wb-hall-row>em.survived{border-color:#4e9a7f;background:#1c493b;color:#a7f5d8}.wb-hall-row>em.down{border-color:#665b6c;background:#29232e;color:#aaa0ae}

.wb-pet-skill-list{display:grid;gap:5px;margin-top:8px}.wb-pet-skill-list.compact{gap:3px;margin-top:6px}.wb-pet-skill-list>span{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:3px 7px;padding:6px;border:1px solid #4e3f58;background:#17111d;text-align:left}.wb-pet-skill-list>span>i{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;border:1px solid #795d86;background:#35243f;color:#ffe5a7;font-family:var(--wb-font);font-weight:normal;font-size:clamp(10px,2.4vw,11px)}.wb-pet-skill-list>span>b,.wb-pet-skill-list>span>small{display:block;min-width:0;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.wb-pet-skill-list>span>b{color:var(--wb-ink);font-size:clamp(11px,.8vw + 8px,14px);line-height:1.35}.wb-pet-skill-list>span>small{color:#f3ca6e;font-size:clamp(10px,.6vw + 7px,12px);line-height:1.4}
.wb-pet-card-badges{position:relative;z-index:2;display:flex;justify-content:center;flex-wrap:wrap;gap:3px;min-height:18px}.wb-pet-card-badges em{padding:3px 4px;border:1px solid #655370;background:#2d2234;color:var(--wb-ink);font-style:normal;font-size:var(--wb-fs-micro);line-height:1;white-space:nowrap}.wb-pet-card-badges .role{border-color:#406f75;background:#18363b;color:#a8eff2}.wb-pet-card-badges .rarity-common{border-color:#797979;background:#333;color:#eee}.wb-pet-card-badges .rarity-uncommon{border-color:#4f9b67;background:#173c24;color:#aef4c1}.wb-pet-card-badges .rarity-rare{border-color:#438dc5;background:#16374e;color:#a9ddff}.wb-pet-card-badges .rarity-epic{border-color:#9e61c1;background:#3b1d4d;color:#edbdff}.wb-pet-card-badges .rarity-legendary{border-color:#d89d3e;background:#4b3014;color:#ffe09a}.wb-pet-card-badges .rarity-mythic{border-color:#e75569;background:#501b27;color:#ffc0c9;box-shadow:0 0 8px rgba(255,68,98,.28)}
.world-boss-pet-modal-list .wb-pet-card{display:flex;flex-direction:column;align-items:stretch;min-height:278px}.world-boss-pet-modal-list .wb-pet-card-portrait{display:grid;place-items:center;min-height:72px}.world-boss-pet-modal-list .wb-pet-skill-list{width:100%;margin-top:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.world-boss-pet-modal-list .wb-pet-skill-list>span{grid-template-columns:19px minmax(0,1fr);align-items:start;gap:2px 4px;padding:4px;text-align:left}.world-boss-pet-modal-list .wb-pet-skill-list>span>i{grid-row:auto;width:18px;height:18px;font-size:clamp(9px,2.2vw,10px)}.world-boss-pet-modal-list .wb-pet-skill-list>span>b{white-space:nowrap;overflow:hidden;font-size:clamp(9px,.5vw + 7px,11px);line-height:1.3}.world-boss-pet-modal-list .wb-pet-skill-list>span>small{grid-column:1/3;white-space:nowrap;overflow:hidden;font-size:clamp(9px,.4vw + 7px,10px);line-height:1.35}
.world-boss-pet-modal-list:has(.wb-pet-card:only-child){grid-template-columns:minmax(0,230px);justify-content:center}.world-boss-pet-modal-list:has(.wb-pet-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,230px));justify-content:center}

@media(max-width:600px){
  .world-boss-available .world-boss-nav-dragon-fire{inset:-39px -20px -8px;transform:translateY(-7px)}
  .world-boss-ready-prompt{bottom:calc(100% + 19px);max-width:122px;padding:6px 7px;font-size:var(--wb-fs-micro)}
  .world-boss-memorial{min-height:285px;margin-inline:-4px}.world-boss-memorial-copy{bottom:15px}.world-boss-memorial-copy small{font-size:var(--wb-fs-micro);letter-spacing:2px}.world-boss-memorial-copy h2,.world-boss-memorial-copy h3{margin-top:6px;font-size:var(--wb-fs-hero)}.world-boss-memorial-copy p{margin-top:5px;font-size:var(--wb-fs-micro)}
  .wb-hall-row{grid-template-columns:28px 44px minmax(0,1fr) auto;gap:6px;padding:6px}.wb-hall-pet{width:42px;height:42px}.wb-hall-pet img{width:39px;height:39px}.wb-hall-damage{grid-column:3/5}.wb-hall-row>em{grid-column:4;grid-row:1;padding:4px;font-size:var(--wb-fs-micro)}.wb-hall-name b{font-size:var(--wb-fs-small)}.wb-hall-name small,.wb-hall-damage small{font-size:var(--wb-fs-micro)}.wb-hall-damage b{font-size:var(--wb-fs-small)}
  .wb-formation-slot{grid-template-columns:auto 58px minmax(0,1fr) auto}.wb-formation-slot img{width:58px;height:58px}.wb-formation-slot-copy small{white-space:normal;line-height:1.45}
  .world-boss-pet-modal-card{max-height:88dvh}.world-boss-pet-modal-list.wb-pet-grid{gap:6px}.world-boss-pet-modal-list .wb-pet-card{min-height:262px;padding:7px 4px}.world-boss-pet-modal-list .wb-pet-card img{width:52px;height:52px}.wb-pet-card-badges em{font-size:var(--wb-fs-micro)}
}
@media(max-width:360px){.world-boss-pet-modal-list.wb-pet-grid{grid-template-columns:1fr}.world-boss-pet-modal-list .wb-pet-card{min-height:248px}.world-boss-memorial{min-height:250px}.wb-hall-total{display:none}}
@media(max-height:620px) and (max-width:600px){.world-boss-battle-panel .wb-rank-head{display:none}.world-boss-battle-panel .wb-rank-row{padding:2px 4px}}
@media(prefers-reduced-motion:reduce){.world-boss-ready-prompt,.game-mode-nav button[data-game-mode="worldboss"].ready-required{animation:none!important}}

/* ── 선착순 전리품 동시 개방 게이트 ─────────────────────────────────────
   승리 크레딧 길이가 사람마다 달라(일반 16s / reduced-motion 11.2s) 먼저 끝난 사람이
   먼저 집던 문제를 없앤다. 서버가 정한 개방 시각까지 잠그고, 카운트다운을 함께 보여준다. */
.wb-loot-gate{display:grid;place-items:center;gap:3px;margin-top:9px;padding:10px;border:2px solid #6f5680;background:linear-gradient(120deg,#241a2e,#171020);text-align:center}
.wb-loot-gate b{display:block;color:#e7d6f2;font-size:var(--wb-fs-body);line-height:1.2}
.wb-loot-gate small{display:block;color:#a99ab0;font-size:var(--wb-fs-micro)}
.wb-loot-gate .wb-gate-count{color:#ffe49d;font-size:26px;font-family:var(--wb-font);text-shadow:0 0 12px rgba(255,196,74,.7);animation:wbGateTick .5s steps(2,end) infinite}
.wb-loot-gate[data-open="1"]{border-color:#7ad6a1;background:linear-gradient(120deg,#16281e,#101a15)}
.wb-loot-gate .wb-gate-go{color:#b6ffd7;text-shadow:0 0 12px rgba(122,214,161,.75)}
.wb-loot.is-locked{filter:grayscale(.85) brightness(.75)}
.wb-loot.is-locked small{color:#9b8fa6}
/* ⚠️ 가리개와 공개 카드가 **같은 바닥 높이**를 공유해야 한다 — 다르면 열리는 순간 보드가
   늘어나며 화면이 튀고, 그 흔들림에 손가락이 다른 칸을 누른다(선착순에서는 그게 곧 손해다).
   그래서 값을 뒷면 카드에만 걸지 않고 `.wb-loot` 공통으로 둔다. */
.wb-loot{min-height:78px}
/* 개방 전 뒷면 카드 — 정체는 서버가 지운 상태라 화면에 그릴 것 자체가 없다. */
.wb-loot.is-hidden{border-color:#4a3a54;background:repeating-linear-gradient(45deg,#1a1420,#1a1420 5px,#201829 5px,#201829 10px);cursor:not-allowed}
.wb-loot.is-hidden .wb-loot-face{display:grid;place-items:center;height:34px;margin:0 auto 4px;color:#7d6a8c;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-hero);line-height:1;text-shadow:0 1px 0 #0d0912}
.wb-loot-head{margin-top:12px}
.wb-loot.is-hidden small{margin-top:4px;color:#8b7f95}
/* 아이콘 + 우측 하단 수량 배지 */
.wb-loot-art{position:relative;display:block;width:34px;height:34px;margin:0 auto 4px}
.wb-loot-art img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.wb-loot-art-text{display:grid;place-items:center;border:1px solid #56435f;background:#221a2b;color:var(--wb-ink);font-weight:800;font-size:var(--wb-fs-body);line-height:1;white-space:nowrap;overflow:hidden}
/* 이모지 폴백(생명의가루 ✨)은 그림 대용이라 테두리 없이 크게 — 11px 로 두면 티끌처럼 보인다. */
.wb-loot-art-glyph{display:grid;place-items:center;font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-weight:400;font-size:22px;line-height:1}
.wb-loot-qty{position:absolute;right:-5px;bottom:-4px;padding:1px 3px;border:1px solid #0d0912;background:#f2c86d;color:#241a12;font-family:var(--wb-font);font-weight:900;font-size:var(--wb-fs-small);line-height:1;font-style:normal}
@keyframes wbGateTick{50%{filter:brightness(1.3);transform:scale(1.06)}}
@media(prefers-reduced-motion:reduce){.wb-loot-gate .wb-gate-count{animation:none}}

/* ── 선착순 전리품 전용 화면 ─────────────────────────────────────────────
   페이지의 보상 섹션 위에 얹기만 한다 — 닫아도 아래에서 계속 가져갈 수 있어야
   '갇힌' 느낌이 없다(과거 크레딧 잠김 사고의 교훈). 3D 캔버스는 건드리지 않는다. */
.wb-loot-modal{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;padding:16px;box-sizing:border-box}
.wb-loot-modal[hidden]{display:none}
.wb-loot-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(5,3,8,.86);backdrop-filter:blur(6px);cursor:pointer}
.wb-loot-modal-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(680px,100%);max-height:min(820px,calc(100dvh - 32px));overflow:hidden;border:3px solid #0a0710;background:linear-gradient(158deg,#2a1a36,#120d1a 64%);box-shadow:inset 0 3px 0 #6f4e82,0 18px 60px #000;color:var(--wb-ink)}
.wb-loot-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:2px solid #493657;background:linear-gradient(100deg,#3d2449,#22162a)}
/* 제목·보스명 한 행 — 두 줄로 나누니 보스명이 7px 로 작아져 읽히지 않았다. */
.wb-loot-modal-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:0;color:#fff0c4;font-size:var(--wb-fs-title);line-height:1.25}
/* ⚠️ `font` 축약에 `inherit` 을 family 자리로 넣으면 **선언 전체가 무효**다(전역 키워드는
   shorthand 안에서 못 쓴다). 그래서 10px 의도가 통째로 무시되고 제목 크기(15px)를 상속했다.
   개별 속성으로 적는다 — 보스명은 제목보다 한 단계 작되 충분히 읽히는 13px. */
.wb-loot-modal-title em{color:var(--wb-gold);font-style:normal;font-weight:800;font-size:var(--wb-fs-lead);line-height:1.3}
.wb-loot-modal-meta{display:flex;align-items:center;gap:8px;flex:none}
/* 헤더 높이에 맞춰 크게 — 남은 칸이 이 화면의 긴장감이다. */
.wb-loot-remain{display:flex;align-items:baseline;gap:5px;padding:6px 11px;border:1px solid #6a5379;background:#2b2034;font-family:var(--wb-font);font-weight:800;font-size:var(--wb-fs-hero);line-height:1;white-space:nowrap}
/* 숫자와 '/ 36 남음' 을 **같은 크기**로 — 단위만 작으면 한 덩어리로 안 읽힌다. */
.wb-loot-remain b{font:inherit;color:#ffe49d}
.wb-loot-remain span{font:inherit;color:#c9a86a}
.wb-loot-modal-close{width:38px;height:38px;flex:none;border:2px solid #6c567a;background:#2c2133;color:#fff;font-family:inherit;font-weight:800;font-size:var(--wb-fs-lead);cursor:pointer}
.wb-loot-modal-stage{flex:1;min-height:0;overflow:auto;padding:12px}
/* 카운트다운은 카드 위가 아니라 **화면 상단 중앙**에 뜨는 오버레이다.
   ⚠️ pointer-events:none 이 생명선 — 없으면 개방 순간 카드 클릭을 가로챈다. */
.wb-loot-countdown{position:absolute;z-index:94;inset:0;display:grid;place-items:center;
  align-content:center;gap:2px;pointer-events:none;text-align:center;
  background:radial-gradient(ellipse at center,rgba(10,7,16,.72) 0 42%,rgba(10,7,16,.42) 70%,transparent 100%)}
.wb-loot-countdown[hidden]{display:none}
.wb-loot-countdown b{display:block;color:#e7d6f2;font-size:var(--wb-fs-title);line-height:1.2;
  text-shadow:0 2px 0 #0b0710,0 0 18px rgba(0,0,0,.9)}
.wb-loot-countdown small{display:block;color:#cdbcd8;font-size:var(--wb-fs-body);text-shadow:0 1px 0 #0b0710}
.wb-loot-countdown .wb-gate-count{color:#ffe49d;font-family:var(--wb-font);font-weight:700;font-size:96px;line-height:1;
  text-shadow:0 0 34px rgba(255,196,74,.85),0 4px 0 #2a1a06}
.wb-loot-countdown .wb-gate-go{color:#b6ffd7;font-size:var(--wb-fs-hero);text-shadow:0 0 26px rgba(122,214,161,.9),0 2px 0 #06180f}
/* 가방은 3열 고정 — 칸이 너무 잘아지지 않으면서 36칸이 한눈에 들어온다. */
.wb-loot-modal-list{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:360px){.wb-loot-modal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 개방 순간 카드가 일제히 뒤집힌다 — 인덱스별 지연은 nth-child 로 준다(JS 개입 없음). */
.wb-loot-modal-stage[data-open="1"] .wb-loot{animation:wbLootFlip .42s ease-out both}
.wb-loot-modal-stage[data-open="1"] .wb-loot:nth-child(3n+2){animation-delay:.05s}
.wb-loot-modal-stage[data-open="1"] .wb-loot:nth-child(3n+3){animation-delay:.1s}
@keyframes wbLootFlip{0%{transform:rotateY(90deg) scale(.9);opacity:0}60%{transform:rotateY(-8deg) scale(1.02)}100%{transform:none;opacity:1}}
body.world-boss-loot-modal-open{overflow:hidden}
@media (max-width:520px){.wb-loot-modal{padding:0}.wb-loot-modal-card{width:100%;max-height:100dvh;border-width:0 0 3px}.wb-loot-countdown .wb-gate-count{font-size:72px}.wb-loot-modal-title{font-size:var(--wb-fs-lead)}.wb-loot-modal-title em{font-size:var(--wb-fs-body)}.wb-loot-remain{font-size:var(--wb-fs-title)}}
@media(prefers-reduced-motion:reduce){.wb-loot-modal-stage[data-open="1"] .wb-loot{animation:none}.wb-loot-countdown .wb-gate-count{animation:none}}
.wb-loot-reopen{flex:none;padding:6px 10px;border:1px solid #806791;background:#4a3758;color:#fff;cursor:pointer}
.wb-loot-reopen:hover{border-color:var(--wb-gold);background:#5a4468}

/* ── 모바일 절전(무입력 60초) — 월드보스 화면 ─────────────────────────────
   dungeon.css 와 같은 규칙. 보스전은 참가 중이면 blocker 가 절전을 막으므로, 여기서
   멈추는 것은 로비·명예의전당처럼 전투가 아닌 화면이다. */
body.power-save #worldBossMode *,
body.power-save #worldBossMode *::before,
body.power-save #worldBossMode *::after{animation-play-state:paused!important}

/* ⚠️ 하단 모드 내비는 `#worldBossMode` 의 **형제**라(index.html 1096 vs 1288) 위 규칙에
   걸리지 않는다. 게다가 항상 화면에 떠 있어 어느 모드에서든 돈다 — 보스전 버튼의
   wbBlackFlame/wbBlackEmbers 가 절전 중에도 계속 타던 자리다. */
body.power-save .game-mode-nav *,
body.power-save .game-mode-nav *::before,
body.power-save .game-mode-nav *::after{animation-play-state:paused!important}

/* ── D. 모바일 backdrop-filter 제거 ───────────────────────────────────────
   .world-boss-controls 는 position:sticky + 상시 표시라 매 프레임 배경 스냅샷 + 블러
   합성이 걸린다 — iOS 에서 가장 비싼 CSS 속성 축이다. 원래 배경이 alpha dd(87%)라
   불투명으로 바꿔도 시각차가 거의 없다. 모달·개발도구의 나머지 3곳은 간헐적이라 남겨 둔다. */
@media (pointer: coarse){
  .world-boss-controls{backdrop-filter:none;background:#14101d}
}
