:root{--bg:#030210;--bg2:#06041a;--bg3:#0a0820;--surface:#0f0d24;--surface2:#17143a;--border:#648cff17;--border-bright:#78a0ff33;--text:#cdd8ff;--text-dim:#7d8ec0;--text-muted:#3d4568;--purple:#7c5cfc;--purple-light:#a78bfa;--purple-dim:#7c5cfc1c;--purple-glow:#7c5cfc47;--blue:#3a6fd8;--blue-bright:#5b8dee;--teal:#2dd4d4;--teal-dim:#2dd4d41a;--danger:#e05c7a;--danger-dim:#e05c7a1a;--success:#2dd4a0;--grad-icon:linear-gradient(135deg,#5b8dee 0%,#7c5cfc 55%,#a78bfa 100%);--grad-text:linear-gradient(135deg,#7ec8ff,#c4b5fd);--grad-glow:linear-gradient(135deg,#5b8dee12,#7c5cfc12);--grad-btn:linear-gradient(135deg,#3a6fd8,#7c5cfc);--sidebar-w:68px;--radius:12px;--radius-lg:18px;--radius-xl:24px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.6;overflow:hidden}.section-title{background:linear-gradient(135deg, var(--blue-bright), var(--purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:15px;padding-left:5px;font-family:Space Grotesk,sans-serif;font-size:1.4rem;font-weight:700}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(100% 60% at 15% 0,#2d64dc33 0%,#0000 55%),radial-gradient(70% 50% at 85% 100%,#643cc829 0%,#0000 50%),radial-gradient(45% 40% at 65%,#2db4d412 0%,#0000 55%),radial-gradient(30% 25% at 8% 75%,#5028b41f 0%,#0000 50%),radial-gradient(25% 20% at 95% 25%,#1ea0c814 0%,#0000 50%),radial-gradient(20% 15% at 50% 90%,#783cdc14 0%,#0000 50%);animation:14s ease-in-out infinite alternate nebulaPulse;position:fixed;inset:0}@keyframes nebulaPulse{0%{opacity:.6}50%{opacity:1}to{opacity:.75}}body:after{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(1.5px 1.5px at 5% 3%,#d2e6ffd9 0%,#0000 100%),radial-gradient(1px 1px at 18% 10%,#bed7ff8c 0%,#0000 100%),radial-gradient(2px 2px at 31% 2%,#aacdffa6 0%,#0000 100%),radial-gradient(1px 1px at 49% 6%,#d2e6ff80 0%,#0000 100%),radial-gradient(1.5px 1.5px at 66% 3%,#bed7ffb3 0%,#0000 100%),radial-gradient(1px 1px at 83% 12%,#aacdff73 0%,#0000 100%),radial-gradient(2px 2px at 94% 2%,#d2e6ff99 0%,#0000 100%),radial-gradient(1px 1px at 11% 21%,#bed7ff59 0%,#0000 100%),radial-gradient(1px 1px at 42% 16%,#aacdff73 0%,#0000 100%),radial-gradient(1.5px 1.5px at 75% 25%,#d2e6ff66 0%,#0000 100%),radial-gradient(1px 1px at 27% 35%,#bed7ff47 0%,#0000 100%),radial-gradient(1px 1px at 60% 30%,#aacdff80 0%,#0000 100%),radial-gradient(3px 3px at 15% 8%,#96c3ff99 0%,#0000 100%),radial-gradient(1px 1px at 81% 40%,#d2e6ff4d 0%,#0000 100%),radial-gradient(1.5px 1.5px at 3%,#bed7ff40 0%,#0000 100%),radial-gradient(1px 1px at 38% 56%,#aacdff59 0%,#0000 100%),radial-gradient(1px 1px at 73% 52%,#d2e6ff73 0%,#0000 100%),radial-gradient(2.5px 2.5px at 54% 20%,#82afff8c 0%,#0000 100%),radial-gradient(1px 1px at 24% 65%,#bed7ff40 0%,#0000 100%),radial-gradient(3px 3px at 56% 73%,#96c3ff6b 0%,#0000 100%),radial-gradient(1px 1px at 88% 68%,#d2e6ff4d 0%,#0000 100%),radial-gradient(1.5px 1.5px at 33% 82%,#bed7ff73 0%,#0000 100%),radial-gradient(1px 1px at 65% 87%,#aacdff40 0%,#0000 100%),radial-gradient(2px 2px at 9% 76%,#8cb9ff6b 0%,#0000 100%),radial-gradient(2px 2px at 46% 43%,#50d7d773 0%,#0000 100%),radial-gradient(1.5px 1.5px at 71% 14%,#3cc3d766 0%,#0000 100%),radial-gradient(1px 1px at 22% 57%,#50d7d747 0%,#0000 100%),radial-gradient(2px 2px at 87% 31%,#3cc3d759 0%,#0000 100%),radial-gradient(1px 1px at 13% 44%,#50d7d738 0%,#0000 100%);animation:7s ease-in-out infinite alternate twinkle;position:fixed;inset:0}@keyframes twinkle{0%{opacity:.45}45%{opacity:.95}to{opacity:.55}}html:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 36% 36%,#b4d7ff17 0%,#649beb0d 40%,#0000 70%);border:1px solid #a0c3ff0f;border-radius:50%;width:300px;height:300px;animation:20s ease-in-out infinite alternate moonDrift;position:fixed;top:-70px;right:-50px;box-shadow:0 0 80px #5a96ff0d,0 0 160px #4678e108}@keyframes moonDrift{0%{transform:translateY(0)rotate(0)}to{transform:translateY(22px)rotate(5deg)}}.app-shell{z-index:1;width:100vw;height:100vh;display:flex;position:relative}.page-area{margin-left:var(--sidebar-w);flex-direction:column;flex:1;display:flex;overflow:hidden}.page-scroll{flex:1;padding:26px 30px;overflow-y:auto}.page-scroll::-webkit-scrollbar{width:4px}.page-scroll::-webkit-scrollbar-track{background:0 0}.page-scroll::-webkit-scrollbar-thumb{background:#648cff24;border-radius:4px}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px);z-index:10;background:#030210eb;flex-shrink:0;justify-content:space-between;align-items:center;height:62px;padding:0 30px;display:flex;position:relative}.topbar-left{align-items:center;display:flex}.topbar-left h2{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:1.02rem;font-weight:500}.grad-name{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-weight:600}.topbar-right{align-items:center;gap:8px;display:flex}.search-bar-row{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:9;background:#030210b3;align-items:center;gap:10px;padding:10px 30px;display:flex;position:relative}.search-input-field{border-radius:var(--radius);border:1px solid var(--border-bright);background:var(--surface);color:var(--text);outline:none;flex:1;padding:9px 14px;font-family:DM Sans,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.search-input-field:focus{border-color:var(--blue-bright);box-shadow:0 0 0 3px #5b8dee1f}.search-input-field::placeholder{color:var(--text-muted)}.icon-btn{border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--text-dim);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;transition:all .2s;display:flex}.icon-btn:hover{background:var(--surface2);border-color:var(--border-bright);box-shadow:0 0 12px #5b8dee1a}.section-title{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px;font-family:Space Grotesk,sans-serif;font-size:.65rem;font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.btn-primary{border-radius:var(--radius);background:var(--grad-btn);color:#fff;cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:9px 18px;font-family:DM Sans,sans-serif;font-size:.87rem;font-weight:500;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff12,#0000);position:absolute;inset:0}.btn-primary:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 0 28px #5b8dee4d,0 0 56px #7c5cfc1f}.btn-ghost{border-radius:var(--radius);border:1px solid var(--border-bright);color:var(--text-dim);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:9px 18px;font-family:DM Sans,sans-serif;font-size:.87rem;font-weight:500;transition:all .18s;display:inline-flex}.btn-ghost:hover{color:var(--text);background:#5b8dee12;border-color:#78a0ff52}.danger-ghost{color:var(--danger)!important;border-color:#e05c7a47!important}.danger-ghost:hover{background:var(--danger-dim)!important}.modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;background:#02010cd9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg2);border:1px solid var(--border-bright);border-radius:var(--radius-xl);z-index:1001;width:100%;max-width:520px;padding:28px;animation:.22s cubic-bezier(.16,1,.3,1) forwards modalIn;position:relative;box-shadow:0 0 50px #5b8dee14,0 32px 64px #0000008c}.file-read-modal{max-width:680px}@keyframes modalIn{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.modal-header h3{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:1.08rem;font-weight:600}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.file-content-area{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg3);max-height:360px;overflow-y:auto}.file-content-text{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;padding:20px;font-family:DM Sans,sans-serif;font-size:.88rem;line-height:1.7}.field{margin-bottom:16px}.field label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:.69rem;font-weight:600;display:block}.field input,.field textarea,.field select{border-radius:var(--radius);border:1px solid var(--border-bright);background:var(--bg3);width:100%;color:var(--text);outline:none;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue-bright);box-shadow:0 0 0 3px #5b8dee1f}.field select option{background:var(--bg2)}.field textarea{resize:vertical;min-height:80px}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=768px){:root{--sidebar-w:0px}body{overflow:auto}body.auth-route:before,body.auth-route:after{box-shadow:none;content:none;background:0 0;animation:none}html:has(body.auth-route):before{box-shadow:none;content:none;background:0 0;animation:none}.app-shell{flex-direction:column}.page-area{margin-bottom:64px;margin-left:0}.sidebar{border-right:none!important;border-top:1px solid var(--border)!important;flex-direction:row!important;width:100%!important;height:64px!important;padding:0 16px!important;position:fixed!important;top:auto!important;bottom:0!important;left:0!important}.sidebar-logo{display:none!important}.sidebar-nav{flex:1;justify-content:space-around;flex-direction:row!important;gap:0!important}.sidebar-bottom{flex-direction:row!important}.nav-btn.active:before{display:none}.page-scroll{padding:14px 16px}.topbar{padding:0 16px}.search-bar-row{padding:8px 16px}.field-row{grid-template-columns:1fr}.modal-box{max-width:100%;padding:18px}}@media (width<=480px){.topbar-left h2{font-size:.9rem}}
