/* _content/chainsawlegends/Components/Layout/CarverSiteLayout.razor.rz.scp.css */
/* =========================================================
   CarverSiteLayout.razor.css
   ========================================================= */

/* ---------- Global niceties ---------- */
html[b-b5devw0jo3] {
    /* Smooth native anchor scrolling */
    scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
    html[b-b5devw0jo3] {
        scroll-behavior: auto;
    }
}

/* AppBar heights (tune if you change density) */
:root[b-b5devw0jo3] {
    --appbar-height-desktop: 72px;
    --appbar-height-mobile: 56px;
    --section-gap: 2rem;
}

/* Prevent section content from hiding under the fixed appbar */
#about[b-b5devw0jo3], #gallery[b-b5devw0jo3], #for-sale[b-b5devw0jo3], #contact[b-b5devw0jo3] {
    scroll-margin-top: var(--appbar-height-desktop);
}

@media (max-width: 960px) {
    #about[b-b5devw0jo3], #gallery[b-b5devw0jo3], #for-sale[b-b5devw0jo3], #contact[b-b5devw0jo3] {
        scroll-margin-top: var(--appbar-height-mobile);
    }
}

/* ---------- AppBar state when scrolled ---------- */
#carver-site-appbar[b-b5devw0jo3] {
    transition: box-shadow 160ms ease, backdrop-filter 160ms ease, background-color 160ms ease;
    background-color: transparent;
}

    #carver-site-appbar.appbar-scrolled[b-b5devw0jo3] {
        /* subtle frosted/raised feel on scroll */
        backdrop-filter: saturate(180%) blur(6px);
        background-color: rgba(18, 18, 18, 0.3);
        box-shadow: var(--mud-elevation-2);
    }

/* High-contrast fallback if backdrop-filter not supported */
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
    #carver-site-appbar.appbar-scrolled[b-b5devw0jo3] {
        background-color: rgba(18, 18, 18, 0.65);
    }
}

/* ---------- Drawer & Nav ---------- */
.mud-drawer .mud-navmenu[b-b5devw0jo3] {
    padding-top: .5rem;
    padding-bottom: .5rem;
}

/* Make nav links feel clickable & spacious */
.mud-nav-link[b-b5devw0jo3] {
    border-radius: 6px;
    margin: 2px 6px;
}

    .mud-nav-link:hover[b-b5devw0jo3] {
        background-color: rgba(0,0,0,0.06);
    }

/* Mobile drawer (top) should appear above content cleanly */
.mud-drawer-anchor-top[b-b5devw0jo3] {
    z-index: 1500;
}

/* ---------- Reveal-on-scroll utility ---------- */
.reveal[b-b5devw0jo3] {
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 220ms ease, transform 220ms ease;
}

    .reveal.visible[b-b5devw0jo3] {
        opacity: 1;
        transform: translateY(0);
    }

/* ---------- Images in the business header ---------- */
#carver-business-logo[b-b5devw0jo3],
.mud-paper img[b-b5devw0jo3] {
    display: block;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* ---------- Containers & spacing ---------- */
.mud-container[b-b5devw0jo3] {
    scroll-margin-top: var(--appbar-height-desktop);
}

@media (max-width: 960px) {
    .mud-container[b-b5devw0jo3] {
        scroll-margin-top: var(--appbar-height-mobile);
    }
}

.section[b-b5devw0jo3] {
    margin-top: var(--section-gap);
    margin-bottom: var(--section-gap);
}

/* ---------- Timeline polish ---------- */
.mud-timeline .mud-timeline-item .mud-timeline-item-content[b-b5devw0jo3] {
    padding-top: .35rem;
    padding-bottom: .35rem;
}

.mud-timeline .mud-timeline-item .mud-typography[b-b5devw0jo3] {
    line-height: 1.3;
}

/* ---------- Footer ---------- */
footer.mud-paper[b-b5devw0jo3] {
    padding-top: 16px;
    padding-bottom: 16px;
}

/* ---------- Minor Mud tweaks (safe) ---------- */
.mud-appbar .mud-button[b-b5devw0jo3],
.mud-appbar .mud-icon-button[b-b5devw0jo3] {
    /* Slightly reduce jitter when icons change color on hover */
    transition: color 120ms ease, background-color 120ms ease;
}

/* ---------- Optional: prevent layout jank during drawer animation ---------- */
@media (max-width: 960px) {
    .mud-main-content[b-b5devw0jo3] {
        will-change: transform;
    }
}
/* _content/chainsawlegends/Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-pegg3j4tp7] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-pegg3j4tp7] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/chainsawlegends/Components/Pages/CarverSites/PublicCarverGallery.razor.rz.scp.css */
.media-grid-container[b-u6cgzjy0xy] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}

.media-tile[b-u6cgzjy0xy] {
    position: relative;
    border: 1px solid var(--mud-palette-lines-default);
    border-radius: var(--mud-default-borderradius);
    overflow: hidden;
    background-color: white;
    aspect-ratio: 1 / 1;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

    .media-tile:hover[b-u6cgzjy0xy] {
        transform: translateY(-4px);
        box-shadow: var(--mud-elevation-8);
    }

.media-tile-content[b-u6cgzjy0xy] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    cursor: pointer;
}

.media-tile-overlay[b-u6cgzjy0xy] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--mud-palette-primary);
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    pointer-events: none;
}

.media-tile.selected .media-tile-overlay[b-u6cgzjy0xy] {
    opacity: 0.4;
}

.media-tile-checkbox[b-u6cgzjy0xy] {
    position: absolute;
    top: 4px;
    left: 4px;
    z-index: 2;
}

.media-tile-actions[b-u6cgzjy0xy] {
    position: absolute;
    top: 4px;
    right: 4px;
    background-color: rgba(255, 255, 255, 0.85);
    border-radius: var(--mud-default-borderradius);
    z-index: 2;
    padding: 2px;
    display: flex;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

.media-tile:hover .media-tile-actions[b-u6cgzjy0xy] {
    opacity: 1;
}
