/* 360 Harita — Dashboard V2 isolated parcel-detail design. */

body.map-dashboard-v2-page {
    --parcel-v2-navy: #10233f;
    --parcel-v2-blue: #2367d1;
    --parcel-v2-blue-soft: #edf4ff;
    --parcel-v2-teal: #0c8d7c;
    --parcel-v2-teal-soft: #e9f8f4;
    --parcel-v2-amber: #c98212;
    --parcel-v2-amber-soft: #fff7e5;
    --parcel-v2-red: #b83b49;
    --parcel-v2-red-soft: #fff0f1;
    --parcel-v2-violet: #7053c8;
    --parcel-v2-cyan: #12889d;
    --parcel-v2-ink: #152238;
    --parcel-v2-muted: #65748a;
    --parcel-v2-border: #dfe6ef;
    --parcel-v2-surface: #ffffff;
    --parcel-v2-canvas: #f7f9fc;
    --parcel-v2-shadow: 0 18px 48px rgba(15, 35, 62, 0.12);
    --parcel-v2-command-height: 56px;
    --parcel-v2-tab-height: 58px;
    --parcel-v2-content-max: 1660px;
}

body.map-dashboard-v2-page.parcel-v2-detail-open {
    overflow: hidden;
}

body.map-dashboard-v2-page.parcel-v2-detail-open > .modal-backdrop.show {
    opacity: 0.08;
    background: #0a1728;
}

/* Keep Bootstrap Modal lifecycle/focus semantics, change only its geometry. */
@media (min-width: 768px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal {
        padding: 0 !important;
        width: 100vw;
        overflow: hidden !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-dialog {
        position: fixed;
        inset: 0 0 0 auto;
        width: min(620px, 92vw);
        max-width: 100vw;
        height: 100dvh;
        min-height: 100dvh;
        margin: 0;
        transform: translate3d(100%, 0, 0) !important;
        transition: transform 260ms cubic-bezier(0.2, 0.72, 0.22, 1),
                    width 260ms cubic-bezier(0.2, 0.72, 0.22, 1) !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.show .modal-dialog {
        transform: translate3d(0, 0, 0) !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .modal-dialog {
        width: 100vw;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-content {
        height: 100dvh;
        max-height: 100dvh;
        border: 0;
        border-left: 1px solid rgba(15, 35, 62, 0.12);
        border-radius: 18px 0 0 18px;
        box-shadow: -18px 0 46px rgba(15, 35, 62, 0.18);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .modal-content {
        border-left: 0;
        border-radius: 0;
        box-shadow: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-actions {
        display: none !important;
    }

    body.map-dashboard-v2-page .parcel-v2-footer {
        display: grid;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .parcel-v2-footer {
        display: none;
    }
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-content {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: var(--parcel-v2-canvas);
}

body.map-dashboard-v2-page .parcel-v2-commandbar {
    position: relative;
    z-index: 10;
    display: flex;
    min-height: var(--parcel-v2-command-height);
    flex: 0 0 var(--parcel-v2-command-height);
    padding: 0 max(22px, calc((100vw - var(--parcel-v2-content-max)) / 2 + 22px));
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    color: #dbe7f5;
    background: #0e213b;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

body.map-dashboard-v2-page .parcel-v2-command-context {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 9px;
    color: #9fb0c5;
    font-size: 0.78rem;
    line-height: 1;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-command-context strong {
    overflow: hidden;
    color: #f6f9fc;
    font-weight: 720;
    text-overflow: ellipsis;
}

body.map-dashboard-v2-page .parcel-v2-command-context span[aria-hidden="true"] {
    color: #647a95;
}

body.map-dashboard-v2-page .parcel-v2-command-actions {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

body.map-dashboard-v2-page .parcel-v2-command-actions .btn {
    display: inline-flex;
    min-height: 36px;
    padding: 7px 12px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #e8f0f8;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 9px;
    font-size: 0.75rem;
    font-weight: 670;
    line-height: 1;
    box-shadow: none;
}

body.map-dashboard-v2-page .parcel-v2-view-toggle {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(255, 255, 255, 0.32) !important;
}

body.map-dashboard-v2-page .parcel-v2-view-toggle:hover {
    background: rgba(255, 255, 255, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
}

body.map-dashboard-v2-page .parcel-v2-view-label-compact {
    display: none;
}

body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle {
    display: none;
}

body.map-dashboard-v2-page .parcel-v2-command-actions .btn:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.34);
}

body.map-dashboard-v2-page .parcel-v2-command-actions .btn-primary,
body.map-dashboard-v2-page .parcel-v2-command-actions .parcel-v2-footer-primary {
    color: #fff;
    background: #118573;
    border-color: #259786;
}

body.map-dashboard-v2-page .parcel-v2-command-actions .btn-primary:hover,
body.map-dashboard-v2-page .parcel-v2-command-actions .parcel-v2-footer-primary:hover {
    background: #0d7868;
    border-color: #36aa97;
}

body.map-dashboard-v2-page .parcel-v2-command-actions .parcel-v2-footer-close {
    width: 36px;
    padding-inline: 0;
}

body.map-dashboard-v2-page .parcel-v2-command-actions .parcel-v2-footer-close span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header {
    position: relative;
    z-index: 8;
    flex: 0 0 auto;
    min-height: 92px;
    padding: 0 max(22px, calc((100vw - var(--parcel-v2-content-max)) / 2 + 22px));
    color: var(--parcel-v2-ink);
    background: rgba(255, 255, 255, 0.97);
    border: 0;
    border-bottom: 1px solid var(--parcel-v2-border);
    backdrop-filter: blur(14px);
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__pattern {
    display: none;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: var(--parcel-v2-content-max);
    min-height: 92px;
    margin-inline: auto;
    align-items: center;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__icon-wrapper {
    display: grid;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    place-items: center;
    color: #fff;
    background: linear-gradient(145deg, #173b61, #0c2744);
    border: 1px solid rgba(12, 39, 68, 0.22);
    border-radius: 50%;
    box-shadow: 0 8px 20px rgba(12, 39, 68, 0.16);
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__icon-wrapper i {
    font-size: 1.12rem;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-title {
    order: 1;
    max-width: min(760px, 58vw);
    margin: 2px 0 0;
    overflow: hidden;
    color: var(--parcel-v2-navy);
    font-size: clamp(1.08rem, 1.35vw, 1.32rem);
    font-weight: 760;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-modal-subtitle {
    order: 2;
    margin-top: 5px;
    max-width: min(760px, 58vw);
    overflow: hidden;
    color: var(--parcel-v2-muted);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.015em;
    line-height: 1.25;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-actions {
    flex: 0 0 auto;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-actions > .dp-hero__badge {
    padding: 5px 8px;
    color: #66768c;
    background: #f4f7fa;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 999px;
    font-size: 0.63rem;
    letter-spacing: 0;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-sheet-close {
    display: grid;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    padding: 0;
    place-items: center;
    color: #4b5d74;
    background: #f4f7fa;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 12px;
    transition: color 160ms ease, background 160ms ease, transform 160ms ease;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-sheet-close:hover {
    color: var(--parcel-v2-navy);
    background: #eaf0f6;
    transform: translateY(-1px);
}

body.map-dashboard-v2-page .parcel-v2-header-coverage {
    display: grid;
    min-width: 108px;
    padding: 7px 10px;
    color: var(--parcel-v2-muted);
    text-align: right;
    background: transparent;
    border: 0;
    border-right: 1px solid var(--parcel-v2-border);
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-header-coverage span {
    font-size: 0.64rem;
    line-height: 1.1;
}

body.map-dashboard-v2-page .parcel-v2-header-coverage strong {
    color: var(--parcel-v2-teal);
    font-size: 0.83rem;
    font-weight: 760;
}

/* Parsel yaşam döngüsü durumu — başlık satırının sağında belirgin kart
   (harita filtre pill paletiyle aynı tonlar). */
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-wrap {
    min-width: 0;
    flex: 1 1 auto;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status {
    --status-bg: #f1f5f9;
    --status-ink: #334155;
    --status-dot: #64748b;
    display: flex;
    flex: 0 0 auto;
    min-height: 54px;
    max-width: 46%;
    margin-left: 14px;
    align-items: center;
    gap: 11px;
    padding: 6px 16px 6px 7px;
    color: var(--status-ink);
    background: linear-gradient(135deg, #fff, var(--status-bg));
    border: 1px solid color-mix(in srgb, var(--status-dot) 34%, #fff);
    border-radius: 16px;
    box-shadow: 0 8px 22px color-mix(in srgb, var(--status-dot) 16%, transparent);
    cursor: default;
}

/* İkon kutusu tonlu dolgu (kırmızı/turuncu/yeşil/mavi) üstünde BEYAZ ikon
   taşır; dp_popup_system.css'in ".dp-hero__content *" !important muhafızı
   ikonu da #172033'e boyayıp koyu-üstüne-koyu bırakıyordu. */
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header.dp-hero .parcel-v2-header-status__icon,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header.dp-hero .parcel-v2-header-status__icon i {
    color: #fff !important;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__icon {
    display: grid;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    place-items: center;
    background: var(--status-dot);
    border-radius: 12px;
    box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.12);
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__icon i {
    font-size: 1.15rem;
    line-height: 1;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

/* dp_popup_system.css'in ".dp-hero__content *" kontrast muhafızı !important ile
   her şeyi #172033'e boyar; durum kartının kendi tonlu mürekkebi (mavi/yeşil/
   kırmızı) onu geçmeli. */
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header.dp-hero .parcel-v2-header-status__eyebrow {
    color: color-mix(in srgb, var(--status-ink) 70%, #fff) !important;
    font-size: 0.6rem;
    font-weight: 760;
    letter-spacing: 0.09em;
    line-height: 1.1;
    text-transform: uppercase;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header.dp-hero .parcel-v2-header-status__label {
    color: var(--status-ink) !important;
    font-size: 0.98rem;
    font-weight: 820;
    line-height: 1.15;
    white-space: nowrap;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header.dp-hero .parcel-v2-header-status__detail {
    overflow: hidden;
    color: color-mix(in srgb, var(--status-ink) 78%, #fff) !important;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status--transformation {
    --status-bg: #ffe4e6;
    --status-ink: #9f1239;
    --status-dot: #e11d48;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status--construction {
    --status-bg: #ffedd5;
    --status-ink: #9a3412;
    --status-dot: #ea580c;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status--new-building {
    --status-bg: #dcfce7;
    --status-ink: #166534;
    --status-dot: #16a34a;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status--existing {
    --status-bg: #dbeafe;
    --status-ink: #1e40af;
    --status-dot: #2563eb;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status--land {
    --status-bg: #e2e8f0;
    --status-ink: #334155;
    --status-dot: #64748b;
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status {
        min-height: 40px;
        max-width: 44vw;
        margin-left: 8px;
        gap: 8px;
        padding: 4px 10px 4px 5px;
        border-radius: 12px;
        box-shadow: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__icon {
        width: 30px;
        height: 30px;
        flex-basis: 30px;
        border-radius: 9px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__icon i {
        font-size: 0.95rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__eyebrow,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__detail {
        display: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-status__label {
        font-size: 0.8rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-title,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-modal-subtitle {
        max-width: 100%;
    }
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-body {
    display: block;
    flex: 1 1 auto;
    min-height: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    color: var(--parcel-v2-ink);
    background: var(--parcel-v2-canvas);
    overscroll-behavior: contain;
    scrollbar-color: #bdcad8 transparent;
    scrollbar-width: thin;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-body::-webkit-scrollbar {
    width: 8px;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-body::-webkit-scrollbar-thumb {
    background: #bdcad8;
    border: 2px solid transparent;
    border-radius: 999px;
    background-clip: padding-box;
}

body.map-dashboard-v2-page .parcel-v2-shell {
    display: contents;
}

body.map-dashboard-v2-page .parcel-v2-tab-master {
    position: sticky;
    top: 0;
    z-index: 7;
    width: 100%;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 1px 0 var(--parcel-v2-border);
    isolation: isolate;
}

body.map-dashboard-v2-page .parcel-v2-group-nav {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(5, minmax(130px, 190px));
    justify-content: start;
    min-height: var(--parcel-v2-tab-height);
    padding: 0 max(22px, calc((100% - var(--parcel-v2-content-max)) / 2 + 22px));
    overflow-x: auto;
    background: rgba(255, 255, 255, 0.97);
    border-bottom: 1px solid var(--parcel-v2-border);
    backdrop-filter: blur(14px);
    scrollbar-width: none;
}

body.map-dashboard-v2-page .parcel-v2-group-nav::-webkit-scrollbar {
    display: none;
}

body.map-dashboard-v2-page .parcel-v2-group-tab,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-group-tab.nav-link {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: var(--parcel-v2-tab-height);
    padding: 9px 10px 8px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #66768c;
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: 0.78rem;
    font-weight: 650;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
    transition: color 160ms ease, background 160ms ease;
}

body.map-dashboard-v2-page .parcel-v2-group-tab::after {
    position: absolute;
    right: clamp(12px, 8%, 34px);
    bottom: 0;
    left: clamp(12px, 8%, 34px);
    height: 3px;
    background: transparent;
    border-radius: 999px 999px 0 0;
    content: '';
    transition: background 160ms ease;
}

body.map-dashboard-v2-page .parcel-v2-group-tab i {
    flex: 0 0 auto;
    font-size: 0.9rem;
}

body.map-dashboard-v2-page .parcel-v2-group-tab:hover {
    color: var(--parcel-v2-blue);
    background: #f7faff;
}

body.map-dashboard-v2-page .parcel-v2-group-tab.is-group-active {
    color: var(--parcel-v2-blue);
    background: linear-gradient(180deg, #fff, #f6f9ff);
}

body.map-dashboard-v2-page .parcel-v2-group-tab.is-group-active::after {
    background: var(--parcel-v2-blue);
}

body.map-dashboard-v2-page .parcel-v2-subnav {
    position: relative;
    z-index: 1;
    background: rgba(247, 249, 252, 0.97);
    border-bottom: 1px solid var(--parcel-v2-border);
    backdrop-filter: blur(12px);
}

body.map-dashboard-v2-page .parcel-v2-subnav:empty {
    display: none;
}

body.map-dashboard-v2-page .parcel-v2-subnav-group {
    display: flex;
    min-height: 62px;
    padding: 9px max(22px, calc((100% - var(--parcel-v2-content-max)) / 2 + 22px));
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

body.map-dashboard-v2-page .parcel-v2-subnav-switch {
    display: flex;
    width: max-content;
    max-width: 100%;
    padding: 4px;
    align-items: center;
    gap: 3px;
    overflow-x: auto;
    background: #e9eef5;
    border: 1px solid #d9e1ec;
    border-radius: 14px;
    box-shadow: inset 0 1px 2px rgba(30, 52, 78, 0.05), 0 5px 16px rgba(30, 64, 105, 0.07);
    scrollbar-width: none;
}

body.map-dashboard-v2-page .parcel-v2-subnav-switch::-webkit-scrollbar {
    display: none;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-subtab.nav-link {
    flex: 0 0 auto;
    min-width: 126px;
    min-height: 40px;
    padding: 9px 16px;
    color: #596b82;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 10px;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
    white-space: nowrap;
    transition: color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-subtab.nav-link:hover {
    color: #174f9f;
    background: rgba(255, 255, 255, 0.72);
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-subtab.nav-link.active {
    color: #fff;
    background: linear-gradient(135deg, #2877dc, #2363bf);
    border-color: #2363bf;
    box-shadow: 0 4px 10px rgba(35, 99, 191, 0.24);
}

body.map-dashboard-v2-page .parcel-v2-original-tablist,
body.map-dashboard-v2-page .parcel-v2-original-summary,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-mobile-summary,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-action-bar {
    display: none !important;
}

body.map-dashboard-v2-page [data-v2-overview][hidden],
body.map-dashboard-v2-page [data-v2-legacy-content][hidden],
body.map-dashboard-v2-page [data-v2-subnav-group][hidden] {
    display: none !important;
}

body.map-dashboard-v2-page .parcel-v2-overview {
    display: grid;
    width: 100%;
    max-width: var(--parcel-v2-content-max);
    margin-inline: auto;
    padding: 24px 22px 36px;
    gap: 20px;
}

body.map-dashboard-v2-page .parcel-v2-workspace-grid {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 24px;
}

body.map-dashboard-v2-page .parcel-v2-workspace-main {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 18px;
}

body.map-dashboard-v2-page .parcel-v2-dashboard-grid,
body.map-dashboard-v2-page .parcel-v2-overview-grid {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 16px;
}

body.map-dashboard-v2-page .parcel-v2-insight-stack {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 16px;
}

body.map-dashboard-v2-page .parcel-v2-preview-note {
    display: flex;
    padding: 10px 12px;
    align-items: center;
    gap: 8px;
    color: #31577f;
    background: #edf6ff;
    border: 1px solid #cfe4f9;
    border-radius: 11px;
    font-size: 0.78rem;
}

body.map-dashboard-v2-page .parcel-v2-metrics {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

/* Parsel Analizi şeridi 3 karta indi (Emsal/Kat Adedi İmar Durumu'nda). */
body.map-dashboard-v2-page .parcel-v2-metrics--lean {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.map-dashboard-v2-page .parcel-v2-metric {
    position: relative;
    display: grid;
    min-width: 0;
    grid-template-columns: auto minmax(0, 1fr);
    min-height: 108px;
    padding: 17px 16px;
    place-items: center start;
    gap: 14px;
    overflow: hidden;
    text-align: left;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 17px;
    box-shadow: 0 8px 22px rgba(20, 46, 78, 0.055);
}

body.map-dashboard-v2-page .parcel-v2-metric::before {
    position: absolute;
    top: 0;
    right: 12px;
    left: 12px;
    height: 2px;
    background: currentColor;
    border-radius: 0 0 4px 4px;
    content: '';
    opacity: 0.38;
}

body.map-dashboard-v2-page .parcel-v2-metric-icon {
    display: grid;
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    place-items: center;
    background: var(--parcel-v2-blue-soft);
    border: 1px solid rgba(25, 71, 112, 0.045);
    border-radius: 50%;
}

body.map-dashboard-v2-page .parcel-v2-metric-icon i {
    color: currentColor;
    font-size: 1.3rem;
}

body.map-dashboard-v2-page .parcel-v2-metric-copy {
    display: grid;
    min-width: 0;
    gap: 2px;
}

body.map-dashboard-v2-page .parcel-v2-metric-copy strong {
    color: var(--parcel-v2-ink);
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.18;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

body.map-dashboard-v2-page .parcel-v2-metric-copy span {
    color: var(--parcel-v2-muted);
    font-size: 0.74rem;
    font-weight: 650;
}

body.map-dashboard-v2-page .parcel-v2-metric--cyan { color: var(--parcel-v2-cyan); }
body.map-dashboard-v2-page .parcel-v2-metric--green { color: var(--parcel-v2-teal); }
body.map-dashboard-v2-page .parcel-v2-metric--amber { color: var(--parcel-v2-amber); }
body.map-dashboard-v2-page .parcel-v2-metric--blue { color: var(--parcel-v2-blue); }
body.map-dashboard-v2-page .parcel-v2-metric--violet { color: var(--parcel-v2-violet); }
body.map-dashboard-v2-page .parcel-v2-metric--cyan .parcel-v2-metric-icon { background: #e7f6f8; }
body.map-dashboard-v2-page .parcel-v2-metric--green .parcel-v2-metric-icon { background: var(--parcel-v2-teal-soft); }
body.map-dashboard-v2-page .parcel-v2-metric--amber .parcel-v2-metric-icon { background: var(--parcel-v2-amber-soft); }
body.map-dashboard-v2-page .parcel-v2-metric--blue .parcel-v2-metric-icon { background: var(--parcel-v2-blue-soft); }
body.map-dashboard-v2-page .parcel-v2-metric--violet .parcel-v2-metric-icon { background: #f1edff; }

body.map-dashboard-v2-page .parcel-v2-decision {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 16px;
    align-items: start;
    gap: 13px;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-left-width: 4px;
    border-radius: 14px;
}

body.map-dashboard-v2-page .parcel-v2-decision--success {
    background: linear-gradient(120deg, #f8fffc, #effaf6);
    border-left-color: var(--parcel-v2-teal);
}

body.map-dashboard-v2-page .parcel-v2-decision--info {
    background: linear-gradient(120deg, #fbfdff, #f1f6ff);
    border-left-color: var(--parcel-v2-blue);
}

body.map-dashboard-v2-page .parcel-v2-decision--danger {
    background: linear-gradient(120deg, #fffafa, var(--parcel-v2-red-soft));
    border-left-color: var(--parcel-v2-red);
}

body.map-dashboard-v2-page .parcel-v2-decision-icon {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    color: var(--parcel-v2-blue);
    background: rgba(35, 103, 209, 0.1);
    border-radius: 12px;
}

body.map-dashboard-v2-page .parcel-v2-decision--success .parcel-v2-decision-icon {
    color: var(--parcel-v2-teal);
    background: rgba(12, 141, 124, 0.1);
}

body.map-dashboard-v2-page .parcel-v2-decision--danger .parcel-v2-decision-icon {
    color: var(--parcel-v2-red);
    background: rgba(184, 59, 73, 0.1);
}

body.map-dashboard-v2-page .parcel-v2-eyebrow {
    display: block;
    margin-bottom: 3px;
    color: #8795a7;
    font-size: 0.66rem;
    font-weight: 720;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

body.map-dashboard-v2-page .parcel-v2-decision h3,
body.map-dashboard-v2-page .parcel-v2-card h3,
body.map-dashboard-v2-page .parcel-v2-data-card h3,
body.map-dashboard-v2-page .parcel-v2-lock-card h3 {
    margin: 0;
    color: var(--parcel-v2-navy);
    font-size: 1rem;
    font-weight: 760;
    line-height: 1.25;
}

body.map-dashboard-v2-page .parcel-v2-decision p {
    margin: 5px 0 0;
    color: #52647a;
    font-size: 0.79rem;
    line-height: 1.5;
}

body.map-dashboard-v2-page .parcel-v2-confidence {
    min-width: max-content;
    padding: 5px 8px;
    color: var(--parcel-v2-teal);
    background: #fff;
    border: 1px solid #cde8df;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 720;
}

body.map-dashboard-v2-page .parcel-v2-card,
body.map-dashboard-v2-page .parcel-v2-data-card {
    min-width: 0;
    padding: 18px;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 14px;
    box-shadow: 0 5px 18px rgba(20, 46, 78, 0.035);
}

body.map-dashboard-v2-page .parcel-v2-section-heading,
body.map-dashboard-v2-page .parcel-v2-data-heading {
    display: flex;
    margin-bottom: 13px;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

body.map-dashboard-v2-page .parcel-v2-section-heading > i {
    color: #91a0b2;
    font-size: 1rem;
}

body.map-dashboard-v2-page .parcel-v2-facts {
    display: grid;
    margin: 0;
    gap: 0;
}

body.map-dashboard-v2-page .parcel-v2-facts > div {
    display: grid;
    grid-template-columns: 34px minmax(110px, 0.72fr) minmax(0, 1.28fr);
    min-height: 48px;
    padding: 7px 0;
    align-items: center;
    gap: 10px;
    border-top: 1px solid #edf1f6;
}

body.map-dashboard-v2-page .parcel-v2-facts > div:first-child {
    border-top: 0;
}

body.map-dashboard-v2-page .parcel-v2-facts dt {
    color: #7b899c;
    font-size: 0.75rem;
    font-weight: 620;
}

body.map-dashboard-v2-page .parcel-v2-facts dd {
    margin: 0;
    color: #2b3a4f;
    font-size: 0.77rem;
    font-weight: 680;
    line-height: 1.35;
    text-align: right;
}

body.map-dashboard-v2-page .parcel-v2-fact-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    color: var(--parcel-v2-blue);
    background: var(--parcel-v2-blue-soft);
    border-radius: 50%;
}

body.map-dashboard-v2-page .parcel-v2-fact-icon i {
    font-size: 0.83rem;
}

body.map-dashboard-v2-page .parcel-v2-fact--cyan .parcel-v2-fact-icon { color: var(--parcel-v2-cyan); background: #e7f6f8; }
body.map-dashboard-v2-page .parcel-v2-fact--green .parcel-v2-fact-icon { color: var(--parcel-v2-teal); background: var(--parcel-v2-teal-soft); }
body.map-dashboard-v2-page .parcel-v2-fact--amber .parcel-v2-fact-icon { color: var(--parcel-v2-amber); background: var(--parcel-v2-amber-soft); }
body.map-dashboard-v2-page .parcel-v2-fact--violet .parcel-v2-fact-icon { color: var(--parcel-v2-violet); background: #f1edff; }

body.map-dashboard-v2-page .parcel-v2-findings {
    display: grid;
    margin: 0;
    padding: 0;
    gap: 7px;
    list-style: none;
}

body.map-dashboard-v2-page .parcel-v2-finding {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    min-height: 36px;
    padding: 8px 10px;
    align-items: start;
    gap: 5px;
    color: #43546a;
    background: #fafbfd;
    border: 1px solid #edf1f5;
    border-radius: 9px;
    font-size: 0.75rem;
    line-height: 1.4;
}

body.map-dashboard-v2-page .parcel-v2-finding i {
    margin-top: 1px;
    color: #73849a;
}

body.map-dashboard-v2-page .parcel-v2-finding--success i { color: var(--parcel-v2-teal); }
body.map-dashboard-v2-page .parcel-v2-finding--warning i { color: var(--parcel-v2-amber); }
body.map-dashboard-v2-page .parcel-v2-finding--danger i { color: var(--parcel-v2-red); }
body.map-dashboard-v2-page .parcel-v2-finding--info i { color: var(--parcel-v2-blue); }

body.map-dashboard-v2-page .parcel-v2-section-heading--units {
    align-items: center;
}

body.map-dashboard-v2-page .parcel-v2-unit-chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 5px;
}

body.map-dashboard-v2-page .parcel-v2-unit-chips span,
body.map-dashboard-v2-page .parcel-v2-data-count {
    padding: 4px 7px;
    color: #4d6078;
    background: #f2f5f8;
    border: 1px solid #e3e9ef;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 650;
}

body.map-dashboard-v2-page [data-v2-building-card-body],
body.map-dashboard-v2-page .parcel-v2-building-layout,
body.map-dashboard-v2-page .parcel-v2-building-content {
    min-width: 0;
}

body.map-dashboard-v2-page .parcel-v2-card--units {
    overflow: hidden;
}

body.map-dashboard-v2-page .parcel-v2-building-layout {
    display: grid;
    grid-template-columns: minmax(230px, 0.78fr) minmax(0, 1.65fr);
    align-items: center;
    gap: 26px;
}

body.map-dashboard-v2-page .parcel-v2-building-figure {
    display: grid;
    min-width: 0;
    margin: 0;
    align-content: center;
    justify-items: center;
    gap: 6px;
}

body.map-dashboard-v2-page .parcel-v2-building-image {
    position: relative;
    display: grid;
    width: 100%;
    min-height: 248px;
    place-items: center;
    overflow: hidden;
    background:
        radial-gradient(ellipse at 50% 82%, rgba(118, 184, 145, 0.2), transparent 48%),
        linear-gradient(180deg, #fffefb, #f2f9f4);
    border: 1px solid #e8eeeb;
    border-radius: 15px;
}

body.map-dashboard-v2-page .parcel-v2-building-svg {
    display: block;
    width: 100%;
    max-width: 360px;
    height: auto;
    overflow: visible;
}

body.map-dashboard-v2-page .parcel-v2-building-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-flex;
    min-height: 25px;
    padding: 5px 8px;
    align-items: center;
    gap: 5px;
    color: #3c5860;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(197, 211, 207, 0.9);
    border-radius: 999px;
    box-shadow: 0 4px 12px rgba(30, 58, 66, 0.08);
    backdrop-filter: blur(7px);
    font-size: 0.63rem;
    font-weight: 720;
    letter-spacing: 0.02em;
}

body.map-dashboard-v2-page .parcel-v2-building-badge .spinner-grow {
    width: 0.46rem;
    height: 0.46rem;
    color: var(--parcel-v2-teal);
}

body.map-dashboard-v2-page .parcel-v2-building-roof-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    display: inline-flex;
    min-height: 25px;
    padding: 5px 8px;
    align-items: center;
    gap: 5px;
    color: #725848;
    background: rgba(255, 250, 246, 0.92);
    border: 1px solid rgba(210, 186, 169, 0.84);
    border-radius: 999px;
    box-shadow: 0 4px 12px rgba(72, 49, 36, 0.08);
    backdrop-filter: blur(7px);
    font-size: 0.63rem;
    font-weight: 720;
    letter-spacing: 0.02em;
}

body.map-dashboard-v2-page .parcel-v2-building-figure figcaption {
    max-width: 330px;
    margin: 0;
    color: #718094;
    font-size: 0.64rem;
    line-height: 1.4;
    text-align: center;
}

body.map-dashboard-v2-page .parcel-v2-building-content {
    display: grid;
    align-content: center;
    gap: 15px;
}

body.map-dashboard-v2-page .parcel-v2-building-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    padding: 2px 0 4px;
}

body.map-dashboard-v2-page .parcel-v2-building-stat {
    display: grid;
    min-width: 0;
    padding: 2px 15px;
    align-content: start;
    gap: 2px;
    border-left: 1px solid #e5eaef;
}

body.map-dashboard-v2-page .parcel-v2-building-stat:first-child {
    padding-left: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .parcel-v2-building-stat:last-child {
    padding-right: 0;
}

body.map-dashboard-v2-page .parcel-v2-building-stat dt {
    overflow: hidden;
    color: #748397;
    font-size: 0.66rem;
    font-weight: 620;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-building-stat dd {
    margin: 0;
    overflow: hidden;
    color: var(--parcel-v2-navy);
    font-size: 1.15rem;
    font-weight: 790;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-building-stat dd.is-text {
    padding-top: 2px;
    font-size: 0.86rem;
    line-height: 1.28;
    white-space: normal;
}

body.map-dashboard-v2-page .parcel-v2-building-stat small {
    overflow: hidden;
    color: #8b98a8;
    font-size: 0.61rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-floor-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

body.map-dashboard-v2-page .parcel-v2-floor-heading h4 {
    margin: 0;
    color: #314257;
    font-size: 0.76rem;
    font-weight: 730;
}

body.map-dashboard-v2-page .parcel-v2-floor-heading span {
    color: #8491a2;
    font-size: 0.65rem;
    font-weight: 620;
}

body.map-dashboard-v2-page .parcel-v2-floor-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    border: 1px solid #dfe6ed;
    border-radius: 9px;
}

body.map-dashboard-v2-page .parcel-v2-floor-table {
    width: 100%;
    min-width: 510px;
    margin: 0;
    border-collapse: collapse;
    table-layout: fixed;
}

body.map-dashboard-v2-page .parcel-v2-floor-table th,
body.map-dashboard-v2-page .parcel-v2-floor-table td {
    min-width: 72px;
    padding: 8px 10px;
    color: #405065;
    border-left: 1px solid #e6ebf0;
    border-top: 1px solid #e6ebf0;
    font-size: 0.68rem;
    text-align: center;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-floor-table tr:first-child th {
    border-top: 0;
}

body.map-dashboard-v2-page .parcel-v2-floor-table th:first-child,
body.map-dashboard-v2-page .parcel-v2-floor-table td:first-child {
    width: 104px;
    border-left: 0;
    text-align: left;
}

body.map-dashboard-v2-page .parcel-v2-floor-table thead th {
    color: #647388;
    background: #fafbfc;
    font-weight: 690;
}

body.map-dashboard-v2-page .parcel-v2-floor-table tbody th {
    color: #69778a;
    background: #fcfdfd;
    font-weight: 640;
}

body.map-dashboard-v2-page .parcel-v2-floor-table td {
    color: var(--parcel-v2-navy);
    font-weight: 760;
}

body.map-dashboard-v2-page .parcel-v2-floor-empty {
    display: flex;
    min-height: 56px;
    padding: 10px 12px;
    align-items: center;
    gap: 8px;
    color: #758498;
    background: #fafcfc;
    border: 1px dashed #d9e3df;
    border-radius: 9px;
    font-size: 0.7rem;
}

body.map-dashboard-v2-page .parcel-v2-floor-empty i {
    color: var(--parcel-v2-teal);
}

body.map-dashboard-v2-page .parcel-v2-building-note {
    display: flex;
    margin: -3px 0 0;
    align-items: center;
    gap: 6px;
    color: #8794a5;
    font-size: 0.62rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .parcel-v2-building-note i {
    color: #6f869d;
}

body.map-dashboard-v2-page .parcel-v2-scene-shadow {
    fill: rgba(34, 75, 62, 0.1);
}

body.map-dashboard-v2-page .parcel-v2-scene-platform-bottom {
    fill: #88ad99;
}

body.map-dashboard-v2-page .parcel-v2-scene-platform-side {
    fill: #afd0bd;
    stroke: #6e9882;
    stroke-width: 0.75;
}

body.map-dashboard-v2-page .parcel-v2-scene-platform-top {
    fill: #e3f4e8;
    stroke: #6f9f84;
    stroke-width: 1;
}

body.map-dashboard-v2-page .parcel-v2-scene-tree-shadow {
    fill: rgba(34, 89, 53, 0.14);
}

body.map-dashboard-v2-page .parcel-v2-scene-tree-trunk {
    fill: #8c6848;
}

body.map-dashboard-v2-page .parcel-v2-scene-tree-crown {
    fill: #4fa866;
    stroke: #317c49;
    stroke-width: 0.7;
}

body.map-dashboard-v2-page .parcel-v2-scene-tree-crown--shade {
    fill: #79bf73;
    opacity: 0.9;
}

body.map-dashboard-v2-page .parcel-v2-scene-wall {
    fill: #fff1df;
    stroke: #9a806b;
    stroke-linejoin: round;
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-scene-wall.is-shade {
    fill: #e4c9ad;
}

body.map-dashboard-v2-page .parcel-v2-scene-building--villa .parcel-v2-scene-wall {
    fill: #fff0d6;
}

body.map-dashboard-v2-page .parcel-v2-scene-building--villa .parcel-v2-scene-wall.is-shade {
    fill: #e1bd96;
}

body.map-dashboard-v2-page .parcel-v2-scene-building--commercial .parcel-v2-scene-wall,
body.map-dashboard-v2-page .parcel-v2-scene-building--mixed .parcel-v2-scene-wall {
    fill: #e5f2ef;
}

body.map-dashboard-v2-page .parcel-v2-scene-floor-band {
    stroke: rgba(111, 88, 68, 0.46);
    stroke-width: 0.62;
}

body.map-dashboard-v2-page .parcel-v2-scene-window {
    fill: #4e9fc2;
    stroke: rgba(255, 255, 255, 0.94);
    stroke-width: 0.42;
}

body.map-dashboard-v2-page .parcel-v2-scene-window.is-storefront {
    fill: #2d9fa8;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof {
    fill: #93bbb5;
    stroke: #557f79;
    stroke-linejoin: round;
    stroke-width: 0.85;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-wall {
    fill: #73a39d;
    stroke: #4f7e78;
    stroke-width: 0.65;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-top {
    fill: #c3e0d8;
    stroke: #56857d;
    stroke-width: 0.75;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof--gable .parcel-v2-scene-roof,
body.map-dashboard-v2-page .parcel-v2-scene-roof--hip .parcel-v2-scene-roof {
    fill: #b66f55;
    stroke: #874d3e;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-face {
    fill: #cf8464;
    stroke: #874d3e;
    stroke-width: 0.82;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-face.is-light {
    fill: #e1a17f;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-face.is-mid {
    fill: #cd7d60;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-face.is-shade {
    fill: #a85f4d;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof--gable .parcel-v2-scene-roof-face.is-end {
    fill: #f1d9c5;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof--hip .parcel-v2-scene-roof-face.is-mid {
    fill: #c57459;
}

body.map-dashboard-v2-page .parcel-v2-scene-roof-ridge {
    stroke: #7c4438;
    stroke-linecap: round;
    stroke-width: 1.18;
}

body.map-dashboard-v2-page .parcel-v2-scene-building--villa .parcel-v2-scene-roof,
body.map-dashboard-v2-page .parcel-v2-scene-building--villa .parcel-v2-scene-roof-top {
    fill: #d58b68;
}

body.map-dashboard-v2-page .parcel-v2-scene-building--villa.parcel-v2-scene-roof--gable .parcel-v2-scene-roof-face,
body.map-dashboard-v2-page .parcel-v2-scene-building--villa.parcel-v2-scene-roof--hip .parcel-v2-scene-roof-face {
    fill: #d88b68;
}

body.map-dashboard-v2-page .parcel-v2-scene-block-label {
    fill: #183b43;
    paint-order: stroke;
    stroke: rgba(255, 255, 255, 0.9);
    stroke-width: 2.4px;
    font-family: inherit;
    font-size: 8px;
    font-weight: 800;
}

body.map-dashboard-v2-page .parcel-v2-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    border: 1px solid #e7ecf2;
    border-radius: 11px;
}

body.map-dashboard-v2-page .parcel-v2-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    table-layout: fixed;
}

body.map-dashboard-v2-page .parcel-v2-table th,
body.map-dashboard-v2-page .parcel-v2-table td {
    padding: 9px 10px;
    overflow: hidden;
    border-bottom: 1px solid #edf1f5;
    font-size: 0.74rem;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-table th {
    color: #6d7c90;
    background: #f8fafc;
    font-size: 0.66rem;
    font-weight: 720;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

body.map-dashboard-v2-page .parcel-v2-table td {
    color: #34455b;
}

body.map-dashboard-v2-page .parcel-v2-table tr:last-child td {
    border-bottom: 0;
}

body.map-dashboard-v2-page .parcel-v2-table-note {
    margin: 0;
    padding: 8px 10px;
    color: #708096;
    background: #fbfcfd;
    border-top: 1px solid #edf1f5;
    font-size: 0.69rem;
    text-align: right;
}

body.map-dashboard-v2-page .parcel-v2-empty-inline {
    display: flex;
    min-height: 72px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #76869a;
    background: #fafbfd;
    border: 1px dashed #d9e1ea;
    border-radius: 10px;
    font-size: 0.76rem;
}

body.map-dashboard-v2-page .parcel-v2-data-card {
    padding: 15px 16px;
}

body.map-dashboard-v2-page .parcel-v2-card--facts > .parcel-v2-data-card {
    margin-top: 14px;
    padding: 13px 14px;
    background: #f8fafc;
    border-radius: 11px;
    box-shadow: none;
}

body.map-dashboard-v2-page .parcel-v2-data-heading {
    margin-bottom: 9px;
    align-items: center;
}

body.map-dashboard-v2-page .parcel-v2-meter {
    height: 7px;
    overflow: hidden;
    background: #e8edf3;
    border-radius: 999px;
}

body.map-dashboard-v2-page .parcel-v2-meter > span {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, var(--parcel-v2-blue), var(--parcel-v2-teal));
    border-radius: inherit;
}

body.map-dashboard-v2-page .parcel-v2-data-details {
    margin-top: 10px;
}

body.map-dashboard-v2-page .parcel-v2-data-details summary {
    width: fit-content;
    color: var(--parcel-v2-blue);
    font-size: 0.72rem;
    font-weight: 670;
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-data-details ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 10px 0 0;
    padding: 0;
    gap: 6px;
    list-style: none;
}

body.map-dashboard-v2-page .parcel-v2-source {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    padding: 7px 8px;
    align-items: start;
    color: #516278;
    background: #f9fbfc;
    border: 1px solid #edf1f5;
    border-radius: 8px;
    font-size: 0.7rem;
}

body.map-dashboard-v2-page .parcel-v2-source.is-ready i { color: var(--parcel-v2-teal); }
body.map-dashboard-v2-page .parcel-v2-source.is-missing { opacity: 0.68; }

body.map-dashboard-v2-page .parcel-v2-source strong,
body.map-dashboard-v2-page .parcel-v2-source small {
    display: block;
}

body.map-dashboard-v2-page .parcel-v2-source small {
    margin-top: 2px;
    color: #8795a7;
    font-size: 0.65rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .parcel-v2-location-rail {
    min-width: 0;
    align-self: start;
}

body.map-dashboard-v2-page .parcel-v2-location-card {
    min-width: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 16px;
    box-shadow: 0 8px 28px rgba(20, 46, 78, 0.055);
}

body.map-dashboard-v2-page .parcel-v2-location-heading {
    display: flex;
    min-width: 0;
    padding: 18px 18px 14px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

body.map-dashboard-v2-page .parcel-v2-location-heading h3 {
    margin: 0;
    color: var(--parcel-v2-navy);
    font-size: 1rem;
    font-weight: 760;
    line-height: 1.25;
}

body.map-dashboard-v2-page .parcel-v2-map-return {
    display: inline-flex;
    min-height: 36px;
    min-width: max-content;
    padding: 7px 10px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--parcel-v2-blue);
    background: var(--parcel-v2-blue-soft);
    border: 1px solid #cbdcf8;
    border-radius: 9px;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: color 160ms ease, background 160ms ease, border-color 160ms ease;
}

body.map-dashboard-v2-page .parcel-v2-map-return:hover {
    color: #164f9f;
    background: #e2edff;
    border-color: #a9c5ef;
}

body.map-dashboard-v2-page .parcel-v2-location-preview {
    position: relative;
    margin: 0 16px;
    overflow: hidden;
    background: #eaf1ec;
    border: 1px solid #dce6df;
    border-radius: 13px;
}

body.map-dashboard-v2-page .parcel-v2-live-map {
    position: relative;
    width: 100%;
    min-height: 190px;
    aspect-ratio: 360 / 190;
    overflow: hidden;
    background: #e9f0eb;
}

body.map-dashboard-v2-page .parcel-v2-live-map-canvas,
body.map-dashboard-v2-page .parcel-v2-live-map-fallback {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transition: opacity 180ms ease;
}

body.map-dashboard-v2-page .parcel-v2-live-map-canvas {
    z-index: 1;
    opacity: 0;
}

body.map-dashboard-v2-page .parcel-v2-live-map-fallback {
    z-index: 0;
    opacity: 1;
}

body.map-dashboard-v2-page .parcel-v2-location-preview.is-map-ready .parcel-v2-live-map-canvas {
    opacity: 1;
}

body.map-dashboard-v2-page .parcel-v2-location-preview.is-map-ready .parcel-v2-live-map-fallback {
    opacity: 0;
}

body.map-dashboard-v2-page .parcel-v2-live-map :is(.maplibregl-map, .maplibregl-canvas-container, .maplibregl-canvas) {
    width: 100%;
    height: 100%;
}

/* dashboard_runtime.css keeps non-interactive MapLibre canvases hidden while
   the main map boots.  This preview is intentionally non-interactive, so it
   needs its own scoped visibility override. */
body.map-dashboard-v2-page .parcel-v2-live-map .maplibregl-canvas-container {
    opacity: 1;
}

body.map-dashboard-v2-page .parcel-v2-live-map .maplibregl-ctrl-bottom-right {
    z-index: 2;
}

body.map-dashboard-v2-page .parcel-v2-map-diagram {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 360 / 190;
}

body.map-dashboard-v2-page .parcel-v2-map-empty {
    display: grid;
    min-height: 190px;
    padding: 28px 18px;
    place-content: center;
    justify-items: center;
    gap: 7px;
    color: #66788d;
    text-align: center;
    background: linear-gradient(145deg, #edf3ef, #e5ede8);
}

body.map-dashboard-v2-page .parcel-v2-map-empty > i {
    display: grid;
    width: 42px;
    height: 42px;
    margin-bottom: 2px;
    place-items: center;
    color: #6c7f73;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(151, 170, 158, 0.45);
    border-radius: 12px;
    font-size: 1rem;
}

body.map-dashboard-v2-page .parcel-v2-map-empty > span {
    color: #324b3c;
    font-size: 0.8rem;
    font-weight: 720;
}

body.map-dashboard-v2-page .parcel-v2-map-empty > small {
    max-width: 220px;
    color: #75867b;
    font-size: 0.7rem;
    line-height: 1.4;
}

body.map-dashboard-v2-page .parcel-v2-map-bg {
    fill: #e9f0eb;
}

body.map-dashboard-v2-page .parcel-v2-map-parcel {
    fill: rgba(12, 141, 124, 0.2);
    stroke: #087e70;
    stroke-linejoin: round;
    stroke-width: 3;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-map-pin {
    fill: #087e70;
    stroke: #fff;
    stroke-width: 3;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-map-label {
    fill: #19334f;
    font-size: 12px;
    font-weight: 760;
    paint-order: stroke;
    stroke: rgba(255, 255, 255, 0.88);
    stroke-width: 3px;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-map-legend {
    position: absolute;
    bottom: 10px;
    left: 10px;
    display: inline-flex;
    padding: 5px 8px;
    align-items: center;
    gap: 6px;
    color: #40556b;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(201, 214, 204, 0.88);
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 650;
    box-shadow: 0 3px 10px rgba(27, 49, 70, 0.08);
    backdrop-filter: blur(6px);
    z-index: 3;
}

body.map-dashboard-v2-page .parcel-v2-map-legend i {
    width: 8px;
    height: 8px;
    background: var(--parcel-v2-teal);
    border-radius: 2px;
}

body.map-dashboard-v2-page .parcel-v2-map-note {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #617267;
    font-size: 0.63rem;
    font-weight: 620;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.94);
    z-index: 3;
}

body.map-dashboard-v2-page .parcel-v2-location-list {
    display: grid;
    margin: 14px 18px 0;
    padding: 0;
}

body.map-dashboard-v2-page .parcel-v2-location-row {
    display: grid;
    grid-template-columns: minmax(88px, 0.8fr) minmax(0, 1.2fr);
    padding: 9px 0;
    gap: 12px;
    border-top: 1px solid #edf1f5;
}

body.map-dashboard-v2-page .parcel-v2-location-row:first-child {
    border-top: 0;
}

body.map-dashboard-v2-page .parcel-v2-location-row dt,
body.map-dashboard-v2-page .parcel-v2-location-row dd {
    min-width: 0;
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .parcel-v2-location-row dt {
    color: #7a899b;
    font-weight: 570;
}

body.map-dashboard-v2-page .parcel-v2-location-row dd {
    overflow-wrap: anywhere;
    color: #2c3d52;
    font-weight: 700;
    text-align: right;
}

body.map-dashboard-v2-page .parcel-v2-location-updated {
    display: flex;
    margin: 4px 18px 0;
    padding: 12px 0 16px;
    align-items: center;
    gap: 7px;
    color: #8290a2;
    border-top: 1px solid #edf1f5;
    font-size: 0.7rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .parcel-v2-lock-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    padding: clamp(22px, 5vw, 46px);
    align-items: start;
    gap: 18px;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(20, 46, 78, 0.06);
}

body.map-dashboard-v2-page .parcel-v2-lock-icon {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    color: var(--parcel-v2-blue);
    background: var(--parcel-v2-blue-soft);
    border-radius: 15px;
}

body.map-dashboard-v2-page .parcel-v2-lock-card p {
    max-width: 520px;
    margin: 8px 0 14px;
    color: #5a6a7e;
    font-size: 0.75rem;
    line-height: 1.55;
}

body.map-dashboard-v2-page .parcel-v2-lock-card .parcel-v2-plan-note {
    margin-top: -6px;
    font-size: 0.68rem;
}

body.map-dashboard-v2-page .parcel-v2-contractor-cta {
    margin: 0 !important;
    padding: 12px 14px !important;
    color: #5d6e82 !important;
    background: #fff;
    border: 1px solid var(--parcel-v2-border) !important;
    border-radius: 12px;
}

/* Existing rich sections remain the canonical detail renderer. */
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] {
    width: 100%;
    max-width: var(--parcel-v2-content-max);
    margin-inline: auto;
    padding: 22px 22px 36px;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] > .tab-pane {
    min-height: 240px;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .alert {
    border-radius: 11px;
    box-shadow: none;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .table-responsive,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .parcel-units-table-scroll {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    border-color: var(--parcel-v2-border) !important;
    border-radius: 11px !important;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] table {
    --bs-table-bg: transparent;
    min-width: max-content;
    font-size: 0.78rem;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    color: #617188;
    background: #f5f8fb;
    border-bottom-color: var(--parcel-v2-border);
    font-size: 0.69rem;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .imar-section,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .schema-wrapper-mini,
body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .env-card {
    border-color: var(--parcel-v2-border) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] .btn {
    border-radius: 9px;
}

body.map-dashboard-v2-page .parcel-v2-footer {
    position: relative;
    z-index: 9;
    display: none;
    grid-template-columns: minmax(180px, 1.4fr) minmax(86px, 0.7fr) minmax(86px, 0.7fr);
    flex: 0 0 auto;
    min-height: 76px;
    padding: 12px 18px calc(12px + env(safe-area-inset-bottom));
    align-items: center;
    gap: 9px;
    background: rgba(255, 255, 255, 0.98);
    border-top: 1px solid var(--parcel-v2-border);
    backdrop-filter: blur(14px);
}

body.map-dashboard-v2-page .parcel-v2-footer .btn {
    display: inline-flex;
    min-height: 44px;
    padding: 9px 13px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 11px;
    font-size: 0.72rem;
    font-weight: 680;
}

body.map-dashboard-v2-page .parcel-v2-footer .btn-primary {
    background: linear-gradient(135deg, #087e70, #0c9a84);
    border-color: #087e70;
    box-shadow: 0 7px 18px rgba(12, 141, 124, 0.18);
}

body.map-dashboard-v2-page .parcel-v2-footer-close {
    color: #5d6c80;
}

body.map-dashboard-v2-page .parcel-v2-footer .parcel-v2-footer-close {
    display: none;
}

/* Dashboard2 zoning workspace — a decision-first view over the canonical
   municipality renderer. Source DOM stays mounted for data and export hooks. */
body.map-dashboard-v2-page #parcel-pane-imar > .parcel-v2-zoning-source {
    display: none !important;
}

body.map-dashboard-v2-page .parcel-v2-zoning {
    --zoning-v2-line: #dfe7ef;
    --zoning-v2-muted: #6f7f94;
    display: grid;
    min-width: 0;
    gap: 16px;
    color: #14253a;
}

/* Arsa alanı yalnız Parsel Analizi'nde; burada sadece güncellik rozeti (sağa). */
body.map-dashboard-v2-page .zoning-v2-statusline {
    display: flex;
    min-height: 30px;
    padding-inline: 4px;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    color: #53667c;
    font-size: 0.76rem;
}

body.map-dashboard-v2-page .zoning-v2-statusline > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.map-dashboard-v2-page .zoning-v2-current {
    padding: 6px 10px;
    color: #24743d;
    background: #eff9ef;
    border: 1px solid #b9dfbd;
    border-radius: 999px;
    font-weight: 700;
}

/* KEOS "SUCCESS" ama TAKS/KAKS/kat/Hmax/nizam hepsi boş → yeşil "Güncel" yanıltır */
body.map-dashboard-v2-page .zoning-v2-current.is-empty {
    color: #8a5a0b;
    background: #fff5e4;
    border-color: #efd39a;
}

body.map-dashboard-v2-page .zoning-v2-metrics {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

body.map-dashboard-v2-page .zoning-v2-metric {
    display: grid;
    min-width: 0;
    min-height: 104px;
    padding: 16px;
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid var(--zoning-v2-line);
    border-radius: 16px;
    box-shadow: 0 7px 21px rgba(20, 46, 78, 0.045);
}

body.map-dashboard-v2-page .zoning-v2-metric-icon {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    color: #087f89;
    background: #e6f7f8;
    border-radius: 50%;
    font-size: 1.28rem;
}

body.map-dashboard-v2-page .zoning-v2-tone--blue .zoning-v2-metric-icon { color: #1768d3; background: #e9f1ff; }
body.map-dashboard-v2-page .zoning-v2-tone--amber .zoning-v2-metric-icon { color: #c27a05; background: #fff4dc; }
body.map-dashboard-v2-page .zoning-v2-tone--violet .zoning-v2-metric-icon { color: #7045d4; background: #f0eaff; }

body.map-dashboard-v2-page .zoning-v2-metric-copy {
    display: grid;
    min-width: 0;
    gap: 4px;
}

body.map-dashboard-v2-page .zoning-v2-metric-copy strong {
    color: #122139;
    font-size: 1.12rem;
    font-weight: 800;
    line-height: 1.15;
    overflow-wrap: anywhere;
    /* Uzun plan notu değerleri kartı şişirmesin: 2 satır + …, tamamı title'da. */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

body.map-dashboard-v2-page .zoning-v2-metric-copy span {
    color: var(--zoning-v2-muted);
    font-size: 0.72rem;
    font-weight: 630;
}

body.map-dashboard-v2-page .zoning-v2-layout {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 2.18fr) minmax(320px, 0.82fr);
    align-items: start;
    gap: 16px;
}

body.map-dashboard-v2-page .zoning-v2-layout--wide {
    grid-template-columns: minmax(0, 1fr);
}

body.map-dashboard-v2-page .zoning-v2-main,
body.map-dashboard-v2-page .zoning-v2-rail {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 16px;
}

body.map-dashboard-v2-page .zoning-v2-primary-grid {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(280px, 1.08fr) minmax(330px, 1.12fr) minmax(210px, 0.68fr);
    align-items: stretch;
    gap: 16px;
}

body.map-dashboard-v2-page .zoning-v2-primary-grid--lean {
    grid-template-columns: minmax(420px, 1.45fr) minmax(300px, 0.55fr);
    align-items: start;
}

body.map-dashboard-v2-page .zoning-v2-card {
    min-width: 0;
    padding: 18px;
    background: #fff;
    border: 1px solid var(--zoning-v2-line);
    border-radius: 16px;
    box-shadow: 0 7px 24px rgba(20, 46, 78, 0.045);
}

body.map-dashboard-v2-page .zoning-v2-card > header,
body.map-dashboard-v2-page .zoning-v2-plan-info > header,
body.map-dashboard-v2-page .zoning-v2-drawing > header {
    display: flex;
    min-height: 25px;
    margin-bottom: 14px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

body.map-dashboard-v2-page .zoning-v2-card h3,
body.map-dashboard-v2-page .zoning-v2-plan-info h3,
body.map-dashboard-v2-page .zoning-v2-drawing h3 {
    margin: 0;
    color: #14243a;
    font-size: 0.96rem;
    font-weight: 790;
}

body.map-dashboard-v2-page .zoning-v2-card header > span,
body.map-dashboard-v2-page .zoning-v2-plan-info header > span {
    overflow: hidden;
    color: #78879a;
    font-size: 0.68rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-inline-stats,
body.map-dashboard-v2-page .zoning-v2-capacity-stats {
    display: grid;
    margin: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.map-dashboard-v2-page .zoning-v2-inline-stats > div,
body.map-dashboard-v2-page .zoning-v2-capacity-stats > div {
    min-width: 0;
    padding: 0 12px;
    border-left: 1px solid #e8edf3;
}

body.map-dashboard-v2-page .zoning-v2-inline-stats > div:first-child,
body.map-dashboard-v2-page .zoning-v2-capacity-stats > div:first-child {
    padding-left: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .zoning-v2-inline-stats dt,
body.map-dashboard-v2-page .zoning-v2-capacity-stats dt {
    color: #64758b;
    font-size: 0.66rem;
    font-weight: 610;
}

body.map-dashboard-v2-page .zoning-v2-inline-stats dd,
body.map-dashboard-v2-page .zoning-v2-capacity-stats dd {
    margin: 4px 0 0;
    color: #112038;
    font-size: 1.08rem;
    font-weight: 810;
    line-height: 1.1;
}

body.map-dashboard-v2-page .zoning-v2-capacity-stats dd {
    font-size: 1.42rem;
}

body.map-dashboard-v2-page .zoning-v2-capacity-stats dd small {
    font-size: 0.7rem;
    font-weight: 620;
}

body.map-dashboard-v2-page .zoning-v2-massing {
    display: block;
    width: 100%;
    height: 225px;
    margin: 2px auto -4px;
}

body.map-dashboard-v2-page .zoning-v2-note {
    display: flex;
    margin: 0;
    padding: 9px 10px;
    align-items: flex-start;
    gap: 7px;
    color: #60738b;
    background: #f4f8ff;
    border: 1px solid #dce9fa;
    border-radius: 10px;
    font-size: 0.66rem;
    line-height: 1.4;
}

body.map-dashboard-v2-page .zoning-v2-note i { color: #1d6fd1; }

body.map-dashboard-v2-page .zoning-v2-envelope-layout {
    display: grid;
    grid-template-columns: minmax(320px, 1.22fr) minmax(240px, 0.78fr);
    align-items: stretch;
    gap: 15px;
}

body.map-dashboard-v2-page .zoning-v2-envelope-figure {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 7px;
}

body.map-dashboard-v2-page .zoning-v2-envelope {
    display: block;
    width: 100%;
    min-height: 260px;
    background: #fbfdfd;
    border: 1px solid #e1ebe9;
    border-radius: 13px;
}

body.map-dashboard-v2-page .zoning-v2-envelope-legend {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    color: #718196;
    font-size: 0.62rem;
}

body.map-dashboard-v2-page .zoning-v2-envelope-legend span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

body.map-dashboard-v2-page .zoning-v2-envelope-legend i {
    width: 13px;
    height: 3px;
    background: #0e9185;
    border-radius: 999px;
}

body.map-dashboard-v2-page .zoning-v2-envelope-legend span:nth-child(2) i {
    background: repeating-linear-gradient(90deg, #286fc3 0 5px, transparent 5px 8px);
}

body.map-dashboard-v2-page .zoning-v2-rights-grid {
    display: grid;
    margin: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    /* 4 türev hücre (şeritteki TAKS/Kat/Nizam/Arsa tekrarı kaldırıldı) —
       figür yüksekliğine gerilmesin, ortalansın. */
    align-content: center;
    gap: 8px;
}

/* [2026-09-15] Hesap güveni + uyarılar (ızgaranın altında, tam genişlik) */
body.map-dashboard-v2-page .zoning-v2-rights-meta {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    margin: 2px 0 0;
    color: #6f7f94;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .zoning-v2-rights-meta span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

body.map-dashboard-v2-page .zoning-v2-rights-meta i {
    color: #b7791f;
}

/* Motor kaynaklı girdi bulamadı: "—" yerine açık durum + eksik listesi */
body.map-dashboard-v2-page .zoning-v2-rights-missing {
    display: grid;
    align-content: center;
    gap: 8px;
    height: 100%;
    padding: 14px 16px;
    border: 1px dashed #e0b56a;
    border-radius: 10px;
    background: #fff9ee;
    color: #4b5a6d;
    font-size: 0.74rem;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing.is-pending {
    border-color: #cfe0f5;
    background: #f4f8fe;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing.is-pending > strong {
    color: #1f64cf;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing > strong {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #8a5a0b;
    font-size: 0.86rem;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing ul {
    margin: 0;
    padding-left: 18px;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing li {
    margin: 2px 0;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing li small {
    display: block;
    color: #6f7f94;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .zoning-v2-rights-missing em {
    color: #6f7f94;
    font-size: 0.66rem;
    font-style: normal;
}

body.map-dashboard-v2-page .zoning-v2-rights-grid > div {
    display: grid;
    min-width: 0;
    min-height: 79px;
    padding: 10px 11px;
    align-content: center;
    background: #fafcfe;
    border: 1px solid #e5ebf1;
    border-radius: 10px;
}

body.map-dashboard-v2-page .zoning-v2-rights-grid dt {
    color: #728297;
    font-size: 0.63rem;
    font-weight: 650;
}

body.map-dashboard-v2-page .zoning-v2-rights-grid dd {
    margin: 3px 0 1px;
    color: #17304a;
    font-size: 0.94rem;
    font-weight: 800;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

body.map-dashboard-v2-page .zoning-v2-rights-grid small {
    color: #8a97a7;
    font-size: 0.57rem;
    line-height: 1.2;
}

body.map-dashboard-v2-page .zoning-v2-setbacks {
    display: grid;
    margin-top: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

body.map-dashboard-v2-page .zoning-v2-setback {
    display: grid;
    min-width: 0;
    min-height: 66px;
    padding: 9px 10px;
    grid-template-columns: 32px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    background: #f5fbf8;
    border: 1px solid #dcece3;
    border-radius: 10px;
}

body.map-dashboard-v2-page .zoning-v2-setback > i {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    color: #19845d;
    background: #e2f4e9;
    border-radius: 50%;
}

body.map-dashboard-v2-page .zoning-v2-setback > span {
    display: grid;
    min-width: 0;
    gap: 1px;
}

body.map-dashboard-v2-page .zoning-v2-setback small,
body.map-dashboard-v2-page .zoning-v2-setback em {
    overflow: hidden;
    color: #78879a;
    font-size: 0.58rem;
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-setback strong {
    overflow: hidden;
    color: #18364b;
    font-size: 0.77rem;
    font-weight: 760;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-setback.is-missing {
    background: #fffaf0;
    border-color: #f0dfbb;
}

body.map-dashboard-v2-page .zoning-v2-setback.is-missing > i {
    color: #bd7608;
    background: #fff0cf;
}

body.map-dashboard-v2-page .zoning-v2-setback.is-missing strong { color: #9b650e; }

body.map-dashboard-v2-page .zoning-v2-note.is-warning {
    margin-top: 10px;
    color: #78581f;
    background: #fff9ec;
    border-color: #efdfb8;
}

body.map-dashboard-v2-page .zoning-v2-note.is-warning i { color: #d58a14; }

body.map-dashboard-v2-page .zoning-v2-note.is-confirmed {
    margin-top: 10px;
    color: #326646;
    background: #f1faf4;
    border-color: #d2ead9;
}

body.map-dashboard-v2-page .zoning-v2-note.is-confirmed i { color: #2c9655; }

body.map-dashboard-v2-page .zoning-v2-utility-grid {
    display: grid;
    margin: 25px 0 22px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

body.map-dashboard-v2-page .zoning-v2-utility-grid > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

body.map-dashboard-v2-page .zoning-v2-utility-grid > div > i {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    place-items: center;
    color: #246ec4;
    background: #eaf2ff;
    border-radius: 50%;
}

body.map-dashboard-v2-page .zoning-v2-utility-grid > div:nth-child(2) > i {
    color: #7448d4;
    background: #f0eaff;
}

body.map-dashboard-v2-page .zoning-v2-utility-grid span {
    display: grid;
    color: #66778c;
    font-size: 0.67rem;
}

body.map-dashboard-v2-page .zoning-v2-utility-grid strong {
    color: #15243b;
    font-size: 1rem;
}

body.map-dashboard-v2-page .zoning-v2-breakdown {
    display: grid;
    gap: 12px;
}

body.map-dashboard-v2-page .zoning-v2-breakdown::before {
    color: #65768b;
    content: 'Alan Dağılımı';
    font-size: 0.68rem;
    font-weight: 660;
}

body.map-dashboard-v2-page .zoning-v2-breakdown-bar {
    display: grid;
    height: 13px;
    grid-template-columns: 55fr 36fr 9fr;
    gap: 2px;
    overflow: hidden;
    border-radius: 4px;
}

body.map-dashboard-v2-page .zoning-v2-breakdown-bar i:nth-child(1) { background: #0c9a92; }
body.map-dashboard-v2-page .zoning-v2-breakdown-bar i:nth-child(2) { background: #2471ce; }
body.map-dashboard-v2-page .zoning-v2-breakdown-bar i:nth-child(3) { background: #aab5c2; }

body.map-dashboard-v2-page .zoning-v2-breakdown > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

body.map-dashboard-v2-page .zoning-v2-breakdown > div > span {
    display: grid;
    grid-template-columns: 7px minmax(0, 1fr);
    gap: 2px 6px;
    color: #69798d;
    font-size: 0.62rem;
}

body.map-dashboard-v2-page .zoning-v2-breakdown b {
    width: 7px;
    height: 7px;
    margin-top: 2px;
    background: #0c9a92;
    border-radius: 50%;
}

body.map-dashboard-v2-page .zoning-v2-breakdown > div > span:nth-child(2) b { background: #2471ce; }
body.map-dashboard-v2-page .zoning-v2-breakdown > div > span:nth-child(3) b { background: #aab5c2; }

body.map-dashboard-v2-page .zoning-v2-breakdown strong {
    grid-column: 2;
    color: #283b53;
    font-size: 0.73rem;
}

body.map-dashboard-v2-page .zoning-v2-cost-card {
    display: flex;
    flex-direction: column;
}

body.map-dashboard-v2-page .zoning-v2-cost-try {
    margin-top: 4px;
    color: #10213b;
    font-size: 1.44rem;
    font-weight: 820;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

body.map-dashboard-v2-page .zoning-v2-cost-usd {
    margin-top: 7px;
    color: #536981;
    font-size: 0.82rem;
}

body.map-dashboard-v2-page .zoning-v2-cost-card dl {
    display: grid;
    margin: auto 0 0;
    gap: 0;
}

body.map-dashboard-v2-page .zoning-v2-cost-card dl > div {
    padding: 11px 0;
    border-top: 1px solid #edf1f5;
}

body.map-dashboard-v2-page .zoning-v2-cost-card dt {
    color: #738296;
    font-size: 0.65rem;
}

body.map-dashboard-v2-page .zoning-v2-cost-card dd {
    margin: 4px 0 0;
    color: #273b53;
    font-size: 0.78rem;
    font-weight: 710;
}

body.map-dashboard-v2-page .zoning-v2-cost-card dl > div:first-child dd {
    display: inline-flex;
    padding: 4px 9px;
    color: #23713a;
    background: #edf9ed;
    border: 1px solid #b9dfbd;
    border-radius: 999px;
}

body.map-dashboard-v2-page .zoning-v2-plan-card {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
    gap: 18px;
}

body.map-dashboard-v2-page .zoning-v2-plan-info {
    min-width: 0;
    padding-right: 18px;
    border-right: 1px solid #e7edf3;
}

body.map-dashboard-v2-page .zoning-v2-plan-info > header > span {
    max-width: 66%;
}

body.map-dashboard-v2-page .zoning-v2-plan-name {
    display: grid;
    min-height: 64px;
    margin-bottom: 12px;
    padding: 11px 13px;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    color: #135f75;
    background: linear-gradient(135deg, #f1fbfc, #f5f9ff);
    border: 1px solid #d8eaf0;
    border-radius: 11px;
}

body.map-dashboard-v2-page .zoning-v2-plan-name > i {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    background: #dff4f5;
    border-radius: 50%;
    font-size: 1rem;
}

body.map-dashboard-v2-page .zoning-v2-plan-name > span {
    display: grid;
    min-width: 0;
    gap: 3px;
}

body.map-dashboard-v2-page .zoning-v2-plan-name small {
    color: #718398;
    font-size: 0.7rem;
    font-weight: 650;
}

body.map-dashboard-v2-page .zoning-v2-plan-name strong {
    overflow: hidden;
    color: #17304a;
    font-size: 0.88rem;
    font-weight: 760;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-plan-grid {
    display: grid;
    margin: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

body.map-dashboard-v2-page .zoning-v2-plan-grid > div {
    display: grid;
    min-width: 0;
    min-height: 72px;
    padding: 11px;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    background: #fafcfe;
    border: 1px solid #e6edf3;
    border-radius: 10px;
}

body.map-dashboard-v2-page .zoning-v2-plan-grid i {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    color: #087f91;
    background: #e8f7f8;
    border-radius: 50%;
    font-size: 0.92rem;
}

body.map-dashboard-v2-page .zoning-v2-plan-grid dt {
    color: #738298;
    font-size: 0.7rem;
    font-weight: 650;
}

body.map-dashboard-v2-page .zoning-v2-plan-grid dd {
    margin: 3px 0 0;
    color: #1c334e;
    font-size: 0.84rem;
    font-weight: 740;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

/* Plan Bilgileri kartının altında "Geçmiş İmar Sürümleri" (<details>) —
   kanonik panelden taşınan öğe; eski sokak-görünümü linkinin görünümünü alır. */
body.map-dashboard-v2-page .zoning-v2-history-slot {
    margin-top: 15px;
}

body.map-dashboard-v2-page .zoning-v2-history-slot:empty {
    display: none;
}

body.map-dashboard-v2-page .zoning-v2-history-slot details.section-history-reveal {
    margin: 0;
}

body.map-dashboard-v2-page .zoning-v2-history-slot .section-history-summary {
    display: inline-flex;
    padding: 7px 10px;
    align-items: center;
    gap: 6px;
    color: #1768c7;
    background: #f2f7ff;
    border: 1px solid #d4e4fa;
    border-radius: 9px;
    font-size: 0.68rem;
    font-weight: 700;
    cursor: pointer;
}

body.map-dashboard-v2-page .zoning-v2-history-slot .section-history-host {
    margin-top: 8px;
}

body.map-dashboard-v2-page .zoning-v2-drawing {
    display: grid;
    min-width: 0;
    grid-template-rows: auto minmax(145px, 1fr);
}

body.map-dashboard-v2-page .zoning-v2-drawing header button {
    width: 28px;
    height: 28px;
    padding: 0;
    color: #62748a;
    background: #fff;
    border: 1px solid #dbe3eb;
    border-radius: 8px;
}

body.map-dashboard-v2-page .zoning-v2-drawing-frame {
    min-height: 158px;
    overflow: hidden;
    background: #f4f5ef;
    border: 1px solid #dce3e7;
    border-radius: 11px;
}

body.map-dashboard-v2-page .zoning-v2-drawing-frame img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 158px;
    object-fit: cover;
    transition: transform 180ms ease;
    transform-origin: center;
}

body.map-dashboard-v2-page .zoning-v2-drawing-empty,
body.map-dashboard-v2-page .zoning-v2-empty {
    display: grid;
    min-height: 80px;
    place-items: center;
    color: #8090a3;
    font-size: 0.7rem;
}

body.map-dashboard-v2-page .zoning-v2-confidence-card header strong {
    color: #ef7d12;
    font-size: 0.9rem;
}

body.map-dashboard-v2-page .zoning-v2-confidence-bar {
    height: 7px;
    margin: -4px 0 15px;
    overflow: hidden;
    background: #e7ebf0;
    border-radius: 999px;
}

body.map-dashboard-v2-page .zoning-v2-confidence-bar span {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #f59d14, #ed7510);
    border-radius: inherit;
}

body.map-dashboard-v2-page .zoning-v2-source-head,
body.map-dashboard-v2-page .zoning-v2-source-row {
    display: grid;
    grid-template-columns: 1.15fr 0.78fr 0.58fr 1.1fr;
    min-height: 37px;
    align-items: center;
    gap: 5px;
    border-bottom: 1px solid #e8edf3;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .zoning-v2-source-head {
    min-height: 28px;
    color: #718197;
    font-weight: 650;
}

body.map-dashboard-v2-page .zoning-v2-source-row strong { font-size: 0.69rem; }
body.map-dashboard-v2-page .zoning-v2-source-row span { color: #52657c; }
body.map-dashboard-v2-page .zoning-v2-source-row em {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    color: #db7a0b;
    font-size: 0.61rem;
    font-style: normal;
    font-weight: 680;
    text-align: right;
}

body.map-dashboard-v2-page .zoning-v2-notes-card header > span {
    padding: 4px 7px;
    color: #247240;
    background: #edf8ef;
    border-radius: 999px;
}

body.map-dashboard-v2-page .zoning-v2-document {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
}

body.map-dashboard-v2-page .zoning-v2-document > i {
    display: grid;
    width: 34px;
    height: 38px;
    place-items: center;
    color: #e34e48;
    background: #fff1f0;
    border-radius: 8px;
}

body.map-dashboard-v2-page .zoning-v2-document > span {
    display: grid;
    min-width: 0;
    gap: 3px;
}

body.map-dashboard-v2-page .zoning-v2-document strong {
    overflow: hidden;
    font-size: 0.69rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-document small {
    color: #7b899c;
    font-size: 0.62rem;
}

body.map-dashboard-v2-page .zoning-v2-document a {
    padding: 7px 8px;
    color: #33516e;
    background: #fff;
    border: 1px solid #dce4ec;
    border-radius: 8px;
    font-size: 0.63rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-legal-card ul {
    display: grid;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.map-dashboard-v2-page .zoning-v2-legal-row {
    display: grid;
    min-height: 40px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    border-top: 1px solid #e8edf3;
}

body.map-dashboard-v2-page .zoning-v2-legal-row > span {
    overflow: hidden;
    color: #344a63;
    font-size: 0.65rem;
    font-weight: 620;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-legal-row strong {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #7b8795;
    font-size: 0.61rem;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-legal-row--success strong { color: #319347; }
body.map-dashboard-v2-page .zoning-v2-legal-row--warning strong { color: #e07e0e; }

@media (max-width: 1399.98px) {
    body.map-dashboard-v2-page .zoning-v2-layout {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 0.42fr);
    }

    body.map-dashboard-v2-page .zoning-v2-primary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.map-dashboard-v2-page .zoning-v2-cost-card {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: minmax(210px, 0.7fr) repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    body.map-dashboard-v2-page .zoning-v2-cost-card header { grid-column: 1 / -1; }
    body.map-dashboard-v2-page .zoning-v2-cost-card dl { grid-column: 2 / -1; grid-row: 2 / span 2; margin: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .zoning-v2-cost-card dl > div { padding: 4px 10px; border-top: 0; border-left: 1px solid #edf1f5; }

    body.map-dashboard-v2-page .zoning-v2-envelope-layout {
        grid-template-columns: minmax(290px, 1fr) minmax(220px, 0.86fr);
    }
}

@media (max-width: 1099.98px) {
    body.map-dashboard-v2-page .zoning-v2-metrics { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .zoning-v2-metric { grid-column: span 2; }
    body.map-dashboard-v2-page .zoning-v2-metric:nth-child(4) { grid-column: 2 / span 2; }
    body.map-dashboard-v2-page .zoning-v2-metric:nth-child(5) { grid-column: 4 / span 2; }
    body.map-dashboard-v2-page .zoning-v2-layout { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .zoning-v2-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .zoning-v2-legal-card { grid-column: 1 / -1; }

    body.map-dashboard-v2-page .zoning-v2-envelope-layout {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 768px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-metric {
        grid-column: auto;
        min-height: 86px;
        grid-template-columns: 44px minmax(0, 1fr);
        padding: 13px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-metric:last-child:nth-child(odd) { grid-column: 1 / -1; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-metric-icon { width: 44px; height: 44px; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-layout,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-primary-grid,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-plan-card,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-rail { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-cost-card { grid-column: auto; display: flex; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-cost-card dl { margin-top: 18px; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .zoning-v2-plan-info { padding-right: 0; padding-bottom: 16px; border-right: 0; border-bottom: 1px solid #e7edf3; }
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page .parcel-v2-zoning { gap: 12px; }
    body.map-dashboard-v2-page .zoning-v2-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    body.map-dashboard-v2-page .zoning-v2-metric { grid-column: auto; min-height: 82px; grid-template-columns: 40px minmax(0, 1fr); padding: 11px; gap: 10px; }
    body.map-dashboard-v2-page .zoning-v2-metric:nth-child(4) { grid-column: auto; }
    body.map-dashboard-v2-page .zoning-v2-metric:nth-child(5) { grid-column: 1 / -1; }
    body.map-dashboard-v2-page .zoning-v2-metric-icon { width: 40px; height: 40px; font-size: 1rem; }
    body.map-dashboard-v2-page .zoning-v2-layout,
    body.map-dashboard-v2-page .zoning-v2-primary-grid,
    body.map-dashboard-v2-page .zoning-v2-plan-card,
    body.map-dashboard-v2-page .zoning-v2-rail { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .zoning-v2-card { padding: 14px; }
    body.map-dashboard-v2-page .zoning-v2-cost-card { grid-column: auto; display: flex; }
    body.map-dashboard-v2-page .zoning-v2-cost-card dl { margin-top: 18px; }
    body.map-dashboard-v2-page .zoning-v2-plan-info { padding-right: 0; padding-bottom: 14px; border-right: 0; border-bottom: 1px solid #e7edf3; }
    body.map-dashboard-v2-page .zoning-v2-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .zoning-v2-inline-stats,
    body.map-dashboard-v2-page .zoning-v2-capacity-stats { gap: 5px; }
    body.map-dashboard-v2-page .zoning-v2-inline-stats > div,
    body.map-dashboard-v2-page .zoning-v2-capacity-stats > div { padding-inline: 7px; }
    body.map-dashboard-v2-page .zoning-v2-capacity-stats dd { font-size: 1.1rem; }
    body.map-dashboard-v2-page .zoning-v2-massing { height: 190px; }
    body.map-dashboard-v2-page .zoning-v2-document { grid-template-columns: 34px minmax(0, 1fr); }
    body.map-dashboard-v2-page .zoning-v2-document a { grid-column: 1 / -1; text-align: center; }
    body.map-dashboard-v2-page .zoning-v2-envelope { min-height: 220px; }
    body.map-dashboard-v2-page .zoning-v2-setbacks { grid-template-columns: 1fr; }
}

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal :is(button, a, summary):focus-visible {
    outline: 3px solid rgba(35, 103, 209, 0.35);
    outline-offset: 2px;
    box-shadow: none;
}

@media (max-width: 1199.98px) and (min-width: 768px) {
    body.map-dashboard-v2-page .parcel-v2-group-tab,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-group-tab.nav-link {
        gap: 5px;
        font-size: 0.73rem;
    }

    body.map-dashboard-v2-page .parcel-v2-overview {
        padding: 20px 18px 32px;
    }

    body.map-dashboard-v2-page .parcel-v2-metrics {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    body.map-dashboard-v2-page .parcel-v2-metric {
        grid-column: span 2;
    }

    /* 3 kart tek satıra sığar; 5 kartlı eski 3+2 ortalama kuralı gerekmez. */
    body.map-dashboard-v2-page .parcel-v2-metrics:not(.parcel-v2-metrics--lean) .parcel-v2-metric:nth-child(4) {
        grid-column: 2 / span 2;
    }

    body.map-dashboard-v2-page .parcel-v2-metrics:not(.parcel-v2-metrics--lean) .parcel-v2-metric:nth-child(5) {
        grid-column: 4 / span 2;
    }
}

@media (min-width: 992px) {
    body.map-dashboard-v2-page .parcel-v2-dashboard-grid,
    body.map-dashboard-v2-page .parcel-v2-overview-grid {
        grid-template-columns: minmax(0, 1.08fr) minmax(300px, 0.92fr);
    }
}

@media (min-width: 992px) and (max-width: 1279.98px) {
    body.map-dashboard-v2-page .parcel-v2-location-card {
        display: grid;
        grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
        grid-template-areas:
            "heading heading"
            "preview list"
            "preview updated";
        align-items: start;
    }

    body.map-dashboard-v2-page .parcel-v2-location-heading {
        grid-area: heading;
    }

    body.map-dashboard-v2-page .parcel-v2-location-preview {
        grid-area: preview;
        margin: 0 0 18px 18px;
    }

    body.map-dashboard-v2-page .parcel-v2-location-list {
        grid-area: list;
        margin-top: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-location-updated {
        grid-area: updated;
    }
}

@media (min-width: 1280px) {
    body.map-dashboard-v2-page .parcel-v2-workspace-grid {
        grid-template-columns: minmax(0, 2.15fr) minmax(330px, 0.85fr);
    }

    body.map-dashboard-v2-page .parcel-v2-location-rail {
        position: sticky;
        top: calc(var(--parcel-v2-tab-height) + 18px);
    }
}

/* Drawer and expanded workspace share one always-visible tab navigation. */

body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-card--units {
    display: none;
}

@media (min-width: 768px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-commandbar {
        padding-inline: 16px;
        gap: 12px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-command-actions {
        gap: 6px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-command-actions > :not(.parcel-v2-view-toggle):not(.parcel-v2-footer-close) {
        display: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .modal-header {
        min-height: 82px;
        padding-inline: 16px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .dp-hero__content {
        min-height: 82px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .modal-title,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-card-modal-subtitle {
        max-width: 420px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-group-nav,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-subnav-group {
        padding-inline: 16px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-group-nav {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        padding-inline: 6px;
        overflow-x: visible;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-group-tab,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-group-tab.nav-link {
        padding-inline: 5px;
        gap: 4px;
        font-size: 0.68rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-subnav-switch {
        width: 100%;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-subtab.nav-link {
        flex: 1 1 0;
        min-width: 0;
        padding-inline: 8px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-overview {
        padding: 16px 16px 24px;
        gap: 14px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-workspace-grid,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-workspace-main,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-insight-stack {
        gap: 14px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-workspace-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-dashboard-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-overview-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-metric {
        grid-column: auto;
        min-height: 78px;
        padding: 11px 12px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-metric:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-location-rail {
        position: static;
        top: auto;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-location-card {
        display: block;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-location-preview {
        margin: 0 16px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) [data-v2-legacy-content] {
        padding: 16px 16px 28px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-footer {
        display: grid;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .parcel-v2-footer {
        display: none;
    }
}

@media (min-width: 992px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .modal-dialog {
        width: clamp(650px, 44vw, 820px);
    }
}

@media (max-width: 991.98px) and (min-width: 768px) {
    body.map-dashboard-v2-page .parcel-v2-dashboard-grid,
    body.map-dashboard-v2-page .parcel-v2-overview-grid {
        grid-template-columns: 1fr;
    }

    body.map-dashboard-v2-page .parcel-v2-metrics {
        gap: 8px;
    }

    body.map-dashboard-v2-page .parcel-v2-metric {
        padding-inline: 11px;
        gap: 8px;
    }

    body.map-dashboard-v2-page .parcel-v2-metric-icon {
        width: 34px;
        height: 34px;
    }
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page .parcel-v2-commandbar {
        display: none;
    }

    body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle {
        display: inline-flex;
        min-width: 82px;
        min-height: 40px;
        padding: 7px 10px;
        align-items: center;
        justify-content: center;
        gap: 6px;
        color: var(--parcel-v2-blue);
        background: var(--parcel-v2-blue-soft);
        border: 1px solid #cbdcf8;
        border-radius: 11px;
        font-size: 0.7rem;
        font-weight: 700;
        line-height: 1;
    }

    body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle .parcel-v2-view-label {
        display: none;
    }

    body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle .parcel-v2-view-label-compact {
        display: inline;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal {
        padding: 0 !important;
        width: 100vw;
        overflow: hidden !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-dialog {
        position: fixed;
        inset: auto 0 0;
        width: 100vw !important;
        max-width: 100vw !important;
        height: min(94dvh, 900px) !important;
        min-height: 0;
        margin: 0 !important;
        padding: 0 !important;
        transform: translate3d(0, 100%, 0) !important;
        transition: transform 260ms cubic-bezier(0.2, 0.72, 0.22, 1) !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.show .modal-dialog {
        transform: translate3d(0, 0, 0) !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-content {
        width: 100% !important;
        max-width: 100% !important;
        height: 100%;
        max-height: 100%;
        overflow: hidden !important;
        border: 0;
        border-radius: 20px 20px 0 0;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .modal-dialog {
        inset: 0 !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .modal-content {
        border-radius: 0;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header {
        min-height: 76px;
        padding: 13px 14px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__content {
        min-height: 50px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header::before {
        position: absolute;
        top: 6px;
        left: 50%;
        width: 38px;
        height: 4px;
        background: #ccd5df;
        border-radius: 999px;
        content: '';
        transform: translateX(-50%);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__icon-wrapper,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-heading-actions > .dp-hero__badge {
        display: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-header-coverage {
        display: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal.parcel-v2-expanded .modal-header::before {
        display: none;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-title,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-modal-subtitle {
        max-width: 57vw;
    }

    body.map-dashboard-v2-page .parcel-v2-header-coverage {
        min-width: 82px;
        padding-right: 8px;
    }

    body.map-dashboard-v2-page .parcel-v2-header-coverage span {
        display: none;
    }

    body.map-dashboard-v2-page .parcel-v2-group-nav {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        grid-auto-columns: unset;
        grid-auto-flow: row;
        min-height: 62px;
        padding: 0 3px;
        overflow-x: visible;
    }

    body.map-dashboard-v2-page .parcel-v2-group-tab,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-group-tab.nav-link {
        min-height: 62px;
        padding: 7px 2px 6px;
        gap: 3px;
        font-size: clamp(0.58rem, 2.2vw, 0.68rem);
        white-space: normal;
    }

    body.map-dashboard-v2-page .parcel-v2-subnav {
        top: auto;
    }

    body.map-dashboard-v2-page .parcel-v2-subnav-group {
        min-height: 58px;
        padding: 7px 10px;
    }

    body.map-dashboard-v2-page .parcel-v2-subnav-switch {
        width: 100%;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-subtab.nav-link {
        flex: 1 1 0;
        min-width: 0;
        min-height: 38px;
        padding: 8px 7px;
        font-size: 0.74rem;
        white-space: normal;
    }

    body.map-dashboard-v2-page .parcel-v2-overview {
        padding: 14px;
        gap: 12px;
    }

    body.map-dashboard-v2-page .parcel-v2-workspace-grid,
    body.map-dashboard-v2-page .parcel-v2-workspace-main,
    body.map-dashboard-v2-page .parcel-v2-dashboard-grid,
    body.map-dashboard-v2-page .parcel-v2-insight-stack {
        gap: 12px;
    }

    body.map-dashboard-v2-page .parcel-v2-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    body.map-dashboard-v2-page .parcel-v2-metric {
        grid-column: auto;
        grid-template-columns: auto minmax(0, 1fr);
        min-height: 72px;
        padding: 11px;
        place-items: center start;
        text-align: left;
    }

    body.map-dashboard-v2-page .parcel-v2-metric:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    body.map-dashboard-v2-page .parcel-v2-overview-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    body.map-dashboard-v2-page .parcel-v2-decision {
        grid-template-columns: auto minmax(0, 1fr);
    }

    body.map-dashboard-v2-page .parcel-v2-confidence {
        grid-column: 2;
        justify-self: start;
    }

    body.map-dashboard-v2-page .parcel-v2-data-details ul {
        grid-template-columns: 1fr;
    }

    body.map-dashboard-v2-page .parcel-v2-table-wrap {
        overflow-x: auto;
    }

    body.map-dashboard-v2-page .parcel-v2-table {
        min-width: 520px;
    }

    body.map-dashboard-v2-page .parcel-v2-location-heading {
        padding: 15px 14px 12px;
    }

    body.map-dashboard-v2-page .parcel-v2-location-preview {
        margin-inline: 12px;
    }

    body.map-dashboard-v2-page .parcel-v2-location-list {
        margin-inline: 14px;
    }

    body.map-dashboard-v2-page .parcel-v2-location-updated {
        margin-inline: 14px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal [data-v2-legacy-content] {
        padding: 14px 12px 22px;
    }

    body.map-dashboard-v2-page .parcel-v2-footer {
        display: flex;
        min-height: 70px;
        padding: 9px 10px calc(9px + env(safe-area-inset-bottom));
        gap: 6px;
    }

    body.map-dashboard-v2-page .parcel-v2-footer .btn {
        flex: 0 1 auto;
        min-height: 44px;
        padding: 8px;
        font-size: 0.7rem;
    }

    body.map-dashboard-v2-page .parcel-v2-footer .parcel-v2-footer-primary {
        min-width: 0;
        flex: 1 1 150px;
    }

    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="pdf"],
    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="share"] {
        flex: 0 0 auto;
    }

    body.map-dashboard-v2-page .parcel-v2-footer .parcel-v2-footer-close {
        flex: 0 0 44px;
    }

    body.map-dashboard-v2-page .parcel-v2-footer-close span {
        display: none;
    }
}

@media (max-width: 419.98px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-title {
        font-size: 0.92rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-card-modal-subtitle {
        font-size: 0.66rem;
    }

    body.map-dashboard-v2-page .parcel-v2-header-coverage {
        display: none;
    }

    body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle {
        width: 40px;
        min-width: 40px;
        padding-inline: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-mobile-view-toggle .parcel-v2-view-label-compact {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-footer {
        gap: 6px;
    }

    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="pdf"],
    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="share"] {
        width: 48px;
        flex-basis: 48px;
        padding-inline: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="pdf"] span,
    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="share"] span {
        display: none;
    }

    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="pdf"] i,
    body.map-dashboard-v2-page .parcel-v2-footer [data-v2-action="share"] i {
        font-size: 0.92rem;
    }

    body.map-dashboard-v2-page .parcel-v2-map-return {
        width: 36px;
        min-width: 36px;
        padding-inline: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-map-return span {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-location-row {
        grid-template-columns: minmax(76px, 0.75fr) minmax(0, 1.25fr);
        gap: 8px;
    }
}

@media (max-width: 991.98px) and (min-width: 768px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-layout {
        grid-template-columns: minmax(190px, 0.72fr) minmax(0, 1.5fr);
        gap: 18px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-image {
        min-height: 220px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 10px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-stat:nth-child(odd) {
        padding-left: 0;
        border-left: 0;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-stat:nth-child(n + 3) {
        padding-top: 10px;
        border-top: 1px solid #e5eaef;
    }
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page .parcel-v2-building-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-figure {
        width: min(100%, 390px);
        justify-self: center;
    }

    body.map-dashboard-v2-page .parcel-v2-building-image {
        min-height: 222px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-svg {
        max-width: 330px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-figure figcaption {
        padding-inline: 8px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 9px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stat {
        padding: 3px 11px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stat:nth-child(odd) {
        padding-left: 0;
        border-left: 0;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stat:nth-child(n + 3) {
        padding-top: 10px;
        border-top: 1px solid #e5eaef;
    }

    body.map-dashboard-v2-page .parcel-v2-floor-table {
        min-width: 500px;
    }
}

@media (max-width: 419.98px) {
    body.map-dashboard-v2-page .parcel-v2-building-image {
        min-height: 205px;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stat dd {
        font-size: 1rem;
    }

    body.map-dashboard-v2-page .parcel-v2-building-stat dd.is-text {
        font-size: 0.78rem;
    }
}

@media (max-height: 560px) and (min-width: 768px) {
    body.map-dashboard-v2-page {
        --parcel-v2-tab-height: 52px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-header {
        min-height: 68px;
        padding-block: 10px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-hero__content {
        min-height: 48px;
    }

    body.map-dashboard-v2-page .parcel-v2-group-nav,
    body.map-dashboard-v2-page .parcel-v2-group-tab,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .parcel-v2-group-tab.nav-link {
        min-height: 52px;
    }

    body.map-dashboard-v2-page .parcel-v2-subnav {
        top: auto;
    }

    body.map-dashboard-v2-page .parcel-v2-footer {
        min-height: 62px;
        padding-block: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .modal-dialog,
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal .dp-sheet-close,
    body.map-dashboard-v2-page .parcel-v2-group-tab,
    body.map-dashboard-v2-page .parcel-v2-group-tab::after,
    body.map-dashboard-v2-page .parcel-v2-meter > span {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

/* -------------------------------------------------------------------------
   Parsel Analizi — mevcut parsel veri sözleşmesini koruyan V2 sunumu
   ------------------------------------------------------------------------- */
body.map-dashboard-v2-page .parcel-v2-plan-source {
    display: none !important;
}

body.map-dashboard-v2-page .parcel-v2-plan-status {
    display: grid;
    gap: 14px;
    width: 100%;
    max-width: var(--parcel-v2-content-max);
    margin: 0 auto;
    padding: 18px;
    color: var(--parcel-v2-ink);
}

body.map-dashboard-v2-page .plan-v2-card {
    min-width: 0;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 16px;
    background: var(--parcel-v2-surface);
    box-shadow: 0 5px 18px rgba(21, 34, 56, 0.045);
}

body.map-dashboard-v2-page .plan-v2-card > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

body.map-dashboard-v2-page .plan-v2-card h3 {
    margin: 0;
    color: var(--parcel-v2-ink);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: -0.015em;
}

body.map-dashboard-v2-page .plan-v2-eyebrow {
    display: block;
    margin-bottom: 3px;
    color: var(--parcel-v2-muted);
    font-size: 0.67rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.map-dashboard-v2-page .plan-v2-area-card {
    display: grid;
    grid-template-columns: minmax(190px, 0.72fr) minmax(0, 1.6fr);
    align-items: stretch;
    overflow: hidden;
}

body.map-dashboard-v2-page .plan-v2-area-primary {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 19px 22px;
    border-right: 1px solid var(--parcel-v2-border);
}

body.map-dashboard-v2-page .plan-v2-area-icon,
body.map-dashboard-v2-page .plan-v2-metric-icon {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    color: #0d7783;
    background: #e2f6f7;
    font-size: 1.35rem;
}

body.map-dashboard-v2-page .plan-v2-area-primary > span:last-child {
    display: grid;
    min-width: 0;
}

body.map-dashboard-v2-page .plan-v2-area-primary small {
    color: #314865;
    font-size: 0.8rem;
    font-weight: 650;
}

body.map-dashboard-v2-page .plan-v2-area-primary strong {
    margin-top: 1px;
    color: var(--parcel-v2-navy);
    font-size: clamp(1.55rem, 2vw, 2.1rem);
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.035em;
}

body.map-dashboard-v2-page .plan-v2-area-primary em {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: max-content;
    max-width: 100%;
    margin-top: 9px;
    padding: 4px 8px;
    border: 1px solid #cce9df;
    border-radius: 7px;
    color: #25705d;
    background: #f0fbf7;
    font-size: 0.67rem;
    font-style: normal;
    font-weight: 700;
}

body.map-dashboard-v2-page .plan-v2-area-detail {
    display: grid;
    align-content: center;
    gap: 10px;
    padding: 15px 20px;
}

body.map-dashboard-v2-page .plan-v2-area-sources {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
}

body.map-dashboard-v2-page .plan-v2-area-source {
    position: relative;
    min-width: 0;
    padding: 1px 18px;
    border-left: 1px solid var(--parcel-v2-border);
}

body.map-dashboard-v2-page .plan-v2-area-source:first-child {
    padding-left: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .plan-v2-area-source small,
body.map-dashboard-v2-page .plan-v2-area-source strong {
    display: block;
}

body.map-dashboard-v2-page .plan-v2-area-source small {
    min-height: 2.1em;
    color: #435570;
    font-size: 0.7rem;
    line-height: 1.25;
}

body.map-dashboard-v2-page .plan-v2-area-source strong {
    margin-top: 4px;
    color: var(--parcel-v2-navy);
    font-size: 1.12rem;
    font-weight: 800;
}

body.map-dashboard-v2-page .plan-v2-area-source > span {
    position: absolute;
    top: 0;
    right: 10px;
    padding: 2px 6px;
    border-radius: 5px;
    color: #176655;
    background: #eaf8f3;
    font-size: 0.6rem;
    font-weight: 750;
}

body.map-dashboard-v2-page .plan-v2-area-detail > p {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 8px 10px;
    border: 1px solid #d7e5f8;
    border-radius: 8px;
    color: #245baa;
    background: #f4f8ff;
    font-size: 0.68rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .plan-v2-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

body.map-dashboard-v2-page .plan-v2-metric {
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 14px;
    background: #fff;
}

body.map-dashboard-v2-page .plan-v2-metric > span:last-child {
    display: grid;
    min-width: 0;
}

body.map-dashboard-v2-page .plan-v2-metric small {
    color: #465a74;
    font-size: 0.72rem;
}

body.map-dashboard-v2-page .plan-v2-metric strong {
    margin-top: 3px;
    overflow: hidden;
    color: var(--parcel-v2-navy);
    font-size: 1.13rem;
    font-weight: 820;
    line-height: 1.18;
    text-overflow: ellipsis;
}

body.map-dashboard-v2-page .plan-v2-tone--amber .plan-v2-metric-icon {
    color: #a36b12;
    background: #fff3d5;
}

body.map-dashboard-v2-page .plan-v2-tone--violet .plan-v2-metric-icon {
    color: #6548b7;
    background: #efeafe;
}

body.map-dashboard-v2-page .plan-v2-tone--blue .plan-v2-metric-icon {
    color: #245a9f;
    background: #e5f1fc;
}

body.map-dashboard-v2-page .plan-v2-usability-card,
body.map-dashboard-v2-page .plan-v2-risk-card,
body.map-dashboard-v2-page .plan-v2-building-card {
    padding: 16px 18px;
}

body.map-dashboard-v2-page .plan-v2-status,
body.map-dashboard-v2-page .plan-v2-source-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 5px 10px;
    border: 1px solid;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 750;
    line-height: 1.1;
}

body.map-dashboard-v2-page .plan-v2-status.is-success {
    color: #287746;
    border-color: #a8d8b9;
    background: #edf9f1;
}

body.map-dashboard-v2-page .plan-v2-status.is-warning,
body.map-dashboard-v2-page .plan-v2-status.is-neutral {
    color: #9b5b08;
    border-color: #efca85;
    background: #fff8e9;
}

body.map-dashboard-v2-page .plan-v2-status.is-danger {
    color: #a53643;
    border-color: #e9aab1;
    background: #fff2f3;
}

body.map-dashboard-v2-page .plan-v2-source-chip {
    color: #245baa;
    border-color: #c9dcfa;
    background: #f1f6ff;
}

body.map-dashboard-v2-page .plan-v2-usability-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
}

body.map-dashboard-v2-page .plan-v2-usability-figure {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 10px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-radius: 13px;
    background: #fbfcfd;
}

body.map-dashboard-v2-page .plan-v2-usability-figure figcaption {
    position: relative;
    z-index: 2;
    margin: 0 0 5px 2px;
    color: #31465f;
    font-size: 0.72rem;
    font-weight: 760;
}

body.map-dashboard-v2-page .plan-v2-usability-svg {
    display: block;
    width: 100%;
    max-height: 365px;
}

body.map-dashboard-v2-page .plan-v2-svg-bg { fill: #fcfdfd; }
body.map-dashboard-v2-page .plan-v2-svg-parcel { fill: rgba(31, 101, 183, 0.07); stroke: #122c50; stroke-width: 2.4; }
body.map-dashboard-v2-page .plan-v2-svg-envelope { fill: rgba(40, 170, 103, 0.09); stroke: #23975a; stroke-width: 2; stroke-dasharray: 6 5; }
body.map-dashboard-v2-page .plan-v2-svg-frontage { stroke: #176ff2; stroke-width: 5; stroke-linecap: round; }
body.map-dashboard-v2-page .plan-v2-svg-road { fill: #1e58ab; font-size: 9px; font-weight: 750; }
body.map-dashboard-v2-page .plan-v2-svg-neighbor { fill: #708096; font-size: 7px; font-style: italic; }
body.map-dashboard-v2-page .plan-v2-svg-dedication { fill: url(#planV2DedicationHatch); opacity: 0.75; }
body.map-dashboard-v2-page .plan-v2-svg-dedication-line { stroke: #d84c56; stroke-width: 2; stroke-dasharray: 5 4; }
body.map-dashboard-v2-page .plan-v2-svg-compass circle { fill: #fff; stroke: #ccd7e4; }
body.map-dashboard-v2-page .plan-v2-svg-compass path { fill: #102f5c; }
body.map-dashboard-v2-page .plan-v2-svg-compass text { fill: #213d62; font-size: 8px; font-weight: 800; }

body.map-dashboard-v2-page .plan-v2-legend {
    position: absolute;
    left: 17px;
    bottom: 15px;
    display: grid;
    gap: 6px;
    padding: 8px 10px;
    border: 1px solid #dce4ed;
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 4px 13px rgba(16, 35, 63, 0.07);
}

body.map-dashboard-v2-page .plan-v2-legend span {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #43546b;
    font-size: 0.61rem;
}

body.map-dashboard-v2-page .plan-v2-legend i {
    display: inline-block;
    width: 21px;
    border-top: 2px solid #122c50;
}

body.map-dashboard-v2-page .plan-v2-legend .is-usable { border-color: #23975a; border-style: dashed; }
body.map-dashboard-v2-page .plan-v2-legend .is-road { border-color: #176ff2; border-width: 4px; }
body.map-dashboard-v2-page .plan-v2-legend .is-dedication { border-color: #d84c56; border-style: dashed; }

body.map-dashboard-v2-page .plan-v2-usability-summary {
    display: grid;
    align-content: start;
    gap: 13px;
    min-width: 0;
}

body.map-dashboard-v2-page .plan-v2-usability-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
}

body.map-dashboard-v2-page .plan-v2-usability-metrics > div {
    min-width: 0;
    padding: 3px 14px;
    border-left: 1px solid var(--parcel-v2-border);
}

body.map-dashboard-v2-page .plan-v2-usability-metrics > div:first-child {
    padding-left: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .plan-v2-usability-metrics dt,
body.map-dashboard-v2-page .plan-v2-risk-facts dt,
body.map-dashboard-v2-page .plan-v2-building-grid dt {
    color: #53637a;
    font-size: 0.67rem;
    font-weight: 600;
}

body.map-dashboard-v2-page .plan-v2-usability-metrics dd {
    margin: 3px 0 0;
    color: var(--parcel-v2-navy);
    font-size: 1.16rem;
    font-weight: 830;
    line-height: 1.15;
}

body.map-dashboard-v2-page .plan-v2-comparison > div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
    color: #354963;
    font-size: 0.65rem;
    font-weight: 750;
}

body.map-dashboard-v2-page .plan-v2-comparison-track {
    display: block;
    height: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: repeating-linear-gradient(135deg, #e8edf3 0, #e8edf3 4px, #f8fafc 4px, #f8fafc 8px);
}

body.map-dashboard-v2-page .plan-v2-comparison-track i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #23a765;
}

body.map-dashboard-v2-page .plan-v2-analysis-note,
body.map-dashboard-v2-page .plan-v2-road-note {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    margin: 0;
    color: #53647a;
    font-size: 0.68rem;
    line-height: 1.4;
}

body.map-dashboard-v2-page .plan-v2-analysis-note i { color: var(--parcel-v2-blue); }
body.map-dashboard-v2-page .plan-v2-road-note { color: #27714f; }

body.map-dashboard-v2-page .plan-v2-dedication-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #efca85;
    border-radius: 10px;
    color: #9a5a07;
    background: #fffaf0;
}

body.map-dashboard-v2-page .plan-v2-dedication-note span { display: grid; }
body.map-dashboard-v2-page .plan-v2-dedication-note strong { font-size: 0.72rem; }
body.map-dashboard-v2-page .plan-v2-dedication-note small { margin-top: 3px; font-size: 0.64rem; line-height: 1.35; }

body.map-dashboard-v2-page .plan-v2-bottom-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
}

body.map-dashboard-v2-page .plan-v2-bottom-grid.is-single {
    grid-template-columns: minmax(0, 1fr) !important;
}

body.map-dashboard-v2-page .plan-v2-building-inline {
    margin-top: 2px;
    padding-top: 14px;
    border-top: 1px solid var(--parcel-v2-border);
}

body.map-dashboard-v2-page .plan-v2-building-inline > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 6px;
}

body.map-dashboard-v2-page .plan-v2-building-inline h3 {
    margin: 0;
    color: var(--parcel-v2-ink);
    font-size: 0.88rem;
    font-weight: 800;
}

body.map-dashboard-v2-page .plan-v2-building-inline .plan-v2-building-grid > div {
    padding-block: 9px;
}

body.map-dashboard-v2-page .plan-v2-building-inline .plan-v2-building-grid > div:first-child {
    grid-column: 1 / -1;
    padding-left: 0;
    border-top: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .plan-v2-building-inline .plan-v2-building-grid > div:nth-child(n + 2) {
    border-top: 1px solid #edf0f4;
}

body.map-dashboard-v2-page .plan-v2-building-inline .plan-v2-building-grid > div:nth-child(even) {
    padding-left: 0;
    border-left: 0;
}

body.map-dashboard-v2-page .plan-v2-risk-layout {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
}

body.map-dashboard-v2-page .plan-v2-risk-score {
    display: grid;
    place-items: end center;
    width: 128px;
    height: 74px;
    border-radius: 128px 128px 14px 14px;
    background: conic-gradient(from 270deg at 50% 100%, #67bd63 0deg 42deg, #f3c323 42deg 88deg, #ed7c22 88deg var(--plan-v2-score-angle), #e6ebf0 var(--plan-v2-score-angle) 180deg, transparent 180deg);
}

body.map-dashboard-v2-page .plan-v2-risk-score::before {
    content: '';
    position: absolute;
}

body.map-dashboard-v2-page .plan-v2-risk-score > div {
    display: flex;
    align-items: baseline;
    justify-content: center;
    width: 102px;
    height: 54px;
    padding-top: 25px;
    border-radius: 102px 102px 9px 9px;
    background: #fff;
}

body.map-dashboard-v2-page .plan-v2-risk-score strong {
    color: #d85522;
    font-size: 1.45rem;
    font-weight: 850;
}

body.map-dashboard-v2-page .plan-v2-risk-score span { margin-left: 3px; color: #718096; font-size: 0.68rem; }

body.map-dashboard-v2-page .plan-v2-risk-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
}

body.map-dashboard-v2-page .plan-v2-risk-facts > div {
    padding: 2px 12px;
    border-left: 1px solid var(--parcel-v2-border);
}

body.map-dashboard-v2-page .plan-v2-risk-facts > div:first-child { padding-left: 0; border-left: 0; }
body.map-dashboard-v2-page .plan-v2-risk-facts dd,
body.map-dashboard-v2-page .plan-v2-building-grid dd {
    margin: 4px 0 0;
    color: var(--parcel-v2-navy);
    font-size: 0.82rem;
    font-weight: 780;
    line-height: 1.25;
}

body.map-dashboard-v2-page .plan-v2-factor-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 13px;
}

body.map-dashboard-v2-page .plan-v2-factor-list span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border: 1px solid #e1e7ef;
    border-radius: 8px;
    color: #485b73;
    background: #fbfcfe;
    font-size: 0.61rem;
}

body.map-dashboard-v2-page .plan-v2-factor-list i { color: var(--parcel-v2-blue); }

/* -------------------------------------------------------------------------
   V2 unified Yapı & Bölümler workspace
   ------------------------------------------------------------------------- */
body.map-dashboard-v2-page .parcel-v2-building-workspace {
    width: 100%;
    max-width: var(--parcel-v2-content-max);
    margin: 0 auto;
    padding: 14px 18px 28px;
    color: var(--parcel-v2-ink);
}

body.map-dashboard-v2-page .parcel-v2-building-workspace[hidden] { display: none !important; }

body.map-dashboard-v2-page .parcel-v2-building-workspace-inner {
    display: grid;
    gap: 14px;
}

body.map-dashboard-v2-page .parcel-v2-building-topline {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(360px, 1fr);
    gap: 14px;
}

body.map-dashboard-v2-page .parcel-v2-building-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

body.map-dashboard-v2-page .parcel-v2-building-metric {
    display: flex;
    min-width: 0;
    min-height: 96px;
    padding: 15px;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 14px;
    box-shadow: 0 8px 26px rgba(19, 46, 76, 0.045);
}

body.map-dashboard-v2-page .parcel-v2-building-metric-icon,
body.map-dashboard-v2-page .parcel-v2-building-identity-icon,
body.map-dashboard-v2-page .parcel-v2-building-unit-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

body.map-dashboard-v2-page .parcel-v2-building-metric-icon {
    width: 48px;
    height: 48px;
    font-size: 1.25rem;
}

body.map-dashboard-v2-page .parcel-v2-building-metric.is-violet .parcel-v2-building-metric-icon { color: #7155d7; background: #f0ebff; }
body.map-dashboard-v2-page .parcel-v2-building-metric.is-blue .parcel-v2-building-metric-icon { color: #2369d8; background: #e8f1ff; }
body.map-dashboard-v2-page .parcel-v2-building-metric.is-green .parcel-v2-building-metric-icon { color: #17875f; background: #e8f8ef; }
body.map-dashboard-v2-page .parcel-v2-building-metric.is-cyan .parcel-v2-building-metric-icon { color: #078b98; background: #e5f8fa; }

body.map-dashboard-v2-page .parcel-v2-building-metric > span:last-child,
body.map-dashboard-v2-page .parcel-v2-building-metric strong,
body.map-dashboard-v2-page .parcel-v2-building-metric small {
    display: block;
    min-width: 0;
}

body.map-dashboard-v2-page .parcel-v2-building-metric strong {
    color: var(--parcel-v2-navy);
    font-size: 1.25rem;
    font-weight: 810;
    line-height: 1.1;
}

body.map-dashboard-v2-page .parcel-v2-building-metric small {
    margin-top: 5px;
    color: var(--parcel-v2-muted);
    font-size: 0.72rem;
    font-style: normal;
}

body.map-dashboard-v2-page .parcel-v2-building-identity {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(132px, auto);
    min-width: 0;
    padding: 15px 16px;
    align-items: start;
    gap: 13px;
    background: linear-gradient(135deg, #fff 58%, #f5fbf9);
    border: 1px solid var(--parcel-v2-border);
    border-radius: 14px;
    box-shadow: 0 8px 26px rgba(19, 46, 76, 0.045);
}

body.map-dashboard-v2-page .parcel-v2-building-identity-icon {
    width: 48px;
    height: 48px;
    color: #078f83;
    background: #dff5ed;
    font-size: 1.3rem;
}

body.map-dashboard-v2-page .parcel-v2-building-identity-copy { min-width: 0; }

body.map-dashboard-v2-page .parcel-v2-building-identity h3 {
    margin: 1px 0 6px;
    overflow: hidden;
    color: var(--parcel-v2-navy);
    font-size: 0.88rem;
    font-weight: 790;
    line-height: 1.28;
    text-overflow: ellipsis;
}

body.map-dashboard-v2-page .parcel-v2-building-status {
    display: inline-flex;
    padding: 4px 8px;
    color: #137457;
    background: #e6f7ed;
    border: 1px solid #c9ecd9;
    border-radius: 999px;
    font-size: 0.65rem;
    font-weight: 730;
}

body.map-dashboard-v2-page .parcel-v2-building-identity-copy p {
    margin: 7px 0;
    color: #5c6e84;
    font-size: 0.67rem;
    line-height: 1.42;
}

body.map-dashboard-v2-page .parcel-v2-building-verification {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    color: #65758a;
    font-size: 0.62rem;
}

body.map-dashboard-v2-page .parcel-v2-building-verification span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

body.map-dashboard-v2-page .parcel-v2-building-verification i { color: #20a06e; }

body.map-dashboard-v2-page .parcel-v2-building-evidence {
    display: grid;
    min-width: 132px;
    margin: 0;
    gap: 7px;
}

body.map-dashboard-v2-page .parcel-v2-building-evidence > div {
    padding: 7px 8px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid #e0e8ef;
    border-radius: 9px;
}

body.map-dashboard-v2-page .parcel-v2-building-evidence dt,
body.map-dashboard-v2-page .parcel-v2-building-evidence dd { margin: 0; }
body.map-dashboard-v2-page .parcel-v2-building-evidence dt { color: #8090a2; font-size: 0.56rem; }
body.map-dashboard-v2-page .parcel-v2-building-evidence dd { margin-top: 2px; color: #263c57; font-size: 0.63rem; font-weight: 720; line-height: 1.3; }

body.map-dashboard-v2-page .parcel-v2-building-stage {
    display: grid;
    grid-template-columns: minmax(0, 1.32fr) minmax(390px, 1fr);
    gap: 14px;
}

body.map-dashboard-v2-page .parcel-v2-building-visual,
body.map-dashboard-v2-page .parcel-v2-building-explorer,
body.map-dashboard-v2-page .parcel-v2-building-neighbors {
    min-width: 0;
    background: #fff;
    border: 1px solid var(--parcel-v2-border);
    border-radius: 15px;
    box-shadow: 0 9px 28px rgba(19, 46, 76, 0.045);
}

body.map-dashboard-v2-page .parcel-v2-building-visual,
body.map-dashboard-v2-page .parcel-v2-building-explorer { padding: 16px; }

body.map-dashboard-v2-page .parcel-v2-building-card-heading {
    display: flex;
    min-height: 36px;
    margin-bottom: 10px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

body.map-dashboard-v2-page .parcel-v2-building-card-heading small,
body.map-dashboard-v2-page .parcel-v2-building-card-heading h3 { display: block; margin: 0; }
body.map-dashboard-v2-page .parcel-v2-building-card-heading small { color: var(--parcel-v2-teal); font-size: 0.57rem; font-weight: 760; letter-spacing: 0.055em; text-transform: uppercase; }
body.map-dashboard-v2-page .parcel-v2-building-card-heading h3 { margin-top: 2px; color: var(--parcel-v2-navy); font-size: 0.94rem; font-weight: 790; }
body.map-dashboard-v2-page .parcel-v2-building-card-heading > span { color: #687a90; font-size: 0.66rem; font-weight: 680; }

body.map-dashboard-v2-page .parcel-v2-roof-toggle {
    display: inline-flex;
    padding: 0;
    align-items: center;
    gap: 8px;
    color: #63748a;
    background: transparent;
    border: 0;
    font-size: 0.65rem;
    font-weight: 680;
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-roof-toggle i {
    position: relative;
    display: inline-block;
    width: 34px;
    height: 20px;
    background: #cfd9e3;
    border-radius: 999px;
    transition: background 160ms ease;
}

body.map-dashboard-v2-page .parcel-v2-roof-toggle i::after {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    content: '';
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(15, 36, 60, 0.28);
    transition: transform 160ms ease;
}

body.map-dashboard-v2-page .parcel-v2-roof-toggle[aria-pressed="true"] i { background: var(--parcel-v2-teal); }
body.map-dashboard-v2-page .parcel-v2-roof-toggle[aria-pressed="true"] i::after { transform: translateX(14px); }

body.map-dashboard-v2-page .parcel-v2-building-canvas {
    position: relative;
    min-height: 430px;
    overflow: hidden;
    background:
        radial-gradient(circle at 45% 64%, rgba(223, 243, 230, 0.72), transparent 42%),
        linear-gradient(180deg, #fbfdfd 0%, #f7fbf9 100%);
    border: 1px solid #e7eeeb;
    border-radius: 12px;
}

body.map-dashboard-v2-page .parcel-v2-building-canvas .parcel-v2-building-svg {
    position: absolute;
    inset: 12px 72px 8px 18px;
    width: calc(100% - 90px);
    max-width: none;
    height: calc(100% - 20px);
}

body.map-dashboard-v2-page .parcel-v2-building-legend,
body.map-dashboard-v2-page .parcel-v2-building-scene-badge,
body.map-dashboard-v2-page .parcel-v2-building-loading {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #63768b;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #dfe8e4;
    border-radius: 999px;
    box-shadow: 0 3px 12px rgba(21, 53, 73, 0.07);
    font-size: 0.6rem;
    font-weight: 680;
    backdrop-filter: blur(6px);
}

body.map-dashboard-v2-page .parcel-v2-building-legend { top: 12px; left: 12px; padding: 6px 8px; gap: 9px; }
body.map-dashboard-v2-page .parcel-v2-building-legend-item { display: inline-flex; align-items: center; gap: 5px; }
body.map-dashboard-v2-page .parcel-v2-building-legend i { width: 9px; height: 9px; background: #6bc9bd; border: 1px solid #258d83; border-radius: 2px; }
body.map-dashboard-v2-page .parcel-v2-building-legend-item[data-unit-kind="commercial"] i { background: #d9ae65; border-color: #aa7724; }
body.map-dashboard-v2-page .parcel-v2-building-legend-item[data-unit-kind="storage"] i { background: #b9a386; border-color: #806b50; }
body.map-dashboard-v2-page .parcel-v2-building-legend-item[data-unit-kind="parking"] i { background: #7ea3af; border-color: #4c7481; }
body.map-dashboard-v2-page .parcel-v2-building-legend-item[data-unit-kind="other"] i { background: #9a9eaa; border-color: #686d79; }
body.map-dashboard-v2-page .parcel-v2-building-scene-badge { bottom: 10px; left: 12px; padding: 6px 9px; }
body.map-dashboard-v2-page .parcel-v2-building-scene-badge i { color: var(--parcel-v2-teal); }
body.map-dashboard-v2-page .parcel-v2-building-loading { bottom: 10px; left: 12px; padding: 6px 9px; }

body.map-dashboard-v2-page .parcel-v2-scene-floor-highlight {
    fill: rgba(18, 174, 161, 0.34);
    stroke: #008e84;
    stroke-width: 1.3;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-svg {
    overflow: visible;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-main-shadow,
body.map-dashboard-v2-page .parcel-v2-cutaway-tree-shadow {
    fill: rgba(22, 62, 54, 0.13);
}

body.map-dashboard-v2-page .parcel-v2-cutaway-platform {
    stroke: #78a58a;
    stroke-width: 1.2;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-platform-side {
    fill: #779a86;
    stroke: #668e78;
    stroke-width: 1;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-path {
    fill: #d8d9d2;
    stroke: #b8bbb2;
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-earth-cut {
    fill: #a88a6b;
    stroke: #82694f;
    stroke-width: 1;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-earth-cut.is-right { fill: #95775b; }

body.map-dashboard-v2-page .parcel-v2-cutaway-earth-cap {
    fill: none;
    stroke: #558765;
    stroke-width: 5;
    stroke-linecap: round;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-tree-trunk { fill: #79583e; }
body.map-dashboard-v2-page .parcel-v2-cutaway-tree-crown { fill: #5ba866; stroke: #347c47; stroke-width: 0.9; }
body.map-dashboard-v2-page .parcel-v2-cutaway-tree-crown.is-light { fill: #77bb70; }
body.map-dashboard-v2-page .parcel-v2-cutaway-tree-crown.is-dark { fill: #438d54; }
body.map-dashboard-v2-page .parcel-v2-cutaway-shrubs circle { fill: #5da865; stroke: #3b804a; stroke-width: 0.7; }

body.map-dashboard-v2-page .parcel-v2-cutaway-room {
    fill: #f8f0e6;
    stroke: #a99480;
    stroke-width: 0.9;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor:nth-of-type(even) .parcel-v2-cutaway-room {
    fill: #faf6ef;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-basement .parcel-v2-cutaway-room {
    fill: #d8d5cf;
    stroke: #9d9991;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-basement .parcel-v2-cutaway-unit.is-residential .parcel-v2-cutaway-room {
    fill: #eee5da;
    stroke: #9e8c7a;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-unit.is-parking .parcel-v2-cutaway-room {
    fill: #cfd4d5;
    stroke: #77858a;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-unit.is-storage .parcel-v2-cutaway-room {
    fill: #ded7cc;
    stroke: #918579;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-room {
    fill: #c9efea;
    stroke: #078f84;
    stroke-width: 1.3;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-unit.is-selected .parcel-v2-cutaway-room {
    fill: #bce8e3;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-room.is-empty { fill: #edf1ef; }

body.map-dashboard-v2-page .parcel-v2-cutaway-room-zone {
    fill: rgba(232, 217, 199, 0.42);
    stroke: none;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-room-zone {
    fill: rgba(91, 195, 183, 0.18);
}

body.map-dashboard-v2-page .parcel-v2-cutaway-inner-wall {
    stroke: #aa9785;
    stroke-width: 2.1;
    stroke-linecap: square;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-divider {
    stroke: #aa9b8c;
    stroke-width: 1.7;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-slab {
    fill: #d8cec2;
    stroke: #96887a;
    stroke-width: 0.55;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-slab {
    fill: #59beb4;
    stroke: #087d74;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-column {
    fill: #e7ded3;
    stroke: #9f9183;
    stroke-width: 0.6;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-window {
    fill: #87c7d7;
    stroke: #397f96;
    stroke-width: 0.7;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-window-line {
    stroke: rgba(255, 255, 255, 0.92);
    stroke-width: 0.7;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-basement-window {
    fill: #6f9ca7;
    stroke: #3d6974;
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-svg-asset {
    filter: drop-shadow(0 1.2px 0.8px rgba(47, 38, 31, 0.2));
}

body.map-dashboard-v2-page .parcel-v2-cutaway-svg-asset.is-lamp,
body.map-dashboard-v2-page .parcel-v2-cutaway-svg-asset.is-plant,
body.map-dashboard-v2-page .parcel-v2-cutaway-svg-asset.is-sign {
    filter: drop-shadow(0 0.8px 0.5px rgba(47, 38, 31, 0.16));
}

body.map-dashboard-v2-page .parcel-v2-cutaway-rendered-interior {
    pointer-events: none;
    filter: saturate(0.96) contrast(1.02) drop-shadow(0 1px 1px rgba(35, 29, 24, 0.2));
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-basement .parcel-v2-cutaway-rendered-interior {
    filter: brightness(0.91) saturate(0.9) contrast(1.04) drop-shadow(0 1px 1px rgba(35, 29, 24, 0.24));
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-rendered-interior {
    filter: brightness(1.04) saturate(1.06) contrast(1.03) drop-shadow(0 1px 1px rgba(5, 110, 101, 0.25));
}

body.map-dashboard-v2-page .parcel-v2-cutaway-render-selection {
    fill: transparent;
    pointer-events: none;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-render-selection {
    fill: rgba(37, 190, 176, 0.14);
    stroke: rgba(0, 126, 116, 0.72);
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-rug { fill: #d8b68d; opacity: 0.55; }
body.map-dashboard-v2-page .parcel-v2-cutaway-sofa { fill: #9b704f; stroke: #60452f; stroke-width: 0.55; }
body.map-dashboard-v2-page .parcel-v2-cutaway-sofa-back { fill: #c59b73; stroke: #76583f; stroke-width: 0.5; }
body.map-dashboard-v2-page .parcel-v2-cutaway-sofa-arm { fill: #805b40; }
body.map-dashboard-v2-page .parcel-v2-cutaway-bed { fill: #d6c0a8; stroke: #957c64; stroke-width: 0.4; }
body.map-dashboard-v2-page .parcel-v2-cutaway-pillow { fill: #fff8ed; }
body.map-dashboard-v2-page .parcel-v2-cutaway-table { fill: #8f6647; stroke: #644632; stroke-width: 0.4; }
body.map-dashboard-v2-page .parcel-v2-cutaway-lamp { fill: #745943; }
body.map-dashboard-v2-page .parcel-v2-cutaway-lampshade { fill: #e1bd78; stroke: #9a7744; stroke-width: 0.35; }
body.map-dashboard-v2-page .parcel-v2-cutaway-counter { fill: #9d7655; stroke: #654d39; stroke-width: 0.5; }
body.map-dashboard-v2-page .parcel-v2-cutaway-shelf { fill: #74543e; }
body.map-dashboard-v2-page .parcel-v2-cutaway-stool { fill: #d5ab78; stroke: #805c3b; stroke-width: 0.4; }

body.map-dashboard-v2-page .parcel-v2-cutaway-garage-opening {
    fill: #87939a;
    stroke: #5f6c73;
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-garage-line { stroke: #bfc8cc; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-parking-bay {
    fill: none;
    stroke: rgba(255, 255, 255, 0.82);
    stroke-width: 1.2;
    stroke-linecap: round;
}
body.map-dashboard-v2-page .parcel-v2-cutaway-storage { fill: #9a7652; stroke: #654c35; stroke-width: 0.6; }
body.map-dashboard-v2-page .parcel-v2-cutaway-storage-line { stroke: #d9bc93; stroke-width: 0.65; }
body.map-dashboard-v2-page .parcel-v2-cutaway-car { fill: #497d8c; stroke: #294f5c; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-wheel { fill: #334049; stroke: #e0e6e7; stroke-width: 0.5; }

body.map-dashboard-v2-page .parcel-v2-cutaway-unit-no,
body.map-dashboard-v2-page .parcel-v2-cutaway-more,
body.map-dashboard-v2-page .parcel-v2-cutaway-block-label,
body.map-dashboard-v2-page .parcel-v2-cutaway-ground-label {
    font-family: inherit;
    paint-order: stroke;
    stroke: rgba(255, 255, 255, 0.92);
    stroke-width: 2px;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-unit-no {
    fill: #fff;
    font-size: 6.5px;
    font-weight: 800;
    stroke: none;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-unit-badge circle { fill: rgba(37, 57, 72, 0.78); }
body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-unit-badge circle { fill: #078f84; }
body.map-dashboard-v2-page .parcel-v2-cutaway-floor.is-selected .parcel-v2-cutaway-unit-no { fill: #fff; }
body.map-dashboard-v2-page .parcel-v2-cutaway-more { fill: #6a7886; font-size: 7px; font-weight: 760; }

body.map-dashboard-v2-page .parcel-v2-cutaway-side-wall,
body.map-dashboard-v2-page .parcel-v2-cutaway-basement-side {
    fill: #e4d8cb;
    stroke: #9f8e7d;
    stroke-width: 0.8;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-basement-side { fill: #b9b4ac; }
body.map-dashboard-v2-page .parcel-v2-cutaway-side-floor.is-selected .parcel-v2-cutaway-side-wall { fill: #80d1c8; stroke: #087f76; }
body.map-dashboard-v2-page .parcel-v2-cutaway-side-window { fill: #5fabc0; stroke: #3c7889; stroke-width: 0.55; }
body.map-dashboard-v2-page .parcel-v2-cutaway-side-floor.is-selected .parcel-v2-cutaway-side-window { fill: #d8fbf7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-side-slab { stroke: #9b8b7b; stroke-width: 1.4; }

body.map-dashboard-v2-page .parcel-v2-cutaway-roof-front,
body.map-dashboard-v2-page .parcel-v2-cutaway-roof-side {
    fill: #4c5969;
    stroke: #29394a;
    stroke-width: 1.1;
    stroke-linejoin: round;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-roof-side.is-light { fill: #687687; }
body.map-dashboard-v2-page .parcel-v2-cutaway-roof-side.is-mid { fill: #596778; }
body.map-dashboard-v2-page .parcel-v2-cutaway-roof-side.is-shade { fill: #3e4b5b; }
body.map-dashboard-v2-page .parcel-v2-cutaway-terrace { fill: #8eb9b2; stroke: #537c76; stroke-width: 1; }
body.map-dashboard-v2-page .parcel-v2-cutaway-parapet { fill: #779f9a; stroke: #4f7872; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-parapet-side { fill: #5f8d87; stroke: #486f6a; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-rooftop-box rect { fill: #b9d6d0; stroke: #587d77; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-rooftop-box polygon { fill: #98bdb7; stroke: #587d77; stroke-width: 0.7; }

body.map-dashboard-v2-page .parcel-v2-cutaway-ground-line {
    stroke: rgba(76, 112, 95, 0.45);
    stroke-width: 0.8;
    stroke-dasharray: 4 4;
}

body.map-dashboard-v2-page .parcel-v2-cutaway-ground-pill rect { fill: rgba(255, 255, 255, 0.94); stroke: #b9ccc0; stroke-width: 0.7; }
body.map-dashboard-v2-page .parcel-v2-cutaway-ground-label { fill: #526e60; font-size: 7px; font-weight: 760; stroke-width: 1.5px; }
body.map-dashboard-v2-page .parcel-v2-cutaway-block-label { fill: #1e5362; font-size: 8px; font-weight: 820; }

body.map-dashboard-v2-page .parcel-v2-cutaway-entry-steps path {
    fill: #d5d1c8;
    stroke: #99958c;
    stroke-width: 0.6;
}

body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-scene-roof,
body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-scene-roof-wall,
body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-scene-roof-top,
body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-scene-roof-face,
body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-scene-roof-ridge,
body.map-dashboard-v2-page .parcel-v2-building-workspace-inner.is-roof-hidden .parcel-v2-cutaway-roof { display: none; }

body.map-dashboard-v2-page .parcel-v2-schematic-svg { overflow: visible; }

body.map-dashboard-v2-page .parcel-v2-schematic-unit rect,
body.map-dashboard-v2-page .parcel-v2-schematic-empty {
    fill: #f4f5f7;
    stroke: #8c9aa7;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-schematic-floor.is-selected .parcel-v2-schematic-unit rect,
body.map-dashboard-v2-page .parcel-v2-schematic-floor.is-selected .parcel-v2-schematic-empty {
    fill: #edf8f6;
}

body.map-dashboard-v2-page .parcel-v2-schematic-unit-no {
    fill: #001d70;
    font-size: 13px;
    font-weight: 780;
}

body.map-dashboard-v2-page .parcel-v2-schematic-unit-kind {
    fill: #14324a;
    font-size: 9px;
    font-weight: 700;
}

body.map-dashboard-v2-page .parcel-v2-schematic-unit-area {
    fill: #4f6579;
    font-size: 8px;
    font-weight: 560;
}

body.map-dashboard-v2-page .parcel-v2-schematic-floor-label {
    fill: #071d39;
    font-size: 10px;
    font-weight: 720;
}

body.map-dashboard-v2-page .parcel-v2-schematic-roof polygon { fill: #adbdc7; }

body.map-dashboard-v2-page .parcel-v2-schematic-left-wall,
body.map-dashboard-v2-page .parcel-v2-schematic-right-wall {
    stroke: #7f8c98;
    stroke-width: 1.2;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-schematic-ground-line {
    stroke: #304250;
    stroke-width: 4;
    vector-effect: non-scaling-stroke;
}

body.map-dashboard-v2-page .parcel-v2-schematic-foundation {
    fill: #d4beb4;
    stroke: #a58d83;
    stroke-width: 0.8;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-rail {
    position: absolute;
    top: 42px;
    right: 10px;
    bottom: 28px;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 2px;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-rail button {
    position: relative;
    display: grid;
    grid-template-columns: 13px auto;
    min-width: 68px;
    padding: 5px 6px;
    align-items: center;
    gap: 5px;
    color: #5d6f84;
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: 0.59rem;
    font-weight: 670;
    text-align: left;
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-rail button span::before {
    display: block;
    width: 12px;
    height: 1px;
    content: '';
    background: #96a7ba;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-rail button:hover { color: var(--parcel-v2-navy); background: #f0f6f5; }
body.map-dashboard-v2-page .parcel-v2-building-floor-rail button.is-active { color: #fff; background: var(--parcel-v2-teal); box-shadow: 0 5px 14px rgba(0, 142, 132, 0.18); }
body.map-dashboard-v2-page .parcel-v2-building-floor-rail button.is-active span::before { background: #fff; }

body.map-dashboard-v2-page .parcel-v2-building-caption {
    margin: 8px 2px 0;
    color: #8795a7;
    font-size: 0.57rem;
    line-height: 1.4;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-tabs {
    display: flex;
    margin-bottom: 12px;
    overflow-x: auto;
    border: 1px solid #dfe7ef;
    border-radius: 9px;
    scrollbar-width: thin;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-tabs button {
    flex: 1 0 max-content;
    min-height: 37px;
    padding: 7px 10px;
    color: #52657c;
    background: #fff;
    border: 0;
    border-right: 1px solid #e3e9ef;
    font-size: 0.62rem;
    font-weight: 680;
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-tabs button:last-child { border-right: 0; }
body.map-dashboard-v2-page .parcel-v2-building-floor-tabs button:hover { background: #f4f8f8; }
body.map-dashboard-v2-page .parcel-v2-building-floor-tabs button.is-active { color: #fff; background: linear-gradient(135deg, #048f87, #0ca398); }

body.map-dashboard-v2-page .parcel-v2-building-unit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

body.map-dashboard-v2-page .parcel-v2-building-unit {
    display: flex;
    min-width: 0;
    min-height: 92px;
    padding: 13px;
    align-items: center;
    gap: 11px;
    background: #fff;
    border: 1px solid #e0e8ef;
    border-radius: 11px;
}

body.map-dashboard-v2-page .parcel-v2-building-unit-icon { width: 44px; height: 44px; color: #078d82; background: #e4f7f2; font-size: 1.15rem; }
body.map-dashboard-v2-page .parcel-v2-building-unit.is-commercial .parcel-v2-building-unit-icon { color: #9b6a08; background: #fff4d9; }
body.map-dashboard-v2-page .parcel-v2-building-unit.is-storage .parcel-v2-building-unit-icon { color: #795b37; background: #f3eadf; }
body.map-dashboard-v2-page .parcel-v2-building-unit.is-parking .parcel-v2-building-unit-icon { color: #326979; background: #e3f0f4; }
body.map-dashboard-v2-page .parcel-v2-building-unit.is-other .parcel-v2-building-unit-icon { color: #62697b; background: #eceef3; }
body.map-dashboard-v2-page .parcel-v2-building-unit > span:last-child,
body.map-dashboard-v2-page .parcel-v2-building-unit strong,
body.map-dashboard-v2-page .parcel-v2-building-unit small,
body.map-dashboard-v2-page .parcel-v2-building-unit em { display: block; min-width: 0; }
body.map-dashboard-v2-page .parcel-v2-building-unit strong { color: var(--parcel-v2-navy); font-size: 0.76rem; font-weight: 790; }
body.map-dashboard-v2-page .parcel-v2-building-unit small { margin-top: 3px; color: #4e637a; font-size: 0.62rem; }
body.map-dashboard-v2-page .parcel-v2-building-unit em { margin-top: 4px; color: #8794a5; font-size: 0.58rem; font-style: normal; }
body.map-dashboard-v2-page .parcel-v2-building-unit-more { grid-column: 1 / -1; margin: 0; color: #718198; font-size: 0.62rem; text-align: right; }

body.map-dashboard-v2-page .parcel-v2-building-empty {
    grid-column: 1 / -1;
    display: flex;
    min-height: 92px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #718198;
    background: #fafcfc;
    border: 1px dashed #dbe5e2;
    border-radius: 11px;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .parcel-v2-building-empty i { color: var(--parcel-v2-teal); }

body.map-dashboard-v2-page .parcel-v2-building-distribution { margin-top: 15px; }
body.map-dashboard-v2-page .parcel-v2-building-distribution-title { display: flex; margin-bottom: 7px; align-items: center; justify-content: space-between; }
body.map-dashboard-v2-page .parcel-v2-building-distribution-title h4 { margin: 0; color: var(--parcel-v2-navy); font-size: 0.78rem; font-weight: 780; }
body.map-dashboard-v2-page .parcel-v2-building-distribution-title span { color: #7a899b; font-size: 0.59rem; }

body.map-dashboard-v2-page .parcel-v2-building-floor-rows {
    max-height: 254px;
    overflow-y: auto;
    border: 1px solid #e1e8ee;
    border-radius: 10px;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-row {
    display: grid;
    grid-template-columns: 22px 74px minmax(0, 1fr) 14px;
    width: 100%;
    min-height: 39px;
    padding: 7px 10px;
    align-items: center;
    gap: 7px;
    color: #52657c;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #e7edf2;
    font-size: 0.6rem;
    text-align: left;
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-building-floor-row:last-child { border-bottom: 0; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row > i:first-child { color: #7b92ad; font-size: 0.84rem; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row > i:last-child { color: #9ba9b7; font-size: 0.56rem; text-align: right; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row strong { color: #344a63; font-weight: 710; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row:hover { background: #f7faf9; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row.is-active { color: #087d75; background: #eaf8f5; }
body.map-dashboard-v2-page .parcel-v2-building-floor-row.is-active strong,
body.map-dashboard-v2-page .parcel-v2-building-floor-row.is-active > i:first-child { color: #087d75; }

body.map-dashboard-v2-page .parcel-v2-building-neighbors {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 13px 15px;
    align-items: center;
    gap: 16px;
}

body.map-dashboard-v2-page .parcel-v2-building-section-title { display: flex; min-width: max-content; align-items: center; gap: 9px; }
body.map-dashboard-v2-page .parcel-v2-building-section-title > span { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; color: #2768c7; background: #e9f1ff; border-radius: 10px; }
body.map-dashboard-v2-page .parcel-v2-building-section-title small,
body.map-dashboard-v2-page .parcel-v2-building-section-title h3 { display: block; margin: 0; }
body.map-dashboard-v2-page .parcel-v2-building-section-title small { color: #8190a2; font-size: 0.53rem; text-transform: uppercase; }
body.map-dashboard-v2-page .parcel-v2-building-section-title h3 { color: var(--parcel-v2-navy); font-size: 0.75rem; font-weight: 770; }

body.map-dashboard-v2-page .parcel-v2-building-neighbor-list { display: flex; min-width: 0; overflow-x: auto; gap: 8px; scrollbar-width: thin; }
body.map-dashboard-v2-page .parcel-v2-building-neighbor { display: inline-flex; flex: 0 0 auto; min-height: 36px; padding: 7px 10px; align-items: center; gap: 5px; color: #334b66; background: #fff; border: 1px solid #dfe7ef; border-radius: 9px; font-size: 0.61rem; cursor: pointer; }
body.map-dashboard-v2-page .parcel-v2-building-neighbor i { color: #2768c7; }
body.map-dashboard-v2-page .parcel-v2-building-neighbor span { color: #77879a; }
body.map-dashboard-v2-page .parcel-v2-building-neighbor:hover { color: #174f9f; background: #f3f7fe; border-color: #c7d8ef; }

body.map-dashboard-v2-page .parcel-v2-building-workspace-empty {
    display: flex;
    min-height: 320px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #718198;
}

@media (min-width: 1280px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-canvas { min-height: 430px; }
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .parcel-v2-building-unit { min-height: 98px; }
}

@media (max-width: 1180px) {
    body.map-dashboard-v2-page .parcel-v2-building-topline { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .parcel-v2-building-stage { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .parcel-v2-building-canvas { min-height: 390px; }
}

/* Çekmece (drawer) modu: viewport geniş olsa da modal dardır — üst şerit
   tek kolona düşer, metrikler 2x2 sarar (imar sekmesindeki desenle aynı). */
@media (min-width: 768px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-topline {
        grid-template-columns: 1fr;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-metric {
        min-height: 84px;
        padding: 12px;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-metric-icon {
        width: 42px;
        height: 42px;
        font-size: 1.05rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-metric strong {
        font-size: 1.05rem;
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-identity {
        grid-template-columns: auto minmax(0, 1fr);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-modal:not(.parcel-v2-expanded) .parcel-v2-building-evidence {
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page .parcel-v2-building-workspace { padding: 10px 10px 22px; }
    body.map-dashboard-v2-page .parcel-v2-building-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .parcel-v2-building-metric { min-height: 82px; padding: 11px; }
    body.map-dashboard-v2-page .parcel-v2-building-metric-icon { width: 40px; height: 40px; font-size: 1rem; }
    body.map-dashboard-v2-page .parcel-v2-building-metric strong { font-size: 1rem; }
    body.map-dashboard-v2-page .parcel-v2-building-identity { grid-template-columns: auto minmax(0, 1fr); }
    body.map-dashboard-v2-page .parcel-v2-building-evidence { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.map-dashboard-v2-page .parcel-v2-building-visual,
    body.map-dashboard-v2-page .parcel-v2-building-explorer { padding: 12px; }
    body.map-dashboard-v2-page .parcel-v2-building-canvas { min-height: 310px; }
    body.map-dashboard-v2-page .parcel-v2-building-canvas .parcel-v2-building-svg { inset: 34px 60px 10px 0; width: calc(100% - 60px); height: calc(100% - 44px); }
    body.map-dashboard-v2-page .parcel-v2-building-floor-rail { right: 3px; }
    body.map-dashboard-v2-page .parcel-v2-building-floor-rail button { min-width: 62px; padding-inline: 4px; }
    body.map-dashboard-v2-page .parcel-v2-building-unit-grid { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .parcel-v2-building-neighbors { grid-template-columns: 1fr; }
}

body.map-dashboard-v2-page .plan-v2-risk-copy {
    margin: 10px 0 0;
    color: #55677e;
    font-size: 0.65rem;
    line-height: 1.42;
}

body.map-dashboard-v2-page .plan-v2-disclaimer {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    margin: 10px 0 0;
    padding: 8px 10px;
    border: 1px solid #f0d4a3;
    border-radius: 8px;
    color: #9e5d0b;
    background: #fff9ee;
    font-size: 0.64rem;
    line-height: 1.35;
}

body.map-dashboard-v2-page .plan-v2-building-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

body.map-dashboard-v2-page .plan-v2-building-grid > div {
    min-width: 0;
    padding: 11px 13px;
    border-top: 1px solid #edf0f4;
    border-left: 1px solid #edf0f4;
}

body.map-dashboard-v2-page .plan-v2-building-grid > div:nth-child(-n + 2) { border-top: 0; }
body.map-dashboard-v2-page .plan-v2-building-grid > div:nth-child(odd) { padding-left: 0; border-left: 0; }


body.map-dashboard-v2-page .plan-v2-actions {
    display: flex;
    justify-content: center;
    width: min(100%, 880px);
    margin: 0 auto;
}

body.map-dashboard-v2-page .plan-v2-actions > a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 14px;
    border: 1px solid #8bb4f4;
    border-radius: 9px;
    color: #1f64cf;
    background: #fff;
    font-size: 0.72rem;
    font-weight: 750;
    text-decoration: none;
    cursor: pointer;
}

body.map-dashboard-v2-page .plan-v2-official-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 11px;
    border: 1px solid #dae4f2;
    border-radius: 9px;
    color: #3565a7;
    background: #f7faff;
    font-size: 0.66rem;
}

@media (min-width: 1200px) {
    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .plan-v2-metrics {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .plan-v2-usability-layout {
        grid-template-columns: minmax(0, 1.13fr) minmax(380px, 0.87fr);
    }

    body.map-dashboard-v2-page #parcelCardModal.parcel-v2-expanded .plan-v2-bottom-grid {
        grid-template-columns: minmax(0, 1.14fr) minmax(360px, 0.86fr);
    }
}

@media (max-width: 767.98px) {
    body.map-dashboard-v2-page .parcel-v2-plan-status { gap: 10px; padding: 12px; }
    body.map-dashboard-v2-page .plan-v2-area-card { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .plan-v2-area-primary { border-right: 0; border-bottom: 1px solid var(--parcel-v2-border); }
    body.map-dashboard-v2-page .plan-v2-area-sources { grid-template-columns: 1fr; gap: 7px; }
    body.map-dashboard-v2-page .plan-v2-area-source,
    body.map-dashboard-v2-page .plan-v2-area-source:first-child { padding: 7px 0; border-top: 1px solid #edf0f4; border-left: 0; }
    body.map-dashboard-v2-page .plan-v2-area-source:first-child { border-top: 0; }
    body.map-dashboard-v2-page .plan-v2-area-source small { min-height: 0; }
    body.map-dashboard-v2-page .plan-v2-metrics { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .plan-v2-usability-metrics { grid-template-columns: 1fr; gap: 8px; }
    body.map-dashboard-v2-page .plan-v2-usability-metrics > div,
    body.map-dashboard-v2-page .plan-v2-usability-metrics > div:first-child { padding: 0 0 8px; border-left: 0; border-bottom: 1px solid var(--parcel-v2-border); }
    body.map-dashboard-v2-page .plan-v2-risk-layout { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .plan-v2-risk-score { margin: 0 auto; }
    body.map-dashboard-v2-page .plan-v2-risk-facts,
    body.map-dashboard-v2-page .plan-v2-building-grid { grid-template-columns: 1fr; }
    body.map-dashboard-v2-page .plan-v2-building-grid > div,
    body.map-dashboard-v2-page .plan-v2-building-grid > div:nth-child(-n + 2),
    body.map-dashboard-v2-page .plan-v2-building-grid > div:nth-child(odd) { padding: 9px 0; border-top: 1px solid #edf0f4; border-left: 0; }
    body.map-dashboard-v2-page .plan-v2-building-grid > div:first-child { border-top: 0; }
}


/* [RESTORE 2026-08-27] Paralel düzenlemede kaybolan imar/piyasa yükleme
   katmanı stilleri — HEAD sürümünden geri eklendi. */

body.map-dashboard-v2-page #parcel-pane-market > .parcel-v2-market-source {
    display: none !important;
}

body.map-dashboard-v2-page .parcel-v2-zoning-loading,
body.map-dashboard-v2-page .parcel-v2-market-loading {
    display: grid;
    min-height: 360px;
    padding: 40px 24px;
    place-content: center;
    justify-items: center;
    gap: 9px;
    color: #14253a;
    text-align: center;
}

body.map-dashboard-v2-page .parcel-v2-zoning-loading strong,
body.map-dashboard-v2-page .parcel-v2-market-loading strong {
    margin-top: 5px;
    font-size: 0.9rem;
    font-weight: 780;
}

body.map-dashboard-v2-page .parcel-v2-zoning-loading small,
body.map-dashboard-v2-page .parcel-v2-market-loading small {
    color: #6f7f94;
    font-size: 0.72rem;
}

body.map-dashboard-v2-page .parcel-v2-zoning-spinner {
    position: relative;
    width: 46px;
    height: 46px;
    border: 4px solid #d9efec;
    border-top-color: #0a968b;
    border-radius: 50%;
    box-shadow: 0 8px 22px rgba(10, 150, 139, 0.16);
    animation: parcel-v2-zoning-spin 0.8s linear infinite;
}

body.map-dashboard-v2-page .parcel-v2-zoning-spinner i {
    position: absolute;
    inset: 7px;
    border: 2px solid rgba(35, 105, 151, 0.2);
    border-right-color: #236997;
    border-radius: inherit;
}

@keyframes parcel-v2-zoning-spin {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    body.map-dashboard-v2-page .parcel-v2-zoning-spinner {
        animation-duration: 1.8s;
    }
}

/* Tarla parseli (29 Eyl 2026): bina yerine sürülmüş toprak + ekin + çit. */
body.map-dashboard-v2-page .parcel-v2-scene-field-soil { fill: #b98a5e; }
body.map-dashboard-v2-page .parcel-v2-scene-field-soil.is-dark { fill: #9f6f45; }
body.map-dashboard-v2-page .parcel-v2-scene-field-crop {
    stroke: #6fae45; stroke-width: 1.6; stroke-linecap: round; stroke-dasharray: 2.4 3.2;
}
body.map-dashboard-v2-page .parcel-v2-scene-field-rail {
    fill: none; stroke: #8a6541; stroke-width: .8; stroke-opacity: .85;
}
body.map-dashboard-v2-page .parcel-v2-scene-field-post {
    stroke: #7a5634; stroke-width: 1.3; stroke-linecap: round;
}
body.map-dashboard-v2-page .parcel-v2-building-field-note {
    display: grid; gap: 10px; padding: 14px 16px; border: 1px solid #e3ece5;
    border-radius: 12px; background: #f7fbf7; color: #4b5b52; font-size: 13px; line-height: 1.55;
}
body.map-dashboard-v2-page .parcel-v2-building-field-note p { margin: 0; }

/* ── İmar çiziminden tamamlama: kaynak etiketleri + panel ───────────────── */
body.map-dashboard-v2-page .zoning-v2-metric-source {
    display: inline-block;
    margin-top: 3px;
    padding: 1px 7px;
    font-size: 0.64rem;
    font-style: normal;
    font-weight: 650;
    line-height: 1.5;
    color: #1e5f8f;
    background: #e8f2fb;
    border-radius: 999px;
    white-space: nowrap;
}

body.map-dashboard-v2-page .zoning-v2-metric-source.is-yonetmelik {
    color: #8a5a00;
    background: #fff4dc;
}

body.map-dashboard-v2-page .zoning-v2-metric-source.is-turetilmis {
    color: #4b5563;
    background: #eef1f4;
}

body.map-dashboard-v2-page .zoning-v2-completion {
    margin-top: 14px;
    padding: 14px 16px;
    border: 1px solid #d6e6f3;
    border-radius: 14px;
    background: linear-gradient(180deg, #f6fafe, #fff);
}

body.map-dashboard-v2-page .zoning-v2-completion p {
    margin: 6px 0 0;
    font-size: 0.8rem;
    color: #475569;
}

body.map-dashboard-v2-page .zoning-v2-completion q {
    font-weight: 650;
    color: #1e293b;
}

body.map-dashboard-v2-page .zoning-v2-completion .btn {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body.map-dashboard-v2-page .zoning-v2-completion .btn-primary {
    background: #118573;
    border-color: #118573;
}

body.map-dashboard-v2-page .zoning-v2-completion-head {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.88rem;
    color: #0f172a;
}

body.map-dashboard-v2-page .zoning-v2-completion-head > i {
    color: #118573;
}

body.map-dashboard-v2-page .zoning-v2-completion-head.is-failed > i {
    color: #b42318;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
    gap: 8px;
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields li {
    display: flex;
    flex-direction: column;
    padding: 8px 10px;
    border: 1px solid #e2e8f0;
    border-left: 3px solid #2b6dc4;
    border-radius: 10px;
    background: #fff;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields li.is-yonetmelik {
    border-left-color: #d99a06;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields li.is-turetilmis {
    border-left-color: #94a3b8;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields span {
    font-size: 0.7rem;
    color: #64748b;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields strong {
    font-size: 0.95rem;
    color: #0f172a;
}

body.map-dashboard-v2-page .zoning-v2-completion-fields small {
    font-size: 0.66rem;
    color: #64748b;
}

body.map-dashboard-v2-page .zoning-v2-completion-note {
    display: flex;
    gap: 6px;
    align-items: flex-start;
    color: #8a5a00 !important;
}

/* ── Çok bloklu yapılar: blok seçici, blok özeti, BB listesi, site planı ─── */
body.map-dashboard-v2-page .parcel-v2-building-metrics.has-blocks {
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

body.map-dashboard-v2-page .parcel-v2-building-topline.is-stacked {
    grid-template-columns: 1fr;
}

body.map-dashboard-v2-page .parcel-v2-building-twin-note {
    display: flex;
    gap: 6px;
    align-items: flex-start;
    margin: 0;
    padding: 9px 12px;
    color: #8a5a00;
    background: #fff7e6;
    border: 1px solid #fde3b0;
    border-radius: 9px;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .parcel-v2-block-selector,
body.map-dashboard-v2-page .parcel-v2-unit-list {
    min-width: 0;
}

body.map-dashboard-v2-page .parcel-v2-block-selector {
    margin-top: 14px;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid #e3eaf2;
    border-radius: 14px;
}

body.map-dashboard-v2-page .parcel-v2-block-selector-head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 6px;
    margin-bottom: 10px;
}

body.map-dashboard-v2-page .parcel-v2-block-selector-head > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--parcel-v2-navy);
    font-size: 0.78rem;
    font-weight: 750;
}

body.map-dashboard-v2-page .parcel-v2-block-selector-head > span i { color: #2768c7; }

body.map-dashboard-v2-page .parcel-v2-block-selector-head small {
    color: #77879a;
    font-size: 0.64rem;
}

body.map-dashboard-v2-page .parcel-v2-block-chips {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: thin;
}

body.map-dashboard-v2-page .parcel-v2-block-chip {
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-start;
    min-width: 96px;
    padding: 8px 12px;
    color: #334b66;
    text-align: left;
    background: #f7fafd;
    border: 1px solid #dfe7ef;
    border-radius: 11px;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

body.map-dashboard-v2-page .parcel-v2-block-chip strong {
    font-size: 0.76rem;
    color: var(--parcel-v2-navy);
}

body.map-dashboard-v2-page .parcel-v2-block-chip span {
    font-size: 0.62rem;
    color: #6b7c90;
    white-space: nowrap;
}

body.map-dashboard-v2-page .parcel-v2-block-chip:hover {
    background: #f0f6ff;
    border-color: #c7d8ef;
}

body.map-dashboard-v2-page .parcel-v2-block-chip.is-active {
    background: #118573;
    border-color: #118573;
    box-shadow: 0 6px 14px -8px rgba(17, 133, 115, 0.8);
}

body.map-dashboard-v2-page .parcel-v2-block-chip.is-active strong,
body.map-dashboard-v2-page .parcel-v2-block-chip.is-active span {
    color: #fff;
}

body.map-dashboard-v2-page .parcel-v2-block-summary table,
body.map-dashboard-v2-page .parcel-v2-unit-list-table table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.68rem;
}

body.map-dashboard-v2-page .parcel-v2-block-summary th,
body.map-dashboard-v2-page .parcel-v2-block-summary td,
body.map-dashboard-v2-page .parcel-v2-unit-list-table th,
body.map-dashboard-v2-page .parcel-v2-unit-list-table td {
    padding: 7px 8px;
    text-align: left;
    border-bottom: 1px solid #edf1f6;
}

body.map-dashboard-v2-page .parcel-v2-block-summary thead th,
body.map-dashboard-v2-page .parcel-v2-unit-list-table thead th {
    color: #77879a;
    font-size: 0.6rem;
    font-weight: 700;
    text-transform: uppercase;
    background: #f7fafd;
}

body.map-dashboard-v2-page .parcel-v2-block-summary {
    max-height: 420px;
    overflow-y: auto;
}

body.map-dashboard-v2-page .parcel-v2-block-summary thead th {
    position: sticky;
    top: 0;
    z-index: 1;
}

body.map-dashboard-v2-page .parcel-v2-block-summary tbody tr {
    cursor: pointer;
}

body.map-dashboard-v2-page .parcel-v2-block-summary tbody tr:hover,
body.map-dashboard-v2-page .parcel-v2-block-summary tbody tr:focus-visible {
    background: #f0f6ff;
    outline: none;
}

body.map-dashboard-v2-page .parcel-v2-block-summary tbody th {
    color: var(--parcel-v2-navy);
    font-weight: 750;
}

body.map-dashboard-v2-page .parcel-v2-block-hint {
    display: flex;
    gap: 6px;
    align-items: center;
    margin: 10px 0 0;
    color: #6b7c90;
    font-size: 0.66rem;
}

body.map-dashboard-v2-page .parcel-v2-unit-list {
    margin-top: 16px;
    padding: 14px;
    background: #fff;
    border: 1px solid #e3eaf2;
    border-radius: 14px;
}

body.map-dashboard-v2-page .parcel-v2-unit-list .parcel-v2-building-section-title {
    min-width: 0;
    margin-bottom: 10px;
}

body.map-dashboard-v2-page .parcel-v2-unit-list .parcel-v2-building-section-title > em {
    margin-left: auto;
    color: #2768c7;
    font-style: normal;
    font-size: 0.68rem;
    font-weight: 700;
}

body.map-dashboard-v2-page .parcel-v2-unit-list-group {
    border: 1px solid #e8eef5;
    border-radius: 10px;
    margin-bottom: 8px;
    overflow: hidden;
}

body.map-dashboard-v2-page .parcel-v2-unit-list-group summary {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 9px 12px;
    background: #f7fafd;
    cursor: pointer;
    font-size: 0.72rem;
    list-style: none;
}

body.map-dashboard-v2-page .parcel-v2-unit-list-group summary::-webkit-details-marker { display: none; }

body.map-dashboard-v2-page .parcel-v2-unit-list-group summary strong { color: var(--parcel-v2-navy); }
body.map-dashboard-v2-page .parcel-v2-unit-list-group summary span { color: #6b7c90; }

body.map-dashboard-v2-page .parcel-v2-unit-list-table {
    max-height: 320px;
    overflow-y: auto;
}

body.map-dashboard-v2-page .parcel-v2-scene-building[data-v2-block-key] {
    cursor: pointer;
    transition: opacity 0.18s ease;
}

body.map-dashboard-v2-page .parcel-v2-scene-building[data-v2-block-key]:hover,
body.map-dashboard-v2-page .parcel-v2-scene-building[data-v2-block-key]:focus-visible {
    filter: brightness(1.06);
    outline: none;
}

body.map-dashboard-v2-page .parcel-v2-scene-building.is-dimmed {
    opacity: 0.35;
}

body.map-dashboard-v2-page .parcel-v2-scene-building.is-selected-block .parcel-v2-scene-wall {
    stroke: #118573;
    stroke-width: 1.2;
}

@media (max-width: 991.98px) {
    body.map-dashboard-v2-page .parcel-v2-building-metrics.has-blocks {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Tarla parseli (29 Eyl 2026): bina yerine sürülmüş toprak + ekin + çit. */
body.map-dashboard-v2-page .parcel-v2-scene-field-soil { fill: #b98a5e; }
body.map-dashboard-v2-page .parcel-v2-scene-field-soil.is-dark { fill: #9f6f45; }
body.map-dashboard-v2-page .parcel-v2-scene-field-crop {
    stroke: #6fae45; stroke-width: 1.6; stroke-linecap: round; stroke-dasharray: 2.4 3.2;
}
body.map-dashboard-v2-page .parcel-v2-scene-field-rail {
    fill: none; stroke: #8a6541; stroke-width: .8; stroke-opacity: .85;
}
body.map-dashboard-v2-page .parcel-v2-scene-field-post {
    stroke: #7a5634; stroke-width: 1.3; stroke-linecap: round;
}
body.map-dashboard-v2-page .parcel-v2-building-field-note {
    display: grid; gap: 10px; padding: 14px 16px; border: 1px solid #e3ece5;
    border-radius: 12px; background: #f7fbf7; color: #4b5b52; font-size: 13px; line-height: 1.55;
}
body.map-dashboard-v2-page .parcel-v2-building-field-note p { margin: 0; }
