:root{--surface:#fffaf5;--surface-cell:#fff;--grid-line:#f2e2d4;--grid-line-strong:#3b2a21;--ink:#1f1611;--ink-muted:#6e5d52;--accent:#ff6a1f;--accent-strong:#b33a08;--accent-soft:#ffe1cc;--peer:#fff3e9;--match:#ffeaa3;--sunny:#ffc93c;--clash:#c2185b;--clash-soft:#fde0ea;--on-accent:#1f1611;--logo-white:#fff;--shadow-board:0 2px 0 #f2e2d4, 0 12px 32px #ff6a1f1f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-pill:999px;--font-display:"Baloo 2", "Nunito", system-ui, sans-serif;--font-sans:"Plus Jakarta Sans", system-ui, sans-serif;--ease-pop:cubic-bezier(.34, 1.56, .64, 1);--dur-press:.15s;--entry:var(--accent-strong);--font-digits:var(--font-display);--digit-given:700;--digit-entry:500;--board-line:var(--grid-line);--board-line-strong:var(--grid-line-strong);--cell-line-width:1px;--box-line-width:2px;--cell-radius:0px;--gutter:var(--space-4);--tap:44px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--surface);color:var(--ink);font:400 16px/24px var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;overscroll-behavior:none}button,select,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}button:disabled{opacity:.45;cursor:default}.t-title{font:800 40px/44px var(--font-display);letter-spacing:-.01em}.t-heading{font:700 24px/30px var(--font-display)}.t-timer{font:600 17px/22px var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink-muted)}.t-body{font:400 16px/24px var(--font-sans)}.t-label{font:600 13px/18px var(--font-sans);letter-spacing:.02em}.t-caption{font:400 12px/16px var(--font-sans);color:var(--ink-muted)}.sudo-logo{font-family:var(--font-display);letter-spacing:.01em;color:var(--ink);align-items:center;gap:.28em;font-weight:800;line-height:1;display:inline-flex}.sudo-logo .sudo-mark{flex:none;width:1.2em;height:1.2em}.sudo-logo .o{color:var(--accent)}.sudo-tile{fill:var(--accent)}.sudo-edge{fill:var(--accent-strong)}.sudo-face{fill:var(--logo-white)}.sudo-pip{fill:var(--accent)}.sudo-sun{fill:var(--sunny)}.btn{min-height:44px;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font:700 15px/20px var(--font-sans);letter-spacing:.02em;cursor:pointer;transition:transform var(--dur-press) ease-out, box-shadow var(--dur-press) ease-out;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:inline-flex}.btn:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 3px 0 var(--accent-strong)}.btn-quiet{background:var(--surface-cell);color:var(--ink);border-color:var(--grid-line);box-shadow:0 3px 0 var(--grid-line)}.btn-ghost{color:var(--accent-strong);background:0 0}.btn-large{min-height:56px;font-size:17px}.btn__sub{font:500 13px/16px var(--font-sans);letter-spacing:0;opacity:.8}.pill{border-radius:var(--radius-pill);background:var(--sunny);color:var(--on-accent);font:700 13px/18px var(--font-sans);align-items:center;padding:6px 14px;display:inline-flex}.sheet{background:var(--surface-cell);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-6) var(--space-4)}.card{background:var(--surface-cell);border:1px solid var(--grid-line);border-radius:var(--radius-lg);padding:var(--space-4)}@keyframes sudo-pop{0%{transform:scale(.6)}70%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes sudo-wobble{0%,to{transform:rotate(0)}30%{transform:rotate(-8deg)}60%{transform:rotate(5deg)}}.sudo-mark.is-wobbling{animation:sudo-wobble .5s var(--ease-pop)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.avatar{object-fit:cover;aspect-ratio:1;border-radius:28%;display:block}.avatar--120{width:120px}.avatar--80{width:80px}.avatar--44{width:44px}.avatar--32{width:32px}.avatar--24{width:24px}.avatar-btn{cursor:pointer;transition:transform var(--dur-press) ease-out;background:0 0;border:0;border-radius:28%;padding:0;position:relative}.avatar-btn:active{transform:translateY(2px)scale(.96)}.avatar-btn[aria-pressed=true] .avatar{outline:3px solid var(--accent);outline-offset:2px}.avatar-btn.is-locked .avatar{filter:grayscale();opacity:.45}.avatar-btn .num{background:var(--surface-cell);min-width:18px;height:18px;color:var(--ink);font:800 12px/18px var(--font-display);border-radius:6px;padding:0 4px;position:absolute;top:4px;left:4px}.avatar-btn .lock{width:14px;height:14px;color:var(--ink-muted);position:absolute;bottom:6px;right:6px}.avatar-btn.is-new:after{content:"";background:var(--sunny);border:3px solid var(--surface);border-radius:50%;width:12px;height:12px;position:absolute;top:-3px;right:-3px}.friend-toast{z-index:30;left:50%;top:calc(10px + env(safe-area-inset-top,0px));pointer-events:none;background:var(--ink);max-width:calc(100vw - 32px);color:var(--surface);animation:friend-toast-in .24s var(--ease-pop);border-radius:18px;align-items:center;gap:12px;padding:10px 16px 10px 10px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.friend-toast b{font:700 15px/1.2 var(--font-display)}.friend-toast small{opacity:.75;font-size:12px;line-height:16px;display:block}@keyframes friend-toast-in{0%{opacity:0;transform:translate(-50%)scale(.6)}}@keyframes av-unlock{0%{filter:grayscale();opacity:.45;transform:scale(.9)}60%{filter:grayscale(0);opacity:1;transform:scale(1.12)}to{filter:grayscale(0);opacity:1;transform:scale(1)}}.avatar.is-unlocking{animation:.7s cubic-bezier(.34,1.56,.64,1) av-unlock}@media (prefers-reduced-motion:reduce){.avatar.is-unlocking{animation:none!important}}.friend{aspect-ratio:1;background:var(--tile);isolation:isolate;border-radius:28%;position:relative;overflow:hidden;container-type:inline-size}.friend-art{object-fit:cover;transform-origin:50% 88%;will-change:transform;width:100%;height:100%;position:absolute;inset:0}.fx{pointer-events:none;position:absolute;inset:0}.fx i{opacity:0;font-style:normal;font-family:var(--font-display,"Baloo 2",sans-serif);font-weight:800;position:absolute}@media (prefers-reduced-motion:reduce){.friend-art,.fx i{transition:none!important;animation:none!important}}@keyframes fox-idle{0%,to{transform:translateY(0)scale(1)rotate(0)}20%{transform:translateY(-1%)scale(.99,1.015)}40%{transform:translateY(0)scale(1)}62%{transform:translateY(-1.5%)scale(.985,1.02)rotate(1.5deg)}70%{transform:translateY(-1.5%)scale(.985,1.02)rotate(1.5deg)}84%{transform:translateY(0)scale(1.01,.99)rotate(0)}}.friend[data-friend=fox].is-idle .friend-art{animation:2.8s ease-in-out infinite fox-idle}@keyframes fox-pounce{0%{transform:translate(0)scale(1)rotate(0)}25%{transform:translate(-3%,2%)scale(1.08,.88)rotate(-4deg)}50%{transform:translate(6%,-10%)scale(.94,1.07)rotate(6deg)}72%{transform:translate(3%)scale(1.08,.9)rotate(0)}86%{transform:translate(1%,-1%)scale(.98,1.02)}to{transform:translate(0)scale(1)}}.friend[data-friend=fox].is-pounce .friend-art{animation:.7s cubic-bezier(.3,1.4,.6,1) fox-pounce}@keyframes fox-ready{0%,to{transform:translateY(2%)scale(1.06,.92)rotate(0)}25%{transform:translateY(2%)scale(1.06,.92)rotate(-2.5deg)}50%{transform:translateY(2.5%)scale(1.07,.91)rotate(0)}75%{transform:translateY(2%)scale(1.06,.92)rotate(2.5deg)}}@keyframes fox-bang{0%,to{opacity:0;transform:scale(.6)rotate(-10deg)}15%,85%{opacity:1;transform:scale(1)rotate(-10deg)}}.friend[data-friend=fox].is-ready .friend-art{animation:.42s ease-in-out infinite fox-ready}.friend[data-friend=fox].is-ready .fx i:first-child{color:#f26a1f;font-size:20cqw;animation:1.2s ease-in-out infinite fox-bang;top:2%;left:86%}.friend[data-friend=fox].is-ready .fx i:first-child:before{content:"!"}@keyframes fox-zoom{0%{transform:translate(0)scale(1)}12%{transform:translate(-4%)scale(1.06,.94)}40%{opacity:1;transform:translate(110%)scale(1.2,.85)skew(-12deg)}41%{opacity:0;transform:translate(110%)}42%{opacity:0;transform:translate(-110%)}43%{opacity:1;transform:translate(-110%)scale(1.2,.85)skew(-12deg)}75%{transform:translate(4%)scale(.96,1.04)skew(4deg)}88%{transform:translate(-1%)scale(1.02,.98)}to{transform:translate(0)scale(1)}}@keyframes fox-streak{0%{opacity:0;transform:translate(-30cqw)scaleX(.3)}30%{opacity:.9}to{opacity:0;transform:translate(30cqw)scaleX(1.2)}}.friend[data-friend=fox].is-zoom .friend-art{animation:1s cubic-bezier(.5,0,.3,1) fox-zoom}.friend[data-friend=fox].is-zoom .fx i{background:#fff;border-radius:99px;width:30cqw;height:3cqw;animation:.45s ease-out fox-streak;box-shadow:0 0 0 .6cqw #f26a1f40}.friend[data-friend=fox].is-zoom .fx i:first-child{animation-delay:50ms;top:40%;left:20%}.friend[data-friend=fox].is-zoom .fx i:nth-child(2){width:22cqw;animation-delay:.12s;top:55%;left:28%}.friend[data-friend=fox].is-zoom .fx i:nth-child(3){animation-delay:.5s;top:68%;left:14%}@keyframes fox-sniff{0%,to{transform:rotate(0)translate(0)}18%{transform:rotate(5deg)translate(3%,1%)}28%{transform:rotate(4deg)translate(4%,1.5%)}36%{transform:rotate(5deg)translate(3%,1%)}44%{transform:rotate(4deg)translate(4%,1.5%)}62%,78%{transform:rotate(-5deg)translate(-1%)}}.friend[data-friend=fox].is-sniff .friend-art{animation:1.2s ease-in-out fox-sniff}.friend[data-friend=fox].is-sniff .fx i:first-child{color:#f26a1f;font-size:16cqw;animation:1.2s ease-in-out fox-bang;top:4%;left:86%}.friend[data-friend=fox].is-sniff .fx i:first-child:before{content:"?"}@keyframes fox-cheer{0%{transform:translateY(0)scale(1)}12%{transform:translateY(0)scale(1.1,.88)}30%{transform:translateY(-11%)scale(.94,1.07)rotate(-5deg)}46%{transform:translateY(0)scale(1.08,.9)}62%{transform:translateY(-8%)scale(.96,1.05)rotate(5deg)}80%{transform:translateY(0)scale(1.05,.95)}to{transform:translateY(0)scale(1)}}@keyframes fox-spark{0%{opacity:0;transform:scale(.2)rotate(0)}40%{opacity:1;transform:scale(1.1)rotate(90deg)}to{opacity:0;transform:scale(.6)rotate(180deg)}}.friend[data-friend=fox].is-cheer .friend-art{animation:.8s cubic-bezier(.3,1.4,.6,1) fox-cheer}.friend[data-friend=fox].is-cheer .fx i{color:#ffc93c;font-size:14cqw;animation:.7s ease-out fox-spark}.friend[data-friend=fox].is-cheer .fx i:before{content:"✦"}.friend[data-friend=fox].is-cheer .fx i:first-child{animation-delay:.15s;top:20%;left:12%}.friend[data-friend=fox].is-cheer .fx i:nth-child(2){font-size:10cqw;animation-delay:.35s;top:12%;left:78%}.friend[data-friend=fox].is-cheer .fx i:nth-child(3){animation-delay:.55s;top:50%;left:70%}@keyframes fox-oops{0%{transform:translate(0)rotate(0)}14%{transform:translate(5%)rotate(8deg)scale(1.04,.95)}28%{transform:translate(-3%)rotate(-7deg)}40%{transform:translate(2%)rotate(5deg)}52%{transform:translate(-1%)rotate(-3deg)}66%{transform:translateY(2%)scale(1.03,.96)rotate(0)}to{transform:translate(0)rotate(0)scale(1)}}@keyframes fox-sweat{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(10cqw)}}.friend[data-friend=fox].is-oops .friend-art{animation:.65s ease-out fox-oops}.friend[data-friend=fox].is-oops .fx i:first-child{background:#9fd3f0;border-radius:50%/60% 60% 40% 40%;width:6%;height:9%;animation:.65s ease-in 80ms fox-sweat;top:22%;left:66%}@keyframes fox-win{0%{transform:perspective(600px)translateY(0)rotateY(0)scale(1)}12%{transform:perspective(600px)translateY(0)scale(1.1,.88)}45%{transform:perspective(600px)translateY(-8%)rotateY(180deg)scale(.96,1.04)}70%{transform:perspective(600px)translateY(0)rotateY(360deg)scale(1.08,.92)}84%{transform:perspective(600px)translateY(-2%)rotateY(360deg)scale(.99,1.02)}to{transform:perspective(600px)translateY(0)rotateY(360deg)scale(1)}}.friend[data-friend=fox].is-win .friend-art{animation:1.2s cubic-bezier(.4,1.2,.6,1) fox-win}.friend[data-friend=fox].is-win .fx i{color:#ffc93c;font-size:14cqw;animation:.8s ease-out fox-spark}.friend[data-friend=fox].is-win .fx i:before{content:"✦"}.friend[data-friend=fox].is-win .fx i:first-child{animation-delay:.6s;top:30%;left:10%}.friend[data-friend=fox].is-win .fx i:nth-child(2){animation-delay:.75s;top:20%;left:80%}.friend[data-friend=fox].is-win .fx i:nth-child(3){font-size:10cqw;animation-delay:.9s;top:6%;left:46%}.friend-btn:active .friend[data-friend=fox] .friend-art{transition:transform 90ms ease-out;transform:translateY(2%)scale(1.04,.94)}@keyframes bear-idle{0%,to{transform:scale(1)rotate(0)}30%{transform:scale(1.015,.985)rotate(-1.2deg)}55%{transform:scale(.99,1.02)rotate(0)}80%{transform:scale(1.015,.985)rotate(1.2deg)}}.friend[data-friend=bear].is-idle .friend-art{animation:4.8s ease-in-out infinite bear-idle}@keyframes bear-wave{0%,to{transform:rotate(0)}15%{transform:rotate(-7deg)translate(-2%)}35%{transform:rotate(6deg)translate(2%)}55%{transform:rotate(-5deg)translate(-1%)}75%{transform:rotate(3deg)}}.friend[data-friend=bear].is-wave .friend-art{animation:1.1s ease-in-out bear-wave}@keyframes bear-doze{0%,to{transform:rotate(0)translateY(0)scale(1)}45%,70%{transform:rotate(5deg)translateY(3%)scale(1.03,.96)}85%{transform:rotate(-1deg)translateY(-1%)scale(.99,1.02)}}@keyframes bear-zzz{0%{opacity:0;transform:translate(0)scale(.6)}25%{opacity:1}to{opacity:0;transform:translate(10cqw,-22cqw)scale(1.15)rotate(10deg)}}.friend[data-friend=bear].is-doze .friend-art{animation:4.4s ease-in-out infinite bear-doze}.friend[data-friend=bear].is-doze .fx i{color:#8a6a4a;font-size:11cqw;animation:3s ease-out infinite bear-zzz}.friend[data-friend=bear].is-doze .fx i:before{content:"z"}.friend[data-friend=bear].is-doze .fx i:first-child{top:26%;left:66%}.friend[data-friend=bear].is-doze .fx i:nth-child(2){font-size:13cqw;animation-delay:1s;top:20%;left:72%}.friend[data-friend=bear].is-doze .fx i:nth-child(3){font-size:15cqw;animation-delay:2s;top:14%;left:78%}@keyframes bear-stretch{0%{transform:scale(1)}20%{transform:scale(1.06,.92)}55%{transform:scale(.93,1.08)translateY(-2%)}70%{transform:scale(.94,1.07)translateY(-2%)rotate(-2deg)}88%{transform:scale(1.05,.95)}to{transform:scale(1)}}.friend[data-friend=bear].is-stretch .friend-art{animation:1.4s cubic-bezier(.34,1.3,.64,1) bear-stretch}@keyframes bear-think{0%,to{transform:rotate(0)}20%,65%{transform:rotate(-6deg)translate(-2%)}78%{transform:rotate(-2deg)translateY(1%)}88%{transform:rotate(-4deg)}}@keyframes bear-dots{0%,to{opacity:0}20%,70%{opacity:1}}.friend[data-friend=bear].is-think .friend-art{animation:1.8s ease-in-out bear-think}.friend[data-friend=bear].is-think .fx i{color:#8a6a4a;font-size:12cqw;animation:1.8s ease-in-out bear-dots;top:16%}.friend[data-friend=bear].is-think .fx i:before{content:"•"}.friend[data-friend=bear].is-think .fx i:first-child{left:68%}.friend[data-friend=bear].is-think .fx i:nth-child(2){animation-delay:.15s;left:75%}.friend[data-friend=bear].is-think .fx i:nth-child(3){animation-delay:.3s;left:82%}@keyframes bear-cheer{0%{transform:translateY(0)scale(1)}18%{transform:translateY(0)scale(1.14,.84)}48%{transform:translateY(-9%)scale(.94,1.06)rotate(-3deg)}68%{transform:translateY(0)scale(1.16,.82)}82%{transform:translateY(-2%)scale(.98,1.03)}to{transform:translateY(0)scale(1)}}@keyframes bear-puff{0%{opacity:0;transform:translate(0)scale(.4)}30%{opacity:.8}to{opacity:0;transform:translate(var(--dx),-6px) scale(1.4)}}.friend[data-friend=bear].is-cheer .friend-art{animation:.9s cubic-bezier(.34,1.4,.64,1) bear-cheer}.friend[data-friend=bear].is-cheer .fx i{background:#fff;border-radius:50%;width:12%;height:7%;animation:.6s ease-out .56s bear-puff;top:84%}.friend[data-friend=bear].is-cheer .fx i:first-child{--dx:-9cqw;left:28%}.friend[data-friend=bear].is-cheer .fx i:nth-child(2){--dx:0px;top:88%;left:44%}.friend[data-friend=bear].is-cheer .fx i:nth-child(3){--dx:9cqw;left:60%}@keyframes bear-oops{0%{transform:translate(0)rotate(0)}12%{transform:translateY(-4%)scale(.96,1.05)}26%{transform:translate(-4%)rotate(-5deg)}40%{transform:translate(3%)rotate(4deg)}58%{transform:translateY(3%)scale(1.04,.94)rotate(-2deg)}76%{transform:translateY(1%)scale(1.02,.97)rotate(2deg)}to{transform:translate(0)rotate(0)scale(1)}}@keyframes bear-sweat{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(10cqw)}}.friend[data-friend=bear].is-oops .friend-art{animation:.9s ease-out bear-oops}.friend[data-friend=bear].is-oops .fx i:first-child{background:#9fd3f0;border-radius:50%/60% 60% 40% 40%;width:6%;height:9%;animation:.8s ease-in .12s bear-sweat;top:24%;left:72%}@keyframes bear-win{0%,to{transform:translateY(0)rotate(0)scale(1)}10%{transform:scale(1.1,.9)}22%{transform:translateY(-7%)rotate(-6deg)scale(.95,1.06)}34%{transform:translateY(0)scale(1.1,.9)}46%{transform:translateY(-7%)rotate(6deg)scale(.95,1.06)}58%{transform:translateY(0)scale(1.08,.92)}72%{transform:rotate(-4deg)scale(1.02,.98)}86%{transform:rotate(3deg)}}@keyframes bear-heart{0%{opacity:0;transform:translateY(0)scale(.5)}25%{opacity:1;transform:translateY(-5cqw)scale(1)}to{opacity:0;transform:translateY(-26cqw)scale(1.1)}}.friend[data-friend=bear].is-win .friend-art{animation:1.6s ease-in-out bear-win}.friend[data-friend=bear].is-win .fx i{color:#ff8fa3;font-size:14cqw;animation:1.4s ease-out bear-heart;top:30%}.friend[data-friend=bear].is-win .fx i:before{content:"♥"}.friend[data-friend=bear].is-win .fx i:first-child{animation-delay:.2s;left:14%}.friend[data-friend=bear].is-win .fx i:nth-child(2){animation-delay:.5s;left:78%}.friend[data-friend=bear].is-win .fx i:nth-child(3){animation-delay:.8s;top:8%;left:46%}.friend-btn:active .friend[data-friend=bear] .friend-art{transition:transform .12s ease-out;transform:translateY(3%)scale(1.05,.93)}.friend[data-friend=squirrel].is-stash .fx i:first-child,.friend[data-friend=squirrel].is-cheer .fx i:first-child,.friend[data-friend=squirrel].is-oops .fx i:first-child,.friend[data-friend=squirrel].is-win .fx i{background:linear-gradient(#7a4e2d 0 34%,#d89a5e 34%);border-radius:45% 45% 50% 50%/35% 35% 65% 65%;width:8cqw;height:10cqw;box-shadow:inset -1.2cqw -1cqw #00000014}@keyframes squirrel-idle{0%,to{transform:translateY(0)rotate(0)scale(1)}8%{transform:translateY(-1%)scale(.99,1.01)}14%{transform:translateY(0)scale(1)}20%{transform:translateY(-1%)scale(.99,1.01)}26%{transform:translateY(0)}55%{transform:rotate(0)}60%,72%{transform:rotate(-3deg)translate(-1%)}78%{transform:rotate(1deg)}}.friend[data-friend=squirrel].is-idle .friend-art{animation:2.4s ease-in-out infinite squirrel-idle}@keyframes squirrel-chitter{0%{transform:translate(0)rotate(0)}6%{transform:translate(-1.5%)rotate(-2deg)}12%{transform:translate(1.5%)rotate(2deg)}18%{transform:translate(-1.5%)rotate(-2deg)}24%{transform:translate(1.5%)rotate(2deg)}30%{transform:translate(-1%)rotate(-1deg)}40%{transform:translate(0)scale(1.08,.9)}60%{transform:translateY(-9%)scale(.95,1.06)}80%{transform:translateY(0)scale(1.05,.95)}to{transform:translate(0)scale(1)}}.friend[data-friend=squirrel].is-chitter .friend-art{animation:.8s ease-out squirrel-chitter}@keyframes squirrel-nibble{0%,to{transform:translateY(0)rotate(0)scale(1)}10%{transform:translateY(1%)rotate(2deg)scale(1.01,.99)}20%{transform:translateY(0)rotate(0)}30%{transform:translateY(1%)rotate(2deg)scale(1.01,.99)}40%{transform:translateY(0)rotate(0)}50%{transform:translateY(1%)rotate(2deg)scale(1.01,.99)}60%{transform:translateY(0)rotate(0)}}@keyframes squirrel-crumb{0%{opacity:0;transform:translate(0)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx),18cqw)}}.friend[data-friend=squirrel].is-nibble .friend-art{animation:1.2s ease-in-out infinite squirrel-nibble}.friend[data-friend=squirrel].is-nibble .fx i{background:#9a6237;border-radius:50%;width:2.6cqw;height:2.6cqw;animation:1.2s ease-in infinite squirrel-crumb;top:64%}.friend[data-friend=squirrel].is-nibble .fx i:first-child{--dx:-2cqw;left:70%}.friend[data-friend=squirrel].is-nibble .fx i:nth-child(2){--dx:3cqw;animation-delay:.4s;left:74%}.friend[data-friend=squirrel].is-nibble .fx i:nth-child(3){--dx:0cqw;animation-delay:.8s;left:72%}@keyframes squirrel-stash{0%,to{transform:translateY(0)rotate(0)scale(1)}25%{transform:translateY(3%)rotate(6deg)scale(1.05,.94)}50%{transform:translateY(-3%)rotate(-2deg)scale(.97,1.03)}70%{transform:translateY(0)scale(1.02,.98)}}@keyframes squirrel-tuck{0%{opacity:0;transform:translate(0)scale(.4)}25%{opacity:1;transform:translateY(-12cqw)scale(1)}70%{opacity:1;transform:translate(-30cqw,14cqw)scale(.8)rotate(-120deg)}to{opacity:0;transform:translate(-32cqw,22cqw)scale(.5)rotate(-160deg)}}.friend[data-friend=squirrel].is-stash .friend-art{animation:.8s ease-in-out squirrel-stash}.friend[data-friend=squirrel].is-stash .fx i:first-child{animation:.8s cubic-bezier(.3,.6,.5,1) .12s squirrel-tuck;top:56%;left:66%}@keyframes squirrel-count{0%,to{transform:rotate(0)translateY(0)}15%{transform:rotate(-4deg)translateY(1%)}30%{transform:rotate(0)translateY(0)}45%{transform:rotate(-4deg)translateY(1%)}60%{transform:rotate(0)translateY(0)}75%{transform:rotate(-4deg)translateY(1%)}}@keyframes squirrel-rise{0%{opacity:0;transform:translateY(0)scale(.6)}25%{opacity:1;transform:translateY(-4cqw)scale(1)}to{opacity:0;transform:translateY(-16cqw)scale(1)}}.friend[data-friend=squirrel].is-count .friend-art{animation:1.5s ease-in-out squirrel-count}.friend[data-friend=squirrel].is-count .fx i{color:#b33a08;font-size:11cqw;animation:.9s ease-out both squirrel-rise;top:22%}.friend[data-friend=squirrel].is-count .fx i:first-child{left:60%}.friend[data-friend=squirrel].is-count .fx i:first-child:before{content:"1"}.friend[data-friend=squirrel].is-count .fx i:nth-child(2){animation-delay:.45s;left:72%}.friend[data-friend=squirrel].is-count .fx i:nth-child(2):before{content:"2"}.friend[data-friend=squirrel].is-count .fx i:nth-child(3){animation-delay:.9s;left:84%}.friend[data-friend=squirrel].is-count .fx i:nth-child(3):before{content:"3"}@keyframes squirrel-cheer{0%{transform:translateY(0)scale(1)}12%{transform:translateY(0)scale(1.1,.88)}30%{transform:translateY(-6%)scale(.96,1.05)}50%{transform:translateY(0)scale(1.04,.96)}70%{transform:translateY(-10%)scale(.94,1.07)rotate(-4deg)}88%{transform:translateY(0)scale(1.06,.94)}to{transform:translateY(0)scale(1)}}@keyframes squirrel-toss{0%{opacity:0;transform:translateY(0)rotate(0)}10%{opacity:1}45%{transform:translateY(-44cqw)rotate(220deg)}85%{opacity:1;transform:translateY(-6cqw)rotate(400deg)}to{opacity:0;transform:translateY(0)rotate(420deg)}}.friend[data-friend=squirrel].is-cheer .friend-art{animation:1.1s cubic-bezier(.3,1.3,.6,1) squirrel-cheer}.friend[data-friend=squirrel].is-cheer .fx i:first-child{animation:1s ease-in-out 60ms squirrel-toss;top:58%;left:68%}@keyframes squirrel-oops{0%{transform:translateY(0)scale(1)}12%{transform:translateY(-8%)scale(.94,1.07)}26%{transform:translateY(0)scale(1.06,.94)}36%{transform:rotate(-4deg)}46%{transform:rotate(4deg)}56%{transform:rotate(-3deg)}66%{transform:rotate(2deg)translateY(1%)}to{transform:rotate(0)translateY(0)}}@keyframes squirrel-drop{0%{opacity:1;transform:translate(0)rotate(0)}40%{transform:translate(5cqw,22cqw)rotate(90deg)}60%{transform:translate(10cqw,12cqw)rotate(160deg)}80%{opacity:1;transform:translate(14cqw,22cqw)rotate(220deg)}to{opacity:0;transform:translate(18cqw,22cqw)rotate(260deg)}}.friend[data-friend=squirrel].is-oops .friend-art{animation:.9s ease-out squirrel-oops}.friend[data-friend=squirrel].is-oops .fx i:first-child{animation:.9s ease-in 80ms squirrel-drop;top:56%;left:66%}@keyframes squirrel-win{0%{transform:perspective(600px)translateY(0)rotateY(0)scale(1)}12%{transform:perspective(600px)scale(1.1,.88)}40%{transform:perspective(600px)translateY(-9%)rotateY(180deg)scale(.95,1.05)}66%{transform:perspective(600px)translateY(0)rotateY(360deg)scale(1.07,.93)}80%{transform:perspective(600px)translateY(-4%)rotateY(360deg)}to{transform:perspective(600px)translateY(0)rotateY(360deg)scale(1)}}@keyframes squirrel-rain{0%{opacity:0;transform:translateY(0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translateY(60cqw)rotate(200deg)}}.friend[data-friend=squirrel].is-win .friend-art{animation:1.4s cubic-bezier(.4,1.2,.6,1) squirrel-win}.friend[data-friend=squirrel].is-win .fx i{animation:1s ease-in squirrel-rain;top:-12%}.friend[data-friend=squirrel].is-win .fx i:first-child{animation-delay:.2s;left:16%}.friend[data-friend=squirrel].is-win .fx i:nth-child(2){animation-delay:.45s;left:48%}.friend[data-friend=squirrel].is-win .fx i:nth-child(3){animation-delay:.3s;left:78%}.friend-btn:active .friend[data-friend=squirrel] .friend-art{transition:transform 90ms ease-out;transform:translateY(2%)scale(1.04,.94)}.friend[data-friend=raccoon].is-handoff .fx i:first-child,.friend[data-friend=raccoon].is-win .fx i{background:#ffc93c;border-radius:50%;width:13cqw;height:13cqw;box-shadow:inset 0 0 0 1.4cqw #f2a91d,0 .8cqw #00000014}@keyframes raccoon-idle{0%,to{transform:translate(0)rotate(0)scale(1)}12%{transform:translate(0)scale(1.01,.99)}24%,36%{transform:translate(-2%)rotate(-3deg)}46%{transform:translate(0)rotate(0)scale(1.01,.99)}60%,72%{transform:translate(2%)rotate(3deg)}84%{transform:translate(0)rotate(0)}}.friend[data-friend=raccoon].is-idle .friend-art{animation:3.4s ease-in-out infinite raccoon-idle}@keyframes raccoon-tiptoe{0%{transform:translate(-80%)translateY(0)rotate(-4deg)}15%{transform:translate(-62%)translateY(-4%)rotate(3deg)}30%{transform:translate(-44%)translateY(0)rotate(-4deg)}45%{transform:translate(-26%)translateY(-4%)rotate(3deg)}60%{transform:translate(-10%)translateY(0)rotate(-3deg)}75%{transform:translate(0)translateY(-3%)rotate(2deg)}88%{transform:translate(0)translateY(0)scale(1.04,.96)}to{transform:translate(0)translateY(0)scale(1)}}.friend[data-friend=raccoon].is-tiptoe .friend-art{animation:1.2s ease-in-out raccoon-tiptoe}@keyframes raccoon-peek{0%,to{transform:translateY(0)rotate(0)}12%{transform:translateY(70%)rotate(0)}30%{transform:translateY(70%)}48%{transform:translateY(22%)rotate(0)}58%{transform:translateY(22%)rotate(-6deg)translate(-3%)}70%{transform:translateY(22%)rotate(6deg)translate(3%)}82%{transform:translateY(22%)rotate(0)}}.friend[data-friend=raccoon].is-peek .friend-art{animation:3.2s ease-in-out infinite raccoon-peek}@keyframes raccoon-psst{0%,to{transform:translate(0)rotate(0)scale(1)}20%,75%{transform:translate(5%,1%)rotate(5deg)scale(1.03)}32%{transform:translate(6%)rotate(6deg)scale(1.04,1.02)}44%{transform:translate(5%,1%)rotate(5deg)scale(1.03)}}@keyframes raccoon-bubble{0%,to{opacity:0;transform:scale(.4)}18%,78%{opacity:1;transform:scale(1)}}.friend[data-friend=raccoon].is-psst .friend-art{animation:1.8s ease-in-out raccoon-psst}.friend[data-friend=raccoon].is-psst .fx i:first-child{color:#3a2a22;transform-origin:0 100%;background:#fff;border-radius:5cqw 5cqw 5cqw 1cqw;padding:1.5cqw 3cqw;font-size:9cqw;line-height:1;animation:1.8s cubic-bezier(.3,1.4,.6,1) raccoon-bubble;top:6%;right:5%}.friend[data-friend=raccoon].is-psst .fx i:first-child:before{content:"psst!"}@keyframes raccoon-handoff{0%{transform:translate(0)scale(1)rotate(0)}20%{transform:translate(-2%,1%)scale(1.04,.96)rotate(-3deg)}40%{transform:translate(5%,-3%)scale(.98,1.03)rotate(6deg)}60%{transform:translate(2%)rotate(1deg)}80%{transform:translateY(-1%)scale(1.02,.98)}to{transform:translate(0)scale(1)}}@keyframes raccoon-toss{0%{opacity:0;transform:translate(0)scale(.3)}20%{opacity:1;transform:translateY(-6cqw)scale(1)}to{opacity:0;transform:translate(28cqw,-34cqw)scale(.6)rotate(200deg)}}.friend[data-friend=raccoon].is-handoff .friend-art{animation:1s ease-in-out raccoon-handoff}.friend[data-friend=raccoon].is-handoff .fx i:first-child{animation:.8s cubic-bezier(.3,.6,.5,1) .25s raccoon-toss;top:46%;left:62%}@keyframes raccoon-cheer{0%,to{transform:translate(0)rotate(0)scale(1)}12%{transform:translate(-4%)rotate(-5deg)scale(1.03,.97)}24%{transform:translate(4%)rotate(5deg)scale(1.03,.97)}36%{transform:translate(-4%)rotate(-5deg)scale(1.03,.97)}48%{transform:translate(0)scale(1.1,.88)}66%{transform:translateY(-9%)scale(.94,1.06)}84%{transform:translateY(0)scale(1.06,.94)}}@keyframes raccoon-spark{0%{opacity:0;transform:scale(.2)rotate(0)}40%{opacity:1;transform:scale(1.1)rotate(90deg)}to{opacity:0;transform:scale(.6)rotate(180deg)}}.friend[data-friend=raccoon].is-cheer .friend-art{animation:1s ease-in-out raccoon-cheer}.friend[data-friend=raccoon].is-cheer .fx i{color:#ffc93c;font-size:13cqw;animation:.7s ease-out raccoon-spark}.friend[data-friend=raccoon].is-cheer .fx i:before{content:"✦"}.friend[data-friend=raccoon].is-cheer .fx i:first-child{animation-delay:.5s;top:22%;left:14%}.friend[data-friend=raccoon].is-cheer .fx i:nth-child(2){font-size:10cqw;animation-delay:.65s;top:14%;left:80%}.friend[data-friend=raccoon].is-cheer .fx i:nth-child(3){animation-delay:.8s;top:52%;left:72%}@keyframes raccoon-oops{0%{transform:translateY(0)scale(1)}10%{transform:translateY(-4%)scale(.95,1.06)}30%{transform:translateY(75%)scale(1)}55%{transform:translateY(75%)}72%{transform:translateY(20%)rotate(-4deg)}84%{transform:translateY(20%)rotate(4deg)}to{transform:translateY(0)rotate(0)}}@keyframes raccoon-bang{0%,to{opacity:0;transform:scale(.6)rotate(-10deg)}15%,60%{opacity:1;transform:scale(1)rotate(-10deg)}}.friend[data-friend=raccoon].is-oops .friend-art{animation:1.1s cubic-bezier(.4,0,.4,1) raccoon-oops}.friend[data-friend=raccoon].is-oops .fx i:first-child{color:#c2185b;font-size:18cqw;animation:.9s ease-out raccoon-bang;top:10%;left:46%}.friend[data-friend=raccoon].is-oops .fx i:first-child:before{content:"!"}@keyframes raccoon-win{0%,to{transform:translateY(0)rotate(0)scale(1)}10%{transform:scale(1.1,.88)}24%{transform:translateY(-8%)rotate(-5deg)scale(.95,1.05)}38%{transform:translateY(0)scale(1.08,.92)}52%{transform:translateY(-8%)rotate(5deg)scale(.95,1.05)}66%{transform:translateY(0)scale(1.06,.94)}80%{transform:rotate(-3deg)}}@keyframes raccoon-loot{0%{opacity:0;transform:translate(0)scale(.3)}25%{opacity:1}60%{transform:translate(var(--dx),-28cqw) scale(1);opacity:1}to{opacity:0;transform:translate(var(--dx),-14cqw) scale(.9)}}.friend[data-friend=raccoon].is-win .friend-art{animation:1.5s ease-in-out raccoon-win}.friend[data-friend=raccoon].is-win .fx i{animation:.9s cubic-bezier(.2,.7,.4,1) raccoon-loot;top:56%}.friend[data-friend=raccoon].is-win .fx i:first-child{--dx:-22cqw;animation-delay:.1s;left:38%}.friend[data-friend=raccoon].is-win .fx i:nth-child(2){--dx:2cqw;animation-delay:.4s;left:44%}.friend[data-friend=raccoon].is-win .fx i:nth-child(3){--dx:24cqw;animation-delay:.7s;left:50%}.friend-btn:active .friend[data-friend=raccoon] .friend-art{transition:transform .1s ease-out;transform:translateY(3%)scale(1.04,.94)}.friend[data-friend=owl].is-cheer .fx i,.friend[data-friend=owl].is-oops .fx i,.friend[data-friend=owl].is-win .fx i:nth-child(2),.friend[data-friend=owl].is-win .fx i:nth-child(3){background:#c79a6a;border-radius:50% 0;width:5cqw;height:10cqw;box-shadow:inset -1cqw 0 #e8c9a0}@keyframes owl-idle{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-2.5deg)scale(1.01,.99)}50%{transform:rotate(0)scale(.995,1.01)}75%{transform:rotate(2.5deg)scale(1.01,.99)}}.friend[data-friend=owl].is-idle .friend-art{animation:3.6s ease-in-out infinite owl-idle}@keyframes owl-flutter{0%{transform:translateY(0)scale(1)}10%{transform:translateY(0)scale(1.08,.9)}22%{transform:translateY(-7%)scale(1.06,.96)}30%{transform:translateY(-5%)scale(.97,1.03)}38%{transform:translateY(-8%)scale(1.06,.96)}46%{transform:translateY(-6%)scale(.97,1.03)}54%{transform:translateY(-8%)scale(1.06,.96)}76%{transform:translateY(0)scale(1.06,.94)}to{transform:translateY(0)scale(1)}}.friend[data-friend=owl].is-flutter .friend-art{animation:.9s ease-in-out owl-flutter}@keyframes owl-hoo{0%,to{transform:scale(1)}20%{transform:scale(1.06,.93)}42%,70%{transform:scale(.94,1.1)translateY(-2%)}56%{transform:scale(.95,1.08)translateY(-1%)}86%{transform:scale(1.03,.97)}}@keyframes owl-bubble{0%,to{opacity:0;transform:scale(.4)}25%,80%{opacity:1;transform:scale(1)}}.friend[data-friend=owl].is-hoo .friend-art{animation:1.6s ease-in-out owl-hoo}.friend[data-friend=owl].is-hoo .fx i:first-child{color:#3a2a22;transform-origin:0 100%;background:#fff;border-radius:5cqw 5cqw 5cqw 1cqw;padding:1.5cqw 3cqw;font-size:10cqw;line-height:1;animation:1.6s cubic-bezier(.3,1.4,.6,1) owl-bubble;top:5%;right:4%}.friend[data-friend=owl].is-hoo .fx i:first-child:before{content:"hoo!"}@keyframes owl-tilt{0%,to{transform:rotate(0)}18%,38%{transform:rotate(-14deg)translate(-2%)}52%,72%{transform:rotate(12deg)translate(2%)}86%{transform:rotate(-2deg)}}@keyframes owl-q{0%,to{opacity:0;transform:scale(.6)}20%,80%{opacity:1;transform:scale(1)}}.friend[data-friend=owl].is-tilt .friend-art{animation:1.8s cubic-bezier(.45,0,.25,1) owl-tilt}.friend[data-friend=owl].is-tilt .fx i:first-child{color:#b33a08;font-size:15cqw;animation:1.8s ease-in-out owl-q;top:4%;left:82%}.friend[data-friend=owl].is-tilt .fx i:first-child:before{content:"?"}@keyframes owl-nod{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(5deg)translateY(2%)scale(1.02,.98)}45%{transform:rotate(0)translateY(0)}65%{transform:rotate(5deg)translateY(2%)scale(1.02,.98)}85%{transform:rotate(0)}}@keyframes owl-twinkle{0%{opacity:0;transform:scale(.2)rotate(0)}40%{opacity:1;transform:scale(1.1)rotate(90deg)}to{opacity:0;transform:scale(.5)rotate(180deg)}}.friend[data-friend=owl].is-nod .friend-art{animation:1.4s ease-in-out owl-nod}.friend[data-friend=owl].is-nod .fx i:first-child{color:#ffc93c;font-size:14cqw;animation:.8s ease-out .5s owl-twinkle;top:14%;left:66%}.friend[data-friend=owl].is-nod .fx i:first-child:before{content:"✦"}@keyframes owl-cheer{0%{transform:translateY(0)scale(1)}14%{transform:translateY(0)scale(1.1,.88)}32%{transform:translateY(-9%)scale(.95,1.06)}48%{transform:translateY(0)scale(1.08,.9)}66%{transform:translateY(-6%)scale(.97,1.04)}84%{transform:translateY(0)scale(1.04,.96)}to{transform:translateY(0)scale(1)}}@keyframes owl-drift{0%{opacity:0;transform:translate(0)rotate(-20deg)}20%{opacity:1}50%{transform:translate(4cqw,10cqw)rotate(30deg)}to{opacity:0;transform:translate(-2cqw,24cqw)rotate(-10deg)}}.friend[data-friend=owl].is-cheer .friend-art{animation:.9s cubic-bezier(.3,1.4,.6,1) owl-cheer}.friend[data-friend=owl].is-cheer .fx i{animation:1.3s ease-in-out owl-drift}.friend[data-friend=owl].is-cheer .fx i:first-child{animation-delay:.25s;top:16%;left:18%}.friend[data-friend=owl].is-cheer .fx i:nth-child(2){animation-delay:.45s;top:10%;left:76%}.friend[data-friend=owl].is-cheer .fx i:nth-child(3){animation-delay:.65s;top:30%;left:62%}@keyframes owl-oops{0%{transform:scale(1)rotate(0)}10%{transform:scale(1.12,1.06)rotate(0)}20%{transform:scale(1.1,1.05)rotate(-4deg)}30%{transform:scale(1.1,1.05)rotate(4deg)}40%{transform:scale(1.08,1.04)rotate(-3deg)}52%{transform:scale(1.04,1.02)rotate(2deg)}70%{transform:scale(.98,1.01)rotate(0)}to{transform:scale(1)}}@keyframes owl-poof{0%{opacity:0;transform:translate(0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--r))}}.friend[data-friend=owl].is-oops .friend-art{animation:.9s ease-out owl-oops}.friend[data-friend=owl].is-oops .fx i{animation:.8s ease-out 80ms owl-poof;top:46%;left:46%}.friend[data-friend=owl].is-oops .fx i:first-child{--dx:-28cqw;--dy:-14cqw;--r:-120deg}.friend[data-friend=owl].is-oops .fx i:nth-child(2){--dx:26cqw;--dy:-20cqw;--r:140deg}.friend[data-friend=owl].is-oops .fx i:nth-child(3){--dx:18cqw;--dy:18cqw;--r:80deg}@keyframes owl-win{0%{transform:translateY(0)scale(1)}10%{transform:translateY(0)scale(1.1,.88)}30%{transform:translateY(-105%)scale(.92,1.08)}44%{transform:translateY(-105%)}70%{transform:translateY(-6%)rotate(-3deg)}80%{transform:translateY(-9%)rotate(3deg)}92%{transform:translateY(0)scale(1.06,.94)rotate(0)}to{transform:translateY(0)scale(1)}}.friend[data-friend=owl].is-win .friend-art{animation:2s cubic-bezier(.45,0,.3,1) owl-win}.friend[data-friend=owl].is-win .fx i:first-child{color:#3a2a22;transform-origin:0 100%;background:#fff;border-radius:5cqw 5cqw 5cqw 1cqw;padding:1.5cqw 3cqw;font-size:10cqw;line-height:1;animation:.7s cubic-bezier(.3,1.4,.6,1) 1.25s both owl-bubble;top:5%;right:4%}.friend[data-friend=owl].is-win .fx i:first-child:before{content:"hoo!"}.friend[data-friend=owl].is-win .fx i:nth-child(2),.friend[data-friend=owl].is-win .fx i:nth-child(3){animation:1.4s ease-in-out .6s owl-drift;top:-12%}.friend[data-friend=owl].is-win .fx i:nth-child(2){left:30%}.friend[data-friend=owl].is-win .fx i:nth-child(3){animation-delay:.85s;left:60%}.friend-btn:active .friend[data-friend=owl] .friend-art{transition:transform .11s ease-out;transform:translateY(2%)scale(1.04,.95)}@keyframes hog-idle{0%,to{transform:translate(0)scale(1)}10%{transform:translate(.5%,-.5%)scale(1.01,.99)}20%{transform:translate(0)}30%{transform:translate(.5%,-.5%)scale(1.01,.99)}40%{transform:translate(0)}65%{transform:translate(-1%)scale(1.01,.99)}80%{transform:translate(1%)scale(1.01,.99)}}.friend[data-friend=hedgehog].is-idle .friend-art{animation:2.6s ease-in-out infinite hog-idle}@keyframes hog-scurry{0%{transform:translate(0)rotate(0)}8%{transform:translate(-2%,-1.5%)rotate(-2deg)}16%{transform:translate(2%)rotate(2deg)}24%{transform:translate(-2%,-1.5%)rotate(-2deg)}32%{transform:translate(2%)rotate(2deg)}40%{transform:translate(-2%,-1.5%)rotate(-2deg)}48%{transform:translate(2%)rotate(2deg)}62%{transform:translate(0)scale(1.06,.94)}78%{transform:translateY(-3%)scale(.97,1.04)}to{transform:translate(0)scale(1)}}.friend[data-friend=hedgehog].is-scurry .friend-art{animation:.8s ease-out hog-scurry}@keyframes hog-focus{0%,to{transform:translate(2%,1%)rotate(4deg)scale(1.02,.98)}50%{transform:translate(2%,.5%)rotate(4deg)scale(1.01,.995)}}@keyframes hedgehog-aim{0%,to{opacity:0;transform:scale(.9)}30%,70%{opacity:.9;transform:scale(1)}}.friend[data-friend=hedgehog].is-focus .friend-art{animation:2.4s ease-in-out infinite hog-focus}.friend[data-friend=hedgehog].is-focus .fx i:first-child{border:1.6cqw solid #6b8f4e;border-radius:50%;width:16cqw;height:16cqw;animation:2.4s ease-in-out infinite hedgehog-aim;top:6%;right:6%}.friend[data-friend=hedgehog].is-focus .fx i:first-child:before{content:"";background:#6b8f4e;border-radius:50%;position:absolute;inset:30%}@keyframes hog-inspect{0%,to{transform:translate(0)rotate(0)}20%,70%{transform:translate(4%,1%)rotate(5deg)scale(1.04)}45%{transform:translate(5%,1.5%)rotate(6deg)scale(1.05)}}@keyframes hedgehog-glass{0%,to{opacity:0;transform:translate(0)rotate(-20deg)scale(.6)}20%,75%{opacity:1;transform:translate(0)rotate(-20deg)scale(1)}45%{transform:translate(-3cqw,2cqw)rotate(-14deg)scale(1.05)}}.friend[data-friend=hedgehog].is-inspect .friend-art{animation:1.8s ease-in-out hog-inspect}.friend[data-friend=hedgehog].is-inspect .fx i:first-child{background:#ffffff73;border:1.8cqw solid #6b4a32;border-radius:50%;width:16cqw;height:16cqw;animation:1.8s ease-in-out hedgehog-glass;top:36%;left:76%}.friend[data-friend=hedgehog].is-inspect .fx i:first-child:after{content:"";transform-origin:0;background:#6b4a32;border-radius:2cqw;width:9cqw;height:2.6cqw;position:absolute;top:80%;left:80%;transform:rotate(45deg)}@keyframes hog-roll{0%{clip-path:circle(80% at 44% 56%);transform:translate(0)rotate(0)}18%{clip-path:circle(27% at 44% 56%);transform:translate(0)rotate(0)scale(1.04,.96)}60%{clip-path:circle(27% at 44% 56%);transform:translate(26%)rotate(360deg)}62%{clip-path:circle(27% at 44% 56%);transform:translate(26%)rotate(360deg)}82%{clip-path:circle(27% at 44% 56%);transform:translate(0)rotate(0)}to{clip-path:circle(80% at 44% 56%);transform:translate(0)rotate(0)}}.friend[data-friend=hedgehog].is-roll .friend-art{transform-origin:44% 56%;animation:1.5s cubic-bezier(.45,0,.3,1) hog-roll}@keyframes hog-cheer{0%,to{transform:translateY(0)scale(1)}8%{transform:scale(1.08,.9)}18%{transform:translateY(-6%)scale(.96,1.04)}28%{transform:translateY(0)scale(1.06,.92)}40%{transform:translateY(-6%)scale(.96,1.04)}50%{transform:translateY(0)scale(1.06,.92)}62%{transform:translateY(-8%)scale(.95,1.05)rotate(-3deg)}76%{transform:translateY(0)scale(1.05,.95)}}@keyframes hedgehog-spark{0%{opacity:0;transform:scale(.2)rotate(0)}40%{opacity:1;transform:scale(1.1)rotate(90deg)}to{opacity:0;transform:scale(.6)rotate(180deg)}}.friend[data-friend=hedgehog].is-cheer .friend-art{animation:.9s ease-out hog-cheer}.friend[data-friend=hedgehog].is-cheer .fx i{color:#ffc93c;font-size:13cqw;animation:.7s ease-out hedgehog-spark}.friend[data-friend=hedgehog].is-cheer .fx i:before{content:"✦"}.friend[data-friend=hedgehog].is-cheer .fx i:first-child{animation-delay:.15s;top:24%;left:12%}.friend[data-friend=hedgehog].is-cheer .fx i:nth-child(2){font-size:10cqw;animation-delay:.35s;top:16%;left:80%}.friend[data-friend=hedgehog].is-cheer .fx i:nth-child(3){animation-delay:.55s;top:8%;left:52%}@keyframes hog-oops{0%{transform:scale(1)}12%{transform:scale(1.14,1.1)}20%{transform:scale(1.14,1.1)rotate(-2deg)}28%{transform:scale(1.14,1.1)rotate(2deg)}36%{transform:scale(1.14,1.1)rotate(-2deg)}44%{transform:scale(1.14,1.1)rotate(1deg)}62%{transform:scale(.97,.95)translateY(2%)}80%{transform:scaleX(1.01)}to{transform:scale(1)}}@keyframes hedgehog-jab{0%,to{opacity:0;transform:rotate(var(--r)) translateY(0) scaleY(.4)}25%,45%{opacity:1;transform:rotate(var(--r)) translateY(-3cqw) scaleY(1)}}@keyframes hedgehog-huff{0%{opacity:0;transform:translate(0)scale(.4)}30%{opacity:.9}to{opacity:0;transform:translate(8cqw,-3cqw)scale(1.3)}}.friend[data-friend=hedgehog].is-oops .friend-art{animation:1s ease-out hog-oops}.friend[data-friend=hedgehog].is-oops .fx i:first-child,.friend[data-friend=hedgehog].is-oops .fx i:nth-child(2){transform-origin:50% 100%;background:#c2185b;border-radius:2cqw;width:1.6cqw;height:8cqw;animation:.6s ease-out hedgehog-jab}.friend[data-friend=hedgehog].is-oops .fx i:first-child{--r:-30deg;top:14%;left:26%}.friend[data-friend=hedgehog].is-oops .fx i:nth-child(2){--r:5deg;top:8%;left:42%}.friend[data-friend=hedgehog].is-oops .fx i:nth-child(3){background:#fff;border-radius:50%;width:9cqw;height:6cqw;animation:.6s ease-out .56s hedgehog-huff;top:56%;left:84%}@keyframes hog-win{0%{clip-path:circle(80% at 44% 56%);transform:translateY(0)rotate(0)}14%{clip-path:circle(27% at 44% 56%);transform:translateY(0)scale(1.04,.96)}30%{clip-path:circle(27% at 44% 56%);transform:translateY(-22%)rotate(-180deg)}44%{clip-path:circle(27% at 44% 56%);transform:translateY(0)rotate(-300deg)scale(1.08,.9)}58%{clip-path:circle(27% at 44% 56%);transform:translateY(-10%)rotate(-360deg)}70%{clip-path:circle(27% at 44% 56%);transform:translateY(0)rotate(-360deg)scale(1.05,.95)}84%{clip-path:circle(80% at 44% 56%);transform:translateY(-2%)rotate(-360deg)scale(.98,1.03)}to{clip-path:circle(80% at 44% 56%);transform:translateY(0)rotate(-360deg)}}@keyframes hedgehog-check{0%,to{opacity:0;transform:scale(.3)rotate(-12deg)}30%,85%{opacity:1;transform:scale(1)rotate(-8deg)}}.friend[data-friend=hedgehog].is-win .friend-art{transform-origin:44% 56%;animation:1.6s cubic-bezier(.4,0,.4,1) hog-win}.friend[data-friend=hedgehog].is-win .fx i:first-child{color:#fff;text-align:center;background:#6b8f4e;border-radius:50%;width:20cqw;height:20cqw;font-size:14cqw;line-height:20cqw;animation:1.1s cubic-bezier(.3,1.5,.6,1) .95s both hedgehog-check;top:6%;right:6%}.friend[data-friend=hedgehog].is-win .fx i:first-child:before{content:"✓"}.friend-btn:active .friend[data-friend=hedgehog] .friend-art{transition:transform 90ms ease-out;transform:translateY(2%)scale(1.04,.94)}.friend[data-friend=bunny].is-draw .fx i:first-child,.friend[data-friend=bunny].is-cheer .fx i,.friend[data-friend=bunny].is-win .fx i{background:radial-gradient(circle at 30% 30%,#6fb34f 24%,#0000 25%),radial-gradient(circle at 70% 30%,#6fb34f 24%,#0000 25%),radial-gradient(circle at 30% 70%,#6fb34f 24%,#0000 25%),radial-gradient(circle at 70% 70%,#6fb34f 24%,#0000 25%),radial-gradient(circle,#4f8f37 10%,#0000 11%);width:13cqw;height:13cqw}@keyframes bunny-idle{0%,to{transform:translateY(0)scale(1)}6%{transform:scale(1.005,.995)}10%{transform:scale(.995,1.005)}14%{transform:scale(1.005,.995)}18%{transform:scale(1)}45%{transform:translateY(-1.5%)scale(.99,1.015)}60%{transform:translateY(0)scale(1.01,.99)}70%{transform:translateY(0)scale(1)}}.friend[data-friend=bunny].is-idle .friend-art{animation:2.6s ease-in-out infinite bunny-idle}@keyframes bunny-binky{0%{transform:translateY(0)rotate(0)scale(1)}15%{transform:translateY(0)scale(1.1,.88)}40%{transform:translateY(-14%)rotate(-14deg)scale(.95,1.06)skew(-6deg)}55%{transform:translateY(-12%)rotate(10deg)skew(6deg)}75%{transform:translateY(0)rotate(0)scale(1.08,.92)}88%{transform:translateY(-2%)scale(.98,1.02)}to{transform:translateY(0)scale(1)}}.friend[data-friend=bunny].is-binky .friend-art{animation:.8s cubic-bezier(.3,1.3,.6,1) bunny-binky}@keyframes bunny-draw{0%,to{transform:translateY(0)scale(1)}10%{transform:scale(1.06,.92)}20%{transform:translateY(-6%)scale(.97,1.04)}30%{transform:translateY(0)scale(1.06,.92)}40%{transform:translateY(-6%)scale(.97,1.04)}50%{transform:translateY(0)scale(1.06,.92)}62%{transform:translateY(-10%)scale(.95,1.06)}76%{transform:translateY(0)scale(1.06,.93)}88%{transform:scale(1)}}@keyframes bunny-spin-clover{0%{opacity:0;transform:translateY(0)scale(.4)rotate(0)}15%{opacity:1;transform:translateY(-4cqw)scale(1)rotate(180deg)}60%{opacity:1;transform:translateY(-4cqw)scale(1.15)rotate(900deg)}80%{opacity:1;transform:translateY(6cqw)scale(.9)rotate(1080deg)}to{opacity:0;transform:translateY(10cqw)scale(.6)rotate(1080deg)}}.friend[data-friend=bunny].is-draw .friend-art{animation:1.6s ease-in-out bunny-draw}.friend[data-friend=bunny].is-draw .fx i:first-child{animation:1.6s cubic-bezier(.3,0,.4,1) bunny-spin-clover;top:6%;left:44%}@keyframes bunny-ears{0%,to{transform:translateY(0)scale(1)}25%,70%{transform:translateY(-3%)scale(.93,1.1)}40%{transform:translateY(-3%)scale(.93,1.1)rotate(-3deg)}55%{transform:translateY(-3%)scale(.93,1.1)rotate(3deg)}85%{transform:translateY(0)scale(1.04,.96)}}@keyframes bunny-q{0%,to{opacity:0;transform:scale(.6)}20%,80%{opacity:1;transform:scale(1)}}.friend[data-friend=bunny].is-ears .friend-art{animation:1.6s ease-in-out bunny-ears}.friend[data-friend=bunny].is-ears .fx i:first-child{color:#b33a08;font-size:15cqw;animation:1.6s ease-in-out bunny-q;top:10%;left:76%}.friend[data-friend=bunny].is-ears .fx i:first-child:before{content:"?"}@keyframes bunny-flop{0%{transform:rotate(0)translateY(0)}25%{transform:rotate(-48deg)translate(12%,-2%)scale(1.02,.96)}35%{transform:rotate(-46deg)translate(12%,-2%)}45%{transform:rotate(-50deg)translate(12%,-2%)}55%{transform:rotate(-46deg)translate(12%,-2%)}75%{transform:rotate(6deg)translateY(-6%)scale(.96,1.05)}88%{transform:rotate(0)translateY(0)scale(1.05,.95)}to{transform:rotate(0)translateY(0)scale(1)}}@keyframes bunny-heart{0%{opacity:0;transform:translateY(0)scale(.5)}30%{opacity:1;transform:translateY(-4cqw)scale(1)}to{opacity:0;transform:translateY(-16cqw)scale(1.1)}}.friend[data-friend=bunny].is-flop .friend-art{transform-origin:46% 80%;animation:1.6s cubic-bezier(.45,0,.3,1) bunny-flop;-webkit-mask-image:radial-gradient(circle at 46% 58%,#000 62%,#0000 74%);mask-image:radial-gradient(circle at 46% 58%,#000 62%,#0000 74%)}.friend[data-friend=bunny].is-flop .fx i:first-child{color:#ff8fa3;font-size:13cqw;animation:.9s ease-out .4s bunny-heart;top:30%;left:60%}.friend[data-friend=bunny].is-flop .fx i:first-child:before{content:"♥"}@keyframes bunny-cheer{0%{transform:translateY(0)scale(1)}12%{transform:scale(1.1,.86)}30%{transform:translateY(-13%)scale(.93,1.08)}46%{transform:translateY(0)scale(1.1,.88)}64%{transform:translateY(-11%)scale(.94,1.07)rotate(4deg)}82%{transform:translateY(0)scale(1.06,.94)}to{transform:translateY(0)scale(1)}}@keyframes bunny-pop{0%{opacity:0;transform:scale(.2)rotate(-40deg)}40%{opacity:1;transform:scale(1.1)rotate(10deg)}to{opacity:0;transform:translateY(-8cqw)scale(.8)rotate(40deg)}}.friend[data-friend=bunny].is-cheer .friend-art{animation:1s cubic-bezier(.3,1.3,.6,1) bunny-cheer}.friend[data-friend=bunny].is-cheer .fx i{animation:.7s ease-out both bunny-pop}.friend[data-friend=bunny].is-cheer .fx i:first-child{animation-delay:.2s;top:30%;left:10%}.friend[data-friend=bunny].is-cheer .fx i:nth-child(2){animation-delay:.45s;top:22%;left:76%}.friend[data-friend=bunny].is-cheer .fx i:nth-child(3){animation-delay:.65s;top:6%;left:22%}@keyframes bunny-oops{0%{transform:translateY(0)scale(1)}10%{transform:translateY(-3%)scale(.96,1.04)}30%{transform:translateY(-3%)scale(.96,1.04)}38%{transform:translateY(1%)scale(1.08,.9)}48%{transform:translateY(0)scale(1)}56%{transform:translateY(1%)scale(1.08,.9)}66%{transform:translateY(0)rotate(-3deg)}80%{transform:rotate(2deg)}to{transform:rotate(0)}}@keyframes bunny-puff{0%{opacity:0;transform:translate(0)scale(.4)}30%{opacity:.9}to{opacity:0;transform:translate(var(--dx),-2cqw) scale(1.4)}}.friend[data-friend=bunny].is-oops .friend-art{animation:.9s ease-out bunny-oops}.friend[data-friend=bunny].is-oops .fx i{background:#fff;border-radius:50%;width:10cqw;height:6cqw;animation:.5s ease-out .33s bunny-puff;top:84%}.friend[data-friend=bunny].is-oops .fx i:first-child{--dx:-8cqw;left:28%}.friend[data-friend=bunny].is-oops .fx i:nth-child(2){--dx:0cqw;animation-delay:.5s;left:48%}.friend[data-friend=bunny].is-oops .fx i:nth-child(3){--dx:8cqw;left:64%}@keyframes bunny-win{0%,to{transform:translateY(0)rotate(0)scale(1)}8%{transform:scale(1.1,.88)}20%{transform:translateY(-12%)rotate(-12deg)skew(-6deg)}32%{transform:translateY(0)scale(1.08,.9)}44%{transform:translateY(-12%)rotate(12deg)skew(6deg)}56%{transform:translateY(0)scale(1.08,.9)}70%{transform:translateY(-14%)rotate(-8deg)scale(.94,1.06)}84%{transform:translateY(0)scale(1.06,.94)}}@keyframes bunny-rain{0%{opacity:0;transform:translateY(0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translateY(64cqw)rotate(240deg)}}.friend[data-friend=bunny].is-win .friend-art{animation:1.6s ease-in-out bunny-win}.friend[data-friend=bunny].is-win .fx i{animation:1.1s ease-in bunny-rain;top:-14%}.friend[data-friend=bunny].is-win .fx i:first-child{animation-delay:.15s;left:12%}.friend[data-friend=bunny].is-win .fx i:nth-child(2){animation-delay:.5s;left:46%}.friend[data-friend=bunny].is-win .fx i:nth-child(3){animation-delay:.3s;left:76%}.friend-btn:active .friend[data-friend=bunny] .friend-art{transition:transform 90ms ease-out;transform:translateY(2%)scale(1.05,.93)}.friend[data-friend=deer].is-cheer .fx i,.friend[data-friend=deer].is-win .fx i{background:#8fbf6a;border-radius:0 100%;width:7cqw;height:10cqw;box-shadow:inset -1cqw 0 #0000000f}.friend[data-friend=deer].is-cheer .fx i:nth-child(2),.friend[data-friend=deer].is-win .fx i:nth-child(2){background:#e8a15a}@keyframes deer-idle{0%,to{transform:rotate(0)scale(1)}40%{transform:rotate(-1deg)scale(.995,1.012)}70%{transform:rotate(.8deg)scale(1.005,.997)}}.friend[data-friend=deer].is-idle .friend-art{animation:5s ease-in-out infinite deer-idle}@keyframes deer-prance{0%{transform:translateY(0)rotate(0)}15%{transform:translateY(0)scale(1.04,.96)}32%{transform:translateY(-7%)rotate(-3deg)scale(.98,1.02)}48%{transform:translateY(0)rotate(0)scale(1.03,.97)}65%{transform:translateY(-6%)rotate(3deg)scale(.98,1.02)}82%{transform:translateY(0)scale(1.02,.98)}to{transform:translateY(0)scale(1)}}.friend[data-friend=deer].is-prance .friend-art{animation:1.1s cubic-bezier(.45,0,.35,1) deer-prance}@keyframes deer-breathe{0%,to{transform:scale(1)translateY(0)}50%{transform:scale(1.03,1.05)translateY(-1.5%)}}@keyframes deer-glow{0%,to{opacity:.15;transform:translate(-50%,-50%)scale(.75)}50%{opacity:.55;transform:translate(-50%,-50%)scale(1)}}.friend[data-friend=deer].is-breathe .friend-art{animation:6s ease-in-out infinite deer-breathe}.friend[data-friend=deer].is-breathe .fx i:first-child{border:1.4cqw solid #ffffffe6;border-radius:50%;width:86cqw;height:86cqw;animation:6s ease-in-out infinite deer-glow;top:52%;left:50%;box-shadow:0 0 6cqw #ffffffb3,inset 0 0 6cqw #fff9}@keyframes deer-bow{0%,to{transform:rotate(0)translateY(0)}35%,60%{transform:rotate(9deg)translate(3%,3%)scale(1.02,.97)}80%{transform:rotate(-1deg)translateY(-1%)}}.friend[data-friend=deer].is-bow .friend-art{transform-origin:40% 88%;animation:1.8s ease-in-out deer-bow}@keyframes deer-gaze{0%,to{transform:rotate(0)translate(0)}20%{transform:rotate(-4deg)translateY(-2%)scale(.99,1.02)}30%{transform:rotate(-3deg)translateY(-2%)}36%{transform:rotate(-5deg)translateY(-2%)}42%,75%{transform:rotate(-4deg)translate(1%,-2%)}}@keyframes deer-glimmer{0%,to{opacity:0;transform:scale(.3)rotate(0)}40%,70%{opacity:1;transform:scale(1)rotate(90deg)}}.friend[data-friend=deer].is-gaze .friend-art{animation:1.8s ease-in-out deer-gaze}.friend[data-friend=deer].is-gaze .fx i:first-child{color:#ffc93c;font-size:13cqw;animation:1.6s ease-in-out .3s deer-glimmer;top:20%;left:80%}.friend[data-friend=deer].is-gaze .fx i:first-child:before{content:"✦"}@keyframes deer-cheer{0%{transform:translateY(0)rotate(0)scale(1)}15%{transform:scale(1.06,.93)}42%{transform:translateY(-7%)rotate(-5deg)scale(.97,1.03)}68%{transform:translateY(0)rotate(0)scale(1.04,.96)}84%{transform:translateY(-2%)}to{transform:translateY(0)scale(1)}}@keyframes deer-flutter{0%{opacity:0;transform:translate(0)rotate(0)}25%{opacity:1}60%{transform:translate(var(--dx),-14cqw) rotate(140deg)}to{opacity:0;transform:translate(calc(var(--dx) * 1.4),-6cqw) rotate(240deg)}}.friend[data-friend=deer].is-cheer .friend-art{animation:1s cubic-bezier(.4,0,.3,1) deer-cheer}.friend[data-friend=deer].is-cheer .fx i{animation:1.1s ease-out deer-flutter;top:76%}.friend[data-friend=deer].is-cheer .fx i:first-child{--dx:-12cqw;animation-delay:.3s;left:30%}.friend[data-friend=deer].is-cheer .fx i:nth-child(2){--dx:4cqw;animation-delay:.4s;left:50%}.friend[data-friend=deer].is-cheer .fx i:nth-child(3){--dx:14cqw;animation-delay:.5s;left:62%}@keyframes deer-oops{0%{transform:translate(0)scale(1)}8%{transform:translateY(-2%)scale(.97,1.04)}30%{transform:translate(-4%,-2%)scale(.97,1.04)rotate(-3deg)}55%{transform:translate(-4%)rotate(-2deg)}75%{transform:translate(-1%,1%)scale(1.02,.97)rotate(0)}to{transform:translate(0)scale(1)}}@keyframes deer-sigh{0%{opacity:0;transform:translate(0)scale(.4)}30%{opacity:.85}to{opacity:0;transform:translate(10cqw,-4cqw)scale(1.4)}}.friend[data-friend=deer].is-oops .friend-art{animation:1.2s ease-in-out deer-oops}.friend[data-friend=deer].is-oops .fx i:first-child{background:#fff;border-radius:50%;width:8cqw;height:5cqw;animation:.7s ease-out .65s deer-sigh;top:44%;left:82%}@keyframes deer-win{0%{transform:translate(0)rotate(0)scale(1)}12%{transform:translate(-3%)scale(1.06,.93)}32%{transform:translate(-14%,-8%)rotate(-8deg)scale(.97,1.03)}48%{transform:translate(-22%,-3%)rotate(-2deg)}54%{transform:translate(-22%)scale(1.04,.96)}70%{transform:translate(-10%,-7%)rotate(6deg)}88%{transform:translate(0)scale(1.04,.96)rotate(0)}to{transform:translate(0)scale(1)}}@keyframes deer-swirl{0%{opacity:0;transform:translate(0)rotate(0)}20%{opacity:1}to{opacity:0;transform:translate(var(--dx),40cqw) rotate(320deg)}}.friend[data-friend=deer].is-win .friend-art{animation:1.8s cubic-bezier(.45,0,.35,1) deer-win}.friend[data-friend=deer].is-win .fx i{animation:1.6s ease-in-out deer-swirl;top:-12%}.friend[data-friend=deer].is-win .fx i:first-child{--dx:16cqw;animation-delay:.2s;left:14%}.friend[data-friend=deer].is-win .fx i:nth-child(2){--dx:-12cqw;animation-delay:.5s;left:52%}.friend[data-friend=deer].is-win .fx i:nth-child(3){--dx:-18cqw;animation-delay:.35s;left:80%}.friend-btn:active .friend[data-friend=deer] .friend-art{transition:transform .14s ease-out;transform:translateY(1.5%)scale(1.03,.96)}.friend[data-friend=beaver].is-build .fx i,.friend[data-friend=beaver].is-oops .fx i:first-child,.friend[data-friend=beaver].is-win .fx i{background:radial-gradient(circle at 86%,#e8c497 0 1.7cqw,#b98352 1.8cqw 2.4cqw,#8a5a3a 2.5cqw);border-radius:3.2cqw;width:16cqw;height:6.5cqw}@keyframes beaver-idle{0%,to{transform:translateY(0)scale(1)}8%{transform:scale(1.006,.994)}14%{transform:scale(1)}20%{transform:scale(1.006,.994)}26%{transform:scale(1)}55%{transform:translateY(-1%)scale(.99,1.012)}72%{transform:translateY(0)scale(1.012,.99)}82%{transform:scale(1)}}.friend[data-friend=beaver].is-idle .friend-art{animation:3s ease-in-out infinite beaver-idle}@keyframes beaver-slap{0%{transform:rotate(0)scale(1)}25%{transform:rotate(6deg)translateY(-3%)scale(.97,1.04)}40%{transform:rotate(-4deg)translateY(1%)scale(1.08,.9)}55%{transform:rotate(1deg)translateY(-1%)scale(.99,1.02)}72%{transform:rotate(0)scale(1.02,.98)}to{transform:rotate(0)scale(1)}}@keyframes beaver-splash{0%{opacity:0;transform:translate(0)scale(.4)}25%{opacity:1;transform:translate(calc(var(--dx)*.5),-10cqw) scale(1)}to{opacity:0;transform:translate(var(--dx),2cqw) scale(.7)}}.friend[data-friend=beaver].is-slap .friend-art{animation:.9s cubic-bezier(.4,0,.3,1) beaver-slap}.friend[data-friend=beaver].is-slap .fx i{background:#7cc3e0;border-radius:50%/60% 60% 40% 40%;width:4cqw;height:5cqw;animation:.6s ease-out .33s beaver-splash;top:78%}.friend[data-friend=beaver].is-slap .fx i:first-child{--dx:-10cqw;left:14%}.friend[data-friend=beaver].is-slap .fx i:nth-child(2){--dx:0cqw;animation-delay:.38s;left:22%}.friend[data-friend=beaver].is-slap .fx i:nth-child(3){--dx:10cqw;left:30%}@keyframes beaver-gnaw{0%,to{transform:translateY(0)rotate(0)scale(1)}12%{transform:translateY(1%)rotate(2deg)scale(1.02,.98)}24%{transform:translateY(0)rotate(0)}36%{transform:translateY(1%)rotate(2deg)scale(1.02,.98)}48%{transform:translateY(0)rotate(0)}60%{transform:translateY(1%)rotate(2deg)scale(1.02,.98)}72%{transform:translateY(0)rotate(0)}}@keyframes beaver-chip-fly{0%{opacity:0;transform:translate(0)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx),-12cqw) rotate(220deg)}}.friend[data-friend=beaver].is-gnaw .friend-art{animation:1.3s ease-in-out infinite beaver-gnaw}.friend[data-friend=beaver].is-gnaw .fx i{background:#d9a96f;border-radius:.6cqw;width:3cqw;height:2cqw;animation:.65s ease-out infinite beaver-chip-fly;top:46%}.friend[data-friend=beaver].is-gnaw .fx i:first-child{--dx:8cqw;left:82%}.friend[data-friend=beaver].is-gnaw .fx i:nth-child(2){--dx:12cqw;animation-delay:.22s;left:80%}.friend[data-friend=beaver].is-gnaw .fx i:nth-child(3){--dx:4cqw;animation-delay:.44s;left:84%}@keyframes beaver-build{0%,to{transform:translate(0)rotate(0)}15%{transform:translate(-2%,1%)rotate(-4deg)scale(1.03,.97)}30%{transform:translate(2%,-2%)rotate(3deg)}45%{transform:translate(0)scale(1.03,.97)}60%{transform:translate(2%,-2%)rotate(3deg)}75%{transform:translate(0)scale(1.03,.97)}}@keyframes beaver-stack{0%{opacity:0;transform:translateY(-18cqw)rotate(-20deg)}55%{opacity:1;transform:translateY(0)rotate(4deg)}70%{transform:translateY(-1.5cqw)rotate(0)}to{opacity:1;transform:translateY(0)rotate(0)}}.friend[data-friend=beaver].is-build .friend-art{animation:1.5s ease-in-out beaver-build}.friend[data-friend=beaver].is-build .fx i{animation:.45s cubic-bezier(.4,0,.4,1) both beaver-stack;left:6%}.friend[data-friend=beaver].is-build .fx i:first-child{animation-delay:.1s;top:82%}.friend[data-friend=beaver].is-build .fx i:nth-child(2){animation-delay:.55s;top:75%}.friend[data-friend=beaver].is-build .fx i:nth-child(3){animation-delay:1s;top:68%;left:8%}@keyframes beaver-plan{0%,to{transform:rotate(0)}20%,75%{transform:rotate(-6deg)translate(-1%)}35%{transform:rotate(-6deg)translate(-1%,1%)}45%{transform:rotate(-6deg)translate(-1%)}55%{transform:rotate(-6deg)translate(-1%,1%)}}@keyframes beaver-dots{0%,to{opacity:0}20%,75%{opacity:1}}.friend[data-friend=beaver].is-plan .friend-art{animation:1.8s ease-in-out beaver-plan}.friend[data-friend=beaver].is-plan .fx i{color:#4f6f78;font-size:12cqw;animation:1.8s ease-in-out beaver-dots;top:12%}.friend[data-friend=beaver].is-plan .fx i:before{content:"•"}.friend[data-friend=beaver].is-plan .fx i:first-child{left:66%}.friend[data-friend=beaver].is-plan .fx i:nth-child(2){animation-delay:.15s;left:74%}.friend[data-friend=beaver].is-plan .fx i:nth-child(3){animation-delay:.3s;left:82%}@keyframes beaver-cheer{0%,to{transform:translateY(0)scale(1)}10%{transform:scale(1.1,.88)}26%{transform:translateY(-8%)scale(.95,1.06)}40%{transform:translateY(0)scale(1.1,.88)}56%{transform:translateY(-8%)scale(.95,1.06)rotate(-3deg)}72%{transform:translateY(0)scale(1.06,.94)}}.friend[data-friend=beaver].is-cheer .friend-art{animation:1s ease-out beaver-cheer}.friend[data-friend=beaver].is-cheer .fx i{background:#d9a96f;border-radius:.6cqw;width:3.4cqw;height:2.2cqw;animation:.8s ease-out beaver-chip-fly;top:72%}.friend[data-friend=beaver].is-cheer .fx i:first-child{--dx:-10cqw;animation-delay:.1s;left:24%}.friend[data-friend=beaver].is-cheer .fx i:nth-child(2){--dx:2cqw;background:#ffc93c;animation-delay:.45s;left:50%}.friend[data-friend=beaver].is-cheer .fx i:nth-child(3){--dx:12cqw;animation-delay:.25s;left:70%}@keyframes beaver-oops{0%{transform:translate(0)rotate(0)}10%{transform:translateY(-3%)scale(.96,1.05)}18%{transform:translate(-1.5%)rotate(-1deg)}24%{transform:translate(1.5%)rotate(1deg)}30%{transform:translate(-1.5%)rotate(-1deg)}36%{transform:translate(1.5%)rotate(1deg)}42%{transform:translate(-1%)}60%{transform:translateY(2%)scale(1.03,.96)rotate(-2deg)}to{transform:translate(0)rotate(0)scale(1)}}@keyframes beaver-roll-off{0%{opacity:1;transform:translate(0)rotate(0)}70%{opacity:1;transform:translate(-12cqw,8cqw)rotate(-300deg)}to{opacity:0;transform:translate(-18cqw,8cqw)rotate(-420deg)}}.friend[data-friend=beaver].is-oops .friend-art{animation:1s ease-out beaver-oops}.friend[data-friend=beaver].is-oops .fx i:first-child{animation:.9s ease-in .12s beaver-roll-off;top:72%;left:10%}@keyframes beaver-win{0%,to{transform:translateY(0)rotate(0)scale(1)}10%{transform:scale(1.1,.88)}24%{transform:translateY(-8%)rotate(-5deg)scale(.95,1.05)}38%{transform:translateY(0)scale(1.08,.92)}52%{transform:translateY(-8%)rotate(5deg)scale(.95,1.05)}66%{transform:translateY(0)scale(1.06,.94)}80%{transform:translateY(-3%)}}.friend[data-friend=beaver].is-win .friend-art{animation:1.6s ease-in-out beaver-win}.friend[data-friend=beaver].is-win .fx i{animation:.42s cubic-bezier(.4,0,.4,1) both beaver-stack;left:5%}.friend[data-friend=beaver].is-win .fx i:first-child{animation-delay:50ms;top:82%}.friend[data-friend=beaver].is-win .fx i:nth-child(2){animation-delay:.4s;top:75%;left:7%}.friend[data-friend=beaver].is-win .fx i:nth-child(3){animation-delay:.75s;top:68%;left:5%}.friend-btn:active .friend[data-friend=beaver] .friend-art{transition:transform .11s ease-out;transform:translateY(2%)scale(1.05,.94)}.topbar{align-items:center;gap:var(--space-2);grid-template-columns:1fr auto 1fr;display:grid}.topbar__back{min-height:var(--tap);border-radius:var(--radius-md);font:700 15px/20px var(--font-sans);cursor:pointer;border:none;justify-self:start;align-items:center;gap:2px;padding:0 10px 0 4px;display:inline-flex}.topbar__back span{font-size:26px;line-height:0}.topbar__center{justify-self:center}.topbar__brand{align-items:center;gap:var(--space-2);display:inline-flex}.topbar__mark{width:30px;height:30px}.topbar__icon{width:var(--tap);height:var(--tap);border:1px solid var(--grid-line);border-radius:var(--radius-md);background:var(--surface-cell);color:var(--ink-muted);box-shadow:0 3px 0 var(--grid-line);cursor:pointer;transition:transform var(--dur-press) ease-out, box-shadow var(--dur-press) ease-out;justify-self:end;place-items:center;display:grid}.topbar__icon:active{box-shadow:0 1px 0 var(--grid-line);transform:translateY(2px)}.topbar__spacer{width:var(--tap)}.btn-ghost__row{align-items:center;gap:var(--space-2);display:inline-flex}.segmented{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);background:var(--peer);grid-template-columns:repeat(4,1fr);display:grid}.segmented__option{min-height:var(--tap);min-width:0;color:var(--ink-muted);font:600 14px/18px var(--font-sans);cursor:pointer;background:0 0;border:none;border-radius:12px}.segmented__option[aria-checked=true],.segmented__option[aria-selected=true]{background:var(--accent);color:var(--on-accent);box-shadow:0 3px 0 var(--accent-strong);font-weight:700}.field{flex-direction:column;gap:6px;display:flex}.field__label{font:600 13px/18px var(--font-sans);letter-spacing:.02em;color:var(--ink-muted)}.field__input{min-height:var(--tap);border:1px solid var(--grid-line);border-radius:var(--radius-md);background:var(--surface-cell);color:var(--ink);font:500 16px/24px var(--font-sans);-webkit-user-select:text;user-select:text;padding:0 14px}.field__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.modal-backdrop{z-index:20;padding:var(--gutter);background:color-mix(in srgb, var(--surface) 65%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;display:grid;position:fixed;inset:0}.modal{gap:var(--space-3);flex-direction:column;width:min(360px,100%);display:flex}.modal__title{font:700 24px/30px var(--font-display);margin:0}.modal__message{color:var(--ink-muted);margin:0}.modal__actions{gap:var(--space-2);margin-top:var(--space-1);grid-template-columns:1fr 1fr;display:grid}@media (width<=340px){.segmented--difficulty{grid-template-columns:repeat(2,1fr)}}.app{--board-size:min(calc(100vw - 2 * var(--gutter) - env(safe-area-inset-left) - env(safe-area-inset-right)), calc(100dvh - 330px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 540px);align-items:center;gap:var(--space-3);min-height:100%;padding:calc(env(safe-area-inset-top) + var(--space-3)) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--space-4)) calc(env(safe-area-inset-left) + var(--gutter));flex-direction:column;display:flex}.app>.topbar{margin-bottom:auto}.app--solo,.app--challenge{--board-size:min(calc(100vw - 2 * var(--gutter) - env(safe-area-inset-left) - env(safe-area-inset-right)), 540px);height:100dvh;min-height:0;overflow:hidden}.app--solo>.topbar,.app--challenge>.topbar{margin-bottom:0}.board-area{--board-size:min(100cqw, 100cqh, 540px);flex:1 1 0;justify-content:center;align-items:flex-end;width:100%;min-height:140px;display:flex;container-type:size}.player-row{width:max(var(--board-size), min(300px, 100%));align-items:center;gap:var(--space-3);display:flex}.player-row__text{min-width:0;font:500 13px/18px var(--font-sans);color:var(--ink-muted);flex-direction:column;display:flex}.player-row__text b{text-overflow:ellipsis;white-space:nowrap;font:700 18px/23px var(--font-display);color:var(--ink);overflow:hidden}@media (height<=700px){.app--solo,.app--challenge{gap:var(--space-2);padding-top:calc(env(safe-area-inset-top) + var(--space-2));padding-bottom:calc(env(safe-area-inset-bottom) + var(--space-2))}.app--solo .player-row .avatar,.app--solo .player-row .friend{width:32px;height:32px}.player-row__text b{font-size:16px;line-height:20px}.app--solo .keypad,.app--challenge .keypad{--keys-per-row:9;--key-gap:4px}.app--solo .key,.app--challenge .key{height:48px;font-size:24px}.app--solo .tool,.app--challenge .tool{min-height:40px;padding:2px 8px}}.app--rush>.controls{margin-bottom:auto}.topbar,.status,.controls{width:max(var(--board-size), min(300px, 100%))}.status{text-align:center;min-height:20px;font:600 13px/20px var(--font-sans);color:var(--ink-muted);margin:0}.status--won{color:var(--accent-strong)}.status--clash{color:var(--clash)}.board{width:var(--board-size);aspect-ratio:1;gap:var(--box-line-width);background:var(--board-line-strong);border:2px solid var(--board-line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-board);--corner:calc(var(--radius-lg) - 2px);flex-shrink:0;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.box:first-child,.box:first-child>.cell:first-child{border-top-left-radius:var(--corner)}.box:nth-child(3),.box:nth-child(3)>.cell:nth-child(3){border-top-right-radius:var(--corner)}.box:nth-child(7),.box:nth-child(7)>.cell:nth-child(7){border-bottom-left-radius:var(--corner)}.box:nth-child(9),.box:nth-child(9)>.cell:nth-child(9){border-bottom-right-radius:var(--corner)}.box{gap:var(--cell-line-width);background:var(--board-line);grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:relative}.cell{border-radius:var(--cell-radius);background:var(--surface-cell);min-width:0;min-height:0;color:var(--ink);font-family:var(--font-digits);font-size:calc(var(--board-size) / 9 * .62);cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;padding:0;line-height:1;transition:background-color .12s;display:flex}.cell.is-given{font-weight:var(--digit-given);color:var(--ink)}.cell.is-entry{font-weight:var(--digit-entry);color:var(--entry)}.cell.is-peer{background:var(--peer)}.cell.is-match{background:var(--match)}.cell.is-focus{background:var(--match);box-shadow:inset 0 0 0 2px var(--sunny);animation:1.6s ease-in-out infinite hint-glow}@keyframes hint-glow{50%{box-shadow:inset 0 0 0 3px var(--sunny)}}.cell.is-selected{background:var(--accent-soft);box-shadow:inset 0 0 0 3px var(--accent);border-radius:var(--radius-sm)}.cell.is-clash{background:var(--clash-soft);color:var(--clash)}.cell.is-clash .cell__digit{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.cell.is-selected.is-clash{box-shadow:inset 0 0 0 3px var(--clash)}.cell.is-entry .cell__digit{animation:sudo-pop .22s var(--ease-pop)}.cell__notes{width:100%;height:100%;font:600 calc(var(--board-size) / 9 * .24) / 1 var(--font-sans);color:var(--ink-muted);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);place-items:center;padding:1px;display:grid}.cell:focus-visible{box-shadow:inset 0 0 0 3px var(--accent-strong)}.controls{gap:var(--space-2);flex-direction:column;display:flex;container-type:inline-size}.tools{justify-content:space-around;gap:var(--space-2);display:flex}.tool{min-width:64px;min-height:var(--tap);border-radius:var(--radius-md);font:600 12px/16px var(--font-sans);letter-spacing:.02em;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;display:flex}.tool svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.tool[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.tool:active:not(:disabled){background:var(--peer)}.keypad.is-notes .key{color:var(--ink-muted);border-style:dashed;font-size:20px;font-weight:500}.tool--nudge{color:var(--accent-strong);animation:1.4s ease-in-out infinite tool-nudge}@keyframes tool-nudge{0%,to{transform:scale(1)}50%{background:var(--accent-soft);transform:scale(1.12)}}.keypad{--key-gap:var(--space-2);--keys-per-row:5;justify-content:center;gap:var(--key-gap);flex-wrap:wrap;display:flex}@container (width>=470px){.keypad{--keys-per-row:9;--key-gap:6px}}.key{flex:0 0 calc((100% - (var(--keys-per-row) - 1) * var(--key-gap)) / var(--keys-per-row));border:1px solid var(--grid-line);border-radius:var(--radius-md);background:var(--surface-cell);min-width:0;height:56px;box-shadow:0 3px 0 var(--grid-line);font:600 26px/1 var(--font-digits);color:var(--entry);cursor:pointer;transition:transform var(--dur-press) ease-out, box-shadow var(--dur-press) ease-out;flex-direction:column;justify-content:center;align-items:center;display:flex}.key small{font:600 11px/13px var(--font-sans);color:var(--ink-muted);margin-top:2px}.key:active:not(:disabled){box-shadow:0 1px 0 var(--grid-line);transform:translateY(2px)}.key.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 3px 0 var(--accent-strong)}.key.is-active small{color:var(--on-accent)}.key.is-done{color:var(--grid-line);pointer-events:none}.key.is-done small{visibility:hidden}.key:disabled{opacity:1}.cell.is-wave-a,.cell.is-wave-b{z-index:1;animation:.48s var(--ease-pop) var(--wave-delay,0s) both;position:relative}.cell.is-wave-a{animation-name:cell-lift-a}.cell.is-wave-b{animation-name:cell-lift-b}@keyframes cell-lift-a{0%,to{transform:none}40%{background:var(--match);border-radius:var(--radius-sm);box-shadow:0 6px 12px color-mix(in srgb, var(--accent) 35%, transparent);transform:translateY(-14%)scale(1.12)}}@keyframes cell-lift-b{0%,to{transform:none}40%{background:var(--match);border-radius:var(--radius-sm);box-shadow:0 6px 12px color-mix(in srgb, var(--accent) 35%, transparent);transform:translateY(-14%)scale(1.12)}}.hint-bubble{width:max(var(--board-size), min(300px, 100%));align-items:center;gap:var(--space-2);padding:6px var(--space-2) 6px 6px;border:1px solid var(--grid-line);border-radius:var(--radius-md);background:var(--surface-cell);animation:.24s ease-out both fade-up;display:flex}.hint-bubble__text{min-width:0;font:500 13px/17px var(--font-sans);color:var(--ink);flex:1;margin:0}.hint-bubble__show{min-height:34px;padding:0 var(--space-3);font-size:13px}.hint-bubble__close{width:28px;height:28px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0}@media (width>=900px) and (height>=560px){.app--solo{--board-size:360px;column-gap:48px;row-gap:var(--space-3);grid-template-rows:auto auto minmax(0,1fr) auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 360px;width:min(1120px,100%);margin:0 auto;display:grid}.app--solo>.topbar{grid-column:1/-1;width:100%}.app--solo>.board-area{--board-size:min(100cqw, 100cqh, 680px);grid-area:2/1/-1;align-self:stretch;align-items:center}.app--solo>.player-row{grid-area:2/2}.app--solo>.status,.app--solo>.hint-bubble{grid-area:4/2}.app--solo>.controls{grid-area:5/2}.app--solo .keypad{--keys-per-row:3;--key-gap:10px}.app--solo .key{height:72px;font-size:32px}}.player-row .player-row__text{flex:1}.game-stats{align-items:center;gap:var(--space-2);display:flex}.game-stats__text{flex-direction:column;align-items:flex-end;display:flex}.game-stats__time{font:700 18px/22px var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink)}.game-stats__mistakes{font:500 12px/16px var(--font-sans);color:var(--ink-muted)}.game-stats__pause svg{fill:currentColor;width:20px;height:20px}.board-area{position:relative}.board-area.is-paused .board{filter:blur(12px);pointer-events:none}.paused{z-index:2;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex;position:absolute;inset:0}.paused__title{font:800 32px/1 var(--font-display);color:var(--ink);margin:0}.app--solo>.status,.app--solo>.hint-bubble{box-sizing:border-box;min-height:46px}.app--solo>.status{justify-content:center;align-items:center;display:flex}.player-row__text>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=360px){.hint-bubble__text{font-size:12px;line-height:15px}.hint-bubble__show{padding:0 var(--space-2)}}.menu,.screen{align-items:center;gap:var(--space-6);min-height:100%;padding:calc(env(safe-area-inset-top) + var(--space-3)) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--gutter)) calc(env(safe-area-inset-left) + var(--gutter));flex-direction:column;display:flex}.menu{justify-content:center;gap:var(--space-8)}.screen>*{width:min(440px,100%)}.menu__brand{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.menu__brand .sudo-mark{width:1.35em;height:1.35em}.menu__tagline{min-width:0;color:var(--ink-muted);font:500 14px/20px var(--font-sans);flex-direction:column;margin:0;display:flex}.menu__tagline b{color:var(--ink);font:700 17px/22px var(--font-display)}.menu__actions{gap:var(--space-3);flex-direction:column;width:min(400px,100%);display:flex}.menu__card{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.panel{gap:var(--space-4);flex-direction:column;display:flex}.panel__title{margin:var(--space-2) 0 0;font:700 28px/34px var(--font-display);text-wrap:balance}.panel__text{margin:calc(-1 * var(--space-2)) 0 0;color:var(--ink-muted)}.panel__hint{text-align:center;color:var(--ink-muted);margin:0}.panel__hint--pulse{animation:1.6s ease-in-out infinite pulse}.panel__error{color:var(--clash);margin:0;font-weight:600}@keyframes pulse{50%{opacity:.45}}.menu__account{text-align:center;font:500 13px/20px var(--font-sans);color:var(--ink-muted);margin:0}.link-button{min-height:var(--tap);color:var(--accent-strong);font:700 13px/20px var(--font-sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0 2px;text-decoration:underline}.daily{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.daily__head,.daily__streak{align-items:center;gap:var(--space-3);display:flex}.daily__streak{padding-top:var(--space-3);border-top:1px solid var(--grid-line)}.daily__title{min-width:0;color:var(--ink-muted);flex-direction:column;flex:1;margin:0;font-size:14px;line-height:19px;display:flex}.daily__title b{color:var(--ink);font:700 16px/21px var(--font-display)}.daily__week{gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.daily__day{color:var(--ink-muted);flex-direction:column;align-items:center;gap:2px;font-size:12px;display:flex}.daily__dot{border:1.5px dashed var(--grid-line);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:700;display:grid}.daily__day.is-done .daily__dot{background:var(--accent);color:var(--on-accent);border:none}.daily__day.is-today .daily__letter{color:var(--ink);font-weight:700}.menu__notice{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--ink);margin:0;font-size:14px;display:flex}.daily__flame{place-items:center;width:32px;font-size:24px;display:grid}.splash,.auth{justify-content:center;align-items:center;gap:var(--space-6);min-height:100%;padding:calc(env(safe-area-inset-top) + var(--space-6)) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--space-6)) calc(env(safe-area-inset-left) + var(--gutter));flex-direction:column;display:flex;position:relative;overflow:hidden}.splash{cursor:pointer}.intro-logo{z-index:1;align-items:center;gap:var(--space-3);flex-direction:column;display:flex;position:relative}.intro-logo__row .sudo-mark{width:1.3em;height:1.3em}.intro-logo__mark{animation:logo-grow .7s var(--ease-pop) both, logo-float 3.2s ease-in-out .9s infinite;display:inline-flex}@keyframes logo-grow{0%{opacity:0;transform:scale(.2)rotate(-25deg)}60%{opacity:1;transform:scale(1.25)rotate(6deg)}to{transform:scale(1)rotate(0)}}@keyframes logo-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-6px)rotate(-3deg)}}.intro-logo__word{display:inline-flex}.intro-logo__letter{animation:letter-rise .52s var(--ease-pop) both;display:inline-block}@keyframes letter-rise{0%{opacity:0;transform:translateY(60%)scale(.6)}to{opacity:1;transform:none}}.intro-logo__tagline{font:500 16px/22px var(--font-sans);color:var(--ink-muted);margin:0;animation:.5s ease-out 1.05s both fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}}.floaters{pointer-events:none;position:absolute;inset:0}.floater{width:var(--size);height:var(--size);animation:floater-in .9s var(--ease-pop) both, floater-drift var(--float-s) ease-in-out var(--float-delay) infinite alternate;place-items:center;display:grid;position:absolute}.floater--digit{font:800 var(--size) / 1 var(--font-display);color:color-mix(in srgb, var(--accent) 22%, transparent)}.floater--pip,.floater--sun{background:color-mix(in srgb, var(--accent) 30%, transparent);width:calc(var(--size) * .6);height:calc(var(--size) * .6);border-radius:50%}.floater--sun{background:color-mix(in srgb, var(--sunny) 60%, transparent)}@keyframes floater-in{0%{opacity:0;transform:translateY(40px)scale(.4)}}@keyframes floater-drift{0%{translate:0;rotate:-8deg}to{translate:10px -22px;rotate:10deg}}.auth__card{z-index:1;gap:var(--space-4);width:min(400px,100%);box-shadow:var(--shadow-board);flex-direction:column;animation:.5s ease-out .5s both fade-up;display:flex;position:relative}.segmented--two{grid-template-columns:1fr 1fr}.auth__info{color:var(--accent-strong);margin:0;font-weight:600}.auth__guest{z-index:1;position:relative}.check{align-items:center;gap:var(--space-3);min-height:var(--tap);font:600 15px/20px var(--font-sans);cursor:pointer;display:flex}.check input{opacity:0;pointer-events:none;position:absolute}.check__box{border:2px solid var(--grid-line-strong);border-radius:var(--radius-sm);background:var(--surface-cell);flex:none;place-items:center;width:24px;height:24px;display:grid}.check input:checked+.check__box{background:var(--accent);border-color:var(--accent-strong)}.check input:checked+.check__box:after{content:"";border-left:3px solid var(--on-accent);border-bottom:3px solid var(--on-accent);width:10px;height:6px;transform:translateY(-2px)rotate(-45deg)}.check input:focus-visible+.check__box{outline:3px solid var(--accent-strong);outline-offset:2px}.picker{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.picker--welcome{min-height:100%;padding:calc(env(safe-area-inset-top) + var(--space-6)) calc(env(safe-area-inset-right) + var(--gutter)) calc(env(safe-area-inset-bottom) + var(--space-6)) calc(env(safe-area-inset-left) + var(--gutter));justify-content:center}.picker-backdrop{align-items:end;padding:0}.sheet.picker{width:min(480px,100%);max-height:100%;padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom));box-shadow:0 -8px 32px color-mix(in srgb, var(--ink) 18%, transparent);animation:sheet-up .28s var(--ease-pop);overflow-y:auto}@keyframes sheet-up{0%{transform:translate(-50%,100%)}}.picker__title{margin:0}.picker__intro{margin:calc(-1 * var(--space-2)) 0 0;color:var(--ink-muted)}.picker__grid{gap:var(--space-4);grid-template-columns:repeat(3,80px);display:grid}.picker__detail{min-height:64px}.picker__name{font:700 20px/26px var(--font-display);margin:0}.picker__trait{max-width:320px;color:var(--ink-muted);margin:2px 0 0}.picker__choose{width:min(360px,100%)}.solved-backdrop{z-index:25}.solved{width:min(360px,100%);padding-top:var(--space-6);align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;animation:.4s ease-out both fade-up;display:flex}.solved__avatar{margin-top:calc(-1 * var(--space-2))}.solved__title{margin:0}.solved__line{color:var(--ink-muted);margin:0}.solved__stats{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;display:grid}.solved__stats div{padding:var(--space-2);border-radius:var(--radius-md);background:var(--surface-cell);text-align:center}.solved__stats dt{font:600 12px/16px var(--font-sans);color:var(--ink-muted)}.solved__stats dd{font:700 20px/26px var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink);margin:0}.solved__best-line{font:500 13px/18px var(--font-sans);color:var(--ink-muted)}.solved__actions{gap:var(--space-2);width:100%;margin-top:var(--space-2);grid-template-columns:2fr 1fr;display:grid}.menu__hello{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-3);border:1px solid var(--grid-line);border-radius:var(--radius-lg);background:var(--surface-cell);display:flex}.topbar__avatar{flex:none}.friend-row{align-items:center;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-cell);display:flex}.friend-row__text{flex-direction:column;flex:1;min-width:0;display:flex}.friend-row__name{font:700 18px/24px var(--font-display)}.friend-row__hint{font:500 13px/18px var(--font-sans);color:var(--ink-muted)}.emote{flex:none;display:inline-flex;position:relative}.emote__bubble{z-index:2;border-radius:var(--radius-pill);background:var(--surface-cell);min-width:24px;height:24px;box-shadow:0 2px 6px color-mix(in srgb, var(--ink) 20%, transparent);animation:bubble-pop .9s var(--ease-pop) both;place-items:center;padding:0 4px;font-size:14px;line-height:1;display:grid;position:absolute;top:-10px;right:-12px}@keyframes bubble-pop{0%{opacity:0;transform:scale(0)translateY(6px)}25%{opacity:1;transform:scale(1.15)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-6px)}}.emote--proud .emote__bubble{animation-duration:1.4s}.emote--win .emote__bubble{animation-duration:2.2s}.emote--lose .emote__bubble{animation-duration:1.6s}.faceoff{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.faceoff__vs{font:800 22px/1 var(--font-display);color:var(--accent-strong);text-transform:uppercase}.countdown .faceoff .avatar{box-shadow:0 6px 16px color-mix(in srgb, var(--ink) 20%, transparent)}.countdown .faceoff__me{animation:faceoff-in-left .5s var(--ease-pop) both}.countdown .faceoff__them{animation:faceoff-in-right .5s var(--ease-pop) both}@keyframes faceoff-in-left{0%{opacity:0;transform:translate(-60px)rotate(-12deg)}}@keyframes faceoff-in-right{0%{opacity:0;transform:translate(60px)rotate(12deg)}}.faceoff--join{margin:var(--space-2) 0 0;justify-content:flex-start}.waiting__friend{margin-top:var(--space-2);display:inline-flex}.results__friend{align-self:center}.results__name{align-items:center;gap:var(--space-2);display:inline-flex}.app--challenge{position:relative}.timer{font:700 20px/24px var(--font-display);font-variant-numeric:tabular-nums}.timer--low{color:var(--clash);animation:1s ease-in-out infinite clock-low}.toasts{height:30px;width:max(var(--board-size), min(300px, 100%));pointer-events:none;justify-content:center;align-items:center;margin:-2px 0;display:flex}.toast{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--ink);max-width:100%;color:var(--surface);font:700 13px/18px var(--font-sans);box-shadow:0 2px 8px color-mix(in srgb, var(--ink) 18%, transparent);animation:toast-in .25s var(--ease-pop), toast-out .25s ease-in 1.95s forwards;padding:3px 14px 3px 4px;display:flex}.toast:not(:has(.avatar)){padding-left:14px}.toast__text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.toast .avatar{flex:none}.toast--good{background:var(--accent);color:var(--on-accent)}.toast--neutral{background:var(--peer);color:var(--ink)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.95)}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}.board-wrap{position:relative}.board-wrap--hidden .board{filter:blur(10px)}.board-shake{animation:.35s ease-in-out shake}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.countdown{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.countdown__number{font-family:var(--font-digits);font-size:calc(var(--board-size) / 3);color:var(--accent-strong);font-weight:700;animation:1s ease-out count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.6)}30%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.countdown__number,.panel__hint--pulse,.tug__bar--hot,.board-shake,.toast{animation:none}}.tug{width:max(var(--board-size), min(300px, 100%));flex-direction:column;gap:6px;display:flex}.tug__sides{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);min-height:48px;display:grid}.tug__side{align-items:center;gap:var(--space-2);min-width:0;font:500 13px/17px var(--font-sans);display:flex}.tug__side--them{text-align:right;justify-content:flex-end}.tug__text{flex-direction:column;gap:1px;min-width:0;display:flex}.tug__text--them{align-items:flex-end}.tug__name{font:700 15px/19px var(--font-display);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.tug__status{color:var(--ink-muted);font-variant-numeric:tabular-nums}.tug__status--low{color:var(--clash);font-weight:800;animation:1s ease-in-out infinite clock-low}@keyframes clock-low{50%{opacity:.55}}.tug__penalty{color:var(--clash);font-variant-numeric:tabular-nums;font-weight:700}.tug__strikes{color:var(--grid-line);gap:2px;font-weight:800;display:flex}.strike--hit{color:var(--clash)}.tug__vs{font:800 13px/1 var(--font-display);color:var(--ink-muted);text-transform:uppercase;flex:none}.tug__bar{background:var(--sunny);border-radius:99px;height:12px;position:relative}.tug__fill{background:var(--accent);border-radius:99px 0 0 99px;transition:width .5s cubic-bezier(.3,1.4,.5,1);position:absolute;inset:0 auto 0 0}.tug__knot{border:3px solid var(--surface-cell);background:var(--ink);width:22px;height:22px;box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 30%, transparent);border-radius:50%;margin-left:-11px;transition:left .5s cubic-bezier(.3,1.4,.5,1);position:absolute;top:50%;transform:translateY(-50%)}.tug__center{background:var(--surface-cell);opacity:.8;width:2px;position:absolute;top:-3px;bottom:-3px;left:50%}.tug__bar--hot{animation:.9s ease-in-out infinite tug-pulse}@keyframes tug-pulse{50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--sunny) 45%, transparent)}}.is-twin .friend,.friend.is-twin{outline:3px solid var(--accent-strong);outline-offset:2px}.is-twin .friend .friend-art,.friend.is-twin .friend-art{filter:sepia(.35)hue-rotate(-25deg)saturate(1.3);scale:-1 1}.share{flex-direction:column;gap:8px;display:flex}.share__url{color:var(--ink-muted);font-size:14px}.share__buttons{grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;display:grid}.mode-picker{gap:8px;display:grid}.mode-picker__option{min-height:var(--tap);background:var(--surface-cell);color:var(--ink);text-align:left;box-shadow:inset 0 0 0 1px var(--grid-line);cursor:pointer;border:none;border-radius:12px;grid-template-columns:28px 1fr;align-items:center;column-gap:10px;padding:10px 12px;display:grid}.mode-picker__option[aria-checked=true]{box-shadow:inset 0 0 0 2px var(--accent)}.mode-picker__icon{text-align:center;grid-row:span 2;font-size:20px}.mode-picker__title{font-weight:700}.mode-picker__detail{color:var(--ink-muted);font-size:13px}.blitz-length{grid-template-columns:repeat(3,1fr);margin-top:8px}.rules{color:var(--ink-muted);margin:-4px 0 0;padding-left:20px;line-height:1.6}.lobby__actions{gap:var(--space-2);display:grid}.match{text-align:center;padding-top:var(--space-8);align-items:center}.match__faceoff{align-self:center}.match__stage{place-items:center;width:100px;height:100px;display:grid;position:relative}.match__pulse{background:var(--accent-soft);border-radius:50%;animation:1.4s ease-out infinite match-pulse;position:absolute;inset:0}@keyframes match-pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.15)}}.match__friend{animation:match-pop .45s var(--ease-pop) both;position:relative}@keyframes match-pop{0%{opacity:0;transform:translateY(10px)scale(.8)}}.match__title,.match__text{margin:0}.match__dots:after{content:"";text-align:left;width:1.2em;animation:1.2s steps(4,end) infinite match-dots;display:inline-block}@keyframes match-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.board-size{grid-template-columns:repeat(2,1fr)}.board-size .segmented__option{flex-direction:column;justify-content:center;align-items:center;padding:6px 4px;font-size:16px;display:flex}.board-size small{font:500 12px/16px var(--font-sans)}.recent-games__title{justify-content:space-between;align-items:baseline;display:flex}.recent-games__title small{color:var(--ink-muted);font-weight:500}.history{gap:var(--space-2);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.history__row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--grid-line);border-radius:var(--radius-md);background:var(--surface-cell);display:flex}.history__text{flex-direction:column;flex:1;min-width:0;display:flex}.history__text b{font:700 15px/20px var(--font-display);align-items:center;gap:4px;display:flex}.history__text small{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted);font-size:12px;overflow:hidden}.history__again{min-height:36px;padding:0 var(--space-3);font-size:14px}.history__result{border-radius:var(--radius-pill);font:700 12px/18px var(--font-sans);flex:none;padding:2px 8px}.history__result--won{background:var(--accent-soft);color:var(--accent-strong)}.history__result--lost{background:var(--clash-soft);color:var(--clash)}.history__result--draw{background:var(--peer);color:var(--ink-muted)}.invite{z-index:40;top:calc(env(safe-area-inset-top) + var(--space-2));width:min(420px, calc(100vw - 2 * var(--gutter)));align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-2);border-radius:var(--radius-lg);background:var(--ink);color:var(--surface);box-shadow:0 10px 28px color-mix(in srgb, var(--ink) 35%, transparent);animation:invite-in .32s var(--ease-pop) both;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes invite-in{0%{opacity:0;transform:translate(-50%,-24px)scale(.92)}}.invite__text{flex-direction:column;flex:1;min-width:0;display:flex}.invite__text b{font:700 15px/20px var(--font-display)}.invite__text small{opacity:.75;font-size:12px}.invite__accept{min-height:40px;padding:0 var(--space-4)}.invite__close{width:32px;height:32px;color:var(--surface);opacity:.7;cursor:pointer;background:0 0;border:0;border-radius:50%}.bot-tag{margin-left:4px;font-size:.85em}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.history__text small{white-space:normal}.results-sheet{z-index:20;overscroll-behavior:contain;align-items:center;gap:var(--space-2);width:min(520px,100%);max-height:78dvh;padding:var(--space-2) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--surface);animation:sheet-up .32s var(--ease-pop);border-radius:24px 24px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 -10px 30px #0000002e}.results-sheet.is-collapsed{padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px))}.results-sheet__handle{min-height:44px;padding:14px var(--space-4) 4px;color:var(--accent-strong);font:700 14px/18px var(--font-sans);cursor:pointer;background:0 0;border:0;position:relative}.results-sheet__handle:before{content:"";background:var(--grid-line);border-radius:2px;width:40px;height:4px;margin-left:-20px;position:absolute;top:4px;left:50%}.results{flex-direction:column;gap:10px;width:100%;min-width:0;display:flex;position:relative}.results__title{text-align:center;margin:0;font-size:24px}.results--won .results__title{color:var(--accent-strong);animation:.6s cubic-bezier(.3,1.6,.5,1) win-pop}@keyframes win-pop{0%{opacity:0;transform:scale(.6)}}.results__detail{text-align:center;color:var(--ink-muted);margin:-4px 0 0;font-weight:600}.results__list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.results__row{background:var(--surface-cell);font-variant-numeric:tabular-nums;border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;min-height:40px;padding:0 12px;display:grid}.results__row--me{box-shadow:inset 0 0 0 2px var(--accent)}.results__place{color:var(--ink-muted);font-weight:700}.results__name{font-weight:600}.results__actions{flex-direction:column;gap:8px;display:flex}.results__rematch-offer{animation:1.2s ease-in-out infinite offer-pulse}@keyframes offer-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 30%, transparent)}}.record-chip{background:var(--peer);color:var(--ink);font-variant-numeric:tabular-nums;border-radius:99px;align-self:center;margin:0;padding:4px 12px;font-weight:700}.panel .record-chip{align-self:flex-start}.confetti{pointer-events:none;height:0;position:absolute;inset:-40px 0 auto;overflow:visible}.confetti__piece{background:var(--accent);opacity:0;border-radius:2px;width:8px;height:12px;animation:ease-in forwards confetti-fall;position:absolute;top:0}.confetti__piece:nth-child(3n){background:var(--sunny)}.confetti__piece:nth-child(3n+1){background:var(--accent-strong)}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:0;transform:translate(var(--drift), 320px) rotate(540deg)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}.results--won .results__title,.results__rematch-offer{animation:none}}.rush-board{transform-origin:50% 60%}.rush-board--in{animation:rush-in .38s var(--ease-pop) both}@keyframes rush-in{0%{opacity:0;transform:translateY(18px)scale(.86)}to{opacity:1;transform:none}}.rush-board--out{z-index:2;pointer-events:none;animation:.45s ease-in both rush-out;position:absolute;inset:0}.rush-board--out .cell{background:color-mix(in srgb, var(--sunny) 55%, var(--surface-cell));transition:background .12s ease-out}@keyframes rush-out{0%{transform:none}30%{transform:scale(1.04)}to{opacity:0;transform:translateY(-36px)scale(.72)rotate(-3deg)}}.rush-plus{z-index:3;font:800 calc(var(--board-size) / 8) / 1 var(--font-display);color:var(--accent-strong);text-shadow:0 3px 0 var(--surface-cell);pointer-events:none;animation:rush-plus .6s var(--ease-pop) both;position:absolute;top:40%;left:50%}@keyframes rush-plus{0%{opacity:0;transform:translate(-50%,20px)scale(.5)}35%{opacity:1;transform:translate(-50%,-10px)scale(1.15)}to{opacity:0;transform:translate(-50%,-60px)scale(1)}}.rush-score{font-variant-numeric:tabular-nums;animation:sudo-pop .3s var(--ease-pop)}.rush-timer--tick{animation:.32s ease-out rush-jolt,1s ease-in-out infinite clock-low;display:inline-block}@keyframes rush-jolt{0%{transform:scale(1.25)}25%{transform:scale(1.1)rotate(-4deg)}50%{transform:scale(1.05)rotate(3deg)}to{transform:none}}.rush-backdrop{z-index:25}.rush-card{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;width:min(340px,100%);animation:.4s ease-out both fade-up;display:flex}.rush-card__icon{font-size:40px;line-height:1}.rush-card__title{margin:0}.rush-card__text{color:var(--ink-muted);margin:0}.rush-card__rules{gap:var(--space-4);color:var(--ink-muted);margin:0;font-size:14px;display:flex}.rush-card__rules b{color:var(--accent-strong);font-family:var(--font-display)}.rush-card__go{width:100%;margin-top:var(--space-2)}.rush-card__score{color:var(--ink-muted);flex-direction:column;align-items:center;margin:0;display:flex}.rush-card__score b{font:800 64px/1 var(--font-display);color:var(--accent-strong);animation:sudo-pop .5s var(--ease-pop)}.rush-card__actions{gap:var(--space-2);width:100%;margin-top:var(--space-2);grid-template-columns:2fr 1fr;display:grid}.board--mini{grid-template-columns:repeat(var(--mini-across), minmax(0, 1fr));grid-template-rows:repeat(var(--mini-down), minmax(0, 1fr))}.board--mini .box{grid-template-columns:repeat(var(--mini-box-cols), minmax(0, 1fr));grid-template-rows:repeat(var(--mini-box-rows), minmax(0, 1fr))}.board--mini .cell{font-size:calc(var(--board-size) / var(--mini-size) * .5)}.board.board--mini .box{border-radius:0}.board.board--mini .box>.cell{border-radius:var(--cell-radius)}.board.board--mini .box>.cell.is-selected{border-radius:var(--radius-sm)}.board.board--mini .box.is-tl,.board.board--mini .box>.cell.is-tl{border-top-left-radius:var(--corner)}.board.board--mini .box.is-tr,.board.board--mini .box>.cell.is-tr{border-top-right-radius:var(--corner)}.board.board--mini .box.is-bl,.board.board--mini .box>.cell.is-bl{border-bottom-left-radius:var(--corner)}.board.board--mini .box.is-br,.board.board--mini .box>.cell.is-br{border-bottom-right-radius:var(--corner)}.keypad--mini .key{height:68px;font-size:32px}.settings{z-index:10;background:var(--surface);color:var(--ink);padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);flex-direction:column;display:flex;position:fixed;inset:0}.settings__header{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;max-width:560px;padding:var(--gutter) var(--gutter) 4px;margin:0 auto;display:flex}.settings__title{margin:0}.settings-preview{--board-size:min(180px, 26dvh);padding:8px var(--gutter) 0;justify-content:center;display:flex}.settings__body{-webkit-overflow-scrolling:touch;width:100%;max-width:560px;padding:4px var(--gutter) calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;flex:1;gap:22px;margin:0 auto;display:flex;overflow-y:auto}.settings__section{flex-direction:column;gap:10px;padding-top:14px;display:flex}.settings__heading{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin:0;font-size:12px;font-weight:700}.option-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;display:grid}.option-card{min-height:var(--tap);box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 15%, transparent);cursor:pointer;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:12px 6px 10px;display:flex}.option-card--plain{background:var(--surface-cell);color:var(--ink)}.option-card[aria-checked=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.option-card__label{font-size:13px;font-weight:600}.option-card__label--pill{background:color-mix(in srgb, var(--surface-cell) 88%, transparent);color:var(--ink);border-radius:99px;padding:1px 8px}.option-card__split{gap:4px;display:flex}.option-card__split .mini-grid{width:42px}.option-card__split .mini-grid__cell{font-size:8px}.option-card__preview{min-height:64px;color:var(--ink);place-items:center;font-size:28px;line-height:1;display:grid}.mini-grid{aspect-ratio:1;gap:var(--cell-line-width,1px);width:64px;padding:var(--box-line-width,2px);background:var(--mini-line);box-shadow:inset 0 0 0 var(--box-line-width,2px) var(--mini-box);border-radius:8px;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.mini-grid__cell{background:var(--mini-surface);color:var(--mini-given);border-radius:var(--cell-radius,0px);font-family:var(--font-digits);font-size:11px;font-weight:var(--digit-given);place-items:center;display:grid}.mini-grid__cell--related{background:var(--mini-related)}.mini-grid__cell--selected{background:var(--mini-selected);color:var(--mini-user);font-weight:var(--digit-entry);box-shadow:inset 0 0 0 2px var(--mini-ring)}.settings__reset{align-self:center}.settings-preview .cell.is-selected{border-radius:4px}.settings-preview-wrap{border-bottom:1px solid var(--grid-line);align-items:center;gap:var(--space-1);flex-direction:column;margin:0;padding-bottom:10px;display:flex}.settings-preview__caption{font:500 12px/16px var(--font-sans);color:var(--ink-muted);text-align:center}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{min-width:var(--tap);width:56px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:4px 0;display:flex}.swatch__dot{width:34px;height:34px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 12%, transparent);border-radius:50%}.swatch__dot--theme{box-shadow:inset 0 0 0 3px var(--surface-cell), inset 0 0 0 4px var(--grid-line)}.swatch[aria-checked=true]{color:var(--ink);font-weight:600}.swatch[aria-checked=true] .swatch__dot{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.swatch__label{font-size:12px}.toggle-row{background:var(--surface-cell);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 14px;display:flex}.toggle-row+.toggle-row{margin-top:-2px}.toggle{background:var(--grid-line);cursor:pointer;border:none;border-radius:99px;flex:none;width:52px;height:32px;transition:background-color .15s;position:relative}.toggle[aria-checked=true]{background:var(--accent)}.toggle__thumb{background:var(--surface-cell);width:26px;height:26px;box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 25%, transparent);border-radius:50%;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle[aria-checked=true] .toggle__thumb{transform:translate(20px)}.settings__note{font:500 13px/19px var(--font-sans);color:var(--ink-muted);margin:0}.sound-lab{z-index:11}.lab-digits{gap:var(--space-2);grid-template-columns:repeat(5,1fr);display:grid}.lab-digits .key{height:52px}.lab-grid{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.lab-grid--four{grid-template-columns:repeat(2,1fr)}.lab-button{padding:var(--space-2) var(--space-3)}.lab-board{--board-size:min(300px, calc(100vw - 64px));padding:var(--space-2) 0;justify-content:center;display:flex}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-latin-500-normal-CmLZ27r7.woff2)format("woff2"),url(/assets/baloo-2-latin-500-normal-BSdEhq8m.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-600-normal-tIfxVoAe.woff2)format("woff2"),url(/assets/baloo-2-latin-600-normal-B4tNaogw.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2)format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2)format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-Dhut76fR.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-BDKaGhyp.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-Bf-nb4oT.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-DYtqi0QS.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-700-normal-CfpNZvy6.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-700-normal-DqEcQeE5.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-400-normal-CFtfchNt.woff2)format("woff2"),url(/assets/playfair-display-latin-400-normal-DHYHbkg3.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-normal-CuDiGg7c.woff2)format("woff2"),url(/assets/playfair-display-latin-700-normal-Bc_1Q1cG.woff)format("woff")}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/courier-prime-latin-400-normal-BbyBr73r.woff2)format("woff2"),url(/assets/courier-prime-latin-400-normal-BAlbUm6l.woff)format("woff")}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/courier-prime-latin-700-normal-D1YCjmaD.woff2)format("woff2"),url(/assets/courier-prime-latin-700-normal-CVvp4Sof.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}@font-face{font-family:Patrick Hand;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/patrick-hand-latin-400-normal-B7HHA2Vw.woff2)format("woff2"),url(/assets/patrick-hand-latin-400-normal-Df9_VoRQ.woff)format("woff")}
