/* AFA 승인 거래처 보안 UI */
html { -webkit-text-size-adjust: 100%; }
body { -webkit-touch-callout: none; }
.product-card, .product-card * { user-select: none; -webkit-user-select: none; }
.product-img, .ci-img { pointer-events: none; -webkit-user-drag: none; user-drag: none; }

.afa-security-notice {
  width: min(100%, 1540px); margin: 12px auto 0; padding: 0 18px;
}
.afa-security-notice-inner {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  border: 1px solid #d6c397; border-radius: 14px; padding: 12px 14px;
  background: #fffaf0; color: #4f432c; box-shadow: 0 5px 18px rgba(88,67,25,.05);
}
.afa-security-notice strong { display:block; margin-bottom:3px; color:#163f35; font-size:13px; }
.afa-security-notice p { margin:0; font-size:11px; line-height:1.55; }
.afa-notice-badge { flex:none; padding:7px 10px; border-radius:999px; background:#163f35; color:#fff; font-size:10px; font-weight:850; white-space:nowrap; }

.afa-auth-btn {
  height: 38px; display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:0 12px; border:1px solid rgba(255,255,255,.3); border-radius:10px;
  background:rgba(255,255,255,.12); color:#fff; font-size:11px; font-weight:850; cursor:pointer;
}
.afa-auth-btn:hover { background:rgba(255,255,255,.2); }
.afa-auth-btn.is-approved { background:#c4a056; border-color:#d9bf85; color:#102f28; }
.afa-auth-dot { width:7px; height:7px; border-radius:50%; background:#d6aa67; box-shadow:0 0 0 3px rgba(214,170,103,.16); }
.afa-auth-btn.is-approved .afa-auth-dot { background:#163f35; }

.product-price.locked { background:#f5f3ee; border-color:#ddd6c8; }
.product-price.locked strong { color:#675e4d; font-size:12px; }
.product-price.locked .product-price-unit { color:#918878; }
.add-btn.afa-locked, .add-btn:disabled { cursor:not-allowed !important; opacity:.68; border-color:#b9c0bc !important; background:#eef0ef !important; color:#738078 !important; }
.header-cart-btn.afa-locked { opacity:.62; }

.afa-modal-bg {
  position:fixed; inset:0; z-index:100000; display:none; align-items:center; justify-content:center;
  padding:20px; background:rgba(5,18,15,.64); backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px);
}
.afa-modal-bg.open { display:flex; }
.afa-auth-modal {
  width:min(100%,460px); max-height:min(90vh,760px); overflow:auto; border:1px solid rgba(255,255,255,.7);
  border-radius:22px; padding:24px; background:#fff; color:#23342f; box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.afa-auth-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:16px; }
.afa-auth-kicker { color:#9a7a3e; font-size:10px; font-weight:900; letter-spacing:.08em; }
.afa-auth-title { margin-top:4px; color:#163f35; font-size:20px; font-weight:900; }
.afa-auth-desc { margin-top:7px; color:#68766f; font-size:12px; line-height:1.55; }
.afa-auth-close { width:34px; height:34px; border:0; border-radius:10px; background:#f0f3f1; color:#4f6159; cursor:pointer; font-size:17px; }
.afa-auth-field { display:grid; gap:6px; margin-top:13px; }
.afa-auth-field label { color:#40524a; font-size:11px; font-weight:850; }
.afa-auth-field input {
  width:100%; height:46px; border:1px solid #cfd8d3; border-radius:12px; padding:0 13px;
  outline:none; color:#17362e; font-size:14px; font-weight:700;
}
.afa-auth-field input:focus { border-color:#286858; box-shadow:0 0 0 3px rgba(40,104,88,.09); }
.afa-auth-primary, .afa-auth-secondary {
  width:100%; height:46px; margin-top:14px; border:0; border-radius:12px; font-size:13px; font-weight:900; cursor:pointer;
}
.afa-auth-primary { background:#163f35; color:#fff; }
.afa-auth-secondary { background:#eef3f0; color:#21483d; }
.afa-auth-primary:disabled, .afa-auth-secondary:disabled { opacity:.55; cursor:wait; }
.afa-auth-message { min-height:18px; margin-top:10px; color:#a33f30; font-size:11px; line-height:1.45; }
.afa-auth-message.success { color:#287259; }
.afa-otp-stage { display:none; }
.afa-otp-stage.active { display:block; }
.afa-email-stage.hidden { display:none; }
.afa-auth-approved-box { display:none; padding:13px; border-radius:13px; background:#edf6f2; border:1px solid #c8ded5; }
.afa-auth-approved-box.active { display:block; }
.afa-auth-approved-box strong { color:#16483a; font-size:13px; }
.afa-auth-approved-box p { margin:5px 0 0; color:#5c6e66; font-size:11px; line-height:1.45; word-break:break-all; }

.afa-consent-section { display:grid; gap:9px; margin-top:12px; }
.afa-consent-card { border:1px solid #d8dedb; border-radius:11px; background:#fafbf9; overflow:hidden; }
.afa-consent-check { display:flex; align-items:flex-start; gap:9px; padding:10px 11px; color:#263c34; font-size:11px; font-weight:850; cursor:pointer; }
.afa-consent-check input { width:17px; height:17px; margin-top:0; accent-color:#163f35; flex:none; }
.afa-consent-detail { max-height:88px; overflow:auto; padding:0 11px 10px 37px; color:#66746d; font-size:9px; line-height:1.55; white-space:pre-line; }
.afa-verified-email { background:#f1f5f3 !important; color:#496158 !important; }
.afa-locked-cart-message { min-height:76px; display:flex; flex-direction:column; justify-content:center; gap:2px; padding:7px 10px; text-align:center; color:#69766f; font-size:8.5px; line-height:1.4; }
.afa-locked-cart-message strong { display:block; margin-bottom:1px; color:#163f35; font-size:12px; }
.afa-locked-cart-message span { display:block; }

@media print { body { display:none !important; } }
@media (min-width:761px) { .afa-security-notice { display:none !important; } }
@media (max-width:760px) {
  .afa-security-notice { padding:0 10px; margin-top:55px; }
  .afa-security-notice-inner { align-items:flex-start; padding:10px 11px; border-radius:12px; }
  .afa-security-notice p { font-size:9px; }
  .afa-notice-badge { padding:6px 8px; font-size:8px; }
  .afa-auth-btn { height:34px; padding:0 9px; font-size:9px; }
  .afa-auth-modal { padding:19px; border-radius:18px; }
}
