@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(/assets/fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}:root{--bg:#fbf4dc;--ink:#3f2c22;--coral:#f25c6e;--coral-deep:#d94658;--card:#fffdf8;--muted:#7d93a6;--green:#2fce5a;--green-deep:#1b9a40;--sky:#7ecff2;--sky-deep:#5aafd4;--blue:#2ea8ff;--blue-deep:#1288cc;--panel:#d4c2fb;--display:#0d3b2c;--display-text:#3ee07a;--tile:#c6eead;--tile-deep:#a8d48e;--orange:#ff7a33;--red:#ff5c5c;--shadow:0 10px 28px #5a371414;--font:"Fredoka", "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;color:var(--ink);background:var(--bg);font-family:var(--font);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-weight:500;line-height:1.4}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior:none;margin:0}button,input,a{touch-action:manipulation;font-family:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}ul{margin:0;padding:0;list-style:none}:focus-visible{outline-offset:2px;outline:3px solid #1d4f91}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.landing{max-width:1040px;margin:0 auto;padding:26px 22px 56px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.brand{color:var(--coral);letter-spacing:-.02em;align-items:center;gap:8px;font-size:clamp(1.55rem,2.4vw,1.9rem);font-weight:700;display:flex}.brand-mark{font-size:1.15em;line-height:1}.lang-picker{flex-shrink:0;position:relative}.lang-picker-button{color:var(--ink);background:#fff;border:none;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:8px 16px;font-size:1rem;font-weight:700;display:inline-flex;box-shadow:0 3px #5032140f,0 8px 16px #5032140f}.lang-picker-button[aria-expanded=true]{background:#fff6ea}.lang-globe{flex-shrink:0;display:block}.lang-menu{z-index:5;width:max-content;min-width:100%;box-shadow:var(--shadow);background:#fff;border-radius:16px;margin:0;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.lang-menu[hidden]{display:none}.lang-option{min-height:44px;color:var(--ink);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;font-weight:700;display:flex}.lang-option:hover{background:#fff6ea}.lang-option[aria-selected=true]{color:#b73a4c;background:#fde8ec}.lang-option[aria-selected=true]:hover{background:#fde8ec}.lang-option:focus-visible{outline-offset:-2px}.hero{text-align:center}.hero h1{color:#b73a4c;letter-spacing:-.025em;max-width:100%;font-size:clamp(1.7rem,3.5vw,2.7rem);font-weight:700;line-height:1.12;display:inline-block}.hero-line{white-space:nowrap;display:block}.lede{max-width:36rem;color:var(--ink);margin:18px auto 0;font-size:1.16rem;font-weight:500;line-height:1.45}.chips{flex-wrap:wrap;justify-content:center;gap:10px 12px;max-width:760px;margin:22px auto 0;display:flex}.chip{background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:.98rem;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #5a371414}.games h2{margin:32px 0 14px;font-size:1.45rem;font-weight:700}.game-grid{grid-template-columns:1fr;gap:16px;display:grid}.game-card{background:var(--card);box-shadow:var(--shadow);border-radius:26px;flex-direction:column;align-items:flex-start;gap:4px;min-height:214px;padding:18px 18px 16px;display:flex}.game-icon{font-size:2.35rem;line-height:1}.numbers-icon{background:#e7dece;border-radius:10px;grid-template-columns:1fr 1fr;gap:3px;width:48px;height:48px;padding:4px;display:grid}.numbers-icon span{color:#6a5b4e;background:#f6f0e4;border-radius:4px;place-items:center;font-size:.82rem;font-weight:700;display:grid}.game-card h3{margin-top:6px;font-size:1.22rem;font-weight:700}.game-card p{color:var(--muted);flex:1;margin-bottom:12px;font-size:.98rem;line-height:1.35}.play-btn,.soon-btn{border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;margin-top:auto;font-size:1.12rem;font-weight:700;text-decoration:none;display:inline-flex}.play-btn{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-deep)}.play-btn:active{box-shadow:0 1px 0 var(--green-deep);transform:translateY(3px)}.play-icon{border:7px solid #0000;border-left:12px solid #fff;border-right-width:0;width:0;height:0}.soon-btn{background:var(--sky);color:#1d3344;box-shadow:0 4px 0 var(--sky-deep);cursor:default}.soon-btn:disabled{opacity:1}.tip{background:var(--card);box-shadow:var(--shadow);border-radius:26px;margin-top:22px;padding:16px 20px 18px}.tip h2{align-items:center;gap:8px;margin-bottom:6px;font-size:1.2rem;font-weight:700;display:flex}.tip p{color:var(--ink);font-size:1.02rem;line-height:1.45}.legal{color:#8ea0b3;text-align:center;justify-content:center;align-items:center;gap:8px;margin-top:26px;font-size:.98rem;display:flex}.shop-page{height:100dvh;padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));flex-direction:column;display:flex}.shop-top{grid-template-columns:1fr auto 1fr;align-items:center;min-height:56px;margin-bottom:8px;display:grid}.shop-brand{color:var(--coral);grid-column:2;align-items:center;gap:8px;display:flex}.shop-brand h1{letter-spacing:-.02em;font-size:clamp(1.55rem,3vw,2.3rem);font-weight:700}.exit-btn{color:var(--ink);background:#fff;border:none;border-radius:999px;grid-column:3;justify-self:end;align-items:center;gap:6px;min-height:44px;padding:8px 16px;font-size:1.02rem;font-weight:700;display:inline-flex;box-shadow:0 3px #50321414,0 8px 18px #50321414}.exit-btn:active{transform:translateY(2px)}.shop-main{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,430px);gap:14px;min-height:0;display:grid}.panel{min-height:0;box-shadow:var(--shadow);border-radius:28px;flex-direction:column;padding:14px;display:flex}.shelf{background:var(--card)}.register{background:var(--panel);gap:8px}.categories{scrollbar-width:none;gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.categories::-webkit-scrollbar{display:none}.cat-tab{color:#fff;white-space:nowrap;border:none;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:42px;padding:8px 14px;font-size:.98rem;font-weight:700;display:inline-flex}.cat-tab[data-cat=fruit]{background:#ef3d3d}.cat-tab[data-cat=vegetables]{background:#2f78ee}.cat-tab[data-cat=dairy]{background:#2f9fe6}.cat-tab[data-cat=meat]{color:#3a2414;background:#ffb020}.cat-tab[data-cat=bakery]{background:#14b3ae}.cat-tab[data-cat=toys]{background:#3d78f0}.cat-tab[aria-selected=true]{box-shadow:0 0 0 3px #fff,0 0 0 5px #462d1447}.product-scroll{scrollbar-width:thin;scrollbar-color:#e4d5ae transparent;flex:1;min-height:0;overflow:auto;container-type:inline-size}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:2px 2px 8px;display:grid}@container (width>=420px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (width>=560px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@container (width>=700px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.product{background:var(--tile);min-height:132px;color:var(--ink);box-shadow:0 3px 0 var(--tile-deep);border:none;border-radius:20px;flex-direction:column;align-items:center;gap:2px;padding:10px 6px 12px;display:flex;position:relative}.product:active{box-shadow:0 1px 0 var(--tile-deep);transform:translateY(2px)}.product.just-added{outline:3px solid var(--coral);outline-offset:1px}.product-emoji{font-size:2.45rem;line-height:1.1}.product-name{text-align:center;font-size:.95rem;font-weight:700;line-height:1.15}.product-price{background:#fff;border-radius:999px;margin-top:auto;padding:2px 10px;font-size:.84rem;font-weight:700;box-shadow:0 1px 2px #0000000f}.qty-badge{background:var(--coral);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.scan-btn{color:#172033;background:#3b8cff;border:none;border-radius:18px;justify-content:center;align-items:center;gap:8px;min-height:52px;font-size:1.2rem;font-weight:700;display:inline-flex;box-shadow:0 4px #1f6fd6}.scan-btn:active{transform:translateY(3px);box-shadow:0 1px #1f6fd6}.total-display{background:var(--display);min-height:78px;color:var(--display-text);border-radius:16px;grid-template-columns:auto 1fr;align-items:center;padding:10px 16px;display:grid}.total-label{letter-spacing:.12em;align-self:start;font-size:.82rem;font-weight:600}.total-amount{font-variant-numeric:tabular-nums;justify-self:end;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;line-height:1}.cart-well{scrollbar-width:thin;background:#fff;border-radius:18px;flex-direction:column;flex:1;min-height:72px;display:flex;overflow:auto}.cart-empty{text-align:center;color:#93a3b3;margin:auto;padding:12px;font-weight:600}.cart-notice{text-align:center;color:#8a4b16;margin:8px 8px 0;font-weight:650}.receipt{text-align:center;border-radius:14px;margin:8px;padding:10px 12px}.receipt.ok{color:#0e3b2c;background:#e5f8e8}.receipt.short{color:#8a2e16;background:#ffe8e0;font-weight:700}.thanks,.change-label{font-weight:700}.change-amount{font-size:1.8rem;font-weight:700;line-height:1.1}.cart-list{flex-direction:column;gap:6px;padding:8px;display:flex}.cart-row{background:#fbf8ef;border-radius:12px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;min-height:48px;padding:6px 8px;display:grid}.cart-emoji{font-size:1.35rem}.cart-name{font-weight:650}.cart-qty{color:#7a6558;font-weight:600}.cart-sum{font-weight:700}.cart-remove{color:#a12638;background:#ffe1e4;border:none;border-radius:999px;width:36px;height:36px;font-size:1.2rem;font-weight:700}.entry{text-align:right;color:#fff;font-variant-numeric:tabular-nums;min-height:0;font-size:1.35rem;font-weight:700}.entry.has-value{min-height:30px}.keypad{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.key,.pay-btn,.new-btn{border:none;border-radius:16px;min-height:54px;font-weight:700}.key{color:#3a2a22;background:#fff;font-size:1.45rem;box-shadow:0 4px #e6d8c4}.key:active,.pay-btn:active,.new-btn:active{transform:translateY(3px);box-shadow:0 1px #0000001f}.key-clear{background:var(--orange);color:#fff;box-shadow:0 4px #e25c18}.key-plus{color:#fff;background:#3aa0ff;box-shadow:0 4px #1d7ed0}.pay-btn{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-deep);border-radius:999px;grid-column:span 3;justify-content:center;align-items:center;gap:8px;font-size:1.25rem;display:inline-flex}.new-btn{background:var(--red);color:#fff;border-radius:999px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;font-size:1.12rem;display:inline-flex;box-shadow:0 4px #d63d3d}.help{color:#fffffff2;text-align:center;margin:0 4px;font-size:.75rem;font-weight:500;line-height:1.35}.modal-backdrop{z-index:40;background:#5c3e206b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.lock-card,.scan-card{background:#fffaf1;border-radius:36px;width:min(640px,100%);padding:32px 36px 28px;box-shadow:0 24px 70px #3c1e0a47}.scan-card{width:min(520px,100%)}.lock-icon{text-align:center;font-size:3rem;line-height:1}.lock-card h2,.scan-card h2{text-align:center;color:#3d2918;margin-top:8px;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700}.lock-card p,.scan-card p{text-align:center;color:#3d2918;margin-top:10px;font-size:clamp(1.15rem,2.4vw,1.55rem);font-weight:650}.lock-input,.scan-input{color:#3d2918;text-align:center;background:#f6efc2;border:3px solid #d5e6f5;border-radius:22px;width:100%;margin-top:18px;font-size:2rem;font-weight:700}.lock-input{height:96px}.scan-input{height:72px;font-size:1.4rem}.lock-input::placeholder,.scan-input::placeholder{color:#b3a27a;font-weight:500}.lock-error{color:#d23b4a;text-align:center;margin-top:8px;font-size:1.05rem;font-weight:650}.lock-actions{gap:16px;margin-top:18px;display:flex}.lock-cancel,.lock-continue{border:none;border-radius:999px;flex:1;min-height:68px;font-size:1.5rem;font-weight:700}.lock-cancel{background:var(--blue);color:#102033;box-shadow:0 5px 0 var(--blue-deep)}.lock-continue{background:var(--green);color:#fff;box-shadow:0 5px 0 var(--green-deep)}.lock-cancel:active,.lock-continue:active{transform:translateY(3px);box-shadow:0 2px #00000026}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.shake{animation:.4s shake}@media (width>=700px){.game-grid{grid-template-columns:1fr 1fr}}@media (width>=980px){.game-grid{grid-template-columns:1fr 1fr 1fr}}@media (width<=960px){.shop-page{height:auto;min-height:100dvh}.shop-main{flex-direction:column;display:flex}.shelf{min-height:520px}.product-scroll{max-height:68dvh}.register{min-height:640px}}@media (width<=720px){.hero-line{white-space:normal}.landing{padding:16px 14px 40px}}@media (width<=640px){.shop-top{grid-template-columns:1fr auto;gap:8px}.shop-brand{grid-column:1;justify-self:start}.shop-brand h1{font-size:1.35rem}.exit-btn{grid-column:2;padding-inline:12px}.lock-card,.scan-card{border-radius:28px;padding:24px 18px 20px}.lock-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
