:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;--bg: #10141c;--bg-elevated: #161c28;--surface: #1d2635;--surface-2: #243247;--surface-3: #2c3c55;--text: #eef3ff;--text-muted: #9cabc4;--accent: #63d5ff;--accent-strong: #00b7ff;--success: #86efac;--warning: #ffd166;--danger: #ff7b87;--outline: rgba(148, 163, 184, .24);--shadow: 0 16px 36px rgba(5, 10, 19, .28);--cell-hidden: #2a3950;--cell-revealed: #17202c;--cell-flagged: #334866;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--radius-s: 12px;--radius-m: 16px;--radius-l: 24px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--border: 1px solid var(--outline)}@media(prefers-color-scheme:light){:root{--bg: #eef3fb;--bg-elevated: #ffffff;--surface: #ffffff;--surface-2: #f4f7fb;--surface-3: #edf1f8;--text: #17212f;--text-muted: #627287;--outline: rgba(40, 52, 75, .12);--shadow: 0 16px 30px rgba(32, 52, 84, .08);--cell-hidden: #dce5f4;--cell-revealed: #ffffff;--cell-flagged: #cad7ec}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{background:radial-gradient(circle at top,rgba(99,213,255,.09),transparent 38%),var(--bg);color:var(--text);overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{min-height:100vh;width:100%;padding:var(--safe-top) var(--space-4) calc(var(--safe-bottom) + 92px);overflow-x:clip}.app-frame{width:100%;max-width:430px;margin:0 auto}.app-main{display:flex;flex-direction:column;gap:var(--space-4);width:100%;min-width:0;padding-top:var(--space-4)}.app-title,h1,h2,h3,p{margin:0}.app-title,h1{font-size:1.75rem;line-height:1.1}h2{font-size:1.125rem;line-height:1.2}h3{font-size:1rem}.eyebrow{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.muted{color:var(--text-muted)}.preview-badge,.pill,.chip{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 var(--space-3);border-radius:999px;border:var(--border);background:#ffffff0a;color:var(--text);font-size:.875rem}.pill-success{color:var(--success);border-color:#86efac52}.chip-danger{color:var(--danger)}.stack,.stack-sm,.stack-xs{display:flex;flex-direction:column}.stack{gap:var(--space-4)}.stack-sm{gap:var(--space-3)}.stack-xs{gap:var(--space-2)}.row{display:flex;align-items:center}.row-between{justify-content:space-between}.row-gap{gap:var(--space-2)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.card,.inventory-slot,.leaderboard-row,.theme-card{background:linear-gradient(180deg,rgba(255,255,255,.04),transparent),var(--surface);border:var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow)}.card{padding:var(--space-4)}.compact-card{gap:var(--space-3)}.hero-card{display:grid;gap:var(--space-4);background:radial-gradient(circle at right top,rgba(99,213,255,.18),transparent 36%),var(--surface)}.hero-card__button{width:100%}.hero-card__result{display:flex;flex-direction:column;gap:var(--space-3)}.grid-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.patchnotes-screen{min-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 124px)}.patchnotes-screen__list{flex:1;min-height:0;overflow:auto;padding-right:2px}.game-card{display:grid;gap:var(--space-4);background:radial-gradient(circle at left bottom,rgba(255,180,99,.15),transparent 42%),var(--surface)}.game-card__modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.game-card__mode-btn{--mode-tint: rgba(99, 213, 255, .28);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);min-height:64px;padding:var(--space-3) var(--space-2);background:linear-gradient(180deg,color-mix(in srgb,var(--mode-tint) 92%,var(--surface-2)),color-mix(in srgb,var(--mode-tint) 62%,var(--surface)));border:1.5px solid color-mix(in srgb,var(--mode-tint) 100%,rgba(255,255,255,.12));border-radius:14px;cursor:pointer;transition:background .18s ease-out,border-color .18s ease-out,transform .1s ease-out}.game-card__mode-btn--8x8{--mode-tint: rgba(120, 196, 138, .46)}.game-card__mode-btn--10x10{--mode-tint: rgba(178, 186, 107, .42)}.game-card__mode-btn--10x14{--mode-tint: rgba(201, 154, 95, .44)}.game-card__mode-btn--10x18{--mode-tint: rgba(187, 110, 110, .46)}.game-card__mode-btn:hover,.game-card__mode-btn:focus-visible{background:linear-gradient(180deg,color-mix(in srgb,var(--mode-tint) 100%,var(--surface-3)),color-mix(in srgb,var(--mode-tint) 70%,var(--surface)));border-color:color-mix(in srgb,var(--mode-tint) 100%,var(--accent) 18%);outline:none}.game-card__mode-btn:active{transform:scale(.95)}.game-card__mode-name{font-size:14px;font-weight:600;color:var(--text-primary)}.game-card__mode-sub{font-size:11px;color:var(--text-secondary)}.button{min-height:44px;border-radius:14px;border:none;padding:0 var(--space-4);transition:transform .18s ease-out,opacity .18s ease-out,background .18s ease-out}.button:active{transform:scale(.98)}.button:disabled{opacity:.48;cursor:default}.button-primary{background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#041722;font-weight:700}.button-secondary{background:var(--surface-2);color:var(--text)}.button-ghost,.button-ghost-active{background:transparent;color:var(--text);border:var(--border)}.button-ghost-active{background:#63d5ff2e}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-grid__cell{display:flex;align-items:center;justify-content:center;min-height:36px;border-radius:12px;background:var(--surface-2);color:var(--text-muted);font-size:.75rem}.calendar-grid__cell--done{background:#ffd16633;color:var(--warning)}.calendar-grid__cell--today{border:1px solid var(--accent);animation:pulse-outline 1.6s ease-out infinite}.board{--board-available-width: calc(min(100vw, 430px) - (var(--space-4) * 2) - 2px);--board-gap: clamp(2px, calc(var(--board-available-width) / 120), 4px);--board-padding: clamp(8px, calc(var(--board-available-width) / 32), 12px);--board-inner-width: calc(var(--board-available-width) - (var(--board-padding) * 2) - ((var(--columns) - 1) * var(--board-gap)));--board-cell-size: calc(var(--board-inner-width) / var(--columns));position:relative;display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:var(--board-gap);width:100%;max-width:var(--board-available-width);justify-self:stretch;padding:var(--board-padding);border-radius:var(--radius-l);background:radial-gradient(circle at top,color-mix(in srgb,var(--accent) 18%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 82%,transparent),var(--surface));border:var(--border);box-shadow:inset 0 1px color-mix(in srgb,var(--text) 8%,transparent),0 0 0 1px color-mix(in srgb,var(--outline) 85%,transparent);overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.board:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 32%),linear-gradient(0deg,color-mix(in srgb,var(--cell-hidden) 26%,transparent),transparent 48%);opacity:.8}.board:after{content:"";position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;pointer-events:none;opacity:0;background:radial-gradient(circle at center,rgba(255,245,183,.92) 0 10%,rgba(255,196,80,.82) 18%,rgba(255,112,80,.52) 38%,rgba(255,112,80,.12) 58%,transparent 72%),radial-gradient(circle at 30% 35%,rgba(255,255,255,.34),transparent 28%),radial-gradient(circle at 70% 60%,rgba(255,210,120,.28),transparent 24%);mix-blend-mode:screen;transform:scale(.3)}.game-mode-grid,.leaderboard-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.leaderboard-card{display:flex;flex-direction:column;gap:var(--space-3)}.leaderboard-tabs__button{width:100%;padding-inline:var(--space-2)}.leaderboard-tabs__button:first-child{grid-column:1 / -1}.play-screen{min-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 92px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--space-4)}.play-screen__header{position:sticky;top:var(--space-4);z-index:3}.play-screen--game .play-screen__header{position:static;top:auto}.play-screen__header-content{align-items:center;text-align:center}.play-screen__title{white-space:nowrap}.play-screen__board{min-height:0;display:grid;align-content:center;justify-items:center}.play-screen__footer{position:sticky;bottom:calc(var(--safe-bottom) + 84px);z-index:3}.play-screen__footer .bottom-actions,.play-screen__footer.bottom-actions{position:static;bottom:auto}.board-cell{position:relative;display:grid;place-items:center;width:100%;height:auto;min-height:0;aspect-ratio:1;padding:0;border-radius:clamp(10px,calc(var(--board-cell-size) * .24),14px);border:1px solid transparent;background:linear-gradient(180deg,color-mix(in srgb,#ffffff 8%,var(--cell-hidden)),var(--cell-hidden));color:var(--text);font-weight:700;line-height:1;transition:transform .18s ease-out,background .18s ease-out,box-shadow .22s ease-out;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.board-cell--revealed{background:linear-gradient(180deg,color-mix(in srgb,#ffffff 4%,var(--cell-revealed)),var(--cell-revealed))}.board-cell--flagged{background:linear-gradient(180deg,color-mix(in srgb,#ffffff 8%,var(--cell-flagged)),var(--cell-flagged))}.board-cell--highlighted{border-color:var(--accent);box-shadow:0 0 0 1px #63d5ff38}.board-cell--fx-reveal{animation:cell-reveal-pop .18s ease-out}.board-cell--fx-flag{animation:cell-flag-bounce .22s ease-out}.board-cell--fx-explode{animation:cell-explode .76s cubic-bezier(.2,.9,.25,1)}.board--fx-explode{animation:board-explode-shake .56s ease-out}.board--fx-explode:after{animation:board-explosion-flash .76s cubic-bezier(.16,.84,.24,1)}.bottom-actions{position:sticky;bottom:calc(var(--safe-bottom) + 12px);display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:var(--space-2)}.bottom-actions--icons{grid-template-columns:repeat(4,minmax(0,64px));justify-content:center}.helper-action{position:relative;display:grid;place-items:center;min-width:0;min-height:52px;padding:0;font-size:1.25rem}.helper-action__count{position:absolute;right:6px;bottom:4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:color-mix(in srgb,var(--surface) 72%,#000);color:var(--text);font-size:10px;line-height:16px}.life-meter{justify-content:center;align-items:center}.life-meter__heart{color:var(--text-muted);font-size:1.125rem;line-height:1}.life-meter__heart--active{color:var(--danger)}.scratch-card__body{position:relative;overflow:hidden;min-height:240px;border-radius:var(--radius-m);background:linear-gradient(135deg,var(--surface-2),var(--surface-3))}.scratch-card__reward{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:var(--space-2);text-align:center}.scratch-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(16,1fr);grid-template-rows:repeat(20,1fr);gap:1px;padding:1px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.scratch-overlay__tile{border-radius:2px;background:linear-gradient(135deg,#ffffff52,#0000002e),repeating-linear-gradient(135deg,#d6dae4,#d6dae4 8px,#b9bfcc 8px,#b9bfcc 16px);transition:opacity .18s ease-out}.scratch-overlay__tile--hidden{opacity:0}.inventory-slot,.leaderboard-row,.theme-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4)}.inventory-slot__icon,.leaderboard-rank{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--surface-2)}.leaderboard-row--self{outline:1px solid rgba(99,213,255,.36)}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.theme-card{flex-direction:column;align-items:stretch}.theme-card__action{width:100%}.profile-link-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4);border:var(--border);border-radius:var(--radius-m);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent),var(--surface);box-shadow:var(--shadow);color:var(--text);text-align:left}.profile-link-card__copy,.profile-link-card__meta{display:flex;flex-direction:column;gap:var(--space-1)}.invite-banner__button{margin-top:var(--space-2)}.profile-link-card__meta{align-items:flex-end;color:var(--text-muted)}.theme-card p,.achievement-tile p,.release-card p{overflow-wrap:anywhere}.theme-card--active{outline:1px solid rgba(99,213,255,.36)}.build-footer{display:flex;justify-content:center}.build-footer__button{min-width:132px}.release-card{display:flex;flex-direction:column;gap:var(--space-3)}.achievement-preview-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--space-2)}.achievement-preview{display:grid;place-items:center;min-height:44px;border-radius:14px;background:var(--surface-2);filter:grayscale(1);opacity:.56}.achievement-preview--unlocked{filter:none;opacity:1;background:linear-gradient(180deg,#ffd16633,#ffd16614),var(--surface-2)}.achievement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.achievement-tile{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-m);background:var(--surface-2);border:var(--border);filter:grayscale(1);opacity:.72}.achievement-tile--unlocked{filter:none;opacity:1;background:linear-gradient(180deg,#ffd1661f,#fff0),var(--surface-2)}.achievement-tile__icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--surface-3);font-size:1.125rem}.achievement-progress{display:flex;flex-direction:column;gap:6px}.achievement-progress__bar{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--warning),var(--accent))}.scroll-panel{max-height:min(48vh,420px);overflow:auto;padding-right:2px}.settings-toggle{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.empty-state{align-items:center;text-align:center}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(430px,calc(100vw - 24px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);padding:var(--space-2) var(--space-2) calc(var(--safe-bottom) + var(--space-2));background:linear-gradient(180deg,#ffffff0f,#fff0),var(--bg-elevated, var(--surface));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top-left-radius:20px;border-top-right-radius:20px;border:var(--border);border-bottom:none;box-shadow:var(--shadow)}.bottom-nav__button{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:56px;padding:var(--space-2);font-size:.75rem}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#03060c8f;display:grid;align-items:end;padding:var(--space-4)}.sheet-backdrop--raised{align-items:end;padding-top:12vh;padding-bottom:calc(var(--safe-bottom) + 104px)}.sheet-backdrop--center{align-items:center}.sheet{max-width:430px;margin:0 auto;padding:var(--space-5);border-radius:24px;background:var(--surface);border:var(--border)}.toast-stack{position:fixed;inset-inline:0;top:calc(var(--safe-top) + 12px);display:grid;justify-items:center;gap:var(--space-2);pointer-events:none}.toast{padding:12px 16px;border-radius:999px;background:#0a0e18db;border:var(--border);color:var(--text)}.skeleton{border-radius:var(--radius-m);background:linear-gradient(90deg,#ffffff0a,#ffffff1f,#ffffff0a),var(--surface);background-size:220px 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{0%{background-position:-220px 0}to{background-position:220px 0}}@keyframes pulse-outline{0%,to{box-shadow:0 0 #63d5ff47}50%{box-shadow:0 0 0 7px #63d5ff00}}@keyframes cell-reveal-pop{0%{transform:scale(.88);box-shadow:0 0 #63d5ff52}to{transform:scale(1);box-shadow:0 0 0 10px #63d5ff00}}@keyframes cell-flag-bounce{0%{transform:scale(.9)}40%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes cell-explode{0%{transform:scale(1);box-shadow:0 0 #ff7b876b;background:linear-gradient(180deg,#ffecb0eb,#ff7b87e0)}18%{transform:scale(1.26);box-shadow:0 0 0 12px #ffd05957}45%{transform:scale(.86) rotate(-5deg);box-shadow:0 0 0 24px #ff7b8700,0 0 22px #ff7b8766}70%{transform:scale(1.06) rotate(3deg)}to{transform:scale(1);box-shadow:0 0 #ff7b8700}}@keyframes board-explode-shake{0%,to{transform:translateZ(0)}20%{transform:translate3d(-4px,1px,0)}40%{transform:translate3d(5px,-2px,0)}60%{transform:translate3d(-3px,3px,0)}80%{transform:translate3d(2px,-1px,0)}}@keyframes board-explosion-flash{0%{opacity:0;transform:scale(.24);filter:blur(2px)}12%{opacity:1;transform:scale(.92);filter:blur(0)}34%{opacity:.82;transform:scale(1.22)}58%{opacity:.26;transform:scale(1.5)}to{opacity:0;transform:scale(1.82);filter:blur(10px)}}@media(max-width:359px){.app-shell{padding-inline:var(--space-3)}.theme-grid,.bottom-actions,.achievement-grid,.game-card__modes{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
