:root{color-scheme:dark;font-family:Inter,Pretendard,Noto Sans KR,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#080a07;color:#fff5db}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#080a07}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button,input,textarea{font:inherit}button{border:0;cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgb(238 185 73 / .46);outline-offset:3px}#app{--arena-gap: 18px;--score-band-height: 134px;--score-panel-left: 14px;--score-panel-width: 260px;--score-rail-width: calc(var(--score-panel-left) + var(--score-panel-width));--drawer-width: min(430px, 100vw);--drawer-live-width: min(340px, calc(100vw - 48px) );position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#080a072e,#030504d6),#080a07}#app.match-live{--drawer-width: var(--drawer-live-width)}.arena-shell{position:fixed;inset:0;display:grid;place-items:center;overflow:hidden;background:#090b08}.arena-shell:before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 50%,rgb(255 211 122 / .06),transparent 42%),linear-gradient(90deg,#0305047a,#03050414 45%,#0305047a),linear-gradient(180deg,#03050414,#03050480);pointer-events:none;transition:background .52s ease,opacity .52s ease}#app.match-live .arena-shell:before{opacity:.24}#app.match-live .arena-shell{place-items:center}#game{position:relative;z-index:0;width:max(100vw,100vh);height:max(100vw,100vh);overflow:hidden;opacity:.68;filter:saturate(1) contrast(1.08) brightness(1.08);transform:scale(1.04);transform-origin:center;transition:width .62s cubic-bezier(.2,.8,.2,1),height .62s cubic-bezier(.2,.8,.2,1),opacity .52s ease,filter .52s ease,transform .7s cubic-bezier(.2,.8,.2,1)}#app.match-live #game{width:min(100vw,100vh);height:min(100vw,100vh);margin-left:0;opacity:1;filter:none;transform:scale(1)}#game canvas{display:block;width:100%!important;height:100%!important;image-rendering:pixelated}.battle-preview{position:fixed;inset:0;z-index:2;overflow:hidden;opacity:.84;pointer-events:none;transition:opacity .42s ease,transform .7s cubic-bezier(.2,.8,.2,1)}#app.match-live .battle-preview{opacity:0;transform:scale(1.08)}.preview-fighter{position:absolute;width:100px;height:100px;background-repeat:no-repeat;background-size:auto 100px;image-rendering:pixelated;transform-origin:center;filter:drop-shadow(0 18px 22px rgb(0 0 0 / .68)) saturate(1.14) brightness(1.12);animation:preview-attack var(--sprite-speed) steps(var(--sprite-steps)) infinite,preview-breathe 1.8s ease-in-out infinite}.preview-knight{--sprite-end: -600px;--sprite-scale: 5.2;--sprite-speed: .84s;--sprite-steps: 6;left:10vw;top:48vh;background-image:url(/assets/characters/knight/Knight-Attack01.png);transform:scale(var(--sprite-scale))}.preview-orc{--sprite-end: -500px;--sprite-scale: 5.35;--sprite-speed: .76s;--sprite-steps: 5;right:9vw;top:46vh;background-image:url(/assets/characters/orc/Orc-Attack01.png);transform:scaleX(-1) scale(var(--sprite-scale))}.preview-wizard{--sprite-end: -500px;--sprite-scale: 4.35;--sprite-speed: .98s;--sprite-steps: 5;left:56vw;top:24vh;background-image:url(/assets/characters/wizard/Wizard-Attack01.png);opacity:.58;transform:scaleX(-1) scale(var(--sprite-scale))}.preview-strike{position:absolute;width:160px;height:5px;border-radius:999px;background:linear-gradient(90deg,transparent,rgb(255 229 156 / .86),transparent);box-shadow:0 0 24px #e3593b80;opacity:0;transform-origin:center;animation:preview-strike .98s ease-in-out infinite}.preview-strike-a{left:38vw;top:54vh;transform:rotate(-18deg)}.preview-strike-b{right:31vw;top:42vh;transform:rotate(22deg);animation-delay:.26s}.intro-stage{position:fixed;inset:0;z-index:5;display:grid;place-items:center;padding:clamp(24px,5vw,56px);pointer-events:none;transition:opacity .42s ease,transform .62s cubic-bezier(.2,.8,.2,1)}#app.match-live .intro-stage{opacity:0;transform:scale(.96)}#app.match-live .intro-content{pointer-events:none}.intro-content{display:grid;justify-items:center;gap:22px;text-align:center;pointer-events:auto;animation:intro-rise .76s cubic-bezier(.2,.8,.2,1) both;transition:transform .56s cubic-bezier(.2,.8,.2,1),opacity .36s ease}#app.options-open:not(.match-live) .intro-content{opacity:.72}.arena-logo{margin:0;color:#fff4d1;font-size:clamp(4rem,16vw,11rem);font-weight:950;letter-spacing:0;line-height:.9;text-shadow:0 2px 0 #ad4d37,0 14px 42px rgb(0 0 0 / .72),0 0 40px rgb(230 173 71 / .28);text-transform:uppercase}.arena-logo .small-text{font-size:.7em;margin-top:.05em}.arena-logo span{display:block}.arena-meta{position:fixed;right:clamp(10px,2vw,18px);bottom:clamp(10px,2vw,18px);z-index:10;display:flex;flex-direction:row;align-items:center;gap:8px;pointer-events:none;transition:opacity .22s ease}.visitor-count,.about-button{display:inline-flex;align-items:center;justify-content:center;min-height:28px;margin:0;border:1px solid rgb(238 185 73 / .22);border-radius:999px;padding:5px 12px;background:#080a07ad;color:#e7c879;font-size:.72rem;font-weight:800;line-height:1;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;transition:background .18s ease,border-color .18s ease,transform .18s ease,opacity .22s ease}.visitor-count{opacity:0;transform:translateY(8px)}#app.match-live .visitor-count{opacity:.86;transform:translateY(0)}.about-button{min-width:72px;color:#ffe8b4;font-weight:900;box-shadow:0 4px 12px #00000038}.about-button:hover{border-color:#eeb9496b;background:#fff6d824;transform:translateY(-1px)}.start-button{min-width:180px;padding:0 30px;text-transform:uppercase}#app.options-open:not(.match-live) .start-button{pointer-events:none;visibility:hidden}.scoreboard{position:fixed;top:clamp(14px,3vw,28px);left:var(--score-panel-left);z-index:3;display:flex;justify-content:flex-start;width:var(--score-panel-width);max-height:calc(100vh - 420px);min-height:64px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgb(238 185 73 / .3) transparent;padding:8px;border:1px solid rgb(238 185 73 / .12);border-radius:8px;background:#04060475;opacity:0;pointer-events:none;transform:translateY(-18px);transition:opacity .42s ease,transform .42s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scoreboard::-webkit-scrollbar{width:4px}.scoreboard::-webkit-scrollbar-track{background:transparent}.scoreboard::-webkit-scrollbar-thumb{border-radius:10px;background:#eeb9494d}#app.match-live .scoreboard{opacity:1;pointer-events:auto;transform:translateY(0)}.score-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.score-side.right{display:none}.team-score{position:relative;display:grid;grid-template-rows:1fr 1px auto;gap:6px;width:100%;min-height:72px;overflow:hidden;border:1px solid rgb(255 244 209 / .08);border-radius:6px;padding:8px 7px;background:#080a0794;color:#fff;font-size:.8rem;font-weight:900;text-align:left;text-shadow:0 1px 1px rgb(0 0 0 / .78);transition:background-color .16s ease,border-color .16s ease,filter .16s ease}.team-score:before{content:"";position:absolute;top:9px;left:8px;width:10px;height:7px;border-radius:1px;background:var(--team-color);box-shadow:0 0 0 1px #000000b8,inset 0 -1px #00000047;opacity:.9;transform:skew(-14deg)}.team-score:hover{border-color:#fff4d129;background:#0c0e0aad;filter:brightness(1.06)}.team-score.is-focused{box-shadow:inset 0 0 0 1px #fff4d1b8,inset 0 0 0 999px #fff4d109}.team-score:disabled{cursor:default;filter:grayscale(.6) brightness(.68)}.team-score:disabled:hover{background:#080a0794}.team-score-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-left:16px;text-overflow:ellipsis;white-space:normal;line-height:1.15}.team-score-rule{width:100%;background:linear-gradient(90deg,var(--team-color) 0 34%,rgb(255 244 209 / .1) 34% 100%);opacity:.68}.team-score-count{justify-self:end;color:#ead9b3;font-size:.68rem;white-space:nowrap}.battle-notice{position:fixed;top:clamp(12px,2vw,20px);left:50%;z-index:5;display:flex;align-items:center;justify-content:center;width:auto;max-width:min(640px,calc(100vw - 40px));min-height:38px;border:1px solid rgb(238 185 73 / .26);border-radius:8px;padding:8px 18px;background:#080a07ad;color:#ffe8b4;font-size:.8rem;font-weight:900;line-height:1.35;text-align:center;text-shadow:1px 1px 2px #000;white-space:nowrap;overflow:hidden;opacity:0;pointer-events:none;transform:translate(-50%,-10px);transition:opacity .26s ease,transform .26s ease;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.battle-notice-message{display:block;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.battle-notice.is-rolling{justify-content:flex-start}.battle-notice-track{display:flex;flex:0 0 auto;gap:var(--battle-notice-roll-gap, 48px);width:max-content;max-width:none;animation:battle-notice-roll var(--battle-notice-roll-duration, 12s) linear infinite;will-change:transform}.battle-notice.is-rolling .battle-notice-message{flex:0 0 auto;max-width:none;overflow:visible;text-overflow:clip}@media(prefers-reduced-motion:reduce){.battle-notice-track{animation:none;transform:none}}#app.match-live .battle-notice.is-visible{opacity:1;transform:translate(-50%)}@media(min-width:961px){#app.match-live .battle-notice{right:auto;left:50%;width:min(420px,72vmin,calc(100vw - var(--drawer-width) - var(--score-rail-width) - 56px));transform:translate(-50%,-10px)}#app.match-live .battle-notice.is-visible{transform:translate(-50%)}#app.match-live.drawer-collapsed .battle-notice{right:auto;width:min(420px,72vmin,calc(100vw - 64px))}}.kill-log{position:fixed;bottom:clamp(14px,3vw,26px);left:var(--score-panel-left);z-index:4;width:min(370px,calc(100vw - 32px));max-height:min(34vh,292px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgb(238 185 73 / .3) transparent;border:1px solid rgb(238 185 73 / .2);border-radius:8px;padding:10px;background:#04060494;opacity:0;pointer-events:none;transform:translateY(16px);transition:opacity .26s ease,transform .26s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.kill-log::-webkit-scrollbar{width:4px}.kill-log::-webkit-scrollbar-track{background:transparent}.kill-log::-webkit-scrollbar-thumb{border-radius:10px;background:#eeb9494d}#app.match-live .kill-log.has-entries{opacity:1;pointer-events:auto;transform:translateY(0)}.kill-log-list{display:flex;flex-direction:column;gap:6px;min-height:0;margin:0;padding:0;list-style:none}.kill-log-item{display:grid;grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);align-items:center;gap:8px;min-height:54px;border:1px solid rgb(255 244 209 / .12);border-radius:6px;padding:7px 9px;background:#080a07bd;box-shadow:inset 0 1px #ffffff0f;animation:kill-log-entry .18s ease both}.kill-log-fighter{display:flex;align-items:center;gap:8px;min-width:0}.kill-log-fighter.killer{border-left:3px solid var(--killer-color);padding-left:6px}.kill-log-fighter.victim{flex-direction:row-reverse;border-right:3px solid var(--victim-color);padding-right:6px;justify-content:end;text-align:right}.kill-log-avatar{position:relative;flex:0 0 auto;width:36px;height:36px;border:1px solid rgb(255 244 209 / .16);border-radius:6px;background-color:#fff6d814;background-position:-24px -16px;background-repeat:no-repeat;background-size:auto 86px;image-rendering:pixelated;box-shadow:inset 0 -10px 18px #00000038}.kill-log-fighter.victim .kill-log-avatar:before,.kill-log-fighter.victim .kill-log-avatar:after{content:"";position:absolute;top:7px;right:1px;width:14px;height:2px;border:1px solid rgb(255 216 212 / .22);border-radius:999px;background:#f24a42;box-shadow:0 0 0 1px #300403b3,0 0 5px #e3362e99;transform-origin:center}.kill-log-fighter.victim .kill-log-avatar:before{transform:rotate(45deg)}.kill-log-fighter.victim .kill-log-avatar:after{transform:rotate(-45deg)}.kill-log-copy{display:grid;gap:2px;min-width:0}.kill-log-team,.kill-log-member{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kill-log-team{min-width:0;color:#fff7df;font-size:.78rem;font-weight:900;text-shadow:1px 1px 2px #000}.kill-log-member{flex:0 0 auto;color:#ead8ad;font-size:.72rem;font-weight:800}.kill-log-action{display:grid;justify-items:center;gap:2px;min-width:0}.kill-log-action-text{color:#ffdc93;font-size:.68rem;font-weight:950;line-height:1}.kill-log-weapon{position:relative;display:block;width:28px;height:28px;place-self:center;border:1px solid rgb(238 185 73 / .28);border-radius:999px;background:#fff6d814;box-shadow:0 0 16px #e3593b29}.kill-log-weapon:before,.kill-log-weapon:after{content:"";position:absolute;top:50%;left:50%;width:18px;height:3px;border-radius:999px;background:linear-gradient(90deg,#ffe8b4 0 70%,#b93c2f 70% 100%);box-shadow:0 0 8px #ffe2a64d;transform-origin:center}.kill-log-weapon:before{transform:translate(-50%,-50%) rotate(42deg)}.kill-log-weapon:after{transform:translate(-50%,-50%) rotate(-42deg)}.victory-celebration{position:fixed;z-index:9;display:grid;overflow:hidden;place-items:center;inset:0;background:#04060433;isolation:isolate;opacity:1;pointer-events:auto;transform:scale(1);transition:opacity .22s ease,transform .22s ease}.victory-celebration.is-leaving{opacity:0;transform:scale(.98)}.victory-celebration:before{content:"";position:absolute;z-index:-1;width:min(122vmin,1240px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(255 233 166 / .18) 0 18%,rgb(227 178 79 / .12) 31%,transparent 66%);animation:victory-glow 1.8s ease-out both}.victory-celebration.is-draw:before{background:radial-gradient(circle,rgb(255 247 223 / .16) 0 18%,rgb(227 178 79 / .1) 31%,transparent 62%)}.victory-rays{position:absolute;z-index:0;width:min(112vmin,1120px);aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(from -4deg,rgb(255 233 166 / .18) 0 8deg,transparent 8deg 18deg);opacity:.54;-webkit-mask-image:radial-gradient(circle,#000 0 18%,transparent 66%);mask-image:radial-gradient(circle,#000 0 18%,transparent 66%);animation:victory-rays-in 1.1s ease-out both,victory-rays-turn 11s linear infinite}.victory-celebration.is-draw .victory-rays{opacity:.22}.victory-confetti{position:absolute;z-index:1;inset:0}.victory-confetti-piece{position:absolute;top:50%;left:50%;display:block;width:clamp(6px,.8vw,11px);height:clamp(10px,1.2vw,18px);border-radius:8px;background:var(--confetti-color);box-shadow:0 0 12px #ffe6a638;opacity:0;transform:translate(-50%,-50%) rotate(var(--confetti-tilt)) scale(.3);animation:victory-confetti-burst var(--confetti-duration) cubic-bezier(.15,.84,.35,1) var(--confetti-delay) both}.victory-confetti-piece:nth-child(3n){width:clamp(10px,1vw,15px);height:clamp(6px,.72vw,10px);border-radius:2px}.victory-banner{position:relative;z-index:2;display:grid;width:min(calc(100vw - 36px),760px);min-height:clamp(108px,18vw,170px);overflow:hidden;place-items:center;border:2px solid #f1c45d;border-radius:8px;padding:clamp(1.25rem,3.8vw,2rem) clamp(1.3rem,5.4vw,3.4rem);background:linear-gradient(135deg,#12150dfa,#030504eb),#040604e6;color:#fff7df;font-size:clamp(1.65rem,5vw,3rem);font-weight:950;letter-spacing:0;line-height:1.12;text-align:center;text-wrap:balance;text-shadow:0 2px 0 rgb(55 36 8 / .56),0 0 24px rgb(255 226 153 / .28);box-shadow:0 0 0 1px #ffedbb33 inset,0 0 42px #e3b24f70,0 24px 90px #00000094;animation:banner-in .64s cubic-bezier(.16,.9,.25,1.2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.victory-banner:before{content:"";position:absolute;inset:-40% auto -40% -36%;width:28%;background:linear-gradient(90deg,transparent,rgb(255 248 223 / .6),transparent);transform:skew(-18deg);animation:victory-banner-sheen 1s .28s ease-out both}.victory-banner:after{content:"";position:absolute;inset:10px;border:1px solid rgb(255 225 151 / .24);border-radius:5px}.victory-banner-message{position:relative;z-index:1;display:block;max-width:100%;overflow-wrap:anywhere;animation:victory-message-pulse .72s 80ms ease-out both}.victory-celebration.is-draw .victory-banner{border-color:#d8c28d;box-shadow:0 0 0 1px #ffedbb24 inset,0 0 28px #e3b24f3d,0 24px 90px #00000085}#app.match-paused .arena-shell:after{content:"일시정지";position:fixed;top:50%;left:50%;z-index:6;border:1px solid rgb(238 185 73 / .34);border-radius:8px;padding:14px 26px;background:#050705c2;color:#ffe8b4;font-size:clamp(1.3rem,4vw,2rem);font-weight:950;transform:translate(-50%,-50%);box-shadow:0 18px 60px #00000075;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.match-status{position:fixed;bottom:clamp(14px,3vw,26px);left:50%;z-index:4;width:min(980px,calc(100vw - 32px));min-height:48px;overflow:hidden;border:1px solid rgb(238 185 73 / .28);border-radius:8px;padding:13px 0;background:#080a07bd;color:#ffe2a6;font-weight:900;opacity:0;pointer-events:none;transform:translate(-50%,calc(100% + 28px));transition:opacity .42s ease,transform .42s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#app.status-active:not(.match-live) .match-status{opacity:1;transform:translate(-50%)}#app.match-live .match-status{display:none}@media(min-width:961px){#app.match-live .match-status{left:calc((100vw - var(--drawer-width)) / 2);width:min(760px,calc(100vw - var(--drawer-width) - 32px))}#app.match-live.drawer-collapsed .match-status{left:50%;width:min(980px,calc(100vw - 32px))}}.status-track{display:flex;width:max-content;min-width:200%;gap:64px;animation:status-marquee 22s linear infinite}.status-track span{flex:0 0 auto;min-width:calc(50vw - 32px);padding-left:28px;white-space:nowrap}.start-button,form button[type=submit],.pause-button,.restart-button{min-height:52px;border-radius:8px;background:linear-gradient(180deg,#e56443,#b93c2f);color:#fff7df;font-weight:900;box-shadow:0 18px 44px #0000005c,inset 0 1px #fff3;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.start-button:hover,form button[type=submit]:hover,.pause-button:hover,.restart-button:hover{background:linear-gradient(180deg,#f0754f,#c84636);transform:translateY(-1px);box-shadow:0 22px 52px #0000006b,inset 0 1px #ffffff3d}.pause-button,.restart-button{display:none;border:1px solid rgb(238 185 73 / .3);background:#fff6d814;color:#ffe8b4}.pause-button:hover,.restart-button:hover{background:#fff6d824}#app.match-live .pause-button,#app.match-live .restart-button{display:block}#app.match-live .match-actions{grid-template-columns:1fr 1fr}#app.match-live .match-actions button[type=submit]{grid-column:1 / -1}#app.match-paused .pause-button{background:linear-gradient(180deg,#e3b24f,#9a6c24);color:#120f08}#app.match-ended .pause-button{display:none}.drawer-scrim{position:fixed;inset:0;z-index:6;background:#0405046b;opacity:0;pointer-events:none;transition:opacity .32s ease}#app.options-open .drawer-scrim{opacity:1;pointer-events:auto}#app.match-live .drawer-scrim{opacity:0;pointer-events:none}.drawer-toggle{display:none;min-height:40px;border:1px solid rgb(238 185 73 / .28);border-radius:8px;padding:0 12px;background:#0c0f0bd6;color:#ffe8b4;font-size:.82rem;font-weight:900;box-shadow:0 16px 38px #0000005c;transition:background .18s ease,transform .18s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.drawer-toggle:hover{background:#fff6d824;transform:translateY(-1px)}#app.match-live .drawer-toggle{display:block}.fighter-entry{position:fixed;top:0;right:0;z-index:7;display:grid;align-content:start;gap:24px;width:var(--drawer-width);height:100vh;overflow-y:auto;border-left:1px solid rgb(239 199 103 / .22);padding:clamp(22px,4vw,34px);background:linear-gradient(180deg,#1d2116f0,#0d100cf5),#11140f;box-shadow:-28px 0 80px #00000085;transform:translate(104%);transition:opacity .26s ease,transform .52s cubic-bezier(.2,.8,.2,1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}#app.options-open .fighter-entry{transform:translate(0)}#app.match-live .fighter-entry{top:24px;right:24px;height:auto;max-height:calc(100vh - 48px);gap:16px;border:1px solid rgb(239 199 103 / .22);border-radius:8px;padding:20px;transform:translate(0)}#app.match-live.drawer-collapsed .fighter-entry{width:auto;min-width:0;overflow:visible;border-color:transparent;padding:0;background:transparent;box-shadow:none;opacity:1;pointer-events:auto;transform:translate(0)}#app.match-live .drawer-close{display:none}#app.match-live .fighter-entry h2{font-size:2rem}#app.match-live .fighter-entry textarea{min-height:190px}#app.match-live .fighter-entry fieldset{padding:12px}#app.match-live.drawer-collapsed .entry-copy,#app.match-live.drawer-collapsed .fighter-entry form{display:none}#app.match-live.drawer-collapsed .drawer-header{justify-content:end}.drawer-header{display:flex;align-items:start;justify-content:space-between;gap:16px}.drawer-header-controls{display:flex;align-items:center;gap:8px}.entry-copy{display:grid;gap:8px}.eyebrow{margin:0;color:#e3b24f;font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}h2{margin:0;color:#fff3d2;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.05;letter-spacing:0}.drawer-close{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border:1px solid rgb(238 185 73 / .22);border-radius:8px;background:#fff6d814;color:#f8deb0;font-weight:900}.drawer-close:hover{background:#fff6d824}.about-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:clamp(16px,4vw,34px);background:#030504a8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.about-backdrop[hidden]{display:none}.about-dialog{display:grid;grid-template-rows:auto auto minmax(0,1fr);width:min(560px,calc(100vw - 32px));max-height:min(760px,calc(100svh - 32px));overflow:hidden;border:1px solid rgb(239 199 103 / .28);border-radius:8px;background:linear-gradient(180deg,#1d2116fa,#0a0d09fa),#11140f;box-shadow:0 24px 100px #0000009e,inset 0 1px #ffffff0f;outline:none}.about-header{display:flex;align-items:start;justify-content:space-between;gap:16px;padding:clamp(20px,4vw,28px) clamp(20px,4vw,30px) 14px}.about-close{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border:1px solid rgb(238 185 73 / .22);border-radius:8px;background:#fff6d814;color:#f8deb0;font-weight:900}.about-close:hover{background:#fff6d824}.about-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:0 clamp(20px,4vw,30px) 14px;border-bottom:1px solid rgb(238 185 73 / .16)}.about-tab{min-width:0;min-height:42px;border:1px solid transparent;border-radius:6px;padding:8px 10px;background:#fff6d80f;color:#ead8ad;font-size:.86rem;font-weight:900;line-height:1.2}.about-tab[aria-selected=true]{border-color:#eeb9495c;background:#323822;color:#fff7df}.about-panel{min-height:0;overflow:auto;padding:clamp(18px,4vw,26px) clamp(20px,4vw,30px) clamp(22px,5vw,34px)}.about-fields{display:grid;gap:0;margin:0}.about-field-row{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;min-height:50px;border-bottom:1px solid rgb(238 185 73 / .14)}.about-field-row:first-child{border-top:1px solid rgb(238 185 73 / .14)}.about-field-row dt{color:#e3b24f;font-size:.78rem;font-weight:950;text-transform:uppercase}.about-field-row dd{min-width:0;margin:0;color:#fff7df;font-weight:800;overflow-wrap:anywhere}.about-field-row a,.about-markdown a{color:#85dcc7;text-decoration-color:#85dcc76b;text-underline-offset:3px}.about-markdown{display:grid;gap:12px;color:#ead8ad;font-size:.92rem;font-weight:600;line-height:1.56}.about-markdown :is(h3,h4,h5,h6,p,ul,blockquote){margin:0}.about-markdown h3,.about-markdown h4,.about-markdown h5,.about-markdown h6{color:#fff3d2;font-size:1rem;line-height:1.3}.about-markdown blockquote{border-left:3px solid rgb(238 185 73 / .36);padding:4px 0 4px 16px;color:#c4b693;font-style:italic}.about-markdown hr{margin:8px 0;border:0;border-top:1px solid rgb(238 185 73 / .16)}.about-markdown code{border:1px solid rgb(238 185 73 / .14);border-radius:4px;padding:2px 5px;background:#fff6d814;color:#f1c761;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88em}.about-markdown li{line-height:1.5}.about-markdown li strong{color:#fff3d2}.about-markdown ul{display:grid;gap:8px;padding-left:1.2rem}.about-empty{color:#bfae83}form{display:grid;gap:16px}.match-actions{display:grid;gap:10px}fieldset{display:grid;gap:10px;min-width:0;margin:0;border:1px solid rgb(238 185 73 / .22);border-radius:8px;padding:14px;background:#05070542}legend{padding:0 6px;color:#e3b24f;font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}label{color:#ead8ad;font-size:.92rem}input:not([type=range]):not([type=radio]),textarea{min-height:48px;border:1px solid rgb(238 185 73 / .28);border-radius:8px;padding:0 14px;background:#232719;color:#fff7df;outline:none}textarea{min-height:258px;resize:vertical;padding-block:12px;line-height:1.45}textarea[aria-invalid=true]{border-color:#d9a628;box-shadow:0 0 0 1px #d9a62857}.player-names-warning{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 9px;margin:0;border:1px solid rgb(219 168 45 / .72);border-radius:8px;padding:10px;background:linear-gradient(135deg,#584311b3,#2b2513eb);box-shadow:inset 3px 0 #dba82d;line-height:1.35}.player-names-warning[hidden]{display:none}.player-names-warning__badge{grid-row:span 2;align-self:start;color:#f4bd37;font-size:1.2rem;font-weight:900;line-height:1}.player-names-warning__title{color:#ffd565;font-size:.92rem;font-weight:900}.player-names-warning__detail{grid-column:2;margin:0;color:#f1dfaa;font-size:.82rem;font-weight:500}.player-names-warning__count{color:#ffd04f;font-size:1rem;font-weight:900}.player-names-warning__limit{color:#f7e0a0;font-size:.94rem;font-weight:900}.player-names-warning__reason{grid-column:1 / -1;margin:5px 0 0;border-top:1px solid rgb(219 168 45 / .25);padding-top:7px;color:#d7c489;font-size:.76rem}input[type=range]{width:100%;accent-color:#e3b24f}.spawn-placement-field{display:grid;gap:8px}.spawn-placement-label{color:#ead8ad;font-size:.92rem}.spawn-placement-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:0;border:1px solid rgb(238 185 73 / .2);border-radius:8px;padding:4px;background:#1d2116}.spawn-placement-option{position:relative;min-width:0}.spawn-placement-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.spawn-placement-option span{display:grid;min-height:44px;place-items:center;border:1px solid transparent;border-radius:6px;padding:8px;color:#ead8ad;text-align:center;font-size:.86rem;font-weight:900;line-height:1.25;cursor:pointer}.spawn-placement-option input:checked+span{border-color:#eeb9495c;background:#323822;color:#fff7df}.spawn-placement-option input:focus-visible+span{outline:2px solid #f1c761;outline-offset:-2px}@keyframes intro-rise{0%{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes preview-attack{to{background-position-x:var(--sprite-end)}}@keyframes preview-breathe{0%,to{margin-top:0}50%{margin-top:-8px}}@keyframes preview-strike{0%,58%,to{opacity:0}64%,76%{opacity:.86}}@keyframes status-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes battle-notice-roll{0%{transform:translate(0)}to{transform:translate(calc(-1 * (var(--battle-notice-message-width) + var(--battle-notice-roll-gap))))}}@keyframes kill-log-entry{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes banner-in{0%{opacity:0;transform:translateY(18px) scale(.78)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes victory-banner-sheen{0%{opacity:0;transform:translate(0) skew(-18deg)}18%{opacity:1}to{opacity:0;transform:translate(560%) skew(-18deg)}}@keyframes victory-confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--confetti-tilt)) scale(.3)}12%{opacity:1}74%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--confetti-x)),calc(-50% + var(--confetti-y))) rotate(calc(var(--confetti-tilt) + var(--confetti-spin))) scale(1)}}@keyframes victory-glow{0%{opacity:0;transform:scale(.58)}35%{opacity:1}to{opacity:.8;transform:scale(1)}}@keyframes victory-rays-in{0%{transform:scale(.56)}to{transform:scale(1)}}@keyframes victory-rays-turn{to{rotate:360deg}}@keyframes victory-message-pulse{0%{opacity:.72;transform:scale(.88)}58%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.victory-banner,.victory-banner:before,.victory-banner-message,.victory-celebration:before,.victory-confetti-piece,.victory-rays{animation-duration:1ms;animation-iteration-count:1}}@media(max-width:960px){body{overflow:hidden}#app{--arena-gap: 0px;--mobile-game-size: min(100vw, calc(100svh - var(--score-band-height)));--mobile-kill-log-top: calc(var(--score-band-height) + var(--mobile-game-size) + 10px);--mobile-options-button-width: 54px;--mobile-options-gap: 8px;--mobile-team-card-width: clamp(108px, calc((100vw - 38px) / 3), 124px);--mobile-visitor-space: calc(104px + env(safe-area-inset-bottom)) ;--score-band-height: 132px;--score-panel-left: 10px;--score-panel-width: calc(100vw - 20px) ;--score-rail-width: 0px}#app.match-live .arena-shell{place-items:start center}#app.match-live #game{width:var(--mobile-game-size);height:var(--mobile-game-size);margin-top:var(--score-band-height);margin-left:0}.intro-stage{padding:20px}.arena-logo{font-size:clamp(3.8rem,22vw,7rem)}.fighter-entry{width:100vw;padding:22px}#app.match-live .fighter-entry{top:calc(10px + env(safe-area-inset-top));right:10px;left:10px;width:auto;max-height:calc(100svh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));gap:10px;padding:12px}#app.match-live.drawer-collapsed .fighter-entry{top:calc(22px + env(safe-area-inset-top));right:10px;left:auto;width:auto}#app.match-live .fighter-entry h2{font-size:clamp(1.45rem,7vw,1.8rem)}#app.match-live .fighter-entry textarea{height:112px;min-height:112px;resize:none}#app.match-live .fighter-entry fieldset{gap:7px;padding:9px}#app.match-live .fighter-entry form{gap:10px}#app.match-live .entry-copy{gap:4px}#app.match-live .eyebrow{font-size:.68rem}#app.match-live label,#app.match-live .spawn-placement-label{font-size:.82rem}#app.match-live input:not([type=range]):not([type=radio]),#app.match-live textarea{min-height:40px;padding-inline:10px}#app.match-live textarea{padding-block:9px}#app.match-live .spawn-placement-option span{min-height:36px;padding:6px;font-size:.76rem}#app.match-live .match-actions{gap:8px}#app.match-live .match-actions button{min-height:44px}#app.match-live .drawer-toggle{min-width:116px}#app.match-live.drawer-collapsed .drawer-toggle{width:var(--mobile-options-button-width);min-width:var(--mobile-options-button-width);padding-inline:6px;font-size:0}#app.match-live.drawer-collapsed .drawer-toggle:before{content:"옵션";font-size:.78rem;line-height:1}.battle-preview{opacity:.62}.preview-knight{left:-8vw;top:52vh}.preview-orc{right:-9vw;top:49vh}.preview-wizard{left:48vw;top:21vh}.scoreboard{align-items:flex-start;top:10px;left:var(--score-panel-left);width:var(--score-panel-width);max-height:calc(var(--score-band-height) - 12px);overflow-x:auto;overflow-y:hidden;padding:9px min(148px,38vw) 9px 9px;scrollbar-color:rgb(238 185 73 / .38) transparent;scrollbar-width:thin;touch-action:pan-x}#app.match-live.drawer-collapsed .scoreboard{width:calc(100vw - 20px - var(--mobile-options-button-width) - var(--mobile-options-gap));padding-right:9px}.score-side{display:grid;grid-template-columns:none;grid-auto-columns:var(--mobile-team-card-width);grid-auto-flow:column;grid-template-rows:repeat(2,48px);gap:5px 5px}.scoreboard::-webkit-scrollbar{height:4px}.scoreboard::-webkit-scrollbar-track{background:transparent}.scoreboard::-webkit-scrollbar-thumb{border-radius:999px;background:#eeb94961}.team-score{width:auto;min-height:48px;height:48px;gap:3px;padding:5px 6px;font-size:.66rem;grid-template-rows:1fr 1px auto;align-content:center}.team-score:before{top:6px;left:6px;width:8px;height:6px}.team-score-name{padding-left:13px}.team-score-count{font-size:.64rem}.team-score.is-focused{box-shadow:inset 0 0 0 1px #fff4d1b8,inset 0 0 0 999px #fff4d109}.battle-notice{top:calc(var(--score-band-height) + 8px);right:24px;left:24px;width:auto;padding-inline:12px;font-size:.76rem;transform:translateY(-10px)}#app.match-live .battle-notice.is-visible{transform:translateY(0)}.kill-log{top:var(--mobile-kill-log-top);bottom:auto;left:10px;width:calc(100vw - 20px);max-height:calc(100svh - var(--mobile-kill-log-top) - var(--mobile-visitor-space));padding:8px}#app.match-live .victory-celebration{padding:var(--score-band-height) 14px min(30svh,230px)}.victory-banner{width:min(calc(100vw - 48px),520px);min-height:92px;padding:1rem 1.1rem;font-size:clamp(1.35rem,7vw,2rem)}.match-status{bottom:10px;width:calc(100vw - 20px)}.arena-meta{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:10;gap:8px;opacity:1;pointer-events:auto}.visitor-count{font-size:.68rem}.about-button{min-width:68px;min-height:26px;font-size:.68rem}.about-backdrop{align-items:end;padding:12px}.about-dialog{width:100%;max-height:calc(100svh - 24px)}.about-header{padding:18px 18px 12px}.about-tabs{padding:0 18px 12px}.about-panel{padding:16px 18px 22px}.about-field-row{grid-template-columns:78px minmax(0,1fr);min-height:48px;gap:10px}}
