:root{--background: #111215;--surface: #1a1d23;--surface-raised: #1f2328;--card: #1a1d23;--foreground: #e0e3e8;--foreground-muted: #8b919a;--foreground-dim: #6b7079;--border: #2c3036;--border-light: #252932;--accent: #c99d38;--accent-dim: rgba(201, 157, 56, .15);--accent-glow: rgba(201, 157, 56, .25);--blue: #5b8def;--blue-dim: rgba(91, 141, 239, .15);--destructive: #a0544b;--destructive-dim: rgba(160, 84, 75, .15);--success: #6b9e6b;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:var(--background);color:var(--foreground);font-family:var(--font-body);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--foreground-dim)}.tabular{font-variant-numeric:tabular-nums}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:20px 0}.sidebar-brand{padding:0 24px 24px;border-bottom:1px solid var(--border);margin-bottom:16px}.sidebar-brand h1{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:-.02em}.sidebar-brand span{font-size:11px;color:var(--foreground-muted);display:block;margin-top:2px}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;color:var(--foreground-muted);font-size:13px;font-weight:500;transition:all .15s ease;border:none;background:none;width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--surface-raised);color:var(--foreground)}.sidebar-nav-item.active{background:var(--accent-dim);color:var(--accent)}.sidebar-nav-item svg{flex-shrink:0;opacity:.8}.sidebar-footer{margin-top:auto;padding:16px 24px;border-top:1px solid var(--border)}.sidebar-footer button{display:flex;align-items:center;gap:8px;color:var(--foreground-muted);font-size:12px;cursor:pointer;background:none;border:none;padding:0;transition:color .15s}.sidebar-footer button:hover{color:var(--destructive)}.main-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--border);background:var(--background);position:sticky;top:0;z-index:10}.topbar-title{font-family:var(--font-display);font-size:20px;font-weight:600}.business-selector{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 16px;cursor:pointer;font-size:13px;color:var(--foreground);transition:border-color .15s;position:relative}.business-selector:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.business-selector .dot{width:8px;height:8px;border-radius:50%}.business-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:240px;box-shadow:0 8px 32px #0006;z-index:20;overflow:hidden}.business-dropdown-item{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;transition:background .15s;border:none;background:none;width:100%;text-align:left;color:var(--foreground);font-size:13px}.business-dropdown-item:hover{background:var(--card)}.business-dropdown-item.active{background:var(--accent-dim);color:var(--accent)}.business-dropdown-item .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dashboard-content{padding:32px;flex:1}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.kpi-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--foreground-muted);font-weight:500;margin-bottom:8px}.kpi-value{font-family:var(--font-display);font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.kpi-value.accent{color:var(--accent)}.kpi-value.blue{color:var(--blue)}.kpi-value.destructive{color:var(--destructive)}.kpi-sub{font-size:12px;color:var(--foreground-dim);margin-top:6px}.kpi-card .sparkline{margin-top:12px;height:32px}.chart-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:24px}.chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.chart-title{font-family:var(--font-display);font-size:16px;font-weight:600}.chart-legend{display:flex;gap:16px;font-size:12px;color:var(--foreground-muted)}.chart-legend-item{display:flex;align-items:center;gap:6px}.chart-legend-dot{width:8px;height:8px;border-radius:2px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.task-list{display:flex;flex-direction:column;gap:8px}.task-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .15s}.task-item:hover{border-color:var(--foreground-dim)}.task-item.completed{opacity:.5}.task-item.completed .task-title{text-decoration:line-through}.task-checkbox{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;background:none;padding:0}.task-checkbox:hover{border-color:var(--accent)}.task-checkbox.checked{background:var(--accent);border-color:var(--accent)}.task-content{flex:1;min-width:0}.task-title{font-size:13px;font-weight:500}.task-meta{font-size:11px;color:var(--foreground-dim);margin-top:2px}.priority-badge{font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:999px;font-weight:600}.priority-high{background:var(--destructive-dim);color:var(--destructive)}.priority-medium{background:var(--accent-dim);color:var(--accent)}.priority-low{background:var(--blue-dim);color:var(--blue)}.form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.form-modal{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;padding:28px;box-shadow:0 16px 48px #00000080}.form-modal h3{font-family:var(--font-display);font-size:18px;font-weight:600;margin-bottom:20px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:500;color:var(--foreground-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--foreground);font-size:14px;font-family:var(--font-body);transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.form-textarea{resize:vertical;min-height:60px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--radius-xs);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid var(--border);background:var(--surface);color:var(--foreground)}.btn:hover{border-color:var(--foreground-dim)}.btn-primary{background:var(--accent);color:var(--background);border-color:var(--accent);font-weight:600}.btn-primary:hover{box-shadow:0 0 20px var(--accent-glow);border-color:var(--accent)}.btn-ghost{background:none;border-color:transparent;color:var(--foreground-muted)}.btn-ghost:hover{color:var(--foreground);border-color:var(--border)}.btn-sm{padding:6px 12px;font-size:12px}.login-screen{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--background)}.login-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:40px;width:100%;max-width:380px;text-align:center}.login-logo{font-family:var(--font-display);font-size:28px;font-weight:700;margin-bottom:4px}.login-subtitle{font-size:13px;color:var(--foreground-muted);margin-bottom:28px}.login-form .form-input{text-align:center;font-family:var(--font-mono);letter-spacing:.1em}.login-error{color:var(--destructive);font-size:12px;margin-top:12px}.login-card .btn-primary{width:100%;justify-content:center;margin-top:16px;padding:12px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{font-family:var(--font-display);font-size:16px;font-weight:600}.business-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.business-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;cursor:pointer;transition:all .2s ease}.business-card:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.business-card-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.business-card-header .dot{width:12px;height:12px;border-radius:50%}.business-card-name{font-family:var(--font-display);font-size:18px;font-weight:600}.business-card-desc{font-size:12px;color:var(--foreground-muted);margin-top:2px}.business-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.business-metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--foreground-dim)}.business-metric-value{font-family:var(--font-display);font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:4px}.empty-state{text-align:center;padding:48px 20px;color:var(--foreground-dim)}.empty-state svg{opacity:.3;margin-bottom:12px}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--foreground-muted);font-size:14px}@media (max-width: 1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.detail-grid,.business-grid{grid-template-columns:1fr}}@media (max-width: 768px){.sidebar{display:none}.kpi-grid{grid-template-columns:1fr}.dashboard-content{padding:20px}.topbar{padding:12px 20px}}
