*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--text: #c9d1d9;--text-muted: #8b949e;--text-bright: #f0f6fc;--border: #30363d;--accent: #58a6ff;--success: #3fb950;--warning: #d29922;--danger: #f85149;--hold: #f85149}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh}#app{max-width:960px;margin:0 auto;padding:2rem 1rem}header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}header h1{font-size:1.5rem;font-weight:600;color:var(--text-bright);margin-bottom:.25rem}header .subtitle{font-size:.875rem;color:var(--text-muted)}nav{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}nav a{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text);text-decoration:none;font-size:.875rem;transition:background .15s,border-color .15s}nav a:hover{background:var(--bg-tertiary);border-color:var(--text-muted)}nav a.active{background:var(--accent);border-color:var(--accent);color:var(--bg)}main{min-height:400px}h2{font-size:1.25rem;font-weight:600;color:var(--text-bright);margin-bottom:1rem}h3{font-size:1rem;font-weight:600;color:var(--text);margin:1.5rem 0 .75rem}.card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:1rem;margin-bottom:1rem}.card-header{font-weight:600;color:var(--text-bright);margin-bottom:.5rem}.label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.25rem}.value{font-size:1rem;color:var(--text)}.value-large{font-size:1.25rem;font-weight:600;color:var(--text-bright)}.hold-badge{display:inline-block;background:var(--hold);color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:4px;text-transform:uppercase}.status-done{color:var(--success)}.status-open{color:var(--warning)}.status-blocked{color:var(--danger)}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{text-align:left;padding:.75rem;border-bottom:1px solid var(--border)}th{color:var(--text-muted);font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}td{color:var(--text)}tr:last-child td{border-bottom:none}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.assumption-warning{background:#d299221a;border:1px solid var(--warning);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.875rem}.assumption-warning strong{color:var(--warning)}.formula{font-family:SF Mono,Monaco,Cascadia Code,monospace;background:var(--bg-tertiary);padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin:.5rem 0;overflow-x:auto}.formula-key{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.unknown-badge{display:inline-block;background:var(--bg-tertiary);color:var(--text-muted);font-size:.75rem;padding:.125rem .5rem;border-radius:4px}.insight-card{background:var(--bg-secondary);border-left:3px solid var(--accent);padding:1rem;margin-bottom:1rem}.insight-text{color:var(--text-bright);margin-bottom:.5rem}.implication{font-size:.875rem;color:var(--text-muted)}.milestone{position:relative;padding-left:2rem;padding-bottom:1.5rem;border-left:2px solid var(--border);margin-left:.5rem}.milestone:last-child{border-left-color:transparent;padding-bottom:0}.milestone:before{content:"";position:absolute;left:-6px;top:0;width:10px;height:10px;border-radius:50%;background:var(--border)}.milestone.active:before{background:var(--accent)}.milestone.complete:before{background:var(--success)}.milestone-day{font-weight:600;color:var(--text-bright)}.milestone-rule{color:var(--text);margin:.25rem 0}.milestone-notes{font-size:.875rem;color:var(--text-muted)}.niche-row td:first-child{font-weight:600}.timing-first{background:#3fb95026;color:var(--success);padding:.125rem .5rem;border-radius:4px;font-size:.75rem}.timing-later{color:var(--text-muted);font-size:.75rem}
