:root{--ink: #1a1a1a;--canvas: #ffffff;--card-bg: #f9f9f9;--border: #e0e0e0;--accent: #2d7a4f;--accent-light: #4caf50;--muted: #6b7280;--color-primary: #2d7a4f;--color-secondary: #3b82f6;--space-xs: clamp(.375rem, .5vw, .5rem);--space-sm: clamp(.75rem, 1vw, 1rem);--space-md: clamp(1rem, 1.5vw, 1.5rem);--space-lg: clamp(1.5rem, 2vw, 2rem);--space-xl: clamp(2rem, 3vw, 3rem);--heatmap-cell-padding-y: clamp(.625rem, 1vw, .875rem);--heatmap-cell-padding-x: clamp(.875rem, 1.5vw, 1.25rem);--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-mono: "SF Mono", "Fira Code", "Courier New", monospace;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);background:var(--canvas);line-height:1.6;padding:var(--space-lg)}.container{max-width:1400px;margin:0 auto}h1{font-size:2rem;font-weight:600;margin-bottom:var(--space-lg);color:var(--accent)}h2{font-size:1.5rem;font-weight:600;margin-top:var(--space-xl);margin-bottom:var(--space-md);color:var(--ink)}.section-heading{font-size:1.75rem;color:var(--accent)}.date-range-selector{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.date-range-selector label{font-weight:600;color:var(--ink);font-size:.9375rem}.date-range-selector select{padding:var(--space-xs) var(--space-md);border:1px solid var(--border);border-radius:4px;font-size:.9375rem;cursor:pointer;background:var(--canvas);color:var(--ink)}.date-range-selector select:hover{border-color:var(--accent)}.date-range-selector select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2d7a4f1a}.section-divider{border:none;border-top:2px solid var(--border);margin:var(--space-xl) 0}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.kpi-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:var(--space-sm) var(--space-md);box-shadow:var(--shadow-sm);text-align:center}.kpi-card .kpi-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:var(--space-xs)}.kpi-card .kpi-value{font-size:1.75rem;font-weight:700;color:var(--accent);line-height:1.2}.kpi-card .kpi-delta{font-size:.75rem;margin-top:var(--space-xs)}.kpi-card .kpi-delta.positive{color:#16a34a}.kpi-card .kpi-delta.negative{color:#dc2626}.kpi-card .kpi-delta.neutral{color:var(--muted)}.chart-section{margin-bottom:var(--space-xl)}.chart-section .chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.chart-section .chart-header h2{margin:0}.chart-section .chart-header .chart-controls{display:flex;gap:var(--space-xs)}.chart-section .chart-header .chart-controls button{padding:var(--space-xs) var(--space-md);border:1px solid var(--border);background:var(--canvas);border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s}.chart-section .chart-header .chart-controls button:hover{background:var(--card-bg)}.chart-section .chart-header .chart-controls button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.chart-section .chart-container{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:var(--space-md);box-shadow:var(--shadow-sm);min-height:400px}.approval-table{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:var(--space-md);box-shadow:var(--shadow-sm);overflow-x:auto}.approval-table table{width:100%;border-collapse:collapse}.approval-table table thead{background:var(--canvas);border-bottom:2px solid var(--border)}.approval-table table thead th{padding:var(--space-sm);text-align:center;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.approval-table table thead th:first-child{text-align:left}.approval-table table tbody tr{border-bottom:1px solid var(--border)}.approval-table table tbody tr:last-child{border-bottom:none}.approval-table table tbody tr:hover{background:var(--canvas)}.approval-table table tbody td{padding:var(--space-sm);font-size:.9375rem;text-align:center;font-family:var(--font-mono)}.approval-table table tbody td:first-child{text-align:left;font-family:var(--font-body)}.heatmap-table tbody td{padding:clamp(.625rem,1vw,.875rem) clamp(.875rem,1.5vw,1.25rem)!important;text-align:center!important;vertical-align:middle!important}@media (max-width: 768px){body{padding:var(--space-md)}h1{font-size:1.5rem}h2{font-size:1.25rem}.kpi-grid{grid-template-columns:repeat(2,1fr)}.chart-section .chart-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.chart-container{min-height:300px}}@media (max-width: 480px){.kpi-grid{grid-template-columns:1fr}}
