@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&family=Bebas+Neue&display=swap";
.wizard-root{--bg:#0a0a0a;--bg2:#141414;--bg3:#1a1a1a;--bg4:#222;--line:#ffffff14;--line2:#ffffff1f;--text:#fff;--muted:#fff9;--dim:#ffffff59;--accent:#c8ff00;--accent2:#a8e000;--accent-glow:#c8ff001f;--accent-text:#0a0a0a;--green:#10b981;--red:#ef4444;--blue:#3b82f6;--purple:#8b5cf6;--pink:#ec4899;--cyan:#06b6d4;--max:600px;--pad:16px;--radius:14px;--font:"Plus Jakarta Sans", -apple-system, sans-serif;--font-display:"Bebas Neue", "Plus Jakarta Sans", sans-serif;--shadow-sm:0 1px 4px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-accent:0 4px 20px #c8ff0026;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0a0a0a radial-gradient(circle,#ffffff0f 1px,#0000 1px) 0 0/20px 20px}.wizard-root.theme-light{--bg:#fafafa;--bg2:#fff;--bg3:#f3f4f6;--bg4:#e5e7eb;--line:#00000014;--line2:#0000001f;--text:#111;--muted:#6b7280;--dim:#9ca3af;--accent-glow:#c8ff0026;--accent-text:#0a0a0a;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 30px #0000001a;--shadow-accent:0 4px 20px #c8ff0033;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fafafa radial-gradient(circle,#00000014 1px,#0000 1px) 0 0/20px 20px}.theme-toggle{background:var(--bg3);border:1px solid var(--line);border-radius:8px;place-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:grid}.theme-toggle:hover{background:var(--bg4)}.wizard-root{color:var(--text);font-family:var(--font);-webkit-text-size-adjust:100%;line-height:1.5}.wizard-root *{box-sizing:border-box}.wizard-root a{color:inherit;text-decoration:none}.wizard-root img{max-width:100%;display:block}.wizard-root button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.wizard-root input,.wizard-root textarea{color:var(--text)}.wizard-root{min-height:100dvh;overflow-x:hidden}.progress-bar{background:var(--bg4);z-index:200;height:3px;position:fixed;top:0;left:0;right:0}.progress-fill{background:var(--accent);height:100%;transition:width .4s}.wizard-top{z-index:100;padding:12px var(--pad);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);background:#0a0a0af2;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.wizard-brand{font-family:var(--font-display);color:var(--text);letter-spacing:.06em;font-size:22px}.wizard-brand span{background:var(--accent);color:var(--accent-text);font-size:11px;font-family:var(--font);letter-spacing:.04em;border-radius:4px;margin-left:6px;padding:2px 8px;font-weight:900}.wizard-back{background:var(--bg3);color:var(--muted);border:1px solid var(--line);border-radius:8px;padding:6px 12px;font-size:10px;font-weight:700}.toast{top:55px;left:var(--pad);right:var(--pad);z-index:300;background:var(--bg2);box-shadow:var(--shadow-accent);border:1px solid #c8ff0033;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;animation:.3s slideIn;display:flex;position:fixed}.toast-check{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:900;display:grid}.toast span:last-child{color:var(--text);font-size:12px;font-weight:600}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.step-root{max-width:var(--max);padding:var(--pad);padding-bottom:calc(85px + env(safe-area-inset-bottom,0px));margin:0 auto}.step-center{justify-content:center;align-items:center;min-height:calc(100dvh - 55px);display:flex}.step-card{background:var(--bg2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--pad);box-shadow:var(--shadow-sm)}.trial-bar{background:var(--accent-glow);border:1px solid #c8ff0026;border-radius:10px;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;display:flex}.trial-icon{font-size:16px}.trial-bar b{color:var(--text);font-size:11px;font-weight:700;display:block}.trial-bar p{color:var(--muted);margin:0;font-size:9px}.step-header{margin-bottom:16px}.step-badge{background:var(--accent);color:var(--accent-text);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;margin-bottom:10px;padding:3px 10px;font-size:9px;font-weight:900;display:inline-block}.step-header h1{color:var(--text);letter-spacing:-.02em;margin:0 0 6px;font-size:20px;font-weight:900;line-height:1.2}.step-header p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.upload-section{margin-top:16px}.upload-header{margin-bottom:12px}.upload-badge{background:var(--accent-glow);color:var(--accent);border-radius:6px;margin-bottom:8px;padding:3px 8px;font-size:9px;font-weight:800;display:inline-block}.upload-header h1{margin:0 0 6px;font-size:18px;font-weight:900}.upload-header p{color:var(--muted);margin:0;font-size:11px}.upload-zone{border:2px dashed var(--bg4);border-radius:var(--radius);background:var(--bg2);padding:24px var(--pad);text-align:center;transition:all .2s}.upload-zone:hover{border-color:var(--accent);background:var(--accent-glow)}.upload-icon-wrap{color:var(--accent);justify-content:center;margin-bottom:12px;display:flex}.upload-zone h3{margin:0 0 10px;font-size:14px;font-weight:800}.upload-btn{border:2px solid var(--accent);color:var(--accent);background:0 0;border-radius:10px;margin-bottom:10px;padding:10px 20px;font-size:12px;font-weight:800;transition:all .2s}.upload-btn:hover{background:var(--accent);color:var(--accent-text)}.upload-specs span{color:var(--dim);font-size:10px;display:block}.preview-strip{background:var(--bg2);border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;margin-bottom:16px;padding:12px;display:flex}.preview-strip img{object-fit:cover;border:1px solid var(--line);border-radius:10px;flex-shrink:0;width:44px;height:44px}.preview-strip b{color:var(--text);font-size:12px;font-weight:700;display:block}.preview-strip span{color:var(--muted);font-size:10px}.category-grid{flex-direction:column;gap:8px;display:flex}.category-card{background:var(--bg2);border:2px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:12px;transition:all .15s;display:flex;position:relative}.category-card:active{transform:scale(.98)}.category-active{border-color:var(--accent)!important;background:var(--accent-glow)!important;box-shadow:var(--shadow-accent)!important}.cat-icon{border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.cat-info b{color:var(--text);font-size:12px;font-weight:700;display:block}.cat-info span{color:var(--muted);font-size:9px;line-height:1.4}.cat-check{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.step-nav{padding:12px var(--pad);padding-bottom:max(14px, env(safe-area-inset-bottom,14px));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--line);z-index:150;background:#0a0a0af2;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.btn-back{border:1.5px solid var(--line2);color:var(--muted);background:0 0;border-radius:10px;padding:12px 16px;font-size:12px;font-weight:700}.btn-next{background:var(--accent);color:var(--accent-text);box-shadow:var(--shadow-accent);letter-spacing:.02em;border-radius:10px;flex:1;padding:12px 16px;font-size:13px;font-weight:900}.btn-next:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.btn-generate{letter-spacing:.04em;font-size:14px}.step-split{padding:0!important}.split-left{display:none}.split-right{padding:var(--pad);padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}.split-header{margin-bottom:16px}.split-header h1{color:var(--text);margin:0 0 6px;font-size:18px;font-weight:900}.split-header p{color:var(--muted);margin:0;font-size:11px}.preview-card{background:var(--bg4);aspect-ratio:3/4;border-radius:16px;position:relative;overflow:hidden}.preview-badge-top{color:var(--accent);z-index:2;letter-spacing:.08em;background:#000000b3;border-radius:8px;padding:5px 10px;font-size:9px;font-weight:800;position:absolute;top:12px;left:12px}.preview-ratio-badge{color:#fff;z-index:2;background:#000000b3;border-radius:8px;padding:5px 10px;font-size:10px;font-weight:700;position:absolute;top:12px;right:12px}.preview-img{object-fit:cover;width:100%;height:100%}.preview-placeholder{place-items:center;width:100%;height:100%;font-size:44px;display:grid}.preview-overlay{background:linear-gradient(#0000,#000c);padding:12px;position:absolute;bottom:0;left:0;right:0}.preview-label-sm{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;font-size:8px;display:block}.preview-overlay span:last-child{color:#fffc;font-size:12px}.preview-thumbs{gap:8px;margin-top:10px;display:flex}.preview-thumb{aspect-ratio:1;background:var(--bg3);border:1px solid var(--line);border-radius:10px;flex:1;place-items:center;display:grid}.preview-thumb span{color:var(--dim);letter-spacing:.06em;font-size:9px;font-weight:700}.mode-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.mode-grid::-webkit-scrollbar{display:none}.wizard-root .mode-card{background:var(--bg2);border:2px solid var(--line);scroll-snap-align:start;text-align:center;min-width:115px;max-width:145px;box-shadow:var(--shadow-sm);border-radius:12px;flex:none;padding:12px 10px;transition:all .15s}.wizard-root .mode-card:active{transform:scale(.97)}.wizard-root .mode-active{border-color:var(--accent)!important;background:var(--accent-glow)!important;box-shadow:var(--shadow-accent)!important}.mode-card-row{flex-direction:column;align-items:center;gap:4px;display:flex}.mode-num{background:var(--accent-glow);width:24px;height:24px;color:var(--accent);border-radius:7px;justify-content:center;align-items:center;font-size:9px;font-weight:900;display:flex}.mode-card-text{width:100%}.mode-card-text h3{color:var(--text);margin:0;font-size:10px;font-weight:800;line-height:1.3}.mode-card-text p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:8px;line-height:1.3;display:-webkit-box;overflow:hidden}.mode-check-sm{color:var(--accent);font-size:12px;font-weight:900}.sub-section{border-radius:var(--radius);background:var(--bg2);border:1px solid var(--line);margin-top:20px;padding:14px;position:relative}.sub-section h2{color:var(--text);letter-spacing:.02em;margin:0 0 4px;font-size:13px;font-weight:800}.sub-desc{color:var(--muted);margin:0 0 12px;font-size:10px;line-height:1.5}.sec-mode,.sec-gallery{border-left:3px solid var(--accent)}.sec-size{border-left:3px solid var(--cyan)}.sec-deco{border-left:3px solid var(--pink)}.sec-desc{border-left:3px solid var(--green)}.sec-extra{border-left:3px solid var(--purple)}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.gallery-card{border:2px solid var(--line);background:var(--bg3);box-shadow:var(--shadow-sm);border-radius:12px;transition:all .15s;position:relative;overflow:hidden}.gallery-card:active{transform:scale(.97)}.gallery-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.gallery-card-info{background:linear-gradient(#0000,#000000d9);padding:8px 10px;position:absolute;bottom:0;left:0;right:0}.gallery-card-info b{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;display:block;overflow:hidden}.gallery-card-info span{color:var(--muted);margin-top:1px;font-size:8px;display:block}.gallery-check{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 2px 8px #0006}.gallery-active{border-color:var(--accent)!important;box-shadow:0 0 0 3px #c8ff0040!important}.size-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.size-card{background:var(--bg2);border:2px solid var(--line);text-align:center;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:14px 10px;transition:all .15s;display:flex}.size-card:active{transform:scale(.97)}.size-active{border-color:var(--accent)!important;background:var(--accent-glow)!important;box-shadow:var(--shadow-accent)!important}.size-box{border:2px solid var(--line2);background:var(--bg3);border-radius:6px;place-items:center;width:36px;max-height:44px;display:grid}.size-box span{color:var(--accent);font-size:10px;font-weight:800}.size-card b{color:var(--text);font-size:12px;font-weight:700}.size-card span{color:var(--muted);font-size:9px}.deco-grid{flex-direction:column;gap:8px;display:flex}.deco-card{background:var(--bg2);border:2px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:12px;padding:12px;transition:all .15s;display:flex;position:relative}.deco-card:active{transform:scale(.97)}.deco-active{border-color:var(--accent)!important;background:var(--accent-glow)!important;box-shadow:var(--shadow-accent)!important}.deco-icon{flex-shrink:0;font-size:20px}.deco-card b{color:var(--text);font-size:12px;font-weight:700;display:block}.deco-card>div span{color:var(--muted);font-size:9px}.deco-check{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.instruction-input{border:2px solid var(--line2);background:var(--bg3);width:100%;color:var(--text);resize:vertical;box-shadow:var(--shadow-sm);border-radius:10px;outline:none;padding:12px;font-family:inherit;font-size:12px;transition:all .2s}.instruction-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #c8ff001a}.instruction-input::placeholder{color:var(--dim);font-size:11px}.analyze-card{text-align:center;padding:40px var(--pad);background:var(--bg2);border:1px solid var(--line);max-width:400px;box-shadow:var(--shadow-md);border-radius:20px}.analyze-spinner{width:60px;height:60px;margin:0 auto 20px;position:relative}.spinner-ring{border:3px solid var(--bg4);border-top-color:var(--accent);border-radius:50%;animation:1s linear infinite spin;position:absolute;inset:0}.spinner-icon{place-items:center;font-size:22px;display:grid;position:absolute;inset:0}@keyframes spin{to{transform:rotate(360deg)}}.analyze-card h1{margin:0 0 8px;font-size:20px;font-weight:900}.analyze-card>p{color:var(--muted);margin:0 0 24px;font-size:12px}.analyze-footer{background:var(--bg3);border-radius:10px;padding:12px}.analyze-footer span{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;font-size:8px;display:block}.analyze-quote{margin-top:4px;font-style:italic}.generate-card{width:100%;max-width:500px}.generate-status-bar{gap:10px;margin-bottom:24px;display:flex}.status-item{background:var(--bg2);border:1px solid var(--line);text-align:center;border-radius:12px;flex:1;padding:14px}.status-num{color:var(--accent);font-size:28px;font-weight:950;font-family:var(--font-display);letter-spacing:.04em;display:block}.status-label{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;font-size:8px}.generate-hero{text-align:center;margin-bottom:24px}.generate-badge{background:var(--accent-glow);color:var(--accent);letter-spacing:.08em;border-radius:999px;margin-bottom:12px;padding:5px 12px;font-size:9px;font-weight:800;display:inline-block}.generate-hero h1{margin:0 0 8px;font-size:22px;font-weight:900}.generate-hero h1 b{color:var(--accent)}.generate-hero p{color:var(--muted);margin:0;font-size:12px}.generate-live{background:var(--bg2);border:1px solid var(--line);border-radius:14px;margin-bottom:20px;padding:16px}.generate-live h3{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:800}.live-items{flex-direction:column;gap:8px;display:flex}.live-item{color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:11px;display:flex}.live-active{background:var(--accent-glow);color:var(--text)}.live-done{color:var(--green)}.live-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.dot-green{background:var(--green)}.dot-purple{background:var(--accent);animation:1.5s infinite pulse}.dot-orange{opacity:.5;background:#f59e0b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.live-check{color:var(--green);margin-left:auto;font-weight:800}.generate-previews{grid-template-columns:1fr 1fr;gap:10px;display:grid}.generate-preview-card{aspect-ratio:1;background:var(--bg3);border:1px solid var(--line);border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden}.preview-watermark-grid{opacity:.15;grid-template-columns:1fr 1fr;gap:4px;display:grid;transform:rotate(-30deg)}.preview-watermark-grid span{color:#ffffff1a;letter-spacing:.1em;white-space:nowrap;font-size:9px;font-weight:900}.preview-variant-label{color:#fff;background:#0009;border-radius:6px;padding:4px 10px;font-size:9px;font-weight:700;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.results-grid{grid-template-columns:1fr;gap:14px;margin-bottom:28px;display:grid}.result-card{background:var(--bg2);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;overflow:hidden}.result-label{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;font-size:9px;font-weight:800;display:inline-block}.result-angle-desc{color:var(--muted);padding:0 12px 6px;font-size:10px;display:block}.result-img-wrap{cursor:pointer;position:relative}.result-img-wrap img{aspect-ratio:1;object-fit:cover;width:100%}.result-watermark{pointer-events:none;grid-template-columns:1fr 1fr 1fr;place-items:center;gap:10px;display:grid;position:absolute;inset:0;transform:rotate(-30deg)}.result-watermark span{color:#ffffff4d;letter-spacing:.15em;font-size:12px;font-weight:900}.result-zoom{color:#fff;opacity:0;background:#000000b3;border-radius:10px;padding:10px 16px;font-size:11px;font-weight:700;transition:all .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.result-img-wrap:hover .result-zoom{opacity:1}.result-download{background:var(--accent);width:100%;color:var(--accent-text);letter-spacing:.02em;padding:14px;font-size:12px;font-weight:900}.result-cta{text-align:center;padding:28px 0}.result-cta h2{margin:0 0 8px;font-size:20px;font-weight:900}.result-cta p{color:var(--muted);margin:0 0 20px;font-size:12px}.btn-upgrade{background:var(--accent);color:var(--accent-text);letter-spacing:.04em;border-radius:12px;margin-bottom:12px;padding:14px 28px;font-size:14px;font-weight:900}.btn-restart{color:var(--muted);margin:12px auto 0;font-size:11px;text-decoration:underline;display:block}.modal-overlay{z-index:400;padding:var(--pad);background:#000000d9;place-items:center;display:grid;position:fixed;inset:0}.modal-content{border-radius:16px;width:100%;max-width:500px;position:relative;overflow:hidden}.modal-close{color:#fff;z-index:2;background:#0009;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;display:grid;position:absolute;top:10px;right:10px}.modal-content img{width:100%}.modal-watermark{pointer-events:none;grid-template-columns:1fr 1fr 1fr;place-items:center;gap:20px;display:grid;position:absolute;inset:0;transform:rotate(-30deg)}.modal-watermark span{color:#ffffff40;letter-spacing:.15em;font-size:18px;font-weight:900}.theme-gallery{margin-top:10px}.theme-card{border:2px solid var(--line);background:var(--bg2);border-radius:10px;overflow:hidden}.theme-card-preview{min-height:50px}@media (min-width:640px){.category-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px}.size-grid{grid-template-columns:repeat(4,1fr)}.deco-grid{grid-template-columns:repeat(3,1fr)}.results-grid{grid-template-columns:1fr 1fr}.generate-previews{grid-template-columns:repeat(4,1fr)}}@media (min-width:980px){.step-split{grid-template-columns:380px 1fr;display:grid}.split-left{background:var(--bg2);border-right:1px solid var(--line);flex-direction:column;gap:14px;height:calc(100vh - 55px);padding:24px;display:flex;position:sticky;top:55px;overflow-y:auto}.split-right{padding:28px 36px 100px}.step-header h1{font-size:28px}.mode-grid{flex-wrap:wrap}.wizard-root .mode-card{min-width:170px;max-width:210px}}@media (max-width:380px){.wizard-top{padding:10px 12px}.step-root,.split-right,.step-card{padding:12px}.step-header h1{font-size:16px}.wizard-root .mode-card{min-width:100px;padding:8px}.gallery-grid,.size-grid{gap:6px}.sub-section{padding:12px}.step-nav{padding:10px 12px}}
