/**
 * WhatsApp 地理门控弹层（与 js/tt-wa-geo-captcha.js 配套）
 * 依赖页面 :root 提供 --cream、--ink、--wa；若无 --bg-2 则使用底色回退。
 */
.tt-wa-captcha-overlay{
  position:fixed;inset:0;z-index:12000;
  display:flex;align-items:center;justify-content:center;
  padding:24px;
  background:rgba(13,31,26,.55);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.tt-wa-captcha-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.tt-wa-captcha-dialog{
  width:100%;max-width:400px;
  background:var(--cream);
  color:var(--ink);
  border-radius:20px;
  padding:28px 26px 24px;
  box-shadow:0 28px 80px rgba(13,31,26,.35);
  border:1px solid rgba(13,31,26,.08);
}
.tt-wa-captcha-dialog h2{
  font-size:1.25rem;font-weight:700;margin:0 0 8px;
  letter-spacing:-.02em;
}
.tt-wa-captcha-dialog > p{margin:0 0 16px;font-size:.9rem;line-height:1.5;color:rgba(13,31,26,.72)}
.tt-wa-captcha-imgwrap{
  background:var(--bg-2, #ECE6D9);
  border-radius:14px;
  padding:12px;
  margin-bottom:14px;
  border:1px solid rgba(13,31,26,.08);
  text-align:center;
}
.tt-wa-captcha-imgwrap img{
  display:inline-block;
  vertical-align:middle;
  max-width:100%;
  height:auto;
  border-radius:8px;
}
.tt-wa-captcha-input{
  width:100%;
  box-sizing:border-box;
  font-family:'JetBrains Mono',Consolas,monospace;
  font-size:1.35rem;
  letter-spacing:.35em;
  text-align:center;
  padding:14px 12px;
  border-radius:12px;
  border:1px solid rgba(13,31,26,.18);
  background:#fff;
  color:var(--ink);
  margin-bottom:8px;
}
.tt-wa-captcha-input:focus{
  outline:none;
  border-color:var(--wa);
  box-shadow:0 0 0 3px rgba(37,211,102,.22);
}
.tt-wa-captcha-error{
  color:#b42318;
  font-size:.82rem;
  margin:0 0 10px;
  min-height:1.2em;
}
.tt-wa-captcha-actions{
  display:flex;gap:10px;flex-wrap:wrap;margin-top:6px;
}
.tt-wa-captcha-actions button{
  flex:1;
  min-width:120px;
  font-family:inherit;
  font-size:.92rem;
  font-weight:600;
  padding:13px 16px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease;
}
.tt-wa-captcha-submit{
  background:var(--wa);
  color:#fff;
  box-shadow:0 8px 22px rgba(37,211,102,.35);
}
.tt-wa-captcha-submit:hover{transform:translateY(-1px)}
.tt-wa-captcha-cancel{
  background:rgba(13,31,26,.08);
  color:var(--ink);
}
.tt-wa-captcha-cancel:hover{background:rgba(13,31,26,.12)}
