/* Complete dark-mode treatment for the storefront contact page. */
[data-theme="dark"] .contact-page {
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .shop-breadcrumb-bar {
    background: transparent !important;
    border-bottom-color: var(--theme-border) !important;
}

[data-theme="dark"] .contact-page .co-page-wrap {
    background: transparent !important;
}

[data-theme="dark"] .contact-page .co-section-card,
[data-theme="dark"] .contact-page .contact-info-card {
    background: linear-gradient(145deg, var(--theme-surface-raised), var(--theme-surface)) !important;
    border-color: var(--theme-border) !important;
    box-shadow: var(--theme-shadow-sm) !important;
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .co-section-header {
    background: var(--theme-surface-muted) !important;
    border-bottom-color: var(--theme-border) !important;
    color: var(--theme-text-strong) !important;
}

[data-theme="dark"] .contact-page .co-section-header i {
    color: var(--theme-primary) !important;
}

[data-theme="dark"] .contact-page .co-section-body {
    background: transparent !important;
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .co-form-group {
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .co-label {
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .co-required {
    color: #fda4af !important;
}

[data-theme="dark"] .contact-page .co-input,
[data-theme="dark"] .contact-page .co-textarea,
[data-theme="dark"] .contact-page input,
[data-theme="dark"] .contact-page textarea,
[data-theme="dark"] .contact-page .form-control {
    background: #101a2b !important;
    border-color: var(--theme-border-strong) !important;
    color: var(--theme-text-strong) !important;
}

[data-theme="dark"] .contact-page .co-input::placeholder,
[data-theme="dark"] .contact-page .co-textarea::placeholder,
[data-theme="dark"] .contact-page input::placeholder,
[data-theme="dark"] .contact-page textarea::placeholder {
    color: var(--theme-text-subtle) !important;
    opacity: 1 !important;
}

[data-theme="dark"] .contact-page .co-input:focus,
[data-theme="dark"] .contact-page .co-textarea:focus,
[data-theme="dark"] .contact-page input:focus,
[data-theme="dark"] .contact-page textarea:focus {
    background: #17243a !important;
    border-color: var(--theme-accent) !important;
    box-shadow: 0 0 0 3px var(--theme-focus) !important;
    outline: none;
}

[data-theme="dark"] .contact-page .co-input.is-invalid,
[data-theme="dark"] .contact-page .co-textarea.is-invalid {
    border-color: #f08b9b !important;
}

[data-theme="dark"] .contact-page .co-place-order-btn {
    background: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: var(--theme-on-primary) !important;
    box-shadow: 0 6px 18px rgba(225, 170, 163, .18);
}

[data-theme="dark"] .contact-page .co-place-order-btn:hover,
[data-theme="dark"] .contact-page .co-place-order-btn:focus-visible {
    background: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
    color: var(--theme-on-primary) !important;
}

[data-theme="dark"] .contact-page .cart-alert--success {
    background: rgba(16, 185, 129, .13) !important;
    border-color: rgba(110, 231, 183, .3) !important;
    color: #9af4cf !important;
}

[data-theme="dark"] .contact-page .text-danger {
    color: #fda4af !important;
}

[data-theme="dark"] .contact-page .contact-map-wrap {
    border-color: var(--theme-border) !important;
    box-shadow: var(--theme-shadow-sm) !important;
    background: var(--theme-surface) !important;
}

[data-theme="dark"] .contact-page .contact-info-item {
    border-bottom-color: var(--theme-border) !important;
    color: var(--theme-text) !important;
}

[data-theme="dark"] .contact-page .contact-info-item:hover {
    background: rgba(154, 175, 255, .08) !important;
}

[data-theme="dark"] .contact-page .contact-info-icon {
    background: linear-gradient(135deg, #596fc9, #3f4f9f) !important;
    color: #fff !important;
    box-shadow: 0 5px 14px rgba(63, 79, 159, .24);
}

[data-theme="dark"] .contact-page .contact-info-label {
    color: var(--theme-text-subtle) !important;
}

[data-theme="dark"] .contact-page .contact-info-value {
    color: var(--theme-text-strong) !important;
}

@media (max-width: 767.98px) {
    [data-theme="dark"] .contact-page .contact-map {
        height: 210px;
    }

    [data-theme="dark"] .contact-page .co-place-order-btn {
        width: 100%;
    }
}
