/* apply.css — форма заявки на регистрацию компании в США (edeal.ai) */
:root{
  --ap-primary:#2458ff; --ap-teal:#00a6a6;
  --ap-text:#0f172a; --ap-muted:#4f5d78; --ap-line:#dbe5f5; --ap-surface:#fff;
  --ap-ok:#15803d; --ap-warn:#b45309; --ap-danger:#b91c1c;
}
.ap-wrap{max-width:960px;margin:0 auto;padding:0 20px 80px}
.ap-hero{padding:44px 0 20px}
.ap-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 14px;border-radius:999px;
  background:rgba(36,88,255,.08);border:1px solid rgba(36,88,255,.2);color:var(--ap-primary);
  font-size:13px;font-weight:600;margin-bottom:18px}
.ap-eyebrow .d{width:7px;height:7px;border-radius:9px;background:var(--ap-primary)}
.ap-hero h1{font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.02em;color:var(--ap-text);margin:0 0 14px;font-weight:800}
.ap-hero h1 span{color:var(--ap-primary)}
.ap-hero p.lead{font-size:17px;line-height:1.6;color:var(--ap-muted);max-width:640px;margin:0}

/* Layout: form + sticky summary */
.ap-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}

/* Progress */
.ap-progress{margin:8px 0 22px}
.ap-progress-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.ap-progress-step{font-size:13px;font-weight:700;color:var(--ap-primary)}
.ap-progress-pct{font-size:13px;color:var(--ap-muted)}
.ap-progress-track{height:8px;background:#eef2fb;border-radius:99px;overflow:hidden}
.ap-progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--ap-primary),var(--ap-teal));
  border-radius:99px;transition:width .45s cubic-bezier(.4,0,.2,1)}
.ap-progress-dots{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
.ap-dot{flex:1;min-width:40px;height:4px;border-radius:99px;background:#e6ecf7}
.ap-dot.done{background:var(--ap-teal)} .ap-dot.active{background:var(--ap-primary)}

/* Card / step */
.ap-card{background:var(--ap-surface);border:1px solid var(--ap-line);border-radius:22px;
  padding:28px;box-shadow:0 4px 24px rgba(36,88,255,.06),0 1px 3px rgba(0,0,0,.03)}
.ap-step-h{font-size:20px;font-weight:800;color:var(--ap-text);margin:0 0 4px}
.ap-step-sub{font-size:14px;color:var(--ap-muted);margin:0 0 22px;line-height:1.5}
.ap-field{margin-bottom:18px}
.ap-field > label{display:block;font-size:14px;font-weight:700;color:var(--ap-text);margin-bottom:7px}
.ap-field .req{color:var(--ap-danger)}
.ap-hint{font-size:12.5px;color:var(--ap-muted);margin-top:6px;line-height:1.45}
.ap-input,.ap-select,.ap-textarea{width:100%;box-sizing:border-box;padding:12px 14px;font-size:15px;
  font-family:inherit;color:var(--ap-text);background:#fff;border:1.5px solid var(--ap-line);border-radius:12px;outline:none;transition:border-color .15s}
.ap-input:focus,.ap-select:focus,.ap-textarea:focus{border-color:var(--ap-primary)}
.ap-textarea{resize:vertical;min-height:88px}
.ap-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ap-nopay-wrap{margin-top:16px;padding-top:16px;border-top:1px dashed var(--ap-line);text-align:center}
.ap-nopay-note{font-size:12.5px;color:var(--ap-muted);margin-top:8px;line-height:1.45}
.ap-sub-h{font-size:15px;font-weight:800;color:var(--ap-text);margin:22px 0 12px}
.ap-verified{color:var(--ap-ok);font-size:13px;font-weight:700;margin-top:6px}
.ap-code-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ap-code-row .ap-input{flex:1;min-width:180px}
.ap-linkbtn{background:none;border:none;color:var(--ap-primary);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;padding:4px 6px}
.ap-phone{display:flex;gap:10px}
.ap-phone-cc-wrap{flex:0 0 130px}
.ap-phone-cc{padding-left:10px;padding-right:6px}
.ap-phone .ap-input{flex:1}
/* Сайдбар сопровождения */
.ap-support{margin-top:18px;padding:18px;border:1px solid var(--ap-line);border-radius:16px;background:#f7faff}
.ap-support-h{font-size:14px;font-weight:800;color:var(--ap-text);margin-bottom:6px}
.ap-support p{font-size:13px;color:var(--ap-muted);line-height:1.5;margin:0 0 8px}
.ap-support-price{font-weight:800;color:var(--ap-text)!important;font-size:14px}
.ap-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.ap-invalid{border-color:var(--ap-danger)!important}
.ap-err{color:var(--ap-danger);font-size:12.5px;margin-top:6px;display:none}
.ap-err.show{display:block}

/* Option cards (radio-like) */
.ap-options{display:grid;gap:10px}
.ap-opt{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1.5px solid var(--ap-line);
  border-radius:14px;cursor:pointer;transition:all .15s;background:#fff}
.ap-opt:hover{border-color:var(--ap-primary);background:#f5f8ff}
.ap-opt.sel{border-color:var(--ap-primary);background:#f0f4ff}
.ap-opt .mark{flex:0 0 auto;width:20px;height:20px;border-radius:50%;border:2px solid var(--ap-line);margin-top:1px;position:relative}
.ap-opt.sel .mark{border-color:var(--ap-primary)}
.ap-opt.sel .mark::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ap-primary)}
.ap-opt .body{flex:1}
.ap-opt .t{font-size:15px;font-weight:700;color:var(--ap-text)}
.ap-opt .b{font-size:13px;color:var(--ap-muted);margin-top:3px;line-height:1.45}
.ap-opt .price{margin-left:auto;font-size:14px;font-weight:800;color:var(--ap-primary);white-space:nowrap}
.ap-opt .price.free{color:var(--ap-ok)}

/* Toggle helper (quiz/generator) */
.ap-helper{margin-top:8px}
.ap-helper-btn{display:inline-flex;align-items:center;gap:7px;background:rgba(0,166,166,.1);
  color:#0f766e;border:1px solid rgba(0,166,166,.25);border-radius:10px;padding:8px 13px;
  font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.ap-helper-btn:hover{background:rgba(0,166,166,.16)}
.ap-helper-panel{display:none;margin-top:12px;padding:18px;border:1px dashed var(--ap-primary);
  border-radius:14px;background:#fafcff}
.ap-helper-panel.open{display:block;animation:apIn .25s ease}
@keyframes apIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.ap-mini-q{font-size:14px;font-weight:700;color:var(--ap-text);margin:0 0 10px}
.ap-mini-opts{display:grid;gap:8px;margin-bottom:6px}
.ap-mini-opt{padding:10px 13px;border:1.5px solid var(--ap-line);border-radius:10px;cursor:pointer;
  font-size:13.5px;color:var(--ap-text);background:#fff;transition:all .15s}
.ap-mini-opt:hover{border-color:var(--ap-primary);background:#f0f4ff}
.ap-result{padding:14px 16px;border-radius:12px;background:#f0fdf4;border:1px solid #bbf7d0;font-size:14px;color:#14532d}
.ap-result b{color:#166534}
.ap-namegrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ap-namechip{padding:8px 13px;border:1.5px solid var(--ap-line);border-radius:999px;font-size:13.5px;
  cursor:pointer;background:#fff;transition:all .15s}
.ap-namechip:hover{border-color:var(--ap-primary);background:#f0f4ff}

/* State picker grid */
.ap-state-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;max-height:260px;overflow:auto;padding:2px}
.ap-state-btn{padding:10px 8px;border:1.5px solid var(--ap-line);border-radius:10px;background:#fff;
  font-size:13px;font-weight:600;color:var(--ap-text);cursor:pointer;text-align:center;transition:all .15s}
.ap-state-btn:hover{border-color:var(--ap-primary);background:#f0f4ff}
.ap-state-btn.sel{border-color:var(--ap-primary);background:#f0f4ff}
.ap-state-fee{display:block;font-size:11px;color:var(--ap-muted);margin-top:2px}

/* Owners */
.ap-owner{border:1px solid var(--ap-line);border-radius:16px;padding:18px;margin-bottom:14px;background:#fbfcff}
.ap-owner-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.ap-owner-h .n{font-size:15px;font-weight:800;color:var(--ap-text)}
.ap-owner-rm{background:none;border:none;color:var(--ap-danger);font-size:13px;cursor:pointer;font-weight:600}
.ap-count{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.ap-count button{width:38px;height:38px;border-radius:10px;border:1.5px solid var(--ap-line);background:#fff;
  font-size:20px;cursor:pointer;color:var(--ap-primary);font-weight:700}
.ap-count button:disabled{opacity:.4;cursor:not-allowed}
.ap-count .val{font-size:18px;font-weight:800;min-width:28px;text-align:center}
.ap-pct-note{font-size:13px;font-weight:700;margin-top:4px}
.ap-pct-note.ok{color:var(--ap-ok)} .ap-pct-note.bad{color:var(--ap-warn)}

/* Nav */
.ap-nav{display:flex;justify-content:space-between;gap:12px;margin-top:26px}
.ap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:12px;
  font-weight:700;font-size:15px;cursor:pointer;font-family:inherit;border:1.5px solid transparent;transition:all .15s}
.ap-btn.primary{background:var(--ap-primary);color:#fff}
.ap-btn.primary:hover{background:#1c46d6}
.ap-btn.ghost{background:#fff;color:var(--ap-text);border-color:var(--ap-line)}
.ap-btn.ghost:hover{border-color:var(--ap-primary);color:var(--ap-primary)}
.ap-btn:disabled{opacity:.55;cursor:not-allowed}

/* Summary */
.ap-summary{position:sticky;top:90px;background:var(--ap-surface);border:1px solid var(--ap-line);
  border-radius:20px;padding:22px}
.ap-summary h3{font-size:15px;font-weight:800;color:var(--ap-text);margin:0 0 14px}
.ap-sum-line{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:8px 0;border-top:1px solid #eef2fb;color:var(--ap-muted)}
.ap-sum-line:first-of-type{border-top:none}
.ap-sum-line .amt{font-weight:700;color:var(--ap-text);white-space:nowrap}
.ap-sum-line.tbd .amt{color:var(--ap-warn);font-weight:600}
.ap-sum-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:14px;border-top:2px solid var(--ap-line)}
.ap-sum-total .l{font-size:14px;font-weight:700;color:var(--ap-text)}
.ap-sum-total .v{font-size:26px;font-weight:900;color:var(--ap-primary)}
.ap-sum-note{font-size:12px;color:var(--ap-muted);margin-top:12px;line-height:1.45}
.ap-badge-1{display:inline-block;background:#fff3e0;color:var(--ap-warn);font-size:11.5px;font-weight:700;
  padding:3px 9px;border-radius:99px;margin-bottom:12px}

/* Restricted / notice */
.ap-notice{padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.5;margin-top:10px}
.ap-notice.danger{background:#fef2f2;border:1px solid #fecaca;color:var(--ap-danger)}
.ap-notice.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}

/* Done screen */
.ap-pay-box{text-align:center;padding:10px 0}
.ap-pay-total{font-size:44px;font-weight:900;color:var(--ap-primary);margin:6px 0 2px}

@media(max-width:860px){
  .ap-layout{grid-template-columns:1fr}
  .ap-summary{position:static;order:-1}
  .ap-row,.ap-row-3{grid-template-columns:1fr}
}
