@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--primary-50: #eef2ff;--primary-100: #e0e7ff;--primary-200: #c7d2fe;--primary-300: #a5b4fc;--primary-400: #818cf8;--primary-500: #6366f1;--primary-600: #4f46e5;--primary-700: #4338ca;--primary-800: #3730a3;--primary-900: #312e81;--accent-400: #c084fc;--accent-500: #a855f7;--accent-600: #9333ea;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--bg-overlay: rgba(0, 0, 0, .5);--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-inverse: #ffffff;--border: #e2e8f0;--border-hover: #cbd5e1;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 8px 10px -6px rgba(0, 0, 0, .04);--shadow-glow: 0 0 30px rgba(99, 102, 241, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition: .2s cubic-bezier(.4, 0, .2, 1);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3)}[data-theme=dark]{--bg-primary: #0b0f1a;--bg-secondary: #111827;--bg-tertiary: #1e293b;--bg-card: #1e293b;--bg-card-hover: #263044;--bg-overlay: rgba(0, 0, 0, .7);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-inverse: #0f172a;--border: #334155;--border-hover: #475569;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5);--shadow-glow: 0 0 30px rgba(99, 102, 241, .25);--glass-bg: rgba(30, 41, 59, .8);--glass-border: rgba(51, 65, 85, .5)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;transition:background var(--transition),color var(--transition)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:var(--font);border:none;background:none}input,textarea,select{font-family:var(--font)}ul{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 24px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.fade-in{animation:fadeIn .4s ease}.slide-up{animation:slideUp .4s ease}.launcher-container{position:fixed;inset:0;background:#0f172a;background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.15) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(168,85,247,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(20,184,166,.1) 0px,transparent 50%),radial-gradient(at 0% 100%,rgba(244,63,94,.1) 0px,transparent 50%);display:flex;flex-direction:column;z-index:9999;font-family:var(--font);color:#fff;overflow:hidden}.launcher-container:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none}.launcher-topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 40px;background:#ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.launcher-logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.25rem;letter-spacing:-.02em;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.launcher-auth{display:flex;align-items:center}.user-profile{display:flex;align-items:center;gap:16px;background:#ffffff0d;padding:6px 6px 6px 16px;border-radius:100px;border:1px solid rgba(255,255,255,.1)}.user-info{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:500;color:#ffffffe6}@media(max-width:480px){.user-name-text{display:none}.user-profile{padding:6px;gap:8px}}.logout-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;color:#fff;border-radius:50%;transition:all .3s ease;cursor:pointer}.logout-btn:hover{background:#ef444433;color:#ef4444}.login-link{font-size:.95rem;font-weight:600;color:#fff;text-decoration:none;padding:8px 20px;background:#ffffff1a;border-radius:100px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.login-link:hover{background:#fff3;transform:translateY(-1px)}.launcher-grid-wrapper{flex:1;overflow-y:auto;padding:60px 20px;display:flex;justify-content:center}.launcher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 24px;width:100%;max-width:600px;align-content:start}@media(max-width:480px){.launcher-grid-wrapper{padding:24px 16px}.launcher-grid{grid-template-columns:repeat(3,1fr);gap:32px 16px;padding:10px 0;width:100%;justify-items:center}.launcher-topbar{padding:12px 16px}.launcher-logo span{font-size:1.1rem}}.launcher-icon-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}@media(max-width:480px){.launcher-icon{width:clamp(72px,22vw,84px);height:clamp(72px,22vw,84px);border-radius:20px}}.launcher-icon:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.launcher-icon-wrap:hover .launcher-icon{transform:translateY(-5px);background:#ffffff14;border-color:#fff3;box-shadow:0 20px 35px -10px #0006,inset 0 1px 2px #fff3}.launcher-icon-wrap:hover .launcher-icon:after{opacity:1}.launcher-icon-wrap:active{transform:scale(.95)}.icon-gradient-blue,.icon-gradient-purple,.icon-gradient-orange,.icon-gradient-green,.icon-gradient-teal,.icon-gradient-red{background:#fff!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 8px 16px -4px #0000001a,inset 0 2px 4px #ffffff80!important}.launcher-icon{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;position:relative;background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 10px 25px -5px #0000001a,inset 0 1px 1px #ffffff80;transition:all .3s ease;overflow:hidden}.launcher-emoji{font-size:2.25rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));z-index:1}@media(max-width:480px){.launcher-emoji{font-size:clamp(1.8rem,7vw,2.25rem)}}.launcher-image-icon{width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:1}.launcher-label{font-size:.85rem;font-weight:500;color:#fffc;text-align:center;letter-spacing:.01em;transition:color .3s ease;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:480px){.launcher-label{max-width:80px;font-size:.7rem;white-space:normal;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2;height:2.4em}}.launcher-icon-wrap:hover .launcher-label{color:#fff}.auth-page .launcher-topbar{background:transparent;border-bottom:none}.auth-content{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;perspective:1000px}.auth-card{width:100%;max-width:440px;padding:40px;border-radius:32px;animation:slideUp .6s cubic-bezier(.16,1,.3,1)}.glass{background:#ffffff08;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 50px -12px #00000080,inset 0 1px 1px #ffffff0d}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{font-size:2rem;font-weight:700;margin-bottom:8px;letter-spacing:-.02em}.auth-header p{color:#ffffff80;font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#f87171;padding:12px 16px;border-radius:12px;font-size:.9rem;display:flex;align-items:center;gap:10px}.auth-success{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#34d399;padding:12px 16px;border-radius:12px;font-size:.9rem;display:flex;align-items:center;gap:10px}.auth-input-group{display:flex;flex-direction:column;gap:8px}.auth-input-group label{font-size:.85rem;font-weight:500;color:#fff9;margin-left:4px}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-icon{position:absolute;left:16px;color:#ffffff4d;pointer-events:none}.auth-input-wrap input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px 16px 14px 48px;color:#fff;font-size:1rem;transition:all .3s ease}.auth-input-wrap input:focus{background:#ffffff14;border-color:#6366f166;outline:none;box-shadow:0 0 0 4px #6366f11a}.auth-submit-btn{margin-top:12px;background:#fff;color:#0f172a;border:none;border-radius:16px;padding:14px;font-size:1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;cursor:pointer}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px -5px #fff3}.auth-submit-btn:active:not(:disabled){transform:scale(.98)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:32px;text-align:center;font-size:.9rem;color:#ffffff80}.auth-link{color:#fff;font-weight:600;margin-left:8px;text-decoration:none;transition:opacity .3s ease}.auth-link:hover{opacity:.8}@media(max-width:480px){.auth-card{padding:32px 24px;border-radius:24px}}.launcher-bottom{padding:32px 40px 48px;background:linear-gradient(to top,rgba(15,23,42,.8),transparent)}@media(max-width:480px){.launcher-bottom{padding:20px 20px 32px}}.launcher-chat-wrap{max-width:560px;margin:0 auto;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;display:flex;align-items:center;padding:14px 20px;box-shadow:0 15px 35px -5px #0006;transition:all .3s ease}.launcher-chat-wrap:focus-within{background:#ffffff14;border-color:#6366f166;box-shadow:0 20px 40px -10px #00000080,0 0 0 4px #6366f11a}.launcher-chat-input{flex:1;background:transparent;border:none;padding:0 8px;font-size:1rem;outline:none;color:#fff}.launcher-chat-input::placeholder{color:#ffffff4d}.launcher-chat-send{width:36px;height:36px;background:#ffffff1a;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.launcher-chat-send:hover{background:var(--primary-600);transform:scale(1.05)}.empty-search-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px;width:100%}.empty-search-icon{margin-bottom:24px;color:#ffffff26;animation:float 3s ease-in-out infinite}.empty-search-state h2{font-size:1.75rem;font-weight:700;margin-bottom:12px;background:linear-gradient(135deg,#fff,#ffffff80);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.empty-search-state p{color:#ffffff80;font-size:1rem;margin-bottom:32px;max-width:320px}.reset-search-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px 24px;border-radius:100px;font-weight:600;font-size:.95rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reset-search-btn:hover{background:#fff3;transform:translateY(-2px);box-shadow:0 10px 20px -5px #0000004d}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{margin:0;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.modal-close{color:#fff6;transition:all .3s ease;padding:4px;border-radius:8px}.modal-close:hover{background:#ffffff1a;color:#fff}.add-app-btn{margin-left:8px;width:32px;height:32px;background:#ffffff1a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.add-app-btn:hover{background:var(--primary-600);transform:scale(1.1);border-color:var(--primary-400)}.jiggle{animation:jiggle .3s ease-in-out infinite}@keyframes jiggle{0%{transform:rotate(-1deg)}50%{transform:rotate(1.5deg)}to{transform:rotate(-1deg)}}.delete-app-badge{position:absolute;top:-8px;right:-8px;width:28px;height:28px;background:#ff4757;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #1a1a2e;box-shadow:0 4px 10px #0000004d;z-index:100;cursor:pointer;transition:all .2s ease;pointer-events:auto}.edit-app-badge{position:absolute;top:-8px;left:-8px;width:28px;height:28px;background:#3b82f6;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #1a1a2e;box-shadow:0 4px 10px #0000004d;z-index:100;cursor:pointer;transition:all .2s ease;pointer-events:auto}@media(max-width:480px){.delete-app-badge,.edit-app-badge{width:32px;height:32px;top:-10px}.delete-app-badge{right:-10px}.edit-app-badge{left:-10px}}.delete-app-badge:hover{transform:scale(1.2);background:#ff6b81}.edit-app-badge:hover{transform:scale(1.2);background:#60a5fa}.launcher-icon-wrap.jiggle:nth-child(2n){animation-duration:.25s}.launcher-icon-wrap.jiggle:nth-child(3n){animation-duration:.35s}.users-table-container{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0003}.users-table{width:100%;border-collapse:collapse;text-align:left}.users-table th,.users-table td{padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.05)}.users-table th{font-weight:600;color:#ffffff80;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;background:#ffffff05}.users-table tr:last-child td{border-bottom:none}.users-table tr{transition:background .2s ease}.users-table tr:hover{background:#ffffff08}.role-badge,.status-badge{padding:4px 10px;border-radius:100px;font-size:.8rem;font-weight:600;display:inline-flex;border:1px solid transparent}.role-badge.admin{background:#8b5cf633;color:#c4b5fd;border-color:#8b5cf680}.role-badge.user{background:#ffffff1a;color:#ffffffb3;border-color:#fff3}.status-badge.active{background:#10b98133;color:#6ee7b7;border-color:#10b98180}.status-badge.blocked{background:#ef444433;color:#fca5a5;border-color:#ef444480}.action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.block-btn{background:#ef44441a;color:#fca5a5}.action-btn.block-btn:not(:disabled):hover{background:#ef444433;border-color:#ef444466}.action-btn.unblock-btn{background:#10b9811a;color:#6ee7b7}.action-btn.unblock-btn:not(:disabled):hover{background:#10b98133;border-color:#10b98166}.action-top-btn{width:36px;height:36px;border-radius:12px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;margin-right:12px}.action-top-btn:hover{background:#fff3;transform:translateY(-2px)}.auth-success{background:#10b9811a;color:#6ee7b7;padding:16px;border-radius:12px;margin-bottom:20px;font-size:.95rem;border:1px solid rgba(16,185,129,.2);line-height:1.5;box-shadow:0 4px 15px #0000001a}.auth-success strong{display:block;margin-bottom:8px;color:#a7f3d0;font-weight:600}.auth-success a{display:block;margin-top:8px;color:#60a5fa;text-decoration:none;word-break:break-all;padding:10px;background:#0000004d;border-radius:6px;border:1px dashed rgba(96,165,250,.4);transition:all .2s ease}.auth-success a:hover{background:#60a5fa26;border-color:#60a5fa99}
