:root{--bg: #04060b;--bg-soft: #0b0f1a;--bg-card: #11172b;--accent: #ff7a7a;--accent-strong: #ffb347;--text: #f2f5ff;--muted: #9aa7c7;--border: rgba(255, 255, 255, .08);font-family:Inter,SF Pro Display,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top,rgba(255,122,122,.12),transparent 55%),radial-gradient(circle at 90% 20%,rgba(78,205,196,.15),transparent 40%),var(--bg);color:var(--text);line-height:1.6;min-height:100vh;padding:0 1.5rem 3rem}a{color:inherit;text-decoration:none}.page{max-width:1100px;margin:0 auto;padding-top:1rem}.navbar{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0}.navbar__logo{font-size:1.3rem;font-weight:700;background:linear-gradient(120deg,var(--accent),var(--accent-strong));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar__links{display:flex;align-items:center;gap:1.5rem}.navbar__link{color:var(--muted);font-size:.95rem;transition:color .2s ease}.navbar__link:hover{color:var(--text)}.eyebrow{font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.8rem}.lead{font-size:1.125rem;color:var(--muted);max-width:38ch}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:2rem;align-items:center;margin-bottom:4rem}.hero__copy h1{font-size:clamp(2.5rem,6vw,3.5rem);line-height:1.1;margin-bottom:1rem}.hero__cta{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.btn{border-radius:999px;padding:.85rem 1.8rem;font-weight:600;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:hover{transform:translateY(-2px);box-shadow:0 15px 35px #00000040}.btn--primary{background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:#1b1b1d}.btn--ghost{border-color:var(--border);color:var(--text)}.btn--secondary{background:transparent;border-color:var(--accent);color:var(--accent)}.stat-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.stat-grid li{background:var(--bg-card);border:1px solid var(--border);border-radius:1rem;padding:1.2rem}.stat-grid span{display:block;font-size:1.3rem;font-weight:600}.stat-grid p{color:var(--muted);font-size:.9rem}.hero__media{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.media-card{background:#ffffff05;border-radius:1.2rem;border:1px solid var(--border);padding:1rem;text-align:center}.media-card__label{font-size:.9rem;margin-bottom:.5rem;color:var(--muted)}.media-card__frame{border-radius:.8rem;height:220px;overflow:hidden;background:var(--bg-card);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 35px #00000059}.media-card__frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.media-card__frame:hover img{transform:scale(1.02)}.media-card__frame--before img{filter:grayscale(.92) contrast(.82)}.media-card__frame--after img{filter:saturate(1.08) contrast(1.05)}.story,.steps,.features,.testimonials,.pricing,.faq,.cta{margin-bottom:4rem}.story{background:#ffffff05;border-radius:1.5rem;border:1px solid var(--border);padding:2rem}.story h2,.steps h2,.features h2,.testimonials h2,.pricing h2,.faq h2,.cta h2{font-size:2rem;margin-bottom:1rem}.steps ol{counter-reset:steps;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.steps li{list-style:none;padding:1.5rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-card);position:relative}.steps li:before{counter-increment:steps;content:counter(steps);position:absolute;top:-18px;left:1.5rem;background:var(--accent);color:#10121b;width:36px;height:36px;border-radius:999px;display:grid;place-items:center;font-weight:600}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.feature-grid article{border:1px solid var(--border);border-radius:1rem;padding:1.5rem;background:#070c1899}.feature-grid h3{margin-bottom:.4rem}.feature-grid p{color:var(--muted)}.testimonials__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.testimonials blockquote{border:1px solid var(--border);border-radius:1.2rem;padding:1.5rem;background:#ffffff05;font-style:italic}.testimonials cite{display:block;margin-top:1rem;font-style:normal;color:var(--muted);font-size:.9rem}.pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;align-items:stretch}.pricing__card{border:1px solid var(--border);border-radius:1.2rem;background:linear-gradient(145deg,#ff7a7a26,#141c32e6);padding:2rem;display:flex;flex-direction:column;gap:1rem}.pricing__value{font-size:2.2rem;font-weight:700}.pricing__card ul{list-style:none;color:var(--muted);display:flex;flex-direction:column;gap:.4rem}.faq__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.faq details{border:1px solid var(--border);border-radius:1rem;padding:1rem 1.2rem;background:#ffffff05}.faq summary{font-weight:600;cursor:pointer}.faq p{margin-top:.6rem;color:var(--muted)}.cta{text-align:center;padding:3rem 2rem;border:1px solid var(--border);border-radius:1.5rem;background:linear-gradient(145deg,#ff7a7a14,#2f354566)}.cta p{color:var(--muted);margin:1rem auto 2rem;max-width:50ch}.site-footer{max-width:1100px;margin:2.5rem auto 0;padding:1.5rem 0;text-align:center;color:var(--muted);border-top:1px solid var(--border);font-size:.95rem}.site-footer a{color:var(--accent);font-weight:600}@media(max-width:640px){body{padding:0 1rem 3rem}.hero__media{grid-template-columns:1fr}.media-card__frame{height:180px}}.auth-page{display:flex;align-items:center;justify-content:center;min-height:80vh}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:1.5rem;padding:2.5rem;width:100%;max-width:420px}.auth-card--centered{text-align:center}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{font-size:1.8rem;background:linear-gradient(120deg,var(--accent),var(--accent-strong));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-alert{padding:1rem;border-radius:.75rem;margin-bottom:1.5rem;font-size:.95rem}.auth-alert--error{background:#ff646426;border:1px solid rgba(255,100,100,.3);color:#ff8a8a}.auth-alert--success{background:#64ff9626;border:1px solid rgba(100,255,150,.3);color:#8affb0}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--muted)}.form-group input{background:var(--bg-soft);border:1px solid var(--border);border-radius:.75rem;padding:.9rem 1rem;color:var(--text);font-size:1rem;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:var(--accent)}.form-group input::placeholder{color:var(--muted);opacity:.6}.btn--full{width:100%}.btn--small{padding:.5rem 1rem;font-size:.85rem}.auth-hint{text-align:center;color:var(--muted);font-size:.9rem;margin-top:1.5rem;margin-bottom:1.5rem}.auth-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);text-align:center}.auth-footer a{color:var(--accent);font-size:.9rem;transition:opacity .2s ease}.auth-footer a:hover{opacity:.8}.auth-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.auth-icon--success{background:#64ff9626;color:#8affb0}.auth-icon--error{background:#ff646426;color:#ff8a8a}.auth-icon--warning{background:#ffb34726;color:var(--accent-strong)}.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-divider span{color:var(--muted);font-size:.85rem}.auth-cta{text-align:center;margin-top:1rem}.auth-info-box{background:var(--bg-soft);border:1px solid var(--border);border-radius:.75rem;padding:1rem;margin-top:1.5rem;font-size:.9rem;color:var(--muted)}.auth-info-box p+p{margin-top:.5rem}.dashboard{padding-top:0}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;margin-bottom:2rem;border-bottom:1px solid var(--border)}.dashboard-logo{font-size:1.3rem;font-weight:700;background:linear-gradient(120deg,var(--accent),var(--accent-strong));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-user{display:flex;align-items:center;gap:1rem}.dashboard-user span{color:var(--muted);font-size:.9rem}.credits-card{background:linear-gradient(135deg,#ff7a7a33,#ffb34726);border:1px solid var(--border);border-radius:1.2rem;padding:1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.credits-info{display:flex;flex-direction:column;gap:.25rem}.credits-label{font-size:.9rem;color:var(--muted)}.credits-value{font-size:2.5rem;font-weight:700;color:var(--text)}.upload-section,.empty-section,.history-section{background:var(--bg-card);border:1px solid var(--border);border-radius:1.2rem;padding:2rem;margin-bottom:2rem}.upload-section h2,.empty-section h2,.history-section h2{font-size:1.3rem;margin-bottom:.5rem}.upload-section .lead,.empty-section .lead{margin-bottom:1.5rem}.upload-form{display:flex;flex-direction:column;gap:1.5rem}.upload-dropzone{border:2px dashed var(--border);border-radius:1rem;padding:2.5rem;text-align:center;transition:border-color .2s ease;cursor:pointer}.upload-dropzone:hover{border-color:var(--accent)}.upload-input{display:none}.upload-label{cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.75rem}.upload-icon{width:56px;height:56px;background:#ff7a7a26;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent)}.upload-hint{color:var(--muted);font-size:.85rem}.empty-section{text-align:center}.empty-icon{width:56px;height:56px;background:var(--bg-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--muted)}.history-empty{text-align:center;padding:2rem;color:var(--muted)}.history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:1.5rem}.restoration-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:1rem;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.restoration-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000004d}.restoration-card--processing{border-color:#ffb34766}.restoration-card--failed{border-color:#ff646466}.restoration-images{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}.restoration-image{position:relative;aspect-ratio:1;overflow:hidden;background:var(--bg-card)}.restoration-image img{width:100%;height:100%;object-fit:cover;display:block}.restoration-image--original img{filter:grayscale(.9) contrast(.85)}.restoration-image-label{position:absolute;bottom:.5rem;left:.5rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:#000000b3;padding:.25rem .5rem;border-radius:.25rem;color:var(--text)}.restoration-loading,.restoration-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:.75rem;color:var(--muted);font-size:.9rem}.restoration-loading{color:var(--accent-strong)}.restoration-error{color:#ff8a8a}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent-strong);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.restoration-meta{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg-card)}.restoration-date{font-size:.85rem;color:var(--muted)}@media(max-width:640px){.auth-card{padding:1.5rem}.credits-card{flex-direction:column;gap:1rem;text-align:center}.dashboard-header{flex-direction:column;gap:1rem}.history-grid{grid-template-columns:1fr}}.pricing-page{padding-bottom:2rem}.pricing-hero{text-align:center;margin-bottom:3rem;padding-top:2rem}.pricing-hero h1{font-size:clamp(2rem,5vw,3rem);margin-bottom:1rem}.pricing-hero .lead{max-width:50ch;margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:4rem}.pricing-plan{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:1.5rem;padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:transform .2s ease,box-shadow .2s ease}.pricing-plan:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0000004d}.pricing-plan--popular{border-color:var(--accent);background:linear-gradient(145deg,#ff7a7a26,#141c32f2)}.pricing-badge{position:absolute;top:-12px;background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:#1b1b1d;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.4rem 1rem;border-radius:999px}.pricing-plan__name{font-size:1.25rem;color:var(--text);margin-bottom:.5rem}.pricing-plan__price{font-size:3rem;font-weight:700;color:var(--text);line-height:1}.pricing-plan__currency{font-size:1.5rem;vertical-align:super}.pricing-plan__credits{font-size:1.1rem;color:var(--accent);font-weight:600;margin:.5rem 0}.pricing-plan__per{color:var(--muted);font-size:.9rem;margin-bottom:1rem}.pricing-included{text-align:center;margin-bottom:4rem}.pricing-included h2{font-size:1.5rem;margin-bottom:2rem}.included-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;max-width:800px;margin:0 auto}.included-grid li{display:flex;align-items:center;gap:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1rem;font-size:.95rem}.pricing-faq{margin-bottom:4rem}.pricing-faq h2{text-align:center}@media(max-width:640px){.pricing-grid,.included-grid{grid-template-columns:1fr}}.success-card{max-width:480px}.success-card h1{font-size:2rem;margin-bottom:.5rem;background:linear-gradient(120deg,var(--accent),var(--accent-strong));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.success-divider{width:100%;height:1px;background:var(--border);margin:1.5rem 0}.success-next{margin-bottom:1.5rem}.success-next h2{font-size:1.1rem;margin-bottom:.75rem;color:var(--text)}.success-next p{color:var(--muted);font-size:.95rem;margin-bottom:.5rem}.success-next strong{color:var(--text)}
