:root{--font: ui-rounded, "SF Pro Rounded", "Nunito", "Varela Round", "Segoe UI", system-ui, -apple-system, sans-serif;--bg1: #dff1ff;--bg2: #f6fbff;--ink: #16324f;--ink-soft: #57718b;--card: rgba(255, 255, 255, .82);--card-solid: #ffffff;--card-border: rgba(22, 50, 79, .08);--accent: #2f8cff;--accent-ink: #ffffff;--warm: #ff9a3c;--good: #22b07d;--bad: #ff4d5e;--gold: #ffbf2f;--line: rgba(16, 38, 62, .9);--grid: rgba(16, 38, 62, .16);--shadow: 0 10px 30px rgba(22, 60, 110, .14), 0 2px 6px rgba(22, 60, 110, .08);--radius: 18px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);color-scheme:light}[data-theme=dark]{--bg1: #0b1626;--bg2: #13233a;--ink: #e6f1ff;--ink-soft: #9db3cc;--card: rgba(26, 43, 66, .85);--card-solid: #1a2b42;--card-border: rgba(255, 255, 255, .07);--accent: #5aa8ff;--line: rgba(4, 10, 20, .95);--grid: rgba(0, 0, 0, .28);--shadow: 0 10px 30px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);background:linear-gradient(180deg,var(--bg1),var(--bg2) 60%) fixed;-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;touch-action:manipulation}button:focus-visible,.board:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button:disabled{opacity:.4;cursor:default}h1,h2,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.muted{color:var(--ink-soft)}.small{font-size:.85rem}.center{text-align:center}.app{max-width:560px;margin:0 auto;min-height:100vh;min-height:100dvh}.screen{min-height:100vh;min-height:100dvh;padding:calc(8px + var(--safe-top)) 16px calc(24px + var(--safe-bottom));display:flex;flex-direction:column;gap:14px;animation:screen-in .28s ease-out}.screen.center{align-items:center;justify-content:center}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.topbar{display:grid;grid-template-columns:44px 1fr minmax(44px,auto);align-items:center;min-height:52px;gap:8px}.topbar-title{text-align:center;min-width:0}.topbar-title h1{font-size:1.15rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-title p{font-size:.8rem;color:var(--ink-soft)}.topbar-right{display:flex;justify-content:flex-end}.icon-btn{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--card);box-shadow:0 1px 0 var(--card-border)}.icon-btn:active{transform:scale(.94)}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--card);font-weight:800;font-size:.95rem;box-shadow:0 1px 0 var(--card-border)}.chip .chip-penguin{width:22px;height:22px}.star-ic{color:var(--gold);fill:var(--gold)}.streak-on{color:#ff6a2b}.shards{font-size:.8rem;margin-left:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:16px;font-weight:800;background:var(--card);box-shadow:0 1px 0 var(--card-border);transition:transform .12s}.btn:active{transform:scale(.97)}.btn.primary{background:linear-gradient(180deg,#4aa3ff,#2f7fff);color:#fff;box-shadow:0 6px #1f62cc,0 10px 24px #2f7fff59}.btn.primary:active{transform:translateY(3px);box-shadow:0 3px #1f62cc,0 6px 14px #2f7fff4d}.btn.ghost{background:transparent;box-shadow:inset 0 0 0 2px var(--card-border)}.btn.big{width:100%;padding:16px 20px;font-size:1.15rem;border-radius:20px}.btn.small{padding:8px 14px;font-size:.9rem;border-radius:12px}.link{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);font-weight:700;padding:10px}.badge{position:absolute;top:8px;right:8px;background:var(--bad);color:#fff;font-style:normal;font-size:.7rem;font-weight:900;padding:2px 7px;border-radius:99px;animation:pulse 1.6s infinite}.lead{color:var(--ink-soft);line-height:1.45}.section{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-top:8px}.home-top{display:flex;gap:8px;align-items:center}.home-top .icon-btn{margin-left:auto}.hero{position:relative;text-align:center;padding:18px 0 0;overflow:hidden}.logo{font-size:clamp(2.8rem,13vw,3.8rem);font-weight:900;letter-spacing:-.03em;color:var(--ink);line-height:1}.logo span{background:linear-gradient(180deg,#4aa3ff,#2f6fe0);-webkit-background-clip:text;background-clip:text;color:transparent}.tagline{color:var(--ink-soft);margin-top:6px;font-weight:700}.hero-floe{margin:14px auto 0;width:190px;height:128px;position:relative}.hero-floe:before{content:"";position:absolute;left:0;right:0;bottom:0;height:40px;border-radius:50%;background:linear-gradient(180deg,#fff,#cfe8ff);box-shadow:0 8px #a9d3fb,0 16px 30px #2f7fff40}[data-theme=dark] .hero-floe:before{background:linear-gradient(180deg,#d9ecff,#8fbbe6);box-shadow:0 8px #5d8dbf,0 16px 30px #0006}.hero-penguin{position:absolute;left:50%;bottom:14px;width:104px;height:104px;margin-left:-52px;transform-origin:50% 95%;animation:waddle 1.8s ease-in-out infinite}@keyframes waddle{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg) translateY(-2px)}}.hero-snow i,.snowfall i{position:absolute;top:-10px;left:calc(var(--i) * 7.3%);width:6px;height:6px;border-radius:50%;background:#fff;opacity:.8;box-shadow:0 0 4px #2f8cff66;animation:snow calc(5s + var(--i) * .37s) linear infinite;animation-delay:calc(var(--i) * -.61s)}@keyframes snow{to{transform:translate(30px,260px);opacity:0}}.play-cta{flex-direction:column;gap:0}.play-cta small{font-size:.8rem;opacity:.85;font-weight:700}.daily-card{text-align:left;width:100%;padding:14px 16px;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.daily-head{display:flex;align-items:center;gap:10px}.daily-head>div{flex:1;display:flex;flex-direction:column}.daily-head small{color:var(--ink-soft)}.daily-state{display:inline-flex;align-items:center;gap:4px;font-weight:900;color:#fff;background:var(--warm);padding:6px 12px;border-radius:999px}.daily-card.done .daily-state{background:var(--good)}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.7rem;color:var(--ink-soft)}.day i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900;background:#2f8cff1a;color:#fff}.day.done i{background:var(--good)}.day.frozen i{background:#bfe3ff;font-size:.8rem}.day.today i{box-shadow:0 0 0 2px var(--accent)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tile{position:relative;text-align:left;display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.tile svg{color:var(--accent)}.tile small{color:var(--ink-soft)}.tile:active,.daily-card:active,.world-card:active,.level:active,.skin:active,.size-card:active{transform:scale(.97)}.home-foot{display:flex;justify-content:center;gap:8px}.world-list{display:flex;flex-direction:column;gap:12px}.world-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:22px;text-align:left;color:#16324f;background:linear-gradient(135deg,var(--g1),var(--g2));box-shadow:var(--shadow)}.world-card.expert{color:#eef2ff}.world-card.locked{filter:grayscale(.7);opacity:.6}.world-emoji{font-size:2rem;width:52px;height:52px;display:grid;place-items:center;background:#ffffff8c;border-radius:16px}.world-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.world-info small{opacity:.8}.world-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-weight:800;font-size:.9rem}.world-meta small{font-weight:600;opacity:.7;font-size:.7rem}.progress{height:6px;border-radius:6px;background:#fff9;overflow:hidden}.progress i{display:block;height:100%;background:var(--good);border-radius:6px}.level-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.level{aspect-ratio:1;border-radius:18px;background:var(--card);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:relative}.level strong{font-size:1.35rem}.level small{color:var(--ink-soft);font-size:.7rem}.level.done{background:linear-gradient(160deg,var(--g1, #bfe6ff),var(--card-solid))}[data-theme=dark] .level.done{background:linear-gradient(160deg,rgba(90,168,255,.35),var(--card-solid))}.level.locked{opacity:.45;box-shadow:none}.level.in-progress:after{content:"";position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--warm)}.stars{display:inline-flex;gap:2px}.stars .on{fill:var(--gold)}.stars .off{fill:#788ca04d}.screen.play{height:100vh;height:100dvh;min-height:0;gap:10px;padding-bottom:calc(10px + var(--safe-bottom))}.timer{font-variant-numeric:tabular-nums;font-weight:800;padding:6px 10px;border-radius:12px;background:var(--card)}.play-status{display:flex;justify-content:center;gap:8px}.coach{background:var(--card-solid);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);font-weight:700;line-height:1.4;border-left:5px solid var(--warm);animation:screen-in .3s}.coach-skip{display:block;margin-top:6px;padding:0;font-size:.8rem;font-weight:700;color:var(--ink-soft);text-decoration:underline}.board-wrap{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;container-type:size}.board{width:var(--size, min(100cqw, 100cqh, 540px));aspect-ratio:1;display:grid;grid-template-columns:repeat(var(--n),1fr);grid-template-rows:repeat(var(--n),1fr);border:3px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);touch-action:none;background:var(--line);gap:0}.cell{position:relative;background-color:var(--c);background-size:14px 14px;border:.5px solid var(--grid);display:grid;place-items:center;min-width:0;min-height:0;cursor:pointer}.cell.bt{border-top:1.6px solid var(--line)}.cell.bb{border-bottom:1.6px solid var(--line)}.cell.bl{border-left:1.6px solid var(--line)}.cell.br{border-right:1.6px solid var(--line)}.board.readonly .cell{cursor:default}.cell>svg{grid-area:1 / 1}.cell .penguin.placed{width:86%;height:86%;animation:pop .32s cubic-bezier(.2,1.6,.4,1);filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}.cell .penguin.ghost{width:80%;height:80%;opacity:.5;animation:pulse 1.2s infinite}.xmark{width:46%;height:46%;stroke:#10263e9e;stroke-width:2.6;stroke-linecap:round;animation:pop .18s ease-out}[data-theme=dark] .xmark{stroke:#e6f1ffbf}.xmark.faint{width:30%;height:30%;opacity:.32;animation:none}.xmark.ghost{stroke:var(--bad);opacity:.85;animation:pulse 1.2s infinite}.cell.conflict:after{content:"";position:absolute;inset:8%;border-radius:50%;box-shadow:0 0 0 3px var(--bad),0 0 12px var(--bad);animation:pulse 1s infinite;pointer-events:none}.cell.conflict .penguin{animation:shake .4s}.cell.hint-focus{box-shadow:inset 0 0 0 100px #ffffff47}[data-theme=dark] .cell.hint-focus{box-shadow:inset 0 0 0 100px #ffffff24}.cell.hint-cause:before{content:"";position:absolute;inset:6%;border-radius:8px;border:3px dashed var(--accent);pointer-events:none}.cell.kbd:before{content:"";position:absolute;inset:2px;border-radius:6px;border:3px solid var(--accent);pointer-events:none}.board.solved .penguin.placed{animation:hop .6s ease-in-out calc(var(--row) * 90ms) 2 both}.board.solved{box-shadow:0 0 0 4px var(--gold),0 0 40px #ffbf2f8c;transition:box-shadow .4s}@keyframes pop{0%{transform:scale(.3);opacity:0}}@keyframes pulse{50%{opacity:.45}}@keyframes shake{25%{transform:translate(-8%) rotate(-6deg)}75%{transform:translate(8%) rotate(6deg)}}@keyframes hop{0%,to{transform:translateY(0)}40%{transform:translateY(-28%) rotate(-6deg)}60%{transform:translateY(-22%) rotate(6deg)}}.toolbar{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;border-radius:22px;background:var(--card);box-shadow:var(--shadow);position:sticky;bottom:calc(8px + var(--safe-bottom))}.tool{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;min-height:56px;border-radius:16px;font-size:.75rem;font-weight:800;color:var(--ink-soft)}.tool svg{color:var(--ink)}.tool:active{background:#2f8cff1f}.tool.armed{color:var(--bad);background:#ff4d5e1f}.hint-tool svg{color:var(--warm)}.hint-tool.active{background:#ff9a3c29}.tap-order{display:inline-flex;align-items:center;gap:2px;height:24px;color:var(--ink);font-size:.85rem}.tap-order .mini{width:20px;height:20px}.hint-card{background:var(--card-solid);border-radius:18px;padding:14px;box-shadow:0 16px 40px #0a1e3c4d;border-top:5px solid var(--warm);display:flex;flex-direction:column;gap:10px;animation:sheet-up .25s ease-out}.hint-card p{margin-top:4px;color:var(--ink-soft);line-height:1.4}.hint-card.kind-wrong-penguin,.hint-card.kind-wrong-mark{border-top-color:var(--bad)}.hint-actions{display:flex;justify-content:flex-end;gap:8px}.sheet-backdrop{position:fixed;inset:0;background:#08182c73;backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;z-index:50;animation:fade .25s}@keyframes fade{0%{opacity:0}}.sheet{position:relative;width:min(560px,100%);max-height:92vh;max-height:92dvh;overflow-y:auto;background:var(--card-solid);border-radius:28px 28px 0 0;padding:22px 20px calc(20px + var(--safe-bottom));display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;animation:sheet-up .35s cubic-bezier(.2,1.2,.4,1)}@keyframes sheet-up{0%{transform:translateY(40%);opacity:0}}.snowfall{position:absolute;inset:0;overflow:hidden;pointer-events:none}.snowfall i{background:#bfe3ff}.win-penguin{width:96px;height:96px;animation:hop .7s ease-in-out 3}.win h2{font-size:1.8rem;font-weight:900}.win .stars svg{animation:pop .4s cubic-bezier(.2,1.6,.4,1) both}.win .stars svg:nth-child(2){animation-delay:.15s}.win .stars svg:nth-child(3){animation-delay:.3s}.win-stats{display:flex;gap:10px;width:100%;justify-content:center}.win-stats>div{flex:1;max-width:140px;background:#2f8cff14;border-radius:16px;padding:10px;display:flex;flex-direction:column}.win-stats small{color:var(--ink-soft)}.win-stats strong{font-size:1.3rem;font-variant-numeric:tabular-nums}.win-stats em{font-style:normal;color:var(--good);font-weight:800;font-size:.75rem}.reward{background:#2f8cff1a;padding:10px 12px;border-radius:14px;font-weight:700}.unlock{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border-radius:18px;background:linear-gradient(135deg,#fff3c4,#ffe08a);color:#4a3500;text-align:left;animation:pop .5s cubic-bezier(.2,1.6,.4,1)}.unlock svg{width:56px;height:56px}.unlock span{display:flex;flex-direction:column}.fact{font-size:.9rem;line-height:1.4;color:var(--ink-soft);background:#2f8cff0f;padding:10px 12px;border-radius:14px}.fact span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--accent);margin-bottom:2px}.win-actions{width:100%;display:flex;flex-direction:column;gap:10px;margin-top:4px}.win-actions .row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.list{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.list>*+*{border-top:1px solid var(--card-border)}.list-row,.row-toggle,.row-select{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;min-height:52px;text-align:left}.list-row small{color:var(--ink-soft)}.list-row.done small{color:var(--good);font-weight:800}.list-row.danger{color:var(--bad);font-weight:800}.row-toggle{cursor:pointer;position:relative}.row-toggle span{display:flex;flex-direction:column;gap:2px}.row-toggle small{color:var(--ink-soft);font-size:.8rem;line-height:1.3}.row-toggle input{position:absolute;opacity:0;pointer-events:none}.switch{flex:none;width:50px;height:30px;border-radius:99px;background:#788ca059;position:relative;transition:background .2s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform .2s}.row-toggle input:checked+.switch{background:var(--good)}.row-toggle input:checked+.switch:after{transform:translate(20px)}.row-toggle input:focus-visible+.switch{outline:3px solid var(--accent);outline-offset:2px}.segmented{display:inline-flex;background:#788ca02e;border-radius:12px;padding:3px}.segmented button{padding:7px 10px;border-radius:9px;font-size:.85rem;font-weight:800;color:var(--ink-soft)}.segmented button.on{background:var(--card-solid);color:var(--ink);box-shadow:0 1px 3px #0000001f}.version{margin-top:12px;line-height:1.6}.size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.size-card{aspect-ratio:1;border-radius:20px;background:var(--card);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.size-card strong{font-size:1.4rem}.size-card small{color:var(--ink-soft);font-weight:700}.size-card em{font-style:normal;font-size:.7rem;color:var(--good);font-weight:800}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;display:flex;flex-direction:column;gap:2px}.stat strong{font-size:1.5rem}.stat small{color:var(--ink-soft)}.size-table{width:100%;border-collapse:collapse;background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);font-variant-numeric:tabular-nums}.size-table th,.size-table td{padding:10px 12px;text-align:left}.size-table th{font-size:.75rem;color:var(--ink-soft);text-transform:uppercase}.size-table tr+tr td{border-top:1px solid var(--card-border)}.skin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.skin{position:relative;border-radius:20px;background:var(--card);box-shadow:var(--shadow);padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.skin .penguin{width:84px;height:84px}.skin small{color:var(--ink-soft);font-size:.78rem;line-height:1.3}.skin.selected{box-shadow:0 0 0 3px var(--accent),var(--shadow)}.skin.locked .penguin{filter:brightness(0) opacity(.18)}[data-theme=dark] .skin.locked .penguin{filter:brightness(0) invert(1) opacity(.15)}.req-progress{font-weight:800;color:var(--accent)!important}.rule{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.rule h2{font-size:1rem}.rule p{color:var(--ink-soft);margin-top:4px;line-height:1.35}.board.mini-board{--size: 112px;flex:none;border-width:2px;border-radius:10px}.controls-help{background:var(--card);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}.controls-help h2{font-size:1rem}.controls-help ul{margin:8px 0 0;padding-left:18px;line-height:1.5;color:var(--ink-soft)}.toasts{position:fixed;top:calc(12px + var(--safe-top));left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;z-index:100}.toast{background:var(--ink);color:var(--bg2);padding:10px 16px;border-radius:14px;font-weight:800;box-shadow:var(--shadow);animation:sheet-up .25s}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}@media(min-width:700px){.screen{padding-top:24px}.skin-grid{grid-template-columns:repeat(3,1fr)}}@media(max-height:640px){.hero-floe{display:none}}.icon-btn.small{width:38px;height:38px;border-radius:12px}.topbar-right{gap:6px;align-items:center}.account-btn{overflow:hidden;font-weight:900;font-size:1.1rem}.home-top .account-btn{margin-left:auto}.home-top .account-btn+.icon-btn{margin-left:0}.account-btn img{width:100%;height:100%;object-fit:cover}img.avatar{object-fit:cover}.account-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;display:flex;flex-direction:column;gap:12px}.account-head{display:flex;align-items:center;gap:12px}.account-head>div{display:flex;flex-direction:column;min-width:0}.account-head small{color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis}.avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#2f8cff26;font-weight:900;flex:none;overflow:hidden}.avatar.guest{font-size:1.4rem}.sync-line{font-weight:700;font-size:.9rem;color:var(--good)}.sync-line.error{color:var(--bad)}.sync-line.offline,.sync-line.syncing{color:var(--ink-soft)}.account-actions{display:flex;gap:8px}.link.danger{color:var(--bad);padding:4px 0;align-self:flex-start}.link.inline{padding:0;display:inline;color:var(--accent);text-decoration:underline}.gsi{min-height:44px;display:flex;flex-direction:column;justify-content:center}.gsi-button{justify-content:center;min-height:44px}.gsi-skeleton{height:44px;border-radius:22px;background:#788ca026;animation:pulse 1.2s infinite}.nudge{position:relative;background:var(--card-solid);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 40px 14px 16px;display:flex;flex-direction:column;gap:8px;border-left:5px solid var(--accent);animation:screen-in .3s}.nudge p{color:var(--ink-soft);line-height:1.4;font-size:.9rem}.nudge .btn{align-self:flex-start}.nudge-close{position:absolute;top:6px;right:6px;width:36px;height:36px;display:grid;place-items:center;color:var(--ink-soft)}.save-choice{background:var(--card);border-radius:var(--radius);padding:12px 14px;line-height:1.45;display:flex;flex-direction:column;gap:8px}.sticky-cta{position:sticky;bottom:calc(10px + var(--safe-bottom));display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:10px;background:linear-gradient(180deg,transparent,var(--bg2) 30%);z-index:5}.link.skip{font-size:.9rem}.solved-bar{grid-template-columns:1fr 2fr;align-items:center}.solved-bar .btn{min-height:52px}[data-theme=dark] .world-card{background:linear-gradient(135deg,#1d3350,#13233a);color:var(--ink)}@supports (color: color-mix(in srgb,#000 50%,#fff)){[data-theme=dark] .world-card{background:linear-gradient(135deg,color-mix(in srgb,var(--g1) 34%,#13233a),color-mix(in srgb,var(--g2) 10%,#13233a))}}[data-theme=dark] .world-emoji{background:#ffffff1a}[data-theme=dark] .progress{background:#ffffff1f}[data-theme=dark] .cell.conflict:after{box-shadow:0 0 0 3px #ff6b7a,0 0 14px #ff6b7a}.google-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:400px;min-height:44px;margin:0 auto;padding:10px 16px;border-radius:22px;background:#fff;color:#1f1f1f;border:1px solid #747775;font-family:Roboto,var(--font);font-weight:600;font-size:.95rem}[data-theme=dark] .google-btn{background:#131314;color:#e3e3e3;border-color:#8e918f}.google-btn:active{transform:scale(.98)}a.list-row{color:inherit;text-decoration:none}.portrait{display:block;object-fit:contain;user-select:none;-webkit-user-drag:none}.hero-penguin.portrait{width:128px;height:128px;margin-left:-64px;bottom:12px;object-position:50% 100%;filter:drop-shadow(0 6px 8px rgba(22,50,79,.18))}.win-penguin.portrait{width:132px;height:132px;filter:drop-shadow(0 8px 10px rgba(22,50,79,.2))}.unlock img{width:60px;height:60px;object-fit:contain;flex:none}.unlock.building{background:linear-gradient(135deg,#d7f0ff,#a9dcff);color:#12345a}.skin img.penguin{width:96px;height:96px;object-fit:contain}.howto-pip{width:120px;height:120px;margin:-4px auto -8px;filter:drop-shadow(0 6px 8px rgba(22,50,79,.16))}.streak-risk{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 10px;border-radius:14px;background:#ff8a3d1f;font-size:.85rem;line-height:1.35;text-align:left}.streak-risk img{width:46px;height:46px;flex:none}.world-thumb{width:56px;height:56px;flex:none;object-fit:cover;object-position:50% 20%;border-radius:16px;box-shadow:0 0 0 2px #ffffffb3}.world-screen{position:relative;isolation:isolate}.world-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}.world-screen:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#ffffff8c,#ffffff26 30% 75%,#ffffff73)}[data-theme=dark] .world-backdrop{filter:brightness(.5) saturate(.85)}[data-theme=dark] .world-screen:before{background:linear-gradient(180deg,#0b162699,#0b162633 30% 75%,#0b16268c)}.world-screen.expert:before{background:linear-gradient(180deg,#0b162673,#0b16261a 30% 75%,#0b162666)}.colony-scene{position:relative;aspect-ratio:3 / 2;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);background:#bfe6ff}.colony-scene .colony-base{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.colony-building{position:absolute;transform:translate(-50%,-100%);height:auto;filter:drop-shadow(0 4px 4px rgba(22,50,79,.25));animation:pop .5s cubic-bezier(.2,1.6,.4,1) both}.colony-next{color:var(--ink-soft);font-weight:700;text-align:center}.colony-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.colony-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:18px;background:var(--card);box-shadow:var(--shadow);text-align:left;color:inherit}.colony-item img{width:52px;height:52px;object-fit:contain;flex:none}.colony-item img.ghost{filter:grayscale(1) opacity(.35)}.colony-item>span{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.colony-item small{color:var(--ink-soft)}.colony-item.done>svg{color:var(--good)}.colony-item:disabled{opacity:1;color:inherit;cursor:default}.colony-item.locked{opacity:.6}.colony-card{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);text-align:left;color:inherit}.colony-card .colony-scene.mini{width:118px;flex:none;border-radius:14px;box-shadow:none}.colony-card .colony-building{animation:none}.colony-card-text{display:flex;flex-direction:column;gap:3px}.colony-card-text small{color:var(--ink-soft)}.colony-card:active{transform:scale(.97)}.world-screen.expert .topbar-title{padding:4px 12px;border-radius:14px;background:#0b162673;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.world-screen.expert .topbar-title h1{color:#f2f6ff}.world-screen.expert .topbar-title p{color:#c9d6f2}.reminder-offer{display:flex;flex-direction:column;gap:8px;width:100%}.reminder-offer .row{display:flex;gap:8px;justify-content:center}.weekly-card{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);text-align:left;color:inherit}.weekly-art{width:52px;height:52px;flex:none;border-radius:14px;object-fit:cover;object-position:50% 15%}.weekly-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.weekly-text small{color:var(--ink-soft)}.weekly-card.done .daily-state{background:var(--good)}.weekly-card:active{transform:scale(.97)}
