  :root{
    --bg:#0b0b0d;
    --card:#141417;
    --card2:#1a1a1f;
    --border:#2a2a31;
    --text:#f2f0ea;
    --muted:#9b98a3;
    --gold:#d4a24e;
    --gold-bright:#e8b968;
    --star-empty:#3a3a44;
    --ok:#3ecf8e;
    --radius:16px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{height:100%}
  body{
    background:radial-gradient(1200px 600px at 50% -10%, #1b1710 0%, var(--bg) 55%);
    color:var(--text);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    min-height:100vh;padding:24px 16px;
  }
  .card{
    width:100%;max-width:540px;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    padding:34px 32px 30px;
    box-shadow:0 30px 60px rgba(0,0,0,.45);
    text-align:center;
    animation:rise .35s ease both;
  }
  @keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .logo{max-width:170px;height:auto;margin-bottom:22px;filter:drop-shadow(0 4px 14px rgba(212,162,78,.25))}
  .step-ind{font-size:13px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
  h1{font-size:25px;line-height:1.3;margin-bottom:10px;font-weight:700}
  h1 .hl{color:var(--gold-bright)}
  h2{font-size:20px;line-height:1.35;margin-bottom:8px;font-weight:700}
  .sub{color:var(--muted);font-size:15.5px;line-height:1.55;margin-bottom:22px}
  .sub b{color:var(--text)}
  .screen{display:none}
  .screen.active{display:block}

  .offer-badge{
    display:inline-block;background:rgba(212,162,78,.12);border:1px solid rgba(212,162,78,.4);
    color:var(--gold-bright);font-size:13.5px;font-weight:700;border-radius:999px;
    padding:7px 16px;margin-bottom:16px;letter-spacing:.01em;
  }
  .hero{border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:22px}
  .hero .sub{margin-bottom:0}

  /* stars */
  .stars{display:flex;justify-content:center;gap:8px;margin:8px 0 6px}
  .star{background:none;border:none;cursor:pointer;padding:4px;line-height:0;transition:transform .12s ease}
  .star:hover{transform:scale(1.14)}
  .star svg{width:44px;height:44px;fill:var(--star-empty);transition:fill .15s ease}
  .star.on svg{fill:var(--gold)}
  .rating-label{min-height:22px;color:var(--gold-bright);font-size:14px;font-weight:600;margin-bottom:4px}

  /* inputs */
  label{display:block;text-align:left;font-size:13px;color:var(--muted);margin:14px 0 6px}
  input[type=text],input[type=email],textarea{
    width:100%;background:var(--card2);border:1px solid var(--border);border-radius:10px;
    color:var(--text);font-size:16px;padding:12px 14px;font-family:inherit;outline:none;
    transition:border-color .15s ease;
  }
  input:focus,textarea:focus{border-color:var(--gold)}
  textarea{min-height:130px;resize:vertical;line-height:1.55}
  .hint{font-size:12.5px;color:var(--muted);text-align:left;margin-top:6px}
  .error{color:#ff7b7b;font-size:13.5px;text-align:left;margin-top:6px;display:none}
  .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

  .btn{
    display:inline-block;width:100%;margin-top:22px;
    background:linear-gradient(180deg,var(--gold-bright),var(--gold));
    color:#191104;font-weight:700;font-size:16px;
    border:none;border-radius:11px;padding:14px 20px;cursor:pointer;
    transition:filter .15s ease,transform .1s ease;text-decoration:none;
  }
  .btn:hover{filter:brightness(1.08)}
  .btn:active{transform:translateY(1px)}
  .btn:disabled{opacity:.4;cursor:not-allowed;filter:none}
  .btn.ghost{background:transparent;border:1px solid var(--border);color:var(--muted);font-weight:600}
  .btn.ghost:hover{border-color:var(--muted);filter:none}
  .back{background:none;border:none;color:var(--muted);font-size:13.5px;margin-top:14px;cursor:pointer;text-decoration:underline}

  .progress{display:flex;gap:6px;justify-content:center;margin-bottom:18px}
  .dot{width:26px;height:4px;border-radius:2px;background:var(--border)}
  .dot.on{background:var(--gold)}

  .inbox-note{
    background:rgba(62,207,142,.08);border:1px solid rgba(62,207,142,.35);
    border-radius:12px;padding:16px;text-align:left;margin:4px 0 6px;
  }
  .inbox-note .t{color:var(--ok);font-weight:700;font-size:15.5px;margin-bottom:6px}
  .inbox-note p{color:var(--muted);font-size:14px;line-height:1.55}
  .inbox-note b{color:var(--text)}

  .favour{border-top:1px solid var(--border);margin-top:24px;padding-top:22px;text-align:left}
  .favour h2,.favour .sub{text-align:left}
  .favour .sub{margin-bottom:14px}
  .tp-stars{color:var(--gold);font-size:26px;letter-spacing:2px;margin-bottom:4px}
  .copy-block{background:var(--card2);border:1px dashed var(--border);border-radius:10px;padding:12px 14px;margin-top:12px}
  .copy-block .lbl{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
  .copy-block .val{font-size:14.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word;max-height:170px;overflow:auto}
  .copy-btn{background:rgba(212,162,78,.15);border:1px solid rgba(212,162,78,.45);color:var(--gold-bright);font-weight:700;font-size:12.5px;border-radius:8px;padding:5px 11px;cursor:pointer;text-transform:none;letter-spacing:0}
  .copy-btn.done{color:var(--ok);border-color:rgba(62,207,142,.5);background:rgba(62,207,142,.1)}
  .steps-list{list-style:none;text-align:left;margin-top:16px;font-size:14.5px;line-height:1.5;color:var(--muted)}
  .steps-list li{display:flex;gap:10px;padding:6px 0}
  .steps-list b{color:var(--text);font-weight:600}
  .num{flex:0 0 22px;height:22px;border-radius:50%;background:rgba(212,162,78,.15);color:var(--gold);font-size:12.5px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}
  .fine{font-size:12.5px;color:var(--muted);margin-top:12px;line-height:1.5;text-align:center}

  .footer{margin-top:20px;font-size:12.5px;color:var(--muted);line-height:1.6}
  .footer a{color:var(--muted);text-decoration:underline}
  .footer a:hover{color:var(--gold)}
  .toast{
    position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);
    background:#111;border:1px solid var(--border);color:var(--text);
    padding:11px 18px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;
    transition:.25s ease;z-index:50;
  }
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
  @media (max-width:480px){
    .card{padding:26px 18px 22px}
    .star svg{width:38px;height:38px}
    h1{font-size:22px}
  }

/* credits.aicommerce.co additions (VIR-1241) */
input[type=tel]{width:100%;background:var(--card2);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:16px;padding:12px 14px;font-family:inherit;outline:none;transition:border-color .15s ease}
input[type=tel]:focus{border-color:var(--gold)}
.opt{color:var(--muted);font-weight:400;font-size:12px}
.benefits{list-style:none;text-align:left;margin:4px 0 6px;font-size:14.5px;line-height:1.5;color:var(--muted)}
.benefits li{display:flex;gap:10px;padding:6px 0}
.benefits b{color:var(--text);font-weight:600}
.disclaimer{font-size:12px;color:var(--muted);line-height:1.5;margin-top:16px;text-align:center;opacity:.85}
.card.wide{max-width:760px}
.cal-wrap{background:#fff;border-radius:12px;overflow:hidden;margin-top:8px;min-height:640px}
.cal-wrap iframe{width:100%;border:none;min-height:640px;display:block}
