/* ==============================================================================
   CLICK TO CALL WIDGET — assets/css/click-to-call.css
   Dark theme with gold accent — styled to match Yealin Communications
   ============================================================================== */

/* Outer container */
.ctc-widget {
    background-color: #111111;
    border: 1px solid #2a2a2a;
    border-radius: 8px;
    padding: 36px;
    max-width: 560px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Heading */
.ctc-title {
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.3 !important;
}

/* Subtitle */
.ctc-subtitle {
    color: #aaaaaa !important;
    font-size: 15px !important;
    margin: 0 0 24px 0 !important;
    line-height: 1.6 !important;
}

/* Input + button row */
.ctc-row {
    display: flex;
    gap: 10px;
    align-items: stretch;
    flex-wrap: wrap;
}

/* Phone number input */
.ctc-input {
    flex: 1;
    min-width: 160px;
    padding: 14px 18px;
    font-size: 15px;
    font-family: inherit;
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    border: 1px solid #3a3a3a !important;
    border-radius: 5px !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
}

.ctc-input:focus {
    border-color: #c9a84c !important;
    box-shadow: none !important;
    outline: none !important;
}

.ctc-input::placeholder {
    color: #555555 !important;
    opacity: 1;
}

/* Call Me Now button */
.ctc-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 14px 26px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: inherit !important;
    background-color: #c9a84c !important;
    color: #111111 !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    letter-spacing: 0.3px !important;
    box-shadow: none !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
    text-decoration: none !important;
}

.ctc-button:hover {
    background-color: #b8943d !important;
    color: #111111 !important;
    text-decoration: none !important;
}

.ctc-button:active {
    transform: scale(0.98) !important;
}

.ctc-button:disabled,
.ctc-button[disabled] {
    background-color: #8a6e2a !important;
    color: #666666 !important;
    cursor: not-allowed !important;
    transform: none !important;
    opacity: 1 !important;
}

/* SVG phone icon inside the button */
.ctc-phone-icon {
    flex-shrink: 0;
    color: #111111;
    transition: color 0.2s ease;
}

.ctc-button:hover .ctc-phone-icon {
    color: #111111;
}

.ctc-button:disabled .ctc-phone-icon,
.ctc-button[disabled] .ctc-phone-icon {
    color: #666666;
}

/* Status message area */
.ctc-status {
    display: block !important;
    margin: 16px 0 0 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    min-height: 24px !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    transition: color 0.2s ease !important;
}

/* Green — call placed successfully */
.ctc-status.ctc-success,
p.ctc-status.ctc-success,
#ctc-status.ctc-success {
    color: #4caf50 !important;
}

/* Red — something went wrong */
.ctc-status.ctc-error,
p.ctc-status.ctc-error,
#ctc-status.ctc-error {
    color: #f44336 !important;
}

/* Grey — connecting / please wait */
.ctc-status.ctc-info,
p.ctc-status.ctc-info,
#ctc-status.ctc-info {
    color: #aaaaaa !important;
}

/* Mobile — stack input above button */
@media (max-width: 520px) {
    .ctc-widget {
        padding: 24px 20px;
    }
    .ctc-title {
        font-size: 19px !important;
    }
    .ctc-row {
        flex-direction: column;
        gap: 12px;
    }
    .ctc-input,
    .ctc-button {
        width: 100% !important;
        min-width: unset !important;
    }
    .ctc-button {
        justify-content: center !important;
    }
}
