@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Manrope:wght@600;700;800&display=swap";:root{--font-inter:"Inter", system-ui, sans-serif;--font-manrope:"Manrope", sans-serif;--color-primary:#6d28d9;--color-primary-hover:#5b21b6;--color-primary-light:#ede9fe;--color-primary-container:#8b5cf6;--color-secondary:#0284c7;--color-success:#059669;--color-success-light:#d1fae5;--color-warning:#d97706;--color-warning-light:#fef3c7;--color-error:#dc2626;--color-error-container:#fee2e2;--color-error-light:#fef2f2;--color-surface:#f8fafc;--color-surface-container:#f1f5f9;--color-surface-container-low:#e8edf3;--color-surface-container-lowest:#fff;--color-on-surface:#0f172a;--color-on-surface-variant:#64748b;--color-outline:#94a3b8;--color-outline-variant:#e2e8f0;--sidebar-bg:#1e1b4b;--sidebar-hover:#ffffff14;--sidebar-active:#ffffff24;--sidebar-text:#fff9;--sidebar-text-active:#fff;--sidebar-width:240px;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 16px 48px #0000001a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-inter);background:var(--color-surface);color:var(--color-on-surface);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-manrope);letter-spacing:-.02em;font-weight:700;line-height:1.3}a{text-decoration:none}img{max-width:100%}.app-layout{width:100vw;min-height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);max-width:var(--sidebar-width);background:var(--sidebar-bg);color:#fff;z-index:50;flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.app-layout>:not(.sidebar){margin-left:var(--sidebar-width);flex:1;min-width:0}.sidebar-logo{font-family:var(--font-manrope);color:#fff;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff1a;align-items:center;gap:10px;margin-bottom:16px;padding:8px 10px 20px;font-size:17px;font-weight:800;display:flex;overflow:hidden}.sidebar-nav{flex-direction:column;flex:1;gap:2px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--sidebar-text);white-space:nowrap;align-items:center;gap:10px;padding:10px 12px;font-size:15px;font-weight:500;transition:all .15s;display:flex}.nav-item:hover{background:var(--sidebar-hover);color:#fff}.nav-item.active{background:var(--sidebar-active);color:#fff}.nav-item.active svg{color:#a78bfa}.main-content{flex-direction:column;flex:1;gap:24px;min-height:100vh;padding:32px 36px;display:flex;overflow-y:auto}.card{background:var(--color-surface-container-lowest);border-radius:var(--radius-lg);border:1px solid var(--color-outline-variant);box-shadow:var(--shadow-sm)}.kpi-card{border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:4px;padding:20px 24px;transition:box-shadow .2s;display:flex}.kpi-card:hover{box-shadow:var(--shadow-md)}.kpi-label{color:var(--color-on-surface-variant);text-transform:uppercase;letter-spacing:.5px;font-size:14px;font-weight:600}.kpi-value{font-size:28px;font-weight:800;font-family:var(--font-manrope);color:var(--color-on-surface)}.kpi-sub{color:var(--color-outline);font-size:14px}button{cursor:pointer;font-family:var(--font-inter);border:none;font-weight:600;transition:all .2s}.btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);align-items:center;gap:7px;padding:12px 24px;font-size:15px;display:inline-flex;box-shadow:0 2px 8px #6d28d940}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #6d28d94d}.btn-secondary{background:var(--color-surface-container);color:var(--color-on-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);align-items:center;gap:7px;padding:12px 24px;font-size:15px;display:inline-flex}.btn-secondary:hover{background:var(--color-surface-container-low)}.btn-danger{background:var(--color-error-container);color:var(--color-error);border-radius:var(--radius-sm);border:1px solid #fecaca;padding:8px 16px;font-size:14px}.btn-danger:hover{background:#fecaca}input,select,textarea{font-family:var(--font-inter);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);color:var(--color-on-surface);background:#fff;outline:none;width:100%;padding:12px 16px;font-size:15.5px;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #6d28d91a}input::placeholder{color:var(--color-outline)}table{border-collapse:collapse;width:100%}thead{background:var(--color-surface-container)}th{color:var(--color-on-surface-variant);text-transform:uppercase;letter-spacing:.6px;text-align:left;padding:12px 16px;font-size:13.5px;font-weight:700}td{border-bottom:1px solid var(--color-outline-variant);padding:16px;font-size:15.5px}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-surface-container)}.badge{border-radius:100px;align-items:center;gap:4px;padding:3px 10px;font-size:13px;font-weight:700;display:inline-flex}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-error{background:var(--color-error-container);color:var(--color-error)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-neutral{background:var(--color-surface-container);color:var(--color-on-surface-variant)}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-title{color:var(--color-on-surface);align-items:center;gap:10px;font-size:26px;font-weight:800;display:flex}.page-subtitle{color:var(--color-on-surface-variant);margin-top:3px;font-size:15.5px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-outline-variant);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--color-outline)}
