@import "https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap";:root{--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary:#080d18;--bg-secondary:#0e1424;--bg-card:#121b3099;--bg-card-hover:#182441cc;--border-color:#ffffff0d;--border-hover:#ffffff1a;--text-primary:#f0f4ff;--text-secondary:#8b9cc0;--text-muted:#4d5e80;--color-blue:#3b82f6;--color-purple:#8b5cf6;--color-green:#10b981;--color-amber:#f59e0b;--color-red:#ef4444;--color-cyan:#06b6d4;--color-success:#10b981;--color-danger:#ef4444;--color-warning:#f59e0b;--color-info:#3b82f6;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 32px #00000080, 0 2px 8px #0000004d;--shadow-glow-blue:0 0 20px #3b82f640;--shadow-glow-purple:0 0 20px #8b5cf640;--radius-xs:.25rem;--radius-sm:.5rem;--radius-md:.875rem;--radius-lg:1.25rem;--radius-xl:1.75rem;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.35s cubic-bezier(.16, 1, .3, 1)}:root.light{--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-card:#fff;--bg-card-hover:#fff;--border-color:#00000014;--border-hover:#0000001f;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#9ca3af;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000000d;--shadow-lg:0 10px 15px -3px #00000005}:root.light body:before{background:0 0}:root.light .glass-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000000d}:root.light .sidebar{border-right:1px solid var(--border-color);background:#fff}:root.light .mobile-nav{border-top:1px solid var(--border-color);background:#fff}:root.light .page-title-group h1{background:linear-gradient(135deg,#0f172a 0%,#334155 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}:root.light .nav-item:hover{background:#00000008}:root.light .brand-name{background:linear-gradient(135deg,#0f172a 0%,#334155 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}:root.light .form-input,:root.light .form-select,:root.light .form-textarea{background:#fff}:root.light .sidebar-footer{border-top:1px solid var(--border-color)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 60% at 20% -10%,#3b82f612 0%,#0000 60%),radial-gradient(60% 40% at 80% 110%,#8b5cf60f 0%,#0000 60%),radial-gradient(50% 50%,#10b98105 0%,#0000 80%);position:fixed;inset:0}#root{z-index:1;position:relative}h1,h2,h3,h4,h5,h6{letter-spacing:-.03em;color:var(--text-primary);font-weight:700;line-height:1.2}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff1a}::-webkit-scrollbar-thumb:hover{background:#fff3}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px)saturate(150%);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-spring)}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:var(--shadow-lg), 0 0 0 1px #ffffff05}.app-container{min-height:100vh;display:flex;position:relative}.main-content{width:100%;max-width:1100px;animation:pageEnter .35s var(--transition-spring);flex:1;margin:0 auto;padding:2rem 1.5rem 7rem}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width>=768px){.main-content{max-width:calc(100% - 260px);margin-left:260px;padding:2.5rem}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.page-title-group h1{background:linear-gradient(135deg,#f0f4ff 0%,#8b9cc0 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.25rem;font-size:clamp(1.5rem,3vw,2rem)}.page-title-group p{color:var(--text-secondary);font-size:.9rem}.btn{border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);box-shadow:0 4px 14px #3b82f659}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #3b82f673}.btn-secondary{color:var(--text-primary);border-color:var(--border-color);background:#ffffff0a}.btn-secondary:hover{border-color:var(--border-hover);background:#ffffff14}.btn-danger{color:var(--color-danger);background:#ef444414;border-color:#ef444433}.btn-danger:hover{background:var(--color-danger);color:#fff}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover{color:var(--text-primary);background:#ffffff0a}.sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border-color);z-index:50;background:#0a101ef2;flex-direction:column;width:260px;padding:2rem 1.25rem;display:none;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}@media (width>=768px){.sidebar{display:flex}}.brand{align-items:center;gap:.875rem;margin-bottom:2.5rem;padding:0 .5rem;display:flex}.brand-logo{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.1rem;font-weight:800;display:flex;box-shadow:0 0 20px #8b5cf666,0 4px 12px #0006}.brand-name{letter-spacing:-.03em;background:linear-gradient(135deg,#fff 0%,#a0b0d0 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.1rem;font-weight:800}.nav-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:1.25rem 0 .5rem;padding:0 .75rem;font-size:.7rem;font-weight:700}.nav-links{flex-direction:column;gap:.25rem;list-style:none;display:flex}.nav-item{color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);border-left:3px solid #0000;align-items:center;gap:.75rem;padding:.75rem;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{color:var(--text-primary);background:#ffffff0a}.nav-item.active{color:#fff;background:#3b82f61f;border-left-color:#3b82f6;font-weight:600}.nav-item.active svg{filter:drop-shadow(0 0 6px #3b82f699)}.sidebar-footer{border-top:1px solid var(--border-color);margin-top:auto;padding-top:1.5rem}.sidebar-footer p{color:var(--text-muted);text-align:center;font-size:.72rem;line-height:1.5}.mobile-nav{-webkit-backdrop-filter:blur(24px)saturate(180%);border-top:1px solid var(--border-color);z-index:100;height:4.75rem;padding:0 .25rem;padding-bottom:env(safe-area-inset-bottom,0);background:#0a101ef5;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.mobile-nav{display:none}}.mobile-nav-item{color:var(--text-muted);height:100%;transition:all var(--transition-fast);letter-spacing:.02em;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.3rem;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav-item.active{color:#3b82f6}.mobile-nav-item.active svg{filter:drop-shadow(0 0 6px #3b82f680)}.form-group{margin-bottom:1.25rem}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.form-input,.form-select,.form-textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);transition:all var(--transition-fast);appearance:none;background:#ffffff08;padding:.75rem 1rem;font-size:.9rem}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b9cc0' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.form-select option{color:var(--text-primary);background:#0e1424}.form-input:focus,.form-select:focus,.form-textarea:focus{background:#3b82f60d;border-color:#3b82f699;outline:none;box-shadow:0 0 0 3px #3b82f626}.form-textarea{resize:vertical;min-height:80px}.toast{border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-lg);z-index:500;max-width:320px;animation:toastSlideIn .35s var(--transition-spring) forwards;align-items:center;gap:.625rem;padding:.875rem 1.25rem;font-size:.875rem;font-weight:500;display:flex;position:fixed;bottom:5.5rem;right:1.25rem}@media (width>=768px){.toast{bottom:1.5rem;right:1.5rem}}.toast-success{background:linear-gradient(135deg,#059669,#10b981)}.toast-info{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}.toast-error{background:linear-gradient(135deg,#b91c1c,#ef4444)}.toast-warning{color:#1a0a00;background:linear-gradient(135deg,#b45309,#f59e0b)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}.animate-spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:5rem 2rem;font-size:.9rem;display:flex}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.empty-icon{color:var(--text-muted)}.empty-state h3{font-size:1.2rem}.empty-state p{color:var(--text-secondary);max-width:380px;font-size:.875rem;line-height:1.6}.fade-in-up{animation:fadeInUp .25s var(--transition-spring) both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
