.chk{aspect-ratio:1;background:#8a5a3c;border-radius:12px;grid-template-columns:repeat(8,1fr);width:min(100%,384px);padding:6px;display:grid;box-shadow:0 6px #5e3b25}.chk__sq{aspect-ratio:1;background:#6f8f5a;border:0;border-radius:0;place-items:center;min-width:0;margin:0;padding:0;display:grid;position:relative}.chk__sq--light{background:#f4e6c8}.chk__sq[aria-disabled=true]{cursor:default}.chk__sq.is-last{background:#86a86c}.chk__sq.is-sel{background:#a3c27f}.chk__sq.is-target:after{content:"";background:#fff9;border-radius:50%;width:34%;height:34%;animation:1s ease-in-out infinite alternate chk-pulse;box-shadow:0 0 0 3px #fff5}.chk__piece{border-radius:50%;place-items:center;width:80%;height:80%;font-size:clamp(.8rem,4.2vw,1.25rem);line-height:1;transition:transform .15s;display:grid}.chk__piece--1{color:#8a5a00;background:radial-gradient(circle at 50% 40%,#fff3b0,#ffcf3f 60%,#e7a400);box-shadow:0 3px #b07c00}.chk__piece--2{background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--accent,#8a6cff) 55%, #fff), var(--accent,#8a6cff));color:#fff;box-shadow:0 3px 0 color-mix(in srgb, var(--accent,#8a6cff) 65%, #000)}.chk__piece.is-king{outline-offset:-5px;outline:2px solid #fffc}.chk__sq.is-sel .chk__piece{transform:translateY(-3px)scale(1.06)}.chk__sq.is-must .chk__piece{animation:.9s ease-in-out infinite alternate chk-glow}@keyframes chk-pulse{0%{transform:scale(.8)}to{transform:scale(1.05)}}@keyframes chk-glow{0%{box-shadow:0 3px #b07c00,0 0 #fff0}to{box-shadow:0 3px #b07c00,0 0 0 4px #fffc}}.code{flex-direction:column;align-items:center;gap:10px;width:min(100%,380px);display:flex}.code__secret{background:#2b2a4a;border-radius:14px;justify-content:center;gap:8px;padding:8px 14px;display:flex;box-shadow:0 4px #1a1930}.code__peg{color:#fff;text-shadow:0 1px 2px #0009;border-radius:50%;flex:none;place-items:center;font-weight:800;line-height:1;display:inline-grid;box-shadow:inset 0 -3px #0003,0 1px 2px #0002}.code__peg--md{width:42px;height:42px;font-size:1.25rem}.code__peg--sm{width:30px;height:30px;font-size:.9rem}.code__peg--empty{box-shadow:none;background:#fff;border:3px dashed #c9c2e6}.code__peg--hidden{color:#c9c2e6;text-shadow:none;background:#4a4870}.code__rows{flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none;display:flex}.code__row{background:#fff;border-radius:12px;align-items:center;gap:10px;padding:5px 10px;animation:.2s ease-out code-in;display:flex;box-shadow:0 2px #0001}.code__num{text-align:right;width:18px;color:var(--muted);font-weight:800}.code__guess{flex:1;gap:6px;display:flex}.code__dots{grid-template-columns:repeat(2,12px);gap:4px;display:grid}.code--3 .code__dots{grid-template-columns:repeat(3,12px)}.code__dot{background:#ece8f8;border-radius:50%;width:12px;height:12px;display:inline-block}.code__dot--exact{background:#2b2a4a}.code__dot--near{background:#fff;border:2.5px solid #2b2a4a}.code__current{border:3px solid var(--accent);background:#fff;border-radius:16px;justify-content:center;gap:8px;padding:8px 12px;display:flex}.code__slot{background:0 0;border:0;border-radius:50%;place-items:center;min-width:46px;min-height:46px;padding:2px;display:grid}.code__palette{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.code__pick{color:#fff;text-shadow:0 1px 2px #0009;border:3px solid #fff;border-radius:50%;width:50px;height:50px;font-size:1.4rem;font-weight:800;transition:transform .1s;box-shadow:0 4px #0003,0 2px 6px #0002}.code__pick:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #0003}.code__pick:disabled{opacity:.35}.code__check{min-width:160px}.code__legend{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0;font-size:.8rem;display:flex}.code__legend .code__dot{margin-left:6px}@keyframes code-in{0%{opacity:0;transform:translateY(-6px)}}.dots__tally{justify-content:center;gap:8px;display:flex}.dots__chip{border-radius:999px;padding:3px 12px;font-size:.92rem;font-weight:800}.dots__chip--1{color:#6b4a00;background:#ffe58a}.dots__chip--2{background:color-mix(in srgb, var(--accent,#8a6cff) 30%, #fff);color:var(--ink)}.dots{aspect-ratio:1;width:min(100%,360px);box-shadow:0 6px 0 #0000001a, inset 0 0 0 3px var(--line);background:#fffdf6;border-radius:18px;position:relative;overflow:hidden}.dots__field{position:absolute;inset:9%}.dots__box{width:calc(100% / var(--n));height:calc(100% / var(--n));font-weight:800;font-size:calc(150px / var(--n));pointer-events:none;place-items:center;line-height:1;animation:.25s ease-out dots-pop;display:grid;position:absolute}.dots__box--1{color:#9a6a00;background:#ffe58a}.dots__box--2{background:color-mix(in srgb, var(--accent,#8a6cff) 30%, #fff);color:color-mix(in srgb, var(--accent,#8a6cff) 75%, #000)}.dots__hit{width:calc(100% / var(--n));height:calc(100% / var(--n));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);z-index:1;background:0 0;border:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.dots__hit[aria-disabled=true]{cursor:default}.dots__line{background:#d9d4ee;border-radius:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dots__hit.is-h .dots__line{background:repeating-linear-gradient(90deg,#cfc9e8 0 8px,#0000 8px 14px);width:100%;height:6px}.dots__hit.is-v .dots__line{background:repeating-linear-gradient(#cfc9e8 0 8px,#0000 8px 14px);width:6px;height:100%}.dots__hit:not(.is-drawn):not([aria-disabled=true]):active .dots__line{background:#b7aee0}@media (hover:hover){.dots__hit:not(.is-drawn):not([aria-disabled=true]):hover .dots__line{background:#b7aee0}}.dots__hit.is-drawn .dots__line{animation:.2s ease-out dots-draw}.dots__hit.is-h.is-drawn .dots__line{height:8px}.dots__hit.is-v.is-drawn .dots__line{width:8px}.dots__hit--1 .dots__line{background:#f0a400!important}.dots__hit--2 .dots__line{background:var(--accent,#8a6cff)!important}.dots__hit.is-last .dots__line{box-shadow:0 0 0 3px #fffc,0 0 10px 2px #0003}.dots__dot{background:var(--ink);pointer-events:none;z-index:2;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%)}@keyframes dots-pop{0%{opacity:0;transform:scale(.6)}}@keyframes dots-draw{0%{opacity:.2}}.five{flex-direction:column;align-items:center;gap:8px;width:min(100%,380px);display:flex}.five__info{width:100%;color:var(--ink,#2b2440);justify-content:space-between;align-items:center;gap:6px;font-size:.85rem;font-weight:800;display:flex}.five__who{align-items:center;gap:4px;display:inline-flex}.five__deck{color:var(--muted)}.five__dot{border-radius:50%;place-items:center;width:20px;height:20px;font-size:.7rem;font-style:normal;display:inline-grid}.five__dot--you{color:#6b4e00;background:#ffd23f;box-shadow:inset 0 0 0 2px #d9a400}.five__dot--them{background:var(--accent,#8a6cff);color:#fff;box-shadow:inset 0 0 0 2px #0002}.five__board{background:#2f7a55;border-radius:10px;grid-template-columns:repeat(10,minmax(0,1fr));gap:1.5px;width:100%;padding:2px;display:grid;box-shadow:inset 0 2px 8px #0003}.five__cell{aspect-ratio:1;color:#2b2440;min-width:0;font:inherit;touch-action:manipulation;background:#fffdf8;border:0;border-radius:4px;place-items:center;padding:0;display:grid;position:relative}.five__cell.is-red{color:#d9485f}.five__label{letter-spacing:-.03em;white-space:nowrap;font-size:.62rem;font-weight:800;line-height:1}.five__cell--free{background:#ffe9a8}.five__free{text-transform:uppercase;color:#8a6a00;font-size:.5rem;font-weight:900}.five__cell.is-target{outline-offset:-1px;z-index:1;outline:3px solid #ffd84d;animation:.8s ease-in-out infinite alternate five-glow}@keyframes five-glow{0%{background:#fff4c2}to{background:#ffd84d}}.five__cell.is-line{background:#ffd84d}.five__cell.is-line .five__chip{box-shadow:0 0 0 2px #fff,0 0 0 3.5px #b98a00}.five__chip{border-radius:50%;place-items:center;font-size:.85rem;font-weight:900;line-height:1;display:grid;position:absolute;inset:9%;box-shadow:0 2px 2px #0004}.five__chip--you{color:#6b4e00;background:radial-gradient(circle at 35% 30%,#fff2a8,#ffd23f 55%,#e8b100)}.five__chip--them{background:radial-gradient(circle at 35% 30%, #fff6, transparent 50%), var(--accent,#8a6cff);color:#fff}.five__cell.is-target .five__chip{animation:.6s ease-in-out infinite alternate five-wobble}@keyframes five-wobble{to{transform:scale(.82)}}.five__cell.is-new .five__chip{animation:.3s ease-out five-land}.five__cell.is-new:not(:has(.five__chip)){animation:.6s ease-out five-gone}@keyframes five-land{0%{opacity:.3;transform:translateY(-10px)scale(1.3)}}@keyframes five-gone{0%{background:#ffb3c0}}.five__actions{justify-content:center;gap:8px;display:flex}.five__btn{min-width:150px;min-height:48px;font-size:1.05rem}.five__hand.eights__hand{flex-wrap:wrap;justify-content:center;row-gap:6px;padding:12px 4px 4px;overflow:visible}.five__hand .eights__slot{touch-action:manipulation;margin-left:-4px}.five__hand .eights__slot:first-child{margin-left:0}.five__hand .eights__slot:last-of-type{margin-right:0}.five__hand .eights__card{width:46px;height:66px;position:relative}.five__hand .five__sel .eights__card{border-color:#ffd84d;box-shadow:0 0 0 3px #ffd84d,0 4px 8px #0002}.five__dead .eights__card{opacity:.6}.five__dead .eights__card:after{content:"✕";color:#d9485f;font-size:.7rem;font-weight:900;position:absolute;top:2px;right:3px}.five__jack{text-transform:uppercase;color:var(--muted);letter-spacing:.02em;font-size:.55rem;font-weight:900}.gin{flex-direction:column;align-items:center;gap:10px;width:min(100%,400px);display:flex}.gin__points{color:var(--ink);background:#fff;border-radius:999px;align-items:baseline;gap:12px;padding:5px 14px;font-weight:800;display:flex;box-shadow:0 2px 6px #0001}.gin__points small{color:var(--muted);font-size:.72rem;font-weight:700}.gin__table{gap:22px}.gin__discard{border-radius:9px;min-width:58px;min-height:82px}.gin__discard.is-ready .eights__card{outline:3px solid #ffd84d}.gin__empty{border:2px dashed #fff8;border-radius:8px;width:58px;height:82px;display:block}.gin__dw{color:var(--ink);text-align:center;align-items:center;gap:8px;min-height:28px;font-weight:800;display:flex}.gin__dw.is-knock,.gin__dw.is-gin{color:#1f8a52}.gin__badge{color:#5a3d00;background:#ffd84d;border-radius:999px;padding:2px 10px;font-weight:900;animation:.3s cubic-bezier(.3,1.6,.5,1) gin-pop}@keyframes gin-pop{0%{transform:scale(.4)}}.gin__hand{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:14px 8px;width:100%;padding-top:14px;display:flex}.gin__group{border-radius:12px;gap:2px;padding:4px;display:flex;position:relative}.gin__group--meld{background:#e6f6ec;box-shadow:0 0 0 2px #2f9e62}.gin__tag{color:#fff;background:#2f9e62;border-radius:999px;padding:0 7px;font-size:.66rem;font-weight:800;line-height:16px;position:absolute;top:-10px;left:8px}.gin__slot{background:0 0;border:0;flex:none;min-width:40px;min-height:44px;padding:0;transition:transform .15s}.gin__slot .eights__card{width:40px;height:58px}.gin__slot .eights__card b{font-size:1rem}.gin__slot .eights__card i{font-size:1.15rem}.gin__slot.is-legal{cursor:pointer}.gin__slot.is-selected{transform:translateY(-10px)}.gin__slot.is-selected .eights__card{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent), 0 4px 8px #0002}.gin__slot.is-took .eights__card{filter:saturate(.7);box-shadow:0 0 0 2px #ffd84d,0 2px 4px #0002}.gin__actions{justify-content:center;gap:10px;display:flex}.gin__actions .btn{min-width:112px;min-height:44px}.gin__reveal{background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:10px;width:100%;padding:12px 10px;animation:.25s ease-out gin-pop;display:flex;box-shadow:0 4px 14px #0002}.gin__outcome{text-align:center;color:var(--ink);margin:0;font-weight:800}.gin__row{flex-direction:column;gap:4px;width:100%;display:flex}.gin__who{align-items:baseline;gap:8px;display:flex}.gin__who small{color:var(--muted);font-weight:700}.gin__shown{flex-wrap:wrap;gap:6px;display:flex}.gin__group--mini{gap:1px;padding:3px}.gin__group--mini .eights__card{border-radius:5px;width:28px;height:40px}.gin__group--mini .eights__card b{font-size:.78rem}.gin__group--mini .eights__card i{font-size:.85rem}.gin__group--laid{background:#fff6cc;box-shadow:0 0 0 2px #e6b800}.gin__group--dead{background:#f3eef8}.gin__note{color:var(--muted);font-size:.75rem}.mem{background:#2f7a55;border-radius:18px;gap:8px;width:min(100%,360px);padding:10px;display:grid;box-shadow:0 6px #225a3e}.mem--easy{width:min(100%,310px)}.mem--hard{gap:6px;width:min(100%,330px)}.mem__card{aspect-ratio:1;perspective:600px;cursor:pointer;background:0 0;border:0;min-height:48px;padding:0}.mem__card[aria-disabled=true]{cursor:default}.mem__inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .35s;display:block;position:relative}.mem__card.is-up .mem__inner{transform:rotateY(180deg)}.mem__back,.mem__front{backface-visibility:hidden;border-radius:12px;place-items:center;line-height:1;display:grid;position:absolute;inset:0}.mem__back{background:repeating-linear-gradient(45deg,#ffd84d 0 8px,#ffcd2e 8px 16px);font-size:clamp(1.2rem,6vw,1.8rem);box-shadow:inset 0 -4px #0002}.mem__front{background:#fff;font-size:clamp(2rem,11vw,3rem);transform:rotateY(180deg);box-shadow:inset 0 -4px #0001}.mem--hard .mem__front{font-size:clamp(1.8rem,9vw,2.6rem)}.mem__card:not(.is-up):active .mem__inner{transform:scale(.95)}.mem__card.is-matched .mem__front{opacity:.85}.mem__card--0 .mem__front{box-shadow:inset 0 0 0 4px #e0703a}.mem__card--1 .mem__front{box-shadow:inset 0 0 0 4px var(--accent)}.mem__pairs{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.mem__count{color:var(--ink);background:#fff;border:2px solid #0000;border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:800;box-shadow:0 2px #0001}.mem__count--0.is-turn{border-color:#e0703a}.mem__count--1.is-turn{border-color:var(--accent)}.om{flex-direction:column;align-items:center;gap:8px;width:min(100%,400px);display:flex}.om__label{color:var(--muted);font-size:.85rem}.om__label b{color:inherit;margin-left:4px}.om__fan{flex-wrap:wrap;justify-content:center;row-gap:6px;max-width:100%;padding:8px 4px 4px;display:flex}.om__pick{touch-action:manipulation;background:0 0;border:0;flex:none;margin-left:-14px;padding:0;transition:transform .15s}.om__pick:first-child{margin-left:0}.om__back{width:44px;height:64px}.om__fan.is-ready .om__pick:active{transform:translateY(-8px)}@media (hover:hover){.om__fan.is-ready .om__pick:hover{transform:translateY(-8px)}}.om__fan.is-ready .om__back{box-shadow:0 0 0 2px #ffd84d,0 2px 4px #0002}.om__pick.is-shown{z-index:1;transform:translateY(-14px)scale(1.1)}.om__pick.is-shown .eights__card{animation:.25s ease-out eights-land}.om__table{background:#2f7a55;border-radius:16px;align-items:center;gap:8px;width:100%;padding:10px;display:flex;box-shadow:inset 0 2px 8px #0003}.om__pairs{background:#ffffffd9;border-radius:12px;flex-direction:column;flex:none;align-items:center;width:64px;padding:4px;display:flex}.om__pairs small{color:var(--muted);text-align:center;font-size:.65rem}.om__pairs b{font-size:1.3rem}.om__news{color:#fff;text-align:center;flex:1;place-items:center;min-height:92px;display:grid}.om__event{flex-direction:column;align-items:center;gap:4px;animation:.3s ease-out om-in;display:flex}.om__event small{text-shadow:0 1px 2px #0006;font-size:.8rem;font-weight:700}.om__event--pair .om__mini{animation:.45s ease-out om-pop}.om__mini{gap:4px;display:flex}.om__mini .eights__card{width:40px;height:58px}@keyframes om-in{0%{opacity:0;transform:translateY(6px)}}@keyframes om-pop{40%{transform:scale(1.15)}}.om__mine{flex-wrap:wrap;justify-content:center;row-gap:6px;width:100%;padding:4px;display:flex}.om__card{margin-left:-10px;transition:transform .2s,opacity .2s}.om__card:first-child{margin-left:0}.om__card.is-taken{opacity:.5;transform:translateY(-18px)}.om__card.is-fresh .eights__card{animation:.3s ease-out eights-land;box-shadow:0 0 0 2px #ffd84d,0 2px 4px #0002}.om__maid{color:#a0386d;background:linear-gradient(160deg,#fff4fb,#ffe2f1);border-color:#f2a9cf}.om__maid small{text-transform:uppercase;letter-spacing:.02em;font-size:.55rem;font-weight:800}.om__crown{font-size:1.4rem}.sev{flex-direction:column;align-items:center;gap:10px;width:min(100%,400px);display:flex}.sev__them{min-height:44px;color:var(--muted);justify-content:center;align-items:center;font-size:.85rem;display:flex}.sev__them .eights__back{width:26px;height:38px;margin-left:-16px}.sev__them .eights__back:first-child{margin-left:0}.sev__them b{color:var(--ink,#2b2440);margin-left:8px;font-size:1rem}.sev__table{background:#2f7a55;border-radius:16px;flex-direction:column;gap:5px;width:100%;padding:8px 6px;display:flex;box-shadow:inset 0 2px 8px #0003}.sev__row{grid-template-columns:20px repeat(13,minmax(0,1fr));align-items:center;gap:2px;display:grid}.sev__suit{text-align:center;color:#fff;text-shadow:0 1px 2px #0006;font-size:1.15rem;line-height:1}.sev__suit--red{color:#ffd0d8}.sev__spot{color:#ffffff59;background:#ffffff14;border-radius:5px;place-items:center;height:34px;font-size:.8rem;font-weight:800;display:grid}.sev__spot--seven{box-shadow:inset 0 0 0 1px #ffffff40}.sev__spot.is-laid{color:#2b2440;background:#fffdf8;box-shadow:0 1px 2px #0003}.sev__spot.is-laid.is-red{color:#d9485f}.sev__spot.is-next{outline-offset:-2px;color:#fffc;background:0 0;outline:2px dashed #ffffffb3}.sev__spot.is-yours{color:#fff;background:#ffd84d33;outline:2px solid #ffd84d;animation:.9s ease-in-out infinite alternate sev-glow}.sev__spot.is-new{animation:.3s ease-out sev-land}@keyframes sev-glow{to{background:#ffd84d66}}@keyframes sev-land{0%{opacity:.3;transform:translateY(-10px)scale(1.25)}}.sev__news{min-height:1.3em;color:var(--muted);text-align:center;font-size:.85rem;font-weight:700}.sev__pass{min-width:160px;min-height:52px;font-size:1.25rem}.sev__hand.eights__hand{flex-wrap:wrap;justify-content:center;row-gap:6px;padding:12px 4px 4px;overflow:visible}.sev__hand .eights__slot{touch-action:manipulation;margin-left:-6px}.sev__hand .eights__slot:first-child{margin-left:0}.sev__hand .eights__slot:last-of-type{margin-right:0}.sev__hand .eights__card{width:46px;height:66px}.sev__hand .eights__slot.is-gap{margin-left:6px}@media (width<=380px){.sev__spot{height:30px;font-size:.72rem}}.simon__goal{justify-content:center;gap:10px;font-size:.9rem;display:flex}.simon__goal span{background:#ffffffbf;border-radius:999px;padding:4px 12px}.simon{aspect-ratio:1;background:#2d3142;border-radius:50%;grid-template-columns:1fr 1fr;gap:10px;width:min(100%,320px);padding:10px;display:grid;position:relative;box-shadow:0 6px #1d202c}.simon__pad{color:#ffffffd9;filter:brightness(.7)saturate(.85);touch-action:manipulation;border:0;place-items:center;font-size:2rem;transition:filter 80ms,transform 80ms;display:grid}.simon__pad--green{background:#2fbf71;border-radius:100% 0 0}.simon__pad--red{background:#ef4b4b;border-radius:0 100% 0 0}.simon__pad--yellow{background:#f7c531;border-radius:0 0 0 100%}.simon__pad--blue{background:#3b82f6;border-radius:0 0 100%}.simon__pad.is-lit{filter:brightness(1.35)saturate(1.1);transform:scale(.97);box-shadow:0 0 24px #fff8}.simon.is-input .simon__pad:active{filter:brightness(1.2)}.simon__hub{color:#fff;pointer-events:none;background:#2d3142;border:6px solid #1d202c;border-radius:50%;place-items:center;font-size:1.6rem;font-weight:800;display:grid;position:absolute;inset:34%}.slap{flex-direction:column;align-items:center;gap:10px;width:min(100%,380px);display:flex}.slap__row{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.slap__side{align-items:center;gap:8px;display:flex}.slap__side small{color:var(--muted);font-weight:800}.slap__deck{color:#fff;text-shadow:0 1px 2px #0008;width:42px;height:60px;font-weight:800}.slap__flips{color:var(--muted);flex-direction:column;align-items:center;line-height:1.1;display:flex}.slap__flips small{text-transform:uppercase;font-size:.7rem;font-weight:800}.slap__flips b{color:#2b2440;font-size:1.05rem}.slap__table{background:#2f7a55;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;min-height:200px;padding:12px;transition:background .2s;display:flex;box-shadow:inset 0 2px 8px #0003}.slap__table.is-you{background:#2e8f5f;box-shadow:inset 0 0 0 4px #ffd84d,inset 0 2px 8px #0003}.slap__table.is-them{background:#4a5a8f}.slap__table.is-oops,.slap__table.is-buddyOops{background:#8a3b4a}.slap__pile{justify-content:center;align-items:center;min-height:124px;display:flex;position:relative}.slap__card{width:86px;height:122px;animation:.2s ease-out eights-land}.slap__card b{font-size:1.8rem}.slap__card i{font-size:2.2rem}.slap__pile--snap .slap__card--under{opacity:.85;width:70px;height:100px;margin-right:-14px;animation:none;transform:rotate(-8deg)}.slap__pile--snap .slap__card--under b{font-size:1.4rem}.slap__pile--snap .slap__card--under i{font-size:1.7rem}.slap__hand{font-size:3rem;animation:.25s ease-out slap-hit;position:absolute;bottom:-6px;right:-18px}.slap__hint{color:#fff;text-align:center;padding:0 12px;font-weight:700}.slap__info{color:#fffc;justify-content:space-between;width:100%;font-size:.8rem;font-weight:700;display:flex}.slap__fb{align-items:center;min-height:30px;display:flex}.slap__msg{text-align:center;border-radius:999px;padding:4px 14px;font-weight:900;animation:.3s ease-out slap-pop}.slap__msg--you{color:#5a2a00;background:#ffd84d}.slap__msg--them{color:#2b2440;background:#fff}.slap__msg--oops,.slap__msg--buddyOops{color:#8a1d38;background:#ffe1e8}.slap__btn{background:var(--berry);color:#fff;width:100%;min-height:128px;font:inherit;letter-spacing:.06em;text-shadow:0 2px #0003;box-shadow:0 8px 0 var(--berry-dark,#c94a6c), 0 10px 18px #0003;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer;border:0;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:2.6rem;font-weight:900;display:flex}.slap__btn small{letter-spacing:0;opacity:.85;font-size:.8rem;font-weight:800}.slap__btn:active:not(:disabled){box-shadow:0 2px 0 var(--berry-dark,#c94a6c), 0 4px 8px #0003;transform:translateY(6px)}.slap__btn:disabled{opacity:.5}.slap__pause{min-width:120px;min-height:44px}@keyframes slap-pop{40%{transform:scale(1.12)}}@keyframes slap-hit{0%{opacity:.3;transform:translateY(-30px)scale(1.4)}}.ttt{background:#4b5fd1;border-radius:18px;grid-template-columns:repeat(3,1fr);gap:8px;width:min(100%,330px);padding:10px;display:grid;box-shadow:0 6px #33449c}.ttt__cell{aspect-ratio:1;min-height:64px;color:var(--ink);cursor:pointer;background:#e9ecff;border:0;border-radius:14px;place-items:center;padding:0;font-size:clamp(2.6rem,14vw,4rem);font-weight:900;line-height:1;display:grid;box-shadow:inset 0 -4px #0001}.ttt__cell:disabled{opacity:1;cursor:default}.ttt__cell:not(:disabled):active{transform:scale(.96)}.ttt__cell--1{color:#e0703a;animation:.25s cubic-bezier(.3,1.6,.5,1) ttt-pop}.ttt__cell--2{color:var(--accent);animation:.25s cubic-bezier(.3,1.6,.5,1) ttt-pop}.ttt__cell.is-win{background:#ffd84d;box-shadow:0 0 0 4px #fff}@keyframes ttt-pop{0%{transform:scale(.4)}}.ttt__legend{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.ttt__tag{background:#fff;border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:800;box-shadow:0 2px #0001}.ttt__tag--1{color:#e0703a}.ttt__tag--2{color:var(--ink);border:2px solid var(--accent)}.war{flex-direction:column;align-items:center;gap:10px;width:min(100%,380px);display:flex}.war__side{align-items:center;gap:10px;display:flex}.war__side small{color:var(--muted);font-weight:800}.war__deck{color:#fff;text-shadow:0 1px 2px #0008;width:48px;height:68px;font-weight:800}.war__table{background:#2f7a55;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:210px;padding:12px;transition:background .2s;display:flex;box-shadow:inset 0 2px 8px #0003}.war__table.is-war{background:#8a3b4a}.war__play{align-items:center;gap:8px;display:flex}.war__card{width:62px;height:88px;animation:.25s ease-out eights-land}.war__card b{font-size:1.3rem}.war__card i{font-size:1.6rem}.war__card.is-win{transition:transform .2s;transform:scale(1.08);box-shadow:0 0 0 3px #ffd84d,0 4px 10px #0004}.war__down{color:#fff;letter-spacing:-.35em;padding-right:.35em;font-size:2.2rem;line-height:1}.war__badge{color:#5a2a00;letter-spacing:.08em;background:#ffd84d;border-radius:999px;padding:2px 14px;font-weight:900;animation:.4s ease-out war-pop}.war__hint{color:#fff;text-align:center;padding:0 12px;font-weight:700}.war__flip{min-width:160px;min-height:56px;font-size:1.2rem}@keyframes war-pop{40%{transform:scale(1.15)}}.wyr{flex-direction:column;align-items:center;gap:12px;width:min(100%,420px);display:flex}.wyr__dots{gap:6px;display:flex}.wyr__dot{background:#e3def4;border-radius:50%;width:10px;height:10px}.wyr__dot.is-done{background:var(--accent)}.wyr__dot.is-now{border:3px solid var(--accent);background:#fff}.wyr__ask{color:var(--ink);margin:0;font-size:1.2rem;font-weight:800}.wyr__cards{gap:14px;width:100%;display:grid;position:relative}.wyr__card{color:#fff;text-align:center;width:100%;min-height:112px;font:inherit;text-shadow:0 1px 2px #0005;border:3px solid #0000;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;padding:16px 16px 30px;font-size:1.2rem;font-weight:800;line-height:1.25;transition:transform .15s,opacity .2s,filter .2s;animation:.25s ease-out wyr-in;display:flex;position:relative;box-shadow:0 6px #0002}.wyr__card--a{background:#4f7bea}.wyr__card--b{background:#f0675e}.wyr__card:active{transform:translateY(3px)}.wyr__card.is-mine{box-shadow:0 0 0 4px var(--accent), 0 6px 0 #0002;border-color:#fff;transform:scale(1.02)}.wyr__card.is-other{filter:saturate(.5)brightness(.95);opacity:.8}.wyr__text{display:block}.wyr__tags{justify-content:center;gap:6px;display:flex;position:absolute;bottom:8px;left:0;right:0}.wyr__tag{color:var(--ink);text-shadow:none;background:#fff;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.8rem;animation:.25s ease-out wyr-pop;display:inline-flex}.wyr__tag img{object-fit:cover;border-radius:50%;width:20px;height:20px}.wyr__or{width:40px;height:40px;color:var(--ink);pointer-events:none;background:#fff;border-radius:50%;place-items:center;font-weight:900;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0003}.wyr__next{min-width:160px}.wyr__wrap{background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:4px;width:100%;padding:18px;display:flex;box-shadow:0 4px #0001}.wyr__wrap p{color:var(--ink);margin:0;font-size:1.15rem;font-weight:800}.wyr__big{color:var(--accent);font-size:3rem;line-height:1}.wyr__big small{color:var(--muted);font-size:1.4rem}.wyr__played{color:var(--muted)}@keyframes wyr-in{0%{opacity:0;transform:translateY(8px)}}@keyframes wyr-pop{0%{opacity:0;transform:scale(.6)}}.lesson{--lesson-ok:#3fae5a;--lesson-ok-soft:#e3f6e7;--lesson-warm:#f2a03d;--lesson-warm-soft:#fff1dc;width:100%;max-width:520px;color:var(--ink);flex-direction:column;align-items:stretch;gap:12px;font-size:16px;display:flex}.lesson--sprouts{font-size:18px}.game:has(.lesson) .game__head .btn{min-height:48px;padding:8px 16px}.game:has(.lesson--sprouts) .game__head .btn{font-size:16px}.game:has(.lesson--sprouts) .game__status{font-size:16px}.game:has(.lesson--sprouts) .speech--game{font-size:16px}.game:has(.lesson--sprouts) .game__head b{font-size:18px}.lesson__bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lesson__dots{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.lesson__dot{border:2px solid var(--line);background:#fff;border-radius:50%;flex:none;width:12px;height:12px;transition:background .2s,transform .2s}.lesson__dot.is-now{border-color:var(--accent,var(--primary));transform:scale(1.2)}.lesson__dot.is-right{background:var(--lesson-ok);border-color:var(--lesson-ok)}.lesson__dot.is-wrong,.lesson__dot.is-done{background:var(--lesson-warm);border-color:var(--lesson-warm)}.lesson--sprouts .lesson__dots{gap:6px}.lesson--sprouts .lesson__dot{width:16px;height:16px}.lesson__level{color:var(--muted);font-size:15px;font-weight:800}.lesson__chip{border:2px solid var(--line);min-height:48px;font:inherit;color:var(--ink);background:#fff;border-radius:999px;padding:6px 14px;font-size:15px;font-weight:700}.lesson__chip.is-on{border-color:var(--accent,var(--primary));background:var(--accent-soft,#f1ecf7)}.lesson__timer{border:1px solid var(--line);background:#fff;border-radius:999px;height:10px;overflow:hidden}.lesson__timer-fill{background:var(--accent,var(--primary));transform-origin:0;width:100%;height:100%;animation:linear forwards lesson-timer;display:block}@keyframes lesson-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.mp__card{border-radius:var(--radius,18px);text-align:center;letter-spacing:.02em;background:#fff;padding:18px 16px;font-size:2.1em;font-weight:800;line-height:1.25;animation:.25s ease-out lesson-in;box-shadow:0 6px 18px #0001}.mp__card--long{text-align:left;letter-spacing:0;font-size:1.15em;font-weight:700}.mp__bubbles{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mp__bubble{min-height:76px;font:inherit;color:#fff;cursor:pointer;touch-action:manipulation;word-break:break-word;border:0;border-radius:999px;padding:6px 10px;font-size:1.6em;font-weight:800;transition:transform .12s;animation:.35s ease-out backwards lesson-float;position:relative;box-shadow:inset 0 -6px #0002,0 6px 14px #0002}.mp__bubble:before{content:"";background:#fff6;border-radius:50%;width:22%;height:22%;position:absolute;top:12%;left:18%}.mp__bubble--0{background:#ff8a65}.mp__bubble--1{background:#4fb3e8;animation-delay:40ms}.mp__bubble--2{background:#9b7fe0;animation-delay:80ms}.mp__bubble--3{background:#48b884;animation-delay:.12s}.mp__bubble:active:not(:disabled){transform:scale(.95)}.mp__bubble:disabled{cursor:default;opacity:1}.mp__bubble:focus-visible{outline:4px solid var(--ink);outline-offset:2px}.mp__bubble.is-pop{animation:.6s ease-out forwards lesson-pop}.mp__bubble.is-pop:after{content:"";border:4px solid var(--lesson-ok);border-radius:999px;animation:.6s ease-out forwards lesson-ring;position:absolute;inset:-6px}.mp__bubble.is-miss{opacity:.45;animation:.4s ease-out lesson-nudge}.mp__bubble.is-answer{outline:4px solid var(--lesson-ok);outline-offset:3px}.mp__bubbles:has(.is-pop) .mp__bubble:not(.is-pop){opacity:.45}.mp__bubbles:has(.is-miss) .mp__bubble:not(.is-miss):not(.is-answer){opacity:.45}.mp__plus{color:var(--lesson-ok);pointer-events:none;align-self:center;font-size:1.6em;font-weight:800;animation:1s ease-out forwards lesson-rise}@keyframes lesson-in{0%{opacity:0;transform:translateY(6px)}}@keyframes lesson-float{0%{opacity:0;transform:translateY(10px)scale(.9)}}@keyframes lesson-pop{0%{transform:scale(1)}35%{transform:scale(1.14)}70%{transform:scale(.96)}to{background:var(--lesson-ok);transform:scale(1)}}@keyframes lesson-ring{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.25)}}@keyframes lesson-rise{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}to{opacity:0;transform:translateY(-24px)}}@keyframes lesson-nudge{25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-2px)}}.lesson__voice{flex-direction:column;align-items:center;gap:8px;display:flex}.lesson-mic{flex-direction:column;align-items:center;gap:6px;width:100%;display:flex}.lesson-mic__btn{border:3px solid var(--accent,var(--primary));min-width:200px;min-height:56px;font:inherit;color:var(--ink);touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:10px 22px;font-size:17px;font-weight:800;display:inline-flex}.lesson-mic__btn.is-on{background:var(--accent,var(--primary));color:#fff;animation:1.2s ease-in-out infinite lesson-breathe}.lesson-mic__btn:disabled{opacity:.5}.lesson-mic__icon{font-size:22px}.lesson-mic__heard,.lesson__heard{color:var(--muted);text-align:center;font-size:15px}@keyframes lesson-breathe{50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--accent,#7a6cf0) 25%, transparent)}}.lesson__link{min-height:48px;font:inherit;color:var(--accent,var(--primary));cursor:pointer;background:0 0;border:0;padding:6px 16px;font-size:16px;font-weight:700;text-decoration:underline}.lesson__feedback{background:var(--lesson-warm-soft);border:2px solid var(--lesson-warm);border-radius:var(--radius,18px);flex-direction:column;gap:8px;padding:14px 16px;animation:.25s ease-out lesson-in;display:flex}.lesson__feedback-head{font-size:1.1em}.lesson__feedback-head b{font-size:1.25em}.lesson__explain{font-size:1em;line-height:1.4}.lesson__big{min-height:52px;padding:10px 22px;font-size:17px}.lesson__feedback--next{background:0 0;border:0;align-items:center;padding:4px 0 0}.lesson__done{flex-direction:column;align-items:center;gap:10px;padding:12px 0;animation:.3s ease-out lesson-in;display:flex}.lesson__stars{color:#e6dcef;gap:8px;font-size:48px;line-height:1;display:flex}.lesson__stars .is-lit{color:#ffc93c;animation:.6s ease-out backwards lesson-pop}.lesson__stars .is-lit:nth-child(2){animation-delay:.15s}.lesson__stars .is-lit:nth-child(3){animation-delay:.3s}.lesson__final{font-size:2.2em;font-weight:800}.lesson__sub{color:var(--muted);margin-top:-6px;font-size:15px}.lesson__actions{flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.wq__tag{background:#fff;border-radius:999px;align-self:flex-start;padding:6px 12px;font-size:15px;font-weight:800}.wq__card{border-radius:var(--radius,18px);background:#fff;flex-direction:column;gap:10px;padding:16px;animation:.25s ease-out lesson-in;display:flex;box-shadow:0 6px 18px #0001}.wq__card.is-nudge{animation:.4s ease-out lesson-nudge}.wq__prompt{font-size:1.15em;font-weight:700;line-height:1.4}.wq__blanks{flex-wrap:wrap;gap:6px;display:flex}.wq__blanks span{border-bottom:4px solid var(--accent,var(--primary));text-transform:lowercase;place-items:center;width:30px;height:40px;font-size:24px;font-weight:800;display:grid}.wq__reveal{color:var(--lesson-ok);font-size:1.8em;font-weight:800}.wq__example{color:var(--muted);font-size:1em;font-style:italic}.wq__choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.wq__choices--def{grid-template-columns:1fr}.wq__choices--two.wq__choices--word{grid-template-columns:1fr 1fr}.wq__choice{border:3px solid var(--line);min-height:56px;font:inherit;color:var(--ink);text-align:center;cursor:pointer;touch-action:manipulation;word-break:break-word;background:#fff;border-radius:16px;padding:10px 14px;font-size:1.1em;font-weight:700;line-height:1.3;animation:.3s ease-out backwards lesson-float;box-shadow:0 4px #0001}.wq__choices--def .wq__choice{text-align:left;font-size:1em;font-weight:600}.wq__choices--two .wq__choice{min-height:72px;font-size:1.2em}.wq__choice:disabled,.wq__tile:disabled,.wq__slot:disabled{opacity:1;cursor:default}.wq__choice:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.wq__choice:focus-visible{outline:4px solid var(--accent,var(--primary));outline-offset:2px}.wq__choice.is-off{opacity:.4;text-decoration:line-through}.wq__choice.is-right{border-color:var(--lesson-ok);background:var(--lesson-ok-soft);animation:.6s ease-out lesson-pop}.wq__slots{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.wq__slot{border:3px dashed var(--line);width:44px;min-height:52px;font:inherit;color:var(--ink);background:#fff;border-radius:12px;place-items:center;padding:0;font-size:26px;font-weight:800;display:grid}.wq__slot.is-filled{border-style:solid;border-color:var(--accent,var(--primary));cursor:pointer}.wq__slot.is-fixed{border-style:solid;border-color:var(--line);background:var(--accent-soft,#f1ecf7)}.wq__tiles{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.wq__tile{background:var(--accent,var(--primary));color:#fff;width:52px;height:56px;font:inherit;cursor:pointer;touch-action:manipulation;border:0;border-radius:14px;font-size:26px;font-weight:800;animation:.3s ease-out backwards lesson-float;box-shadow:inset 0 -5px #0002}.wq__tile:active:not(:disabled){transform:scale(.93)}.wq__tile.is-used{opacity:.2}.wq__tile:focus-visible{outline:4px solid var(--ink);outline-offset:2px}@media (width<=400px){.wq__slot{width:40px;font-size:22px}.wq__tile{width:48px}.mp__card{font-size:1.8em}.mp__card--long{font-size:1.1em}}@media (prefers-reduced-motion:reduce){.lesson :not(.lesson__timer-fill),.lesson :before,.lesson :after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.qq{--qq-right:#2f9e5b;--qq-right-soft:#e2f6e9;--qq-wrong:#e0703a;--qq-wrong-soft:#fdebe1;flex-direction:column;gap:12px;width:100%;max-width:560px;font-size:15px;display:flex}.qq--sprouts{font-size:17px}.qq-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.qq-badge{border:2px solid var(--accent,var(--primary));color:var(--ink);white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:999px;align-items:center;gap:6px;max-width:70%;padding:6px 12px;font-size:.85em;font-weight:800;display:inline-flex;overflow:hidden}.qq-score{color:var(--ink);background:#fff;border-radius:999px;padding:6px 12px;font-size:1em;font-weight:900;box-shadow:0 2px #0001}.qq-dots{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.qq-dot{border:2px solid var(--line);background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s}.qq-dot.is-now{border-color:var(--accent,var(--primary));transform:scale(1.25)}.qq-dot.is-right{background:var(--qq-right);border-color:var(--qq-right)}.qq-dot.is-wrong{background:var(--qq-wrong);border-color:var(--qq-wrong)}.qq-prompt{color:var(--ink);border-radius:var(--radius,18px);background:#fff;margin:4px 0 0;padding:14px 16px;font-size:1.2em;font-weight:800;line-height:1.35;box-shadow:0 3px #0001}.qq--sprouts .qq-prompt{font-size:1.3em}.qq-hint{text-align:center;color:var(--muted);margin:-4px 0 0;font-size:.9em;font-weight:700}.qq-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.qq-choices--list,.qq-choices--two{grid-template-columns:1fr}.qq-choice{border:3px solid var(--line);width:100%;min-height:64px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;background:#fff;border-radius:16px;align-items:center;gap:10px;padding:12px 14px;font-size:1em;font-weight:800;line-height:1.25;transition:transform 80ms,border-color .15s,background .15s,opacity .2s;display:flex;box-shadow:0 4px #0001}.qq-choice:not(:disabled):hover{border-color:var(--accent,var(--primary))}.qq-choice:not(:disabled):active{transform:translateY(2px);box-shadow:0 2px #0001}.qq-choice:disabled{cursor:default}.qq-choice__letter{background:var(--accent-soft,#eee7ff);width:32px;height:32px;color:var(--accent,var(--primary));border-radius:50%;flex:none;place-items:center;font-size:.9em;font-weight:900;display:grid}.qq-choice__text{overflow-wrap:anywhere;flex:1}.qq-choice.is-right{border-color:var(--qq-right);background:var(--qq-right-soft);animation:.35s ease-out qq-pop}.qq-choice.is-right .qq-choice__letter{background:var(--qq-right);color:#fff}.qq-choice.is-wrong{border-color:var(--qq-wrong);background:var(--qq-wrong-soft);animation:.35s qq-shake}.qq-choice.is-wrong .qq-choice__letter{background:var(--qq-wrong);color:#fff}.qq-choice.is-dim{opacity:.45}.qq-mic{flex-direction:column;align-items:center;gap:6px;display:flex}.qq-mic__btn{background:var(--ink);color:#fff;min-height:52px;font:inherit;cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 22px;font-size:.95em;font-weight:800;display:inline-flex}.qq-mic__btn.is-on{background:var(--danger,#d9485f);animation:1s infinite qq-pulse}.qq-mic__heard{color:var(--muted);text-align:center;font-size:.85em;font-weight:700}.qq-after{flex-direction:column;gap:10px;animation:.25s ease-out qq-rise;display:flex}.qq-fact{border-left:6px solid var(--qq-right);background:#fff;border-radius:16px;padding:12px 14px}.qq-fact.is-wrong{border-left-color:var(--qq-wrong)}.qq-fact b{margin-bottom:4px;display:block}.qq-fact p{margin:0;line-height:1.45}.qq-after__actions{flex-wrap:wrap;gap:10px;display:flex}.qq-after__actions>*{flex:160px}.qq-big{min-height:52px;font-size:1em}.qq-why{flex-direction:column;justify-content:center;align-items:center;gap:2px;line-height:1.2;display:flex}.qq-why small{color:var(--muted);font-size:.72em;font-weight:600}.qq-finish{text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;display:flex;box-shadow:0 4px #0001}.qq-finish__burst{font-size:3.4em;animation:.9s ease-out qq-bounce}.qq-finish__stars{gap:6px;font-size:2.2em;line-height:1;display:flex}.qq-finish__stars span{color:var(--line);transition:color .3s}.qq-finish__stars span.is-on{color:#ffc23a;animation:.5s ease-out both qq-pop}.qq-finish__stars span.is-on:nth-child(2){animation-delay:.15s}.qq-finish__stars span.is-on:nth-child(3){animation-delay:.3s}.qq-finish__score{color:var(--ink);font-size:2.6em;font-weight:900;line-height:1}.qq-finish__score small{color:var(--muted);font-size:.5em}.qq-finish__level{color:var(--muted);margin:0;font-size:.9em;font-weight:700}.qq-finish__actions{flex-wrap:wrap;gap:10px;width:100%;display:flex}.qq-finish__actions>*{flex:140px}.qq-dots--finish .qq-dot{width:16px;height:16px}@media (width<=400px){.qq-choice{gap:8px;padding:10px 12px}.qq-choice__letter{width:28px;height:28px}.qq-prompt{padding:12px 14px}}@keyframes qq-pop{0%{transform:scale(.9)}60%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes qq-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes qq-pulse{0%,to{box-shadow:0 0 #d9485f66}50%{box-shadow:0 0 0 10px #d9485f00}}@keyframes qq-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes qq-bounce{0%{transform:scale(.3)}60%{transform:scale(1.15)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.qq *,.qq :before,.qq :after{transition:none!important;animation:none!important}}.qq-say{vertical-align:middle;cursor:pointer;background:#fff;border:0;border-radius:50%;width:44px;height:44px;margin-left:10px;font-size:1.3rem;box-shadow:0 3px #d8d2ef}.qq-say:active{transform:translateY(2px);box-shadow:0 1px #d8d2ef}.rq-passage{text-align:left;background:#fffdf6;border:3px solid #f1e6c8;border-radius:18px;max-height:42vh;margin:8px 0 12px;padding:14px 16px;line-height:1.6;overflow-y:auto;box-shadow:inset 0 -12px 12px -12px #00000014}.rq-passage h2{margin:0 0 6px;font-size:1.15rem}.rq-passage p{margin:0 0 8px}.qq--sprouts .rq-passage{font-size:1.15rem;line-height:1.75}.rq-passage.is-folded{display:none}.rq-toggle{color:#6b6488;cursor:pointer;background:0 0;border:0;padding:4px 0;font-weight:800;text-decoration:underline}:root{--font:"Baloo 2", "Nunito", system-ui, sans-serif;--ink:#2b2a4a;--muted:#6f6c92;--paper:#fffdf6;--sky1:#7fd3ff;--sky2:#b9ecff;--grass:#5ccf6a;--grass-dark:#3a9e48;--sun:#ffcf3f;--sun-dark:#e7a400;--berry:#ff6f91;--berry-dark:#d9476b;--grape:#8a6cff;--line:#e7e2f6;--radius:22px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 15% 10%,#fff6c9 0,#0000 40%),radial-gradient(circle at 85% 90%,#ffd9e6 0,#0000 45%),linear-gradient(#bfeaff,#e9f9ff)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}h1{margin:0;font-size:1.7rem;font-weight:800;line-height:1.1}h2{margin:0 0 8px;font-size:1.15rem;font-weight:800}p{margin:0 0 10px}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--berry-dark);font-weight:700}.row{flex-wrap:wrap;gap:10px;display:flex}.app{background:var(--paper);flex-direction:column;max-width:480px;height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 60px #283c8c2e}.screen{flex:1;min-height:0;position:relative;overflow:hidden}.btn{--b:var(--grass);--bd:var(--grass-dark);color:#fff;background:linear-gradient(180deg, color-mix(in srgb, var(--b) 75%, #fff) 0%, var(--b) 55%);box-shadow:0 5px 0 var(--bd), 0 8px 14px #00000026, inset 0 2px 0 #ffffff8c;text-shadow:0 1px #0000002e;border:0;border-radius:18px;padding:12px 20px;font-size:1.05rem;font-weight:800;transition:transform 80ms,box-shadow 80ms;position:relative}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--bd), 0 3px 6px #00000026, inset 0 2px 0 #ffffff8c;transform:translateY(4px)}.btn--go{--b:var(--grass);--bd:var(--grass-dark)}.btn--sun{--b:var(--sun);--bd:var(--sun-dark);color:#5a3a00;text-shadow:none}.btn--soft{--b:#fff;--bd:#d8d2ef;color:var(--ink);text-shadow:none}.btn--danger{--b:var(--berry);--bd:var(--berry-dark)}.btn--block{width:100%}.btn--sm{border-radius:14px;padding:7px 14px;font-size:.9rem}.btn--link{box-shadow:none;color:var(--ink-soft,#6b6488);text-shadow:none;background:0 0;padding:8px 10px;font-size:.95rem;text-decoration:underline}.btn--link:active:not(:disabled){box-shadow:none;transform:none}.topbar{z-index:5;padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));background:linear-gradient(#fff,#fffaf0);justify-content:space-between;align-items:center;gap:8px;display:flex;box-shadow:0 3px #f0e8d6}.who{text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.who img{object-fit:cover;border:3px solid var(--accent);border-radius:50%;width:44px;height:44px;box-shadow:0 3px #0000001f}.who b{font-size:1.05rem;line-height:1;display:block}.who small{color:var(--muted);font-size:.78rem}.topbar__right{align-items:center;gap:8px;display:flex}.badge{background:#fff3d6;border-radius:999px;padding:4px 12px;font-weight:800;box-shadow:inset 0 -3px #f3d9a0}.ring{--pct:1;background:linear-gradient(90deg, var(--accent-soft) calc(var(--pct) * 100%), #eee 0);border-radius:999px;place-items:center;min-width:56px;height:34px;padding:0 10px;font-size:.9rem;font-weight:800;display:grid;box-shadow:inset 0 -3px #00000014}.dock{padding:6px 6px max(8px, env(safe-area-inset-bottom));z-index:5;background:linear-gradient(#fff,#f6f1ff);grid-template-columns:repeat(5,1fr);display:grid;box-shadow:0 -3px #ece4ff}.dock__btn{color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:0;padding:2px 0;font-size:.78rem;font-weight:800;display:flex}.dock__btn img{object-fit:contain;filter:saturate(.75);width:40px;height:40px;transition:transform .15s}.dock__lock{height:40px;font-size:1.6rem;line-height:40px}.dock__btn.is-on{color:var(--ink)}.dock__btn.is-on img{filter:none;animation:.5s wiggle;transform:translateY(-4px)scale(1.15)}@keyframes wiggle{30%{rotate:-8deg}60%{rotate:6deg}}.toast{background:var(--ink);color:#fff;border-radius:999px;padding:9px 18px;font-weight:800;animation:.35s cubic-bezier(.3,1.6,.5,1) pop-in;box-shadow:0 4px #0003}.toast--level{background:linear-gradient(90deg,#ff7aa8,#a37bff)}.toast--flower,.toast--mission{background:linear-gradient(90deg,#3fb85b,#9ad94f)}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}}.buddy{touch-action:manipulation;cursor:pointer;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.buddy__bg{object-fit:cover;object-position:50% 0;width:100%;height:100%;position:absolute;inset:0}.buddy__shadow{background:radial-gradient(#00000047,#0000 70%);border-radius:50%;height:5%;animation:4.5s ease-in-out infinite shadow;position:absolute;bottom:3%;left:25%;right:25%}.buddy__rig{transform-origin:50% 95%;position:absolute;inset:0}.buddy__rig[data-boing]{animation:.55s cubic-bezier(.3,1.8,.5,1) boing}.buddy__body{transform-origin:50% 95%;animation:4.5s ease-in-out infinite breathe,9s ease-in-out infinite sway;position:absolute;inset:0}.buddy__canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.buddy__body img{object-fit:cover;object-position:50% 0;opacity:0;z-index:1;pointer-events:none;width:100%;height:100%;transition:opacity .18s linear .18s;position:absolute;inset:0}.buddy__body img.is-on{opacity:1;z-index:2;transition:opacity .18s linear}.buddy__body img.buddy__patch{z-index:3;transition:opacity 40ms linear}@keyframes breathe{50%{scale:1.012 1.018}}@keyframes sway{25%{rotate:-.8deg}75%{rotate:.8deg}}@keyframes talk-bob{50%{translate:0 -2px}}@keyframes shadow{50%{transform:scaleX(.94)}}@keyframes boing{30%{transform:translateY(-16px)scaleY(1.04)}60%{transform:translateY(4px)scaleY(.97)}}.buddy.react-giggle .buddy__rig{animation:.8s ease-in-out giggle}.buddy.react-laugh .buddy__rig{animation:.9s ease-in-out laugh}.buddy.react-gasp .buddy__rig{animation:.6s cubic-bezier(.3,1.6,.5,1) gasp}.buddy.react-sigh .buddy__rig{animation:1.1s ease-in-out sigh}.buddy.react-breath .buddy__rig{animation:1s ease-in-out reverse sigh}.buddy.react-hmm .buddy__rig{animation:1.1s ease-in-out hmm}@keyframes giggle{15%,45%,75%{transform:translateY(-5px)rotate(-1.5deg)}30%,60%,90%{transform:translateY(0)rotate(1.5deg)}}@keyframes laugh{20%,60%{transform:translateY(-10px)rotate(-2deg)scale(1.02)}40%,80%{transform:translateY(0)rotate(2deg)}}@keyframes gasp{40%{transform:translateY(-14px)scale(1.04)}}@keyframes sigh{50%{transform:translateY(8px)scaleY(.98)}}@keyframes hmm{30%,70%{transform:rotate(-3deg)translate(-4px)}}.buddy.is-dancing .buddy__rig{animation:2s ease-in-out infinite dance}.buddy.is-dancing .buddy__shadow{animation:.5s ease-in-out infinite shadow}@keyframes dance{0%{transform:translateY(0)rotate(0)}12.5%{transform:translateY(-14px)rotate(-6deg)translate(-10px)}25%{transform:translateY(0)rotate(0)translate(-14px)scaleY(.97)}37.5%{transform:translateY(-14px)rotate(6deg)translate(10px)}50%{transform:translateY(0)rotate(0)translate(14px)scaleY(.97)}62.5%{transform:translateY(-18px)rotate(-4deg)}75%{transform:translateY(0)scaleX(-1)scaleY(.97)}87.5%{transform:translateY(-18px)scaleX(-1)rotate(4deg)}to{transform:translateY(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.buddy__body,.buddy__rig,.buddy__shadow{animation:none!important}}.home{isolation:isolate;flex-direction:column;display:flex;position:absolute;inset:0}.home__stage{z-index:0;position:absolute;inset:0}.speech{z-index:3;background:#fff;border-radius:20px;max-width:82%;padding:9px 16px;font-weight:700;animation:.3s pop-in;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 5px #0000001a}.stage-tools{z-index:3;gap:8px;display:grid;position:absolute;top:12px;right:12px}.round-btn{background:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:1.4rem;box-shadow:0 4px #d8d2ef}.round-btn.is-on{background:var(--sun);box-shadow:0 4px 0 var(--sun-dark);animation:.5s infinite wiggle}.help-card{z-index:6;background:#fffbea;border:3px solid #ffd76a;border-radius:20px;padding:12px 14px;animation:.3s pop-in;position:absolute;top:70px;left:12px;right:12px;box-shadow:0 6px #0000001a}.help-card ul{margin:6px 0 10px;padding-left:18px}.chat{z-index:2;background:linear-gradient(#0000,#fffdf699 20%,#fffdf6f2 50%);flex-direction:column;gap:6px;height:50%;margin-top:auto;padding:10px 12px;display:flex;position:relative}.chat__list{flex-direction:column;flex:1;gap:8px;min-height:0;padding:30px 2px 4px;display:flex;overflow-y:auto}.bubble-row{display:flex}.bubble-row--me{justify-content:flex-end}.bubble{white-space:pre-wrap;border-radius:20px;max-width:84%;padding:10px 14px;font-size:1.02rem;font-weight:600;line-height:1.35;animation:.25s pop-in;box-shadow:0 3px #00000014}.bubble--me{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 80%, #fff), var(--accent));color:#fff;border-bottom-right-radius:6px}.bubble--them{border:3px solid var(--accent-soft);background:#fff;border-bottom-left-radius:6px}.band--sprouts .bubble{font-size:1.12rem}.dots{gap:4px;padding:4px 0;display:inline-flex}.dots i{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1s infinite dot}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{50%{opacity:.4;transform:translateY(-5px)}}.chips{scrollbar-width:none;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.chip{background:#fff;border:0;border-radius:999px;flex:none;padding:6px 13px;font-size:.9rem;font-weight:700;box-shadow:0 3px #e2dbf5}.chip.is-on{background:var(--sun);box-shadow:0 3px 0 var(--sun-dark)}.hearing{background:#fff;border-radius:999px;align-self:center;padding:4px 14px;font-weight:700;box-shadow:0 3px #e2dbf5}.composer{align-items:center;gap:8px;display:flex}.composer input{border:3px solid var(--line);background:#fff;border-radius:999px;outline:none;flex:1;min-width:0;padding:11px 16px;font-weight:600}.composer input:focus{border-color:var(--accent)}.mic,.send{color:#fff;border:0;border-radius:50%;flex:none;width:52px;height:52px;font-size:1.35rem}.mic{background:linear-gradient(180deg, #ff9db5, var(--berry));box-shadow:0 4px 0 var(--berry-dark)}.mic.is-live{animation:1s infinite pulse}.send{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 70%, #fff), var(--accent));box-shadow:0 4px #0003}@keyframes pulse{50%{box-shadow:0 4px 0 var(--berry-dark), 0 0 0 10px #ff6f9140}}.limit-card{border-radius:var(--radius);background:#fff;padding:14px;box-shadow:0 5px #e7e0fa}.map{background:#7fd3ff;position:absolute;inset:0;overflow:hidden}.map__bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.map__path{width:100%;height:100%;position:absolute;inset:0}.map__path path{fill:none;stroke:#fff;stroke-width:1.2px;stroke-dasharray:2 2.5;stroke-linecap:round;opacity:.9;vector-effect:non-scaling-stroke;stroke-width:6px}.map-node{background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:0;animation:3s ease-in-out infinite float;display:flex;position:absolute;transform:translate(-50%,-50%)}.map-node:nth-of-type(2){animation-delay:-.8s}.map-node:nth-of-type(3){animation-delay:-1.6s}.map-node__icon{background:radial-gradient(circle at 35% 30%,#fff,#fff6d8 60%,#ffe39a);border:4px solid #fff;border-radius:50%;place-items:center;width:92px;height:92px;font-size:2.6rem;display:grid;box-shadow:0 6px #d9a42b,0 10px 18px #00000040}.map-node__icon img{object-fit:contain;width:78px;height:78px}.map-node__label{text-align:center;background:#fff;border-radius:14px;padding:2px 10px;line-height:1.1;box-shadow:0 3px #00000026}.map-node__label b{font-size:.95rem;display:block}.map-node__stars{color:#e7a400;font-size:.8rem;font-weight:800}.map-node:active .map-node__icon{transform:scale(.94)}.map__title{background:#ffffffeb;border-radius:16px;padding:6px 12px;position:absolute;top:10px;left:12px;box-shadow:0 4px #0000001f}.map__title b{font-size:1.2rem;display:block}.map__title small{color:var(--muted)}@keyframes float{50%{translate:0 -6px}}.page{padding:14px 14px 28px;position:absolute;inset:0;overflow-y:auto}.page--play{background:linear-gradient(#e9f6ff,#fffdf6 40%)}.page--garden{background:linear-gradient(#e8f9e4,#fffdf6 40%)}.page--parent{background:#f7f6fc}.page-hero{align-items:center;gap:12px;margin-bottom:12px;display:flex}.page-hero img{object-fit:contain;filter:drop-shadow(0 6px 6px #0000002e);width:84px;height:84px;animation:3s ease-in-out infinite float}.page-hero p{color:var(--muted);margin:2px 0 0;font-weight:600}.panel{border-radius:var(--radius);background:#fff;margin-bottom:14px;padding:14px;box-shadow:0 5px #ece6fb}.panel--danger{box-shadow:0 5px #fbdde5}.seg{background:#fff;border-radius:18px;margin-bottom:14px;padding:4px;display:flex;box-shadow:0 4px #e2dbf5}.seg button{color:var(--muted);background:0 0;border:0;border-radius:14px;flex:1;padding:8px 6px;font-weight:800}.seg button.is-on{background:var(--sun);color:#5a3a00;box-shadow:0 3px 0 var(--sun-dark)}.tiles{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tile{border-radius:var(--radius);text-align:center;background:linear-gradient(#fff,#f8f4ff);border:0;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;display:flex;box-shadow:0 6px #e0d7f7,0 10px 16px #503ca014}.tile:active{transform:translateY(4px);box-shadow:0 2px #e0d7f7}.tile__icon{filter:drop-shadow(0 3px 2px #00000026);font-size:2.6rem}.tile small{color:var(--muted);font-weight:600}.mission{background:#f7f5ff;border-radius:16px;align-items:center;gap:10px;margin-bottom:8px;padding:10px;font-weight:700;display:flex}.mission.is-done{color:var(--grass-dark);background:#e6f8e2}.mission__check{width:28px;height:28px;color:var(--grass-dark);background:#fff;border-radius:50%;place-items:center;font-weight:800;display:grid;box-shadow:inset 0 -3px #e2dbf5}.mission__reward{object-fit:contain;width:30px;height:30px;margin-left:auto}.garden{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.plot{aspect-ratio:.8;text-align:center;background:linear-gradient(#f4fbef 58%,#b98b5e 58%);border-radius:16px;flex-direction:column;justify-content:flex-end;align-items:center;padding:6px;font-size:.72rem;font-weight:700;display:flex;box-shadow:inset 0 -4px #9b7048}.plot__soil{background:#8d6440;border-radius:4px;width:50%;height:8px;margin-bottom:18%}.bar{background:#eee;border-radius:999px;height:14px;margin-bottom:12px;overflow:hidden;box-shadow:inset 0 2px #0000000f}.bar i{background:linear-gradient(90deg, #ff9ac2, var(--grape));border-radius:999px;height:100%;display:block}.skills{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.skill{text-align:center;background:#f7f5ff;border-radius:16px;flex-direction:column;align-items:center;padding:8px 4px;display:flex}.skill span{font-size:1.5rem}.skill small{color:var(--muted);font-size:.72rem}.setup{background:linear-gradient(#9fe0ff,#fffdf6 55%);flex-direction:column;gap:14px;padding:18px 16px 28px;display:flex;position:absolute;inset:0;overflow-y:auto}.setup__hero{justify-content:center;gap:6px;padding-top:8px;display:flex}.setup__hero img{object-fit:cover;border:4px solid #fff;border-radius:50%;width:70px;height:70px;animation:2.4s ease-in-out infinite hop;box-shadow:0 5px #0000001f}@keyframes hop{0%,60%,to{transform:translateY(0)}70%{transform:translateY(-12px)}80%{transform:translateY(0)}}.setup-card{background:#fff;border-radius:26px;padding:18px;box-shadow:0 6px #e7e0fa,0 12px 24px #3c50a01f}.logo{color:var(--grass-dark);margin-bottom:8px;font-size:2.1rem;font-weight:800;line-height:1}.logo small{color:var(--muted);margin-top:4px;font-size:.8rem;font-weight:600;display:block}.perks{margin:0 0 14px;padding:0;font-weight:700;list-style:none}.consent{background:#f7f6fc;border-radius:16px;margin-bottom:12px;padding:10px 12px;font-size:.92rem}.check,.toggle{align-items:flex-start;gap:10px;margin-bottom:12px;font-weight:600;display:flex}.check input,.toggle input{width:22px;height:22px;accent-color:var(--grass-dark);flex:none;margin-top:2px}.field{flex-direction:column;gap:6px;margin-bottom:12px;font-weight:700;display:flex}.field input:not([type=range]),.field select{border:3px solid var(--line);background:#fff;border-radius:14px;outline:none;padding:10px 12px;font-weight:600}.field input:focus{border-color:var(--grass)}.field input[type=range]{accent-color:var(--grass-dark)}.field--row{flex-direction:row;justify-content:space-between;align-items:center}.band-pill{color:#fff;border-radius:999px;margin-bottom:6px;padding:4px 14px;font-weight:800;display:inline-block}.buddy-pick{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;display:grid}.buddy-pick__card{box-shadow:0 5px 0 var(--accent), 0 0 0 3px var(--accent) inset;background:#fff;border:0;border-radius:22px;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;display:flex}.buddy-pick__card img{object-fit:cover;border-radius:50%;width:96px;height:96px}.buddy-pick__card small{color:var(--muted);text-align:center;font-size:.78rem}.gate{text-align:center}.gate__lock{font-size:2.6rem}.pin{flex-direction:column;align-items:center;gap:14px;margin:12px 0;display:flex}.pin__dots{gap:12px;min-height:18px;display:flex}.pin__dots span{border:3px solid var(--line);border-radius:50%;width:16px;height:16px;transition:background .1s,border-color .1s}.pin__dots span.is-on{background:var(--ink);border-color:var(--ink)}.pin__pad{grid-template-columns:repeat(3,64px);gap:10px;display:grid}.pin__key{height:56px;color:var(--ink);background:#fff;border:0;border-radius:16px;font-size:1.4rem;font-weight:800;box-shadow:0 4px #d8d2ef}.pin__key:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #d8d2ef}.pin__key:disabled{opacity:.4}.pin__key--ok{background:var(--grass);color:#fff;box-shadow:0 4px 0 var(--grass-dark);font-size:1.05rem}.gate .row{justify-content:center}.who-pick{background:linear-gradient(#9fe0ff,#fffdf6 60%);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:20px;display:flex;position:absolute;inset:0}.who-pick__grid{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.who-pick__card{background:#fff;border:0;border-radius:24px;flex-direction:column;align-items:center;min-width:120px;padding:12px 14px;display:flex;box-shadow:0 6px #e0d7f7}.who-pick__card img{object-fit:cover;border-radius:50%;width:90px;height:90px}.who-pick__card small{color:var(--muted)}.break{text-align:center;color:#fff;background:linear-gradient(#2c2a6b,#5a4ba8);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:absolute;inset:0}.break__moon{font-size:4rem;animation:3s ease-in-out infinite float}.page--parent h1{margin-bottom:12px}.kid-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.kid-head img{object-fit:cover;border-radius:50%;width:52px;height:52px}.kid-head small{color:var(--muted);display:block}.kid-head .btn{margin-left:auto}.alerts{gap:8px;margin-bottom:10px;display:grid}.alert{border-radius:14px;padding:10px 12px;font-size:.9rem}.alert small{color:var(--muted);display:block}.alert p{margin:4px 0 0}.alert--important{background:#fff1f3;border:2px solid #ffc2cf}.alert--info{background:#f0f7ff;border:2px solid #cbe2ff}.skills--small .skill b{font-size:.9rem}.plans{border-collapse:collapse;width:100%;margin-bottom:10px;font-size:.9rem}.plans th{text-align:left;color:var(--muted);font-size:.78rem}.plans td{border-top:1px solid var(--line);padding:6px 4px}.plan-pick button.is-on{border-color:var(--grass);background:#effaec}.notice{background:#fff8dd;border-radius:14px;margin-top:10px;padding:10px 12px;font-size:.9rem}.notice--warn{color:#7a2410;background:#ffe4dc}.game{background:linear-gradient(var(--accent-soft), #fffdf6 60%);flex-direction:column;align-items:center;gap:10px;padding:12px 12px 20px;display:flex;position:absolute;inset:0;overflow-y:auto}.game__head{justify-content:space-between;align-items:center;gap:8px;width:100%;font-weight:800;display:flex}.game__head .btn{--b:#fff;--bd:#d8d2ef;color:var(--ink);text-shadow:none;padding:6px 12px;font-size:.9rem}.game__score{color:var(--muted);font-size:.85rem;font-weight:800}.game__buddy{align-items:center;gap:10px;width:100%;min-height:92px;display:flex;position:relative}.game__face{border:4px solid var(--accent);background:#fff;border-radius:50%;flex:none;width:92px;height:92px;position:relative;overflow:hidden;box-shadow:0 4px #0000001f}.game__face .buddy__bg,.game__face .buddy__shadow{display:none}.game__face .buddy__body img{top:-4%;left:-65%;object-fit:initial;width:230%;height:auto;inset:auto}.speech--game{flex:1;max-width:none;animation:none;position:static;transform:none}.game__status{font-weight:800}.c4{background:#4b5fd1;border-radius:16px;grid-template-columns:repeat(7,1fr);gap:4px;width:min(100%,380px);padding:8px;display:grid;box-shadow:0 6px #33449c}.c4__col{background:0 0;border:0;border-radius:10px;gap:4px;padding:2px;display:grid}.c4__col:not(:disabled):hover{background:#fff2}.c4__col:disabled{opacity:1}.c4__cell{aspect-ratio:1;background:#e9ecff;border-radius:50%;box-shadow:inset 0 3px #0002}.c4__cell--1{background:#ffd84d;animation:.25s ease-in drop}.c4__cell--2{background:var(--accent);animation:.25s ease-in drop}.c4__cell.is-win{outline:3px solid #fff}@keyframes drop{0%{transform:translateY(-40px)}}.rv{background:#2f7a55;border-radius:12px;grid-template-columns:repeat(8,1fr);gap:2px;width:min(100%,380px);padding:6px;display:grid}.rv__sq{aspect-ratio:1;background:#3f9a6c;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.rv__sq.is-legal:after{content:"";background:#fff6;border-radius:50%;width:26%;height:26%}.rv__disc{border-radius:50%;width:82%;height:82%;transition:background .25s}.rv__disc--1{background:#fffaf0;box-shadow:inset 0 -3px #0002}.rv__disc--2{background:#2b2440;box-shadow:inset 0 -3px #0006}.wyr{flex-direction:column;gap:10px;width:100%;display:flex}.wyr__card{border-radius:var(--radius);background:#fff;min-height:90px;padding:18px;font-size:1.05rem;line-height:1.45;box-shadow:0 4px #0001}.toasts{pointer-events:none;z-index:20;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:64px;left:0;right:0}.toast{background:var(--ink);color:#fff;border-radius:999px;padding:8px 16px;font-size:.88rem;font-weight:700;animation:.25s ease-out rise}.seg--sm{margin:0}.seg--sm button{padding:4px 12px;font-size:.82rem}.chess{background:#5b4a7a;border-radius:12px;grid-template-columns:repeat(8,1fr);width:min(100%,380px);padding:6px;display:grid;box-shadow:0 6px #3e3157;container-type:inline-size}.chess__sq{aspect-ratio:1;border:0;place-items:center;padding:0;font-size:11cqi;line-height:1;display:grid;position:relative}.chess__sq--light{background:#f4ecdf}.chess__sq--dark{background:#b49ad1}.chess__sq.is-last{box-shadow:inset 0 0 0 100vmax #ffd84d66}.chess__sq.is-selected{box-shadow:inset 0 0 0 100vmax #7fd6a888}.chess__sq.is-check{background:radial-gradient(circle,#ff5a6e 0%,#ff5a6e99 45%,#0000 75%),#f4b6be}.chess__sq.is-target:after{content:"";background:#2e234055;border-radius:50%;width:28%;height:28%;position:absolute}.chess__sq.is-capture:after{content:"";border:3px solid #2e234055;border-radius:50%;position:absolute;inset:6%}.chess__piece{z-index:1;-webkit-user-select:none;user-select:none;position:relative}.chess__piece--w{color:#fffaf0;text-shadow:0 0 1px #2e2340,0 0 1px #2e2340,0 1px #2e2340,0 -1px #2e2340,1px 0 #2e2340,-1px 0 #2e2340}.chess__piece--b{color:#2b2440;text-shadow:0 1px #fff6}.chess__coord{color:#2e234088;font-size:.55rem;font-weight:800;line-height:1;position:absolute}.chess__coord--rank{top:2px;left:2px}.chess__coord--file{bottom:2px;right:3px}.eights{flex-direction:column;align-items:center;gap:12px;width:min(100%,380px);display:flex}.eights__them{justify-content:center;align-items:center;min-height:52px;display:flex}.eights__them .eights__back{width:30px;height:44px;margin-left:-14px}.eights__them .eights__back:first-child{margin-left:0}.eights__them small{color:var(--muted);margin-left:8px;font-weight:800}.eights__back{background:repeating-linear-gradient(45deg, var(--accent) 0 5px, #fff5 5px 8px), var(--accent);border:2px solid #fff;border-radius:6px;place-items:center;display:grid;box-shadow:0 2px 4px #0002}.eights__table{background:#2f7a55;border-radius:16px;justify-content:center;align-items:center;gap:18px;padding:12px 18px;display:flex;box-shadow:inset 0 2px 8px #0003}.eights__pile{background:0 0;border:0;padding:0}.eights__pile:disabled{opacity:1}.eights__back--pile{color:#fff;text-shadow:0 1px 2px #0008;width:58px;height:82px;font-weight:800}.eights__back--pile.is-ready{outline:3px solid #ffd84d;animation:1s ease-in-out infinite alternate eights-pulse}@keyframes eights-pulse{to{transform:translateY(-3px)}}.eights__card{color:#2b2440;background:#fffdf8;border:1px solid #d9cfe3;border-radius:7px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;width:52px;height:74px;line-height:1;display:flex;box-shadow:0 2px 4px #0002}.eights__card b{font-size:1.1rem}.eights__card i{font-size:1.35rem;font-style:normal}.eights__card--red{color:#d9485f}.eights__card--top{width:58px;height:82px;animation:.25s ease-out eights-land}@keyframes eights-land{0%{opacity:.4;transform:translateY(-16px)rotate(-6deg)}}.eights__suit{color:#2b2440;background:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:4px 10px;font-size:1.5rem;line-height:1;display:flex}.eights__suit small{color:var(--muted);text-transform:uppercase;font-size:.6rem;font-weight:800}.eights__suit--red{color:#d9485f}.eights__picker{background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;display:flex;box-shadow:0 4px 14px #0002}.eights__pick{border:2px solid var(--line);color:#2b2440;background:#fff;border-radius:50%;width:44px;height:44px;font-size:1.4rem}.eights__pick--red{color:#d9485f}.eights__pick:hover{border-color:var(--accent)}.eights__hand{scroll-snap-type:x proximity;width:100%;padding:14px 8px 6px;display:flex;overflow-x:auto}.eights__hand:after{content:"";flex:none;width:8px}.eights__slot{scroll-snap-align:start;background:0 0;border:0;flex:none;margin-left:-12px;padding:0;transition:transform .15s}.eights__slot:first-child{margin-left:auto}.eights__slot:last-of-type{margin-right:auto}.eights__slot.is-legal{transform:translateY(-10px)}.eights__slot.is-legal .eights__card{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), 0 4px 8px #0002}.eights__slot.is-dim .eights__card{filter:brightness(.9)saturate(.6)}.eights__slot.is-drawn .eights__card{animation:.25s ease-out eights-land}.sheet-scrim{z-index:30;background:#140e1e8c;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.sheet{background:#fff;border-radius:24px 24px 0 0;width:100%;max-height:92%;padding:20px 18px 24px;animation:.25s ease-out rise;position:relative;overflow-y:auto}.sheet h2{margin:0 0 4px}.sheet__close{background:#f1ecf7;border:0;border-radius:50%;width:32px;height:32px;font-size:1.2rem;position:absolute;top:10px;right:12px}.plans{border-collapse:collapse;width:100%;margin:12px 0 6px;font-size:.86rem}.plans th{text-align:left;color:var(--muted);padding:4px;font-size:.75rem}.plans td{border-top:1px solid var(--line);vertical-align:top;padding:7px 4px}.plans td:first-child{font-weight:700}.plan-pick{gap:8px;margin:12px 0;display:grid}.plan-pick button{text-align:left;border:2px solid var(--line);background:#fff;border-radius:14px;padding:10px 12px}.plan-pick button.is-active{border-color:var(--accent);background:var(--accent-soft)}.plan-pick small{color:var(--muted)}.trial-note{background:#fff8e1;border-radius:12px;padding:10px;font-size:.85rem}.center{text-align:center}.btn--ad{color:#fff;background:#2e2340}.ad-banner{min-height:60px;color:var(--muted);background:repeating-linear-gradient(45deg,#f4f0f8,#f4f0f8 10px,#ece6f3 10px 20px);border-radius:12px;place-items:center;margin:16px 0;font-size:.8rem;display:grid}.ad-mock{text-align:center;background:#fff;border-radius:20px;align-self:center;gap:10px;width:100%;max-width:360px;margin:auto 16px;padding:18px;display:grid}.ad-mock__art{color:#fff;background:linear-gradient(135deg,#7a6cf0,#ff7aa8);border-radius:14px;place-items:center;height:180px;font-weight:800;display:grid}.game__portrait{object-fit:cover;width:100%;height:100%;display:block}.game__portrait.is-speaking{animation:.45s ease-in-out infinite talk-bob}.game__portrait.mood-excited,.game__portrait.mood-happy{animation:1.2s ease-in-out hop}.meter{background:var(--line);border-radius:999px;height:12px;margin:6px 0;overflow:hidden}.meter span{background:var(--grass);border-radius:999px;height:100%;transition:width .3s;display:block}.extra-kids{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:10px 0;display:flex}.who-pick__card.is-locked{opacity:.55;filter:grayscale(.6)}.badge--seeds{cursor:pointer;font:inherit;background:#e5f6e5;border:0;font-weight:800;box-shadow:inset 0 -3px #b9e3b4}.seed-pouch{white-space:nowrap;background:#fff;border-radius:999px;align-self:center;margin-left:auto;padding:6px 14px;font-weight:800;box-shadow:0 3px #d8d2ef}.shop__how{text-align:center;color:var(--muted,#6b6488);margin:4px 0 12px;font-size:.9rem}.shop__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.shop-item{text-align:center;background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:10px;display:flex;box-shadow:0 4px #e7e2f6}.shop-item small{color:var(--muted,#6b6488);min-height:2.2em;font-size:.75rem}.shop-item__art{place-items:center;width:84px;height:84px;display:grid}.shop-item__art img{object-fit:contain;width:100%;height:100%}.shop-item__art span{font-size:3.4rem}.shop-item.is-owned{opacity:.75}.shop-item .btn{width:100%;padding:7px 6px;font-size:.82rem}.garden-things{background:linear-gradient(#cfeec6,#9fd88f);border-radius:16px;flex-wrap:wrap;gap:6px;padding:10px;display:flex}.garden-things img{object-fit:contain;filter:drop-shadow(0 3px 2px #00000026);width:72px;height:72px}.goal{align-items:center;gap:12px;display:flex}.goal__emoji{font-size:2.4rem}.goal>div{flex:1}.goal.is-reached{background:#fff6d6;animation:1.6s ease-in-out infinite pulse-goal}@keyframes pulse-goal{50%{box-shadow:0 0 0 6px #ffc83c59}}.dash{flex-direction:column;gap:12px;margin:10px 0;display:flex}.dash-stats{text-align:center;grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.dash-stats div{background:#f7f5fd;border-radius:12px;padding:6px 2px}.dash-stats b{font-size:1.05rem;display:block}.dash-stats small{color:var(--muted,#6b6488);font-size:.7rem}.dash-chart{align-items:flex-end;gap:6px;height:90px;margin-top:10px;padding:0 2px;display:flex}.dash-chart__col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;height:100%;display:flex}.dash-chart__col i{background:var(--grass);border-radius:6px 6px 2px 2px;width:100%;min-height:3px}.dash-chart__col small{color:var(--muted,#6b6488);font-size:.7rem}.dash-highlights{flex-direction:column;gap:4px;margin:0;font-size:.9rem;display:flex}.dash-skills{border-collapse:collapse;width:100%;font-size:.85rem}.dash-skills th{text-align:left;color:var(--muted,#6b6488);padding:4px;font-size:.72rem}.dash-skills td{border-top:1px solid var(--line);padding:6px 4px}.dash-block h3{margin:4px 0;font-size:1rem}.dash-recent{margin:0;padding-left:18px;font-size:.88rem}.dash-recent small{color:var(--muted,#6b6488)}.dash-goal{align-items:center;gap:10px;margin:8px 0;display:flex}.dash-goal>div{flex:1}.dash-goal-form{flex-direction:column;gap:8px;margin-top:8px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.signin{flex-direction:column;gap:8px;margin:8px 0;display:flex}.signin__btn{justify-content:center;align-items:center;gap:10px;display:flex}.signin__logo{color:#fff;background:#111;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.85rem;font-weight:900;display:inline-grid}.signin__logo--g{color:#4285f4;background:#fff;box-shadow:0 0 0 1px #dadce0}.signin__email{gap:8px;display:flex}.signin__email input{border:2px solid var(--line);background:#fff;border-radius:14px;flex:1;min-width:0;padding:10px 12px}.modal{z-index:50;background:#1e183c73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal__card{background:#fff;border-radius:22px;width:100%;max-width:420px;padding:20px;box-shadow:0 20px 60px #00000040}.col{flex-direction:column;gap:8px;margin:12px 0 6px;display:flex}.gofish__table{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.gofish__books{text-align:center;background:#ffffffb3;border-radius:12px;flex-direction:column;flex:1;align-items:center;min-height:52px;padding:6px 8px;display:flex}.gofish__books small{opacity:.7;font-size:.72rem}.gofish__books b{letter-spacing:.04em;font-size:.95rem}.gofish__ask{justify-content:center;display:flex}.guide-host{display:contents}.game__title{align-items:center;gap:6px;display:inline-flex}.game__help{border:2px solid var(--accent);width:28px;height:28px;color:var(--accent);background:#fff;border-radius:50%;place-items:center;padding:0;font-size:.95rem;font-weight:900;line-height:1;display:grid}.guide{background:linear-gradient(var(--accent-soft), #fffdf6 60%);flex-direction:column;align-items:center;gap:14px;padding:18px 16px 24px;display:flex;position:absolute;inset:0;overflow-y:auto}.guide__head{align-self:stretch;align-items:center;gap:12px;display:flex}.guide__face{object-fit:cover;border:3px solid #fff;border-radius:50%;width:64px;height:64px;box-shadow:0 3px 8px #0002}.guide__head small{color:var(--muted);font-weight:700;display:block}.guide__head b{font-size:1.35rem}.guide__card{text-align:center;background:#fff;border-radius:22px;width:min(100%,420px);padding:22px 18px;animation:.25s ease-out guide-in;box-shadow:0 6px 18px #0001}.guide__pic{letter-spacing:.04em;min-height:4.2rem;font-size:3.4rem;line-height:1.2}.guide__say{margin:12px 0 0;font-size:1.15rem;font-weight:700;line-height:1.45}.guide__dots{gap:8px;display:flex}.guide__dots span{background:#0002;border-radius:50%;width:10px;height:10px;transition:background .2s,transform .2s}.guide__dots .is-done{background:var(--accent-soft)}.guide__dots .is-now{background:var(--accent);transform:scale(1.3)}.guide__nav{gap:10px;width:min(100%,420px);display:flex}.guide__nav .btn{flex:1;min-height:52px;font-size:1.05rem}.guide__next{flex:2!important}.guide__skip{font-size:.95rem}.guide__who{margin:0}@keyframes guide-in{0%{opacity:0;transform:translateY(8px)}}
