:root {
  --match-content-max: min(920px, calc(100vw - 48px));
}

.match-panel svg { max-width: none; }

.page {
  min-height: 100vh;
}

.landing-root {
  min-height: 100vh;
}

.match-shell {
  display: none;
}

.match-back-home-top {
  position: fixed;
  top: 16px;
  left: 24px;
  z-index: 60;
}

.page.matching-open {
  width: 100%;
  min-height: 100vh;
  background: #fff;
  display: flex;
  flex-direction: column;
}

.page.matching-open .landing-root,
.page.matching-open .site-header,
.page.matching-open .hero,
.page.matching-open .section,
.page.matching-open .about-section,
.page.matching-open .site-footer,
.page.matching-open .mobile-nav {
  display: none !important;
}

.page.matching-open .match-shell {
  display: block;
  width: 100%;
  padding: 72px 24px 48px;
  box-sizing: border-box;
}

body:has(.page.matching-open) {
  background: #fff;
}

body:has(.modal-overlay.open) .page:not(.matching-open) {
  pointer-events: none !important;
}
body:has(.modal-overlay.open) .modal-overlay,
body:has(.modal-overlay.open) .modal-overlay * {
  pointer-events: auto !important;
}

    .match-panel{

      width:min(100%,var(--match-content-max));margin:28px auto 0;padding:0 0 28px;border:0;border-radius:18px;

      background:#fff;box-shadow:0 18px 48px rgba(30,90,200,.12);

      text-align:left;display:none;overflow:hidden;position:relative;

    }

    .match-panel.open{display:block}

    .page.matching-open{
      width:100%;
      height:auto;
      min-height:100vh;
      aspect-ratio:auto;
      background:#fff;
      background-image:none;
      display:flex;
      flex-direction:column;
      align-items:stretch;
      overflow:auto;
    }

    body:has(.page.matching-open){
      display:block;
      overflow:auto;
      background:#fff;
      background-image:none;
      place-items:initial;
    }

    body:has(.page.matching-open) .viewport{
      width:100%;
      height:auto;
      min-height:100vh;
      display:block;
      place-items:initial;
    }

    .page.matching-open .hotspot{display:none!important}
    .page.matching-open .home-editable,
    .page.matching-open .home-stage,
    .page.matching-open .home-bg,
    .page.matching-open .home-stage-wrap,
    .page.matching-open .bg-dim-layer,
    .page.matching-open .trust-info{display:none!important}

    .page.matching-open .eyebrow,

    .page.matching-open .headline,

    .page.matching-open .hero-copy,

    .page.matching-open .cta-wrap,

    .page.matching-open .flow-area{display:none}

    .page.matching-open .brand-wrap,
    .page.matching-open .top-actions{display:none!important}

    .page.matching-open .topbar{
      display:flex!important;
      height:58px;
      justify-content:flex-end;
      background:#fff;
      border:0;
      box-shadow:none;
      border-bottom:1px solid #eef2f7;
      flex-shrink:0;
    }

    .page.matching-open .hero-wrap{
      position:static;inset:auto;pointer-events:auto;
      flex:1;display:flex;flex-direction:column;align-items:center;
      justify-content:flex-start;padding:54px 40px 40px;background:#fff
    }

    .page.matching-open .middle-scale,
    .page.matching-open .hero{pointer-events:auto;height:auto}

    

    .page.matching-open .footer{display:none}

    .match-panel-banner{

      height:62px;background:linear-gradient(135deg,#7eb6ff 0%,#8fc0ff 45%,#6aa8ff 100%);

      position:relative;overflow:hidden;

    }

    .match-panel-banner::before{

      content:"";position:absolute;inset:0;

      background:

        radial-gradient(ellipse 120% 80% at 10% 120%, rgba(255,255,255,.35), transparent 55%),

        radial-gradient(ellipse 90% 70% at 90% 0%, rgba(255,255,255,.28), transparent 50%),

        repeating-linear-gradient(-18deg, transparent 0 14px, rgba(255,255,255,.1) 14px 16px);

      opacity:.95;

    }

    .match-panel-icon{

      width:64px;height:64px;border-radius:50%;background:#fff;border:3px solid #fff;

      box-shadow:0 10px 24px rgba(30,90,200,.22);

      display:flex;align-items:center;justify-content:center;

      position:absolute;left:50%;top:30px;transform:translateX(-50%);z-index:2;

    }

    .match-panel-icon svg{width:30px;height:30px;stroke:#1e6fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

    .match-panel-head{margin:42px 40px 18px;text-align:center}

    .match-panel-head h2{margin:0;color:#0f172a;font-size:22px;line-height:1.3;letter-spacing:.4px;font-weight:800}

    .match-panel-head p{margin:8px 0 0;color:#94a3b8;font-size:13px;font-weight:600;letter-spacing:.2px}

    .match-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;padding:0 40px}

    .match-field{display:flex;flex-direction:column;gap:7px}

    .match-field label{font-size:12px;color:#64748b;font-weight:700}

    .match-field input,.match-field select{

      height:42px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;padding:0 12px;

      color:#5f6471;font-size:10px;font-weight:400;outline:none;transition:border-color .15s,box-shadow .15s;

    }

    .match-field input::placeholder,.match-field textarea::placeholder{

      color:#b8c2d0;font-weight:400;opacity:1;font-size:10px;

    }

    .match-field input::-webkit-input-placeholder{color:#b8c2d0;font-weight:400;font-size:10px}

    .match-field input::-moz-placeholder{color:#b8c2d0;font-weight:400;opacity:1;font-size:10px}

    .match-field input:focus,.match-field select:focus{border-color:#1e6fff;box-shadow:0 0 0 3px rgba(30,111,255,.14)}

    .match-field input:disabled,.match-field select:disabled,
    .match-field input[readonly],.match-field select.is-locked{

      background:#eef2f7!important;color:#98a2b2!important;border-color:#e2e8f0!important;

      cursor:not-allowed;opacity:1;-webkit-text-fill-color:#98a2b2;

      box-shadow:none!important;

    }

    .match-field select:disabled:focus,.match-field select.is-locked:focus{border-color:#e2e8f0;box-shadow:none}

    .match-field.is-locked-field label::after{content:"（已锁定）";font-weight:600;color:#94a3b8;font-size:11px;margin-left:4px}

    .match-input-icon{

      position:relative;display:flex;align-items:center;

    }

    .match-input-icon svg{

      position:absolute;left:12px;width:16px;height:16px;stroke:#94a3b8;fill:none;stroke-width:1.8;pointer-events:none;

    }

    .match-input-icon input{padding-left:36px;width:100%}

    .spec-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px;padding-top:2px}

    .spec-fields .match-field:first-child:nth-last-child(4),

    .spec-fields .match-field:first-child:nth-last-child(4) ~ .match-field{grid-column:auto}

    .spec-fields .match-field.wide{grid-column:1/-1}

    .match-action{margin-top:20px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;align-items:center;padding:0 40px}

    .match-submit{

      appearance:none;border:1.5px solid #5b9cff;min-width:220px;height:48px;border-radius:999px;padding:0 28px;

      background:#fff;

      color:#5b9cff;font-size:16px;font-weight:800;letter-spacing:.6px;cursor:pointer;

      box-shadow:0 6px 16px rgba(91,156,255,.12);

      display:inline-flex;align-items:center;justify-content:center;gap:8px;

    }

    .match-submit svg{width:18px;height:18px;stroke:#5b9cff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

    .match-submit:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(91,156,255,.18);border-color:#3d8aff;color:#3d8aff}

    .match-submit:hover svg{stroke:#3d8aff}

    .match-submit:disabled{opacity:.65;cursor:not-allowed;transform:none}

    .match-back-home{

      appearance:none;border:1px solid #c5d4e8;height:48px;padding:0 18px;border-radius:8px;

      background:linear-gradient(180deg,#f7fbff 0%, #eef5fc 100%);color:#24569b;font-size:15px;font-weight:800;letter-spacing:.4px;

      cursor:pointer;box-shadow:0 8px 18px rgba(37,78,140,.10);transition:.2s ease;

    }

    .match-back-home:hover{transform:translateY(-1px);border-color:#7aa5d8;color:#1d4f8c;box-shadow:0 12px 22px rgba(37,78,140,.14)}

    .page.matching-open .match-back-home-top{display:inline-flex;align-items:center}

    .match-back-home-top{

      display:none;appearance:none;height:38px;padding:0 16px;border-radius:999px;font-size:13px;font-weight:800;

      letter-spacing:.5px;cursor:pointer;transition:.2s ease;font-family:inherit;white-space:nowrap;

      color:#1e6fff;border:1px solid #bfdbfe;background:#fff;

      box-shadow:0 6px 16px rgba(30,111,255,.12);

    }

    .match-back-home-top:hover{transform:translateY(-1px);border-color:#1e6fff;color:#1d4ed8;box-shadow:0 10px 20px rgba(30,111,255,.16)}

    .match-result-panel{

      width:auto;margin:18px 28px 0;padding:18px 20px 20px;border:1px solid #e2e8f0;border-radius:14px;

      background:#f8fafc;box-shadow:none;text-align:left;display:none;

    }

    .match-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}

    .match-result-head h3{margin:0;font-size:18px;color:#132943;letter-spacing:.4px}

    .match-result-meta{font-size:12px;color:#6b7c90;font-weight:700}

    .match-result-status{font-size:13px;color:#355d89;line-height:1.6;margin:0 0 12px;font-weight:700}

    .match-result-status.is-error{color:#b03a2e}

    .match-result-table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}

    .match-result-table{width:100%;border-collapse:collapse;font-size:13px;min-width:960px}

    .match-result-table th,.match-result-table td{padding:10px 14px;border-bottom:1px solid #eef2f7;text-align:left;color:#243b5a}

    .match-result-table th{background:#f5f8fc;font-size:12px;color:#5e7288;font-weight:800;white-space:nowrap}

    .match-result-table tr:last-child td{border-bottom:0}

    .match-empty{text-align:center;color:#7b8ea4;padding:22px 12px!important}

    .is-ok{color:#167046;font-weight:800}

    .is-warn{color:#a96907;font-weight:800}

    .match-pager{

      display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;flex-wrap:wrap;

    }

    .match-pager-btn{

      appearance:none;height:34px;padding:0 14px;border-radius:6px;border:1px solid #d3dfeb;

      background:#fff;color:#355d89;font-size:13px;font-weight:800;cursor:pointer;

    }

    .match-pager-btn:hover:not(:disabled){border-color:#7aa5d8;color:#1d4f8c}

    .match-pager-btn:disabled{opacity:.45;cursor:not-allowed}

    .match-pager-info{font-size:13px;color:#5e7288;font-weight:700}
.match-hole-panel{
      grid-column:1/-1;display:none;margin-top:2px;padding:14px 16px 16px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;
    }
    .match-hole-panel.open{display:block}
    .match-hole-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}
    .match-hole-title{font-size:14px;font-weight:800;color:#132943}
    .match-hole-help{font-size:12px;color:#2563b8;font-weight:700;text-decoration:none}
    .match-hole-help:hover{text-decoration:underline}
    .match-hole-template{
      width:100%;max-width:280px;height:40px;margin-bottom:12px;border:1px solid #d8e3ef;border-radius:7px;padding:0 12px;
      color:#132943;font-size:13px;font-weight:700;background:#fff;
    }
    .match-hole-table-wrap{overflow:visible;border:1px solid #e2e8f0;border-radius:8px;background:#fff}
    .match-hole-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}
    .match-hole-table th,.match-hole-table td{padding:8px 10px;border-bottom:1px solid #eef2f7;text-align:center;color:#243b5a}
    .match-hole-table th{background:#f5f8fc;font-size:11px;color:#5e7288;font-weight:800;white-space:nowrap}
    .match-hole-table th:nth-child(1),.match-hole-table td:nth-child(1){width:36px}
    .match-hole-table th:nth-child(2),.match-hole-table td:nth-child(2){width:108px}
    .match-hole-table th:nth-child(3),.match-hole-table td:nth-child(3),
    .match-hole-table th:nth-child(4),.match-hole-table td:nth-child(4),
    .match-hole-table th:nth-child(5),.match-hole-table td:nth-child(5),
    .match-hole-table th:nth-child(6),.match-hole-table td:nth-child(6){width:88px}
    .match-hole-table th:nth-child(7),.match-hole-table td:nth-child(7){width:72px}
    .match-hole-table th:nth-child(8),.match-hole-table td:nth-child(8){width:72px}
    .match-hole-table input,.match-hole-table select{
      width:100%;min-width:0;height:34px;border:1px solid #d8e3ef;border-radius:6px;padding:0 8px;font-size:12px;font-weight:700;color:#132943;box-sizing:border-box;
    }
    .match-hole-del{
      appearance:none;border:1px solid #f0c9c9;background:#fff5f5;color:#b03a2e;height:32px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:800;cursor:pointer;
    }
    .match-hole-empty{text-align:center;color:#7b8ea4;padding:18px 10px!important}




.toast{

      position:fixed;left:50%;bottom:72px;transform:translateX(-50%) translateY(20px);background:rgba(19,41,67,.93);color:#fff;

      padding:13px 22px;border-radius:999px;font-size:14px;letter-spacing:.5px;opacity:0;pointer-events:none;transition:.22s ease;

      box-shadow:0 16px 36px rgba(0,0,0,.16)

    }

    .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media (max-width:1100px) and (min-width:721px){
  .match-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .spec-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1280px){
  .match-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .spec-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:840px){
  .match-panel{padding:0 0 20px}
  .match-panel-head{margin:36px 18px 16px}
  .match-grid{grid-template-columns:1fr;gap:13px;padding:0 18px}
  .spec-fields{grid-template-columns:1fr;gap:13px}
  .match-action{padding:0 18px}
  .match-result-panel{margin:16px 18px 0}
  .match-submit{width:100%}
}

/* modal CSS vars fallback */

.modal-overlay, .modal-box {

  --panel:#ffffff; --border2:rgba(59,100,160,0.18); --border:rgba(59,100,160,0.10);

  --bg:#f0f4f8; --bg2:#f7f9fc; --bg3:#eef2f7; --text:#1a2e4a; --text2:#3d5674; --text3:#7a90a8;

  --blue:#2563b8; --blue-dim:rgba(37,99,184,0.09); --blue-glow:rgba(37,99,184,0.18);

  --gold:#c87a10; --success:#16a34a;

}



.modal-overlay {

  display:none; position:fixed; inset:0;

  background:rgba(15,30,55,0.52); z-index:200;

  align-items:center; justify-content:center; padding:20px;

  backdrop-filter:blur(4px);

  /* 与首页画布 --home-scale 解耦：弹层尺寸仅相对视口，使用固定 px */
  font-size:14px;

}

.modal-overlay.open { display:flex; }

    /* 登录弹层打开时禁止首页热点抢点击 */
    body:has(.modal-overlay.open) .hotspot,
    body:has(.modal-overlay.open) .page:not(.matching-open) {
      pointer-events:none !important;
    }
    body:has(.modal-overlay.open) .modal-overlay,
    body:has(.modal-overlay.open) .modal-overlay * {
      pointer-events:auto !important;
    }

.modal-box {

  background:var(--panel); border-radius:12px; border:1px solid var(--border2);

  width:100%; max-width:480px; max-height:min(90vh,720px); overflow-y:auto;

  box-shadow:0 20px 60px rgba(37,99,184,0.14);

  animation:modalIn 0.24s ease;

  transform:none; /* 勿继承首页 stage 的 scale */

}

@keyframes modalIn { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }

.modal-header { display:flex; align-items:center; justify-content:space-between; padding:22px 26px 0; }

.modal-platform { font-family:Consolas,Monaco,monospace; font-size:10px; letter-spacing:2px; color:var(--text3); text-transform:uppercase; }

.modal-close {

  width:28px; height:28px; border:1px solid var(--border2); background:var(--bg3);

  border-radius:50%; cursor:pointer; font-size:14px; color:var(--text3);

  display:flex; align-items:center; justify-content:center; transition:all 0.2s;

}

.modal-close:hover { color:var(--text); border-color:var(--border2); background:var(--bg); }

.modal-title { font-family:'Songti SC','STSong','SimSun','Source Han Serif SC',serif; font-size:22px; font-weight:700; color:var(--text); padding:10px 26px 0; }

.modal-subtitle { font-size:12px; color:var(--text3); padding:5px 26px 0; }

.modal-tabs {

  display:grid; grid-template-columns:1fr 1fr;

  margin:18px 26px 0; background:var(--bg3);

  border:1px solid var(--border2); border-radius:6px; overflow:hidden;

}

.modal-tab {

  padding:10px; text-align:center; font-size:13px; font-weight:500;

  cursor:pointer; background:transparent; color:var(--text3);

  letter-spacing:1px; border:none; font-family:inherit; transition:all 0.15s;

}

.modal-tab.active { background:var(--blue); color:#fff; font-weight:700; }

.modal-body { padding:20px 26px 26px; }

.form-section-label {

  font-family:Consolas,Monaco,monospace; font-size:9px; letter-spacing:3px;

  color:var(--text3); text-transform:uppercase; margin-bottom:14px;

  padding-bottom:8px; border-bottom:1px solid var(--border);

  display:flex; align-items:center; gap:8px;

}

.form-section-label::before { content:''; width:3px; height:10px; background:var(--blue); border-radius:2px; }

.form-field { margin-bottom:14px; }

.form-label { display:block; font-size:12px; color:var(--text2); font-weight:600; margin-bottom:5px; letter-spacing:0.3px; }

.form-label .req { color:var(--gold); margin-left:2px; }

.form-hint { font-size:10px; color:var(--gold); margin-bottom:4px; letter-spacing:0.3px; }

.form-input {

  width:100%; background:var(--bg2); border:1px solid var(--border2);

  border-radius:6px; padding:9px 12px; font-size:13px; color:var(--text);

  font-family:inherit; outline:none; transition:border-color 0.2s, box-shadow 0.2s;

}

.form-input:focus { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-dim); }

.form-input::placeholder { color:var(--text3); font-size:12px; }

.form-sms-row {

  display:flex; align-items:stretch; gap:8px;

}

.form-sms-row .form-input {

  flex:1 1 auto; width:auto; min-width:0;

}

.form-sms-row .btn-modal-secondary {

  width:auto; flex:0 0 auto; margin-top:0;

  padding:9px 14px; white-space:nowrap; letter-spacing:0;

}

.btn-modal-verify {

  width:100%; margin-top:0; margin-bottom:4px;

}

.form-divider { height:1px; background:var(--border); margin:16px 0; }

.checkbox-group { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:4px; }

.checkbox-item {

  display:flex; align-items:center; gap:8px; padding:9px 11px;

  border:1px solid var(--border2); border-radius:6px;

  cursor:pointer; transition:all 0.15s; user-select:none; background:var(--bg2);

}

.checkbox-item.checked { border-color:var(--blue); background:var(--blue-dim); }

.plan-group { display:flex; flex-direction:column; gap:10px; margin-top:4px; }
.plan-item {
  display:flex; gap:12px; align-items:center; padding:12px 14px;
  border:1.5px solid var(--border2); border-radius:10px; cursor:pointer;
  background:#fff; transition:.15s ease; text-align:left;
}
.plan-item:hover { border-color:rgba(37,99,184,.45); }
.plan-item.checked { border-color:var(--blue); background:var(--blue-dim); }
.plan-item input { accent-color:var(--blue); flex-shrink:0; }
.plan-item .plan-title { font-size:14px; font-weight:750; color:var(--text); margin:0; }

.checkbox-item input[type=checkbox] { width:14px; height:14px; accent-color:var(--blue); flex-shrink:0; }

.checkbox-label { font-size:12px; color:var(--text2); line-height:1.3; }

.checkbox-tag { font-size:9px; padding:1px 5px; border-radius:2px; margin-left:3px; font-weight:700; font-family:Consolas,Monaco,monospace; }

.tag-magnet { background:rgba(37,99,184,0.10); color:var(--blue); }

.tag-billet { background:rgba(200,122,16,0.12); color:var(--gold); }

.will-open { background:var(--bg3); border:1px solid var(--border2); border-radius:6px; padding:11px 14px; margin-top:12px; }

.will-open-title { font-family:Consolas,Monaco,monospace; font-size:9px; letter-spacing:2px; color:var(--text3); text-transform:uppercase; margin-bottom:7px; }

.will-open-item { display:flex; gap:7px; font-size:12px; color:var(--text3); margin-bottom:3px; }

.will-open-item .tick { color:var(--success); }

.form-error { color:#c0392b; font-size:12px; margin-top:10px; }

.btn-license-upload {

  width:100%; padding:12px; background:var(--blue-dim); border:1.5px dashed var(--blue);

  border-radius:6px; font-size:14px; color:var(--blue); font-weight:700; cursor:pointer;

  font-family:inherit; transition:border-color .2s, background .2s;

}

.btn-license-upload:hover { border-color:#1d56a8; background:#e8f0fb; }

.reg-license-preview {

  margin-top:10px; padding:10px; background:var(--bg3); border:1px solid var(--border2);

  border-radius:8px; min-height:48px; text-align:center;

}

.reg-license-preview img {

  max-width:100%; max-height:220px; border:1px solid #e2e8f0; border-radius:6px; cursor:pointer;

}

.reg-license-preview .reg-license-pdf-btn {

  padding:8px 16px; background:var(--blue-dim); border:1px solid var(--blue);

  border-radius:6px; color:var(--blue); font-size:13px; font-weight:600; cursor:pointer; font-family:inherit;

}

.reg-license-preview .reg-license-pdf-btn:hover { background:#e8f0fb; }

.reg-license-preview .reg-license-meta { font-size:12px; color:var(--text3); margin-top:8px; word-break:break-all; }

.btn-modal-primary {

  width:100%; padding:12px; background:var(--blue); color:#fff; border:none;

  border-radius:5px; font-size:13px; font-weight:700; cursor:pointer;

  font-family:inherit; letter-spacing:2px; transition:background 0.2s; margin-top:18px;

  box-shadow:0 2px 10px var(--blue-glow);

}

.btn-modal-primary:hover { background:#1d56a8; }

.btn-modal-secondary {

  width:100%; padding:11px; background:var(--blue); color:#fff;

  border:none; border-radius:5px; font-size:13px; font-weight:600;

  cursor:pointer; font-family:inherit; letter-spacing:2px; transition:background 0.2s; margin-top:9px;

  box-shadow:0 2px 10px var(--blue-glow);

}

.btn-modal-secondary:hover { background:#1d56a8; }

.modal-note {

  background:var(--bg3); border:1px solid var(--border); border-radius:6px;

  padding:11px 14px; margin-top:14px; font-size:11px; color:var(--text3); line-height:1.8;

}

.modal-note strong { display:block; margin-bottom:3px; color:var(--text2); font-size:10px; letter-spacing:1px; font-family:Consolas,Monaco,monospace; }

.modal-footer-note { font-size:11px; color:var(--text3); text-align:center; margin-top:14px; }

.agreement-consent {

  display:flex; align-items:flex-start; gap:10px; margin-top:16px; padding:12px 14px;

  background:var(--bg3); border:1px solid var(--border2); border-radius:8px;

  cursor:pointer; user-select:none; transition:border-color .18s, background .18s;

}

.agreement-consent:hover { border-color:#c5d4e8; background:#f4f7fb; }

.agreement-consent.checked { border-color:var(--blue); background:var(--blue-dim); }

.agreement-consent input[type=checkbox] {

  appearance:none; -webkit-appearance:none; width:18px; height:18px; min-width:18px;

  margin:1px 0 0; border:1.5px solid #c8d2dc; border-radius:50%; background:#fff;

  cursor:pointer; position:relative; transition:border-color .18s, background .18s, box-shadow .18s;

}

.agreement-consent input[type=checkbox]:checked {

  border-color:var(--blue); background:var(--blue);

  box-shadow:0 0 0 3px rgba(37,99,184,.18);

}

.agreement-consent input[type=checkbox]:checked::after {

  content:''; position:absolute; left:50%; top:50%; width:6px; height:6px;

  margin:-3px 0 0 -3px; border-radius:50%; background:#fff;

}

.agreement-consent-text { font-size:12px; color:var(--text2); line-height:1.75; }

.agreement-consent-text a {

  color:var(--blue); text-decoration:none; font-weight:600;

}

.agreement-consent-text a:hover { text-decoration:underline; }

.link-forgot {

  display:inline-block; margin-top:10px; font-size:12px; color:var(--blue);

  background:none; border:none; cursor:pointer; padding:0; font-family:inherit;

  text-decoration:underline;

}

.link-forgot:hover { color:#1d56a8; }

.forgot-success-box {

  background:rgba(22,163,74,0.08); border:1px solid rgba(22,163,74,0.35);

  border-radius:8px; padding:14px; font-size:13px; color:var(--text2); line-height:1.7;

}

.success-icon {

  width:46px; height:46px; border-radius:50%;

  background:rgba(22,163,74,0.10); border:2px solid rgba(22,163,74,0.30);

  display:flex; align-items:center; justify-content:center;

  margin:0 auto 12px; font-size:20px; color:var(--success);

}

.success-badge {

  display:flex; align-items:center; gap:8px; padding:9px 12px;

  background:rgba(22,163,74,0.07); border:1px solid rgba(22,163,74,0.22);

  border-radius:5px; font-size:12px; color:var(--success); margin-bottom:7px;

}

.account-select-card {

  padding:14px 16px; border:1px solid var(--border2); border-radius:6px;

  cursor:pointer; transition:all 0.18s; margin-bottom:9px;

  display:flex; align-items:center; justify-content:space-between;

  background:var(--bg2);

}

.account-select-card.magnet { border-left:3px solid var(--blue); }

.account-select-card.billet { border-left:3px solid var(--gold); }

.account-select-card:hover { background:var(--bg3); }

.acct-name { font-size:14px; font-weight:700; color:var(--text); margin-bottom:2px; }

.acct-desc { font-size:11px; color:var(--text3); }

.acct-arrow { font-size:18px; color:var(--text3); }

::-webkit-scrollbar { width:4px; }

::-webkit-scrollbar-track { background:var(--bg); }

::-webkit-scrollbar-thumb { background:var(--border2); border-radius:2px; }
