.tile{width:var(--tile-size,64px);height:var(--tile-size,64px);cursor:pointer;-webkit-tap-highlight-color:transparent;perspective:800px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:none;padding:0}.tile:active:not(:disabled) .tile-flip{transform:scale(.96)}.tile.is-flipped:active:not(:disabled) .tile-flip{transform:rotateY(180deg)scale(.96)}.tile:disabled{cursor:default}.tile-flip{width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.45,.05,.15,1);transition-delay:var(--flip-delay,0s);position:relative}.tile-flip.is-flipped{transform:rotateY(180deg)}.tile-face{border:2px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-recessed);backface-visibility:hidden;transition:border-color .12s;position:absolute;inset:0;overflow:hidden}.tile:hover:not(:disabled) .tile-face{border-color:var(--color-accent)}.tile-face-front{transform:rotateY(180deg)}.tile-face img{object-fit:cover;pointer-events:none;width:100%;height:100%}.stat-counter{width:var(--tile-size,64px);height:var(--tile-size,64px);border:2px solid var(--color-border-strong);border-radius:var(--radius-sm);flex-direction:column;display:flex;overflow:hidden}.stat-counter__bands{flex-direction:column;flex:1;display:flex}.stat-counter__band{font-family:var(--font-display);flex:1;justify-content:center;align-items:center;gap:5px;font-size:.75rem;display:flex}.stat-counter__band--points{background:var(--color-accent);color:var(--color-accent-ink)}.stat-counter__band--voltorbs{color:#fff;background:#3f6fc4;border-top:2px solid #264376}.stat-counter__voltorb-icon{object-fit:contain;flex-shrink:0;width:13px;height:13px}@media (width<=420px){.stat-counter__band{gap:3px;font-size:.625rem}.stat-counter__voltorb-icon{width:10px;height:10px}}.note-toggle{justify-content:center;align-items:center;gap:10px;margin-top:10px;display:none}.note-toggle__label{color:var(--color-text-muted);font-size:.875rem;font-weight:700}.note-toggle__switch{border:1px solid var(--color-border-strong);background:var(--color-surface-recessed);cursor:pointer;border-radius:999px;flex-shrink:0;width:44px;height:24px;padding:0;transition:background .2s,border-color .2s;position:relative}.note-toggle__switch.is-on{background:var(--color-accent);border-color:var(--color-accent)}.note-toggle__knob{background:var(--color-text);border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:2px}.note-toggle__switch.is-on .note-toggle__knob{background:var(--color-accent-ink);transform:translate(20px)}@media (width<=800px),(hover:none) and (pointer:coarse){.note-toggle{display:flex}}.coin-toast{z-index:1000;border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-accent-ink);white-space:nowrap;box-shadow:0 4px 0 color-mix(in srgb, var(--color-accent) 55%, black);padding:10px 18px;font-size:.9375rem;font-weight:800;animation:3s forwards coin-toast-fade;position:fixed;top:20px;left:50%;transform:translate(-50%)}@keyframes coin-toast-fade{0%{opacity:0;transform:translate(-50%,-8px)}10%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}.free-play-page{width:100%}.layout{justify-content:center;align-items:flex-start;gap:48px;display:flex}.board-panel{background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--ledge);flex-direction:column;align-items:center;gap:16px;padding:24px;display:flex}.board{grid-template-columns:repeat(6, var(--tile-size));gap:10px;display:grid}.hint{color:var(--color-text-muted);text-align:center;font-size:.8125rem}.sidebar{flex-direction:column;flex-shrink:0;gap:20px;width:240px;padding-top:6px;display:flex}.sidebar__group{flex-direction:column;gap:10px;display:flex}.field-label{color:var(--color-text-muted);font-size:.875rem;font-weight:700}.level-display{font-family:var(--font-display);color:var(--color-accent-strong);font-size:2.5rem;line-height:1}.readout{border-top:1px solid var(--color-border);flex-direction:column;display:flex}.readout__row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.readout__label{color:var(--color-text-muted);font-size:.875rem;font-weight:700}.readout__value{font-family:var(--font-display);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1rem}.level-pills{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.level-pill{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);height:40px;color:var(--color-text-muted);font-family:var(--font-display);cursor:pointer;font-size:.75rem}.level-pill:hover{color:var(--color-text);border-color:var(--color-accent)}.level-pill.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.sidebar__actions{flex-direction:column;gap:12px;display:flex}@media (width<=800px){.layout{flex-direction:column;align-items:center;gap:24px}.board-panel{max-width:100%;padding:clamp(10px,3vw,16px)}.board{gap:clamp(4px,1.5vw,10px)}.sidebar{width:100%;max-width:400px;padding-top:0}.sidebar--split{grid-template-columns:auto 1fr;align-items:start;gap:16px 28px;display:grid}.sidebar--split>:not(.sidebar__group:first-child,.readout){grid-column:1/-1}}.powers-bar{align-items:center;gap:12px;width:100%;min-height:44px;display:flex}.powers-bar__label{color:var(--color-text-muted);flex-shrink:0;font-size:.875rem;font-weight:700}.powers-bar__icons{align-items:center;gap:8px;padding:2px;display:flex;overflow-x:auto}.powers-bar__empty{color:var(--color-text-muted);font-size:.875rem}.power-icon{border:2px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-recessed);cursor:pointer;flex-shrink:0;width:40px;height:40px;padding:0;position:relative}.power-icon:hover{border-color:var(--color-accent)}.power-icon img{object-fit:cover;border-radius:3px;width:100%;height:100%}.power-icon__badge{background:var(--color-text);min-width:18px;height:18px;color:var(--color-ink);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.6875rem;font-weight:800;line-height:1;display:flex;position:absolute;bottom:-6px;right:-6px}.btn--peek.armed-peek{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 18%, var(--color-surface-raised))}.rogue-popup-overlay{z-index:50;background:color-mix(in srgb, var(--bg-main) 80%, transparent);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.rogue-popup{background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-lg);width:100%;max-width:440px;box-shadow:0 6px 0 var(--ledge);text-align:center;padding:28px 24px 24px}.rogue-popup__title{font-family:var(--font-display);color:var(--color-accent-strong);margin-bottom:10px;font-size:1rem;line-height:1.4}.rogue-popup__subtitle{color:var(--color-text-muted);margin-bottom:20px;font-size:.9375rem}.rogue-popup__choices{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rogue-popup__choice{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--press-shadow);cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;transition:transform 60ms,box-shadow 60ms,border-color .15s;display:flex}.rogue-popup__choice:hover{border-color:var(--color-accent)}.rogue-popup__choice:active{transform:translateY(calc(var(--press-depth) - 1px));box-shadow:0 1px 0 var(--ledge)}.rogue-popup__choice img{border-radius:var(--radius-sm);object-fit:cover;width:44px;height:44px}.rogue-popup__choice-emoji{color:var(--color-accent-strong);font-size:1.75rem;line-height:44px}.rogue-popup__choice-title{color:var(--color-text);font-size:.9375rem;font-weight:800}.rogue-popup__choice-desc{color:var(--color-text-muted);font-size:.8125rem;line-height:1.4}.rogue-popup__info-icon{border-radius:var(--radius-md);object-fit:cover;width:56px;height:56px;margin:0 auto 14px}.rogue-popup__cta{width:100%}@media (width<=800px){.power-icon{width:clamp(32px,8vw,40px);height:clamp(32px,8vw,40px)}}@media (width<=420px){.rogue-popup__choices{grid-template-columns:1fr}}.mode-toggle-wrapper{justify-content:center;margin-bottom:28px;display:flex}.mode-toggle{border-radius:var(--radius-md);background:var(--color-surface-recessed);border:1px solid var(--color-border);width:360px;padding:4px;display:flex;position:relative}.mode-toggle-slider{border-radius:var(--radius-sm);background:var(--color-accent);width:calc(33.3333% - 2.66667px);transition:transform .25s cubic-bezier(.25,1,.5,1);position:absolute;top:4px;bottom:4px;left:4px}.mode-toggle-btn{z-index:1;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex:1;padding:9px 0;font-size:.875rem;font-weight:800;transition:color .2s;position:relative}.mode-toggle-btn:hover{color:var(--color-text)}.mode-toggle-btn.active{color:var(--color-accent-ink)}@media (width<=800px){.mode-toggle-wrapper{margin-bottom:18px}.mode-toggle{width:100%;max-width:360px}}.site-footer{border-top:2px solid var(--color-border);justify-content:center;margin-top:56px;padding-top:20px;display:flex}.site-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:0 20px;display:flex}.site-footer-link{color:var(--color-text-muted);padding:10px 2px;font-size:.875rem;font-weight:700;text-decoration:none;transition:color .15s}.site-footer-link:hover{color:var(--color-text);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.site-footer-social{align-items:center;gap:6px;display:inline-flex}.site-footer-icon{object-fit:contain;width:16px;height:16px}.site-footer-sep{background:var(--color-border);border-radius:1px;width:2px;height:14px}@media (width<=840px){.site-footer{margin-top:40px}.site-footer-links{gap:0 14px}.site-footer-link{font-size:.8125rem}.site-footer-handle,.site-footer-sep{display:none}}.auth-overlay{z-index:200;background:color-mix(in srgb, var(--bg-main) 80%, transparent);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.auth-modal{background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:0 6px 0 var(--ledge);padding:32px 24px 24px;position:relative}.auth-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:1rem;line-height:1;position:absolute;top:10px;right:10px}.auth-close:hover{color:var(--color-text);background:var(--color-surface-raised)}.auth-modal__title{text-align:center;margin-bottom:8px;font-size:1.125rem;font-weight:800;line-height:1.3}.auth-modal__text{color:var(--color-text-muted);text-align:center;margin-bottom:24px;font-size:.9375rem}.auth-modal__error{margin-bottom:16px}.auth-google{justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.app-root{background:linear-gradient(180deg, var(--bg-alt) 0, var(--bg-main) 420px) no-repeat, var(--bg-main);min-height:100vh}.topbar{background:var(--color-surface);border-bottom:2px solid var(--color-border)}.topbar-inner{justify-content:space-between;align-items:center;gap:12px;max-width:960px;margin:0 auto;padding:10px 24px;display:flex}.topbar-group{align-items:center;gap:8px;min-width:0;display:flex}.topbar-btn{--key-bg:var(--color-surface-raised);--key-fg:var(--color-text);--key-lip:var(--ledge);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--key-bg);height:40px;color:var(--key-fg);box-shadow:0 2px 0 var(--key-lip);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.9rem;font-weight:800;line-height:1.1;text-decoration:none;transition:transform 90ms ease-out,box-shadow 90ms ease-out,border-color .15s,filter .15s;display:inline-flex}.topbar-btn:hover{border-color:var(--color-border-strong)}.topbar-btn:active{box-shadow:0 0 0 var(--key-lip);transition-duration:40ms;transform:translateY(2px)}.topbar-btn img{object-fit:contain;flex-shrink:0;width:20px;height:20px}.topbar-btn.kofi-btn,.topbar-btn--accent{--key-bg:var(--color-accent);--key-fg:var(--color-accent-ink);--key-lip:color-mix(in srgb, var(--color-accent) 55%, black);border:none}.topbar-btn.kofi-btn:hover,.topbar-btn--accent:hover{filter:brightness(1.07)}.kofi-label-short{display:none}.coin-btn{font-variant-numeric:tabular-nums}.account{position:relative}.account-btn{padding:0 10px 0 6px}.account-initial{background:var(--color-accent);width:26px;height:26px;color:var(--color-accent-ink);border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid}.topbar-btn img.account-initial{object-fit:cover;background:var(--color-surface-recessed);width:26px;height:26px}.account-name{text-overflow:ellipsis;max-width:120px;overflow:hidden}.account-chevron{color:var(--color-text-muted);transition:transform .3s cubic-bezier(.22,1,.36,1)}.account-btn[aria-expanded=true] .account-chevron{transform:rotate(180deg)}.account-menu{z-index:200;background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-lg);transform-origin:100% 0;flex-direction:column;min-width:220px;max-width:calc(100vw - 32px);padding:14px;animation:.18s cubic-bezier(.22,1,.36,1) account-menu-in;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 40px #00000059}@keyframes account-menu-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}}.account-menu-label{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.account-menu-name{margin-top:2px;font-weight:800}.account-menu-email{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.account-signout{width:100%;margin-top:12px}.brand{border-radius:var(--radius-md);align-items:center;gap:12px;min-width:0;margin-right:auto;text-decoration:none;display:flex}.brand__icon{border-radius:var(--radius-md);border:2px solid var(--color-text);object-fit:cover;flex-shrink:0;width:48px;height:48px}.brand__text{flex-direction:column;gap:7px;display:flex}.brand__title{font-family:var(--font-display);color:var(--color-accent-strong);white-space:nowrap;font-size:1.125rem;line-height:1}.brand__byline{color:var(--color-text-muted);font-size:.8125rem;font-weight:700;line-height:1}.content-wrapper{max-width:960px;margin:0 auto;padding:32px 24px}.seo-heading{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=840px){.topbar-inner{padding:8px 16px}.kofi-label-long{display:none}.kofi-label-short{display:inline}.content-wrapper{padding:20px 16px 24px}}@media (width<=640px){.topbar-inner{flex-wrap:wrap;row-gap:10px;padding-top:12px}.brand{border-bottom:2px solid var(--color-border);border-radius:0;justify-content:center;width:100%;margin-right:0;padding-bottom:10px}.brand__icon{width:40px;height:40px}.brand__title{font-size:1rem}.brand__byline{font-size:.75rem}.topbar-group--account{margin-left:auto}}@media (width<=440px){.topbar-btn-label{display:none}.topbar-btn{padding:0 11px}.account-btn{padding:0 8px 0 6px}.topbar-group{gap:6px}}.shop-page{width:100%}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;list-style:none;display:grid}.theme-card{background:var(--color-surface);border:2px solid var(--color-border-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.theme-card--equipped{border-color:var(--theme-accent)}.theme-card--locked{pointer-events:none;opacity:.55}.theme-card__preview{background:var(--theme-bg);border-bottom:4px solid var(--theme-accent);grid-template-columns:repeat(4,1fr);gap:6px;padding:14px;display:grid}.theme-card__tile{aspect-ratio:1;object-fit:contain;width:100%;image-rendering:pixelated;border-radius:4px}.theme-card__body{flex-direction:column;gap:12px;padding:14px;display:flex}.theme-card__footer{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.theme-card__name{font-weight:800}.theme-card__price{color:var(--color-text-muted);align-items:center;gap:5px;font-size:.875rem;font-weight:700;display:inline-flex}.theme-card__coin-icon{object-fit:contain;width:14px;height:14px}.theme-card__btn{--btn-ledge:var(--ledge);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);cursor:pointer;box-shadow:0 3px 0 var(--btn-ledge);padding:9px 12px;font-size:.875rem;font-weight:800;transition:transform 60ms,box-shadow 60ms}.theme-card__btn:active:not(:disabled){box-shadow:0 1px 0 var(--btn-ledge);transform:translateY(2px)}.theme-card__btn:disabled{cursor:default}.theme-card__btn--buy{--btn-ledge:color-mix(in srgb, var(--theme-accent) 50%, black);background:var(--theme-accent);border-color:var(--theme-accent);color:#10131a}.theme-card__btn--equipped{border-color:var(--theme-accent);color:var(--color-text);box-shadow:none;background:0 0}.theme-card__btn--error{--btn-ledge:color-mix(in srgb, var(--color-danger) 50%, black);background:var(--color-danger);border-color:var(--color-danger);color:#fff}@media (width<=480px){.shop-grid{grid-template-columns:1fr 1fr;gap:10px}.theme-card__preview,.theme-card__body{padding:10px}.theme-card__footer{flex-direction:column;gap:2px}}.how-to-play{width:100%}.power-list{border-top:1px solid var(--color-border);margin-top:20px}.power-list__item{border-bottom:1px solid var(--color-border);grid-template-columns:40px 150px 1fr;align-items:start;column-gap:14px;padding:14px 0;display:grid}.power-list__icon{border:2px solid var(--color-border-strong);border-radius:var(--radius-sm);object-fit:cover;width:40px;height:40px}.power-list__name{color:var(--color-text);padding-top:8px;font-weight:800;line-height:1.3}.power-list__desc{padding-top:8px;line-height:1.5}@media (width<=640px){.power-list__item{grid-template-columns:40px 1fr;row-gap:2px}.power-list__icon{grid-row:span 2}.power-list__name,.power-list__desc{grid-column:2}.power-list__desc{padding-top:0}}:root{--main:#2c7644;--main-strong:#3da35d;--main-glow:#2c764459;--main-bg:#2c764426;--main-border:#2c764459;--bg-main:#0d1a13;--bg-alt:#16261c;--accent:var(--main);--accent-glow:var(--main-glow);--accent-bg:var(--main-bg);--accent-border:var(--main-border);--accent-text:#fff;--color-ink:#0d1a13;--color-surface:#17231c;--color-surface-raised:#1f2e24;--color-surface-recessed:#0c130f;--color-border:#2a3a2f;--color-border-strong:#3a4f3f;--color-accent:var(--main);--color-accent-strong:var(--main-strong);--color-accent-ink:#fff;--color-danger:#e2574c;--color-success:#2dd4bf;--color-text:#eef1f7;--color-text-muted:#93a89d;--text:var(--color-text);--text-dim:var(--color-text-muted);--panel-border:var(--color-border);--font-display:"Press Start 2P", "Courier New", monospace;--font-body:"Nunito", system-ui, -apple-system, sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--ledge:color-mix(in srgb, var(--bg-main) 30%, black);--press-depth:4px;--press-shadow:0 var(--press-depth) 0 var(--ledge)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-main);min-height:100vh;color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.page-intro{margin-bottom:32px}.page-title{font-family:var(--font-display);color:var(--color-text);font-size:1.5rem;font-weight:400;line-height:1.3}.page-lede{max-width:60ch;color:var(--color-text-muted);margin-top:12px;font-size:1.0625rem}.prose{max-width:68ch;color:var(--color-text-muted);font-size:1rem;line-height:1.65}.prose h3{color:var(--color-text);margin:40px 0 12px;font-size:1.25rem;font-weight:800;line-height:1.3}.prose h3:first-child{margin-top:0}.prose p+p,.prose p+ul,.prose ul+p{margin-top:14px}.prose ul{padding-left:1.25rem}.prose li+li{margin-top:6px}.prose strong{color:var(--color-text)}.prose a{color:var(--color-accent-strong);text-underline-offset:3px;font-weight:700}.message{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:3px solid;padding:10px 12px;font-size:.875rem;font-weight:700;line-height:1.4}.message--success{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 10%, transparent)}.message--error{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.message--neutral{color:var(--color-text);background:var(--color-surface)}.btn{border-radius:var(--radius-sm);cursor:pointer;box-shadow:0 var(--press-depth) 0 var(--btn-ledge);border:1px solid #0000;padding:11px 16px;font-size:.9375rem;font-weight:800;transition:transform 60ms,box-shadow 60ms,background-color .15s,border-color .15s;position:relative}.btn:active:not(:disabled){transform:translateY(calc(var(--press-depth) - 1px));box-shadow:0 1px 0 var(--btn-ledge)}.btn:disabled{opacity:.5;cursor:default}.btn--ghost{--btn-ledge:var(--ledge);background:var(--color-surface-raised);border-color:var(--color-border-strong);color:var(--color-text)}.btn--ghost:hover:not(:disabled){border-color:var(--color-accent)}.btn--ghost.armed{--btn-ledge:color-mix(in srgb, var(--color-danger) 45%, var(--ledge));border-color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 14%, var(--color-surface-raised));color:var(--color-text)}.btn--primary{--btn-ledge:color-mix(in srgb, var(--color-accent) 55%, black);background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.btn--primary:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}@media (width<=800px){.page-intro{margin-bottom:24px}.page-title{font-size:1.125rem}.page-lede{font-size:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important}}
