:root{--bg:#0a1628;--bg-card:#131f36;--bg-card-2:#1a2942;--border:#27374f;--text:#cdd6e4;--text-dim:#8a98b3;--text-h:#fff;--accent:#4fa3ff;--accent-bg:#4fa3ff1f;--danger:#ff6b6b;--warn:#f5c842;--ok:#4fd18b;--hsa:#30d158;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:16px/150% system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}#root{max-width:1280px;min-height:100vh;margin:0 auto;padding:0 32px 48px}h1,h2,h3{color:var(--text-h);font-weight:600}h1{font-size:28px}h2{margin:0 0 12px;font-size:20px}h3{margin:0 0 8px;font-size:16px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg-card-2);color:var(--text-h);border-radius:8px;padding:10px 16px}button:hover{border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#04162e;font-weight:600}input,select,textarea{font:inherit;background:var(--bg-card-2);color:var(--text-h);border:1px solid var(--border);border-radius:8px;width:100%;padding:10px 12px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:20px}.row{align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.muted{color:var(--text-dim);font-size:14px}nav.topnav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px 0;display:flex}nav.topnav .links{gap:20px;display:flex}nav.topnav .links a.active{color:var(--text-h);font-weight:600;text-decoration:none}.tag{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.tag.high{color:var(--danger);background:#ff6b6b26}.tag.medium{color:var(--warn);background:#f5c84226}.tag.low{color:var(--ok);background:#4fd18b26}.stats-row{flex-wrap:wrap;gap:12px;margin:0 0 16px;display:flex}.stat-box{text-align:center;border:1px solid var(--border);border-radius:8px;flex:1;min-width:80px;padding:10px 8px}.stat-box .count{font-size:22px;font-weight:700}.stat-box .label{letter-spacing:.5px;font-size:11px}.stat-box.high{background:#ff6b6b1a;border-color:#ff6b6b66}.stat-box.high .count{color:var(--danger)}.stat-box.medium{background:#f5c8421a;border-color:#f5c84266}.stat-box.medium .count{color:var(--warn)}.stat-box.low{background:#4fd18b1a;border-color:#4fd18b66}.stat-box.low .count{color:var(--ok)}.stat-box.total{background:#4fa3ff1a;border-color:#4fa3ff66}.stat-box.total .count{color:var(--accent)}.totals-row{text-align:center;justify-content:center;gap:24px;margin:0 0 16px;display:flex}.totals-row .amount{font-size:20px}.plan-card{background:var(--bg-card-2);border:1px solid var(--border);border-radius:10px;margin-top:8px;padding:14px}.plan-carrier{color:var(--text-h);font-size:16px;font-weight:700}.role-badge{letter-spacing:.5px;border:1px solid;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.progress{margin-top:10px}.progress-label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.progress-label{color:var(--text-dim);letter-spacing:.3px;font-size:12px;font-weight:600}.progress-met{color:var(--ok);background:#4fd18b26;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.progress-track{background:var(--border);border-radius:4px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:4px;height:100%}.progress-fill.met{background:var(--ok)}.progress-amounts{color:var(--text-dim);justify-content:space-between;margin-top:4px;font-size:12px;display:flex}.progress-no-max{color:var(--warn);margin-top:2px;font-size:12px}.plan-hsa{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.hsa-label{color:var(--hsa);letter-spacing:.3px;font-size:12px;font-weight:600}.hsa-balance{color:var(--hsa);font-size:18px;font-weight:700}.alert-banner{border:1px solid;border-radius:10px;gap:10px;margin-bottom:12px;padding:12px;display:flex}.alert-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.alert-title{margin-bottom:3px;font-size:14px;font-weight:700}
