@font-face{font-family:EB Garamond;src:url("./EBGaramond-latin-6O3BRIMA.woff2") format("woff2");font-weight:400 800;font-display:swap}:root{--deep: #103b44;--pearl: #fff0ce;--foam: #c3dfd9;--you: #6ff7ff;--rival: #ffb629;--gold: #f2c779;--ground: #082c35ed;--display: "EB Garamond", Georgia, serif;--body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{background:var(--deep);color:var(--pearl);touch-action:none;-webkit-user-select:none;user-select:none;font:15px var(--body)}::selection{background:var(--gold);color:var(--deep)}[hidden]{display:none!important}button,input,select{font:inherit}button{cursor:pointer;color:inherit;touch-action:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--you);outline-offset:4px}button:disabled{opacity:.5;cursor:default}button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}input{caret-color:var(--you);-webkit-user-select:text;user-select:text}input::placeholder{color:var(--foam)}#arena{position:fixed;inset:0;width:100%;height:100%;display:block}#app{position:fixed;inset:0;pointer-events:none}#app button,#app input,#app select{pointer-events:auto}h1,h2,p{margin:0}h1,h2{font-family:var(--display);font-weight:400}h1{font-size:clamp(64px,7vw,96px);line-height:.88;letter-spacing:.025em;margin:0 0 25px;text-shadow:0 3px 22px #0006}h2{font-size:clamp(36px,4vw,58px);line-height:1.04;text-wrap:balance;margin-bottom:20px}.menu{position:fixed;inset:0;display:flex;align-items:center;background:linear-gradient(90deg,#082f3cf0 0%,#0c3742cc 23%,#0c374229 42%,transparent 70%)}.menu-content{width:min(380px,36vw);margin-left:max(6.5vw,env(safe-area-inset-left));padding:26px 0;pointer-events:auto}.intro{font-family:var(--display);font-size:25px;color:var(--foam);margin-bottom:30px}.champion-picker{display:flex;gap:16px;margin:20px 0 22px}.champion-choice{position:relative;min-height:52px;padding:0 0 10px;border:0;background:none;text-align:left;opacity:.65}.champion-choice span{display:block;font:24px var(--display)}.champion-choice small{display:block;font:11px var(--body);color:var(--foam);margin-top:4px}.champion-choice[aria-pressed=true]{opacity:1}.champion-choice[aria-pressed=true]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--you)}.champion-choice:hover{opacity:1}.difficulty{display:flex;gap:5px;margin-bottom:22px}.difficulty button{padding:9px 10px;min-height:44px;white-space:nowrap;border:1px solid #b9ddd359;background:#103b4466;font-size:12px;border-radius:24px}.difficulty button[aria-pressed=true]{background:var(--foam);color:var(--deep);border-color:var(--foam)}.primary,.secondary{min-height:48px;display:flex;align-items:center;justify-content:center;gap:16px;border:1px solid transparent;border-radius:3px;padding:13px 22px;font-size:15px;font-weight:600;transition:background .14s,transform .14s}.primary{background:var(--gold);color:var(--deep);box-shadow:0 8px 22px #0003}.primary:hover{background:#ffe0a6;transform:translateY(-1px)}.primary:active{transform:translateY(1px)}.secondary{background:#103b44c4;border-color:#b9ddd370;color:var(--pearl)}.secondary:hover{background:#24606be8;border-color:var(--foam)}#dive{width:100%;justify-content:space-between;margin-bottom:10px}#friend,#create{width:100%}.text-button{min-height:44px;display:block;padding:12px 0;background:none;border:0;color:var(--foam);text-decoration:underline;text-decoration-color:#b9ddd370;text-underline-offset:5px}.text-button:hover{color:var(--pearl)}.menu-controls{color:var(--foam);font-size:11px;line-height:2;margin-top:25px}kbd{font:11px var(--body);border:1px solid #b9ddd35c;border-radius:3px;padding:2px 4px;white-space:nowrap}.touch-copy{display:none}.world-caption{position:absolute;bottom:30px;right:38px;text-align:right;font:23px var(--display);line-height:1.35;text-shadow:0 2px 10px #000b}.world-caption span{font:12px var(--body);color:var(--foam)}#lobby-status{color:var(--foam);line-height:1.5}.join-row,.copy-row{display:flex;gap:8px;margin-top:12px}.join-row input,.copy-row input{flex:1;min-width:0;width:0;border:1px solid #b9ddd370;background:#103b44d6;color:var(--pearl);padding:10px 12px;border-radius:3px;font-size:16px}#room-code{text-transform:uppercase;letter-spacing:.1em}#invite-code{display:block;font:52px var(--display);letter-spacing:.12em;color:var(--gold);margin:20px 0}.copy-row .secondary{padding:10px}#hud{position:fixed;top:max(22px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:min(83%,1040px);display:flex;align-items:flex-start;gap:24px;text-shadow:0 2px 8px #0009}.fighter-health{flex:1;min-width:0;max-width:410px;padding:8px 12px;background:var(--ground);border-radius:3px}.fighter-name{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px}.fighter-name>span{font:25px var(--display)}.fighter-name small{font-size:11px;color:var(--foam)}.health-track{height:9px;position:relative;overflow:hidden;background:#011d28}.health-fill,.health-ghost{position:absolute;inset:0;width:100%;height:100%;transform-origin:left;transition:transform .08s linear;background:var(--you)}.health-ghost{background:var(--pearl);transition:transform .4s .3s ease-out}.rival .health-fill{background:var(--rival)}.rival .health-fill,.rival .health-ghost{transform-origin:right}.health-bottom{display:flex;justify-content:space-between;align-items:center;height:20px;padding-top:6px;color:var(--you);font-size:10px}.rival .health-bottom{color:var(--rival)}.win-pips,.dodge-pips{display:flex;gap:6px}.win-pips i{display:block;width:8px;height:8px;border:1px solid currentColor;border-radius:50%}.win-pips i.on{background:currentColor}.round-center{width:108px;text-align:center;flex-shrink:0;padding:4px;background:var(--ground);border-radius:3px}#timer{display:block;font:40px/1.1 var(--display);font-variant-numeric:tabular-nums}#timer.tide{color:var(--rival);font-size:30px;padding:5px 0}#connection{display:block;color:var(--foam);font-size:9px;line-height:1.5;white-space:nowrap}.icon-button{position:fixed;z-index:30;top:max(22px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));width:44px;height:44px;border:1px solid #b9ddd36e;border-radius:50%;padding:10px;background:var(--ground);display:grid;place-items:center}.icon-button:hover{background:#24606b}#banner{position:fixed;z-index:8;left:50%;top:35%;transform:translate(-50%,-50%);text-align:center;opacity:0;pointer-events:none;text-shadow:0 3px 20px #000b;max-width:86vw}#banner strong{display:block;font:900 clamp(38px,5.4vw,76px) / 1 var(--display);text-transform:uppercase;text-wrap:balance}#banner small{display:block;font-size:13px;letter-spacing:.08em;margin-top:12px}#banner.show{animation:banner-pop 1.5s cubic-bezier(.16,1,.3,1) both}#banner.combat-cue{top:19%;padding:9px 18px;background:#082c35dc;border-bottom:2px solid var(--you);border-radius:3px}#banner.combat-cue strong{font-size:clamp(25px,3vw,38px)}#banner.combat-cue small{margin-top:6px;font-size:11px}@keyframes combat-cue-pop{0%{opacity:0;transform:translate(-50%) scale(1.12)}12%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.96)}}@keyframes banner-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(1.35)}12%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-58%) scale(.98)}}#teaching,#desktop-controls{position:fixed;left:50%;transform:translate(-50%);padding:8px 12px;border-radius:3px;background:var(--ground);color:var(--foam);font-size:11px;white-space:nowrap}#teaching{bottom:57px}#desktop-controls{display:flex;align-items:center;gap:8px;bottom:20px;left:max(24px,env(safe-area-inset-left));transform:none}#desktop-controls>span{opacity:.5}#touch-controls{display:none;position:fixed;inset:0;z-index:10;pointer-events:none}#stick-zone{position:absolute;left:0;bottom:0;width:46%;height:65%;pointer-events:auto;touch-action:none}#stick{position:fixed;left:max(100px,env(safe-area-inset-left));top:calc(100% - 95px);width:112px;height:112px;transform:translate(-50%,-50%);border:1px solid #c3dfd95e;border-radius:50%;background:#082c353f;pointer-events:none}#stick.engaged{border-color:var(--you);background:#082c356b}#nub{position:absolute;left:38px;top:38px;width:36px;height:36px;border:1px solid #d5f7ee9f;border-radius:50%;background:#b9ddd352}#stick>span{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:10px;color:var(--foam)}#touch-controls button{position:absolute;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid #b9ddd39c;border-radius:50%;background:#082c35d6;color:var(--pearl);overflow:hidden;touch-action:none;box-shadow:0 5px 16px #0004}#touch-controls button>svg,#touch-controls button>span,#touch-controls button>small{position:relative;z-index:2}#touch-controls button>span{font-size:12px}#touch-controls button>small{font-size:9px;color:var(--foam);line-height:1.4}#touch-controls button.pressed{background:#215b63;border-color:var(--you)}#strike{width:96px;height:96px;right:max(27px,env(safe-area-inset-right));bottom:max(23px,env(safe-area-inset-bottom))}#strike svg{width:31px;height:31px}#dodge{width:72px;height:72px;right:max(139px,calc(env(safe-area-inset-right) + 112px));bottom:max(38px,env(safe-area-inset-bottom))}#skill{width:68px;height:68px;right:max(116px,calc(env(safe-area-inset-right) + 89px));bottom:max(129px,calc(env(safe-area-inset-bottom) + 106px))}#touch-controls .counter{border:2px solid var(--pearl);background:#286d75}#touch-controls #strike.counter{color:var(--you)}.charge-track,.ultimate-track{position:absolute;bottom:10px;width:46px;height:3px;background:#b9ddd34d;z-index:3;overflow:hidden}.charge-track>i,.ultimate-track>i{display:block;width:0;height:100%;background:var(--you)}.ultimate-track{width:33px;bottom:8px;height:2px}.dodge-pips{margin-top:5px}.dodge-pips i{width:5px;height:5px;background:var(--you);border:1px solid var(--you);border-radius:50%}.dodge-pips i.empty{background:transparent;opacity:.45}.refill-veil{position:absolute;bottom:0;left:0;right:0;background:#061f2f99;height:0;pointer-events:none}.cooldown-sweep{position:absolute;inset:0;background:conic-gradient(#061f2fbb var(--cooldown, 0deg),transparent 0);pointer-events:none}#touch-controls #skill.ultimate-ready{background:var(--pearl);color:var(--deep);border-color:var(--you)}#skill.ultimate-ready small{color:var(--deep)}#cancel{position:absolute;right:max(236px,calc(env(safe-area-inset-right) + 209px));bottom:104px;border:1px solid #ffd6ca;border-radius:50%;width:76px;height:76px;display:none;align-items:center;justify-content:center;background:#472b34e8;color:#ffe8de;font-size:11px}#cancel.active{display:flex}#cancel.targeted{background:#a04548;border:2px solid var(--pearl)}#result{position:fixed;inset:0;display:flex;justify-content:flex-end;align-items:center;background:linear-gradient(270deg,#082f3cf5 0%,#0c3742e3 28%,#0c374255 49%,transparent 70%);pointer-events:auto}.result-content{width:min(360px,37vw);margin-right:max(6vw,env(safe-area-inset-right));padding:24px 0}#result-title{font-size:clamp(46px,5vw,64px)}#result-cause{color:var(--foam);font-size:14px;line-height:1.5}#series{font:44px var(--display);color:var(--gold);margin:18px 0}#recap{width:100%;margin-bottom:14px;border-collapse:collapse;color:var(--foam);font-size:13px;font-variant-numeric:tabular-nums}#recap th,#recap td{padding:3px 0;font-weight:400;text-align:right}#recap th[scope=row]{text-align:left}#recap thead th{font-size:11px;opacity:.75}#recap thead th:nth-child(2),#recap td:nth-of-type(1){color:var(--you)}#recap thead th:nth-child(3),#recap td:nth-of-type(2){color:var(--rival)}#recap tbody tr+tr{border-top:1px solid #b9ddd31f}#result-tip{line-height:1.6;color:var(--foam);font-size:14px;margin:14px 0 12px}#again{width:100%}.result-picker{margin:14px 0 6px}.result-picker .champion-choice{min-height:44px;display:flex;align-items:center;padding-bottom:5px}.result-picker .champion-choice span{font-size:23px}.result-picker .champion-choice small{display:none}#rematch-status{font-size:12px;color:var(--you);line-height:1.5}#pause{position:fixed;inset:0;z-index:40;display:grid;place-content:center;background:#041f2bd9;pointer-events:auto}.pause-content{width:300px}.pause-content h2{font-size:48px}.pause-content label{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;color:var(--foam)}.pause-content input[type=range]{width:150px;accent-color:var(--you)}.pause-content select{background:var(--deep);color:var(--pearl);border:1px solid #b9ddd370;min-height:44px;padding:8px 12px}.pause-content .check-row{justify-content:flex-start}.check-row input{width:20px;height:20px;accent-color:var(--you)}#resume{width:100%;margin-top:20px}#howto{position:fixed;inset:0;z-index:45;display:flex;overflow-y:auto;padding:24px max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left));background:#041f2bf0;pointer-events:auto}#howto[hidden]{display:none}.howto-content{width:min(640px,100%);margin:auto}.howto-content h2{font-size:clamp(32px,4vw,48px);margin-bottom:14px}.howto-steps{margin:0 0 18px;padding-left:22px;color:var(--foam);line-height:1.5}.howto-steps li+li{margin-top:6px}.howto-steps strong{color:var(--pearl);font-weight:600}.howto-steps em{color:var(--you);font-style:normal}.howto-keys{margin:0 0 20px;color:var(--foam);font-size:13px;line-height:2}.howto-keys dt{color:var(--pearl);font-weight:600}.howto-keys dd{margin:0 0 6px}#howto-close{width:min(300px,100%)}#toast{position:fixed;z-index:60;bottom:110px;left:50%;transform:translate(-50%,10px);background:var(--ground);padding:12px 18px;max-width:80%;text-align:center;border-radius:3px;opacity:0;transition:opacity .15s,transform .15s;font-size:13px;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%)}#rotate{display:none;position:fixed;inset:0;background:#103b44;z-index:100;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center;pointer-events:auto}#rotate svg{width:54px;height:54px;fill:none;stroke:var(--foam);stroke-width:1.5;margin-bottom:30px}#rotate h2{font-size:39px}#rotate p{color:var(--foam)}.coarse #touch-controls{display:block}.coarse #desktop-controls,.coarse .desktop-copy{display:none}.coarse .touch-copy{display:block}.coarse #teaching{bottom:auto;top:112px;font-size:10px}.reduced-motion *{animation-duration:.01ms!important;transition-duration:.01ms!important}.reduced-motion #banner.show{animation:none;opacity:1}@media(max-height:440px)and (orientation:landscape){.coarse .menu-controls.touch-copy{display:none}.howto-steps,.howto-keys{font-size:12px;line-height:1.45}.menu h1{font-size:50px;margin-bottom:8px}.menu .menu-content{padding:10px 0}.menu .intro{font-size:19px;margin-bottom:10px}.menu .champion-picker{margin:8px 0}.menu .difficulty{margin-bottom:8px}.menu .menu-controls{margin-top:8px;line-height:1.45}}@media(max-height:580px)and (orientation:landscape){h1{font-size:57px;line-height:.88;margin-bottom:12px}.menu-content{width:310px;margin-left:max(5vw,env(safe-area-inset-left));padding:16px 0}.intro{font-size:21px;margin-bottom:14px}.champion-picker{gap:12px;margin:12px 0}.champion-choice{min-height:47px;padding-bottom:7px}.champion-choice span{font-size:21px}.champion-choice small{display:none}.difficulty{margin-bottom:12px;gap:4px}.difficulty button{padding:7px 8px;font-size:11px}.primary,.secondary{min-height:44px;padding:10px 17px}.menu-controls{margin-top:10px;font-size:10px;line-height:1.7}.world-caption{font-size:20px;bottom:22px;right:24px}#hud{top:max(12px,env(safe-area-inset-top));width:76%;gap:16px}.fighter-health{padding:5px 9px}.fighter-name{margin-bottom:4px}.fighter-name>span{font-size:20px}.health-track{height:7px}.health-bottom{height:17px}.round-center{width:110px;padding:2px}#timer{font-size:33px}.icon-button{top:12px;left:max(12px,env(safe-area-inset-left))}#banner{top:37%}#banner strong{font-size:48px}#banner small{margin-top:7px;font-size:11px}.coarse #banner.combat-cue{top:auto;bottom:18px;padding:6px 14px;max-width:70vw}.coarse #banner.combat-cue.show{animation-name:combat-cue-pop}.coarse #banner.combat-cue strong{font-size:24px}.coarse #banner.combat-cue small{font-size:10px;margin-top:4px}.coarse #teaching{top:87px}.result-content{width:310px;margin-right:max(5vw,env(safe-area-inset-right));padding:18px 0}h2{font-size:40px;margin-bottom:12px}#result-title{font-size:40px}#series{font-size:34px;margin:10px 0}#recap{margin-bottom:8px;font-size:11px}#recap th,#recap td{padding:1px 0}#recap tr[data-stat=damage]{display:none}#result-tip{font-size:12px;line-height:1.45;margin:10px 0 8px}.result-picker{margin:13px 0 3px}.pause-content h2{font-size:39px}.pause-content label{min-height:42px}#resume{margin-top:10px}#toast{bottom:98px}}@media(pointer:coarse)and (orientation:portrait){#rotate{display:flex}}@media(max-width:700px)and (orientation:landscape){.menu-content{width:280px}.champion-picker{gap:10px}.champion-choice span{font-size:19px}.difficulty button{font-size:10px;padding:7px}.world-caption{display:none}#hud{width:73%;gap:10px}.round-center{width:86px}#connection{font-size:8px}#touch-controls #strike{right:14px}#dodge{right:124px}#skill{right:102px}#cancel{right:219px}.result-content{width:290px}.fighter-name small{font-size:10px}}#desktop-kit{position:fixed;right:max(28px,env(safe-area-inset-right));bottom:24px;display:flex;align-items:center;gap:22px;padding:12px 15px;background:var(--ground);border-radius:3px;color:var(--foam);font-size:10px}#desktop-kit>div{position:relative;min-width:70px;min-height:29px;display:flex;flex-direction:column;gap:7px}#desktop-kit .desktop-skill-status{min-width:105px}#desktop-kit small{font-size:10px;color:var(--you)}.desktop-meter{display:block;height:3px;background:#b9ddd33d;width:100%;overflow:hidden}.desktop-meter>i{display:block;height:100%;width:0;background:var(--you)}#desktop-kit.ultimate-ready .desktop-skill-status{color:var(--pearl)}.coarse #desktop-kit{display:none}body:not(.coarse) #teaching{bottom:125px}@media(max-width:1100px){#desktop-controls{font-size:10px;gap:4px}#desktop-kit{bottom:65px;right:24px}body:not(.coarse) #teaching{bottom:140px}}
