:root{--bg: #0a0e0a;--panel: #0f150f;--border: #1f2a1f;--fg: #b6f7b6;--fg-dim: #4c7a4c;--accent: #39ff14;font-family:Cascadia Code,Consolas,ui-monospace,monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100%}.header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.4rem;border-bottom:1px solid var(--border);background:var(--panel)}.title{margin:0;font-weight:400}.logo{display:inline-flex;align-items:baseline;gap:.35em;font-family:inherit;line-height:1;white-space:nowrap}.logo-prompt{color:var(--fg-dim)}.logo-word{color:var(--fg);letter-spacing:.05em}.logo-accent{color:var(--accent);text-shadow:0 0 12px rgba(57,255,20,.35)}.logo-cursor{color:var(--accent);margin-left:-.15em}.logo-sm{font-size:1.15rem}.logo-lg{font-size:2.4rem}.boot-screen{height:100%;display:grid;place-items:center}.header-right{display:flex;align-items:center;gap:1rem}.rebirth-badge{font-size:.8rem;letter-spacing:.2em;color:var(--bg);background:var(--accent);padding:.3rem .6rem;border-radius:4px;text-shadow:none}.signin-btn{font-family:inherit;font-size:.8rem;padding:.45rem .9rem;color:var(--bg);background:var(--accent);border:none;border-radius:4px;cursor:pointer}.auth-user{display:flex;align-items:center;gap:.55rem}.avatar{width:26px;height:26px;border-radius:50%;border:1px solid var(--border)}.auth-name{font-size:.8rem;color:var(--fg);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signout-btn{font-family:inherit;font-size:.72rem;padding:.3rem .6rem;color:var(--fg-dim);background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer}.saved-indicator{font-size:.72rem;letter-spacing:.1em;color:var(--accent)}.lb-btn{font-size:1rem;line-height:1;padding:.35rem .5rem;background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer}.lb-btn:hover{border-color:var(--accent)}.leaderboard-modal{width:min(620px,94vw)}.lb-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.lb-close{font-family:inherit;font-size:.9rem;color:var(--fg-dim);background:transparent;border:none;cursor:pointer}.lb-msg{color:var(--fg-dim);font-size:.9rem;padding:1rem 0;text-align:center}.lb-table-wrap{overflow-x:auto}.lb-table{width:100%;border-collapse:collapse;font-size:.85rem}.lb-table th{text-align:left;color:var(--fg-dim);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:.5rem .6rem;border-bottom:1px solid var(--border)}.lb-table td{padding:.5rem .6rem;border-bottom:1px solid #141a14;white-space:nowrap}.lb-you{background:#39ff1414}.lb-name{color:var(--fg)}.lb-badge{margin-left:.5rem;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:.1rem .35rem;border-radius:3px}.body{flex:1;display:flex;min-height:0}.play-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;-webkit-user-select:none;user-select:none}.sidebar{width:280px;border-left:1px solid var(--border);background:var(--panel);padding:1.2rem}.sidebar-title{font-size:.9rem;letter-spacing:.25em;color:var(--fg-dim);margin-bottom:.8rem}.sidebar-empty{color:var(--fg-dim);font-size:.85rem}.tier-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.tier-row{display:flex;align-items:center;gap:.75rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:6px;background:#0c110c}.tier-row.is-next{border-color:var(--fg-dim)}.tier-row.is-locked{opacity:.4}.tier-glyph{font-size:1.6rem;width:1.6rem;text-align:center;color:var(--fg)}.tier-meta{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0}.tier-code{font-size:.7rem;color:var(--fg-dim)}.tier-mult{font-size:.85rem;color:var(--fg)}.tier-cost{font-size:.75rem;color:var(--accent)}.buy-btn{font-family:inherit;font-size:.75rem;letter-spacing:.15em;padding:.4rem .7rem;color:var(--bg);background:var(--accent);border:none;border-radius:4px;cursor:pointer}.buy-btn:disabled{background:var(--border);color:var(--fg-dim);cursor:not-allowed}.lock-icon{font-size:.9rem;filter:grayscale(1)}.stats-panel{display:flex;gap:1.6rem;padding:.6rem 1rem;border:1px solid var(--border);border-radius:6px;background:#0c110c}.stat{display:flex;flex-direction:column;align-items:center;gap:.15rem}.stat-value{font-size:1.1rem;color:var(--fg)}.stat-label{font-size:.65rem;letter-spacing:.15em;color:var(--fg-dim);text-transform:uppercase}.rebirth-btn{font-family:inherit;font-size:1rem;letter-spacing:.2em;padding:.7rem 1.6rem;color:var(--bg);background:var(--accent);border:none;border-radius:6px;cursor:pointer}.bit-counter{display:flex;flex-direction:column;align-items:center;gap:.2rem}.bit-value{font-size:3rem;font-weight:700;color:var(--accent);line-height:1}.bit-label{font-size:.8rem;letter-spacing:.35em;color:var(--fg-dim)}.click-area{position:relative;display:flex;align-items:center;justify-content:center}.click-target{font-family:inherit;background:transparent;border:none;cursor:pointer;padding:2rem 3rem;touch-action:manipulation;display:grid;place-items:center}.glyph{grid-area:1 / 1;font-size:10rem;line-height:1;color:var(--fg);text-shadow:0 0 24px rgba(57,255,20,.25)}.click-target:focus-visible{outline:1px solid var(--fg-dim);border-radius:8px}.float-layer{position:absolute;top:0;left:50%;pointer-events:none}.float-num{position:absolute;transform:translate(-50%);top:-.5rem;font-size:1.6rem;font-weight:700;color:var(--accent);white-space:nowrap}.progress-strip{display:flex;flex-wrap:wrap;gap:.15rem .35rem;justify-content:center;padding:.7rem 1rem;border-top:1px solid var(--border);background:var(--panel)}.pip{font-size:.85rem;line-height:1;width:.9rem;text-align:center}.pip-owned{color:var(--accent)}.pip-current{color:var(--fg);text-shadow:0 0 8px var(--accent);transform-origin:center}.pip-locked{color:var(--fg-dim);opacity:.4}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;z-index:20}.modal{width:min(520px,92vw);background:var(--panel);border:1px solid var(--fg-dim);border-radius:10px;padding:1.6rem;box-shadow:0 0 40px #39ff1426}.modal-title{color:var(--accent);letter-spacing:.1em;margin-bottom:1rem}.modal-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.4rem}.modal-cols h3{font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:.5rem}.modal-cols ul{list-style:none;display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:var(--fg)}.keep h3{color:var(--accent)}.lose h3{color:#ff5a5a}.modal-actions{display:flex;justify-content:flex-end;gap:.8rem}.btn-ghost,.btn-danger{font-family:inherit;font-size:.85rem;letter-spacing:.1em;padding:.55rem 1.2rem;border-radius:5px;cursor:pointer;border:1px solid var(--border)}.btn-ghost{background:transparent;color:var(--fg)}.btn-danger{background:#ff5a5a;color:var(--bg);border-color:#ff5a5a}.login-screen{height:100%;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(440px,92vw);display:flex;flex-direction:column;align-items:center;gap:1.1rem;padding:2.4rem 2rem;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 0 60px #39ff1414;text-align:center}.login-logo{margin-bottom:.2rem}.login-tag{color:var(--fg-dim);font-size:.9rem}.login-actions{display:flex;flex-direction:column;gap:.7rem;width:100%;margin-top:.4rem}.google-btn,.guest-btn{font-family:inherit;font-size:.9rem;padding:.75rem 1rem;border-radius:6px;cursor:pointer;width:100%}.google-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;color:#202124;background:#fff;border:none;font-weight:600}.google-btn:disabled{opacity:.5;cursor:not-allowed}.g-mark{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#4285f4;color:#fff;font-weight:700;font-size:.8rem}.guest-btn{color:var(--fg);background:transparent;border:1px solid var(--fg-dim)}.guest-warn{font-size:.75rem;color:#d9c25a;line-height:1.5}.login-note{font-size:.72rem;color:var(--fg-dim)}.rain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:30;overflow:hidden}.rain-drop{position:absolute;top:0;color:var(--accent);text-shadow:0 0 8px var(--accent);line-height:1}
