:root{color-scheme:dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0f1115;color:#f5f7fb;--accent: #b8ff4f;--magenta: #fa59c5}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(184,255,79,.09),transparent 28%),linear-gradient(180deg,#10131a,#090b10)}button{font:inherit}.app-shell{max-width:1040px;margin:0 auto;padding:40px 20px 56px}.hero{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--accent)}h1,h2{margin:0}h1{font-size:clamp(2rem,3vw,3.25rem);max-width:720px;letter-spacing:-.04em;line-height:1}h2{font-size:1.1rem;margin-bottom:14px}.subcopy{margin:12px 0 0;max-width:620px;color:#aab4c3;line-height:1.5}.panel-copy{margin:0 0 18px;color:#aab4c3;line-height:1.5}.auth-actions,.button-row{display:flex;gap:10px;flex-wrap:wrap}.primary,.secondary{border:1px solid transparent;border-radius:10px;padding:10px 16px;cursor:pointer;transition:transform .2s ease,opacity .2s ease,border-color .2s ease}.primary{background:var(--accent);color:#07150f;font-weight:700}.secondary{background:#1a2230;border-color:#2f3d54;color:#f5f7fb}.primary:disabled,.secondary:disabled{opacity:.45;cursor:not-allowed}.primary:hover:not(:disabled),.secondary:hover:not(:disabled){transform:translateY(-1px)}.panel-grid{display:grid;gap:18px}.panel{background:#0c1018eb;border:1px solid #1f2937;border-radius:16px;padding:18px;box-shadow:0 18px 50px #00000047}.details{display:grid;gap:12px;margin:16px 0 0}.details div{display:grid;gap:4px}.details dt{color:#8ea0b8;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.details dd{margin:0;font-size:15px}#authStatus{margin:0;color:#dbe7ff}.dataset-field{display:grid;gap:8px;margin-top:20px}.dataset-field span{color:#8ea0b8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.dataset-field select{width:100%;min-height:46px;padding:0 12px;border:1px solid #2f3d54;border-radius:10px;background:#111722;color:#f5f7fb;font:inherit}.dataset-field select:disabled{cursor:not-allowed;opacity:.5}.dataset-load{width:100%;margin-top:10px}.data-status{min-height:44px;margin:16px 0 0;padding:12px;border-left:3px solid var(--accent);background:#b8ff4f0d;color:#dbe7ff;font-size:14px;line-height:1.45}.tracks-panel,.target-states-panel{grid-column:1 / -1}.boolean-matrix{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0 0 16px;padding:0;border:0}.boolean-matrix label{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid #2f3d54;border-radius:10px;background:#111722;cursor:pointer}.boolean-matrix label:has(input:checked){border-color:var(--accent);background:#b8ff4f14}.boolean-matrix input{width:18px;height:18px;accent-color:var(--accent)}.track-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0;padding:0;list-style:none}.track-list li{display:grid;gap:6px;padding:14px;border:1px solid #2f3d54;border-radius:10px;background:#111722}.track-list strong{color:var(--accent)}.track-list span{color:#aab4c3;font-size:13px;line-height:1.4}.biometric-chart{margin-top:22px;padding-top:20px;border-top:1px solid #2f3d54}.chart-controls{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.chart-controls label{display:grid;flex:1 1 280px;gap:8px}.chart-controls label span{color:#aab4c3;font-size:12px;font-weight:700;letter-spacing:.08em}.chart-controls select{width:100%;min-height:44px;padding:0 12px;border:1px solid #2f3d54;border-radius:8px;background:#111722;color:#f4f7fb}.chart-frame{margin-top:14px;padding:12px;border:1px solid #2f3d54;border-radius:10px;background:#090d14;overflow:hidden}.chart-frame canvas{display:block;width:100%;height:300px}.boundary-panel p:not(.eyebrow){max-width:720px;color:#aab4c3;line-height:1.6}.boundary-panel a{display:inline-flex;margin-top:8px;color:var(--accent);font-weight:700;text-decoration:none}.boundary-panel a:hover{text-decoration:underline}@media(min-width:860px){.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.boundary-panel{grid-column:1 / -1}}
