/* NeuAI — ecommerce-advisor page styles */

  :root{
    --ink:#120B06;            /* near-black warm hero bg */
    --ink-2:#1D130A;
    --paper:#FFFFFF;
    --paper-2:#FAF7F3;
    --line:#EDE7DF;
    --text:#1B1712;
    --text-dim:#6B6357;
    --muted:#9A9284;
    --orange:#FF7A00;
    --orange-dim:#FFF1E2;
    --orange-line:#FFD8AC;
    --green:#1FAE72;
    --amber:#F2A93B;
    --red:#E5533D;
    --radius-lg:22px;
    --radius-md:16px;
    --radius-sm:11px;
    --shadow:0 10px 30px rgba(20,12,4,.07);
    --shadow-lg:0 20px 50px rgba(20,12,4,.14);
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{background:var(--paper-2);color:var(--text);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;}
  .app{max-width:1180px;margin:0 auto;}
  h1,h2,h3{font-family:'Poppins',sans-serif;margin:0;}
  button{font-family:'Inter',sans-serif;cursor:pointer;}
  .mono{font-family:'Inter',sans-serif;}
  a{color:inherit;}

  /* ---------- shared buttons ---------- */
  .btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:11px;padding:14px 24px;font-weight:700;font-size:14.5px;transition:transform .12s ease,box-shadow .12s ease,opacity .12s;}
  .btn:active{transform:scale(.98);}
  .btn-orange{background:var(--orange);color:#fff;box-shadow:0 10px 24px rgba(255,122,0,.28);}
  .btn-orange:hover{box-shadow:0 14px 30px rgba(255,122,0,.38);}
  .btn-orange:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;}
  .btn-outline-dark{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.28);}
  .btn-outline-dark:hover{border-color:#fff;}
  .btn-outline{background:#fff;color:var(--text);border:1.5px solid var(--line);}
  .btn-outline:hover{border-color:#D8D0C4;}
  .btn-ghost{background:transparent;color:var(--text-dim);border:1.5px solid var(--line);}
  .btn-sm{padding:9px 16px;font-size:13px;border-radius:9px;}

  /* ============ HERO / LANDING ============ */
  .hero{background:radial-gradient(120% 140% at 15% 0%, #2B1908 0%, var(--ink) 55%, #0B0704 100%);color:#fff;padding:60px 24px 0;position:relative;overflow:hidden;}
  .hero-inner{max-width:1180px;margin:0 auto;}
  .hero-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:44px;}
  .brand{display:flex;align-items:center;gap:10px;}
  .brand-mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--orange),#FFB35C);display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:800;color:#1B1712;font-size:16px;}
  .brand-name{font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;letter-spacing:.01em;}
  .brand-tag{font-family:'Inter',sans-serif;font-size:10px;color:rgba(255,255,255,.5);letter-spacing:.04em;}
  .trust-pill{font-family:'Inter',sans-serif;font-size:11.5px;color:#FFD8AC;display:flex;align-items:center;gap:6px;}

  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-bottom:56px;}
  .hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,122,0,.12);border:1px solid rgba(255,122,0,.35);color:#FFB35C;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.05em;padding:6px 12px;border-radius:20px;margin-bottom:20px;}
  .hero h1{font-size:44px;line-height:1.1;font-weight:700;letter-spacing:-.01em;}
  .hero h1 span{color:var(--orange);}
  .hero p.sub{color:rgba(255,255,255,.68);font-size:16px;line-height:1.65;max-width:520px;margin:18px 0 26px;}
  .hero-time{display:flex;align-items:center;gap:8px;font-family:'Inter',sans-serif;font-size:12.5px;color:rgba(255,255,255,.6);margin-bottom:26px;}
  .hero-time .dot{width:6px;height:6px;border-radius:50%;background:var(--green);}
  .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}
  .hero-checklist{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);}
  .hero-checklist span{display:flex;align-items:center;gap:8px;font-size:12.5px;color:rgba(255,255,255,.65);}
  .hero-checklist .ck{width:16px;height:16px;border-radius:50%;background:rgba(31,174,114,.18);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;}

  /* hero visual: abstract ecosystem, not literal illustration */
  .hero-visual{position:relative;height:420px;}
  .scene-svg{width:100%;height:100%;}
  .orbit-card{position:absolute;background:rgba(255,255,255,.06);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:14px 16px;box-shadow:0 20px 40px rgba(0,0,0,.35);}
  .orbit-card .label{font-family:'Inter',sans-serif;font-weight:600;font-size:9.5px;color:rgba(255,255,255,.5);letter-spacing:.04em;}
  .orbit-card .val{font-family:'Poppins',sans-serif;font-weight:700;font-size:19px;margin-top:3px;}
  .orbit-card .delta{font-size:10.5px;color:var(--green);margin-top:2px;}

  .hero-bottom-strip{display:flex;gap:0;border-top:1px solid rgba(255,255,255,.08);padding:20px 0;}
  .strip-item{flex:1;display:flex;align-items:center;gap:10px;justify-content:center;font-size:12px;color:rgba(255,255,255,.55);}
  .strip-item svg{width:16px;height:16px;color:var(--orange);flex-shrink:0;}

  /* ============ WIZARD SHELL ============ */
  .wizard-shell{max-width:1180px;margin:0 auto;padding:34px 24px 90px;display:grid;grid-template-columns:260px 1fr;gap:28px;}
  .wizard-shell.no-sidebar{display:block;}

  /* top stepper */
  .stepper-wrap{grid-column:1 / -1;margin-bottom:6px;}
  .stepper{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 22px;overflow-x:auto;}
  .step-pip{display:flex;align-items:center;gap:8px;flex-shrink:0;}
  .step-pip .circle{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;background:var(--paper-2);color:var(--muted);border:1.5px solid var(--line);flex-shrink:0;}
  .step-pip.active .circle{background:var(--orange);border-color:var(--orange);color:#fff;}
  .step-pip.done .circle{background:var(--green);border-color:var(--green);color:#fff;}
  .step-pip .lbl{font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap;}
  .step-pip.active .lbl{color:var(--text);}
  .step-pip.done .lbl{color:var(--text-dim);}
  .step-connector{width:20px;height:1.5px;background:var(--line);flex-shrink:0;margin:0 2px;}

  /* sidebar */
  .sidebar{align-self:start;position:sticky;top:24px;display:flex;flex-direction:column;gap:14px;}
  .side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;}
  .side-title{font-size:11.5px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;}
  .ring-wrap{display:flex;flex-direction:column;align-items:center;}
  .ring{position:relative;width:120px;height:120px;}
  .ring svg{transform:rotate(-90deg);}
  .ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
  .ring-num{font-family:'Poppins',sans-serif;font-weight:800;font-size:24px;}
  .ring-sub{font-size:10px;color:var(--muted);margin-top:2px;text-align:center;}
  .side-meta{margin-top:14px;display:flex;flex-direction:column;gap:8px;width:100%;}
  .side-meta-row{display:flex;justify-content:space-between;font-size:12px;color:var(--text-dim);}
  .side-meta-row b{color:var(--text);font-weight:700;}
  .help-card{background:var(--ink);color:#fff;border-radius:16px;padding:18px 20px;}
  .help-card .h{font-family:'Poppins',sans-serif;font-weight:700;font-size:13.5px;margin-bottom:6px;}
  .help-card .p{font-size:11.5px;color:rgba(255,255,255,.6);line-height:1.5;margin-bottom:14px;}

  /* main content card */
  .content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:34px 36px;box-shadow:var(--shadow);}
  .eyebrow-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
  .eyebrow{font-family:'Inter',sans-serif;font-size:11px;color:var(--orange);letter-spacing:.06em;text-transform:uppercase;}
  .step-h{font-size:25px;font-weight:700;margin:0 0 6px;}
  .step-sub{color:var(--text-dim);font-size:14px;line-height:1.55;margin:0 0 26px;}

  /* form fields */
  .field{margin-bottom:16px;}
  .field label{display:block;font-size:12.5px;font-weight:700;color:var(--text-dim);margin-bottom:7px;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  input[type=text],input[type=email],input[type=tel],input[type=url]{
    width:100%;background:var(--paper-2);border:1.5px solid var(--line);border-radius:11px;padding:13px 15px;
    font-family:'Inter',sans-serif;font-size:14.5px;color:var(--text);outline:none;transition:border-color .15s,background .15s;
  }
  input:focus{border-color:var(--orange);background:#fff;}
  input::placeholder{color:var(--muted);}
  .error-msg{color:var(--red);font-size:12px;margin-top:10px;font-family:'Inter',sans-serif;}

  /* selectable card grid */
  .opt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;}
  .opt-card{position:relative;border:1.5px solid var(--line);background:var(--paper-2);border-radius:var(--radius-md);padding:18px 16px;cursor:pointer;transition:all .15s;user-select:none;}
  .opt-card:hover{border-color:#E8CBA0;background:#fff;}
  .opt-card.selected{border-color:var(--orange);background:var(--orange-dim);}
  .opt-icon{width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;margin-bottom:12px;color:var(--text);}
  .opt-card.selected .opt-icon{background:var(--orange);border-color:var(--orange);color:#fff;}
  .opt-icon svg{width:19px;height:19px;}
  .opt-name{font-weight:700;font-size:13.5px;}
  .opt-check{position:absolute;top:12px;right:12px;width:19px;height:19px;border-radius:50%;border:1.5px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;color:transparent;}
  .opt-card.selected .opt-check{background:var(--orange);border-color:var(--orange);color:#fff;}

  .btn-row{display:flex;justify-content:space-between;align-items:center;margin-top:30px;}

  /* ============ STEP 5: AI recommendation dashboard ============ */
  .score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px;}
  .score-card{background:var(--paper-2);border:1px solid var(--line);border-radius:16px;padding:18px 14px;text-align:center;}
  .score-ring{position:relative;width:84px;height:84px;margin:0 auto 10px;}
  .score-ring svg{transform:rotate(-90deg);}
  .score-ring-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:800;font-size:17px;}
  .score-name{font-size:11px;font-weight:700;color:var(--text-dim);line-height:1.3;}

  .rec-list{display:flex;flex-direction:column;gap:12px;}
  .rec-card{border:1.5px solid var(--line);border-radius:16px;padding:18px 20px;background:#fff;}
  .rec-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;}
  .rec-title{font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;}
  .priority-tag{font-family:'Inter',sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.04em;padding:4px 9px;border-radius:20px;white-space:nowrap;text-transform:uppercase;}
  .priority-high{background:#FCE7E3;color:var(--red);}
  .priority-medium{background:#FDF0DA;color:#B8730E;}
  .priority-low{background:#E7F5EE;color:var(--green);}
  .rec-meta-row{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0 10px;font-size:12px;color:var(--text-dim);}
  .rec-meta-row b{color:var(--text);}
  .rec-why{font-size:12.5px;color:var(--text-dim);line-height:1.55;background:var(--paper-2);border-radius:10px;padding:10px 13px;}

  /* ============ STEP 6: roadmap ============ */
  .roadmap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
  .phase-col{border:1.5px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;}
  .phase-col.priority{border-color:var(--orange);}
  .phase-head{padding:16px 16px 14px;color:#fff;position:relative;}
  .phase-num-badge{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:800;font-size:13px;margin-bottom:10px;}
  .phase-title{font-family:'Poppins',sans-serif;font-weight:700;font-size:14px;}
  .phase-time{font-family:'Inter',sans-serif;font-size:10px;opacity:.75;margin-top:3px;}
  .phase-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:9px;}
  .phase-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim);}
  .phase-item .d{width:5px;height:5px;border-radius:50%;background:var(--muted);flex-shrink:0;}

  /* ============ STEP 7: report preview ============ */
  .report-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:start;}
  .report-section{margin-bottom:20px;}
  .report-section h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin-bottom:10px;}
  .check-line{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--text);padding:6px 0;border-bottom:1px solid var(--line);}
  .check-line:last-child{border-bottom:none;}
  .check-line .c{color:var(--green);flex-shrink:0;}

  .pdf-mock{background:var(--ink);border-radius:18px;padding:20px;color:#fff;}
  .pdf-page{background:#fff;color:var(--text);border-radius:12px;padding:26px 22px;min-height:340px;}
  .pdf-page .brand-mark{width:26px;height:26px;font-size:12px;}
  .pdf-title{font-family:'Poppins',sans-serif;font-weight:800;font-size:17px;margin:16px 0 4px;}
  .pdf-sub{font-size:11px;color:var(--text-dim);margin-bottom:18px;}
  .pdf-row{display:flex;justify-content:space-between;font-size:11px;color:var(--text-dim);padding:6px 0;border-bottom:1px dashed var(--line);}
  .pdf-score-badge{display:inline-flex;align-items:center;gap:6px;background:var(--orange-dim);color:#B8560C;font-family:'Inter',sans-serif;font-size:11px;padding:5px 11px;border-radius:20px;margin-top:14px;}
  .pdf-controls{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-family:'Inter',sans-serif;font-size:10.5px;color:rgba(255,255,255,.55);}

  .report-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
  .toast{margin-top:14px;font-family:'Inter',sans-serif;font-size:11.5px;color:var(--green);}
  .toast.err{color:var(--red);}

  /* ============ STEP 8: complete ============ */
  .complete-wrap{text-align:center;padding:20px 0 6px;}
  .complete-badge{width:76px;height:76px;border-radius:50%;background:#E7F5EE;color:var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;}
  .complete-badge svg{width:34px;height:34px;}
  .complete-checks{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin:26px 0 30px;}
  .complete-check{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-dim);}
  .complete-check .c{color:var(--green);}
  .complete-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

  @media (max-width:900px){
    .wizard-shell{grid-template-columns:1fr;}
    .sidebar{position:static;flex-direction:row;flex-wrap:wrap;}
    .side-card{flex:1;min-width:220px;}
    .hero-grid{grid-template-columns:1fr;}
    .hero-visual{height:280px;}
    .score-grid{grid-template-columns:repeat(2,1fr);}
    .roadmap-grid{grid-template-columns:repeat(2,1fr);}
    .report-grid{grid-template-columns:1fr;}
    .content-card{padding:24px 20px;}
    h1.hero-h1,.hero h1{font-size:32px;}
  }

