@import "https://fonts.googleapis.com/css2?family=Lexend:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block";:root{--bg:#0a0f1d;--surface-low:#111827;--surface:#1f2937;--surface-high:#374151;--surface-highest:#4b5563;--on-surface:#f9fafb;--on-surface-var:#e5e7eb;--outline:#9ca3af;--outline-var:#4b5563;--primary:#60a5fa;--primary-container:#1d4ed8;--on-primary:#fff;--on-primary-container:#dbeafe;--secondary:#e5e7eb;--secondary-container:#374151;--on-secondary:#111827;--tertiary:#d8b4fe;--tertiary-container:#7c3aed;--on-tertiary:#fff;--error:#fca5a5;--error-container:#7f1d1d;--on-error:#fff;--sidebar-width:280px;--bento-border:#ffffff14;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--on-surface);background-color:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Lexend,Inter,system-ui,sans-serif;font-weight:400;line-height:1.5}:root.light-theme{--bg:#f7f9fb;--surface-low:#f2f4f6;--surface:#fff;--surface-high:#e6e8ea;--surface-highest:#e0e3e5;--on-surface:#191c1e;--on-surface-var:#424751;--outline:#727783;--outline-var:#c2c6d3;--primary:#003e7b;--primary-container:#0055a5;--on-primary:#fff;--on-primary-container:#b0ccff;--secondary:#00677e;--secondary-container:#00d2fd;--on-secondary:#fff;--on-secondary-container:#005669;--tertiary:#4d00b4;--tertiary-container:#6900ef;--on-tertiary:#fff;--on-tertiary-container:#d5c2ff;--error:#ba1a1a;--error-container:#ffdad6;--on-error:#fff;--on-error-container:#93000a;--bento-border:#e2e8f0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background-color:var(--bg);background-image:radial-gradient(60% 50% at 0 0,#a8c8ff1a 0%,#0000 70%),radial-gradient(50% 40% at 100% 60%,#e0b6ff0f 0%,#0000 70%);min-width:320px;min-height:100vh;margin:0;display:flex}#root{width:100%;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--surface-low)}::-webkit-scrollbar-thumb{background:var(--outline-var);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--outline)}.glass-card{-webkit-backdrop-filter:blur(20px);background:#ffffff0a;border:1px solid #ffffff14;border-top-color:#ffffff24;border-radius:16px;box-shadow:0 8px 32px #0006,inset 0 1px #ffffff0f}.light-theme .glass-card{background:#ffffffe6;border:1px solid #0000000f;border-top-color:#00000008;box-shadow:0 8px 30px #94a3b81f}.glass-sidebar{-webkit-backdrop-filter:blur(24px);background:#0b1326cc;border-right:1px solid #ffffff0f}.light-theme .glass-sidebar{background:#fff;border-right:1px solid #e2e8f0}.glass-input{color:var(--on-surface);background:#00000040;border:1px solid #ffffff1a;border-radius:10px;padding:10px 16px;font-family:Inter,sans-serif;font-size:13px;transition:all .2s}.light-theme .glass-input{color:#0f172a;background:#fff;border:1px solid #cbd5e1}.glass-input::placeholder{color:var(--on-surface-var);opacity:.6}.glass-input:focus{border-color:var(--primary);background:#a8c8ff0f;outline:none;box-shadow:0 0 0 2px #a8c8ff33}.light-theme .glass-input:focus{background:#fff;box-shadow:0 0 0 2px #2563eb26}.glass-input option{background:var(--surface-high);color:var(--on-surface)}.light-theme .glass-input option{color:#0f172a;background:#fff}.btn-primary{background:var(--primary-container);color:var(--on-primary-container);letter-spacing:.04em;cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:6px;padding:10px 22px;font-family:Inter,sans-serif;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary:hover{background:#0066c8;transform:translateY(-1px);box-shadow:0 0 20px #0055a580}.btn-primary:active{transform:scale(.97)}.btn-secondary{color:var(--on-surface-var);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;padding:9px 18px;font-family:Inter,sans-serif;font-weight:500;transition:all .2s}.btn-secondary:hover{color:var(--primary);background:#a8c8ff1a;border-color:#a8c8ff4d}.btn-secondary:disabled{opacity:.35;cursor:not-allowed}.nav-item{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;width:100%;color:var(--on-surface-var);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:14px;padding:12px 20px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;transition:all .2s;display:flex}.nav-item:hover{color:var(--primary);background:#a8c8ff14}.nav-item.active{background:var(--primary-container);color:var(--on-primary-container);box-shadow:0 0 16px #0055a566}.badge-pending{letter-spacing:.04em;text-transform:uppercase;color:var(--on-surface-var);background:#8c919d26;border:1px solid #8c919d40;border-radius:9999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.badge-processing{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);background:#a8c8ff1f;border:1px solid #a8c8ff4d;border-radius:9999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.badge-done{letter-spacing:.04em;text-transform:uppercase;color:var(--tertiary);background:#e0b6ff1f;border:1px solid #e0b6ff4d;border-radius:9999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.badge-error{letter-spacing:.04em;text-transform:uppercase;color:var(--error);background:#ffb4ab1f;border:1px solid #ffb4ab4d;border-radius:9999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.keycode-chip{letter-spacing:.08em;color:var(--primary);background:#a8c8ff1f;border:1px solid #a8c8ff40;border-radius:8px;padding:4px 12px;font-family:Lexend,sans-serif;font-size:12px;font-weight:700;display:inline-block}.stat-card{-webkit-backdrop-filter:blur(20px);background:#ffffff0a;border:1px solid #ffffff14;border-top-color:#ffffff24;border-left:4px solid #a8c8ff66;border-radius:16px;flex-direction:column;gap:10px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 24px #0000004d}.light-theme .stat-card{border:1px solid #e2e8f0;border-left:4px solid var(--primary);background:#fff;box-shadow:0 4px 20px #94a3b814}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #a8c8ff1f}.light-theme .stat-card:hover{box-shadow:0 8px 24px #94a3b826}.sub-row{cursor:pointer;transition:background .15s}.sub-row:hover{background:#a8c8ff0f!important}.light-theme .sub-row:hover{background:#0055a50a!important}.sub-row.selected{background:#a8c8ff1a!important}.light-theme .sub-row.selected{background:#0055a514!important}.icon-btn{width:32px;height:32px;color:var(--on-surface-var);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:9999px;justify-content:center;align-items:center;font-size:14px;transition:all .2s;display:inline-flex}.light-theme .icon-btn{background:#fff;border:1px solid #cbd5e1}.icon-btn:hover{background:var(--primary-container);border-color:var(--primary);color:var(--on-primary-container);box-shadow:0 0 12px #0055a566}.icon-btn.danger:hover{background:var(--error-container);border-color:var(--error);color:var(--error);box-shadow:0 0 12px #ffb4ab40}.icon-btn:disabled{opacity:.3;cursor:not-allowed}.icon-btn:disabled:hover{color:var(--on-surface-var);box-shadow:none;background:#ffffff0a;border-color:#ffffff1a}.light-theme .icon-btn:disabled:hover{background:#f1f5f9;border-color:#cbd5e1}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:1s linear infinite spin}.neon-glow-primary{box-shadow:0 0 20px #0055a580}.log-scroll{font-family:Courier New,monospace;font-size:10px}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--on-surface-var);font-family:Inter,sans-serif;font-size:11px;font-weight:700}.top-header{z-index:40;-webkit-backdrop-filter:blur(16px);background:#0b1326cc;border-bottom:1px solid #ffffff0f;position:sticky;top:0}.light-theme .top-header{background:#f1f5f9e6;border-bottom:1px solid #cbd5e1}.toast{z-index:9999;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-left:4px solid;border-radius:12px;padding:12px 20px;font-size:13px;font-weight:600;animation:.3s slideIn;position:fixed;top:24px;right:24px;box-shadow:0 8px 24px #0006}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast.error{border-color:var(--error);color:var(--error);background:#93000ad9}.toast.success{border-color:var(--primary);color:var(--primary);background:#0055a5d9}.toast.info{border-color:var(--tertiary);color:var(--tertiary);background:#454668d9}.toast.loading{border-color:var(--primary);color:var(--on-surface);background:#171f33e6;align-items:center;gap:10px;display:flex}.toast.loading:before{content:"";border:2px solid #fff3;border-top-color:var(--primary);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}.progress-bar{background:#ffffff14;border-radius:9999px;width:100%;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary-container), var(--primary));border-radius:9999px;height:100%;transition:width .6s}.mini-bar{background:#a8c8ff0a;border-radius:8px;align-items:flex-end;gap:3px;height:48px;padding:4px;display:flex;overflow:hidden}.mini-bar span{background:#a8c8ff40;border-radius:3px 3px 0 0;flex:1;transition:background .3s}.mini-bar span:last-child{background:var(--primary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.pulse-dot{animation:2s infinite pulse}.fab{z-index:50;background:var(--primary-container);width:52px;height:52px;color:var(--on-primary-container);cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;font-size:24px;transition:all .25s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 20px #0055a580,0 0 40px #0055a533}.fab:hover{transform:scale(1.1);box-shadow:0 8px 30px #0055a5b3}.fab:active{transform:scale(.95)}.login-page{background:var(--bg);width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-canvas{pointer-events:none;z-index:0;position:fixed;inset:0}.login-orb{pointer-events:none;z-index:0;filter:blur(80px);border-radius:50%;animation:12s ease-in-out infinite orbFloat;position:fixed}.login-orb-1{background:radial-gradient(circle,#0055a540 0%,#a8c8ff14 50%,#0000 80%);width:600px;height:600px;animation-duration:14s;top:-200px;left:-150px}.login-orb-2{background:radial-gradient(circle,#7b27ba26 0%,#e0b6ff0f 50%,#0000 80%);width:400px;height:400px;animation-duration:18s;animation-delay:-6s;bottom:-100px;right:-100px}.login-orb-3{background:radial-gradient(circle,#a8c8ff14 0%,#0000 70%);width:300px;height:300px;animation-duration:22s;animation-delay:-10s;top:50%;right:30%}@keyframes orbFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-40px)scale(1.05)}66%{transform:translate(-20px,20px)scale(.95)}}.login-grid{pointer-events:none;z-index:0;background-image:linear-gradient(#a8c8ff08 1px,#0000 1px),linear-gradient(90deg,#a8c8ff08 1px,#0000 1px);background-size:48px 48px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 30%,#0009 0%,#0000 70%);mask-image:radial-gradient(80% 60% at 30%,#0009 0%,#0000 70%)}.login-panel-left{z-index:1;flex-direction:column;flex:0 0 55%;justify-content:center;padding:60px 72px;display:flex;position:relative;overflow:hidden}.login-panel-left:after{content:"";background:linear-gradient(#0000,#a8c8ff26 30% 70%,#0000);width:1px;height:100%;position:absolute;top:0;right:0}.login-panel-right{z-index:1;flex:1;justify-content:center;align-items:center;padding:40px 48px;display:flex;position:relative}.login-brand-logo{background:#0055a540;border:1px solid #a8c8ff33;border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:32px;animation:4s ease-in-out infinite logoPulse;display:inline-flex;overflow:hidden;box-shadow:0 0 40px #0055a566,0 0 80px #0055a51a}@keyframes logoPulse{0%,to{box-shadow:0 0 40px #0055a566,0 0 80px #0055a51a}50%{box-shadow:0 0 60px #0055a599,0 0 100px #0055a533}}.login-brand-title{background:linear-gradient(135deg,#dae2fd 0%,#a8c8ff 40%,#c3c3eb 80%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin:0 0 8px;font-family:Lexend,sans-serif;font-size:42px;font-weight:700;line-height:1.15}.login-brand-subtitle{letter-spacing:.12em;text-transform:uppercase;color:var(--primary);opacity:.85;margin:0 0 28px;font-family:Inter,sans-serif;font-size:13px;font-weight:600}.login-brand-desc{color:var(--on-surface-var);max-width:400px;margin:0 0 48px;font-family:Inter,sans-serif;font-size:15px;font-weight:400;line-height:1.7}.login-stats{flex-wrap:wrap;gap:24px;display:flex}.login-stat-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:default;background:#ffffff08;border:1px solid #a8c8ff1a;border-radius:14px;flex-direction:column;gap:4px;min-width:120px;padding:16px 20px;transition:all .3s;display:flex}.login-stat-item:hover{background:#a8c8ff0f;border-color:#a8c8ff33;transform:translateY(-2px)}.login-stat-value{color:var(--primary);letter-spacing:-.02em;font-family:Lexend,sans-serif;font-size:20px;font-weight:700}.login-stat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--on-surface-var);font-family:Inter,sans-serif;font-size:10px;font-weight:600}.login-features{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.login-feature-badge{letter-spacing:.05em;color:var(--on-surface-var);background:#a8c8ff12;border:1px solid #a8c8ff26;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;transition:all .25s;display:inline-flex}.login-feature-badge:hover{color:var(--primary);background:#a8c8ff1f;border-color:#a8c8ff4d}.login-feature-badge-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}.login-form-card{-webkit-backdrop-filter:blur(24px);box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff14;border-top-color:#ffffff29;border-radius:24px;width:100%;max-width:420px;padding:44px 40px;animation:.6s forwards formFadeIn;box-shadow:0 24px 60px #00000080,0 0 0 1px #ffffff0a,inset 0 1px #ffffff14}@keyframes formFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-form-header{text-align:center;margin-bottom:36px}.login-form-logo{background:#0055a54d;border:1px solid #a8c8ff33;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:inline-flex;overflow:hidden;box-shadow:0 0 24px #0055a566}.login-form-title{color:var(--on-surface);letter-spacing:-.01em;margin:0 0 4px;font-family:Lexend,sans-serif;font-size:22px;font-weight:700}.login-form-subtitle{letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-var);opacity:.75;margin:0;font-size:11px;font-weight:600}.login-input-group{flex-direction:column;gap:8px;display:flex;position:relative}.login-input-wrapper{align-items:center;display:flex;position:relative}.login-input-icon{color:var(--on-surface-var);pointer-events:none;opacity:.6;z-index:1;align-items:center;transition:all .2s;display:flex;position:absolute;left:14px}.login-field-input{box-sizing:border-box;width:100%;color:var(--on-surface);background:#0003;border:1px solid #ffffff14;border-radius:14px;padding:13px 16px 13px 44px;font-family:Inter,sans-serif;font-size:14px;transition:all .25s}.login-field-input::placeholder{color:var(--on-surface-var);opacity:.5}.login-field-input:focus{background:#a8c8ff0d;border-color:#a8c8ff66;outline:none;box-shadow:0 0 0 3px #a8c8ff1a,0 4px 12px #0003}.login-field-input:focus+.login-input-icon-after,.login-input-wrapper:focus-within .login-input-icon{opacity:1;color:var(--primary)}.login-submit-btn{color:#b0ccff;letter-spacing:.06em;cursor:pointer;background:linear-gradient(135deg,#0055a5 0%,#0066c8 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:8px;padding:14px;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:all .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0055a580,inset 0 1px #ffffff1a}.login-submit-btn:before{content:"";opacity:0;background:linear-gradient(135deg,#ffffff1a 0%,#0000 60%);transition:opacity .25s;position:absolute;inset:0}.login-submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #0055a5a6}.login-submit-btn:hover:before{opacity:1}.login-submit-btn:active{transform:scale(.98)}.login-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes loginShake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-4px)}90%{transform:translate(4px)}}.login-form-shake{animation:.5s loginShake}.login-btn-spinner{border:2px solid #b0ccff4d;border-top-color:#b0ccff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.login-divider{align-items:center;gap:12px;margin:4px 0;display:flex}.login-divider-line{background:#ffffff12;flex:1;height:1px}.login-divider-text{color:var(--on-surface-var);opacity:.5;white-space:nowrap;font-family:Inter,sans-serif;font-size:11px}.login-footer{text-align:center;color:var(--on-surface-var);opacity:.5;letter-spacing:.03em;margin-top:28px;font-family:Inter,sans-serif;font-size:11px}.login-particle{pointer-events:none;z-index:0;background:radial-gradient(circle,#a8c8ff99,#0000);border-radius:50%;animation:linear infinite particleFloat;position:fixed}@keyframes particleFloat{0%{opacity:0;transform:translateY(100vh)scale(0)}5%{opacity:1}90%{opacity:.6}to{opacity:0;transform:translateY(-20vh)scale(1)}}@media (width<=900px){.login-panel-left{display:none}.login-panel-right{flex:1;justify-content:center;align-items:center;padding:24px 20px}.login-form-card{padding:36px 28px}}@media (width<=480px){.login-form-card{padding:28px 20px}.login-form-title{font-size:20px}}.bar-item{position:relative;transition:all .2s!important}.bar-item:hover{filter:brightness(1.2);transform:scaleY(1.05);background:var(--primary)!important}.bar-item:hover .tooltip-text{opacity:1!important;visibility:visible!important;transform:translate(-50%,-4px)!important}
