@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fredoka-latin-400-normal-17JuUzdy.woff2)format("woff2"),url(/assets/fredoka-latin-400-normal-DbXSrOeS.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(/assets/fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}:root{--font:"Fredoka", "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#3a2d4d;--ink-soft:#655776;--line:#3a2d4d29;--surface:#fff;--blue:#2467d6;--orange:#f0831c;--gold:#ffc83d;--good:#4ccf8a;--danger:#d6342f;--violet:#7b5bea;--focus:#1c1c8c;--radius-m:20px;--radius-l:28px;--shadow-soft:0 3px 0 #3a2d4d1f, 0 8px 18px #3a2d4d29;--shadow:0 5px 0 #3a2d4d1a, 0 14px 30px #3a2d4d29}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}@supports (height:100dvh){html,body,#root{height:100dvh}}body{font-family:var(--font);color:var(--ink);overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;background:#ffe9c9;overflow:hidden}button{font-family:inherit}img{-webkit-user-drag:none}.ui-fill{width:100%;height:100%}.ui-overlay{z-index:20;position:fixed;inset:0}.joystick-zone{touch-action:none;-webkit-user-select:none;user-select:none;z-index:1;position:absolute;inset:0 50% 0 0}.joystick-base{opacity:0;pointer-events:none;background:#ffffff47;border:3px solid #ffffffbf;border-radius:50%;width:112px;height:112px;margin:-56px 0 0 -56px;transition:opacity .12s;position:absolute;top:0;left:0;box-shadow:0 4px 16px #3a2d4d40}.joystick-base[data-active=true]{opacity:1}.joystick-knob{background:#fff;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute;top:50%;left:50%;box-shadow:0 3px 8px #3a2d4d59}.ctl-btn{font:inherit;color:var(--ink);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;pointer-events:auto;cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;box-shadow:0 5px #3a2d4d38,0 10px 18px #3a2d4d33}.ctl-btn:active{transform:translateY(3px);box-shadow:0 2px #3a2d4d38,0 4px 10px #3a2d4d33}.ctl-btn:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.screen{width:100%;height:100%;padding:max(14px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));box-sizing:border-box;background:linear-gradient(#ffffff59 2px,#0000 2px) 0 0/48px 48px,linear-gradient(90deg,#ffffff59 2px,#0000 2px) 0 0/48px 48px,linear-gradient(160deg,#ffe9c9,#ffd9ec 55%,#d9e6ff);position:relative;overflow:hidden auto}.screen__deco{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.marble{border-radius:50%;position:absolute;box-shadow:inset -8px -10px #3a2d4d1a}.marble--b{aspect-ratio:1;background:#7fb2ff;width:clamp(60px,12vh,130px);bottom:-30px;left:-30px}.marble--c{aspect-ratio:1;background:#ff9f7a;width:clamp(36px,7vh,80px);bottom:-20px;right:-20px}@media (height<=500px){.screen__deco{display:none}}.loading{z-index:5;position:absolute;inset:0}.loading__main{text-align:center;place-content:center;justify-items:center;gap:10px;min-height:100%;display:grid;position:relative}.loading__brand{text-shadow:0 4px #fffc;margin:0;font-size:clamp(40px,14vh,110px);font-weight:700;line-height:1}.loading__title{color:var(--ink-soft);margin:0;font-size:clamp(16px,3.6vh,26px);font-weight:500}.loading__bar{width:min(70vw,460px);height:22px;box-shadow:var(--shadow-soft);box-sizing:border-box;background:#ffffffd9;border-radius:999px;padding:3px;overflow:hidden}.loading__fill{background:linear-gradient(90deg, var(--gold), #ff9f7a);border-radius:999px;height:100%;transition:width .15s ease-out;display:block}.loading__percent{color:var(--ink-soft);margin:0;font-size:15px;font-weight:600}.btn{min-height:56px;font:inherit;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:20px;font-weight:700;transition:transform 80ms;display:inline-flex;box-shadow:0 5px #3a2d4d33,0 10px 20px #3a2d4d1f}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(3px);box-shadow:0 2px #3a2d4d33}.btn:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.btn--primary{background:var(--gold)}.btn--ghost{background:#ffffffb3}.btn svg{width:24px;height:24px}.panel{border-radius:var(--radius-l);box-shadow:var(--shadow);background:#ffffffd1;padding:16px 20px}.menu-title{margin:0;font-size:clamp(24px,5vh,40px);font-weight:700;line-height:1.1}.menu-header{align-items:center;gap:14px;min-height:56px;display:flex;position:relative}.menu-header .menu-title{flex:1}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hub{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#f3e3ff;width:100%;height:100%;position:relative;overflow:hidden}.hub__canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hub__overlay{pointer-events:none;z-index:2;position:absolute;inset:0}.hub__menu{left:max(14px, env(safe-area-inset-left));top:max(12px, env(safe-area-inset-top));min-width:56px;min-height:56px;font:inherit;color:var(--ink);pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffeb;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 20px 0 16px;font-size:18px;font-weight:700;display:inline-flex;position:absolute;box-shadow:0 4px #3a2d4d2e,0 8px 18px #3a2d4d2e}.hub__menu svg{width:24px;height:24px}.hub__menu:active{transform:translateY(2px)}.hub__menu:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.hub__announce{top:max(12px, env(safe-area-inset-top));justify-content:center;width:max-content;max-width:calc(100% - 330px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.hub__room{color:var(--ink);white-space:nowrap;background:#ffffffe6;border-radius:999px;margin:0;padding:10px 24px;font-size:clamp(20px,3.4vh,28px);font-weight:700;animation:2.6s both hub-room;box-shadow:0 4px #3a2d4d24,0 10px 20px #3a2d4d29}@keyframes hub-room{0%{opacity:0;transform:translateY(-10px)scale(.96)}10%,75%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}.hub__hint{left:50%;bottom:max(18px, env(safe-area-inset-bottom));border-radius:var(--radius-m);text-align:center;width:min(460px,100% - 420px);color:var(--ink);box-shadow:var(--shadow-soft);background:#ffffffdb;margin:0;padding:10px 18px;font-size:16px;font-weight:600;line-height:1.3;animation:7s both hub-hint;position:absolute;transform:translate(-50%)}@keyframes hub-hint{0%{opacity:0}8%,88%{opacity:1}to{opacity:0}}.hub__bubble{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.hub__bubble--fixed{top:88px;left:50%}.hub__bubble-pos{margin-top:-14px;transform:translate(-50%,-100%)}.hub__bubble--fixed .hub__bubble-pos{margin-top:0;transform:translate(-50%)}.hub__bubble-card{border-radius:var(--radius-l);color:var(--ink);white-space:nowrap;background:#fff;padding:10px 20px;font-size:clamp(18px,3vh,24px);font-weight:700;animation:1.6s ease-in-out infinite hub-bob;position:relative;box-shadow:0 4px #3a2d4d29,0 10px 22px #3a2d4d38}.hub__bubble-card:after{content:"";z-index:-1;background:#fff;border-radius:0 0 6px;width:22px;height:22px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:4px 4px #3a2d4d1a}.hub__bubble--fixed .hub__bubble-card:after{display:none}@keyframes hub-bob{50%{transform:translateY(-5px)}}.ctl-btn.hub__interact{right:max(18px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));text-align:left;background:var(--gold);border-radius:999px;align-items:center;gap:12px;min-width:190px;max-width:min(320px,46vw);min-height:76px;padding:8px 22px 8px 12px;animation:.22s ease-out both hub-pop;display:flex}@keyframes hub-pop{0%{opacity:0;transform:scale(.85)}}.hub__interact-key{background:#fff;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-size:22px;font-weight:700;display:none;box-shadow:0 3px #3a2d4d38}@media (pointer:fine){.hub__interact-key{display:grid}}.hub__interact-text{gap:2px;min-width:0;padding-left:6px;display:grid}.hub__interact-title{font-size:20px;font-weight:700;line-height:1.1}.hub__interact-action{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.15;overflow:hidden}.hub__loading{z-index:5;position:absolute;inset:0}.hub__error{z-index:5;text-align:center;background:linear-gradient(160deg,#ffe9c9,#ffd9ec 55%,#d9e6ff);place-content:center;justify-items:center;gap:12px;padding:24px;display:grid;position:absolute;inset:0}.hub__error h1{margin:0;font-size:clamp(24px,5vh,36px)}.hub__error p{margin:0;font-size:18px}@media (width>=900px) and (height>=600px){.hub__hint{width:min(560px,100% - 560px);font-size:18px}.ctl-btn.hub__interact{min-width:230px;min-height:84px}.hub__interact-title{font-size:22px}.hub__interact-action{font-size:16px}}@media (prefers-reduced-motion:reduce){.hub__bubble-card,.ctl-btn.hub__interact{animation:none}}.online__entry,.online__lobby{flex-direction:column;gap:clamp(6px,2vh,20px);max-width:1360px;min-height:100%;margin:0 auto;display:flex;position:relative}.online__center{place-items:center;min-height:100%;display:grid;position:relative}.online__card{text-align:center;justify-items:center;gap:clamp(8px,2vh,18px);width:min(100%,520px);padding:clamp(14px,4vh,36px) clamp(16px,4vw,40px);display:grid}.online__text{color:var(--ink-soft);text-wrap:balance;margin:0;font-size:clamp(15px,3vh,20px);font-weight:500}.online__row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.online__quit{flex:none;min-height:48px;padding:0 20px;font-size:17px}.online__label{padding:0;font-size:clamp(14px,2.8vh,18px);font-weight:700;display:block}.online__hint{color:var(--ink-soft);margin:0;font-size:clamp(11px,2.2vh,15px);font-weight:500}.online__error{min-height:0;color:var(--danger);margin:0;font-size:clamp(12px,2.4vh,16px);font-weight:600}.online__error:empty{display:none}.online__notice{border-radius:var(--radius-m);color:var(--danger);background:#fff1f0;margin:0;padding:8px 14px;font-weight:600}.online__input{border:3px solid var(--line);width:100%;min-height:48px;font:inherit;color:var(--ink);background:#fff;border-radius:16px;padding:0 16px;font-size:20px;font-weight:600}.online__input:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.online__input[aria-invalid=true]{border-color:var(--danger)}.online__code-input{text-transform:uppercase;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.online .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.online__entry-grid{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(10px,2vw,32px);display:grid}.online__settings,.online__modes{gap:clamp(8px,2vh,20px);display:grid}.online__field{gap:6px;display:grid}.online__group{border:0;gap:4px;min-width:0;margin:0;padding:0;display:grid}.online__group legend{margin-bottom:4px;padding:0}.online__segments{flex-wrap:wrap;gap:8px;display:flex}.online__segment{border:3px solid var(--line);min-height:48px;font:inherit;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border-radius:16px;flex:1 1 0;padding:0 14px;font-size:clamp(14px,2.8vh,18px);font-weight:700}.online__segment[aria-pressed=true]{border-color:var(--violet);background:#efe9ff;box-shadow:0 0 0 2px #fff}.online__segment:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.online__mode{gap:4px;display:grid}.online__big{width:100%;min-height:56px}.online__join-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.online__join-row .btn{padding:0 22px}.online__spinner{border:6px solid #e9e1f1;border-top-color:var(--violet);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite online-spin}@keyframes online-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.online__spinner{animation-duration:3s}}.online__overlay{z-index:50;background:#3a2d4d8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.lobby__head{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.lobby__code{box-shadow:var(--shadow-soft);background:#ffffffd9;border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:4px 8px 4px 18px;display:flex}.lobby__code-value{letter-spacing:.22em;font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;font-size:clamp(26px,6vh,44px);line-height:1}.lobby__small{min-height:44px;padding:0 16px;font-size:15px}.lobby__copy{color:var(--ink-soft);margin:0;font-size:14px;font-weight:600}.lobby__copy:empty{display:none}.lobby__body{flex:0 auto;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(8px,1.6vw,24px);min-height:0;display:grid}.lobby__teams{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:clamp(8px,1.6vw,24px);display:grid}.team{--team:var(--blue);--team-soft:#dbe8ff;border-radius:var(--radius-m);border-top:8px solid var(--team);min-width:0;box-shadow:var(--shadow-soft);background:#ffffffd1;padding:clamp(6px,1.4vh,14px)}.team--orange{--team:var(--orange);--team-soft:#ffe6cf}.team__title{color:var(--ink);align-items:center;gap:8px;margin:0 0 clamp(4px,1vh,10px);font-size:clamp(15px,3vh,22px);display:flex}.team__mark{background:var(--team);border-radius:50%;width:14px;height:14px}.team--orange .team__mark{border-radius:3px;transform:rotate(45deg)}.team__list{gap:clamp(3px,.8vh,8px);margin:0;padding:0;list-style:none;display:grid}.plr{background:var(--team-soft);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:clamp(34px,7.4vh,56px);padding:3px 6px 3px 3px;display:grid}.plr[data-you=true]{outline:3px solid var(--violet);background:#fff}.plr[data-state=offline]{opacity:.6}.plr--empty{border:2px dashed var(--line);color:var(--ink-soft);background:0 0}.plr__portrait{border-radius:24%;width:clamp(28px,6.6vh,48px)}.plr__portrait--none{aspect-ratio:1;color:var(--ink-soft);background:#3a2d4d1a;place-items:center;font-weight:700;display:grid}.plr__text{min-width:0;line-height:1.15;display:grid}.plr__name{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(13px,2.7vh,18px);font-weight:700;overflow:hidden}.plr__you{color:var(--ink-soft);font-weight:500}.plr__char{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font-size:clamp(11px,2.1vh,14px);font-weight:500;overflow:hidden}.plr__badges{flex-wrap:wrap;justify-content:flex-end;gap:3px;display:flex}.badge{white-space:nowrap;color:var(--ink);border:2px solid var(--line);background:#fff;border-radius:999px;padding:1px 8px;font-size:clamp(10px,2vh,13px);font-weight:700}.badge--host{background:var(--gold);border-color:#0000}.badge--ready{color:#0e6b3e;background:#d7f5e5;border-color:#0000}.badge--wait{color:var(--ink-soft)}.badge--off{color:#8c1d19;background:#ffe1df;border-color:#0000}.badge--bot{background:#ece7f7;border-color:#0000}.lobby__side{align-self:start;gap:8px;min-width:0;padding:clamp(8px,1.6vh,16px);display:grid}.pick{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(4px,1vh,8px);margin:0;padding:0;list-style:none;display:grid}.pick__btn{width:100%;font:inherit;color:var(--ink);box-shadow:var(--shadow-soft);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:3px solid #0000;border-radius:14px;justify-items:center;gap:2px;padding:3px;display:grid;position:relative}.pick__btn[aria-pressed=true]{border-color:var(--violet);background:#efe9ff}.pick__btn:disabled{cursor:not-allowed;opacity:.45;filter:grayscale(.8)}.pick__btn:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.pick__portrait{width:100%}.pick__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(10px,2vh,14px);font-weight:700;overflow:hidden}.pick__role{background:#ffffffe6;border-radius:50%;width:16px;height:16px;padding:1px;position:absolute;top:3px;right:3px}.pick__btn:disabled:after{content:"";pointer-events:none;background:repeating-linear-gradient(-45deg,#3a2d4d40 0 4px,#0000 4px 9px);border-radius:12px;position:absolute;inset:8px}.lobby__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.lobby__status{color:var(--ink);flex:240px;margin:0;font-size:clamp(14px,2.8vh,19px);font-weight:600}.lobby__status:empty{display:none}.lobby__needs{flex-basis:100%}@media (height<=460px){.online__entry,.online__lobby{gap:6px}.online__input,.online__segment{min-height:40px;font-size:16px}.online__big,.online .btn:not(.lobby__small){min-height:44px;font-size:17px}.online__quit{min-height:40px}.online__settings,.online__modes{gap:6px;padding:8px 12px}.lobby__small{min-height:36px}.lobby__side{padding:8px}.pick__role{display:none}}@media (height<=460px) and (width<=740px){.lobby__body{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.pick{gap:3px}.pick__name{font-size:9px}.lobby__head{flex-wrap:nowrap}.lobby__code-value{font-size:24px}.lobby__copy{font-size:12px}.plr:not([data-you=true]) .badge--wait{display:none}}@media (width<=560px){.online__entry-grid,.lobby__body{grid-template-columns:1fr}}@media (width>=1000px) and (height>=700px){.online__entry,.online__lobby{padding-top:12px}.online__entry{justify-content:center;gap:28px}.online__label{font-size:22px}.online__hint{font-size:16px}.online__error{font-size:17px}.online__entry .menu-title{font-size:44px}.online__big,.online .btn:not(.lobby__small){min-height:64px;font-size:24px}.online__quit{min-height:52px;font-size:19px}.lobby__small{min-height:48px;font-size:17px}.online__input{min-height:60px;font-size:24px}.online__segment{min-height:56px;font-size:20px}.online__settings,.online__modes{gap:22px;padding:28px 32px}.plr{min-height:64px;padding:5px 10px 5px 5px}.team{padding:16px}.team__title{font-size:24px}.lobby__body{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.lobby__side{padding:20px}.pick__name{font-size:16px}.online__lobby{justify-content:center;gap:28px}.lobby__code-value{font-size:48px}.lobby__copy{font-size:16px}.plr{gap:14px;min-height:80px}.plr__portrait{width:68px}.plr__name{font-size:24px}.plr__char{font-size:17px}.badge{padding:3px 12px;font-size:16px}.team__list{gap:12px}.team__title{margin-bottom:14px;font-size:30px}.team__mark{width:20px;height:20px}.lobby__side{gap:14px}.lobby__side .online__label{font-size:24px}.pick{gap:12px}.pick__btn{padding:6px}.lobby__status{font-size:22px}}.online__overlay .panel{background:#fff}@media (width>=1000px) and (height>=700px){.online__entry-grid{flex:0 auto}}.lobby__tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.lobby__tabs .online__segment{min-height:40px;padding:0 8px;font-size:clamp(13px,2.6vh,17px)}.lobby__tabs .online__segment:disabled{opacity:.5;cursor:not-allowed}.equip{gap:clamp(4px,1vh,12px);display:grid}.equip__row{justify-content:space-between;align-items:center;gap:6px;display:flex}.equip__heading{margin:0 0 3px;font-size:clamp(12px,2.4vh,18px);font-weight:700}.equip__heading span{color:var(--ink-soft);font-weight:500}.equip .tile{min-height:clamp(44px,10vh,90px);padding:3px 2px}.equip .tile__name{font-size:clamp(9px,1.8vh,14px)}.equip__info{min-height:2.6em;color:var(--ink-soft);align-items:center;gap:8px;margin:0;font-size:clamp(11px,2.1vh,15px);line-height:1.2;display:flex}.equip__info b{color:var(--ink)}.equip__info-icon{color:#5a3fc0;flex:none;width:28px;height:28px}@media (height<=460px){.equip__info{font-size:11px}.equip__info-icon{display:none}.equip .prepare__tiles{gap:3px}.equip .tile{border-width:2px;min-height:44px;padding:4px 2px 3px}.equip .tile__icon{width:20px;height:20px}.equip .tile__name{letter-spacing:-.01em;font-size:9px}.equip__heading{margin:0 0 2px}.equip{gap:4px}}@media (height<=460px) and (width<=740px){.plr__badges{flex-direction:column;align-items:flex-end}.lobby__side{padding:6px}}.lobby__main{align-content:start;gap:clamp(6px,1.6vh,18px);min-width:0;display:grid}.mapchip{box-shadow:var(--shadow-soft);background:#ffffffd9;border-radius:999px;align-items:center;gap:10px;margin-left:auto;padding:4px 14px 4px 6px;display:flex}.mapchip__preview{flex:none;width:clamp(54px,11vh,96px);height:clamp(34px,7vh,60px)}.mapchip__text{line-height:1.1;display:grid}.mapchip__name{font-size:clamp(15px,3vh,22px)}.mapchip__duration{color:var(--ink-soft);font-size:clamp(12px,2.3vh,16px);font-weight:600}.mapchip .online__label{color:var(--ink-soft);font-size:11px;font-weight:600}.online__map{align-content:center;justify-items:center;gap:0;line-height:1.15;display:grid}.online__map small{color:var(--ink-soft);font-size:.75em;font-weight:600}.online__arenas{margin:4px 0 0}.online__group>.online__map{width:100%}@media (height<=460px){.online__map{grid-auto-flow:column;gap:8px;min-height:40px}.online__arenas{margin:0}.mapchip .online__label{display:none}}@media (width>=1000px) and (height>=700px){.mapchip{gap:16px;padding:6px 22px 6px 10px}.mapchip__name{font-size:26px}.mapchip__duration{font-size:18px}.equip .tile{min-height:92px}}@media (height<=460px){.online__map{grid-auto-flow:row;gap:0;min-height:40px;padding:0 6px}.online__map b{white-space:nowrap;font-size:14px}.online__map small{font-size:11px}.lobby__tabs .online__segment{min-height:34px}.equip .tile{min-height:40px}}@media (height<=460px) and (width<=740px){.lobby__code .online__label{display:none}.lobby__code{flex-wrap:nowrap}.lobby__code-value{font-size:22px}.mapchip__name{font-size:14px}.mapchip__preview{width:44px;height:28px}.lobby__copy{flex-basis:100%;order:9}.equip__info{display:none}}.lobby__small{white-space:nowrap}.portrait{--tint:#cfe2ff;aspect-ratio:1;background:radial-gradient(circle at 30% 25%, #fff, var(--tint));border-radius:24%;position:relative;overflow:hidden}.portrait--archer{--tint:#b9f0d2}.portrait--guardian{--tint:#cfe2ff}.portrait--striker{--tint:#ffc9c0}.portrait--healer{--tint:#ffd9ee}.portrait--brawler{--tint:#ffe6a8}.portrait__img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.portrait__fallback{color:var(--ink);place-items:center;display:grid;position:absolute;inset:0}.portrait__role{opacity:.55;width:24%;height:24%;position:absolute;top:10%;right:10%}.portrait__initial{text-shadow:0 4px #ffffffb3;font-size:clamp(28px,8vh,72px);font-weight:700;line-height:1}.prepare__inner{grid-template-rows:auto 1fr;gap:clamp(8px,2vh,20px);max-width:1200px;min-height:100%;margin:0 auto;display:grid;position:relative}.prepare__avatar{width:48px;box-shadow:var(--shadow-soft);flex:none}.prepare__body{grid-template:"items side"1fr"info info"/minmax(0,1.7fr) minmax(0,1fr);gap:clamp(8px,1.6vh,18px) clamp(8px,1.6vw,20px);min-height:0;display:grid}.prepare__items{grid-area:items;align-content:start;gap:clamp(6px,1.6vh,18px);padding:clamp(8px,1.6vh,16px) clamp(10px,1.6vw,20px);display:grid}.prepare__side{grid-area:side;padding:clamp(8px,1.6vh,16px) clamp(10px,1.6vw,20px)}.prepare__info{grid-area:info;align-items:center;gap:10px;min-height:clamp(44px,11vh,76px);padding:6px 16px;display:flex}.prepare__info p{color:var(--ink-soft);margin:0;font-size:clamp(12px,2.5vh,18px);line-height:1.25}.prepare__info b{color:var(--ink)}.prepare__hint{opacity:.85}.prepare__info-icon{color:#5a3fc0;box-sizing:border-box;background:#ece3ff;border-radius:14px;flex:none;width:clamp(28px,6vh,44px);height:clamp(28px,6vh,44px);padding:5px}.prepare__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.prepare__heading{margin:0 0 clamp(3px,.8vh,8px);font-size:clamp(13px,2.8vh,20px);font-weight:700}.prepare__heading span{color:var(--ink-soft);font-weight:500}.prepare__reset{min-height:32px;font:inherit;color:var(--ink-soft);cursor:pointer;background:#f0eaf7;border:0;border-radius:999px;padding:2px 10px;font-size:clamp(11px,2.2vh,14px);font-weight:600}.prepare__reset:focus-visible,.tile:focus-visible,.opt:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.prepare__tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(5px,1vh,12px);display:grid}.tile{min-height:clamp(54px,14vh,104px);font:inherit;color:var(--ink);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#f4effa;border:3px solid #0000;border-radius:16px;grid-template-rows:auto 1fr;place-items:start center;gap:2px;padding:6px 4px 5px;transition:transform .1s,border-color .1s;display:grid}.tile:hover{transform:translateY(-2px)}.tile[aria-pressed=true]{border-color:var(--violet);box-shadow:var(--shadow-soft);background:#fff}.tile[data-blocked=true]{opacity:.55}.tile__icon{color:#5a3fc0;width:clamp(22px,5vh,40px);height:clamp(22px,5vh,40px)}.tile[aria-pressed=true] .tile__icon{color:var(--violet)}.tile__name{overflow-wrap:anywhere;font-size:clamp(10.5px,2.1vh,15px);font-weight:600;line-height:1.1}.options{gap:clamp(6px,1.6vh,18px);display:grid}.options__maps{gap:clamp(4px,1vh,10px);display:grid}.options__sizes{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(4px,1vh,10px);display:grid}.opt{min-height:48px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#f4effa;border:3px solid #0000;border-radius:16px;align-content:center;gap:1px;padding:4px 12px;font-size:clamp(13px,2.6vh,18px);font-weight:700;display:grid}.opt small{color:var(--ink-soft);font-size:clamp(10px,2vh,14px);font-weight:500;line-height:1.15}.options__sizes .opt{text-align:center}.opt[aria-pressed=true]{background:var(--gold);border-color:var(--ink)}.opt[aria-pressed=true] small{color:var(--ink)}@media (width<=700px) and (height>=461px){.prepare__body{grid-template-columns:1fr;grid-template-areas:"items""side""info"}}@media (height<=500px){.prepare__avatar{width:40px}.prepare__tiles .tile{padding:4px 3px}.opt{min-height:44px;padding:2px 10px}.opt small{display:none}}@media (width>=1000px) and (height>=700px){.prepare__inner{align-content:center}.prepare__avatar{width:64px}.prepare__items,.prepare__side{padding:22px 28px}.opt small{display:block}.opt{min-height:68px;padding:8px 18px}.options__sizes .opt{min-height:60px}}@media (height<=400px){.prepare__inner,.prepare__body{gap:6px}.prepare__items{gap:4px;padding:6px 12px}.prepare__tiles .tile{min-height:46px}.prepare__info{min-height:38px;padding:4px 14px}}@media (width>=1000px) and (height>=700px){.prepare__body{grid-template-rows:auto auto;align-items:start;gap:22px 28px}.prepare__items{gap:24px}.prepare__tiles{gap:14px}.tile{gap:8px;min-height:124px;padding:14px 8px}.tile__icon{width:54px;height:54px}.tile__name{font-size:18px}.prepare__heading{margin-bottom:12px;font-size:24px}.prepare__reset{min-height:40px;padding:4px 16px;font-size:16px}.prepare__info{min-height:88px;padding:12px 28px}.prepare__info p{font-size:20px}.prepare__info-icon{width:52px;height:52px}.opt{font-size:21px}.opt small{font-size:16px}}.opt__time{background:#3a2d4d1a;border-radius:999px;margin-left:8px;padding:0 8px;font-size:.8em;font-style:normal;font-weight:600}.options__fast{background:#3a2d4d0f;border-radius:20px;gap:4px;padding:6px;display:grid}.options__fast-title{color:var(--ink-soft);margin:0 0 0 6px;font-size:clamp(10px,2vh,14px);font-weight:700}.options__fast-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.options__fast .opt{padding:4px 8px}.options__fast .opt small{display:none}.mapscreen__inner{gap:clamp(8px,2vh,20px);max-width:900px;margin:0 auto;display:grid;position:relative}.select__inner{grid-template-rows:auto auto 1fr;gap:clamp(8px,2vh,20px);max-width:1360px;min-height:100%;margin:0 auto;display:grid;position:relative}.select__cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(6px,1.2vw,20px);display:grid}.card{border-radius:var(--radius-m);font:inherit;color:var(--ink);text-align:left;box-shadow:var(--shadow-soft);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffd1;border:4px solid #0000;grid-template-columns:auto 1fr;grid-template-areas:"portrait name""portrait role""stats stats";align-items:center;gap:2px 8px;min-width:0;padding:8px;transition:transform .12s,border-color .12s;display:grid}.card:hover{transform:translateY(-3px)}.card[aria-pressed=true]{border-color:var(--violet);box-shadow:0 0 0 3px #fff, var(--shadow);background:#fff}.card:focus-visible{outline:4px solid var(--focus);outline-offset:3px}.card__portrait{grid-area:portrait;width:clamp(44px,12vh,72px)}.card__name{grid-area:name;align-self:end;font-size:clamp(16px,3.2vh,24px);font-weight:700;line-height:1.1}.card__role{color:var(--ink-soft);grid-area:role;align-self:start;align-items:center;gap:4px;font-size:clamp(11px,2.2vh,15px);font-weight:500;display:flex}.card__role-icon{flex:none;width:1.2em;height:1.2em}.card .stats{grid-area:stats;margin-top:6px}.stats{gap:3px;margin:0;display:grid}.stats__row{color:var(--ink-soft);grid-template-columns:minmax(0,9ch) 1fr;align-items:center;gap:6px;font-size:clamp(9px,1.9vh,13px);font-weight:500;line-height:1;display:grid}.stats dt{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stats dd{background:#e9e1f1;border-radius:999px;height:clamp(5px,1.2vh,9px);margin:0;position:relative;overflow:hidden}.stats__fill{background:linear-gradient(90deg, var(--violet), #c9b6ff);border-radius:999px;position:absolute;inset:0 auto 0 0}.detail{align-self:start;min-width:0;padding:12px 16px}.detail__title{margin:0 0 8px;font-size:clamp(16px,3vh,24px)}.detail__title span{color:var(--ink-soft);font-weight:500}.detail__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1.4vw,20px);margin:0;padding:0;list-style:none;display:grid}.detail__item{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;display:grid}.detail__icon{color:#5a3fc0;box-sizing:border-box;background:#ece3ff;border-radius:14px;width:clamp(30px,6vh,44px);height:clamp(30px,6vh,44px);padding:5px}.detail__item h3{margin:0;font-size:clamp(13px,2.4vh,18px);line-height:1.15}.detail__item p{color:var(--ink-soft);margin:2px 0 0;font-size:clamp(11px,2.1vh,15px);line-height:1.25}.detail__item .detail__meta{color:var(--ink);opacity:.75;font-weight:600}@media (height<=500px){.card{border-width:3px;padding:5px 6px}.card .stats{gap:2px;margin-top:3px}.select__back-text{display:none}}@media (width>=1000px) and (height>=700px){.card{text-align:center;grid-template-columns:1fr;grid-template-areas:"portrait""name""role""stats";justify-items:center;row-gap:6px;padding:16px}.card__portrait{width:min(100%,150px)}.card__name,.card__role{align-self:center}.card .stats{text-align:left;gap:6px;width:100%;margin-top:8px}.stats__row{font-size:14px}.detail{padding:20px 28px}}@media (width<=760px) and (height>=501px){.detail__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1000px) and (height>=700px){.select__inner{align-content:center;gap:28px}.card__portrait{width:min(100%,190px)}.card__name{font-size:28px}.card__role{font-size:17px}.stats__row{font-size:16px}.stats dd{height:10px}.detail__title{font-size:26px}.detail__item h3{font-size:20px}.detail__item p{font-size:16px}.detail__icon{width:52px;height:52px}}@media (height<=500px){.card{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"portrait name""role role""stats stats";row-gap:1px}.card__portrait{width:36px}.card__name{align-self:center;font-size:15px}.card__role{white-space:nowrap;font-size:11px}.card .stats{gap:1px;margin-top:2px}.stats__row{grid-template-columns:8ch minmax(0,1fr);font-size:9px}.detail__item h3{font-size:12px}.detail__item p{font-size:10px}}@media (width>=900px),(height<=500px){.select__cards{grid-template-columns:repeat(8,minmax(0,1fr));gap:clamp(4px,.9vw,14px)}.card{text-align:center;border-width:3px;grid-template-columns:minmax(0,1fr);grid-template-areas:"portrait""name""role""stats";justify-items:center;row-gap:2px;padding:clamp(5px,1.2vh,14px) clamp(4px,.8vw,12px)}.card__portrait{width:min(100%,clamp(38px,11vh,150px))}.card__name{align-self:center;font-size:clamp(12px,2.6vh,24px)}.card__role{white-space:nowrap;align-self:center;font-size:clamp(9px,1.9vh,16px)}.card .stats{text-align:left;gap:clamp(1px,.5vh,6px);width:100%;margin-top:4px}.stats__row{grid-template-columns:minmax(0,8ch) minmax(0,1fr);gap:4px;font-size:clamp(8px,1.8vh,14px)}}@media (width>=900px) and (height>=700px){.select__inner{gap:clamp(16px,3vh,28px)}.card{row-gap:4px;padding:14px 10px}.card__portrait{width:min(100%,150px)}}@media (height<=400px){.select__inner{gap:5px}.card{row-gap:0;padding:4px}.card__portrait{width:32px}.detail{padding:6px 12px}.detail__title{margin-bottom:4px;font-size:14px}.detail__item p{font-size:9.5px;line-height:1.2}}.upg{right:calc(var(--u) * 3.4 + 14px);bottom:calc(var(--u) * 1.5 + 6px);width:clamp(176px, calc(var(--u) * 3.6), 330px);pointer-events:none;z-index:3;grid-template-columns:minmax(0,1fr);gap:5px;display:grid;position:absolute}.upg__head{font-size:clamp(11px, calc(var(--u) * .2), 17px);color:#fff;background:var(--ink);border-radius:999px;justify-content:space-between;gap:8px;margin:0;padding:3px 12px;font-weight:600;display:flex}.upg__head span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.upg__head b{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--gold);flex:none}.upg__bar{background:linear-gradient(90deg, var(--gold) calc(var(--left) * 100%), #3a2d4d40 0);border-radius:999px;height:5px;margin:-2px 6px 0}.upg .upg__card{width:100%;min-height:clamp(56px, calc(var(--u) * .95), 96px);text-align:left;box-shadow:var(--shadow-soft);background:#fff;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 8px;display:grid;position:relative}.upg .upg__card:active{transform:translateY(2px)}.upg__card:first-of-type{border-left:6px solid var(--blue)}.upg__card:last-of-type{border-left:6px solid var(--orange)}.upg__icon{width:clamp(28px, calc(var(--u) * .55), 52px);height:clamp(28px, calc(var(--u) * .55), 52px);color:#5a3fc0;box-sizing:border-box;background:#ece3ff;border-radius:12px;padding:4px}.upg__text{gap:1px;min-width:0;display:grid}.upg__text b{overflow-wrap:anywhere;font-size:clamp(12px, calc(var(--u) * .24), 20px);line-height:1.1}.upg__text small{font-size:clamp(10px, calc(var(--u) * .19), 15px);color:var(--ink-soft);line-height:1.15}.upg__key{min-width:1.6em;font:inherit;text-align:center;color:var(--ink);background:#f0eaf7;border-radius:6px;padding:1px 6px;font-size:13px;font-weight:700;display:none;box-shadow:0 2px #3a2d4d33}@media (hover:hover) and (pointer:fine){.upg__key{display:inline-block}}.upg__icon-wrap{display:grid;position:relative}.upg__ab{width:1.5em;height:1.5em;font-size:clamp(11px, calc(var(--u) * .2), 16px);color:#fff;background:var(--blue);border-radius:50%;place-items:center;font-style:normal;font-weight:700;line-height:1;display:grid;position:absolute;top:-6px;left:-6px;box-shadow:0 2px #3a2d4d4d}.upg__ab[data-choice="1"]{background:var(--orange);color:#2b1600}@media (height<=420px){.hud[data-upgrade=true] .banners{top:calc(max(10px, env(safe-area-inset-top)) + var(--minimap-w) * .57 + 8px);left:max(14px, env(safe-area-inset-left));justify-items:start;width:max(112px,100vw - 7*clamp(56px,15vh,84px) - 56px);right:auto;transform:none}.hud[data-upgrade=true] .banner:not(:last-child){display:none}.hud[data-upgrade=true] .banner{text-align:left;border-radius:14px;padding:4px 12px;font-size:12px}}.cluster{--u:clamp(56px, 15vh, 84px);right:max(14px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));width:calc(var(--u) * 2.75);height:calc(var(--u) * 2.75);pointer-events:none;position:absolute}.act{width:var(--size);height:var(--size);right:calc(var(--u) * .75 + var(--cx) * var(--u) - var(--size) / 2);bottom:calc(var(--u) * .75 + var(--cy) * var(--u) - var(--size) / 2);--size:var(--u);--cx:0;--cy:0}.act-attack{--size:calc(var(--u) * 1.5);--cx:0;--cy:0;background:var(--gold)}.act-skill1{--cx:1.5;--cy:0}.act-skill2{--cx:1.06;--cy:1.06}.act-ultimate{--cx:0;--cy:1.5}.act-item{--size:max(56px, calc(var(--u) * .85));--cx:2.15;--cy:1.05}.act-score{--size:calc(var(--u) * 1.3);--cx:0;--cy:0;right:calc(var(--u) * 2.75 + 16px);background:var(--good);color:#10321f;bottom:0}.act-recall{--size:56px;right:calc(var(--u) * 2.75 + 16px + var(--u) * 1.3 + 10px);background:#e8def8;bottom:0}.act__face{background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;inset:5px;overflow:hidden}.act__face--attack{background:#ffe08a}.act__face--score{background:#bdf0d3;align-content:center;gap:0}.act__face--recall{background:#efe6ff}.act__face[data-status=ready]{background:#fff}.act__face[data-status=locked],.act__face[data-status=cooling],.act__face[data-status=charging]{color:#6d5f80;background:#ece6f2}.act-ultimate .act__face[data-status=ready]{background:#ffd9f0;animation:1.1s ease-in-out infinite alternate ult-glow}.act__icon,.act__face--score .act__icon{width:52%;height:52%}.act__caption{font-size:calc(var(--u) * .2);font-weight:700;line-height:1}.act__ring{pointer-events:none;width:calc(100% + 8px);height:calc(100% + 8px);position:absolute;inset:-4px}.act__sweep{background:conic-gradient(#3a2d4d8c calc(var(--remaining) * 1turn), transparent 0);pointer-events:none;border-radius:50%;position:absolute;inset:5px;transform:scaleX(-1)}.act__seconds{font-size:calc(var(--u) * .42);color:#fff;text-shadow:0 2px 4px #3a2d4dcc;pointer-events:none;place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.act__lock{color:#fff;font-size:calc(var(--u) * .22);pointer-events:none;background:#8d82a0;border-radius:50%;align-content:center;place-items:center;gap:0;font-weight:700;line-height:1;display:grid;position:absolute;inset:5px}.act__lock-icon{width:36%;height:36%}.act[aria-disabled=true]:active{transform:none}.ring__track{fill:none;stroke:#3a2d4d2e;stroke-width:7px}.ring__value{fill:none;stroke:var(--violet);stroke-width:7px;stroke-linecap:round}.act-score .ring__value{stroke:#0e7a47}@keyframes ult-glow{0%{box-shadow:0 0 #8b6cf099}to{box-shadow:0 0 0 8px #8b6cf000}}@media (prefers-reduced-motion:reduce){.act-ultimate .act__face[data-status=ready]{animation:none}}.act__badge{background:var(--gold);color:#7a4d00;pointer-events:none;border-radius:50%;place-items:center;width:38%;height:38%;display:grid;position:absolute;top:-2px;right:-2px;box-shadow:0 2px #3a2d4d4d}.act__badge-icon{width:70%;height:70%}.boss-warning{pointer-events:none;z-index:5;background:radial-gradient(#0000 55%,#d6342f47);align-content:center;justify-items:center;animation:.4s ease-in-out infinite alternate boss-flash;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 6px #d6342f8c}.boss-warning__text{color:#fff;background:var(--danger);box-shadow:var(--shadow-soft);border-radius:999px;justify-self:start;margin:0 0 0 4vw;padding:6px 22px;font-size:clamp(16px,4.4vh,28px);font-weight:700}@keyframes boss-flash{0%{opacity:.65}to{opacity:1}}@media (prefers-reduced-motion:reduce){.boss-warning{animation:none}}.banners{top:calc(max(10px, env(safe-area-inset-top)) + clamp(48px, 12vh, 66px));pointer-events:none;justify-items:center;gap:6px;width:min(92vw,480px);display:grid;position:absolute;left:50%;transform:translate(-50%)}.banner{text-align:center;color:#fff;background:var(--ink);box-shadow:var(--shadow-soft);border-radius:999px;margin:0;padding:6px 18px;font-size:clamp(14px,3.6vh,19px);font-weight:600;animation:.28s cubic-bezier(.2,1.4,.4,1) both banner-in}.banner[data-tone=ally]{background:var(--blue)}.banner[data-tone=enemy]{background:var(--orange);color:#2b1600}.feed{top:calc(max(10px, env(safe-area-inset-top)) + 64px);right:max(14px, env(safe-area-inset-right));pointer-events:none;justify-items:end;gap:4px;max-width:min(42vw,300px);margin:0;padding:0;list-style:none;display:grid;position:absolute}.feed__item{color:var(--ink);border-right:6px solid var(--ink);background:#ffffffe6;border-radius:999px;padding:3px 12px;font-size:13px;font-weight:600;animation:.2s ease-out both feed-in;box-shadow:0 2px 6px #3a2d4d2e}.feed__item[data-team=blue]{border-right-color:var(--blue)}.feed__item[data-team=orange]{border-right-color:var(--orange)}@keyframes banner-in{0%{opacity:0;transform:translateY(-10px)scale(.9)}}@keyframes feed-in{0%{opacity:0;transform:translate(12px)}}@media (prefers-reduced-motion:reduce){.banner,.feed__item{animation:none}}@media (height<=420px){.banners{left:calc(max(14px, env(safe-area-inset-left)) + var(--minimap-w) + 12px);right:calc(max(14px, env(safe-area-inset-right)) + 66px);justify-items:start;width:auto;transform:none}}.hud{--minimap-w:clamp(150px, 44vh, 280px)}.minimap{top:max(10px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));width:var(--minimap-w);pointer-events:none;filter:drop-shadow(0 3px 8px #3a2d4d40);position:absolute}.minimap__bg{fill:#fff9ece0;stroke:#fff;stroke-width:2px}.minimap__mid{stroke:#3a2d4d2e;stroke-width:1.5px;stroke-dasharray:3 4}.minimap__goal rect:first-child{stroke-width:2px}.minimap__goal--blue rect:first-child{fill:#fff;stroke:var(--blue)}.minimap__goal--orange rect:first-child{fill:#fff;stroke:var(--orange)}.minimap__goal--blue .minimap__fill{fill:var(--blue)}.minimap__goal--orange .minimap__fill{fill:var(--orange)}.minimap__goal[data-state=locked] rect:first-child{stroke-dasharray:3 2;fill:#e8e0f0}.minimap__goal[data-state=destroyed] rect:first-child{fill:#cfc8d8;stroke:#8d8498}.minimap__goal path{stroke:#6d5f80;stroke-width:1.6px;stroke-linecap:round;fill:none}.minimap__boss{fill:var(--gold);stroke:#8a5a00;stroke-width:2px}.minimap__player{stroke:#fff;stroke-width:1.5px}.minimap__player--blue{fill:var(--blue)}.minimap__player--orange{fill:var(--orange)}.minimap__player[data-local=true]{stroke:var(--ink);stroke-width:2px}.minimap__player[data-ko=true]{opacity:.35}.minimap__region rect{fill:#3a2d4d0f;stroke:#3a2d4d40;stroke-width:.8px}.minimap__region--bedroom rect{fill:#ffc9c08c}.minimap__region--library rect{fill:#d6ba9699}.minimap__region--kitchen rect{fill:#ffe8a099}.minimap__region--livingRoom rect{fill:#cfe2ffa6}.minimap__region--garden rect{fill:#b9f0d2a6}.minimap__region--hallway rect{fill:#ffffff73;stroke-dasharray:2 2}.minimap__region text{fill:#3a2d4dbf;stroke:#ffffffd9;stroke-width:1.6px;paint-order:stroke;pointer-events:none;font-size:7px;font-weight:700}.minimap__elite circle{stroke:#fff;stroke-width:1.5px}.minimap__elite--eliteTop circle{fill:#7b5bea}.minimap__elite--eliteBottom circle{fill:#e09a00}.minimap__elite path{fill:#fff}.minimap__elite[data-alive=false] circle{fill:#9a90a8}.minimap__elite text{fill:#fff;font-variant-numeric:tabular-nums;font-size:6.5px;font-weight:700}.ko{color:#fff;text-shadow:0 3px 10px #3a2d4d99;pointer-events:none;z-index:3;background:radial-gradient(circle,#3a2d4d26,#3a2d4d9e);place-content:center;justify-items:center;gap:0;padding-top:clamp(40px,22vh,140px);display:grid;position:absolute;inset:0}.ko__title{margin:0;font-size:clamp(30px,10vh,76px);font-weight:700;line-height:1}.ko__count{font-variant-numeric:tabular-nums;margin:0;font-size:clamp(48px,18vh,130px);font-weight:700;line-height:1}.ko__text{margin:0;font-size:clamp(14px,3.6vh,20px);font-weight:600}.countdown{color:#fff;text-shadow:0 4px 14px #3a2d4da6;pointer-events:none;place-content:center;justify-items:center;display:grid;position:absolute;inset:0}.countdown__ready{margin:0;font-size:clamp(20px,6vh,34px);font-weight:600}.countdown__num{margin:0;font-size:clamp(80px,30vh,190px);font-weight:700;line-height:1;animation:.9s ease-out both count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.6)}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.countdown__num{animation:none}}.bonuses{left:max(14px, env(safe-area-inset-left));bottom:calc(max(12px, env(safe-area-inset-bottom)) + 62px);pointer-events:none;gap:6px;margin:0;padding:0;list-style:none;display:flex;position:absolute}.bonus{font-variant-numeric:tabular-nums;color:#fff;box-shadow:var(--shadow-soft);border-radius:999px;align-items:center;gap:4px;padding:3px 10px 3px 6px;font-size:15px;font-weight:700;display:flex}.bonus--eliteTop{background:var(--violet)}.bonus--eliteBottom{background:#c98400}.bonus__icon{width:22px;height:22px}.board{top:max(10px, env(safe-area-inset-top));min-width:clamp(220px,34vh + 100px,330px);box-shadow:var(--shadow-soft);pointer-events:none;background:#ffffffeb;border-radius:999px;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px;padding:4px 6px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.board__team{color:#fff;border-radius:999px;align-items:center;gap:6px;padding:2px 12px;font-size:clamp(20px,5.4vh,30px);font-weight:700;line-height:1.1;display:flex}.board__team--blue{background:var(--blue);justify-content:flex-start}.board__team--orange{background:var(--orange);color:#2b1600;justify-content:flex-end}.board__dot{opacity:.85;background:currentColor;border-radius:50%;width:10px;height:10px}.board__team--blue .board__dot{border-radius:3px}.board__clock{justify-items:center;min-width:78px;display:grid}.board__time{font-variant-numeric:tabular-nums;color:var(--ink);font-size:clamp(18px,4.8vh,26px);font-weight:700;line-height:1.1}.board__final{color:#fff;background:var(--danger);white-space:nowrap;border-radius:999px;padding:0 8px;font-size:11px;font-weight:600}.board[data-final=true]{box-shadow:0 0 0 3px var(--danger), var(--shadow-soft);animation:1s ease-in-out infinite alternate board-pulse}.board[data-final=true] .board__time{color:var(--danger)}@keyframes board-pulse{0%{transform:translate(-50%)scale(1)}to{transform:translate(-50%)scale(1.04)}}@media (prefers-reduced-motion:reduce){.board[data-final=true]{animation:none}}.status{left:max(14px, env(safe-area-inset-left));bottom:max(12px, env(safe-area-inset-bottom));width:clamp(250px,52vh,380px);box-shadow:var(--shadow-soft);pointer-events:none;z-index:2;background:#ffffffe6;border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 10px 6px 6px;display:grid;position:absolute}.status__level{background:var(--violet);color:#fff;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}.status__level-num{margin-top:-4px;font-size:22px;font-weight:700;line-height:1}.status__stages{gap:2px;display:flex;position:absolute;bottom:4px}.status__stages i{background:#ffffff59;border-radius:50%;width:5px;height:5px}.status__stages i[data-on=true]{background:var(--gold)}.status__bars{gap:4px;display:grid}.status__hp{background:#e9e1f1;border-radius:999px;height:20px;position:relative;overflow:hidden}.status__hp-fill{background:var(--good);border-radius:999px;position:absolute;inset:0 auto 0 0}.status__shield-fill{background:#7fd4ff;position:absolute;top:0;bottom:0}.status__hp-text{color:#10321f;text-shadow:0 0 3px #fff;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;inset:0}.status__xp{background:#e9e1f1;border-radius:999px;height:7px;position:relative;overflow:hidden}.status__xp-fill{background:var(--violet);border-radius:999px;position:absolute;inset:0 auto 0 0}.status__marbles{color:#7a4d00;background:#fff3c9;border-radius:999px;align-items:center;gap:3px;min-width:52px;padding:3px 8px 3px 5px;font-size:19px;font-weight:700;line-height:1;display:flex}.status__marbles small{opacity:.8;font-size:12px;font-weight:500}.status__marbles[data-full=true]{background:var(--gold)}.status__marble-icon{color:#e09a00;width:22px;height:22px}.hud{pointer-events:none;z-index:2;position:absolute;inset:0}.hud__pause{top:max(10px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));width:56px;height:56px;color:var(--ink);box-shadow:var(--shadow-soft);pointer-events:auto;cursor:pointer;touch-action:none;background:#ffffffeb;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute}.hud__pause svg{width:26px;height:26px}.hud__pause:focus-visible{outline:4px solid var(--focus);outline-offset:3px}@media (width>=1200px){.cluster{--u:clamp(96px, 13vh, 124px);bottom:24px;right:26px}.act-recall{--size:76px}.act__caption{font-size:calc(var(--u) * .18)}.hud__pause{width:72px;height:72px;top:20px;right:26px}.hud__pause svg{width:34px;height:34px}.board{gap:8px;min-width:480px;padding:6px 8px;top:20px}.board__team{padding:4px 22px;font-size:38px}.board__dot{width:14px;height:14px}.board__clock{min-width:120px}.board__time{font-size:34px}.board__final{padding:1px 12px;font-size:15px}.hud{--minimap-w:clamp(340px, 29vw, 480px)}.minimap{top:20px;left:26px}.status{gap:12px;width:500px;padding:8px 16px 8px 8px;bottom:24px;left:26px}.status__level{width:64px;height:64px}.status__level-num{font-size:32px}.status__stages i{width:7px;height:7px}.status__bars{gap:6px}.status__hp{height:30px}.status__hp-text{font-size:18px}.status__xp{height:10px}.status__marbles{gap:5px;min-width:76px;padding:5px 12px 5px 8px;font-size:28px}.status__marbles small{font-size:16px}.status__marble-icon{width:30px;height:30px}.banners{gap:8px;width:min(92vw,680px);top:112px}.banner{padding:9px 26px;font-size:23px}.feed{gap:6px;max-width:440px;top:112px;right:26px}.feed__item{padding:5px 16px;font-size:18px}.boss-warning__text{padding:10px 32px;font-size:32px}.bonuses{gap:8px;bottom:104px;left:26px}.bonus{padding:5px 14px 5px 8px;font-size:20px}.bonus__icon{width:30px;height:30px}}.pause{z-index:4;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#3a2d4d8c;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.pause__box{text-align:center;justify-items:stretch;gap:12px;min-width:min(86vw,320px);padding:20px 28px;display:grid}.game{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#cfe6ff;width:100%;height:100%;position:relative;overflow:hidden}.game__canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.home__main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(16px,4vw,72px);max-width:1280px;min-height:100%;margin:0 auto;display:grid;position:relative}.home__title{color:var(--ink);text-shadow:0 5px #fffc;margin:0;font-size:clamp(48px,17vh,150px);font-weight:700;line-height:.95}.home__tagline{color:var(--ink-soft);max-width:24ch;margin:8px 0 clamp(14px,4vh,36px);font-size:clamp(16px,3.4vh,26px);font-weight:500}.home__actions{flex-wrap:wrap;gap:14px;display:flex}.home__play{min-width:190px;font-size:24px}.home__side{gap:clamp(10px,3vh,28px);min-width:0;display:grid}.home__parade{grid-template-columns:repeat(4,1fr);gap:clamp(6px,1.2vw,18px);display:grid}.home__figure{box-shadow:var(--shadow-soft)}.home__figure:nth-child(odd){transform:translateY(8%)}.home__howto-title{margin:0 0 6px;font-size:clamp(16px,3vh,22px)}.home__steps{color:var(--ink-soft);gap:4px;margin:0;padding-left:1.3em;font-size:clamp(13px,2.6vh,18px);font-weight:500;display:grid}.home__steps li::marker{color:var(--ink);font-weight:700}@media (height<=460px){.home__parade{display:none}.home__howto{padding:10px 16px}}@media (width<=700px) and (height>=461px){.home__main{grid-template-columns:1fr}}@media (width>=1000px) and (height>=700px){.home__main .btn{min-height:68px;padding:0 36px;font-size:26px}.home__steps{gap:8px;font-size:20px}.home__howto-title{font-size:24px}.home__howto{padding:22px 30px}.home__tagline{font-size:28px}}.home__online{background:#d7e6ff}@media (height<=500px){.home__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:440px;display:grid}.home__actions .home__play{grid-column:1/-1;min-height:52px}.home__actions .btn{min-width:0;min-height:48px;padding:0 12px;font-size:17px}.home__title{font-size:clamp(44px,14vh,150px)}.home__tagline{margin-bottom:10px}}.howto__inner{gap:clamp(8px,2vh,20px);max-width:1280px;margin:0 auto;display:grid;position:relative}.howto__cards{grid-template-columns:repeat(auto-fit,minmax(clamp(180px,22vw,290px),1fr));gap:clamp(6px,1.4vh,16px);margin:0;padding:0;list-style:none;display:grid}.howto__card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:clamp(8px,1.6vh,18px) clamp(10px,1.4vw,20px);display:grid}.howto__icon{color:#5a3fc0;background:#ece3ff;border-radius:16px;place-items:center;width:clamp(36px,8vh,64px);height:clamp(36px,8vh,64px);display:grid}.howto__svg{width:62%;height:62%}.howto__card h2{margin:0 0 2px;font-size:clamp(13px,2.6vh,20px);line-height:1.15}.howto__card p{color:var(--ink-soft);margin:0;font-size:clamp(11px,2.2vh,16px);line-height:1.25}@media (width>=1000px) and (height>=700px){.howto__cards{grid-template-columns:repeat(4,minmax(0,1fr))}.howto__card{grid-template-columns:1fr;justify-items:start;gap:12px}.howto__card h2{font-size:22px}.howto__card p{font-size:17px}}.results__inner{align-content:start;gap:clamp(6px,1.6vh,18px);max-width:1100px;min-height:100%;margin:0 auto;display:grid;position:relative}.results__head{text-align:center;justify-items:center;gap:0;display:grid}.results__outcome{text-shadow:0 4px #ffffffd9;margin:0;font-size:clamp(30px,8vh,64px);line-height:1}.results__head[data-outcome=victory] .results__outcome{color:#b86e00}.results__score{align-items:center;gap:14px;margin:0;font-size:clamp(26px,6.4vh,52px);font-weight:700;line-height:1.2;display:flex}.results__team{color:#fff;border-radius:999px;min-width:2.2ch;padding:0 14px}.results__team--blue{background:var(--blue)}.results__team--orange{background:var(--orange);color:#2b1600}.results__subtitle{color:var(--ink-soft);margin:0;font-size:clamp(13px,2.6vh,19px)}.results__tablewrap{padding:6px clamp(8px,2vw,24px);overflow-x:auto}.results__table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:clamp(12px,2.4vh,17px)}.results__table th,.results__table td{text-align:right;white-space:nowrap;padding:clamp(2px,.8vh,8px) 8px}.results__table thead th{color:var(--ink-soft);font-size:.85em;font-weight:600}.results__table th[scope=row],.results__table thead th:first-child{text-align:left}.results__table tbody[data-team=orange] tr:first-child>*{border-top:3px dashed var(--line)}.results__table tr{border-left:6px solid #0000}.results__table tbody[data-team=blue] tr{border-left-color:var(--blue)}.results__table tbody[data-team=orange] tr{border-left-color:var(--orange)}.results__table tr[data-local=true]{background:#fff3c9}.results__player{align-items:center;gap:10px;display:flex}.results__avatar{flex:none;width:clamp(26px,5.6vh,44px)}.results__names{font-weight:500;line-height:1.15;display:grid}.results__names small{color:var(--ink-soft);font-size:.82em}.results__you{background:var(--ink);color:#fff;border-radius:999px;margin-left:8px;padding:0 8px;font-size:.75em;font-style:normal}.results__actions{z-index:1;background:linear-gradient(#0000,#ffe9c9eb 40%);justify-content:center;gap:14px;padding:8px 0 4px;display:flex;position:sticky;bottom:0}@media (height<=500px){.results__inner{gap:6px}.results__head{grid-auto-flow:column;justify-content:center;align-items:center;gap:18px}.results__subtitle,.results__names small{display:none}.results__outcome{font-size:32px}.results__score{font-size:28px}.results__table th,.results__table td{padding:1px 8px}.results__avatar{width:28px}.results__actions .btn{min-height:56px}}.rotate{z-index:100;min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));text-align:center;color:var(--ink);background:linear-gradient(160deg,#ffe9c9,#ffd9ec 55%,#d9e6ff);place-content:center;justify-items:center;gap:8px;display:grid;position:fixed;inset:0}.rotate__icon{width:96px;height:96px;animation:2.4s ease-in-out infinite rotate-hint}.rotate__title{margin:8px 0 0;font-size:30px}.rotate__text{color:var(--ink-soft);margin:0;font-size:18px}@keyframes rotate-hint{0%,20%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.rotate__icon{animation:none}}.settings__inner{gap:clamp(8px,2vh,20px);max-width:980px;margin:0 auto;display:grid;position:relative}.settings__list{gap:0;padding:4px clamp(14px,3vw,32px);display:grid}.setting{border-bottom:2px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:clamp(6px,1.6vh,16px) 0;display:grid}.setting:last-child{border-bottom:0}.setting__text{gap:2px;display:grid}.setting__label{font-size:clamp(16px,3.2vh,22px);font-weight:700}.setting__hint{color:var(--ink-soft);font-size:clamp(11px,2.2vh,15px)}.setting__options{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.chip{min-height:48px;font:inherit;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#f0eaf7;border:3px solid #0000;border-radius:999px;padding:0 20px;font-size:clamp(14px,2.8vh,18px);font-weight:600}.chip[aria-checked=true]{background:var(--gold);border-color:var(--ink)}.chip:focus-visible{outline:4px solid var(--focus);outline-offset:2px}@media (width<=640px){.setting{grid-template-columns:1fr}.setting__options{justify-content:flex-start}}@media (height<=500px){.settings__inner{gap:6px}.setting{padding:3px 0}.chip{min-height:44px}}.settings__columns{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:clamp(8px,1.6vw,20px);display:grid}.settings__section{margin:6px 0 4px;font-size:clamp(16px,3.2vh,22px);font-weight:700}.setting--slider{grid-template-columns:1fr;gap:4px}.slider{grid-template-columns:minmax(0,1fr) 4ch;align-items:center;gap:10px;display:grid}.slider input[type=range]{width:100%;min-height:32px;accent-color:var(--violet);cursor:pointer}.slider input[type=range]:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.slider__value{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-soft);font-size:clamp(13px,2.6vh,17px);font-weight:600}@media (width<=760px){.settings__columns{grid-template-columns:1fr}}
