:root{--bg-dark: #090d16;--bg-card: #111827;--bg-card-elevated: #1e293b;--border-subtle: #334155;--text-main: #f8fafc;--text-muted: #94a3b8;--accent-blue: #38bdf8;--accent-indigo: #6366f1;--accent-green: #22c55e;--accent-amber: #f59e0b}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-dark);color:var(--text-main)}.snap-container{height:100vh;height:100dvh;width:100vw;overflow-y:scroll;scroll-snap-type:y mandatory;scroll-behavior:smooth}.snap-slide{height:100vh;height:100dvh;width:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 0%,#1e293b 0%,var(--bg-dark) 72%)}.slide-dots{position:fixed;right:1.25rem;top:50%;transform:translateY(-50%);z-index:35;display:flex;flex-direction:column;gap:.65rem}.slide-dot-btn{background:none;border:none;display:flex;align-items:center;justify-content:flex-end;gap:.5rem;cursor:pointer;color:var(--text-muted)}.slide-dot-label{font-family:JetBrains Mono,monospace;font-size:.7rem;opacity:0;transform:translate(4px);transition:all .18s ease;color:var(--text-muted)}.slide-dot-btn:hover .slide-dot-label,.slide-dot-btn.active .slide-dot-label{opacity:1;transform:translate(0)}.slide-dot-btn.active .slide-dot-label{color:var(--accent-blue);font-weight:700}.slide-dot-indicator{width:8px;height:8px;border-radius:999px;background:#94a3b859;transition:all .2s ease}.slide-dot-btn.active .slide-dot-indicator{height:22px;background:var(--accent-blue)}.app-header{border-bottom:1px solid rgba(51,65,85,.55);background:#0f172abf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-shrink:0}.header-inner{max-width:960px;margin:0 auto;padding:.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-group{display:flex;align-items:center;gap:.7rem}.brand-logo{width:32px;height:32px;background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid var(--border-subtle);border-radius:8px;position:relative}.brand-logo .dot{position:absolute;width:7px;height:7px;border-radius:50%}.brand-logo .dot-top{top:5px;left:11.5px;background:var(--accent-blue)}.brand-logo .dot-left{bottom:6px;left:6px;background:#f8fafc}.brand-logo .dot-right{bottom:6px;right:6px;background:#334155}.brand-title-row{display:flex;align-items:center;gap:.5rem}.brand-title{font-size:1.15rem;font-weight:800;letter-spacing:.08em}.daily-badge{font-family:JetBrains Mono,monospace;font-size:.72rem;padding:.12rem .45rem;border-radius:6px;background:#38bdf81f;color:var(--accent-blue);border:1px solid rgba(56,189,248,.3)}.mode-tabs{display:flex;background:#0f172a;padding:.2rem;border-radius:9px;border:1px solid var(--border-subtle);gap:.2rem}.mode-tab{border:none;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600;padding:.4rem .9rem;border-radius:6px;cursor:pointer;transition:all .18s ease}.mode-tab.active{background:var(--bg-card-elevated);color:var(--text-main);border:1px solid rgba(56,189,248,.35)}.header-actions{display:flex;align-items:center;gap:.5rem}.text-link-btn{background:transparent;border:none;color:var(--text-muted);font-size:.8rem;font-weight:500;cursor:pointer;padding:.35rem .6rem;transition:color .15s ease}.text-link-btn:hover{color:var(--accent-blue)}.streak-pill{display:flex;align-items:center;gap:.4rem;padding:.32rem .65rem;border-radius:8px;background:#1e293bcc;border:1px solid var(--border-subtle);font-size:.78rem}.streak-label{color:var(--text-muted)}.icon-btn{padding:.35rem .7rem;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-card-elevated);color:var(--text-main);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s ease}.icon-btn:hover{border-color:var(--accent-blue)}.main-container{max-width:880px;width:100%;margin:0 auto;padding:.75rem 1.25rem;flex:1;display:flex;flex-direction:column;justify-content:center;gap:.85rem;min-height:0}.board-card{background:#111827d9;border:1px solid var(--border-subtle);border-radius:16px;padding:.85rem 1.15rem;box-shadow:0 12px 32px #00000059;display:flex;flex-direction:column;min-height:0}.board-card.board-solved{border-color:var(--accent-green)}.board-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.legend-row{display:flex;align-items:center;gap:1rem;font-size:.78rem;color:var(--text-muted)}.legend-item{display:flex;align-items:center;gap:.4rem}.legend-ball{width:11px;height:11px;border-radius:50%;display:inline-block}.legend-ball.white{background:#f8fafc;border:1px solid #94a3b8}.legend-ball.black{background:#0f172a;border:1.5px solid var(--accent-blue)}.legend-ball.ai-ring{border:2px solid var(--accent-green)}.solved-inline-tag{font-family:JetBrains Mono,monospace;font-size:.74rem;color:#4ade80;background:#22c55e1f;border:1px solid rgba(34,197,94,.35);padding:.2rem .6rem;border-radius:999px}.svg-wrapper{width:100%;display:flex;justify-content:center}.pyramid-svg{width:100%;max-height:43vh;-webkit-user-select:none;user-select:none}.ball-group{cursor:pointer}.ball-group.disabled{cursor:default}.ball-circle{transition:transform .18s ease,fill .2s ease,stroke .2s ease;transform-box:fill-box;transform-origin:center}.ball-group:hover .ball-circle{transform:scale(1.06)}.radius-preview-circle{fill:#38bdf80a;stroke:#38bdf859;stroke-width:1.5;stroke-dasharray:6 4;pointer-events:none}.affected-halo{fill:none;stroke:#facc1599;stroke-width:2.2;stroke-dasharray:4 3;pointer-events:none}.controls-panel{background:#111827d9;border:1px solid var(--border-subtle);border-radius:16px;padding:.85rem 1.15rem;display:flex;flex-direction:column;gap:.75rem}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.metric-box{background:#1e293b8c;border:1px solid rgba(51,65,85,.65);border-radius:10px;padding:.55rem .85rem;display:flex;flex-direction:column;gap:.15rem}.metric-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.metric-value{font-family:JetBrains Mono,monospace;font-size:1.1rem;color:var(--text-main)}.metric-value.accent{color:var(--accent-blue)}.progress-bar-track{width:100%;height:5px;background:#0f172a;border-radius:999px;overflow:hidden;margin-top:.2rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-blue),var(--accent-green));transition:width .25s ease}.size-selector-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;padding:.55rem .85rem;background:#0f172aa6;border-radius:10px;border:1px solid rgba(51,65,85,.55)}.size-label-group{display:flex;flex-direction:column;gap:.1rem}.size-title{font-weight:700;font-size:.82rem}.size-desc{font-size:.74rem;color:var(--text-muted)}.size-controls-right{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.size-slider{width:110px;accent-color:var(--accent-blue);cursor:pointer}.size-buttons{display:flex;gap:.3rem}.size-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--border-subtle);background:var(--bg-card-elevated);color:var(--text-main);font-size:.8rem;font-weight:700;cursor:pointer}.size-btn.active{background:var(--accent-blue);color:#090d16;border-color:var(--accent-blue)}.actions-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem}.left-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.btn{border:none;border-radius:9px;padding:.5rem .95rem;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .16s ease}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-Warning{background:#d97706;color:#fff}.btn-secondary{background:var(--bg-card-elevated);color:var(--text-main);border:1px solid var(--border-subtle)}.btn-secondary:hover:not(:disabled){border-color:var(--accent-blue)}.preview-toggle{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--text-muted);cursor:pointer}.human-challenge-pill{font-size:.78rem;font-weight:600;padding:.45rem .8rem;border-radius:8px;background:#1e293bcc;border:1px solid var(--border-subtle);color:var(--text-muted)}.app-footer{width:100%;padding:.45rem 1.25rem;border-top:1px solid rgba(51,65,85,.35);background:#090d1699;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.footer-inner{max-width:880px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.footer-side{flex:1;display:flex;align-items:center}.footer-left{justify-content:flex-start}.footer-right{justify-content:flex-end}.footer-brand{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);opacity:.55;-webkit-user-select:none;user-select:none}.github-footer-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);text-decoration:none;font-size:.78rem;font-weight:500;padding:.2rem .5rem;border-radius:6px;transition:color .15s ease,background-color .15s ease}.github-footer-link:hover{color:var(--text-main);background:#ffffff0f}.github-footer-link .github-icon{flex-shrink:0;transition:transform .15s ease}.github-footer-link:hover .github-icon{transform:scale(1.1)}.github-slide-btn{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;font-size:.85rem}.github-slide-btn:hover{color:var(--text-main);border-color:var(--accent-blue)}.scroll-down-btn{background:none;border:none;color:var(--text-muted);font-size:.78rem;font-weight:500;cursor:pointer;letter-spacing:.02em;transition:color .15s ease;white-space:nowrap}.scroll-down-btn:hover{color:var(--accent-blue)}.context-slide{justify-content:center;align-items:center;padding:2.5rem 2rem;border-top:1px solid rgba(51,65,85,.4)}.slide-content{max-width:880px;width:100%;display:flex;flex-direction:column;gap:1.25rem}.slide-kicker{font-family:JetBrains Mono,monospace;font-size:.78rem;letter-spacing:.12em;color:var(--accent-blue);text-transform:uppercase}.slide-title{font-size:1.85rem;font-weight:800;line-height:1.22;letter-spacing:-.02em}.slide-lead{font-size:.98rem;line-height:1.65;color:#cbd5e1}.slide-lead code,.context-card code{font-family:JetBrains Mono,monospace;font-size:.88em;background:#1e293be6;padding:.12rem .4rem;border-radius:5px;color:#e2e8f0}.slide-grid-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;margin-top:.35rem}.context-card{background:#111827e6;border:1px solid var(--border-subtle);border-radius:14px;padding:1.35rem;display:flex;flex-direction:column;gap:.75rem}.context-card h3{font-size:1.05rem;color:var(--text-main)}.context-card p{font-size:.9rem;line-height:1.6;color:#cbd5e1}.card-subtext{color:var(--text-muted)!important;font-size:.84rem!important}.formula-box{font-family:JetBrains Mono,monospace;font-size:1.05rem;font-weight:700;text-align:center;padding:.75rem;border-radius:10px;background:#0f172a;border:1px solid rgba(56,189,248,.35);color:var(--accent-blue)}.clean-table{width:100%;border-collapse:collapse;font-size:.85rem}.clean-table th,.clean-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid rgba(51,65,85,.55)}.clean-table th{color:var(--text-muted);font-weight:600}.clean-table td{font-family:JetBrains Mono,monospace}.ai-architecture-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.9rem}.mini-spec{background:#111827e6;border:1px solid var(--border-subtle);border-radius:12px;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.35rem}.mini-spec strong{font-size:.9rem;color:var(--accent-blue)}.mini-spec span{font-size:.8rem;line-height:1.5;color:var(--text-muted)}.chart-showcase{background:#0f172a;border:1px solid var(--border-subtle);border-radius:12px;padding:.5rem;display:flex;justify-content:center}.learning-chart-img{width:100%;max-height:28vh;object-fit:contain;border-radius:8px}.slide-footer-action{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:.25rem;flex-wrap:wrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal-card{background:#111827;border:1px solid var(--border-subtle);border-radius:16px;max-width:500px;width:100%;padding:1.5rem;box-shadow:0 20px 50px #0009}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.modal-header h2{font-size:1.1rem}.close-btn{background:transparent;border:1px solid var(--border-subtle);border-radius:6px;padding:.25rem .6rem;color:var(--text-muted);font-size:.78rem;cursor:pointer}.stats-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:1.25rem}.stat-item{background:#1e293b;border-radius:10px;padding:.75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.25rem}.stat-item strong{font-size:1.25rem;font-family:JetBrains Mono,monospace}.stat-item span{font-size:.72rem;color:var(--text-muted)}.daily-summary-card{background:#1e293bb3;border:1px solid rgba(56,189,248,.3);border-radius:12px;padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.65rem}.share-btn{width:100%}.pending-daily-msg{text-align:center;color:var(--text-muted);font-size:.88rem;padding:.75rem}.help-body{display:flex;flex-direction:column;gap:1rem;font-size:.88rem;line-height:1.55;color:#cbd5e1}.help-section h3{color:var(--accent-blue);font-size:.94rem;margin-bottom:.35rem}.help-section ul{padding-left:1.2rem;display:flex;flex-direction:column;gap:.35rem}.help-section code{font-family:JetBrains Mono,monospace;background:#1e293b;padding:.1rem .35rem;border-radius:4px}.help-footer{display:flex;justify-content:flex-end;padding-top:.5rem}.gameover-card{border-color:#f8717173}.gameover-body{display:flex;flex-direction:column;gap:1.25rem;font-size:.92rem;line-height:1.6;color:#cbd5e1}.gameover-actions{display:flex;gap:.65rem;justify-content:flex-end;flex-wrap:wrap}@media(max-width:768px){.snap-container{scroll-snap-type:y proximity}.snap-slide{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.slide-dots{display:none}.header-inner{padding:.55rem .85rem;flex-wrap:wrap;gap:.5rem}.brand-title{font-size:1rem}.header-actions{width:100%;justify-content:space-between;border-top:1px solid rgba(51,65,85,.35);padding-top:.45rem}.text-link-btn{display:none}.main-container{padding:.5rem .75rem;gap:.65rem}.board-card{padding:.65rem .75rem}.pyramid-svg{max-height:36vh}.controls-panel{padding:.7rem .8rem;gap:.6rem}.metric-box{padding:.45rem .6rem}.metric-value{font-size:.95rem}.size-selector-bar{flex-direction:column;align-items:flex-start;padding:.5rem .7rem}.size-controls-right{width:100%;justify-content:space-between}.size-slider{flex:1;min-width:80px}.size-buttons{width:100%;flex-wrap:wrap;justify-content:flex-start}.actions-row{flex-direction:column;align-items:stretch}.left-actions{justify-content:space-between}.right-actions{width:100%}.right-actions .btn{width:100%;padding:.65rem 1rem}.context-slide{padding:1.75rem 1rem}.slide-title{font-size:1.35rem}.slide-lead{font-size:.9rem}.slide-grid-two{grid-template-columns:1fr;gap:.85rem}.context-card{padding:1rem}}@media(max-width:480px){.metrics-grid{grid-template-columns:1fr 1fr}.metrics-grid .metric-box:last-child{grid-column:1 / -1}.stats-summary-grid{grid-template-columns:repeat(2,1fr)}.modal-card{padding:1.15rem}.legend-row{gap:.6rem;font-size:.72rem;flex-wrap:wrap}.footer-brand{display:none}.app-footer{padding:.35rem .75rem}.footer-inner{justify-content:space-between}.scroll-down-btn{font-size:.72rem}}
