#dashboardView{max-width:1500px;margin:0 auto}.dashboard-page{display:grid;gap:var(--space-5)}.dashboard-heading h2{margin:var(--space-2) 0}.dashboard-heading p,.dashboard-note,.dashboard-empty,.dashboard-loading{color:var(--color-text-muted)}.dashboard-hero{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);background:linear-gradient(135deg,var(--color-surface-raised),var(--color-surface))}.dashboard-hero h1{margin:var(--space-2) 0;font-size:clamp(24px,3vw,42px)}.dashboard-hero h1 em{font-style:normal;color:var(--color-text-muted);font-size:.6em;margin:0 .3em}.dashboard-hero p{color:var(--color-text-muted);margin:0}.dashboard-score{font-size:clamp(34px,5vw,64px);font-variant-numeric:tabular-nums}.dashboard-score i{font-style:normal;color:var(--color-text-muted);font-size:.55em}.dashboard-sets{grid-column:1/-1;display:flex;gap:var(--space-2);flex-wrap:wrap}.dashboard-sets span{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:11px;color:var(--color-text-muted)}.dashboard-sets b{color:var(--color-text);margin-left:8px}.dashboard-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-3)}.dashboard-metric{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface)}.dashboard-metric span{font-size:12px;color:var(--color-text-muted)}.dashboard-metric strong{display:block;font-size:32px;color:var(--color-primary-ink);font-variant-numeric:tabular-nums;margin:4px 0}.dashboard-metric small{color:var(--color-text-muted)}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.dashboard-card{padding:var(--space-4);min-width:0}.dashboard-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3);margin-bottom:var(--space-3)}.dashboard-card-heading h3{margin:var(--space-1) 0}.dashboard-rotation-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2)}.dashboard-rotation{display:grid;gap:3px;text-align:left;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:background-color 150ms ease,border-color 150ms ease,transform 150ms ease}.dashboard-rotation:hover{background:var(--color-primary-soft);border-color:var(--color-primary);transform:translateY(-1px)}.dashboard-rotation strong{font-size:22px;font-variant-numeric:tabular-nums}.dashboard-rotation small{font-size:10px;color:var(--color-text-muted)}.dashboard-rotation.positive strong{color:var(--color-success)}.dashboard-rotation.negative strong{color:var(--color-danger)}.dashboard-direction{display:flex;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-variant-numeric:tabular-nums}.dashboard-direction span{color:var(--color-primary-ink)}.dashboard-direction small{color:var(--color-text-muted)}.dashboard-type-summary{display:flex;gap:var(--space-3);flex-wrap:wrap;padding-top:var(--space-3);color:var(--color-text-muted);font-size:12px}.dashboard-recent-scroll{overflow:auto}.dashboard-recent{width:100%;border-collapse:collapse;font-size:13px}.dashboard-recent th,.dashboard-recent td{padding:9px 7px;border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap}.dashboard-recent th{font-size:11px;color:var(--color-text-muted)}.dashboard-recent button,.dashboard-player{background:transparent;border:0;padding:0;text-align:left;color:inherit;transition:color 150ms ease,background-color 150ms ease}.dashboard-recent button:hover,.dashboard-player:hover{color:var(--color-primary-ink)}.dashboard-recent code{font-family:ui-monospace,monospace;font-weight:700}.dashboard-player{display:flex;width:100%;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.dashboard-player span{color:var(--color-text-muted);font-size:12px}.dashboard-page :focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media(max-width:900px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-rotation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){#dashboardView{padding:var(--space-3)}.dashboard-columns{grid-template-columns:1fr}.dashboard-hero{grid-template-columns:1fr}.dashboard-score{font-size:44px}.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-rotation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-card-heading{display:block}.dashboard-card-heading button{margin-top:var(--space-2)}}
.dashboard-metrics-info{grid-column:1/-1;margin-bottom:0}.dashboard-metrics-info p{max-width:780px}
.dashboard-loading-state{display:grid;gap:9px;padding:8px 0}.dashboard-skeleton{display:block;height:12px;width:100%;border-radius:6px;background:linear-gradient(90deg,var(--color-surface-raised),#e9f2f4,var(--color-surface-raised));background-size:200% 100%;animation:dashboard-shimmer 1.25s ease-in-out infinite}.dashboard-skeleton-title{width:42%;height:18px}.dashboard-skeleton.short{width:65%}.dashboard-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e8c5c5;border-radius:var(--radius-md);background:#fff8f8;color:#8d3e3e}.dashboard-error p{margin:0}.dashboard-error button{white-space:nowrap}@keyframes dashboard-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
