*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;background:#06060f;height:100vh;font-family:Inter,sans-serif;overflow:hidden}#bg-canvas{z-index:0;width:100%;height:100%;position:fixed;inset:0}#login-screen{z-index:10;opacity:0;height:100vh;animation:1s .3s forwards fadeIn;display:flex;position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-left{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:60px;display:flex;position:relative;overflow:hidden}.left-glow{pointer-events:none;background:radial-gradient(circle,#6c63ff1f 0%,#3ecf8e0d 40%,#0000 70%);border-radius:50%;width:500px;height:500px;animation:4s ease-in-out infinite glowPulse;position:absolute}@keyframes glowPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.orbit-ring{border:1px solid #6c63ff1f;border-radius:50%;animation:linear infinite orbitSpin;position:absolute}.orbit-ring:nth-child(2){width:320px;height:320px;animation-duration:18s}.orbit-ring:nth-child(3){border-color:#3ecf8e14;width:460px;height:460px;animation-duration:28s;animation-direction:reverse}.orbit-ring:nth-child(4){border-color:#6c63ff0f;width:580px;height:580px;animation-duration:40s}@keyframes orbitSpin{to{transform:rotate(360deg)}}.orbit-ring:before{content:"";background:#6c63ff;border-radius:50%;width:6px;height:6px;margin-left:-3px;position:absolute;top:-3px;left:50%;box-shadow:0 0 8px #6c63ffcc}.orbit-ring:nth-child(3):before{background:#3ecf8e;box-shadow:0 0 8px #3ecf8ecc}.orbit-ring:nth-child(4):before{width:4px;height:4px;margin-left:-2px;top:-2px}.brand{z-index:2;text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.brand-icon-wrap{margin-bottom:28px;position:relative}.pulse-ring{border:2px solid #6c63ff66;border-radius:50%;width:80px;height:80px;margin:-40px 0 0 -40px;animation:2.5s ease-out infinite pulseRing;position:absolute;top:50%;left:50%}.pulse-ring:nth-child(2){animation-delay:.8s}.pulse-ring:nth-child(3){border-color:#3ecf8e4d;animation-delay:1.6s}@keyframes pulseRing{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}.brand-icon{color:#fff;z-index:2;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border-radius:22px;justify-content:center;align-items:center;width:84px;height:84px;font-size:38px;font-weight:900;animation:3s ease-in-out infinite iconFloat;display:flex;position:relative;box-shadow:0 0 40px #6c63ff80,0 0 80px #6c63ff33}@keyframes iconFloat{0%,to{transform:translateY(0);box-shadow:0 0 40px #6c63ff80,0 0 80px #6c63ff33}50%{transform:translateY(-8px);box-shadow:0 0 60px #6c63ffb3,0 0 120px #3ecf8e40}}.brand-name{letter-spacing:-2.5px;background:linear-gradient(135deg,#fff 30%,#a09af5 65%,#3ecf8e);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:54px;font-weight:900;line-height:1;animation:4s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.brand-tagline{letter-spacing:4px;text-transform:uppercase;color:#ffffff59;margin-bottom:32px;font-size:11px;font-weight:500}.brand-line{background:linear-gradient(90deg,#6c63ff,#3ecf8e);border-radius:2px;width:80px;height:2px;margin-bottom:32px;animation:2s ease-in-out infinite lineGlow}@keyframes lineGlow{0%,to{opacity:.8;box-shadow:0 0 6px #6c63ff66}50%{opacity:1;box-shadow:0 0 16px #6c63ffcc}}.brand-desc{color:#ffffff47;text-align:center;max-width:300px;font-size:15px;line-height:1.8}.login-right{-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);background:#06060fe0;border-left:1px solid #ffffff12;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:460px;padding:60px 52px;display:flex}.login-card{width:100%}.login-title{letter-spacing:-.5px;margin-bottom:6px;font-size:22px;font-weight:700}.login-subtitle{color:#ffffff61;margin-bottom:32px;font-size:13px}.form-group{margin-bottom:18px}.form-label{color:#ffffff8c;margin-bottom:8px;font-size:13px;font-weight:500;display:block}.form-input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;width:100%;padding:13px 16px;font-family:Inter,sans-serif;font-size:14px;transition:border-color .2s,background .2s}.form-input::placeholder{color:#fff3}.form-input:focus{background:#6c63ff0f;border-color:#6c63ff99}.form-error{color:#ff7a8a;background:#ff506414;border:1px solid #ff506440;border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:12px}.btn-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border:none;border-radius:10px;width:100%;margin-top:8px;padding:14px;font-family:Inter,sans-serif;font-size:15px;font-weight:600;transition:opacity .2s,transform .15s}.btn-submit:hover{opacity:.9;transform:translateY(-1px)}.btn-submit:active{opacity:1;transform:translateY(0)}.btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-divider{border:none;border-top:1px solid #ffffff12;margin:24px 0}.login-notice{background:#6c63ff12;border:1px solid #6c63ff29;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.notice-icon{flex-shrink:0;margin-top:1px;font-size:14px}.notice-text{color:#ffffff61;font-size:12px;line-height:1.5}.notice-text strong{color:#6c63ffe6;font-weight:600}.login-footer{color:#ffffff26;letter-spacing:.3px;text-align:center;margin-top:28px;font-size:11px;line-height:1.8}.footer-author{letter-spacing:1.2px;text-transform:uppercase;color:#ffffff40;margin-top:4px;font-size:10px;display:inline-block}.footer-author strong{background:linear-gradient(135deg,#6c63ff,#3ecf8e);-webkit-text-fill-color:transparent;letter-spacing:.5px;-webkit-background-clip:text;background-clip:text;font-weight:600}#portal-screen{z-index:10;height:100vh;position:relative;overflow-y:auto}header.portal-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;background:#06060fbf;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:16px 48px;display:flex;position:sticky;top:0}.logo{align-items:center;gap:10px;display:flex}.logo-icon{color:#fff;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:800;display:flex}.logo-name{letter-spacing:-.5px;font-size:18px;font-weight:700}.logo-tag{color:#6c63ff;letter-spacing:.5px;text-transform:uppercase;font-size:10px;font-weight:500}.header-right{align-items:center;gap:16px;display:flex}.user-badge{color:#fff9;align-items:center;gap:8px;font-size:13px;display:flex}.user-avatar{background:linear-gradient(135deg,#6c63ff,#3ecf8e);border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:flex}.btn-logout{color:#ffffff80;cursor:pointer;background:#ffffff12;border:1px solid #ffffff1a;border-radius:8px;padding:7px 14px;font-family:Inter,sans-serif;font-size:12px;font-weight:500}.btn-logout:hover{color:#fff;background:#ffffff1a}.hero{text-align:center;padding:70px 48px 30px;position:relative}.hero-badge{color:#a09af5;letter-spacing:1px;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#6c63ff1a;border:1px solid #6c63ff4d;border-radius:20px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 16px;font-size:11px;font-weight:600;display:inline-flex}.hero-badge .dot{background:#3ecf8e;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite dotPulse;box-shadow:0 0 10px #3ecf8ecc}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.4}}.hero h1{letter-spacing:-1.8px;background:linear-gradient(135deg,#fff 40%,#a09af5 75%,#3ecf8e);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:48px;font-weight:800;line-height:1.1;animation:5s ease-in-out infinite shimmer}.hero p{color:#fff6;max-width:460px;margin:0 auto;font-size:15px;line-height:1.6}.hero-stats{justify-content:center;gap:36px;margin-top:32px;display:flex}.hero-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.hero-stat-num{background:linear-gradient(135deg,#6c63ff,#3ecf8e);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:700}.hero-stat-label{color:#ffffff59;letter-spacing:1.2px;text-transform:uppercase;font-size:10px}.spaces-section{max-width:1100px;margin:0 auto;padding:30px 48px 80px}.section-head{justify-content:space-between;align-items:baseline;margin-bottom:24px;display:flex}.section-title{letter-spacing:1.5px;text-transform:uppercase;color:#ffffff73;font-size:14px;font-weight:600}.section-meta{color:#ffffff40;font-size:12px}.space-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#6c63ff0f,#3ecf8e08);border:1px solid #ffffff14;border-radius:22px;margin-bottom:24px;padding:32px;transition:border-color .3s,transform .3s;position:relative;overflow:hidden}.space-card:hover{border-color:#6c63ff40}.space-glow{pointer-events:none;background:radial-gradient(circle,#6c63ff2e,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-100px;right:-100px}.space-orbits{pointer-events:none;z-index:0;position:absolute;top:50%;right:-120px;transform:translateY(-50%)}.space-orbit{border:1px solid #6c63ff14;border-radius:50%;animation:linear infinite orbitSpin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.space-orbit.o1{width:260px;height:260px;animation-duration:32s}.space-orbit.o2{border-color:#3ecf8e0f;width:380px;height:380px;animation-duration:50s;animation-direction:reverse}.space-orbit:before{content:"";background:#6c63ff;border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;top:-2.5px;left:50%;box-shadow:0 0 8px #6c63ffb3}.space-orbit.o2:before{background:#3ecf8e;box-shadow:0 0 8px #3ecf8eb3}.space-header{z-index:2;align-items:center;gap:18px;margin-bottom:6px;display:flex;position:relative}.space-icon{color:#fff;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:22px;font-weight:800;display:flex;box-shadow:0 0 24px #6c63ff66}.space-info{flex:1}.space-name{letter-spacing:-.5px;margin-bottom:4px;font-size:22px;font-weight:700}.space-domain{color:#6c63ffb3;font-family:SF Mono,Consolas,monospace;font-size:12px}.space-role{color:#fff6;letter-spacing:.5px;text-transform:uppercase;background:#ffffff08;border:1px solid #ffffff1a;border-radius:20px;padding:5px 12px;font-size:11px}.space-divider{z-index:2;background:linear-gradient(90deg,#0000,#ffffff1a,#0000);height:1px;margin:24px 0 22px;position:relative}.space-apps-label{color:#ffffff59;letter-spacing:1.5px;text-transform:uppercase;z-index:2;margin-bottom:16px;font-size:10px;position:relative}.app-grid{z-index:2;grid-template-columns:repeat(3,1fr);gap:14px;display:grid;position:relative}.app-card{cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#06060f80;border:1px solid #ffffff12;border-radius:14px;padding:20px;transition:all .25s;position:relative;overflow:hidden}.app-card:after{content:"";background:linear-gradient(90deg,#0000,#6c63ff14,#0000);width:100%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.app-card:hover:after{left:100%}.app-card:hover{background:#6c63ff14;border-color:#6c63ff66;transform:translateY(-3px)}.app-card.active{background:#6c63ff0d;border-color:#6c63ff59}.app-head{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.app-icon{border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.app-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:600}.badge-live{color:#3ecf8e;background:#3ecf8e26;border:1px solid #3ecf8e4d}.badge-soon{color:#ffffff59;background:#ffffff0d;border:1px solid #ffffff14}.badge-dev{color:#fbbf24;background:#fbbf241f;border:1px solid #fbbf2440}.badge-beta{color:#a09af5;background:#6c63ff26;border:1px solid #6c63ff4d}.app-name{letter-spacing:-.2px;margin-bottom:4px;font-size:15px;font-weight:700}.app-desc{color:#fff6;min-height:36px;margin-bottom:16px;font-size:12px;line-height:1.5}.app-foot{border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-top:14px;display:flex}.app-meta{color:#ffffff4d;letter-spacing:.3px;font-size:10px}.app-meta strong{color:#ffffff8c;font-weight:600}.app-arrow{color:#6c63ff80;font-size:16px;transition:transform .2s,color .2s}.app-card:hover .app-arrow{color:#3ecf8e;transform:translate(4px)}.app-card.soon{opacity:.4;cursor:default}.app-card.soon:hover{background:#06060f80;border-color:#ffffff12;transform:none}.app-card.soon:hover:after{left:-100%}.app-card.soon .app-arrow{display:none}.app-slot{cursor:pointer;border:1px dashed #ffffff1a;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:180px;padding:20px;transition:border-color .25s,background .25s;display:flex}.app-slot:hover{background:#6c63ff0a;border-color:#6c63ff66}.app-slot-icon{color:#fff6;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:300;display:flex}.app-slot-text{color:#ffffff4d;letter-spacing:.5px;text-align:center;font-size:11px}.portal-footer{text-align:center;color:#ffffff2e;letter-spacing:.3px;padding:20px 48px 40px;font-size:11px}.portal-footer .env-pill{color:#3ecf8e;letter-spacing:1px;text-transform:uppercase;border:1px solid #3ecf8e40;border-radius:12px;margin-right:8px;padding:3px 10px;font-size:10px;display:inline-block}#app-splash{z-index:200;opacity:0;background:radial-gradient(#0d0d1c 0%,#06060f 70%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .5s;display:none;position:fixed;inset:0}#app-splash.show{opacity:1;display:flex}.splash-orbit{border:1px solid #6c63ff14;border-radius:50%;width:520px;height:520px;animation:28s linear infinite orbitSpin;position:absolute}.splash-orbit:nth-child(2){border-color:#3ecf8e1a;width:380px;height:380px;animation-duration:18s;animation-direction:reverse}.splash-orbit:before{content:"";background:#6c63ff;border-radius:50%;width:6px;height:6px;margin-left:-3px;position:absolute;top:-3px;left:50%;box-shadow:0 0 12px #6c63ffe6}.splash-orbit:nth-child(2):before{background:#3ecf8e;box-shadow:0 0 12px #3ecf8ee6}.splash-content{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.splash-logo{color:#fff;letter-spacing:-1px;opacity:0;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border-radius:28px;justify-content:center;align-items:center;width:110px;height:110px;font-size:38px;font-weight:800;animation:.7s cubic-bezier(.34,1.56,.64,1) forwards splashLogoIn,3s ease-in-out .7s infinite iconFloat;display:flex;transform:scale(.5);box-shadow:0 0 50px #6c63ff80,0 0 100px #3ecf8e40}@keyframes splashLogoIn{to{opacity:1;transform:scale(1)}}.splash-space-name{letter-spacing:-.5px;background:linear-gradient(135deg,#fff 30%,#a09af5 70%,#3ecf8e);-webkit-text-fill-color:transparent;opacity:0;-webkit-background-clip:text;background-clip:text;margin-top:28px;font-size:24px;font-weight:700;animation:.5s .4s forwards splashFadeUp}.splash-app-name{color:#fff6;letter-spacing:3px;text-transform:uppercase;opacity:0;margin-top:6px;font-size:12px;animation:.5s .6s forwards splashFadeUp}@keyframes splashFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.splash-progress{opacity:0;background:#ffffff0f;border-radius:2px;width:240px;height:2px;margin-top:36px;animation:.5s .8s forwards splashFadeUp;overflow:hidden}.splash-progress-bar{background:linear-gradient(90deg,#6c63ff,#3ecf8e);width:0%;height:100%;animation:2.4s ease-in-out .9s forwards splashProgress;box-shadow:0 0 8px #6c63ff99}@keyframes splashProgress{to{width:100%}}.splash-status{color:#ffffff4d;letter-spacing:.5px;opacity:0;margin-top:18px;font-family:SF Mono,Consolas,monospace;font-size:11px;animation:.5s 1s forwards splashFadeUp}.splash-status .arrow{color:#6c63ffb3;margin:0 6px}.splash-status .url{color:#3ecf8ed9}.splash-mockup-note{opacity:0;z-index:10;flex-direction:column;align-items:center;gap:12px;transition:opacity .5s;display:flex;position:absolute;bottom:50px;left:50%;transform:translate(-50%)}.splash-mockup-note.show{opacity:1}.splash-mockup-text{color:#ffffff59;letter-spacing:.5px;font-size:11px}.splash-back-btn{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #6c63ff4d;border-radius:8px;padding:8px 18px;font-family:Inter,sans-serif;font-size:12px;font-weight:500;transition:all .2s}.splash-back-btn:hover{color:#fff;background:#6c63ff26;border-color:#6c63ff80}#app-splash.charging .splash-logo{animation:.5s ease-out forwards novaCharge!important}@keyframes novaCharge{0%{transform:scale(1);box-shadow:0 0 50px #6c63ff80,0 0 100px #3ecf8e40}to{transform:scale(.85);box-shadow:0 0 70px #6c63ffe6,0 0 140px #3ecf8e99,0 0 220px #fff6}}#app-splash.exploding .splash-content{animation:.55s cubic-bezier(.55,0,.7,.2) forwards contentCollapse}@keyframes contentCollapse{to{opacity:0;filter:blur(4px);transform:scale(.05)}}#app-splash.exploding .splash-orbit{opacity:0;transition:opacity .8s;animation-duration:4s!important}.supernova{pointer-events:none;opacity:0;z-index:5;width:0;height:0;position:absolute;top:50%;left:50%}#app-splash.exploding .supernova{opacity:1}.nova-core{opacity:0;background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}#app-splash.exploding .nova-core{animation:1.8s cubic-bezier(.2,.8,.3,1) .4s forwards novaCore}@keyframes novaCore{0%{opacity:0;width:8px;height:8px;box-shadow:0 0 #fff}15%{opacity:1;width:80px;height:80px;box-shadow:0 0 80px #fff,0 0 160px #6c63ff,0 0 280px #3ecf8e}40%{opacity:.85;width:140px;height:140px;box-shadow:0 0 100px #fff,0 0 200px #6c63ff,0 0 360px #3ecf8e}to{opacity:0;width:6px;height:6px;box-shadow:0 0 #0000}}.nova-rays{opacity:0;width:0;height:0;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.nova-rays:before,.nova-rays:after{content:"";filter:blur(1px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nova-rays:before{background:linear-gradient(90deg,#0000,#fffffff2 45% 55%,#0000);width:600px;height:2px}.nova-rays:after{background:linear-gradient(#0000,#fffffff2 45% 55%,#0000);width:2px;height:600px}#app-splash.exploding .nova-rays{animation:1.2s ease-out .45s forwards novaRays}@keyframes novaRays{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(0)}25%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(20deg)}to{opacity:0;transform:translate(-50%,-50%)scale(1.3)rotate(45deg)}}.nova-ring{opacity:0;border:2px solid #6c63ffb3;border-radius:50%;width:20px;height:20px;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}#app-splash.exploding .nova-ring{animation:1.8s cubic-bezier(.15,.8,.3,1) .5s forwards novaRing}#app-splash.exploding .nova-ring.r2{border-color:#3ecf8eb3;animation-delay:.7s}#app-splash.exploding .nova-ring.r3{border-color:#ffffff80;animation-delay:.9s}@keyframes novaRing{0%{opacity:.9;border-width:3px;width:30px;height:30px}80%{opacity:.15}to{opacity:0;border-width:1px;width:2200px;height:2200px}}.nova-flash{pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(circle,#ffffff8c 0%,#6c63ff66 15%,#3ecf8e33 35%,#0000 65%);position:fixed;inset:0}#app-splash.exploding .nova-flash{animation:1.6s ease-out .5s forwards novaFlash}@keyframes novaFlash{0%{opacity:0}35%{opacity:1}to{opacity:0}}.nova-spark{opacity:0;background:#fff;border-radius:50%;width:3px;height:3px;position:absolute;top:0;left:0;box-shadow:0 0 6px #ffffffe6,0 0 12px #6c63ff99}#app-splash.exploding .nova-spark{animation:1.4s ease-out .55s forwards novaSpark}@keyframes novaSpark{0%{opacity:1;transform:translate(-50%,-50%)}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy)));opacity:0}}.app-loading{z-index:50;background:0 0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.app-loading-spinner{border:2px solid #6c63ff26;border-top-color:#6c63ff;border-radius:50%;width:56px;height:56px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#admin-screen{z-index:10;min-height:100vh;padding-bottom:80px;position:relative;overflow-y:auto}.btn-admin{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6c63ff2e,#3ecf8e24);border:1px solid #6c63ff59;border-radius:8px;padding:7px 14px;font-family:Inter,sans-serif;font-size:12px;font-weight:600;transition:transform .15s,opacity .2s}.btn-admin:hover{opacity:.92;transform:translateY(-1px)}.admin-section{max-width:1200px;margin:0 auto;padding:40px 48px 0}.admin-section .section-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6c63ff,#3ecf8e);border:none;border-radius:10px;padding:10px 18px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;transition:opacity .2s,transform .15s}.btn-primary:hover{opacity:.92;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{color:#ffffffb3;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;padding:10px 18px;font-family:Inter,sans-serif;font-size:13px;font-weight:500}.btn-secondary:hover{color:#fff;background:#ffffff1a}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{color:#ff7a8a;cursor:pointer;background:#ff50641f;border:1px solid #ff50644d;border-radius:10px;padding:10px 18px;font-family:Inter,sans-serif;font-size:13px;font-weight:600}.btn-danger:hover{background:#ff506433}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-mini{color:#ffffffa6;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:6px;margin-right:4px;padding:5px 10px;font-family:Inter,sans-serif;font-size:11px;font-weight:500}.btn-mini:hover{color:#fff;background:#ffffff1a}.btn-mini:disabled{opacity:.35;cursor:not-allowed}.btn-mini.btn-danger{color:#ff7a8a;background:#ff506414;border-color:#ff506433;padding:5px 10px;font-size:11px}.btn-mini.btn-danger:hover{background:#ff506429}.admin-empty{text-align:center;color:#fff6;background:#ffffff05;border:1px dashed #ffffff14;border-radius:12px;padding:48px}.admin-table-wrap{background:#ffffff06;border:1px solid #ffffff0f;border-radius:14px;overflow:hidden}.admin-table{border-collapse:collapse;width:100%}.admin-table thead{background:#6c63ff0f}.admin-table th{text-align:left;letter-spacing:1.2px;text-transform:uppercase;color:#ffffff73;border-bottom:1px solid #ffffff0f;padding:14px 18px;font-size:11px;font-weight:600}.admin-table td{vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:14px 18px;font-size:13px}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:#ffffff05}.admin-table .col-actions{white-space:nowrap;text-align:right}.user-cell{align-items:center;gap:12px;display:flex}.user-avatar.small{width:32px;height:32px;font-size:11px}.user-name{color:#fff;font-weight:600}.user-email{color:#ffffff73;font-size:11px}.badge{letter-spacing:.6px;text-transform:uppercase;border-radius:20px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-block}.badge-super{color:#a09af5;background:#6c63ff2e;border:1px solid #6c63ff4d}.badge-member{color:#ffffff8c;background:#ffffff0d;border:1px solid #ffffff14}.app-chips{flex-wrap:wrap;gap:6px;display:flex}.app-chip{color:#7be0b3;background:#3ecf8e1a;border:1px solid #3ecf8e38;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:500}.text-muted{color:#ffffff4d;font-size:12px}.modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06060fc7;justify-content:center;align-items:center;padding:24px;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:#0c0c1a;border:1px solid #ffffff14;border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-head{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-head h3{font-size:16px;font-weight:600}.modal-close{color:#fff6;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.modal-close:hover{color:#fff}.modal-form{padding:22px 24px}.modal-form .form-group{margin-bottom:16px}.modal-form p{color:#ffffffb3;margin-bottom:12px;font-size:13px;line-height:1.6}.form-hint{color:#fff6;margin-top:6px;font-size:11px;line-height:1.5}.form-check{color:#ffffffbf;cursor:pointer;background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13px;display:flex}.form-check input[type=checkbox]{accent-color:#6c63ff;width:16px;height:16px}.app-checklist{flex-direction:column;gap:8px;max-height:240px;padding:4px;display:flex;overflow-y:auto}.app-check{cursor:pointer;background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.app-check:hover{background:#ffffff0f}.app-check input[type=checkbox]{accent-color:#6c63ff;width:16px;height:16px}.app-check-name{color:#fff;font-size:13px;font-weight:600}.app-check-meta{color:#fff6;margin-top:2px;font-size:11px}.app-check-row{align-items:stretch;gap:8px;padding:4px;display:flex}.app-check-row .app-check{flex:1;margin:0}.role-select{border-radius:8px;width:200px;color:#fff!important;background:#000!important;border:1px solid #ffffff1a!important;padding:8px 12px!important;font-size:12px!important}.role-select:focus{outline:none;border-color:#6c63ff99!important}.role-select option{color:#fff;background:#000}.app-chip-role{color:#7be0b3b3;font-size:10px;font-weight:400}.modal-actions{border-top:1px solid #ffffff0d;justify-content:flex-end;gap:10px;margin-top:8px;padding-top:20px;display:flex}.password-box{color:#fff;text-align:center;letter-spacing:.5px;-webkit-user-select:all;user-select:all;background:#6c63ff14;border:1px solid #6c63ff40;border-radius:10px;margin:12px 0;padding:14px 16px;font-family:Courier New,monospace;font-size:15px}
