:root{--bg-dark:#050508;--primary-color:#6366f1;--primary-glow:#818cf8;--secondary-color:#d946ef;--accent-color:#f59e0b;--text-primary:#fff;--text-dim:#94a3b8;--glass-bg:#ffffff08;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #000c;--border-radius:24px;--font-heading:"Outfit", sans-serif;--font-body:"Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-body);min-height:100vh;font-size:16px;line-height:1.6;overflow-x:hidden}.stars{z-index:-2;background:radial-gradient(circle,#112 0%,#050508 100%);position:fixed;inset:0}.twinkling{z-index:-1;opacity:.5;background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:40px 40px;animation:60s linear infinite drift;position:fixed;inset:0}@keyframes drift{0%{background-position:0 0}to{background-position:1000px 1000px}}.gradient-text{background:linear-gradient(135deg, var(--secondary-color), var(--primary-color));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);z-index:100;background:#0a0a0fb3;justify-content:space-between;align-items:center;padding:1rem 3rem;display:flex;position:sticky;top:0}.logo{letter-spacing:-1px;align-items:center;gap:.8rem;font-size:1.8rem;display:flex}.logo i{color:var(--primary-color);filter:drop-shadow(0 0 10px var(--primary-color))}.nav-links{align-items:center;gap:2.5rem;display:flex}.nav-links a{color:var(--text-dim);font-weight:500;text-decoration:none;transition:all .3s;position:relative}.nav-links a:after{content:"";background:var(--primary-color);width:0;height:2px;transition:width .3s;position:absolute;bottom:-5px;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}.upgrade-btn{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:30px;padding:.6rem 1.5rem;font-weight:600;transition:all .3s;box-shadow:0 0 15px #6366f14d}.upgrade-btn:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 0 25px #d946ef80}.container{grid-template-columns:1fr;gap:2rem;max-width:1400px;margin:2rem auto;padding:0 2rem;display:grid}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:2.5rem}.input-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.input-header h2{font-size:2rem;font-weight:600}.badge{color:#4ade80;background:#22c55e1a;border:1px solid #22c55e33;border-radius:20px;padding:.4rem 1rem;font-size:.8rem;font-weight:600}.input-wrapper{margin-bottom:1.5rem;position:relative}textarea{border:1px solid var(--glass-border);color:#fff;resize:none;background:#0000004d;border-radius:15px;width:100%;padding:1.5rem;font-family:inherit;font-size:1.1rem;transition:all .3s;box-shadow:inset 0 2px 10px #0003}textarea:focus{border-color:var(--primary-glow);outline:none;box-shadow:inset 0 2px 10px #0003,0 0 20px #6366f11a}.upload-area{border:2px dashed var(--glass-border);cursor:pointer;background:#0003;border-radius:12px;justify-content:center;align-items:center;min-height:80px;margin-top:1rem;padding:1rem;transition:all .3s;display:flex}.upload-area:hover{border-color:var(--primary-glow);background:#6366f10d}.upload-placeholder{color:var(--text-dim);flex-direction:column;align-items:center;gap:.5rem;transition:color .3s;display:flex}.upload-placeholder i{font-size:1.5rem}.upload-placeholder span{font-size:.9rem;font-weight:500}.upload-area:hover .upload-placeholder{color:var(--text-primary)}.preview-container{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.preview-container img{border-radius:8px;max-width:100%;max-height:120px;box-shadow:0 4px 12px #0000004d}.remove-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;transition:transform .2s;display:flex;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 8px #0000004d}.remove-btn:hover{transform:scale(1.1)}#enhance-btn{border:1px solid var(--glass-border);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border-radius:10px;padding:.5rem 1rem;transition:all .3s;position:absolute;bottom:20px;right:20px}#enhance-btn:hover{background:#fff3;transform:translateY(-2px)}.controls-wrapper{grid-template-columns:1fr 1fr auto;align-items:end;gap:1.5rem;display:grid}.control-group{flex-direction:column;gap:.5rem;display:flex}.control-group label{color:var(--text-dim);font-size:.9rem;font-weight:500}select{appearance:none;border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#0000004d url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E) right 1rem top 50%/.65rem no-repeat;border-radius:15px;padding:1rem 1.5rem;font-family:inherit;font-size:1rem;transition:all .3s}select:focus{border-color:var(--primary-glow);outline:none}select option{background:var(--bg-dark);color:#fff}.primary-btn{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;cursor:pointer;border:none;border-radius:15px;align-items:center;gap:1rem;height:100%;padding:1rem 2.5rem;font-family:inherit;font-size:1.1rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 10px 20px -10px #6366f180}.primary-btn:hover{transform:translateY(-3px);box-shadow:0 15px 25px -10px #d946ef99}.primary-btn:active{transform:translateY(0)}.loader{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-message{color:var(--primary-glow);text-align:center;background:#6366f11a;border:1px solid #6366f14d;border-radius:10px;margin-top:1.5rem;padding:1rem;font-weight:500;animation:2s infinite pulse}@keyframes pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.result-section{width:100%}.result-placeholder{background:var(--glass-bg);border:2px dashed var(--glass-border);border-radius:var(--border-radius);flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:400px;transition:all .4s;display:flex;position:relative;overflow:hidden}.result-placeholder.has-image{border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.result-image{object-fit:contain;background:#00000080;width:100%;height:auto;min-height:400px;display:block}.empty-state{text-align:center;color:var(--text-dim)}.empty-state i{opacity:.5;margin-bottom:1rem;font-size:4rem}.image-actions{opacity:0;background:linear-gradient(#0000,#000c);justify-content:space-between;align-items:flex-end;padding:2rem;transition:opacity .3s;display:flex;position:absolute;bottom:0;left:0;right:0}.result-placeholder:hover .image-actions{opacity:1}.icon-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2rem;text-decoration:none;transition:all .3s;display:flex}.icon-btn:hover{color:var(--bg-dark);background:#fff;transform:scale(1.1)}.image-prompt-show{color:#fff;text-shadow:0 2px 4px #00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;border-radius:10px;max-width:70%;padding:.5rem 1rem;font-size:.9rem}.history-section{margin-top:2rem}.history-section h3{align-items:center;gap:.8rem;margin-bottom:1.5rem;font-size:1.5rem;display:flex}.grid-gallery{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.history-item{background:var(--glass-bg);border:1px solid var(--glass-border);aspect-ratio:1;border-radius:15px;transition:transform .3s;position:relative;overflow:hidden}.history-item:hover{box-shadow:var(--glass-shadow);transform:translateY(-5px)}.history-img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.history-item:hover .history-img{transform:scale(1.05)}.history-overlay{opacity:0;background:linear-gradient(#0000 50%,#000000e6);flex-direction:column;justify-content:flex-end;padding:1.5rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.history-item:hover .history-overlay{opacity:1}.history-prompt{color:#fffc;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.85rem;display:-webkit-box;overflow:hidden}.history-actions{gap:1rem;display:flex}.history-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:.5rem;text-decoration:none;transition:background .2s;display:flex}.history-btn:hover{background:#ffffff4d}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.container>*{animation:.6s cubic-bezier(.16,1,.3,1) forwards slideDown}.container>:nth-child(2){animation-delay:.2s}.container>:nth-child(3){animation-delay:.4s}@media (width<=1000px){.controls-wrapper{grid-template-columns:1fr 1fr}.primary-btn{grid-column:span 2;justify-content:center}}@media (width<=768px){.navbar{padding:1rem}.nav-links{display:none}.container{padding:0 1rem}.glass-card{padding:1.5rem}.controls-wrapper{grid-template-columns:1fr}.primary-btn{grid-column:span 1}}.login-screen{z-index:10;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative}.login-card{width:100%;max-width:450px}.login-card input:focus{border-color:var(--primary-glow);outline:none;box-shadow:0 0 15px #6366f133}.user-profile{font-family:inherit}.nav-links .upgrade-btn{padding:.4rem 1rem;font-size:.85rem}
