@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap");:root{--bg-primary:hsl(220,20%,7%);--bg-secondary:hsl(220,18%,10%);--bg-tertiary:hsl(220,16%,14%);--bg-card:hsl(220,18%,11%);--bg-card-hover:hsl(220,18%,13%);--bg-glass:rgba(255,255,255,0.04);--bg-glass-hover:rgba(255,255,255,0.07);--border-subtle:rgba(255,255,255,0.06);--border-default:rgba(255,255,255,0.10);--border-strong:rgba(255,255,255,0.16);--text-primary:hsl(0,0%,95%);--text-secondary:hsl(220,10%,65%);--text-muted:hsl(220,10%,45%);--text-inverse:hsl(220,20%,7%);--accent-primary:hsl(240,80%,65%);--accent-primary-hover:hsl(240,80%,72%);--accent-primary-glow:hsla(240,80%,65%,0.25);--accent-secondary:hsl(280,70%,65%);--success:hsl(160,70%,45%);--success-bg:hsla(160,70%,45%,0.12);--success-border:hsla(160,70%,45%,0.25);--warning:hsl(38,92%,55%);--warning-bg:hsla(38,92%,55%,0.12);--warning-border:hsla(38,92%,55%,0.25);--danger:hsl(0,75%,60%);--danger-bg:hsla(0,75%,60%,0.12);--danger-border:hsla(0,75%,60%,0.25);--info:hsl(200,80%,55%);--info-bg:hsla(200,80%,55%,0.12);--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 30px rgba(0,0,0,0.5);--shadow-glow:0 0 20px var(--accent-primary-glow);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:400ms ease;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-heading:"Outfit","Inter",sans-serif;--sidebar-width:260px;--sidebar-collapsed:72px;--header-height:64px}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light;--bg-primary:hsl(220,30%,97%);--bg-secondary:hsl(0,0%,100%);--bg-tertiary:hsl(220,25%,94%);--bg-card:hsl(0,0%,100%);--bg-card-hover:hsl(220,22%,96%);--bg-glass:rgba(15,23,42,0.04);--bg-glass-hover:rgba(15,23,42,0.08);--border-subtle:rgba(15,23,42,0.08);--border-default:rgba(15,23,42,0.14);--border-strong:rgba(15,23,42,0.2);--text-primary:hsl(224,35%,14%);--text-secondary:hsl(220,14%,36%);--text-muted:hsl(220,11%,52%);--text-inverse:hsl(0,0%,100%);--accent-primary:hsl(242,74%,58%);--accent-primary-hover:hsl(242,74%,52%);--accent-primary-glow:hsla(242,74%,58%,0.16);--accent-secondary:hsl(278,60%,56%);--success:hsl(160,70%,36%);--success-bg:hsla(160,70%,36%,0.12);--success-border:hsla(160,70%,36%,0.22);--warning:hsl(35,88%,46%);--warning-bg:hsla(35,88%,46%,0.12);--warning-border:hsla(35,88%,46%,0.22);--danger:hsl(0,68%,52%);--danger-bg:hsla(0,68%,52%,0.1);--danger-border:hsla(0,68%,52%,0.22);--info:hsl(202,82%,46%);--info-bg:hsla(202,82%,46%,0.12);--shadow-sm:0 1px 3px rgba(15,23,42,0.08);--shadow-md:0 14px 34px rgba(15,23,42,0.1);--shadow-lg:0 20px 48px rgba(15,23,42,0.14)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base)}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-primary-hover)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:1.875rem;font-weight:700}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.glass{background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.card,.glass{border:1px solid var(--border-subtle)}.card{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.25rem;transition:all var(--transition-base)}.card:hover{border-color:var(--border-default);box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .65rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;letter-spacing:.02em;white-space:nowrap}.badge--success{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.badge--warning{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning-border)}.badge--danger{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.badge--info{background:var(--info-bg);color:var(--info);border:1px solid hsla(200,80%,55%,.25)}.badge--neutral{background:var(--bg-glass);color:var(--text-secondary);border:1px solid var(--border-subtle)}.badge--accent{background:var(--accent-primary-glow);color:var(--accent-primary);border:1px solid hsla(240,80%,65%,.3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent-primary);color:white;border-color:var(--accent-primary)}.btn--primary:hover:not(:disabled){background:var(--accent-primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn--secondary{background:var(--bg-glass);color:var(--text-primary);border-color:var(--border-default)}.btn--secondary:hover:not(:disabled){background:var(--bg-glass-hover);border-color:var(--border-strong)}.btn--danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.btn--danger:hover:not(:disabled){background:hsla(0,75%,60%,.2)}.btn--ghost{background:transparent;color:var(--text-secondary);border:none;padding:.5rem}.btn--ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-glass)}.btn--sm{padding:.4rem .85rem;font-size:.8rem}.btn--lg{padding:.75rem 1.5rem;font-size:1rem}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-width:40px;height:40px;padding:0 .85rem;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-glass);color:var(--text-primary);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.theme-toggle:hover{background:var(--bg-glass-hover);border-color:var(--border-strong);transform:translateY(-1px)}.theme-toggle--with-label{min-width:auto;font-size:.85rem;font-weight:500}.input-group{display:flex;flex-direction:column;gap:.4rem}.input-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary);letter-spacing:.02em}.input,.select,.textarea{width:100%;padding:.6rem .85rem;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:.875rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.textarea{resize:vertical;min-height:80px}.select{cursor:pointer}.checkbox-wrapper{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox-wrapper input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer}.table-wrapper{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table th{text-align:left;padding:.75rem 1rem;background:var(--bg-tertiary);color:var(--text-secondary);font-weight:500;font-size:.8rem;letter-spacing:.03em;text-transform:uppercase;border-bottom:1px solid var(--border-default);white-space:nowrap}.table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--bg-glass)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.kpi-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:all var(--transition-base);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--accent-primary);opacity:0;transition:opacity var(--transition-base)}.kpi-card:hover:before{opacity:1}.kpi-card:hover{border-color:var(--border-default);transform:translateY(-2px);box-shadow:var(--shadow-md)}.kpi-card__label{font-size:.8rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.kpi-card__value{font-family:var(--font-heading);font-size:2rem;font-weight:700}.kpi-card__value--danger{color:var(--danger)}.kpi-card__value--success{color:var(--success)}.kpi-card__value--warning{color:var(--warning)}.progress-bar{width:100%;height:6px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.progress-bar__fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));transition:width var(--transition-slow)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast)}.modal{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:1.75rem;max-width:560px;width:90%;max-height:85vh;overflow-y:auto;animation:slideUp var(--transition-base)}.modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.modal__title{font-size:1.2rem;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade{animation:fadeIn var(--transition-base)}.animate-slide{animation:slideUp var(--transition-base)}@media (max-width:768px){:root{--sidebar-width:0px}.kpi-grid{grid-template-columns:repeat(2,1fr)}h1{font-size:1.5rem}}@media (max-width:480px){.kpi-grid{grid-template-columns:1fr}}