@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap";:root{--primary: #6366f1;--primary-hover: #4f46e5;--bg-gradient: linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--card-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--text-main: #f8fafc;--text-muted: #94a3b8;--success: #10b981;--error: #ef4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Outfit,sans-serif;background:var(--bg-gradient);color:var(--text-main);min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.loading{font-size:20px;letter-spacing:2px;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.auth-container,.upload-container,.download-container{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;padding:40px;width:100%;max-width:480px;box-shadow:0 25px 50px -12px #00000080}h1,h2{font-weight:700;margin-bottom:8px;text-align:center;background:linear-gradient(to right,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.welcome{text-align:center;color:var(--text-muted);margin-bottom:32px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.logout-link{background:transparent;color:var(--text-muted);border:none;font-size:14px;cursor:pointer;text-decoration:underline;width:auto;padding:0}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-muted)}input[type=text],input[type=email],input[type=password]{width:100%;background:#0003;border:1px solid var(--glass-border);border-radius:12px;padding:14px 16px;color:#fff;font-family:inherit;font-size:16px;transition:all .2s}input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #6366f11a}button.primary-btn,button[type=submit]{width:100%;background:var(--primary);color:#fff;border:none;border-radius:12px;padding:16px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 10px 15px -3px #6366f14d}button.primary-btn:hover,button[type=submit]:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 20px 25px -5px #6366f166}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.toggle-auth{margin-top:24px;text-align:center;font-size:14px;color:var(--text-muted)}.toggle-auth button{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;margin-left:5px;font-family:inherit;text-decoration:none;width:auto;padding:0}.file-input-wrapper{position:relative;margin-bottom:24px}.file-input-wrapper input[type=file]{position:absolute;width:.1px;height:.1px;opacity:0}.file-input-label{display:block;border:2px dashed var(--glass-border);border-radius:16px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s;background:#ffffff05}.file-input-label:hover{border-color:var(--primary);background:#6366f10d}.selected-files{background:#0003;border-radius:12px;padding:16px;margin-bottom:24px}.file-list{list-style:none;margin-top:8px}.file-list li{font-size:14px;color:var(--text-muted);padding:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.success-icon{width:60px;height:60px;background:var(--success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 24px}.link-box{display:flex;gap:10px;margin:20px 0}.share-link-input{flex:1}.link-box button{width:auto;padding:0 20px;background:#ffffff1a;border:1px solid var(--glass-border);color:#fff;border-radius:10px;cursor:pointer}.download-info{background:#0003;padding:24px;border-radius:16px;margin-bottom:24px;text-align:left}.filename{font-size:18px;font-weight:700;margin-bottom:12px;color:#fff}.expires{color:var(--error);font-size:14px;margin-top:12px}.error-card{text-align:center}.expired-message{color:var(--error);font-weight:600;margin-bottom:24px}.btn{display:inline-block;padding:12px 24px;background:var(--primary);color:#fff;text-decoration:none;border-radius:10px;font-weight:600}@media (max-width: 480px){.auth-container,.upload-container,.download-container{padding:30px 20px}}.download-error{margin-top:12px;color:#ff6b6b;font-weight:600;text-align:center}
