/**
 * Custom Store Locator Styles
 *
 * All styles are wrapped under .custom_store_locator class
 * This allows for easy customization and prevents style conflicts
 */

.custom_store_locator {
    /* Top Search Bar */
    .gorilladash-locator-top-search {
        background: #2b2b2b;
        border: 0;
        border-top: 1px solid #3a3a3a;
        border-bottom: 1px solid #3a3a3a;
    }

    /* Container with left/right panels */
    .gorilladash-store-locator-container {
        background: #2b2b2b;
        border: 0;
        border-bottom: 1px solid #3a3a3a;
    }

    /* Left Panel - Results Only */
    .gorilladash-locator-left-panel {
        background: #2b2b2b;
        color: #fff;
    }

    /* Find Location Button */
    .gorilladash-find-location-btn {
        color: #F6F3EC;
    }

    .gorilladash-find-location-btn svg {
        color: #E62525;
    }

    /* Service Filter */
    .gorilladash-service-filter {
        background: #3a3a3a;
        color: #fff;
        border: 1px solid #4a4a4a;
    }

    .gorilladash-service-filter:hover {
        background-color: #454545;
    }

    /* Search Input in Top Bar */
    .gorilladash-locator-top-search .gorilladash-search-address-input {
        background: #3a3a3a;
        color: #fff;
        border: 1px solid #4a4a4a;
    }

    .gorilladash-locator-top-search .gorilladash-search-address-input::placeholder {
        color: #ccc;
    }

    .gorilladash-locator-top-search .gorilladash-search-address-input:focus {
        border-color: #666;
        background: #404040;
        color: #fff;
    }

    /* Red Search Button */
    .gorilladash-search-btn-red {
        background: #d32f2f;
        color: #fff;
    }

    .gorilladash-search-btn-red:hover {
        background: #b71c1c;
    }

    /* Results Container */
    .gorilladash-locator-results {
        background: #2b2b2b;
    }

    /* Store Card */
    .gorilladash-store-card {
        background: #2B2B2B;
        border: 1px solid #3a3a3a;
    }

    .gorilladash-store-card:hover {
        background: #353535;
        border-color: #4a4a4a;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    }

    /* Section 1: Name, Rating, Reviews & Image */
    .gorilladash-card-section-1 {
        border-bottom: 1px solid #363636;
    }

    .gorilladash-store-card-title {
        color: #fff !important;
    }

    .gorilladash-star-full {
        color: #FFB800;
    }

    .gorilladash-rating-number {
        color: #F6F3EC;
    }

    .gorilladash-reviews-count {
        color: #F6F3EC;
    }

    .gorilladash-status-dot.open {
        color: #4caf50;
    }

    .gorilladash-status-dot.closed {
        color: #f44336;
    }

    .gorilladash-status-text.open {
        color: #F6F3EC;
    }

    .gorilladash-status-text.closed {
        color: #f44336;
    }

    .gorilladash-store-distance {
        color: #aaa;
    }

    /* Store Card - Image */
    .gorilladash-store-card-image {
        background: #3a3a3a;
    }

    /* Section 2: Address, Phone, Hours */
    .gorilladash-card-section-2 {
        border-bottom: 1px solid #363636;
    }

    .gorilladash-store-card-address {
        color: #F6F3EC;
    }

    .gorilladash-store-card-phone {
        color: #E53935;
    }

    .gorilladash-store-card-hours {
        color: #F6F3EC;
    }

    .gorilladash-btn-view-location {
        background: transparent;
        color: #F6F3EC;
        border: 1px solid #F6F3EC;
    }

    .gorilladash-btn-view-location:hover {
        background: rgba(246, 243, 236, 0.1);
        border-color: #F6F3EC;
    }

    .gorilladash-btn-request-quote {
        background: #E62525;
        color: #fff;
    }

    .gorilladash-btn-request-quote:hover {
        background: #C62828;
    }

    .gorilladash-locator-map-loading {
        background: #f5f5f5;
        color: #666;
    }

    /* Hide Google Maps InfoWindow close button */
    .gm-ui-hover-effect {
        display: none !important;
    }

    /* Remove dashed line below InfoWindow title */
    .gm-style-iw {
        outline: none !important;
        border: none !important;
    }

    .gm-style-iw-tc {
        outline: none !important;
        border: none !important;
    }

    .gm-style-iw-t::after {
        display: none !important;
    }

    .gm-style-iw button {
        outline: none !important;
    }

    .gm-style-iw * {
        outline: none !important;
    }

    .gm-style-iw *:focus {
        outline: none !important;
        box-shadow: none !important;
    }
}
