/* Dashboard shares the application's theme tokens; the standard light theme stays white. */
body:has(.dashboard-page) { background: var(--color-base-100); }
.dashboard-page { max-width:1152px; margin:0 auto; padding:12px 0 48px; color:var(--color-base-content); font-size:14px; line-height:1.65; }
.dashboard-page h1, .dashboard-page h2, .dashboard-page h3, .dashboard-page p { margin:0; }
.dashboard-page h1 { font-size:26px; font-weight:650; letter-spacing:-.025em; line-height:1.35; }
.dashboard-page h2 { font-size:17px; font-weight:650; line-height:1.5; }
.dashboard-page h3 { font-size:14px; font-weight:600; }
.dashboard-page a:not(.btn):not(.dashboard-state):not(.dashboard-periods a) { color:var(--color-primary); text-underline-offset:4px; }
.dashboard-page a:not(.btn):hover { text-decoration:underline; }
.dashboard-page :is(a, summary, input, select):focus-visible { outline:2px solid var(--color-primary); outline-offset:4px; }
.dashboard-page ::selection { background:color-mix(in oklab,var(--color-primary) 20%,transparent); }
.dashboard-page .btn { min-height:40px; border-radius:7px; font-weight:550; }
.dashboard-muted, .dashboard-heading > div > p { color:color-mix(in oklab,var(--color-base-content) 70%,var(--color-base-100)); font-size:12px; }
.dashboard-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:30px; }
.dashboard-heading > div > p { margin-top:7px; font-size:14px; }
.dashboard-toolbar, .dashboard-group-form { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.dashboard-group-form .select { min-height:40px; width:170px; border-radius:7px; }
.dashboard-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:21px; }
.dashboard-section-heading > div > p { margin-top:4px; }
.dashboard-current { padding:16px 0; border-block:1px solid var(--color-base-300); }
.dashboard-state-row { display:flex; align-items:stretch; flex-wrap:wrap; gap:12px 28px; }
.dashboard-state, .dashboard-total { display:flex; align-items:center; gap:7px; min-width:0; padding:2px 0; color:inherit; }
.dashboard-total { border-right:1px solid var(--color-base-300); padding-right:30px; margin-right:6px; }
.dashboard-state strong, .dashboard-total strong { font-size:18px; font-weight:600; font-variant-numeric:tabular-nums; line-height:1.4; }
.dashboard-state span, .dashboard-total span { font-size:12px; color:var(--color-base-content); }
.dashboard-state-up { color:var(--color-success); }
.dashboard-state-down { color:var(--color-error); }
.dashboard-state-partial, .dashboard-state-pending { color:var(--color-warning); }
.dashboard-attention-shortcut { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding-top:18px; margin-top:20px !important; border-top:1px solid var(--color-base-300); }
.dashboard-attention-shortcut strong { font-weight:550; }
.dashboard-attention-shortcut a { margin-left:8px; }
.dashboard-status-dot, .dashboard-event-dot { display:inline-block; width:7px; height:7px; flex-shrink:0; border-radius:50%; background:var(--color-warning); }
.dashboard-filter-results { padding-top:20px; }
.dashboard-filter-results p { padding-top:8px; overflow-wrap:anywhere; }
.dashboard-notice { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 20px; margin-top:24px; background:var(--color-base-200); border-radius:8px; }
.dashboard-notice p { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.dashboard-notice strong { font-weight:550; }
.dashboard-notice span { font-size:13px; }
.dashboard-notice > a { flex-shrink:0; }
.dashboard-history, .dashboard-performance { margin-top:34px; padding-bottom:30px; border-bottom:1px solid var(--color-base-300); }
.dashboard-history-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.dashboard-history-grid article { min-width:0; padding:0 26px; border-left:1px solid var(--color-base-300); }
.dashboard-history-grid article:first-child { padding-left:0; border-left:0; }
.dashboard-history-grid article:last-child { padding-right:0; }
.dashboard-history-grid h3 { font-size:13px; font-weight:500; }
.dashboard-number { font-size:32px; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:-.025em; margin:7px 0 9px !important; line-height:1.3; }
.dashboard-details { font-size:12px; margin-top:12px; color:color-mix(in oklab,var(--color-base-content) 75%,var(--color-base-100)); }
.dashboard-details summary { cursor:pointer; width:fit-content; min-height:32px; padding:4px 0; text-underline-offset:4px; }
.dashboard-details summary:hover { text-decoration:underline; }
.dashboard-details p { margin-top:6px; overflow-wrap:anywhere; max-width:70ch; }
.dashboard-periods { display:flex; gap:3px; border:1px solid var(--color-base-300); border-radius:7px; padding:3px; flex-shrink:0; }
.dashboard-periods a { display:flex; align-items:center; min-height:34px; padding:4px 12px; border-radius:4px; font-size:12px; color:inherit; }
.dashboard-periods a[aria-current=page] { background:var(--color-base-200); font-weight:600; }
.dashboard-performance-layout { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:34px; }
.dashboard-chart { min-width:0; }
.dashboard-chart svg { display:block; width:100%; height:auto; }
.dashboard-chart-grid { stroke:var(--color-base-300); stroke-width:1; }
.dashboard-chart-label { font-size:11px; fill:currentColor; }
.dashboard-chart-line { stroke:var(--color-primary); stroke-width:2; fill:none; vector-effect:non-scaling-stroke; stroke-linejoin:round; stroke-linecap:round; }
.dashboard-chart-point { fill:var(--color-primary); }
.dashboard-chart-empty { min-height:180px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px; background:var(--color-base-200); border-radius:6px; padding:20px; text-align:center; }
.dashboard-chart-empty span { font-size:12px; }
.dashboard-response-metrics { margin:0; border-left:1px solid var(--color-base-300); padding-left:26px; display:flex; flex-direction:column; gap:16px; }
.dashboard-response-metrics dt { font-size:12px; }
.dashboard-response-metrics dd { margin:3px 0 0; font-size:25px; font-weight:600; line-height:1.3; font-variant-numeric:tabular-nums; }
.dashboard-response-metrics small { margin-left:5px; font-size:12px; font-weight:400; }
.dashboard-response-metrics time, .dashboard-metric-source { display:block; font-size:11px; overflow-wrap:anywhere; }
.dashboard-bottom-grid { display:grid; grid-template-columns:1fr; gap:34px; margin-top:34px; }
.dashboard-domain-row, .dashboard-attention-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 150px; align-items:center; gap:20px; border-bottom:1px solid var(--color-base-300); padding:16px 0; }
.dashboard-attention-columns { padding:0 0 10px; font-size:12px; color:color-mix(in oklab,var(--color-base-content) 70%,var(--color-base-100)); }
.dashboard-domain-row:first-of-type { padding-top:0; }
.dashboard-domain-info { min-width:0; }
.dashboard-page .dashboard-domain-name { font-size:14px; font-weight:600; color:inherit !important; overflow-wrap:anywhere; }
.dashboard-domain-issues { font-size:12px; color:var(--color-error); }
.dashboard-row-actions { display:flex; gap:14px; align-items:center; flex-shrink:0; font-size:12px; }
.dashboard-event-row { display:flex; gap:12px; padding:0 0 20px; }
.dashboard-event-dot { margin-top:8px; background:currentColor; }
.dashboard-event-row > div { min-width:0; }
.dashboard-event-row p { margin-top:4px; font-size:12px; overflow-wrap:anywhere; }
.dashboard-management-link { display:block; margin-top:8px; font-size:12px; }
.dashboard-empty { padding:4px 0 24px; max-width:60ch; font-size:13px; }
.dashboard-quick-check { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:34px; border-top:1px solid var(--color-base-300); padding-top:24px; }
.dashboard-quick-check h2 { font-size:14px; }
.dashboard-onboarding { display:grid; grid-template-columns:1.1fr 1fr; gap:72px; border-block:1px solid var(--color-base-300); padding:58px 0; }
.dashboard-start h2 { font-size:26px; letter-spacing:-.025em; }
.dashboard-start > p { margin-top:18px; max-width:46ch; line-height:1.9; }
.dashboard-start > .btn { margin-top:26px; }
.dashboard-start > .dashboard-muted { margin-top:16px; }
.dashboard-steps { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:28px; }
.dashboard-steps li { display:flex; gap:15px; }
.dashboard-step-number { width:18px; flex-shrink:0; padding-top:1px; color:color-mix(in oklab,var(--color-base-content) 70%,var(--color-base-100)); font-size:13px; font-variant-numeric:tabular-nums; }
.dashboard-steps p { font-size:13px; margin-top:5px; max-width:42ch; }
.dashboard-steps a { display:inline-block; margin-top:6px; font-size:13px; }
.dashboard-get-started { display:grid; grid-template-columns:1fr 1fr 1fr; gap:34px; margin-top:34px; }
.dashboard-get-started > div > a { font-weight:550; }
.dashboard-get-started p { font-size:13px; margin-top:7px; max-width:40ch; }
@media (max-width:900px) {
  .dashboard-bottom-grid { grid-template-columns:1fr; gap:32px; }
  .dashboard-performance-layout { grid-template-columns:minmax(0,1fr) 170px; gap:18px; }
  .dashboard-onboarding { gap:36px; }
  .dashboard-history-grid article { padding-inline:16px; }
}
@media (max-width:640px) {
  .dashboard-page { padding-top:0; font-size:14px; }
  .dashboard-heading { align-items:flex-start; flex-direction:column; gap:18px; padding-bottom:24px; }
  .dashboard-page h1 { font-size:24px; }
  .dashboard-toolbar { width:100%; gap:8px; }
  .dashboard-group-form { flex:1; gap:4px; flex-wrap:nowrap; }
  .dashboard-group-form .select { width:100%; min-width:0; font-size:14px; }
  .dashboard-state-row { gap:14px 20px; }
  .dashboard-state, .dashboard-total { min-width:65px; }
  .dashboard-state strong, .dashboard-total strong { font-size:25px; }
  .dashboard-total { padding-right:20px; margin:0; }
  .dashboard-section-heading { align-items:flex-start; gap:10px; flex-wrap:wrap; margin-bottom:18px; }
  .dashboard-current .dashboard-section-heading { flex-direction:column; }
  .dashboard-history-grid { grid-template-columns:1fr; }
  .dashboard-history-grid article, .dashboard-history-grid article:first-child { padding:18px 0; border-left:0; border-top:1px solid var(--color-base-300); }
  .dashboard-history-grid article:first-child { padding-top:0; border-top:0; }
  .dashboard-history-grid article:last-child { padding-bottom:0; }
  .dashboard-number { font-size:30px; }
  .dashboard-notice { padding:15px; gap:12px; flex-wrap:wrap; }
  .dashboard-notice p { gap:5px; }
  .dashboard-performance-layout { grid-template-columns:1fr; }
  .dashboard-response-metrics { border-left:0; padding:18px 0 0; border-top:1px solid var(--color-base-300); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
  .dashboard-response-metrics dd { font-size:22px; }
  .dashboard-response-metrics > div { min-width:0; }
  .dashboard-domain-row { grid-template-columns:1fr; gap:8px; }
  .dashboard-attention-columns { display:none; }
  .dashboard-row-actions a { min-height:40px; display:flex; align-items:center; }
  .dashboard-onboarding { grid-template-columns:1fr; padding:30px 0; gap:36px; }
  .dashboard-start h2 { font-size:23px; }
  .dashboard-get-started { grid-template-columns:1fr; gap:24px; }
  .dashboard-quick-check { flex-wrap:wrap; }
}

.dashboard-data-note { margin-top:6px !important; font-size:12px; color:color-mix(in oklab,var(--color-base-content) 80%,var(--color-base-100)); }

.dashboard-create-form { display:flex; flex-direction:column; gap:9px; margin-top:24px; max-width:430px; }
.dashboard-create-form label { font-size:13px; font-weight:550; margin-top:5px; }
.dashboard-create-form :is(.input,.select) { width:100%; font-size:16px; min-height:44px; border-radius:7px; }
.dashboard-create-form .btn { margin-top:12px; align-self:flex-start; }
.dashboard-events { border-top:1px solid var(--color-base-300); padding-top:28px; }
