@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-arabic-wght-normal-CGnJ-sf6.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-ext-wght-normal-BjodpZir.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-wght-normal-DveCct9I.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-hebrew-wght-normal-BIkpbuMU.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-ext-wght-normal-OacczzuJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0f3f66;--bg2:#1f7fc4;--sand:#f3dfa6;--card:#ffffffeb;--ink:#1b2a40;--dim:#5b6b80;--accent:#ffd84a;--accent-ink:#3b2614;--ok:#2ec27e;--warn:#ff8a1f;--bad:#ff3b4e;--radius:18px;--shadow:0 10px 30px #081e3c40;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--ink);overscroll-behavior:none;margin:0;font-family:Rubik Variable,Rubik,system-ui,sans-serif}body{overflow:hidden}#app,.app{position:fixed;inset:0}button{font:inherit;cursor:pointer}input,select{font:inherit}h1,h2,h3{margin:0}.dim{color:var(--dim);font-size:.9em}.center{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;display:flex}.spinner{border:5px solid #ffffff4d;border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.veil{z-index:50;color:#fff;background:#081e3ca6;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:18px;display:flex;position:fixed;inset:0}.btn{color:var(--ink);background:#e8eef7;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:12px 20px;font-size:16px;font-weight:700;text-decoration:none;transition:transform 80ms;display:inline-flex;box-shadow:0 3px #0000001f}.btn:active{box-shadow:none;transform:translateY(2px)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{color:var(--accent-ink);background:linear-gradient(135deg,#ffd84a,#ff9f1a)}.btn.secondary{background:#cfe9ff}.btn.ghost{box-shadow:none;color:#fff;background:0 0;text-decoration:underline}.btn.big{min-height:58px;padding:16px 28px;font-size:20px}.btn.small{min-height:34px;padding:6px 12px;font-size:14px}.btn.link,.link{color:var(--bg2);background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.panel{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.center-row{justify-content:center}input[type=text],input:not([type]),.code-input{background:#fff;border:2px solid #c9d6e8;border-radius:12px;flex:1;min-width:0;padding:10px 14px;font-size:18px}.code-input{letter-spacing:.3em;text-transform:uppercase;text-align:center;max-width:180px;font-weight:800}.toast{left:50%;bottom:calc(18px + var(--safe-b));z-index:60;color:#fff;box-shadow:var(--shadow);text-align:center;pointer-events:none;background:#141e32eb;border-radius:14px;max-width:min(92vw,520px);padding:12px 20px;font-size:17px;font-weight:700;animation:.25s ease-out pop;position:fixed;transform:translate(-50%)}.toast.good{background:#1a8a56f2}.toast.warn{background:#c25d00f2}@keyframes pop{0%{opacity:0;transform:translate(-50%)translateY(14px)scale(.95)}}.modal-veil{z-index:40;background:#081e3c8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:12px;width:min(92vw,520px);max-height:92vh;padding:22px;display:flex;overflow:auto}.modal h2{font-size:24px}.modal label{justify-content:space-between;align-items:center;gap:10px;font-weight:600;display:flex}.modal input[type=range]{flex:1}.tag{color:var(--ink);background:#d6e4f7;border-radius:999px;margin-inline-start:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.char{border-radius:var(--radius);color:var(--ink);box-shadow:var(--shadow);border:0;border-top:8px solid var(--c);text-align:center;background:#fff;flex-direction:column;align-items:center;gap:6px;padding:14px 12px;transition:transform .12s;display:flex;position:relative}.char:not(:disabled):hover{transform:translateY(-3px)}.char.mine{outline:4px solid var(--c);background:color-mix(in srgb, var(--c) 12%, #fff)}.char.locked{opacity:.55;filter:grayscale(.4)}.char-emoji{font-size:40px;line-height:1}.char-name{color:var(--cd);font-size:20px;font-weight:800}.char-name small{color:var(--dim);font-size:13px;font-weight:600;display:block}.char-ability{color:var(--ink);font-size:13px;line-height:1.3}.char-owner{color:#fff;background:var(--c);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}.char-owner.free{color:var(--ink);background:#cfe9ff}.char.small{gap:4px;padding:10px}.char.small .char-emoji{font-size:30px}.char.small .char-ability{font-size:12px}.home{height:100%;padding:calc(16px + var(--safe-t)) 16px calc(16px + var(--safe-b));background:radial-gradient(circle at 50% 110%, #2b8fd0 0, var(--bg) 55%);flex-direction:column;align-items:center;gap:18px;display:flex;overflow:auto}.hero{text-align:center;color:#fff}.hero h1{text-shadow:0 6px #0000002e;letter-spacing:-.01em;font-size:clamp(34px,7vw,64px);font-weight:900}.tagline{opacity:.9;margin:6px 0 0;font-size:clamp(14px,2.3vw,18px)}.chars-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:min(100%,980px);display:grid}.actions{flex-direction:column;align-items:stretch;gap:12px;width:min(100%,520px);display:flex}.hello{text-align:center;margin:0;font-size:18px}.help{color:#ffffffbf;text-align:center;flex-direction:column;gap:4px;max-width:720px;font-size:13px;display:flex}@media (max-width:760px){.chars-row{grid-template-columns:repeat(2,minmax(0,1fr))}.char-ability{display:none}.home .char{padding:10px}}.lobby{height:100%;padding:calc(14px + var(--safe-t)) 16px calc(16px + var(--safe-b));background:radial-gradient(circle at 50% 110%, #2b8fd0 0, var(--bg) 55%);grid-template-rows:auto 1fr;grid-template-columns:1fr 340px;gap:16px;display:grid;overflow:auto}.lobby-head{color:#fff;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;display:flex}.lobby-head h1{font-size:28px;font-weight:900}.code-line{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.code{letter-spacing:.25em;background:var(--accent);color:var(--accent-ink);border-radius:12px;padding:2px 12px;font-size:30px}.chars-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:14px;display:grid}.lobby-side{flex-direction:column;gap:10px;display:flex}.players{flex-direction:column;gap:6px;margin:0;padding:0;font-size:16px;list-style:none;display:flex}.players li.gone{opacity:.6}.modes{flex-direction:column;gap:8px;display:flex}.mode{text-align:start;color:var(--ink);background:#fff;border:2px solid #c9d6e8;border-radius:14px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.mode.on{border-color:var(--bg2);background:#e6f3ff}.mode:disabled{cursor:default}.mode span{color:var(--dim);font-size:13px}.wait{text-align:center;color:var(--dim);margin:0;font-weight:600}@media (max-width:820px){.lobby{grid-template-rows:auto auto auto;grid-template-columns:1fr}.chars-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lobby .char-ability{display:none}}.game{background:#9fdcff;position:absolute;inset:0}#game{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hud{pointer-events:none;position:absolute;inset:0}.hud>*{pointer-events:auto}.hud-top-start{top:calc(10px + var(--safe-t));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute;inset-inline-start:calc(10px + var(--safe-r))}.hud-top-end{top:calc(10px + var(--safe-t));flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;inset-inline-end:calc(10px + var(--safe-l))}.chip{color:#fff;-webkit-backdrop-filter:blur(6px);background:#0a14289e;border-radius:16px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:flex}.chip.warn{background:#c25d00d9}.chip.net{background:#c23232e6;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.char-chip{border-inline-start:6px solid var(--c);cursor:pointer}.chip-emoji{font-size:24px}.chip-name{font-size:18px}.hearts{color:#ff5e8a;letter-spacing:2px;font-size:18px}.cool{background:linear-gradient(90deg, var(--accent) var(--p), #fff3 var(--p));min-width:64px;color:var(--accent-ink);text-align:center;border-radius:10px;padding:4px 8px;font-size:13px;position:relative}.scores{flex-direction:column;align-items:stretch;gap:2px}.timer{text-align:center;color:var(--accent);font-size:24px}.score{border-inline-start:4px solid var(--c);opacity:.85;padding-inline-start:6px;font-size:14px}.score.me{opacity:1;font-size:16px}.objective{text-align:end;cursor:pointer;flex-direction:column;align-items:flex-end;gap:2px;max-width:min(300px,44vw)}.objective b{font-size:17px}.objective small{opacity:.85;font-size:12px;font-weight:500}.gears{color:var(--accent);font-size:18px}.gears .dim{color:#ffffff59}.minimap{cursor:pointer;background:#0a142866;border-radius:50%;width:150px;height:150px}.minimap.big{z-index:30;border-radius:18px;width:min(70vw,440px);height:min(86vh,700px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.hud-buttons{gap:6px;display:flex}.hbtn{color:#fff;background:#0a14289e;border:0;border-radius:12px;width:44px;height:44px;font-size:20px}.prompt{color:#fff;background:#0a1428bf;border-radius:14px;align-items:center;gap:10px;padding:10px 18px;font-size:18px;font-weight:700;display:flex;position:absolute;bottom:18%;left:50%;transform:translate(-50%)}.prompt kbd{background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:2px 10px;font-family:inherit}.countdown{color:var(--accent);text-shadow:0 8px #00000040;pointer-events:none;justify-content:center;align-items:center;font-size:clamp(80px,20vw,180px);font-weight:900;animation:.3s ease-out pop;display:flex;position:absolute;inset:0}.finished{color:#fff;background:#1a8a56e6;border-radius:16px;padding:12px 24px;font-size:22px;font-weight:800;position:absolute;top:28%;left:50%;transform:translate(-50%)}.chars-modal .chars-pick{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stick-zone{touch-action:none;width:45%;height:60%;position:absolute;bottom:0;left:0}.stick-knob{pointer-events:none;background:#ffffff38;border:3px solid #fff9;border-radius:50%;width:110px;height:110px;display:none;position:absolute}.stick-knob:after{content:"";background:#ffffffd9;border-radius:50%;width:46px;height:46px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.look-zone{touch-action:none;width:55%;height:60%;position:absolute;bottom:0;right:0}.tbtns{right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));touch-action:none;grid-template-columns:1fr 1fr;align-items:end;gap:12px;display:grid;position:absolute}.tbtn{width:72px;height:72px;color:var(--ink);-webkit-user-select:none;user-select:none;touch-action:none;background:#ffffffd9;border:0;border-radius:50%;font-size:14px;font-weight:800;box-shadow:0 4px #0003}.tbtn:active{box-shadow:none;transform:translateY(3px)}.tbtn.jump{background:var(--accent);grid-area:1/2/3;width:96px;height:96px;font-size:17px}.tbtn.act{background:#cfe9ff}.tbtn.act.ready{background:var(--ok);color:#fff;animation:.9s infinite pulse}.tbtn.abil{background:conic-gradient(#ff8a1f var(--p), #ffffff80 var(--p))}.tbtn.abil.cd{color:var(--dim)}@keyframes pulse{50%{transform:scale(1.06)}}.hud.portrait .objective{max-width:50vw}.hud.portrait .minimap{width:110px;height:110px}.hud.portrait .tbtns{bottom:calc(26px + var(--safe-b))}.results{height:100%;padding:calc(20px + var(--safe-t)) 16px calc(20px + var(--safe-b));color:#fff;background:radial-gradient(circle at 50% 0%, #2b8fd0 0, var(--bg) 60%);flex-direction:column;align-items:center;gap:16px;display:flex;overflow:auto}.results h1{text-align:center;font-size:clamp(30px,6vw,48px);font-weight:900}.subtitle{opacity:.9;margin:0;font-size:18px}.result-list{flex-direction:column;gap:10px;width:min(100%,640px);margin:0;padding:0;list-style:none;display:flex}.result-list li{background:var(--card);color:var(--ink);border-inline-start:8px solid var(--c);border-radius:16px;grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;align-items:center;gap:2px 12px;padding:12px 16px;display:grid}.r-avatar{grid-row:1/3;font-size:32px}.r-name{font-size:20px;font-weight:800}.r-name small{color:var(--dim);margin-inline-start:6px;font-weight:600}.r-title{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:999px;grid-area:1/3/3;padding:6px 12px;font-size:15px;font-weight:800}.r-stats{color:var(--dim);font-size:14px}
