/* =========================
   mapper.base.css
   ========================= */
/* Headings only */
h1, h2, h3, h4, h5, h6 {
    font-family: "Oswald", Arial, Helvetica, sans-serif;
}

/* anchor headings visible below fixed navbar */
:where(h1,h2,h3,h4,h5,h6)[id] {
    scroll-margin-top: 3rem;
}

/* ---------- page-scoped body/header layout ---------- */
body.mapper-page {
    --page-pad: var(--pad-xs);
    --nav-height: 0rem;
    padding-top: 0;
    padding-left: var(--pad-xs);
    padding-right: var(--pad-xs);
}

@media (min-width: 576px) {
    body.mapper-page {
        --page-pad: var(--pad-sm);
        padding-left: var(--pad-sm);
        padding-right: var(--pad-sm);
    }
}

@media (min-width: 768px) {
    body.mapper-page {
        --page-pad: var(--pad-md);
        padding-left: var(--pad-md);
        padding-right: var(--pad-md);
    }
}

@media (min-width: 992px) {
    body.mapper-page {
        --page-pad: var(--pad-lg);
        padding-left: var(--pad-lg);
        padding-right: var(--pad-lg);
    }
}

@media (max-width: 1229px) {
    body.mapper-page {
        --nav-height: 0rem;
    }
}

@media (min-width: 1675px) {
    body.mapper-page {
        --page-pad: var(--pad-xl);
        padding-left: var(--pad-xl);
        padding-right: var(--pad-xl);
    }
}

@media (max-width: 1674.98px) {
    body.mapper-page[data-mapper-layout-resolved="split"] {
        --page-pad: var(--pad-xl);
        padding-left: var(--pad-xl);
        padding-right: var(--pad-xl);
    }
}

@media (min-width: 1800px) {
    body.mapper-page {
        --page-pad: var(--pad-xxl);
        padding-left: var(--pad-xxl);
        padding-right: var(--pad-xxl);
    }
}

/* i-Tree header */
body.mapper-page .landscape-header.fixed-top {
    position: static;
    width: auto;
    padding-top: 2.5rem;
    margin-top: -2rem;
    margin-right: calc(-1 * var(--page-pad));
    margin-left: calc(-1 * var(--page-pad));
    top: auto;
    right: auto;
    left: auto;
    z-index: auto;
}

/* ---------- Mapper-page layout ---------- */
.mapper-page .nav-tabs .nav-link {
    font-weight: 600;
}

.mapper-page .nav-tabs .nav-link.disabled {
    opacity: 0.5;
}




.mapper-page a {
    color: var(--bs-link-color);
}

.mapper-page a:hover {
    color: var(--bs-link-hover-color);
}

/* Ensure common "blue text" helpers go green */
.mapper-page .text-primary {
    color: #1b5e20 !important;
}


/* ---------- Cards and sections ---------- */
.mapper-page .section-card {
    border-radius: 0.75rem;
}

.mapper-page .section-card .card-header {
    background: var(--bs-light);
    font-weight: 600;
}

/* ---------- Helpers ---------- */
.visually-subtle {
    color: var(--bs-secondary-color);
    font-size: 0.9rem;
}




.mapper-info-card {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.85rem;
    margin-bottom: 0.75rem;
    border-radius: 0.55rem;
    border: 1px solid #198754;
    background: rgba(37, 200, 124, 0.22);
    color: #000;
    font-size: 0.92rem;
    line-height: 1.25;
}

.mapper-info-card .bi-info-circle-fill {
    color: #25C87C;
    font-size: 1.2rem;
    flex: 0 0 auto;
}

.mapper-info-text--stacked br {
    display: block;
    margin-bottom: 0.35rem;
}

.mapper-info-card .bi-search {
    color: #6c757d;
}

.mapper-info-card .bi-hand-index-thumb,
.mapper-info-card .bi-bounding-box,
.mapper-info-card .bi-map {
    color: #6c757d;
}

.mapper-info-text {
    overflow: visible;
}

.mapper-page .form-check-input {
    accent-color: #1b5e20;
}

.form-select-sm {
    font-size: 0.95rem;
}

.mapper-page .form-check-input:checked {
    background-color: #1b5e20;
    border-color: #1b5e20;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
) {
    accent-color: #1b5e20;
    appearance: none;
    background: transparent;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
):focus {
    outline: none;
    box-shadow: none;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
)::-webkit-slider-runnable-track {
    height: 6px;
    background: rgba(27, 94, 32, 0.25);
    border-radius: 4px;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
)::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #1b5e20;
    border: 2px solid #1b5e20;
    margin-top: -5px;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
)::-moz-range-track {
    height: 6px;
    background: rgba(27, 94, 32, 0.25);
    border-radius: 4px;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
)::-moz-range-progress {
    height: 6px;
    background: rgba(27, 94, 32, 0.55);
    border-radius: 4px;
}

.mapper-page :is(
    .mapper-dock-panel input[type="range"].form-range,
    .mapper-legend-slider .form-range,
    #temp-active-transparency,
    input[id^="dock-overlay-transparency-"],
    input[id^="dock-boundary-transparency-"]
)::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #1b5e20;
    border: 2px solid #1b5e20;
}

