*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--fg);font-family:var(--ff-sans);min-height:100vh}

/* ── Topbar ─────────────────────────────────────────────────── */
.topbar{display:flex;align-items:center;justify-content:space-between;
   padding:14px 40px;border-bottom:1px solid var(--border);background:var(--bg-elevated);
   position:sticky;top:0;z-index:100;width:100%}
.brand{display:flex;align-items:center;gap:6px}
.logo{height:24px;color:var(--fg)}
.pixel-badge{font-family:var(--ff-pixel);font-size:11px;letter-spacing:.1em;padding:3px 8px;
   border-radius:4px;background:var(--mint-5);color:var(--mint-10);text-transform:uppercase}
.topnav{display:flex;gap:14px;align-items:center}
.topnav a{font-size:13px;color:var(--fg-muted);text-decoration:none;font-weight:500;white-space:nowrap}
.topnav a:hover{color:var(--fg)}
.topnav a.nav-btn{background:var(--ube-5);color:#fff;padding:7px 16px;border-radius:8px;font-weight:600}
.topnav a.nav-btn:hover{background:var(--ube-6);color:#fff}

/* ── Hero + Tool side by side (subtitle-generator layout) ─── */
.hero-tool-section{min-height:calc(100vh - 57px);display:flex;align-items:center;
   border-bottom:1px solid var(--border)}
.hero-tool-layout{display:grid;grid-template-columns:1fr 480px;gap:0;
   max-width:1200px;margin:0 auto;padding:48px 40px;gap:60px;width:100%;align-items:start}

/* LEFT: headline */
.hero-left{padding-top:8px;display:flex;flex-direction:column}
.kick{font-family:var(--ff-pixel);font-size:12px;letter-spacing:.12em;color:var(--ube-5);
   text-transform:uppercase;display:block;margin-bottom:14px}
.hero-h{font-size:52px;font-weight:800;line-height:1.05;color:var(--fg);
   letter-spacing:-.03em;margin-bottom:16px}
.hero-sub{font-size:17px;color:var(--fg-muted);line-height:1.65;max-width:420px;margin-bottom:20px}
.hero-video-wrap{flex:1;border-radius:16px;overflow:hidden;
   box-shadow:0 8px 32px rgba(131,88,212,.14);border:1px solid var(--border);
   background:var(--bg-subtle);min-height:200px}
.hero-video{width:100%;height:100%;object-fit:cover;display:block}

/* RIGHT: tool card */
.hero-tool-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:20px;
   padding:22px;display:flex;flex-direction:column;gap:16px;
   box-shadow:0 4px 24px rgba(131,88,212,.08)}

/* API key */
.api-key-bar{background:var(--bg);border:1px solid var(--border);border-radius:12px;
   padding:14px 16px;display:flex;flex-direction:column;gap:7px}
.api-key-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;
   letter-spacing:.1em;text-transform:uppercase;color:var(--fg-subtle)}
.api-key-row{display:flex;gap:8px}
.api-key-row input{flex:1;height:40px;padding:0 12px;border-radius:9px;
   border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);
   font-size:14px;font-family:var(--ff-mono);outline:none;transition:border-color .15s}
.api-key-row input::placeholder{font-family:var(--ff-sans);color:var(--fg-subtle)}
.api-key-row input:focus{border-color:var(--ube-4)}
.api-key-row input.shake{animation:shake .4s ease;border-color:#e53e3e !important}
@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}
.eye-btn{width:40px;height:40px;flex:none;border-radius:9px;border:1px solid var(--border);
   background:var(--bg-subtle);color:var(--fg-subtle);cursor:pointer;
   display:grid;place-items:center;transition:color .15s,border-color .15s}
.eye-btn:hover{color:var(--fg);border-color:var(--border-strong)}
.api-key-hint{font-size:11px;color:var(--fg-subtle)}
.api-key-hint a{color:var(--ube-5);text-decoration:none}
.api-key-hint a:hover{text-decoration:underline}

/* Upload widget */
.upload-widget{display:grid;grid-template-columns:1fr 1fr;gap:14px;
   background:var(--ube-1);border:1.5px dashed var(--ube-3);border-radius:16px;padding:18px}
.widget-col{display:flex;flex-direction:column;gap:10px}
.widget-col-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-subtle)}

/* Dropzones */
.dz{border:1.5px dashed var(--ube-3);border-radius:12px;background:#fff;
   cursor:pointer;position:relative;overflow:hidden;transition:border-color .15s,background .15s}
.dz:hover{border-color:var(--ube-5);background:var(--ube-1)}
.dz-person{min-height:230px;display:flex;align-items:center;justify-content:center}
.clothing-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1}
.dz-clothing{min-height:130px;display:flex;align-items:center;justify-content:center}
.dz-empty{display:flex;flex-direction:column;align-items:center;gap:6px;
   padding:14px 10px;text-align:center;pointer-events:none}
.dz-icon-wrap{width:42px;height:42px;border-radius:50%;background:var(--ube-2);
   display:flex;align-items:center;justify-content:center;color:var(--ube-5);margin-bottom:2px}
.dz-clothing .dz-icon-wrap{width:34px;height:34px}
.dz-title{font-size:13px;font-weight:700;color:var(--fg)}
.dz-clothing .dz-title{font-size:12px}
.dz-desc{font-size:11.5px;color:var(--fg-muted);line-height:1.4}
.dz-clothing .dz-desc{font-size:11px}
.dz-formats{font-size:10px;color:var(--fg-subtle)}
.dz img.prev{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}
.dz.filled img.prev{display:block}
.dz.filled .dz-empty{display:none}
.dz .ov{position:absolute;inset:0;display:none;align-items:flex-start;justify-content:flex-end;padding:6px}
.dz.filled .ov{display:flex}
.chip-x{font-size:10px;font-weight:600;padding:3px 8px;border-radius:999px;
   background:rgba(255,255,255,.92);color:var(--fg);border:none;cursor:pointer;
   backdrop-filter:blur(6px);box-shadow:0 1px 4px rgba(0,0,0,.15)}
.chip-x:hover{background:#fff}

/* Generate */
.btn-generate{width:100%;height:48px;border-radius:11px;border:none;
   background:var(--ube-6);color:#fff;font-size:14px;font-weight:700;cursor:pointer;
   display:flex;align-items:center;justify-content:center;gap:8px;
   transition:background .15s,opacity .15s;
   box-shadow:0 3px 12px rgba(84,50,148,.3)}
.btn-generate:hover:not(:disabled){background:var(--ube-7)}
.btn-generate:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
.gen-note{font-size:10.5px;color:var(--fg-subtle);text-align:center}

/* Footer row */
.app-footer-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;
   padding-top:4px;border-top:1px solid var(--border)}
.sample-row{display:flex;align-items:center;gap:8px}
.sample-label{font-size:12px;color:var(--fg-muted)}
.sample-label strong{color:var(--fg)}
.btn-sample{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;
   padding:6px 12px;border-radius:8px;border:1px solid var(--border);
   color:var(--fg-muted);background:var(--bg);cursor:pointer;transition:border-color .15s,color .15s}
.btn-sample:hover{border-color:var(--ube-4);color:var(--ube-5)}
.btn-sample.loaded{border-color:var(--mint-5);color:var(--mint-5)}
.powered-row{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--fg-subtle)}
.powered-link{color:var(--fg-muted);font-weight:700;text-decoration:none}
.powered-link:hover{color:var(--ube-5)}

/* Prompt inline (inside tool card) */
.prompt-inline{display:flex;flex-direction:column;gap:6px;
   border-top:1px solid var(--border);padding-top:14px}
.prompt-label{font-size:10px;font-weight:700;color:var(--fg-subtle);
   text-transform:uppercase;letter-spacing:.07em;display:block}
textarea{background:var(--bg);border:1px solid var(--border);border-radius:9px;
   color:var(--fg);font-size:12.5px;font-family:var(--ff-sans);line-height:1.6;
   padding:9px 12px;resize:none;height:66px;width:100%;outline:none;transition:border-color .15s}
textarea::placeholder{color:var(--fg-subtle);font-size:12px}
textarea:focus{border-color:var(--ube-4)}

/* Prompt format reference box */
.prompt-format-box{border:1px solid var(--border);border-radius:9px;overflow:hidden;margin-top:6px}
.pf-row{display:flex;align-items:flex-start;gap:10px;padding:9px 12px}
.pf-divider{height:1px;background:var(--border);margin:0}
.pf-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
   color:var(--ube-5);background:var(--ube-1);border:1px solid var(--ube-2);
   border-radius:5px;padding:2px 7px;flex:none;margin-top:1px;white-space:nowrap}
.pf-tag-eg{color:var(--fg-muted);background:var(--bg-subtle);border-color:var(--border)}
.pf-text{font-size:11.5px;color:var(--fg-muted);line-height:1.55;font-family:var(--ff-mono)}
.pf-text-eg{font-family:var(--ff-sans);color:var(--fg-subtle)}
select{width:100%;height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--border);
   background:var(--bg-elevated);color:var(--fg);font-size:12.5px;outline:none;cursor:pointer}
select:focus{border-color:var(--ube-4)}
input[type=range]{width:100%;accent-color:var(--ube-5);cursor:pointer}
.range-stops{display:flex;justify-content:space-between;font-size:10px;color:var(--fg-subtle)}





/* ── Responsive ──────────────────────────────────────────────── */
@media(max-width:1000px){
  .hero-tool-layout{grid-template-columns:1fr;gap:36px;padding:40px 24px}
  .hero-h{font-size:40px}
  .hero-left{padding-top:0}
  .hero-video-wrap{min-height:260px;max-height:380px}
}
@media(max-width:640px){
  .upload-widget{grid-template-columns:1fr;padding:14px}
  .hero-h{font-size:32px}
  .topbar{padding:13px 20px}
}


/* ── API key security warning ────────────────────────────────── */
.api-key-warning{display:flex;align-items:flex-start;gap:8px;
   background:#FFF8E6;border:1px solid #F5C842;border-radius:8px;
   padding:9px 12px;margin-top:2px}
.api-key-warning svg{color:#C07A00;flex:none;margin-top:1px}
.api-key-warning span{font-size:11.5px;color:#7A4F00;line-height:1.5}
.api-key-warning strong{color:#5C3800;font-weight:700}


/* ── CTA banner ──────────────────────────────────────────────── */
.cta-wrap{padding:48px 32px}
.cta-banner{background:linear-gradient(135deg,var(--ube-6) 0%,var(--ube-5) 100%);
   border-radius:16px;padding:48px 40px;text-align:center;
   max-width:860px;margin:0 auto;}
.cta-banner h2{font-size:26px;font-weight:800;color:#fff;margin-bottom:10px;line-height:1.2}
.cta-banner p{font-size:15px;color:rgba(255,255,255,.8);margin-bottom:28px;
   line-height:1.6;max-width:540px;margin-left:auto;margin-right:auto}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta-btn-primary{background:#fff;color:var(--ube-7);padding:12px 26px;
   border-radius:8px;font-size:14px;font-weight:700;text-decoration:none;
   display:inline-block;transition:background .15s}
.cta-btn-primary:hover{background:rgba(255,255,255,.9)}
.cta-btn-secondary{background:transparent;color:#fff;
   border:1.5px solid rgba(255,255,255,.45);
   padding:12px 26px;border-radius:8px;font-size:14px;font-weight:600;
   text-decoration:none;display:inline-block;transition:border-color .15s}
.cta-btn-secondary:hover{border-color:rgba(255,255,255,.8)}

/* ── SEO content sections ──────────────────────────────────────── */
.seo-wrap{font-family:var(--ff-sans);color:var(--fg)}

/* Trust bar */
.trust-bar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:28px;
   padding:22px 32px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);
   margin:0 0 0}
.trust-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--fg-muted)}
.trust-dot{width:7px;height:7px;border-radius:50%;background:var(--mint-5);flex:none}

/* Section shells */
.seo-section{max-width:960px;margin:0 auto;padding:56px 32px}
.seo-alt{background:var(--bg-subtle)}
.seo-alt .seo-section{background:transparent}
.seo-h2{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1.15;
   margin-bottom:12px;color:var(--fg)}
.seo-h2.center{text-align:center}
.seo-intro{font-size:17px;color:var(--fg-muted);line-height:1.6;margin-bottom:40px;max-width:600px}
.seo-intro.center{text-align:center;margin-left:auto;margin-right:auto}

/* Steps */
.seo-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.seo-step{text-align:center;padding:28px 20px}
.step-num{width:44px;height:44px;background:var(--ube-2);border-radius:50%;
   display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;
   color:var(--ube-6);margin:0 auto 14px}
.seo-step h3{font-size:17px;font-weight:700;margin-bottom:8px;color:var(--fg)}
.seo-step p{font-size:14px;color:var(--fg-muted);line-height:1.6}

/* 2-col grid */
.seo-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.seo-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:28px}
.seo-alt .seo-section .seo-card{background:#fff}
.seo-card-flat{background:#fff}
.seo-icon{width:42px;height:42px;background:var(--ube-1);border-radius:10px;
   display:grid;place-items:center;margin-bottom:14px;color:var(--ube-5);border:1px solid var(--ube-2)}
.seo-card h3{font-size:16px;font-weight:700;margin-bottom:7px;color:var(--fg)}
.seo-card p{font-size:14px;color:var(--fg-muted);line-height:1.6}

/* Explainer */
.seo-explainer{max-width:680px}
.seo-explainer p{font-size:16px;color:var(--fg-muted);line-height:1.7;margin-bottom:20px}
.seo-explainer h3{font-size:20px;font-weight:700;color:var(--fg);margin:32px 0 10px}

/* FAQ */
.seo-faq{max-width:680px;margin:36px auto 0}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item:last-child{border-bottom:none}
.faq-item summary{font-size:16px;font-weight:600;color:var(--fg);padding:18px 0;
   cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font-size:20px;font-weight:400;color:var(--ube-4)}
.faq-item[open] summary::after{content:'-'}
.faq-ans{font-size:14px;color:var(--fg-muted);line-height:1.7;padding-bottom:18px}
.faq-ans a{color:var(--ube-5);text-decoration:underline;text-underline-offset:2px}

/* CTA Banner */


/* Related tools */


/* Footer */
.seo-footer{max-width:960px;margin:0 auto;padding:32px 32px;
   border-top:1px solid var(--border);display:flex;justify-content:space-between;
   align-items:center;flex-wrap:wrap;gap:14px}
.footer-left{font-size:13px;color:var(--fg-subtle)}
.footer-links{display:flex;gap:20px}
.footer-links a{font-size:13px;color:var(--fg-subtle);text-decoration:none}
.footer-links a:hover{color:var(--ube-5)}

/* Responsive */
@media(max-width:768px){
  .seo-steps,.seo-grid-2,.seo-tools-grid{grid-template-columns:1fr}
  .seo-h2{font-size:24px}
  .trust-bar{gap:16px;padding:18px 20px}
  .seo-section{padding:40px 20px}
  .seo-tools-grid{grid-template-columns:repeat(2,1fr)}
}