:root{--color-bg: #faf6f2;--color-surface: #ffffff;--color-surface-alt: #fdf1f6;--color-ink: #241220;--color-ink-soft: #5b4a56;--color-muted: #8b7b87;--color-border: #ecdfe4;--color-primary: #c6007e;--color-primary-dark: #7a0050;--color-primary-tint: #f6d9ea;--color-teal: #14a3b0;--color-gold: #e29a3c;--color-green: #4c9d78;--color-red: #d1495b;--font-display: "Fraunces", "Georgia", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--shadow-card: 0 1px 2px rgba(36, 18, 32, .04), 0 8px 24px rgba(36, 18, 32, .06);--sidebar-width: 240px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);margin:0;letter-spacing:-.01em}.tabular{font-variant-numeric:tabular-nums}.stitch-divider{border:none;border-top:1.5px dashed var(--color-primary-tint);margin:10px 0 14px}.stitch-divider--dark{border-top:1.5px dashed rgba(255,255,255,.18)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-primary-tint);border-radius:8px}::-webkit-scrollbar-track{background:transparent}a{color:inherit}button{font-family:var(--font-body)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:linear-gradient(180deg,var(--color-ink) 0%,#6e014e 100%);color:#fff;padding:24px 18px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:28px;text-align:center}.brand-logo{height:auto;width:100%;max-width:180px;display:block;background-color:#fff;border-radius:12px;padding:10px 16px;object-fit:contain}.brand-sub{font-size:16px;font-weight:700;color:#fff;margin:0;text-transform:none;letter-spacing:normal}.brand-mark{width:38px;height:38px;border-radius:10px;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:18px;flex-shrink:0}.brand-name{font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.1}.brand-sub{font-family:var(--font-display),"Segoe UI";font-size:14px;font-weight:700;color:#fff;margin:0;text-transform:none;letter-spacing:.5px}.nav-section-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#fff;margin:18px 8px 8px}.nav-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:#fff;text-decoration:none;font-size:14px;font-weight:500;margin-bottom:2px;transition:background .15s ease,color .15s ease}.nav-link:hover{background:#ffffff14;color:#fff}.nav-link.active{background:var(--color-primary);color:#fff}.nav-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;flex-shrink:0}.main{flex:1;min-width:0;padding:28px 32px 60px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:20px}.page-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);font-weight:700;margin-bottom:4px}.page-title{font-size:26px;font-weight:600}.filter-bar{display:flex;gap:10px;flex-wrap:wrap}.filter-select{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;color:var(--color-ink);font-family:var(--font-body)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-9{grid-column:span 9}.col-12{grid-column:span 12}@media (max-width: 1100px){.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{grid-column:span 12}.sidebar{position:static;height:auto;width:100%}.app-shell{flex-direction:column}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--shadow-card)}.card-title{font-size:13px;font-weight:700;color:var(--color-primary-dark);text-transform:uppercase;letter-spacing:.03em}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--shadow-card)}.kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:600}.kpi-value{font-family:var(--font-mono);font-size:28px;font-weight:800;color:var(--color-ink);margin-top:6px}.kpi-value.primary{color:var(--color-primary)}.kpi-trend{font-size:12px;font-weight:600;margin-top:6px}.kpi-trend.up{color:var(--color-green)}.kpi-trend.down{color:var(--color-red)}.data-table-wrap{overflow:auto;max-height:320px}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{position:sticky;top:0;background:var(--color-surface-alt);text-align:left;padding:8px 10px;font-weight:700;color:var(--color-primary-dark);font-size:11px;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--color-border)}.data-table td{padding:8px 10px;border-bottom:1px solid var(--color-border);color:var(--color-ink-soft)}.data-table tr:hover td{background:var(--color-surface-alt)}.gauge-wrap{display:flex;flex-direction:column;align-items:center}.gauge-value{font-family:var(--font-mono);font-size:28px;font-weight:700;color:var(--color-primary);margin-top:-34px}.legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:10px;font-size:12px;color:var(--color-ink-soft)}.legend-item{display:flex;align-items:center;gap:6px}.legend-swatch{width:9px;height:9px;border-radius:3px}.state-banner{font-size:12px;color:var(--color-muted);background:var(--color-surface-alt);border:1px dashed var(--color-primary-tint);padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:16px}.sales-dashboard-grid{align-items:stretch}.kpi-stack-card{display:grid;grid-template-columns:1fr;gap:12px;height:100%}.kpi-stack-card .kpi-card{min-height:0;display:flex;flex-direction:column;justify-content:center}.growth-card{height:100%}.growth-card .data-table-wrap{max-height:none}.sales-dashboard-grid>.col-6>.card,.sales-dashboard-grid>.col-12>.card{height:100%}@media (max-width: 1100px){.sales-dashboard-grid .col-6{grid-column:span 12}}
