:root{--orange:light-dark(#c35d22,#f09a62)}
.selected-detail{margin-top:14px;padding:14px 16px;border-radius:10px;background:var(--green-soft)}
.selected-detail h3{margin:0 0 8px}
.detail-values{display:flex;gap:18px;flex-wrap:wrap}
.detail-values span{color:var(--muted)}
.detail-values strong{color:var(--text);margin-left:5px}
.detail-link{margin-top:10px;background:transparent;color:var(--green);padding:0;font-weight:600}
.zoom-actions,.chart-actions{display:flex;gap:7px}.chart-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}
.range-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:18px;margin:6px 0 12px}
.range-controls label{display:grid;gap:4px;color:var(--muted);font-size:.8rem}
.range-controls input{accent-color:var(--green);width:100%}
.range-controls output{white-space:nowrap;color:var(--muted);font-size:.8rem}
.chart-marker{cursor:pointer;outline:none}
.chart-marker:focus{stroke:var(--text);stroke-width:3}
.table-scroll{overflow-x:auto}
.stress-table th,.stress-table td{white-space:nowrap}
.stress-table tbody tr{cursor:pointer}
.stress-table tbody tr:hover{background:var(--green-soft)}
@media(max-width:720px){.range-controls{grid-template-columns:1fr}.zoom-actions{margin-top:12px}}
.global-actions{display:flex;align-items:center;gap:8px;min-width:0}.session-picker{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.8rem}.session-picker select{max-width:260px}.day-summary{display:flex;gap:22px;flex-wrap:wrap;margin-top:16px}.day-item{display:grid;gap:3px}.day-item span{color:var(--muted);font-size:.8rem}.day-item strong{font-weight:600}.day-empty{color:var(--muted);margin-top:14px}.danger{background:color-mix(in srgb,var(--red) 13%,transparent);color:var(--red)}dialog{width:min(660px,calc(100% - 28px));border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.28)}dialog::backdrop{background:rgba(10,18,14,.45)}.dialog-head{display:flex;justify-content:space-between;gap:20px}.dialog-head h2{margin:0 0 5px}.dialog-head p{margin:0;color:var(--muted)}.icon-close{background:transparent;color:var(--text);font-size:1.5rem;padding:2px 8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.form-grid label{display:grid;gap:7px;color:var(--muted);font-size:.875rem}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);padding:10px;font:inherit}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.event-tooltip{min-width:240px}.event-tooltip .subjective{border-top:1px solid var(--border);margin-top:7px;padding-top:6px}.event-marker-alert{fill:var(--gold)}.event-marker-manual{fill:var(--green)}.stress-table tbody tr.is-selected{background:var(--green-soft)}
.chart-marker.is-selected{stroke:var(--text);stroke-width:3}.chart-guide{stroke:#111;stroke-width:1;stroke-dasharray:5 5;opacity:.62;pointer-events:none}.event-band{pointer-events:none}.event-band-pre{fill:#2563eb;opacity:.15}.event-band-post{fill:#16a34a;opacity:.17}.event-legend::after{content:"Blauw vlak: 2,5 min voor · groen vlak: 2,5 min na";width:100%;color:var(--muted)}
.dwell-track{fill:var(--surface-2);stroke:var(--border);stroke-width:1}.dwell-label{fill:var(--muted);font-size:12px}.dwell-reset{stroke:var(--red);stroke-width:1.5;stroke-dasharray:3 2}.dwell-start{stroke:var(--orange);stroke-width:1.25;stroke-dasharray:3 4;opacity:.72}.dwell-trigger{stroke:var(--red);stroke-width:3.5}.dwell-start-label{fill:var(--muted);font-size:11px;font-weight:600}.dwell-trigger-label{fill:var(--red);font-size:11px;font-weight:800;letter-spacing:.04em}.dwell-hit{cursor:crosshair;pointer-events:all}.dwell-note{margin:8px 0 2px;color:var(--muted);font-size:.8rem}.dwell-note strong{color:var(--text)}.dwell-tooltip{transition:none!important}
.series-controls label{display:inline-flex;align-items:center;gap:6px}.control-line{display:inline-block;width:22px;border-top:3px solid var(--series-color)}.control-line.dashed{border-top-style:dashed}.control-event{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--gold)}.event-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:-2px 0 10px;color:var(--muted);font-size:.8rem}.event-legend span{display:inline-flex;align-items:center;gap:7px}.event-legend i{display:inline-block}.legend-alert{width:10px;height:10px;border-radius:50%;background:var(--gold)}.legend-manual{width:10px;height:10px;border-radius:2px;background:var(--green)}.event-legend small{margin-left:auto}.technical-details{min-width:150px}.technical-details summary{cursor:pointer;color:var(--green);font-weight:600}.technical-details dl{display:grid;gap:5px;margin:9px 0 0}.technical-details dl div{display:flex;justify-content:space-between;gap:14px}.technical-details dt{color:var(--muted)}.technical-details dd{margin:0;font-weight:600}.window-note{margin-top:12px;padding:10px 12px;border:1px solid var(--gold);border-radius:8px;background:color-mix(in srgb,var(--gold) 9%,transparent);font-size:.875rem}
@media(max-width:880px){.topbar{height:auto;min-height:68px;align-items:flex-start;gap:12px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.global-actions{width:100%;order:3;flex-wrap:wrap}.session-picker{flex:1}.session-picker select{max-width:none;width:100%}}
@media(max-width:620px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.global-actions button{flex:1}.session-picker{width:100%;flex-basis:100%}}
@media print{body{background:#fff;color:#111}.topbar,.tabs,.global-actions,button,.series-controls,.range-controls,.tooltip,.selected-detail,.privacy-note{display:none!important}main{max-width:none;padding:0}.dashboard-head{margin-bottom:16px}.dashboard,.tab-panel[data-panel="overview"]{display:block!important}.tab-panel[data-panel="timeline"],.tab-panel[data-panel="moments"],.tab-panel[data-panel="quality"]{display:none!important}.panel,.metrics article{break-inside:avoid;border-color:#ccc;background:#fff}.chart-wrap,.chart-wrap svg{height:280px!important;min-height:280px}.table-scroll{overflow:visible}.stress-table{font-size:9px}.stress-table th,.stress-table td{white-space:normal;padding:5px}.day-panel{display:block!important}}
