@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);min-height:100vh;color:#fff;display:flex;justify-content:center;align-items:center;padding:20px}#root{width:100%}.container{max-width:1200px;margin:0 auto;position:relative}.glass{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 4px 30px #0000001a}.header{display:flex;justify-content:space-between;align-items:center;padding:24px;margin-bottom:40px}.header h1{font-size:28px;font-weight:700;background:linear-gradient(to right,#a18cd1,#fbc2eb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px}.logout-btn{background:#dc354533;color:#ff6b6b;padding:8px 16px;border:1px solid rgba(220,53,69,.3);border-radius:8px;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#dc354566}.nav{display:flex;justify-content:center;margin-bottom:40px;gap:16px}.nav-btn{padding:12px 24px;background:transparent;color:#fff9;border:none;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;border-radius:50px}.nav-btn:hover{color:#fff;background:#ffffff1a}.nav-btn.active{background:linear-gradient(90deg,#a18cd1,#fbc2eb);color:#0f0c29;font-weight:600;box-shadow:0 0 20px #a18cd166}.auth-container{max-width:400px;margin:80px auto;padding:40px;text-align:center}.auth-container h2{margin-bottom:24px;font-size:32px}.input-group{margin-bottom:20px;text-align:left}.input-group label{display:block;font-size:14px;color:#ffffffb3;margin-bottom:8px}.input-group input{width:100%;padding:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:16px;transition:border-color .3s}.input-group input:focus{outline:none;border-color:#a18cd1}.btn-primary{width:100%;padding:16px;background:linear-gradient(90deg,#a18cd1,#fbc2eb);border:none;border-radius:12px;color:#0f0c29;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s;margin-top:10px}.btn-primary:active{transform:scale(.98)}.btn-link{background:none;border:none;color:#a18cd1;cursor:pointer;margin-top:20px;font-size:14px;text-decoration:underline}.upload-zone{max-width:1000px;margin:0 auto;padding:80px;text-align:center;border:2px dashed rgba(255,255,255,.2);border-radius:20px;cursor:pointer;transition:all .3s ease;background:#ffffff05}.upload-zone:hover,.upload-zone.active{border-color:#a18cd1;background:#a18cd11a}.upload-icon{font-size:48px;margin-bottom:16px;display:block}.upload-text{font-size:20px;font-weight:600;margin-bottom:8px}.upload-subtext{color:#ffffff80;font-size:14px}.preview-card{max-width:1000px;margin:0 auto;padding:30px;text-align:center}.image-container{margin:20px 0;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000004d}.image-container img{width:100%;display:block}.actions{display:flex;justify-content:center;gap:16px;margin-top:24px}.btn{padding:12px 24px;border-radius:10px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.btn-grad{background:linear-gradient(90deg,#a18cd1,#fbc2eb);color:#0f0c29}.btn-grad:hover{box-shadow:0 0 15px #a18cd180}.btn-outline{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff}.btn-outline:hover{background:#ffffff1a}.loader{width:48px;height:48px;border:5px solid rgba(255,255,255,.1);border-bottom-color:#a18cd1;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;margin-bottom:20px}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.history-list{max-width:800px;margin:0 auto}.history-item{display:flex;justify-content:space-between;align-items:center;padding:16px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.history-item:last-child{border-bottom:none}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.status-completed{background:#2ecc7133;color:#2ecc71}.status-queued,.status-processing{background:#ffc10733;color:#ffc107}.status-failed{background:#e74c3c33;color:#e74c3c}.error-msg{background:#e74c3c33;color:#ff6b6b;padding:12px;border-radius:8px;margin-bottom:16px;text-align:center;border:1px solid rgba(231,76,60,.3)}
