/**
 * GeoDirectory single place — dark theme overrides for GD shortcodes.
 * Scoped to body.single-gd_place and .gd-place-content
 */

body.single-gd_place {
    background-color: var(--pbd-bg, #121212);
}

.bl-wrap--single-gd {
    align-items: start;
}

.gd-place-main {
    min-width: 0;
}

.gd-place-header {
    margin-bottom: 20px;
}

.gd-place-header__title {
    margin-bottom: 6px;
}

.gd-place-header__location {
    color: var(--bl-subtle, #777);
}

/* ── GD content wrapper ─────────────────────────────── */
.gd-place-content {
    color: var(--bl-text, #f0f0f0);
    font-family: var(--pbd-font);
    line-height: 1.65;
}

.gd-place-content .bsui,
.gd-place-content .geodir-post-meta-container,
.gd-place-content .geodir-post-content-container,
.gd-place-content .geodir-post-address-container,
.gd-place-content .geodir-single-taxonomies-container,
.gd-place-content .geodir-single-reviews-container,
.gd-place-content .geodir-wgt-map,
.gd-place-content .geodir-pos_navigation {
    color: var(--bl-text, #f0f0f0);
}

.gd-place-content a {
    color: var(--bl-orange, #ff6600);
}

.gd-place-content a:hover {
    color: var(--bl-orange-glow, #ff9933);
}

/* Override shortcode inline black text */
.gd-place-content .geodir_post_meta,
.gd-place-content .geodir_post_meta_title,
.gd-place-content .geodir_post_meta a,
.gd-place-content .geodir-category a,
.gd-place-content .geodir-tags a,
.gd-place-content .gv-secondary {
    color: var(--bl-muted, #b0b0b0) !important;
}

.gd-place-content .geodir_post_meta a:hover,
.gd-place-content .geodir-category a:hover,
.gd-place-content .geodir-tags a:hover {
    color: var(--bl-orange, #ff6600) !important;
}

.gd-place-content .geodir_post_meta_icon {
    color: var(--bl-orange, #ff6600);
}

/* Meta rows */
.gd-place-content .geodir_post_meta {
    background: var(--bl-bg-row, #1a1a1a);
    border: 1px solid var(--bl-border, #2a2a2a);
    border-radius: var(--bl-radius, 4px);
    padding: 12px 14px;
    margin-bottom: 12px;
}

.gd-place-content .geodir-post-content-container {
    background: var(--bl-bg-row, #1a1a1a);
    border: 1px solid var(--bl-border, #2a2a2a);
    border-radius: var(--bl-radius, 4px);
    padding: 20px;
    margin-bottom: 20px;
}

.gd-place-content .geodir-post-content-container p,
.gd-place-content .geodir-post-content-container li {
    color: var(--bl-muted, #b0b0b0);
}

/* Image slider */
.gd-place-content .geodir-image-container,
.gd-place-content .carousel,
.gd-place-content .carousel-inner {
    border-radius: var(--bl-radius, 4px);
    overflow: hidden;
    margin-bottom: 20px;
}

.gd-place-content .carousel-caption {
    background: rgba(0, 0, 0, 0.65);
    border-radius: var(--bl-radius-sm, 3px);
}

/* Map */
.gd-place-content .geodir-map-wrap,
.gd-place-content .geodir_map_container,
.gd-place-content .geodir-map-canvas {
    border-radius: var(--bl-radius, 4px);
    overflow: hidden;
    border: 1px solid var(--bl-border, #2a2a2a);
    margin-bottom: 20px;
    max-width: 100%;
}

.gd-place-content .geodir-map-canvas,
.gd-place-content .geodir_map_container {
    min-height: 280px;
    height: auto !important;
}

/* Taxonomies pills */
.gd-place-content .geodir-single-taxonomies-container {
    margin-bottom: 16px;
}

.gd-place-content .geodir-category,
.gd-place-content .geodir-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.gd-place-content .geodir-category a,
.gd-place-content .geodir-tags a {
    display: inline-block;
    padding: 4px 10px;
    background: var(--bl-orange-light, rgba(255, 102, 0, 0.15));
    border-radius: var(--bl-radius-sm, 3px);
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
}

/* Reviews */
.gd-place-content .geodir-single-reviews-container {
    background: var(--bl-bg-row, #1a1a1a);
    border: 1px solid var(--bl-border, #2a2a2a);
    border-radius: var(--bl-radius, 4px);
    padding: 20px;
    margin-bottom: 20px;
}

.gd-place-content .geodir-comments-area,
.gd-place-content .comment-list,
.gd-place-content .comment-respond {
    color: var(--bl-muted, #b0b0b0);
}

.gd-place-content .comment-respond input[type="text"],
.gd-place-content .comment-respond input[type="email"],
.gd-place-content .comment-respond input[type="url"],
.gd-place-content .comment-respond textarea {
    background: var(--bl-bg-elevated, #222);
    border: 1px solid var(--bl-border, #2a2a2a);
    color: var(--bl-text, #f0f0f0);
    border-radius: var(--bl-radius-sm, 3px);
}

.gd-place-content .comment-respond input[type="submit"] {
    background: var(--bl-orange, #ff6600);
    border: none;
    color: #fff;
    padding: 8px 16px;
    border-radius: var(--bl-radius-sm, 3px);
    cursor: pointer;
}

/* Next / prev navigation */
.gd-place-content .geodir-pos_navigation {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
}

.gd-place-content .geodir-pos_navigation a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    background: var(--bl-bg-row, #1a1a1a);
    border: 1px solid var(--bl-border, #2a2a2a);
    border-radius: var(--bl-radius-sm, 3px);
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
}

.gd-place-content .geodir-pos_navigation a:hover {
    border-color: var(--bl-orange, #ff6600);
    background: var(--bl-orange-light, rgba(255, 102, 0, 0.15));
}

/* Notifications widget */
.gd-place-content .geodir-notifications,
.gd-place-content .wp-block-geodirectory-geodir-widget-notifications {
    margin-bottom: 16px;
}

/* Bootstrap modal overrides inside GD */
.gd-place-content .modal-content {
    background: var(--bl-bg-elevated, #222);
    color: var(--bl-text, #f0f0f0);
    border: 1px solid var(--bl-border, #2a2a2a);
}

.gd-place-comments {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--bl-border, #2a2a2a);
}

/* ── Responsive ─────────────────────────────────────── */
@media (max-width: 900px) {
    .bl-wrap--single-gd {
        grid-template-columns: 1fr;
    }

    .gd-place-content .geodir-map-canvas,
    .gd-place-content .geodir_map_container {
        min-height: 220px;
    }

    .gd-place-content .geodir-pos_navigation {
        flex-direction: column;
    }

    .gd-place-content .geodir-pos_navigation a {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .gd-place-content .geodir-post-content-container,
    .gd-place-content .geodir-single-reviews-container {
        padding: 14px;
    }
}
