@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";:root{color-scheme:dark;font-family:Poppins,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0a0015;color:#f5f7ff;--surface: rgba(168, 85, 247, .1);--surface-strong: rgba(168, 85, 247, .15);--border: rgba(168, 85, 247, .3);--accent: #a855f7;--accent-strong: #ec4899;--text: #f0e7fe;--muted: #d8b4fe}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at top,rgba(168,85,247,.3),transparent 50%),radial-gradient(circle at 20% 10%,rgba(236,72,153,.2),transparent 40%),linear-gradient(180deg,#0a0015,#1a0033,#0f0520);color:var(--text);overflow-x:hidden}button,input{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.app-main{position:relative;padding:28px;background:linear-gradient(180deg,#0a0015f2,#1a0033eb);min-height:100vh}.page-frame{max-width:1280px;margin:0 auto}.loading-shell{min-height:420px;display:grid;place-items:center;color:var(--muted);font-size:1.1rem;animation:neonGlow 3s ease-in-out infinite}@keyframes neonGlow{0%,to{text-shadow:0 0 10px rgba(168,85,247,.5)}50%{text-shadow:0 0 20px rgba(236,72,153,.8),0 0 30px rgba(168,85,247,.6)}}.glow-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgba(168,85,247,.15) .5px,transparent 1px),radial-gradient(rgba(236,72,153,.1) .5px,transparent 1px);background-size:60px 60px,120px 120px;opacity:.3}.card{background:linear-gradient(135deg,#a855f71a,#ec48990d);border:1px solid rgba(168,85,247,.3);border-radius:32px;padding:28px;box-shadow:0 8px 32px #a855f726;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:all .4s cubic-bezier(.23,1,.32,1)}.card:hover{box-shadow:0 20px 50px #a855f74d,inset 0 1px #ffffff1a;border-color:#ec489980;transform:translateY(-8px)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:22px}@media (max-width: 1080px){.app-shell,.card-grid{grid-template-columns:1fr}}.primary-button{border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:14px 24px;color:#fff;background:linear-gradient(135deg,#a855f7,#ec4899,#f472b6);box-shadow:0 16px 40px #a855f74d;transition:all .3s cubic-bezier(.23,1,.32,1);font-weight:700;letter-spacing:.5px}.primary-button:hover{transform:translateY(-3px);box-shadow:0 24px 60px #ec489980;background:linear-gradient(135deg,#c77dff,#f0419f,#ff7fbf)}.secondary-button{border:1px solid rgba(168,85,247,.4);border-radius:999px;padding:12px 22px;color:#d8b4fe;background:linear-gradient(135deg,#a855f733,#ec48991a);transition:all .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.secondary-button:hover{background:linear-gradient(135deg,#ec48994d,#a855f733);border-color:#ec489999;box-shadow:0 0 20px #a855f766;color:#f0e7fe}.input-field{width:100%;border:1px solid rgba(168,85,247,.3);border-radius:18px;padding:16px 18px;background:linear-gradient(135deg,#a855f714,#ec48990a);color:#f0e7fe;outline:none;transition:all .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:500}.input-field::placeholder{color:#d8b4fe80}.input-field:focus{border-color:#ec489999;box-shadow:0 0 20px #a855f74d,inset 0 0 10px #a855f71a;background:linear-gradient(135deg,#a855f726,#ec48991a)}.small-text{color:#d8b4fe;font-size:.94rem;font-weight:300}.screen-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.screen-header h1{margin:0;font-size:clamp(2rem,3vw,3rem);line-height:1.05;background:linear-gradient(135deg,#a855f7,#ec4899,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 6s ease infinite;letter-spacing:-1px}.screen-header p{margin:0;color:#d8b4fe;max-width:640px;font-weight:300}.form-panel{display:grid;gap:18px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px;background:linear-gradient(135deg,#0a0015,#1a0033,#0f0520)}.auth-card{width:min(560px,100%)}.auth-note{color:var(--muted)}.alert{border-radius:20px;background:#6d8bff1f;border:1px solid rgba(109,139,255,.22);padding:14px 18px;color:#e7ebff}.alert.success{background:#39cc991f;border-color:#39cc9938}.alert.error{background:#ff5f5f1c;border-color:#ff5f5f38}.sidebar{position:relative;background:radial-gradient(circle at top left,rgba(109,139,255,.2),transparent 32%),linear-gradient(180deg,#050710,#090f23fa);border-right:1px solid rgba(255,255,255,.06);padding:36px 28px;display:flex;flex-direction:column;gap:32px}.brand{display:flex;align-items:center;gap:14px}.brand .logo{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,#6d8bff,#5ce6ff);display:grid;place-items:center;color:#fff;font-weight:800;font-size:1.05rem}.brand h2{margin:0;font-size:1.25rem}.nav-list{display:grid;gap:10px}.nav-item{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;color:var(--text);text-decoration:none;background:#ffffff08;border:1px solid transparent;transition:background .2s ease,transform .2s ease,border-color .2s ease}.nav-item:hover,.nav-item.active{background:#6d8bff1f;border-color:#6d8bff47;transform:translate(3px)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:14px}.sidebar-foot button{width:100%}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:20px 28px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar h3{margin:0;font-size:1.1rem}.progress-ring{width:100%;height:16px;border-radius:999px;background:#ffffff0f;overflow:hidden}.progress-ring span{display:block;height:100%;background:linear-gradient(135deg,#6d8bff,#5ce6ff);border-radius:999px;transition:width .25s ease}.file-card{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:#ffffff08}.file-card .file-name{font-weight:700;word-break:break-all}.file-card .file-meta{color:var(--muted)}.upload-dropzone{min-height:320px;display:grid;place-items:center;gap:14px;border:2px dashed rgba(255,255,255,.18);border-radius:28px;padding:34px;text-align:center;transition:border-color .24s ease,background .24s ease}.upload-dropzone.drag-active{border-color:#5df0ffcc;background:#5df0ff0f}.upload-dropzone p{margin:0;color:var(--muted)}.icon-circle{width:76px;height:76px;border-radius:24px;display:grid;place-items:center;margin:0 auto;background:#6d8bff1f}.grid-2{display:grid;grid-template-columns:1.33fr 1fr;gap:22px}@media (max-width: 860px){.grid-2{grid-template-columns:1fr}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #e85d5d66,0 0 40px #c8585833}50%{box-shadow:0 0 30px #e85d5d99,0 0 60px #c8585866}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes floatUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes neonGlow{0%,to{text-shadow:0 0 10px rgba(232,93,93,.5)}50%{text-shadow:0 0 20px rgba(200,88,88,.8),0 0 30px rgba(232,93,93,.6)}}.screen-header{display:flex;align-items:center;justify-content:flex-start;padding:32px 0 18px;animation:floatUp .8s ease-out}.screen-header h1{font-size:2.8rem;font-weight:800;margin:0 0 6px;background:linear-gradient(135deg,#e85d5d,#c85858,#a85555);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 6s ease infinite,neonGlow 3s ease-in-out infinite;letter-spacing:-1px}.screen-header p,.auth-note{color:#d9a5a5;font-size:1.1rem;margin:0;font-weight:300;letter-spacing:.5px}.card-grid{display:flex;gap:18px;margin-bottom:22px;flex-wrap:wrap}.card{background:linear-gradient(135deg,#e85d5d1a,#c858580d);border:1px solid rgba(232,93,93,.3);border-radius:18px;box-shadow:0 8px 32px #e85d5d26,inset 0 1px #ffffff1a;padding:22px 28px;min-width:220px;flex:1;display:flex;flex-direction:column;align-items:flex-start;transition:all .4s cubic-bezier(.23,1,.32,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;animation:floatUp .8s ease-out .2s both}.card:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:rotate(45deg);animation:shimmer 8s infinite}.card:hover{transform:translateY(-8px);box-shadow:0 20px 50px #e85d5d4d,inset 0 1px #fff3;border-color:#c8585880;animation:glowPulse 2s ease-in-out infinite}.card h2{font-size:1.3rem;margin:8px 0 0;font-weight:700;color:#fde8e8;letter-spacing:-.5px}.card .small-text{color:#d9a5a5;font-size:.95rem;margin-bottom:2px;font-weight:300}.upload-dropzone{background:linear-gradient(135deg,#e85d5d14,#c858580a);border:2.5px dashed rgba(232,93,93,.5);border-radius:18px;padding:44px 0;margin:0 auto;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);max-width:480px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;animation:floatUp .8s ease-out}.upload-dropzone.drag-active{border-color:#e85d5d;background:linear-gradient(135deg,#c8585833,#e85d5d26);box-shadow:0 0 40px #e85d5d66,inset 0 0 20px #c858581a;transform:scale(1.02)}.icon-circle{background:linear-gradient(135deg,#e85d5d33,#c858581a);border:1px solid rgba(232,93,93,.3);border-radius:50%;width:54px;height:54px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;transition:all .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-dropzone:hover .icon-circle{background:linear-gradient(135deg,#c858584d,#e85d5d33);box-shadow:0 0 20px #e85d5d66}.secondary-button,.primary-button{background:linear-gradient(135deg,#e85d5d33,#c858581a);color:#fde8e8;border:1px solid rgba(232,93,93,.4);border-radius:10px;padding:10px 20px;margin-top:14px;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);font-weight:600;display:flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden}.secondary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.secondary-button:hover:before{left:100%}.secondary-button:hover,.primary-button:hover{background:linear-gradient(135deg,#c858584d,#e85d5d33);color:#fff;border-color:#c8585899;box-shadow:0 0 20px #e85d5d66;transform:translateY(-2px)}.primary-button{background:linear-gradient(135deg,#e85d5d,#c85858,#a85555);color:#fff;margin-top:18px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 25px #e85d5d4d;font-weight:700;letter-spacing:.5px}.primary-button:hover{background:linear-gradient(135deg,#ff7070,#e07070,#d05858);box-shadow:0 12px 35px #e85d5d80}.primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.input-field{width:100%;padding:12px 14px;border-radius:10px;border:1px solid rgba(232,93,93,.3);margin-bottom:14px;background:linear-gradient(135deg,#e85d5d14,#c858580a);color:#fde8e8;font-size:1rem;outline:none;transition:all .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:500}.input-field::placeholder{color:#d9a5a580}.input-field:focus{border-color:#c8585899;box-shadow:0 0 20px #e85d5d4d,inset 0 0 10px #e85d5d1a;background:linear-gradient(135deg,#e85d5d26,#c858581a)}.secondary-button{background:linear-gradient(135deg,#a855f733,#ec48991a);color:#d8b4fe;border:1px solid rgba(168,85,247,.4);border-radius:10px;padding:10px 20px;margin-top:14px;font-size:1rem;cursor:pointer;transition:all .3s ease;font-weight:600}.secondary-button:hover{background:linear-gradient(135deg,#c858584d,#e85d5d33);color:#fde8e8;border-color:#c8585899}.progress-ring{background:linear-gradient(135deg,#e85d5d1a,#c858580d);border-radius:8px;height:16px;width:100%;overflow:hidden;margin-bottom:6px;border:1px solid rgba(232,93,93,.2)}.progress-ring span{display:block;height:100%;background:linear-gradient(90deg,#a85555,#e85d5d,#f0a5a5);border-radius:8px;transition:width .3s cubic-bezier(.23,1,.32,1);box-shadow:0 0 20px #e85d5d99}.alert.success{background:linear-gradient(135deg,#22c55e26,#e85d5d1a);color:#a7f3d0;border-radius:10px;padding:16px 18px;margin:0 auto;max-width:480px;font-size:1.1rem;border-left:5px solid #22c55e;border:1px solid rgba(34,197,94,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 25px #22c55e26}.alert.error{background:linear-gradient(135deg,#ef444426,#c858581a);color:#fca5a5;border-radius:10px;padding:12px 16px;margin-bottom:14px;border-left:5px solid #ef4444;border:1px solid rgba(239,68,68,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 25px #ef444426}code{background:linear-gradient(135deg,#e85d5d26,#c858581a);color:#d9a5a5;padding:2px 7px;border-radius:6px;font-size:1rem;border:1px solid rgba(232,93,93,.2)}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a0015,#1a0033,#0f0520);position:relative;overflow:hidden}.auth-shell:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(232,93,93,.15) 0%,transparent 70%);animation:floatUp 20s ease-in-out infinite}.auth-card{max-width:400px;width:100%;margin:0 auto;padding:40px 40px 32px;border-radius:20px;background:linear-gradient(135deg,#e85d5d1a,#c858580d);box-shadow:0 8px 32px #e85d5d33,inset 0 1px #ffffff1a;border:1px solid rgba(232,93,93,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10;animation:floatUp .8s ease-out}.form-panel{display:flex;flex-direction:column;gap:0;margin-top:18px}.file-card{background:linear-gradient(135deg,#e85d5d1a,#c858580d);border:1px solid rgba(232,93,93,.3);border-radius:12px;padding:18px 18px 12px;margin-bottom:14px;box-shadow:0 8px 25px #a855f71a;display:flex;flex-direction:column;gap:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .3s ease;animation:floatUp .8s ease-out}.file-card:hover{background:linear-gradient(135deg,#e85d5d26,#c858581a);box-shadow:0 12px 35px #e85d5d33;border-color:#c8585880;transform:translateY(-4px)}.file-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.file-name{font-weight:700;color:#d9a5a5;font-size:1.1rem;letter-spacing:-.5px}.file-meta{color:#b8968b;font-size:.95rem;font-weight:300}.topbar{width:100%;background:linear-gradient(135deg,#e85d5d1a,#c858580d);padding:18px 32px;display:flex;align-items:center;justify-content:space-between;border-radius:0 0 18px 18px;box-shadow:0 8px 25px #e85d5d1a;margin-bottom:24px;border:1px solid rgba(232,93,93,.2);border-top:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-dropzone-compact{background:linear-gradient(135deg,#a855551f,#c8585814);border:2px dashed rgba(232,93,93,.4);border-radius:16px;padding:40px 24px;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden;animation:floatUp .8s ease-out .15s both;box-shadow:0 4px 16px #e85d5d1a,inset 0 1px #ffffff0d}.upload-dropzone-compact:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.03),transparent);transform:rotate(45deg);animation:shimmer 8s infinite}.upload-dropzone-compact:hover{border-color:#e85d5d99;background:linear-gradient(135deg,#c8585826,#a855551a);box-shadow:0 8px 24px #e85d5d33,inset 0 1px #ffffff14;transform:translateY(-2px)}.upload-dropzone-compact.drag-active{border-color:#e85d5d;background:linear-gradient(135deg,#e85d5d40,#c8585833);box-shadow:0 0 30px #e85d5d59,inset 0 0 20px #c858581a;transform:scale(1.02)}.icon-circle-small{width:60px;height:60px;background:linear-gradient(135deg,#e85d5d33,#c858581f);border:1.5px solid rgba(232,93,93,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto;transition:all .3s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e85d5d}.upload-dropzone-compact:hover .icon-circle-small{background:linear-gradient(135deg,#e85d5d4d,#c8585833);box-shadow:0 0 20px #e85d5d4d;transform:scale(1.1)}.upload-button-compact{background:linear-gradient(135deg,#a85555,#c85858);color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:.9rem;cursor:pointer;font-weight:600;transition:all .3s cubic-bezier(.23,1,.32,1);box-shadow:0 4px 12px #e85d5d40;position:relative;overflow:hidden}.upload-button-compact:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transition:left .5s}.upload-button-compact:hover:before{left:100%}.upload-button-compact:hover{background:linear-gradient(135deg,#c85858,#e07070);box-shadow:0 6px 16px #e85d5d59;transform:translateY(-1px)}.progress-ring-small{background:linear-gradient(135deg,#e85d5d1a,#c858580d);border-radius:6px;height:8px;width:100%;overflow:hidden;border:.5px solid rgba(232,93,93,.15)}.progress-ring-small span{display:block;height:100%;background:linear-gradient(90deg,#a85555,#e85d5d);border-radius:6px;transition:width .3s cubic-bezier(.23,1,.32,1);box-shadow:0 0 12px #e85d5d80}.card-small{background:linear-gradient(135deg,#a855551a,#c858580d);border:1px solid rgba(232,93,93,.25);border-radius:12px;box-shadow:0 4px 12px #e85d5d14,inset 0 1px #ffffff0d;padding:12px 14px;display:flex;flex-direction:column;align-items:flex-start;transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden;animation:floatUp .8s ease-out .2s both}.card-small:hover{transform:translateY(-4px);box-shadow:0 8px 20px #e85d5d26,inset 0 1px #ffffff14;border-color:#e85d5d66}.card-link{background:linear-gradient(135deg,#a855551f,#c8585814);border:1px solid rgba(232,93,93,.25);border-radius:12px;padding:16px 18px;box-shadow:0 4px 12px #e85d5d1a,inset 0 1px #ffffff0d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:floatUp .8s ease-out}@media (max-width: 768px){div[style*="gridTemplateColumns: '1fr 1fr'"]{grid-template-columns:1fr!important}.upload-dropzone-compact{padding:32px 16px}}@media (max-width: 600px){.upload-dropzone-compact{padding:24px 12px}}@media (max-width: 900px){.card-grid{flex-direction:column;gap:12px}.screen-header{padding:18px 0 10px}.upload-dropzone-large{padding:48px 24px}div[style*="gridTemplateColumns: '1fr 1fr'"]{grid-template-columns:1fr!important}}@media (max-width: 600px){.upload-dropzone-large{padding:40px 16px}.upload-button{padding:12px 24px;font-size:1rem}}
