/* Scroll + sticky chrome for detail, map, and global header */

#detail-page:not(.hidden),
#detail-page .detail-page-inner,
#detail-content {
    overflow: visible;
}

/* Run/resort subheaders scroll with content — avoids covering rating badges */
#detail-page .detail-sticky-subheader {
    position: relative;
    z-index: 10;
}

#detail-page .run-detail-rating-row {
    scroll-margin-top: calc(var(--skibum-header-h, 4.5rem) + 1rem);
}

#detail-page .run-detail-rating-row .pr-rating-badge {
    max-width: 100%;
}

#login-modal.hidden .skibum-auth-overlay,
#signup-modal.hidden .skibum-auth-overlay {
    display: none !important;
}

#map-page .map-toolbar-pro {
    position: sticky;
    top: 0;
    z-index: 45;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#hero-search,
#search-page-query,
#map-search-input.skibum-placeholder-fade::placeholder {
    transition: opacity 0.42s ease, color 0.2s ease;
}

#hero-search.skibum-placeholder-out::placeholder,
#search-page-query.skibum-placeholder-out::placeholder,
#map-search-input.skibum-placeholder-out::placeholder {
    opacity: 0;
}

#hero-search.skibum-placeholder-in::placeholder,
#search-page-query.skibum-placeholder-in::placeholder,
#map-search-input.skibum-placeholder-in::placeholder {
    opacity: 1;
}

body.skibum-premium .hero-search-btn {
    color: #fff !important;
    background: linear-gradient(145deg, #4f759b, #1a281f) !important;
    box-shadow: 0 8px 24px rgba(26, 40, 31, 0.22);
}
