:root{--ai-primary-600: #4f46e5;--ai-primary-50: #eef2ff;--ai-neutral-900: #111827;--ai-neutral-500: #6b7280;--ai-neutral-100: #f3f4f6;--ai-success-600: #16a34a;--ai-warning-600: #d97706;--ai-danger-600: #dc2626}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ai-neutral-900);background:var(--ai-neutral-100)}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.left-rail{background:#fff;border-right:1px solid #e5e7eb;padding:24px 12px;display:flex;flex-direction:column}.left-rail .logout-btn{margin-top:auto;display:block;width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:var(--ai-neutral-900);font:inherit;text-align:left;cursor:pointer}.left-rail .logout-btn:hover{background:var(--ai-neutral-50, #f9fafb);border-color:#d1d5db}.left-rail a{display:block;padding:8px 12px;border-radius:6px;color:var(--ai-neutral-900);text-decoration:none;margin-bottom:4px}.left-rail a.active{background:var(--ai-primary-50);color:var(--ai-primary-600);font-weight:600}.content{padding:32px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.kpi-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 2px #0000000d}.kpi-card .label{font-size:12px;color:var(--ai-neutral-500)}.kpi-card .value{font-size:28px;font-weight:700}.login-card{max-width:360px;margin:80px auto;background:#fff;padding:32px;border-radius:12px;box-shadow:0 1px 2px #0000000d}.login-card input{display:block;width:100%;padding:8px 12px;margin-bottom:12px;border:1px solid #d1d5db;border-radius:6px}.login-card button{width:100%;padding:10px;background:var(--ai-primary-600);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}.error-text{color:var(--ai-danger-600);font-size:13px;margin-bottom:12px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.btn{padding:8px 16px;background:var(--ai-primary-600);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:14px}.btn.secondary{background:#fff;color:var(--ai-neutral-900);border:1px solid #d1d5db}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0000000d;margin-bottom:16px}.card input,.card textarea,.card select{display:block;width:100%;padding:8px 12px;margin-bottom:12px;border:1px solid #d1d5db;border-radius:6px;font-family:inherit}table.data-table{width:100%;background:#fff;border-radius:12px;border-collapse:collapse;overflow:hidden;box-shadow:0 1px 2px #0000000d}table.data-table th,table.data-table td{text-align:left;padding:10px 16px;border-bottom:1px solid #f3f4f6;font-size:14px}table.data-table th{font-size:12px;color:var(--ai-neutral-500);text-transform:uppercase;letter-spacing:.03em}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--ai-neutral-100);color:var(--ai-neutral-900)}.badge.success{background:#dcfce7;color:var(--ai-success-600)}.badge.warning{background:#fef3c7;color:var(--ai-warning-600)}.badge.danger{background:#fee2e2;color:var(--ai-danger-600)}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{padding:6px 14px;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer;font-size:13px}.tabs button.active{background:var(--ai-primary-600);color:#fff;border-color:var(--ai-primary-600)}.empty-state{color:var(--ai-neutral-500);font-size:14px;padding:24px;text-align:center}
