:root{--ink:#1d1640;--sky1:#6c5ce7;--sky2:#a29bfe;--paper:#fffaf0;--panel:#fff;--text:#1d1640;--muted:#6b6390;--accent:#ffc93c;--pink:#ff6b9d;--good:#2ecc71;--bad:#ff5e57;--ok:#4aa8ff;--weak:#ff9f43;--font:"Fredoka", "Rubik", "Segoe UI", system-ui, sans-serif;--ru:"Rubik", "Segoe UI", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--text);background:radial-gradient(circle at 15% 20%, #ffffff2e 0 60px, transparent 61px), radial-gradient(circle at 85% 12%, #ffffff24 0 90px, transparent 91px), radial-gradient(circle at 70% 85%, #ffffff1a 0 120px, transparent 121px), linear-gradient(160deg, var(--sky1), var(--sky2)) fixed;margin:0}#app{height:100%}.ru{font-family:var(--ru)}button{font:inherit;color:var(--ink);background:var(--panel);border:3px solid var(--ink);cursor:pointer;box-shadow:0 4px 0 var(--ink);border-radius:14px;padding:10px 18px;font-weight:600;transition:transform 80ms,box-shadow 80ms}button:hover:not(:disabled){box-shadow:0 6px 0 var(--ink);transform:translateY(-2px)}button:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}button:disabled{cursor:default;opacity:.6}button.primary{background:var(--accent);font-weight:700}.screen{text-align:center;max-width:820px;margin:0 auto;padding:24px 16px 40px}.panel{background:var(--paper);border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);border-radius:22px;padding:20px}h1{color:#fff;text-shadow:3px 3px 0 var(--ink), -1px -1px 0 var(--ink), 1px -1px 0 var(--ink), -1px 1px 0 var(--ink);margin:8px 0 4px;font-size:3.2rem}h2{margin:6px 0}.title-ru{color:var(--accent);font-family:var(--ru);font-weight:800}.sub{color:#f4f1ff;font-weight:600}.panel .sub,.tip,.legend{color:var(--muted)}.row{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px;display:flex}.row.small button{padding:6px 12px;font-size:.85rem}.back-btn{position:absolute;top:16px;left:16px}.modes{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:22px 0;display:grid}.mode{flex-direction:column;align-items:center;gap:4px;padding:16px 12px 14px;display:flex}.mode-icon{font-size:2.4rem;line-height:1}.mode-ru{font-family:var(--ru);color:var(--sky1);letter-spacing:2px;font-size:1.5rem;font-weight:800}.mode-name{font-weight:700}.mode-blurb{color:var(--muted);font-size:.82rem;font-weight:500}.mode.locked{background:#e9e6f5}.mode.locked .mode-ru{color:var(--muted)}.grid{grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:8px;display:grid}.cell{font-family:var(--ru);box-shadow:0 3px 0 var(--ink);padding:8px 0;font-size:1.35rem;font-weight:800}.cell.new{background:#fff}.cell.weak{background:#ffd8b0}.cell.ok{background:#bfe0ff}.cell.strong{background:#b8f5cf}.cell.locked{color:var(--muted);background:#e9e6f5}.legend i{border:2px solid var(--ink);border-radius:4px;width:12px;height:12px;margin:0 4px 0 12px;display:inline-block}.legend .new{background:#fff}.legend .weak{background:#ffd8b0}.legend .ok{background:#bfe0ff}.legend .strong{background:#b8f5cf}.cards{flex-wrap:wrap;justify-content:center;gap:12px;margin:20px 0;display:flex}.card{flex-direction:column;gap:4px;width:140px;padding:14px 10px;display:flex}.card-big{font-family:var(--ru);font-size:2.4rem;font-weight:800}.card-sound{color:var(--pink);font-size:1.4rem;font-weight:700}.card-hint{color:var(--muted);font-size:.8rem;font-weight:500}.start{padding:12px 44px;font-size:1.3rem}.hud{color:#fff;text-shadow:2px 2px 0 var(--ink);align-items:center;gap:16px;padding:10px 16px;font-size:1.25rem;font-weight:700;display:flex}.hud .lives{color:var(--bad);letter-spacing:2px}.hud .combo{color:var(--accent);text-align:center;flex:1}.hud .score{text-align:right;min-width:60px}.type{width:100%;font:inherit;text-align:center;color:var(--ink);background:var(--paper);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:16px;outline:none;padding:12px;font-size:1.6rem;font-weight:600}.type:focus{background:#fff}.type.cyr{font-family:var(--ru);letter-spacing:3px}.type.shake{background:#ffd6d4;animation:.3s shake}@keyframes shake{25%{translate:-8px}75%{translate:8px}}.rain{flex-direction:column;max-width:920px;height:100%;margin:0 auto;display:flex}.field{flex:1;position:relative;overflow:hidden}.ground{border-top:3px solid var(--ink);background:repeating-linear-gradient(90deg,#2ecc71 0 20px,#27ae60 20px 40px);height:18px}.drop{font-family:var(--ru);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);white-space:nowrap;will-change:transform;background:#fff;border-radius:50% 50% 46% 46%/60% 60% 40% 40%;padding:2px 14px;font-size:2.6rem;font-weight:800;position:absolute;top:0;left:0}.drop.word{background:var(--accent);border-radius:18px;font-size:2rem}.drop.target{background:#fff3c4}.drop.zapped{background:var(--good);animation:.3s forwards zap}.drop.landed{background:var(--bad);animation:.5s forwards land}@keyframes zap{to{opacity:0;rotate:15deg;scale:1.8}}@keyframes land{to{opacity:0;scale:1.2 .4}}.popup{border:3px solid var(--ink);pointer-events:none;white-space:nowrap;background:#fff;border-radius:12px;padding:4px 12px;font-size:1.1rem;font-weight:700;animation:1.6s forwards rise;position:absolute}.popup.good{background:#b8f5cf}.popup.bad{background:#ffd6d4}@keyframes rise{70%{opacity:1}to{opacity:0;translate:0 -50px}}.controls{padding:12px 16px 20px}.taps{grid-template-columns:1fr 1fr;gap:10px;display:none}.tap{padding:14px 0;font-size:1.4rem}.tap.wrong{background:#ffd6d4}@media (pointer:coarse){.rain .type{display:none}.taps{display:grid}.drop{font-size:2.2rem}}.big-score{margin:8px 0;font-size:3rem;font-weight:700}.best{color:var(--pink);vertical-align:middle;font-size:1rem}.unlock{color:#1e8449;font-size:1.2rem;font-weight:600}.unlock b{color:var(--pink)}.unlock .ru{letter-spacing:4px;font-size:1.6rem}.osk{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px;margin-top:12px;display:grid}.osk-key{box-shadow:0 3px 0 var(--ink);border-width:2px;border-radius:10px;flex-direction:column;align-items:center;padding:4px 0 2px;display:flex}.osk-key .ru{font-size:1.25rem;font-weight:800;line-height:1.1}.osk-key small{color:var(--muted);font-size:.68rem;font-weight:600}.osk-back{background:#ffd6d4;font-size:1.2rem}.settings{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin:4px 0 18px;font-weight:600;display:flex}.settings input[type=range]{accent-color:var(--pink);vertical-align:middle;width:160px}.speed-val{min-width:3ch;color:var(--pink);display:inline-block}.wave-opt{box-shadow:0 2px 0 var(--ink);margin-left:4px;padding:4px 12px;font-size:.9rem}.wave-opt.on{background:var(--accent)}.menu h2.section{color:#fff;text-align:left;text-shadow:2px 2px 0 var(--ink);margin:18px 4px -10px}.modes.minis{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.modes.minis .mode-icon{font-size:2rem}.modes.minis .mode-ru{font-size:1.2rem}#app{z-index:1;position:relative}.scenery{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.skyline{opacity:.55;width:100%;height:26vh;min-height:140px;position:absolute;bottom:0;left:0}.cloud{opacity:.75;width:150px;animation:linear infinite drift;position:absolute}.cloud.c1{animation-duration:95s;animation-delay:-20s;top:8vh}.cloud.c2{opacity:.55;width:110px;animation-duration:130s;animation-delay:-80s;top:22vh}.cloud.c3{opacity:.4;width:90px;animation-duration:160s;animation-delay:-40s;top:40vh}@keyframes drift{0%{transform:translate(-200px)}to{transform:translate(calc(100vw + 200px))}}.flake{opacity:.7;background:#fff;border-radius:50%;animation:linear infinite snow;position:absolute;top:-12px}@keyframes snow{0%{transform:translateY(-10px)}50%{transform:translate(18px,50vh)}to{transform:translate(-6px,102vh)}}.screen-in{animation:.28s ease-out screen-in}@keyframes screen-in{0%{opacity:0;transform:translateY(12px)}}.fx-layer{pointer-events:none;z-index:50;position:fixed;inset:0;overflow:hidden}.spark{text-shadow:0 0 2px #fff;font-size:18px;font-style:normal;font-weight:700;animation:.7s ease-out forwards spark;position:absolute;translate:-50% -50%}@keyframes spark{to{transform:translate(var(--dx), var(--dy)) scale(.3) rotate(160deg);opacity:0}}.confetti{border:2px solid var(--ink);border-radius:3px;width:10px;height:16px;animation:ease-in forwards confetti-fall;position:absolute;top:-20px}@keyframes confetti-fall{to{transform:translate(var(--drift), 108vh) rotate(var(--spin))}}.toasts{z-index:60;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:14px;left:50%;translate:-50%}.toast{background:var(--paper);border:3px solid var(--ink);min-width:260px;box-shadow:0 5px 0 var(--ink);border-radius:16px;align-items:center;gap:12px;padding:10px 18px 10px 12px;animation:.35s cubic-bezier(.2,1.6,.4,1) toast-in;display:flex}.toast.out{animation:.4s forwards toast-out}.toast-icon{font-size:2rem}.toast b{display:block}.toast small{color:var(--muted);font-weight:500}@keyframes toast-in{0%{opacity:0;transform:translateY(-40px)scale(.8)}}@keyframes toast-out{to{opacity:0;transform:translateY(-30px)}}.mascot{display:block;overflow:visible}.mascot .m-body{transform-origin:60px 138px;animation:2.6s ease-in-out infinite bob}.mascot .m-eyes{transform-box:fill-box;transform-origin:50%;animation:4.5s infinite blink}.mascot.mood-cheer .m-body{animation:.6s ease-in-out infinite alternate hop}.mascot.mood-cheer .m-arms{transform-origin:60px 96px;animation:.6s ease-in-out infinite alternate wave}.mascot.mood-sad .m-body{animation:3s ease-in-out infinite sway}@keyframes bob{50%{translate:0 -8px;rotate:-4deg}}@keyframes hop{to{transform:translateY(-8px)}}@keyframes wave{to{transform:rotate(4deg)}}@keyframes sway{50%{transform:rotate(-3deg)}}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.buddy{justify-content:center;align-items:center;gap:6px;max-width:640px;margin:4px auto 0;display:flex}.buddy-bear{box-shadow:none;background:0 0;border:0;padding:0}.buddy-bear:hover:not(:disabled){box-shadow:none;transform:rotate(-4deg)scale(1.05)}.buddy-bear:active:not(:disabled){box-shadow:none;transform:scale(.95)}.say-bubble{text-align:left;border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;padding:10px 16px;font-weight:600;animation:.3s pop;position:relative}.say-bubble:before{content:"";border:9px solid #0000;border-right-color:var(--ink);position:absolute;top:50%;left:-12px;translate:0 -50%}.say-bubble .ru{color:var(--sky1);font-size:1.25rem}.say-bubble small{color:var(--muted);font-weight:500;display:block}@keyframes pop{0%{opacity:0;scale:.6}}.end-buddy{justify-content:center;align-items:center;gap:12px;margin:-6px 0 6px;display:flex}.end-bars{gap:8px;max-width:460px;margin:14px auto 0;display:grid}.meter{text-align:left;grid-template-columns:110px 1fr 100px;align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:grid}.meter span:last-child{text-align:right;color:var(--muted)}.meter-bar{border:2px solid var(--ink);background:#ebe7fa;border-radius:99px;height:14px;overflow:hidden}.meter-bar i{background:var(--good);border-radius:99px;height:100%;animation:.9s ease-out fill;display:block}.meter-bar.xp i{background:var(--accent)}@keyframes fill{0%{width:0}}.menu .modes .mode{animation:.4s backwards card-in;animation-delay:calc(var(--i,0) * 45ms)}@keyframes card-in{0%{opacity:0;transform:translateY(16px)scale(.92)}}.mode:hover:not(:disabled) .mode-icon{animation:.5s wiggle}@keyframes wiggle{25%{rotate:-12deg;scale:1.15}75%{rotate:10deg;scale:1.15}}.menu h1{animation:4s ease-in-out infinite title-float;display:inline-block}@keyframes title-float{50%{transform:translateY(-4px)rotate(-1deg)}}.cell{transition:transform .1s}.topbar{flex-wrap:wrap;justify-content:center;gap:10px;margin:12px 0 4px;display:flex}.chip{background:var(--paper);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:99px;align-items:center;gap:8px;padding:6px 14px;font-size:.95rem;font-weight:700;display:inline-flex}button.chip{padding:6px 14px}.chip small{color:var(--muted);font-weight:600}.chip .meter-bar{width:80px;height:10px}.chip.hot{background:#ffe1c4}.calm *,.calm :before,.calm :after{transition:none!important;animation:none!important}.calm .flake{display:none}.menu .buddy{margin-top:6px}.tip-line{color:var(--ink);margin-top:4px;font-size:.88rem;font-weight:600;display:block}.no-scenery .scenery{display:none}.modal{z-index:40;background:#1d164073;place-items:center;padding:16px;animation:.2s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal-panel{text-align:left;width:min(560px,100%);max-height:90vh;animation:.25s pop;position:relative;overflow:auto}.modal-panel h2{margin-top:0}.modal-panel h3{margin:18px 0 4px}.modal-x{padding:4px 10px;position:absolute;top:12px;right:12px}.set-row{border-bottom:2px dashed #e3def5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-weight:600;display:flex}.seg{flex-wrap:wrap;gap:6px;display:inline-flex}.seg button{box-shadow:0 2px 0 var(--ink);padding:4px 12px;font-size:.9rem}.seg button.on{background:var(--accent)}button.danger{background:#ffd6d4}.rain .field{background-color:#0000;background-image:radial-gradient(70px 34px at 6% 0,#fff 96%,#0000 100%),radial-gradient(90px 40px at 22% 0,#fff 96%,#0000 100%),radial-gradient(80px 36px at 40% 0,#fff 96%,#0000 100%),radial-gradient(100px 42px at 60% 0,#fff 96%,#0000 100%),radial-gradient(80px 36px at 78% 0,#fff 96%,#0000 100%),radial-gradient(90px 40px at 95% 0,#fff 96%,#0000 100%);background-position:0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:no-repeat;background-size:auto,auto,auto,auto,auto,auto;background-attachment:scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box}.rain .drop.landed:after{content:"💦";font-size:1.4rem;position:absolute;bottom:-14px;left:50%;translate:-50%}.rain .hud .combo:not(:empty){animation:.6s ease-in-out infinite alternate combo-pulse}@keyframes combo-pulse{to{transform:scale(1.12)}}.mode.locked:disabled{opacity:1;color:var(--muted)}.mode.locked .mode-icon{filter:grayscale(.7);opacity:.6}.stats{max-width:900px}.stats .panel{text-align:left;margin-top:16px}.stats h3{margin:0 0 10px}.muted{color:var(--muted)}.small{font-size:.85rem}.level-card{align-items:center;gap:18px;display:flex}.level-info{flex:1}.level-info h2{margin:0 0 8px;font-size:1.8rem}.level-info p{margin:8px 0 0}.meter-bar.big{height:22px}.stat-tiles{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:16px;display:grid}.stat-tile{background:var(--paper);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);border-radius:18px;flex-direction:column;align-items:center;padding:14px 10px;animation:.4s backwards card-in;display:flex}.stat-tile:nth-child(2){animation-delay:40ms}.stat-tile:nth-child(3){animation-delay:80ms}.stat-tile:nth-child(4){animation-delay:.12s}.stat-tile:nth-child(5){animation-delay:.16s}.stat-tile:nth-child(6){animation-delay:.2s}.stat-tile:nth-child(7){animation-delay:.24s}.stat-tile:nth-child(8){animation-delay:.28s}.stat-tile-icon{font-size:1.9rem}.stat-tile b{font-size:1.6rem}.stat-tile span:not(.stat-tile-icon){font-weight:600}.stat-tile small{color:var(--muted);font-weight:500}.chart{width:100%;height:auto;font-family:var(--font);fill:var(--muted);font-size:11px}.chart rect{transition:opacity .15s}.chart g:hover rect{opacity:.75}.goal-label{fill:#ff6b9d;font-weight:700}.stage-row{border-top:2px dashed #e3def5;grid-template-columns:170px 1fr 54px;align-items:center;gap:10px;padding:6px 0;display:grid}.stage-row:first-of-type{border-top:0}.stage-name{font-weight:600}.stage-row.locked .stage-name{color:var(--muted)}.stage-letters{flex-wrap:wrap;gap:6px;display:flex}.stage-pct{text-align:right;font-weight:700}.mini-cell{width:38px;font-family:var(--ru);box-shadow:0 2px 0 var(--ink);border-width:2px;border-radius:10px;padding:4px 0;font-size:1.05rem;font-weight:800}.mini-cell.new{background:#fff}.mini-cell.weak{background:#ffd8b0}.mini-cell.ok{background:#bfe0ff}.mini-cell.strong{background:#b8f5cf}.mini-cell.locked{color:var(--muted);background:#e9e6f5}.tricky{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.tricky-item{flex-direction:column;gap:2px;padding:8px;display:flex}.tricky-item .ru{font-size:1.3rem}.tricky-item small{color:var(--muted);font-size:.78rem;font-weight:500}.tricky-item.weak{background:#ffd8b0}.tricky-item.ok{background:#bfe0ff}.tricky-item.new{background:#fff}.badges{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.badge{text-align:center;color:var(--muted);border:3px dashed #c9c2e8;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;display:flex}.badge.got{border:3px solid var(--ink);color:var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff3c4}.badge-icon{font-size:1.8rem}.badge.got .badge-icon{animation:3s ease-in-out infinite badge-shine}.badge small{font-size:.75rem;font-weight:500}@keyframes badge-shine{50%{transform:scale(1.12)rotate(-6deg)}}.bests{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px 20px;display:grid}.best-row{border-bottom:2px dashed #e3def5;justify-content:space-between;padding:6px 0;font-weight:600;display:flex}.lb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.lb-board{font:inherit;border:3px solid var(--ink);background:#fff;border-radius:14px;padding:8px 12px;font-weight:700}.lb-me{font-size:.95rem}.lb-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lb-row{text-align:left;border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);animation:.3s backwards pop;animation-delay:calc(min(var(--i), 15) * 40ms);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:8px 14px;display:flex}.lb-row.me{background:#fff4c7}.lb-rank{text-align:center;width:2.2em;font-size:1.3rem;font-weight:800}.lb-face{font-size:1.8rem}.lb-name{flex:1;font-weight:700}.lb-name small{color:var(--muted);font-weight:600;display:block}.lb-score{font-size:1.2rem}.lb-score small{color:var(--muted);font-size:.75em}.lb-join{margin-top:16px}.pl-list{flex-direction:column;gap:8px;margin:12px 0;display:flex}.pl-row{border:3px solid var(--ink);background:#fff;border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;display:flex}.pl-row.me{background:#fff4c7}.pl-face{font-size:2rem}.pl-info{flex-direction:column;flex:1;display:flex}.pl-info small{color:var(--muted);font-weight:600}.pl-btns{align-items:center;gap:6px;display:flex}.pl-btns button{padding:6px 12px}.pl-playing{color:var(--good);font-weight:700}.pl-name{min-width:140px;font:inherit;border:3px solid var(--ink);border-radius:12px;flex:1;padding:8px 12px;font-weight:700}.pl-icons{flex-wrap:wrap;gap:4px;width:100%;display:flex}.pl-icon{background:#fff;padding:2px 6px;font-size:1.4rem}.pl-icon.on{background:var(--accent)}.spy{max-width:1060px;margin:0 auto;padding-bottom:24px}.spy-body{grid-template-columns:1fr 230px;gap:16px;padding:0 16px;display:grid}.spy-main{text-align:center}.brief{color:#fff;text-shadow:2px 2px 0 var(--ink);font-size:1.15rem;font-weight:600}.sign{border:4px solid var(--ink);min-width:320px;box-shadow:0 8px 0 var(--ink);border-radius:18px;margin:10px auto 6px;padding:22px 26px;display:inline-block;rotate:-1.5deg}.sign-travel{background:#2f80ed}.sign-food{background:repeating-linear-gradient(90deg,#ff5e57 0 28px,#fff 28px 56px)}.sign-culture{background:var(--accent)}.sign-everyday{background:var(--paper)}.sign-hq{color:#7dffb0;background:#1d1640;font-family:Consolas,monospace;rotate:1deg}.tiles{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tile{border:3px solid var(--ink);min-width:54px;color:var(--ink);background:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:6px 6px 4px;display:flex}.tile b{font-size:2.4rem;line-height:1.1}.tile i{color:var(--pink);min-height:1.4em;font-size:1.1rem;font-style:normal;font-weight:700}.tile.current{box-shadow:0 6px 0 var(--accent);background:#fff3c4;animation:1s infinite pulse;translate:0 -6px}.tile.cracked{background:#b8f5cf}@keyframes pulse{50%{box-shadow:0 6px 12px var(--accent)}}.hq-emoji{font-size:3.4rem}.hq-en{margin-bottom:12px;font-size:1.5rem;font-weight:700}.blanks .tile i{display:none}.hint{color:#fff;min-height:1.5em;text-shadow:1px 1px 0 var(--ink);font-weight:600}.hint b{color:var(--accent)}.spy .type{max-width:420px}.choices{grid-template-columns:1fr 1fr;gap:12px;max-width:560px;margin:8px auto;display:grid}.choice{text-align:left;align-items:center;gap:10px;font-size:1.1rem;display:flex}.choice span{font-size:1.7rem}.choice.right{background:#b8f5cf}.choice.wrong{background:#ffd6d4}.solved{border:3px solid var(--ink);max-width:600px;box-shadow:0 5px 0 var(--ink);background:#b8f5cf;border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:16px auto;padding:12px 18px;font-size:1.2rem;animation:.3s pop;display:flex}.solved-emoji{font-size:2.4rem}.codebook{align-self:start;padding:12px}.codebook h3{margin:0 0 8px}.cb-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.cb{border:2px solid var(--ink);border-radius:8px;justify-content:center;align-items:baseline;gap:4px;padding:3px;font-size:.8rem;font-weight:600;display:flex}.cb b{font-size:1.1rem}.cb.new{background:#fff}.cb.weak{background:#ffd8b0}.cb.ok{background:#bfe0ff}.cb.strong{background:#b8f5cf}.review{gap:6px;margin:12px 0;display:grid}.review-row{border:2px solid var(--ink);text-align:left;border-radius:12px;grid-template-columns:40px 1.2fr 1fr 1.4fr;align-items:center;gap:8px;padding:6px 10px;display:grid}.review-row.ok{background:#b8f5cf}.review-row.meh{background:#ffe9c4}.review-row span:first-child{font-size:1.5rem}@media (width<=760px){.spy-body{grid-template-columns:1fr}}.cb small{filter:blur(4px);font-size:.8rem;transition:filter .15s}.cb:hover small{filter:none}.cb-tip{color:var(--muted);margin:-6px 0 8px;font-size:.75rem}.sign-nature{background:#55c57a}.sign-home{background:repeating-linear-gradient(0deg,#d9a066 0 14px,#c98f55 14px 28px)}.sign-people{background:var(--pink)}.sign-describe{background:#a29bfe}.sign-actions{background:var(--weak)}.rank{margin:4px 0;font-size:1.4rem}.rank-steps{justify-content:center;gap:6px;margin-bottom:8px;font-size:1.5rem;display:flex}.rank-steps span{filter:grayscale()opacity(.35)}.rank-steps span.on{filter:none}.focus-label{margin:14px 0 6px;font-weight:700}.focus{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px;display:flex}.focus-opt{box-shadow:0 2px 0 var(--ink);padding:6px 12px;font-size:.9rem}.focus-opt.on{background:var(--accent)}.tiles .tword{gap:6px;margin:0 10px 8px;display:inline-flex}.punct{color:var(--ink);align-self:flex-end;font-size:2rem;font-weight:800}.sign.long{max-width:100%}.sign.long .tile{min-width:40px;padding:4px 4px 2px}.sign.long .tile b{font-size:1.7rem}.sign.long .tile i{font-size:.9rem}.solved .replay{padding:6px 10px}.battle{text-align:center;max-width:900px;margin:0 auto;padding-bottom:24px}.battle.hit{animation:.3s shake}.battle .me{color:#fff}.arena{border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:linear-gradient(#3a2d6b,#5b4a9c 70%,#2e7d4f 70%);border-radius:24px;margin:4px 16px 10px;padding:16px}.monster{color:#fff}.m-emoji{font-size:5.5rem;line-height:1.1;animation:1.6s ease-in-out infinite bob;display:inline-block}.monster.hit .m-emoji{animation:.4s ouch}@keyframes ouch{30%{filter:brightness(3)saturate(0);scale:.8}}.m-name{text-shadow:2px 2px 0 var(--ink);margin:4px 0 8px;font-weight:600}.m-name b{color:var(--accent);font-size:1.3rem}.speech{opacity:.9;margin-top:6px;font-style:italic}.bar{border:3px solid var(--ink);background:#2a2150;border-radius:10px;max-width:420px;height:16px;margin:6px auto;overflow:hidden}.bar-fill{background:var(--bad);height:100%;transition:width .25s}.bar.timer{max-width:300px;height:10px}.bar.timer .bar-fill{background:var(--accent);transition:none}.ideas{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:6px 16px;display:flex}.ideas-label{color:#fff;text-shadow:1px 1px 0 var(--ink);font-weight:600}.idea{background:var(--paper);border:2px solid var(--ink);border-radius:999px;padding:4px 12px;font-weight:600}.idea i{color:var(--muted);font-style:normal;font-weight:500}.board{grid-template-columns:repeat(6,64px);justify-content:center;gap:10px;margin:14px 0;display:grid}.btile{background:#fff3c4;height:64px;padding:0;font-size:2rem;font-weight:800}.btile.used{color:#9a93bd;box-shadow:0 1px 0 var(--ink);background:#d9d4ee;translate:0 3px}.spell-row{gap:10px;max-width:640px;margin:0 auto;padding:0 16px;display:flex}.spell-row .type{flex:1}.spell-row .type.bad{background:#ffe1e0}.feedback{color:#fff;min-height:1.6em;text-shadow:1px 1px 0 var(--ink);font-size:1.15rem;font-weight:600}.feedback.good b{color:var(--accent)}.feedback.bad{color:#ffd6d4}.spelled{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.town{max-width:1100px;margin:0 auto;padding-bottom:20px}.town-body{grid-template-columns:auto 240px;justify-content:center;gap:16px;padding:0 16px;display:grid}.map{--cell:60px;width:calc(var(--cols) * var(--cell));height:calc(var(--rows) * var(--cell));border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);background: linear-gradient(#c9c3b6, #c9c3b6) 0 calc(3 * var(--cell)) / 100% var(--cell) no-repeat, linear-gradient(#c9c3b6, #c9c3b6) 0 calc(6 * var(--cell)) / 100% var(--cell) no-repeat, linear-gradient(#c9c3b6, #c9c3b6) calc(6 * var(--cell)) 0 / var(--cell) 100% no-repeat, repeating-conic-gradient(#8fdc7a 0 25%, #84d26f 0 50%) 0 0 / calc(2 * var(--cell)) calc(2 * var(--cell));border-radius:20px;position:relative;overflow:hidden}.map>*{left:calc(var(--x) * var(--cell));top:calc(var(--y) * var(--cell));position:absolute}.bld{width:calc(2 * var(--cell));height:var(--cell);background:var(--c);border:3px solid var(--ink);border-radius:6px 6px 4px 4px;flex-direction:column;justify-content:flex-end;align-items:center;display:flex}.roof{border:3px solid var(--ink);background:#7b4b3a;border-radius:10px 10px 2px 2px;height:22px;position:absolute;top:-18px;left:-6px;right:-6px}.bsign{border:2px solid var(--ink);letter-spacing:1px;white-space:nowrap;background:#fff;border-radius:6px;padding:1px 6px;font-size:.8rem;font-weight:800;position:absolute;top:8px;left:50%;translate:-50%}.door{border:2px solid var(--ink);background:#5a3d2b;border-bottom:none;border-radius:8px 8px 0 0;width:18px;height:22px}.deco,.npc,.player{width:var(--cell);height:var(--cell);justify-content:center;align-items:center;font-size:2.4rem;display:flex}.npc{position:absolute}.bang{font:800 1.2rem var(--font);color:var(--ink);background:var(--accent);border:2px solid var(--ink);text-align:center;border-radius:50%;width:24px;height:24px;line-height:20px;animation:.8s ease-in-out infinite bob;display:none;position:absolute;top:-4px;right:6px}.bang.on{display:block}.bang-inline{background:var(--accent);border:2px solid var(--ink);border-radius:50%;padding:0 6px}.player{z-index:2;filter:drop-shadow(0 3px #00000059);transition:left .12s,top .12s}.quest-log{text-align:left;align-self:start}.quest-log h3{margin:0 0 8px}.quest-log .want{text-align:center;color:var(--sky1);margin:4px 0;font-size:2rem;font-weight:800}.quest-log hr{border:none;border-top:2px dashed #d9d4ee}.dialog{max-width:760px;margin:14px auto 0;padding:0 16px}.dialog.hidden{display:none}.bubble{text-align:left;align-items:center;gap:16px;padding:12px 18px;display:flex}.bubble .who{font-size:3rem}.bubble .said{margin:0;font-size:1.5rem;font-weight:800}.bubble .tip{margin:2px 0 0}.dialog .ask{margin-top:12px}@media (width<=1080px){.town-body{grid-template-columns:auto}.map{--cell:48px}}.journey{max-width:980px}.gender-pick{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:10px 0 4px;padding:12px;font-weight:600;display:flex}.gender-pick.shake{background:#fff3c4;animation:.3s shake}.g-opt{box-shadow:0 2px 0 var(--ink);padding:6px 14px;font-size:.95rem}.g-opt.on{background:var(--accent)}.level-head{color:#fff;text-align:left;text-shadow:2px 2px 0 var(--ink);margin:24px 4px 10px}.path{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.node{flex-direction:column;align-items:center;gap:3px;padding:14px 10px 10px;display:flex;position:relative}.node-num{background:var(--sky1);color:#fff;border:3px solid var(--ink);border-radius:50%;width:30px;height:30px;font-weight:700;line-height:24px;position:absolute;top:-12px;left:-10px}.node-emoji{font-size:2.3rem}.node-ru{color:var(--sky1);font-size:1.25rem;font-weight:800}.node-title{color:var(--muted);font-size:.85rem;font-weight:600}.node.complete{background:#d8f8e4}.node.complete .node-num{background:var(--good)}.node.open{background:#fff7d6;animation:2s ease-in-out infinite glow}.node.locked{background:#e9e6f5}@keyframes glow{50%{box-shadow:0 4px 0 var(--ink), 0 0 18px var(--accent)}}.marks{gap:4px;margin-top:4px;display:flex}.mark{filter:grayscale()opacity(.3);font-size:1rem}.mark.on{filter:none}.mark.mastered{filter:drop-shadow(0 0 4px gold)}.chapter h1 .ru{font-family:var(--ru)}.goal{max-width:640px;margin:10px auto 18px;font-weight:600}.steps{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px;display:grid}.step{flex-direction:column;align-items:center;gap:4px;padding:16px 10px;display:flex}.step-icon{font-size:2.4rem}.step-name{font-size:1.1rem;font-weight:700}.step-blurb{color:var(--muted);font-size:.82rem;font-weight:500}.step-badge{color:#1e8449;min-height:1.2em;font-weight:700}.step small{color:var(--muted);font-size:.72rem}.step.done{background:#d8f8e4}.vocab .idea{cursor:pointer}.lesson-card{text-align:left;max-width:820px;margin:0 auto}.points li{margin:8px 0;line-height:1.5}.points b{color:var(--sky1);font-family:var(--ru)}.examples{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.example{text-align:left;box-shadow:0 2px 0 var(--ink);grid-template-columns:28px 1fr;gap:0 8px;padding:8px 10px;display:grid}.ex-play{grid-row:span 2;align-self:center}.ex-ru{font-weight:800}.ex-en{color:var(--muted);font-size:.85rem;font-weight:500}.lesson-card .check-start{margin:0 auto;display:block}.q-card{max-width:680px;margin:6px auto 14px;padding:22px}.q-ru{font-size:2rem;font-weight:800}.q-en{color:var(--muted);margin-top:6px;font-weight:600}.blank{border-bottom:4px solid var(--pink);min-width:70px;color:var(--pink);display:inline-block}.blank.filled{border-bottom-color:var(--good);color:#1e8449;animation:.25s pop}.q-opts{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.q-opt{padding:12px 22px 12px 28px;font-size:1.4rem;font-weight:800;position:relative}.q-opt small{font:600 .7rem var(--font);color:var(--muted);position:absolute;top:4px;left:8px}.q-opt.right{background:#b8f5cf}.q-opt.wrong{background:#ffd6d4}.q-opt.shake,.reply-opt.shake{animation:.3s shake}.q-next{margin:14px auto 0;display:block}.quiz .osk,.dialogue .osk{max-width:760px;margin:12px auto 0;padding:0 16px}.chat{text-align:left;flex-direction:column;gap:10px;max-width:760px;max-height:46vh;margin:0 auto 12px;display:flex;overflow-y:auto}.bubble-row{align-items:flex-end;gap:8px;animation:.2s pop;display:flex}.bubble-row.mine{flex-direction:row-reverse}.bubble-row .who{font-size:2rem}.speech-bubble{text-align:left;max-width:75%;box-shadow:0 2px 0 var(--ink);border-radius:18px 18px 18px 4px;flex-direction:column;padding:8px 14px;display:flex}.bubble-row.mine .speech-bubble{background:#d6ecff;border-radius:18px 18px 4px}.speech-bubble .ru{font-size:1.15rem;font-weight:700}.speech-bubble small{color:var(--muted);font-weight:500}.reply{max-width:760px;margin:0 auto}.say-this{color:#fff;text-shadow:1px 1px 0 var(--ink);font-weight:600}.reply-opts{grid-template-columns:1fr 1fr;gap:10px;display:grid}.reply-opt{text-align:left;padding:10px 12px 10px 28px;font-size:1.05rem;position:relative}.reply-opt small{font:600 .75rem var(--font);color:var(--muted);position:absolute;top:11px;left:9px}.reply-opt.wrong{background:#ffd6d4}.reply .feedback{color:#fff;text-shadow:1px 1px 0 var(--ink);font-weight:600}.reply .feedback b{color:var(--accent)}@media (width<=700px){.examples,.reply-opts{grid-template-columns:1fr}}.mini{text-align:center;max-width:900px;margin:0 auto;padding-bottom:24px}.mini-tip{color:#fff;text-shadow:1px 1px 0 var(--ink);margin:2px 16px 12px;font-weight:600}.mini .type{max-width:460px}.mini-panel{margin:0 16px}.mem-grid{justify-content:center;gap:12px;padding:0 16px;display:grid}.mem-grid.cols-4{grid-template-columns:repeat(4,150px)}.mem-grid.cols-6{grid-template-columns:repeat(6,130px)}.mem-card{perspective:600px;height:110px;padding:6px;position:relative}.mem-card .mem-face{flex-direction:column;justify-content:center;align-items:center;gap:2px;height:100%;display:none}.mem-card .mem-back{color:var(--sky1);font-size:2.4rem}.mem-card.open .mem-face,.mem-card.matched .mem-face{display:flex}.mem-card.open .mem-back,.mem-card.matched .mem-back{display:none}.mem-card.open{background:#fff3c4;animation:.2s flipin}.mem-card.matched{background:#b8f5cf;animation:.3s pop}.mem-card b{word-break:break-word;font-size:1.4rem}.mem-emoji{font-size:2.2rem}.mem-card small{color:var(--muted);font-size:.8rem}@keyframes flipin{0%{transform:rotateY(90deg)}}.mini .feedback{color:#fff;min-height:1.6em;text-shadow:1px 1px 0 var(--ink);font-size:1.2rem;font-weight:700}.mini .feedback.bad{color:#ffd6d4}.wgrid{grid-template-columns:repeat(var(--len), 58px);justify-content:center;gap:6px;margin:8px 0 14px;display:grid}.wcell{border:3px solid var(--ink);background:#ffffffd9;border-radius:10px;justify-content:center;align-items:center;height:58px;font-size:1.9rem;font-weight:800;display:flex}.wcell.typed{background:#fff;animation:.1s pop}.wcell.hit,.osk-key.hit{color:#fff;background:#2ecc71}.wcell.near,.osk-key.near{background:var(--accent)}.wcell.miss,.osk-key.miss{color:#fff;background:#9a93bd}.wcell.hit,.wcell.near,.wcell.miss{animation:.3s flipin}.len-opt{box-shadow:0 2px 0 var(--ink);margin:0 2px;padding:2px 10px;font-size:.9rem}.len-opt.on{background:var(--accent)}.hint-btn{padding:4px 10px;font-size:.9rem}.clue{color:#fff;min-height:1.4em;text-shadow:1px 1px 0 var(--ink);font-weight:600}.reveal{font-size:1.4rem}.reveal span{vertical-align:middle;font-size:2.4rem}.wordle .osk{max-width:760px;margin:12px auto 0;padding:0 16px}.big-play{background:var(--accent);border-radius:50%;width:110px;height:110px;margin:6px auto 16px;font-size:3rem;display:block}.echo-choices{grid-template-columns:1fr 1fr;gap:12px;max-width:560px;margin:0 auto;padding:0 16px;display:grid}.echo-opt{padding:16px 8px;font-size:1.8rem;font-weight:800;position:relative}.echo-opt small{font:600 .8rem var(--font);color:var(--muted);position:absolute;top:6px;left:10px}.echo-opt.wrong{background:#ffd6d4}.echo .osk{max-width:760px;margin:12px auto 0;padding:0 16px}.spelled .idea{cursor:pointer}.target{justify-content:center;align-items:center;gap:14px;max-width:620px;margin:8px auto 14px;display:flex}.t-emoji{font-size:2.6rem}.t-en{font-size:1.5rem;font-weight:700}.answer-line{background:#ffffff40;border:3px dashed #fff;border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:760px;min-height:70px;margin:0 auto 14px;padding:10px;display:flex}.answer-line.shake{animation:.3s shake}.placeholder{color:#fff;opacity:.8;font-weight:600}.piece-bank{flex-wrap:wrap;justify-content:center;gap:10px;max-width:760px;margin:0 auto;display:flex}.piece{padding:10px 16px 10px 22px;font-size:1.4rem;font-weight:800;position:relative}.piece small{font:600 .7rem var(--font);color:var(--muted);position:absolute;top:3px;left:6px}.piece.placed{background:#fff3c4;padding-left:16px}.piece:disabled{opacity:.25}.library{max-width:980px}.story-card .mode-ru{font-size:1.15rem}.reader-tools{justify-content:center;gap:10px;margin:4px 0 12px;display:flex}.story-text{text-align:left;max-width:820px;margin:0 auto 14px;padding:18px 22px}.sent{border-radius:12px;grid-template-columns:34px 1fr;align-items:start;gap:0 8px;margin:0 0 10px;padding:6px 8px;transition:background .2s;display:grid}.sent.reading{background:#fff3c4}.sent-play{box-shadow:0 2px 0 var(--ink);border-width:2px;padding:2px 4px;font-size:.95rem}.sent-ru{font-size:1.45rem;line-height:1.6}.sent-en{color:var(--muted);grid-column:2;font-weight:500;display:none}.sent.show-en .sent-en,.show-all-en .sent-en{display:block}.w{cursor:pointer;border-radius:6px;padding:0 1px}.w:hover{background:#e4e0ff}.w.active{background:var(--accent)}.gloss{z-index:10;border:3px solid var(--ink);max-width:320px;box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:12px;padding:8px 12px;font-weight:600;animation:.15s pop;position:absolute}.gloss.hidden{display:none}.gloss b{color:var(--sky1)}.story-quiz .q-card{position:relative}.q-say{padding:4px 8px;position:absolute;top:12px;left:12px}.sq-opts{max-width:760px;margin:0 auto}.sq-opt{font-size:1.1rem;font-weight:600}.whack-target{justify-content:center;align-items:center;gap:14px;max-width:460px;margin:4px auto 10px;padding:10px 18px;display:flex}.wt-label{color:var(--muted);font-weight:700}.wt-clue{color:var(--pink);font-size:1.9rem;font-weight:800}.wt-emoji{font-size:2.2rem}.wt-say{padding:4px 10px}.garden{border:3px solid var(--ink);width:max-content;box-shadow:0 6px 0 var(--ink);background:linear-gradient(#7bd389,#4cb963);border-radius:28px;grid-template-columns:repeat(3,170px);justify-content:center;gap:6px 26px;margin:0 auto;padding:18px 26px 10px;display:grid;position:relative}.garden[data-count]:after{content:attr(data-count);color:#fff;text-shadow:4px 4px 0 var(--ink);place-items:center;font-size:6rem;font-weight:700;animation:.6s pop;display:grid;position:absolute;inset:0}.hole{height:150px;position:relative}.hole-key{color:#1e6b33;opacity:.7;font-weight:700;position:absolute;top:4px;right:6px}.dirt{border:3px solid var(--ink);background:#3e2723;border-radius:50%;height:36px;position:absolute;bottom:6px;left:12%;right:12%}.clip{height:150px;position:absolute;bottom:24px;left:0;right:0;overflow:hidden}.lip{z-index:2;border:3px solid var(--ink);background:#6d4c41;border-top:0;border-radius:0 0 50% 50%/0 0 100% 100%;height:18px;position:absolute;bottom:6px;left:12%;right:12%}.mole{width:104px;box-shadow:none;background:0 0;border:0;flex-direction:column;align-items:center;padding:0;transition:transform .16s ease-out;display:flex;position:absolute;bottom:-4px;left:50%;transform:translateY(110%)}.mole:hover:not(:disabled),.mole:active:not(:disabled){box-shadow:none}.mole:hover:not(:disabled){transform:translateY(110%)}.mole.up,.mole.up:hover:not(:disabled){transform:translateY(0)}.mole-svg{width:92px;display:block}.mole-sign{z-index:1;border:3px solid var(--ink);min-width:58px;box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:12px;margin-bottom:-10px;padding:0 10px;font-size:2rem;font-weight:800;line-height:1.3;position:relative}.mole-sign.long{padding:4px 8px;font-size:1.3rem}.mole .mole-ouch{display:none}.mole.hit .mole-ouch{display:inline}.mole.hit .mole-eyes{display:none}.mole.hit .mole-sign{background:#b8f5cf}.mole.hit{animation:.25s squash}.mole.wrong .mole-sign{background:#ffd6d4;animation:.3s shake}@keyframes squash{50%{scale:1.15 .8}}.bonk{z-index:3;white-space:nowrap;border:3px solid var(--ink);pointer-events:none;border-radius:12px;padding:2px 10px;font-weight:800;animation:.9s forwards rise;position:absolute;top:0;left:50%;translate:-50%}.bonk.good{background:var(--accent);font-family:var(--ru);font-size:1.3rem}.bonk.bad{background:#ffd6d4;font-size:.95rem}.mole:active:not(:disabled){transform:translateY(110%)}.mole.up:active:not(:disabled){transform:translateY(0)}.snake-word{justify-content:center;align-items:center;gap:16px;max-width:660px;margin:2px auto 10px;padding:10px 16px;display:flex}.sw-emoji{font-size:2.4rem}.sw-info{text-align:left;flex-direction:column;display:flex}.sw-info small{color:var(--muted);font-weight:600}.sw-slots{gap:6px;display:flex}.sw-slot{color:#b9b1df;border:3px dashed #b9b1df;border-radius:10px;place-items:center;width:42px;height:48px;font-size:1.8rem;font-weight:800;display:grid}.sw-slot.next{border:3px solid var(--pink);color:var(--pink);animation:.8s ease-in-out infinite alternate pulse-border}.sw-slot.got{border:3px solid var(--ink);color:var(--ink);background:#b8f5cf;animation:.25s pop}@keyframes pulse-border{to{transform:scale(1.08)}}.sw-say{padding:4px 10px}.snake-board{border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);background-color:#a8e6a3;background-image:linear-gradient(45deg,#9bdc96 25%,#0000 25% 75%,#9bdc96 75%),linear-gradient(45deg,#9bdc96 25%,#0000 25% 75%,#9bdc96 75%);background-position:0 0,38px 38px;background-size:76px 76px;border-radius:16px;margin:0 auto;position:relative;overflow:hidden}.snake-board.ouch{animation:.3s shake}.snake-board[data-wait]:after{content:attr(data-wait);border:3px solid var(--ink);white-space:nowrap;background:#fff;border-radius:14px;padding:6px 16px;font-weight:700;animation:.3s pop;position:absolute;bottom:14px;left:50%;translate:-50%}.seg{box-sizing:border-box;border:3px solid var(--ink);background:#6c5ce7;border-radius:12px;transition:left 80ms linear,top 80ms linear;position:absolute;transform:scale(.92)}.seg.head{z-index:1;background:#a29bfe;border-radius:14px;transform:scale(1.05)}.seg.head:before,.seg.head:after{content:"";border:2px solid var(--ink);background:#fff;border-radius:50%;width:8px;height:8px;position:absolute}.seg.head[data-dir=r]:before{top:3px;right:3px}.seg.head[data-dir=r]:after{bottom:3px;right:3px}.seg.head[data-dir=l]:before{top:3px;left:3px}.seg.head[data-dir=l]:after{bottom:3px;left:3px}.seg.head[data-dir=u]:before{top:3px;left:3px}.seg.head[data-dir=u]:after{top:3px;right:3px}.seg.head[data-dir=d]:before{bottom:3px;left:3px}.seg.head[data-dir=d]:after{bottom:3px;right:3px}.food{box-sizing:border-box;color:#fff;border:3px solid var(--ink);text-shadow:1px 1px 0 var(--ink);background:#ff6b9d;border-radius:50%;place-items:center;font-size:1.6rem;font-weight:800;animation:.3s pop;display:grid;position:absolute}.food:before{content:"";border:2px solid var(--ink);background:#27ae60;border-radius:0 8px;width:8px;height:9px;position:absolute;top:-7px;left:50%}.food.zapped{animation:.3s forwards zap}.board-msg{z-index:3;white-space:nowrap;border:3px solid var(--ink);border-radius:14px;padding:6px 14px;font-weight:700;animation:.25s pop;position:absolute;top:12px;left:50%;translate:-50%}.board-msg.good{background:#b8f5cf}.board-msg.bad{background:#ffd6d4}.bingo-wrap{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:22px;padding:0 16px;display:flex}.caller{flex-direction:column;align-items:center;gap:10px;width:260px;display:flex}.caller .row{flex-direction:column;width:100%;margin-top:0}.caller .row button small{color:var(--muted);font-weight:500}.barrel{border:4px solid var(--ink);width:120px;height:140px;box-shadow:0 5px 0 var(--ink);background:linear-gradient(90deg,#c68642,#e0a96d 30%,#f3c48b 50%,#e0a96d 70%,#c68642);border-radius:46%/22%;place-items:center;display:grid;position:relative}.barrel:before,.barrel:after{content:"";border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);background:#8d5524;height:8px;position:absolute;left:0;right:0}.barrel:before{top:24px}.barrel:after{bottom:24px}.barrel-face{z-index:1;border:3px solid var(--ink);text-align:center;background:#fffaf0;border-radius:50%;min-width:66px;padding:4px 8px;font-size:1.7rem;font-weight:800;position:relative}.barrel.roll{animation:.5s roll}@keyframes roll{0%{opacity:0;transform:translate(-60px)rotate(-200deg)}70%{transform:translate(6px)rotate(10deg)}}.call-clue{min-height:1.6em;color:var(--pink);text-align:center;font-size:1.15rem;font-weight:700}.call-time{width:100%}.call-time i{background:var(--sky1);width:100%;animation:none}.bingo-card{border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:#e74c3c;border-radius:20px;gap:8px;padding:14px;display:grid;position:relative}.bingo-card.size-3{grid-template-columns:repeat(3,110px)}.bingo-card.size-4{grid-template-columns:repeat(4,96px)}.bingo-card.size-2{grid-template-columns:repeat(2,120px)}.bcell{word-break:break-word;background:#fffaf0;height:92px;padding:4px;font-size:1.5rem;font-weight:800;position:relative}.bingo-card.size-4 .bcell{height:82px;font-size:1.25rem}.bcell.marked:after,.bcell.missed:after{content:"";border:3px solid var(--ink);border-radius:50%;animation:.25s pop;position:absolute;inset:14%}.bcell.marked:after{background:#ffc93cbf}.bcell.missed:after{background:#968cbe8c}.bcell.in-line{background:#b8f5cf}.bcell.shake,.not-mine.shake{background:#ffd6d4;animation:.3s shake}.bingo-shout{pointer-events:none;font-family:var(--ru);color:#fff;text-shadow:4px 4px 0 var(--ink);place-items:center;font-size:3.4rem;font-weight:800;animation:.4s pop;display:grid;position:absolute;inset:0}.build-pic{justify-content:center;align-items:center;gap:16px;max-width:460px;margin:4px auto 18px;padding:12px 18px;display:flex}.bp-emoji{font-size:3.4rem;animation:.3s pop}.bp-info{text-align:left;flex-direction:column;display:flex}.bp-info b{font-size:1.4rem}.bp-info small{color:var(--muted);font-weight:600}.bp-say{padding:6px 12px}.build-slots{justify-content:center;gap:10px;margin-bottom:22px;display:flex}.bslot{background:#ffffff4d;border:3px dashed #fff;border-radius:14px;place-items:center;width:64px;height:74px;font-size:2.4rem;font-weight:800;display:grid}.bslot.next{border-color:var(--accent);background:#ffc93c40;animation:.8s ease-in-out infinite alternate pulse-border}.bslot.filled{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fffaf0;animation:.2s pop}.build-slots.solved .bslot{background:#b8f5cf;animation:.5s hop-slot}.build-slots.solved .bslot:nth-child(2){animation-delay:60ms}.build-slots.solved .bslot:nth-child(3){animation-delay:.12s}.build-slots.solved .bslot:nth-child(4){animation-delay:.18s}.build-slots.solved .bslot:nth-child(5){animation-delay:.24s}.build-slots.solved .bslot:nth-child(6){animation-delay:.3s}.build-slots.solved .bslot:nth-child(7){animation-delay:.36s}@keyframes hop-slot{50%{transform:translateY(-14px)}}.build-tiles{flex-wrap:wrap;justify-content:center;gap:10px;max-width:640px;margin:0 auto;display:flex}.bld-tile{background:linear-gradient(#ffe7a3,#ffc93c);width:64px;height:64px;padding:0;font-size:2rem;font-weight:800;animation:.3s backwards card-in}.bld-tile:nth-child(2){animation-delay:40ms}.bld-tile:nth-child(3){animation-delay:80ms}.bld-tile:nth-child(4){animation-delay:.12s}.bld-tile:nth-child(5){animation-delay:.16s}.bld-tile:nth-child(6){animation-delay:.2s}.bld-tile:nth-child(7){animation-delay:.24s}.bld-tile.used{visibility:hidden}.bld-tile.wrong{background:#ffd6d4;animation:.3s shake}.snow-stage{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;padding:0 16px;display:flex}.snow-art{border:3px solid var(--ink);width:240px;height:240px;box-shadow:0 5px 0 var(--ink);background:linear-gradient(#bfe0ff,#e8f4ff 70%,#fff 70%);border-radius:24px;overflow:hidden}.snowman-svg{width:100%;height:100%;display:block}.snowman-svg g{transition:transform .5s ease-out}.snowman-svg .sun{transition:r .5s}.snowman-svg .drips path{animation:1.2s ease-in infinite drip}.snowman-svg .drips path:nth-child(2){animation-delay:.4s}.snowman-svg .drips path:nth-child(3){animation-delay:.8s}@keyframes drip{to{opacity:0;transform:translateY(18px)}}.snowman-svg .hat{animation:.5s cubic-bezier(.3,1.6,.5,1) hat-drop}@keyframes hat-drop{0%{opacity:0;transform:translateY(-60px)}}.snow-side{flex-direction:column;align-items:center;gap:10px;min-width:340px;display:flex}.snow-clue{text-align:left;align-items:center;gap:14px;padding:10px 18px;display:flex}.snow-clue small{color:var(--muted);font-weight:600;display:block}.sc-emoji{font-size:2.6rem}.snow-word{gap:8px;display:flex}.sn-letter{color:#fff;width:46px;height:56px;text-shadow:2px 2px 0 var(--ink);border-bottom:5px solid #fff;place-items:center;font-size:2rem;font-weight:800;display:grid}.sn-letter.shown{animation:.25s pop}.sn-letter.reveal{color:#ffd6d4}.snowman .osk{max-width:760px;margin:14px auto 0;padding:0 16px}.snowman .osk-key.hit{color:#fff;background:#2ecc71}.snowman .osk-key.miss{color:#fff;background:#9a93bd}.ws-wrap{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:20px;padding:0 16px;display:flex}.ws-grid{grid-template-columns:repeat(var(--n), 46px);background:var(--paper);border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);-webkit-user-select:none;user-select:none;touch-action:none;cursor:pointer;border-radius:18px;gap:3px;padding:10px;display:grid}.ws-cell{border-radius:10px;place-items:center;height:46px;font-size:1.5rem;font-weight:800;transition:background .1s;display:grid}.ws-cell:hover{background:#ece8ff}.ws-cell.sel{background:var(--accent);transform:scale(1.06)}.ws-cell.anchor{background:var(--accent);box-shadow:inset 0 0 0 3px var(--ink)}.ws-cell.found{background:hsl(var(--h) 85% 80%);animation:.3s backwards pop}.ws-cell.found.sel{background:var(--accent)}.ws-cell.hint{animation:.4s 4 alternate hint-flash}@keyframes hint-flash{to{background:var(--pink);color:#fff}}.ws-list{text-align:left;flex-direction:column;gap:8px;min-width:220px;margin:0;padding:12px 16px;list-style:none;display:flex}.ws-list li{border-radius:10px;align-items:center;gap:10px;padding:4px 8px;display:flex}.ws-list li small{color:var(--muted);font-size:.8rem;font-weight:500;display:block}.ws-list li b{font-size:1.15rem}.ws-list li.solved{background:#b8f5cf;text-decoration:none;animation:.3s pop}.ws-emoji{font-size:1.6rem}.ws-hint{padding:2px 10px;font-size:.9rem}.sc-pick,.sc-play{max-width:1100px}.sc-cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;margin-top:18px;display:grid}.sc-card{background:var(--panel);animation:.35s backwards pop;animation-delay:calc(var(--i) * 50ms);border-radius:20px;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;display:flex}.sc-card-icon{font-size:2.8rem;line-height:1.1}.sc-card-ru{font-size:1.35rem;font-weight:800}.sc-card-en{color:var(--muted);font-weight:600}.sc-card-info{color:var(--muted);font-size:.85rem}.sc-stars{color:var(--accent);letter-spacing:2px;text-shadow:1px 1px 0 var(--ink);font-size:1.3rem}.sc-stars i{color:#ddd8ee;text-shadow:none;font-style:normal}.sc-tabs{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:10px;display:flex}.sc-tab{background:var(--panel);padding:6px 14px;font-size:.95rem}.sc-tab.on{background:var(--accent);font-weight:700}.sc-stage{aspect-ratio:1000/560;border:4px solid var(--ink);width:min(100%,178.571vh - 446.429px);min-width:320px;box-shadow:0 6px 0 var(--ink);background:#fff;border-radius:22px;margin:0 auto;position:relative;overflow:hidden;container-type:inline-size}.sc-art{width:100%;height:100%;display:block;position:absolute;inset:0}.sc-thing{box-shadow:none;line-height:1;font-size:calc(var(--s) * 1cqw);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:14px;margin:0;padding:0;position:absolute;translate:-50% -50%}.sc-thing:hover:not(:disabled),.sc-thing:active:not(:disabled){box-shadow:none}.sc-thing:hover .sc-pic{filter:drop-shadow(0 0 6px #fff) drop-shadow(0 0 3px var(--accent))}.sc-pic{display:inline-block}.sc-pic.flip{transform:scaleX(-1)}.sc-box{z-index:1;border:3px dashed #0000}.sc-box:hover{background:#ffffff26;border-color:#ffffffe6}.sc-locked .sc-pic{filter:grayscale()brightness(1.15);opacity:.45}.sc-locked:hover .sc-pic{filter:grayscale()brightness(1.15)}.sc-lock{font-size:max(12px,1.4cqw);position:absolute;top:-4px;right:-4px}.sc-box.sc-locked,.sc-box.sc-locked:hover{background:#1d16401a;border-color:#1d164059}.sc-box .sc-lock{top:6px;right:6px}.sc-bob .sc-pic{animation:2.4s ease-in-out infinite sc-bob;animation-delay:var(--d)}.sc-sway .sc-pic{animation:3s ease-in-out infinite sc-sway;animation-delay:var(--d);transform-origin:50% 0}.sc-fly .sc-pic{animation:6s ease-in-out infinite sc-fly;animation-delay:var(--d)}.sc-swim .sc-pic{animation:4s ease-in-out infinite sc-swim;animation-delay:var(--d)}.sc-twinkle .sc-pic{animation:1.8s ease-in-out infinite sc-twinkle}.sc-flicker .sc-pic{transform-origin:50% 100%;animation:.9s ease-in-out infinite alternate sc-flicker}.sc-bob .sc-pic.flip,.sc-swim .sc-pic.flip,.sc-fly .sc-pic.flip{animation-name:none}@keyframes sc-bob{50%{transform:translateY(-8%)}}@keyframes sc-sway{25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}@keyframes sc-fly{25%{transform:translate(14%,-12%)}50%{transform:translate(28%)}75%{transform:translate(12%,10%)}}@keyframes sc-swim{50%{transform:translate(10%,6%)rotate(-4deg)}}@keyframes sc-twinkle{50%{opacity:.7;transform:scale(1.3)rotate(15deg)}}@keyframes sc-flicker{to{transform:scaleY(1.12)scaleX(.94)}}.sc-yes .sc-pic,.sc-box.sc-yes{animation:.5s ease-out sc-yes}.sc-no .sc-pic,.sc-box.sc-no{animation:.45s sc-no}@keyframes sc-yes{40%{transform:scale(1.3)translateY(-10%)}}@keyframes sc-no{20%,60%{transform:translate(-10%)rotate(-6deg)}40%,80%{transform:translate(10%)rotate(6deg)}}.sc-target:before{content:"";z-index:-1;background:radial-gradient(circle,#ffe978f2,#ffc93c66 55%,#0000 70%);border-radius:50%;animation:1.1s ease-in-out infinite alternate sc-glow;position:absolute;inset:-18%}.sc-box.sc-target{border-color:var(--accent);background:#ffc93c4d}.sc-box.sc-target:before{display:none}@keyframes sc-glow{0%{opacity:.7;transform:scale(.85)}to{opacity:1;transform:scale(1.15)}}.sc-tag{white-space:nowrap;z-index:5;border:2px solid var(--ink);color:var(--ink);box-shadow:0 2px 0 var(--ink);pointer-events:none;background:#fff;border-radius:10px;padding:2px 8px;font-size:max(11px,1.35cqw);font-weight:800;display:none;position:absolute;top:100%;left:50%;translate:-50% 2px}.sc-box .sc-tag{top:auto;bottom:6px;translate:-50%}.sc-tag small{font-family:var(--font);color:var(--muted);font-size:.75em;font-weight:600;display:block}.sc-tag.show{animation:.25s pop;display:block}.sc-tag.good{background:#d9fbe6}.sc-tag.bad{background:#ffe1df}.sc-play:hover .sc-tag.seen{opacity:.92}.sc-bar{text-align:left;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;max-width:900px;min-height:76px;margin:12px auto 0;padding:10px 18px;display:flex}.sc-bar-emoji{font-size:2.4rem}.sc-bar-text{flex-direction:column;flex:1;min-width:200px;display:flex}.sc-bar-text small{color:var(--muted);font-weight:600}.sc-big{letter-spacing:1px;font-size:2rem;line-height:1.1}.sc-en{opacity:0;color:var(--ink);font-weight:700;transition:opacity .4s}.sc-en.show{opacity:1}.sc-say{padding:6px 12px;font-size:1.3rem}.sc-bar .feedback.good{color:var(--good);font-size:2rem}.sc-opts{flex-wrap:wrap;gap:8px;display:flex}.sc-opt{padding:8px 14px;font-size:1.2rem;font-weight:800}.sc-opt kbd{font-family:var(--font);color:var(--muted);margin-right:6px;font-size:.7rem}.sc-opt.wrong{background:#ffe1df;text-decoration:line-through}.sc-opt.wrong small{color:var(--muted);font-weight:600;text-decoration:none;display:inline-block}.sc-low:not(.sc-box) .sc-tag{top:auto;bottom:100%;translate:-50% -2px}
