/* =========================================================
   WOW웨딩 AI매칭센터 chat.css v4 PROGRESS LOADING
   - 전체 교체용
   - 위치: /wow-ai-chat/assets/chat.css
   - 채팅창 하단 짤림 수정
   - 오른쪽 채팅 영역 스크롤바 복구
   - 입력창 하단 고정
   - 블랙/화이트 + WOW 레드 기준
========================================================= */

:root {
    --wow-red: #d71920;
    --wow-red-dark: #b70f17;
    --wow-black: #111111;
    --wow-text: #171717;
    --wow-muted: #6b7280;
    --wow-line: #e5e7eb;
    --wow-bg: #ffffff;
    --wow-soft: #f7f7f8;
    --wow-radius: 24px;
    --wow-shadow: 0 24px 80px rgba(0, 0, 0, 0.22);
}

/* =========================================================
   테마 간섭 최소화
========================================================= */

#wowAiWidget,
#wowAiWidget *,
#wowAiOpen,
#wowAiOpen * {
    box-sizing: border-box !important;
}

#wowAiWidget {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

#wowAiWidget button,
#wowAiOpen {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

#wowAiWidget input,
#wowAiWidget textarea,
#wowAiWidget button {
    outline: none !important;
}

#wowAiWidget input,
#wowAiWidget textarea {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

/* =========================================================
   플로팅 버튼
========================================================= */

#wowAiOpen.wow-ai-float,
button#wowAiOpen {
    position: fixed !important;
    right: 24px !important;
    bottom: 24px !important;
    width: 88px !important;
    height: 88px !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #ed1c24 0%, #d71920 55%, #a90d13 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    z-index: 2147483647 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    box-shadow: 0 18px 45px rgba(215, 25, 32, 0.42) !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    line-height: 1 !important;
}

#wowAiOpen.wow-ai-float:hover,
button#wowAiOpen:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 22px 55px rgba(215, 25, 32, 0.52) !important;
}

#wowAiOpen .wow-ai-icon {
    display: block !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: -0.7px !important;
    color: #ffffff !important;
}

#wowAiOpen .wow-ai-label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    color: #ffffff !important;
    letter-spacing: -0.4px !important;
}

/* =========================================================
   위젯 기본 박스
   핵심: top/bottom 동시 지정으로 화면 밖으로 안 나가게 처리
========================================================= */

#wowAiWidget.wow-ai-widget {
    position: fixed !important;
    top: 32px !important;
    right: 32px !important;
    bottom: 32px !important;
    width: min(1080px, calc(100vw - 64px)) !important;
    height: auto !important;
    max-height: calc(100vh - 64px) !important;
    background: #ffffff !important;
    color: var(--wow-text) !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    z-index: 2147483646 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(18px) scale(0.985) !important;
    transition: opacity .24s ease, visibility .24s ease, transform .24s ease !important;
    box-shadow: var(--wow-shadow) !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

#wowAiWidget.wow-ai-widget.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) scale(1) !important;
}

/* =========================================================
   헤더
========================================================= */

#wowAiWidget .wow-ai-head {
    height: 88px !important;
    min-height: 88px !important;
    max-height: 88px !important;
    padding: 0 24px !important;
    background: linear-gradient(90deg, #ffffff 0%, #fff5f5 48%, #ffffff 100%) !important;
    border-bottom: 1px solid var(--wow-line) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex: 0 0 88px !important;
}

#wowAiWidget .wow-ai-title-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-width: 0 !important;
}

#wowAiWidget .wow-ai-symbol {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: var(--wow-black) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    flex: 0 0 auto !important;
}

#wowAiWidget .wow-ai-title-wrap strong {
    display: block !important;
    color: var(--wow-black) !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.9px !important;
    margin: 0 !important;
}

#wowAiWidget .wow-ai-title-wrap p {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: var(--wow-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    margin: 6px 0 0 !important;
}

#wowAiWidget .wow-ai-title-wrap p span {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #1fc16b !important;
    display: inline-block !important;
    box-shadow: 0 0 0 4px rgba(31, 193, 107, 0.12) !important;
}

#wowAiWidget .wow-ai-close {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    border: 1px solid var(--wow-line) !important;
    background: #ffffff !important;
    color: var(--wow-black) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    cursor: pointer !important;
    padding: 0 !important;
    line-height: 1 !important;
}

#wowAiWidget .wow-ai-close:hover {
    background: var(--wow-black) !important;
    color: #ffffff !important;
    border-color: var(--wow-black) !important;
}

/* =========================================================
   내부 레이아웃
   핵심: min-height:0 / overflow:hidden / 입력창 flex 고정
========================================================= */

#wowAiWidget .wow-ai-shell {
    height: calc(100% - 88px) !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 390px minmax(0, 1fr) !important;
    background: #ffffff !important;
    overflow: hidden !important;
}

#wowAiWidget .wow-ai-left {
    background: #ffffff !important;
    border-right: 1px solid var(--wow-line) !important;
    padding: 24px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0 !important;
    height: 100% !important;
}

#wowAiWidget .wow-ai-right {
    background: #f6f6f7 !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
}

/* =========================================================
   왼쪽 패널
========================================================= */

#wowAiWidget .wow-ai-left-head {
    padding: 4px 0 20px !important;
}

#wowAiWidget .wow-ai-left-eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 28px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, 0.08) !important;
    color: var(--wow-red) !important;
    border: 1px solid rgba(215, 25, 32, 0.18) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.7px !important;
    margin-bottom: 16px !important;
}

#wowAiWidget .wow-ai-left-head h3 {
    color: var(--wow-black) !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -1.2px !important;
    margin: 0 0 14px !important;
}

#wowAiWidget .wow-ai-left-head p {
    color: var(--wow-muted) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

#wowAiWidget .wow-ai-status-card {
    background: var(--wow-black) !important;
    color: #ffffff !important;
    border-radius: 20px !important;
    padding: 20px !important;
    margin: 4px 0 16px !important;
    box-shadow: 0 16px 36px rgba(17, 17, 17, 0.12) !important;
}

#wowAiWidget .wow-ai-status-label {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    margin-bottom: 12px !important;
}

#wowAiWidget .wow-ai-status-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: var(--wow-red) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

#wowAiWidget .wow-ai-status-card h4 {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
    letter-spacing: -0.6px !important;
    margin: 0 0 10px !important;
}

#wowAiWidget .wow-ai-status-card p {
    color: rgba(255, 255, 255, 0.74) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

/* 인증 박스 */
#wowAiWidget .wow-ai-cert-box {
    display: none !important;
    margin: 0 0 16px !important;
    padding: 15px 16px !important;
    border-radius: 16px !important;
    background: #f9fafb !important;
    color: var(--wow-text) !important;
    border: 1px solid var(--wow-line) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
}

#wowAiWidget .wow-ai-cert-box.is-active {
    display: block !important;
}

#wowAiWidget .wow-ai-cert-box b {
    display: block !important;
    color: var(--wow-black) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    margin-bottom: 6px !important;
}

#wowAiWidget .wow-ai-cert-box.certified {
    background: #ecfdf3 !important;
    border-color: #abefc6 !important;
    color: #067647 !important;
}

#wowAiWidget .wow-ai-cert-box.pending {
    background: #fffaeb !important;
    border-color: #fedf89 !important;
    color: #93370d !important;
}

#wowAiWidget .wow-ai-cert-box.unregistered,
#wowAiWidget .wow-ai-cert-box.error {
    background: #fef3f2 !important;
    border-color: #fecdca !important;
    color: #b42318 !important;
}

/* =========================================================
   접수폼
========================================================= */

#wowAiWidget .wow-ai-lead {
    display: none !important;
    background: #ffffff !important;
    border: 1px solid var(--wow-line) !important;
    border-radius: 20px !important;
    padding: 18px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.04) !important;
}

#wowAiWidget .wow-ai-lead.is-active {
    display: block !important;
}

#wowAiWidget .wow-ai-lead-title {
    color: var(--wow-black) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: -0.4px !important;
    margin-bottom: 6px !important;
}

#wowAiWidget .wow-ai-lead-title b {
    color: var(--wow-red) !important;
    font-weight: 900 !important;
}

#wowAiWidget .wow-ai-lead-guide {
    color: var(--wow-muted) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    margin: 0 0 14px !important;
}

#wowAiWidget .wow-ai-lead-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
}

#wowAiWidget .wow-ai-lead input,
#wowAiWidget .wow-ai-lead textarea {
    width: 100% !important;
    min-height: 42px !important;
    border: 1px solid var(--wow-line) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: var(--wow-text) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 0 12px !important;
    box-shadow: none !important;
    margin: 0 !important;
}

#wowAiWidget .wow-ai-lead textarea {
    min-height: 86px !important;
    padding: 12px !important;
    resize: vertical !important;
}

#wowAiWidget .wow-ai-lead input::placeholder,
#wowAiWidget .wow-ai-lead textarea::placeholder {
    color: #9ca3af !important;
}

#wowAiWidget .wow-ai-lead input:focus,
#wowAiWidget .wow-ai-lead textarea:focus {
    border-color: var(--wow-red) !important;
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.09) !important;
}

#wowAiWidget .wow-ai-lead-full {
    grid-column: 1 / -1 !important;
}

#wowAiWidget #wowLeadSubmit {
    width: 100% !important;
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--wow-red) !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    margin: 12px 0 0 !important;
    cursor: pointer !important;
    box-shadow: 0 12px 26px rgba(215, 25, 32, 0.25) !important;
}

#wowAiWidget #wowLeadSubmit:hover {
    background: var(--wow-red-dark) !important;
}

#wowAiWidget #wowLeadSubmit:disabled {
    opacity: 0.55 !important;
    cursor: not-allowed !important;
}

/* =========================================================
   채팅 영역
   핵심: body만 스크롤 / input은 항상 하단 고정
========================================================= */

#wowAiWidget .wow-ai-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 22px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: linear-gradient(180deg, #f7f7f8 0%, #f1f2f4 100%) !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
}

#wowAiWidget .wow-ai-input {
    flex: 0 0 84px !important;
    height: 84px !important;
    min-height: 84px !important;
    max-height: 84px !important;
    padding: 15px 18px !important;
    background: #ffffff !important;
    border-top: 1px solid var(--wow-line) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    z-index: 5 !important;
    position: relative !important;
}

#wowAiWidget .wow-ai-msg {
    display: flex !important;
    gap: 12px !important;
    align-items: flex-start !important;
    margin: 0 0 14px !important;
}

#wowAiWidget .wow-ai-msg.user {
    justify-content: flex-end !important;
}

#wowAiWidget .wow-ai-avatar {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: var(--wow-black) !important;
    border: 1px solid var(--wow-line) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    flex: 0 0 auto !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06) !important;
}

#wowAiWidget .wow-ai-bubble {
    max-width: 72% !important;
    background: #ffffff !important;
    color: var(--wow-text) !important;
    border: 1px solid var(--wow-line) !important;
    border-radius: 18px !important;
    padding: 15px 16px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.65 !important;
    letter-spacing: -0.25px !important;
    position: relative !important;
    box-shadow: 0 8px 26px rgba(0, 0, 0, 0.05) !important;
}

#wowAiWidget .wow-ai-bubble b {
    color: var(--wow-black) !important;
    font-weight: 900 !important;
}

#wowAiWidget .wow-ai-msg.user .wow-ai-bubble {
    background: var(--wow-red) !important;
    color: #ffffff !important;
    border-color: var(--wow-red) !important;
    border-bottom-right-radius: 6px !important;
    box-shadow: 0 10px 24px rgba(215, 25, 32, 0.22) !important;
}

#wowAiWidget .wow-ai-msg.ai .wow-ai-bubble {
    border-bottom-left-radius: 6px !important;
}

#wowAiWidget .wow-ai-bubble em {
    position: absolute !important;
    right: 14px !important;
    bottom: 7px !important;
    color: #9ca3af !important;
    font-style: normal !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

#wowAiWidget .wow-ai-msg.user .wow-ai-bubble em {
    color: rgba(255, 255, 255, 0.68) !important;
}

#wowAiWidget .wow-ai-typing .wow-ai-bubble {
    color: var(--wow-muted) !important;
}

/* 빠른 버튼 */
#wowAiWidget .wow-ai-quick {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
    margin: 10px 0 18px 50px !important;
}

#wowAiWidget .wow-ai-quick button {
    min-height: 40px !important;
    border-radius: 999px !important;
    border: 1px solid var(--wow-line) !important;
    background: #ffffff !important;
    color: var(--wow-text) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    padding: 0 14px !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.04) !important;
}

#wowAiWidget .wow-ai-quick button:hover {
    border-color: var(--wow-red) !important;
    color: var(--wow-red) !important;
}

/* 액션 버튼 */
#wowAiWidget .wow-ai-action-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 6px 0 18px 50px !important;
}

#wowAiWidget .wow-ai-action-btn {
    min-height: 38px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    border: 1px solid var(--wow-line) !important;
    background: #ffffff !important;
    color: var(--wow-text) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

#wowAiWidget .wow-ai-action-btn.primary {
    background: var(--wow-red) !important;
    border-color: var(--wow-red) !important;
    color: #ffffff !important;
}

#wowAiWidget .wow-ai-action-btn:hover {
    transform: translateY(-1px) !important;
}

/* 입력창 상세 */
#wowAiWidget .wow-ai-input input {
    flex: 1 1 auto !important;
    width: auto !important;
    height: 52px !important;
    border-radius: 999px !important;
    border: 1px solid var(--wow-line) !important;
    background: #f9fafb !important;
    color: var(--wow-text) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 0 20px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

#wowAiWidget .wow-ai-input input::placeholder {
    color: #9ca3af !important;
}

#wowAiWidget .wow-ai-input input:focus {
    background: #ffffff !important;
    border-color: var(--wow-red) !important;
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.08) !important;
}

#wowAiWidget .wow-ai-input button {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    border: 0 !important;
    background: var(--wow-red) !important;
    color: #ffffff !important;
    font-size: 26px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    box-shadow: 0 12px 26px rgba(215, 25, 32, 0.26) !important;
}

#wowAiWidget .wow-ai-input button:hover {
    background: var(--wow-red-dark) !important;
}

/* =========================================================
   추가 업체 모달
========================================================= */

#wowAiWidget .wow-ai-repeat-modal {
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
    background: rgba(17, 17, 17, 0.46) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
}

#wowAiWidget .wow-ai-repeat-modal.is-active {
    display: flex !important;
}

#wowAiWidget .wow-ai-repeat-box {
    width: min(420px, 100%) !important;
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 28px !important;
    text-align: center !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.25) !important;
}

#wowAiWidget .wow-ai-repeat-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: rgba(215, 25, 32, 0.1) !important;
    color: var(--wow-red) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 28px !important;
    font-weight: 900 !important;
    margin: 0 auto 14px !important;
}

#wowAiWidget .wow-ai-repeat-box strong {
    display: block !important;
    color: var(--wow-black) !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    letter-spacing: -0.8px !important;
    margin-bottom: 10px !important;
}

#wowAiWidget .wow-ai-repeat-box p {
    color: var(--wow-muted) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    margin: 0 0 20px !important;
}

#wowAiWidget .wow-ai-repeat-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
}

#wowAiWidget .wow-ai-repeat-actions button {
    height: 46px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

#wowAiWidget #wowRepeatYes {
    background: var(--wow-red) !important;
    color: #ffffff !important;
    border: 1px solid var(--wow-red) !important;
}

#wowAiWidget #wowRepeatNo {
    background: #ffffff !important;
    color: var(--wow-black) !important;
    border: 1px solid var(--wow-line) !important;
}

/* =========================================================
   스크롤바
   오른쪽 채팅 영역 / 왼쪽 패널에 스크롤 표시
========================================================= */

#wowAiWidget .wow-ai-body::-webkit-scrollbar,
#wowAiWidget .wow-ai-left::-webkit-scrollbar {
    width: 10px !important;
}

#wowAiWidget .wow-ai-body::-webkit-scrollbar-thumb,
#wowAiWidget .wow-ai-left::-webkit-scrollbar-thumb {
    background: #bfc5cf !important;
    border-radius: 999px !important;
    border: 2px solid transparent !important;
    background-clip: padding-box !important;
}

#wowAiWidget .wow-ai-body::-webkit-scrollbar-thumb:hover,
#wowAiWidget .wow-ai-left::-webkit-scrollbar-thumb:hover {
    background: #9ca3af !important;
    border: 2px solid transparent !important;
    background-clip: padding-box !important;
}

#wowAiWidget .wow-ai-body::-webkit-scrollbar-track,
#wowAiWidget .wow-ai-left::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.03) !important;
}

/* Firefox */
#wowAiWidget .wow-ai-body,
#wowAiWidget .wow-ai-left {
    scrollbar-width: thin !important;
    scrollbar-color: #bfc5cf rgba(0, 0, 0, 0.03) !important;
}

/* =========================================================
   모바일 / 태블릿
========================================================= */

@media (max-width: 900px) {
    #wowAiWidget.wow-ai-widget {
        top: 16px !important;
        right: 12px !important;
        bottom: 16px !important;
        width: calc(100vw - 24px) !important;
        max-height: calc(100vh - 32px) !important;
        border-radius: 22px !important;
    }

    #wowAiWidget .wow-ai-head {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        flex-basis: 78px !important;
        padding: 0 16px !important;
    }

    #wowAiWidget .wow-ai-shell {
        display: flex !important;
        flex-direction: column !important;
        height: calc(100% - 78px) !important;
        min-height: 0 !important;
    }

    #wowAiWidget .wow-ai-title-wrap strong {
        font-size: 18px !important;
    }

    #wowAiWidget .wow-ai-title-wrap p {
        font-size: 12px !important;
    }

    #wowAiWidget .wow-ai-left {
        flex: 0 0 auto !important;
        max-height: 42% !important;
        border-right: 0 !important;
        border-bottom: 1px solid var(--wow-line) !important;
        padding: 16px !important;
    }

    #wowAiWidget .wow-ai-left-head h3 {
        font-size: 22px !important;
    }

    #wowAiWidget .wow-ai-right {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
    }

    #wowAiWidget .wow-ai-body {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        padding: 16px !important;
    }

    #wowAiWidget .wow-ai-bubble {
        max-width: 84% !important;
        font-size: 13px !important;
    }

    #wowAiWidget .wow-ai-quick {
        grid-template-columns: 1fr !important;
        margin-left: 0 !important;
    }

    #wowAiWidget .wow-ai-action-row {
        margin-left: 0 !important;
    }

    #wowAiWidget .wow-ai-lead-grid {
        grid-template-columns: 1fr !important;
    }

    #wowAiWidget .wow-ai-input {
        flex: 0 0 74px !important;
        height: 74px !important;
        min-height: 74px !important;
        max-height: 74px !important;
        padding: 11px 12px !important;
    }
}

@media (max-width: 640px) {
    #wowAiOpen.wow-ai-float,
    button#wowAiOpen {
        right: 18px !important;
        bottom: 18px !important;
        width: 74px !important;
        height: 74px !important;
    }

    #wowAiOpen .wow-ai-icon {
        font-size: 15px !important;
    }

    #wowAiOpen .wow-ai-label {
        font-size: 12px !important;
    }

    #wowAiWidget.wow-ai-widget {
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-height: 100vh !important;
        border-radius: 0 !important;
        border: 0 !important;
    }

    #wowAiWidget .wow-ai-head {
        height: 74px !important;
        min-height: 74px !important;
        max-height: 74px !important;
        flex-basis: 74px !important;
    }

    #wowAiWidget .wow-ai-symbol {
        width: 42px !important;
        height: 42px !important;
        font-size: 11px !important;
    }

    #wowAiWidget .wow-ai-shell {
        height: calc(100% - 74px) !important;
        min-height: 0 !important;
    }

    #wowAiWidget .wow-ai-left {
        max-height: 40% !important;
    }

    #wowAiWidget .wow-ai-input input {
        height: 48px !important;
        font-size: 14px !important;
    }

    #wowAiWidget .wow-ai-input button {
        width: 48px !important;
        height: 48px !important;
        flex-basis: 48px !important;
    }
}

/* =========================================================
   혹시 테마가 fixed 하단 요소를 덮는 경우 대비
========================================================= */

#wowAiWidget.wow-ai-widget,
#wowAiWidget .wow-ai-right,
#wowAiWidget .wow-ai-body,
#wowAiWidget .wow-ai-input {
    contain: none !important;
}

/* =========================================================
   WOW AI 검색결과 카드 CSS
   - 기존 chat.css 맨 아래에 추가
   - 검색결과 5곳 카드 출력용
========================================================= */

#wowAiWidget .wow-ai-result-wrap {
    margin: 8px 0 20px 50px !important;
    max-width: 760px !important;
}

#wowAiWidget .wow-ai-result-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 10px !important;
}

#wowAiWidget .wow-ai-result-title strong {
    color: #111111 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    letter-spacing: -0.4px !important;
}

#wowAiWidget .wow-ai-result-title span {
    color: #6b7280 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 999px !important;
    padding: 5px 10px !important;
}

#wowAiWidget .wow-ai-result-list {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
}

#wowAiWidget .wow-ai-result-card {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 18px !important;
    padding: 15px !important;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.05) !important;
}

#wowAiWidget .wow-ai-result-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin: 0 0 10px !important;
}

#wowAiWidget .wow-ai-result-no {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    background: #111111 !important;
    color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

#wowAiWidget .wow-ai-result-badge {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, 0.08) !important;
    border: 1px solid rgba(215, 25, 32, 0.18) !important;
    color: #d71920 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

#wowAiWidget .wow-ai-result-name {
    color: #111111 !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    letter-spacing: -0.5px !important;
    line-height: 1.35 !important;
    margin: 0 0 7px !important;
}

#wowAiWidget .wow-ai-result-desc {
    min-height: 38px !important;
    color: #6b7280 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    margin: 0 0 12px !important;
}

#wowAiWidget .wow-ai-result-btn {
    width: 100% !important;
    height: 38px !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: #d71920 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
    box-shadow: 0 10px 22px rgba(215, 25, 32, 0.22) !important;
}

#wowAiWidget .wow-ai-result-btn:hover {
    background: #b70f17 !important;
}

#wowAiWidget .wow-ai-result-guide {
    margin: 10px 0 0 !important;
    color: #6b7280 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

#wowAiWidget .wow-ai-result-empty {
    grid-column: 1 / -1 !important;
    background: #ffffff !important;
    border: 1px dashed #d1d5db !important;
    border-radius: 16px !important;
    padding: 16px !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

@media (max-width: 900px) {
    #wowAiWidget .wow-ai-result-wrap {
        margin-left: 0 !important;
        max-width: none !important;
    }

    #wowAiWidget .wow-ai-result-list {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   WOW AI 모바일 버튼 강제 표시 FIX
   - 기존 chat.css 맨 아래에 추가
   - 모바일에서 AI매칭 플로팅 버튼이 안 보일 때
========================================================= */

/* PC/모바일 공통: 버튼 무조건 최상단 표시 */
html body #wowAiOpen.wow-ai-float,
html body button#wowAiOpen,
#wowAiOpen {
    position: fixed !important;
    right: 22px !important;
    bottom: 22px !important;
    width: 86px !important;
    height: 86px !important;
    min-width: 86px !important;
    min-height: 86px !important;
    max-width: 86px !important;
    max-height: 86px !important;
    border-radius: 50% !important;
    background: linear-gradient(145deg, #ed1c24 0%, #d71920 55%, #a90d13 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    z-index: 2147483647 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
    box-shadow: 0 18px 45px rgba(215, 25, 32, 0.45) !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
}

html body #wowAiOpen .wow-ai-icon,
html body button#wowAiOpen .wow-ai-icon {
    display: block !important;
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: -0.6px !important;
}

html body #wowAiOpen .wow-ai-label,
html body button#wowAiOpen .wow-ai-label {
    display: block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.4px !important;
}

/* 모바일 전용 */
@media (max-width: 768px) {
    html body #wowAiOpen.wow-ai-float,
    html body button#wowAiOpen,
    #wowAiOpen {
        position: fixed !important;
        right: max(16px, env(safe-area-inset-right)) !important;
        bottom: max(16px, env(safe-area-inset-bottom)) !important;
        width: 76px !important;
        height: 76px !important;
        min-width: 76px !important;
        min-height: 76px !important;
        max-width: 76px !important;
        max-height: 76px !important;
        border-radius: 50% !important;
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        z-index: 2147483647 !important;
    }

    html body #wowAiOpen .wow-ai-icon,
    html body button#wowAiOpen .wow-ai-icon {
        font-size: 15px !important;
    }

    html body #wowAiOpen .wow-ai-label,
    html body button#wowAiOpen .wow-ai-label {
        font-size: 12px !important;
    }
}

/* 관리자바/모바일 메뉴/테마 fixed 요소보다 위 */
#wpadminbar ~ #wowAiOpen,
.ast-mobile-popup-drawer ~ #wowAiOpen,
.elementor-location-header ~ #wowAiOpen {
    z-index: 2147483647 !important;
}

/* 채팅창이 열렸을 때는 버튼이 너무 방해되지 않도록 유지 */
#wowAiWidget.is-open + #wowAiOpen,
#wowAiOpen.is-open {
    opacity: 1 !important;
    visibility: visible !important;
}


/* =========================================================
   WOW AI 버튼/채팅창 레이어 충돌 REAL FIX v2
   - 닫힘 상태: 버튼 표시
   - 열림 상태: 버튼 숨김
   - 채팅창은 버튼보다 위
   - 기존 모바일 안정화 코드보다 아래에 있어야 함
========================================================= */

/* 채팅창을 버튼보다 위 레이어로 올림 */
html body #wowAiWidget.wow-ai-widget,
html body #wowAiWidget.wow-ai-widget.is-open {
    z-index: 2147483647 !important;
}

/* 닫힌 상태에서는 버튼을 다시 확실히 보이게 함 */
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) #wowAiOpen,
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) #wowAiOpen.wow-ai-float,
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) button#wowAiOpen,
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) a#wowAiOpen,
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) div#wowAiOpen,
html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) #wowAiMobileDirectLauncher {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 2147483600 !important;
}

/* 채팅창이 열렸을 때만 플로팅 버튼 숨김 */
html body.wow-ai-chat-open #wowAiOpen,
html body.wow-ai-chat-open #wowAiOpen.wow-ai-float,
html body.wow-ai-chat-open button#wowAiOpen,
html body.wow-ai-chat-open a#wowAiOpen,
html body.wow-ai-chat-open div#wowAiOpen,
html body.wow-ai-chat-open #wowAiMobileDirectLauncher,
html body.wow-ai-mobile-direct-open #wowAiOpen,
html body.wow-ai-mobile-direct-open #wowAiOpen.wow-ai-float,
html body.wow-ai-mobile-direct-open button#wowAiOpen,
html body.wow-ai-mobile-direct-open a#wowAiOpen,
html body.wow-ai-mobile-direct-open div#wowAiOpen,
html body.wow-ai-mobile-direct-open #wowAiMobileDirectLauncher,
html body:has(#wowAiWidget.is-open) #wowAiOpen,
html body:has(#wowAiWidget.is-open) #wowAiOpen.wow-ai-float,
html body:has(#wowAiWidget.is-open) button#wowAiOpen,
html body:has(#wowAiWidget.is-open) a#wowAiOpen,
html body:has(#wowAiWidget.is-open) div#wowAiOpen,
html body:has(#wowAiWidget.is-open) #wowAiMobileDirectLauncher {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* 모바일 버튼 위치는 유지하되, 채팅창보다 아래 레이어 */
@media screen and (max-width: 768px) {
    html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) #wowAiOpen,
    html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) button#wowAiOpen,
    html body:not(.wow-ai-chat-open):not(.wow-ai-mobile-direct-open) #wowAiMobileDirectLauncher {
        right: 16px !important;
        bottom: 16px !important;
        bottom: calc(16px + env(safe-area-inset-bottom)) !important;
        width: 76px !important;
        height: 76px !important;
        min-width: 76px !important;
        min-height: 76px !important;
        max-width: 76px !important;
        max-height: 76px !important;
        z-index: 2147483600 !important;
    }
}


/* =========================================================
   WOW AI 플로팅 버튼 FINAL CLEAN HOVER FIX
   - 기본 상태: 레드, 그림자 없음, 액션 없음
   - hover 상태: 고급 보라색, 액션 없음
   - 둥둥/translate/scale/box-shadow 전부 제거
   - PC 기본 버튼 + 모바일 보조 버튼 모두 적용
   - 반드시 chat.css 맨 아래 위치
========================================================= */

html body #wowAiOpen,
html body #wowAiOpen.wow-ai-float,
html body button#wowAiOpen,
html body a#wowAiOpen,
html body div#wowAiOpen,
html body #wowAiMobileDirectLauncher {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    background: linear-gradient(145deg, #ed1c24 0%, #d71920 58%, #a90d13 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    animation: none !important;
    transform: translate3d(0, 0, 0) !important;
    transition:
        background .24s ease,
        filter .24s ease,
        color .24s ease,
        opacity .24s ease,
        visibility .24s ease !important;
}

html body #wowAiOpen:hover,
html body #wowAiOpen.wow-ai-float:hover,
html body button#wowAiOpen:hover,
html body a#wowAiOpen:hover,
html body div#wowAiOpen:hover,
html body #wowAiMobileDirectLauncher:hover {
    background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 58%, #3b0764 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    animation: none !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
}

html body #wowAiOpen:active,
html body #wowAiOpen.wow-ai-float:active,
html body button#wowAiOpen:active,
html body a#wowAiOpen:active,
html body div#wowAiOpen:active,
html body #wowAiMobileDirectLauncher:active {
    background: linear-gradient(145deg, #6d28d9 0%, #4c1d95 58%, #2e1065 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    animation: none !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
}

/* 내부 글자 폰트 통일 */
html body #wowAiOpen .wow-ai-icon,
html body #wowAiOpen .wow-ai-label,
html body button#wowAiOpen .wow-ai-icon,
html body button#wowAiOpen .wow-ai-label,
html body #wowAiMobileDirectLauncher .wow-ai-mobile-direct-main,
html body #wowAiMobileDirectLauncher .wow-ai-mobile-direct-sub {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    color: #ffffff !important;
    font-weight: 900 !important;
    text-shadow: none !important;
}

/* 혹시 이전에 추가된 float keyframes/animation이 남아 있어도 무력화 */
html body #wowAiOpen *,
html body button#wowAiOpen *,
html body #wowAiMobileDirectLauncher * {
    animation: none !important;
    transform: none !important;
    transition:
        color .24s ease,
        opacity .24s ease !important;
}

/* 접근성: 모션 감소 설정 사용자에게도 완전 고정 */
@media (prefers-reduced-motion: reduce) {
    html body #wowAiOpen,
    html body #wowAiOpen.wow-ai-float,
    html body button#wowAiOpen,
    html body a#wowAiOpen,
    html body div#wowAiOpen,
    html body #wowAiMobileDirectLauncher,
    html body #wowAiOpen:hover,
    html body #wowAiOpen.wow-ai-float:hover,
    html body button#wowAiOpen:hover,
    html body a#wowAiOpen:hover,
    html body div#wowAiOpen:hover,
    html body #wowAiMobileDirectLauncher:hover {
        animation: none !important;
        transform: translate3d(0, 0, 0) !important;
        transition: background .24s ease, color .24s ease, opacity .24s ease !important;
    }
}

/* =========================================================
   WOW웨딩 AI매칭센터 v3 GENERAL GPT FIRST UI PATCH
   - 일반 웨딩 질문 / 업체 연결 / 지역별 검색 흐름에 맞춘 최종 CSS
   - 기존 기능 CSS 유지 + 하단 오버라이드 방식
   - 위치: /wow-ai-chat/assets/chat.css 전체 교체용
========================================================= */

/* ------------------------------
   전체 위젯 가독성 강화
------------------------------ */
html body #wowAiWidget.wow-ai-widget {
    background: #ffffff !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

html body #wowAiWidget .wow-ai-head {
    background:
        radial-gradient(circle at 16% 18%, rgba(215, 25, 32, 0.10) 0%, rgba(215, 25, 32, 0) 30%),
        linear-gradient(90deg, #ffffff 0%, #fff7f7 50%, #ffffff 100%) !important;
}

html body #wowAiWidget .wow-ai-title-wrap strong {
    letter-spacing: -1px !important;
}

html body #wowAiWidget .wow-ai-title-wrap p {
    color: #4b5563 !important;
    font-weight: 700 !important;
}

/* ------------------------------
   왼쪽 패널: 일반 질문 가능 안내에 맞춘 톤
------------------------------ */
html body #wowAiWidget .wow-ai-left-eyebrow {
    background: rgba(215, 25, 32, 0.08) !important;
    color: #d71920 !important;
    border-color: rgba(215, 25, 32, 0.20) !important;
}

html body #wowAiWidget .wow-ai-left-head h3 {
    color: #111111 !important;
}

html body #wowAiWidget .wow-ai-left-head p {
    color: #5f6673 !important;
    font-weight: 600 !important;
}

html body #wowAiWidget .wow-ai-status-card {
    background:
        radial-gradient(circle at 90% 16%, rgba(215, 25, 32, 0.34) 0%, rgba(215, 25, 32, 0) 32%),
        linear-gradient(145deg, #111111 0%, #1b1b1f 58%, #111111 100%) !important;
    box-shadow: 0 16px 38px rgba(17, 17, 17, 0.15) !important;
}

/* ------------------------------
   첫 화면 빠른 버튼
   PHP v3 기준: 웨딩 준비 질문 / 원하는 업체 연결 / 지역별 업체 찾기
------------------------------ */
html body #wowAiWidget .wow-ai-quick {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 12px 0 22px 50px !important;
    max-width: 760px !important;
}

html body #wowAiWidget .wow-ai-quick button {
    position: relative !important;
    min-height: 78px !important;
    height: auto !important;
    border-radius: 18px !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
    background:
        linear-gradient(180deg, #ffffff 0%, #fbfbfc 100%) !important;
    color: #111111 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
    letter-spacing: -0.45px !important;
    text-align: left !important;
    cursor: pointer !important;
    padding: 16px 15px 14px !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.055) !important;
    overflow: hidden !important;
    white-space: normal !important;
    transition:
        border-color .22s ease,
        background .22s ease,
        color .22s ease,
        transform .22s ease,
        box-shadow .22s ease !important;
}

html body #wowAiWidget .wow-ai-quick button::before {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 42px !important;
    height: 24px !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, 0.08) !important;
    color: #d71920 !important;
    border: 1px solid rgba(215, 25, 32, 0.16) !important;
    font-size: 10px !important;
    font-weight: 950 !important;
    letter-spacing: .5px !important;
    margin: 0 0 9px !important;
    padding: 0 9px !important;
}

html body #wowAiWidget .wow-ai-quick button:nth-child(1)::before {
    content: "Q&A" !important;
}

html body #wowAiWidget .wow-ai-quick button:nth-child(2)::before {
    content: "DIRECT" !important;
}

html body #wowAiWidget .wow-ai-quick button:nth-child(3)::before {
    content: "SEARCH" !important;
}

html body #wowAiWidget .wow-ai-quick button::after {
    content: "" !important;
    position: absolute !important;
    right: -22px !important;
    bottom: -28px !important;
    width: 82px !important;
    height: 82px !important;
    border-radius: 999px !important;
    background: rgba(215, 25, 32, 0.045) !important;
    pointer-events: none !important;
}

html body #wowAiWidget .wow-ai-quick button:hover {
    border-color: rgba(215, 25, 32, 0.42) !important;
    background:
        linear-gradient(180deg, #ffffff 0%, #fff5f5 100%) !important;
    color: #d71920 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 16px 34px rgba(215, 25, 32, 0.12) !important;
}

html body #wowAiWidget .wow-ai-quick button:active {
    transform: translateY(0) !important;
}

/* ------------------------------
   채팅 말풍선: 상담형 GPT 답변 가독성 강화
------------------------------ */
html body #wowAiWidget .wow-ai-body {
    background:
        radial-gradient(circle at 12% 8%, rgba(215, 25, 32, 0.055) 0%, rgba(215, 25, 32, 0) 28%),
        linear-gradient(180deg, #f8f8f9 0%, #f1f2f4 100%) !important;
}

html body #wowAiWidget .wow-ai-bubble {
    font-size: 14px !important;
    line-height: 1.68 !important;
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
}

html body #wowAiWidget .wow-ai-msg.ai .wow-ai-bubble {
    background: #ffffff !important;
    border-color: rgba(17, 17, 17, 0.08) !important;
}

html body #wowAiWidget .wow-ai-msg.ai .wow-ai-bubble b,
html body #wowAiWidget .wow-ai-msg.ai .wow-ai-bubble strong {
    color: #111111 !important;
    font-weight: 950 !important;
}

html body #wowAiWidget .wow-ai-msg.user .wow-ai-bubble {
    background: linear-gradient(145deg, #ed1c24 0%, #d71920 58%, #a90d13 100%) !important;
    border-color: #d71920 !important;
}

html body #wowAiWidget .wow-ai-typing .wow-ai-bubble {
    background: #ffffff !important;
    color: #6b7280 !important;
}

/* ------------------------------
   액션 버튼: YES/NO/연결요청 버튼 정리
------------------------------ */
html body #wowAiWidget .wow-ai-action-row {
    margin: 8px 0 20px 50px !important;
    gap: 9px !important;
}

html body #wowAiWidget .wow-ai-action-btn {
    min-height: 40px !important;
    padding: 0 15px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(17, 17, 17, 0.10) !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.045) !important;
    transition: transform .2s ease, border-color .2s ease, color .2s ease, background .2s ease !important;
}

html body #wowAiWidget .wow-ai-action-btn.primary {
    background: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(215, 25, 32, 0.23) !important;
}

html body #wowAiWidget .wow-ai-action-btn:hover {
    border-color: rgba(215, 25, 32, 0.45) !important;
    color: #d71920 !important;
    transform: translateY(-1px) !important;
}

html body #wowAiWidget .wow-ai-action-btn.primary:hover {
    background: #b70f17 !important;
    border-color: #b70f17 !important;
    color: #ffffff !important;
}

/* ------------------------------
   검색결과 카드: 외부/인증 표현 없이 자연스럽게
------------------------------ */
html body #wowAiWidget .wow-ai-result-wrap {
    margin: 10px 0 22px 50px !important;
    max-width: 780px !important;
}

html body #wowAiWidget .wow-ai-result-title strong {
    font-size: 16px !important;
    letter-spacing: -0.5px !important;
}

html body #wowAiWidget .wow-ai-result-title span {
    background: #ffffff !important;
    color: #4b5563 !important;
    border-color: rgba(17, 17, 17, 0.08) !important;
}

html body #wowAiWidget .wow-ai-result-card {
    border-color: rgba(17, 17, 17, 0.08) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.055) !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

html body #wowAiWidget .wow-ai-result-card:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(215, 25, 32, 0.30) !important;
    box-shadow: 0 18px 36px rgba(215, 25, 32, 0.10) !important;
}

html body #wowAiWidget .wow-ai-result-badge {
    background: rgba(215, 25, 32, 0.08) !important;
    border-color: rgba(215, 25, 32, 0.18) !important;
    color: #d71920 !important;
}

html body #wowAiWidget .wow-ai-result-desc {
    color: #5f6673 !important;
    word-break: keep-all !important;
}

/* ------------------------------
   입력창: 일반 질문도 가능하다는 느낌의 안정적인 UI
------------------------------ */
html body #wowAiWidget .wow-ai-input {
    background: rgba(255, 255, 255, 0.98) !important;
}

html body #wowAiWidget .wow-ai-input input {
    background: #f8f9fb !important;
    border-color: rgba(17, 17, 17, 0.10) !important;
    color: #111111 !important;
}

html body #wowAiWidget .wow-ai-input input:focus {
    background: #ffffff !important;
    border-color: rgba(215, 25, 32, 0.60) !important;
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.08) !important;
}

html body #wowAiWidget .wow-ai-input button {
    background: linear-gradient(145deg, #ed1c24 0%, #d71920 58%, #a90d13 100%) !important;
    box-shadow: none !important;
}

html body #wowAiWidget .wow-ai-input button:hover {
    background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 58%, #3b0764 100%) !important;
}

/* ------------------------------
   접수폼: 왼쪽 패널 안에서 더 깔끔하게
------------------------------ */
html body #wowAiWidget .wow-ai-lead {
    border-color: rgba(17, 17, 17, 0.08) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.045) !important;
}

html body #wowAiWidget .wow-ai-lead input,
html body #wowAiWidget .wow-ai-lead textarea {
    border-color: rgba(17, 17, 17, 0.10) !important;
    background: #ffffff !important;
}

html body #wowAiWidget .wow-ai-lead input:focus,
html body #wowAiWidget .wow-ai-lead textarea:focus {
    border-color: rgba(215, 25, 32, 0.60) !important;
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.08) !important;
}

/* ------------------------------
   모바일 최적화
------------------------------ */
@media (max-width: 900px) {
    html body #wowAiWidget .wow-ai-quick {
        grid-template-columns: 1fr !important;
        margin: 10px 0 18px 0 !important;
        max-width: none !important;
    }

    html body #wowAiWidget .wow-ai-quick button {
        min-height: 64px !important;
        padding: 14px 15px !important;
    }

    html body #wowAiWidget .wow-ai-action-row,
    html body #wowAiWidget .wow-ai-result-wrap {
        margin-left: 0 !important;
    }

    html body #wowAiWidget .wow-ai-bubble {
        word-break: keep-all !important;
        overflow-wrap: anywhere !important;
    }
}

@media (max-width: 640px) {
    html body #wowAiWidget .wow-ai-title-wrap strong {
        font-size: 17px !important;
    }

    html body #wowAiWidget .wow-ai-title-wrap p {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    html body #wowAiWidget .wow-ai-left-head h3 {
        font-size: 21px !important;
    }

    html body #wowAiWidget .wow-ai-left-head p {
        font-size: 13px !important;
    }

    html body #wowAiWidget .wow-ai-bubble {
        max-width: 86% !important;
        font-size: 13px !important;
        line-height: 1.62 !important;
    }

    html body #wowAiWidget .wow-ai-quick button::before {
        margin-bottom: 7px !important;
    }

    html body #wowAiWidget .wow-ai-input input::placeholder {
        color: #9ca3af !important;
    }
}

/* ------------------------------
   기존 hover transform 무력화와 충돌 방지
   플로팅 버튼은 정적 유지, 색상만 변경
------------------------------ */
html body #wowAiOpen,
html body #wowAiMobileDirectLauncher {
    box-shadow: none !important;
}

html body #wowAiOpen:hover,
html body #wowAiMobileDirectLauncher:hover {
    transform: translate3d(0, 0, 0) !important;
    box-shadow: none !important;
}

/* =========================================================
   WOW웨딩 AI매칭센터 검색중 UX v4
   - chat.js v4 progress loading 전용
   - 검색중 / 확인중 / 정리중 말풍선 애니메이션
========================================================= */

#wowAiWidget .wow-ai-progress-typing {
    animation: wowAiProgressIn .24s ease-out both !important;
}

#wowAiWidget .wow-ai-progress-typing .wow-ai-bubble {
    min-width: 230px !important;
    max-width: 84% !important;
    padding: 15px 48px 23px 18px !important;
    border: 1px solid rgba(215, 25, 32, 0.16) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 248, 248, 0.96) 100%) !important;
    color: #30343b !important;
    box-shadow:
        0 14px 34px rgba(215, 25, 32, 0.08),
        0 4px 14px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
}

#wowAiWidget .wow-ai-progress-typing .wow-ai-bubble::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 4px !important;
    height: 100% !important;
    background: linear-gradient(180deg, #ff4b55 0%, var(--wow-red) 50%, #b70f17 100%) !important;
    opacity: 0.95 !important;
}

#wowAiWidget .wow-ai-progress-typing .wow-ai-bubble::after {
    content: "" !important;
    position: absolute !important;
    left: -45% !important;
    top: 0 !important;
    width: 45% !important;
    height: 100% !important;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(215, 25, 32, 0.055) 50%,
        rgba(255, 255, 255, 0) 100%
    ) !important;
    animation: wowAiScanLight 1.85s ease-in-out infinite !important;
    pointer-events: none !important;
}

#wowAiWidget .wow-ai-loading-line {
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #2f3338 !important;
    font-size: 13.5px !important;
    font-weight: 850 !important;
    letter-spacing: -0.25px !important;
    line-height: 1.55 !important;
    word-break: keep-all !important;
}

#wowAiWidget .wow-ai-loading-line::before {
    content: "" !important;
    flex: 0 0 auto !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 999px !important;
    border: 2px solid rgba(215, 25, 32, 0.18) !important;
    border-top-color: var(--wow-red) !important;
    border-right-color: rgba(215, 25, 32, 0.55) !important;
    animation: wowAiSpin .78s linear infinite !important;
}

#wowAiWidget .wow-ai-loading-dots {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    margin-left: 1px !important;
    transform: translateY(1px) !important;
}

#wowAiWidget .wow-ai-loading-dots i {
    display: block !important;
    width: 4px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: var(--wow-red) !important;
    opacity: 0.3 !important;
    animation: wowAiDotPulse 1.05s ease-in-out infinite !important;
}

#wowAiWidget .wow-ai-loading-dots i:nth-child(2) {
    animation-delay: .14s !important;
}

#wowAiWidget .wow-ai-loading-dots i:nth-child(3) {
    animation-delay: .28s !important;
}

/* 진행 모드별 미세 색상 / 아이콘 느낌 */
#wowAiWidget .wow-ai-progress-vendor-info .wow-ai-bubble {
    border-color: rgba(215, 25, 32, 0.20) !important;
}

#wowAiWidget .wow-ai-progress-vendor-info .wow-ai-loading-line::before {
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.055) !important;
}

#wowAiWidget .wow-ai-progress-search .wow-ai-bubble {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(248, 250, 252, 0.98) 100%) !important;
    border-color: rgba(17, 24, 39, 0.10) !important;
}

#wowAiWidget .wow-ai-progress-search .wow-ai-bubble::before {
    background: linear-gradient(180deg, #111111 0%, #444444 100%) !important;
}

#wowAiWidget .wow-ai-progress-search .wow-ai-loading-line::before {
    border-color: rgba(17, 24, 39, 0.18) !important;
    border-top-color: #111111 !important;
    border-right-color: rgba(17, 24, 39, 0.5) !important;
}

#wowAiWidget .wow-ai-progress-search .wow-ai-loading-dots i {
    background: #111111 !important;
}

#wowAiWidget .wow-ai-progress-partner .wow-ai-bubble {
    border-color: rgba(215, 25, 32, 0.18) !important;
}

#wowAiWidget .wow-ai-progress-general .wow-ai-bubble {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(250, 250, 250, 0.98) 100%) !important;
    border-color: rgba(17, 17, 17, 0.08) !important;
}

#wowAiWidget .wow-ai-progress-general .wow-ai-bubble::before {
    background: linear-gradient(180deg, #6b7280 0%, #111111 100%) !important;
}

#wowAiWidget .wow-ai-progress-general .wow-ai-loading-line::before {
    border-color: rgba(17, 17, 17, 0.15) !important;
    border-top-color: #111111 !important;
    border-right-color: rgba(17, 17, 17, 0.45) !important;
}

#wowAiWidget .wow-ai-progress-general .wow-ai-loading-dots i {
    background: #111111 !important;
}

/* 일반 typing 기본값도 v4 스타일로 보강 */
#wowAiWidget .wow-ai-typing:not(.wow-ai-progress-typing) .wow-ai-bubble {
    min-width: 170px !important;
    color: #4b5563 !important;
    background: #ffffff !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.045) !important;
}

/* 답변 카드가 검색중 말풍선 다음에 자연스럽게 올라오도록 */
#wowAiWidget .wow-ai-msg.ai:not(.wow-ai-typing) .wow-ai-bubble {
    animation: wowAiAnswerIn .22s ease-out both !important;
}

/* 채팅 입력 중에도 버튼이 눌린 느낌 */
#wowAiWidget .wow-ai-send:disabled,
#wowAiWidget button[disabled] {
    opacity: .68 !important;
    cursor: wait !important;
}

/* 애니메이션 */
@keyframes wowAiProgressIn {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.985);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

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

@keyframes wowAiSpin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes wowAiDotPulse {
    0%, 80%, 100% {
        opacity: .25;
        transform: translateY(0) scale(.82);
    }
    40% {
        opacity: 1;
        transform: translateY(-2px) scale(1);
    }
}

@keyframes wowAiScanLight {
    0% {
        left: -55%;
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    75% {
        opacity: 1;
    }
    100% {
        left: 115%;
        opacity: 0;
    }
}

/* 모바일 검색중 UX */
@media (max-width: 640px) {
    #wowAiWidget .wow-ai-progress-typing .wow-ai-bubble {
        min-width: 210px !important;
        max-width: calc(100vw - 92px) !important;
        padding: 14px 42px 22px 16px !important;
    }

    #wowAiWidget .wow-ai-loading-line {
        font-size: 13px !important;
        line-height: 1.5 !important;
        gap: 7px !important;
    }

    #wowAiWidget .wow-ai-loading-line::before {
        width: 15px !important;
        height: 15px !important;
    }
}

/* 사용자가 움직임 줄이기를 설정한 경우 */
@media (prefers-reduced-motion: reduce) {
    #wowAiWidget .wow-ai-progress-typing,
    #wowAiWidget .wow-ai-msg.ai:not(.wow-ai-typing) .wow-ai-bubble,
    #wowAiWidget .wow-ai-loading-line::before,
    #wowAiWidget .wow-ai-loading-dots i,
    #wowAiWidget .wow-ai-progress-typing .wow-ai-bubble::after {
        animation: none !important;
    }
}

