/* ==========================================================================
   빠른 상담 폼 보조 스타일 + 팝업 (theme/basic/css/consult.css)
   main.css 의 :root 변수를 그대로 사용합니다.
   ========================================================================== */

/* 스팸 방어용 숨김 칸 (display:none 대신 화면 밖으로) */
.sr-hp { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* 개인정보 동의 */
.sr-form__agree { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; font-size: 14px; line-height: 1.6; color: var(--sr-soft); cursor: pointer; }
.sr-form__agree input { flex: 0 0 22px; width: 22px; height: 22px; margin: 1px 0 0; accent-color: var(--sr-lime); }
.sr-form__agree small { font-size: 12px; color: var(--sr-soft-2); }

.sr-form__submit[disabled] { opacity: 0.6; cursor: wait; }

/* ---------- 팝업 ---------- */
.sr-modal { width: min(480px, calc(100% - 24px)); max-height: calc(100% - 24px); padding: 0; border: 0; background: transparent; color: var(--sr-light); overflow: auto; }
.sr-modal::backdrop { background: rgba(6, 15, 10, 0.78); }
.sr-modal[open] { animation: sr-modal-in 0.2s ease-out; }
@keyframes sr-modal-in {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .sr-modal[open] { animation: none; }
}

.sr-modal__panel { position: relative; }
.sr-modal__panel--form { background: var(--sr-dark-2); }
.sr-modal__panel--form .sr-form { padding-top: 48px; }

.sr-modal__close { position: absolute; top: 8px; right: 8px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: transparent; color: var(--sr-light); }
.sr-modal__close:hover { color: var(--sr-lime); }

/* 결과 팝업 */
.sr-modal__panel--result { display: flex; flex-direction: column; align-items: center; padding: 48px 32px 32px; background: var(--sr-white); color: var(--sr-ink); text-align: center; }
.sr-modal__icon { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: var(--sr-lime); color: var(--sr-dark); }
.sr-modal__icon-err { display: none; }
.sr-modal__title { margin-top: 24px; font-size: 24px; font-weight: 800; letter-spacing: -0.01em; }
.sr-modal__text { margin-top: 12px; font-size: 16px; line-height: 1.7; color: var(--sr-muted); }
.sr-modal__tel { margin-top: 20px; padding: 14px 20px; background: var(--sr-bg); font-size: 15px; color: var(--sr-ink); }
.sr-modal__tel a { font-weight: 800; }
.sr-modal__tel a:hover { color: var(--sr-green); }
.sr-modal__ok { width: 100%; margin-top: 28px; }

#sr-result-dialog[data-state="error"] .sr-modal__icon { background: #C62F1E; color: var(--sr-white); }
#sr-result-dialog[data-state="error"] .sr-modal__icon-ok { display: none; }
#sr-result-dialog[data-state="error"] .sr-modal__icon-err { display: block; }

@media (max-width: 767px) {
    .sr-modal__panel--result { padding: 40px 24px 24px; }
    .sr-modal__title { font-size: 22px; }
}
