:root{--bg-app:#030712;--bg-glass:#111827a6;--bg-glass-hover:#1f2937cc;--border-glass:#ffffff14;--border-light:#ffffff26;--text-main:#f9fafb;--text-muted:#9ca3af;--accent-primary:#f58220;--accent-primary-hover:#e06f0f;--accent-primary-light:#ff9a3c;--accent-red:#ef4444;--sidebar-width:260px;--sidebar-collapsed:80px;--header-height:72px;--shadow-glass:0 8px 32px #0000005e;--blur-glass:blur(16px);--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-app);color:var(--text-main);background-image:radial-gradient(circle at 15%,#f582201f,#0000 25%),radial-gradient(circle at 85% 30%,#e06f0f14,#0000 25%);background-attachment:fixed;font-family:Outfit,sans-serif;line-height:1.6}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.45s ease-out forwards fadeIn}.glass{background:var(--bg-glass);-webkit-backdrop-filter:var(--blur-glass);border:1px solid var(--border-glass);box-shadow:var(--shadow-glass)}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.p-4{padding:1rem}.w-full{width:100%}.text-muted{color:var(--text-muted)}.text-sm{font-size:.875rem}.text-red{color:var(--accent-red)}.text-right{text-align:right!important}.text-center{text-align:center}.col-span-all{grid-column:1/-1}.max-w-4xl{max-width:56rem}.full-screen-loader-container,.login-container{justify-content:center;align-items:center;min-height:100vh;display:flex}.loader-ring{border:3px solid #ffffff1f;border-top-color:var(--accent-primary);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spinner-inline{border:2px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.app-wrapper{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);border-right:1px solid var(--border-glass);z-index:50;height:100dvh;transition:var(--transition-smooth);background:#0a0f1cd9;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar.mobile-open{transform:translate(0)}.sidebar-header{height:var(--header-height);border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:0 1.25rem;display:flex}.logo-area{align-self:stretch;align-items:center;gap:.75rem;min-height:0;display:flex}.brand-logo-wrap{align-items:center;gap:.65rem;min-width:0;height:100%;display:inline-flex}.brand-logo{object-fit:contain;object-position:left center;flex-shrink:0;width:auto;display:block;transform:translateY(-7px)}.logo-text{white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:1.15rem;font-weight:700;line-height:1}.collapse-btn,.mobile-menu-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.collapse-btn:hover,.mobile-menu-btn:hover{background:var(--bg-glass-hover);color:#fff}.sidebar.collapsed .logo-text,.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-user{display:none}.nav-menu{flex-direction:column;flex:1;gap:.35rem;padding:1rem;display:flex;overflow-y:auto}.nav-item{color:var(--text-muted);cursor:pointer;text-align:left;width:100%;font:inherit;transition:var(--transition-smooth);background:0 0;border:none;border-radius:12px;align-items:center;gap:.85rem;padding:.8rem 1rem;display:flex}.nav-item:hover{background:var(--bg-glass-hover);color:var(--text-main)}.nav-item.active{color:var(--accent-primary);border-left:3px solid var(--accent-primary);background:linear-gradient(90deg,#f582202e,#0000)}.sidebar-footer{border-top:1px solid var(--border-glass);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sidebar-user{flex-direction:column;gap:.15rem;font-size:.85rem;display:flex}.main-content{margin-left:var(--sidebar-width);min-height:100vh;transition:var(--transition-smooth);flex:1}.main-content.expanded{margin-left:var(--sidebar-collapsed)}.top-bar{height:var(--header-height);z-index:40;border-top:none;border-left:none;border-right:none;border-radius:0;align-items:center;gap:1rem;padding:0 1.5rem;display:flex;position:sticky;top:0}.page-title{flex:1;font-size:1.35rem;font-weight:600}.user-chip{border:1px solid var(--border-glass);background:#ffffff0d;border-radius:999px;padding:.45rem .85rem}.role-badge{text-transform:capitalize;color:var(--accent-primary);font-size:.75rem}.content-area{padding:1.5rem}.page-content{width:100%}.panel{border-radius:16px;padding:1.5rem}.panel--table{padding-bottom:.5rem}.panel-header h2{font-size:1.2rem;font-weight:600}.logout-btn{color:var(--accent-red);cursor:pointer;font:inherit;background:#ef44441a;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.55rem .85rem;font-weight:500;display:inline-flex}.logout-btn:hover{background:var(--accent-red);color:#fff}.sidebar-backdrop{z-index:45;background:#0000008c;border:none;position:fixed;inset:0}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);margin-bottom:.4rem;font-size:.875rem;display:block}.input-field{border:1px solid var(--border-glass);color:#fff;width:100%;font:inherit;background:#00000040;border-radius:10px;padding:.7rem .9rem}.input-field:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #f5822038}.input-icon-wrap{position:relative}.input-with-icon{padding-left:2.5rem}.input-icon{color:var(--text-muted);position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.input-icon-right{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.btn{cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1.2rem;font-size:.92rem;font-weight:600;display:inline-flex}.btn-sm{padding:.5rem .85rem;font-size:.85rem}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-primary-light));color:#1a0a00}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--accent-primary-hover), var(--accent-primary));transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg, var(--accent-primary-hover), var(--accent-primary-light));color:#1a0a00}.btn-secondary{color:var(--text-main);border:1px solid var(--border-glass);background:#ffffff0f}.btn-danger{color:#fca5a5;background:#ef444426;border:1px solid #ef444459}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-icon{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.4rem}.btn-icon:hover{color:#fff;background:#ffffff14}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-glass);padding:.9rem 1rem}.data-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:#0003;font-size:.78rem}.table-scroll-wrap{overflow-x:auto}.form-grid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.inline-form-panel{border-radius:12px;overflow:hidden}.form-panel-topbar{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.form-panel-topbar h2{font-size:1rem}.form-panel-body{padding:1.25rem}.login-box{z-index:2;border-radius:20px;width:min(92vw,420px);padding:2rem}.login-header{text-align:center;margin-bottom:1.5rem}.login-brand{flex-direction:column;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.login-header h2{color:var(--text-main);font-size:1.6rem}.login-form{text-align:left}.login-error{color:#fecaca;background:#ef44441f;border:1px solid #ef444459;border-radius:10px;margin-bottom:1rem;padding:.65rem .85rem;font-size:.875rem}.login-footer{text-align:center;margin-top:1.5rem}.bg-shapes{pointer-events:none;z-index:0;position:fixed;inset:0}.shape{filter:blur(90px);opacity:.45;border-radius:50%;position:absolute}.shape-1{background:#f5822040;width:420px;height:420px;top:-120px;left:-80px}.shape-2{background:#e06f0f2e;width:360px;height:360px;bottom:-80px;right:-60px}.shape-3{background:#ff9a3c1f;width:260px;height:260px;top:40%;right:18%}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.stats-grid--3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{border-radius:16px;align-items:center;gap:1rem;padding:1.25rem;display:flex}.stat-icon{width:52px;height:52px;color:var(--accent-primary);background:#f582201f;border-radius:14px;justify-content:center;align-items:center;display:flex}.stat-content h3{color:var(--text-muted);font-size:.85rem;font-weight:500}.stat-value{font-size:1.75rem;font-weight:700;line-height:1.1}.config-box{border:1px solid var(--border-glass);background:#0003;border-radius:12px;padding:1.25rem}.config-box p{margin-bottom:.5rem}.highlight{color:var(--accent-primary);font-weight:600}.status-badge{border-radius:999px;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-block}.status-badge.active{color:var(--accent-primary-light);background:#f5822026}.status-badge.inactive{color:#fca5a5;background:#ef44441f}.placeholder-panel{text-align:center;padding:3rem 1.5rem}.placeholder-icon{color:var(--accent-primary);opacity:.85;margin:0 auto 1rem}.confirm-inline-bar{z-index:1200;border-radius:12px;width:min(96vw,42rem);padding:1rem 1.25rem;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}.confirm-inline-bar-content{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.confirm-dialog-title{margin-bottom:.35rem;font-size:1rem}.confirm-dialog-message{color:var(--text-muted);font-size:.875rem}.confirm-dialog-actions{gap:.5rem;display:flex}@media (width<=768px){.sidebar{width:min(86vw,300px);transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.main-content,.main-content.expanded{margin-left:0}.content-area{padding:1rem}}
