:root{--bg:#0a0e1a;--bg2:#10162a;--bg3:#181d2b;--bg4:#1f2638;--border:#232a3a;--border2:#2c3447;--txt:#e8eaf0;--txtMuted:#8890a3;--txtDim:#5d6680;--accent:#00d4ff;--accent2:#ff7b00;--good:#4ade80;--bad:#ff6b6b;--warn:#facc15;--shadow:0 4px 20px #0006}*{box-sizing:border-box}html,body{color:var(--txt);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;padding:0;font-family:Barlow,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:JetBrains Mono,Consolas,Menlo,monospace}.muted{color:var(--txtMuted)}.dim{color:var(--txtDim)}.small{font-size:12px}.tiny{font-size:11px}.center{text-align:center}.kbd{background:var(--bg4);border:1px solid var(--border2);border-radius:4px;padding:1px 6px;font-family:monospace;font-size:11px;display:inline-block}.topbar{background:var(--bg2);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 22px;display:flex}.topbar h1{letter-spacing:-.3px;margin:0;font-family:Barlow Condensed,sans-serif;font-size:17px;font-weight:700}.topbar h1 span{color:var(--accent)}.topbar .user-chip{color:var(--txtMuted);align-items:center;gap:10px;font-size:12px;display:flex}.topbar .user-chip button{color:var(--txtMuted);border:1px solid var(--border2);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:11px}.topbar .user-chip button:hover{color:var(--txt);border-color:var(--accent)}.shell{width:100%;max-width:980px;margin:0 auto;padding:22px 22px 80px}.shell-wide{max-width:1180px}.card{background:var(--bg3);border:1px solid var(--border);border-radius:10px;margin-bottom:18px;padding:22px}.card h2,.card h3,.card h4{letter-spacing:-.2px;margin-top:0;font-family:Barlow Condensed,sans-serif}.card h2{font-size:24px}.card h3{font-size:18px}.card h4{color:var(--accent);text-transform:uppercase;letter-spacing:1px;font-size:15px}.card p{line-height:1.55}.card ul{padding-left:18px;line-height:1.55}.card ul li{margin-bottom:5px}.card .equation{background:var(--bg);border:1px solid var(--border2);border-radius:6px;margin:4px 0;padding:10px 14px;font-family:monospace;font-size:13px;display:inline-block}.section-banner{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:14px;padding-bottom:14px;display:flex}.section-banner .num{background:linear-gradient(135deg, var(--accent), var(--accent2));width:44px;height:44px;color:var(--bg);border-radius:8px;justify-content:center;align-items:center;font-family:Barlow Condensed,sans-serif;font-size:18px;font-weight:800;display:flex}.section-banner h2{margin:0;font-size:22px}.section-banner .sub{color:var(--txtMuted);margin-top:2px;font-size:12px}.btn{letter-spacing:.8px;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:6px;padding:9px 16px;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:700;transition:opacity .12s,transform .12s;display:inline-block}.btn:hover{opacity:.88}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.4}.btn-primary{background:var(--accent);color:var(--bg)}.btn-secondary{background:var(--accent2);color:var(--bg)}.btn-ghost{color:var(--txt);border-color:var(--border2);background:0 0}.btn-ghost:hover{border-color:var(--accent)}.btn-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.field{margin-bottom:12px}.field label{color:var(--txtMuted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-family:monospace;font-size:10.5px;display:block}.field input,.field textarea,.field select{width:100%;color:var(--txt);background:var(--bg);border:1px solid var(--border2);border-radius:6px;outline:none;padding:9px 11px;font-family:Barlow,sans-serif;font-size:13px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent)}.field textarea{resize:vertical;min-height:60px}.login-shell{background:radial-gradient(ellipse at top, var(--bg2), var(--bg));justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--bg3);border:1px solid var(--border);width:420px;max-width:100%;box-shadow:var(--shadow);border-radius:12px;padding:36px 32px 28px}.login-card .brand{letter-spacing:-.4px;margin-bottom:4px;font-family:Barlow Condensed,sans-serif;font-size:26px;font-weight:700}.login-card .brand span{color:var(--accent)}.login-card .tag{color:var(--txtMuted);margin-bottom:22px;font-size:12px}.login-card .err{color:var(--bad);background:#ff6b6b14;border:1px solid #ff6b6b4d;border-radius:6px;margin-bottom:12px;padding:8px 11px;font-family:monospace;font-size:11.5px}.login-card .footer-note{color:var(--txtDim);margin-top:14px;font-size:10.5px;line-height:1.5}.probe{background:var(--bg4);border:1px solid var(--border2);border-radius:8px;margin:16px 0;padding:16px 18px}.probe-tag{background:var(--accent);color:var(--bg);letter-spacing:.5px;text-transform:uppercase;border-radius:3px;margin-bottom:8px;padding:2px 7px;font-family:monospace;font-size:10px;display:inline-block}.probe-tag.error{background:var(--accent2)}.probe-tag.application{background:var(--good)}.probe-tag.analysis{background:#c084fc}.probe-tag.evaluation{background:var(--warn);color:var(--bg)}.probe-stem{margin-bottom:10px;font-size:14px;line-height:1.55}.probe-opts{flex-direction:column;gap:6px;display:flex}.probe-opt{background:var(--bg);border:1px solid var(--border2);cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:9px 12px;font-size:13px;line-height:1.45;transition:border-color .12s,background .12s;display:flex}.probe-opt:hover{border-color:var(--accent)}.probe-opt input{margin-top:2px}.probe-opt.correct{border-color:var(--good);background:#4ade800f}.probe-opt.incorrect{border-color:var(--bad);background:#ff6b6b0f}.probe-opt.dim{opacity:.5}.probe-feedback{border-radius:6px;margin-top:12px;padding:10px 12px;font-size:12.5px;line-height:1.55}.probe-feedback.correct{background:#4ade8014;border:1px solid #4ade8066}.probe-feedback.incorrect{background:#ff6b6b14;border:1px solid #ff6b6b66}.probe-feedback strong{color:var(--accent)}.progress-bar{background:var(--bg);border-radius:3px;height:6px;margin:12px 0 4px;overflow:hidden}.progress-bar>div{background:linear-gradient(90deg, var(--accent), var(--accent2));height:100%;transition:width .3s}.section-list{gap:10px;display:grid}.section-row{background:var(--bg3);border:1px solid var(--border);cursor:pointer;border-radius:8px;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:12px 14px;transition:border-color .12s,transform .12s;display:grid}.section-row:hover{border-color:var(--accent)}.section-row .num{background:var(--bg4);width:30px;height:30px;color:var(--txtMuted);border-radius:6px;justify-content:center;align-items:center;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:700;display:flex}.section-row.done .num{background:var(--good);color:var(--bg)}.section-row.current .num{background:var(--accent);color:var(--bg)}.section-row .title{font-size:14px;font-weight:600}.section-row .sub{color:var(--txtMuted);margin-top:1px;font-size:11px}.section-row .status{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:3px 8px;font-family:monospace;font-size:10px}.section-row .status.done{color:var(--good);background:#4ade8026}.section-row .status.locked{background:var(--bg4);color:var(--txtDim)}.section-row .status.available{color:var(--accent);background:#00d4ff1f}.calc-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (width<=720px){.calc-grid{grid-template-columns:1fr}}.calc-out{background:var(--bg);border:1px solid var(--border2);border-radius:6px;padding:14px}.calc-out .row{border-bottom:1px dashed var(--border2);justify-content:space-between;padding:6px 0;display:flex}.calc-out .row:last-child{border-bottom:none}.calc-out .row .lbl{color:var(--txtMuted);font-family:monospace;font-size:11.5px}.calc-out .row .val{color:var(--accent);font-weight:700}.calc-out .row .val.warn{color:var(--warn)}.calc-out .row .val.bad{color:var(--bad)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.kpi{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:16px}.kpi .lbl{color:var(--txtMuted);text-transform:uppercase;letter-spacing:.5px;font-family:monospace;font-size:10.5px}.kpi .val{color:var(--accent);margin-top:4px;font-family:Barlow Condensed,sans-serif;font-size:26px;font-weight:700}.kpi .val .unit{color:var(--txtMuted);margin-left:4px;font-size:14px}.fig{background:var(--bg);border:1px solid var(--border2);text-align:center;border-radius:6px;margin:14px 0;padding:16px}.fig svg{max-width:100%;height:auto}.fig figcaption{color:var(--txtMuted);margin-top:8px;font-size:11.5px}.review-row{background:var(--bg3);border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:10px 12px;font-size:13px;display:flex}.review-row .due{color:var(--warn);font-family:monospace;font-size:11px}.review-row .due.now{color:var(--bad)}.review-row .due.future{color:var(--txtMuted)}.footer{border-top:1px solid var(--border);color:var(--txtDim);text-align:center;margin-top:30px;padding-top:20px;font-size:11px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.fade-in{animation:.25s ease-out fadeIn}
