@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@500;700&display=swap";:root{--bg-base: #f6efe2;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-overlay: #faf8f4;--bg-input: #ffffff;--border: #121212;--border-md: #121212;--border-hover: #121212;--txt-1: #121212;--txt-2: #2e2e2e;--txt-3: #5f5f5f;--blue: #3366cc;--blue-dim: #e0f2fe;--blue-glow: rgba(51, 102, 204, .15);--green: #00a86b;--green-dim: #d1fae5;--amber: #ffb000;--amber-dim: #fef3c7;--red: #e63946;--red-dim: #fee2e2;--purple: #7209b7;--purple-dim: #ede9fe;--base-font-size: 19px;--fs-body: var(--base-font-size);--fs-h1: calc(var(--base-font-size) * 1.79);--fs-title: calc(var(--base-font-size) * 1.16);--fs-nav: calc(var(--base-font-size) * .95);--fs-mono: calc(var(--base-font-size) * .79);--font: "Outfit", -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace;--r-sm: .4em;--r-md: .6em;--r-lg: .9em;--r-xl: 1.2em;--ease: all .15s cubic-bezier(.25, .8, .25, 1);--sidebar-w: 18rem;--sidebar-collapsed: 5.5rem}.dark{--bg-base: #121214;--bg-surface: #1e1e21;--bg-elevated: #1e1e21;--bg-overlay: #17171a;--bg-input: #151517;--border: #f6efe2;--border-md: #f6efe2;--border-hover: #ffffff;--txt-1: #f6efe2;--txt-2: #eae4d8;--txt-3: #9e988e;--blue: #60a5fa;--blue-dim: rgba(96, 165, 250, .15);--blue-glow: rgba(96, 165, 250, .25);--green: #34d399;--green-dim: rgba(52, 211, 153, .15);--amber: #fbbf24;--amber-dim: rgba(251, 191, 36, .15);--red: #f87171;--red-dim: rgba(248, 113, 113, .15);--purple: #a78bfa;--purple-dim: rgba(167, 139, 250, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body,#root{height:100%;background:var(--bg-base);color:var(--txt-1);font-family:var(--font);font-size:var(--fs-body);line-height:1.6;overflow:hidden;-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease,font-size .15s ease}::-webkit-scrollbar{width:.6rem;height:.6rem}::-webkit-scrollbar-track{background:var(--bg-base);border-left:2px solid var(--border)}::-webkit-scrollbar-thumb{background:var(--border);border:2px solid var(--bg-base);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--txt-3)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .4s cubic-bezier(.25,.8,.25,1) forwards}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:1fr;height:100vh;width:100vw;transition:grid-template-columns .25s cubic-bezier(.25,.8,.25,1);overflow:hidden}.app-shell.collapsed{grid-template-columns:var(--sidebar-collapsed) 1fr}.sidebar{background:var(--bg-surface);border-right:3px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;z-index:10;width:100%;transition:background-color .25s ease,border-color .25s ease}.sidebar-logo{display:flex;align-items:center;gap:.8rem;padding:1.5rem 1.2rem;border-bottom:3px solid var(--border);flex-shrink:0}.sidebar-logo .sidebar-logo-img{max-height:2.5rem;width:auto;object-fit:contain;flex-shrink:0}.sidebar-logo .logo-mark{width:2.8rem;height:2.8rem;border-radius:var(--r-md);background:var(--amber);border:3px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.3rem;color:#121212;box-shadow:3px 3px 0 var(--border);flex-shrink:0}.sidebar-logo .logo-text{display:flex;flex-direction:column;line-height:1.1;overflow:hidden}.sidebar-logo .logo-name{font-weight:900;font-size:1.05rem;color:var(--txt-1);white-space:nowrap}.sidebar-logo .logo-sub{font-size:.65rem;font-weight:700;color:var(--txt-3);white-space:nowrap;font-family:var(--font-mono)}.sidebar-nav{flex:1;overflow-y:auto;padding:1.2rem 1rem;display:flex;flex-direction:column;gap:.6rem}.nav-section-label{font-size:.65rem;font-weight:800;color:var(--txt-3);text-transform:uppercase;letter-spacing:.12em;padding:0 .5rem;margin-bottom:.4rem}.nav-item{display:flex;align-items:center;gap:.9rem;padding:.75rem 1rem;border-radius:var(--r-sm);color:var(--txt-2);font-size:var(--fs-nav);font-weight:700;cursor:pointer;transition:var(--ease);border:2.5px solid transparent;white-space:nowrap;overflow:hidden;background:transparent;width:100%;text-align:left}.nav-item:hover{background:var(--bg-base);color:var(--txt-1)}.nav-item.active{background:var(--amber-dim);border-color:var(--border);box-shadow:4px 4px 0 var(--border);color:var(--txt-1)}.nav-item .nav-icon{width:1.2rem;height:1.2rem;flex-shrink:0;display:flex;align-items:center}.sidebar-footer{border-top:3px solid var(--border);padding:1rem;flex-shrink:0;background:var(--bg-overlay)}.sidebar-user{display:flex;align-items:center;gap:.8rem;padding:.75rem;border:2.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg-surface);box-shadow:3px 3px 0 var(--border);overflow:hidden}.user-avatar{width:2.2rem;height:2.2rem;border-radius:var(--r-sm);flex-shrink:0;background:var(--purple-dim);border:2.5px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:900;color:var(--txt-1)}.user-info{flex:1;overflow:hidden}.user-name{font-size:var(--fs-nav);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:calc(var(--fs-mono) * .85);font-weight:800;color:var(--txt-3);text-transform:uppercase}.main{display:flex;flex-direction:column;overflow:hidden;min-width:0;height:100%}.topbar{display:flex;align-items:center;gap:.9rem;padding:0 1.8rem;height:4.8rem;border-bottom:3px solid var(--border);background:var(--bg-surface);flex-shrink:0;transition:background-color .25s ease,border-color .25s ease}.topbar-title{font-size:var(--fs-title);font-weight:800;color:var(--txt-1);flex:1}.topbar-actions{display:flex;align-items:center;gap:.6rem}.page{flex:1;overflow-y:auto;padding:1.8rem}.card-neobrutal{background:var(--bg-surface);border:3px solid var(--border);border-radius:var(--r-md);padding:1.8rem;box-shadow:6px 6px 0 var(--border);transition:transform .15s cubic-bezier(.25,.8,.25,1),box-shadow .15s cubic-bezier(.25,.8,.25,1),background-color .25s ease,border-color .25s ease}.card-neobrutal:hover{transform:translate(-4px,-4px);box-shadow:10px 10px 0 var(--border)}.card-sm{padding:1.2rem}.card-title{font-size:var(--fs-title);font-weight:900;color:var(--txt-1);margin-bottom:.5rem}.card-subtitle{font-size:var(--fs-mono);color:var(--txt-3);font-weight:600}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.2rem;margin-bottom:1.8rem}.kpi-card{display:flex;flex-direction:column;gap:.9rem}.kpi-icon{width:2.8rem;height:2.8rem;border-radius:var(--r-sm);border:2.5px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:2.5px 2.5px 0 var(--border)}.kpi-val{font-size:var(--fs-h1);font-weight:900;color:var(--txt-1);line-height:1;font-family:var(--font-mono)}.kpi-label{font-size:var(--fs-mono);color:var(--txt-2);font-weight:800;text-transform:uppercase}.progress-bar-track{height:.8rem;border-radius:var(--r-sm);background:var(--bg-base);border:2.5px solid var(--border);overflow:hidden}.progress-bar-fill{height:100%;transition:width .8s cubic-bezier(.25,.8,.25,1)}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:var(--r-sm);font-size:var(--fs-mono);font-weight:800;white-space:nowrap}.table-wrap{overflow-x:auto;border-radius:var(--r-md);border:3px solid var(--border);background:var(--bg-surface);box-shadow:5px 5px 0 var(--border)}table{width:100%;border-collapse:collapse;font-size:var(--fs-nav)}thead tr{border-bottom:3px solid var(--border);background:var(--bg-overlay)}th{padding:.9rem 1.1rem;text-align:left;font-size:var(--fs-mono);font-weight:900;color:var(--txt-1);white-space:nowrap;text-transform:uppercase}td{padding:.9rem 1.1rem;color:var(--txt-2);vertical-align:middle;border-bottom:2.5px solid var(--border)}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .15s}tbody tr:hover{background:var(--bg-overlay)}.btn-neobrutal{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem 1.2rem;background:var(--bg-surface);border:3px solid var(--border);border-radius:var(--r-sm);color:var(--txt-1);font-size:var(--fs-nav);font-weight:800;cursor:pointer;box-shadow:4px 4px 0 var(--border);transition:all .1s cubic-bezier(.25,.8,.25,1);white-space:nowrap;outline:none}.btn-neobrutal:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--border)}.btn-neobrutal:active{transform:translate(1px,1px);box-shadow:1.5px 1.5px 0 var(--border)}.btn-neobrutal-primary{background:var(--amber);color:#121212}.btn-neobrutal-primary:hover{background:var(--amber)}.btn-neobrutal-danger{background:var(--red);color:#fff}.btn-neobrutal-danger:hover{background:var(--red)}.btn-sm{padding:.4rem .8rem;font-size:var(--fs-mono)}.input-neobrutal{width:100%;background:var(--bg-surface);border:3px solid var(--border);border-radius:var(--r-sm);color:var(--txt-1);font-size:var(--fs-nav);font-weight:600;padding:.75rem .9rem;transition:var(--ease);outline:none;font-family:var(--font);box-shadow:3px 3px 0 var(--border)}.input-neobrutal:focus{border-color:var(--blue);box-shadow:5px 5px 0 var(--blue)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-row{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.2rem}.form-label{font-size:var(--fs-mono);font-weight:800;color:var(--txt-2);text-transform:uppercase}.form-grid{display:grid;gap:1.2rem}.form-grid-2{grid-template-columns:1fr 1fr}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-base);padding:1.5rem}@keyframes loginEntrance{0%{opacity:0;transform:scale(.9) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}.auth-card{width:100%;max-width:28rem;animation:loginEntrance .8s cubic-bezier(.34,1.56,.64,1) forwards}.auth-logo{display:flex;flex-direction:column;align-items:center;gap:.6rem;margin-bottom:1.8rem}.auth-logo-mark{width:3.4rem;height:3.4rem;border-radius:var(--r-md);background:var(--amber);border:3px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.5rem;color:#121212;box-shadow:4px 4px 0 var(--border)}.spinner{width:1.25rem;height:1.25rem;border-radius:50%;border:3px solid rgba(0,0,0,.1);border-top-color:var(--border);animation:spin .6s linear infinite}.uiverse-loader{display:inline-block;width:3.2rem;height:3.2rem;border:4px solid var(--bg-base);border-radius:50%;border-top-color:var(--border);animation:spin .8s ease-in-out infinite;position:relative}.uiverse-loader:after{content:"";position:absolute;top:4px;left:4px;right:4px;bottom:4px;border:4px solid transparent;border-radius:50%;border-top-color:var(--amber);animation:spin 1.6s ease-in-out infinite}.divider{height:3px;background:var(--border);margin:1.5rem 0}.text-mono{font-family:var(--font-mono)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.mb-4{margin-bottom:1.2rem}.mb-5{margin-bottom:1.8rem}.mt-auto{margin-top:auto}.font-bold{font-weight:800}.text-sm{font-size:var(--fs-mono)}.text-muted{color:var(--txt-3)}.text-blue{color:var(--blue)}.text-green{color:var(--green)}.text-amber{color:var(--amber)}.text-red{color:var(--red)}.w-full{width:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.2rem;margin-bottom:1.8rem;flex-wrap:wrap}.page-header h1{font-size:var(--fs-h1);font-weight:900;letter-spacing:-.02em}.page-header p{font-size:var(--fs-mono);color:var(--txt-3);margin-top:.15rem;font-weight:600}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:4px;background:var(--amber);border:3px solid var(--border);box-shadow:2px 2px 0 var(--border);cursor:pointer;transition:transform .1s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:4px;background:var(--amber);border:3px solid var(--border);box-shadow:2px 2px 0 var(--border);cursor:pointer}
