@font-face{font-family:Nunito;src:url(/assets/nunito-latin-BzFMHfZw.woff2)format("woff2-variations");font-weight:200 1000;font-display:swap}:root{--bg:#f7eee9;--backdrop:linear-gradient(180deg, #fde8dc 0%, #f4e9f3 42%, #e2edf9 100%);--surface:#ffffffb8;--sheet:#fffdfb;--ink:#2f2b45;--muted:#7c7894;--line:#2f2b451f;--accent:#6f76ea;--ok:#2f9e7a;--card:linear-gradient(135deg, #ffa08a 0%, #f7729a 48%, #9d86f5 100%);--card-ink:#fff;--brand-font:800 30px/1.05 "Nunito", system-ui, sans-serif;--radius:16px;--shadow-soft:0 6px 20px #2f2b4514;--shadow-lift:0 14px 34px #2f2b4529;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;font:500 15px/1.45 Nunito,ui-rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body:before{content:"";z-index:-1;background:var(--backdrop);transition:opacity .3s;position:fixed;inset:0}.app{max-width:600px;margin:0 auto;padding:0 16px}[hidden]{display:none!important}html.in-game,html.in-game body{overscroll-behavior:none;height:100%;overflow:hidden}html.in-game .app{max-width:none}button{font:inherit;color:inherit;border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:42px;box-shadow:var(--shadow-soft);cursor:pointer;touch-action:manipulation;border-radius:14px;padding:0 16px;transition:transform .12s,box-shadow .2s,background .2s,opacity .2s}button:hover:not(:disabled){box-shadow:var(--shadow-lift)}button:active:not(:disabled){transform:scale(.97)}button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px}button:disabled{opacity:.38;cursor:default;box-shadow:none}button.primary{background:var(--accent);color:#fff;box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000;font-weight:800}.icon-button{border-radius:50%;flex-shrink:0;place-items:center;width:44px;min-height:44px;padding:0;display:grid}.icon-button svg{width:20px;height:20px}.icon-button[aria-pressed=false]{color:var(--muted)}.kicker{text-transform:uppercase;letter-spacing:.1em;opacity:.8;font-size:11px;font-weight:800}.screen.menu{min-height:100svh;padding:max(18px, env(safe-area-inset-top)) 0 max(24px, env(safe-area-inset-bottom));flex-direction:column;gap:16px;animation:.35s ease-out screen-in;display:flex}.menu-head{justify-content:space-between;align-items:flex-start;gap:12px;padding-top:6px;display:flex}.brand{font:var(--brand-font);letter-spacing:-.02em;margin:0}.tagline{color:var(--muted);margin:6px 0 0;font-size:15px}.hero{pointer-events:none;height:120px;margin:-4px -16px -30px}.hero svg{width:100%;height:100%}.hero-sun{fill:#ffc4a3}.hero-ground{fill:color-mix(in srgb, var(--ink) 12%, transparent)}.cloud rect{fill:#ffffffbf}.cloud-a{animation:70s linear infinite drift}.cloud-b{animation:95s linear -40s infinite drift}@keyframes drift{0%{transform:translate(-70px)}to{transform:translate(380px)}}.daily-card{background:var(--card);min-height:160px;color:var(--card-ink);text-align:left;border:0;border-radius:26px;justify-items:start;gap:4px;padding:22px 20px 20px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #f7729a4d}.daily-card:after{content:"";background:radial-gradient(circle,#ffffff59,#0000 70%);border-radius:50%;width:160px;height:160px;position:absolute;top:-40px;right:-40px}.daily-title{font-size:23px;font-weight:800;line-height:1.2}.daily-stats{opacity:.92;font-variant-numeric:tabular-nums;font-size:14px}.daily-cta{color:#e0587f;background:#fff;border-radius:999px;margin-top:12px;padding:9px 20px;font-weight:800;box-shadow:0 6px 16px #2f2b4526}.daily-card.is-solved .daily-cta{color:var(--ok)}.resume-card{text-align:left;border-radius:20px;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:14px 18px;display:flex}.resume-card strong{font-size:16px;font-weight:800;display:block}.resume-cta{color:var(--accent);font-weight:800}.section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:6px 4px 10px;font-size:12px;font-weight:800}.level-cards{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width>=520px){.level-cards{grid-template-columns:repeat(4,1fr)}}@media (orientation:landscape){.only-portrait,.mini-tall{display:none}}@media (orientation:portrait){.only-landscape,.mini-wide{display:none}}.level-card{border:0;border-radius:22px;align-content:center;justify-items:center;gap:2px;min-height:118px;padding:12px 6px;display:grid}.level-easy{background:linear-gradient(160deg, #a8dcb98c, var(--surface))}.level-medium{background:linear-gradient(160deg, #b8cdea99, var(--surface))}.level-hard{background:linear-gradient(160deg, #c4b4f58c, var(--surface))}.level-large{background:linear-gradient(160deg, #ffbea099, var(--surface))}.level-card strong{margin-top:6px;font-size:16px;font-weight:800}.level-card small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.mini-grid{width:40px;height:40px}.mini-wide{width:54px;height:36px}.mini-tall{width:30px;height:45px}.mini-bg{fill:#fffc}.mini-lines{stroke:#2f2b452e;stroke-width:.8px;fill:none}.install-card{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:20px;align-items:center;gap:12px;padding:14px 12px 14px 18px;display:flex}.install-card>div{color:var(--muted);flex:1;font-size:13px;display:grid}.install-card strong{color:var(--ink);font-size:15px}.install-close{width:32px;min-height:32px;box-shadow:none;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0;font-size:20px;line-height:1}@media (width>=700px) and (height>=820px){.screen.menu{justify-content:center}}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}}.screen.game{height:100svh;padding:max(10px, env(safe-area-inset-top)) max(0px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(0px, env(safe-area-inset-left));flex-direction:column;gap:10px;margin:0 -8px;animation:.3s ease-out screen-in;display:flex}.game-bar,.status,.toolbar{align-self:center;width:100%;max-width:600px}.game-bar{align-items:center;gap:10px;padding:0 4px;display:flex}.game-title{flex-direction:column;flex:1;align-items:center;min-width:0;line-height:1.25;display:flex}.game-title strong{font-size:18px;font-weight:800}.game-title span{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.board{filter:drop-shadow(0 16px 26px #2f2b4524);flex:1;min-height:0;position:relative}#board>.tb-grid{width:100%;max-width:1200px;height:100%;max-height:1000px;margin:0 auto}.toolbar{background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:var(--shadow-lift);border-radius:24px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin:0 4px;padding:6px;display:grid}.toolbar button{min-height:56px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:18px;justify-items:center;gap:2px;padding:6px 2px;font-size:12px;font-weight:700;display:grid}.toolbar button:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 10%, transparent);box-shadow:none}.toolbar svg{width:22px;height:22px}@media (orientation:landscape) and (aspect-ratio>=5/4){.screen.game{max-width:calc(100svh * var(--board-ratio,1) + 260px);grid-template:"board bar""board status"1fr"board tools"/minmax(0,1fr) 232px;gap:12px 16px;margin:0 auto;display:grid}.board{grid-area:board}.game-bar{grid-area:bar;padding:0}.status{grid-area:status;align-self:center}.toolbar{grid-area:tools;grid-template-columns:1fr 1fr;grid-auto-flow:row;margin:0}.toolbar button{min-height:52px}.toolbar button:last-child:nth-child(odd){grid-column:1/-1}}.sheet{background:var(--sheet);width:min(440px,100% - 32px);max-height:calc(100svh - 32px);color:var(--ink);border:0;border-radius:28px;padding:22px;overflow:auto;box-shadow:0 30px 70px #2f2b454d}.sheet[open]{animation:.35s cubic-bezier(.2,.9,.3,1.1) sheet-in}.sheet::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2f2b4559}@keyframes sheet-in{0%{opacity:0;transform:translateY(28px)scale(.98)}}.sheet h2{margin:0 0 6px;font-size:22px;font-weight:800}.sheet-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;display:grid}.sheet-actions .primary{grid-column:1/-1;min-height:48px}.sheet-actions>:only-child{grid-column:1/-1}.sheet button:not(.primary){background:color-mix(in srgb, var(--ink) 5%, transparent);box-shadow:none;border-color:#0000}.result-summary,.next-daily{color:var(--muted);font-variant-numeric:tabular-nums;margin:0 0 10px}.share-preview{background:color-mix(in srgb, var(--ink) 5%, transparent);white-space:pre-wrap;word-break:break-word;-webkit-user-select:all;user-select:all;border-radius:14px;margin:0 0 12px;padding:12px 14px;font:14px/1.35 ui-monospace,Menlo,Consolas,monospace}.result-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.share-feedback{color:var(--ok);font-size:14px;font-weight:700}.setting{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;font-weight:700;display:flex}.tb-grid{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:crosshair;width:100%;height:auto;display:block}.tb-zone,.tb-flash,.tb-ping,.tb-tatami-mark{transform-box:fill-box;transform-origin:50%}.tb-zone.is-built{animation:.5s cubic-bezier(.2,.9,.3,1.25) build}.tb-zone.is-built .tb-deco{animation:.35s ease-out .15s both fade-in}@keyframes build{0%{opacity:.5;transform:scale(.9)translateY(6px)}60%{transform:scale(1.03)}}@keyframes fade-in{0%{opacity:0}}.tb-zone.is-rejected{animation:.38s ease-in-out reject}@keyframes reject{20%{transform:translate(-7px)}45%{transform:translate(6px)}70%{transform:translate(-3px)}}.tb-zone.is-demolished{animation:.42s ease-in forwards demolish}@keyframes demolish{to{opacity:0;transform:scale(.86)translateY(10px)}}.tb-selection{animation:.9s linear infinite march}.tb-bin{animation:.2s ease-out fade-in}@keyframes march{to{stroke-dashoffset:-26px}}.tb-symbol{transform-box:fill-box;transform-origin:50%;transition:transform .3s}.tb-symbol.is-settled{transform:scale(.46)}.tb-flash{animation:1s ease-out forwards flash}@keyframes flash{0%{opacity:1}to{opacity:0;transform:scale(1.15)}}.tb-tatami-mark{animation:1.1s ease-in-out infinite alert}.tb-ping{animation:1.1s ease-out infinite ping}@keyframes alert{0%,to{transform:scale(1)}15%{transform:scale(1.25)rotate(-8deg)}30%{transform:scale(1.25)rotate(8deg)}45%{transform:scale(1.1)rotate(0)}}@keyframes ping{0%{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.9)}}.tb-grid.is-celebrating .tb-zone{animation:wave .6s ease-out var(--d,0s) both}@keyframes wave{40%{filter:brightness(1.12);transform:translateY(-7px)scale(1.04)}}.tb-outer{transition:stroke .4s}.tb-draft{fill-opacity:.14;stroke-width:5px;stroke-dasharray:14 10}.tb-chip-text{font:600 24px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.tb-asset-text{font-family:system-ui,Noto Color Emoji,Apple Color Emoji,Segoe UI Emoji,sans-serif}.board-loading{z-index:1;place-items:center;animation:.25s ease-out fade-in;display:grid;position:absolute;inset:0}.screen.game:has(.board.is-loading) .toolbar{opacity:.5;pointer-events:none}.board.is-loading>.tb-grid{opacity:.25;filter:blur(2px);transition:opacity .2s,filter .2s}.loading-card{background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);width:min(280px,80%);box-shadow:var(--shadow-lift);text-align:center;border-radius:24px;padding:20px 22px 22px}.loading-city{width:96px;height:50px}.loading-city .rise{transform-box:fill-box;transform-origin:50% 100%;animation:1.6s cubic-bezier(.3,.8,.3,1) infinite rise;animation-delay:calc(var(--i) * .14s)}@keyframes rise{0%{opacity:.4;transform:scaleY(.1)}45%,80%{opacity:1;transform:scaleY(1)}to{opacity:.4;transform:scaleY(.1)}}.loading-ground{fill:color-mix(in srgb, var(--ink) 18%, transparent)}.loading-text{color:var(--ink);margin:8px 0 12px;font-weight:700}.progress{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:999px;height:10px;overflow:hidden}.progress-bar{border-radius:inherit;background:var(--card);width:0%;height:100%;transition:width .25s ease-out;position:relative;overflow:hidden}.progress-bar:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:1.2s ease-in-out infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.status{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;min-height:1.45em;margin:0;font-size:14px}.status.is-hint{color:var(--accent)}.status.is-solved{color:var(--ok);font-size:16px;font-weight:600;animation:.45s cubic-bezier(.2,.9,.3,1.4) pop}@keyframes pop{0%{opacity:0;transform:scale(.8)}}.link-button{min-height:32px;box-shadow:none;color:var(--muted);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);background:0 0;border:0;align-self:center;padding:0 8px;font-size:13px}.link-button:hover:not(:disabled){color:var(--ink);text-decoration-color:currentColor}.tuto{background:var(--sheet);width:min(440px,100% - 32px);max-height:calc(100svh - 32px);color:var(--ink);border:0;border-radius:28px;padding:16px 18px 18px;overflow:auto;box-shadow:0 24px 60px #0f172a4d}.tuto[open]{animation:.25s ease-out tuto-in}.tuto::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c}@keyframes tuto-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.tuto-top{justify-content:space-between;align-items:center;display:flex}.tuto-counter{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px}.tuto-skip{min-height:32px;box-shadow:none;color:var(--muted);background:0 0;border:0;font-size:14px}.tuto-visual{background:var(--backdrop);border-radius:20px;place-items:center;height:236px;margin:8px 0 12px;padding:12px;display:grid}.tuto-visual>*{width:100%;animation:.25s ease-out fade-in}.tuto-scene{margin:0;position:relative}.tuto-scene .tb-grid{width:100%;max-height:180px}.tuto-scene figcaption{justify-content:center;gap:14px;margin-top:8px;font-size:13px;font-weight:600;display:flex}.tuto-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tuto .ok{color:var(--ok)}.tuto .ko{color:#dc2626}.tuto-legend{gap:6px;margin:4px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.tuto-legend li{align-items:center;gap:8px;display:flex}.tuto-icon{flex-shrink:0;width:26px;height:26px}.tuto-hand{pointer-events:none;background:#0f172a59;border-radius:50%;width:34px;height:34px;margin:-6px 0 0 -10px;animation:2.2s ease-in-out infinite tuto-drag;position:absolute;box-shadow:0 0 0 4px #ffffffd9}@keyframes tuto-drag{0%,15%{left:var(--x0);top:var(--y0);opacity:0;transform:scale(1.15)}25%{opacity:1;transform:scale(1)}75%{left:var(--x1);top:var(--y1);opacity:1}90%,to{left:var(--x1);top:var(--y1);opacity:0}}.tuto-share{background:var(--sheet);white-space:pre;border-radius:14px;margin:0;padding:12px 16px;font:15px/1.4 ui-monospace,Menlo,Consolas,monospace;width:auto!important}.tuto-title{margin:0 0 6px;font-size:20px}.tuto-text{min-height:8.8em}.tuto-text p{color:var(--muted);margin:0 0 8px}.tuto-text b{color:var(--ink)}.tuto-bottom{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.tuto-dots{gap:2px;display:flex}.tuto-dot{width:24px;min-height:24px;box-shadow:none;background:0 0;border:0;place-items:center;padding:0;display:grid}.tuto-dot:after{content:"";background:var(--line);border-radius:50%;width:8px;height:8px;transition:width .2s,background .2s}.tuto-dot.is-active:after{background:var(--accent);border-radius:4px;width:20px}.tuto-next{min-width:120px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:root[data-scheme=dark] .hero-sun{fill:#f3e3b3}:root[data-scheme=dark] .cloud rect{fill:#ffffff1a}:root[data-scheme=dark] .mini-bg{fill:#ffffff24}:root[data-scheme=dark] .mini-lines{stroke:#ffffff40}@media (height<=520px) and (orientation:landscape){.tuto{grid-template:"top top""visual title""visual text"1fr"visual bottom"/1fr 1fr;column-gap:18px;width:min(760px,100% - 32px)}.tuto[open]{display:grid}.tuto-top{grid-area:top}.tuto-visual{grid-area:visual;height:calc(100svh - 110px);max-height:260px;margin:4px 0 0}.tuto-scene .tb-grid{max-height:calc(100svh - 170px)}.tuto-title{grid-area:title;margin-top:4px}.tuto-text{grid-area:text;min-height:0}.tuto-bottom{grid-area:bottom;margin-top:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
