@import 'tailwindcss';

@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../storage/framework/views/*.php';

:root {
    --cw-bg: #f4f0e8;
    --cw-bg-soft: #ebe5da;
    --cw-surface: rgba(255, 253, 248, .9);
    --cw-surface-solid: #fffdf8;
    --cw-surface-2: #e6ded0;
    --cw-text: #20211f;
    --cw-muted: #73736e;
    --cw-line: rgba(56, 49, 38, .14);
    --cw-line-strong: rgba(56, 49, 38, .26);
    --cw-copper: #b8632e;
    --cw-copper-strong: #8f431e;
    --cw-copper-soft: #d99a69;
    --cw-brass: #bd8a43;
    --cw-teal: #1b6765;
    --cw-success: #26835b;
    --cw-danger: #b84c45;
    --cw-shadow: 0 22px 60px rgba(60, 48, 31, .11);
    --cw-radius: 22px;
    --cw-header: rgba(244, 240, 232, .88);
    --cw-grid: rgba(105, 84, 55, .08);
    --cw-globe: #d8c7ad;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-theme="dark"] {
    --cw-bg: #111413;
    --cw-bg-soft: #171b19;
    --cw-surface: rgba(25, 29, 27, .92);
    --cw-surface-solid: #1b201e;
    --cw-surface-2: #232925;
    --cw-text: #f4efe5;
    --cw-muted: #a9aaa4;
    --cw-line: rgba(231, 218, 192, .12);
    --cw-line-strong: rgba(231, 218, 192, .22);
    --cw-copper: #db7e42;
    --cw-copper-strong: #ed955b;
    --cw-copper-soft: #8f4a29;
    --cw-brass: #d1a55f;
    --cw-teal: #55a6a0;
    --cw-success: #53b986;
    --cw-danger: #e2766f;
    --cw-shadow: 0 26px 70px rgba(0, 0, 0, .3);
    --cw-header: rgba(17, 20, 19, .88);
    --cw-grid: rgba(235, 218, 183, .055);
    --cw-globe: #2a3732;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--cw-bg); }
body { margin: 0; min-width: 320px; color: var(--cw-text); background: var(--cw-bg); line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
svg, img { display: block; }
img { max-width: 100%; }
[hidden] { display: none !important; }

.container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.narrow-container { width: min(920px, calc(100% - 40px)); }
.site-shell { min-height: 100vh; overflow: hidden; }

.site-header { position: sticky; top: 0; z-index: 50; background: var(--cw-header); backdrop-filter: blur(18px); border-bottom: 1px solid var(--cw-line); }
.header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: flex-start; gap: 2px; min-width: 270px; }
.brand-logo-link { flex-direction: column; justify-content: center; }
.brand-logo-picture { display: block; line-height: 0; }
.brand-logo-image { width: 235px; height: auto; filter: drop-shadow(0 5px 13px rgba(0,0,0,.22)); }
.brand-tagline { display: none !important; }
.desktop-nav { display: flex; align-items: center; gap: 4px; }
.nav-link { padding: 10px 13px; border-radius: 12px; font-weight: 650; font-size: .88rem; color: var(--cw-muted); transition: .2s ease; }
.nav-link:hover, .nav-link.is-active { color: var(--cw-text); background: var(--cw-surface); }
.nav-link.is-active { box-shadow: inset 0 -2px var(--cw-copper); }
.nav-link-muted { opacity: .45; cursor: default; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.icon-button { width: 42px; height: 42px; display: grid; place-items: center; padding: 0; border: 1px solid var(--cw-line); border-radius: 13px; background: var(--cw-surface); cursor: pointer; transition: transform .18s ease, border-color .18s ease; }
.icon-button:hover { transform: translateY(-1px); border-color: var(--cw-copper); }
.theme-icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
html[data-theme="dark"] .sun-icon, html[data-theme="light"] .moon-icon { display: none; }
.language-code { font-size: .72rem; font-weight: 850; letter-spacing: .08em; }
.language-menu { position: relative; }
.language-popover { position: absolute; right: 0; top: calc(100% + 10px); width: 205px; padding: 8px; background: var(--cw-surface-solid); border: 1px solid var(--cw-line); border-radius: 16px; box-shadow: var(--cw-shadow); }
.language-option { display: grid; grid-template-columns: 32px 1fr; gap: 8px; align-items: center; padding: 9px 10px; border-radius: 10px; font-size: .84rem; }
.language-option:hover, .language-option.is-active { background: var(--cw-bg-soft); }
.language-option span { color: var(--cw-copper); font-size: .68rem; font-weight: 800; }
.mobile-menu-toggle { display: none; align-content: center; gap: 4px; }
.mobile-menu-toggle span { width: 18px; height: 1.5px; background: currentColor; }
.mobile-nav { border-top: 1px solid var(--cw-line); background: var(--cw-surface-solid); }
.mobile-nav-inner { display: grid; padding-block: 10px 18px; }
.mobile-nav-inner a, .mobile-nav-inner span { padding: 12px 4px; border-bottom: 1px solid var(--cw-line); font-weight: 650; }
.mobile-nav-inner small { margin-left: 8px; color: var(--cw-copper); text-transform: uppercase; letter-spacing: .08em; }

.hero-section { position: relative; padding: 88px 0 76px; border-bottom: 1px solid var(--cw-line); overflow: hidden; }
.hero-layout { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr); gap: 70px; align-items: center; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--cw-copper); text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 850; }
.hero-eyebrow span { width: 26px; height: 1px; background: currentColor; }
.hero-copy h1, .page-hero h1, .park-hero h1 { margin: 18px 0 18px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(3rem, 6vw, 5.65rem); line-height: .94; letter-spacing: -.055em; max-width: 820px; }
.hero-copy p { max-width: 700px; margin: 0 0 30px; color: var(--cw-muted); font-size: 1.06rem; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.button { min-height: 44px; padding: 11px 18px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 13px; font-size: .88rem; font-weight: 800; transition: .2s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { background: linear-gradient(135deg, var(--cw-copper), var(--cw-copper-strong)); color: #fff8ec; box-shadow: 0 10px 28px color-mix(in srgb, var(--cw-copper) 25%, transparent); }
.button-ghost { border-color: var(--cw-line-strong); background: var(--cw-surface); }
.search-bar { display: flex; align-items: center; gap: 10px; max-width: 720px; padding: 7px; background: var(--cw-surface-solid); border: 1px solid var(--cw-line-strong); border-radius: 16px; box-shadow: var(--cw-shadow); }
.search-bar svg { width: 21px; height: 21px; margin-left: 10px; fill: none; stroke: var(--cw-muted); stroke-width: 2; }
.search-bar input { width: 100%; min-width: 0; border: 0; outline: 0; padding: 9px 2px; background: transparent; color: var(--cw-text); }
.search-bar input::placeholder { color: color-mix(in srgb, var(--cw-muted) 75%, transparent); }
.search-bar button { border: 0; border-radius: 11px; padding: 10px 16px; background: var(--cw-text); color: var(--cw-bg); font-weight: 800; cursor: pointer; }
.search-bar-large { min-height: 58px; }
.hero-world { position: relative; min-height: 470px; display: grid; place-items: center; }
.world-globe { position: relative; width: min(365px, 78vw); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 36% 28%, color-mix(in srgb, var(--cw-copper-soft) 32%, var(--cw-globe)), var(--cw-globe) 52%, color-mix(in srgb, var(--cw-teal) 32%, var(--cw-globe))); box-shadow: inset -30px -20px 60px rgba(0,0,0,.18), inset 18px 10px 35px rgba(255,255,255,.15), 0 35px 80px rgba(0,0,0,.17); overflow: hidden; }
.globe-grid { position: absolute; inset: 0; border-radius: inherit; background-image: repeating-radial-gradient(ellipse at 50% 50%, transparent 0 30px, var(--cw-line-strong) 31px 32px, transparent 33px 58px), linear-gradient(90deg, transparent 48.7%, var(--cw-line-strong) 49%, var(--cw-line-strong) 51%, transparent 51.3%); opacity: .5; transform: rotate(-12deg) scale(1.18); }
.globe-grid::before, .globe-grid::after { content: ""; position: absolute; background: color-mix(in srgb, var(--cw-bg) 45%, transparent); border-radius: 47% 53% 55% 45%; }
.globe-grid::before { width: 43%; height: 28%; left: 15%; top: 25%; transform: rotate(-18deg); box-shadow: 78px 74px 0 -12px color-mix(in srgb, var(--cw-bg) 40%, transparent); }
.globe-grid::after { width: 22%; height: 36%; right: 17%; top: 31%; transform: rotate(24deg); }
.world-orbit { position: absolute; border: 1px solid var(--cw-line-strong); border-radius: 50%; }
.orbit-one { width: 425px; height: 425px; transform: rotate(18deg) scaleY(.5); }
.orbit-two { width: 455px; height: 455px; transform: rotate(-50deg) scaleX(.58); }
.globe-pin { position: absolute; width: 11px; height: 11px; border-radius: 50%; background: var(--cw-copper); border: 3px solid var(--cw-surface-solid); box-shadow: 0 0 0 5px color-mix(in srgb, var(--cw-copper) 25%, transparent); animation: pinPulse 2.2s infinite ease-in-out; }
.pin-one { left: 31%; top: 27%; } .pin-two { left: 59%; top: 34%; animation-delay: .4s; } .pin-three { left: 67%; top: 62%; animation-delay: .8s; } .pin-four { left: 35%; top: 70%; animation-delay: 1.2s; }
@keyframes pinPulse { 50% { box-shadow: 0 0 0 9px color-mix(in srgb, var(--cw-copper) 4%, transparent); } }
.world-badge { position: absolute; z-index: 3; min-width: 145px; padding: 12px 16px; border: 1px solid var(--cw-line); border-radius: 16px; background: var(--cw-surface); backdrop-filter: blur(16px); box-shadow: var(--cw-shadow); }
.world-badge strong, .world-badge span { display: block; }
.world-badge strong { font-family: Georgia, serif; font-size: 1.55rem; }
.world-badge span { color: var(--cw-muted); font-size: .68rem; text-transform: uppercase; letter-spacing: .09em; }
.badge-top { top: 70px; right: 0; } .badge-bottom { bottom: 72px; left: 0; }

.stats-strip { position: relative; z-index: 3; margin-top: -1px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-inline: 1px solid var(--cw-line); }
.stat-card { min-height: 98px; padding: 20px 25px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--cw-line); background: var(--cw-surface); }
.stat-card:last-child { border-right: 0; }
.stat-card strong { font-family: Georgia, serif; font-size: 1.65rem; }
.stat-card span { color: var(--cw-muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.stat-card-accent { flex-direction: row; align-items: center; gap: 10px; }
.stat-card-accent strong { font-family: inherit; font-size: .9rem; }
.pulse-dot { width: 8px; height: 8px; display: inline-block; flex: 0 0 auto; border-radius: 50%; background: var(--cw-success); box-shadow: 0 0 0 5px color-mix(in srgb, var(--cw-success) 14%, transparent); }

.section { padding: 78px 0; }
.section-soft { background: var(--cw-bg-soft); border-block: 1px solid var(--cw-line); }
.section-heading { margin-bottom: 32px; }
.section-heading h2, .content-panel h2 { margin: 7px 0 7px; font-family: Georgia, serif; font-size: clamp(2rem, 3vw, 3rem); letter-spacing: -.03em; }
.section-heading p { margin: 0; color: var(--cw-muted); }
.centered { text-align: center; }
.split-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; }
.text-link { color: var(--cw-copper); font-weight: 800; white-space: nowrap; }
.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pillar-card { position: relative; min-height: 275px; padding: 29px; border: 1px solid var(--cw-line); border-radius: var(--cw-radius); background: var(--cw-surface); overflow: hidden; }
.pillar-card.featured { background: linear-gradient(145deg, color-mix(in srgb, var(--cw-copper) 11%, var(--cw-surface-solid)), var(--cw-surface)); border-color: color-mix(in srgb, var(--cw-copper) 42%, var(--cw-line)); transform: translateY(-8px); }
.pillar-number { position: absolute; top: 20px; right: 22px; color: var(--cw-line-strong); font-family: Georgia, serif; font-size: 3rem; }
.pillar-icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 17px; background: var(--cw-bg-soft); color: var(--cw-copper); font-size: 1.35rem; }
.pillar-card h3 { margin: 26px 0 8px; font-family: Georgia, serif; font-size: 1.45rem; }
.pillar-card p { margin: 0; color: var(--cw-muted); }
.park-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.park-card { display: grid; grid-template-rows: 175px auto; border: 1px solid var(--cw-line); border-radius: var(--cw-radius); overflow: hidden; background: var(--cw-surface-solid); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.park-card:hover { transform: translateY(-4px); box-shadow: var(--cw-shadow); border-color: color-mix(in srgb, var(--cw-copper) 38%, var(--cw-line)); }
.park-card-visual { position: relative; display: grid; place-items: center; background: radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--cw-copper) 28%, transparent), transparent 40%), linear-gradient(145deg, var(--cw-surface-2), var(--cw-bg-soft)); overflow: hidden; }
.park-card-orbit { width: 200px; height: 90px; border: 1px solid var(--cw-line-strong); border-radius: 50%; transform: rotate(-15deg); }
.park-card-monogram { position: absolute; font-family: Georgia, serif; font-size: 4.3rem; color: var(--cw-copper); text-shadow: 0 8px 28px color-mix(in srgb, var(--cw-copper) 22%, transparent); }
.park-card-country { position: absolute; top: 15px; left: 15px; padding: 5px 8px; background: var(--cw-surface); border: 1px solid var(--cw-line); border-radius: 9px; font-weight: 850; font-size: .67rem; }
.park-card-body { padding: 20px; }
.park-card-body h3 { margin: 7px 0 15px; font-family: Georgia, serif; font-size: 1.35rem; }
.park-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--cw-muted); font-size: .78rem; }
.status-dot::before { content: ""; width: 7px; height: 7px; display: inline-block; margin-right: 6px; border-radius: 50%; background: var(--cw-muted); }
.status-dot.is-open::before { background: var(--cw-success); }
.empty-state { min-height: 250px; padding: 45px 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; border: 1px dashed var(--cw-line-strong); border-radius: var(--cw-radius); background: var(--cw-surface); }
.empty-state-icon { width: 60px; height: 60px; display: grid; place-items: center; margin-bottom: 17px; border-radius: 50%; background: var(--cw-bg-soft); color: var(--cw-copper); font-size: 1.6rem; }
.empty-state h3 { margin: 0 0 7px; font-family: Georgia, serif; font-size: 1.35rem; }
.empty-state p { margin: 0; color: var(--cw-muted); max-width: 560px; }

.page-hero { padding: 70px 0 52px; border-bottom: 1px solid var(--cw-line); background: linear-gradient(180deg, var(--cw-bg-soft), var(--cw-bg)); }
.compact-hero h1 { margin-bottom: 12px; font-size: clamp(2.8rem, 5vw, 4.7rem); }
.page-hero p { margin: 0 0 26px; color: var(--cw-muted); }
.filter-chips { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 18px; }
.filter-chip { padding: 8px 12px; border: 1px solid var(--cw-line); border-radius: 999px; background: var(--cw-surface); color: var(--cw-muted); font-size: .79rem; font-weight: 750; }
.filter-chip.is-active { background: var(--cw-text); color: var(--cw-bg); border-color: var(--cw-text); }
.search-results-section { min-height: 55vh; }
.results-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.results-header h2 { margin: 0; font-family: Georgia, serif; font-size: 1.65rem; }
.results-header span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--cw-bg-soft); color: var(--cw-copper); font-weight: 850; }
.result-list { display: grid; gap: 10px; }
.result-card { display: grid; grid-template-columns: 50px 1fr 42px; gap: 15px; align-items: center; padding: 16px; border: 1px solid var(--cw-line); border-radius: 17px; background: var(--cw-surface); }
.result-symbol { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: var(--cw-bg-soft); color: var(--cw-copper); font-size: 1.15rem; }
.result-type { color: var(--cw-copper); text-transform: uppercase; letter-spacing: .11em; font-size: .63rem; font-weight: 850; }
.result-copy h3 { margin: 2px 0; font-family: Georgia, serif; font-size: 1.18rem; }
.result-copy p { margin: 0; color: var(--cw-muted); font-size: .83rem; }
.result-link { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--cw-text); color: var(--cw-bg); font-weight: 900; }

.park-hero { position: relative; padding: 72px 0 54px; border-bottom: 1px solid var(--cw-line); overflow: hidden; }
.park-hero-pattern { position: absolute; inset: 0; background-image: radial-gradient(circle at 78% 20%, color-mix(in srgb, var(--cw-copper) 16%, transparent), transparent 33%), linear-gradient(120deg, transparent 60%, var(--cw-grid) 60.5%, transparent 61%); background-size: auto, 28px 28px; }
.park-hero-grid { position: relative; display: flex; justify-content: space-between; gap: 35px; align-items: end; }
.park-identity { display: flex; align-items: center; gap: 24px; }
.park-emblem { width: 96px; height: 96px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid var(--cw-line-strong); border-radius: 30px; background: linear-gradient(145deg, var(--cw-surface-solid), var(--cw-surface-2)); color: var(--cw-copper); font-family: Georgia, serif; font-size: 3.2rem; box-shadow: var(--cw-shadow); }
.park-hero h1 { margin: 8px 0 10px; font-size: clamp(2.8rem, 5vw, 5rem); }
.park-status-line { display: flex; gap: 12px; align-items: center; color: var(--cw-muted); font-size: .85rem; }
.status-pill { padding: 5px 9px; border-radius: 999px; background: var(--cw-surface-2); color: var(--cw-muted); text-transform: uppercase; letter-spacing: .08em; font-size: .66rem; font-weight: 850; }
.status-pill.is-open { color: var(--cw-success); background: color-mix(in srgb, var(--cw-success) 13%, var(--cw-surface)); }
.park-quick-actions { display: flex; gap: 9px; flex-wrap: wrap; justify-content: flex-end; }
.park-kpi-strip { border-bottom: 1px solid var(--cw-line); background: var(--cw-surface); }
.park-kpi-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.park-kpi-grid > div { min-height: 88px; padding: 17px 24px; display: flex; justify-content: space-between; align-items: center; border-right: 1px solid var(--cw-line); }
.park-kpi-grid > div:last-child { border-right: 0; }
.park-kpi-grid span { color: var(--cw-muted); text-transform: uppercase; letter-spacing: .08em; font-size: .69rem; }
.park-kpi-grid strong { font-family: Georgia, serif; font-size: 1.6rem; }
.live-kpi strong { display: flex; align-items: center; gap: 8px; color: var(--cw-success); font-family: inherit; font-size: .8rem; }
.live-kpi i { width: 8px; height: 8px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 5px color-mix(in srgb, var(--cw-success) 12%, transparent); }
.park-content-grid { display: grid; grid-template-columns: 1.4fr .6fr; gap: 20px; }
.content-panel { padding: 28px; border: 1px solid var(--cw-line); border-radius: var(--cw-radius); background: var(--cw-surface); }
.content-panel p { margin: 12px 0 0; color: var(--cw-muted); }
.park-facts { display: grid; gap: 0; }
.park-facts > div { display: flex; justify-content: space-between; gap: 12px; padding: 15px 0; border-bottom: 1px solid var(--cw-line); }
.park-facts > div:last-child { border-bottom: 0; }
.park-facts span { color: var(--cw-muted); font-size: .78rem; }
.attraction-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.attraction-card { padding: 21px; border: 1px solid var(--cw-line); border-radius: 19px; background: var(--cw-surface-solid); }
.attraction-card-top { display: flex; justify-content: space-between; gap: 10px; }
.attraction-type { color: var(--cw-copper); text-transform: uppercase; letter-spacing: .1em; font-size: .64rem; font-weight: 850; }
.live-badge { padding: 4px 7px; border-radius: 999px; background: var(--cw-bg-soft); color: var(--cw-muted); font-size: .62rem; text-transform: uppercase; font-weight: 800; }
.live-badge.is-open { color: var(--cw-success); }
.attraction-card h3 { margin: 20px 0 2px; font-family: Georgia, serif; font-size: 1.4rem; }
.attraction-card p { margin: 0; color: var(--cw-muted); font-size: .82rem; }
.coaster-specs { display: grid; grid-template-columns: repeat(3, 1fr); margin: 19px 0; border-block: 1px solid var(--cw-line); }
.coaster-specs span { padding: 13px 7px; text-align: center; border-right: 1px solid var(--cw-line); }
.coaster-specs span:last-child { border-right: 0; }
.coaster-specs strong, .coaster-specs small { display: block; }
.coaster-specs strong { font-family: Georgia, serif; font-size: 1.08rem; }
.coaster-specs small { color: var(--cw-muted); font-size: .65rem; }
.wait-line { display: flex; align-items: center; gap: 9px; color: var(--cw-muted); font-size: .78rem; }
.attraction-list-heading { display: flex; justify-content: space-between; align-items: center; margin: 34px 0 12px; }
.attraction-list-heading h3 { margin: 0; font-family: Georgia, serif; font-size: 1.4rem; }
.attraction-list-heading span { color: var(--cw-copper); font-weight: 850; }
.attraction-list { display: grid; border: 1px solid var(--cw-line); border-radius: 18px; overflow: hidden; }
.attraction-row { display: flex; justify-content: space-between; gap: 20px; padding: 15px 18px; background: var(--cw-surface); border-bottom: 1px solid var(--cw-line); }
.attraction-row:last-child { border-bottom: 0; }
.attraction-row div span, .attraction-row > span { color: var(--cw-muted); font-size: .73rem; }
.attraction-row div strong { display: block; margin-top: 2px; }

/* v1.103.0 — global footer + public information pages */
.site-footer {
    position: relative;
    margin-top: clamp(52px, 7vw, 92px);
    padding: 0;
    border-top: 1px solid var(--cw-line);
    background:
        radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--cw-copper) 13%, transparent), transparent 34%),
        linear-gradient(180deg, color-mix(in srgb, var(--cw-surface-solid) 88%, var(--cw-bg)) 0%, var(--cw-bg) 100%);
    color: var(--cw-muted);
    font-size: .8rem;
    overflow: hidden;
}
.site-footer::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: min(420px, 42vw);
    height: 2px;
    background: linear-gradient(90deg, var(--cw-copper), color-mix(in srgb, var(--cw-copper) 25%, transparent), transparent);
}
.cw-footer-main {
    display: grid;
    grid-template-columns: minmax(260px, .9fr) minmax(0, 1.7fr);
    gap: clamp(42px, 6vw, 88px);
    padding-top: clamp(44px, 6vw, 72px);
    padding-bottom: 42px;
}
.cw-footer-brand-panel { max-width: 390px; }
.cw-footer-brand { display: inline-flex; align-items: center; color: var(--cw-text); text-decoration: none; }
.footer-logo { width: 188px; height: auto; opacity: .96; }
.cw-footer-tagline {
    margin: 24px 0 8px;
    color: var(--cw-text);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(1.42rem, 2vw, 1.9rem);
    line-height: 1.08;
}
.cw-footer-description { margin: 0; max-width: 34rem; line-height: 1.65; font-size: .88rem; }
.cw-footer-independent {
    margin: 22px 0 0;
    padding-top: 18px;
    border-top: 1px solid var(--cw-line);
    line-height: 1.55;
    font-size: .72rem;
}
.cw-footer-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 4vw, 52px); }
.cw-footer-group { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.cw-footer-group h2 {
    margin: 0 0 18px;
    color: var(--cw-copper);
    font-family: inherit;
    font-size: .69rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.cw-footer-group a {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 3px 0;
    color: color-mix(in srgb, var(--cw-text) 78%, var(--cw-muted));
    font-size: .83rem;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    transition: color .18s ease, transform .18s ease;
}
.cw-footer-group a:hover, .cw-footer-group a:focus-visible { color: var(--cw-copper); transform: translateX(3px); }
.cw-footer-bottom {
    min-height: 72px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
    padding-top: 18px;
    padding-bottom: 18px;
    border-top: 1px solid var(--cw-line);
}
.cw-footer-copyright { display: flex; flex-wrap: wrap; gap: 5px 10px; line-height: 1.4; }
.cw-footer-languages { display: flex; align-items: center; justify-content: center; gap: 5px; }
.cw-footer-languages a {
    min-width: 34px;
    height: 30px;
    display: grid;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--cw-muted);
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-decoration: none;
}
.cw-footer-languages a:hover, .cw-footer-languages a:focus-visible { color: var(--cw-text); border-color: var(--cw-line-strong); }
.cw-footer-languages a.is-active { color: var(--cw-surface-solid); background: var(--cw-copper); border-color: var(--cw-copper); }
.cw-footer-bottom-links { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px 18px; }
.cw-footer-bottom-links a { color: var(--cw-muted); text-decoration: none; font-weight: 700; }
.cw-footer-bottom-links a:hover, .cw-footer-bottom-links a:focus-visible { color: var(--cw-copper); }

.cw-info-hero {
    position: relative;
    padding: clamp(68px, 9vw, 118px) 0 clamp(42px, 6vw, 72px);
    border-bottom: 1px solid var(--cw-line);
    background:
        radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--cw-copper) 16%, transparent), transparent 30%),
        linear-gradient(180deg, color-mix(in srgb, var(--cw-surface) 62%, transparent), transparent);
}
.cw-info-hero-inner { max-width: 860px; }
.cw-info-hero h1 { margin: 14px 0 18px; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2.7rem, 6vw, 5.7rem); line-height: .96; letter-spacing: -.045em; }
.cw-info-hero p { max-width: 760px; margin: 0; color: var(--cw-muted); font-size: clamp(.98rem, 1.45vw, 1.12rem); line-height: 1.7; }
.cw-info-section { padding: clamp(42px, 6vw, 76px) 0 clamp(70px, 8vw, 112px); }
.cw-info-stack { display: grid; gap: 18px; max-width: 900px; }
.cw-info-card {
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid var(--cw-line);
    border-radius: 24px;
    background: color-mix(in srgb, var(--cw-surface-solid) 91%, transparent);
    box-shadow: 0 18px 54px color-mix(in srgb, #000 7%, transparent);
}
.cw-info-card-kicker { display: block; margin-bottom: 8px; color: var(--cw-copper); font-size: .67rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.cw-info-card h2 { margin: 0 0 14px; color: var(--cw-text); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.08; }
.cw-info-card p { margin: 0; color: var(--cw-muted); line-height: 1.75; }
.cw-info-card p + p { margin-top: 14px; }
.cw-info-list { display: grid; gap: 11px; margin: 4px 0 0; padding-left: 1.2rem; color: var(--cw-muted); line-height: 1.65; }
.cw-info-list li::marker { color: var(--cw-copper); }
.cw-info-contact-card, .cw-info-action-card { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.cw-info-contact-card > div:first-child, .cw-info-action-card > div:first-child { min-width: 0; }
.cw-info-notice { margin-top: 18px; padding: 14px 16px; border: 1px solid var(--cw-line); border-radius: 14px; background: color-mix(in srgb, var(--cw-bg-soft) 78%, transparent); color: var(--cw-muted); line-height: 1.55; }
.cw-info-notice.is-warning { border-color: color-mix(in srgb, var(--cw-copper) 42%, var(--cw-line)); background: color-mix(in srgb, var(--cw-copper) 8%, var(--cw-bg-soft)); }
.cw-legal-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 20px 0 0; border: 1px solid var(--cw-line); border-radius: 16px; overflow: hidden; }
.cw-legal-list > div { min-width: 0; padding: 15px 17px; border-bottom: 1px solid var(--cw-line); }
.cw-legal-list > div:nth-child(odd) { border-right: 1px solid var(--cw-line); }
.cw-legal-list > div:nth-last-child(-n+2) { border-bottom: 0; }
.cw-legal-list dt { color: var(--cw-muted); font-size: .67rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.cw-legal-list dd { margin: 5px 0 0; color: var(--cw-text); font-weight: 750; overflow-wrap: anywhere; }
.cw-legal-list a { color: var(--cw-copper); }
.cw-info-footnote { display: flex; justify-content: flex-end; gap: 8px; color: var(--cw-muted); font-size: .7rem; }
.cw-info-footnote strong { color: var(--cw-text); }

@media (max-width: 980px) {
    .cw-footer-main { grid-template-columns: 1fr; gap: 36px; }
    .cw-footer-brand-panel { max-width: 640px; }
    .cw-footer-nav { gap: 32px; }
    .cw-footer-bottom { grid-template-columns: 1fr auto; }
    .cw-footer-languages { grid-column: 2; grid-row: 1; }
    .cw-footer-bottom-links { grid-column: 1 / -1; justify-content: flex-start; }
}

@media (max-width: 720px) {
    .site-footer { margin-top: 48px; }
    .cw-footer-main { width: min(100% - 32px, 1180px); padding-top: 42px; padding-bottom: 30px; gap: 30px; }
    .footer-logo { width: 164px; }
    .cw-footer-tagline { margin-top: 18px; font-size: 1.52rem; }
    .cw-footer-description { font-size: .83rem; }
    .cw-footer-independent { margin-top: 18px; padding-top: 16px; }
    .cw-footer-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
    .cw-footer-group-information { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 22px; }
    .cw-footer-group-information h2 { grid-column: 1 / -1; }
    .cw-footer-group a { min-height: 34px; font-size: .82rem; }
    .cw-footer-bottom { width: min(100% - 32px, 1180px); display: flex; align-items: flex-start; flex-direction: column; gap: 14px; padding-top: 20px; padding-bottom: 26px; }
    .cw-footer-languages { justify-content: flex-start; order: 1; }
    .cw-footer-copyright { order: 2; }
    .cw-footer-bottom-links { order: 3; justify-content: flex-start; gap: 9px 16px; }
    .cw-info-hero { padding: 58px 0 36px; }
    .cw-info-hero h1 { font-size: clamp(2.45rem, 13vw, 4.2rem); }
    .cw-info-section { padding: 30px 0 64px; }
    .cw-info-stack { gap: 14px; }
    .cw-info-card { padding: 22px 20px; border-radius: 20px; }
    .cw-info-contact-card, .cw-info-action-card { align-items: stretch; flex-direction: column; }
    .cw-info-contact-card .primary-button, .cw-info-action-card .secondary-button { width: 100%; justify-content: center; }
    .cw-legal-list { grid-template-columns: 1fr; }
    .cw-legal-list > div, .cw-legal-list > div:nth-child(odd) { border-right: 0; border-bottom: 1px solid var(--cw-line); }
    .cw-legal-list > div:last-child { border-bottom: 0; }
    .cw-info-footnote { justify-content: flex-start; flex-wrap: wrap; }
}

@media (max-width: 980px) {
    .desktop-nav { display: none; }
    .mobile-menu-toggle { display: grid; }
    .hero-layout { grid-template-columns: 1fr; gap: 25px; }
    .hero-world { min-height: 410px; }
    .world-globe { width: 320px; }
    .orbit-one { width: 375px; height: 375px; }
    .orbit-two { width: 400px; height: 400px; }
    .park-grid, .attraction-grid { grid-template-columns: repeat(2, 1fr); }
    .pillar-grid { grid-template-columns: 1fr; }
    .pillar-card.featured { transform: none; }
    .park-content-grid { grid-template-columns: 1fr; }
    .park-hero-grid { align-items: flex-start; flex-direction: column; }
    .park-quick-actions { justify-content: flex-start; }
}

@media (max-width: 720px) {
    .container, .narrow-container { width: min(100% - 28px, 1180px); }
    .header-inner { min-height: 68px; }
    .brand { min-width: 0; }
    .brand-logo-image { width: 190px; }
    .brand-tagline { display: none; }
    .hero-section { padding: 58px 0 45px; }
    .hero-copy h1 { font-size: clamp(2.65rem, 14vw, 4.2rem); }
    .hero-world { min-height: 340px; }
    .world-globe { width: 255px; }
    .orbit-one { width: 290px; height: 290px; }
    .orbit-two { width: 310px; height: 310px; }
    .world-badge { min-width: 120px; padding: 9px 11px; }
    .badge-top { top: 35px; right: -4px; }
    .badge-bottom { bottom: 35px; left: -4px; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .stat-card:nth-child(2) { border-right: 0; }
    .stat-card:nth-child(-n+2) { border-bottom: 1px solid var(--cw-line); }
    .section { padding: 56px 0; }
    .park-grid, .attraction-grid { grid-template-columns: 1fr; }
    .split-heading { align-items: flex-start; flex-direction: column; }
    .footer-inner { align-items: flex-start; flex-direction: column; }
    .search-bar { padding: 6px; }
    .search-bar button { padding-inline: 11px; }
    .result-card { grid-template-columns: 44px 1fr 36px; padding: 13px; gap: 11px; }
    .result-symbol { width: 42px; height: 42px; }
    .park-identity { align-items: flex-start; flex-direction: column; }
    .park-emblem { width: 78px; height: 78px; border-radius: 23px; font-size: 2.5rem; }
    .park-kpi-grid { grid-template-columns: repeat(2, 1fr); }
    .park-kpi-grid > div:nth-child(2) { border-right: 0; }
    .park-kpi-grid > div:nth-child(-n+2) { border-bottom: 1px solid var(--cw-line); }
    .attraction-row { align-items: flex-start; flex-direction: column; gap: 7px; }
}

@media (max-width: 420px) {
    .brand-logo-image { width: 160px; }
    .header-actions { gap: 5px; }
    .icon-button { width: 38px; height: 38px; }
    .hero-copy h1 { font-size: 2.8rem; }
    .search-bar { display: grid; grid-template-columns: 30px 1fr; }
    .search-bar button { grid-column: 1 / -1; width: 100%; }
    .world-badge span { font-size: .58rem; }
    .stats-grid { border-inline: 0; width: 100%; }
    .stat-card { min-height: 82px; padding: 15px; }
    .park-kpi-grid { width: 100%; }
    .park-kpi-grid > div { padding: 13px 15px; }
}

/* World Explorer — home v2 */
.world-explorer-hero { min-height: calc(100vh - 78px); padding: 62px 0 48px; display: grid; align-items: center; }
.explorer-layout { grid-template-columns:minmax(0,.92fr) minmax(500px,1.08fr); gap:42px; }
.explorer-copy { padding-block:22px; }
.world-title { max-width:720px!important; font-size:clamp(3.8rem,6.4vw,7rem)!important; line-height:.84!important; }
.world-title em { color:var(--cw-copper); font-style:normal; }
.world-lead { max-width:610px!important; }
.hero-proof { display:flex; gap:0; margin-top:30px; border-top:1px solid var(--cw-line); max-width:620px; }
.hero-proof > span { display:flex; flex-direction:column; min-width:135px; padding:17px 24px 0 0; color:var(--cw-muted); text-transform:uppercase; letter-spacing:.08em; font-size:.62rem; }
.hero-proof strong { color:var(--cw-text); font-family:Georgia,serif; font-size:1.35rem; line-height:1.1; }
.explorer-world { min-height:580px; isolation:isolate; cursor:grab; user-select:none; touch-action:none; }
.explorer-world:active { cursor:grabbing; }
.globe-halo { position:absolute; width:82%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(0,169,255,.20),rgba(0,117,196,.08) 42%,transparent 68%); filter:blur(20px); }
.world-canvas { position:relative; z-index:2; width:min(570px,100%); height:auto; aspect-ratio:1; display:block; }
.explorer-world { contain:paint; }
.globe-halo { filter:blur(24px); opacity:.9; }
.world-compass { position:absolute; z-index:3; right:2%; top:16%; display:grid; justify-items:center; gap:5px; color:var(--cw-muted); font-size:.55rem; letter-spacing:.15em; }
.world-compass i { width:1px; height:72px; background:linear-gradient(var(--cw-copper),var(--cw-line)); }
.world-hint { position:absolute; z-index:4; bottom:5%; left:50%; transform:translateX(-50%); margin:0; white-space:nowrap; color:var(--cw-muted); font-size:.68rem; letter-spacing:.04em; }
.world-tooltip { position:absolute; z-index:10; pointer-events:none; max-width:190px; padding:9px 11px; border:1px solid var(--cw-line); border-radius:10px; background:var(--cw-surface-solid); box-shadow:var(--cw-shadow); font-size:.72rem; font-weight:800; }
.hero-scroll { position:absolute; z-index:5; left:50%; bottom:13px; transform:translateX(-50%); display:flex; align-items:center; gap:9px; color:var(--cw-muted); font-size:.59rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.hero-scroll span { width:28px; height:1px; background:var(--cw-copper); }
.expedition-section { background:var(--cw-bg); }
.expedition-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; }
.expedition-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:16px; }
.expedition-card { position:relative; min-height:285px; padding:26px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid var(--cw-line); border-radius:var(--cw-radius); background:var(--cw-surface); overflow:hidden; transition:.25s ease; }
.expedition-card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line)); box-shadow:var(--cw-shadow); }
.expedition-primary { background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--cw-copper) 30%,transparent),transparent 48%),linear-gradient(145deg,var(--cw-surface-solid),var(--cw-surface)); }
.expedition-kicker { color:var(--cw-copper); font-size:.62rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.expedition-card h3 { max-width:340px; margin:0 0 9px; font-family:Georgia,serif; font-size:1.75rem; line-height:1.05; }
.expedition-card p { margin:0; color:var(--cw-muted); font-size:.88rem; }
.expedition-arrow { position:absolute; right:22px; top:20px; font-size:1.5rem; color:var(--cw-copper); }
.expedition-status { display:flex; align-items:center; gap:9px; color:var(--cw-muted); font-size:.65rem; text-transform:uppercase; font-weight:800; }
.expedition-lock { align-self:flex-start; padding:6px 9px; border-radius:999px; background:var(--cw-bg-soft); color:var(--cw-muted); font-size:.61rem; font-weight:800; text-transform:uppercase; }
@media(max-width:1080px){.explorer-layout{grid-template-columns:1fr;}.explorer-copy{text-align:center}.explorer-copy .eyebrow{justify-content:center}.world-title,.world-lead,.explorer-copy .search-bar,.hero-proof{margin-left:auto!important;margin-right:auto!important}.hero-actions{justify-content:center}.explorer-world{min-height:500px}.expedition-grid{grid-template-columns:1fr 1fr}.expedition-primary{grid-column:1/-1;min-height:230px}}
@media(max-width:720px){.world-explorer-hero{min-height:auto;padding:42px 0 38px}.world-title{font-size:clamp(3.15rem,16vw,4.8rem)!important}.explorer-copy{padding:0}.explorer-world{min-height:370px;margin-top:5px}.world-canvas{width:min(365px,100%)}.world-compass{display:none}.world-hint{bottom:1%;font-size:.6rem}.hero-proof{justify-content:center}.hero-proof>span{min-width:0;flex:1;padding-right:8px}.hero-scroll{display:none}.expedition-heading{align-items:flex-start;flex-direction:column}.expedition-grid{grid-template-columns:1fr}.expedition-primary{grid-column:auto}.expedition-card{min-height:220px}}
@media(max-width:420px){.world-title{font-size:3.25rem!important}.explorer-world{min-height:330px}.hero-proof>span{font-size:.52rem}.hero-proof strong{font-size:1.1rem}}


/* v1.11.0 — Discover hub */
.brand-logo-link { align-items:center; }
.discover-hub-section { position:relative; border-top:1px solid var(--cw-line); background:linear-gradient(180deg,var(--cw-bg),color-mix(in srgb,var(--cw-bg-soft) 34%,var(--cw-bg))); }
.discover-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; }
.discover-command-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); gap:18px; margin-top:28px; }
.discover-panel { min-height:390px; border:1px solid var(--cw-line); border-radius:24px; background:var(--cw-surface); overflow:hidden; box-shadow:0 22px 60px rgba(0,0,0,.08); }
.discover-panel-parks { background:radial-gradient(circle at 10% 0,color-mix(in srgb,var(--cw-copper) 18%,transparent),transparent 36%),var(--cw-surface); }
.discover-panel-live { background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--cw-teal) 18%,transparent),transparent 42%),var(--cw-surface); }
.discover-panel-head { min-height:92px; padding:22px 24px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--cw-line); }
.discover-panel-head>div { display:flex; align-items:center; gap:13px; }
.discover-panel-head h3 { margin:0; font:700 1.35rem/1.05 Georgia,serif; }
.discover-index { color:var(--cw-copper); font-size:.62rem; font-weight:900; letter-spacing:.13em; }
.live-index { display:flex; align-items:center; gap:6px; }
.live-index i { width:7px; height:7px; border-radius:50%; background:#38c989; box-shadow:0 0 0 5px rgba(56,201,137,.10); }
.discover-panel-link,.discover-data-label { color:var(--cw-muted); font-size:.62rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.discover-park-list,.live-rail { display:grid; }
.discover-park-row,.live-row { min-height:72px; padding:14px 22px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; border-bottom:1px solid var(--cw-line); color:var(--cw-text); transition:.2s ease; }
.discover-park-row:last-child,.live-row:last-child { border-bottom:0; }
.discover-park-row:hover,.live-row:hover { background:color-mix(in srgb,var(--cw-copper) 7%,transparent); }
.discover-park-rank { color:var(--cw-copper); font:700 1rem/1 Georgia,serif; }
.discover-park-copy,.live-copy { min-width:0; display:grid; gap:4px; }
.discover-park-copy strong,.live-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.92rem; }
.discover-park-copy small,.live-copy small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--cw-muted); font-size:.7rem; }
.discover-row-arrow { color:var(--cw-copper); font-size:1.05rem; }
.live-state { width:9px; height:9px; border-radius:50%; background:#7d8583; box-shadow:0 0 0 5px color-mix(in srgb,#7d8583 10%,transparent); }
.live-state-open { background:#38c989; box-shadow:0 0 0 5px rgba(56,201,137,.10); }
.live-state-closed,.live-state-down { background:#e45e56; box-shadow:0 0 0 5px rgba(228,94,86,.10); }
.live-wait { min-width:58px; text-align:right; color:var(--cw-copper); font-size:.78rem; font-weight:900; }
.discover-empty { min-height:292px; padding:34px; display:flex; flex-direction:column; justify-content:center; gap:8px; color:var(--cw-muted); }
.discover-empty strong { color:var(--cw-text); font:700 1.35rem/1.1 Georgia,serif; }
.discover-coaster-section { background:var(--cw-bg); }
.coaster-radar-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.coaster-radar-card { position:relative; min-height:210px; padding:22px; display:flex; flex-direction:column; justify-content:flex-end; border:1px solid var(--cw-line); border-radius:20px; color:var(--cw-text); background:linear-gradient(150deg,var(--cw-surface-solid),var(--cw-surface)); overflow:hidden; transition:.24s ease; }
.coaster-radar-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--cw-copper) 17%,transparent),transparent 48%); pointer-events:none; }
.coaster-radar-card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--cw-copper) 50%,var(--cw-line)); box-shadow:var(--cw-shadow); }
.coaster-radar-park { position:relative; z-index:1; margin-bottom:auto; color:var(--cw-muted); font-size:.62rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.coaster-radar-card h3 { position:relative; z-index:1; margin:38px 0 12px; max-width:85%; font:700 1.45rem/1.02 Georgia,serif; }
.coaster-radar-meta { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:6px; }
.coaster-radar-meta span,.coaster-radar-live { padding:5px 8px; border:1px solid var(--cw-line); border-radius:999px; color:var(--cw-muted); font-size:.6rem; font-weight:750; }
.coaster-radar-live { position:absolute; z-index:2; right:16px; top:16px; color:#38c989; background:var(--cw-surface); }
.coaster-radar-arrow { position:absolute; z-index:2; right:18px; bottom:18px; color:var(--cw-copper); }
.compact-empty { min-height:240px; }
.nearby-discovery-section { overflow:hidden; }
.nearby-discovery-layout { display:grid; grid-template-columns:minmax(0,.75fr) minmax(420px,1.25fr); align-items:center; gap:56px; }
.nearby-copy h2 { margin:9px 0 12px; font:700 clamp(2rem,4vw,3.4rem)/.95 Georgia,serif; }
.nearby-copy p { max-width:520px; color:var(--cw-muted); }
.nearby-copy small { display:block; margin-top:10px; max-width:440px; color:var(--cw-muted); font-size:.67rem; }
.nearby-results { min-height:300px; position:relative; display:grid; place-items:center; border:1px solid var(--cw-line); border-radius:26px; background:radial-gradient(circle at center,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 45%),var(--cw-surface); overflow:hidden; }
.nearby-results>p { position:relative; z-index:2; width:min(350px,70%); text-align:center; color:var(--cw-muted); }
.nearby-radar { position:absolute; width:250px; aspect-ratio:1; border:1px solid color-mix(in srgb,var(--cw-teal) 24%,var(--cw-line)); border-radius:50%; opacity:.7; }
.nearby-radar::before,.nearby-radar::after,.nearby-radar i { content:""; position:absolute; inset:16%; border:1px solid color-mix(in srgb,var(--cw-teal) 22%,transparent); border-radius:50%; }
.nearby-radar::after { inset:34%; }.nearby-radar i:nth-child(1){inset:0 50%;border:0;border-left:1px solid color-mix(in srgb,var(--cw-teal) 20%,transparent);border-radius:0}.nearby-radar i:nth-child(2){inset:50% 0;border:0;border-top:1px solid color-mix(in srgb,var(--cw-teal) 20%,transparent);border-radius:0}.nearby-radar i:nth-child(3){display:none}.nearby-radar span { position:absolute; left:50%; top:50%; width:9px; height:9px; border-radius:50%; background:var(--cw-copper); transform:translate(-50%,-50%); box-shadow:0 0 0 8px color-mix(in srgb,var(--cw-copper) 14%,transparent); }
.nearby-result-list { width:100%; align-self:stretch; display:grid; align-content:center; padding:18px; }
.nearby-result-row { padding:14px 16px; display:flex; justify-content:space-between; align-items:center; gap:18px; border-bottom:1px solid var(--cw-line); color:var(--cw-text); }
.nearby-result-row:last-child { border-bottom:0; }.nearby-result-row>span{display:grid;gap:3px}.nearby-result-row small{color:var(--cw-muted);font-size:.68rem}.nearby-result-row b{color:var(--cw-copper);font-size:.75rem;white-space:nowrap}
.button.is-loading { opacity:.6; pointer-events:none; }
@media(max-width:1080px){.discover-command-grid{grid-template-columns:1fr}.coaster-radar-grid{grid-template-columns:repeat(2,1fr)}.nearby-discovery-layout{grid-template-columns:1fr;gap:28px}.nearby-copy{text-align:center}.nearby-copy p,.nearby-copy small{margin-left:auto;margin-right:auto}.nearby-results{min-height:260px}}
@media(max-width:720px){.discover-heading{align-items:flex-start;flex-direction:column}.discover-panel{min-height:auto}.discover-panel-head{padding:18px}.discover-park-row,.live-row{padding:13px 17px}.coaster-radar-grid{grid-template-columns:1fr}.coaster-radar-card{min-height:190px}.nearby-results{min-height:230px}.nearby-radar{width:190px}}


/* Park detail v1.12.0 */
.park-detail-hero {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 24%, rgba(231, 130, 46, .20), transparent 28%),
        linear-gradient(125deg, #081421 0%, #0d2032 52%, #152d40 100%);
}
.park-detail-hero.has-media {
    background-image:
        linear-gradient(90deg, rgba(4, 12, 20, .94) 0%, rgba(4, 12, 20, .70) 46%, rgba(4, 12, 20, .30) 100%),
        var(--park-hero-image);
    background-size: cover;
    background-position: center;
}
.park-detail-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: linear-gradient(to bottom, black, transparent 90%);
}
.park-detail-hero-shade {
    position: absolute;
    inset: auto 0 0;
    height: 55%;
    background: linear-gradient(transparent, var(--bg));
    pointer-events: none;
}
.park-detail-hero-content { position: relative; z-index: 1; padding-top: 104px; padding-bottom: 56px; width: 100%; }
.park-detail-breadcrumb { display: flex; gap: 9px; align-items: center; flex-wrap: wrap; margin-bottom: 36px; font-size: .78rem; color: var(--muted); }
.park-detail-breadcrumb a { color: inherit; text-decoration: none; }
.park-detail-breadcrumb strong { color: var(--text); font-weight: 600; }
.park-detail-main { display: flex; justify-content: space-between; align-items: flex-end; gap: 36px; }
.park-detail-brand { display: flex; align-items: center; gap: 22px; min-width: 0; }
.park-detail-brand h1 { margin: 5px 0 12px; max-width: 820px; font-size: clamp(2.8rem, 6vw, 5.7rem); line-height: .92; letter-spacing: -.055em; }
.park-detail-status { display: flex; gap: 13px; flex-wrap: wrap; align-items: center; color: var(--muted); font-size: .86rem; }
.park-detail-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.park-detail-summary { position: relative; z-index: 2; margin-top: -1px; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--bg) 92%, transparent); }
.park-detail-summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.park-summary-stat { padding: 24px 28px; border-right: 1px solid var(--line); }
.park-summary-stat:first-child { border-left: 1px solid var(--line); }
.park-summary-stat span { display: block; color: var(--muted); text-transform: uppercase; letter-spacing: .13em; font-size: .67rem; font-weight: 700; }
.park-summary-stat strong { display: flex; align-items: center; gap: 8px; margin-top: 7px; font-size: 1.45rem; }
.park-summary-stat.is-live i { width: 8px; height: 8px; border-radius: 50%; background: #6f7780; }
.park-summary-stat.is-live i.is-on { background: #4fc67b; box-shadow: 0 0 0 5px rgba(79,198,123,.12); }
.park-detail-overview-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr); gap: 22px; align-items: stretch; }
.park-story-panel, .park-today-panel {
    border: 1px solid var(--line); border-radius: 28px; padding: clamp(24px, 4vw, 40px);
    background: var(--surface); box-shadow: 0 20px 55px rgba(0,0,0,.08);
}
.park-story-panel h2, .park-today-panel h2, .park-map-preview h2 { margin: 6px 0 18px; font-size: clamp(1.8rem, 3vw, 2.8rem); }
.park-story-panel > p { color: var(--muted); font-size: 1rem; line-height: 1.85; max-width: 760px; }
.park-story-links { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 28px; font-size: .82rem; }
.park-story-links a { color: var(--accent); text-decoration: none; font-weight: 700; }
.park-story-links span { color: var(--muted); }
.park-panel-heading { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.live-chip { display: inline-flex; gap: 7px; align-items: center; padding: 7px 10px; border-radius: 999px; border: 1px solid rgba(79,198,123,.25); color: #62d58b; font-size: .67rem; font-weight: 800; letter-spacing: .12em; }
.live-chip i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px rgba(79,198,123,.12); }
.park-today-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.park-today-item { min-width: 0; padding: 16px; border-radius: 18px; background: var(--surface-2); border: 1px solid var(--line); }
.park-today-item span, .park-today-item small { display: block; color: var(--muted); font-size: .7rem; }
.park-today-item strong { display: block; margin: 8px 0 4px; font-size: 1.1rem; }
.park-show-strip { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); display: grid; gap: 10px; }
.park-show-strip > span { color: var(--muted); text-transform: uppercase; letter-spacing: .1em; font-size: .65rem; }
.park-show-strip > div { display: flex; justify-content: space-between; gap: 16px; }
.park-show-strip small { color: var(--accent); }
.park-map-preview { overflow: hidden; }
.park-map-preview-grid {
    position: relative; display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center;
    min-height: 260px; padding-top: 20px; padding-bottom: 20px;
}
.park-map-preview-grid::after {
    content: ""; position: absolute; width: 340px; height: 340px; right: -40px; top: 50%; transform: translateY(-50%);
    border-radius: 50%; opacity: .45;
    background:
        radial-gradient(circle, transparent 0 31%, rgba(231,130,46,.18) 31.5% 32%, transparent 32.5%),
        repeating-radial-gradient(circle, transparent 0 32px, rgba(255,255,255,.045) 33px 34px);
}
.park-map-preview p { max-width: 660px; color: var(--muted); line-height: 1.7; }
.park-map-coordinates { position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; padding: 16px 20px; border-radius: 999px; border: 1px solid var(--line); background: var(--surface); font-variant-numeric: tabular-nums; font-size: .78rem; }
.park-map-coordinates i { width: 5px; height: 5px; border-radius: 50%; background: var(--accent); }
.park-catalogue-heading { align-items: end; gap: 24px; }
.park-catalogue-heading p { color: var(--muted); max-width: 680px; }
.park-catalogue-filters { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.park-catalogue-filters button {
    border: 1px solid var(--line); background: var(--surface); color: var(--muted);
    padding: 9px 13px; border-radius: 999px; cursor: pointer; font: inherit; font-size: .74rem;
}
.park-catalogue-filters button.is-active { color: var(--text); border-color: color-mix(in srgb, var(--accent) 50%, var(--line)); background: color-mix(in srgb, var(--accent) 9%, var(--surface)); }
.park-attraction-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.park-attraction-card { overflow: hidden; min-width: 0; border-radius: 24px; border: 1px solid var(--line); background: var(--surface); transition: transform .2s ease, border-color .2s ease; }
.park-attraction-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--accent) 38%, var(--line)); }
.park-attraction-card[hidden] { display: none; }
.park-attraction-visual {
    position: relative; min-height: 150px; padding: 18px; overflow: hidden;
    background:
        radial-gradient(circle at 75% 25%, rgba(231,130,46,.24), transparent 30%),
        linear-gradient(135deg, color-mix(in srgb, var(--surface-2) 85%, #0d3655), var(--surface-2));
}
.park-attraction-visual::after { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(135deg, transparent 46%, var(--accent) 47% 48%, transparent 49%); background-size: 22px 22px; }
.park-attraction-type, .park-attraction-live { position: relative; z-index: 2; display: inline-flex; padding: 6px 9px; border-radius: 999px; background: rgba(5,14,23,.68); color: #d9e5ee; font-size: .63rem; text-transform: uppercase; letter-spacing: .1em; }
.park-attraction-live { float: right; color: #b8c3cb; }
.park-attraction-live.is-open { color: #77e29d; }
.park-attraction-letter { position: absolute; right: 18px; bottom: -24px; z-index: 1; font-family: Georgia, serif; font-size: 8rem; line-height: 1; color: rgba(255,255,255,.075); }
.park-attraction-body { padding: 20px; }
.park-attraction-title { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.park-attraction-title small { color: var(--muted); font-size: .66rem; }
.park-attraction-title h3 { margin: 4px 0 0; font-size: 1.18rem; }
.park-wait-time { flex: 0 0 auto; min-width: 54px; padding: 9px; text-align: center; border-radius: 15px; background: color-mix(in srgb, var(--accent) 10%, var(--surface-2)); color: var(--accent); font-size: 1.2rem; }
.park-wait-time small { display: block; color: inherit; font-size: .55rem; text-transform: uppercase; }
.park-attraction-body > p { color: var(--muted); min-height: 2.8em; margin: 12px 0 16px; font-size: .8rem; line-height: 1.55; }
.park-coaster-specs { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); padding-top: 14px; }
.park-coaster-specs span { text-align: center; border-right: 1px solid var(--line); }
.park-coaster-specs span:last-child { border-right: 0; }
.park-coaster-specs strong, .park-coaster-specs small { display: block; }
.park-coaster-specs strong { font-size: .96rem; }
.park-coaster-specs small { margin-top: 2px; color: var(--muted); font-size: .58rem; text-transform: uppercase; }
.park-attraction-meta { display: flex; gap: 8px; flex-wrap: wrap; }
.park-attraction-meta span { padding: 6px 9px; border-radius: 999px; background: var(--surface-2); color: var(--muted); font-size: .66rem; }
.park-empty-state { margin-top: 20px; }
.park-gallery-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-auto-rows: 190px; gap: 12px; }
.park-gallery-grid figure { position: relative; margin: 0; overflow: hidden; border-radius: 22px; background: var(--surface); }
.park-gallery-grid figure:first-child { grid-row: span 2; }
.park-gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.park-gallery-grid figure:hover img { transform: scale(1.025); }
.park-gallery-grid figcaption { position: absolute; inset: auto 10px 10px; padding: 5px 8px; border-radius: 8px; background: rgba(0,0,0,.58); color: #fff; font-size: .58rem; }

@media (max-width: 980px) {
    .park-detail-main { align-items: flex-start; flex-direction: column; }
    .park-detail-actions { justify-content: flex-start; }
    .park-detail-overview-grid { grid-template-columns: 1fr; }
    .park-attraction-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .park-gallery-grid { grid-template-columns: 1fr 1fr; }
    .park-gallery-grid figure:first-child { grid-row: span 1; grid-column: span 2; }
}
@media (max-width: 720px) {
    .park-detail-hero { min-height: 390px; }
    .park-detail-hero-content { padding-top: 88px; padding-bottom: 36px; }
    .park-detail-breadcrumb { margin-bottom: 26px; }
    .park-detail-brand { align-items: flex-start; gap: 14px; }
    .park-detail-brand h1 { font-size: clamp(2.25rem, 12vw, 3.8rem); }
    .park-detail-actions { width: 100%; }
    .park-detail-actions .button { flex: 1 1 auto; text-align: center; }
    .park-detail-summary-grid { grid-template-columns: 1fr 1fr; }
    .park-summary-stat { padding: 18px; border-bottom: 1px solid var(--line); }
    .park-summary-stat:nth-child(odd) { border-left: 1px solid var(--line); }
    .park-today-grid { grid-template-columns: 1fr; }
    .park-map-preview-grid { grid-template-columns: 1fr; gap: 20px; }
    .park-map-coordinates { width: fit-content; }
    .park-catalogue-heading { align-items: flex-start; flex-direction: column; }
    .park-catalogue-filters { justify-content: flex-start; }
    .park-attraction-grid { grid-template-columns: 1fr; }
    .park-gallery-grid { grid-template-columns: 1fr; grid-auto-rows: 220px; }
    .park-gallery-grid figure:first-child { grid-column: auto; }
}


/* Park Live refresh — v1.15.0 */
.park-catalogue-tools {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}
.park-live-freshness {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    min-height: 42px;
}
.park-live-freshness .live-refresh-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex: 0 0 auto;
    background: #69727b;
    box-shadow: 0 0 0 5px rgba(105,114,123,.08);
    transition: background .2s ease, box-shadow .2s ease;
}
.park-live-freshness .live-refresh-dot.is-on {
    background: #4fc67b;
    box-shadow: 0 0 0 5px rgba(79,198,123,.12);
}
.park-live-freshness strong,
.park-live-freshness small { display: block; }
.park-live-freshness strong { font-size: .72rem; }
.park-live-freshness small { margin-top: 2px; color: var(--muted); font-size: .6rem; }
.is-live-refreshing .park-live-freshness .live-refresh-dot {
    animation: cw-live-pulse .9s ease-in-out infinite alternate;
}
@keyframes cw-live-pulse {
    from { opacity: .45; transform: scale(.82); }
    to { opacity: 1; transform: scale(1.08); }
}
.park-attraction-live.is-closed {
    color: #ff9b88;
    background: rgba(102, 27, 19, .70);
}
.park-live-details {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 10px;
    min-height: 22px;
    margin: 10px 0 2px;
    color: var(--muted);
    font-size: .64rem;
}
.park-live-details > span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.park-live-details > span[hidden],
.park-wait-time[hidden] { display: none !important; }
.park-live-details [data-live-single-rider] {
    color: color-mix(in srgb, var(--accent) 75%, var(--text));
}
.park-live-details [data-live-updated] {
    margin-left: auto;
}
.park-attraction-card.is-live-stale {
    opacity: .76;
}
.park-attraction-card.is-live-stale .park-attraction-live::after {
    content: " ·";
}
@media (max-width: 720px) {
    .park-catalogue-tools { width: 100%; justify-content: flex-start; }
    .park-live-freshness { width: 100%; }
    .park-live-details [data-live-updated] { margin-left: 0; width: 100%; }
}


/* Coaster detail — v1.16.0 */
.coaster-detail-hero {
    position: relative;
    min-height: 500px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 28%, rgba(231,130,46,.22), transparent 25%),
        linear-gradient(125deg, #08131f 0%, #0d1d2b 52%, #152f43 100%);
}
.coaster-detail-hero.has-media {
    background-image:
        linear-gradient(90deg, rgba(4,12,20,.95) 0%, rgba(4,12,20,.70) 45%, rgba(4,12,20,.28) 100%),
        var(--coaster-hero-image);
    background-size: cover;
    background-position: center;
}
.coaster-detail-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        repeating-linear-gradient(115deg, transparent 0 52px, rgba(255,255,255,.025) 53px 54px),
        radial-gradient(circle at 68% 35%, transparent 0 20%, rgba(255,255,255,.025) 20.5% 21%, transparent 21.5%);
}
.coaster-detail-shade {
    position: absolute;
    inset: auto 0 0;
    height: 50%;
    background: linear-gradient(transparent, var(--bg));
}
.coaster-detail-content {
    position: relative;
    z-index: 1;
    width: 100%;
    padding-top: 110px;
    padding-bottom: 56px;
}
.coaster-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 40px;
    align-items: end;
}
.coaster-hero-grid h1 {
    margin: 7px 0 18px;
    max-width: 900px;
    font-size: clamp(3rem, 7vw, 6.2rem);
    line-height: .9;
    letter-spacing: -.055em;
}
.coaster-hero-meta {
    display: flex;
    gap: 11px 16px;
    flex-wrap: wrap;
    color: var(--muted);
    font-size: .82rem;
}
.coaster-hero-meta a { color: var(--accent); text-decoration: none; font-weight: 700; }
.coaster-live-card {
    min-height: 190px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    border-radius: 28px;
    border: 1px solid var(--line);
    background: rgba(8,18,28,.76);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 48px rgba(0,0,0,.18);
}
.coaster-live-card > span {
    color: var(--muted);
    font-size: .65rem;
    text-transform: uppercase;
    letter-spacing: .14em;
}
.coaster-live-card > strong { margin-top: 8px; font-size: 1.05rem; }
.coaster-live-card.is-open > strong { color: #6ae294; }
.coaster-live-card.is-closed > strong { color: #ff9b88; }
.coaster-live-card > small { margin-top: 8px; color: var(--muted); }
.coaster-live-wait {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 12px;
    color: var(--accent);
}
.coaster-live-wait b { font-family: Georgia, serif; font-size: 3.1rem; line-height: 1; }
.coaster-live-wait small { text-transform: uppercase; font-size: .62rem; font-weight: 800; }
.coaster-facts-strip { border-bottom: 1px solid var(--line); background: var(--surface); }
.coaster-facts-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.coaster-facts-grid > div { padding: 24px 28px; border-right: 1px solid var(--line); }
.coaster-facts-grid > div:first-child { border-left: 1px solid var(--line); }
.coaster-facts-grid span, .coaster-facts-grid small {
    display: block;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: .64rem;
}
.coaster-facts-grid strong { display: inline-block; margin: 7px 5px 0 0; font-size: 1.6rem; }
.coaster-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
    gap: 22px;
}
.coaster-profile-panel, .coaster-spec-panel {
    padding: clamp(24px, 4vw, 40px);
    border: 1px solid var(--line);
    border-radius: 28px;
    background: var(--surface);
}
.coaster-profile-panel h2, .coaster-spec-panel h2 {
    margin: 6px 0 18px;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
}
.coaster-profile-panel > p { color: var(--muted); line-height: 1.8; }
.coaster-data-notice {
    margin-top: 24px;
    padding: 18px 20px;
    border-radius: 18px;
    border: 1px dashed color-mix(in srgb, var(--accent) 45%, var(--line));
    background: color-mix(in srgb, var(--accent) 7%, var(--surface-2));
}
.coaster-data-notice p { margin: 6px 0 0; color: var(--muted); font-size: .8rem; line-height: 1.55; }
.coaster-identity-list, .coaster-spec-table { margin-top: 26px; border-top: 1px solid var(--line); }
.coaster-identity-list > div, .coaster-spec-table > div {
    display: grid;
    grid-template-columns: minmax(130px, .7fr) 1.3fr;
    gap: 20px;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid var(--line);
}
.coaster-identity-list span, .coaster-spec-table span { color: var(--muted); font-size: .72rem; }
.coaster-identity-list strong, .coaster-spec-table strong { text-align: right; }
.coaster-identity-list a { color: var(--text); text-decoration: none; }
.coaster-related-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.coaster-related-card {
    min-height: 160px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px;
    border: 1px solid var(--line);
    border-radius: 22px;
    background:
        radial-gradient(circle at 78% 18%, rgba(231,130,46,.15), transparent 28%),
        var(--surface);
    color: var(--text);
    text-decoration: none;
    transition: transform .2s ease, border-color .2s ease;
}
.coaster-related-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }
.coaster-related-card span, .coaster-related-card small { color: var(--muted); font-size: .66rem; }
.coaster-related-card strong { margin: 8px 0 18px; font-size: 1.03rem; }
.coaster-related-card small { color: var(--accent); font-weight: 700; }
.park-attraction-title-link { color: inherit; text-decoration: none; }
.park-attraction-title-link:hover { color: var(--accent); }
.park-coaster-detail-link {
    display: inline-flex;
    margin-top: 15px;
    color: var(--accent);
    text-decoration: none;
    font-size: .68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}
@media (max-width: 980px) {
    .coaster-hero-grid { grid-template-columns: 1fr; }
    .coaster-live-card { min-height: auto; max-width: 360px; }
    .coaster-detail-grid { grid-template-columns: 1fr; }
    .coaster-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .coaster-detail-hero { min-height: 440px; }
    .coaster-detail-content { padding-top: 90px; padding-bottom: 38px; }
    .coaster-hero-grid h1 { font-size: clamp(2.7rem, 14vw, 4.4rem); }
    .coaster-live-card { width: 100%; }
    .coaster-facts-grid { grid-template-columns: 1fr 1fr; }
    .coaster-facts-grid > div { padding: 18px; border-bottom: 1px solid var(--line); }
    .coaster-facts-grid > div:nth-child(odd) { border-left: 1px solid var(--line); }
    .coaster-identity-list > div, .coaster-spec-table > div { grid-template-columns: 1fr; gap: 5px; }
    .coaster-identity-list strong, .coaster-spec-table strong { text-align: left; }
    .coaster-related-grid { grid-template-columns: 1fr; }
}


/* v1.19.1 — Home hero overflow / globe resize hardening */
.world-explorer-hero { overflow: hidden; }
.explorer-layout { width: 100%; min-width: 0; }
.explorer-copy, .explorer-world { min-width: 0; max-width: 100%; }
.explorer-copy { overflow: visible; }
.world-title {
    width: 100%;
    max-width: 680px !important;
    font-size: clamp(3.6rem, 5vw, 6rem) !important;
    overflow-wrap: normal;
    word-break: normal;
}
.explorer-world { overflow: hidden; justify-items: center; }
.world-canvas {
    width: 100%;
    max-width: 570px;
    height: auto;
    margin-inline: auto;
    flex: none;
}
.explorer-world[data-world-globe-3d] {
    position: relative;
    z-index: 1;
    overflow: visible;
    contain: none;
}

.explorer-world[data-world-globe-3d] .world-canvas {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200vw;
    height: calc(100vh - 78px);
    max-width: none;
    margin: 0;
    transform: translate(-50%, -50%);
    opacity: .42;
    transition: opacity .28s ease;
}
.explorer-world[data-world-globe-3d].is-globe-ready .world-canvas {
    opacity: 1;
}
.explorer-world[data-world-globe-3d].has-globe-error .world-canvas {
    opacity: .16;
}

.explorer-world[data-world-globe-3d] .globe-halo {
    width: min(82vw, 82vh);
    opacity: .52;
}

.world-explorer-hero .hero-copy {
    position: relative;
    z-index: 3;
}

.world-explorer-hero .global-search-shell {
    width: 100%;
}

.world-explorer-hero .search-bar button {
    flex: 0 0 auto;
    min-width: 118px;
    padding-inline: 18px;
    white-space: nowrap;
}

@media (min-width: 1081px) {
    .world-explorer-hero .explorer-copy {
        transform: translateY(-40px);
    }
}

.world-park-picker {
    position: absolute;
    z-index: 20;
    width: min(420px, calc(100% - 24px));
    max-height: min(420px, calc(100% - 96px));
    overflow: hidden;
    border: 1px solid rgba(226, 173, 82, .42);
    border-radius: 16px;
    background: rgba(5, 18, 29, .96);
    box-shadow: 0 22px 56px rgba(0, 0, 0, .54);
    backdrop-filter: blur(18px);
}

.world-park-picker[hidden] {
    display: none;
}

.world-park-picker header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 15px 16px 12px;
    border-bottom: 1px solid rgba(226, 173, 82, .20);
}

.world-park-picker header div {
    display: grid;
    gap: 3px;
}

.world-park-picker header strong {
    color: #f5cf83;
    font-size: .92rem;
}

.world-park-picker header span {
    color: rgba(232, 244, 249, .68);
    font-size: .68rem;
}

.world-park-picker header button {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(115, 230, 255, .24);
    border-radius: 50%;
    color: #eefbff;
    background: rgba(115, 230, 255, .08);
    font-size: 1.1rem;
    cursor: pointer;
}

.world-park-picker-list {
    display: grid;
    max-height: 320px;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    touch-action: pan-y;
    padding: 8px;
}

.world-park-picker-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 13px;
    border-radius: 10px;
    color: #eefbff;
    text-decoration: none;
}

.world-park-picker-list a:hover,
.world-park-picker-list a:focus-visible {
    color: #ffffff;
    background: rgba(115, 230, 255, .12);
    outline: none;
}

.world-park-picker-copy {
    display: grid;
    min-width: 0;
    gap: 6px;
}

.world-park-picker-copy strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.world-park-picker-details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
}

.world-park-picker-status,
.world-park-picker-details small {
    color: rgba(232, 244, 249, .72);
    font-size: .64rem;
}

.world-park-picker-status {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-weight: 800;
}

.world-park-picker-status::before {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #84949b;
    content: "";
}

.world-park-picker-status.is-open::before { background: #43c987; }
.world-park-picker-status.is-opening-later::before { background: #e2ad52; }
.world-park-picker-status.is-closed::before { background: #db6c64; }

.world-park-picker-list a > span:last-child {
    color: #73e6ff;
}

html[data-theme="light"] .world-park-picker {
    color: #12364a;
    background: rgba(247, 252, 255, .96);
    border-color: rgba(157, 105, 28, .30);
}

html[data-theme="light"] .world-park-picker header strong,
html[data-theme="light"] .world-park-picker-list a {
    color: #18384a;
}

html[data-theme="light"] .world-park-picker header span {
    color: rgba(18, 54, 74, .70);
}

html[data-theme="light"] .world-park-picker-status,
html[data-theme="light"] .world-park-picker-details small {
    color: rgba(18, 54, 74, .76);
}

@media (max-width: 720px) {
    .world-park-picker {
        top: auto !important;
        right: 12px;
        bottom: 64px;
        left: 12px !important;
        width: auto;
        max-height: 56vh;
    }
}

@media (max-width: 420px) {
    .world-explorer-hero .search-bar button {
        min-width: 0;
    }
}
@media (max-width: 1200px) {
    .explorer-layout { grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr); gap: 28px; }
    .world-title { font-size: clamp(3.4rem, 5.2vw, 5.4rem) !important; }
}
@media (max-width: 1080px) {
    .explorer-layout { grid-template-columns: 1fr; }
    .explorer-world { width: min(100%, 620px); margin-inline: auto; }
}
@media (max-width: 720px) {
    .world-canvas { max-width: 365px; }
}


/* Attraction detail — v1.20.0 */
.attraction-detail-hero {
    position: relative;
    min-height: 460px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 24%, color-mix(in srgb, var(--cw-teal) 26%, transparent), transparent 28%),
        linear-gradient(125deg, #08131f 0%, #10222c 52%, #15383b 100%);
}
.attraction-detail-hero.has-media {
    background-image:
        linear-gradient(90deg, rgba(4,12,20,.94) 0%, rgba(4,12,20,.68) 48%, rgba(4,12,20,.28) 100%),
        var(--attraction-hero-image);
    background-size: cover;
    background-position: center;
}
.attraction-detail-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        repeating-linear-gradient(115deg, transparent 0 54px, rgba(255,255,255,.025) 55px 56px),
        radial-gradient(circle at 70% 35%, transparent 0 19%, rgba(255,255,255,.025) 19.5% 20%, transparent 20.5%);
}
.attraction-detail-shade {
    position: absolute;
    inset: auto 0 0;
    height: 52%;
    background: linear-gradient(transparent, var(--cw-bg));
}
.attraction-detail-content {
    position: relative;
    z-index: 1;
    width: 100%;
    padding-top: 105px;
    padding-bottom: 52px;
}
.attraction-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 40px;
    align-items: end;
}
.attraction-hero-grid h1 {
    margin: 7px 0 18px;
    max-width: 940px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6.6vw, 6rem);
    line-height: .92;
    letter-spacing: -.055em;
}
.attraction-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    color: var(--cw-muted);
    font-size: .82rem;
}
.attraction-hero-meta a {
    color: var(--cw-copper);
    font-weight: 750;
}
.attraction-live-card {
    min-height: 188px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    border: 1px solid var(--cw-line);
    border-radius: 28px;
    background: rgba(8, 18, 28, .78);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 48px rgba(0,0,0,.18);
}
.attraction-live-card > span {
    color: var(--cw-muted);
    font-size: .65rem;
    text-transform: uppercase;
    letter-spacing: .14em;
}
.attraction-live-card > strong {
    margin-top: 8px;
    font-size: 1.05rem;
}
.attraction-live-card.is-open > strong { color: #6ae294; }
.attraction-live-card.is-closed > strong { color: #ff9b88; }
.attraction-live-card > small {
    margin-top: 8px;
    color: var(--cw-muted);
}
.attraction-live-wait {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 12px;
    color: var(--cw-copper);
}
.attraction-live-wait b {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 3.1rem;
    line-height: 1;
}
.attraction-live-wait small {
    font-size: .62rem;
    font-weight: 850;
    text-transform: uppercase;
}
.attraction-facts-strip {
    border-bottom: 1px solid var(--cw-line);
    background: var(--cw-surface);
}
.attraction-facts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.attraction-facts-grid > div {
    min-width: 0;
    padding: 24px 28px;
    border-right: 1px solid var(--cw-line);
}
.attraction-facts-grid > div:first-child {
    border-left: 1px solid var(--cw-line);
}
.attraction-facts-grid span {
    display: block;
    color: var(--cw-muted);
    font-size: .64rem;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.attraction-facts-grid strong {
    display: block;
    margin-top: 8px;
    overflow-wrap: anywhere;
    font-size: 1.05rem;
}
.attraction-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
    gap: 22px;
}
.attraction-profile-panel,
.attraction-spec-panel {
    padding: clamp(24px, 4vw, 40px);
    border: 1px solid var(--cw-line);
    border-radius: 28px;
    background: var(--cw-surface);
}
.attraction-profile-panel h2,
.attraction-spec-panel h2 {
    margin: 6px 0 18px;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
}
.attraction-profile-panel > p {
    color: var(--cw-muted);
    line-height: 1.8;
}
.attraction-identity-list,
.attraction-spec-table {
    margin-top: 26px;
    border-top: 1px solid var(--cw-line);
}
.attraction-identity-list > div,
.attraction-spec-table > div {
    display: grid;
    grid-template-columns: minmax(130px, .7fr) 1.3fr;
    gap: 20px;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid var(--cw-line);
}
.attraction-identity-list span,
.attraction-spec-table span {
    color: var(--cw-muted);
    font-size: .72rem;
}
.attraction-identity-list strong,
.attraction-spec-table strong {
    text-align: right;
}
.attraction-identity-list a {
    color: var(--cw-text);
}
.attraction-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.attraction-related-card {
    min-height: 160px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px;
    border: 1px solid var(--cw-line);
    border-radius: 22px;
    background:
        radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--cw-teal) 14%, transparent), transparent 30%),
        var(--cw-surface);
    color: var(--cw-text);
    transition: transform .2s ease, border-color .2s ease;
}
.attraction-related-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--cw-copper) 40%, var(--cw-line));
}
.attraction-related-card span,
.attraction-related-card small {
    color: var(--cw-muted);
    font-size: .66rem;
}
.attraction-related-card strong {
    margin: 8px 0 18px;
    font-size: 1.03rem;
}
.attraction-related-card small {
    color: var(--cw-copper);
    font-weight: 750;
}

@media (max-width: 980px) {
    .attraction-hero-grid { grid-template-columns: 1fr; }
    .attraction-live-card { min-height: auto; max-width: 360px; }
    .attraction-detail-grid { grid-template-columns: 1fr; }
    .attraction-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .attraction-detail-hero { min-height: 430px; }
    .attraction-detail-content { padding-top: 88px; padding-bottom: 36px; }
    .attraction-hero-grid h1 { font-size: clamp(2.7rem, 14vw, 4.4rem); }
    .attraction-live-card { width: 100%; }
    .attraction-facts-grid { grid-template-columns: 1fr 1fr; }
    .attraction-facts-grid > div {
        padding: 18px;
        border-bottom: 1px solid var(--cw-line);
    }
    .attraction-facts-grid > div:nth-child(odd) {
        border-left: 1px solid var(--cw-line);
    }
    .attraction-identity-list > div,
    .attraction-spec-table > div {
        grid-template-columns: 1fr;
        gap: 5px;
    }
    .attraction-identity-list strong,
    .attraction-spec-table strong {
        text-align: left;
    }
    .attraction-related-grid { grid-template-columns: 1fr; }
}

/* Explore catalogue — v1.21.0 */
.explore-hero{padding:clamp(110px,13vw,180px) 0 42px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--cw-teal) 18%,transparent),transparent 30%),linear-gradient(135deg,var(--cw-bg),var(--cw-surface))}
.explore-hero h1{max-width:900px;margin:8px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,6.4rem);line-height:.94;letter-spacing:-.055em}.explore-hero>div>p{max-width:760px;color:var(--cw-muted);line-height:1.7}
.explore-filters{display:grid;grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(140px,.75fr)) auto;gap:12px;align-items:end;margin-top:34px;padding:16px;border:1px solid var(--cw-line);border-radius:24px;background:color-mix(in srgb,var(--cw-surface) 88%,transparent)}
.explore-filters label{display:block;margin:0 0 7px;color:var(--cw-muted);font-size:.63rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.explore-filters input,.explore-filters select{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-text)}
.explore-filters .primary-button{min-height:46px}.explore-kind-tabs{display:flex;gap:8px;overflow-x:auto;margin-top:16px;padding-bottom:4px}.explore-kind-tabs a{flex:0 0 auto;padding:10px 16px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.76rem;font-weight:750}.explore-kind-tabs a.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 12%,transparent);color:var(--cw-text)}
.explore-results-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.explore-results-head h2{margin:5px 0 0;font-size:clamp(2rem,4vw,3.4rem)}.explore-results-head>strong{color:var(--cw-muted)}
.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.explore-card{min-height:270px;display:flex;flex-direction:column;padding:22px;border:1px solid var(--cw-line);border-radius:25px;background:radial-gradient(circle at 85% 12%,color-mix(in srgb,var(--cw-teal) 13%,transparent),transparent 30%),var(--cw-surface);color:var(--cw-text);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.explore-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));box-shadow:0 18px 45px rgba(0,0,0,.12)}
.explore-card-coaster{background:radial-gradient(circle at 85% 12%,color-mix(in srgb,var(--cw-copper) 15%,transparent),transparent 30%),var(--cw-surface)}.explore-card-top{display:flex;align-items:center;gap:9px}.explore-card-symbol{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--cw-line);border-radius:11px}.explore-card-kind{margin-right:auto;color:var(--cw-muted);font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.explore-card-status{padding:6px 8px;border-radius:999px;font-size:.58rem;font-weight:850;text-transform:uppercase}.explore-card-status.is-open{background:rgba(39,194,113,.12);color:#52d78f}.explore-card-status.is-closed{background:rgba(224,80,60,.12);color:#ef8878}
.explore-card-copy{margin:auto 0}.explore-card-copy>span{color:var(--cw-muted);font-size:.7rem}.explore-card-copy h3{margin:7px 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,2.4vw,2.1rem);line-height:1.02}.explore-card-copy p{margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.5}.explore-card-foot{display:flex;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--cw-line);color:var(--cw-muted);font-size:.7rem}.explore-card-foot strong{color:var(--cw-copper)}.explore-empty{padding:70px 20px}
@media(max-width:1050px){.explore-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-search-field{grid-column:1/-1}.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.explore-hero{padding-top:92px}.explore-filters{grid-template-columns:1fr}.explore-search-field{grid-column:auto}.explore-filters .primary-button{width:100%}.explore-results-head{align-items:flex-start;flex-direction:column}.explore-grid{grid-template-columns:1fr}.explore-card{min-height:235px}}

/* Account & Collection — v1.22.0 */
.account-button{font-weight:850;text-decoration:none}.header-actions form{margin:0}.auth-page{min-height:calc(100vh - 78px);display:grid;place-items:center;padding:70px 20px;background:radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--cw-copper) 12%,transparent),transparent 32%)}
.auth-card{width:min(520px,100%);padding:34px;border:1px solid var(--cw-line);border-radius:28px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}.auth-card h1{margin:6px 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,7vw,4rem)}.auth-card>p{color:var(--cw-muted)}
.auth-form{display:grid;gap:14px;margin-top:28px}.auth-form label:not(.auth-check){display:grid;gap:7px;color:var(--cw-muted);font-size:.72rem;font-weight:750}.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=password]{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-text)}.auth-check{display:flex;align-items:center;gap:8px;color:var(--cw-muted);font-size:.75rem}.form-error{color:var(--cw-danger)}.auth-switch{margin-top:22px!important;font-size:.78rem}.auth-switch a{color:var(--cw-copper);font-weight:800}
.collection-hero{padding:clamp(110px,13vw,170px) 0 48px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 16%,color-mix(in srgb,var(--cw-copper) 16%,transparent),transparent 28%),var(--cw-bg)}.collection-hero h1{margin:7px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,6rem);line-height:.94}.collection-hero p{max-width:720px;color:var(--cw-muted)}
.collection-stats{display:grid;grid-template-columns:repeat(3,minmax(0,180px));gap:12px;margin-top:30px}.collection-stats div{padding:16px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.collection-stats strong{display:block;font-size:1.6rem}.collection-stats span{color:var(--cw-muted);font-size:.7rem}
.collection-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.collection-list{display:grid;gap:9px}.collection-list a{display:flex;justify-content:space-between;gap:20px;padding:15px 16px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.collection-list a span,.collection-empty{color:var(--cw-muted);font-size:.75rem}.collection-favorites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.collection-favorites-grid a{min-height:130px;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.collection-favorites-grid span{color:var(--cw-copper);font-size:.62rem;font-weight:800;text-transform:uppercase}.collection-favorites-grid strong{margin-top:7px}
.collection-detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px}.collection-detail-actions form,.park-detail-actions form{margin:0}.collection-done-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid color-mix(in srgb,var(--cw-success) 35%,var(--cw-line));border-radius:13px;background:color-mix(in srgb,var(--cw-success) 10%,transparent);color:var(--cw-success);font-size:.76rem;font-weight:800}.mobile-logout{width:100%;padding:12px 4px;border:0;border-bottom:1px solid var(--cw-line);background:transparent;color:var(--cw-text);text-align:left;font-weight:650}
@media(max-width:760px){.collection-stats{grid-template-columns:1fr 1fr}.collection-columns{grid-template-columns:1fr}.collection-favorites-grid{grid-template-columns:1fr 1fr}.auth-card{padding:24px}}
@media(max-width:480px){.collection-stats,.collection-favorites-grid{grid-template-columns:1fr}}

/* Visit Mode — v1.23.0 */
.visit-empty-page{min-height:calc(100vh - 78px);display:grid;place-items:center;padding:70px 20px;background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--cw-teal) 16%,transparent),transparent 34%)}
.visit-empty-card{width:min(620px,100%);padding:38px;border:1px solid var(--cw-line);border-radius:30px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}.visit-empty-card h1{margin:8px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.6rem,7vw,4.6rem);line-height:.96}.visit-empty-card p{margin:0 0 24px;color:var(--cw-muted)}
.visit-mode-shell{min-height:100vh;background:var(--cw-bg)}.visit-mobile-topbar{display:none}.visit-mode-container{padding-top:118px;padding-bottom:70px}.visit-mode-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.visit-mode-header h1{margin:6px 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,5.7rem);line-height:.94}.visit-mode-header p{max-width:700px;color:var(--cw-muted)}.visit-mode-actions form{margin:0}
.visit-mode-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:30px 0}.visit-mode-stats>div{padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.visit-mode-stats span{display:block;color:var(--cw-muted);font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.visit-mode-stats strong{display:block;margin-top:8px;font-size:1.5rem}
.visit-suggestions{margin-top:34px}.visit-suggestion-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;overflow-x:auto;padding-bottom:6px}.visit-suggestion-row a{min-width:170px;min-height:145px;display:flex;flex-direction:column;justify-content:flex-end;padding:16px;border:1px solid var(--cw-line);border-radius:19px;background:radial-gradient(circle at 80% 16%,color-mix(in srgb,var(--cw-success) 13%,transparent),transparent 30%),var(--cw-surface)}.visit-suggestion-row span,.visit-suggestion-row small{color:var(--cw-muted);font-size:.65rem}.visit-suggestion-row strong{margin:6px 0 12px;line-height:1.15}.visit-suggestion-row small{color:var(--cw-success);font-weight:800}
.visit-preferences{margin:26px 0;padding:15px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.visit-preferences form{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.visit-preferences label{display:flex;align-items:center;gap:7px;color:var(--cw-muted);font-size:.72rem}.visit-preferences select{min-height:38px;padding:0 9px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-text)}
.visit-attraction-list{display:grid;gap:10px}.visit-attraction-card{display:grid;grid-template-columns:minmax(0,1fr) 90px auto auto;gap:16px;align-items:center;padding:15px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);transition:opacity .2s ease,border-color .2s ease}.visit-attraction-card.is-done{opacity:.64;background:color-mix(in srgb,var(--cw-success) 6%,var(--cw-surface))}.visit-attraction-main{display:flex;align-items:center;gap:13px;min-width:0}.visit-attraction-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:13px;color:var(--cw-copper);font-weight:900}.visit-attraction-main small{color:var(--cw-muted);font-size:.62rem}.visit-attraction-main h3{margin:2px 0 5px;font-size:1rem;line-height:1.15}.visit-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:.55rem;font-weight:850;text-transform:uppercase}.visit-status.is-open{background:color-mix(in srgb,var(--cw-success) 12%,transparent);color:var(--cw-success)}.visit-status.is-closed{background:color-mix(in srgb,var(--cw-danger) 11%,transparent);color:var(--cw-danger)}
.visit-attraction-wait{display:flex;align-items:baseline;justify-content:center;gap:4px;color:var(--cw-copper)}.visit-attraction-wait strong{font-family:Georgia,"Times New Roman",serif;font-size:2rem}.visit-attraction-wait small,.visit-no-wait{color:var(--cw-muted);font-size:.62rem}.visit-attraction-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.visit-attraction-actions form{margin:0}
@media(max-width:980px){.visit-mode-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-suggestion-row{grid-template-columns:repeat(5,190px)}.visit-attraction-card{grid-template-columns:minmax(0,1fr) 75px auto}.visit-no-wait{display:none}.visit-attraction-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:720px){body:has(.visit-mode-shell) .site-header{display:none}body:has(.visit-mode-shell) .site-footer{display:none}.visit-mobile-topbar{position:sticky;top:0;z-index:60;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;border-bottom:1px solid var(--cw-line);background:color-mix(in srgb,var(--cw-bg) 90%,transparent);backdrop-filter:blur(18px)}.visit-mobile-topbar>a{max-width:75%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800}.visit-mode-container{width:min(100% - 24px,1180px);padding-top:24px;padding-bottom:90px}.visit-mode-header{align-items:flex-start;flex-direction:column;gap:10px}.visit-mode-header h1{font-size:clamp(2.5rem,14vw,4.3rem)}.visit-mode-header p{font-size:.86rem}.visit-mode-actions{width:100%}.visit-mode-actions form,.visit-mode-actions button{width:100%}.visit-mode-stats{margin:20px 0;gap:8px}.visit-mode-stats>div{padding:14px}.visit-mode-stats strong{font-size:1.2rem}.visit-suggestion-row{display:flex}.visit-preferences form{align-items:stretch;flex-direction:column}.visit-preferences label{justify-content:space-between}.visit-preferences button{width:100%}.visit-attraction-card{grid-template-columns:minmax(0,1fr) 58px;gap:10px;padding:13px}.visit-attraction-icon{width:38px;height:38px;flex-basis:38px}.visit-attraction-main h3{font-size:.94rem}.visit-attraction-wait strong{font-size:1.65rem}.visit-attraction-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.4fr}.visit-attraction-actions .button,.visit-attraction-actions form,.visit-attraction-actions form button{width:100%}.visit-attraction-actions .collection-done-chip{justify-content:center}.visit-list-section .section-heading h2{font-size:1.8rem}}
@media(max-width:380px){.visit-mode-stats{grid-template-columns:1fr 1fr}.visit-attraction-actions{grid-template-columns:1fr}}

/* Profile — v1.24.0 */
.profile-hero{padding:clamp(110px,13vw,170px) 0 44px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--cw-teal) 18%,transparent),transparent 30%),var(--cw-bg)}
.profile-hero-grid{display:flex;align-items:end;justify-content:space-between;gap:30px}.profile-identity{display:flex;align-items:center;gap:20px}.profile-avatar{width:92px;height:92px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:28px;background:var(--cw-surface);font-family:Georgia,"Times New Roman",serif;font-size:2.5rem;color:var(--cw-copper);box-shadow:var(--cw-shadow)}.profile-identity h1{margin:6px 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,6vw,5rem);line-height:.95}.profile-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--cw-muted);font-size:.75rem}.profile-actions{display:flex;flex-wrap:wrap;gap:9px}.profile-actions form{margin:0}
.profile-stats-strip{border-bottom:1px solid var(--cw-line);background:var(--cw-surface)}.profile-stats-grid{display:grid;grid-template-columns:repeat(5,1fr)}.profile-stats-grid>div{padding:22px;border-right:1px solid var(--cw-line)}.profile-stats-grid>div:first-child{border-left:1px solid var(--cw-line)}.profile-stats-grid strong{display:block;font-size:1.8rem}.profile-stats-grid span{color:var(--cw-muted);font-size:.66rem}
.profile-records-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.profile-record-card{min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;border:1px solid var(--cw-line);border-radius:24px;background:radial-gradient(circle at 80% 12%,color-mix(in srgb,var(--cw-copper) 12%,transparent),transparent 30%),var(--cw-surface)}.profile-record-card>span{color:var(--cw-muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.1em}.profile-record-card>strong{margin:9px 0;font-size:2rem}.profile-record-card>strong small{font-size:.75rem}.profile-record-card>a{color:var(--cw-copper);font-size:.78rem;font-weight:750}
.profile-progress-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.profile-progress-card{padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.profile-progress-head{display:flex;justify-content:space-between;gap:18px}.profile-progress-head span{display:block;color:var(--cw-muted);font-size:.62rem}.profile-progress-head strong{display:block;margin-top:4px}.profile-progress-head b{color:var(--cw-copper)}.profile-progress-bar{height:7px;margin:16px 0 9px;border-radius:99px;background:var(--cw-bg-soft);overflow:hidden}.profile-progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-brass))}.profile-progress-card small{color:var(--cw-muted)}
.profile-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.profile-panel{padding:26px;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-surface)}.profile-activity-list{display:grid;gap:8px}.profile-activity-list a{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--cw-line)}.profile-activity-list strong,.profile-activity-list span{display:block}.profile-activity-list span,.profile-activity-list time,.profile-empty{color:var(--cw-muted);font-size:.7rem}.profile-manufacturer-list{display:grid;gap:14px}.profile-manufacturer-list div{position:relative;padding-bottom:10px;border-bottom:1px solid var(--cw-line)}.profile-manufacturer-list strong,.profile-manufacturer-list span{display:block}.profile-manufacturer-list span{color:var(--cw-muted);font-size:.68rem}.profile-manufacturer-list i{display:block;height:4px;margin-top:8px;border-radius:99px;background:var(--cw-copper)}
.profile-visit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.profile-visit-grid a{min-height:130px;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.profile-visit-grid span,.profile-visit-grid small{color:var(--cw-muted);font-size:.65rem}.profile-visit-grid strong{margin:6px 0}
@media(max-width:900px){.profile-hero-grid{align-items:flex-start;flex-direction:column}.profile-stats-grid{grid-template-columns:repeat(3,1fr)}.profile-records-grid{grid-template-columns:1fr}.profile-dashboard-grid{grid-template-columns:1fr}.profile-visit-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.profile-identity{align-items:flex-start}.profile-avatar{width:70px;height:70px;border-radius:22px}.profile-stats-grid{grid-template-columns:1fr 1fr}.profile-progress-grid{grid-template-columns:1fr}.profile-visit-grid{grid-template-columns:1fr}}

/* Progression & coaster cards — v1.25.0 */
.progression-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.progression-coaster-card{position:relative;min-height:310px;display:flex;flex-direction:column;padding:18px;border:1px solid var(--cw-line);border-radius:24px;overflow:hidden;background:radial-gradient(circle at 78% 12%,color-mix(in srgb,var(--cw-teal) 18%,transparent),transparent 30%),var(--cw-surface);color:var(--cw-text);box-shadow:0 14px 34px rgba(0,0,0,.08);transition:transform .2s ease,border-color .2s ease}
.progression-coaster-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line))}
.progression-coaster-card.is-thrill{background:radial-gradient(circle at 78% 12%,color-mix(in srgb,var(--cw-copper) 18%,transparent),transparent 32%),var(--cw-surface)}
.progression-coaster-card.is-extreme{background:radial-gradient(circle at 78% 12%,rgba(214,91,71,.2),transparent 34%),var(--cw-surface)}
.progression-coaster-card.is-legend{background:radial-gradient(circle at 78% 12%,color-mix(in srgb,var(--cw-brass) 30%,transparent),transparent 34%),linear-gradient(145deg,var(--cw-surface),color-mix(in srgb,var(--cw-surface) 75%,var(--cw-copper)))}
.progression-card-tier{align-self:flex-start;padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.58rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.progression-card-symbol{margin:auto 0;text-align:center;font-size:3.2rem;filter:drop-shadow(0 8px 15px rgba(0,0,0,.15))}
.progression-card-copy span,.progression-card-copy small{display:block;color:var(--cw-muted);font-size:.65rem}.progression-card-copy strong{display:block;margin:5px 0;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1}
.progression-card-stats{display:flex;justify-content:space-between;gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid var(--cw-line);color:var(--cw-muted);font-size:.62rem}
.progression-badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.progression-badge{min-height:210px;padding:20px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.progression-badge-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:20px;border-radius:16px;background:color-mix(in srgb,var(--cw-copper) 14%,transparent);color:var(--cw-copper);font-size:1.4rem}.progression-badge>span,.progression-badge>small{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.progression-badge>strong{display:block;margin:6px 0 9px;font-size:1.05rem}.progression-badge>p{min-height:44px;margin:0 0 12px;color:var(--cw-muted);font-size:.72rem;line-height:1.5}
@media(max-width:1050px){.progression-card-grid,.progression-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.progression-card-grid,.progression-badge-grid{grid-template-columns:1fr}.progression-coaster-card{min-height:270px}}

/* Wishlist — v1.26.0 */
.wishlist-button.is-active{border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 12%,transparent);color:var(--cw-copper)}
.wishlist-groups{display:grid;gap:30px}.wishlist-group h3{margin:0 0 13px;font-size:1rem}.wishlist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.wishlist-card{min-height:145px;display:flex;flex-direction:column;justify-content:flex-end;padding:19px;border:1px solid var(--cw-line);border-radius:20px;background:radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 30%),var(--cw-surface);color:var(--cw-text);transition:transform .2s ease,border-color .2s ease}.wishlist-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line))}.wishlist-card.is-coaster{background:radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--cw-copper) 14%,transparent),transparent 30%),var(--cw-surface)}.wishlist-card>span{color:var(--cw-copper);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.wishlist-card>strong{margin:7px 0;font-size:1.1rem}.wishlist-card>small{color:var(--cw-muted);font-size:.69rem}
.collection-stats{grid-template-columns:repeat(4,minmax(0,180px))}
.park-detail-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.park-summary-stat.is-wishlist strong{color:var(--cw-copper)}
.visit-mode-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.visit-mode-stats>div.is-wishlist strong{color:var(--cw-copper)}
.visit-suggestion-row a.is-wishlisted{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));background:radial-gradient(circle at 80% 16%,color-mix(in srgb,var(--cw-copper) 18%,transparent),transparent 34%),var(--cw-surface)}.visit-suggestion-row a>b{margin-bottom:auto;color:var(--cw-copper);font-size:.57rem;text-transform:uppercase;letter-spacing:.08em}
.visit-attraction-card.is-wishlisted:not(.is-done){border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--cw-copper) 80%,transparent)}
.visit-wishlist-badge{display:inline-flex;margin:0 6px 4px 0;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 13%,transparent);color:var(--cw-copper);font-size:.55rem;font-weight:850;text-transform:uppercase}
@media(max-width:980px){.visit-mode-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-stats{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.wishlist-grid{grid-template-columns:1fr}.visit-mode-stats{grid-template-columns:1fr 1fr}}

/* Visit planning — v1.27.0 */
.visit-plan-details{position:relative}.visit-plan-details>summary{list-style:none;cursor:pointer}.visit-plan-details>summary::-webkit-details-marker{display:none}.visit-plan-form{position:absolute;z-index:30;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 34px));display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);box-shadow:0 24px 60px rgba(0,0,0,.2)}.visit-plan-form label{display:grid;gap:6px;color:var(--cw-muted);font-size:.68rem}.visit-plan-form input,.visit-plan-form textarea{width:100%;padding:10px 11px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);font:inherit}.visit-plan-notes{grid-column:1/-1}.visit-plan-form .button{grid-column:1/-1}.visit-planned-chip{border-color:color-mix(in srgb,var(--cw-teal) 45%,var(--cw-line));color:var(--cw-teal)}
.planned-visit-grid{display:grid;gap:12px}.planned-visit-card{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.planned-visit-date{display:grid;place-items:center;align-content:center;min-height:92px;border:1px solid var(--cw-line);border-radius:17px;background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-bg))}.planned-visit-date strong{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1}.planned-visit-date span{margin-top:4px;color:var(--cw-copper);font-size:.62rem;font-weight:850}.planned-visit-date small{color:var(--cw-muted);font-size:.6rem}.planned-visit-copy>span{color:var(--cw-copper);font-size:.62rem;font-weight:850;text-transform:uppercase}.planned-visit-copy h3{margin:4px 0 6px}.planned-visit-copy p,.planned-visit-copy small{margin:0;color:var(--cw-muted);font-size:.72rem}.planned-visit-copy small{display:block;margin-top:7px}.planned-visit-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.planned-visit-actions form{margin:0}
.profile-planned-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.profile-planned-card{min-height:140px;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--cw-teal) 14%,transparent),transparent 32%),var(--cw-surface)}.profile-planned-card time{color:var(--cw-copper);font-size:.68rem;font-weight:850}.profile-planned-card strong{margin:7px 0}.profile-planned-card small{color:var(--cw-muted);font-size:.65rem}
@media(max-width:820px){.planned-visit-card{grid-template-columns:72px minmax(0,1fr)}.planned-visit-actions{grid-column:1/-1;justify-content:flex-start}.profile-planned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.visit-plan-form{position:fixed;left:17px;right:17px;bottom:18px;top:auto;width:auto;grid-template-columns:1fr}.visit-plan-notes,.visit-plan-form .button{grid-column:auto}.planned-visit-card{grid-template-columns:1fr}.planned-visit-date{width:74px;min-height:74px}.profile-planned-grid{grid-template-columns:1fr}}

/* v1.27.1 — Park visit planner overlay fix */
.park-detail-hero,
.park-detail-hero .container,
.park-detail-hero-main,
.park-detail-actions{overflow:visible}
.park-detail-hero{position:relative;z-index:3}
.park-detail-summary{position:relative;z-index:1}
.visit-plan-details{z-index:50}
.visit-plan-details[open]{z-index:80}
.visit-plan-form{z-index:90}
@media(min-width:601px){
  .visit-plan-form{top:calc(100% + 12px);bottom:auto;max-height:min(520px,calc(100vh - 150px));overflow:auto}
}

/* Personalized recommendations — v1.28.0 */
.reco-hero{padding:clamp(110px,13vw,175px) 0 52px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--cw-copper) 17%,transparent),transparent 30%),linear-gradient(135deg,var(--cw-bg),var(--cw-surface))}
.reco-hero h1{max-width:950px;margin:7px 0 15px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,6.3rem);line-height:.93;letter-spacing:-.055em}.reco-hero p{max-width:760px;color:var(--cw-muted);line-height:1.7}.reco-hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.reco-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.reco-card{min-height:275px;display:flex;flex-direction:column;padding:20px;border:1px solid var(--cw-line);border-radius:23px;background:radial-gradient(circle at 82% 14%,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 32%),var(--cw-surface);color:var(--cw-text);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.reco-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));box-shadow:0 18px 42px rgba(0,0,0,.1)}.reco-card-coaster{background:radial-gradient(circle at 82% 14%,color-mix(in srgb,var(--cw-copper) 17%,transparent),transparent 32%),var(--cw-surface)}.reco-card-park{background:radial-gradient(circle at 82% 14%,color-mix(in srgb,var(--cw-teal) 18%,transparent),transparent 34%),var(--cw-surface)}
.reco-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.reco-card-top>span{color:var(--cw-muted);font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.reco-card-top>b{display:grid;place-items:center;min-width:45px;height:45px;padding:0 7px;border:1px solid color-mix(in srgb,var(--cw-copper) 30%,var(--cw-line));border-radius:15px;color:var(--cw-copper);font-size:.75rem}
.reco-card h3{margin:auto 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;line-height:1}.reco-card>p{margin:0;color:var(--cw-muted);font-size:.7rem}.reco-reasons{display:flex;flex-wrap:wrap;gap:5px;margin:15px 0}.reco-reasons span{padding:5px 7px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.55rem}.reco-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--cw-line);color:var(--cw-muted);font-size:.63rem}.reco-card-foot strong{color:var(--cw-copper)}
.profile-reco-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.profile-reco-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.profile-reco-card{position:relative;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end;padding:17px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.profile-reco-card>span,.profile-reco-card>small{color:var(--cw-muted);font-size:.62rem}.profile-reco-card>strong{margin:5px 0}.profile-reco-card>b{position:absolute;top:13px;right:13px;color:var(--cw-copper);font-size:.7rem}
.visit-personal-badge{display:inline-flex;margin:0 6px 4px 0;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--cw-teal) 13%,transparent);color:var(--cw-teal);font-size:.55rem;font-weight:850;text-transform:uppercase}
@media(max-width:1050px){.reco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-reco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.reco-grid,.profile-reco-grid{grid-template-columns:1fr}.reco-card{min-height:235px}.profile-reco-heading{align-items:flex-start;flex-direction:column}}

/* Admin catalogue — v1.29.0 */
.admin-hero{padding:115px 0 44px;border-bottom:1px solid var(--cw-line);background:linear-gradient(135deg,var(--cw-bg),var(--cw-surface))}.admin-hero-compact{padding-bottom:28px}.admin-hero h1{margin:7px 0;font-size:clamp(2.6rem,5vw,4.7rem)}.admin-hero p{color:var(--cw-muted)}.admin-tabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:34px}.admin-tabs a{flex:0 0 auto;padding:9px 13px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.7rem}.admin-tabs a.is-active{border-color:var(--cw-copper);color:var(--cw-copper)}
.admin-kpi-grid,.admin-quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.admin-kpi-grid a,.admin-quality-grid a{padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-kpi-grid span,.admin-quality-grid span,.admin-kpi-grid small{display:block;color:var(--cw-muted);font-size:.68rem}.admin-kpi-grid strong,.admin-quality-grid strong{display:block;margin:8px 0;font-size:2rem}.admin-section-heading{margin-top:38px}.admin-recent-list{display:grid;gap:8px}.admin-recent-list a{display:flex;justify-content:space-between;padding:13px 15px;border:1px solid var(--cw-line);border-radius:14px}.admin-recent-list span{color:var(--cw-muted);font-size:.7rem}.admin-command-card{margin-top:34px;padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-command-card code{display:block;margin-top:8px;padding:10px;border-radius:10px;background:var(--cw-bg)}
.admin-search{display:flex;gap:9px;margin-bottom:18px}.admin-search input{flex:1;min-height:46px;padding:0 13px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-surface);color:var(--cw-text)}.admin-table-wrap{overflow:auto;border:1px solid var(--cw-line);border-radius:18px}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:13px 15px;border-bottom:1px solid var(--cw-line);text-align:left}.admin-table th{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase}.admin-table td small{display:block;color:var(--cw-muted)}.admin-pagination{margin-top:18px}
.admin-form{display:grid;gap:28px}.admin-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.admin-form label,.admin-translation-grid label{display:grid;gap:6px;color:var(--cw-muted);font-size:.68rem}.admin-form input,.admin-form select,.admin-form textarea,.admin-translation-grid input,.admin-translation-grid textarea{width:100%;padding:11px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-surface);color:var(--cw-text);font:inherit}.admin-check{display:flex!important;align-items:center}.admin-check input{width:auto}.admin-span-2{grid-column:1/-1}.admin-translation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.admin-translation-grid fieldset{padding:17px;border:1px solid var(--cw-line);border-radius:17px}.admin-translation-grid legend{padding:0 7px;color:var(--cw-copper);font-weight:800}.admin-translation-grid label+label{margin-top:10px}.admin-form-actions{display:flex;flex-wrap:wrap;gap:9px}.admin-success,.admin-error{margin-bottom:18px;padding:12px 15px;border:1px solid var(--cw-line);border-radius:12px}.admin-success{color:var(--cw-success)}.admin-error{color:var(--cw-danger)}
@media(max-width:760px){.admin-kpi-grid,.admin-quality-grid,.admin-form-grid,.admin-translation-grid{grid-template-columns:1fr}.admin-span-2{grid-column:auto}.admin-search{flex-direction:column}}

/* Admin media & enrichment — v1.30.0 */
.admin-media-panel,.admin-source-panel,.admin-enrichment-panel{margin-bottom:30px;padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}
.admin-media-upload{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}.admin-media-upload label,.admin-enrichment-form label{display:grid;gap:6px;color:var(--cw-muted);font-size:.68rem}.admin-media-upload input,.admin-media-upload select,.admin-enrichment-form select{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text)}.admin-media-upload small{color:var(--cw-muted)}.admin-media-local-preview{width:100%;max-height:180px;margin-top:7px;object-fit:cover;border:1px solid var(--cw-line);border-radius:12px}.admin-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:24px}.admin-media-card{overflow:hidden;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-bg)}.admin-media-preview{position:relative;aspect-ratio:16/10;background:var(--cw-bg-soft)}.admin-media-preview img{width:100%;height:100%;object-fit:cover}.admin-media-preview span{position:absolute;left:9px;bottom:9px;padding:5px 7px;border-radius:999px;background:rgba(0,0,0,.7);color:white;font-size:.58rem;font-weight:800;text-transform:uppercase}.admin-media-meta{display:grid;gap:3px;padding:12px}.admin-media-meta small{color:var(--cw-muted);font-size:.62rem}.admin-media-card form{padding:0 12px 12px}.admin-media-empty{margin-top:18px;padding:26px;border:1px dashed var(--cw-line);border-radius:15px;color:var(--cw-muted);text-align:center}
.admin-source-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-source-list>div{padding:14px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.admin-source-list strong,.admin-source-list span,.admin-source-list small{display:block}.admin-source-list span{margin:5px 0;word-break:break-all}.admin-source-list small{color:var(--cw-muted);font-size:.62rem}.admin-source-list a{display:inline-block;margin-top:8px;color:var(--cw-copper);font-size:.68rem;font-weight:750}
.admin-enrichment-form{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.admin-enrichment-form p{flex:1 0 100%;margin:0;color:var(--cw-muted);font-size:.74rem}.admin-enrichment-form .admin-check{display:flex!important;align-items:center}.admin-media-quality-grid{margin-top:13px}.admin-no-media-badge{display:inline-block;margin-left:7px;padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--cw-danger) 10%,transparent);color:var(--cw-danger);font-size:.55rem;font-weight:800;text-transform:uppercase}
@media(max-width:900px){.admin-media-grid,.admin-source-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.admin-media-upload,.admin-media-grid,.admin-source-list{grid-template-columns:1fr}.admin-media-upload .admin-span-2{grid-column:auto}.admin-enrichment-form{align-items:stretch;flex-direction:column}.admin-enrichment-form>*{width:100%}}

/* User administration — v1.31.0 */
.admin-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.admin-user-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin-bottom:22px}.admin-user-kpis>div{padding:17px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.admin-user-kpis span{display:block;color:var(--cw-muted);font-size:.64rem}.admin-user-kpis strong{display:block;margin-top:7px;font-size:1.7rem}
.admin-user-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px 180px auto;gap:9px;margin-bottom:18px}.admin-user-filters input,.admin-user-filters select,.admin-user-action-card select{min-height:46px;padding:0 12px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-surface);color:var(--cw-text)}
.admin-user-role,.admin-user-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.58rem;font-weight:850;text-transform:uppercase}.admin-user-role{background:var(--cw-bg-soft);color:var(--cw-muted)}.admin-user-role.is-admin{background:color-mix(in srgb,var(--cw-copper) 13%,transparent);color:var(--cw-copper)}.admin-user-status.is-active{background:color-mix(in srgb,var(--cw-success) 12%,transparent);color:var(--cw-success)}.admin-user-status.is-suspended{background:color-mix(in srgb,var(--cw-danger) 12%,transparent);color:var(--cw-danger)}
.admin-user-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-user-summary article{padding:18px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.admin-user-summary span{display:block;color:var(--cw-muted);font-size:.62rem}.admin-user-summary strong{display:block;margin-top:7px}
.admin-user-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}.admin-user-action-card{padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-user-action-card h2{margin:7px 0}.admin-user-action-card p{min-height:45px;color:var(--cw-muted);font-size:.72rem}.admin-user-action-card form{display:flex;gap:9px}.admin-user-action-card select{flex:1}.admin-user-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}.admin-recent-list>div{display:flex;justify-content:space-between;gap:15px;padding:13px 15px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-surface)}.admin-recent-list>div span{color:var(--cw-muted);font-size:.7rem}
@media(max-width:850px){.admin-user-filters{grid-template-columns:1fr 1fr}.admin-user-summary{grid-template-columns:1fr 1fr}.admin-user-actions-grid,.admin-user-history-grid{grid-template-columns:1fr}}
@media(max-width:560px){.admin-user-filters,.admin-user-summary{grid-template-columns:1fr}.admin-user-action-card form{flex-direction:column}}

/* Community contributions — v1.32.0 */
.contribution-button{border-color:color-mix(in srgb,var(--cw-teal) 35%,var(--cw-line))}.contribution-hero{padding:clamp(110px,13vw,175px) 0 48px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--cw-teal) 16%,transparent),transparent 30%),var(--cw-bg)}.contribution-hero h1{max-width:900px;margin:8px 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,6vw,5.6rem);line-height:.95}.contribution-hero p{max-width:760px;color:var(--cw-muted);line-height:1.65}.contribution-back{display:inline-block;margin-bottom:28px;color:var(--cw-muted);font-size:.7rem}.contribution-layout{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:28px;align-items:start}.contribution-target-card{position:sticky;top:100px;padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.contribution-target-card>span,.contribution-target-card>small{display:block;color:var(--cw-muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.08em}.contribution-target-card>strong{display:block;margin:8px 0 5px;font-size:1.25rem}.contribution-target-card p{margin:20px 0 0;color:var(--cw-muted);font-size:.72rem;line-height:1.55}.contribution-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-surface)}.contribution-form label{display:grid;gap:6px;color:var(--cw-muted);font-size:.68rem}.contribution-form input,.contribution-form select,.contribution-form textarea,.contribution-admin-edit input,.contribution-admin-edit textarea,.contribution-decision-grid textarea{width:100%;padding:11px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);font:inherit}.contribution-form small{color:var(--cw-muted)}.contribution-current,.contribution-proposed,.contribution-form>label:nth-of-type(4),.contribution-form>label:nth-of-type(5),.contribution-form-actions,.contribution-form>.admin-error{grid-column:1/-1}.contribution-current{padding:16px;border:1px dashed var(--cw-line);border-radius:14px;background:var(--cw-bg)}.contribution-current>span{display:block;color:var(--cw-muted);font-size:.62rem;text-transform:uppercase}.contribution-current p{margin:8px 0 0;white-space:pre-wrap}.contribution-form-actions{display:flex;flex-wrap:wrap;gap:9px}.contribution-list{display:grid;gap:13px}.contribution-list-card{padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.contribution-list-head{display:flex;justify-content:space-between;gap:18px}.contribution-list-head span{display:block;color:var(--cw-muted);font-size:.62rem}.contribution-list-head strong{display:block;margin-top:5px}.contribution-status{display:inline-flex;align-items:center;align-self:flex-start;padding:5px 8px;border-radius:999px;font-size:.57rem;font-weight:850;text-transform:uppercase}.contribution-status.is-pending{background:color-mix(in srgb,var(--cw-copper) 13%,transparent);color:var(--cw-copper)}.contribution-status.is-approved{background:color-mix(in srgb,var(--cw-success) 12%,transparent);color:var(--cw-success)}.contribution-status.is-rejected{background:color-mix(in srgb,var(--cw-danger) 12%,transparent);color:var(--cw-danger)}.contribution-diff-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.contribution-diff-mini>div{padding:13px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.contribution-diff-mini span{color:var(--cw-muted);font-size:.6rem;text-transform:uppercase}.contribution-diff-mini p{margin:6px 0 0;white-space:pre-wrap;word-break:break-word}.contribution-list-card footer{display:flex;justify-content:space-between;gap:15px;margin-top:13px;color:var(--cw-muted);font-size:.64rem}.contribution-admin-filters{grid-template-columns:minmax(220px,1fr) 180px 180px auto}.contribution-review-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:24px;align-items:start}.contribution-review-meta{position:sticky;top:100px;padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.contribution-review-meta>span{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase}.contribution-review-meta>a>strong{display:block;margin:6px 0 14px}.contribution-review-meta dl{display:grid;gap:10px}.contribution-review-meta dl>div{padding-top:10px;border-top:1px solid var(--cw-line)}.contribution-review-meta dt{color:var(--cw-muted);font-size:.6rem}.contribution-review-meta dd{margin:4px 0 0}.contribution-review-meta dd small{display:block;color:var(--cw-muted)}.contribution-review-main{display:grid;gap:18px}.contribution-review-diff{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.contribution-review-diff article{min-width:0;padding:15px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.contribution-review-diff article.is-proposed{border-color:color-mix(in srgb,var(--cw-copper) 38%,var(--cw-line))}.contribution-review-diff span{color:var(--cw-muted);font-size:.6rem;text-transform:uppercase}.contribution-review-diff pre{margin:9px 0 0;white-space:pre-wrap;word-break:break-word;font:inherit;line-height:1.5}.contribution-user-message,.contribution-reviewed-card{padding:17px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.contribution-user-message span,.contribution-reviewed-card>span{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase}.contribution-user-message p,.contribution-reviewed-card p{margin:8px 0 0}.contribution-admin-edit{display:grid;gap:11px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.contribution-admin-edit label,.contribution-decision-grid label{display:grid;gap:6px;color:var(--cw-muted);font-size:.68rem}.contribution-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contribution-decision-grid form{display:grid;gap:10px;padding:17px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.contribution-reviewed-card strong,.contribution-reviewed-card small{display:block;margin-top:5px}.contribution-reviewed-card small{color:var(--cw-muted)}
@media(max-width:900px){.contribution-layout,.contribution-review-layout{grid-template-columns:1fr}.contribution-target-card,.contribution-review-meta{position:static}.contribution-review-diff{grid-template-columns:1fr}.contribution-admin-filters{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.contribution-form,.contribution-diff-mini,.contribution-decision-grid,.contribution-admin-filters{grid-template-columns:1fr}.contribution-form>*{grid-column:auto!important}.contribution-list-head,.contribution-list-card footer{flex-direction:column}}

/* RCDB park matching & catalogue classification — v1.33.0 */
.admin-inline-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.admin-inline-actions form{margin:0}.admin-rcdb-manual{position:relative}.admin-rcdb-manual>summary{list-style:none;cursor:pointer}.admin-rcdb-manual>summary::-webkit-details-marker{display:none}.admin-rcdb-manual form{position:absolute;z-index:20;right:0;top:calc(100% + 6px);display:flex;gap:6px;width:250px;padding:10px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-surface);box-shadow:0 14px 35px rgba(0,0,0,.18)}.admin-rcdb-manual input,.admin-classification-search select{min-height:42px;padding:0 10px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-text)}.admin-rcdb-manual input{min-width:0;flex:1}.admin-classification-search{display:grid;grid-template-columns:minmax(220px,1fr) 220px auto auto}.admin-classification-badge{display:inline-flex;margin:5px 0 0 6px;padding:4px 7px;border-radius:999px;font-size:.55rem;font-weight:850;text-transform:uppercase}.admin-classification-badge.is-review{background:color-mix(in srgb,var(--cw-copper) 13%,transparent);color:var(--cw-copper)}.admin-classification-badge.is-coaster{background:color-mix(in srgb,var(--cw-success) 12%,transparent);color:var(--cw-success)}
@media(max-width:900px){.admin-classification-search{grid-template-columns:1fr 1fr}.admin-inline-actions{min-width:340px}}
@media(max-width:600px){.admin-classification-search{grid-template-columns:1fr}.admin-rcdb-manual form{position:fixed;left:16px;right:16px;bottom:16px;top:auto;width:auto}}

.admin-rcdb-candidate-grid{display:grid;gap:10px}.admin-rcdb-candidate-grid article{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.admin-rcdb-candidate-grid h3{margin:4px 0}.admin-rcdb-candidate-grid p,.admin-rcdb-candidate-grid small,.admin-rcdb-candidate-grid span{color:var(--cw-muted);font-size:.68rem}@media(max-width:700px){.admin-rcdb-candidate-grid article{align-items:flex-start;flex-direction:column}}

/* Attraction multi-source enrichment — v1.34.0 */
.admin-source-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;width:100%;margin-top:12px}.admin-source-result-grid>div{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.admin-source-result-grid strong{font-size:.7rem;text-transform:uppercase}.admin-source-result-grid span,.admin-source-result-grid small{color:var(--cw-muted);font-size:.62rem}

/* Legacy-style catalogue sync — v1.35.0 */
.admin-catalog-sync-bar,.admin-catalog-sync-dashboard,.admin-park-sync-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px;padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 30%),var(--cw-surface)}.admin-catalog-sync-bar h2,.admin-catalog-sync-dashboard h2,.admin-park-sync-card h2{margin:5px 0}.admin-catalog-sync-bar p,.admin-catalog-sync-dashboard p,.admin-park-sync-card p{max-width:780px;margin:0;color:var(--cw-muted);font-size:.73rem;line-height:1.6}.admin-park-sync-card small{display:block;margin-top:8px;color:var(--cw-muted)}.admin-sync-source-badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.56rem;font-weight:850;text-transform:uppercase}.admin-sync-source-badge.is-linked{background:color-mix(in srgb,var(--cw-success) 12%,transparent);color:var(--cw-success)}.admin-sync-source-badge.is-unlinked{background:color-mix(in srgb,var(--cw-muted) 12%,transparent);color:var(--cw-muted)}.admin-park-sync-table td:last-child{min-width:320px}
@media(max-width:760px){.admin-catalog-sync-bar,.admin-catalog-sync-dashboard,.admin-park-sync-card{align-items:flex-start;flex-direction:column}.admin-catalog-sync-bar form,.admin-catalog-sync-bar .button{width:100%}.admin-park-sync-table td:last-child{min-width:280px}}

/* Park RCDB & coaster analysis visibility — v1.37.0 */
.admin-park-state-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,220px) minmax(170px,220px) auto;gap:9px}.admin-park-state-filters select{min-height:42px;padding:0 10px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-text)}.admin-state-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:.58rem;font-weight:850;text-transform:uppercase;white-space:nowrap}.admin-state-badge.is-success,.admin-park-health-item .is-success{color:var(--cw-success)}.admin-state-badge.is-warning,.admin-park-health-item .is-warning{color:var(--cw-copper)}.admin-state-badge.is-error,.admin-park-health-item .is-error{color:#c94f4f}.admin-state-badge.is-muted,.admin-park-health-item .is-muted{color:var(--cw-muted)}.admin-state-badge.is-success{background:color-mix(in srgb,var(--cw-success) 12%,transparent)}.admin-state-badge.is-warning{background:color-mix(in srgb,var(--cw-copper) 13%,transparent)}.admin-state-badge.is-error{background:rgba(201,79,79,.11)}.admin-state-badge.is-muted{background:color-mix(in srgb,var(--cw-muted) 11%,transparent)}.admin-park-state-table td small{display:block;margin-top:6px;max-width:270px;color:var(--cw-muted);font-size:.61rem;line-height:1.4}.admin-park-health-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.admin-park-health-item{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:17px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.admin-park-health-item>span{color:var(--cw-muted);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.admin-park-health-item>strong{font-size:.88rem}.admin-park-health-item small{color:var(--cw-muted);font-size:.64rem}.admin-park-health-item .button{margin-top:auto}
@media(max-width:900px){.admin-park-state-filters{grid-template-columns:1fr 1fr}.admin-park-state-table td:last-child{min-width:320px}}
@media(max-width:600px){.admin-park-state-filters{grid-template-columns:1fr}.admin-park-health-card{grid-template-columns:1fr}}

/* Global coaster analysis console — v1.38.0 */
.admin-global-analysis-layout{display:grid;gap:22px}.admin-analysis-launcher,.admin-analysis-console-card,.admin-analysis-history{padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-analysis-launcher h2,.admin-analysis-console-card h2,.admin-analysis-history h2{margin:5px 0 7px;font-family:Georgia,serif}.admin-analysis-launcher p{margin:0;color:var(--cw-muted);font-size:.76rem}.admin-analysis-mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.admin-analysis-mode{position:relative;cursor:pointer}.admin-analysis-mode input{position:absolute;opacity:0;pointer-events:none}.admin-analysis-mode span{min-height:132px;display:flex;flex-direction:column;gap:6px;padding:15px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg);transition:.18s ease}.admin-analysis-mode strong{font-size:.77rem}.admin-analysis-mode small{color:var(--cw-muted);font-size:.64rem;line-height:1.4}.admin-analysis-mode b{margin-top:auto;color:var(--cw-copper);font-family:Georgia,serif;font-size:1.55rem}.admin-analysis-mode input:checked+span{border-color:var(--cw-copper);box-shadow:inset 0 0 0 1px var(--cw-copper),0 8px 24px color-mix(in srgb,var(--cw-copper) 10%,transparent)}.admin-analysis-start{grid-column:1/-1;margin-top:4px}.admin-analysis-console-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.admin-analysis-status{padding:6px 10px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.62rem;font-weight:850;text-transform:uppercase}.admin-analysis-status[data-status=running]{color:var(--cw-copper);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line))}.admin-analysis-status[data-status=completed]{color:var(--cw-success)}.admin-analysis-progress-line{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin:20px 0}.admin-analysis-progress-track{height:10px;border-radius:999px;background:var(--cw-bg-soft);overflow:hidden}.admin-analysis-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-brass));transition:width .25s ease}.admin-analysis-progress-line strong{min-width:42px;text-align:right;font-size:.8rem}.admin-analysis-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.admin-analysis-kpis>div{padding:11px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.admin-analysis-kpis span,.admin-analysis-current span{display:block;color:var(--cw-muted);font-size:.56rem;text-transform:uppercase;letter-spacing:.06em}.admin-analysis-kpis strong{font-size:1rem}.admin-analysis-current{margin:12px 0;padding:12px 14px;border-left:3px solid var(--cw-copper);background:var(--cw-bg);border-radius:0 12px 12px 0}.admin-analysis-current strong{font-size:.8rem}.admin-analysis-console{height:360px;overflow:auto;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#0b0e0d;color:#d8dfd8;font-family:Consolas,"Courier New",monospace;font-size:.68rem;line-height:1.55}.admin-analysis-console-line{display:grid;grid-template-columns:70px minmax(150px,240px) 1fr;gap:10px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.05)}.admin-analysis-console-line span{color:#758279}.admin-analysis-console-line strong{color:#dbe5dc}.admin-analysis-console-line p{margin:0;color:#aab6ad}.admin-analysis-console-line.is-success strong{color:#69c995}.admin-analysis-console-line.is-warning strong{color:#e4ac66}.admin-analysis-console-line.is-error strong{color:#e47c78}.admin-analysis-console-empty{display:grid;place-items:center;height:100%;color:#718078}.admin-analysis-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.admin-analysis-empty-state{padding:35px;text-align:center;color:var(--cw-muted)}.admin-analysis-empty-state strong{display:block;color:var(--cw-text);margin-bottom:5px}.admin-analysis-empty-state p{margin:0}.admin-analysis-history-list{display:grid;gap:8px}.admin-analysis-history-list article{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.admin-analysis-history-list small{display:block;color:var(--cw-muted);font-size:.62rem}.admin-analysis-history-list b{font-size:.72rem}
@media(max-width:900px){.admin-analysis-mode-grid{grid-template-columns:1fr 1fr}.admin-analysis-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.admin-analysis-mode-grid{grid-template-columns:1fr}.admin-analysis-kpis{grid-template-columns:1fr 1fr}.admin-analysis-console{height:300px}.admin-analysis-console-line{grid-template-columns:1fr}.admin-analysis-console-line span{font-size:.58rem}.admin-analysis-console-head{flex-direction:column}.admin-analysis-history-list article{grid-template-columns:1fr auto}}

/* v1.39.0 — catalogue manuel */
.admin-heading-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-heading-actions h1{margin-bottom:0}.admin-form select,.admin-search select{min-width:0}@media(max-width:768px){.admin-heading-actions{align-items:stretch}.admin-heading-actions .button{width:100%;justify-content:center}.admin-park-state-filters{grid-template-columns:1fr}.admin-form-grid{grid-template-columns:1fr}.admin-span-2{grid-column:auto}}

/* Manual catalog actions — v1.40.0 */
.button-danger{background:var(--cw-danger);color:#fff;border-color:color-mix(in srgb,var(--cw-danger) 78%,#000)}.button-danger:hover{border-color:var(--cw-danger);box-shadow:0 8px 24px color-mix(in srgb,var(--cw-danger) 22%,transparent)}.admin-catalog-action-panel,.admin-danger-zone{margin:18px 0;padding:18px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);display:flex;justify-content:space-between;align-items:center;gap:18px}.admin-catalog-action-panel h2,.admin-danger-zone h2{margin:4px 0 5px;font-family:Georgia,serif;font-size:1.25rem}.admin-catalog-action-panel p,.admin-danger-zone p{margin:0;color:var(--cw-muted);font-size:.7rem;max-width:720px}.admin-danger-zone{border-color:color-mix(in srgb,var(--cw-danger) 34%,var(--cw-line));background:color-mix(in srgb,var(--cw-danger) 5%,var(--cw-surface))}
@media(max-width:700px){.admin-catalog-action-panel,.admin-danger-zone{align-items:flex-start;flex-direction:column}.admin-catalog-action-panel .admin-inline-actions,.admin-danger-zone form,.admin-danger-zone .button{width:100%}}

/* Public coaster & attraction context — v1.41.0 */
.detail-context-section{padding-top:42px;padding-bottom:42px}.detail-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.detail-context-card{min-width:0;padding:24px;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-surface);box-shadow:0 14px 38px color-mix(in srgb,#000 7%,transparent)}.detail-context-card h2{margin:7px 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.04}.detail-context-card>p{margin:0 0 18px;color:var(--cw-muted);font-size:.78rem;line-height:1.6}.detail-context-card>.button{margin-top:18px}.detail-context-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:14px;border-top:1px solid var(--cw-line)}.detail-context-meta span{color:var(--cw-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.detail-context-meta strong{max-width:65%;text-align:right;font-size:.75rem}.detail-completeness{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;margin:18px 0}.detail-completeness i{height:7px;border-radius:999px;background:var(--cw-bg-soft);border:1px solid var(--cw-line)}.detail-completeness i.is-known{border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line));background:linear-gradient(90deg,var(--cw-copper),var(--cw-brass))}.coaster-live-card>small:last-child,.attraction-live-card>small:last-child{opacity:.82}.coaster-identity-list strong,.attraction-identity-list strong{overflow-wrap:anywhere}
@media(max-width:768px){.detail-context-grid{grid-template-columns:1fr}.detail-context-section{padding-block:28px}.detail-context-card{padding:20px}.collection-detail-actions{gap:7px}.collection-detail-actions form,.collection-detail-actions .button{min-width:0}}
@media(max-width:480px){.detail-context-card{border-radius:18px}.detail-context-meta{align-items:flex-start;flex-direction:column}.detail-context-meta strong{max-width:none;text-align:left}.detail-completeness{gap:4px}.coaster-facts-grid strong,.attraction-facts-grid strong{font-size:1rem}.collection-detail-actions{display:grid;grid-template-columns:1fr 1fr}.collection-detail-actions form,.collection-detail-actions form .button,.collection-detail-actions>a.button{width:100%}.collection-detail-actions .collection-done-chip{grid-column:1/-1}}

/* Park public insights — v1.42.0 */
.park-insights-section{padding-top:42px;padding-bottom:42px}.park-insights-heading{margin-bottom:20px}.park-insights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.park-insight-card{min-width:0;padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.park-insight-card>span{display:block;color:var(--cw-muted);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.park-insight-card>strong{display:block;margin:8px 0 4px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1}.park-insight-card>small{display:block;color:var(--cw-muted);font-size:.68rem;line-height:1.45}.park-type-breakdown{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding:16px 18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.park-type-breakdown>span{color:var(--cw-muted);font-size:.64rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.park-type-breakdown>div{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.park-type-chip{display:inline-flex;gap:7px;align-items:center;padding:7px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.68rem}.park-type-chip strong{color:var(--cw-copper)}.park-detail-status{flex-wrap:wrap}.park-detail-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:980px){.park-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.park-detail-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.park-insights-grid{grid-template-columns:1fr 1fr}.park-type-breakdown{align-items:flex-start;flex-direction:column}.park-type-breakdown>div{justify-content:flex-start}.park-detail-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.park-insights-grid{grid-template-columns:1fr}.park-detail-summary-grid{grid-template-columns:1fr 1fr}.park-insight-card{padding:17px}.park-type-chip{max-width:100%;overflow-wrap:anywhere}}

/* Live freshness & wait history — v1.43.0 */
.wait-history-section{padding-top:46px;padding-bottom:46px}.wait-history-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.wait-history-heading>div:first-child{min-width:0}.wait-history-summary{display:grid;grid-template-columns:repeat(3,minmax(80px,1fr));gap:8px;min-width:min(360px,100%)}.wait-history-summary span{padding:10px 12px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-surface)}.wait-history-summary small,.wait-history-summary strong{display:block}.wait-history-summary small{color:var(--cw-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.wait-history-summary strong{margin-top:4px;font-size:.78rem}.wait-history-chart{height:230px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(10px,1fr);align-items:end;gap:4px;padding:18px 14px 12px;border:1px solid var(--cw-line);border-radius:22px;background:linear-gradient(to top,var(--cw-bg-soft),var(--cw-surface));overflow-x:auto}.wait-history-point{height:100%;min-width:10px;display:grid;grid-template-rows:1fr 18px;align-items:end;gap:5px}.wait-history-point>span{display:block;align-self:end;width:100%;min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--cw-copper),var(--cw-brass));opacity:.9}.wait-history-point small{display:block;overflow:hidden;color:var(--cw-muted);font-size:.52rem;text-align:center;white-space:nowrap}.wait-history-empty{padding:28px;border:1px dashed var(--cw-line-strong);border-radius:20px;background:var(--cw-surface);text-align:center}.wait-history-empty strong{display:block}.wait-history-empty p{margin:6px 0 0;color:var(--cw-muted);font-size:.75rem}.is-live-stale .park-attraction-live{opacity:.58}.is-live-stale .park-wait-time{opacity:.45}
@media(max-width:768px){.wait-history-heading{align-items:flex-start;flex-direction:column}.wait-history-summary{width:100%;min-width:0}.wait-history-chart{height:205px}}
@media(max-width:480px){.wait-history-summary{grid-template-columns:1fr 1fr 1fr}.wait-history-summary span{padding:9px}.wait-history-chart{height:180px;padding-inline:10px}.wait-history-point small{display:none}.wait-history-point{grid-template-rows:1fr}}

.wait-height-1{height:5%}.wait-height-2{height:10%}.wait-height-3{height:15%}.wait-height-4{height:20%}.wait-height-5{height:25%}.wait-height-6{height:30%}.wait-height-7{height:35%}.wait-height-8{height:40%}.wait-height-9{height:45%}.wait-height-10{height:50%}.wait-height-11{height:55%}.wait-height-12{height:60%}.wait-height-13{height:65%}.wait-height-14{height:70%}.wait-height-15{height:75%}.wait-height-16{height:80%}.wait-height-17{height:85%}.wait-height-18{height:90%}.wait-height-19{height:95%}.wait-height-20{height:100%}

/* Park map integration — v1.44.0 */
.park-map-preview-v144{padding-top:52px;padding-bottom:52px}.park-map-preview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.park-map-preview-heading h2{margin:6px 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3vw,3rem);letter-spacing:-.03em}.park-map-preview-heading p{max-width:720px;margin:0;color:var(--cw-muted)}.park-map-embed-shell{height:min(62vh,560px);min-height:390px;overflow:hidden;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}.park-map-embed-shell iframe{display:block;width:100%;height:100%;border:0}.park-map-preview-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px;padding:0 4px;color:var(--cw-muted);font-size:.64rem}.park-map-preview-meta span{text-transform:uppercase;letter-spacing:.08em}.park-map-preview-meta strong{color:var(--cw-text);font-weight:750}
@media(max-width:768px){.park-map-preview-v144{padding-block:36px}.park-map-preview-heading{align-items:flex-start;flex-direction:column}.park-map-preview-heading .button{width:100%}.park-map-embed-shell{height:62vh;min-height:420px;border-radius:19px}}
@media(max-width:420px){.park-map-embed-shell{height:68vh;min-height:430px;border-radius:16px}.park-map-preview-meta{align-items:flex-start;flex-direction:column;gap:2px}}


/* Visit Mode mobile cockpit — v1.45.0 */
.visit-filter-bar{display:flex;gap:8px;overflow-x:auto;margin:0 0 16px;padding:3px 1px 7px;scrollbar-width:none}.visit-filter-bar::-webkit-scrollbar{display:none}.visit-filter-bar button{flex:0 0 auto;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);padding:9px 13px;font:inherit;font-size:.7rem;font-weight:800;cursor:pointer}.visit-filter-bar button.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 14%,var(--cw-surface));color:var(--cw-text)}.visit-filter-empty{margin:12px 0 20px;padding:20px;border:1px dashed var(--cw-line);border-radius:18px;color:var(--cw-muted);text-align:center}.visit-attraction-card[hidden]{display:none!important}.visit-mobile-dock{display:none}
@media(max-width:768px){.visit-mode-shell{padding-bottom:82px}.visit-mode-actions{display:flex;width:100%;gap:8px}.visit-mode-actions>a,.visit-mode-actions form,.visit-mode-actions form button{flex:1;width:100%}.visit-mobile-dock{position:fixed;z-index:950;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));display:flex;justify-content:center;gap:6px;padding:7px;border:1px solid var(--cw-line);border-radius:20px;background:color-mix(in srgb,var(--cw-surface) 94%,transparent);box-shadow:0 15px 38px rgba(0,0,0,.25);backdrop-filter:blur(18px)}.visit-mobile-dock a{flex:1;min-width:0;padding:7px 5px;border-radius:14px;color:var(--cw-muted);text-align:center;text-decoration:none}.visit-mobile-dock a:active{background:color-mix(in srgb,var(--cw-copper) 14%,transparent)}.visit-mobile-dock span,.visit-mobile-dock strong{display:block}.visit-mobile-dock span{font-size:1.15rem;line-height:1.1;color:var(--cw-copper)}.visit-mobile-dock strong{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;text-transform:uppercase;letter-spacing:.04em}.visit-filter-bar{position:sticky;z-index:20;top:0;margin-inline:-2px;padding-top:9px;background:linear-gradient(var(--cw-bg) 72%,transparent)}}

/* Visit Mode smart suggestions — v1.46.0 */
.visit-suggestion-reasons{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.visit-suggestion-reasons em,.visit-new-badge{display:inline-flex;align-items:center;width:max-content;border:1px solid color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 9%,transparent);color:var(--cw-copper);font-size:.58rem;font-style:normal;font-weight:800;line-height:1;padding:5px 7px}.visit-new-badge{margin:4px 5px 0 0}


/* Collection dashboard — v1.47.0 */
.collection-stats-v147{grid-template-columns:repeat(6,minmax(0,1fr))}.collection-overview-section{padding-block:46px}.collection-overview-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:stretch}.collection-overview-grid>article{padding:24px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.collection-overview-grid h2{margin:7px 0 8px;font-family:Georgia,serif;font-size:clamp(2rem,3vw,3rem)}.collection-overview-grid p{margin:0;color:var(--cw-muted)}.collection-overview-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.collection-highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.collection-highlight-grid>div{padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.collection-highlight-grid span,.collection-highlight-grid strong,.collection-highlight-grid small{display:block}.collection-highlight-grid span{color:var(--cw-muted);font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.collection-highlight-grid strong{margin:7px 0 4px;font-family:Georgia,serif;font-size:1.55rem;overflow-wrap:anywhere}.collection-highlight-grid small{color:var(--cw-muted);font-size:.65rem;line-height:1.45}.collection-filter-bar{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.collection-filter-bar button{border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);padding:8px 11px;font:inherit;font-size:.68rem;font-weight:800;cursor:pointer}.collection-filter-bar button.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 12%,var(--cw-surface));color:var(--cw-text)}.collection-filter-empty{margin:0 0 16px;padding:18px;border:1px dashed var(--cw-line);border-radius:16px;color:var(--cw-muted);text-align:center}.collection-columns [hidden],.wishlist-group[hidden]{display:none!important}
@media(max-width:980px){.collection-stats-v147{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-overview-grid{grid-template-columns:1fr}.collection-history-heading,.collection-wishlist-heading{align-items:flex-start;flex-direction:column}.collection-filter-bar{justify-content:flex-start}}
@media(max-width:600px){.collection-stats-v147{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-highlight-grid{grid-template-columns:1fr 1fr}.collection-filter-bar{flex-wrap:nowrap;max-width:100%;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.collection-filter-bar::-webkit-scrollbar{display:none}.collection-filter-bar button{flex:0 0 auto}.collection-overview-actions .button{width:100%}}
@media(max-width:390px){.collection-highlight-grid{grid-template-columns:1fr}.collection-stats-v147{grid-template-columns:1fr 1fr}}


/* Progression hub — v1.48.0 */
.progression-hub-hero{position:relative;padding:72px 0 58px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 78% 35%,color-mix(in srgb,var(--cw-copper) 16%,transparent),transparent 30%),linear-gradient(180deg,var(--cw-bg-soft),var(--cw-bg));overflow:hidden}.progression-hub-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:50px;align-items:center}.progression-hub-hero h1{margin:12px 0 14px;font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.5rem);line-height:.95;letter-spacing:-.05em}.progression-hub-hero p{max-width:720px;margin:0;color:var(--cw-muted);font-size:1.02rem}.progression-hub-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.progression-level-orbit{position:relative;width:245px;aspect-ratio:1;margin:auto;border:1px solid var(--cw-line-strong);border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 55px color-mix(in srgb,var(--cw-copper) 10%,transparent)}.progression-level-orbit:before,.progression-level-orbit:after{content:"";position:absolute;border:1px solid var(--cw-line);border-radius:50%}.progression-level-orbit:before{inset:20px}.progression-level-orbit:after{inset:43px}.progression-level-orbit>div{position:relative;z-index:2;text-align:center}.progression-level-orbit small,.progression-level-orbit span{display:block;color:var(--cw-muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.1em}.progression-level-orbit strong{display:block;margin:4px;font-family:Georgia,serif;font-size:3.5rem;color:var(--cw-copper)}.progression-hub-stats{border-bottom:1px solid var(--cw-line);background:var(--cw-surface)}.progression-hub-stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}.progression-hub-stat-grid>div{padding:20px 24px;border-right:1px solid var(--cw-line)}.progression-hub-stat-grid>div:last-child{border-right:0}.progression-hub-stat-grid span,.progression-hub-stat-grid strong{display:block}.progression-hub-stat-grid span{color:var(--cw-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.progression-hub-stat-grid strong{margin-top:3px;font-family:Georgia,serif;font-size:1.7rem}.progression-skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.progression-skill-card{padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.progression-skill-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.progression-skill-head span,.progression-skill-head strong{display:block}.progression-skill-head span{color:var(--cw-copper);font-size:.63rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.progression-skill-head strong{margin-top:4px;font-family:Georgia,serif;font-size:1.35rem}.progression-skill-head b{font-size:.75rem;white-space:nowrap}.progression-skill-card p{min-height:42px;margin:12px 0;color:var(--cw-muted);font-size:.78rem}.progression-skill-bar,.progression-next-bar,.progression-badge-progress{height:7px;border-radius:999px;background:var(--cw-bg-soft);overflow:hidden}.progression-skill-bar i,.progression-next-bar i,.progression-badge-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-copper-strong))}.progression-skill-card>small{display:block;margin-top:8px;color:var(--cw-muted);font-size:.65rem}.progression-next-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.progression-next-grid article{padding:19px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.progression-next-top{display:flex;justify-content:space-between;gap:10px;color:var(--cw-copper);font-size:.62rem;font-weight:850;text-transform:uppercase}.progression-next-grid article>strong{display:block;margin:14px 0 5px;font-family:Georgia,serif;font-size:1.2rem}.progression-next-grid p{min-height:55px;margin:0 0 14px;color:var(--cw-muted);font-size:.74rem}.progression-next-grid small{display:block;margin-top:7px;color:var(--cw-muted);font-size:.63rem}.progression-hub-heading{align-items:flex-start}.progression-tier-summary{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.progression-tier-summary span{padding:7px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.64rem;font-weight:800}.progression-tier-summary b{margin-left:4px;color:var(--cw-copper)}.progression-card-grid-full{grid-template-columns:repeat(3,minmax(0,1fr))}.progression-badge-grid-all .progression-badge.is-locked{opacity:.58;filter:saturate(.45)}.progression-badge-grid-all .progression-badge.is-unlocked{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line))}.progression-badge-progress{margin-top:auto}.progression-badge-grid-all .progression-badge{display:flex;flex-direction:column}.progression-badge-grid-all .progression-badge p{flex:1}
@media(max-width:980px){.progression-hub-hero-grid{grid-template-columns:1fr 220px}.progression-level-orbit{width:200px}.progression-skill-grid{grid-template-columns:1fr 1fr}.progression-next-grid{grid-template-columns:1fr 1fr}.progression-card-grid-full{grid-template-columns:1fr 1fr}.progression-hub-heading{flex-direction:column}.progression-tier-summary{justify-content:flex-start}}
@media(max-width:700px){.progression-hub-hero{padding:52px 0 42px}.progression-hub-hero-grid{grid-template-columns:1fr}.progression-level-orbit{width:180px}.progression-hub-stat-grid{grid-template-columns:1fr 1fr}.progression-hub-stat-grid>div:nth-child(2){border-right:0}.progression-hub-stat-grid>div:nth-child(-n+2){border-bottom:1px solid var(--cw-line)}.progression-skill-grid,.progression-next-grid,.progression-card-grid-full{grid-template-columns:1fr}.progression-tier-summary{flex-wrap:nowrap;max-width:100%;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.progression-tier-summary::-webkit-scrollbar{display:none}.progression-tier-summary span{flex:0 0 auto}}


/* Progression explorer levels & filters — v1.49.0 */
.progression-level-orbit>div{width:72%}.progression-level-orbit em{display:block;margin-top:7px;color:var(--cw-muted);font-size:.57rem;font-style:normal;line-height:1.35}.progression-orbit-progress{height:5px;margin:8px auto 0;border-radius:999px;background:var(--cw-bg-soft);overflow:hidden}.progression-orbit-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-copper-strong))}.progression-hub-stat-grid small{display:block;margin-top:3px;color:var(--cw-muted);font-size:.58rem}.progression-badges-heading{align-items:flex-start}.progression-badge-filters{display:flex;max-width:100%;gap:6px;flex-wrap:wrap;justify-content:flex-end}.progression-badge-filters button{border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);padding:8px 11px;font:inherit;font-size:.64rem;font-weight:800;cursor:pointer}.progression-badge-filters button.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 12%,var(--cw-surface));color:var(--cw-text)}.progression-filter-empty{margin:0 0 18px;padding:18px;border:1px dashed var(--cw-line);border-radius:16px;color:var(--cw-muted);text-align:center}.progression-badge[hidden]{display:none!important}
@media(max-width:980px){.progression-badges-heading{flex-direction:column}.progression-badge-filters{justify-content:flex-start}}
@media(max-width:600px){.progression-badge-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.progression-badge-filters::-webkit-scrollbar{display:none}.progression-badge-filters button{flex:0 0 auto}}


/* Public explorer profiles — v1.50.0 */
.explorer-public-hero{padding:64px 0 48px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 80% 30%,color-mix(in srgb,var(--cw-copper) 14%,transparent),transparent 32%),var(--cw-bg-soft)}.explorer-public-hero-grid{display:flex;align-items:center;justify-content:space-between;gap:24px}.explorer-public-identity{display:flex;align-items:center;gap:18px}.explorer-public-actions{display:flex;gap:8px;flex-wrap:wrap}.explorer-rank-chip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.explorer-rank-chip span,.explorer-rank-chip strong,.explorer-rank-chip small{padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.64rem}.explorer-rank-chip span{color:var(--cw-copper);font-weight:850}.explorer-public-stats{grid-template-columns:repeat(5,1fr)}.explorer-public-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.explorer-public-badge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.explorer-manufacturer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.explorer-manufacturer-grid>div{padding:16px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.explorer-manufacturer-grid strong,.explorer-manufacturer-grid span{display:block}.explorer-manufacturer-grid span{margin-top:4px;color:var(--cw-muted);font-size:.65rem}.explorer-public-privacy-note p{margin:0;padding:16px 18px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);color:var(--cw-muted);font-size:.7rem;text-align:center}.profile-public-settings-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:24px;padding:24px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.profile-public-settings-card h2{margin:6px 0 8px;font-family:Georgia,serif}.profile-public-settings-card p{margin:0;color:var(--cw-muted)}.profile-public-url{margin-top:14px;padding:11px 12px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.profile-public-url span,.profile-public-url strong{display:block}.profile-public-url span{color:var(--cw-muted);font-size:.58rem;text-transform:uppercase}.profile-public-url strong{margin-top:4px;font-size:.67rem;overflow-wrap:anywhere}.profile-public-warning{margin-top:14px!important;color:var(--cw-danger)!important}.profile-visibility-form{display:grid;gap:8px}.profile-visibility-form label{position:relative}.profile-visibility-form input{position:absolute;opacity:0}.profile-visibility-form label>span{display:block;padding:12px 14px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);cursor:pointer}.profile-visibility-form input:checked+span{border-color:var(--cw-copper);box-shadow:inset 0 0 0 1px var(--cw-copper)}.profile-visibility-form input:disabled+span{opacity:.45;cursor:not-allowed}.profile-visibility-form strong,.profile-visibility-form small{display:block}.profile-visibility-form small{margin-top:3px;color:var(--cw-muted);font-size:.63rem}
@media(max-width:900px){.profile-public-settings-card{grid-template-columns:1fr}.explorer-public-badge-grid{grid-template-columns:1fr 1fr}.explorer-manufacturer-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.explorer-public-hero-grid,.explorer-public-identity{align-items:flex-start;flex-direction:column}.explorer-public-actions,.explorer-public-actions .button{width:100%}.explorer-public-stats{grid-template-columns:repeat(2,1fr)}.explorer-public-card-grid{grid-template-columns:1fr}.explorer-manufacturer-grid{grid-template-columns:1fr 1fr}}


/* Friends center — v1.51.0 */
.friends-hero{padding:58px 0 44px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 26%,color-mix(in srgb,var(--cw-copper) 14%,transparent),transparent 30%),var(--cw-bg-soft)}.friends-hero-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.friends-hero h1{margin:9px 0 10px;font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.8rem);line-height:.95}.friends-hero p{max-width:720px;margin:0;color:var(--cw-muted)}.friends-hero-stats{display:grid;grid-template-columns:1fr 1fr;min-width:260px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);overflow:hidden}.friends-hero-stats>div{padding:17px}.friends-hero-stats>div+div{border-left:1px solid var(--cw-line)}.friends-hero-stats strong,.friends-hero-stats span{display:block}.friends-hero-stats strong{font-family:Georgia,serif;font-size:1.8rem}.friends-hero-stats span{margin-top:3px;color:var(--cw-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.07em}.friends-search-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:24px;align-items:center;padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.friends-search-panel h2{margin:6px 0 7px;font-family:Georgia,serif}.friends-search-panel p{margin:0;color:var(--cw-muted)}.friends-search-form{display:flex;gap:8px}.friends-search-form input{min-width:0;flex:1;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-text);padding:11px 13px;font:inherit}.friends-search-results{margin-top:34px}.friends-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.friends-user-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.friends-user-avatar{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--cw-line-strong);border-radius:14px;background:var(--cw-bg-soft);color:var(--cw-copper);font-family:Georgia,serif;font-size:1.25rem}.friends-user-copy strong,.friends-user-copy span{display:block}.friends-user-copy strong{overflow-wrap:anywhere}.friends-user-copy span{margin-top:3px;color:var(--cw-muted);font-size:.65rem}.friends-user-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.friends-user-actions form{margin:0}.friends-state{display:inline-flex;padding:7px 9px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.62rem;font-weight:800}.friends-state.is-friends{border-color:color-mix(in srgb,#43a66b 45%,var(--cw-line));color:#43a66b}.friends-state.is-muted{opacity:.65}.friends-empty{padding:25px;border:1px dashed var(--cw-line);border-radius:18px;text-align:center;background:var(--cw-surface)}.friends-empty strong{display:block;font-family:Georgia,serif;font-size:1.15rem}.friends-empty p{margin:6px 0 0;color:var(--cw-muted)}.friends-requests-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.friends-request-panel{padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.friends-request-list{display:grid;gap:8px}.friends-request-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--cw-line)}.friends-request-row:first-child{border-top:0}.friends-request-row strong,.friends-request-row span{display:block}.friends-request-row span{margin-top:2px;color:var(--cw-muted);font-size:.63rem}.friends-request-actions{display:flex;gap:6px}.friends-panel-empty{margin:0;color:var(--cw-muted)}.profile-social-subsetting{display:grid;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid var(--cw-line)}.profile-social-subsetting>strong{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--cw-muted)}
@media(max-width:900px){.friends-search-panel{grid-template-columns:1fr}.friends-user-grid{grid-template-columns:1fr}.friends-requests-grid{grid-template-columns:1fr}}
@media(max-width:700px){.friends-hero-grid{align-items:flex-start;flex-direction:column}.friends-hero-stats{width:100%;min-width:0}.friends-search-form{flex-direction:column}.friends-search-form .button{width:100%}.friends-user-card{grid-template-columns:auto minmax(0,1fr)}.friends-user-actions{grid-column:1/-1;justify-content:flex-start}.friends-request-row{align-items:flex-start;flex-direction:column}.friends-request-actions{width:100%}.friends-request-actions form,.friends-request-actions .button{flex:1;width:100%}}


/* Social groups — v1.52.0 */
.groups-hero{padding:58px 0 44px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 24%,color-mix(in srgb,var(--cw-copper) 14%,transparent),transparent 30%),var(--cw-bg-soft)}.groups-hero-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.groups-hero h1,.group-detail-hero h1{margin:8px 0 10px;font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.7rem);line-height:.95}.groups-hero p,.group-detail-hero p{max-width:720px;margin:0;color:var(--cw-muted)}.groups-hero-stats{display:grid;grid-template-columns:1fr 1fr;min-width:260px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);overflow:hidden}.groups-hero-stats>div{padding:17px}.groups-hero-stats>div+div{border-left:1px solid var(--cw-line)}.groups-hero-stats strong,.groups-hero-stats span{display:block}.groups-hero-stats strong{font-family:Georgia,serif;font-size:1.8rem}.groups-hero-stats span{margin-top:3px;color:var(--cw-muted);font-size:.61rem;text-transform:uppercase}.groups-create-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(380px,1.2fr);gap:28px;padding:24px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.groups-create-card h2,.group-invite-panel h2{margin:6px 0 8px;font-family:Georgia,serif}.groups-create-card p,.group-invite-panel p{margin:0;color:var(--cw-muted)}.groups-create-form{display:grid;gap:10px}.groups-create-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.62rem;font-weight:800;text-transform:uppercase}.groups-create-form input,.groups-create-form textarea,.groups-create-form select{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit}.groups-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.groups-invite-grid,.groups-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.groups-invite-card,.groups-card{padding:17px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.groups-invite-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.groups-invite-card span,.groups-invite-card strong,.groups-invite-card small{display:block}.groups-invite-card span,.groups-invite-card small{color:var(--cw-muted);font-size:.62rem}.groups-invite-card strong{margin:4px 0;font-family:Georgia,serif;font-size:1.15rem}.groups-inline-actions{display:flex;gap:6px}.groups-card{display:block;color:inherit;text-decoration:none;transition:transform .16s ease,border-color .16s ease}.groups-card:hover{transform:translateY(-2px);border-color:var(--cw-copper)}.groups-card.is-owner{box-shadow:inset 3px 0 0 var(--cw-copper)}.groups-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.groups-card-top span,.groups-card-top em{font-size:.58rem;font-style:normal;text-transform:uppercase;letter-spacing:.07em}.groups-card-top span{color:var(--cw-copper);font-weight:850}.groups-card-top em{color:var(--cw-muted)}.groups-card>strong{display:block;margin-top:12px;font-family:Georgia,serif;font-size:1.25rem}.groups-card p{min-height:2.6em;margin:6px 0 12px;color:var(--cw-muted);font-size:.72rem}.groups-card small{color:var(--cw-muted)}.group-detail-hero{padding:42px 0;border-bottom:1px solid var(--cw-line);background:var(--cw-bg-soft)}.group-detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:20px}.group-detail-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.group-detail-meta span{padding:6px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.6rem}.group-detail-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:22px;align-items:start}.group-member-list{display:grid;gap:8px}.group-member-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.group-member-row strong,.group-member-row span{display:block}.group-member-row span{margin-top:3px;color:var(--cw-muted);font-size:.62rem}.group-member-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.group-invite-panel{margin-bottom:12px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-invite-friends,.group-pending-list{display:grid;gap:7px;margin-top:14px}.group-invite-friends>div,.group-pending-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid var(--cw-line)}.group-invite-friends>div:first-child,.group-pending-list>div:first-child{border-top:0}.group-invite-friends span,.group-pending-list span{color:var(--cw-muted);font-size:.62rem}.groups-mini-empty{margin-top:14px;padding:13px;border:1px dashed var(--cw-line);border-radius:12px;color:var(--cw-muted);font-size:.68rem}
@media(max-width:900px){.groups-create-card,.group-detail-layout{grid-template-columns:1fr}.groups-card-grid,.groups-invite-grid{grid-template-columns:1fr}}
@media(max-width:700px){.groups-hero-grid,.group-detail-head{align-items:flex-start;flex-direction:column}.groups-hero-stats{width:100%;min-width:0}.groups-form-row{grid-template-columns:1fr}.groups-invite-card{align-items:flex-start;flex-direction:column}.groups-inline-actions,.groups-inline-actions form,.groups-inline-actions .button{width:100%}.group-member-row{grid-template-columns:auto minmax(0,1fr)}.group-member-actions{grid-column:1/-1;justify-content:flex-start}.group-member-actions form,.group-member-actions .button{width:100%}}


/* Group administration — v1.52.1 */
.group-detail-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.group-admin-hero{padding:42px 0;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 28%,color-mix(in srgb,var(--cw-copper) 12%,transparent),transparent 30%),var(--cw-bg-soft)}.group-admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:20px}.group-admin-head h1{margin:8px 0 10px;font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,4.5rem);line-height:.96}.group-admin-head p{max-width:760px;margin:0;color:var(--cw-muted)}.group-admin-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:18px;align-items:start}.group-admin-main,.group-admin-sidebar{display:grid;gap:14px}.group-admin-sidebar{position:sticky;top:92px}.group-admin-panel{padding:21px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.group-admin-panel h2{margin:6px 0 7px;font-family:Georgia,serif;font-size:1.45rem}.group-admin-panel>p,.group-admin-panel-head p{margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.55}.group-admin-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:17px}.group-admin-count{min-width:42px;padding:8px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-copper);font-weight:850;text-align:center}.group-admin-form{display:grid;gap:12px}.group-admin-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.group-admin-form input,.group-admin-form textarea,.group-admin-form select,.group-role-form select{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit}.group-admin-form textarea{resize:vertical;min-height:110px}.group-admin-form-actions{display:flex;justify-content:flex-end;margin-top:3px}.group-admin-member-list{display:grid;gap:8px}.group-admin-member-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg)}.group-admin-member-copy strong,.group-admin-member-copy span{display:block}.group-admin-member-copy strong{overflow-wrap:anywhere}.group-admin-member-copy span{margin-top:3px;color:var(--cw-muted);font-size:.62rem}.group-admin-member-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.group-admin-member-actions form{margin:0}.group-role-form{display:flex;align-items:center;gap:6px}.group-role-form select{width:auto;min-width:125px;padding:8px 10px}.group-admin-access-list{display:grid;gap:0;margin-top:14px}.group-admin-access-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid var(--cw-line)}.group-admin-access-list>div:first-child{border-top:0}.group-admin-access-list span{color:var(--cw-muted);font-size:.64rem}.group-admin-access-list strong{max-width:58%;font-size:.7rem;text-align:right}.group-admin-danger{border-color:color-mix(in srgb,var(--cw-danger) 35%,var(--cw-line));background:color-mix(in srgb,var(--cw-danger) 4%,var(--cw-surface))}.group-admin-danger form{margin-top:16px}.group-admin-danger .button{width:100%}
@media(max-width:960px){.group-admin-layout{grid-template-columns:1fr}.group-admin-sidebar{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:700px){.group-detail-actions,.group-detail-actions form,.group-detail-actions .button{width:100%}.group-admin-head{align-items:flex-start;flex-direction:column}.group-admin-head>.button{width:100%}.group-admin-sidebar{grid-template-columns:1fr}.group-admin-member-row{grid-template-columns:auto minmax(0,1fr)}.group-admin-member-actions{grid-column:1/-1;justify-content:flex-start}.group-admin-member-actions form{flex:1}.group-admin-member-actions .button{width:100%}.group-role-form{width:100%;flex-wrap:wrap}.group-role-form select{flex:1;min-width:150px}.group-role-form .button{width:auto}.group-admin-form-actions .button{width:100%}}
@media(max-width:390px){.group-admin-panel{padding:17px}.group-role-form{display:grid;grid-template-columns:1fr}.group-role-form select,.group-role-form .button{width:100%}.group-admin-access-list>div{align-items:flex-start;flex-direction:column}.group-admin-access-list strong{max-width:none;text-align:left}}


/* Group visits — v1.53.0 */
.group-visits-section{margin-bottom:42px}.group-visits-heading{align-items:flex-end}.group-visit-create{margin:0 0 16px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-visit-form-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(150px,.55fr));gap:10px}.group-visit-form-grid label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.group-visit-form-grid input,.group-visit-form-grid select{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit}.group-visit-title-field{grid-column:1/-1}.group-visit-create-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}.group-visit-create-actions p{margin:0;color:var(--cw-muted);font-size:.66rem}.group-visit-grid{display:grid;gap:10px}.group-visit-card{display:grid;grid-template-columns:78px minmax(0,1fr) auto;grid-template-areas:"date copy stats" "date actions actions";gap:10px 14px;padding:16px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-visit-card.is-past{opacity:.72}.group-visit-date{grid-area:date;display:flex;min-height:104px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg)}.group-visit-date strong{font-family:Georgia,serif;font-size:2rem;color:var(--cw-copper);line-height:1}.group-visit-date span{margin-top:4px;font-size:.62rem;font-weight:850;letter-spacing:.08em}.group-visit-date small{margin-top:3px;color:var(--cw-muted);font-size:.58rem}.group-visit-copy{grid-area:copy}.group-visit-status{display:inline-flex;color:var(--cw-copper);font-size:.57rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.group-visit-copy h3{margin:5px 0 3px;font-family:Georgia,serif;font-size:1.3rem}.group-visit-copy>a{color:var(--cw-text);font-weight:750;text-decoration:none}.group-visit-copy>small{display:block;margin-top:4px;color:var(--cw-muted);font-size:.64rem}.group-visit-participants{grid-area:stats;display:grid;grid-template-columns:repeat(3,72px);border:1px solid var(--cw-line);border-radius:13px;overflow:hidden}.group-visit-participants>div{padding:10px 8px;text-align:center;background:var(--cw-bg)}.group-visit-participants>div+div{border-left:1px solid var(--cw-line)}.group-visit-participants strong,.group-visit-participants span{display:block}.group-visit-participants strong{font-family:Georgia,serif;font-size:1.25rem}.group-visit-participants span{margin-top:2px;color:var(--cw-muted);font-size:.52rem;text-transform:uppercase}.group-visit-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.group-visit-actions form{margin:0}.group-visits-empty{margin-bottom:6px}.group-visits-error{margin-bottom:12px}
@media(max-width:900px){.group-visit-form-grid{grid-template-columns:1fr 1fr}.group-visit-park-field{grid-column:1/-1}.group-visit-card{grid-template-columns:70px minmax(0,1fr);grid-template-areas:"date copy" "stats stats" "actions actions"}.group-visit-participants{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.group-visits-heading{align-items:flex-start;flex-direction:column}.group-visits-heading .button{width:100%}.group-visit-form-grid{grid-template-columns:1fr}.group-visit-park-field,.group-visit-title-field{grid-column:auto}.group-visit-create-actions{align-items:flex-start;flex-direction:column}.group-visit-create-actions .button{width:100%}.group-visit-card{grid-template-columns:64px minmax(0,1fr);padding:13px}.group-visit-date{min-height:92px}.group-visit-actions{justify-content:flex-start}.group-visit-actions form{flex:1}.group-visit-actions .button{width:100%}}


/* Group invite selector — v1.53.1 */
.group-invite-select-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:14px}.group-invite-select-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.group-invite-select-form select{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit}.group-invite-select-help{display:block;margin-top:8px;color:var(--cw-muted);font-size:.61rem;line-height:1.45}
@media(max-width:700px){.group-invite-select-form{grid-template-columns:1fr}.group-invite-select-form .button{width:100%}}


/* Dedicated group trip page — v1.54.0 */
.group-trip-hero{padding:42px 0;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 84% 26%,color-mix(in srgb,var(--cw-copper) 13%,transparent),transparent 31%),var(--cw-bg-soft)}.group-trip-hero-grid{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:18px;align-items:center;margin-top:20px}.group-trip-date-large{display:flex;min-height:112px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-trip-date-large strong{font-family:Georgia,serif;font-size:2.25rem;color:var(--cw-copper);line-height:1}.group-trip-date-large span{margin-top:5px;font-size:.65rem;font-weight:850;letter-spacing:.08em}.group-trip-date-large small{margin-top:4px;color:var(--cw-muted);font-size:.58rem}.group-trip-hero-copy h1{margin:6px 0 5px;font-family:Georgia,serif;font-size:clamp(2.4rem,4.5vw,4.4rem);line-height:.98}.group-trip-hero-copy>a{color:var(--cw-text);font-weight:800;text-decoration:none}.group-trip-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.group-trip-meta span{padding:6px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.6rem}.group-trip-hero-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.group-trip-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.group-trip-summary-card{padding:16px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);text-align:center}.group-trip-summary-card strong,.group-trip-summary-card span{display:block}.group-trip-summary-card strong{font-family:Georgia,serif;font-size:1.55rem}.group-trip-summary-card span{margin-top:3px;color:var(--cw-muted);font-size:.59rem;text-transform:uppercase;letter-spacing:.06em}.group-trip-summary-card.is-going{border-color:color-mix(in srgb,#43a66b 42%,var(--cw-line))}.group-trip-action-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-trip-action-panel h2{margin:5px 0 5px;font-family:Georgia,serif;font-size:1.25rem}.group-trip-action-panel p{margin:0;color:var(--cw-muted);font-size:.72rem}.group-trip-rsvp-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.group-trip-rsvp-actions form{margin:0}.group-trip-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);gap:18px;align-items:start}.group-trip-main,.group-trip-sidebar{display:grid;gap:12px}.group-trip-sidebar{position:sticky;top:92px}.group-trip-panel{padding:20px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.group-trip-panel h2{margin:6px 0 7px;font-family:Georgia,serif;font-size:1.35rem}.group-trip-panel>p{margin:0;color:var(--cw-muted);font-size:.72rem;line-height:1.5}.group-trip-member-list{display:grid;gap:7px}.group-trip-member-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.group-trip-member-row strong,.group-trip-member-row span{display:block}.group-trip-member-row>div:nth-child(2)>span{margin-top:3px;color:var(--cw-muted);font-size:.61rem}.group-trip-member-status{padding:6px 8px;border:1px solid var(--cw-line);border-radius:999px;font-size:.58rem;font-weight:850;white-space:nowrap}.group-trip-member-status.is-accepted{border-color:color-mix(in srgb,#43a66b 45%,var(--cw-line));color:#43a66b}.group-trip-member-status.is-declined{border-color:color-mix(in srgb,var(--cw-danger) 42%,var(--cw-line));color:var(--cw-danger)}.group-trip-member-status.is-pending{color:var(--cw-muted)}.group-trip-quick-actions{display:grid;gap:7px;margin-top:15px}.group-trip-quick-actions form,.group-trip-quick-actions .button{width:100%}.group-trip-edit-form{display:grid;gap:9px;margin-top:14px}.group-trip-edit-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.6rem;font-weight:800;text-transform:uppercase}.group-trip-edit-form input{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 11px;font:inherit}.group-trip-cancel-form{margin-top:8px}.group-trip-cancel-form .button{width:100%}
@media(max-width:920px){.group-trip-hero-grid{grid-template-columns:82px minmax(0,1fr)}.group-trip-hero-actions{grid-column:1/-1;justify-content:flex-start}.group-trip-layout{grid-template-columns:1fr}.group-trip-sidebar{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:700px){.group-trip-summary-grid{grid-template-columns:1fr 1fr}.group-trip-action-panel{align-items:flex-start;flex-direction:column}.group-trip-rsvp-actions,.group-trip-rsvp-actions form,.group-trip-rsvp-actions .button{width:100%}.group-trip-sidebar{grid-template-columns:1fr}.group-trip-member-row{grid-template-columns:auto minmax(0,1fr)}.group-trip-member-status{grid-column:1/-1;width:max-content}.group-trip-hero-grid{grid-template-columns:70px minmax(0,1fr)}.group-trip-date-large{min-height:94px}.group-trip-hero-actions,.group-trip-hero-actions .button{width:100%}}


/* Notification center — v1.55.0 */
.notification-button{position:relative}.notification-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-badge{position:absolute;top:-5px;right:-6px;display:grid;min-width:17px;height:17px;padding:0 4px;place-items:center;border:2px solid var(--cw-bg);border-radius:999px;background:var(--cw-copper);color:#fff;font-size:.5rem;font-weight:900;line-height:1}.notifications-hero{padding:58px 0 42px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 84% 24%,color-mix(in srgb,var(--cw-copper) 13%,transparent),transparent 30%),var(--cw-bg-soft)}.notifications-hero-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.notifications-hero h1{margin:8px 0 10px;font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.8rem);line-height:.95}.notifications-hero p{max-width:760px;margin:0;color:var(--cw-muted)}.notifications-hero-count{min-width:120px;padding:15px 18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);text-align:center}.notifications-hero-count strong,.notifications-hero-count span{display:block}.notifications-hero-count strong{font-family:Georgia,serif;font-size:2rem;color:var(--cw-copper)}.notifications-hero-count span{margin-top:3px;color:var(--cw-muted);font-size:.6rem;text-transform:uppercase;letter-spacing:.07em}.notifications-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.notifications-filters{display:flex;gap:6px}.notifications-filters a{padding:8px 12px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.65rem;font-weight:850;text-decoration:none}.notifications-filters a.is-active{border-color:var(--cw-copper);color:var(--cw-text);box-shadow:inset 0 0 0 1px var(--cw-copper)}.notifications-list{display:grid;gap:9px}.notification-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.notification-card.is-unread{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));box-shadow:inset 3px 0 0 var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 3%,var(--cw-surface))}.notification-icon{display:grid;width:45px;height:45px;place-items:center;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg);font-size:1.15rem}.notification-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notification-meta span{color:var(--cw-copper);font-size:.57rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.notification-meta time{color:var(--cw-muted);font-size:.58rem}.notification-copy h2{margin:4px 0 3px;font-family:Georgia,serif;font-size:1.07rem}.notification-copy p{margin:0;color:var(--cw-muted);font-size:.69rem;line-height:1.45}.notification-actions{display:flex;align-items:center;gap:6px}.notification-actions form{margin:0}.notifications-empty{padding:54px 20px;border:1px dashed var(--cw-line);border-radius:20px;background:var(--cw-surface);text-align:center}.notifications-empty>div{font-size:2rem}.notifications-empty strong{display:block;margin-top:10px;font-family:Georgia,serif;font-size:1.3rem}.notifications-empty p{margin:6px 0 0;color:var(--cw-muted)}.notifications-pagination{margin-top:18px}
@media(max-width:700px){.notifications-hero-grid{align-items:flex-start;flex-direction:column}.notifications-hero-count{width:100%}.notifications-toolbar{align-items:stretch;flex-direction:column}.notifications-filters{width:100%}.notifications-filters a{flex:1;text-align:center}.notifications-toolbar form,.notifications-toolbar .button{width:100%}.notification-card{grid-template-columns:auto minmax(0,1fr)}.notification-actions{grid-column:1/-1}.notification-actions,.notification-actions form,.notification-actions .button{width:100%}}


/* Park presence — v1.56.0 */
.park-presence-section{padding-top:34px;padding-bottom:34px}.park-presence-shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:22px;padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.park-presence-copy h2{margin:7px 0 8px;font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.45rem)}.park-presence-copy>p,.park-presence-control>p{margin:0;color:var(--cw-muted);line-height:1.55}.park-presence-stats{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}.park-presence-stats>div{min-width:130px;padding:12px 14px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.park-presence-stats strong,.park-presence-stats span{display:block}.park-presence-stats strong{font-family:Georgia,serif;font-size:1.45rem}.park-presence-stats span{margin-top:2px;color:var(--cw-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.park-presence-privacy-note{display:block;margin-top:13px;color:var(--cw-muted);font-size:.62rem}.park-presence-control{display:grid;gap:10px;padding:17px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-bg)}.park-presence-control>strong{font-family:Georgia,serif;font-size:1.15rem}.park-presence-current strong,.park-presence-current small{display:block}.park-presence-current strong{margin-top:7px;font-family:Georgia,serif;font-size:1.15rem}.park-presence-current small{margin-top:3px;color:var(--cw-muted);font-size:.62rem}.park-presence-active-chip{display:inline-flex;color:#43a66b;font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.park-presence-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.park-presence-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.6rem;font-weight:800;text-transform:uppercase}.park-presence-form select{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-surface);color:var(--cw-text);padding:9px 11px;font:inherit}.park-presence-people{margin-top:12px;padding:17px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.park-presence-people-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.park-presence-people-head strong{font-family:Georgia,serif;font-size:1.08rem}.park-presence-people-head span{color:var(--cw-muted);font-size:.63rem}.park-presence-people-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.park-presence-person{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.park-presence-person strong,.park-presence-person span{display:block;min-width:0}.park-presence-person strong{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.park-presence-person span{margin-top:2px;color:var(--cw-muted);font-size:.56rem}
@media(max-width:900px){.park-presence-shell{grid-template-columns:1fr}.park-presence-people-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.park-presence-shell{padding:17px}.park-presence-form{grid-template-columns:1fr}.park-presence-form .button{width:100%}.park-presence-people-head{align-items:flex-start;flex-direction:column}.park-presence-people-list{grid-template-columns:1fr}.park-presence-stats>div{flex:1;min-width:0}}


/* Group trip chat — v1.59.0 */
.trip-chat-section{margin:18px 0 28px}.trip-chat-heading{align-items:flex-end}.trip-chat-private{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.58rem;font-weight:800;white-space:nowrap}.trip-chat-shell{overflow:hidden;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.trip-chat-list{display:grid;gap:9px;max-height:540px;overflow:auto;padding:16px;background:color-mix(in srgb,var(--cw-bg) 74%,var(--cw-surface))}.trip-chat-message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:start;max-width:min(82%,760px)}.trip-chat-message.is-mine{grid-template-columns:minmax(0,1fr) 34px;margin-left:auto}.trip-chat-message.is-mine .trip-chat-avatar{grid-column:2;grid-row:1}.trip-chat-message.is-mine .trip-chat-bubble{grid-column:1;grid-row:1;border-color:color-mix(in srgb,var(--cw-copper) 38%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface))}.trip-chat-avatar{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:50%;background:var(--cw-bg);color:var(--cw-copper);font-size:.66rem;font-weight:900}.trip-chat-bubble{position:relative;padding:10px 12px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.trip-chat-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.trip-chat-meta strong{font-size:.68rem}.trip-chat-meta time{color:var(--cw-muted);font-size:.54rem;white-space:nowrap}.trip-chat-bubble>p{margin:0;color:var(--cw-text);font-size:.72rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.trip-chat-message.is-deleted{opacity:.66}.trip-chat-bubble>p.trip-chat-removed{color:var(--cw-muted);font-style:italic}.trip-chat-delete{margin-top:7px;padding:0;border:0;background:transparent;color:var(--cw-muted);font:inherit;font-size:.55rem;text-decoration:underline;cursor:pointer}.trip-chat-delete:hover{color:var(--cw-danger)}.trip-chat-empty{display:grid;place-items:center;gap:4px;min-height:120px;padding:18px;text-align:center}.trip-chat-empty strong{font-family:Georgia,serif;font-size:1rem}.trip-chat-empty span{color:var(--cw-muted);font-size:.68rem}.trip-chat-compose{padding:14px;border-top:1px solid var(--cw-line);background:var(--cw-surface)}.trip-chat-compose textarea{width:100%;min-height:78px;resize:vertical;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-text);padding:11px 12px;font:inherit;line-height:1.45}.trip-chat-compose-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.trip-chat-compose-footer small{color:var(--cw-muted);font-size:.58rem;line-height:1.4}.trip-chat-closed{padding:14px;border-top:1px solid var(--cw-line);color:var(--cw-muted);font-size:.65rem;text-align:center}
@media(max-width:700px){.trip-chat-heading{align-items:flex-start;flex-direction:column}.trip-chat-message{max-width:94%}.trip-chat-list{max-height:470px;padding:12px}.trip-chat-compose-footer{align-items:flex-start;flex-direction:column}.trip-chat-compose-footer .button{width:100%}}

/* Group meetups — v1.57.0 */
.meetups-section{margin:18px 0 28px}.meetups-heading{align-items:flex-end}.meetup-create-panel{margin:0 0 14px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.meetup-form-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(190px,.65fr) minmax(0,1fr);gap:10px}.meetup-form-grid label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.meetup-form-grid input,.meetup-form-grid select,.meetup-form-grid textarea{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 11px;font:inherit}.meetup-form-grid textarea{resize:vertical}.meetup-note-field{grid-column:1/-1}.meetup-create-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px}.meetup-create-footer p{margin:0;color:var(--cw-muted);font-size:.64rem}.meetup-grid{display:grid;gap:9px}.meetup-card{display:grid;grid-template-columns:76px minmax(0,1fr) auto;grid-template-areas:"time copy stats" "time participants actions";gap:10px 14px;padding:14px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.meetup-card.is-past{opacity:.68}.meetup-time{grid-area:time;display:flex;min-height:98px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.meetup-time strong{font-family:Georgia,serif;font-size:1.65rem;color:var(--cw-copper)}.meetup-time span{margin-top:2px;color:var(--cw-muted);font-size:.59rem}.meetup-copy{grid-area:copy}.meetup-copy>span{color:var(--cw-copper);font-size:.55rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.meetup-copy h3{margin:4px 0 3px;font-family:Georgia,serif;font-size:1.18rem}.meetup-copy>a{color:var(--cw-text);font-size:.72rem;font-weight:800;text-decoration:none}.meetup-copy>small{display:block;margin-top:4px;color:var(--cw-muted);font-size:.59rem}.meetup-copy p{margin:7px 0 0;color:var(--cw-muted);font-size:.69rem;line-height:1.45}.meetup-stats{grid-area:stats;display:grid;grid-template-columns:repeat(3,68px);border:1px solid var(--cw-line);border-radius:12px;overflow:hidden}.meetup-stats>div{padding:9px 6px;text-align:center;background:var(--cw-bg)}.meetup-stats>div+div{border-left:1px solid var(--cw-line)}.meetup-stats strong,.meetup-stats span{display:block}.meetup-stats strong{font-family:Georgia,serif;font-size:1.15rem}.meetup-stats span{margin-top:2px;color:var(--cw-muted);font-size:.49rem;text-transform:uppercase}.meetup-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.meetup-actions form{margin:0}.meetup-participants{grid-area:participants;display:flex;align-items:center;gap:4px}.meetup-participants span{width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:50%;background:var(--cw-bg);color:var(--cw-copper);font-size:.55rem;font-weight:850}
@media(max-width:900px){.meetup-form-grid{grid-template-columns:1fr 1fr}.meetup-title-field,.meetup-note-field{grid-column:1/-1}.meetup-card{grid-template-columns:68px minmax(0,1fr);grid-template-areas:"time copy" "stats stats" "participants actions"}.meetup-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.meetups-heading{align-items:flex-start;flex-direction:column}.meetups-heading .button{width:100%}.meetup-form-grid{grid-template-columns:1fr}.meetup-title-field,.meetup-note-field{grid-column:auto}.meetup-create-footer{align-items:flex-start;flex-direction:column}.meetup-create-footer .button{width:100%}.meetup-card{grid-template-columns:62px minmax(0,1fr);grid-template-areas:"time copy" "stats stats" "participants participants" "actions actions";padding:12px}.meetup-time{min-height:88px}.meetup-actions{justify-content:flex-start}.meetup-actions form{flex:1}.meetup-actions .button{width:100%}}

/* Ride Together — v1.58.0 */
.ride-together-section{padding-top:30px;padding-bottom:34px}.ride-together-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.ride-together-heading h2{margin:5px 0;font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.25rem)}.ride-together-heading p{margin:0;color:var(--cw-muted)}.ride-together-create{margin-bottom:13px;padding:16px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.ride-together-form-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(190px,.8fr) 110px;gap:9px}.ride-together-form-grid label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.58rem;font-weight:800;text-transform:uppercase}.ride-together-form-grid input,.ride-together-form-grid select{width:100%;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit}.ride-together-note{grid-column:1/-1}.ride-together-create-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.ride-together-create-footer small{color:var(--cw-muted);font-size:.6rem}.ride-together-list{display:grid;gap:8px}.ride-together-card{display:grid;grid-template-columns:72px minmax(0,1fr) 82px auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.ride-together-clock{display:grid;place-items:center;min-height:68px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.ride-together-clock strong{font-family:Georgia,serif;font-size:1.35rem;color:var(--cw-copper)}.ride-together-clock span{color:var(--cw-muted);font-size:.55rem}.ride-together-copy>span{color:var(--cw-copper);font-size:.52rem;font-weight:850;text-transform:uppercase}.ride-together-copy h3{margin:3px 0;font-family:Georgia,serif;font-size:1.05rem}.ride-together-copy small{color:var(--cw-muted);font-size:.58rem}.ride-together-copy p{margin:5px 0 0;color:var(--cw-muted);font-size:.66rem}.ride-together-capacity{text-align:center}.ride-together-capacity strong,.ride-together-capacity span{display:block}.ride-together-capacity strong{font-family:Georgia,serif;font-size:1.25rem}.ride-together-capacity span{color:var(--cw-muted);font-size:.5rem;text-transform:uppercase}.ride-together-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.ride-together-actions form{margin:0}
@media(max-width:800px){.ride-together-form-grid{grid-template-columns:1fr 1fr}.ride-together-note{grid-column:1/-1}.ride-together-card{grid-template-columns:66px minmax(0,1fr) 72px;grid-template-areas:"clock copy capacity" "actions actions actions"}.ride-together-clock{grid-area:clock}.ride-together-copy{grid-area:copy}.ride-together-capacity{grid-area:capacity}.ride-together-actions{grid-area:actions}}
@media(max-width:600px){.ride-together-heading{align-items:flex-start;flex-direction:column}.ride-together-heading .button{width:100%}.ride-together-form-grid{grid-template-columns:1fr}.ride-together-note{grid-column:auto}.ride-together-create-footer{align-items:flex-start;flex-direction:column}.ride-together-create-footer .button{width:100%}.ride-together-card{grid-template-columns:62px minmax(0,1fr);grid-template-areas:"clock copy" "capacity capacity" "actions actions"}.ride-together-capacity{text-align:left;display:flex;align-items:baseline;gap:5px}.ride-together-actions{justify-content:flex-start}.ride-together-actions form{flex:1}.ride-together-actions .button{width:100%}}

/* Group visit teams — v1.60.0 */
.trip-teams-section{margin:18px 0 28px}.trip-teams-heading{align-items:flex-end}.trip-teams-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.trip-team-count,.trip-team-readonly{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.58rem;font-weight:800;white-space:nowrap}.trip-team-create-details{position:relative}.trip-team-create-details>summary,.trip-team-manage-details>summary,.trip-team-assignments>summary{list-style:none;cursor:pointer}.trip-team-create-details>summary::-webkit-details-marker,.trip-team-manage-details>summary::-webkit-details-marker,.trip-team-assignments>summary::-webkit-details-marker{display:none}.trip-team-create-popover{position:absolute;z-index:22;right:0;top:calc(100% + 8px);width:min(440px,88vw);padding:15px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);box-shadow:0 22px 54px rgba(0,0,0,.22)}.trip-team-form{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:9px}.trip-team-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.56rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.trip-team-form input,.trip-team-form select,.trip-team-assignment-row select{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit}.trip-team-note-field{grid-column:1/-1}.trip-team-form-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.trip-team-form-footer small{color:var(--cw-muted);font-size:.57rem;line-height:1.45}.trip-team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:10px}.trip-team-card{position:relative;padding:15px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);overflow:hidden}.trip-team-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:transparent}.trip-team-card.is-current{border-color:color-mix(in srgb,var(--cw-copper) 46%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface))}.trip-team-card.is-current::before{background:var(--cw-copper)}.trip-team-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.trip-team-identity{display:flex;align-items:center;gap:10px;min-width:0}.trip-team-emoji{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);font-size:1.25rem}.trip-team-identity>div{min-width:0}.trip-team-identity>div>span{display:block;color:var(--cw-muted);font-size:.52rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.trip-team-identity h3{margin:3px 0 0;font-family:Georgia,serif;font-size:1.08rem;line-height:1.08;overflow-wrap:anywhere}.trip-team-members-count{padding:5px 7px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.52rem;font-weight:800;white-space:nowrap}.trip-team-note{margin:10px 0 0;color:var(--cw-muted);font-size:.66rem;line-height:1.45}.trip-team-members{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px}.trip-team-member-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:5px 8px 5px 5px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.58rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-team-member-chip b{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:color-mix(in srgb,var(--cw-copper) 12%,var(--cw-surface));color:var(--cw-copper);font-size:.5rem}.trip-team-no-members{color:var(--cw-muted);font-size:.61rem;font-style:italic}.trip-team-self-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid var(--cw-line)}.trip-team-self-actions form{margin:0}.trip-team-manage-details{margin-top:10px;padding-top:9px;border-top:1px dashed var(--cw-line)}.trip-team-manage-details>summary{color:var(--cw-muted);font-size:.57rem;font-weight:800;text-decoration:underline}.trip-team-manage-box{margin-top:9px;padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.trip-team-form.is-compact{grid-template-columns:minmax(0,1fr) 74px}.trip-team-form.is-compact>.button{grid-column:1/-1}.trip-team-delete-form{margin-top:6px}.trip-team-delete-form .button{width:100%}.trip-team-assignments{margin-top:12px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);overflow:hidden}.trip-team-assignments>summary{padding:13px 15px}.trip-team-assignments>summary span{display:grid;gap:2px}.trip-team-assignments>summary strong{font-family:Georgia,serif;font-size:.94rem}.trip-team-assignments>summary small{color:var(--cw-muted);font-size:.59rem}.trip-team-assignments[open]>summary{border-bottom:1px solid var(--cw-line)}.trip-team-assignment-list{display:grid;gap:6px;padding:12px}.trip-team-assignment-row{display:grid;grid-template-columns:auto minmax(120px,1fr) minmax(155px,.7fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.trip-team-assignment-user{min-width:0}.trip-team-assignment-user strong,.trip-team-assignment-user span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-team-assignment-user strong{font-size:.65rem}.trip-team-assignment-user span{margin-top:2px;color:var(--cw-muted);font-size:.55rem}.trip-team-empty{display:grid;place-items:center;gap:5px;min-height:145px;padding:22px;border:1px dashed var(--cw-line);border-radius:18px;background:var(--cw-surface);text-align:center}.trip-team-empty>span{font-size:1.55rem}.trip-team-empty strong{font-family:Georgia,serif;font-size:1.05rem}.trip-team-empty p{max-width:520px;margin:0;color:var(--cw-muted);font-size:.66rem;line-height:1.5}
@media(max-width:760px){.trip-teams-heading{align-items:flex-start;flex-direction:column}.trip-teams-heading-actions{width:100%;justify-content:flex-start}.trip-team-create-details{width:100%}.trip-team-create-details>summary{width:100%;text-align:center}.trip-team-create-popover{position:static;width:100%;margin-top:8px;box-shadow:none}.trip-team-grid{grid-template-columns:1fr}.trip-team-assignment-row{grid-template-columns:auto minmax(0,1fr)}.trip-team-assignment-row select,.trip-team-assignment-row>.button{grid-column:1/-1}.trip-team-assignment-row>.button{width:100%}}
@media(max-width:520px){.trip-team-form,.trip-team-form.is-compact{grid-template-columns:1fr}.trip-team-note-field,.trip-team-form-footer,.trip-team-form.is-compact>.button{grid-column:auto}.trip-team-form-footer{align-items:flex-start;flex-direction:column}.trip-team-form-footer .button,.trip-team-self-actions,.trip-team-self-actions form,.trip-team-self-actions .button{width:100%}.trip-team-card-head{align-items:flex-start;flex-direction:column}.trip-team-members-count{margin-left:52px}}

/* Group visit roadbook — v1.61.0 */
.trip-program-section{margin:18px 0 30px}.trip-program-heading{align-items:flex-end}.trip-program-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.trip-program-count,.trip-program-readonly{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.58rem;font-weight:800;white-space:nowrap}.trip-program-create-details{position:relative}.trip-program-create-details>summary,.trip-program-manage-details>summary{list-style:none;cursor:pointer}.trip-program-create-details>summary::-webkit-details-marker,.trip-program-manage-details>summary::-webkit-details-marker{display:none}.trip-program-create-popover{position:absolute;z-index:24;right:0;top:calc(100% + 8px);width:min(600px,92vw);padding:16px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface-solid);box-shadow:0 24px 62px rgba(0,0,0,.24)}.trip-program-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trip-program-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.56rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.trip-program-form input,.trip-program-form select,.trip-program-form textarea{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit;resize:vertical}.trip-program-wide-field{grid-column:1/-1}.trip-program-form-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px}.trip-program-form-footer small{max-width:390px;color:var(--cw-muted);font-size:.58rem;line-height:1.45}.trip-program-roadbook{display:grid;gap:8px}.trip-program-item{position:relative;display:grid;grid-template-columns:38px 76px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);overflow:hidden;transition:border-color .18s ease,background .18s ease}.trip-program-item.is-in-progress{border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface))}.trip-program-item.is-done{border-color:color-mix(in srgb,var(--cw-success) 45%,var(--cw-line));background:color-mix(in srgb,var(--cw-success) 5%,var(--cw-surface))}.trip-program-item.is-skipped{opacity:.72}.trip-program-rail{position:relative;display:flex;justify-content:center}.trip-program-rail span{position:relative;z-index:2;width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:50%;background:var(--cw-bg);color:var(--cw-copper);font-family:Georgia,serif;font-size:.72rem;font-weight:800}.trip-program-rail i{position:absolute;top:30px;bottom:-22px;width:1px;background:linear-gradient(var(--cw-line-strong),transparent)}.trip-program-item:last-child .trip-program-rail i{display:none}.trip-program-time{display:grid;align-content:start;justify-items:center;gap:1px;min-height:62px;padding:9px 6px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);text-align:center}.trip-program-time strong{font-family:Georgia,serif;font-size:1.15rem;color:var(--cw-copper);line-height:1}.trip-program-time span{margin-top:4px;color:var(--cw-muted);font-size:.52rem}.trip-program-main{min-width:0}.trip-program-main-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.trip-program-identity{display:flex;align-items:flex-start;gap:9px;min-width:0}.trip-program-type-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);font-size:1rem}.trip-program-identity>div{min-width:0}.trip-program-identity>div>span{display:block;color:var(--cw-muted);font-size:.51rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.trip-program-identity h3{margin:2px 0 0;font-family:Georgia,serif;font-size:1.05rem;line-height:1.12;overflow-wrap:anywhere}.trip-program-status{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.52rem;font-weight:850;white-space:nowrap}.trip-program-status.is-in-progress{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));color:var(--cw-copper)}.trip-program-status.is-done{border-color:color-mix(in srgb,var(--cw-success) 45%,var(--cw-line));color:var(--cw-success)}.trip-program-status.is-skipped{text-decoration:line-through}.trip-program-meta-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:9px}.trip-program-meta-row>span{display:inline-flex;align-items:center;padding:5px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.54rem}.trip-program-meta-row .trip-program-live{border-color:color-mix(in srgb,var(--cw-teal) 38%,var(--cw-line));color:var(--cw-teal);font-weight:800}.trip-program-note{margin:9px 0 0;color:var(--cw-muted);font-size:.65rem;line-height:1.5}.trip-program-manager-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding-top:10px;border-top:1px solid var(--cw-line)}.trip-program-status-form{display:flex;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.trip-program-status-form::-webkit-scrollbar{display:none}.trip-program-status-form button,.trip-program-order-actions button{border:1px solid var(--cw-line);border-radius:9px;background:var(--cw-bg);color:var(--cw-muted);padding:6px 8px;font:inherit;font-size:.53rem;font-weight:800;cursor:pointer;white-space:nowrap}.trip-program-status-form button span{margin-left:3px}.trip-program-status-form button.is-active{border-color:var(--cw-copper);color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-bg))}.trip-program-order-actions{display:flex;gap:4px;flex:0 0 auto}.trip-program-order-actions form{margin:0}.trip-program-order-actions button{min-width:30px;font-size:.72rem}.trip-program-manage-details{margin-top:8px}.trip-program-manage-details>summary{color:var(--cw-muted);font-size:.56rem;font-weight:800;text-decoration:underline}.trip-program-manage-box{margin-top:8px;padding:11px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.trip-program-form.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-program-delete-form{margin-top:7px}.trip-program-delete-form .button{width:100%}.trip-program-empty{display:grid;place-items:center;gap:5px;min-height:155px;padding:24px;border:1px dashed var(--cw-line);border-radius:18px;background:var(--cw-surface);text-align:center}.trip-program-empty>span{font-size:1.6rem}.trip-program-empty strong{font-family:Georgia,serif;font-size:1.06rem}.trip-program-empty p{max-width:560px;margin:0;color:var(--cw-muted);font-size:.66rem;line-height:1.5}
@media(max-width:800px){.trip-program-heading{align-items:flex-start;flex-direction:column}.trip-program-heading-actions{width:100%;justify-content:flex-start}.trip-program-create-details{width:100%}.trip-program-create-details>summary{width:100%;text-align:center}.trip-program-create-popover{position:static;width:100%;margin-top:8px;box-shadow:none}.trip-program-item{grid-template-columns:34px 68px minmax(0,1fr)}.trip-program-status-form button span{display:none}}
@media(max-width:600px){.trip-program-form,.trip-program-form.is-compact{grid-template-columns:1fr}.trip-program-wide-field,.trip-program-form-footer{grid-column:auto}.trip-program-form-footer{align-items:flex-start;flex-direction:column}.trip-program-form-footer .button{width:100%}.trip-program-item{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"rail time" "rail main"}.trip-program-rail{grid-area:rail}.trip-program-time{grid-area:time;display:flex;align-items:baseline;justify-content:flex-start;gap:7px;min-height:0;padding:6px 9px}.trip-program-time span{margin-top:0}.trip-program-main{grid-area:main}.trip-program-main-head{align-items:flex-start;flex-direction:column}.trip-program-status{margin-left:43px}.trip-program-manager-bar{align-items:flex-start;flex-direction:column}.trip-program-status-form,.trip-program-order-actions{width:100%}.trip-program-status-form button{flex:1}.trip-program-order-actions form{flex:1}.trip-program-order-actions button{width:100%}.trip-program-rail i{top:30px;bottom:-26px}}

/* Group polls — v1.62.0 */
.group-polls-section{margin:0 0 42px}.group-polls-heading{align-items:flex-end}.group-polls-heading-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.group-polls-count{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.61rem;font-weight:800}.group-poll-create{margin:0 0 16px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.group-poll-create-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:12px}.group-poll-create-grid label>span,.group-poll-options-field legend{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.group-poll-create-grid input[type=text],.group-poll-create-grid input[type=datetime-local],.group-poll-create-grid textarea{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit}.group-poll-create-grid textarea{resize:vertical}.group-poll-question-field,.group-poll-description-field,.group-poll-options-field{grid-column:1/-1}.group-poll-options-field{margin:0;padding:0;border:0}.group-poll-option-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.group-poll-deadline-field small{display:block;margin-top:5px;color:var(--cw-muted);font-size:.58rem;line-height:1.35}.group-poll-multiple-field{display:flex;align-items:center;gap:9px;align-self:end;min-height:43px;padding:10px 12px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.group-poll-multiple-field>span{margin:0!important;color:var(--cw-text)!important;text-transform:none!important;letter-spacing:0!important;font-size:.67rem!important}.group-poll-create-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:13px}.group-poll-create-actions p{margin:0;color:var(--cw-muted);font-size:.64rem;line-height:1.45}.group-polls-error{margin-bottom:12px}.group-poll-list{display:grid;gap:12px}.group-poll-card{padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);box-shadow:0 10px 26px rgba(0,0,0,.04)}.group-poll-card.is-closed{opacity:.92}.group-poll-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.group-poll-card-head form{margin:0}.group-poll-card-copy{min-width:0}.group-poll-status-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--cw-muted);font-size:.58rem}.group-poll-status{display:inline-flex;align-items:center;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.group-poll-status.is-open{color:var(--cw-teal);border-color:color-mix(in srgb,var(--cw-teal) 34%,var(--cw-line));background:color-mix(in srgb,var(--cw-teal) 7%,var(--cw-surface))}.group-poll-status.is-closed{color:var(--cw-muted);background:var(--cw-bg)}.group-poll-card h3{margin:7px 0 5px;font-family:Georgia,serif;font-size:clamp(1.22rem,2vw,1.55rem);line-height:1.15}.group-poll-card-copy>p{margin:0;color:var(--cw-muted);font-size:.7rem;line-height:1.5}.group-poll-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.group-poll-meta span{padding:5px 8px;border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.56rem}.group-poll-options{display:grid;gap:8px}.group-poll-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:11px 12px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg);cursor:pointer}.group-poll-card.is-closed .group-poll-option{cursor:default}.group-poll-option.is-selected{border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 7%,var(--cw-bg))}.group-poll-option.is-leading{box-shadow:inset 3px 0 0 var(--cw-copper)}.group-poll-option-main{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px}.group-poll-option-main input{margin:0}.group-poll-option-main strong{font-size:.7rem}.group-poll-option-main>span:last-child{color:var(--cw-muted);font-size:.58rem;white-space:nowrap}.group-poll-option-marker{display:grid;place-items:center;width:18px;height:18px;border:1px solid var(--cw-line);border-radius:50%;color:var(--cw-copper);font-size:.6rem;font-weight:900}.group-poll-result-track{height:6px;overflow:hidden;border-radius:999px;background:var(--cw-surface)}.group-poll-result-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));transition:width .25s ease}.group-poll-option>small{color:var(--cw-muted);font-size:.57rem;font-weight:800;text-align:right}.group-poll-vote-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}.group-polls-empty{display:grid;gap:4px}.group-polls-empty strong{color:var(--cw-text);font-family:Georgia,serif}.group-polls-empty span{font-size:.66rem}
@media(max-width:800px){.group-poll-create-grid{grid-template-columns:1fr}.group-poll-question-field,.group-poll-description-field,.group-poll-options-field{grid-column:auto}.group-poll-option-inputs{grid-template-columns:1fr 1fr}.group-poll-card-head{align-items:flex-start;flex-direction:column}.group-poll-card-head form,.group-poll-card-head .button{width:100%}}
@media(max-width:700px){.group-polls-heading{align-items:flex-start;flex-direction:column}.group-polls-heading-actions{width:100%}.group-polls-heading-actions .button{flex:1}.group-poll-option-inputs{grid-template-columns:1fr}.group-poll-create-actions{align-items:flex-start;flex-direction:column}.group-poll-create-actions .button{width:100%}.group-poll-card{padding:14px}.group-poll-vote-actions{align-items:stretch;flex-direction:column}.group-poll-vote-actions .button{width:100%}}


/* Visit Mode V2 — v1.63.0 */
.visit-mode-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.visit-mode-stats>div.is-roadbook strong{color:var(--cw-teal)}
.visit-v2-context-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:14px}.visit-v2-context-row span{display:inline-flex;align-items:center;min-height:29px;padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.6rem;font-weight:800}
.visit-v2-next-step{margin:24px 0 14px;padding:20px;border:1px solid color-mix(in srgb,var(--cw-copper) 34%,var(--cw-line));border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface)),var(--cw-surface));box-shadow:0 16px 38px rgba(0,0,0,.06)}.visit-v2-next-step-kicker{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px;color:var(--cw-muted);font-size:.59rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.visit-v2-next-step-kicker b{color:var(--cw-copper)}.visit-v2-next-step-grid{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:16px}.visit-v2-next-step-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-bg);font-size:1.65rem}.visit-v2-next-step-main small{display:block;color:var(--cw-muted);font-size:.62rem}.visit-v2-next-step-main h2{margin:5px 0 4px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.05}.visit-v2-next-step-main p{max-width:740px;margin:7px 0 0;color:var(--cw-muted);font-size:.7rem;line-height:1.5}.visit-v2-next-step-live{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:9px}.visit-v2-next-step-live>span:not(.visit-status){padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.6rem}.visit-v2-next-step-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.visit-v2-recommendation{display:grid;grid-template-columns:minmax(0,1fr) 115px auto;align-items:center;gap:18px;margin:14px 0 28px;padding:22px;border:1px solid color-mix(in srgb,var(--cw-teal) 38%,var(--cw-line));border-radius:26px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-teal) 9%,var(--cw-surface)),var(--cw-surface));box-shadow:0 18px 42px rgba(0,0,0,.07)}.visit-v2-recommendation-copy h2{margin:5px 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.75rem,4vw,3rem);line-height:1}.visit-v2-recommendation-copy>p{max-width:690px;margin:0;color:var(--cw-muted);font-size:.72rem;line-height:1.55}.visit-v2-recommendation-wait{display:grid;place-items:center;align-content:center;min-height:108px;padding:12px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-bg);text-align:center}.visit-v2-recommendation-wait>span{color:var(--cw-muted);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.visit-v2-recommendation-wait strong{display:block;margin:3px 0 -2px;color:var(--cw-teal);font-size:2.45rem;line-height:1}.visit-v2-recommendation-wait small{color:var(--cw-muted);font-size:.61rem}.visit-v2-recommendation-wait.is-unknown strong{color:var(--cw-muted)}.visit-v2-recommendation-actions{display:flex;flex-direction:column;gap:7px;min-width:150px}.visit-v2-recommendation-actions .button{width:100%;text-align:center}
.visit-v2-roadbook{margin:0 0 30px}.visit-v2-roadbook .split-heading{align-items:flex-end}.visit-v2-roadbook .section-heading p{max-width:720px;color:var(--cw-muted)}.visit-v2-roadbook-list{display:grid;gap:8px}.visit-v2-roadbook-item{display:grid;grid-template-columns:30px 42px minmax(0,1fr) 76px 32px;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.visit-v2-roadbook-item.is-in-progress{border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));box-shadow:inset 3px 0 0 var(--cw-copper)}.visit-v2-roadbook-item.is-done{opacity:.62}.visit-v2-roadbook-item.is-skipped{opacity:.48}.visit-v2-roadbook-index{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--cw-bg);color:var(--cw-muted);font-size:.57rem;font-weight:850}.visit-v2-roadbook-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);font-size:1.1rem}.visit-v2-roadbook-main{min-width:0}.visit-v2-roadbook-main small,.visit-v2-roadbook-main span{display:block;color:var(--cw-muted);font-size:.56rem}.visit-v2-roadbook-main strong{display:block;margin:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.visit-v2-roadbook-wait{text-align:right}.visit-v2-roadbook-wait strong{color:var(--cw-teal);font-size:.82rem}.visit-v2-roadbook-wait small{color:var(--cw-muted);font-size:.54rem}.visit-v2-roadbook-wait>span{color:var(--cw-muted)}.visit-v2-roadbook-link{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-copper);text-decoration:none;font-weight:900}
.visit-roadbook-badge{display:inline-flex;align-items:center;margin:5px 5px 0 0;padding:4px 7px;border:1px solid color-mix(in srgb,var(--cw-teal) 36%,var(--cw-line));border-radius:999px;background:color-mix(in srgb,var(--cw-teal) 7%,var(--cw-surface));color:var(--cw-teal);font-size:.54rem;font-weight:850}.visit-attraction-card.is-roadbook{border-color:color-mix(in srgb,var(--cw-teal) 28%,var(--cw-line))}.visit-suggestion-row>a.is-roadbook{border-color:color-mix(in srgb,var(--cw-teal) 36%,var(--cw-line));box-shadow:inset 0 3px 0 color-mix(in srgb,var(--cw-teal) 60%,transparent)}
@media(max-width:900px){.visit-v2-recommendation{grid-template-columns:minmax(0,1fr) 105px}.visit-v2-recommendation-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.visit-v2-next-step-grid{grid-template-columns:52px minmax(0,1fr)}.visit-v2-next-step-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.visit-v2-next-step-actions .button{width:100%;text-align:center}}
@media(max-width:720px){.visit-v2-context-row{margin-top:10px}.visit-v2-context-row span{font-size:.56rem}.visit-v2-next-step,.visit-v2-recommendation{margin-left:-2px;margin-right:-2px;padding:15px;border-radius:20px}.visit-v2-next-step-kicker{align-items:flex-start;flex-direction:column}.visit-v2-next-step-grid{grid-template-columns:44px minmax(0,1fr);gap:10px}.visit-v2-next-step-icon{width:44px;height:44px;border-radius:14px;font-size:1.25rem}.visit-v2-next-step-main h2{font-size:1.5rem}.visit-v2-recommendation{grid-template-columns:minmax(0,1fr) 86px;gap:11px}.visit-v2-recommendation-copy h2{font-size:1.7rem}.visit-v2-recommendation-copy>p{font-size:.65rem}.visit-v2-recommendation-wait{min-height:88px;padding:8px;border-radius:16px}.visit-v2-recommendation-wait>span{font-size:.48rem}.visit-v2-recommendation-wait strong{font-size:2rem}.visit-v2-roadbook .split-heading{align-items:flex-start;flex-direction:column}.visit-v2-roadbook .split-heading>.button{width:100%;text-align:center}.visit-v2-roadbook-item{grid-template-columns:26px 36px minmax(0,1fr) 28px;padding:9px;gap:8px}.visit-v2-roadbook-index{width:24px;height:24px}.visit-v2-roadbook-icon{width:34px;height:34px;border-radius:10px;font-size:.95rem}.visit-v2-roadbook-wait{grid-column:3;text-align:left}.visit-v2-roadbook-link{grid-column:4;grid-row:1/3}.visit-v2-roadbook-main strong{white-space:normal}.visit-mode-actions{flex-wrap:wrap}.visit-mode-actions>a,.visit-mode-actions form{min-width:calc(50% - 4px)}}
@media(max-width:470px){.visit-v2-recommendation{grid-template-columns:1fr}.visit-v2-recommendation-wait{grid-template-columns:auto auto auto;justify-content:center;gap:7px;min-height:0}.visit-v2-recommendation-wait strong{margin:0;font-size:1.45rem}.visit-v2-recommendation-actions{grid-template-columns:1fr}.visit-v2-next-step-actions{grid-template-columns:1fr}.visit-mode-actions>a,.visit-mode-actions form{min-width:100%}}

/* Smart proximity — v1.64.0 */
.visit-v3-proximity-context{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;margin:14px 0 18px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--cw-teal) 28%,var(--cw-line));border-radius:18px;background:color-mix(in srgb,var(--cw-teal) 5%,var(--cw-surface))}.visit-v3-proximity-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid color-mix(in srgb,var(--cw-teal) 36%,var(--cw-line));border-radius:14px;background:var(--cw-bg);color:var(--cw-teal);font-size:1.25rem;font-weight:900}.visit-v3-proximity-copy{min-width:0}.visit-v3-proximity-copy .eyebrow{font-size:.53rem}.visit-v3-proximity-copy strong{display:block;margin:2px 0;color:var(--cw-text);font-family:Georgia,"Times New Roman",serif;font-size:.92rem}.visit-v3-proximity-copy p{margin:0;color:var(--cw-muted);font-size:.61rem;line-height:1.45}.visit-v3-no-gps{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.54rem;font-weight:850;white-space:nowrap}
.visit-v2-recommendation.has-distance{grid-template-columns:minmax(0,1fr) 115px 115px auto}.visit-v3-recommendation-distance{display:grid;place-items:center;align-content:center;min-height:108px;padding:12px;border:1px solid color-mix(in srgb,var(--cw-copper) 30%,var(--cw-line));border-radius:20px;background:var(--cw-bg);text-align:center}.visit-v3-recommendation-distance>span{color:var(--cw-muted);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.visit-v3-recommendation-distance strong{display:block;margin:4px 0 1px;color:var(--cw-copper);font-size:1.45rem;line-height:1}.visit-v3-recommendation-distance small{color:var(--cw-muted);font-size:.52rem}.visit-v3-suggestion-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px}.visit-v3-suggestion-meta small{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.54rem}.visit-v3-distance-badge{display:inline-flex;align-items:center;margin:5px 5px 0 0;padding:4px 7px;border:1px solid color-mix(in srgb,var(--cw-copper) 30%,var(--cw-line));border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 6%,var(--cw-surface));color:var(--cw-copper);font-size:.54rem;font-weight:850}
@media(max-width:900px){.visit-v2-recommendation.has-distance{grid-template-columns:minmax(0,1fr) 105px 105px}.visit-v2-recommendation.has-distance .visit-v2-recommendation-actions{grid-column:1/-1}.visit-v3-proximity-context{grid-template-columns:42px minmax(0,1fr)}.visit-v3-no-gps{grid-column:2;justify-self:start}}
@media(max-width:720px){.visit-v2-recommendation.has-distance{grid-template-columns:minmax(0,1fr) 78px 78px}.visit-v3-recommendation-distance{min-height:88px;padding:8px;border-radius:16px}.visit-v3-recommendation-distance>span{font-size:.46rem}.visit-v3-recommendation-distance strong{font-size:1.08rem}.visit-v3-proximity-context{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:11px 12px}.visit-v3-proximity-icon{width:38px;height:38px;border-radius:12px;font-size:1.05rem}.visit-v3-proximity-copy strong{font-size:.82rem}.visit-v3-proximity-copy p{font-size:.56rem}}
@media(max-width:470px){.visit-v2-recommendation.has-distance{grid-template-columns:1fr 1fr}.visit-v2-recommendation.has-distance .visit-v2-recommendation-copy,.visit-v2-recommendation.has-distance .visit-v2-recommendation-actions{grid-column:1/-1}.visit-v2-recommendation.has-distance .visit-v2-recommendation-wait,.visit-v2-recommendation.has-distance .visit-v3-recommendation-distance{min-height:74px}.visit-v3-proximity-context{grid-template-columns:34px minmax(0,1fr)}.visit-v3-proximity-icon{width:34px;height:34px}.visit-v3-no-gps{grid-column:1/-1;justify-self:stretch}}

/* Group trip challenges — v1.65.0 */
.trip-challenges-section{margin:18px 0 30px}.trip-challenges-heading{align-items:flex-end}.trip-challenges-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.trip-challenge-count{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.58rem;font-weight:800;white-space:nowrap}.trip-challenge-create-details{position:relative}.trip-challenge-create-details>summary{list-style:none;cursor:pointer}.trip-challenge-create-details>summary::-webkit-details-marker{display:none}.trip-challenge-create-popover{position:absolute;z-index:24;right:0;top:calc(100% + 8px);width:min(520px,92vw);padding:16px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface-solid);box-shadow:0 24px 62px rgba(0,0,0,.24)}.trip-challenge-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trip-challenge-form label>span{display:block;margin-bottom:5px;color:var(--cw-muted);font-size:.56rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.trip-challenge-form input,.trip-challenge-form select{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit}.trip-challenge-wide-field{grid-column:1/-1}.trip-challenge-form-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px}.trip-challenge-form-footer small{max-width:300px;color:var(--cw-muted);font-size:.58rem;line-height:1.45}.trip-challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trip-challenge-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:15px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);overflow:hidden}.trip-challenge-card.is-joined{border-color:color-mix(in srgb,var(--cw-copper) 50%,var(--cw-line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-copper) 12%,transparent)}.trip-challenge-card.is-closed{opacity:.84}.trip-challenge-card-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:10px}.trip-challenge-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);font-size:1.25rem}.trip-challenge-title-wrap{min-width:0}.trip-challenge-title-wrap>span{display:block;color:var(--cw-muted);font-size:.52rem;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.trip-challenge-title-wrap h3{margin:3px 0 0;font-family:Georgia,serif;font-size:1.08rem;line-height:1.15;overflow-wrap:anywhere}.trip-challenge-state{display:inline-flex;align-items:center;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.51rem;font-weight:850;white-space:nowrap}.trip-challenge-state.is-open{border-color:color-mix(in srgb,var(--cw-success) 42%,var(--cw-line));color:var(--cw-success)}.trip-challenge-state.is-closed{color:var(--cw-muted)}.trip-challenge-goal{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.trip-challenge-goal>div{display:grid;gap:2px;padding:8px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);text-align:center}.trip-challenge-goal span{color:var(--cw-muted);font-size:.49rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.trip-challenge-goal strong{font-family:Georgia,serif;font-size:1rem;color:var(--cw-copper)}.trip-challenge-my-progress{display:grid;gap:7px;padding:10px;border:1px solid color-mix(in srgb,var(--cw-copper) 28%,var(--cw-line));border-radius:14px;background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-bg))}.trip-challenge-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:8px}.trip-challenge-progress-copy span{color:var(--cw-muted);font-size:.57rem;font-weight:800}.trip-challenge-progress-copy strong{font-size:.68rem}.trip-challenge-progress-track{height:7px;border-radius:999px;background:color-mix(in srgb,var(--cw-line) 70%,transparent);overflow:hidden}.trip-challenge-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));transition:width .25s ease}.trip-challenge-completed{color:var(--cw-success);font-size:.58rem;font-weight:850}.trip-challenge-ranking{display:grid;gap:5px}.trip-challenge-ranking>strong{margin-bottom:2px;color:var(--cw-muted);font-size:.54rem;text-transform:uppercase;letter-spacing:.05em}.trip-challenge-rank-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:6px 8px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg)}.trip-challenge-rank-row.is-me{border-color:color-mix(in srgb,var(--cw-copper) 38%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-bg))}.trip-challenge-rank-position{font-size:.67rem;text-align:center}.trip-challenge-rank-name{min-width:0;font-size:.61rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-challenge-rank-row small{max-width:105px;color:var(--cw-muted);font-size:.49rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-challenge-rank-row>strong{font-family:Georgia,serif;color:var(--cw-copper);font-size:.82rem}.trip-challenge-no-ranking{margin:0;color:var(--cw-muted);font-size:.61rem}.trip-challenge-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:2px}.trip-challenge-actions form{margin:0}.trip-challenge-empty{display:grid;place-items:center;gap:5px;min-height:155px;padding:24px;border:1px dashed var(--cw-line);border-radius:18px;background:var(--cw-surface);text-align:center}.trip-challenge-empty>span{font-size:1.7rem}.trip-challenge-empty strong{font-family:Georgia,serif;font-size:1.06rem}.trip-challenge-empty p{max-width:560px;margin:0;color:var(--cw-muted);font-size:.66rem;line-height:1.5}
@media(max-width:850px){.trip-challenges-heading{align-items:flex-start;flex-direction:column}.trip-challenges-heading-actions{width:100%;justify-content:flex-start}.trip-challenge-create-details{width:100%}.trip-challenge-create-details>summary{width:100%;text-align:center}.trip-challenge-create-popover{position:static;width:100%;margin-top:8px;box-shadow:none}.trip-challenge-grid{grid-template-columns:1fr}}
@media(max-width:560px){.trip-challenge-form{grid-template-columns:1fr}.trip-challenge-wide-field,.trip-challenge-form-footer{grid-column:auto}.trip-challenge-form-footer{align-items:flex-start;flex-direction:column}.trip-challenge-form-footer .button{width:100%}.trip-challenge-card-head{grid-template-columns:38px minmax(0,1fr)}.trip-challenge-icon{width:38px;height:38px}.trip-challenge-state{grid-column:2;justify-self:start}.trip-challenge-goal{gap:5px}.trip-challenge-goal>div{padding:7px 4px}.trip-challenge-rank-row{grid-template-columns:28px minmax(0,1fr) auto}.trip-challenge-rank-row small{display:none}.trip-challenge-actions,.trip-challenge-actions form,.trip-challenge-actions .button{width:100%}}

/* Group visit recap / memory book — v1.66.0 */
.trip-recap-hero{position:relative;padding:34px 0 28px;border-bottom:1px solid var(--cw-line);background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 9%,var(--cw-bg)),color-mix(in srgb,var(--cw-teal) 7%,var(--cw-bg)))}
.trip-recap-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.trip-recap-state{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface-solid);font-size:.58rem;font-weight:850}.trip-recap-state.is-live{border-color:color-mix(in srgb,var(--cw-success) 45%,var(--cw-line));color:var(--cw-success)}.trip-recap-state.is-finished{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));color:var(--cw-copper)}
.trip-recap-hero-grid{display:grid;grid-template-columns:94px minmax(0,1fr) auto;align-items:center;gap:22px}.trip-recap-stamp{width:94px;min-height:116px;display:grid;place-items:center;align-content:center;gap:1px;border:1px solid color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));border-radius:22px;background:var(--cw-surface-solid);box-shadow:0 16px 38px rgba(0,0,0,.08)}.trip-recap-stamp>span{font-size:1.25rem}.trip-recap-stamp strong{font-family:Georgia,serif;font-size:2.15rem;line-height:1;color:var(--cw-copper)}.trip-recap-stamp small{color:var(--cw-muted);font-size:.62rem;font-weight:900;letter-spacing:.08em}.trip-recap-hero-copy h1{margin:4px 0 7px;font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.03}.trip-recap-hero-copy p{max-width:680px;margin:0;color:var(--cw-muted);font-size:.74rem;line-height:1.55}.trip-recap-trip-name{display:inline-flex;margin-top:11px;padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.6rem;font-weight:800}.trip-recap-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.trip-recap-section{padding-top:24px}.trip-recap-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.trip-recap-kpis article{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:9px;padding:13px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.trip-recap-kpis article>span{grid-row:1/3;font-size:1.25rem}.trip-recap-kpis strong{font-family:Georgia,serif;font-size:1.25rem;line-height:1;color:var(--cw-text)}.trip-recap-kpis small{margin-top:3px;color:var(--cw-muted);font-size:.52rem;font-weight:800}.trip-recap-kpis article.is-credit{border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface))}.trip-recap-kpis article.is-credit strong{color:var(--cw-copper)}
.trip-recap-personal{margin:18px 0;padding:17px;border:1px solid color-mix(in srgb,var(--cw-copper) 38%,var(--cw-line));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 6%,var(--cw-surface)),var(--cw-surface))}.trip-recap-personal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.trip-recap-personal-head h2{margin:3px 0 0;font-family:Georgia,serif;font-size:1.25rem}.trip-recap-team-chip{display:inline-flex;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.58rem;font-weight:850}.trip-recap-personal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.trip-recap-personal-grid>div{display:grid;gap:3px;padding:10px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.trip-recap-personal-grid strong{font-family:Georgia,serif;font-size:1.15rem}.trip-recap-personal-grid span{color:var(--cw-muted);font-size:.52rem;font-weight:800}.trip-recap-personal-grid .is-credit strong{color:var(--cw-copper)}.trip-recap-credit-strip{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--cw-line)}.trip-recap-credit-strip>strong{font-size:.61rem}.trip-recap-credit-strip>div{display:flex;gap:6px;flex-wrap:wrap}.trip-recap-credit-strip>div span{display:inline-flex;padding:6px 8px;border:1px solid color-mix(in srgb,var(--cw-copper) 38%,var(--cw-line));border-radius:999px;background:var(--cw-bg);color:var(--cw-copper);font-size:.55rem;font-weight:800}
.trip-recap-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 26px}.trip-recap-highlight{display:grid;grid-template-columns:54px minmax(0,1fr);gap:13px;align-items:center;padding:16px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.trip-recap-highlight-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-bg);font-size:1.55rem}.trip-recap-highlight h2{margin:3px 0 4px;font-family:Georgia,serif;font-size:1.15rem}.trip-recap-highlight p{margin:0;color:var(--cw-muted);font-size:.62rem;line-height:1.5}.trip-recap-block{margin:26px 0}.trip-recap-explorer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.trip-recap-explorer-card{display:grid;gap:11px;padding:13px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.trip-recap-explorer-card.is-me{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-copper) 10%,transparent)}.trip-recap-explorer-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center}.trip-recap-explorer-head .friends-user-avatar{width:38px;height:38px}.trip-recap-explorer-head>div:nth-child(2){min-width:0;display:grid;gap:2px}.trip-recap-explorer-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem}.trip-recap-explorer-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cw-muted);font-size:.52rem}.trip-recap-explorer-head small{color:var(--cw-copper);font-family:Georgia,serif;font-weight:800}.trip-recap-explorer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.trip-recap-explorer-stats>div{display:grid;gap:2px;padding:7px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);text-align:center}.trip-recap-explorer-stats strong{font-family:Georgia,serif;font-size:.92rem}.trip-recap-explorer-stats span{color:var(--cw-muted);font-size:.46rem;font-weight:800}.trip-recap-explorer-stats .is-credit strong{color:var(--cw-copper)}
.trip-recap-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.trip-recap-team-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.trip-recap-team-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);font-size:1.25rem}.trip-recap-team-name{min-width:0;display:grid;gap:2px}.trip-recap-team-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}.trip-recap-team-name span{color:var(--cw-muted);font-size:.5rem}.trip-recap-team-stats{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.trip-recap-team-stats span{display:inline-flex;padding:5px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.49rem}.trip-recap-team-stats strong{color:var(--cw-text)}
.trip-recap-challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trip-recap-challenge-card{display:grid;gap:11px;padding:14px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.trip-recap-challenge-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center}.trip-recap-challenge-head>span{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);font-size:1.15rem}.trip-recap-challenge-head>div{display:grid;gap:2px}.trip-recap-challenge-head strong{font-family:Georgia,serif;font-size:.86rem}.trip-recap-challenge-head small{color:var(--cw-muted);font-size:.51rem}.trip-recap-winners{display:grid;gap:3px;padding:9px;border:1px solid color-mix(in srgb,var(--cw-copper) 34%,var(--cw-line));border-radius:12px;background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-bg))}.trip-recap-winners span{color:var(--cw-muted);font-size:.51rem;font-weight:800}.trip-recap-winners strong{font-size:.61rem;color:var(--cw-copper);overflow-wrap:anywhere}.trip-recap-challenge-card>p{margin:0;color:var(--cw-muted);font-size:.59rem}.trip-recap-footer-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;margin:30px 0 8px;padding:16px;border:1px solid color-mix(in srgb,var(--cw-copper) 34%,var(--cw-line));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 7%,var(--cw-surface)),color-mix(in srgb,var(--cw-teal) 4%,var(--cw-surface)))}.trip-recap-footer-card>span{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg);font-size:1.35rem}.trip-recap-footer-card strong{font-family:Georgia,serif;font-size:.94rem}.trip-recap-footer-card p{margin:3px 0 0;color:var(--cw-muted);font-size:.58rem;line-height:1.45}
@media(max-width:980px){.trip-recap-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.trip-recap-explorer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-recap-hero-grid{grid-template-columns:82px minmax(0,1fr)}.trip-recap-stamp{width:82px;min-height:104px}.trip-recap-hero-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:680px){.trip-recap-hero{padding-top:22px}.trip-recap-nav{align-items:flex-start;flex-direction:column}.trip-recap-hero-grid{grid-template-columns:66px minmax(0,1fr);gap:13px}.trip-recap-stamp{width:66px;min-height:88px;border-radius:17px}.trip-recap-stamp>span{font-size:1rem}.trip-recap-stamp strong{font-size:1.65rem}.trip-recap-hero-copy h1{font-size:1.55rem}.trip-recap-hero-actions,.trip-recap-hero-actions .button{width:100%}.trip-recap-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-recap-personal-head{align-items:flex-start;flex-direction:column}.trip-recap-personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-recap-highlight-grid,.trip-recap-explorer-grid,.trip-recap-team-grid,.trip-recap-challenge-grid{grid-template-columns:1fr}.trip-recap-team-card{grid-template-columns:38px minmax(0,1fr)}.trip-recap-team-icon{width:38px;height:38px}.trip-recap-team-stats{grid-column:1/-1;justify-content:flex-start}.trip-recap-footer-card{grid-template-columns:42px minmax(0,1fr)}.trip-recap-footer-card>span{width:42px;height:42px}.trip-recap-footer-card .button{grid-column:1/-1;width:100%}}
@media(max-width:430px){.trip-recap-kpis{grid-template-columns:1fr}.trip-recap-highlight{grid-template-columns:44px minmax(0,1fr)}.trip-recap-highlight-icon{width:44px;height:44px;font-size:1.2rem}.trip-recap-explorer-stats{gap:4px}.trip-recap-explorer-stats>div{padding:6px 3px}}

/* Notifications V2 — v1.67.0 */
.notifications-toolbar-v2{margin-bottom:12px}.notifications-toolbar-actions{display:flex;align-items:center;gap:8px}.notifications-category-strip{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 10px;margin:0 0 14px;scrollbar-width:thin}.notification-category-chip{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;min-height:38px;padding:7px 10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-surface);color:var(--cw-muted);text-decoration:none;transition:border-color .18s ease,transform .18s ease,background .18s ease}.notification-category-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--cw-copper) 48%,var(--cw-line))}.notification-category-chip.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 7%,var(--cw-surface));color:var(--cw-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-copper) 28%,transparent)}.notification-category-chip>span{font-size:.92rem}.notification-category-chip>strong{font-size:.61rem;white-space:nowrap}.notification-category-chip>em{display:grid;min-width:18px;height:18px;padding:0 5px;place-items:center;border-radius:999px;background:var(--cw-copper);color:#fff;font-size:.52rem;font-style:normal;font-weight:900}.notifications-preferences-panel{margin:0 0 18px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);overflow:hidden}.notifications-preferences-panel>summary{display:flex;align-items:center;gap:10px;padding:13px 15px;cursor:pointer;list-style:none}.notifications-preferences-panel>summary::-webkit-details-marker{display:none}.notifications-preferences-panel>summary>span{display:grid;width:35px;height:35px;place-items:center;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg)}.notifications-preferences-panel>summary>div{display:grid;gap:2px}.notifications-preferences-panel>summary strong{font-size:.75rem}.notifications-preferences-panel>summary small{color:var(--cw-muted);font-size:.62rem}.notifications-preferences-panel[open]>summary{border-bottom:1px solid var(--cw-line)}.notifications-preferences-form{padding:14px}.notifications-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.notification-preference-item{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:9px;align-items:center;padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);cursor:pointer}.notification-preference-item input{width:17px;height:17px;accent-color:var(--cw-copper)}.notification-preference-icon{font-size:1rem}.notification-preference-item>span:last-child{display:grid;gap:2px}.notification-preference-item strong{font-size:.66rem}.notification-preference-item small{color:var(--cw-muted);font-size:.57rem;line-height:1.35}.notification-actions-v2{flex-wrap:wrap;justify-content:flex-end}.notification-delete-button{opacity:.72}.notification-delete-button:hover{opacity:1}.notification-priority{padding:2px 6px;border:1px solid currentColor;border-radius:999px}.notification-card.priority-high,.notification-card.priority-urgent{border-color:color-mix(in srgb,var(--cw-copper) 58%,var(--cw-line))}.notification-card.priority-urgent{box-shadow:inset 3px 0 0 var(--cw-copper)}
@media(max-width:760px){.notifications-preferences-grid{grid-template-columns:1fr}.notifications-toolbar-actions,.notifications-toolbar-actions form,.notifications-toolbar-actions .button{width:100%}.notification-actions-v2{justify-content:stretch}.notification-actions-v2>a,.notification-actions-v2 form,.notification-actions-v2 .button{flex:1;width:100%}.notification-category-strip{margin-inline:-2px;padding-bottom:12px}}

/* Social safety & moderation — v1.68.0 */
.social-safety-menu{position:relative}.social-safety-menu>summary{list-style:none;cursor:pointer}.social-safety-menu>summary::-webkit-details-marker{display:none}.social-safety-popover{position:absolute;z-index:40;top:calc(100% + 9px);right:0;width:min(380px,calc(100vw - 30px));display:grid;gap:9px;padding:14px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface-solid);box-shadow:0 18px 44px rgba(24,20,15,.16)}.social-safety-popover>strong{font-family:Georgia,serif;font-size:.84rem}.social-safety-popover>p{margin:0;color:var(--cw-muted);font-size:.59rem;line-height:1.45}.social-report-form{display:grid;gap:9px}.social-report-form label{display:grid;gap:5px}.social-report-form label>span{color:var(--cw-muted);font-size:.56rem;font-weight:800}.social-report-form select,.social-report-form textarea{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit;font-size:.64rem}.social-report-form textarea{resize:vertical;line-height:1.4}.social-report-form.compact{margin-top:8px;padding:10px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);min-width:min(310px,72vw)}.social-report-form.compact .button{justify-self:start}.social-safety-divider{height:1px;background:var(--cw-line);margin:3px 0}.social-danger-button{color:var(--cw-danger);border-color:color-mix(in srgb,var(--cw-danger) 35%,var(--cw-line))}.social-feedback-strip{padding-top:12px}.trip-chat-report-feedback{margin-bottom:10px}.trip-chat-message-actions{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.trip-chat-message-actions form{margin:0}.trip-chat-report-menu{position:relative;margin-top:6px}.trip-chat-report-menu>summary{list-style:none;color:var(--cw-muted);font-size:.55rem;text-decoration:underline;cursor:pointer}.trip-chat-report-menu>summary::-webkit-details-marker{display:none}.trip-chat-report-menu[open]>summary{color:var(--cw-copper)}.trip-chat-report-menu .social-report-form{position:absolute;z-index:15;left:0;top:100%;box-shadow:0 12px 28px rgba(24,20,15,.15)}.trip-chat-message.is-mine .trip-chat-report-menu .social-report-form{left:auto;right:0}.social-blocked-section{border-top:1px solid var(--cw-line)}.social-blocked-card{opacity:.86}.friends-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-kpi-alert{border-color:color-mix(in srgb,var(--cw-danger) 45%,var(--cw-line))!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-danger) 10%,transparent)}.admin-kpi-alert strong{color:var(--cw-danger)!important}
.moderation-admin-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.moderation-admin-filters{grid-template-columns:minmax(190px,1.3fr) repeat(3,minmax(150px,.8fr)) auto}.moderation-admin-table td>small{display:block;margin-top:3px;color:var(--cw-muted);max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.moderation-admin-table tr.is-moderation-active td:first-child{box-shadow:inset 3px 0 0 var(--cw-copper)}.moderation-status{display:inline-flex;align-items:center;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.54rem;font-weight:900}.moderation-status.is-open{color:var(--cw-danger);border-color:color-mix(in srgb,var(--cw-danger) 38%,var(--cw-line));background:color-mix(in srgb,var(--cw-danger) 5%,var(--cw-bg))}.moderation-status.is-reviewing{color:var(--cw-copper);border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 6%,var(--cw-bg))}.moderation-status.is-resolved{color:var(--cw-teal);border-color:color-mix(in srgb,var(--cw-teal) 38%,var(--cw-line));background:color-mix(in srgb,var(--cw-teal) 6%,var(--cw-bg))}.moderation-status.is-dismissed{color:var(--cw-muted)}.admin-empty-state{padding:24px;text-align:center;color:var(--cw-muted)}.moderation-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:20px;align-items:start}.moderation-detail-flash{grid-column:1/-1}.moderation-report-card,.moderation-review-panel{border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);padding:18px}.moderation-report-card{display:grid;gap:16px}.moderation-report-head{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.moderation-report-head>div,.moderation-people-grid>div{display:grid;gap:4px;padding:11px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.moderation-report-head span,.moderation-people-grid span,.moderation-detail-box>span,.moderation-snapshot-head>span,.moderation-review-history>span{color:var(--cw-muted);font-size:.52rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.moderation-report-head strong,.moderation-people-grid strong{font-size:.67rem}.moderation-people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.moderation-people-grid small{color:var(--cw-muted);font-size:.55rem;overflow-wrap:anywhere}.moderation-people-grid a{color:var(--cw-copper);font-size:.55rem;font-weight:800}.moderation-detail-box{display:grid;gap:7px;padding:13px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.moderation-detail-box p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.68rem;line-height:1.5}.moderation-snapshot-card{display:grid;gap:11px;padding:14px;border:1px dashed color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));border-radius:15px;background:color-mix(in srgb,var(--cw-copper) 4%,var(--cw-bg))}.moderation-snapshot-head{display:grid;gap:3px}.moderation-snapshot-head small{color:var(--cw-muted);font-size:.55rem}.moderation-snapshot-card blockquote{margin:0;padding:12px;border-left:3px solid var(--cw-copper);border-radius:8px;background:var(--cw-surface);font-size:.68rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.moderation-snapshot-card dl{display:grid;gap:6px;margin:0}.moderation-snapshot-card dl>div{display:grid;grid-template-columns:minmax(100px,.35fr) minmax(0,1fr);gap:10px;padding:6px 0;border-bottom:1px solid var(--cw-line)}.moderation-snapshot-card dl>div:last-child{border-bottom:0}.moderation-snapshot-card dt{color:var(--cw-muted);font-size:.55rem}.moderation-snapshot-card dd{margin:0;font-size:.6rem;overflow-wrap:anywhere}.moderation-review-panel{position:sticky;top:92px;display:grid;gap:8px}.moderation-review-panel h2{margin:0;font-family:Georgia,serif;font-size:1.2rem}.moderation-review-panel>p{margin:0 0 4px;color:var(--cw-muted);font-size:.61rem;line-height:1.45}.moderation-review-form{display:grid;gap:10px}.moderation-review-form label{display:grid;gap:5px}.moderation-review-form label>span{color:var(--cw-muted);font-size:.55rem;font-weight:900}.moderation-review-form select,.moderation-review-form textarea{width:100%;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);padding:9px 10px;font:inherit;font-size:.63rem}.moderation-review-form textarea{resize:vertical;line-height:1.45}.admin-warning{padding:10px 11px;border:1px solid color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line));border-radius:11px;background:color-mix(in srgb,var(--cw-copper) 6%,var(--cw-bg));color:var(--cw-muted);font-size:.56rem;line-height:1.4}.moderation-review-history{display:grid;gap:3px;margin-top:5px;padding-top:11px;border-top:1px solid var(--cw-line)}.moderation-review-history strong{font-size:.62rem}.moderation-review-history small{color:var(--cw-muted);font-size:.53rem}.admin-back-link{display:inline-flex;margin-bottom:12px;color:var(--cw-muted);text-decoration:none;font-size:.6rem;font-weight:800}.admin-back-link:hover{color:var(--cw-copper)}
@media(max-width:980px){.moderation-admin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.moderation-admin-filters .button{width:100%}.moderation-detail-layout{grid-template-columns:1fr}.moderation-review-panel{position:static}.moderation-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.social-safety-menu{width:100%}.social-safety-menu>summary{width:100%;justify-content:center}.social-safety-popover{position:fixed;left:15px;right:15px;top:auto;bottom:16px;width:auto;max-height:78vh;overflow:auto}.friends-hero-stats{grid-template-columns:repeat(3,1fr)}.trip-chat-report-menu .social-report-form{position:fixed;left:15px!important;right:15px!important;bottom:16px;top:auto;min-width:0;max-height:72vh;overflow:auto}.moderation-admin-filters{grid-template-columns:1fr}.moderation-report-head,.moderation-people-grid{grid-template-columns:1fr}.moderation-snapshot-card dl>div{grid-template-columns:1fr;gap:2px}}
@media(max-width:460px){.friends-hero-stats{grid-template-columns:1fr}.moderation-admin-kpis{grid-template-columns:1fr}}

/* Road Trips — v1.69.0 */
.road-trip-hub-hero{padding:52px 0;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 22%,color-mix(in srgb,var(--cw-copper) 16%,transparent),transparent 32%),var(--cw-bg-soft)}
.road-trip-hub-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,460px);gap:36px;align-items:start}.road-trip-hub-hero h1,.road-trip-detail-hero h1{margin:7px 0 10px;font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.8rem);line-height:.96}.road-trip-hub-hero p,.road-trip-detail-hero p{max-width:760px;color:var(--cw-muted);line-height:1.7}.road-trip-create{position:relative}.road-trip-create>summary{list-style:none;cursor:pointer;margin-left:auto;width:max-content}.road-trip-create>summary::-webkit-details-marker{display:none}.road-trip-create-form,.road-trip-manage-form,.road-trip-stop-form{display:grid;gap:12px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);box-shadow:0 18px 50px rgba(0,0,0,.09)}.road-trip-create[open] .road-trip-create-form{margin-top:10px}.road-trip-create-form label,.road-trip-manage-form label,.road-trip-stop-form label,.road-trip-invite-form label{display:grid;gap:6px}.road-trip-create-form label>span,.road-trip-manage-form label>span,.road-trip-stop-form label>span,.road-trip-invite-form label>span{font-size:.64rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:var(--cw-muted)}.road-trip-create-form input,.road-trip-create-form textarea,.road-trip-manage-form input,.road-trip-manage-form textarea,.road-trip-manage-form select,.road-trip-stop-form input,.road-trip-stop-form textarea,.road-trip-stop-form select,.road-trip-invite-form select{width:100%;min-width:0;padding:11px 12px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);color:var(--cw-text)}.road-trip-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.road-trip-invite-zone{margin-bottom:32px;padding:22px;border:1px solid color-mix(in srgb,var(--cw-copper) 36%,var(--cw-line));border-radius:22px;background:color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface))}.road-trip-invite-grid{display:grid;gap:10px}.road-trip-invite-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.road-trip-invite-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--cw-bg-soft);font-size:1.35rem}.road-trip-invite-card strong,.road-trip-invite-card span,.road-trip-invite-card small{display:block}.road-trip-invite-card span,.road-trip-invite-card small{margin-top:3px;color:var(--cw-muted);font-size:.7rem}.road-trip-invite-actions{display:flex;gap:7px;flex-wrap:wrap}.road-trip-heading{align-items:end}.road-trip-total{padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.68rem;font-weight:800}.road-trip-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.road-trip-card{display:block;padding:20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);color:var(--cw-text);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.road-trip-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--cw-copper) 50%,var(--cw-line));box-shadow:0 18px 42px rgba(0,0,0,.09)}.road-trip-card.is-active{border-color:color-mix(in srgb,#43a66b 48%,var(--cw-line))}.road-trip-card.is-completed{opacity:.86}.road-trip-card.is-cancelled{opacity:.65}.road-trip-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:12px}.road-trip-card-top span,.road-trip-card-top em{font-style:normal;font-size:.59rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.road-trip-card-top span{color:var(--cw-copper)}.road-trip-card-top em{color:var(--cw-muted)}.road-trip-card h3{margin:0 0 8px;font-family:Georgia,serif;font-size:1.45rem}.road-trip-card-date{display:flex;gap:7px;flex-wrap:wrap;align-items:center;color:var(--cw-muted);font-size:.72rem}.road-trip-card-date strong{color:var(--cw-text)}.road-trip-mini-route{display:flex;gap:5px;flex-wrap:wrap;margin:16px 0}.road-trip-mini-route span,.road-trip-mini-route b{padding:5px 7px;border-radius:999px;background:var(--cw-bg-soft);font-size:.59rem;font-weight:750;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.road-trip-mini-route span.is-empty{color:var(--cw-muted);font-weight:650}.road-trip-card-progress{height:5px;border-radius:999px;background:var(--cw-bg-soft);overflow:hidden}.road-trip-card-progress i{display:block;height:100%;border-radius:inherit;background:var(--cw-copper)}.road-trip-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:12px;color:var(--cw-muted);font-size:.65rem}.road-trip-empty{border:1px dashed var(--cw-line);border-radius:20px}.road-trip-detail-hero{padding:34px 0 38px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--cw-copper) 15%,transparent),transparent 30%),var(--cw-bg-soft)}.road-trip-back{display:inline-block;margin-bottom:18px;color:var(--cw-muted);text-decoration:none;font-size:.72rem;font-weight:800}.road-trip-back:hover{color:var(--cw-text)}.road-trip-detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:start}.road-trip-hero-badges,.road-trip-hero-meta{display:flex;gap:7px;flex-wrap:wrap}.road-trip-hero-badges span,.road-trip-hero-badges em,.road-trip-hero-meta span{padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.62rem;font-style:normal}.road-trip-hero-badges span{color:var(--cw-copper);font-weight:850;text-transform:uppercase;letter-spacing:.06em}.road-trip-hero-meta{margin-top:14px;color:var(--cw-muted)}.road-trip-manage{position:relative}.road-trip-manage>summary{list-style:none;cursor:pointer}.road-trip-manage>summary::-webkit-details-marker{display:none}.road-trip-manage-form{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:min(430px,88vw)}.road-trip-stats-strip{border-bottom:1px solid var(--cw-line);background:var(--cw-surface)}.road-trip-stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.road-trip-stats-grid>div{padding:18px;border-right:1px solid var(--cw-line);text-align:center}.road-trip-stats-grid>div:first-child{border-left:1px solid var(--cw-line)}.road-trip-stats-grid strong,.road-trip-stats-grid span{display:block}.road-trip-stats-grid strong{font-family:Georgia,serif;font-size:1.6rem}.road-trip-stats-grid span{margin-top:3px;color:var(--cw-muted);font-size:.59rem;text-transform:uppercase;letter-spacing:.06em}.road-trip-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}.road-trip-add-stop{position:relative}.road-trip-add-stop>summary{list-style:none;cursor:pointer}.road-trip-add-stop>summary::-webkit-details-marker{display:none}.road-trip-add-stop .road-trip-stop-form{position:absolute;right:0;z-index:15;width:min(470px,90vw);margin-top:8px}.road-trip-stop-form small{color:var(--cw-muted);font-size:.62rem;line-height:1.45}.road-trip-timeline{display:grid;gap:0;margin-top:12px}.road-trip-stop{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px}.road-trip-stop:not(:last-child):before{content:"";position:absolute;left:25px;top:50px;bottom:-4px;width:2px;background:var(--cw-line)}.road-trip-stop-index{position:relative;z-index:1;padding-top:8px}.road-trip-stop-index span{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--cw-line);border-radius:50%;background:var(--cw-surface);font-family:Georgia,serif;font-size:1.05rem;font-weight:800}.road-trip-stop.is-active .road-trip-stop-index span{border-color:#43a66b;box-shadow:0 0 0 4px color-mix(in srgb,#43a66b 10%,transparent)}.road-trip-stop.is-completed .road-trip-stop-index span{background:color-mix(in srgb,#43a66b 10%,var(--cw-surface));color:#43a66b}.road-trip-stop.is-skipped{opacity:.68}.road-trip-stop-card{margin-bottom:16px;padding:18px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.road-trip-stop-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.road-trip-stop-status{display:block;margin-bottom:5px;color:var(--cw-copper);font-size:.57rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.road-trip-stop-head h3{margin:0;font-family:Georgia,serif;font-size:1.35rem}.road-trip-stop-head a{display:inline-block;margin-top:3px;color:var(--cw-muted);font-size:.68rem;text-decoration:none}.road-trip-stop-order{display:flex;gap:4px}.road-trip-stop-order form{margin:0}.road-trip-stop-order button{width:31px;height:31px;border:1px solid var(--cw-line);border-radius:9px;background:var(--cw-bg);color:var(--cw-text);cursor:pointer}.road-trip-stop-order button:disabled{opacity:.28;cursor:not-allowed}.road-trip-stop-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.road-trip-stop-meta span,.road-trip-linked-label{padding:5px 7px;border-radius:999px;background:var(--cw-bg-soft);color:var(--cw-muted);font-size:.6rem}.road-trip-stop-notes{margin:12px 0 0!important;color:var(--cw-muted);font-size:.77rem;white-space:pre-line}.road-trip-stop-links{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-top:14px}.road-trip-stop-manage{margin-top:14px;padding-top:12px;border-top:1px solid var(--cw-line)}.road-trip-stop-manage>summary{cursor:pointer;color:var(--cw-muted);font-size:.67rem;font-weight:800}.road-trip-stop-form.is-inline{margin-top:10px;box-shadow:none;background:var(--cw-bg-soft)}.road-trip-stop-manage-actions{display:flex;justify-content:flex-end}.road-trip-stop-manage>form:last-child{margin-top:7px}.road-trip-sidebar{display:grid;gap:13px;position:sticky;top:94px}.road-trip-side-card{padding:18px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.road-trip-side-head h3,.road-trip-progress-card h3,.road-trip-danger-zone h3{margin:5px 0 13px;font-family:Georgia,serif;font-size:1.3rem}.road-trip-member-list{display:grid;gap:7px}.road-trip-member{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px;border-radius:12px;background:var(--cw-bg-soft)}.road-trip-member>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--cw-surface);font-weight:850}.road-trip-member strong,.road-trip-member small{display:block}.road-trip-member strong{font-size:.72rem}.road-trip-member small{margin-top:1px;color:var(--cw-muted);font-size:.56rem}.road-trip-member form button{border:0;background:transparent;color:var(--cw-muted);font-size:1.2rem;cursor:pointer}.road-trip-pending{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--cw-line)}.road-trip-pending strong{width:100%;font-size:.6rem;color:var(--cw-muted)}.road-trip-pending span{padding:4px 6px;border-radius:999px;background:var(--cw-bg-soft);font-size:.58rem}.road-trip-invite-form{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--cw-line)}.road-trip-big-progress strong{display:block;font-family:Georgia,serif;font-size:2.25rem}.road-trip-big-progress>div{height:7px;margin:8px 0;border-radius:999px;background:var(--cw-bg-soft);overflow:hidden}.road-trip-big-progress i{display:block;height:100%;border-radius:inherit;background:var(--cw-copper)}.road-trip-big-progress span{color:var(--cw-muted);font-size:.64rem}.road-trip-danger-zone p{font-size:.7rem;line-height:1.5;color:var(--cw-muted)}
@media(max-width:1050px){.road-trip-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.road-trip-detail-layout{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:820px){.road-trip-hub-hero-grid,.road-trip-detail-hero-grid,.road-trip-detail-layout{grid-template-columns:1fr}.road-trip-create>summary{margin-left:0}.road-trip-manage-form{position:static;margin-top:8px;width:100%}.road-trip-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.road-trip-sidebar .road-trip-side-card:first-child{grid-column:1/-1}.road-trip-stats-grid{grid-template-columns:repeat(2,1fr)}.road-trip-stats-grid>div:nth-child(odd){border-left:1px solid var(--cw-line)}}
@media(max-width:620px){.road-trip-hub-hero{padding:34px 0}.road-trip-hub-hero h1,.road-trip-detail-hero h1{font-size:2.55rem}.road-trip-card-grid{grid-template-columns:1fr}.road-trip-invite-card{grid-template-columns:auto 1fr}.road-trip-invite-actions{grid-column:1/-1}.road-trip-date-grid{grid-template-columns:1fr}.road-trip-stats-grid{grid-template-columns:repeat(2,1fr)}.road-trip-stats-grid>div{padding:14px 8px}.road-trip-stats-grid strong{font-size:1.35rem}.road-trip-stop{grid-template-columns:38px minmax(0,1fr);gap:8px}.road-trip-stop:not(:last-child):before{left:18px;top:39px}.road-trip-stop-index span{width:38px;height:38px;font-size:.85rem}.road-trip-stop-card{padding:14px}.road-trip-stop-head{gap:8px}.road-trip-stop-head h3{font-size:1.16rem}.road-trip-stop-order{flex-direction:column}.road-trip-add-stop .road-trip-stop-form{position:fixed;left:10px;right:10px;top:72px;bottom:10px;width:auto;overflow:auto;z-index:80}.road-trip-sidebar{grid-template-columns:1fr}.road-trip-sidebar .road-trip-side-card:first-child{grid-column:auto}.road-trip-card-meta{justify-content:flex-start;gap:14px}}

/* Progression V2 — v1.70.0 */
.progression-hub-stat-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.progression-skill-title{display:flex;align-items:center;gap:11px}.progression-skill-title>i{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg-soft);font-style:normal;font-size:1.15rem}.progression-xp-heading{align-items:flex-end}.progression-xp-total{display:flex;align-items:baseline;gap:6px;padding:12px 16px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.progression-xp-total strong{font-family:Georgia,serif;font-size:1.7rem;color:var(--cw-copper)}.progression-xp-total span{color:var(--cw-muted);font-size:.68rem;font-weight:850;letter-spacing:.08em}.progression-xp-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.progression-xp-event{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.progression-xp-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--cw-copper) 12%,var(--cw-bg-soft));font-size:1.05rem}.progression-xp-copy{min-width:0}.progression-xp-copy strong,.progression-xp-copy span{display:block}.progression-xp-copy strong{font-size:.82rem}.progression-xp-copy span{margin-top:3px;color:var(--cw-muted);font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progression-xp-event>b{color:var(--cw-copper);font-size:.75rem;white-space:nowrap}.progression-badge.is-tier-silver.is-unlocked{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-muted) 24%,transparent)}.progression-badge.is-tier-gold.is-unlocked{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-copper) 34%,transparent),0 10px 28px color-mix(in srgb,var(--cw-copper) 8%,transparent)}.progression-badge.is-tier-legend.is-unlocked{border-color:color-mix(in srgb,var(--cw-copper) 68%,var(--cw-line));box-shadow:0 12px 32px color-mix(in srgb,var(--cw-copper) 13%,transparent)}.progression-badge.is-tier-legend .progression-badge-icon{transform:scale(1.05)}
@media(max-width:1100px){.progression-hub-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.progression-hub-stat-grid>div{border-bottom:1px solid var(--cw-line)}.progression-hub-stat-grid>div:nth-child(3n){border-right:0}.progression-hub-stat-grid>div:nth-last-child(-n+3){border-bottom:0}}
@media(max-width:760px){.progression-xp-heading{align-items:flex-start}.progression-xp-feed{grid-template-columns:1fr}}
@media(max-width:700px){.progression-hub-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progression-hub-stat-grid>div{border-right:1px solid var(--cw-line)!important;border-bottom:1px solid var(--cw-line)!important}.progression-hub-stat-grid>div:nth-child(2n){border-right:0!important}.progression-hub-stat-grid>div:nth-last-child(-n+2){border-bottom:0!important}}
@media(max-width:480px){.progression-xp-event{grid-template-columns:38px minmax(0,1fr);gap:10px}.progression-xp-icon{width:38px;height:38px}.progression-xp-event>b{grid-column:2;justify-self:start}.progression-skill-head{gap:8px}.progression-skill-head>b{font-size:.68rem}}

/* Rankings V2 — v1.71.0 */
.rankings-hero { position: relative; padding: 74px 0 66px; overflow: hidden; border-bottom: 1px solid var(--cw-line); background:
    radial-gradient(circle at 82% 28%, color-mix(in srgb, var(--cw-brass) 18%, transparent), transparent 24%),
    radial-gradient(circle at 66% 78%, color-mix(in srgb, var(--cw-copper) 13%, transparent), transparent 28%),
    linear-gradient(145deg, var(--cw-bg), var(--cw-bg-soft)); }
.rankings-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .58; background-image: linear-gradient(var(--cw-grid) 1px, transparent 1px), linear-gradient(90deg, var(--cw-grid) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg, black, transparent 78%); }
.rankings-hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 56px; align-items: center; }
.rankings-hero h1 { margin: 14px 0 15px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.8rem, 5vw, 5rem); line-height: .96; letter-spacing: -.05em; }
.rankings-hero p { max-width: 760px; margin: 0; color: var(--cw-muted); font-size: 1.04rem; }
.rankings-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.rankings-hero-medal { position: relative; width: 210px; aspect-ratio: 1; justify-self: center; display: grid; place-items: center; border: 1px solid var(--cw-line-strong); border-radius: 50%; background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--cw-brass) 36%, var(--cw-surface-solid)), var(--cw-surface-solid) 58%, var(--cw-bg-soft)); box-shadow: var(--cw-shadow), inset 0 0 0 12px color-mix(in srgb, var(--cw-brass) 8%, transparent); }
.rankings-hero-medal::before, .rankings-hero-medal::after { content: ""; position: absolute; width: 58px; height: 92px; top: 145px; z-index: -1; background: linear-gradient(var(--cw-copper), var(--cw-copper-strong)); clip-path: polygon(0 0, 100% 0, 82% 100%, 50% 78%, 18% 100%); }
.rankings-hero-medal::before { left: 45px; transform: rotate(9deg); }
.rankings-hero-medal::after { right: 45px; transform: rotate(-9deg); }
.rankings-hero-medal span { font-size: 4.4rem; filter: drop-shadow(0 10px 18px rgba(0,0,0,.12)); }
.rankings-hero-medal i { position: absolute; bottom: 35px; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--cw-text); color: var(--cw-bg); font-style: normal; font-weight: 900; }

.rankings-controls-section { padding-bottom: 28px; }
.rankings-scope-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.rankings-scope-tab { min-height: 98px; padding: 18px 20px; display: grid; align-content: center; gap: 4px; border: 1px solid var(--cw-line); border-radius: 18px; background: var(--cw-surface); transition: .2s ease; }
.rankings-scope-tab:hover { transform: translateY(-2px); border-color: var(--cw-line-strong); box-shadow: 0 12px 30px rgba(0,0,0,.06); }
.rankings-scope-tab strong { font-size: 1rem; }
.rankings-scope-tab small { color: var(--cw-muted); }
.rankings-scope-tab.is-active { border-color: color-mix(in srgb, var(--cw-copper) 65%, var(--cw-line)); background: linear-gradient(135deg, color-mix(in srgb, var(--cw-copper) 12%, var(--cw-surface-solid)), var(--cw-surface)); box-shadow: inset 0 -3px var(--cw-copper); }
.rankings-group-picker { margin-top: 16px; padding: 14px 16px; display: flex; align-items: center; gap: 14px; border: 1px solid var(--cw-line); border-radius: 16px; background: var(--cw-surface); }
.rankings-group-picker label { font-size: .78rem; font-weight: 850; color: var(--cw-muted); text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
.rankings-group-picker select { width: min(100%, 520px); min-height: 42px; padding: 8px 36px 8px 12px; border: 1px solid var(--cw-line-strong); border-radius: 11px; background: var(--cw-surface-solid); color: var(--cw-text); }
.rankings-filter-bar { margin-top: 18px; padding: 18px; display: grid; grid-template-columns: auto 1fr; gap: 26px; align-items: end; border: 1px solid var(--cw-line); border-radius: 20px; background: var(--cw-surface); box-shadow: 0 14px 36px rgba(0,0,0,.04); }
.rankings-filter-block { min-width: 0; }
.rankings-filter-block > span { display: block; margin-bottom: 9px; color: var(--cw-muted); font-size: .72rem; font-weight: 850; text-transform: uppercase; letter-spacing: .1em; }
.rankings-pill-row { display: flex; gap: 7px; flex-wrap: wrap; }
.rankings-pill-row a { min-height: 38px; padding: 8px 12px; display: inline-flex; gap: 6px; align-items: center; border: 1px solid var(--cw-line); border-radius: 999px; background: var(--cw-surface-solid); color: var(--cw-muted); font-size: .82rem; font-weight: 800; transition: .18s ease; }
.rankings-pill-row a:hover { color: var(--cw-text); border-color: var(--cw-line-strong); }
.rankings-pill-row a.is-active { background: var(--cw-text); color: var(--cw-bg); border-color: var(--cw-text); }
.rankings-pill-row i { font-style: normal; }
.rankings-context-line { margin-top: 14px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; color: var(--cw-muted); font-size: .82rem; }
.rankings-context-line strong { color: var(--cw-text); }

.rankings-you-section { border-block: 1px solid var(--cw-line); }
.rankings-you-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.rankings-you-card { min-width: 0; padding: 16px; display: grid; grid-template-columns: 34px 1fr; gap: 10px; align-items: center; border: 1px solid var(--cw-line); border-radius: 16px; background: var(--cw-surface); transition: .18s ease; }
.rankings-you-card:hover { transform: translateY(-2px); border-color: var(--cw-line-strong); }
.rankings-you-card.is-active { border-color: color-mix(in srgb, var(--cw-copper) 62%, var(--cw-line)); box-shadow: inset 0 -3px var(--cw-copper); }
.rankings-you-card > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: var(--cw-bg-soft); font-style: normal; }
.rankings-you-card div { min-width: 0; }
.rankings-you-card span { display: block; overflow: hidden; text-overflow: ellipsis; color: var(--cw-muted); font-size: .72rem; white-space: nowrap; }
.rankings-you-card strong { display: block; font-size: 1.3rem; line-height: 1.1; }
.rankings-you-card > b { grid-column: 1 / -1; color: var(--cw-copper); font-size: .78rem; }

.rankings-podium-section { overflow: hidden; }
.rankings-podium { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: 14px; padding-top: 24px; }
.rankings-podium-card { position: relative; min-width: 0; padding: 24px 20px 19px; display: flex; flex-direction: column; align-items: center; text-align: center; border: 1px solid var(--cw-line); border-radius: 22px; background: var(--cw-surface); box-shadow: 0 18px 44px rgba(0,0,0,.06); }
.rankings-podium-card[data-rank="1"] { order: 2; min-height: 380px; padding-top: 34px; border-color: color-mix(in srgb, var(--cw-brass) 65%, var(--cw-line)); background: linear-gradient(160deg, color-mix(in srgb, var(--cw-brass) 14%, var(--cw-surface-solid)), var(--cw-surface)); transform: translateY(-18px); }
.rankings-podium-card[data-rank="2"] { order: 1; min-height: 350px; }
.rankings-podium-card[data-rank="3"] { order: 3; min-height: 338px; }
.rankings-podium-card.is-me { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--cw-copper) 70%, transparent), 0 18px 44px rgba(0,0,0,.06); }
.rankings-podium-rank { position: absolute; top: -24px; width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid var(--cw-line-strong); border-radius: 50%; background: var(--cw-surface-solid); box-shadow: 0 8px 20px rgba(0,0,0,.1); font-size: 1.55rem; }
.rankings-avatar { width: 72px; height: 72px; display: grid; place-items: center; border: 1px solid var(--cw-line-strong); border-radius: 22px; background: linear-gradient(135deg, var(--cw-copper), var(--cw-brass)); color: #fff8ec; font-family: Georgia, "Times New Roman", serif; font-size: 2rem; font-weight: 800; box-shadow: 0 12px 30px color-mix(in srgb, var(--cw-copper) 20%, transparent); }
.rankings-avatar.is-small { width: 42px; height: 42px; border-radius: 13px; font-size: 1.05rem; box-shadow: none; }
.rankings-podium-copy { margin-top: 14px; min-width: 0; }
.rankings-podium-copy > span { display: block; color: var(--cw-copper); font-size: .7rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.rankings-podium-copy a, .rankings-podium-copy > strong { display: block; margin-top: 3px; overflow: hidden; text-overflow: ellipsis; font-size: 1.12rem; font-weight: 900; white-space: nowrap; }
.rankings-podium-copy a:hover { color: var(--cw-copper); }
.rankings-podium-copy small { display: block; margin-top: 4px; color: var(--cw-muted); }
.rankings-podium-value { margin-top: auto; padding-top: 20px; }
.rankings-podium-value strong { display: block; font-family: Georgia, "Times New Roman", serif; font-size: 2.35rem; line-height: 1; }
.rankings-podium-value span { display: block; margin-top: 6px; color: var(--cw-muted); font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.rankings-podium-mini { width: 100%; margin-top: 16px; padding-top: 13px; display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; border-top: 1px solid var(--cw-line); color: var(--cw-muted); font-size: .76rem; font-weight: 750; }

.rankings-table-card { overflow: hidden; border: 1px solid var(--cw-line); border-radius: 20px; background: var(--cw-surface); box-shadow: 0 15px 38px rgba(0,0,0,.04); }
.rankings-table-head, .rankings-table-row { display: grid; grid-template-columns: 78px minmax(210px, 1.7fr) repeat(5, minmax(82px, .7fr)); gap: 10px; align-items: center; }
.rankings-table-head { padding: 12px 16px; background: var(--cw-bg-soft); color: var(--cw-muted); font-size: .68rem; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; }
.rankings-table-row { min-height: 72px; padding: 10px 16px; border-top: 1px solid var(--cw-line); transition: .15s ease; }
.rankings-table-row:hover { background: color-mix(in srgb, var(--cw-bg-soft) 62%, transparent); }
.rankings-table-row.is-me { background: color-mix(in srgb, var(--cw-copper) 8%, var(--cw-surface)); box-shadow: inset 3px 0 var(--cw-copper); }
.rankings-row-position { color: var(--cw-muted); font-size: .92rem; }
.rankings-row-user { min-width: 0; display: flex; gap: 10px; align-items: center; }
.rankings-row-user > div:last-child { min-width: 0; }
.rankings-row-user a, .rankings-row-user strong { display: block; overflow: hidden; text-overflow: ellipsis; font-weight: 850; white-space: nowrap; }
.rankings-row-user a:hover { color: var(--cw-copper); }
.rankings-row-user small { display: block; color: var(--cw-muted); font-size: .73rem; }
.rankings-table-row > b { padding: 8px 6px; border-radius: 10px; text-align: center; font-size: .84rem; }
.rankings-table-row > b.is-selected { background: color-mix(in srgb, var(--cw-copper) 12%, var(--cw-surface-solid)); color: var(--cw-copper); }
.rankings-top-count { align-self: center; padding: 8px 12px; border: 1px solid var(--cw-line); border-radius: 999px; background: var(--cw-surface); color: var(--cw-muted); font-size: .78rem; font-weight: 800; }
.rankings-outside-top { margin-top: 12px; padding: 14px 18px; display: grid; grid-template-columns: 1.2fr 70px 1fr auto; gap: 14px; align-items: center; border: 1px dashed var(--cw-line-strong); border-radius: 16px; background: var(--cw-surface); }
.rankings-outside-top > span { color: var(--cw-muted); font-size: .78rem; }
.rankings-outside-top > strong { font-size: 1.3rem; color: var(--cw-copper); }
.rankings-outside-top > b { color: var(--cw-text); }

.rankings-empty-section { padding-top: 26px; }
.rankings-empty { border: 1px dashed var(--cw-line-strong); border-radius: 22px; background: var(--cw-surface); }
.rankings-privacy-section { padding-top: 0; }
.rankings-privacy-note { padding: 18px 20px; display: flex; gap: 14px; align-items: flex-start; border: 1px solid var(--cw-line); border-radius: 18px; background: var(--cw-surface); }
.rankings-privacy-note > span { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 12px; background: var(--cw-bg-soft); }
.rankings-privacy-note strong { display: block; margin-bottom: 3px; }
.rankings-privacy-note p { margin: 0; color: var(--cw-muted); font-size: .84rem; }
.rankings-privacy-note small { display: block; margin-top: 8px; color: var(--cw-copper); font-size: .75rem; }

@media (max-width: 1040px) {
    .rankings-hero-grid { grid-template-columns: minmax(0, 1fr) 190px; gap: 30px; }
    .rankings-hero-medal { width: 170px; }
    .rankings-hero-medal::before, .rankings-hero-medal::after { top: 116px; width: 48px; height: 78px; }
    .rankings-hero-medal::before { left: 34px; }
    .rankings-hero-medal::after { right: 34px; }
    .rankings-you-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rankings-table-card { overflow-x: auto; }
    .rankings-table-head, .rankings-table-row { min-width: 900px; }
}

@media (max-width: 760px) {
    .rankings-hero { padding: 54px 0 48px; }
    .rankings-hero-grid { grid-template-columns: 1fr; }
    .rankings-hero-medal { display: none; }
    .rankings-scope-tabs { grid-template-columns: 1fr; }
    .rankings-scope-tab { min-height: 0; }
    .rankings-filter-bar { grid-template-columns: 1fr; gap: 18px; padding: 15px; }
    .rankings-group-picker { align-items: stretch; flex-direction: column; gap: 7px; }
    .rankings-group-picker select { width: 100%; }
    .rankings-you-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rankings-podium { grid-template-columns: 1fr; gap: 34px; padding-top: 8px; }
    .rankings-podium-card[data-rank="1"], .rankings-podium-card[data-rank="2"], .rankings-podium-card[data-rank="3"] { order: initial; min-height: 0; transform: none; }
    .rankings-podium-card[data-rank="1"] { order: 1; }
    .rankings-podium-card[data-rank="2"] { order: 2; }
    .rankings-podium-card[data-rank="3"] { order: 3; }
    .rankings-podium-value { margin-top: 14px; }
    .rankings-outside-top { grid-template-columns: 1fr auto; }
    .rankings-outside-top > div { grid-column: 1 / 2; }
    .rankings-outside-top > b { text-align: right; }
}

@media (max-width: 520px) {
    .rankings-hero h1 { font-size: clamp(2.5rem, 15vw, 3.55rem); }
    .rankings-pill-row { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }
    .rankings-pill-row a { flex: 0 0 auto; }
    .rankings-you-grid { grid-template-columns: 1fr; }
    .rankings-context-line { font-size: .76rem; }
    .rankings-podium-card { padding-inline: 16px; }
    .rankings-outside-top { display: flex; flex-wrap: wrap; }
    .rankings-outside-top > span { width: 100%; }
}

/* Public Profile V2 — v1.72.0 */
.explorer-public-hero-v2{position:relative;overflow:hidden;padding:78px 0 52px;background:
    radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--cw-copper) 18%,transparent),transparent 28%),
    radial-gradient(circle at 10% 90%,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 34%),
    var(--cw-bg-soft)}
.explorer-public-hero-v2:after{content:"";position:absolute;inset:auto -6vw -120px auto;width:360px;height:360px;border:1px solid color-mix(in srgb,var(--cw-copper) 20%,transparent);border-radius:50%;box-shadow:0 0 0 42px color-mix(in srgb,var(--cw-copper) 3%,transparent),0 0 0 84px color-mix(in srgb,var(--cw-copper) 2%,transparent);pointer-events:none}
.explorer-public-avatar{position:relative;z-index:1;width:106px;height:106px;border-radius:34px;font-size:3rem;background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 12%,var(--cw-surface)),var(--cw-surface))}
.explorer-public-tagline{max-width:620px;margin:8px 0 12px;color:var(--cw-muted);font-size:.82rem;line-height:1.6}
.explorer-public-actions{position:relative;z-index:2;align-items:center}.explorer-public-actions form{margin:0}.button.is-static{cursor:default;pointer-events:none;opacity:.82}
.explorer-public-stats-v2{grid-template-columns:repeat(6,1fr)}.explorer-public-stats-v2>div{min-width:0}.explorer-public-stats-v2 strong{font-size:clamp(1.45rem,2.5vw,2rem)}
.explorer-profile-dashboard-section{padding-top:34px}.explorer-profile-dashboard{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.explorer-season-card,.explorer-level-card{position:relative;overflow:hidden;padding:26px;border:1px solid var(--cw-line);border-radius:26px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}
.explorer-season-card:before,.explorer-level-card:before{content:"";position:absolute;right:-55px;top:-70px;width:180px;height:180px;border-radius:50%;background:color-mix(in srgb,var(--cw-copper) 8%,transparent);pointer-events:none}.explorer-level-card:before{background:color-mix(in srgb,var(--cw-teal) 10%,transparent)}
.explorer-card-heading{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.explorer-card-heading h2{margin:6px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.55rem,3vw,2.25rem)}.explorer-season-card>p,.explorer-level-card>p{position:relative;margin:10px 0 22px;color:var(--cw-muted);font-size:.75rem;line-height:1.55}.explorer-season-year{display:grid;place-items:center;min-width:72px;height:44px;padding:0 12px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg);color:var(--cw-copper);font-family:Georgia,serif;font-weight:800}.explorer-season-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.explorer-season-grid>div{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:9px;padding:14px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-bg)}.explorer-season-grid>div>span{grid-row:1/3;font-size:1.15rem}.explorer-season-grid strong{font-size:1.2rem;line-height:1}.explorer-season-grid small{margin-top:3px;color:var(--cw-muted);font-size:.58rem}.explorer-season-grid .is-wide{grid-column:span 4}.explorer-level-badge{display:grid;place-items:center;width:56px;height:56px;border:1px solid color-mix(in srgb,var(--cw-copper) 50%,var(--cw-line));border-radius:18px;background:color-mix(in srgb,var(--cw-copper) 10%,var(--cw-surface));color:var(--cw-copper);font-family:Georgia,serif;font-size:1.6rem;font-weight:900}.explorer-level-copy{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:30px}.explorer-level-copy strong{font-size:1rem}.explorer-level-copy span{color:var(--cw-muted);font-size:.65rem}.explorer-level-progress,.explorer-skill-progress{height:8px;margin:11px 0 8px;overflow:hidden;border-radius:999px;background:var(--cw-bg);box-shadow:inset 0 0 0 1px var(--cw-line)}.explorer-level-progress i,.explorer-skill-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal))}.explorer-level-card>small{color:var(--cw-muted);font-size:.6rem}
.explorer-section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:18px}.explorer-public-ranking-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.explorer-public-ranking-grid article{position:relative;min-height:145px;padding:18px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface);overflow:hidden}.explorer-public-ranking-grid article:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;right:-25px;bottom:-30px;background:color-mix(in srgb,var(--cw-copper) 7%,transparent)}.explorer-ranking-icon{display:block;font-size:1.25rem}.explorer-public-ranking-grid small{display:block;margin-top:12px;color:var(--cw-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.explorer-public-ranking-grid strong{display:block;margin-top:6px;font-family:Georgia,serif;font-size:1.8rem}.explorer-public-ranking-grid em{display:block;margin-top:4px;color:var(--cw-copper);font-size:.62rem;font-style:normal;font-weight:800}.explorer-private-ranking-note{display:flex;align-items:center;gap:16px;padding:20px 22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.explorer-private-ranking-note>span{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--cw-bg);font-size:1.25rem}.explorer-private-ranking-note strong{display:block}.explorer-private-ranking-note p{margin:5px 0 0;color:var(--cw-muted);font-size:.7rem;line-height:1.5}
.explorer-skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.explorer-skill-card{padding:19px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.explorer-skill-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.explorer-skill-card>div:first-child>span{font-size:1.35rem}.explorer-skill-card>div:first-child>small{padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.56rem}.explorer-skill-card>strong{display:block;margin-top:15px;font-size:.95rem}.explorer-skill-card>p{min-height:38px;margin:5px 0 14px;color:var(--cw-muted);font-size:.65rem;line-height:1.45}.explorer-skill-card>small{color:var(--cw-copper);font-size:.58rem;font-weight:800}
.explorer-activity-timeline{position:relative;display:grid;gap:9px;max-width:980px}.explorer-activity-timeline:before{content:"";position:absolute;left:23px;top:18px;bottom:18px;width:1px;background:var(--cw-line)}.explorer-activity-item{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px 15px 12px 0;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.explorer-activity-icon{position:relative;z-index:1;display:grid;place-items:center;width:46px;height:46px;border-radius:17px;background:var(--cw-bg);font-size:1.1rem;box-shadow:inset 0 0 0 1px var(--cw-line)}.explorer-activity-copy>span{display:block;color:var(--cw-muted);font-size:.53rem;text-transform:uppercase;letter-spacing:.09em}.explorer-activity-copy>a,.explorer-activity-copy>strong{display:block;margin-top:3px;color:var(--cw-text);font-size:.79rem;font-weight:850}.explorer-activity-copy>a:hover{color:var(--cw-copper)}.explorer-activity-copy>small{display:block;margin-top:3px;color:var(--cw-muted);font-size:.61rem}.explorer-activity-item time{color:var(--cw-muted);font-size:.6rem;white-space:nowrap}
.explorer-challenge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.explorer-challenge-card{padding:19px;border:1px solid var(--cw-line);border-radius:20px;background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--cw-copper) 10%,transparent),transparent 30%),var(--cw-surface)}.explorer-challenge-card>span{color:var(--cw-copper);font-size:.56rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.explorer-challenge-card>strong{display:block;margin-top:12px;font-size:.9rem}.explorer-challenge-card>small{display:block;margin-top:5px;color:var(--cw-muted);font-size:.62rem}.explorer-challenge-card>div{display:flex;align-items:baseline;gap:4px;margin-top:20px}.explorer-challenge-card b{font-family:Georgia,serif;font-size:1.65rem}.explorer-challenge-card em{color:var(--cw-muted);font-size:.65rem;font-style:normal}.explorer-challenge-card time{display:block;margin-top:6px;color:var(--cw-muted);font-size:.57rem}
.explorer-road-trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.explorer-road-trip-card{position:relative;overflow:hidden;padding:22px;border:1px solid var(--cw-line);border-radius:23px;background:var(--cw-surface)}.explorer-road-trip-compass{position:absolute;right:18px;top:17px;font-size:1.55rem}.explorer-road-trip-card>span{color:var(--cw-copper);font-size:.55rem;text-transform:uppercase;letter-spacing:.09em}.explorer-road-trip-card>strong{display:block;max-width:80%;margin-top:12px;font-family:Georgia,serif;font-size:1.25rem}.explorer-road-trip-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.explorer-road-trip-stats span{padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-muted);font-size:.52rem}.explorer-road-trip-stats b{display:block;margin-bottom:2px;color:var(--cw-text);font-size:.85rem}.explorer-road-trip-card time{display:block;margin-top:12px;color:var(--cw-muted);font-size:.58rem}
@media(max-width:1050px){.explorer-public-stats-v2{grid-template-columns:repeat(3,1fr)}.explorer-profile-dashboard{grid-template-columns:1fr}.explorer-public-ranking-grid{grid-template-columns:repeat(3,1fr)}.explorer-skill-grid{grid-template-columns:repeat(2,1fr)}.explorer-challenge-grid{grid-template-columns:repeat(2,1fr)}.explorer-road-trip-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.explorer-public-hero-v2{padding-top:56px}.explorer-public-avatar{width:82px;height:82px;border-radius:27px;font-size:2.3rem}.explorer-public-stats-v2{grid-template-columns:repeat(2,1fr)}.explorer-season-grid{grid-template-columns:1fr 1fr}.explorer-season-grid .is-wide{grid-column:span 2}.explorer-section-heading-row{align-items:flex-start;flex-direction:column}.explorer-public-ranking-grid{grid-template-columns:1fr 1fr}.explorer-skill-grid,.explorer-challenge-grid,.explorer-road-trip-grid{grid-template-columns:1fr}.explorer-activity-item{grid-template-columns:44px minmax(0,1fr)}.explorer-activity-item time{grid-column:2;margin-top:-7px}.explorer-road-trip-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:430px){.explorer-public-ranking-grid{grid-template-columns:1fr}.explorer-season-grid{grid-template-columns:1fr}.explorer-season-grid .is-wide{grid-column:auto}.explorer-road-trip-stats{grid-template-columns:1fr}.explorer-public-actions form,.explorer-public-actions form .button{width:100%}}

/* Live Wait V2 — v1.73.0 */
.park-live-v2-strip{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(105px,.65fr));gap:10px;margin:14px 0 18px}.park-live-v2-strip>div{min-width:0;padding:13px 15px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);box-shadow:0 8px 24px rgba(0,0,0,.035)}.park-live-v2-strip>div>small,.park-live-v2-health small{display:block;color:var(--cw-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.08em}.park-live-v2-strip>div>strong{display:block;margin-top:4px;font-size:.9rem}.park-live-v2-health{display:flex;align-items:center;gap:11px}.park-live-v2-health>div{min-width:0}.park-live-v2-health strong{display:block;margin-top:3px;font-size:.88rem}.park-live-v2-health em{display:block;margin-top:3px;overflow:hidden;color:var(--cw-muted);font-size:.56rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.park-live-v2-health.is-healthy{border-color:color-mix(in srgb,#22a06b 40%,var(--cw-line));background:color-mix(in srgb,#22a06b 5%,var(--cw-surface))}.park-live-v2-health.is-degraded{border-color:color-mix(in srgb,#d49b20 45%,var(--cw-line));background:color-mix(in srgb,#d49b20 6%,var(--cw-surface))}.park-live-v2-health.is-stale,.park-live-v2-health.is-unavailable{border-color:color-mix(in srgb,#bd5353 38%,var(--cw-line));background:color-mix(in srgb,#bd5353 5%,var(--cw-surface))}
.live-trend{display:inline-flex;align-items:center;gap:4px;width:max-content;max-width:100%;padding:4px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.54rem;font-style:normal;font-weight:800;line-height:1.1;white-space:nowrap}.live-trend b{font-size:.5rem}.live-trend.is-up{border-color:color-mix(in srgb,#bd5353 35%,var(--cw-line));color:#b44f4f;background:color-mix(in srgb,#bd5353 5%,var(--cw-bg))}.live-trend.is-down{border-color:color-mix(in srgb,#22a06b 35%,var(--cw-line));color:#21875f;background:color-mix(in srgb,#22a06b 5%,var(--cw-bg))}.live-trend.is-stable{color:var(--cw-muted)}.park-live-details .live-trend{margin-right:auto}.park-attraction-card.is-live-recent .park-live-details{opacity:.86}.park-attraction-card.is-live-recent .park-wait-time{opacity:.88}.park-attraction-card.is-live-stale{border-style:dashed}.park-attraction-card.is-live-stale .live-trend{display:none}
.wait-history-samples{display:inline-block;margin-left:6px;padding:3px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.53rem;vertical-align:middle}.wait-history-summary{grid-template-columns:repeat(4,minmax(80px,1fr));min-width:min(470px,100%)}.wait-history-trend{position:relative}.wait-history-trend em{display:block;margin-top:3px;color:var(--cw-muted);font-size:.52rem;font-style:normal}.wait-history-trend.is-up strong{color:#b44f4f}.wait-history-trend.is-down strong{color:#21875f}.wait-history-trend.is-stable strong{color:var(--cw-teal)}
.visit-v2-recommendation-wait .live-trend{margin-top:7px;justify-content:center}.visit-attraction-wait{flex-wrap:wrap}.visit-attraction-wait .live-trend{flex-basis:100%;justify-self:center;margin-top:2px}.visit-v2-next-step .live-trend,.visit-v2-roadbook .live-trend{margin-top:5px}
@media(max-width:900px){.park-live-v2-strip{grid-template-columns:1fr 1fr}.park-live-v2-health{grid-column:span 2}.wait-history-summary{min-width:0}}
@media(max-width:768px){.wait-history-summary{grid-template-columns:1fr 1fr}.wait-history-samples{display:block;width:max-content;margin:6px 0 0}}
@media(max-width:520px){.park-live-v2-strip{grid-template-columns:1fr 1fr;gap:7px}.park-live-v2-strip>div{padding:11px}.park-live-v2-health{grid-column:span 2}.park-live-v2-strip>div>strong,.park-live-v2-health strong{font-size:.8rem}.live-trend{font-size:.5rem}.wait-history-summary{grid-template-columns:1fr 1fr}.visit-attraction-wait .live-trend{transform:scale(.94)}}

/* Live quasi real-time supervision — v1.73.1 */
.admin-quality-grid > div{padding:22px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}
.admin-live-quality-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-catalog-sync-dashboard .status-pill + small{display:block;margin-top:8px;color:var(--cw-muted);font-size:.72rem}
@media(max-width:980px){.admin-live-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.admin-live-quality-grid{grid-template-columns:1fr}}

/* Park Today weather + Live counters — v1.73.5 */
.park-today-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.park-weather-value { display: flex !important; align-items: center; gap: 8px; }
.park-weather-value i { font-style: normal; font-size: 1.25rem; line-height: 1; }
.park-weather-value b { font: inherit; }
.park-weather-details { margin-top: 3px; min-height: 1em; }
.park-status-counts { display: flex !important; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.park-status-counts > span { display: inline-flex; align-items: baseline; gap: 4px; font-size: .76rem; font-weight: 700; }
.park-status-counts > span b { font-size: 1.12rem; font-weight: 800; }
.park-status-counts .is-open { color: #62d58b; }
.park-status-counts .is-unavailable { color: #ef8e65; }
.park-status-breakdown { line-height: 1.55; }
.park-status-breakdown b { color: var(--text); font-weight: 700; }

@media (max-width: 1180px) {
    .park-today-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .park-today-grid { grid-template-columns: 1fr; }
}
.park-weather-source { margin-top: 5px; opacity: .72; }
.park-weather-source a { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); text-underline-offset: 2px; }


/* Admin POI synchronization — v1.74.4 */
.admin-poi-sync-card{align-items:stretch}.admin-poi-sync-main{min-width:0;flex:1}.admin-poi-sync-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.admin-poi-sync-stats>div{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--cw-line);border-radius:13px;background:color-mix(in srgb,var(--cw-bg) 56%,transparent)}.admin-poi-sync-stats span{color:var(--cw-muted);font-size:.58rem;font-weight:800;text-transform:uppercase}.admin-poi-sync-stats strong{font-size:1.25rem}.admin-poi-sync-stats small{margin:0;font-size:.59rem}.admin-poi-category-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.admin-poi-category-list span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.6rem}.admin-poi-category-list b{color:var(--cw-text)}.admin-poi-sync-actions{align-self:center;justify-content:flex-end;max-width:380px}.admin-poi-sync-report{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px}.admin-poi-report-source{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:15px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.admin-poi-report-source>div{display:flex;flex-direction:column;gap:2px}.admin-poi-report-source strong{font-size:.88rem}.admin-poi-report-source small{color:var(--cw-muted);font-size:.64rem;line-height:1.5}.admin-poi-warnings{width:100%;font-size:.63rem;color:var(--cw-muted)}.admin-poi-warnings summary{cursor:pointer;color:var(--cw-copper);font-weight:800}.admin-poi-warnings ul{margin:7px 0 0;padding-left:18px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:900px){.admin-poi-sync-card{flex-direction:column}.admin-poi-sync-actions{align-self:stretch;max-width:none;justify-content:flex-start}.admin-poi-sync-report{grid-template-columns:1fr}}
@media(max-width:620px){.admin-poi-sync-stats{grid-template-columns:1fr}.admin-poi-sync-actions,.admin-poi-sync-actions form,.admin-poi-sync-actions .button{width:100%}.admin-poi-sync-actions{display:grid;grid-template-columns:1fr}.admin-poi-category-list{gap:5px}}

/* Catalog Enrichment V2 — v1.75.0 */
.admin-enrichment-v2-flash{margin-bottom:18px}
.admin-enrichment-v2-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}
.admin-enrichment-v2-auto{align-items:stretch;margin-bottom:22px}.admin-enrichment-v2-command{margin:0;min-width:min(520px,48vw);align-self:stretch}.admin-enrichment-v2-command code{display:block;overflow:auto;white-space:nowrap}
.admin-enrichment-v2-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.35fr) auto;gap:10px;margin:22px 0 14px}.admin-enrichment-v2-toolbar input,.admin-enrichment-v2-toolbar select{width:100%;min-height:44px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-surface);color:var(--cw-text);padding:0 13px}
.admin-enrichment-v2-list{display:grid;gap:11px}.admin-enrichment-v2-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);box-shadow:0 8px 28px rgba(0,0,0,.025)}.admin-enrichment-v2-main{flex:1;min-width:0}.admin-enrichment-v2-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.admin-enrichment-v2-heading h3{margin:5px 0 0;font-size:1rem}.admin-enrichment-score{display:grid;place-items:center;min-width:58px;height:38px;border:1px solid var(--cw-line);border-radius:13px;font-size:.82rem}.admin-enrichment-score.is-good{color:#36a875;background:color-mix(in srgb,#36a875 7%,var(--cw-surface));border-color:color-mix(in srgb,#36a875 35%,var(--cw-line))}.admin-enrichment-score.is-partial{color:#d49b20;background:color-mix(in srgb,#d49b20 7%,var(--cw-surface));border-color:color-mix(in srgb,#d49b20 35%,var(--cw-line))}.admin-enrichment-score.is-critical{color:#c35c5c;background:color-mix(in srgb,#c35c5c 7%,var(--cw-surface));border-color:color-mix(in srgb,#c35c5c 35%,var(--cw-line))}
.admin-enrichment-progress{height:6px;margin:11px 0 10px;border-radius:999px;overflow:hidden;background:var(--cw-bg);box-shadow:inset 0 0 0 1px var(--cw-line)}.admin-enrichment-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal))}.admin-enrichment-v2-gaps{display:flex;gap:7px;flex-wrap:wrap}.admin-enrichment-v2-gaps span{padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.58rem}.admin-enrichment-v2-gaps b{color:var(--cw-text)}.admin-enrichment-last-run{display:block;margin-top:9px;color:var(--cw-muted);font-size:.59rem}.admin-enrichment-v2-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-enrichment-v2-actions form{margin:0}
.admin-enrichment-history{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-enrichment-history>div{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.admin-enrichment-history strong{font-size:.76rem}.admin-enrichment-history span{font-family:Georgia,serif;font-size:1rem}.admin-enrichment-history small{color:var(--cw-muted);font-size:.57rem}.admin-enrichment-dashboard-link{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0 18px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--cw-copper) 32%,var(--cw-line));border-radius:20px;background:linear-gradient(120deg,color-mix(in srgb,var(--cw-copper) 6%,var(--cw-surface)),var(--cw-surface))}.admin-enrichment-dashboard-link h3{margin:5px 0}.admin-enrichment-dashboard-link p{margin:0;color:var(--cw-muted);font-size:.68rem;line-height:1.5}
@media(max-width:1050px){.admin-enrichment-v2-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-enrichment-history{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-enrichment-v2-auto{flex-direction:column}.admin-enrichment-v2-command{min-width:0;width:100%}}
@media(max-width:760px){.admin-enrichment-v2-toolbar{grid-template-columns:1fr}.admin-enrichment-v2-card{align-items:stretch;flex-direction:column}.admin-enrichment-v2-actions{justify-content:flex-start}.admin-enrichment-dashboard-link{align-items:flex-start;flex-direction:column}.admin-enrichment-v2-kpis,.admin-enrichment-history{grid-template-columns:1fr}}
@media(max-width:520px){.admin-enrichment-v2-actions,.admin-enrichment-v2-actions form,.admin-enrichment-v2-actions .button{width:100%}.admin-enrichment-v2-actions{display:grid;grid-template-columns:1fr}.admin-enrichment-v2-heading{gap:8px}.admin-enrichment-score{min-width:52px}}

/* Enrichment live modal console — v1.75.1 */
html.has-admin-modal,html.has-admin-modal body{overflow:hidden}
.admin-enrichment-console-modal[hidden]{display:none!important}
.admin-enrichment-console-modal{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:22px}
.admin-enrichment-console-backdrop{position:absolute;inset:0;background:rgba(8,10,14,.74);backdrop-filter:blur(10px)}
.admin-enrichment-console-dialog{position:relative;display:flex;flex-direction:column;width:min(980px,100%);max-height:min(820px,calc(100vh - 44px));overflow:hidden;border:1px solid color-mix(in srgb,var(--cw-copper) 32%,var(--cw-line));border-radius:26px;background:var(--cw-surface);box-shadow:0 32px 90px rgba(0,0,0,.36)}
.admin-enrichment-console-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid var(--cw-line);background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface)),var(--cw-surface))}
.admin-enrichment-console-header h2{margin:4px 0 5px;font-size:1.35rem}.admin-enrichment-console-header p{margin:0;color:var(--cw-muted);font-size:.72rem}.admin-enrichment-console-header .admin-analysis-status{flex:0 0 auto}
.admin-enrichment-console-progress-row{display:flex;align-items:center;gap:12px;padding:16px 26px 10px}.admin-enrichment-console-progress{flex:1;height:9px;overflow:hidden;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg)}.admin-enrichment-console-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));transition:width .3s ease}.admin-enrichment-console-progress-row strong{min-width:44px;text-align:right;font-size:.74rem}
.admin-enrichment-console-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:8px 26px 14px}.admin-enrichment-console-kpis>div{display:grid;gap:4px;padding:12px 13px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg)}.admin-enrichment-console-kpis span,.admin-enrichment-console-current span{color:var(--cw-muted);font-size:.56rem;text-transform:uppercase;letter-spacing:.08em}.admin-enrichment-console-kpis strong{font-size:.83rem}
.admin-enrichment-console-current{display:grid;grid-template-columns:.42fr 1fr;gap:9px;padding:0 26px 14px}.admin-enrichment-console-current>div{display:grid;gap:4px;padding:11px 13px;border:1px solid var(--cw-line);border-radius:14px;background:color-mix(in srgb,var(--cw-bg) 75%,transparent)}.admin-enrichment-console-current strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}
.admin-enrichment-console-output{flex:1;min-height:260px;max-height:390px;overflow:auto;margin:0 26px 18px;padding:14px;border:1px solid #263041;border-radius:16px;background:#0d1117;color:#d6deeb;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.admin-enrichment-console-empty{padding:8px;color:#7f8b9d;font-size:.7rem}.admin-enrichment-console-line{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:5px 3px;border-bottom:1px solid rgba(255,255,255,.035);font-size:.67rem;line-height:1.5}.admin-enrichment-console-line:last-child{border-bottom:0}.admin-enrichment-console-line span{color:#6f7c8e}.admin-enrichment-console-line p{margin:0;overflow-wrap:anywhere}.admin-enrichment-console-line.is-success p{color:#7ee2a8}.admin-enrichment-console-line.is-warning p{color:#f4c76a}.admin-enrichment-console-line.is-error p{color:#ff8b8b}.admin-enrichment-console-line.is-info p{color:#c7d3e3}
.admin-enrichment-console-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 26px 20px;border-top:1px solid var(--cw-line);background:var(--cw-bg-soft)}.admin-enrichment-console-footer>div{display:grid;gap:3px}.admin-enrichment-console-footer strong{font-size:.72rem}.admin-enrichment-console-footer small{color:var(--cw-muted);font-size:.58rem}.admin-enrichment-console-footer button[disabled]{opacity:.45;cursor:wait}
.admin-analysis-status[data-status="success"]{color:#36a875}.admin-analysis-status[data-status="partial"]{color:#d49b20}.admin-analysis-status[data-status="error"]{color:#d66a6a}
@media(max-width:760px){.admin-enrichment-console-modal{padding:0}.admin-enrichment-console-dialog{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.admin-enrichment-console-header{padding:19px 17px 14px}.admin-enrichment-console-progress-row{padding:13px 17px 8px}.admin-enrichment-console-kpis{grid-template-columns:repeat(2,minmax(0,1fr));padding:6px 17px 12px}.admin-enrichment-console-current{grid-template-columns:1fr;padding:0 17px 12px}.admin-enrichment-console-output{min-height:0;max-height:none;margin:0 17px 14px}.admin-enrichment-console-footer{padding:14px 17px 18px}.admin-enrichment-console-footer small{display:none}}


/* Community V2 — v1.76.0 */
.community-v2{border-top:1px solid var(--cw-line)}.community-v2-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.community-v2-heading p{max-width:660px;margin:8px 0 0;color:var(--cw-muted);font-size:.72rem;line-height:1.55}.community-rating-hero{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:12px;min-width:210px;padding:15px 18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.community-rating-hero>strong{grid-row:1/3;font-family:Georgia,serif;font-size:2.5rem;line-height:1;color:var(--cw-copper)}.community-rating-hero small{color:var(--cw-muted);font-size:.58rem}.community-stars{display:flex;gap:2px;color:color-mix(in srgb,var(--cw-muted) 35%,transparent)}.community-stars .is-on,.community-review-rating b.is-on{color:#d49b20}.community-flash,.community-error{margin:14px 0;padding:12px 15px;border:1px solid color-mix(in srgb,#36a875 35%,var(--cw-line));border-radius:14px;background:color-mix(in srgb,#36a875 7%,var(--cw-surface));font-size:.7rem}.community-error{border-color:color-mix(in srgb,#c35c5c 35%,var(--cw-line));background:color-mix(in srgb,#c35c5c 7%,var(--cw-surface));color:#c35c5c}
.community-v2-overview{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(160px,.35fr) minmax(360px,1.25fr);gap:14px;margin-top:24px}.community-histogram,.community-verified-stat,.community-review-editor,.community-login-card{padding:19px;border:1px solid var(--cw-line);border-radius:21px;background:var(--cw-surface)}.community-histogram{display:grid;gap:8px}.community-histogram>div{display:grid;grid-template-columns:35px 1fr 25px;align-items:center;gap:9px;font-size:.62rem}.community-histogram i{height:7px;overflow:hidden;border-radius:999px;background:var(--cw-bg);box-shadow:inset 0 0 0 1px var(--cw-line)}.community-histogram b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d49b20,var(--cw-copper))}.community-histogram small{color:var(--cw-muted);text-align:right}.community-verified-stat{display:flex;align-items:center;gap:14px}.community-verified-stat>span{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:color-mix(in srgb,#36a875 10%,var(--cw-bg));color:#36a875;font-size:1.25rem}.community-verified-stat strong{display:block;font-family:Georgia,serif;font-size:1.7rem}.community-verified-stat small{display:block;margin-top:4px;color:var(--cw-muted);font-size:.59rem;line-height:1.35}.community-review-editor{display:grid;gap:9px}.community-review-editor-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.community-review-editor-head strong{font-size:.82rem}.community-review-editor-head small{color:var(--cw-muted);font-size:.56rem}.community-review-editor input[type=text],.community-review-editor textarea,.community-report select,.community-report textarea,.community-comment-form input{width:100%;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);padding:10px 12px;font:inherit;font-size:.68rem}.community-rating-picker{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:3px}.community-rating-picker input{position:absolute;opacity:0;pointer-events:none}.community-rating-picker label{cursor:pointer;color:color-mix(in srgb,var(--cw-muted) 35%,transparent);font-size:1.45rem;transition:transform .15s,color .15s}.community-rating-picker label:hover,.community-rating-picker label:hover~label,.community-rating-picker input:checked~label{color:#d49b20}.community-rating-picker label:hover{transform:translateY(-2px)}.community-review-editor-actions{display:flex;align-items:center;gap:12px}.community-existing-review{color:var(--cw-muted);font-size:.57rem}.community-login-card{display:flex;align-items:center;gap:14px}.community-login-card>span{font-size:1.5rem}.community-login-card>div{flex:1}.community-login-card strong{font-size:.78rem}.community-login-card p{margin:4px 0 0;color:var(--cw-muted);font-size:.6rem;line-height:1.45}
.community-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.community-review-card{padding:20px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}.community-review-card.is-verified{border-color:color-mix(in srgb,#36a875 24%,var(--cw-line))}.community-review-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.community-review-author{display:flex;align-items:center;gap:10px}.community-avatar{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);color:var(--cw-copper);font-family:Georgia,serif;font-weight:900}.community-review-author a,.community-review-author strong{display:block;color:var(--cw-text);font-size:.69rem;font-weight:850}.community-review-author small{display:block;margin-top:3px;color:var(--cw-muted);font-size:.54rem}.community-review-rating{text-align:right}.community-review-rating>strong{display:block;color:var(--cw-copper);font-size:.72rem}.community-review-rating>span{display:flex;gap:1px;justify-content:flex-end;color:color-mix(in srgb,var(--cw-muted) 30%,transparent);font-size:.7rem}.community-review-rating>small{display:block;margin-top:4px;color:#36a875;font-size:.52rem}.community-review-card>h3{margin:18px 0 7px;font-size:.84rem}.community-review-card>p{margin:8px 0;color:var(--cw-muted);font-size:.68rem;line-height:1.65;white-space:pre-line}.community-review-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:15px}.community-review-actions form{margin:0}.community-action,.community-report>summary{appearance:none;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);padding:7px 10px;font:inherit;font-size:.57rem;cursor:pointer;list-style:none}.community-action.is-active{color:var(--cw-copper);border-color:color-mix(in srgb,var(--cw-copper) 40%,var(--cw-line))}.community-action.is-danger{color:#c35c5c}.community-action.is-static{cursor:default}.community-report{position:relative}.community-report>form{position:absolute;z-index:8;top:calc(100% + 8px);right:0;display:grid;gap:7px;width:260px;padding:11px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-surface);box-shadow:var(--cw-shadow)}.community-report textarea{resize:vertical}.community-comments{display:grid;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid var(--cw-line)}.community-comment{padding:10px 11px;border-radius:13px;background:var(--cw-bg)}.community-comment>div:first-child{display:flex;justify-content:space-between;gap:10px}.community-comment strong{font-size:.59rem}.community-comment small{color:var(--cw-muted);font-size:.5rem}.community-comment p{margin:5px 0 0;color:var(--cw-muted);font-size:.61rem;line-height:1.5}.community-comment-actions{display:flex;justify-content:flex-end;margin-top:5px}.community-comment-actions button,.community-comment-actions summary{border:0;background:none;color:var(--cw-muted);font:inherit;font-size:.5rem;cursor:pointer}.community-comment-form{display:flex;gap:7px;margin-top:11px}.community-comment-form input{min-width:0}.community-comment-form button{flex:0 0 auto}.community-empty{grid-column:1/-1;display:grid;place-items:center;min-height:190px;padding:28px;border:1px dashed var(--cw-line);border-radius:22px;text-align:center}.community-empty>span{color:var(--cw-copper);font-size:2rem}.community-empty strong{margin-top:9px}.community-empty p{margin:5px 0 0;color:var(--cw-muted);font-size:.65rem}
@media(max-width:1050px){.community-v2-overview{grid-template-columns:1fr 1fr}.community-review-editor,.community-login-card{grid-column:1/-1}}@media(max-width:760px){.community-v2-heading{align-items:flex-start;flex-direction:column}.community-rating-hero{width:100%}.community-review-list{grid-template-columns:1fr}.community-v2-overview{grid-template-columns:1fr}.community-review-editor,.community-login-card{grid-column:auto}.community-report>form{right:auto;left:0}}@media(max-width:520px){.community-review-card{padding:16px}.community-review-editor-head{align-items:flex-start;flex-direction:column}.community-login-card{align-items:flex-start;flex-wrap:wrap}.community-login-card .button{width:100%}.community-comment-form{align-items:stretch;flex-direction:column}.community-comment-form .button{width:100%}}

/* Ride Together V2 — v1.77.0 */
.trip-ride-together-section,
.visit-ride-together-v2 {
    margin-top: 28px;
    padding: 24px;
    border: 1px solid var(--cw-line);
    border-radius: var(--cw-radius);
    background:
        radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--cw-copper) 12%, transparent), transparent 34%),
        var(--cw-surface);
    box-shadow: var(--cw-shadow);
}
.trip-ride-together-heading-actions,
.visit-ride-together-v2-heading {
    align-items: flex-start;
}
.trip-ride-together-heading-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.trip-ride-together-count,
.ride-together-v2-scope,
.visit-ride-together-card-top span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    border: 1px solid var(--cw-line);
    border-radius: 999px;
    color: var(--cw-muted);
    background: var(--cw-bg-soft);
    font-size: .75rem;
    font-weight: 750;
}
.trip-ride-together-create-details,
.visit-ride-together-create {
    position: relative;
}
.trip-ride-together-create-details > summary,
.visit-ride-together-create > summary {
    list-style: none;
    cursor: pointer;
}
.trip-ride-together-create-details > summary::-webkit-details-marker,
.visit-ride-together-create > summary::-webkit-details-marker { display: none; }
.trip-ride-together-create-popover,
.visit-ride-together-create-box {
    position: absolute;
    z-index: 24;
    top: calc(100% + 10px);
    right: 0;
    width: min(620px, calc(100vw - 44px));
    padding: 18px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 18px;
    background: var(--cw-surface-solid);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}
.trip-ride-together-form,
.visit-ride-together-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.trip-ride-together-form label,
.visit-ride-together-form label {
    display: grid;
    gap: 6px;
}
.trip-ride-together-form label > span,
.visit-ride-together-form label > span {
    color: var(--cw-muted);
    font-size: .78rem;
    font-weight: 750;
}
.trip-ride-together-form input,
.trip-ride-together-form select,
.visit-ride-together-form input,
.visit-ride-together-form select {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 9px 11px;
    border: 1px solid var(--cw-line);
    border-radius: 12px;
    color: var(--cw-text);
    background: var(--cw-bg);
}
.trip-ride-together-wide,
.visit-ride-together-form .is-wide { grid-column: 1 / -1; }
.trip-ride-together-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.trip-ride-together-form-footer small { color: var(--cw-muted); }
.trip-ride-together-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}
.trip-ride-together-card,
.visit-ride-together-card {
    display: grid;
    gap: 12px;
    padding: 18px;
    border: 1px solid var(--cw-line);
    border-radius: 18px;
    background: var(--cw-surface-solid);
}
.trip-ride-together-card.is-team,
.visit-ride-together-card.is-team { border-color: color-mix(in srgb, var(--cw-teal) 45%, var(--cw-line)); }
.trip-ride-together-card.is-group,
.visit-ride-together-card.is-group { border-color: color-mix(in srgb, var(--cw-copper) 45%, var(--cw-line)); }
.trip-ride-together-card-head,
.visit-ride-together-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.trip-ride-together-card h3,
.visit-ride-together-card h3 { margin: 4px 0 0; font-size: 1.03rem; }
.ride-together-v2-time {
    display: grid;
    justify-items: end;
    line-height: 1.05;
}
.ride-together-v2-time strong,
.visit-ride-together-card-top strong { font-size: 1.25rem; color: var(--cw-copper-strong); }
.ride-together-v2-time small { color: var(--cw-muted); }
.trip-ride-together-meta,
.visit-ride-together-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    color: var(--cw-muted);
    font-size: .82rem;
}
.trip-ride-together-card p,
.visit-ride-together-card p { margin: 0; color: var(--cw-muted); }
.trip-ride-together-people { display: flex; align-items: center; min-height: 28px; }
.trip-ride-together-people span {
    width: 29px;
    height: 29px;
    margin-right: -6px;
    display: grid;
    place-items: center;
    border: 2px solid var(--cw-surface-solid);
    border-radius: 50%;
    color: var(--cw-text);
    background: var(--cw-bg-soft);
    font-size: .72rem;
    font-weight: 800;
}
.trip-ride-together-actions,
.visit-ride-together-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.trip-ride-together-empty,
.visit-ride-together-empty {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 16px;
    padding: 18px;
    border: 1px dashed var(--cw-line-strong);
    border-radius: 16px;
    color: var(--cw-muted);
    background: color-mix(in srgb, var(--cw-bg-soft) 70%, transparent);
}
.trip-ride-together-empty > span,
.visit-ride-together-empty > span { font-size: 1.7rem; }
.trip-ride-together-empty strong { color: var(--cw-text); }
.trip-program-ride-together { margin-top: 10px; }
.visit-ride-together-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}
.visit-ride-together-card > small { color: var(--cw-muted); }
.visit-ride-together-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 5px;
    padding: 3px 7px;
    border-radius: 999px;
    color: var(--cw-copper-strong);
    background: color-mix(in srgb, var(--cw-copper) 12%, transparent);
    font-size: .68rem;
    font-weight: 800;
}
.visit-ride-together-flash { margin: 0 0 14px; }
.ride-together-meeting { color: var(--cw-teal) !important; font-weight: 700; }

@media (max-width: 900px) {
    .visit-ride-together-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .trip-ride-together-section,
    .visit-ride-together-v2 { padding: 17px; border-radius: 18px; }
    .trip-ride-together-grid,
    .visit-ride-together-row { grid-template-columns: 1fr; }
    .trip-ride-together-create-popover,
    .visit-ride-together-create-box {
        position: fixed;
        inset: auto 10px 74px 10px;
        width: auto;
        max-height: min(70vh, 680px);
        overflow: auto;
    }
    .trip-ride-together-form,
    .visit-ride-together-form { grid-template-columns: 1fr; }
    .trip-ride-together-wide,
    .visit-ride-together-form .is-wide { grid-column: auto; }
    .trip-ride-together-form-footer { align-items: stretch; flex-direction: column; }
    .trip-ride-together-card-head,
    .visit-ride-together-card-top { align-items: center; }
}

/* Global Search V2 — v1.78.0 */
.global-search-shell{position:relative;max-width:720px;z-index:20}.global-search-shell>.search-bar{max-width:none}.search-suggest-panel{position:absolute;z-index:80;top:calc(100% + 9px);left:0;right:0;overflow:hidden;border:1px solid var(--cw-line-strong);border-radius:18px;background:color-mix(in srgb,var(--cw-surface-solid) 96%,transparent);box-shadow:0 22px 70px rgba(0,0,0,.22);backdrop-filter:blur(20px)}.search-suggest-status{padding:18px;color:var(--cw-muted);font-size:.84rem}.search-suggest-list{display:grid;max-height:min(520px,62vh);overflow:auto}.search-suggest-item,.search-suggest-all{display:grid;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:11px;padding:11px 14px;border-bottom:1px solid var(--cw-line);color:var(--cw-text);transition:.15s ease}.search-suggest-item:hover,.search-suggest-item.is-active,.search-suggest-all:hover,.search-suggest-all.is-active{background:color-mix(in srgb,var(--cw-copper) 10%,var(--cw-surface-solid));}.search-suggest-symbol{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--cw-line-strong);border-radius:12px;background:var(--cw-surface);font-size:1.05rem;font-weight:900;color:var(--cw-copper)}.search-suggest-symbol.is-user{color:var(--cw-teal)}.search-suggest-symbol.is-group{color:#8d6bcc}.search-suggest-copy{display:grid;min-width:0;gap:1px}.search-suggest-copy small{font-size:.61rem;letter-spacing:.09em;text-transform:uppercase;color:var(--cw-copper);font-weight:850}.search-suggest-copy strong,.search-suggest-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-suggest-copy strong{font-size:.9rem}.search-suggest-copy span{font-size:.76rem;color:var(--cw-muted)}.search-suggest-arrow{color:var(--cw-muted);font-size:1.1rem}.search-suggest-all{border-bottom:0;background:color-mix(in srgb,var(--cw-surface) 90%,transparent);font-size:.82rem}.search-suggest-all>span:first-child{width:38px;text-align:center;color:var(--cw-copper)}
.search-v2-hero{overflow:visible}.search-v2-hero .global-search-shell{margin-top:24px}.search-type-chips{margin-top:18px}.search-type-chips .filter-chip{display:inline-flex;align-items:center;gap:7px}.search-type-chips .filter-chip small{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 12%,transparent);font-size:.63rem}.search-advanced-filters{display:grid;grid-template-columns:1fr 1fr 1fr auto auto;align-items:end;gap:10px;margin-top:16px;padding:14px;border:1px solid var(--cw-line);border-radius:18px;background:color-mix(in srgb,var(--cw-surface) 82%,transparent)}.search-advanced-filters label{display:grid;gap:6px;min-width:0}.search-advanced-filters label>span{font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--cw-muted)}.search-advanced-filters select{min-width:0;width:100%;height:43px;padding:0 11px;border:1px solid var(--cw-line-strong);border-radius:11px;background:var(--cw-surface-solid);color:var(--cw-text)}.search-reset-link{align-self:center;padding:10px 4px;color:var(--cw-muted);font-size:.78rem;font-weight:750}.search-reset-link:hover{color:var(--cw-copper)}.search-recent{display:flex;align-items:flex-start;gap:12px;margin-top:15px}.search-recent>span{padding-top:7px;white-space:nowrap;color:var(--cw-muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.search-recent>div{display:flex;flex-wrap:wrap;gap:7px}.search-recent a{padding:6px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.73rem;color:var(--cw-muted)}.search-recent a:hover{border-color:var(--cw-copper);color:var(--cw-copper)}.search-v2-results-head{align-items:flex-end}.search-v2-results-head h2{margin:.35rem 0 0}.search-v2-results-head>span{font-weight:800;color:var(--cw-copper)}.search-v2-result-list{gap:10px}.search-v2-result-card{transition:transform .16s ease,border-color .16s ease,background .16s ease}.search-v2-result-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 4%,var(--cw-surface))}.search-v2-empty{min-height:300px}
@media(max-width:900px){.search-advanced-filters{grid-template-columns:1fr 1fr}.search-advanced-filters .button{width:100%}.search-reset-link{text-align:center}}@media(max-width:620px){.global-search-shell{width:100%}.search-suggest-panel{position:fixed;top:auto;left:12px;right:12px;bottom:12px;max-height:68vh;border-radius:20px}.search-suggest-list{max-height:58vh}.search-advanced-filters{grid-template-columns:1fr}.search-recent{display:grid;gap:7px}.search-recent>span{padding-top:0}.search-v2-results-head{align-items:flex-start}.search-type-chips{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.search-type-chips .filter-chip{white-space:nowrap}}
.header-search-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.header-search-button.is-active{border-color:var(--cw-copper);color:var(--cw-copper)}

/* Challenges V2 — v1.79.0 */
.challenge-hero{padding:68px 0 34px;background:radial-gradient(circle at 82% 25%,rgba(245,158,11,.18),transparent 25%),linear-gradient(180deg,var(--surface-soft),transparent)}
.challenge-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:42px;align-items:center}.challenge-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);max-width:850px;margin:.2em 0}.challenge-hero p{max-width:760px;font-size:1.08rem;color:var(--text-muted)}.challenge-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.challenge-hero-orbit{width:190px;height:190px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;position:relative;margin:auto;background:var(--surface);box-shadow:0 24px 60px rgba(0,0,0,.08)}.challenge-hero-orbit span{font-size:4.5rem}.challenge-hero-orbit i{position:absolute;right:5px;top:20px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#f59e0b;color:#111;font-style:normal;font-size:1.5rem;box-shadow:0 8px 30px rgba(245,158,11,.35)}
.challenge-stats-section{padding-top:12px}.challenge-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.challenge-stat-grid article{border:1px solid var(--border);background:var(--surface);border-radius:20px;padding:20px;display:grid;grid-template-columns:auto 1fr;column-gap:13px;align-items:center}.challenge-stat-grid article>span{font-size:1.65rem;grid-row:1/3}.challenge-stat-grid strong{font-size:1.65rem}.challenge-stat-grid small{color:var(--text-muted)}
.challenge-filter-section{padding:20px 0}.challenge-filter-bar{display:grid;gap:16px;padding:18px;border:1px solid var(--border);border-radius:22px;background:var(--surface)}.challenge-filter-bar>div>span{display:block;color:var(--text-muted);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:9px}.challenge-pills{display:flex;flex-wrap:wrap;gap:8px}.challenge-pills a{padding:8px 12px;border:1px solid var(--border);border-radius:999px;color:var(--text);text-decoration:none;font-size:.9rem}.challenge-pills a:hover,.challenge-pills a.is-active{border-color:#f59e0b;background:rgba(245,158,11,.1)}
.challenge-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.challenge-card{border:1px solid var(--border);border-radius:24px;background:var(--surface);padding:22px;display:flex;flex-direction:column;gap:17px;position:relative;overflow:hidden}.challenge-card.is-official:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#f59e0b,#f97316,#eab308)}.challenge-card.is-joined{box-shadow:0 0 0 1px rgba(245,158,11,.18),0 18px 45px rgba(0,0,0,.05)}.challenge-card.is-completed{background:linear-gradient(145deg,rgba(245,158,11,.08),var(--surface) 45%)}.challenge-card-top{display:flex;gap:14px}.challenge-card-icon{width:52px;height:52px;flex:0 0 auto;border:1px solid var(--border);border-radius:16px;display:grid;place-items:center;font-size:1.7rem;background:var(--surface-soft)}.challenge-card-heading{min-width:0}.challenge-card-heading h3{font-size:1.25rem;margin:6px 0}.challenge-card-heading p{margin:0;color:var(--text-muted);line-height:1.55}.challenge-card-badges{display:flex;gap:6px;flex-wrap:wrap}.challenge-card-badges span,.challenge-card-badges b{font-size:.72rem;border:1px solid var(--border);border-radius:999px;padding:4px 8px;font-weight:700}.challenge-card-badges b{border-color:rgba(245,158,11,.4);color:#d97706;background:rgba(245,158,11,.08)}
.challenge-goal-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.challenge-goal-row>div{border:1px solid var(--border);border-radius:14px;padding:11px 12px;background:var(--surface-soft)}.challenge-goal-row small{display:block;color:var(--text-muted);font-size:.72rem;margin-bottom:4px}.challenge-goal-row strong{font-size:.9rem}.challenge-reward{display:flex;gap:8px;flex-wrap:wrap}.challenge-reward span{border-radius:10px;padding:7px 10px;background:rgba(245,158,11,.1);color:#d97706;font-weight:800;font-size:.82rem}.challenge-progress-block{border-top:1px solid var(--border);padding-top:14px}.challenge-progress-block>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:.88rem}.challenge-progress-track{height:9px;border-radius:999px;background:var(--surface-soft);overflow:hidden;margin-top:9px}.challenge-progress-track i{display:block;height:100%;background:linear-gradient(90deg,#f59e0b,#f97316);border-radius:inherit}.challenge-complete-badge{display:inline-flex;margin-top:10px;color:#15803d;font-size:.82rem}.challenge-mini-ranking{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--border);padding-top:13px}.challenge-mini-ranking>span{font-size:.77rem;color:var(--text-muted);font-weight:700}.challenge-mini-ranking>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.challenge-mini-ranking small{font-size:.73rem}.challenge-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.challenge-card-actions form{margin:0}.challenge-empty{grid-column:1/-1}.challenge-empty>span{font-size:2.5rem}
.challenge-create-card{display:grid;grid-template-columns:.72fr 1.28fr;gap:36px;border:1px solid var(--border);border-radius:28px;padding:28px;background:var(--surface)}.challenge-create-copy h2{font-size:2rem;margin:.35em 0}.challenge-create-copy p{color:var(--text-muted);line-height:1.6}.challenge-create-note{margin-top:18px;border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface-soft);font-size:.85rem;color:var(--text-muted)}.challenge-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.challenge-create-form label{display:flex;flex-direction:column;gap:6px}.challenge-create-form label>span{font-size:.76rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.challenge-create-form input,.challenge-create-form select,.challenge-create-form textarea{width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);padding:11px 12px}.challenge-create-form .is-wide,.challenge-create-submit{grid-column:1/-1}.challenge-create-submit{display:flex;justify-content:flex-end;margin-top:5px}
@media(max-width:900px){.challenge-hero-grid,.challenge-create-card{grid-template-columns:1fr}.challenge-hero-orbit{display:none}.challenge-card-grid{grid-template-columns:1fr}}
@media(max-width:640px){.challenge-hero{padding-top:42px}.challenge-stat-grid{grid-template-columns:1fr}.challenge-create-form{grid-template-columns:1fr}.challenge-create-form .is-wide,.challenge-create-submit{grid-column:auto}.challenge-goal-row{grid-template-columns:1fr}.challenge-card{padding:17px}.challenge-mini-ranking{flex-direction:column}.challenge-mini-ranking>div{justify-content:flex-start}}
.visit-challenge-strip{margin:18px 0 24px;border:1px solid var(--border);border-radius:20px;padding:16px;background:linear-gradient(135deg,rgba(245,158,11,.07),var(--surface))}.visit-challenge-strip-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}.visit-challenge-strip-head>div{display:flex;gap:9px;align-items:center}.visit-challenge-strip-head span{font-size:.78rem;color:#d97706;font-weight:800}.visit-challenge-strip-head strong{font-size:.95rem}.visit-challenge-strip-head a{font-size:.78rem;color:var(--text);text-decoration:none}.visit-challenge-strip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.visit-challenge-strip-grid article{border:1px solid var(--border);border-radius:13px;padding:10px;background:var(--surface)}.visit-challenge-strip-grid article>div:first-child{display:flex;gap:6px;align-items:flex-start}.visit-challenge-strip-grid article strong{font-size:.78rem;line-height:1.25}.visit-challenge-strip-grid article small{display:block;margin:7px 0 5px;color:var(--text-muted);font-size:.7rem}.visit-challenge-progress{height:5px;background:var(--surface-soft);border-radius:99px;overflow:hidden}.visit-challenge-progress i{display:block;height:100%;background:#f59e0b;border-radius:inherit}@media(max-width:900px){.visit-challenge-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.visit-challenge-strip-grid{grid-template-columns:1fr}.visit-challenge-strip-head{align-items:flex-start}}

/* Admin System Health V2 — v1.80.0 */
.admin-health-hero{padding-bottom:34px}.admin-health-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;align-items:end}.admin-health-overall{padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);display:grid;gap:5px}.admin-health-overall>span{font-size:.62rem;letter-spacing:.09em;text-transform:uppercase;color:var(--cw-muted);font-weight:850}.admin-health-overall>strong{font-size:1.35rem}.admin-health-overall>small{color:var(--cw-muted);font-size:.68rem;line-height:1.45}.admin-health-overall.is-healthy{border-color:color-mix(in srgb,var(--cw-success) 45%,var(--cw-line));background:linear-gradient(135deg,color-mix(in srgb,var(--cw-success) 8%,var(--cw-surface)),var(--cw-surface))}.admin-health-overall.is-degraded{border-color:color-mix(in srgb,#f59e0b 48%,var(--cw-line));background:linear-gradient(135deg,color-mix(in srgb,#f59e0b 8%,var(--cw-surface)),var(--cw-surface))}.admin-health-overall.is-down{border-color:color-mix(in srgb,#ef4444 50%,var(--cw-line));background:linear-gradient(135deg,color-mix(in srgb,#ef4444 8%,var(--cw-surface)),var(--cw-surface))}
.admin-health-section{padding-top:34px}.admin-health-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}.admin-health-toolbar h2{margin:5px 0}.admin-health-toolbar p{max-width:820px;margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.55}.admin-health-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-health-source-card{padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);display:flex;flex-direction:column;gap:15px;min-width:0}.admin-health-source-card.is-healthy{border-color:color-mix(in srgb,var(--cw-success) 36%,var(--cw-line))}.admin-health-source-card.is-degraded{border-color:color-mix(in srgb,#f59e0b 38%,var(--cw-line))}.admin-health-source-card.is-down{border-color:color-mix(in srgb,#ef4444 45%,var(--cw-line))}.admin-health-source-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-health-source-head>div{display:flex;align-items:center;gap:9px;min-width:0}.admin-health-source-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-health-dot{width:10px;height:10px;border-radius:50%;background:var(--cw-muted);box-shadow:0 0 0 4px color-mix(in srgb,var(--cw-muted) 12%,transparent)}.is-healthy .admin-health-dot{background:var(--cw-success);box-shadow:0 0 0 4px color-mix(in srgb,var(--cw-success) 14%,transparent)}.is-degraded .admin-health-dot{background:#f59e0b;box-shadow:0 0 0 4px color-mix(in srgb,#f59e0b 14%,transparent)}.is-down .admin-health-dot{background:#ef4444;box-shadow:0 0 0 4px color-mix(in srgb,#ef4444 14%,transparent)}.admin-health-state{padding:4px 8px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.is-healthy .admin-health-state{color:var(--cw-success);border-color:color-mix(in srgb,var(--cw-success) 35%,var(--cw-line))}.is-degraded .admin-health-state{color:#d97706;border-color:color-mix(in srgb,#f59e0b 35%,var(--cw-line))}.is-down .admin-health-state{color:#dc2626;border-color:color-mix(in srgb,#ef4444 35%,var(--cw-line))}.admin-health-source-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-health-source-meta>div{padding:10px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.admin-health-source-meta span{display:block;color:var(--cw-muted);font-size:.56rem;text-transform:uppercase;letter-spacing:.05em}.admin-health-source-meta strong{display:block;margin-top:4px;font-size:.82rem}.admin-health-last-check{display:grid;gap:4px;min-height:38px}.admin-health-last-check small{color:var(--cw-muted);font-size:.64rem;overflow-wrap:anywhere}.admin-health-last-check small.is-error{color:#ef4444}.admin-health-source-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}.admin-health-source-actions form{margin:0}.admin-health-source-actions .button{font-size:.65rem;padding:8px 10px}
.admin-health-section-heading{margin-top:36px}.admin-health-runtime-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-health-runtime-card{display:flex;gap:13px;padding:17px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.admin-health-runtime-card.is-healthy{border-color:color-mix(in srgb,var(--cw-success) 30%,var(--cw-line))}.admin-health-runtime-card.is-degraded{border-color:color-mix(in srgb,#f59e0b 35%,var(--cw-line))}.admin-health-runtime-card.is-down{border-color:color-mix(in srgb,#ef4444 40%,var(--cw-line))}.admin-health-runtime-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg);font-size:1.2rem}.admin-health-runtime-card>div:last-child{display:grid;gap:3px;min-width:0}.admin-health-runtime-card span{color:var(--cw-muted);font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.admin-health-runtime-card strong{font-size:.95rem}.admin-health-runtime-card small{color:var(--cw-muted);font-size:.63rem;line-height:1.35}.admin-health-migration-alert{margin-top:14px;padding:17px;border:1px solid color-mix(in srgb,#f59e0b 45%,var(--cw-line));border-radius:18px;background:color-mix(in srgb,#f59e0b 7%,var(--cw-surface));display:grid;gap:12px}.admin-health-migration-alert>div:first-child{display:flex;gap:11px}.admin-health-migration-alert p{margin:3px 0 0;color:var(--cw-muted);font-size:.7rem}.admin-health-migration-alert code{display:block;padding:10px 12px;border-radius:10px;background:var(--cw-bg)}.admin-health-pending-list{display:flex;flex-wrap:wrap;gap:6px}.admin-health-pending-list small{padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);font-size:.57rem}
.admin-health-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.admin-health-quick-grid a{display:grid;grid-template-columns:auto 1fr;column-gap:10px;padding:16px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);color:var(--cw-text)}.admin-health-quick-grid a>span{grid-row:1/3;font-size:1.4rem}.admin-health-quick-grid strong{font-size:.82rem}.admin-health-quick-grid small{color:var(--cw-muted);font-size:.62rem}.admin-health-quick-grid a:hover{border-color:var(--cw-copper);transform:translateY(-1px)}.admin-health-error-list{display:grid;gap:8px}.admin-health-error-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 15px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.admin-health-error-kind{padding:4px 7px;border-radius:7px;background:color-mix(in srgb,#ef4444 10%,transparent);color:#ef4444;font-size:.54rem;font-weight:900}.admin-health-error-list strong{font-size:.78rem}.admin-health-error-list p{margin:3px 0 0;color:var(--cw-muted);font-size:.64rem;line-height:1.45}.admin-health-error-list time{color:var(--cw-muted);font-size:.59rem;white-space:nowrap}.admin-health-empty{display:flex;gap:13px;padding:20px;border:1px dashed var(--cw-line-strong);border-radius:18px;background:var(--cw-surface)}.admin-health-empty>span{font-size:1.5rem;color:var(--cw-success)}.admin-health-empty strong{font-size:.82rem}.admin-health-empty p{margin:3px 0 0;color:var(--cw-muted);font-size:.68rem}.admin-health-command-card{margin-bottom:30px}.admin-health-dashboard-link{border-color:color-mix(in srgb,var(--cw-teal) 30%,var(--cw-line));background:linear-gradient(120deg,color-mix(in srgb,var(--cw-teal) 6%,var(--cw-surface)),var(--cw-surface))}
.admin-health-modal[hidden]{display:none}.admin-health-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:18px}.admin-health-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.66);backdrop-filter:blur(7px)}.admin-health-modal-panel{position:relative;width:min(900px,100%);max-height:min(82vh,820px);display:flex;flex-direction:column;border:1px solid var(--cw-line-strong);border-radius:24px;background:var(--cw-surface-solid);box-shadow:0 30px 100px rgba(0,0,0,.45);overflow:hidden}.admin-health-modal-head{display:flex;justify-content:space-between;gap:20px;padding:20px 22px 14px;border-bottom:1px solid var(--cw-line)}.admin-health-modal-head h2{margin:4px 0 0}.admin-health-modal-close{width:38px;height:38px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);font-size:1.25rem;cursor:pointer}.admin-health-progress{height:4px;background:var(--cw-bg)}.admin-health-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));transition:width .2s ease}.admin-health-console{min-height:300px;max-height:55vh;overflow:auto;padding:16px 18px;background:#0b0f10;color:#d8e1df;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.admin-health-console-line{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px;padding:3px 0}.admin-health-console-line time{color:#6f8580}.admin-health-console-line.is-success span{color:#6dd69a}.admin-health-console-line.is-warning span{color:#f6c453}.admin-health-console-line.is-error span{color:#ff8585}.admin-health-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;border-top:1px solid var(--cw-line)}.admin-health-modal-footer>span{color:var(--cw-muted);font-size:.68rem}.has-admin-health-modal{overflow:hidden}
@media(max-width:1080px){.admin-health-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-health-runtime-grid,.admin-health-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.admin-health-hero-grid{grid-template-columns:1fr}.admin-health-toolbar{align-items:stretch;flex-direction:column}.admin-health-toolbar .button{width:100%}.admin-health-source-grid,.admin-health-runtime-grid,.admin-health-quick-grid{grid-template-columns:1fr}.admin-health-error-list article{grid-template-columns:auto minmax(0,1fr)}.admin-health-error-list time{grid-column:2}.admin-health-modal{padding:8px}.admin-health-modal-panel{max-height:90vh;border-radius:18px}.admin-health-console{min-height:280px}.admin-health-console-line{grid-template-columns:68px minmax(0,1fr)}}

/* Community Photos V3 — v1.81.0 */
.community-photo-upload{position:relative}.community-photo-upload>summary{list-style:none;cursor:pointer}.community-photo-upload>summary::-webkit-details-marker{display:none}.community-photo-upload-panel{position:absolute;z-index:90;top:calc(100% + 10px);right:0;width:min(520px,calc(100vw - 32px));padding:18px;border:1px solid var(--cw-line-strong);border-radius:20px;background:var(--cw-surface-solid);box-shadow:0 24px 70px rgba(0,0,0,.24)}.community-photo-upload-head{display:grid;gap:5px;margin-bottom:14px}.community-photo-upload-head strong{font-size:1.05rem}.community-photo-upload-head p{margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.5}.community-photo-upload-form{display:grid;gap:12px}.community-photo-upload-form label{display:grid;gap:6px}.community-photo-upload-form label>span{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--cw-muted)}.community-photo-upload-form input,.community-photo-upload-form textarea{width:100%;min-width:0;padding:10px 12px;border:1px solid var(--cw-line-strong);border-radius:12px;background:var(--cw-bg);color:var(--cw-text)}.community-photo-upload-form input[type=file]{padding:8px}.community-photo-upload-form textarea{resize:vertical}.community-photo-upload-form small{color:var(--cw-muted);font-size:.65rem}.community-photo-upload-actions{display:flex;flex-wrap:wrap;gap:8px}.community-photo-flash{margin:16px 0;padding:13px 15px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-surface);font-size:.78rem;font-weight:750}.community-photo-flash.is-success{border-color:color-mix(in srgb,var(--cw-success) 40%,var(--cw-line));background:color-mix(in srgb,var(--cw-success) 8%,var(--cw-surface));color:var(--cw-success)}
.community-photo-hero{padding:48px 0 30px;border-bottom:1px solid var(--cw-line);background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 8%,var(--cw-bg)),var(--cw-bg))}.community-photo-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end}.community-photo-hero h1{margin:.35rem 0}.community-photo-hero p{max-width:760px;margin:0;color:var(--cw-muted)}.community-photo-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.community-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.community-photo-card{overflow:hidden;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.community-photo-preview{position:relative;aspect-ratio:4/3;background:var(--cw-bg-soft);overflow:hidden}.community-photo-preview img{width:100%;height:100%;object-fit:cover;display:block}.community-photo-preview-missing{width:100%;height:100%;display:grid;place-items:center;font-size:2rem;color:var(--cw-muted)}.community-photo-status{position:absolute;top:10px;right:10px;padding:5px 8px;border:1px solid var(--cw-line-strong);border-radius:999px;background:color-mix(in srgb,var(--cw-surface-solid) 94%,transparent);font-size:.58rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;backdrop-filter:blur(10px)}.community-photo-status.is-pending_review{color:#d97706}.community-photo-status.is-ready{color:var(--cw-success)}.community-photo-status.is-rejected,.community-photo-status.is-hidden{color:var(--cw-danger)}.community-photo-card-body{display:grid;gap:11px;padding:15px}.community-photo-card-head small{display:block;color:var(--cw-muted);font-size:.62rem}.community-photo-card-head strong{display:block;margin-top:3px;color:var(--cw-text);font-size:.92rem}.community-photo-card-body p{margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.5}.community-photo-reason{display:grid;gap:3px;padding:9px 10px;border-radius:10px;background:color-mix(in srgb,var(--cw-danger) 7%,var(--cw-bg));font-size:.68rem}.community-photo-reason strong{color:var(--cw-danger)}.community-photo-reason span{color:var(--cw-muted)}.community-photo-empty{display:flex;align-items:center;gap:14px;padding:22px;border:1px dashed var(--cw-line-strong);border-radius:18px;background:var(--cw-surface)}.community-photo-empty>span{font-size:1.7rem}.community-photo-empty strong{display:block}.community-photo-empty p{margin:4px 0 0;color:var(--cw-muted);font-size:.75rem}.pagination-wrap{margin-top:22px}
.admin-community-photo-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:20px}.admin-community-photo-filters a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-surface);color:var(--cw-text)}.admin-community-photo-filters a.is-active{border-color:var(--cw-copper);box-shadow:inset 0 0 0 1px var(--cw-copper)}.admin-community-photo-filters span{font-size:.72rem;color:var(--cw-muted)}.admin-community-photo-filters strong{font-size:1rem}.admin-community-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-community-photo-card{overflow:hidden;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-community-photo-image{position:relative;aspect-ratio:16/9;background:var(--cw-bg-soft)}.admin-community-photo-image img{width:100%;height:100%;object-fit:cover}.admin-community-photo-body{display:grid;gap:13px;padding:16px}.admin-community-photo-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-community-photo-meta>div{min-width:0;padding:9px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg)}.admin-community-photo-meta span{display:block;color:var(--cw-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em}.admin-community-photo-meta strong,.admin-community-photo-meta a{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cw-text);font-size:.72rem;font-weight:750}.admin-community-photo-body>p{margin:0;color:var(--cw-muted);font-size:.75rem;line-height:1.5}.admin-community-photo-form{display:grid;gap:10px}.admin-community-photo-form label{display:grid;gap:5px}.admin-community-photo-form label>span{font-size:.62rem;color:var(--cw-muted);font-weight:800}.admin-community-photo-form textarea{width:100%;padding:9px 10px;border:1px solid var(--cw-line-strong);border-radius:11px;background:var(--cw-bg);color:var(--cw-text);resize:vertical}.admin-community-photo-actions{display:flex;flex-wrap:wrap;gap:7px}
@media(max-width:980px){.community-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-community-photo-grid{grid-template-columns:1fr}.admin-community-photo-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.community-photo-upload-panel{position:fixed;inset:auto 8px 74px 8px;width:auto;max-height:72vh;overflow:auto}.community-photo-hero{padding:34px 0 24px}.community-photo-hero-grid{grid-template-columns:1fr;align-items:start}.community-photo-grid{grid-template-columns:1fr}.admin-community-photo-filters{grid-template-columns:1fr}.admin-community-photo-meta{grid-template-columns:1fr}.community-photo-upload-actions,.community-photo-hero-actions,.admin-community-photo-actions{align-items:stretch;flex-direction:column}.community-photo-upload-actions .button,.community-photo-hero-actions .button,.admin-community-photo-actions .button{width:100%;text-align:center}}
.park-gallery-grid figcaption{display:grid;gap:2px}.park-gallery-grid figcaption strong{font-size:.72rem;color:var(--cw-text)}.park-gallery-grid figcaption span{font-size:.62rem;color:var(--cw-muted)}

.community-photo-rights{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:.65rem!important;padding:.8rem .9rem;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent);font-size:.86rem;line-height:1.4}.community-photo-rights input{width:1rem;height:1rem;margin-top:.12rem;accent-color:var(--accent)}
.community-photo-form-errors{display:grid;gap:.25rem;padding:.75rem .9rem;border:1px solid color-mix(in srgb,#d84a4a 48%,var(--border));border-radius:14px;background:color-mix(in srgb,#d84a4a 9%,var(--surface));font-size:.82rem}

/* Community Feed — v1.82.0 */
.community-feed-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.community-feed-button.is-active{border-color:var(--cw-copper);color:var(--cw-copper)}
.community-feed-hero{padding:58px 0 34px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--cw-teal) 12%,transparent),transparent 26%),linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 7%,var(--cw-bg)),var(--cw-bg))}.community-feed-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:36px;align-items:end}.community-feed-hero h1{margin:.3rem 0 .55rem;font-size:clamp(2.35rem,5vw,4.5rem)}.community-feed-hero>div>div>p,.community-feed-hero-grid>div>p{max-width:780px;margin:0;color:var(--cw-muted);font-size:1rem;line-height:1.65}.community-feed-privacy{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:11px 13px;border:1px solid var(--cw-line);border-radius:14px;background:color-mix(in srgb,var(--cw-surface) 78%,transparent);max-width:760px}.community-feed-privacy>span{font-size:1.05rem}.community-feed-privacy p{margin:0!important;font-size:.72rem!important;line-height:1.5!important;color:var(--cw-muted)}.community-feed-hero-stat{display:grid;gap:4px;padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface);box-shadow:0 18px 50px rgba(0,0,0,.06)}.community-feed-hero-stat span{font-size:.61rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--cw-muted)}.community-feed-hero-stat strong{font-size:2.2rem;line-height:1;color:var(--cw-copper)}.community-feed-hero-stat small{color:var(--cw-muted);font-size:.68rem;line-height:1.4}
.community-feed-controls-section{padding-top:20px;padding-bottom:8px}.community-feed-controls{display:grid;gap:14px}.community-feed-scope-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.community-feed-scope-tabs a{display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center;padding:14px 15px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);color:var(--cw-text);transition:.16s ease}.community-feed-scope-tabs a:hover,.community-feed-scope-tabs a.is-active{border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line));background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 7%,var(--cw-surface)),var(--cw-surface));transform:translateY(-1px)}.community-feed-scope-tabs a>span{grid-row:1/3;font-size:1.45rem}.community-feed-scope-tabs strong{font-size:.88rem}.community-feed-scope-tabs small{color:var(--cw-muted);font-size:.64rem}.community-feed-filter-wrap{display:grid;gap:8px;padding:13px 14px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface)}.community-feed-filter-wrap>span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--cw-muted)}.community-feed-filter-chips{display:flex;flex-wrap:wrap;gap:7px}.community-feed-filter-chips a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);background:var(--cw-bg);font-size:.72rem;font-weight:750}.community-feed-filter-chips a:hover,.community-feed-filter-chips a.is-active{border-color:var(--cw-copper);color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 7%,var(--cw-bg))}.community-feed-filter-chips a small{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 12%,transparent);font-size:.58rem;color:inherit}
.community-feed-section{padding-top:20px}.community-feed-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;align-items:start}.community-feed-stream{min-width:0}.community-feed-heading{align-items:flex-end}.community-feed-heading>span{font-size:.72rem;font-weight:800;color:var(--cw-muted)}.community-feed-list{display:grid;gap:12px}.community-feed-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;position:relative}.community-feed-card-rail{display:grid;grid-template-rows:42px 1fr;justify-items:center;min-height:100%}.community-feed-kind-icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--cw-line-strong);border-radius:13px;background:var(--cw-surface);font-size:1.08rem;box-shadow:0 8px 24px rgba(0,0,0,.05)}.community-feed-card-rail i{display:block;width:1px;height:100%;background:linear-gradient(var(--cw-line-strong),transparent)}.community-feed-card:last-child .community-feed-card-rail i{display:none}.community-feed-card-main{overflow:hidden;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface);transition:.16s ease}.community-feed-card-main:hover{border-color:color-mix(in srgb,var(--cw-copper) 32%,var(--cw-line));box-shadow:0 16px 40px rgba(0,0,0,.06)}.community-feed-actor-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--cw-line)}.community-feed-avatar{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--cw-line-strong);border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 14%,var(--cw-bg)),var(--cw-bg));color:var(--cw-copper);font-size:.8rem;font-weight:900}.community-feed-actor-row>div{display:grid;gap:1px;min-width:0}.community-feed-actor-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cw-text);font-size:.8rem;font-weight:850}.community-feed-actor-row>div>span{color:var(--cw-muted);font-size:.64rem}.community-feed-actor-row time{color:var(--cw-muted);font-size:.61rem;white-space:nowrap}.community-feed-content{display:grid;gap:7px;padding:15px}.community-feed-title{color:var(--cw-text);font-size:1.03rem;font-weight:850}.community-feed-content>p{margin:0;color:var(--cw-muted);font-size:.74rem;line-height:1.5}.community-feed-content blockquote{margin:2px 0 0;padding:10px 12px;border-left:3px solid var(--cw-copper);border-radius:0 10px 10px 0;background:var(--cw-bg);color:var(--cw-muted);font-size:.72rem;line-height:1.55}.community-feed-photo{display:block;aspect-ratio:16/8;overflow:hidden;background:var(--cw-bg-soft)}.community-feed-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.community-feed-photo:hover img{transform:scale(1.015)}.community-feed-rating{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.community-feed-rating>span{color:#d78a16;letter-spacing:.06em;font-size:.92rem}.community-feed-rating small{color:var(--cw-success);font-size:.62rem;font-weight:800}.community-feed-badge-tier,.community-feed-score{justify-self:start;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);color:var(--cw-muted);font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.community-feed-badge-tier.is-silver{color:#7f8c9a}.community-feed-badge-tier.is-gold,.community-feed-badge-tier.is-legend{color:#c78511}.community-feed-score{color:var(--cw-teal)}
.community-feed-aside{position:sticky;top:88px;display:grid;gap:12px}.community-feed-info-card{display:grid;gap:7px;padding:17px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.community-feed-info-card>span{font-size:1.4rem}.community-feed-info-card strong{font-size:.88rem}.community-feed-info-card p{margin:0;color:var(--cw-muted);font-size:.68rem;line-height:1.55}.community-feed-info-card a{margin-top:3px;color:var(--cw-copper);font-size:.69rem;font-weight:800}.community-feed-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:24px;border:1px dashed var(--cw-line-strong);border-radius:20px;background:var(--cw-surface)}.community-feed-empty>span{font-size:2rem}.community-feed-empty strong{display:block}.community-feed-empty p{margin:4px 0 0;color:var(--cw-muted);font-size:.73rem;line-height:1.5}
@media(max-width:980px){.community-feed-layout{grid-template-columns:1fr}.community-feed-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.community-feed-hero-grid{grid-template-columns:minmax(0,1fr) 190px}}
@media(max-width:700px){.community-feed-hero{padding:38px 0 25px}.community-feed-hero-grid{grid-template-columns:1fr;gap:18px}.community-feed-hero-stat{grid-template-columns:auto 1fr;align-items:center}.community-feed-hero-stat span,.community-feed-hero-stat small{grid-column:2}.community-feed-hero-stat strong{grid-row:1/3;font-size:1.8rem}.community-feed-scope-tabs{grid-template-columns:1fr}.community-feed-filter-chips{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.community-feed-filter-chips a{white-space:nowrap}.community-feed-layout{gap:16px}.community-feed-aside{grid-template-columns:1fr}.community-feed-card{grid-template-columns:34px minmax(0,1fr);gap:6px}.community-feed-kind-icon{width:32px;height:32px;border-radius:10px;font-size:.9rem}.community-feed-card-rail{grid-template-rows:34px 1fr}.community-feed-actor-row{grid-template-columns:34px minmax(0,1fr);padding:11px 12px}.community-feed-avatar{width:34px;height:34px}.community-feed-actor-row time{grid-column:2}.community-feed-content{padding:13px}.community-feed-photo{aspect-ratio:4/3}.community-feed-empty{grid-template-columns:auto 1fr;align-items:start}.community-feed-empty .button{grid-column:1/3;width:100%;text-align:center}}

/* Local Experts & Reputation — v1.83.0 */
.local-experts-hero{padding:64px 0 38px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--cw-teal) 14%,transparent),transparent 26%),radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--cw-copper) 10%,transparent),transparent 30%),var(--cw-bg)}
.local-experts-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:42px;align-items:center}.local-experts-hero h1{margin:.3rem 0 .55rem;font-size:clamp(2.4rem,5vw,4.7rem)}.local-experts-hero p{max-width:780px;margin:0;color:var(--cw-muted);line-height:1.65}.local-experts-rule{display:flex;align-items:flex-start;gap:10px;max-width:800px;margin-top:18px;padding:12px 14px;border:1px solid var(--cw-line);border-radius:15px;background:color-mix(in srgb,var(--cw-surface) 82%,transparent)}.local-experts-rule>span{font-size:1.15rem}.local-experts-rule p{font-size:.73rem;line-height:1.55}.local-experts-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);box-shadow:0 20px 55px rgba(0,0,0,.07)}.local-experts-hero-stats>div{display:grid;gap:5px;min-width:0;padding:20px 14px;text-align:center}.local-experts-hero-stats>div+div{border-left:1px solid var(--cw-line)}.local-experts-hero-stats strong{color:var(--cw-copper);font-size:1.9rem;line-height:1}.local-experts-hero-stats span{color:var(--cw-muted);font-size:.62rem;line-height:1.3;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.local-experts-filter-section{padding-top:20px;padding-bottom:12px}.local-experts-filter{display:grid;grid-template-columns:minmax(190px,1fr) minmax(220px,1.4fr) auto auto;align-items:end;gap:10px;padding:15px;border:1px solid var(--cw-line);border-radius:19px;background:var(--cw-surface)}.local-experts-filter label{display:grid;gap:6px;min-width:0}.local-experts-filter label>span{color:var(--cw-muted);font-size:.63rem;text-transform:uppercase;letter-spacing:.07em;font-weight:850}.local-experts-filter select{width:100%;height:43px;padding:0 11px;border:1px solid var(--cw-line-strong);border-radius:11px;background:var(--cw-bg);color:var(--cw-text)}
.local-experts-list-section{padding-top:30px}.local-experts-heading{align-items:flex-end}.local-expert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.local-expert-card{position:relative;display:grid;gap:13px;padding:18px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);overflow:hidden;box-shadow:0 14px 38px rgba(0,0,0,.04)}.local-expert-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--cw-line-strong)}.local-expert-card.is-bronze:before{background:linear-gradient(90deg,#a76a3d,#cc8a55)}.local-expert-card.is-silver:before{background:linear-gradient(90deg,#7f8b9a,#b9c1cc)}.local-expert-card.is-gold:before{background:linear-gradient(90deg,#be8614,#f1c34a)}.local-expert-card.is-legend:before{background:linear-gradient(90deg,var(--cw-teal),var(--cw-copper),#f0cf6b)}.local-expert-rank{position:absolute;right:12px;top:11px;color:var(--cw-muted);font-size:.62rem;font-weight:900}.local-expert-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding-right:26px}.local-expert-avatar,.park-local-expert-avatar{display:grid;place-items:center;border:1px solid var(--cw-line-strong);border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 14%,var(--cw-bg)),var(--cw-bg));color:var(--cw-copper);font-weight:900}.local-expert-avatar{width:44px;height:44px}.local-expert-head>div{display:grid;gap:2px;min-width:0}.local-expert-user{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cw-text);font-size:.84rem;font-weight:900}.local-expert-head>div>span{color:var(--cw-muted);font-size:.63rem}.local-expert-score{display:grid;justify-items:end;color:var(--cw-copper);font-size:1.15rem}.local-expert-score small{color:var(--cw-muted);font-size:.52rem;text-transform:uppercase;letter-spacing:.06em}.local-expert-park{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:10px 11px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg);color:var(--cw-text)}.local-expert-park>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface))}.local-expert-park>div{display:grid;gap:1px;min-width:0}.local-expert-park strong,.local-expert-park small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.local-expert-park strong{font-size:.78rem}.local-expert-park small{color:var(--cw-muted);font-size:.6rem}.local-expert-signals{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.local-expert-signals>span{display:grid;place-items:center;gap:2px;min-width:0;padding:7px 3px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-bg);color:var(--cw-muted);font-size:.62rem}.local-expert-signals strong{color:var(--cw-text);font-size:.7rem}.local-expert-reputation{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding-top:11px;border-top:1px solid var(--cw-line)}.local-expert-reputation>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--cw-teal) 8%,var(--cw-bg));color:var(--cw-teal);font-weight:900}.local-expert-reputation>div{display:grid;gap:1px}.local-expert-reputation small{color:var(--cw-muted);font-size:.53rem;text-transform:uppercase;letter-spacing:.05em}.local-expert-reputation strong{font-size:.68rem}.local-expert-reputation>b{color:var(--cw-teal);font-size:.8rem}.local-expert-reputation.is-reference>span,.local-expert-reputation.is-ambassador>span{color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 9%,var(--cw-bg))}.local-expert-reputation.is-reference>b,.local-expert-reputation.is-ambassador>b{color:var(--cw-copper)}
.local-experts-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:15px;align-items:center;padding:25px;border:1px dashed var(--cw-line-strong);border-radius:21px;background:var(--cw-surface)}.local-experts-empty>span{font-size:2rem}.local-experts-empty strong{display:block}.local-experts-empty p{margin:4px 0 0;color:var(--cw-muted);font-size:.75rem;line-height:1.5}.local-experts-how-section{padding-top:38px}.local-experts-how-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.local-experts-how-grid article{display:grid;gap:7px;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.local-experts-how-grid article>span{font-size:1.45rem}.local-experts-how-grid strong{font-size:.82rem}.local-experts-how-grid p{margin:0;color:var(--cw-muted);font-size:.68rem;line-height:1.55}
.park-local-experts-section{padding-top:12px;padding-bottom:34px}.park-local-experts-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}.park-local-experts-heading>div{max-width:780px}.park-local-experts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.park-local-expert-card{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;padding:14px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);overflow:hidden}.park-local-expert-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--cw-line-strong)}.park-local-expert-card.is-bronze:before{background:#b87948}.park-local-expert-card.is-silver:before{background:#9aa5b2}.park-local-expert-card.is-gold:before{background:#d7a324}.park-local-expert-card.is-legend:before{background:linear-gradient(var(--cw-teal),var(--cw-copper))}.park-local-expert-avatar{width:40px;height:40px}.park-local-expert-main{display:grid;gap:2px;min-width:0}.park-local-expert-main>a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cw-text);font-size:.76rem;font-weight:900}.park-local-expert-main>span{color:var(--cw-muted);font-size:.58rem}.park-local-expert-main>div{display:flex;gap:6px;flex-wrap:wrap;margin-top:3px}.park-local-expert-main small{color:var(--cw-muted);font-size:.55rem}.park-local-expert-card>strong{display:grid;justify-items:end;color:var(--cw-copper);font-size:.9rem}.park-local-expert-card>strong small{font-size:.45rem;color:var(--cw-muted);text-transform:uppercase}
.explorer-local-experts-section{position:relative}.explorer-local-experts-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:14px;margin-bottom:15px}.explorer-reputation-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.explorer-reputation-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:color-mix(in srgb,var(--cw-teal) 9%,var(--cw-bg));color:var(--cw-teal);font-size:1.25rem;font-weight:900}.explorer-reputation-card>div{display:grid;gap:2px}.explorer-reputation-card small{color:var(--cw-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.05em}.explorer-reputation-card strong{font-size:.9rem}.explorer-reputation-card p{margin:2px 0 0;color:var(--cw-muted);font-size:.66rem;line-height:1.45}.explorer-reputation-card>b{color:var(--cw-teal);font-size:1.4rem}.explorer-reputation-card.is-reference .explorer-reputation-icon,.explorer-reputation-card.is-ambassador .explorer-reputation-icon{color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 10%,var(--cw-bg))}.explorer-reputation-card.is-reference>b,.explorer-reputation-card.is-ambassador>b{color:var(--cw-copper)}.explorer-local-experts-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.explorer-local-experts-summary>div{display:grid;align-content:center;gap:2px;padding:13px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface);text-align:center}.explorer-local-experts-summary strong{color:var(--cw-copper);font-size:1.25rem}.explorer-local-experts-summary span{color:var(--cw-muted);font-size:.58rem;line-height:1.3}.explorer-local-experts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.explorer-local-expert-park{display:grid;gap:9px;padding:13px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);color:var(--cw-text);transition:.16s ease}.explorer-local-expert-park:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));box-shadow:0 12px 28px rgba(0,0,0,.05)}.explorer-local-expert-top{display:grid;grid-template-columns:27px minmax(0,1fr) auto;gap:7px;align-items:center}.explorer-local-expert-top>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:var(--cw-bg);font-size:.85rem}.explorer-local-expert-top>div{display:grid;gap:1px;min-width:0}.explorer-local-expert-top strong,.explorer-local-expert-top small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explorer-local-expert-top strong{font-size:.7rem}.explorer-local-expert-top small{color:var(--cw-muted);font-size:.52rem}.explorer-local-expert-top>b{display:grid;justify-items:end;color:var(--cw-copper);font-size:.72rem}.explorer-local-expert-top>b small{font-size:.42rem;text-transform:uppercase}.explorer-local-expert-status{display:grid;gap:5px}.explorer-local-expert-status>span{color:var(--cw-muted);font-size:.57rem;font-weight:800}.explorer-local-expert-status>i{display:block;height:4px;overflow:hidden;border-radius:99px;background:var(--cw-line)}.explorer-local-expert-status>i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-teal),var(--cw-copper))}.explorer-local-expert-status>small{color:var(--cw-muted);font-size:.5rem}.explorer-local-expert-signals{display:flex;gap:5px;flex-wrap:wrap}.explorer-local-expert-signals small{color:var(--cw-muted);font-size:.52rem}.explorer-local-expert-park.is-gold,.explorer-local-expert-park.is-legend{background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface)),var(--cw-surface))}
.local-experts-feed-card{background:linear-gradient(145deg,color-mix(in srgb,var(--cw-teal) 4%,var(--cw-surface)),var(--cw-surface))}
@media(max-width:1100px){.local-expert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.park-local-experts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-local-experts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.local-experts-hero-grid{grid-template-columns:1fr;gap:22px}.local-experts-filter{grid-template-columns:1fr 1fr}.local-experts-filter .button{width:100%}.local-experts-how-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-local-experts-layout{grid-template-columns:1fr}}
@media(max-width:680px){.local-experts-hero{padding:40px 0 26px}.local-experts-hero-stats{grid-template-columns:1fr}.local-experts-hero-stats>div{grid-template-columns:auto 1fr;align-items:center;text-align:left;padding:13px 16px}.local-experts-hero-stats>div+div{border-left:0;border-top:1px solid var(--cw-line)}.local-experts-hero-stats strong{grid-row:1/3;font-size:1.55rem}.local-experts-filter{grid-template-columns:1fr}.local-expert-grid,.local-experts-how-grid,.park-local-experts-grid,.explorer-local-experts-grid{grid-template-columns:1fr}.local-expert-signals{grid-template-columns:repeat(3,1fr)}.local-experts-empty{grid-template-columns:auto 1fr}.local-experts-empty .button{grid-column:1/3;width:100%;text-align:center}.park-local-experts-heading{align-items:flex-start;flex-direction:column}.park-local-experts-heading .button{width:100%;text-align:center}.explorer-reputation-card{grid-template-columns:40px minmax(0,1fr)}.explorer-reputation-icon{width:38px;height:38px}.explorer-reputation-card>b{grid-column:2}.explorer-local-experts-summary{grid-template-columns:repeat(2,1fr)}}

/* Rankings V3 / Hall of Fame — v1.84.0 */
.rankings-year-picker{display:grid;gap:7px;align-content:end;min-width:150px}.rankings-year-picker label{color:var(--cw-muted);font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.rankings-year-picker select{min-height:42px;padding:0 36px 0 13px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-text);font:inherit;font-size:.74rem;font-weight:800}
.hof-hero{position:relative;overflow:hidden;padding:68px 0 56px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 84% 20%,color-mix(in srgb,var(--cw-copper) 14%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--cw-teal) 4%,var(--cw-bg)),var(--cw-bg))}.hof-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;background-image:linear-gradient(var(--cw-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cw-grid) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,black,transparent 82%)}.hof-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:42px;align-items:center}.hof-hero h1{margin:12px 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,5vw,5.4rem);line-height:.94;letter-spacing:-.05em}.hof-hero p{max-width:800px;margin:0;color:var(--cw-muted);font-size:1.02rem;line-height:1.6}.hof-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hof-crown{display:grid;place-items:center;align-content:center;gap:2px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--cw-copper) 44%,var(--cw-line));border-radius:34px;background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 10%,var(--cw-surface)),var(--cw-surface));box-shadow:var(--cw-shadow),inset 0 0 0 8px color-mix(in srgb,var(--cw-copper) 4%,transparent)}.hof-crown span{font-size:4rem;filter:drop-shadow(0 10px 15px rgba(0,0,0,.16))}.hof-crown strong{font-size:1.7rem;color:var(--cw-copper)}.hof-crown small{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}
.hof-legend-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}.hof-legend-card{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:3px 8px;align-items:center;padding:14px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);color:var(--cw-text);transition:.16s ease;overflow:hidden}.hof-legend-card:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:transparent}.hof-legend-card:hover,.hof-legend-card.is-active{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cw-copper) 48%,var(--cw-line));box-shadow:0 14px 30px rgba(0,0,0,.06)}.hof-legend-card.is-active:after{background:linear-gradient(90deg,var(--cw-teal),var(--cw-copper))}.hof-legend-icon{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--cw-bg);font-size:1rem}.hof-legend-card small{overflow:hidden;color:var(--cw-muted);font-size:.52rem;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap;text-overflow:ellipsis}.hof-legend-card strong{overflow:hidden;font-size:.72rem;white-space:nowrap;text-overflow:ellipsis}.hof-legend-card b{grid-column:3;grid-row:1/3;color:var(--cw-copper);font-size:.95rem}
.hof-my-rank{display:grid;grid-template-columns:auto auto;gap:1px 10px;align-items:center;padding:11px 14px;border:1px solid color-mix(in srgb,var(--cw-teal) 35%,var(--cw-line));border-radius:15px;background:color-mix(in srgb,var(--cw-teal) 5%,var(--cw-surface))}.hof-my-rank span{grid-column:1/3;color:var(--cw-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em}.hof-my-rank strong{font-size:1.25rem;color:var(--cw-teal)}.hof-my-rank b{font-size:.8rem}.hof-ranking-card{overflow:hidden;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);box-shadow:0 18px 50px rgba(0,0,0,.04)}.hof-ranking-row{display:grid;grid-template-columns:54px 38px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:62px;padding:10px 14px;border-bottom:1px solid var(--cw-line)}.hof-ranking-row:last-child{border-bottom:0}.hof-ranking-row:nth-child(-n+3){background:linear-gradient(90deg,color-mix(in srgb,var(--cw-copper) 5%,var(--cw-surface)),var(--cw-surface))}.hof-ranking-row.is-me{box-shadow:inset 3px 0 var(--cw-teal);background:color-mix(in srgb,var(--cw-teal) 5%,var(--cw-surface))}.hof-rank{font-size:.82rem;color:var(--cw-muted)}.hof-user{display:grid;gap:2px;min-width:0}.hof-user>a,.hof-user>strong{overflow:hidden;color:var(--cw-text);font-size:.78rem;font-weight:900;white-space:nowrap;text-overflow:ellipsis}.hof-user small{overflow:hidden;color:var(--cw-muted);font-size:.58rem;white-space:nowrap;text-overflow:ellipsis}.hof-value{color:var(--cw-copper);font-size:1rem}.hof-empty{padding:32px}
.hof-spotlight-form{display:grid;grid-template-columns:minmax(170px,.42fr) minmax(280px,1fr) auto;gap:10px;align-items:end;margin-bottom:16px;padding:14px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.hof-spotlight-form label{display:grid;gap:6px}.hof-spotlight-form label>span{color:var(--cw-muted);font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.hof-spotlight-form select{min-width:0;min-height:42px;padding:0 12px;border:1px solid var(--cw-line-strong);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);font:inherit;font-size:.74rem}.hof-spotlight-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:18px 0 10px}.hof-spotlight-head strong{font-size:.92rem}.hof-spotlight-head span{color:var(--cw-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}.hof-inline-empty{padding:20px;border:1px dashed var(--cw-line-strong);border-radius:17px;background:var(--cw-surface);color:var(--cw-muted);font-size:.74rem;text-align:center}.hof-ranking-card.is-spotlight .hof-ranking-row:nth-child(-n+3){background:linear-gradient(90deg,color-mix(in srgb,var(--cw-teal) 4%,var(--cw-surface)),var(--cw-surface))}
.hof-personal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hof-personal-grid article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 9px;align-items:center;padding:14px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.hof-personal-grid article>span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--cw-bg);font-size:1.05rem}.hof-personal-grid small{color:var(--cw-muted);font-size:.56rem;text-transform:uppercase;letter-spacing:.045em}.hof-personal-grid strong{font-size:1.05rem}.hof-personal-grid em{grid-column:3;grid-row:1/3;max-width:150px;overflow:hidden;color:var(--cw-muted);font-size:.62rem;font-style:normal;text-align:right;white-space:nowrap;text-overflow:ellipsis}.hof-privacy-section{padding-top:20px}
@media(max-width:1120px){.hof-legend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hof-personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:840px){.hof-hero-grid{grid-template-columns:1fr}.hof-crown{display:none}.hof-spotlight-form{grid-template-columns:1fr 1fr}.hof-spotlight-form .button{grid-column:1/3;width:100%}.rankings-year-picker{min-width:130px}}
@media(max-width:680px){.rankings-year-picker{width:100%}.rankings-year-picker select{width:100%}.hof-hero{padding:44px 0 34px}.hof-hero h1{font-size:clamp(2.7rem,16vw,4rem)}.hof-legend-grid,.hof-personal-grid{grid-template-columns:1fr}.hof-legend-card{min-height:60px}.hof-spotlight-form{grid-template-columns:1fr}.hof-spotlight-form .button{grid-column:auto}.hof-ranking-row{grid-template-columns:44px 34px minmax(0,1fr) auto;padding:9px}.hof-rank{font-size:.7rem}.hof-value{font-size:.8rem}.hof-personal-grid article{grid-template-columns:36px minmax(0,1fr) auto}.hof-personal-grid article>span{width:36px;height:36px}.hof-hero-actions{align-items:stretch;flex-direction:column}.hof-hero-actions .button{width:100%;text-align:center}}

/* Visit Mode V3 / Smart Advisor — v1.85.0 */
.visit-advisor-dashboard{display:grid;gap:15px;margin:18px 0 22px;padding:20px;border:1px solid color-mix(in srgb,var(--cw-teal) 26%,var(--cw-line));border-radius:24px;background:radial-gradient(circle at 95% 8%,color-mix(in srgb,var(--cw-teal) 10%,transparent),transparent 34%),var(--cw-surface);box-shadow:0 18px 46px rgba(0,0,0,.05)}
.visit-advisor-dashboard.is-weather-adverse{border-color:color-mix(in srgb,var(--cw-copper) 32%,var(--cw-line))}.visit-advisor-dashboard.is-weather-severe{border-color:color-mix(in srgb,var(--cw-danger) 42%,var(--cw-line))}
.visit-advisor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.visit-advisor-head h2{margin:3px 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.55rem,3vw,2.2rem)}.visit-advisor-head p{max-width:780px;margin:0;color:var(--cw-muted);font-size:.77rem;line-height:1.55}.visit-advisor-strategy{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border:1px solid color-mix(in srgb,var(--cw-teal) 32%,var(--cw-line));border-radius:999px;background:color-mix(in srgb,var(--cw-teal) 7%,var(--cw-bg));color:var(--cw-teal);font-size:.61rem;font-weight:900;white-space:nowrap}
.visit-advisor-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.visit-advisor-context-grid article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:11px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-bg)}.visit-advisor-context-grid article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--cw-surface);font-size:1rem}.visit-advisor-context-grid small{display:block;color:var(--cw-muted);font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.visit-advisor-context-grid strong{display:block;margin-top:2px;overflow:hidden;font-size:.76rem;white-space:nowrap;text-overflow:ellipsis}
.visit-advisor-weather-alert{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px 14px;border:1px solid color-mix(in srgb,var(--cw-copper) 34%,var(--cw-line));border-radius:16px;background:color-mix(in srgb,var(--cw-copper) 6%,var(--cw-bg))}.visit-advisor-weather-alert.is-severe{border-color:color-mix(in srgb,var(--cw-danger) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-danger) 5%,var(--cw-bg))}.visit-advisor-weather-alert>span{font-size:1.25rem}.visit-advisor-weather-alert strong{display:block;font-size:.76rem}.visit-advisor-weather-alert p{margin:2px 0 0;color:var(--cw-muted);font-size:.64rem;line-height:1.45}.visit-advisor-privacy{padding-top:2px;color:var(--cw-muted);font-size:.57rem}
.visit-advisor-primary-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.visit-advisor-action{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg);font-size:.54rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}.visit-advisor-action.is-now{border-color:color-mix(in srgb,var(--cw-success) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-success) 9%,var(--cw-bg));color:var(--cw-success)}.visit-advisor-action.is-good{border-color:color-mix(in srgb,var(--cw-teal) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-teal) 8%,var(--cw-bg));color:var(--cw-teal)}.visit-advisor-action.is-watch{border-color:color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-bg));color:var(--cw-copper)}.visit-advisor-action.is-later{color:var(--cw-muted)}.visit-advisor-confidence{display:block;margin-top:6px;color:var(--cw-muted);font-size:.58rem;font-weight:750}.visit-advisor-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;margin-bottom:auto}.visit-advisor-card-top>b{color:var(--cw-copper);font-size:.55rem;text-transform:uppercase;letter-spacing:.06em}
.visit-advisor-watchlist{margin-top:28px}.visit-advisor-watchlist .section-heading p{max-width:760px;color:var(--cw-muted);font-size:.78rem}.visit-advisor-watch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.visit-advisor-watch-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:14px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);color:var(--cw-text)}.visit-advisor-watch-card:hover{border-color:color-mix(in srgb,var(--cw-copper) 40%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 3%,var(--cw-surface))}.visit-advisor-watch-card>div:first-child{display:grid;gap:7px}.visit-advisor-watch-card strong{font-size:.82rem}.visit-advisor-watch-data{display:grid;justify-items:end;align-content:start;gap:3px}.visit-advisor-watch-data b{font-size:1rem;color:var(--cw-copper)}.visit-advisor-watch-data small{color:var(--cw-muted);font-size:.57rem}.visit-advisor-watch-card p{grid-column:1/-1;margin:0;color:var(--cw-muted);font-size:.63rem;line-height:1.45}
.visit-advisor-preferences{margin-top:28px;padding:18px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.visit-advisor-preferences .section-heading{margin-bottom:12px}.visit-advisor-preferences form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}.visit-advisor-field{display:grid!important;gap:6px!important;align-items:stretch!important}.visit-advisor-field>span{color:var(--cw-muted);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.visit-advisor-field select{width:100%;min-height:42px;padding:0 11px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);font:inherit;font-size:.72rem}.visit-advisor-check{display:flex!important;align-items:center!important;gap:8px!important;min-height:42px;padding:9px 11px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);font-size:.68rem!important}.visit-advisor-check input{accent-color:var(--cw-copper)}.visit-advisor-preferences .button{min-height:42px}
@media(max-width:900px){.visit-advisor-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-advisor-preferences form{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-advisor-preferences .button{grid-column:1/-1}.visit-advisor-watch-grid{grid-template-columns:1fr}}
@media(max-width:620px){.visit-advisor-dashboard{padding:15px;border-radius:20px}.visit-advisor-head{display:grid;gap:10px}.visit-advisor-strategy{justify-self:start}.visit-advisor-context-grid{grid-template-columns:1fr 1fr}.visit-advisor-context-grid article{grid-template-columns:29px minmax(0,1fr);padding:9px}.visit-advisor-context-grid article>span{width:29px;height:29px;font-size:.88rem}.visit-advisor-context-grid strong{font-size:.67rem}.visit-advisor-primary-topline{align-items:flex-start;flex-direction:column}.visit-advisor-preferences form{grid-template-columns:1fr}.visit-advisor-preferences .button{grid-column:auto}.visit-advisor-watch-card{grid-template-columns:minmax(0,1fr) auto}}

/* Wait Forecast — v1.86.0 */
.wait-forecast-section{padding-top:22px;padding-bottom:22px}.wait-forecast-shell{padding:24px;border:1px solid var(--cw-line);border-radius:24px;background:linear-gradient(135deg,var(--cw-surface),var(--cw-bg-soft));box-shadow:var(--cw-shadow-soft)}.wait-forecast-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.wait-forecast-heading h2{margin:5px 0 7px}.wait-forecast-heading p{max-width:780px;margin:0;color:var(--cw-muted);font-size:.76rem;line-height:1.6}.wait-forecast-recommendation{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid var(--cw-line-strong);border-radius:999px;background:var(--cw-bg-soft);font-size:.67rem;font-weight:800;white-space:nowrap}.wait-forecast-recommendation.is-go_now,.wait-forecast-recommendation.is-good{color:var(--cw-teal)}.wait-forecast-recommendation.is-wait{color:var(--cw-copper)}.wait-forecast-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.wait-forecast-summary>div{padding:13px 14px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-surface)}.wait-forecast-summary small,.wait-forecast-summary strong,.wait-forecast-summary em{display:block}.wait-forecast-summary small{color:var(--cw-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.07em}.wait-forecast-summary strong{margin-top:5px;font-size:.86rem}.wait-forecast-summary em{margin-top:3px;color:var(--cw-muted);font-size:.58rem;font-style:normal}.wait-forecast-profile{height:150px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(12px,1fr);align-items:end;gap:4px;margin-top:16px;padding:14px 12px 9px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-bg-soft);overflow-x:auto}.wait-forecast-slot{height:100%;min-width:12px;display:grid;grid-template-rows:1fr 16px;align-items:end;gap:4px;opacity:.42}.wait-forecast-slot.is-future{opacity:1}.wait-forecast-slot>span{display:block;align-self:end;width:100%;min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--cw-teal),var(--cw-copper))}.wait-forecast-slot small{overflow:hidden;color:var(--cw-muted);font-size:.48rem;text-align:center;white-space:nowrap}.wait-forecast-footnote{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;color:var(--cw-muted);font-size:.58rem}.wait-forecast-footnote span{padding:4px 8px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface)}.wait-forecast-learning{margin-top:16px;padding:18px;border:1px dashed var(--cw-line-strong);border-radius:17px;background:var(--cw-bg-soft)}.wait-forecast-learning strong{display:block}.wait-forecast-learning p{margin:6px 0 0;color:var(--cw-muted);font-size:.72rem}.park-wait-forecast{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;margin-top:8px;padding:7px 9px;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg-soft);font-size:.55rem}.park-wait-forecast>span{font-weight:850}.park-wait-forecast>small{color:var(--cw-muted)}.park-wait-forecast.is-go_now>span,.park-wait-forecast.is-good>span{color:var(--cw-teal)}.park-wait-forecast.is-wait>span{color:var(--cw-copper)}.visit-forecast-badge{display:inline-flex;align-items:center;flex-wrap:wrap;gap:3px;margin-top:5px;padding:4px 7px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-bg-soft);color:var(--cw-muted);font-size:.52rem;font-weight:750}.visit-forecast-badge.is-go_now,.visit-forecast-badge.is-good{color:var(--cw-teal)}.visit-forecast-badge.is-wait{color:var(--cw-copper)}
@media(max-width:760px){.wait-forecast-heading{flex-direction:column}.wait-forecast-summary{grid-template-columns:1fr 1fr}.wait-forecast-recommendation{align-self:flex-start}.wait-forecast-profile{height:130px}.wait-forecast-slot small{display:none}.wait-forecast-slot{grid-template-rows:1fr}}
@media(max-width:480px){.wait-forecast-shell{padding:18px}.wait-forecast-summary{grid-template-columns:1fr}.wait-forecast-profile{height:110px}}
.visit-v3-recommendation-forecast{display:grid;align-content:center;gap:3px;min-width:145px;padding:12px 14px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-bg-soft)}.visit-v3-recommendation-forecast>span{color:var(--cw-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.07em}.visit-v3-recommendation-forecast>strong{font-size:.76rem}.visit-v3-recommendation-forecast>small{color:var(--cw-muted);font-size:.57rem}

/* Road Trips V2 — v1.87.0 */
.road-trip-stats-grid-v2{grid-template-columns:repeat(6,1fr)}
.road-trip-v2-planner-section{padding-top:34px;padding-bottom:26px;background:linear-gradient(180deg,color-mix(in srgb,var(--cw-bg-soft) 74%,transparent),transparent)}
.road-trip-v2-heading{align-items:end}.road-trip-v2-data-badge{padding:7px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.62rem;font-weight:800}
.road-trip-v2-command-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;align-items:stretch}
.road-trip-v2-map-card,.road-trip-v2-day-card{overflow:hidden;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-surface);box-shadow:0 18px 46px rgba(0,0,0,.07)}
.road-trip-v2-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--cw-line)}.road-trip-v2-card-head>div{display:flex;align-items:center;gap:11px}.road-trip-v2-card-head>div>span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:var(--cw-bg-soft);font-size:1.15rem}.road-trip-v2-card-head strong,.road-trip-v2-card-head small{display:block}.road-trip-v2-card-head strong{font-family:Georgia,serif;font-size:1.03rem}.road-trip-v2-card-head small{margin-top:2px;color:var(--cw-muted);font-size:.61rem}.road-trip-v2-card-head em{font-style:normal;color:var(--cw-copper);font-size:.68rem;font-weight:850}
.road-trip-v2-map{height:410px;background:var(--cw-bg-soft)}.road-trip-v2-map-empty{display:grid;place-items:center;align-content:center;min-height:310px;padding:30px;text-align:center}.road-trip-v2-map-empty>span{font-size:2rem}.road-trip-v2-map-empty strong{margin-top:8px;font-family:Georgia,serif;font-size:1.2rem}.road-trip-v2-map-empty p{max-width:430px;margin:6px 0 0;color:var(--cw-muted);font-size:.69rem;line-height:1.5}.road-trip-v2-disclaimer{margin:0!important;padding:10px 16px;border-top:1px solid var(--cw-line);color:var(--cw-muted);font-size:.56rem;line-height:1.45}
.road-trip-v2-map-card .leaflet-container{font-family:inherit}.road-trip-v2-map-card .leaflet-popup-content-wrapper,.road-trip-v2-map-card .leaflet-popup-tip{background:var(--cw-surface);color:var(--cw-text)}.road-trip-map-popup{display:grid;grid-template-columns:28px minmax(0,1fr);gap:2px 7px;align-items:center}.road-trip-map-popup>b{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--cw-copper);color:white}.road-trip-map-popup>strong{font-size:.76rem}.road-trip-map-popup>small{color:var(--cw-muted);font-size:.6rem}
.road-trip-v2-days{max-height:442px;overflow:auto;padding:12px;display:grid;gap:8px}.road-trip-v2-day{display:grid;grid-template-columns:94px minmax(0,1fr);gap:10px;padding:10px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg-soft)}.road-trip-v2-day.is-empty{opacity:.64}.road-trip-v2-day.is-unscheduled{border-style:dashed}.road-trip-v2-day-date{padding-right:9px;border-right:1px solid var(--cw-line)}.road-trip-v2-day-date span,.road-trip-v2-day-date strong{display:block}.road-trip-v2-day-date span{color:var(--cw-copper);font-size:.54rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.road-trip-v2-day-date strong{margin-top:4px;font-size:.7rem}.road-trip-v2-day-stops{display:grid;gap:5px;align-content:start}.road-trip-v2-day-stops a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:7px;align-items:center;padding:6px 8px;border-radius:9px;background:var(--cw-surface);color:var(--cw-text);text-decoration:none;font-size:.64rem}.road-trip-v2-day-stops a:hover{outline:1px solid color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line))}.road-trip-v2-day-stops a b{color:var(--cw-copper);font-size:.58rem}.road-trip-v2-day-stops small{padding:7px;color:var(--cw-muted);font-size:.61rem}.road-trip-v2-day-empty{display:grid;place-items:center;min-height:300px;padding:30px;color:var(--cw-muted);text-align:center;font-size:.72rem}
.road-trip-v2-route-section{padding-top:28px}.road-trip-timeline-v2{position:relative}.road-trip-v2-leg{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start;margin:0 0 14px 52px;padding:10px 12px;border:1px dashed color-mix(in srgb,var(--cw-copper) 35%,var(--cw-line));border-radius:14px;background:color-mix(in srgb,var(--cw-copper) 4%,var(--cw-bg-soft))}.road-trip-v2-leg-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--cw-surface)}.road-trip-v2-leg strong,.road-trip-v2-leg small{display:block}.road-trip-v2-leg strong{font-size:.68rem}.road-trip-v2-leg small{margin-top:2px;color:var(--cw-muted);font-size:.59rem}.road-trip-v2-leg p{margin:7px 0 0!important;color:var(--cw-muted);font-size:.64rem;white-space:pre-line}.road-trip-stop-card-v2{scroll-margin-top:100px}
.road-trip-v2-lodging{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;margin-top:12px;padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg-soft)}.road-trip-v2-lodging>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--cw-surface)}.road-trip-v2-lodging strong{display:block;font-size:.67rem}.road-trip-v2-lodging p{margin:4px 0 0!important;color:var(--cw-muted);font-size:.63rem;white-space:pre-line}
.road-trip-v2-form-section{padding:10px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg-soft)}.road-trip-v2-form-section>summary{cursor:pointer;color:var(--cw-text);font-size:.66rem;font-weight:850}.road-trip-v2-form-section[open]>summary{margin-bottom:10px}.road-trip-v2-form-section label+label{margin-top:9px}
.road-trip-v2-summary-list{display:grid;gap:7px}.road-trip-v2-summary-list>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:8px;border-radius:12px;background:var(--cw-bg-soft)}.road-trip-v2-summary-list>div>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--cw-surface)}.road-trip-v2-summary-list p{margin:0!important}.road-trip-v2-summary-list strong,.road-trip-v2-summary-list small{display:block}.road-trip-v2-summary-list strong{font-size:.71rem}.road-trip-v2-summary-list small{margin-top:1px;color:var(--cw-muted);font-size:.54rem}
@media(max-width:1080px){.road-trip-stats-grid-v2{grid-template-columns:repeat(3,1fr)}.road-trip-v2-command-grid{grid-template-columns:1fr}.road-trip-v2-map{height:360px}}
@media(max-width:700px){.road-trip-stats-grid-v2{grid-template-columns:repeat(2,1fr)}.road-trip-v2-heading{align-items:flex-start}.road-trip-v2-data-badge{margin-top:8px}.road-trip-v2-map{height:320px}.road-trip-v2-card-head{padding:13px}.road-trip-v2-days{max-height:none}.road-trip-v2-day{grid-template-columns:78px minmax(0,1fr);padding:8px}.road-trip-v2-leg{margin-left:38px}.road-trip-v2-form-section{padding:9px}}
@media(max-width:430px){.road-trip-v2-planner-section{padding-top:24px}.road-trip-v2-command-grid{gap:12px}.road-trip-v2-map-card,.road-trip-v2-day-card{border-radius:18px}.road-trip-v2-map{height:280px}.road-trip-v2-card-head>div>span{width:34px;height:34px}.road-trip-v2-card-head em{display:none}.road-trip-v2-day{grid-template-columns:1fr}.road-trip-v2-day-date{padding-right:0;padding-bottom:7px;border-right:0;border-bottom:1px solid var(--cw-line);display:flex;align-items:center;justify-content:space-between}.road-trip-v2-day-date strong{margin-top:0}.road-trip-v2-leg{grid-template-columns:32px minmax(0,1fr);margin-left:26px;padding:8px}.road-trip-v2-leg-icon{width:32px;height:32px}.road-trip-v2-lodging{grid-template-columns:32px minmax(0,1fr)}.road-trip-v2-lodging>span{width:32px;height:32px}}

/* Community V4 / Gallery V2 — v1.88.0 */
.community-gallery-hero,.community-photo-detail-hero{padding:clamp(42px,7vw,82px) 0 34px;background:radial-gradient(circle at 85% 0%,rgba(245,145,66,.14),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.035),transparent);border-bottom:1px solid var(--border)}
.community-gallery-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end}.community-gallery-hero h1,.community-photo-detail-hero h1{margin:.35rem 0 .7rem;font-size:clamp(2rem,5vw,4rem)}.community-gallery-hero p{max-width:760px;color:var(--muted)}
.community-gallery-hero-stat{min-width:150px;padding:18px 22px;border:1px solid var(--border);border-radius:22px;background:var(--panel);text-align:center}.community-gallery-hero-stat strong{display:block;font-size:2rem}.community-gallery-hero-stat span{color:var(--muted);font-size:.82rem}
.community-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px;flex-wrap:wrap}.community-gallery-filters{display:flex;gap:8px;overflow:auto;padding-bottom:2px}.community-gallery-filters a{padding:9px 13px;border:1px solid var(--border);border-radius:999px;white-space:nowrap;color:var(--muted);font-weight:800;font-size:.82rem}.community-gallery-filters a.is-active{border-color:rgba(245,145,66,.7);background:rgba(245,145,66,.11);color:var(--text)}
.community-photo-v2-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.community-photo-v2-card{overflow:hidden;border:1px solid var(--border);border-radius:24px;background:var(--panel);box-shadow:0 14px 36px rgba(0,0,0,.08)}.community-photo-v2-image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:rgba(0,0,0,.12)}.community-photo-v2-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.community-photo-v2-card:hover .community-photo-v2-image img{transform:scale(1.025)}.community-photo-expert-badge{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(10,12,16,.86);color:#fff;font-size:.7rem;font-weight:900;backdrop-filter:blur(8px)}
.community-photo-v2-copy{display:grid;gap:11px;padding:15px}.community-photo-v2-target{display:flex;align-items:center;justify-content:space-between;gap:10px}.community-photo-v2-target a{font-weight:900;color:var(--text)}.community-photo-v2-target span{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.community-photo-v2-copy p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.community-photo-v2-author,.community-photo-v2-stats{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.78rem}.community-photo-v2-author small{color:var(--muted)}.community-photo-v2-stats{padding-top:9px;border-top:1px solid var(--border);color:var(--muted)}.community-photo-v2-stats a{margin-left:auto;font-weight:800;color:var(--text)}
.community-gallery-empty{display:grid;justify-items:center;gap:8px;padding:48px 24px;border:1px dashed var(--border);border-radius:24px;text-align:center;background:var(--panel)}.community-gallery-empty>span{font-size:2rem}.community-gallery-empty h2,.community-gallery-empty h3{margin:0}.community-gallery-empty p{margin:0;color:var(--muted)}.community-gallery-empty.is-compact{padding:28px}.community-gallery-back{display:inline-flex;margin-bottom:12px;color:var(--muted);font-weight:800}.community-gallery-inline-action{display:flex;justify-content:flex-end;margin-top:16px}
.community-photo-detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:24px;align-items:start}.community-photo-detail-figure{overflow:hidden;margin:0;border:1px solid var(--border);border-radius:28px;background:var(--panel)}.community-photo-detail-figure img{display:block;width:100%;max-height:75vh;object-fit:contain;background:#090a0c}.community-photo-detail-figure figcaption{padding:16px 18px;color:var(--muted);line-height:1.55}.community-photo-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.community-photo-detail-actions form{margin:0}.community-photo-stat{align-self:center;color:var(--muted);font-size:.86rem}
.community-photo-detail-aside{display:grid;gap:14px;position:sticky;top:96px}.community-photo-author-card,.community-photo-report-card{padding:20px;border:1px solid var(--border);border-radius:22px;background:var(--panel)}.community-photo-author-card>span{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.09em}.community-photo-author-card strong{display:block;margin-top:5px;font-size:1.12rem}.community-photo-author-card dl{display:grid;gap:10px;margin:18px 0 0}.community-photo-author-card dl div{display:flex;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid var(--border)}.community-photo-author-card dt{color:var(--muted)}.community-photo-author-card dd{margin:0;text-align:right;font-weight:800}.community-photo-expert-panel{display:grid;gap:3px;margin-top:14px;padding:12px;border-radius:16px;background:rgba(245,145,66,.10);border:1px solid rgba(245,145,66,.24)}.community-photo-expert-panel small{color:var(--muted)}
.community-photo-report-card summary{cursor:pointer;font-weight:850}.community-photo-report-card form{display:grid;gap:10px;margin-top:14px}.community-photo-report-card select,.community-photo-report-card textarea,.community-photo-comment-form textarea,.community-photo-comment-actions select,.community-photo-comment-actions textarea{width:100%;border:1px solid var(--border);border-radius:14px;background:var(--input-bg,var(--panel));color:var(--text);padding:11px}
.community-photo-comments-wrap{max-width:920px}.community-photo-comment-form{display:grid;gap:10px;margin-bottom:18px;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--panel)}.community-photo-comment-form .button{justify-self:end}.community-photo-comments-list{display:grid;gap:12px}.community-photo-comment-card{padding:16px 18px;border:1px solid var(--border);border-radius:18px;background:var(--panel)}.community-photo-comment-head{display:flex;justify-content:space-between;gap:12px}.community-photo-comment-head time{color:var(--muted);font-size:.78rem}.community-photo-comment-card p{margin:10px 0 0;line-height:1.55}.community-photo-comment-actions{display:flex;gap:10px;margin-top:10px}.community-photo-comment-actions button,.community-photo-comment-actions summary{border:0;background:none;color:var(--muted);font-size:.76rem;cursor:pointer;padding:0}.community-photo-comment-actions details{width:100%}.community-photo-comment-actions details form{display:grid;gap:8px;margin-top:10px}.community-photo-login-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:16px 18px;border:1px solid var(--border);border-radius:18px;background:var(--panel)}.community-feed-photo-stats{display:flex;gap:12px;margin-top:10px;color:var(--muted);font-size:.78rem}
@media(max-width:1100px){.community-photo-v2-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.community-gallery-hero-grid,.community-photo-detail-layout{grid-template-columns:1fr}.community-gallery-hero-stat{justify-self:start}.community-photo-detail-aside{position:static}.community-photo-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.community-photo-v2-grid{grid-template-columns:1fr}.community-gallery-toolbar{align-items:stretch}.community-gallery-filters{width:100%}.community-gallery-hero-stat{min-width:120px}.community-photo-detail-actions .button{width:100%;justify-content:center}.community-photo-detail-actions form{width:100%}.community-photo-login-card{align-items:stretch;flex-direction:column}.community-gallery-inline-action{justify-content:stretch}.community-gallery-inline-action .button{width:100%;justify-content:center}}


/* Notifications V3 — v1.89.0 */
.notifications-hero-v3 .notifications-hero-grid{align-items:center}.notifications-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:10px;min-width:min(100%,390px)}.notifications-toolbar-v3{align-items:flex-start}.notifications-filter-groups{display:grid;gap:8px}.notifications-priority-filters{display:flex;flex-wrap:wrap;gap:6px}.notifications-priority-filters a{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-muted);font-size:.58rem;font-weight:900;text-decoration:none}.notifications-priority-filters a.is-active{border-color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface));color:var(--cw-text)}.notifications-v3-settings-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:14px;margin-bottom:18px}.notifications-v3-settings-grid .notifications-preferences-panel{margin:0}.notification-preference-item-v3{grid-template-columns:auto minmax(0,1fr) minmax(130px,auto)}.notification-preference-item-v3 select{width:100%;min-height:36px;padding:7px 30px 7px 9px;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-surface);color:var(--cw-text);font-size:.6rem;font-weight:800}.notifications-browser-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-content:start;padding:15px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.notifications-browser-icon{display:grid;width:39px;height:39px;place-items:center;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);font-size:1.05rem}.notifications-browser-card>div:nth-child(2){display:grid;gap:4px}.notifications-browser-card strong{font-size:.76rem}.notifications-browser-card p{margin:0;color:var(--cw-muted);font-size:.62rem;line-height:1.45}.notifications-browser-card small{color:var(--cw-muted);font-size:.54rem;line-height:1.4}.notifications-browser-actions{grid-column:1/-1;display:flex;align-items:center;gap:9px;margin-top:4px}.notifications-browser-status{color:var(--cw-muted);font-size:.56rem;font-weight:800}.notifications-browser-status.is-active{color:var(--cw-success,#4da66a)}.notification-card.priority-high .notification-icon,.notification-card.priority-urgent .notification-icon{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cw-copper) 48%,transparent)}@media(max-width:900px){.notifications-v3-settings-grid{grid-template-columns:1fr}.notifications-hero-stats{width:100%}}@media(max-width:700px){.notifications-hero-stats{grid-template-columns:repeat(3,1fr);min-width:0}.notifications-hero-count{min-width:0;padding:12px}.notifications-filter-groups{width:100%}.notifications-priority-filters{display:grid;grid-template-columns:repeat(3,1fr)}.notifications-priority-filters a{justify-content:center;text-align:center}.notification-preference-item-v3{grid-template-columns:auto minmax(0,1fr)}.notification-preference-item-v3 select{grid-column:1/-1}.notifications-browser-actions{align-items:stretch;flex-direction:column}.notifications-browser-actions .button,.notifications-browser-status{width:100%;text-align:center}}

/* My Coaster World — v1.90.0 */
.my-world-button svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.my-world-hero{padding:62px 0 36px;border-bottom:1px solid var(--cw-line);background:radial-gradient(circle at 83% 20%,color-mix(in srgb,var(--cw-teal) 13%,transparent),transparent 28%),radial-gradient(circle at 15% 15%,color-mix(in srgb,var(--cw-copper) 10%,transparent),transparent 30%),var(--cw-bg)}
.my-world-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:38px;align-items:center}.my-world-hero h1{margin:.3rem 0 .6rem;font-size:clamp(2.4rem,5vw,4.6rem)}.my-world-hero p{max-width:760px;margin:0;color:var(--cw-muted);line-height:1.65}.my-world-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.my-world-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--cw-line);border-radius:22px;overflow:hidden;background:var(--cw-surface);box-shadow:0 18px 50px rgba(0,0,0,.06)}.my-world-summary>div{display:grid;gap:4px;padding:20px}.my-world-summary>div:nth-child(even){border-left:1px solid var(--cw-line)}.my-world-summary>div:nth-child(n+3){border-top:1px solid var(--cw-line)}.my-world-summary>div:last-child{grid-column:1/3;border-left:0}.my-world-summary strong{font-size:1.9rem;color:var(--cw-copper);line-height:1}.my-world-summary span{color:var(--cw-muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.my-world-opportunities-section{padding-bottom:20px}.my-world-live-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--cw-teal) 25%,var(--cw-line));border-radius:999px;background:color-mix(in srgb,var(--cw-teal) 8%,var(--cw-surface));font-size:.66rem;font-weight:850}.my-world-live-pill i,.home-my-world-opportunity>span i{width:7px;height:7px;border-radius:50%;background:var(--cw-teal);box-shadow:0 0 0 4px color-mix(in srgb,var(--cw-teal) 14%,transparent)}
.my-world-opportunity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.my-world-opportunity-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 15px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);color:var(--cw-text);transition:.18s ease}.my-world-opportunity-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cw-teal) 35%,var(--cw-line-strong))}.my-world-opportunity-wait{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:color-mix(in srgb,var(--cw-teal) 10%,var(--cw-bg));color:var(--cw-teal);font-size:1.35rem;font-weight:950}.my-world-opportunity-wait small{font-size:.52rem;text-transform:uppercase}.my-world-opportunity-copy{display:grid;gap:2px;min-width:0}.my-world-opportunity-copy small,.my-world-opportunity-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-world-opportunity-copy small{color:var(--cw-muted);font-size:.61rem}.my-world-opportunity-copy strong{font-size:.88rem}.my-world-opportunity-copy em{color:var(--cw-teal);font-size:.59rem;font-style:normal;font-weight:800}.my-world-opportunity-arrow{color:var(--cw-copper);font-size:1rem}
.my-world-followed-section{padding-top:34px}.my-world-park-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.my-world-park-card{display:grid;gap:13px;padding:18px;border:1px solid var(--cw-line);border-radius:21px;background:var(--cw-surface);box-shadow:0 12px 36px rgba(0,0,0,.035)}.my-world-park-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.my-world-park-card-head small{display:block;color:var(--cw-muted);font-size:.61rem}.my-world-park-card-head h3{margin:3px 0 0;font-size:1rem}.my-world-park-card-head h3 a{color:var(--cw-text)}.my-world-completion{display:grid;place-items:center;min-width:48px;height:30px;padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--cw-copper) 10%,var(--cw-bg));color:var(--cw-copper);font-size:.72rem;font-weight:900}.my-world-progress{height:6px;border-radius:999px;background:var(--cw-bg);overflow:hidden}.my-world-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal))}.my-world-park-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--cw-line);border-radius:14px;overflow:hidden;background:var(--cw-bg)}.my-world-park-stats>div{display:grid;gap:2px;padding:9px;text-align:center}.my-world-park-stats>div+div{border-left:1px solid var(--cw-line)}.my-world-park-stats strong{font-size:.83rem}.my-world-park-stats span{color:var(--cw-muted);font-size:.52rem;text-transform:uppercase;letter-spacing:.04em}.my-world-park-live{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--cw-muted);font-size:.61rem}.my-world-park-live>span{display:inline-flex;align-items:center;gap:5px}.my-world-park-live .is-live{color:var(--cw-teal);font-weight:800}.my-world-park-live .is-live i{width:6px;height:6px;border-radius:50%;background:var(--cw-teal)}.my-world-park-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}.my-world-park-actions form{margin:0}.my-world-unfollow{border:0;background:transparent;color:var(--cw-muted);font-size:.62rem;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.my-world-unfollow:hover{color:var(--cw-text)}
.my-world-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:26px;border:1px dashed var(--cw-line-strong);border-radius:21px;background:var(--cw-surface)}.my-world-empty>span{font-size:2rem;color:var(--cw-copper)}.my-world-empty strong{display:block}.my-world-empty p{margin:4px 0 0;color:var(--cw-muted);font-size:.72rem;line-height:1.55}.my-world-more-note{margin:14px 0 0;color:var(--cw-muted);font-size:.65rem;text-align:center}
.my-world-plans-section{padding-top:38px}.my-world-plans-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.my-world-plan-panel{padding:17px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.my-world-plan-panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.my-world-plan-panel-head h3{margin:0;font-size:.94rem}.my-world-plan-panel-head a{color:var(--cw-copper);font-size:.63rem;font-weight:800}.my-world-plan-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;color:var(--cw-text)}.my-world-plan-row+.my-world-plan-row{border-top:1px solid var(--cw-line)}.my-world-plan-date{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg)}.my-world-plan-date strong{font-size:.86rem}.my-world-plan-date small{color:var(--cw-muted);font-size:.48rem}.my-world-plan-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.my-world-plan-row>span:nth-child(2)>strong,.my-world-plan-row>span:nth-child(2)>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-world-plan-row>span:nth-child(2)>strong{font-size:.78rem}.my-world-plan-row>span:nth-child(2)>small{color:var(--cw-muted);font-size:.59rem}.my-world-plan-row>b{color:var(--cw-copper)}.my-world-panel-empty{padding:24px 10px;color:var(--cw-muted);font-size:.68rem;text-align:center}
.home-my-world-section{padding-top:28px;padding-bottom:10px}.home-my-world-shell{display:grid;gap:15px;padding:20px;border:1px solid var(--cw-line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-surface) 94%,var(--cw-copper) 6%),var(--cw-surface));box-shadow:0 14px 42px rgba(0,0,0,.035)}.home-my-world-head{display:flex;justify-content:space-between;gap:18px;align-items:end}.home-my-world-head h2{margin:.25rem 0 .25rem}.home-my-world-head p{margin:0;color:var(--cw-muted);font-size:.72rem}.home-my-world-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--cw-line);border-radius:16px;overflow:hidden;background:var(--cw-bg)}.home-my-world-stats>div{display:grid;gap:2px;padding:11px 13px}.home-my-world-stats>div+div{border-left:1px solid var(--cw-line)}.home-my-world-stats strong{color:var(--cw-copper);font-size:1.1rem}.home-my-world-stats span{color:var(--cw-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.04em}.home-my-world-opportunity{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--cw-teal) 22%,var(--cw-line));border-radius:15px;background:color-mix(in srgb,var(--cw-teal) 6%,var(--cw-bg));color:var(--cw-text)}.home-my-world-opportunity>span{display:inline-flex;align-items:center;gap:7px;color:var(--cw-teal);font-size:.58rem;font-weight:850}.home-my-world-opportunity>strong{font-size:.78rem}.home-my-world-opportunity>small{color:var(--cw-muted);font-size:.62rem}.home-my-world-opportunity>b{color:var(--cw-copper)}.home-my-world-parks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-my-world-parks a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;padding:10px 12px;border:1px solid var(--cw-line);border-radius:14px;background:var(--cw-bg);color:var(--cw-text)}.home-my-world-parks a>span{grid-row:1/3;align-self:center;color:var(--cw-copper);font-weight:900}.home-my-world-parks strong{font-size:.71rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-my-world-parks small{color:var(--cw-muted);font-size:.56rem}.home-my-world-empty{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px dashed var(--cw-line-strong);border-radius:14px;background:var(--cw-bg)}.home-my-world-empty>span{color:var(--cw-copper);font-size:1.3rem}.home-my-world-empty p{flex:1;margin:0;color:var(--cw-muted);font-size:.65rem}.home-my-world-empty a{color:var(--cw-copper);font-size:.63rem;font-weight:800}
@media(max-width:1050px){.my-world-hero-grid{grid-template-columns:1fr}.my-world-summary{grid-template-columns:repeat(5,1fr)}.my-world-summary>div,.my-world-summary>div:nth-child(even),.my-world-summary>div:nth-child(n+3),.my-world-summary>div:last-child{grid-column:auto;border:0}.my-world-summary>div+div{border-left:1px solid var(--cw-line)}.my-world-opportunity-grid,.my-world-park-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.my-world-hero{padding:40px 0 26px}.my-world-summary{grid-template-columns:repeat(2,1fr)}.my-world-summary>div+div{border-left:0}.my-world-summary>div:nth-child(even){border-left:1px solid var(--cw-line)}.my-world-summary>div:nth-child(n+3){border-top:1px solid var(--cw-line)}.my-world-summary>div:last-child{grid-column:1/3}.my-world-opportunity-grid,.my-world-park-grid,.my-world-plans-grid{grid-template-columns:1fr}.my-world-empty{grid-template-columns:auto 1fr}.my-world-empty .button{grid-column:1/3;width:100%;text-align:center}.home-my-world-head{align-items:start;flex-direction:column}.home-my-world-head .button{width:100%;text-align:center}.home-my-world-stats{grid-template-columns:repeat(2,1fr)}.home-my-world-stats>div+div{border-left:0}.home-my-world-stats>div:nth-child(even){border-left:1px solid var(--cw-line)}.home-my-world-stats>div:nth-child(n+3){border-top:1px solid var(--cw-line)}.home-my-world-opportunity{grid-template-columns:minmax(0,1fr) auto}.home-my-world-opportunity>span,.home-my-world-opportunity>strong,.home-my-world-opportunity>small{grid-column:1}.home-my-world-opportunity>b{grid-column:2;grid-row:1/4}.home-my-world-parks{grid-template-columns:1fr}.home-my-world-empty{align-items:flex-start;flex-wrap:wrap}.home-my-world-empty p{min-width:220px}}

/* Admin Data Quality V3 — v1.91.0 */
.admin-data-quality-hero{padding-bottom:28px}.admin-data-quality-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:26px;align-items:end}.admin-data-quality-hero-grid h1{margin:7px 0 8px}.admin-data-quality-hero-grid p{max-width:850px;margin:0;color:var(--cw-muted);line-height:1.55}.admin-data-quality-score{display:grid;gap:4px;padding:18px 20px;border:1px solid var(--cw-line);border-radius:21px;background:var(--cw-surface)}.admin-data-quality-score>span{font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--cw-muted)}.admin-data-quality-score>strong{font-size:2rem;line-height:1}.admin-data-quality-score>strong small{font-size:.78rem;color:var(--cw-muted);font-weight:700}.admin-data-quality-score>em{font-style:normal;font-size:.75rem;font-weight:850}.admin-data-quality-score>small{font-size:.6rem;color:var(--cw-muted);line-height:1.4}.admin-data-quality-score.is-excellent{border-color:color-mix(in srgb,var(--cw-success) 42%,var(--cw-line))}.admin-data-quality-score.is-good{border-color:color-mix(in srgb,var(--cw-teal) 38%,var(--cw-line))}.admin-data-quality-score.is-attention{border-color:color-mix(in srgb,#f59e0b 42%,var(--cw-line))}.admin-data-quality-score.is-critical{border-color:color-mix(in srgb,#ef4444 48%,var(--cw-line))}
.admin-data-quality-section{padding-top:28px}.admin-data-quality-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-data-quality-summary-grid>a,.admin-data-quality-generated{padding:16px 17px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface);display:grid;gap:4px;color:var(--cw-text)}.admin-data-quality-summary-grid span{font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:var(--cw-muted)}.admin-data-quality-summary-grid strong{font-size:1.55rem}.admin-data-quality-summary-grid small{font-size:.61rem;color:var(--cw-muted);line-height:1.35}.admin-data-quality-summary-grid .is-critical{border-color:color-mix(in srgb,#ef4444 35%,var(--cw-line))}.admin-data-quality-summary-grid .is-warning{border-color:color-mix(in srgb,#f59e0b 35%,var(--cw-line))}.admin-data-quality-summary-grid .is-info{border-color:color-mix(in srgb,var(--cw-teal) 32%,var(--cw-line))}.admin-data-quality-section-heading{margin-top:34px}.admin-data-quality-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.admin-data-quality-metric-grid a{display:grid;gap:4px;padding:15px 16px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);color:var(--cw-text)}.admin-data-quality-metric-grid a:hover{border-color:var(--cw-copper);transform:translateY(-1px)}.admin-data-quality-metric-grid span{font-size:.63rem;font-weight:800}.admin-data-quality-metric-grid strong{font-size:1.35rem}.admin-data-quality-metric-grid small{font-size:.58rem;color:var(--cw-muted)}
.admin-data-quality-toolbar{margin-top:30px;padding:16px;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-surface)}.admin-data-quality-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(170px,.8fr) minmax(170px,.8fr) auto auto;gap:10px;align-items:end}.admin-data-quality-filters label{display:grid;gap:6px}.admin-data-quality-filters label>span{font-size:.57rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:var(--cw-muted)}.admin-data-quality-filters input,.admin-data-quality-filters select{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text)}.admin-data-quality-list-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:32px 0 14px}.admin-data-quality-list-head h2{margin:4px 0 0}.admin-data-quality-list-head>small{color:var(--cw-muted);font-size:.65rem}.admin-data-quality-list{display:grid;gap:9px}.admin-data-quality-issue{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px 15px;border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface)}.admin-data-quality-issue.is-critical{border-color:color-mix(in srgb,#ef4444 34%,var(--cw-line))}.admin-data-quality-issue.is-warning{border-color:color-mix(in srgb,#f59e0b 30%,var(--cw-line))}.admin-data-quality-issue-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:11px;background:var(--cw-bg);font-weight:950}.is-critical .admin-data-quality-issue-icon{color:#ef4444}.is-warning .admin-data-quality-issue-icon{color:#d97706}.admin-data-quality-issue-body{min-width:0}.admin-data-quality-issue-body>strong{display:block;margin-top:5px;font-size:.79rem;overflow-wrap:anywhere}.admin-data-quality-issue-body p{margin:3px 0 0;color:var(--cw-muted);font-size:.64rem;line-height:1.45}.admin-data-quality-issue-meta{display:flex;flex-wrap:wrap;gap:5px}.admin-data-quality-issue-meta>span{padding:3px 6px;border:1px solid var(--cw-line);border-radius:999px;font-size:.51rem;font-weight:800;color:var(--cw-muted)}.admin-data-quality-severity.is-critical{color:#dc2626;border-color:color-mix(in srgb,#ef4444 36%,var(--cw-line))}.admin-data-quality-severity.is-warning{color:#d97706;border-color:color-mix(in srgb,#f59e0b 36%,var(--cw-line))}.admin-data-quality-severity.is-info{color:var(--cw-teal);border-color:color-mix(in srgb,var(--cw-teal) 34%,var(--cw-line))}.admin-data-quality-pagination{margin-top:18px}.admin-data-quality-empty,.admin-data-quality-safety{display:flex;gap:13px;padding:19px;border:1px dashed var(--cw-line-strong);border-radius:18px;background:var(--cw-surface)}.admin-data-quality-empty>span,.admin-data-quality-safety>span{font-size:1.35rem}.admin-data-quality-empty strong,.admin-data-quality-safety strong{font-size:.8rem}.admin-data-quality-empty p,.admin-data-quality-safety p{margin:3px 0 0;color:var(--cw-muted);font-size:.65rem;line-height:1.5}.admin-data-quality-safety{margin-top:25px;border-style:solid;border-color:color-mix(in srgb,var(--cw-teal) 28%,var(--cw-line))}.admin-quality-v3-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:18px;align-items:center;margin:14px 0 18px;padding:18px;border:1px solid color-mix(in srgb,var(--cw-teal) 25%,var(--cw-line));border-radius:20px;background:linear-gradient(120deg,color-mix(in srgb,var(--cw-teal) 5%,var(--cw-surface)),var(--cw-surface))}.admin-quality-v3-dashboard h3{margin:4px 0}.admin-quality-v3-dashboard p{margin:0;color:var(--cw-muted);font-size:.68rem}.admin-quality-v3-dashboard-score{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-bg)}.admin-quality-v3-dashboard-score>span{font-size:.53rem;text-transform:uppercase;color:var(--cw-muted)}.admin-quality-v3-dashboard-score>strong{font-size:1.4rem}.admin-quality-v3-dashboard-score>strong small{font-size:.6rem;color:var(--cw-muted)}.admin-quality-v3-dashboard-score>em{font-size:.55rem;color:var(--cw-muted);font-style:normal}
@media(max-width:1080px){.admin-data-quality-summary-grid,.admin-data-quality-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-data-quality-filters{grid-template-columns:1fr 1fr 1fr}.admin-data-quality-filters .button{width:100%}.admin-quality-v3-dashboard{grid-template-columns:minmax(0,1fr) 140px}.admin-quality-v3-dashboard>.button{grid-column:1/-1;width:fit-content}}
@media(max-width:720px){.admin-data-quality-hero-grid{grid-template-columns:1fr}.admin-data-quality-summary-grid,.admin-data-quality-metric-grid,.admin-data-quality-filters{grid-template-columns:1fr}.admin-data-quality-issue{grid-template-columns:34px minmax(0,1fr)}.admin-data-quality-issue>.button{grid-column:2;width:fit-content}.admin-data-quality-list-head{align-items:start;flex-direction:column}.admin-quality-v3-dashboard{grid-template-columns:1fr}.admin-quality-v3-dashboard>.button{grid-column:auto;width:100%}}

/* Performance / SEO / Accessibilité — v1.92.0 */
.skip-link{position:fixed;top:10px;left:10px;z-index:9999;padding:10px 14px;border:2px solid var(--cw-copper);border-radius:12px;background:var(--cw-surface-solid);color:var(--cw-text);font-weight:850;transform:translateY(-160%);transition:transform .16s ease;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--cw-copper) 82%,white);outline-offset:3px}
#main-content:focus{outline:none}
.park-detail-breadcrumb[aria-label]{display:flex;align-items:center;flex-wrap:wrap}
img[loading="lazy"]{content-visibility:auto}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.admin-data-quality-metric-grid a:hover{transform:none}}

/* Security / Privacy / Accounts — v1.93.0 */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-success{padding:12px 14px;border:1px solid color-mix(in srgb,var(--cw-success) 35%,var(--cw-line));border-radius:14px;background:color-mix(in srgb,var(--cw-success) 8%,var(--cw-surface));margin:0 0 18px}.form-help{display:block;color:var(--cw-muted);font-size:.78rem;line-height:1.45}.auth-form-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.auth-form-row>a{font-size:.84rem}.account-security-shell{max-width:1120px}.account-security-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end}.account-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.account-security-card{padding:22px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);box-shadow:var(--cw-shadow-soft)}.account-security-card h2{margin:5px 0 8px;font-family:Georgia,serif}.account-security-card>p,.account-security-card-head p{color:var(--cw-muted)}.account-security-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.security-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;border:1px solid var(--cw-line);font-size:.7rem;font-weight:800;white-space:nowrap}.security-badge.is-ok{border-color:color-mix(in srgb,var(--cw-success) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-success) 10%,var(--cw-surface))}.security-badge.is-warning{border-color:color-mix(in srgb,var(--cw-warning) 42%,var(--cw-line));background:color-mix(in srgb,var(--cw-warning) 10%,var(--cw-surface))}.account-security-sessions{margin:18px 0}.security-session-list{display:grid;gap:10px;margin-top:18px}.security-session-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px;border:1px solid var(--cw-line);border-radius:16px;background:color-mix(in srgb,var(--cw-surface) 92%,var(--cw-bg))}.security-session-row>div:first-child{display:grid;gap:3px}.security-session-row span,.security-session-row small{color:var(--cw-muted);font-size:.76rem}.security-session-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.account-security-danger{border-color:color-mix(in srgb,var(--cw-danger) 32%,var(--cw-line));background:color-mix(in srgb,var(--cw-danger) 4%,var(--cw-surface))}.security-delete-details{margin-top:14px}.security-delete-details summary{cursor:pointer;font-weight:800}.security-delete-details .auth-form{margin-top:14px}.security-danger-note{padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--cw-danger) 10%,var(--cw-surface));color:var(--cw-danger);font-weight:700;font-size:.78rem}.security-hardening-note{margin-top:18px}.security-hardening-note ul{margin:12px 0 0;padding-left:20px;color:var(--cw-muted);display:grid;gap:6px}
@media(max-width:760px){.account-security-grid{grid-template-columns:1fr}.account-security-heading,.account-security-card-head,.security-session-row{align-items:stretch;flex-direction:column}.security-session-actions{justify-content:flex-start}.account-security-card{padding:17px}.account-security-heading>.button{align-self:flex-start}}

/* Responsive & UX global audit — v1.94.0 */
html,body{max-width:100%;overflow-x:clip}
main{min-width:0}
main *{min-width:0}
:where(input,select,textarea,button){max-width:100%}
textarea{max-width:100%;resize:vertical}
:where(.admin-table-wrap,.rankings-table-card,.notifications-category-strip,.explore-kind-tabs,.visit-filter-bar,.progression-tier-summary,.progression-badge-filters,.search-type-chips,.community-gallery-filters){-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
:where(.admin-table-wrap,.rankings-table-card){max-width:100%}
[role="dialog"]{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
.mobile-nav-preferences{display:none}

@media(max-width:980px){
  .header-inner{gap:12px}
  .header-actions{margin-left:auto;gap:6px}
  .my-world-button,.community-feed-button,.road-trip-quick-button{display:none}
  .admin-inline-actions{min-width:0}
  .admin-search{flex-wrap:wrap}
  .admin-search input{min-width:min(100%,260px)}
}

@media(max-width:720px){
  .container,.narrow-container{width:min(100% - 24px,1180px)}
  .site-header{backdrop-filter:blur(14px)}
  .header-inner{min-height:64px;gap:8px}
  .brand{min-width:0;flex:1}
  .brand-logo-image{width:170px;max-width:100%}
  .header-actions{flex:0 0 auto}
  .header-actions>.header-search-button,
  .header-actions>.my-world-button,
  .header-actions>.community-feed-button,
  .header-actions>.road-trip-quick-button,
  .header-actions>.language-menu,
  .header-actions>.theme-toggle,
  .header-actions>.account-button{display:none}
  .header-actions>.notification-button,.header-actions>.mobile-menu-toggle{display:grid}
  .mobile-nav{max-height:calc(100dvh - 64px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 18px 36px rgba(0,0,0,.12)}
  .mobile-nav-inner{padding-bottom:max(18px,env(safe-area-inset-bottom))}
  .mobile-nav-preferences{display:grid;gap:10px;margin-top:12px;padding:13px 0 2px;border-top:1px solid var(--cw-line)}
  .mobile-nav-theme{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-surface);color:var(--cw-text);font:inherit;font-weight:750;text-align:left;cursor:pointer}
  .mobile-nav-theme .theme-icon{width:19px;height:19px;flex:0 0 auto}
  .mobile-nav-languages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .mobile-nav-languages a{display:grid;place-items:center;min-height:40px;padding:6px!important;border:1px solid var(--cw-line)!important;border-radius:10px;background:var(--cw-surface);font-size:.7rem!important;font-weight:850!important}
  .mobile-nav-languages a.is-active{border-color:var(--cw-copper)!important;color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface))}

  .hero-actions,.profile-actions,.park-detail-actions,.coaster-hero-actions,.attraction-hero-actions,.reco-hero-actions,.rankings-hero-actions,.hof-hero-actions,.progression-hub-actions,.community-photo-hero-actions,.trip-program-heading-actions,.admin-heading-actions{max-width:100%}
  .section-heading,.split-heading,.admin-heading,.park-map-preview-heading,.wait-history-heading,.wait-forecast-heading{gap:14px}
  .admin-search{flex-direction:column;align-items:stretch}
  .admin-search input,.admin-search .button{width:100%;min-width:0}
  .admin-table-wrap{border-radius:14px}
  .admin-table th,.admin-table td{padding:11px 12px}
  .admin-inline-actions{max-width:100%;flex-wrap:wrap}
  .admin-inline-actions .button,.admin-inline-actions button{max-width:100%}
  .admin-health-modal-footer{align-items:stretch;flex-direction:column}
  .admin-health-modal-footer .button{width:100%}
  .admin-health-modal-panel{max-height:calc(100dvh - 16px)}
  .admin-enrichment-console-dialog{max-width:100vw}
  .social-safety-popover,.trip-chat-report-menu .social-report-form{max-width:calc(100vw - 20px)}
  .road-trip-stop-head,.road-trip-stop-manage-actions{flex-wrap:wrap}
  .security-session-row,.account-security-card-head{min-width:0}
  .notifications-toolbar-actions{flex-wrap:wrap}
  .community-gallery-toolbar{align-items:stretch}
  .community-gallery-filters{max-width:100%}
  .home-my-world-empty p{min-width:0}
}

@media(max-width:480px){
  .container,.narrow-container{width:calc(100% - 20px)}
  .header-inner{min-height:60px}
  .brand-logo-image{width:145px}
  .header-actions{gap:5px}
  .icon-button{width:38px;height:38px;border-radius:12px}
  .mobile-nav{max-height:calc(100dvh - 60px)}

  main :where(h1,h2,h3,h4,p,strong,small,label,dd,dt){overflow-wrap:anywhere}
  .hero-copy h1,.page-hero h1,.park-hero h1,.park-detail-brand h1,.coaster-hero-grid h1,.attraction-hero-grid h1,.explore-hero h1,.reco-hero h1,.visit-mode-header h1,.profile-identity h1,.road-trip-hub-hero h1,.road-trip-detail-hero h1,.notifications-hero h1{font-size:clamp(2.15rem,12vw,3.2rem);line-height:.98;letter-spacing:-.04em}
  .eyebrow{font-size:.64rem;letter-spacing:.1em}
  .button{min-height:42px;padding:10px 14px}
  .hero-actions>.button,.park-detail-actions>.button,.profile-actions>.button,.profile-actions>form,.profile-actions>form>.button{flex:1 1 100%;width:100%}

  .profile-identity{flex-direction:column;gap:12px}
  .profile-avatar{width:64px;height:64px;border-radius:19px;font-size:1.9rem}
  .profile-stats-grid{grid-template-columns:1fr 1fr}
  .profile-stats-grid>div{padding:15px 12px}
  .profile-panel,.profile-record-card,.profile-progress-card{padding:17px}
  .profile-activity-list a{gap:10px;align-items:flex-start;flex-direction:column}

  .notifications-hero-stats{grid-template-columns:1fr 1fr}
  .notifications-hero-stats>div:last-child{grid-column:1/-1}
  .notifications-priority-filters{grid-template-columns:1fr}
  .notifications-filters{display:grid;grid-template-columns:1fr 1fr}
  .notifications-filters a{min-width:0}
  .notification-card{padding:12px;gap:10px}
  .notification-icon{width:40px;height:40px}
  .notification-actions-v2>a,.notification-actions-v2 form,.notification-actions-v2 .button{flex:1 1 100%}
  .notification-preference-item-v3{grid-template-columns:auto minmax(0,1fr)}

  .visit-mode-stats{grid-template-columns:1fr 1fr}
  .visit-attraction-card{grid-template-columns:minmax(0,1fr) 52px}
  .visit-attraction-main{align-items:flex-start}
  .visit-attraction-actions{grid-template-columns:1fr}
  .visit-mobile-dock{left:6px;right:6px;gap:3px;padding:5px;border-radius:17px}
  .visit-mobile-dock a{padding:6px 3px}
  .visit-mobile-dock strong{font-size:.5rem}
  .visit-preferences{padding:12px}

  .road-trip-stats-grid,.road-trip-stats-grid-v2{grid-template-columns:1fr 1fr}
  .road-trip-stop-head{align-items:flex-start;flex-direction:column}
  .road-trip-stop-order,.road-trip-stop-manage-actions{width:100%;flex-direction:row;flex-wrap:wrap}
  .road-trip-stop-order .button,.road-trip-stop-manage-actions .button{flex:1 1 auto}
  .road-trip-v2-card-head{align-items:flex-start;flex-direction:column}
  .road-trip-v2-card-head>div{width:100%}
  .road-trip-v2-map{height:250px}
  .road-trip-add-stop .road-trip-stop-form{left:6px;right:6px;top:66px;bottom:6px}

  .my-world-summary{grid-template-columns:1fr 1fr}
  .my-world-hero-card,.my-world-park-card,.my-world-plan-card,.my-world-opportunity-card{padding:15px}
  .home-my-world-opportunity{grid-template-columns:1fr}
  .home-my-world-opportunity>span,.home-my-world-opportunity>strong,.home-my-world-opportunity>small,.home-my-world-opportunity>b{grid-column:1;grid-row:auto}

  .community-gallery-hero-grid{grid-template-columns:1fr}
  .community-gallery-hero-stat{width:100%;min-width:0}
  .community-gallery-toolbar{flex-direction:column}
  .community-gallery-filters{width:100%}
  .community-photo-detail-actions,.community-photo-comment-actions{align-items:stretch;flex-direction:column}
  .community-photo-detail-actions .button,.community-photo-comment-actions .button{width:100%}

  .admin-hero{padding-top:88px}
  .admin-kpi-grid,.admin-quality-grid,.admin-form-grid,.admin-translation-grid,.admin-data-quality-summary-grid,.admin-data-quality-metric-grid{grid-template-columns:1fr}
  .admin-data-quality-issue{grid-template-columns:30px minmax(0,1fr);padding:12px}
  .admin-data-quality-issue>.button{grid-column:1/-1;width:100%}
  .admin-quality-v3-dashboard{padding:14px}
  .admin-user-actions-grid,.admin-user-history-grid,.admin-user-summary{grid-template-columns:1fr}
  .admin-rcdb-manual form{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom))}
  .admin-health-modal{padding:0}
  .admin-health-modal-panel{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border:0;border-radius:0}
  .admin-health-console{min-height:0;flex:1}

  .account-security-card{padding:15px;border-radius:18px}
  .security-session-actions,.security-session-actions form,.security-session-actions .button{width:100%}
  .security-session-actions{align-items:stretch;flex-direction:column}

  .wait-history-summary{grid-template-columns:1fr 1fr}
  .wait-history-summary span:last-child{grid-column:1/-1}
  .wait-forecast-summary{grid-template-columns:1fr}
  .park-map-embed-shell{min-height:360px;height:62vh}
}

@media(max-width:360px){
  .container,.narrow-container{width:calc(100% - 16px)}
  .brand-logo-image{width:132px}
  .notification-button,.mobile-menu-toggle{width:36px;height:36px}
  .mobile-nav-languages{gap:4px}
  .mobile-nav-languages a{min-height:38px;padding:4px!important;font-size:.64rem!important}
  .profile-stats-grid,.visit-mode-stats,.road-trip-stats-grid,.road-trip-stats-grid-v2,.my-world-summary,.notifications-hero-stats{grid-template-columns:1fr}
  .notifications-hero-stats>div:last-child,.wait-history-summary span:last-child{grid-column:auto}
  .wait-history-summary{grid-template-columns:1fr}
  .park-detail-summary-grid,.coaster-facts-grid{grid-template-columns:1fr}
  .park-summary-stat:nth-child(odd),.coaster-facts-grid>div:nth-child(odd){border-left:0}
  .mobile-nav-theme{font-size:.76rem}
}

/* Robustness / runtime diagnostics — v1.95.0 */
.admin-diagnostics-overview{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:22px;align-items:center;margin-bottom:28px;padding:24px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface);box-shadow:var(--cw-shadow-sm)}
.admin-diagnostics-overview.is-healthy{border-color:color-mix(in srgb,#3a9b68 45%,var(--cw-line))}.admin-diagnostics-overview.is-degraded{border-color:color-mix(in srgb,#d39a3f 55%,var(--cw-line))}.admin-diagnostics-overview.is-down{border-color:color-mix(in srgb,#cf5b58 55%,var(--cw-line))}
.admin-diagnostics-overview h2{margin:3px 0 6px;font-size:clamp(1.55rem,3vw,2.2rem)}.admin-diagnostics-overview p{margin:0;color:var(--cw-muted)}
.admin-diagnostics-counts{display:grid;grid-template-columns:repeat(3,minmax(76px,1fr));gap:8px}.admin-diagnostics-counts>div{display:grid;gap:2px;min-width:82px;padding:12px;border:1px solid var(--cw-line);border-radius:14px;text-align:center}.admin-diagnostics-counts strong{font-size:1.4rem}.admin-diagnostics-counts span{font-size:.72rem;color:var(--cw-muted);font-weight:800}
.admin-diagnostics-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.admin-diagnostics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.admin-diagnostic-card{position:relative;overflow:hidden;padding:18px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.admin-diagnostic-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--cw-line)}.admin-diagnostic-card.is-healthy:before{background:#3a9b68}.admin-diagnostic-card.is-degraded:before{background:#d39a3f}.admin-diagnostic-card.is-down:before{background:#cf5b58}.admin-diagnostic-card.is-unknown:before{background:#8b8580}
.admin-diagnostic-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-diagnostic-card h3{margin:3px 0 0;font-size:1.08rem}.admin-diagnostic-card>p{margin:12px 0;color:var(--cw-muted);font-size:.88rem;line-height:1.55}.admin-diagnostic-state{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--cw-text) 6%,transparent);font-size:.68rem;font-weight:900}.admin-diagnostic-card.is-healthy .admin-diagnostic-state{color:#23734b}.admin-diagnostic-card.is-degraded .admin-diagnostic-state{color:#9b6716}.admin-diagnostic-card.is-down .admin-diagnostic-state{color:#b33f3d}
.admin-diagnostic-details{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}.admin-diagnostic-details>div{min-width:0;padding:8px 9px;border-radius:10px;background:color-mix(in srgb,var(--cw-text) 3%,transparent)}.admin-diagnostic-details>div.is-wide{grid-column:1/-1}.admin-diagnostic-details dt{margin:0 0 3px;color:var(--cw-muted);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.admin-diagnostic-details dd{margin:0;font-size:.78rem;overflow-wrap:anywhere}
.admin-diagnostics-bottom-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;margin-top:26px}.admin-diagnostics-panel{padding:20px;border:1px solid var(--cw-line);border-radius:18px;background:var(--cw-surface)}.admin-diagnostics-panel h2{margin:4px 0 8px}.admin-diagnostics-panel>p{color:var(--cw-muted)}.admin-diagnostic-log-line{padding:11px 0;border-top:1px solid var(--cw-line)}.admin-diagnostic-log-line>div{display:flex;gap:10px;align-items:center}.admin-diagnostic-log-line strong{font-size:.72rem;color:#b33f3d}.admin-diagnostic-log-line time{color:var(--cw-muted);font-size:.72rem}.admin-diagnostic-log-line p{margin:5px 0 0;font-size:.84rem;line-height:1.45;overflow-wrap:anywhere}.admin-diagnostics-empty{padding:18px;border:1px dashed var(--cw-line);border-radius:13px;color:var(--cw-muted)}.admin-diagnostics-command-card{margin-top:14px}.admin-diagnostics-command-card code{display:block;overflow-x:auto;white-space:nowrap}
@media(max-width:1050px){.admin-diagnostics-overview{grid-template-columns:1fr}.admin-diagnostics-actions{justify-content:flex-start}.admin-diagnostics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-diagnostics-grid,.admin-diagnostics-bottom-grid{grid-template-columns:1fr}.admin-diagnostics-counts{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-diagnostics-actions .button{flex:1 1 auto}.admin-diagnostic-details{grid-template-columns:1fr}}
@media(max-width:420px){.admin-diagnostics-overview{padding:16px}.admin-diagnostics-counts{grid-template-columns:1fr}.admin-diagnostics-actions{flex-direction:column}.admin-diagnostics-actions .button{width:100%}.admin-diagnostic-card{padding:15px}.admin-diagnostic-card-head{flex-direction:column}.admin-diagnostic-state{align-self:flex-start}}

/* v1.96 — Catalog finalization */
.admin-finalization-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:28px;align-items:end}.admin-finalization-readiness,.admin-finalization-panel,.admin-finalization-kpis article{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:22px}.admin-finalization-readiness{padding:22px;display:grid;gap:4px}.admin-finalization-readiness>span,.admin-finalization-kpis span,.admin-finalization-taxonomy-stats span,.admin-finalization-source-list span{color:var(--text-muted);font-size:.82rem}.admin-finalization-readiness strong{font-size:2.5rem;line-height:1}.admin-finalization-readiness strong small{font-size:.45em}.admin-finalization-readiness em{font-style:normal;font-weight:700}.admin-finalization-section{padding-top:28px}.admin-finalization-flash{margin-bottom:20px}.admin-finalization-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:24px}.admin-finalization-kpis article{padding:16px;min-width:0}.admin-finalization-kpis strong{display:block;font-size:1.65rem;margin-top:5px}.admin-finalization-kpis small{display:block;color:var(--text-muted);margin-top:4px}.admin-finalization-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:20px;align-items:start}.admin-finalization-panel{padding:20px;min-width:0}.admin-finalization-panel-head{display:flex;gap:16px;justify-content:space-between;align-items:flex-start}.admin-finalization-panel h2{margin:.25rem 0 .6rem}.admin-finalization-panel>p{color:var(--text-muted)}.admin-finalization-priority-list{display:grid;gap:10px;margin-top:18px}.admin-finalization-priority-card{display:flex;gap:14px;justify-content:space-between;align-items:center;border:1px solid var(--border);border-radius:18px;padding:14px;background:var(--surface-soft)}.admin-finalization-priority-main{min-width:0;flex:1}.admin-finalization-priority-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-finalization-priority-title>div{display:grid;min-width:0}.admin-finalization-priority-title>div span{font-size:.75rem;color:var(--text-muted)}.admin-finalization-priority-title>div strong{overflow-wrap:anywhere}.admin-finalization-priority-title>b{border-radius:999px;padding:5px 9px;font-size:.78rem}.admin-finalization-priority-title>b.is-critical{background:rgba(220,38,38,.12);color:#dc2626}.admin-finalization-priority-title>b.is-partial{background:rgba(217,119,6,.12);color:#d97706}.admin-finalization-priority-title>b.is-good{background:rgba(22,163,74,.12);color:#16a34a}.admin-finalization-gap-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.admin-finalization-gap-row span{font-size:.76rem;border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--text-muted)}.admin-finalization-priority-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.admin-finalization-side{display:grid;gap:16px}.admin-finalization-taxonomy-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.admin-finalization-taxonomy-stats>div{border:1px solid var(--border);border-radius:15px;padding:12px}.admin-finalization-taxonomy-stats strong{display:block;font-size:1.45rem}.admin-finalization-normalize-form{display:grid;gap:9px}.admin-finalization-normalize-form label{display:grid;gap:5px}.admin-finalization-normalize-form input{width:100%}.admin-finalization-normalize-form small{color:var(--text-muted)}.admin-finalization-ok{padding:12px;border-radius:14px;background:rgba(22,163,74,.1);color:#16a34a;font-weight:700}.admin-finalization-source-list{display:grid;gap:7px;margin-top:14px}.admin-finalization-source-list>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding-bottom:7px}.admin-finalization-cli code{display:block;overflow:auto;padding:8px 10px;border-radius:10px;background:var(--surface-soft);margin-top:7px;font-size:.76rem}.admin-finalization-cli p{margin-bottom:0}.admin-tabs a{white-space:nowrap}
@media(max-width:1100px){.admin-finalization-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-finalization-grid{grid-template-columns:1fr}.admin-finalization-side{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-finalization-hero-grid{grid-template-columns:1fr}.admin-finalization-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-finalization-side{grid-template-columns:1fr}.admin-finalization-priority-card{align-items:stretch;flex-direction:column}.admin-finalization-priority-actions{justify-content:flex-start}.admin-finalization-panel-head{flex-direction:column}.admin-finalization-panel-head .button{width:100%}}
@media(max-width:390px){.admin-finalization-kpis{grid-template-columns:1fr}.admin-finalization-taxonomy-stats{grid-template-columns:1fr}.admin-finalization-priority-actions,.admin-finalization-priority-actions form,.admin-finalization-priority-actions .button{width:100%}}

/* v1.99.7 — Navigation icon-first, recherche centrale et menus animes */
.site-header--icon-nav{
    --cw-header-cyan:#39c4f2;
    --cw-header-orange:#f18743;
    padding:7px 0;
    background:color-mix(in srgb,var(--cw-bg) 90%,transparent);
    border-bottom:1px solid color-mix(in srgb,var(--cw-line) 78%,transparent);
    backdrop-filter:blur(18px) saturate(1.06);
}
.cw-icon-header-inner{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,540px) minmax(0,1fr);
    align-items:center;
    gap:12px;
    min-height:54px;
    padding:6px 9px;
    border:1px solid var(--cw-line);
    border-radius:15px;
    background:color-mix(in srgb,var(--cw-surface) 90%,transparent);
    box-shadow:0 10px 28px rgba(0,0,0,.08);
}
.cw-header-left{display:flex;align-items:center;gap:9px;min-width:0;justify-self:start}
.cw-header-brand{position:relative;display:flex;align-items:center;flex:0 0 auto;height:40px;padding:0 5px;text-decoration:none}
.cw-header-brand picture{display:block;line-height:0}
.cw-header-brand img{display:block;width:132px;height:auto;max-height:38px;object-fit:contain;transition:transform .2s ease,filter .2s ease}
.cw-header-brand:hover img{transform:translateY(-1px);filter:drop-shadow(0 4px 10px rgba(57,196,242,.12))}
.cw-category-nav{display:flex;align-items:center;gap:4px;min-width:0}
.cw-category{position:relative;flex:0 0 auto}
.cw-category-toggle,.cw-header-icon{
    position:relative;
    width:39px;
    height:39px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid var(--cw-line);
    border-radius:11px;
    background:color-mix(in srgb,var(--cw-surface-solid) 72%,transparent);
    color:var(--cw-muted);
    cursor:pointer;
    transition:transform .18s ease,color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.cw-category-toggle:hover,.cw-category-toggle:focus-visible,.cw-category.is-open>.cw-category-toggle,.cw-header-icon:hover,.cw-header-icon:focus-visible{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-header-cyan) 45%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-header-cyan) 6%,var(--cw-surface));
    box-shadow:0 7px 18px rgba(0,0,0,.08),0 0 0 1px color-mix(in srgb,var(--cw-header-cyan) 9%,transparent);
    transform:translateY(-1px);
}
.cw-category-toggle.is-active,.cw-header-icon.is-active{
    color:var(--cw-header-orange);
    border-color:color-mix(in srgb,var(--cw-header-orange) 48%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-header-orange) 7%,var(--cw-surface));
}
.cw-category-icon,.cw-header-icon>svg{display:grid;place-items:center;width:19px;height:19px}
.cw-category-icon svg,.cw-header-icon>svg,.cw-category-menu-icon svg,.cw-category-item-icon svg,.cw-mobile-category-title svg,.cw-mobile-category-toggle>svg,.cw-mobile-nav-row svg,.cw-header-language svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.cw-category-toggle[data-tooltip]::after,.cw-header-icon[data-tooltip]::after,.cw-header-brand[data-tooltip]::after,.cw-header-language[data-tooltip]::after{
    content:attr(data-tooltip);
    position:absolute;
    top:calc(100% + 9px);
    left:50%;
    z-index:90;
    padding:6px 8px;
    border:1px solid var(--cw-line);
    border-radius:8px;
    background:var(--cw-surface-solid);
    color:var(--cw-text);
    box-shadow:var(--cw-shadow);
    font-size:.66rem;
    font-weight:750;
    line-height:1;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,-3px);
    transition:opacity .15s ease,transform .15s ease,visibility .15s ease;
    pointer-events:none;
}
.cw-category-toggle[data-tooltip]:hover::after,.cw-category-toggle[data-tooltip]:focus-visible::after,.cw-header-icon[data-tooltip]:hover::after,.cw-header-icon[data-tooltip]:focus-visible::after,.cw-header-brand[data-tooltip]:hover::after,.cw-header-language[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translate(-50%,0)}
.cw-category.is-open>.cw-category-toggle::after{opacity:0!important;visibility:hidden!important}
.cw-category-menu{
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    z-index:85;
    width:290px;
    padding:9px;
    border:1px solid var(--cw-line-strong);
    border-radius:15px;
    background:color-mix(in srgb,var(--cw-surface-solid) 97%,transparent);
    box-shadow:0 20px 55px rgba(0,0,0,.2);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(9px) scale(.985);
    transform-origin:top left;
    transition:opacity .17s ease,transform .2s cubic-bezier(.2,.75,.2,1),visibility .2s ease;
}
.cw-category.is-wide .cw-category-menu{width:360px;max-height:min(72vh,640px);overflow:auto}
.cw-category.is-open>.cw-category-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.cw-category-menu-head{display:flex;align-items:center;gap:9px;padding:8px 8px 10px;border-bottom:1px solid var(--cw-line);margin-bottom:6px}
.cw-category-menu-icon{display:grid;place-items:center;width:28px;height:28px;padding:5px;border:1px solid color-mix(in srgb,var(--cw-header-cyan) 28%,var(--cw-line));border-radius:9px;color:var(--cw-header-cyan);background:color-mix(in srgb,var(--cw-header-cyan) 5%,var(--cw-surface))}
.cw-category-menu-head strong{font-size:.82rem;letter-spacing:.01em}
.cw-category-menu-body{display:grid;gap:7px}
.cw-category-menu-section+.cw-category-menu-section{padding-top:7px;border-top:1px solid color-mix(in srgb,var(--cw-line) 78%,transparent)}
.cw-category-section-title,.cw-mobile-section-title{padding:4px 7px 5px;color:var(--cw-muted);font-size:.58rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.cw-category-menu-list{display:grid;gap:2px}
.cw-category-link{
    width:100%;
    min-height:39px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:5px 7px;
    border:0;
    border-radius:9px;
    background:transparent;
    color:var(--cw-text);
    text-align:left;
    text-decoration:none;
    font:inherit;
    font-size:.74rem;
    font-weight:730;
    cursor:pointer;
    transition:background .15s ease,color .15s ease,transform .15s ease;
}
.cw-category-link:hover,.cw-category-link:focus-visible{background:color-mix(in srgb,var(--cw-header-cyan) 6%,var(--cw-surface));transform:translateX(2px)}
.cw-category-link.is-active{background:color-mix(in srgb,var(--cw-header-orange) 8%,var(--cw-surface));color:var(--cw-text)}
.cw-category-item-icon{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;padding:6px;border:1px solid var(--cw-line);border-radius:8px;color:var(--cw-muted);background:var(--cw-surface-solid)}
.cw-category-link:hover .cw-category-item-icon{color:var(--cw-header-cyan);border-color:color-mix(in srgb,var(--cw-header-cyan) 32%,var(--cw-line))}
.cw-category-link.is-active .cw-category-item-icon{color:var(--cw-header-orange);border-color:color-mix(in srgb,var(--cw-header-orange) 38%,var(--cw-line))}
.cw-category-form{margin:0}
.cw-category-action{color:color-mix(in srgb,#ef5d4d 78%,var(--cw-text))}
.cw-header-search{position:relative;width:100%;min-width:0;justify-self:center}
.site-header--icon-nav .cw-header-search>.search-bar{width:100%;min-height:42px;display:flex;align-items:center;gap:8px;padding:4px 9px;border:1px solid var(--cw-line-strong);border-radius:12px;background:color-mix(in srgb,var(--cw-surface-solid) 82%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.03);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.site-header--icon-nav .cw-header-search>.search-bar:focus-within{border-color:color-mix(in srgb,var(--cw-header-cyan) 60%,var(--cw-line-strong));box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-header-cyan) 10%,transparent);background:var(--cw-surface-solid)}
.site-header--icon-nav .cw-header-search .search-bar svg{flex:0 0 auto;width:18px;height:18px}
.site-header--icon-nav .cw-header-search .search-bar input{min-width:0;flex:1 1 auto;padding:7px 2px;font-size:.8rem}
.site-header--icon-nav .cw-header-search .search-bar button{display:none!important}
.site-header--icon-nav .cw-header-search .search-bar kbd{flex:0 0 auto;padding:3px 6px;border:1px solid var(--cw-line);border-bottom-color:var(--cw-line-strong);border-radius:6px;background:var(--cw-bg-soft);color:var(--cw-muted);font-size:.57rem;font-weight:800}
.site-header--icon-nav .cw-header-search .search-suggest-panel{top:calc(100% + 8px);left:0;right:0;border-radius:14px;box-shadow:0 20px 55px rgba(0,0,0,.22)}
.cw-header-actions{display:flex;align-items:center;gap:5px;justify-self:end;min-width:0}
.cw-notification-link{position:relative}
.cw-notification-link .notification-badge{position:absolute;right:-3px;top:-4px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--cw-surface-solid);border-radius:999px;background:var(--cw-header-orange);color:#fff;font-size:.54rem;font-weight:900;line-height:1}
.cw-language-control{position:relative}
.cw-header-language{position:relative;height:39px;display:flex;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--cw-line);border-radius:11px;background:color-mix(in srgb,var(--cw-surface-solid) 72%,transparent);color:var(--cw-muted);cursor:pointer;font-size:.66rem;font-weight:850;transition:color .18s ease,border-color .18s ease,background .18s ease}
.cw-header-language:hover,.cw-header-language[aria-expanded="true"]{color:var(--cw-text);border-color:color-mix(in srgb,var(--cw-header-cyan) 42%,var(--cw-line-strong));background:color-mix(in srgb,var(--cw-header-cyan) 5%,var(--cw-surface))}
.cw-header-language svg{width:17px;height:17px}
.cw-language-menu{position:absolute;top:calc(100% + 9px);right:0;z-index:95;display:grid;grid-template-columns:repeat(5,34px);gap:4px;padding:6px;border:1px solid var(--cw-line-strong);border-radius:11px;background:var(--cw-surface-solid);box-shadow:var(--cw-shadow)}
.cw-language-menu[hidden]{display:none}
.cw-language-menu a{display:grid;place-items:center;height:32px;border:1px solid transparent;border-radius:7px;color:var(--cw-muted);text-decoration:none;font-size:.63rem;font-weight:850}
.cw-language-menu a:hover,.cw-language-menu a.is-active{color:var(--cw-text);border-color:color-mix(in srgb,var(--cw-header-cyan) 50%,var(--cw-line));background:color-mix(in srgb,var(--cw-header-cyan) 6%,var(--cw-surface))}
.cw-theme-direct .sun-icon,.cw-theme-direct .moon-icon{grid-area:1/1}
html[data-theme="dark"] .cw-theme-direct .moon-icon,html[data-theme="light"] .cw-theme-direct .sun-icon{opacity:1;transform:scale(1)}
html[data-theme="dark"] .cw-theme-direct .sun-icon,html[data-theme="light"] .cw-theme-direct .moon-icon{opacity:0;transform:scale(.65)}
.cw-theme-direct svg{transition:opacity .16s ease,transform .16s ease}
.cw-mobile-nav-toggle{display:none}
.cw-mobile-navigation{display:none}

@media(max-width:1270px){
    .cw-icon-header-inner{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:6px 8px}
    .cw-header-left{grid-column:1;grid-row:1}
    .cw-category-nav{display:none}
    .cw-header-actions{grid-column:2;grid-row:1}
    .cw-header-search{grid-column:1/-1;grid-row:2;width:100%}
    .cw-mobile-nav-toggle{display:grid}
    .cw-header-brand img{width:145px}
    .site-header--icon-nav .cw-header-search>.search-bar{min-height:40px}
    .site-header--icon-nav .cw-header-search .search-suggest-panel{position:fixed;left:10px;right:10px;top:auto;margin-top:7px;max-height:60vh;overflow:auto}
    .cw-mobile-navigation{
        position:fixed;
        top:0;
        right:0;
        z-index:120;
        display:flex;
        flex-direction:column;
        width:min(390px,100vw);
        height:100dvh;
        padding:14px;
        border-left:1px solid var(--cw-line-strong);
        background:color-mix(in srgb,var(--cw-surface-solid) 98%,transparent);
        box-shadow:-24px 0 60px rgba(0,0,0,.24);
        overflow:auto;
        animation:cwDrawerIn .22s cubic-bezier(.2,.75,.2,1);
    }
    .cw-mobile-navigation[hidden]{display:none}
    @keyframes cwDrawerIn{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}
    body.cw-nav-open{overflow:hidden}
    .cw-mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 3px 12px;border-bottom:1px solid var(--cw-line)}
    .cw-mobile-nav-head strong{font-size:.9rem}
    .cw-mobile-nav-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-surface);color:var(--cw-text);font-size:1.3rem;cursor:pointer}
    .cw-mobile-nav-categories{display:grid;gap:7px;padding:12px 0}
    .cw-mobile-category{border:1px solid var(--cw-line);border-radius:12px;background:color-mix(in srgb,var(--cw-surface) 85%,transparent);overflow:hidden}
    .cw-mobile-category.is-active{border-color:color-mix(in srgb,var(--cw-header-orange) 34%,var(--cw-line-strong))}
    .cw-mobile-category-toggle{width:100%;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:0;background:transparent;color:var(--cw-text);cursor:pointer}
    .cw-mobile-category-title{display:flex;align-items:center;gap:9px;text-align:left}
    .cw-mobile-category-title>span{display:grid;place-items:center;width:31px;height:31px;padding:6px;border:1px solid var(--cw-line);border-radius:9px;color:var(--cw-header-cyan);background:var(--cw-surface-solid)}
    .cw-mobile-category-title strong{font-size:.75rem}
    .cw-mobile-category-toggle>svg{width:17px;height:17px;color:var(--cw-muted);transition:transform .18s ease}
    .cw-mobile-category-toggle[aria-expanded="true"]>svg{transform:rotate(90deg)}
    .cw-mobile-category-list{display:grid;gap:2px;padding:0 7px 8px;border-top:1px solid color-mix(in srgb,var(--cw-line) 70%,transparent)}
    .cw-mobile-category-list[hidden]{display:none}
    .cw-mobile-section-title{padding-top:9px}
    .cw-mobile-nav-row{width:100%;min-height:42px;display:flex;align-items:center;gap:9px;padding:5px 6px;border:0;border-radius:9px;background:transparent;color:var(--cw-text);text-decoration:none;font:inherit;cursor:pointer}
    .cw-mobile-nav-row:hover,.cw-mobile-nav-row.is-active{background:color-mix(in srgb,var(--cw-header-cyan) 5%,var(--cw-surface))}
    .cw-mobile-nav-row>span,.cw-mobile-nav-row>button>span{display:grid;place-items:center;width:29px;height:29px;padding:6px;border:1px solid var(--cw-line);border-radius:8px;background:var(--cw-surface-solid);color:var(--cw-muted);flex:0 0 auto}
    .cw-mobile-nav-row strong{font-size:.73rem;text-align:left}
    .cw-mobile-nav-form{margin:0;padding:0}
    .cw-mobile-nav-form>button{width:100%;min-height:42px;display:flex;align-items:center;gap:9px;padding:5px 6px;border:0;border-radius:9px;background:transparent;color:color-mix(in srgb,#ef5d4d 78%,var(--cw-text));font:inherit;cursor:pointer}
    .cw-mobile-nav-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--cw-line)}
    .cw-mobile-nav-auth a{padding:8px 10px;border:1px solid var(--cw-line-strong);border-radius:9px;color:var(--cw-text);text-decoration:none;font-size:.72rem;font-weight:800}
}

@media(max-width:640px){
    .site-header--icon-nav{padding:5px 0}
    .cw-icon-header-inner{width:calc(100% - 12px);padding:5px 6px;border-radius:13px}
    .cw-header-brand img{width:125px;max-height:34px}
    .cw-header-actions{gap:3px}
    .cw-header-icon{width:36px;height:36px;border-radius:10px}
    .cw-header-language{height:36px;padding:0 7px;border-radius:10px}
    .cw-header-language svg{display:none}
    .site-header--icon-nav .cw-header-search>.search-bar{min-height:39px;padding:3px 8px}
    .site-header--icon-nav .cw-header-search .search-bar input{font-size:.76rem}
    .site-header--icon-nav .cw-header-search .search-bar kbd{display:none}
    .cw-category-toggle[data-tooltip]::after,.cw-header-icon[data-tooltip]::after,.cw-header-brand[data-tooltip]::after,.cw-header-language[data-tooltip]::after{display:none}
}

@media(max-width:390px){
    .cw-header-brand img{width:106px}
    .cw-header-icon{width:34px;height:34px}
    .cw-header-language{height:34px;padding:0 6px;font-size:.6rem}
}

@media(prefers-reduced-motion:reduce){
    .cw-category-menu,.cw-category-toggle,.cw-header-icon,.cw-header-brand img,.cw-mobile-navigation,.cw-mobile-category-toggle>svg,.cw-category-link{transition:none!important;animation:none!important}
}


/* v1.99.8 — Header logo > recherche > icones, controles unifies et drapeaux */
.site-header--icon-nav .cw-icon-header-inner{
    grid-template-columns:auto minmax(320px,1fr) auto;
    gap:14px;
    min-height:58px;
    padding:7px 10px;
}
.site-header--icon-nav .cw-header-brand{
    grid-column:1;
    justify-self:start;
    height:42px;
    padding-inline:4px 8px;
}
.site-header--icon-nav .cw-header-brand img{
    width:142px;
    max-height:40px;
}
.site-header--icon-nav .cw-header-search{
    grid-column:2;
    width:100%;
    max-width:680px;
    justify-self:center;
}
.site-header--icon-nav .cw-header-actions{
    grid-column:3;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
    white-space:nowrap;
}
.site-header--icon-nav .cw-category-nav{
    display:flex;
    align-items:center;
    gap:5px;
}
.site-header--icon-nav .cw-header-divider{
    width:1px;
    height:24px;
    margin:0 2px;
    background:var(--cw-line);
    flex:0 0 auto;
}
.site-header--icon-nav .cw-category-toggle,
.site-header--icon-nav .cw-header-icon,
.site-header--icon-nav .cw-header-language{
    width:39px;
    min-width:39px;
    height:39px;
    min-height:39px;
    display:grid;
    place-items:center;
    padding:0;
    gap:0;
    border:1px solid var(--cw-line);
    border-radius:11px;
    background:color-mix(in srgb,var(--cw-surface-solid) 72%,transparent);
    color:var(--cw-muted);
    line-height:1;
    box-sizing:border-box;
}
.site-header--icon-nav .cw-category-toggle:hover,
.site-header--icon-nav .cw-category-toggle:focus-visible,
.site-header--icon-nav .cw-category.is-open>.cw-category-toggle,
.site-header--icon-nav .cw-header-icon:hover,
.site-header--icon-nav .cw-header-icon:focus-visible,
.site-header--icon-nav .cw-header-language:hover,
.site-header--icon-nav .cw-header-language:focus-visible,
.site-header--icon-nav .cw-header-language[aria-expanded="true"]{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-header-cyan) 45%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-header-cyan) 6%,var(--cw-surface));
    box-shadow:0 7px 18px rgba(0,0,0,.08),0 0 0 1px color-mix(in srgb,var(--cw-header-cyan) 9%,transparent);
    transform:translateY(-1px);
}
.site-header--icon-nav .cw-category-icon,
.site-header--icon-nav .cw-header-icon>svg{
    width:18px;
    height:18px;
}
.site-header--icon-nav .cw-language-flag{
    display:inline-grid;
    place-items:center;
    width:24px;
    height:24px;
    font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;
    font-size:1.18rem;
    line-height:1;
    filter:saturate(.95);
}
.site-header--icon-nav .cw-language-menu{
    top:calc(100% + 10px);
    right:0;
    width:178px;
    grid-template-columns:1fr;
    gap:3px;
    padding:7px;
    border-radius:12px;
}
.site-header--icon-nav .cw-language-menu a{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:9px;
    width:100%;
    height:38px;
    padding:0 9px;
    border-radius:8px;
    font-size:.72rem;
    font-weight:760;
}
.site-header--icon-nav .cw-language-menu a .cw-language-flag{
    width:22px;
    height:22px;
    font-size:1.08rem;
    flex:0 0 auto;
}
.site-header--icon-nav .cw-category-nav .cw-category:nth-last-child(-n+2) .cw-category-menu{
    left:auto;
    right:0;
    transform-origin:top right;
}
.site-header--icon-nav .cw-header-search>.search-bar{
    min-height:42px;
    border-radius:12px;
}
.site-header--icon-nav .cw-header-search .search-bar input{
    font-size:.82rem;
}

@media(max-width:1450px) and (min-width:1271px){
    .site-header--icon-nav .cw-icon-header-inner{gap:9px;padding-inline:8px}
    .site-header--icon-nav .cw-header-brand img{width:126px}
    .site-header--icon-nav .cw-header-actions,.site-header--icon-nav .cw-category-nav{gap:3px}
    .site-header--icon-nav .cw-category-toggle,
    .site-header--icon-nav .cw-header-icon,
    .site-header--icon-nav .cw-header-language{width:37px;min-width:37px;height:37px;min-height:37px;border-radius:10px}
    .site-header--icon-nav .cw-header-search{max-width:600px}
}

@media(max-width:1270px){
    .site-header--icon-nav .cw-icon-header-inner{
        grid-template-columns:minmax(0,1fr) auto;
        grid-template-rows:auto auto;
        gap:7px;
        padding:6px 8px;
    }
    .site-header--icon-nav .cw-header-brand{grid-column:1;grid-row:1}
    .site-header--icon-nav .cw-header-actions{grid-column:2;grid-row:1}
    .site-header--icon-nav .cw-header-search{grid-column:1/-1;grid-row:2;max-width:none;width:100%}
    .site-header--icon-nav .cw-category-nav,.site-header--icon-nav .cw-header-divider{display:none}
    .site-header--icon-nav .cw-mobile-nav-toggle{display:grid}
}

@media(max-width:640px){
    .site-header--icon-nav .cw-header-brand img{width:118px}
    .site-header--icon-nav .cw-category-toggle,
    .site-header--icon-nav .cw-header-icon,
    .site-header--icon-nav .cw-header-language{width:36px;min-width:36px;height:36px;min-height:36px;border-radius:10px}
    .site-header--icon-nav .cw-language-flag{font-size:1.05rem;width:22px;height:22px}
}

@media(max-width:390px){
    .site-header--icon-nav .cw-header-brand img{width:102px}
    .site-header--icon-nav .cw-category-toggle,
    .site-header--icon-nav .cw-header-icon,
    .site-header--icon-nav .cw-header-language{width:34px;min-width:34px;height:34px;min-height:34px}
}

/* v1.99.9 — Navigation dynamique en base + drapeaux SVG Chrome-safe */
.site-header--icon-nav .cw-language-flag-img{
    display:block;
    width:24px;
    height:17px;
    object-fit:cover;
    border-radius:3px;
    box-shadow:0 0 0 1px color-mix(in srgb,var(--cw-line-strong) 78%,transparent),0 2px 5px rgba(0,0,0,.12);
}
.site-header--icon-nav .cw-language-menu .cw-language-flag-img{flex:0 0 auto}

.admin-navigation-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.admin-navigation-toolbar>div:first-child{max-width:760px}
.admin-navigation-toolbar h2{margin:.2rem 0 .35rem}
.admin-navigation-toolbar p{margin:0;color:var(--cw-muted)}
.admin-navigation-notice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;margin-bottom:16px;border:1px solid color-mix(in srgb,var(--cw-header-cyan) 22%,var(--cw-line));border-radius:15px;background:color-mix(in srgb,var(--cw-header-cyan) 3%,var(--cw-surface))}
.admin-navigation-notice p{margin:3px 0 0;color:var(--cw-muted);font-size:.78rem}
.admin-navigation-preview{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:14px;margin-bottom:18px;padding:10px 12px;border:1px solid var(--cw-line-strong);border-radius:16px;background:var(--cw-surface-solid);box-shadow:var(--cw-shadow-soft)}
.admin-navigation-preview-logo{font-family:var(--cw-display);font-size:.92rem;font-weight:800;white-space:nowrap}
.admin-navigation-preview-search{display:flex;align-items:center;min-height:39px;padding:0 13px;border:1px solid var(--cw-line);border-radius:11px;color:var(--cw-muted);font-size:.74rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.admin-navigation-preview-icons{display:flex;align-items:center;gap:5px}
.admin-navigation-preview-icons>span{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:10px;color:var(--cw-muted);background:var(--cw-surface)}
.admin-navigation-preview-icons svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.admin-nav-tree-wrap{border:1px solid var(--cw-line);border-radius:17px;background:var(--cw-surface);overflow:hidden}
.admin-nav-tree-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-bottom:1px solid var(--cw-line);background:color-mix(in srgb,var(--cw-surface-solid) 65%,transparent)}
.admin-nav-tree-head span{color:var(--cw-muted);font-size:.7rem}
.admin-nav-dropzone{display:grid;gap:7px;min-height:44px;padding:8px;border:1px dashed transparent;border-radius:12px;transition:border-color .15s ease,background .15s ease}
.admin-nav-dropzone.is-root{padding:12px}
.admin-nav-dropzone.is-child{margin:0 9px 9px 47px;padding:7px;background:color-mix(in srgb,var(--cw-bg-soft) 50%,transparent)}
.admin-nav-dropzone.is-drag-over{border-color:color-mix(in srgb,var(--cw-header-cyan) 58%,var(--cw-line));background:color-mix(in srgb,var(--cw-header-cyan) 5%,var(--cw-surface))}
.admin-nav-drop-placeholder{display:none;padding:9px;border:1px dashed var(--cw-line);border-radius:9px;color:var(--cw-muted);font-size:.66rem;text-align:center}
.admin-nav-dropzone:empty .admin-nav-drop-placeholder,.admin-nav-dropzone.is-drag-over>.admin-nav-drop-placeholder{display:block}
.admin-nav-node{border:1px solid var(--cw-line);border-radius:13px;background:var(--cw-surface-solid);box-shadow:0 3px 12px rgba(0,0,0,.035);overflow:hidden}
.admin-nav-node.is-section{background:color-mix(in srgb,var(--cw-surface-solid) 82%,var(--cw-bg-soft))}
.admin-nav-node.is-link{border-radius:10px;box-shadow:none}
.admin-nav-node.is-disabled{opacity:.56}
.admin-nav-node.is-dragging{opacity:.38;transform:scale(.995)}
.admin-nav-node-row{display:grid;grid-template-columns:24px 34px minmax(180px,1fr) auto auto;align-items:center;gap:9px;padding:8px 10px}
.admin-nav-node.is-link>.admin-nav-node-row{padding-block:6px}
.admin-nav-drag{width:24px;height:30px;padding:0;border:0;background:transparent;color:var(--cw-muted);font-weight:900;letter-spacing:-2px;cursor:grab}
.admin-nav-drag:active{cursor:grabbing}
.admin-nav-node-icon{width:32px;height:32px;display:grid;place-items:center;padding:7px;border:1px solid var(--cw-line);border-radius:9px;color:var(--cw-header-cyan);background:var(--cw-surface)}
.admin-nav-node-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.admin-nav-node-copy{min-width:0;display:grid;gap:2px}
.admin-nav-node-copy strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-nav-node-copy span{color:var(--cw-muted);font-size:.62rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-nav-node-copy code{font-size:.6rem}
.admin-nav-node-badges{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}
.admin-nav-node-badges span{padding:3px 6px;border:1px solid var(--cw-line);border-radius:999px;color:var(--cw-muted);font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.admin-nav-node-actions{display:flex;align-items:center;gap:5px}
.admin-nav-node-actions form{margin:0}
.admin-navigation-dialog{width:min(760px,calc(100vw - 24px));max-height:min(86vh,820px);padding:0;border:1px solid var(--cw-line-strong);border-radius:18px;background:var(--cw-surface-solid);color:var(--cw-text);box-shadow:0 28px 80px rgba(0,0,0,.32);overflow:auto}
.admin-navigation-dialog[open]{animation:cw-admin-navigation-modal-in .2s cubic-bezier(.2,.8,.2,1) both}
.admin-navigation-dialog[open]::backdrop{animation:cw-admin-navigation-backdrop-in .18s ease-out both}
@keyframes cw-admin-navigation-modal-in{from{opacity:0;transform:translateY(-14px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes cw-admin-navigation-backdrop-in{from{background:rgba(4,9,10,0);backdrop-filter:blur(0)}to{background:rgba(4,9,10,.56);backdrop-filter:blur(3px)}}
@media (prefers-reduced-motion:reduce){.admin-navigation-dialog[open],.admin-navigation-dialog[open]::backdrop{animation:none}}
.admin-navigation-dialog::backdrop{background:rgba(4,9,10,.56);backdrop-filter:blur(3px)}
.admin-navigation-dialog form{padding:18px}
.admin-navigation-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:13px;border-bottom:1px solid var(--cw-line)}
.admin-navigation-dialog-head h2{margin:.2rem 0 0}
.admin-navigation-dialog-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--cw-line);border-radius:10px;background:var(--cw-surface);color:var(--cw-text);font-size:1.25rem;cursor:pointer}
.admin-navigation-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 13px;padding:15px 0}
.admin-navigation-form-grid label{display:grid;gap:5px}
.admin-navigation-form-grid label>span{color:var(--cw-muted);font-size:.66rem;font-weight:760}
.admin-navigation-form-grid input,.admin-navigation-form-grid select{width:100%}
.admin-navigation-checks{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--cw-line)}
.admin-navigation-checks label{display:flex;align-items:center;gap:6px;color:var(--cw-muted);font-size:.7rem}
.admin-navigation-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:14px;border-top:1px solid var(--cw-line)}
[data-nav-link-field][hidden],[data-nav-category-field][hidden]{display:none!important}

@media(max-width:900px){
    .admin-navigation-toolbar{align-items:stretch;flex-direction:column}
    .admin-navigation-preview{grid-template-columns:1fr}
    .admin-navigation-preview-icons{overflow-x:auto;padding-bottom:3px}
    .admin-nav-node-row{grid-template-columns:22px 32px minmax(120px,1fr) auto}
    .admin-nav-node-badges{display:none}
    .admin-nav-node-actions .button{padding-inline:8px}
    .admin-nav-dropzone.is-child{margin-left:25px}
}
@media(max-width:640px){
    .admin-navigation-notice{grid-template-columns:auto 1fr}.admin-navigation-notice form{grid-column:1/-1}
    .admin-navigation-form-grid{grid-template-columns:1fr}
    .admin-nav-node-row{grid-template-columns:20px 30px minmax(0,1fr);gap:6px}
    .admin-nav-node-actions{grid-column:2/-1;justify-content:flex-end}
    .admin-nav-dropzone.is-child{margin-left:12px}
}


/* v1.99.9.2 — Logo agrandi + header sticky permanent */
.site-shell{
    overflow-x:clip;
    overflow-y:visible;
}
.site-header--icon-nav{
    position:sticky;
    top:0;
    z-index:1000;
    isolation:isolate;
    box-shadow:0 8px 28px rgba(0,0,0,.07);
}
.site-header--icon-nav .cw-icon-header-inner{
    min-height:72px;
}
.site-header--icon-nav .cw-header-brand{
    height:auto;
    min-height:60px;
    padding-inline:2px 10px;
}
.site-header--icon-nav .cw-header-brand img{
    width:188px;
    max-height:none;
    height:auto;
}

@media(max-width:1450px) and (min-width:1271px){
    .site-header--icon-nav .cw-icon-header-inner{min-height:68px}
    .site-header--icon-nav .cw-header-brand{min-height:58px}
    .site-header--icon-nav .cw-header-brand img{width:172px;max-height:none}
}

@media(max-width:1270px){
    .site-header--icon-nav .cw-icon-header-inner{min-height:0}
    .site-header--icon-nav .cw-header-brand{min-height:54px}
    .site-header--icon-nav .cw-header-brand img{width:158px;max-height:none}
}

@media(max-width:640px){
    .site-header--icon-nav .cw-header-brand{min-height:48px}
    .site-header--icon-nav .cw-header-brand img{width:140px;max-height:none}
}

@media(max-width:390px){
    .site-header--icon-nav .cw-header-brand{min-height:43px}
    .site-header--icon-nav .cw-header-brand img{width:122px;max-height:none}
}

/* v1.99.9.3 — Edition navigation en modale fiable */

/* v1.99.9.4 — Centrage explicite du <dialog> Admin > Navigation.
   Ne dépend plus des marges par défaut du navigateur et reste centré
   même lorsqu'une animation transform est active. */
.admin-navigation-dialog{
    position:fixed;
    top:50%;
    left:50%;
    right:auto;
    bottom:auto;
    margin:0;
    transform:translate(-50%,-50%);
}
.admin-navigation-dialog[open]{
    animation:cw-admin-navigation-modal-centered-in .2s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes cw-admin-navigation-modal-centered-in{
    from{opacity:0;transform:translate(-50%,calc(-50% - 14px)) scale(.975)}
    to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@media (prefers-reduced-motion:reduce){
    .admin-navigation-dialog[open]{animation:none}
}

/* v1.99.9.5 — Selecteurs natifs lisibles en thème sombre (Chrome / Windows).
   Le menu déroulant natif ne doit jamais hériter d'un texte clair sur un fond système blanc. */
html[data-theme="dark"] select{
    color-scheme:dark;
}
html[data-theme="dark"] select option,
html[data-theme="dark"] select optgroup{
    background-color:var(--cw-surface-solid);
    color:var(--cw-text);
}
html[data-theme="dark"] select option:disabled{
    color:var(--cw-muted);
}
.admin-navigation-form-grid input,
.admin-navigation-form-grid select{
    min-height:42px;
    padding:9px 11px;
    border:1px solid var(--cw-line);
    border-radius:11px;
    background:var(--cw-bg);
    color:var(--cw-text);
    font:inherit;
}

/* v1.99.9.6 — Header plus vivant + suggestions de recherche mobile vers le bas */

/* Icônes principales : légèrement plus grandes et colorées sans changer les SVG. */
.site-header--icon-nav .cw-category-icon,
.site-header--icon-nav .cw-header-icon > svg {
    width: 21px;
    height: 21px;
}

.site-header--icon-nav .cw-category-toggle {
    color: var(--cw-nav-accent, var(--cw-header-cyan));
    border-color: color-mix(in srgb, var(--cw-nav-accent, var(--cw-header-cyan)) 22%, var(--cw-line));
    background: color-mix(in srgb, var(--cw-nav-accent, var(--cw-header-cyan)) 5%, var(--cw-surface-solid));
}

.site-header--icon-nav .cw-category-toggle:hover,
.site-header--icon-nav .cw-category-toggle:focus-visible,
.site-header--icon-nav .cw-category.is-open > .cw-category-toggle {
    color: var(--cw-nav-accent, var(--cw-header-cyan));
    border-color: color-mix(in srgb, var(--cw-nav-accent, var(--cw-header-cyan)) 48%, var(--cw-line-strong));
    background: color-mix(in srgb, var(--cw-nav-accent, var(--cw-header-cyan)) 10%, var(--cw-surface));
    box-shadow:
        0 7px 18px rgba(0,0,0,.08),
        0 0 0 1px color-mix(in srgb, var(--cw-nav-accent, var(--cw-header-cyan)) 12%, transparent);
}

/* Palette cyclique : elle continue à fonctionner si des catégories sont ajoutées depuis l'admin. */
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n + 1) { --cw-nav-accent: #42bff5; }
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n + 2) { --cw-nav-accent: #f29a49; }
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n + 3) { --cw-nav-accent: #65c47a; }
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n + 4) { --cw-nav-accent: #a98af5; }
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n + 5) { --cw-nav-accent: #e66f8c; }
.site-header--icon-nav .cw-category-nav .cw-category:nth-child(6n)     { --cw-nav-accent: #e4bd4c; }

/* Utilitaires à droite : un peu de couleur, mais plus discrète que les catégories. */
.site-header--icon-nav .cw-notification-link { color: #e9a33f; }
.site-header--icon-nav .cw-theme-direct      { color: #77aef7; }
.site-header--icon-nav .cw-mobile-nav-toggle{ color: #55c0b0; }
.site-header--icon-nav .cw-header-icon:not(.cw-notification-link):not(.cw-theme-direct):not(.cw-mobile-nav-toggle) {
    color: #77c58a;
}

/* Mobile/tablette : le panneau de suggestions appartient au champ et s'ouvre dessous.
   Ces règles neutralisent les anciens position:fixed + bottom:12px qui le faisaient remonter. */
@media (max-width: 1270px) {
    .site-header--icon-nav .cw-header-search {
        position: relative;
        z-index: 1100;
    }

    .site-header--icon-nav .cw-header-search .search-suggest-panel {
        position: absolute;
        top: calc(100% + 8px);
        right: 0;
        bottom: auto;
        left: 0;
        width: auto;
        max-height: min(60vh, 520px);
        margin-top: 0;
        overflow: hidden;
    }

    .site-header--icon-nav .cw-header-search .search-suggest-list {
        max-height: min(52vh, 450px);
        overflow-y: auto;
        overscroll-behavior: contain;
    }
}

@media (max-width: 620px) {
    .site-header--icon-nav .cw-header-search .search-suggest-panel {
        top: calc(100% + 7px);
        right: 0;
        bottom: auto;
        left: 0;
        max-height: min(58vh, 470px);
        border-radius: 14px;
    }

    .site-header--icon-nav .cw-header-search .search-suggest-list {
        max-height: min(49vh, 405px);
    }
}

/* v1.99.9.7 — Le tiroir mobile doit toujours passer devant la recherche.
   v1.99.9.6 avait relevé le z-index de la recherche à 1100 pour ses suggestions ;
   le drawer mobile était encore à 120, ce qui le faisait passer derrière le champ. */
@media (max-width: 1270px) {
    .site-header--icon-nav .cw-mobile-navigation {
        z-index: 1500;
    }
}

/* v1.99.9.8 — Header sans "bulle" + logo encore plus present */
.site-header--icon-nav .cw-icon-header-inner{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

/* Le logo gagne environ 10 % sans modifier la hauteur generale du header. */
.site-header--icon-nav .cw-header-brand img{
    width:208px;
    max-height:none;
    height:auto;
}

@media(max-width:1450px) and (min-width:1271px){
    .site-header--icon-nav .cw-header-brand img{width:188px;max-height:none}
}

@media(max-width:1270px){
    .site-header--icon-nav .cw-header-brand img{width:176px;max-height:none}
}

@media(max-width:640px){
    .site-header--icon-nav .cw-header-brand img{width:154px;max-height:none}
}

@media(max-width:390px){
    .site-header--icon-nav .cw-header-brand img{width:134px;max-height:none}
}

/* v1.99.9.9 — Sous-menus plus colores, tout en gardant une lecture sobre. */

/* Le menu herite de la couleur de sa categorie : bordure, liseré et entete. */
.site-header--icon-nav .cw-category-menu{
    border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 28%,var(--cw-line-strong));
    background:
        linear-gradient(180deg,
            color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 7%,var(--cw-surface-solid)) 0,
            color-mix(in srgb,var(--cw-surface-solid) 98%,transparent) 86px),
        var(--cw-surface-solid);
    box-shadow:
        0 20px 55px rgba(0,0,0,.2),
        0 0 0 1px color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 8%,transparent);
}

.site-header--icon-nav .cw-category-menu-head{
    border-bottom-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 24%,var(--cw-line));
}

.site-header--icon-nav .cw-category-menu-icon{
    width:31px;
    height:31px;
    color:var(--cw-nav-accent,var(--cw-header-cyan));
    border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 48%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 13%,var(--cw-surface-solid));
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 5%,transparent);
}

.site-header--icon-nav .cw-category-menu-head strong{
    color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 78%,var(--cw-text));
}

.site-header--icon-nav .cw-category-section-title{
    color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 72%,var(--cw-muted));
}

/* Chaque entree reçoit une petite couleur differente pour casser l'effet monochrome. */
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n + 1){--cw-subitem-accent:#42bff5}
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n + 2){--cw-subitem-accent:#f29a49}
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n + 3){--cw-subitem-accent:#65c47a}
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n + 4){--cw-subitem-accent:#a98af5}
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n + 5){--cw-subitem-accent:#e66f8c}
.site-header--icon-nav .cw-category-menu-list > :nth-child(6n){--cw-subitem-accent:#e4bd4c}

.site-header--icon-nav .cw-category-item-icon{
    width:31px;
    height:31px;
    color:var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan)));
    border-color:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 32%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 8%,var(--cw-surface-solid));
}

.site-header--icon-nav .cw-category-link:hover,
.site-header--icon-nav .cw-category-link:focus-visible{
    color:var(--cw-text);
    background:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 10%,var(--cw-surface));
}

.site-header--icon-nav .cw-category-link:hover .cw-category-item-icon,
.site-header--icon-nav .cw-category-link:focus-visible .cw-category-item-icon{
    color:var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan)));
    border-color:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 58%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 15%,var(--cw-surface));
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-subitem-accent,var(--cw-nav-accent,var(--cw-header-cyan))) 6%,transparent);
}

.site-header--icon-nav .cw-category-link.is-active{
    background:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-header-orange)) 13%,var(--cw-surface));
}
.site-header--icon-nav .cw-category-link.is-active .cw-category-item-icon{
    color:var(--cw-subitem-accent,var(--cw-header-orange));
    border-color:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-header-orange)) 58%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-subitem-accent,var(--cw-header-orange)) 14%,var(--cw-surface-solid));
}

/* Mobile : la couleur de chaque grande categorie se propage dans son sous-menu. */
@media(max-width:1270px){
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n + 1){--cw-nav-accent:#42bff5}
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n + 2){--cw-nav-accent:#f29a49}
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n + 3){--cw-nav-accent:#65c47a}
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n + 4){--cw-nav-accent:#a98af5}
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n + 5){--cw-nav-accent:#e66f8c}
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category:nth-child(6n){--cw-nav-accent:#e4bd4c}

    .site-header--icon-nav .cw-mobile-category{
        border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 20%,var(--cw-line));
        background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 4%,var(--cw-surface));
    }
    .site-header--icon-nav .cw-mobile-category.is-active,
    .site-header--icon-nav .cw-mobile-category:has(.cw-mobile-category-toggle[aria-expanded="true"]){
        border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 42%,var(--cw-line-strong));
        background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 7%,var(--cw-surface));
    }
    .site-header--icon-nav .cw-mobile-category-title>span{
        color:var(--cw-nav-accent,var(--cw-header-cyan));
        border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 42%,var(--cw-line));
        background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 11%,var(--cw-surface-solid));
    }
    .site-header--icon-nav .cw-mobile-category-toggle>svg,
    .site-header--icon-nav .cw-mobile-section-title{
        color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 72%,var(--cw-muted));
    }
    .site-header--icon-nav .cw-mobile-category-list{
        border-top-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 20%,var(--cw-line));
    }
    .site-header--icon-nav .cw-mobile-nav-row>span,
    .site-header--icon-nav .cw-mobile-nav-row>button>span{
        color:var(--cw-nav-accent,var(--cw-header-cyan));
        border-color:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 30%,var(--cw-line));
        background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 8%,var(--cw-surface-solid));
    }
    .site-header--icon-nav .cw-mobile-nav-row:hover,
    .site-header--icon-nav .cw-mobile-nav-row:focus-visible,
    .site-header--icon-nav .cw-mobile-nav-row.is-active{
        background:color-mix(in srgb,var(--cw-nav-accent,var(--cw-header-cyan)) 10%,var(--cw-surface));
    }
}

/* v1.99.9.10 — Slider clair/sombre + logo encore plus grand */

/* Le bouton de thème devient un vrai interrupteur visuel, compact et explicite. */
.site-header--icon-nav .cw-theme-slider{
    width:66px;
    min-width:66px;
    height:39px;
    min-height:39px;
    padding:0;
    border:0;
    border-radius:999px;
    background:transparent;
    color:inherit;
    box-shadow:none;
    overflow:visible;
}
.site-header--icon-nav .cw-theme-slider:hover,
.site-header--icon-nav .cw-theme-slider:focus-visible{
    border:0;
    background:transparent;
    box-shadow:none;
    transform:none;
}
.site-header--icon-nav .cw-theme-slider-track{
    position:relative;
    display:block;
    width:62px;
    height:32px;
    border:1px solid color-mix(in srgb,#e3a143 42%,var(--cw-line-strong));
    border-radius:999px;
    background:linear-gradient(135deg,
        color-mix(in srgb,#ffd783 30%,var(--cw-surface-solid)),
        color-mix(in srgb,#f29a49 12%,var(--cw-surface)));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 4px 12px rgba(0,0,0,.08);
    transition:background .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.site-header--icon-nav .cw-theme-slider-thumb{
    position:absolute;
    top:3px;
    left:3px;
    z-index:2;
    width:24px;
    height:24px;
    border-radius:50%;
    background:#fff8e9;
    box-shadow:0 3px 9px rgba(0,0,0,.22),inset 0 0 0 1px rgba(146,96,32,.14);
    transition:transform .24s cubic-bezier(.2,.8,.2,1),background .2s ease,box-shadow .2s ease;
}
.site-header--icon-nav .cw-theme-slider-icon{
    position:absolute;
    top:50%;
    z-index:3;
    display:grid;
    place-items:center;
    width:20px;
    height:20px;
    transform:translateY(-50%);
    pointer-events:none;
    transition:color .2s ease,opacity .2s ease,transform .2s ease;
}
.site-header--icon-nav .cw-theme-slider-icon svg{
    width:15px;
    height:15px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.site-header--icon-nav .cw-theme-slider-sun{
    left:5px;
    color:#cc7b14;
}
.site-header--icon-nav .cw-theme-slider-moon{
    right:5px;
    color:#74839b;
    opacity:.7;
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-track{
    border-color:color-mix(in srgb,#70a9f7 50%,var(--cw-line-strong));
    background:linear-gradient(135deg,
        color-mix(in srgb,#1e3f67 64%,var(--cw-surface-solid)),
        color-mix(in srgb,#6b88d8 18%,var(--cw-surface)));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 12px rgba(0,0,0,.16);
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{
    transform:translateX(30px);
    background:#dfe9ff;
    box-shadow:0 3px 10px rgba(0,0,0,.32),inset 0 0 0 1px rgba(65,96,152,.25);
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-sun{
    color:#b58c58;
    opacity:.62;
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-moon{
    color:#8db8ff;
    opacity:1;
}
.site-header--icon-nav .cw-theme-slider:focus-visible .cw-theme-slider-track{
    outline:3px solid color-mix(in srgb,var(--cw-header-cyan) 28%,transparent);
    outline-offset:2px;
}

/* Le logo prend encore plus de presence dans le header. */
.site-header--icon-nav .cw-header-brand img{
    width:232px;
    max-height:none;
    height:auto;
}
@media(max-width:1450px) and (min-width:1271px){
    .site-header--icon-nav .cw-header-brand img{width:210px;max-height:none}
}
@media(max-width:1270px){
    .site-header--icon-nav .cw-header-brand img{width:190px;max-height:none}
}
@media(max-width:640px){
    .site-header--icon-nav .cw-header-brand img{width:170px;max-height:none}
    .site-header--icon-nav .cw-theme-slider{width:62px;min-width:62px;height:36px;min-height:36px}
    .site-header--icon-nav .cw-theme-slider-track{width:58px;height:30px}
    .site-header--icon-nav .cw-theme-slider-thumb{width:22px;height:22px}
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{transform:translateX(28px)}
    .site-header--icon-nav .cw-theme-slider-icon{width:18px;height:18px}
    .site-header--icon-nav .cw-theme-slider-icon svg{width:14px;height:14px}
}
@media(max-width:390px){
    .site-header--icon-nav .cw-header-brand img{width:146px;max-height:none}
    .site-header--icon-nav .cw-theme-slider{width:58px;min-width:58px;height:34px;min-height:34px}
    .site-header--icon-nav .cw-theme-slider-track{width:54px;height:28px}
    .site-header--icon-nav .cw-theme-slider-thumb{top:3px;left:3px;width:20px;height:20px}
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{transform:translateX(26px)}
}

/* v1.99.9.11 — Navigation "Park Wayfinding Premium"
   Moins d'icônes, une seule palette de marque et une hiérarchie plus éditoriale.
   L'objectif est de rappeler la signalétique d'un grand parc : lisible, spectaculaire,
   mais jamais arc-en-ciel ni "dashboard". */

.site-header--icon-nav{
    --cw-wayfinding-cyan:#42c7d8;
    --cw-wayfinding-gold:#e7b85d;
    --cw-wayfinding-gold-soft:#f3ce82;
    --cw-wayfinding-danger:#e66d61;
}

/* Un filet lumineux très discret donne une signature "entrée de parc" au header. */
.site-header--icon-nav::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:1px;
    pointer-events:none;
    background:linear-gradient(90deg,
        transparent 0%,
        color-mix(in srgb,var(--cw-wayfinding-gold) 42%,transparent) 20%,
        color-mix(in srgb,var(--cw-wayfinding-cyan) 52%,transparent) 50%,
        color-mix(in srgb,var(--cw-wayfinding-gold) 42%,transparent) 80%,
        transparent 100%);
    opacity:.72;
}

/* On neutralise la palette arc-en-ciel des versions précédentes. */
.site-header--icon-nav .cw-category-nav .cw-category{
    --cw-nav-accent:var(--cw-wayfinding-cyan)!important;
}
.site-header--icon-nav .cw-category-menu-list>*{
    --cw-subitem-accent:var(--cw-wayfinding-cyan)!important;
}

/* Grandes rubriques : du texte, pas une rangée de pictogrammes. */
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle{
    position:relative;
    width:auto;
    min-width:0;
    height:40px;
    min-height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 11px;
    border:0;
    border-radius:8px;
    background:transparent;
    box-shadow:none;
    color:color-mix(in srgb,var(--cw-text) 82%,var(--cw-muted));
    transform:none;
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle .cw-category-icon{
    display:none;
}
.site-header--icon-nav .cw-category-label{
    display:none;
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle .cw-category-label{
    position:relative;
    display:inline-flex;
    align-items:center;
    height:100%;
    font-size:.72rem;
    font-weight:790;
    letter-spacing:.045em;
    white-space:nowrap;
    transition:color .18s ease,transform .18s ease;
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle .cw-category-label::after{
    content:"";
    position:absolute;
    left:5%;
    right:5%;
    bottom:3px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--cw-wayfinding-gold),var(--cw-wayfinding-cyan));
    box-shadow:0 0 12px color-mix(in srgb,var(--cw-wayfinding-cyan) 24%,transparent);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .2s cubic-bezier(.2,.8,.2,1);
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:hover,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:focus-visible,
.site-header--icon-nav .cw-category.is-primary.is-open>.cw-category-toggle,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle.is-active{
    border:0;
    background:linear-gradient(180deg,
        transparent,
        color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,transparent));
    color:var(--cw-text);
    box-shadow:none;
    transform:none;
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:hover .cw-category-label,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:focus-visible .cw-category-label,
.site-header--icon-nav .cw-category.is-primary.is-open>.cw-category-toggle .cw-category-label,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle.is-active .cw-category-label{
    transform:translateY(-1px);
}
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:hover .cw-category-label::after,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle:focus-visible .cw-category-label::after,
.site-header--icon-nav .cw-category.is-primary.is-open>.cw-category-toggle .cw-category-label::after,
.site-header--icon-nav .cw-category.is-primary>.cw-category-toggle.is-active .cw-category-label::after{
    transform:scaleX(1);
}

/* Mon espace / Admin : deux contrôles compacts maximum, avec la même palette. */
.site-header--icon-nav .cw-category.is-compact>.cw-category-toggle{
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 58%,var(--cw-muted));
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 17%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-surface-solid) 82%,transparent);
    box-shadow:none;
}
.site-header--icon-nav .cw-category.is-compact>.cw-category-toggle:hover,
.site-header--icon-nav .cw-category.is-compact>.cw-category-toggle:focus-visible,
.site-header--icon-nav .cw-category.is-compact.is-open>.cw-category-toggle,
.site-header--icon-nav .cw-category.is-compact>.cw-category-toggle.is-active{
    color:var(--cw-wayfinding-gold-soft);
    border-color:color-mix(in srgb,var(--cw-wayfinding-gold) 38%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-wayfinding-gold) 6%,var(--cw-surface));
    box-shadow:0 7px 18px rgba(0,0,0,.08);
    transform:translateY(-1px);
}

/* Les utilitaires n'utilisent plus chacun leur propre couleur. */
.site-header--icon-nav .cw-notification-link,
.site-header--icon-nav .cw-header-icon:not(.cw-theme-slider):not(.cw-mobile-nav-toggle),
.site-header--icon-nav .cw-mobile-nav-toggle{
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 58%,var(--cw-muted));
}
.site-header--icon-nav .cw-notification-link:hover,
.site-header--icon-nav .cw-header-icon:not(.cw-theme-slider):not(.cw-mobile-nav-toggle):hover,
.site-header--icon-nav .cw-mobile-nav-toggle:hover{
    color:var(--cw-wayfinding-gold-soft);
}

/* Dropdown : une seule scène visuelle, type panneau de wayfinding premium. */
.site-header--icon-nav .cw-category-menu{
    overflow-x:hidden;
    padding:10px 10px 11px;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 18%,var(--cw-line-strong));
    border-radius:14px;
    background:
        radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,transparent),transparent 34%),
        linear-gradient(180deg,color-mix(in srgb,var(--cw-surface-solid) 99%,transparent),var(--cw-surface-solid));
    box-shadow:0 26px 70px rgba(0,0,0,.23),0 1px 0 rgba(255,255,255,.035) inset;
}
.site-header--icon-nav .cw-category-menu::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:2px;
    background:linear-gradient(90deg,
        var(--cw-wayfinding-gold),
        var(--cw-wayfinding-cyan) 58%,
        transparent 100%);
    opacity:.9;
}
.site-header--icon-nav .cw-category.is-open>.cw-category-menu::after{
    content:"";
    position:absolute;
    top:0;
    left:-38%;
    width:34%;
    height:2px;
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
    animation:cwWayfindingSweep .55s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes cwWayfindingSweep{
    to{left:104%}
}
.site-header--icon-nav .cw-category-menu-head{
    gap:10px;
    margin-bottom:7px;
    padding:8px 8px 11px;
    border-bottom:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 15%,var(--cw-line));
}
.site-header--icon-nav .cw-category-menu-icon{
    width:28px;
    height:28px;
    padding:5px;
    border:0;
    border-radius:50%;
    color:var(--cw-wayfinding-gold-soft);
    background:color-mix(in srgb,var(--cw-wayfinding-gold) 9%,var(--cw-surface));
    box-shadow:0 0 0 1px color-mix(in srgb,var(--cw-wayfinding-gold) 22%,var(--cw-line));
}
.site-header--icon-nav .cw-category-menu-head strong{
    color:var(--cw-text);
    font-size:.78rem;
    font-weight:820;
    letter-spacing:.055em;
}
.site-header--icon-nav .cw-category-section-title{
    padding:5px 9px 4px;
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 45%,var(--cw-muted));
    font-size:.55rem;
    font-weight:850;
    letter-spacing:.15em;
}

/* Le gros changement : plus d'icône sur chaque ligne. Le texte devient la hiérarchie. */
.site-header--icon-nav .cw-category-item-icon{
    display:none!important;
}
.site-header--icon-nav .cw-category-link{
    position:relative;
    min-height:38px;
    gap:0;
    padding:7px 11px 7px 14px;
    border-radius:8px;
    color:color-mix(in srgb,var(--cw-text) 86%,var(--cw-muted));
    font-size:.73rem;
    font-weight:700;
    letter-spacing:.005em;
    transform:none;
}
.site-header--icon-nav .cw-category-link::before{
    content:"";
    position:absolute;
    left:4px;
    top:50%;
    width:2px;
    height:0;
    border-radius:999px;
    background:var(--cw-wayfinding-cyan);
    transform:translateY(-50%);
    transition:height .16s ease,background .16s ease,box-shadow .16s ease;
}
.site-header--icon-nav .cw-category-link:hover,
.site-header--icon-nav .cw-category-link:focus-visible{
    color:var(--cw-text);
    background:color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface));
    transform:translateX(2px);
}
.site-header--icon-nav .cw-category-link:hover::before,
.site-header--icon-nav .cw-category-link:focus-visible::before{
    height:17px;
    box-shadow:0 0 10px color-mix(in srgb,var(--cw-wayfinding-cyan) 32%,transparent);
}
.site-header--icon-nav .cw-category-link.is-active{
    color:var(--cw-text);
    background:linear-gradient(90deg,
        color-mix(in srgb,var(--cw-wayfinding-gold) 9%,var(--cw-surface)),
        color-mix(in srgb,var(--cw-wayfinding-cyan) 3%,var(--cw-surface)) 68%,
        transparent);
}
.site-header--icon-nav .cw-category-link.is-active::before{
    height:21px;
    background:var(--cw-wayfinding-gold);
    box-shadow:0 0 10px color-mix(in srgb,var(--cw-wayfinding-gold) 28%,transparent);
}
.site-header--icon-nav .cw-category-action{
    color:color-mix(in srgb,var(--cw-wayfinding-danger) 70%,var(--cw-text));
}

/* A largeur intermédiaire, on protège la recherche sans transformer le menu en icônes. */
@media(max-width:1540px) and (min-width:1271px){
    .site-header--icon-nav .cw-icon-header-inner{gap:9px}
    .site-header--icon-nav .cw-header-search{max-width:500px}
    .site-header--icon-nav .cw-category-nav{gap:1px}
    .site-header--icon-nav .cw-category.is-primary>.cw-category-toggle{padding-inline:8px}
    .site-header--icon-nav .cw-category.is-primary>.cw-category-toggle .cw-category-label{font-size:.68rem;letter-spacing:.025em}
}

/* Mobile : même philosophie, mais en panneau de signalétique plutôt qu'en pile de cartes. */
@media(max-width:1270px){
    .site-header--icon-nav .cw-mobile-nav-categories .cw-mobile-category{
        --cw-nav-accent:var(--cw-wayfinding-cyan)!important;
        position:relative;
        border:0;
        border-bottom:1px solid color-mix(in srgb,var(--cw-line) 82%,transparent);
        border-radius:0;
        background:transparent;
    }
    .site-header--icon-nav .cw-mobile-category.is-active,
    .site-header--icon-nav .cw-mobile-category:has(.cw-mobile-category-toggle[aria-expanded="true"]){
        border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 22%,var(--cw-line));
        background:linear-gradient(90deg,color-mix(in srgb,var(--cw-wayfinding-cyan) 4%,transparent),transparent 68%);
    }
    .site-header--icon-nav .cw-mobile-category::before{
        content:"";
        position:absolute;
        left:0;
        top:13px;
        width:2px;
        height:0;
        border-radius:999px;
        background:var(--cw-wayfinding-gold);
        transition:height .18s ease;
    }
    .site-header--icon-nav .cw-mobile-category.is-active::before,
    .site-header--icon-nav .cw-mobile-category:has(.cw-mobile-category-toggle[aria-expanded="true"])::before{
        height:26px;
    }
    .site-header--icon-nav .cw-mobile-category-toggle{
        min-height:53px;
        padding:8px 7px 8px 12px;
    }
    .site-header--icon-nav .cw-mobile-category-title{gap:0}
    .site-header--icon-nav .cw-mobile-category-title>span{
        display:none;
    }
    .site-header--icon-nav .cw-mobile-category-title strong{
        color:var(--cw-text);
        font-size:.77rem;
        font-weight:790;
        letter-spacing:.025em;
    }
    .site-header--icon-nav .cw-mobile-category-toggle>svg{
        color:color-mix(in srgb,var(--cw-wayfinding-cyan) 46%,var(--cw-muted));
    }
    .site-header--icon-nav .cw-mobile-category-list{
        gap:1px;
        padding:0 6px 10px 12px;
        border-top:0;
    }
    .site-header--icon-nav .cw-mobile-section-title{
        padding:8px 8px 5px;
        color:color-mix(in srgb,var(--cw-wayfinding-cyan) 42%,var(--cw-muted));
        font-size:.54rem;
        letter-spacing:.14em;
    }
    .site-header--icon-nav .cw-mobile-nav-row{
        position:relative;
        min-height:39px;
        gap:0;
        padding:6px 8px 6px 14px;
        border-radius:7px;
    }
    .site-header--icon-nav .cw-mobile-nav-row>span,
    .site-header--icon-nav .cw-mobile-nav-row>button>span,
    .site-header--icon-nav .cw-mobile-nav-form>button>span{
        display:none!important;
    }
    .site-header--icon-nav .cw-mobile-nav-row:not(.cw-mobile-nav-form)::before,
    .site-header--icon-nav .cw-mobile-nav-form>button::before{
        content:"";
        position:absolute;
        left:5px;
        top:50%;
        width:2px;
        height:0;
        border-radius:999px;
        background:var(--cw-wayfinding-cyan);
        transform:translateY(-50%);
        transition:height .16s ease;
    }
    .site-header--icon-nav .cw-mobile-nav-row:hover,
    .site-header--icon-nav .cw-mobile-nav-row:focus-visible,
    .site-header--icon-nav .cw-mobile-nav-row.is-active{
        background:color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface));
    }
    .site-header--icon-nav .cw-mobile-nav-row:not(.cw-mobile-nav-form):hover::before,
    .site-header--icon-nav .cw-mobile-nav-row:not(.cw-mobile-nav-form):focus-visible::before,
    .site-header--icon-nav .cw-mobile-nav-form>button:hover::before,
    .site-header--icon-nav .cw-mobile-nav-form>button:focus-visible::before{
        height:15px;
    }
    .site-header--icon-nav .cw-mobile-nav-row.is-active::before{
        height:19px;
        background:var(--cw-wayfinding-gold);
    }
    .site-header--icon-nav .cw-mobile-nav-row strong,
    .site-header--icon-nav .cw-mobile-nav-form>button strong{
        font-size:.72rem;
        font-weight:690;
    }
    .site-header--icon-nav .cw-mobile-nav-form>button{
        position:relative;
        gap:0;
        padding-left:14px;
    }
}

@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-category.is-open>.cw-category-menu::after{animation:none}
}

/* v1.99.9.12 — Recherche desktop compacte et déployable
   Au repos : seule la loupe reste dans les utilitaires du header.
   A l'ouverture : la navigation principale s'efface et le champ de recherche
   se déploie vers la gauche, sans jamais recouvrir les libellés traduits. */
@media(min-width:1271px){
    .site-header--icon-nav .cw-icon-header-inner{
        grid-template-columns:auto minmax(0,1fr) auto;
        column-gap:12px;
    }

    .site-header--icon-nav .cw-header-brand{
        grid-column:1;
        grid-row:1;
    }

    .site-header--icon-nav .cw-header-search{
        grid-column:2;
        grid-row:1;
        justify-self:end;
        width:100%;
        max-width:0;
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transform:translateX(18px) scaleX(.96);
        transform-origin:right center;
        transition:
            max-width .34s cubic-bezier(.2,.8,.2,1),
            opacity .16s ease,
            transform .34s cubic-bezier(.2,.8,.2,1),
            visibility 0s linear .34s;
    }

    .site-header--icon-nav.is-search-open .cw-header-search{
        max-width:min(720px,100%);
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:none;
        transition:
            max-width .38s cubic-bezier(.16,.84,.24,1),
            opacity .2s ease .04s,
            transform .38s cubic-bezier(.16,.84,.24,1),
            visibility 0s linear 0s;
    }

    .site-header--icon-nav .cw-header-search>.search-bar{
        position:relative;
        overflow:hidden;
        min-width:260px;
        background:
            linear-gradient(90deg,
                color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface-solid)),
                color-mix(in srgb,var(--cw-surface-solid) 97%,transparent));
    }

    .site-header--icon-nav.is-search-open .cw-header-search>.search-bar{
        border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 38%,var(--cw-line-strong));
        box-shadow:
            0 0 0 1px color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,transparent),
            0 10px 30px rgba(0,0,0,.08),
            inset 0 1px 0 rgba(255,255,255,.035);
    }

    .site-header--icon-nav .cw-header-search>.search-bar::after{
        content:"";
        position:absolute;
        top:0;
        bottom:0;
        left:-34%;
        width:22%;
        pointer-events:none;
        background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
        transform:skewX(-18deg);
        opacity:0;
    }

    .site-header--icon-nav.is-search-open .cw-header-search>.search-bar::after{
        animation:cwSearchRevealSweep .62s .08s cubic-bezier(.2,.7,.2,1) both;
    }

    @keyframes cwSearchRevealSweep{
        0%{left:-34%;opacity:0}
        22%{opacity:1}
        100%{left:112%;opacity:0}
    }

    .site-header--icon-nav .cw-header-actions{
        grid-column:3;
        grid-row:1;
    }

    .site-header--icon-nav .cw-category-nav{
        max-width:1200px;
        opacity:1;
        transform:translateX(0);
        overflow:visible;
        transition:
            max-width .3s cubic-bezier(.2,.8,.2,1),
            opacity .14s ease,
            transform .3s cubic-bezier(.2,.8,.2,1);
    }

    .site-header--icon-nav.is-search-open .cw-category-nav{
        max-width:0;
        opacity:0;
        overflow:hidden;
        pointer-events:none;
        transform:translateX(14px);
    }

    .site-header--icon-nav .cw-search-toggle{
        display:grid;
        overflow:hidden;
        flex:0 0 auto;
        color:color-mix(in srgb,var(--cw-wayfinding-cyan) 66%,var(--cw-muted));
    }

    .site-header--icon-nav .cw-search-toggle>svg{
        position:absolute;
        inset:50% auto auto 50%;
        width:19px;
        height:19px;
        transform:translate(-50%,-50%);
        transition:opacity .18s ease,transform .24s cubic-bezier(.2,.8,.2,1);
    }

    .site-header--icon-nav .cw-search-toggle .cw-search-icon-close{
        opacity:0;
        transform:translate(-50%,-50%) rotate(-45deg) scale(.68);
    }

    .site-header--icon-nav .cw-search-toggle[aria-expanded="true"]{
        color:var(--cw-wayfinding-gold-soft);
        border-color:color-mix(in srgb,var(--cw-wayfinding-gold) 38%,var(--cw-line-strong));
        background:color-mix(in srgb,var(--cw-wayfinding-gold) 6%,var(--cw-surface));
        box-shadow:0 7px 18px rgba(0,0,0,.08);
    }

    .site-header--icon-nav .cw-search-toggle[aria-expanded="true"] .cw-search-icon-magnifier{
        opacity:0;
        transform:translate(-50%,-50%) rotate(45deg) scale(.7);
    }

    .site-header--icon-nav .cw-search-toggle[aria-expanded="true"] .cw-search-icon-close{
        opacity:1;
        transform:translate(-50%,-50%) rotate(0) scale(1);
    }
}

/* Sur téléphone/tablette, on conserve le champ pleine largeur déjà optimisé :
   la loupe déployable est réservée au header desktop où le conflit de place existe. */
@media(max-width:1270px){
    .site-header--icon-nav .cw-search-toggle{display:none!important}
}

@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-header-search,
    .site-header--icon-nav .cw-category-nav,
    .site-header--icon-nav .cw-search-toggle>svg{
        transition:none!important;
    }
    .site-header--icon-nav.is-search-open .cw-header-search>.search-bar::after{
        animation:none!important;
    }
}

/* v1.99.9.13 — Header recentré + dropdowns uniformes
   - navigation centrée dans l'espace exact entre le logo et les utilitaires ;
   - loupe avant notifications ;
   - bouton hamburger strictement mobile ;
   - tous les sous-menus ont la même largeur et n'ont jamais de scroll horizontal. */

/* Le bouton hamburger appartient au drawer mobile uniquement. La règle est volontairement
   plus spécifique que les styles génériques de .cw-header-icon. */
.site-header--icon-nav .cw-mobile-nav-toggle{
    display:none!important;
}

/* Les dropdowns desktop utilisent tous le même gabarit. Même les catégories historiquement
   marquées "wide" restent à cette largeur afin de créer une vraie cohérence visuelle. */
@media(min-width:1271px){
    .site-header--icon-nav .cw-icon-header-inner{
        grid-template-columns:auto minmax(0,1fr) auto;
        align-items:center;
        column-gap:16px;
    }

    .site-header--icon-nav .cw-header-brand{
        grid-column:1;
        grid-row:1;
        justify-self:start;
    }

    /* Le nav est maintenant un enfant direct de la grille : son centre est donc réellement
       le centre de l'espace disponible entre logo et commandes, quelle que soit la langue. */
    .site-header--icon-nav .cw-category-nav{
        grid-column:2;
        grid-row:1;
        justify-self:center;
        justify-content:center;
        width:max-content;
        max-width:100%;
        min-width:0;
        margin-inline:auto;
    }

    .site-header--icon-nav .cw-header-actions{
        grid-column:3;
        grid-row:1;
        justify-self:end;
        justify-content:flex-end;
        min-width:max-content;
    }

    /* La recherche partage volontairement la colonne centrale avec le menu.
       Quand elle s'ouvre, le JS masque le nav et le champ prend sa place. */
    .site-header--icon-nav .cw-header-search{
        grid-column:2;
        grid-row:1;
    }

    .site-header--icon-nav .cw-category-menu,
    .site-header--icon-nav .cw-category.is-wide .cw-category-menu{
        width:330px;
        max-width:min(330px,calc(100vw - 28px));
        max-height:min(72vh,640px);
        box-sizing:border-box;
        overflow-x:hidden!important;
        overflow-y:auto;
        overscroll-behavior:contain;
        scrollbar-gutter:stable;
    }

    .site-header--icon-nav .cw-category-menu-body,
    .site-header--icon-nav .cw-category-menu-section,
    .site-header--icon-nav .cw-category-menu-list,
    .site-header--icon-nav .cw-category-form,
    .site-header--icon-nav .cw-category-link{
        min-width:0;
        max-width:100%;
    }

    .site-header--icon-nav .cw-category-link>span:last-child,
    .site-header--icon-nav .cw-category-menu-head strong,
    .site-header--icon-nav .cw-category-section-title{
        min-width:0;
        white-space:normal;
        overflow-wrap:anywhere;
        word-break:normal;
    }

    /* Les deux dernières catégories s'ouvrent vers la gauche sans changer de largeur. */
    .site-header--icon-nav .cw-category-nav .cw-category:nth-last-child(-n+2) .cw-category-menu{
        left:auto;
        right:0;
    }
}

@media(max-width:1270px){
    .site-header--icon-nav .cw-mobile-nav-toggle{
        display:grid!important;
    }
}

/* v1.99.9.14 — Langues plus explicites, thème identifiable et animations mobile premium */

/* Le sélecteur de langue garde le drapeau courant mais affiche un petit +N pour
   rendre immédiatement visible que d'autres langues sont disponibles. */
.site-header--icon-nav .cw-header-language{
    position:relative;
    overflow:visible;
}
.site-header--icon-nav .cw-language-flag-wrap{
    position:relative;
    display:grid;
    place-items:center;
    line-height:1;
}
.site-header--icon-nav .cw-language-more{
    position:absolute;
    top:-8px;
    right:-9px;
    z-index:3;
    display:grid;
    min-width:17px;
    height:17px;
    padding:0 4px;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 45%,var(--cw-line-strong));
    border-radius:999px;
    background:color-mix(in srgb,var(--cw-surface-solid) 92%,var(--cw-wayfinding-cyan) 8%);
    color:var(--cw-wayfinding-cyan);
    box-shadow:0 3px 10px rgba(0,0,0,.18),0 0 10px color-mix(in srgb,var(--cw-wayfinding-cyan) 12%,transparent);
    font-size:.47rem;
    font-weight:900;
    letter-spacing:-.02em;
}
.site-header--icon-nav .cw-header-language:hover .cw-language-more,
.site-header--icon-nav .cw-header-language:focus-visible .cw-language-more,
.site-header--icon-nav .cw-header-language[aria-expanded="true"] .cw-language-more{
    border-color:color-mix(in srgb,var(--cw-wayfinding-gold) 55%,var(--cw-line-strong));
    color:var(--cw-wayfinding-gold-soft);
    transform:translateY(-1px);
}

/* Le thème reste un slider, mais son rôle devient explicite au premier regard :
   un libellé localisé Clair/Sombre accompagne le switch sur les grands écrans. */
@media(min-width:1541px){
    .site-header--icon-nav .cw-theme-slider{
        display:flex;
        width:auto;
        min-width:103px;
        align-items:center;
        justify-content:flex-start;
        gap:7px;
        padding:0 7px 0 2px;
        border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 13%,var(--cw-line));
        border-radius:999px;
        background:color-mix(in srgb,var(--cw-surface-solid) 72%,transparent);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
    }
    .site-header--icon-nav .cw-theme-slider:hover,
    .site-header--icon-nav .cw-theme-slider:focus-visible{
        border:1px solid color-mix(in srgb,var(--cw-wayfinding-gold) 30%,var(--cw-line-strong));
        background:color-mix(in srgb,var(--cw-wayfinding-gold) 4%,var(--cw-surface));
    }
    .site-header--icon-nav .cw-theme-slider-state{
        position:relative;
        display:block;
        min-width:30px;
        color:color-mix(in srgb,var(--cw-text) 78%,var(--cw-muted));
        font-size:.56rem;
        font-weight:850;
        letter-spacing:.04em;
        line-height:1;
        text-align:left;
        white-space:nowrap;
    }
    .site-header--icon-nav .cw-theme-state-light,
    .site-header--icon-nav .cw-theme-state-dark{
        transition:opacity .18s ease,transform .18s ease,color .18s ease;
    }
    .site-header--icon-nav .cw-theme-state-dark{
        position:absolute;
        inset:0 auto auto 0;
        opacity:0;
        transform:translateY(3px);
    }
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-state-light{
        opacity:0;
        transform:translateY(-3px);
    }
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-state-dark{
        color:color-mix(in srgb,#8db8ff 82%,var(--cw-text));
        opacity:1;
        transform:none;
    }
}

/* A largeur réduite on conserve le switch compact, mais les pictos sont un peu
   plus francs pour qu'il reste identifiable sans ajouter de texte au header. */
@media(max-width:1540px){
    .site-header--icon-nav .cw-theme-slider-state{display:none}
    .site-header--icon-nav .cw-theme-slider-sun,
    .site-header--icon-nav .cw-theme-slider-moon{opacity:.86}
    .site-header--icon-nav .cw-theme-slider-icon svg{stroke-width:2.05}
}

/* Tiroir mobile : même langage premium que le desktop (cyan/or, trait lumineux,
   sweep d'ouverture, accordéons animés), sans réintroduire une forêt d'icônes. */
@media(max-width:1270px){
    .site-header--icon-nav .cw-mobile-navigation{
        overflow-x:hidden!important;
        border-left-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 18%,var(--cw-line-strong));
        background:
            radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--cw-wayfinding-cyan) 8%,transparent),transparent 28%),
            radial-gradient(circle at 96% 22%,color-mix(in srgb,var(--cw-wayfinding-gold) 5%,transparent),transparent 24%),
            color-mix(in srgb,var(--cw-surface-solid) 99%,transparent);
        box-shadow:-28px 0 74px rgba(0,0,0,.28),inset 1px 0 0 rgba(255,255,255,.025);
    }
    .site-header--icon-nav .cw-mobile-navigation:not([hidden]){
        animation:cwMobileWayfindingDrawer .3s cubic-bezier(.16,.84,.24,1) both;
    }
    .site-header--icon-nav .cw-mobile-navigation::before{
        content:"";
        position:absolute;
        top:0;
        left:0;
        right:0;
        z-index:2;
        height:2px;
        pointer-events:none;
        background:linear-gradient(90deg,var(--cw-wayfinding-gold),var(--cw-wayfinding-cyan) 58%,transparent);
    }
    .site-header--icon-nav .cw-mobile-navigation:not([hidden])::after{
        content:"";
        position:absolute;
        top:0;
        left:-38%;
        z-index:3;
        width:34%;
        height:2px;
        pointer-events:none;
        background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
        animation:cwMobileWayfindingSweep .62s .08s cubic-bezier(.2,.7,.2,1) both;
    }
    .site-header--icon-nav .cw-mobile-nav-head{
        position:relative;
        padding-top:8px;
        padding-bottom:14px;
        border-bottom-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 14%,var(--cw-line));
    }
    .site-header--icon-nav .cw-mobile-nav-head strong{
        font-size:.86rem;
        font-weight:850;
        letter-spacing:.055em;
    }
    .site-header--icon-nav .cw-mobile-nav-close{
        color:color-mix(in srgb,var(--cw-wayfinding-cyan) 64%,var(--cw-text));
        border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 16%,var(--cw-line));
        transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease;
    }
    .site-header--icon-nav .cw-mobile-nav-close:active{
        transform:scale(.93) rotate(4deg);
        color:var(--cw-wayfinding-gold-soft);
        border-color:color-mix(in srgb,var(--cw-wayfinding-gold) 34%,var(--cw-line-strong));
    }
    .site-header--icon-nav .cw-mobile-category-toggle{
        position:relative;
        overflow:hidden;
        transition:background .18s ease,color .18s ease,transform .16s ease;
        touch-action:manipulation;
    }
    .site-header--icon-nav .cw-mobile-category-toggle::after{
        content:"";
        position:absolute;
        inset:auto 10px 0 12px;
        height:1px;
        background:linear-gradient(90deg,color-mix(in srgb,var(--cw-wayfinding-cyan) 36%,transparent),transparent 82%);
        transform:scaleX(0);
        transform-origin:left center;
        transition:transform .22s cubic-bezier(.2,.8,.2,1);
    }
    .site-header--icon-nav .cw-mobile-category-toggle[aria-expanded="true"]{
        color:var(--cw-text);
        background:linear-gradient(90deg,color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,transparent),transparent 72%);
    }
    .site-header--icon-nav .cw-mobile-category-toggle[aria-expanded="true"]::after{
        transform:scaleX(1);
    }
    .site-header--icon-nav .cw-mobile-category-toggle[aria-expanded="true"]>svg{
        color:var(--cw-wayfinding-gold-soft);
        transform:rotate(90deg) scale(1.08);
    }
    .site-header--icon-nav .cw-mobile-category-toggle:active{
        transform:scale(.992);
    }
    .site-header--icon-nav .cw-mobile-category-list:not([hidden]){
        transform-origin:top center;
        animation:cwMobileSectionReveal .23s cubic-bezier(.2,.8,.2,1) both;
    }
    .site-header--icon-nav .cw-mobile-nav-row,
    .site-header--icon-nav .cw-mobile-nav-form>button{
        transition:background .16s ease,transform .16s ease,color .16s ease;
        touch-action:manipulation;
    }
    .site-header--icon-nav .cw-mobile-nav-row:active,
    .site-header--icon-nav .cw-mobile-nav-form>button:active{
        transform:translateX(3px) scale(.995);
        background:color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,var(--cw-surface));
    }
    .site-header--icon-nav .cw-mobile-nav-row.is-active{
        background:linear-gradient(90deg,
            color-mix(in srgb,var(--cw-wayfinding-gold) 9%,var(--cw-surface)),
            color-mix(in srgb,var(--cw-wayfinding-cyan) 3%,var(--cw-surface)) 66%,
            transparent);
    }
    .site-header--icon-nav .cw-mobile-nav-row.is-active::before{
        box-shadow:0 0 10px color-mix(in srgb,var(--cw-wayfinding-gold) 28%,transparent);
    }

    @keyframes cwMobileWayfindingDrawer{
        from{opacity:0;transform:translateX(34px) scale(.992)}
        to{opacity:1;transform:none}
    }
    @keyframes cwMobileWayfindingSweep{
        to{left:104%}
    }
    @keyframes cwMobileSectionReveal{
        from{opacity:0;transform:translateY(-5px) scaleY(.985)}
        to{opacity:1;transform:none}
    }
}

@media(max-width:640px){
    .site-header--icon-nav .cw-language-more{
        top:-7px;
        right:-8px;
        min-width:15px;
        height:15px;
        padding-inline:3px;
        font-size:.43rem;
    }
}

@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-language-more,
    .site-header--icon-nav .cw-theme-state-light,
    .site-header--icon-nav .cw-theme-state-dark,
    .site-header--icon-nav .cw-mobile-navigation,
    .site-header--icon-nav .cw-mobile-navigation::after,
    .site-header--icon-nav .cw-mobile-category-list,
    .site-header--icon-nav .cw-mobile-category-toggle,
    .site-header--icon-nav .cw-mobile-nav-row,
    .site-header--icon-nav .cw-mobile-nav-form>button{
        transition:none!important;
        animation:none!important;
    }
}

/* v1.99.9.15 — Sélecteur de langue compact et explicite */
.site-header--icon-nav .cw-language-control{
    position:relative;
    flex:0 0 auto;
}
.site-header--icon-nav .cw-header-language{
    min-width:72px;
    height:39px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:0 9px;
    overflow:visible;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 12%,var(--cw-line));
    border-radius:999px;
    background:color-mix(in srgb,var(--cw-surface-solid) 76%,transparent);
    color:var(--cw-text);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
    cursor:pointer;
    transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.site-header--icon-nav .cw-header-language:hover,
.site-header--icon-nav .cw-header-language:focus-visible,
.site-header--icon-nav .cw-header-language[aria-expanded="true"]{
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 38%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface));
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,transparent),inset 0 1px 0 rgba(255,255,255,.035);
}
.site-header--icon-nav .cw-header-language:active{transform:scale(.97)}
.site-header--icon-nav .cw-language-flag-img{
    width:24px;
    height:17px;
    flex:0 0 auto;
    display:block;
    object-fit:cover;
    border-radius:3px;
    box-shadow:0 0 0 1px rgba(255,255,255,.12);
}
.site-header--icon-nav .cw-language-code{
    min-width:18px;
    color:var(--cw-text);
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.055em;
    line-height:1;
    text-align:center;
}
.site-header--icon-nav .cw-language-chevron{
    width:13px!important;
    height:13px!important;
    flex:0 0 auto;
    fill:none;
    stroke:color-mix(in srgb,var(--cw-text) 72%,var(--cw-muted));
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .18s cubic-bezier(.2,.8,.2,1),stroke .18s ease;
}
.site-header--icon-nav .cw-header-language[aria-expanded="true"] .cw-language-chevron{
    transform:rotate(180deg);
    stroke:var(--cw-wayfinding-cyan);
}
.site-header--icon-nav .cw-language-more,
.site-header--icon-nav .cw-language-flag-wrap{display:none!important}

.site-header--icon-nav .cw-language-menu{
    position:absolute;
    top:calc(100% + 9px);
    right:0;
    z-index:1600;
    width:205px;
    display:grid;
    grid-template-columns:1fr;
    gap:3px;
    padding:7px;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 16%,var(--cw-line-strong));
    border-radius:14px;
    background:color-mix(in srgb,var(--cw-surface-solid) 98%,transparent);
    box-shadow:0 18px 52px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.03);
    backdrop-filter:blur(16px);
}
.site-header--icon-nav .cw-language-menu[hidden]{display:none!important}
.site-header--icon-nav .cw-language-menu:not([hidden]){
    animation:cwLanguageMenuIn .17s cubic-bezier(.2,.82,.2,1) both;
}
.site-header--icon-nav .cw-language-menu a{
    width:100%;
    min-height:40px;
    display:grid;
    grid-template-columns:26px minmax(0,1fr) 18px;
    align-items:center;
    gap:9px;
    padding:6px 9px;
    border:1px solid transparent;
    border-radius:9px;
    color:color-mix(in srgb,var(--cw-text) 82%,var(--cw-muted));
    text-decoration:none;
    font-size:.72rem;
    font-weight:760;
    line-height:1.15;
    transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
.site-header--icon-nav .cw-language-menu a:hover,
.site-header--icon-nav .cw-language-menu a:focus-visible{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 25%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-wayfinding-cyan) 6%,var(--cw-surface));
    transform:translateX(2px);
}
.site-header--icon-nav .cw-language-menu a.is-active{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 36%,var(--cw-line-strong));
    background:linear-gradient(90deg,color-mix(in srgb,var(--cw-wayfinding-cyan) 9%,var(--cw-surface)),color-mix(in srgb,var(--cw-wayfinding-gold) 3%,var(--cw-surface)));
}
.site-header--icon-nav .cw-language-menu-label{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.site-header--icon-nav .cw-language-check{
    width:16px;
    height:16px;
    justify-self:end;
    fill:none;
    stroke:var(--cw-wayfinding-cyan);
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
}
@keyframes cwLanguageMenuIn{
    from{opacity:0;transform:translateY(-5px) scale(.985)}
    to{opacity:1;transform:none}
}
@media(max-width:640px){
    .site-header--icon-nav .cw-header-language{
        min-width:68px;
        height:36px;
        padding:0 8px;
        gap:6px;
    }
    .site-header--icon-nav .cw-language-code{font-size:.62rem}
    .site-header--icon-nav .cw-language-chevron{display:block!important;width:12px!important;height:12px!important}
    .site-header--icon-nav .cw-language-menu{
        width:190px;
        right:0;
    }
}
@media(max-width:390px){
    .site-header--icon-nav .cw-header-language{
        min-width:64px;
        height:34px;
        padding:0 7px;
        gap:5px;
    }
    .site-header--icon-nav .cw-language-flag-img{width:22px;height:16px}
}
@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-language-menu:not([hidden]){animation:none!important}
    .site-header--icon-nav .cw-language-chevron{transition:none!important}
}

/* v1.99.9.16 — Langue façon sélecteur premium + thème 100 % pictogrammes
   Référence visuelle : drapeau circulaire dans une capsule, code ISO et chevron.
   Le thème reste un vrai switch, mais sans libellé texte dans le header. */
.site-header--icon-nav .cw-header-language{
    min-width:82px;
    height:40px;
    gap:8px;
    padding:0 10px 0 7px;
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 14%,var(--cw-line));
    background:linear-gradient(180deg,
        color-mix(in srgb,var(--cw-surface-solid) 96%,transparent),
        color-mix(in srgb,var(--cw-surface) 92%,transparent));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 5px 15px rgba(0,0,0,.06);
}
.site-header--icon-nav .cw-language-flag-img{
    width:27px;
    height:27px;
    aspect-ratio:1;
    border-radius:50%;
    clip-path:circle(50% at 50% 50%);
    object-fit:cover;
    object-position:center;
    box-shadow:
        0 0 0 1px color-mix(in srgb,#fff 32%,transparent),
        0 0 0 2px color-mix(in srgb,var(--cw-wayfinding-cyan) 15%,transparent),
        0 3px 8px rgba(0,0,0,.18);
}
.site-header--icon-nav .cw-language-code{
    min-width:20px;
    font-size:.69rem;
    letter-spacing:.07em;
}
.site-header--icon-nav .cw-language-chevron{
    width:12px!important;
    height:12px!important;
    opacity:.78;
}
.site-header--icon-nav .cw-header-language:hover .cw-language-flag-img,
.site-header--icon-nav .cw-header-language:focus-visible .cw-language-flag-img,
.site-header--icon-nav .cw-header-language[aria-expanded="true"] .cw-language-flag-img{
    box-shadow:
        0 0 0 1px color-mix(in srgb,#fff 42%,transparent),
        0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-cyan) 18%,transparent),
        0 4px 10px rgba(0,0,0,.2);
}

/* Les drapeaux du menu déroulant reprennent le même langage rond, sans perdre
   le nom complet de la langue ni l'indication de la langue active. */
.site-header--icon-nav .cw-language-menu a{
    grid-template-columns:30px minmax(0,1fr) 18px;
    min-height:43px;
    gap:10px;
}
.site-header--icon-nav .cw-language-menu .cw-language-flag-img{
    width:26px;
    height:26px;
    box-shadow:0 0 0 1px color-mix(in srgb,#fff 24%,transparent),0 2px 7px rgba(0,0,0,.14);
}
.site-header--icon-nav .cw-language-menu-label{
    font-size:.74rem;
    font-weight:780;
}

/* Le switch de thème n'affiche plus aucun texte : uniquement soleil / lune.
   Le pictogramme actif est porté par le curseur lumineux, comme un vrai switch. */
.site-header--icon-nav .cw-theme-slider{
    width:72px;
    min-width:72px;
    height:40px;
    min-height:40px;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
    display:inline-grid;
    place-items:center;
}
.site-header--icon-nav .cw-theme-slider-state{display:none!important}
.site-header--icon-nav .cw-theme-slider-track{
    width:68px;
    height:34px;
    border-color:color-mix(in srgb,#dca552 30%,var(--cw-line-strong));
    background:linear-gradient(135deg,
        color-mix(in srgb,#f7c96b 12%,var(--cw-surface-solid)),
        color-mix(in srgb,var(--cw-surface) 97%,transparent));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 14px rgba(0,0,0,.09);
}
.site-header--icon-nav .cw-theme-slider-thumb{
    top:2px;
    left:2px;
    width:28px;
    height:28px;
    background:linear-gradient(145deg,#fff9e9,#f5d995);
    box-shadow:
        0 4px 11px rgba(0,0,0,.22),
        0 0 0 1px rgba(210,151,53,.18),
        0 0 16px rgba(231,184,93,.16);
}
.site-header--icon-nav .cw-theme-slider-icon{
    width:24px;
    height:24px;
}
.site-header--icon-nav .cw-theme-slider-icon svg{
    width:16px;
    height:16px;
    stroke-width:2.05;
}
.site-header--icon-nav .cw-theme-slider-sun{
    left:4px;
    color:#a8660e;
    opacity:1;
}
.site-header--icon-nav .cw-theme-slider-moon{
    right:4px;
    color:#8190a7;
    opacity:.58;
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-track{
    border-color:color-mix(in srgb,#72a7f4 42%,var(--cw-line-strong));
    background:linear-gradient(135deg,
        color-mix(in srgb,#243d62 46%,var(--cw-surface-solid)),
        color-mix(in srgb,#6689ca 8%,var(--cw-surface)));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 5px 14px rgba(0,0,0,.15);
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{
    transform:translateX(36px);
    background:linear-gradient(145deg,#f0f5ff,#bcccf4);
    box-shadow:
        0 4px 12px rgba(0,0,0,.3),
        0 0 0 1px rgba(108,144,215,.24),
        0 0 18px rgba(116,164,255,.22);
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-sun{
    color:#a88c66;
    opacity:.48;
}
html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-moon{
    color:#46689f;
    opacity:1;
}
.site-header--icon-nav .cw-theme-slider:hover .cw-theme-slider-track,
.site-header--icon-nav .cw-theme-slider:focus-visible .cw-theme-slider-track{
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 34%,var(--cw-line-strong));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,transparent),0 6px 16px rgba(0,0,0,.12);
}

@media(max-width:640px){
    .site-header--icon-nav .cw-header-language{
        min-width:76px;
        height:37px;
        padding:0 8px 0 6px;
        gap:7px;
    }
    .site-header--icon-nav .cw-language-flag-img{width:25px;height:25px}
    .site-header--icon-nav .cw-theme-slider{width:66px;min-width:66px;height:37px;min-height:37px}
    .site-header--icon-nav .cw-theme-slider-track{width:62px;height:31px}
    .site-header--icon-nav .cw-theme-slider-thumb{width:25px;height:25px;top:2px;left:2px}
    .site-header--icon-nav .cw-theme-slider-icon{width:21px;height:21px}
    .site-header--icon-nav .cw-theme-slider-sun{left:4px}
    .site-header--icon-nav .cw-theme-slider-moon{right:4px}
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{transform:translateX(33px)}
}
@media(max-width:390px){
    .site-header--icon-nav .cw-header-language{min-width:72px;height:35px}
    .site-header--icon-nav .cw-language-flag-img{width:24px;height:24px}
    .site-header--icon-nav .cw-theme-slider{width:62px;min-width:62px;height:35px;min-height:35px}
    .site-header--icon-nav .cw-theme-slider-track{width:58px;height:29px}
    .site-header--icon-nav .cw-theme-slider-thumb{width:23px;height:23px}
    html[data-theme="dark"] .site-header--icon-nav .cw-theme-slider-thumb{transform:translateX(31px)}
}
.site-header--icon-nav .cw-theme-slider:hover,
.site-header--icon-nav .cw-theme-slider:focus-visible{
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
}

/* v1.99.9.17 — Finition du sélecteur de langue
   - le drapeau rond respire dans la capsule ;
   - le menu langue se referme dès qu'une autre navigation prend le relais. */
.site-header--icon-nav .cw-header-language{
    min-width:88px;
    padding-left:11px;
    padding-right:10px;
    gap:7px;
}
.site-header--icon-nav .cw-header-language > .cw-language-flag-img{
    width:26px;
    height:26px;
    box-shadow:
        0 0 0 1px color-mix(in srgb,#fff 30%,transparent),
        0 0 0 2px color-mix(in srgb,var(--cw-wayfinding-cyan) 13%,transparent),
        0 3px 8px rgba(0,0,0,.16);
}
.site-header--icon-nav .cw-header-language:hover > .cw-language-flag-img,
.site-header--icon-nav .cw-header-language:focus-visible > .cw-language-flag-img,
.site-header--icon-nav .cw-header-language[aria-expanded="true"] > .cw-language-flag-img{
    box-shadow:
        0 0 0 1px color-mix(in srgb,#fff 40%,transparent),
        0 0 0 2px color-mix(in srgb,var(--cw-wayfinding-cyan) 18%,transparent),
        0 4px 10px rgba(0,0,0,.18);
}
@media(max-width:640px){
    .site-header--icon-nav .cw-header-language{
        min-width:82px;
        padding-left:9px;
        padding-right:9px;
        gap:6px;
    }
    .site-header--icon-nav .cw-header-language > .cw-language-flag-img{
        width:24px;
        height:24px;
    }
}

/* v1.99.9.18 — Menu langue animé comme les menus principaux
   Même mouvement de panneau, même liseré wayfinding et même balayage lumineux. */
.site-header--icon-nav .cw-language-menu{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(9px) scale(.985);
    transform-origin:top right;
    transition:opacity .17s ease,transform .2s cubic-bezier(.2,.75,.2,1),visibility .2s ease;
    animation:none!important;
}
.site-header--icon-nav .cw-language-menu[hidden]{display:none!important}
.site-header--icon-nav .cw-language-menu.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}
.site-header--icon-nav .cw-language-menu::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:2px;
    border-radius:14px 14px 0 0;
    pointer-events:none;
    background:linear-gradient(90deg,
        var(--cw-wayfinding-gold),
        var(--cw-wayfinding-cyan) 58%,
        transparent 100%);
    opacity:.9;
}
.site-header--icon-nav .cw-language-menu.is-open::after{
    content:"";
    position:absolute;
    top:0;
    left:-38%;
    width:34%;
    height:2px;
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
    animation:cwWayfindingSweep .55s cubic-bezier(.2,.7,.2,1) both;
}
.site-header--icon-nav .cw-language-menu a{
    opacity:0;
    transform:translateY(4px);
    transition:
        opacity .16s ease,
        transform .19s cubic-bezier(.2,.75,.2,1),
        background .15s ease,
        border-color .15s ease,
        color .15s ease;
}
.site-header--icon-nav .cw-language-menu.is-open a{
    opacity:1;
    transform:translateY(0);
}
.site-header--icon-nav .cw-language-menu.is-open a:nth-child(1){transition-delay:.025s}
.site-header--icon-nav .cw-language-menu.is-open a:nth-child(2){transition-delay:.045s}
.site-header--icon-nav .cw-language-menu.is-open a:nth-child(3){transition-delay:.065s}
.site-header--icon-nav .cw-language-menu.is-open a:nth-child(4){transition-delay:.085s}
.site-header--icon-nav .cw-language-menu.is-open a:nth-child(5){transition-delay:.105s}
.site-header--icon-nav .cw-language-menu a:hover,
.site-header--icon-nav .cw-language-menu a:focus-visible{
    transform:translateX(2px);
}
@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-language-menu,
    .site-header--icon-nav .cw-language-menu a{
        transition:none!important;
        animation:none!important;
    }
    .site-header--icon-nav .cw-language-menu.is-open::after{animation:none!important}
}

/* v1.99.9.20 — Aperçu premium des notifications dans le header
   La cloche reste un lien vers le centre complet, mais le survol desktop affiche
   les 5 dernières notifications avec les mêmes codes visuels que les autres menus. */
.site-header--icon-nav .cw-notification-control{
    position:relative;
    display:flex;
    align-items:center;
    flex:0 0 auto;
}
.site-header--icon-nav .cw-notification-link[aria-expanded="true"]{
    color:var(--cw-wayfinding-gold-soft);
    border-color:color-mix(in srgb,var(--cw-wayfinding-gold) 38%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-wayfinding-gold) 6%,var(--cw-surface));
    box-shadow:0 7px 18px rgba(0,0,0,.08);
    transform:translateY(-1px);
}
.site-header--icon-nav .cw-notification-preview{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    z-index:1600;
    width:330px;
    max-width:min(330px,calc(100vw - 28px));
    max-height:min(72vh,640px);
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 18%,var(--cw-line-strong));
    border-radius:14px;
    background:
        radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--cw-wayfinding-cyan) 7%,transparent),transparent 34%),
        linear-gradient(180deg,color-mix(in srgb,var(--cw-surface-solid) 99%,transparent),var(--cw-surface-solid));
    box-shadow:0 26px 70px rgba(0,0,0,.23),0 1px 0 rgba(255,255,255,.035) inset;
    backdrop-filter:blur(16px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(9px) scale(.985);
    transform-origin:top right;
    transition:opacity .17s ease,transform .2s cubic-bezier(.2,.75,.2,1),visibility .2s ease;
}
.site-header--icon-nav .cw-notification-preview[hidden]{display:none!important}
.site-header--icon-nav .cw-notification-preview.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}
.site-header--icon-nav .cw-notification-preview::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:2px;
    z-index:2;
    pointer-events:none;
    background:linear-gradient(90deg,var(--cw-wayfinding-gold),var(--cw-wayfinding-cyan) 58%,transparent 100%);
    opacity:.9;
}
.site-header--icon-nav .cw-notification-preview.is-open::after{
    content:"";
    position:absolute;
    top:0;
    left:-38%;
    width:34%;
    height:2px;
    z-index:3;
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
    animation:cwWayfindingSweep .55s cubic-bezier(.2,.7,.2,1) both;
}
.site-header--icon-nav .cw-notification-preview-head{
    display:grid;
    grid-template-columns:28px minmax(0,1fr);
    align-items:center;
    gap:10px;
    padding:18px 16px 12px;
    border-bottom:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 15%,var(--cw-line));
}
.site-header--icon-nav .cw-notification-preview-icon{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    padding:5px;
    border-radius:50%;
    color:var(--cw-wayfinding-gold-soft);
    background:color-mix(in srgb,var(--cw-wayfinding-gold) 9%,var(--cw-surface));
    box-shadow:0 0 0 1px color-mix(in srgb,var(--cw-wayfinding-gold) 22%,var(--cw-line));
}
.site-header--icon-nav .cw-notification-preview-icon svg{width:17px;height:17px}
.site-header--icon-nav .cw-notification-preview-head>div{
    min-width:0;
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:10px;
}
.site-header--icon-nav .cw-notification-preview-head strong{
    min-width:0;
    color:var(--cw-text);
    font-size:.78rem;
    font-weight:820;
    letter-spacing:.025em;
}
.site-header--icon-nav .cw-notification-preview-head small{
    flex:0 0 auto;
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 52%,var(--cw-muted));
    font-size:.52rem;
    font-weight:800;
    white-space:nowrap;
}
.site-header--icon-nav .cw-notification-preview-list{
    min-width:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding:7px;
}
.site-header--icon-nav .cw-notification-preview-item{
    position:relative;
    width:100%;
    min-width:0;
    display:grid;
    grid-template-columns:8px minmax(0,1fr);
    gap:9px;
    padding:10px 10px 10px 8px;
    border:1px solid transparent;
    border-radius:9px;
    color:color-mix(in srgb,var(--cw-text) 88%,var(--cw-muted));
    text-decoration:none;
    opacity:0;
    transform:translateY(4px);
    transition:
        opacity .16s ease,
        transform .19s cubic-bezier(.2,.75,.2,1),
        background .15s ease,
        border-color .15s ease,
        color .15s ease;
}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item{
    opacity:1;
    transform:translateY(0);
}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item:nth-child(1){transition-delay:.025s}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item:nth-child(2){transition-delay:.045s}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item:nth-child(3){transition-delay:.065s}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item:nth-child(4){transition-delay:.085s}
.site-header--icon-nav .cw-notification-preview.is-open .cw-notification-preview-item:nth-child(5){transition-delay:.105s}
.site-header--icon-nav .cw-notification-preview-item:hover,
.site-header--icon-nav .cw-notification-preview-item:focus-visible{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan) 24%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface));
    transform:translateX(2px);
}
.site-header--icon-nav .cw-notification-preview-item.is-unread{
    background:linear-gradient(90deg,color-mix(in srgb,var(--cw-wayfinding-cyan) 5%,var(--cw-surface)),transparent 78%);
}
.site-header--icon-nav .cw-notification-preview-marker{
    width:6px;
    height:6px;
    margin-top:5px;
    border-radius:50%;
    background:color-mix(in srgb,var(--cw-muted) 38%,transparent);
    box-shadow:none;
}
.site-header--icon-nav .cw-notification-preview-item.is-unread .cw-notification-preview-marker{
    background:var(--cw-wayfinding-cyan);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-cyan) 10%,transparent);
}
.site-header--icon-nav .cw-notification-preview-item.priority-high.is-unread .cw-notification-preview-marker,
.site-header--icon-nav .cw-notification-preview-item.priority-urgent.is-unread .cw-notification-preview-marker{
    background:var(--cw-wayfinding-gold);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-gold) 11%,transparent);
}
.site-header--icon-nav .cw-notification-preview-copy{
    min-width:0;
    display:grid;
    gap:4px;
}
.site-header--icon-nav .cw-notification-preview-meta{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 42%,var(--cw-muted));
    font-size:.5rem;
    font-weight:850;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.site-header--icon-nav .cw-notification-preview-meta span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.site-header--icon-nav .cw-notification-preview-meta time{
    flex:0 0 auto;
    color:var(--cw-muted);
    font-weight:700;
    letter-spacing:0;
    text-transform:none;
    white-space:nowrap;
}
.site-header--icon-nav .cw-notification-preview-copy>strong{
    min-width:0;
    color:var(--cw-text);
    font-size:.69rem;
    font-weight:780;
    line-height:1.25;
    overflow-wrap:anywhere;
}
.site-header--icon-nav .cw-notification-preview-body{
    min-width:0;
    display:-webkit-box;
    overflow:hidden;
    color:var(--cw-muted);
    font-size:.58rem;
    line-height:1.38;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.site-header--icon-nav .cw-notification-preview-empty{
    min-height:110px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:18px;
    color:var(--cw-muted);
    font-size:.64rem;
    text-align:center;
}
.site-header--icon-nav .cw-notification-preview-empty svg{
    width:22px;
    height:22px;
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 55%,var(--cw-muted));
}
.site-header--icon-nav .cw-notification-preview-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:42px;
    padding:9px 14px;
    border-top:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan) 15%,var(--cw-line));
    color:color-mix(in srgb,var(--cw-wayfinding-cyan) 70%,var(--cw-text));
    font-size:.62rem;
    font-weight:850;
    text-decoration:none;
    transition:color .15s ease,background .15s ease;
}
.site-header--icon-nav .cw-notification-preview-footer:hover,
.site-header--icon-nav .cw-notification-preview-footer:focus-visible{
    color:var(--cw-wayfinding-gold-soft);
    background:color-mix(in srgb,var(--cw-wayfinding-gold) 4%,var(--cw-surface));
}
@media(max-width:1270px){
    .site-header--icon-nav .cw-notification-preview{display:none!important}
}
@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-notification-preview,
    .site-header--icon-nav .cw-notification-preview-item{
        transition:none!important;
        animation:none!important;
    }
    .site-header--icon-nav .cw-notification-preview.is-open::after{animation:none!important}
}

/* v1.99.9.22 — Badge de notification vivant mais discret
   Le compteur attire doucement l'œil lorsqu'il y a des notifications non lues,
   sans transformer la cloche en animation permanente trop agressive. */
.cw-notification-link .notification-badge{
    transform-origin:center;
    animation:cw-notification-badge-pop 3.6s cubic-bezier(.2,.8,.2,1) infinite;
    will-change:transform,box-shadow;
}

.cw-notification-link .notification-badge::after{
    content:"";
    position:absolute;
    inset:-5px;
    border:1px solid color-mix(in srgb,var(--cw-header-orange) 72%,transparent);
    border-radius:999px;
    opacity:0;
    pointer-events:none;
    animation:cw-notification-badge-ring 3.6s ease-out infinite;
}

@keyframes cw-notification-badge-pop{
    0%,68%,100%{transform:translateZ(0) scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--cw-header-orange) 0%,transparent)}
    72%{transform:translateZ(0) scale(1.16) rotate(-4deg);box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-header-orange) 14%,transparent)}
    76%{transform:translateZ(0) scale(.94) rotate(3deg)}
    80%{transform:translateZ(0) scale(1.08) rotate(-2deg)}
    84%{transform:translateZ(0) scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--cw-header-orange) 0%,transparent)}
}

@keyframes cw-notification-badge-ring{
    0%,69%,100%{transform:scale(.7);opacity:0}
    72%{transform:scale(.82);opacity:.72}
    84%{transform:scale(1.38);opacity:0}
}

.cw-notification-link:hover .notification-badge,
.cw-notification-link:focus-visible .notification-badge{
    animation-duration:2.5s;
}

@media (prefers-reduced-motion:reduce){
    .cw-notification-link .notification-badge,
    .cw-notification-link .notification-badge::after{
        animation:none!important;
    }
}

/* v1.99.9.23 — Connexion / création de compte en modale premium */
html.has-cw-auth-modal{overflow:hidden}
.cw-auth-dialog{
    width:min(560px,calc(100vw - 30px));
    max-width:560px;
    max-height:calc(100dvh - 30px);
    margin:auto;
    padding:0;
    border:0;
    border-radius:28px;
    background:transparent;
    color:var(--cw-text);
    overflow:visible;
    opacity:0;
    transform:translateY(14px) scale(.975);
    transition:opacity .2s ease,transform .28s cubic-bezier(.2,.8,.2,1);
}
.cw-auth-dialog[open]{display:block}
.cw-auth-dialog.is-visible{opacity:1;transform:none}
.cw-auth-dialog.is-closing{opacity:0;transform:translateY(9px) scale(.985)}
.cw-auth-dialog::backdrop{
    background:rgba(3,10,12,.66);
    backdrop-filter:blur(10px) saturate(.86);
    opacity:0;
    transition:opacity .2s ease;
}
.cw-auth-dialog.is-visible::backdrop{opacity:1}
.cw-auth-dialog.is-closing::backdrop{opacity:0}
.cw-auth-modal-shell{
    position:relative;
    max-height:calc(100dvh - 30px);
    overflow-x:hidden;
    overflow-y:auto;
    padding:30px;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 28%,var(--cw-line));
    border-radius:28px;
    background:
        radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--cw-wayfinding-gold,#e7b85d) 10%,transparent),transparent 34%),
        radial-gradient(circle at 100% 12%,color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 10%,transparent),transparent 36%),
        color-mix(in srgb,var(--cw-surface) 96%,var(--cw-bg));
    box-shadow:0 28px 90px rgba(0,0,0,.36),0 0 0 1px color-mix(in srgb,var(--cw-wayfinding-gold,#e7b85d) 8%,transparent) inset;
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 35%,transparent) transparent;
}
.cw-auth-modal-shell::before{
    content:"";
    position:absolute;
    z-index:0;
    top:0;
    left:24px;
    right:24px;
    height:2px;
    border-radius:0 0 999px 999px;
    background:linear-gradient(90deg,transparent,var(--cw-wayfinding-cyan,#42c7d8),var(--cw-wayfinding-gold,#e7b85d),transparent);
    opacity:.9;
}
.cw-auth-modal-shell>*{position:relative;z-index:1}
.cw-auth-modal-close{
    position:absolute;
    top:15px;
    right:15px;
    z-index:3;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:1px solid var(--cw-line);
    border-radius:50%;
    background:color-mix(in srgb,var(--cw-surface) 90%,transparent);
    color:var(--cw-muted);
    font:500 1.45rem/1 sans-serif;
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease;
}
.cw-auth-modal-close:hover,.cw-auth-modal-close:focus-visible{
    transform:rotate(5deg) scale(1.05);
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 55%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 8%,var(--cw-surface));
    color:var(--cw-text);
}
.cw-auth-modal-brand{display:flex;align-items:center;gap:11px;padding-right:44px;margin-bottom:22px}
.cw-auth-modal-brand-mark{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-gold,#e7b85d) 45%,var(--cw-line));
    border-radius:50%;
    background:linear-gradient(145deg,color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 15%,var(--cw-surface)),color-mix(in srgb,var(--cw-wayfinding-gold,#e7b85d) 12%,var(--cw-surface)));
    color:var(--cw-wayfinding-gold-soft,#f3ce82);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.08em;
    box-shadow:0 0 22px color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 12%,transparent);
}
.cw-auth-modal-brand>span:last-child{display:grid;gap:1px}
.cw-auth-modal-brand strong{font-size:.9rem;letter-spacing:.02em}
.cw-auth-modal-brand small{color:var(--cw-muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.cw-auth-modal-tabs{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
    padding:5px;
    margin-bottom:26px;
    border:1px solid var(--cw-line);
    border-radius:16px;
    background:color-mix(in srgb,var(--cw-bg) 72%,transparent);
}
.cw-auth-modal-tab{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:8px 14px;
    border-radius:11px;
    color:var(--cw-muted);
    font-size:.78rem;
    font-weight:850;
    text-decoration:none;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.cw-auth-modal-tab:hover{color:var(--cw-text);transform:translateY(-1px)}
.cw-auth-modal-tab.is-active{
    background:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 10%,var(--cw-surface));
    color:var(--cw-text);
    box-shadow:0 5px 16px rgba(0,0,0,.12),inset 0 -2px 0 color-mix(in srgb,var(--cw-wayfinding-gold,#e7b85d) 75%,transparent);
}
.cw-auth-modal-pane[hidden]{display:none!important}
.cw-auth-modal-pane.is-entering{animation:cwAuthPaneIn .26s cubic-bezier(.2,.8,.2,1) both}
@keyframes cwAuthPaneIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.cw-auth-modal-pane h2{
    margin:6px 0 8px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(2rem,5vw,3rem);
    line-height:1.02;
}
.cw-auth-modal-intro{margin:0;color:var(--cw-muted);font-size:.88rem;line-height:1.55}
.cw-auth-modal-form{margin-top:22px}
.cw-auth-modal-form input[type=text],.cw-auth-modal-form input[type=email],.cw-auth-modal-form input[type=password]{
    background:color-mix(in srgb,var(--cw-bg) 86%,var(--cw-surface));
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.cw-auth-modal-form input:focus{
    outline:none;
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 70%,var(--cw-line));
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 12%,transparent);
    background:var(--cw-bg);
}
.cw-auth-modal-submit{width:100%;min-height:48px;margin-top:3px}
.cw-auth-modal-pane .auth-switch{text-align:center;margin-bottom:0!important}
.cw-auth-modal-pane .auth-form-row a{color:var(--cw-wayfinding-cyan,#42c7d8);font-weight:750}

@media(max-width:600px){
    .cw-auth-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
    .cw-auth-modal-shell{max-height:calc(100dvh - 20px);padding:24px 20px;border-radius:23px}
    .cw-auth-modal-close{top:12px;right:12px}
    .cw-auth-modal-brand{margin-bottom:18px}
    .cw-auth-modal-tabs{margin-bottom:22px}
    .cw-auth-modal-pane h2{font-size:2.05rem}
}
@media(prefers-reduced-motion:reduce){
    .cw-auth-dialog,.cw-auth-dialog::backdrop,.cw-auth-modal-close,.cw-auth-modal-tab{transition:none!important}
    .cw-auth-modal-pane.is-entering{animation:none!important}
}

/* v1.99.9.24 — Déconnexion rapide dans le header
   Le bouton desktop reste volontairement compact et cohérent avec les autres utilitaires.
   Sur mobile, la déconnexion est déplacée dans le drawer pour ne pas surcharger la barre. */
.cw-header-logout-form{
    display:flex;
    align-items:center;
    margin:0;
    padding:0;
}

.site-header--icon-nav .cw-logout-button{
    flex:0 0 auto;
    color:color-mix(in srgb,var(--cw-wayfinding-gold-soft, #f3ce82) 58%,var(--cw-muted));
}

.site-header--icon-nav .cw-logout-button:hover,
.site-header--icon-nav .cw-logout-button:focus-visible{
    color:var(--cw-wayfinding-danger, #e66d61);
    border-color:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 45%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 7%,var(--cw-surface));
    box-shadow:0 7px 18px rgba(0,0,0,.08),0 0 0 1px color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 9%,transparent);
}

.cw-mobile-nav-authenticated{
    justify-content:stretch;
}

.cw-mobile-logout-form{
    width:100%;
    margin:0;
}

.cw-mobile-logout-button{
    width:100%;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    padding:8px 10px;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 26%,var(--cw-line-strong));
    border-radius:10px;
    background:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 4%,var(--cw-surface-solid));
    color:var(--cw-text);
    font:inherit;
    cursor:pointer;
    transition:transform .18s ease,color .18s ease,border-color .18s ease,background .18s ease;
}

.cw-mobile-logout-button>span{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    flex:0 0 auto;
    border:1px solid color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 24%,var(--cw-line));
    border-radius:9px;
    color:var(--cw-wayfinding-danger, #e66d61);
    background:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 5%,var(--cw-surface-solid));
}

.cw-mobile-logout-button>span svg{
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.cw-mobile-logout-button strong{
    font-size:.76rem;
    font-weight:800;
}

.cw-mobile-logout-button:hover,
.cw-mobile-logout-button:focus-visible{
    color:var(--cw-wayfinding-danger, #e66d61);
    border-color:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 48%,var(--cw-line-strong));
    background:color-mix(in srgb,var(--cw-wayfinding-danger, #e66d61) 8%,var(--cw-surface));
    transform:translateY(-1px);
}

@media(max-width:1270px){
    .site-header--icon-nav .cw-header-logout-form{display:none!important}
}

@media(prefers-reduced-motion:reduce){
    .site-header--icon-nav .cw-logout-button,
    .cw-mobile-logout-button{transition:none!important}
}


/* v1.99.9.29 — Park detail hero compact / premium
   L'essentiel remonte dans le hero : statut, horaires, météo, coasters,
   attractions et couverture Live. Les actions secondaires passent dans •••. */
.park-detail-hero-v199929{
  min-height:360px;
  align-items:stretch;
  color:#f7f4ed;
}
.park-detail-hero-v199929.has-media{
  background-image:
    linear-gradient(90deg,rgba(5,10,13,.93) 0%,rgba(5,10,13,.72) 43%,rgba(5,10,13,.28) 78%,rgba(5,10,13,.18) 100%),
    var(--park-hero-image);
  background-position:center 45%;
}
.park-detail-hero-v199929 .park-detail-hero-shade{
  height:72%;
  background:linear-gradient(transparent,rgba(7,12,12,.74) 72%,var(--cw-bg) 100%);
}
.park-detail-hero-v199929 .park-detail-hero-content{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding-top:34px;
  padding-bottom:28px;
}
.park-detail-hero-v199929 .park-detail-breadcrumb{
  margin:0 0 18px;
  color:rgba(255,255,255,.7);
  font-size:.69rem;
}
.park-detail-hero-v199929 .park-detail-breadcrumb strong{color:#fff}
.park-detail-main-compact{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:28px;
  width:100%;
}
.park-detail-identity{min-width:0}
.park-detail-brand-compact{
  align-items:center;
  gap:0;
}
.park-detail-title-block{min-width:0}
.park-detail-hero-v199929 .park-detail-title-block>.eyebrow{
  color:#f08a47;
  font-size:.64rem;
  letter-spacing:.105em;
}
.park-detail-hero-v199929 .park-detail-brand h1{
  width:fit-content;
  max-width:min(850px,68vw);
  margin:4px 0 8px;
  color:#fff;
  font-size:clamp(2.75rem,4.4vw,4.55rem);
  line-height:.92;
  letter-spacing:-.052em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.park-detail-hero-v199929 .park-detail-brand h1.is-name-long{
  font-size:clamp(2.45rem,3.9vw,4rem);
  max-width:min(720px,60vw);
}
.park-detail-hero-v199929 .park-detail-brand h1.is-name-very-long{
  font-size:clamp(2.15rem,3.35vw,3.45rem);
  max-width:min(760px,62vw);
  line-height:.96;
}
.park-detail-status-compact{
  gap:7px;
  margin-top:2px;
}
.park-detail-status-compact .status-pill{
  padding:5px 9px;
  background:rgba(11,20,22,.64);
  border-color:rgba(255,255,255,.13);
  color:rgba(255,255,255,.72);
  font-size:.58rem;
}
.park-detail-status-compact .status-pill.is-open{
  color:#66dfa0;
  border-color:rgba(102,223,160,.25);
  background:rgba(35,113,76,.26);
}
.park-detail-quickfacts{
  display:grid;
  grid-template-columns:minmax(126px,1.45fr) minmax(94px,.9fr) repeat(3,minmax(82px,.72fr));
  gap:7px;
  width:min(690px,100%);
  margin:17px 0 0;
}
.park-detail-quickfact{
  min-width:0;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:13px;
  background:rgba(8,16,18,.58);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
  backdrop-filter:blur(10px);
}
.park-detail-quickfact>span{
  display:block;
  overflow:hidden;
  color:rgba(255,255,255,.54);
  font-size:.54rem;
  font-weight:800;
  letter-spacing:.095em;
  text-transform:uppercase;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.park-detail-quickfact>strong{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:20px;
  margin-top:4px;
  color:#fff;
  font-size:.86rem;
  font-weight:760;
  white-space:nowrap;
}
.park-detail-quickfact.is-live i{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#69716f;
}
.park-detail-quickfact.is-live i.is-on{
  background:#4fd48a;
  box-shadow:0 0 0 4px rgba(79,212,138,.13),0 0 12px rgba(79,212,138,.34);
}
.park-detail-actions-compact{
  position:relative;
  align-items:center;
  align-content:flex-end;
  justify-content:flex-end;
  max-width:610px;
  gap:7px;
  padding-bottom:1px;
}
.park-detail-actions-compact form{display:flex}
.park-detail-actions-compact>.button,
.park-detail-actions-compact>form>.button,
.park-detail-actions-compact>.park-detail-more-menu>.button{
  min-height:41px;
  padding:10px 14px;
  border-radius:12px;
  font-size:.69rem;
  white-space:nowrap;
}
.park-detail-more-menu{
  position:relative;
  z-index:120;
}
.park-detail-more-menu>summary{
  list-style:none;
  cursor:pointer;
}
.park-detail-more-menu>summary::-webkit-details-marker{display:none}
.park-detail-more-trigger{
  width:44px;
  min-width:44px;
  justify-content:center;
  padding-inline:0!important;
  font-size:.9rem!important;
  letter-spacing:.08em;
}
.park-detail-more-menu[open]>.park-detail-more-trigger{
  border-color:color-mix(in srgb,var(--cw-brass) 55%,var(--cw-line));
  background:color-mix(in srgb,var(--cw-brass) 9%,var(--cw-surface));
}
.park-detail-more-panel{
  position:absolute;
  z-index:130;
  top:calc(100% + 10px);
  right:0;
  width:min(330px,calc(100vw - 30px));
  max-height:min(68vh,560px);
  overflow:auto;
  padding:8px;
  border:1px solid var(--cw-line-strong);
  border-radius:17px;
  background:color-mix(in srgb,var(--cw-surface-solid) 96%,#061316 4%);
  box-shadow:0 28px 80px rgba(0,0,0,.34);
  animation:cwParkMoreIn .18s ease-out both;
}
.park-detail-more-panel::before{
  content:"";
  position:absolute;
  inset:0 12px auto;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--cw-teal),var(--cw-brass),transparent);
  opacity:.8;
}
@keyframes cwParkMoreIn{
  from{opacity:0;transform:translateY(-5px) scale(.985)}
  to{opacity:1;transform:none}
}
.park-detail-more-head{
  padding:9px 10px 8px;
  color:var(--cw-muted);
  font-size:.59rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.park-detail-more-panel>form{display:block;width:100%}
.park-detail-more-item,
.park-detail-more-panel .community-photo-upload>summary{
  display:flex;
  width:100%;
  min-height:38px;
  align-items:center;
  justify-content:flex-start;
  padding:9px 10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--cw-text);
  font:inherit;
  font-size:.7rem;
  font-weight:700;
  line-height:1.25;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
}
.park-detail-more-item:hover,
.park-detail-more-panel .community-photo-upload>summary:hover{
  background:var(--cw-bg-soft);
  color:var(--cw-brass);
}
.park-detail-more-item.is-active{color:var(--cw-copper)}
.park-detail-more-item-admin{
  margin-bottom:4px;
  border-bottom:1px solid var(--cw-line);
  border-radius:10px 10px 4px 4px;
  color:var(--cw-copper);
}
.park-detail-more-item.is-done{
  color:var(--cw-success);
  cursor:default;
}
.park-more-plan-details>summary,
.park-detail-more-panel .community-photo-upload>summary{list-style:none}
.park-more-plan-details>summary::-webkit-details-marker,
.park-detail-more-panel .community-photo-upload>summary::-webkit-details-marker{display:none}
.park-detail-more-panel .visit-plan-form,
.park-detail-more-panel .community-photo-upload-panel{
  position:relative;
  inset:auto;
  width:100%;
  max-width:none;
  max-height:none;
  margin:4px 0 7px;
  box-shadow:none;
  border-radius:13px;
  background:var(--cw-bg);
  overflow:visible;
}
.park-detail-more-panel .visit-plan-form{grid-template-columns:1fr;padding:12px}
.park-detail-more-panel .visit-plan-notes,
.park-detail-more-panel .visit-plan-form .button{grid-column:auto}
.park-detail-more-panel .community-photo-upload{position:relative;width:100%}
.park-detail-more-panel .community-photo-upload-panel{padding:13px}
.park-detail-more-panel .community-photo-upload-head .eyebrow{font-size:.55rem}
.park-detail-more-panel .community-photo-upload-head p{font-size:.67rem}

@media(max-width:1180px){
  .park-detail-main-compact{grid-template-columns:1fr;gap:18px}
  .park-detail-actions-compact{justify-content:flex-start;max-width:none;margin-left:0}
  .park-detail-hero-v199929 .park-detail-brand h1,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-long,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-very-long{max-width:min(850px,calc(100vw - 180px))}
}
@media(max-width:820px){
  .park-detail-hero-v199929{min-height:auto}
  .park-detail-hero-v199929 .park-detail-hero-content{padding-top:24px;padding-bottom:24px}
  .park-detail-hero-v199929 .park-detail-breadcrumb{margin-bottom:14px}
  .park-detail-brand-compact{align-items:flex-start;gap:0}
  .park-detail-hero-v199929 .park-detail-brand h1,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-long,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-very-long{
    max-width:calc(100vw - 48px);
    font-size:clamp(2.15rem,8vw,3.35rem);
    line-height:.95;
  }
  .park-detail-quickfacts{margin-left:0;grid-template-columns:1.35fr 1fr 1fr 1fr 1fr}
  .park-detail-actions-compact{margin-left:0}
}
@media(max-width:640px){
  .park-detail-hero-v199929.has-media{background-position:center}
  .park-detail-hero-v199929 .park-detail-breadcrumb{font-size:.62rem}
  .park-detail-hero-v199929 .park-detail-title-block>.eyebrow{font-size:.57rem}
  .park-detail-status-compact .status-pill{font-size:.53rem}
  .park-detail-quickfacts{
    grid-template-columns:1fr 1fr;
    gap:6px;
    margin-top:14px;
  }
  .park-detail-quickfact{padding:8px 10px}
  .park-detail-quickfact.is-live{grid-column:1/-1}
  .park-detail-actions-compact{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
    gap:7px;
  }
  .park-detail-actions-compact>.button,
  .park-detail-actions-compact>form,
  .park-detail-actions-compact>form>.button{width:100%}
  .park-detail-actions-compact>.button,
  .park-detail-actions-compact>form>.button{text-align:center;justify-content:center}
  .park-detail-more-menu{width:100%}
  .park-detail-more-trigger{width:100%!important}
  .park-detail-more-panel{
    position:fixed;
    inset:auto 10px 12px;
    width:auto;
    max-height:72vh;
    border-radius:19px;
  }
}
@media(max-width:420px){
  .park-detail-hero-v199929 .park-detail-brand h1,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-long,
  .park-detail-hero-v199929 .park-detail-brand h1.is-name-very-long{max-width:calc(100vw - 36px);font-size:clamp(1.95rem,10.5vw,2.7rem)}
  .park-detail-actions-compact{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .park-detail-more-panel{animation:none}
}
.park-detail-actions-compact>.button,
.park-detail-actions-compact>form,
.park-detail-actions-compact>.park-detail-more-menu{flex:0 0 auto}

/* v1.99.9.30 — Park hero polish
   Moins d'espace mort sous le header + suivi du parc en bouton coeur compact. */
.park-detail-hero-v199930{
  min-height:318px;
}
.park-detail-hero-v199930 .park-detail-hero-content{
  padding-top:18px;
  padding-bottom:22px;
}
.park-detail-hero-v199930 .park-detail-breadcrumb{
  margin-bottom:12px;
}
.park-detail-hero-v199930 .park-detail-quickfacts{
  margin-top:13px;
}
.park-detail-utility-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
}
.park-detail-follow-form{
  display:flex;
  margin:0;
}
.park-detail-follow-button{
  width:44px;
  min-width:44px;
  min-height:41px;
  padding:0!important;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.76);
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.park-detail-follow-button svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:fill .16s ease,transform .16s ease;
}
.park-detail-follow-button:hover{
  color:#f08a47;
  border-color:rgba(240,138,71,.48);
  background:rgba(240,138,71,.09);
  transform:translateY(-1px);
}
.park-detail-follow-button:hover svg{transform:scale(1.07)}
.park-detail-follow-button.is-active{
  color:#f08a47;
  border-color:rgba(240,138,71,.52);
  background:rgba(240,138,71,.12);
  box-shadow:0 0 0 3px rgba(240,138,71,.055);
}
.park-detail-follow-button.is-active svg{
  fill:currentColor;
}
.park-detail-utility-actions .park-detail-more-trigger{
  min-height:41px;
}

@media(max-width:1180px){
  .park-detail-hero-v199930{min-height:300px}
}
@media(max-width:820px){
  .park-detail-hero-v199930{min-height:auto}
  .park-detail-hero-v199930 .park-detail-hero-content{padding-top:18px;padding-bottom:22px}
  .park-detail-hero-v199930 .park-detail-breadcrumb{margin-bottom:10px}
}
@media(max-width:640px){
  .park-detail-utility-actions{
    grid-column:1/-1;
    justify-content:flex-end;
    width:100%;
  }
  .park-detail-actions-compact>.park-detail-utility-actions{width:100%}
  .park-detail-utility-actions .park-detail-more-menu{width:auto}
  .park-detail-utility-actions .park-detail-more-trigger{width:44px!important;min-width:44px}
  .park-detail-follow-form{width:auto!important}
  .park-detail-follow-button{width:44px!important;min-width:44px}
}
@media(prefers-reduced-motion:reduce){
  .park-detail-follow-button,
  .park-detail-follow-button svg{transition:none}
}


/* Global back-to-top control — v1.101.2 */
.cw-back-to-top{
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:1400;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid color-mix(in srgb,var(--cw-line-strong) 78%,transparent);
  border-radius:50%;
  background:color-mix(in srgb,var(--cw-surface-solid) 86%,transparent);
  color:var(--cw-text);
  box-shadow:0 8px 24px rgba(0,0,0,.14);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px) scale(.94);
  transition:opacity .18s ease,visibility .18s ease,transform .18s ease,border-color .18s ease,background-color .18s ease;
}
.cw-back-to-top.is-visible{
  opacity:.82;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.cw-back-to-top svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cw-back-to-top:hover{
  opacity:1;
  border-color:var(--cw-copper);
  background:var(--cw-surface-solid);
}
.cw-back-to-top:focus-visible{
  opacity:1;
  outline:2px solid var(--cw-copper);
  outline-offset:3px;
}
@media(max-width:640px){
  .cw-back-to-top{
    right:max(12px,env(safe-area-inset-right));
    bottom:max(14px,env(safe-area-inset-bottom));
    width:40px;
    height:40px;
    box-shadow:0 6px 18px rgba(0,0,0,.13);
  }
  .cw-back-to-top svg{width:18px;height:18px}
}
@media(prefers-reduced-motion:reduce){
  .cw-back-to-top{transition:none;transform:none}
}
/* Home park discovery cards — v1.102.5 */
.discover-park-card-section { overflow:hidden; }
.discover-heading-cards { align-items:flex-end; }
.discover-heading-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:12px 18px; }
.discover-shuffle-button { display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:8px 12px; border:1px solid var(--cw-line); border-radius:999px; background:var(--cw-surface); color:var(--cw-text); cursor:pointer; font-size:.72rem; font-weight:800; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.discover-shuffle-button:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line)); background:var(--cw-surface-solid); }
.discover-shuffle-button>span:first-child { color:var(--cw-copper); font-size:1rem; line-height:1; }
.discover-park-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:28px; }
.discover-park-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--cw-line); border-radius:22px; background:var(--cw-surface); box-shadow:0 16px 42px rgba(52,43,31,.08); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.discover-park-card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--cw-copper) 48%,var(--cw-line)); box-shadow:var(--cw-shadow); }
.discover-park-visual { position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--cw-copper) 28%,transparent),transparent 42%),linear-gradient(145deg,var(--cw-surface-2),var(--cw-bg-soft)); }
.discover-park-visual img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.discover-park-card:hover .discover-park-visual img { transform:scale(1.035); }
.discover-park-placeholder { position:absolute; inset:0; display:grid; place-items:center; color:color-mix(in srgb,var(--cw-copper) 75%,var(--cw-text)); font:800 2rem/1 Georgia,serif; letter-spacing:.08em; }
.discover-park-image-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(9,11,10,.05) 26%,rgba(9,11,10,.42) 100%); pointer-events:none; }
.discover-park-status { position:absolute; left:12px; top:12px; display:inline-flex; align-items:center; gap:7px; max-width:calc(100% - 24px); padding:6px 9px; border:1px solid rgba(255,255,255,.24); border-radius:999px; color:#fff; background:rgba(18,21,20,.68); backdrop-filter:blur(8px); font-size:.6rem; font-weight:850; letter-spacing:.02em; white-space:nowrap; }
.discover-park-status i { width:7px; height:7px; flex:0 0 auto; border-radius:50%; background:#a3aaa5; box-shadow:0 0 0 4px rgba(163,170,165,.14); }
.discover-park-status.is-open i { background:#3ec98e; box-shadow:0 0 0 4px rgba(62,201,142,.16); }
.discover-park-status.is-opening_later i { background:#e4aa52; box-shadow:0 0 0 4px rgba(228,170,82,.16); }
.discover-park-status.is-closed i { background:#e46b62; box-shadow:0 0 0 4px rgba(228,107,98,.16); }
.discover-park-body { flex:1; display:grid; align-content:start; padding:16px; }
.discover-park-intro { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.discover-park-intro>span { min-width:0; display:grid; gap:4px; }
.discover-park-intro small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--cw-muted); font-size:.63rem; }
.discover-park-intro strong { overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; font:700 1.08rem/1.12 Georgia,serif; }
.discover-park-intro b { color:var(--cw-copper); font-size:1rem; }
.discover-park-hours { margin-top:14px; padding-top:12px; display:grid; gap:2px; border-top:1px solid var(--cw-line); }
.discover-park-hours small { color:var(--cw-muted); font-size:.58rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.discover-park-hours strong { font-size:.78rem; }
.discover-park-stats { margin-top:12px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.discover-park-stats>span { min-width:0; padding:8px 9px; display:grid; gap:1px; border-radius:12px; background:color-mix(in srgb,var(--cw-bg-soft) 72%,transparent); color:var(--cw-muted); font-size:.57rem; line-height:1.2; }
.discover-park-stats strong { color:var(--cw-text); font-size:.88rem; }
@media(max-width:1080px){.discover-park-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.discover-heading-cards{align-items:flex-start}.discover-heading-actions{width:100%;justify-content:space-between}.discover-park-cards{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;margin-inline:-20px;padding:2px 20px 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.discover-park-cards::-webkit-scrollbar{display:none}.discover-park-card{flex:0 0 min(84vw,320px);scroll-snap-align:start}.discover-park-visual{aspect-ratio:16/9}.discover-shuffle-button{min-height:36px;padding:7px 10px}}
.discover-park-cards.is-loading { opacity:.62; transition:opacity .18s ease; }
.discover-shuffle-button:disabled { opacity:.55; cursor:wait; transform:none; }


/* v1.102.6 — home catalogue stats */
.hero-proof {
    position: relative;
    z-index: 4;
    display: block;
    width: 100%;
    max-width: 680px;
    margin-top: 28px;
    padding: 14px;
    border: 1px solid color-mix(in srgb, var(--cw-copper) 22%, var(--cw-line));
    border-radius: 20px;
    background:
        radial-gradient(circle at 0 0, color-mix(in srgb, var(--cw-copper) 11%, transparent), transparent 46%),
        color-mix(in srgb, var(--cw-surface-solid) 94%, transparent);
    box-shadow: 0 18px 46px color-mix(in srgb, #000 15%, transparent), inset 0 1px 0 color-mix(in srgb, #fff 6%, transparent);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    overflow: hidden;
}
.hero-proof::after {
    content: \"\";
    position: absolute;
    inset: 0 auto auto 0;
    width: 42%;
    height: 2px;
    background: linear-gradient(90deg, var(--cw-copper), transparent);
    pointer-events: none;
}
.hero-proof-head {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 24px;
    padding: 0 4px 11px;
    color: var(--cw-muted);
    font-size: .6rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.hero-proof-mark {
    width: 7px;
    height: 7px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--cw-copper);
    box-shadow: 0 0 0 5px color-mix(in srgb, var(--cw-copper) 11%, transparent);
}
.hero-proof-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid var(--cw-line);
    border-radius: 14px;
    background: color-mix(in srgb, var(--cw-bg) 44%, transparent);
    overflow: hidden;
}
.hero-proof-stat {
    min-width: 0;
    padding: 14px 15px 13px;
    border-right: 1px solid var(--cw-line);
    text-align: left;
}
.hero-proof-stat:last-child { border-right: 0; }
.hero-proof-stat strong,
.hero-proof-stat span { display: block; }
.hero-proof-stat strong {
    color: var(--cw-text);
    font-family: Georgia, serif;
    font-size: clamp(1.45rem, 2vw, 1.8rem);
    line-height: 1;
    letter-spacing: -.02em;
}
.hero-proof-stat span {
    margin-top: 6px;
    color: var(--cw-muted);
    font-size: .56rem;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: .07em;
    text-transform: uppercase;
}
@media (max-width: 1080px) {
    .hero-proof { max-width: 720px; }
    .hero-proof-head { justify-content: center; }
    .hero-proof-stat { text-align: center; }
}
@media (max-width: 720px) {
    .hero-proof {
        max-width: 100%;
        margin-top: 22px !important;
        margin-bottom: 16px;
        padding: 11px;
        border-radius: 18px;
        background:
            radial-gradient(circle at 0 0, color-mix(in srgb, var(--cw-copper) 9%, transparent), transparent 44%),
            color-mix(in srgb, var(--cw-surface-solid) 97%, transparent);
        box-shadow: 0 14px 34px color-mix(in srgb, #000 18%, transparent);
    }
    .hero-proof-head {
        justify-content: flex-start;
        padding: 1px 4px 10px;
        font-size: .57rem;
    }
    .hero-proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hero-proof-stat {
        min-height: 76px;
        padding: 13px 10px 12px;
        border-right: 1px solid var(--cw-line);
        border-bottom: 1px solid var(--cw-line);
        text-align: left;
    }
    .hero-proof-stat:nth-child(2n) { border-right: 0; }
    .hero-proof-stat:nth-last-child(-n + 2) { border-bottom: 0; }
    .hero-proof-stat strong { font-size: 1.55rem; }
    .hero-proof-stat span { margin-top: 5px; font-size: .56rem; }
}
@media (max-width: 420px) {
    .hero-proof { padding: 10px; border-radius: 16px; }
    .hero-proof-stat { min-height: 72px; padding: 12px 9px 11px; }
    .hero-proof-stat strong { font-size: 1.45rem; }
    .hero-proof-stat span { font-size: .53rem; letter-spacing: .055em; }
}

/* v1.102.7 — animated catalogue stats + mobile placement below globe */
@media (max-width: 720px) {
    .hero-proof.is-mobile-detached {
        position: relative;
        z-index: 5;
        width: calc(100% - 32px);
        max-width: 620px;
        margin: 16px auto 22px !important;
        box-sizing: border-box;
    }
}
@media (max-width: 420px) {
    .hero-proof.is-mobile-detached {
        width: calc(100% - 24px);
        margin-top: 12px !important;
        margin-bottom: 18px !important;
    }
}
.hero-proof-stat strong.is-counting {
    font-variant-numeric: tabular-nums;
}

/* Home personal adventure — v1.105.0 */
.home-adventure-section{padding-top:32px;padding-bottom:16px}
.home-adventure-shell{display:grid;gap:18px;padding:clamp(18px,2.4vw,28px);border:1px solid var(--cw-line);border-radius:28px;background:radial-gradient(circle at 82% 0%,color-mix(in srgb,var(--cw-teal) 8%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--cw-surface) 96%,var(--cw-copper) 4%),var(--cw-surface));box-shadow:0 18px 52px rgba(0,0,0,.05)}
.home-adventure-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.home-adventure-head h2{margin:.28rem 0 .35rem;font-size:clamp(1.55rem,2.6vw,2.35rem)}.home-adventure-head p{max-width:720px;margin:0;color:var(--cw-muted);font-size:.76rem;line-height:1.55}
.home-adventure-overview{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.25fr);gap:12px}
.home-adventure-level{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid color-mix(in srgb,var(--cw-copper) 30%,var(--cw-line));border-radius:20px;background:linear-gradient(120deg,color-mix(in srgb,var(--cw-copper) 7%,var(--cw-bg)),color-mix(in srgb,var(--cw-teal) 4%,var(--cw-bg)));color:var(--cw-text);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.home-adventure-level:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cw-copper) 55%,var(--cw-line));box-shadow:0 12px 30px rgba(0,0,0,.07)}
.home-adventure-level-orb{display:grid;place-items:center;width:66px;height:66px;border:1px solid color-mix(in srgb,var(--cw-copper) 45%,var(--cw-line));border-radius:50%;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--cw-copper) 20%,var(--cw-surface)),var(--cw-bg));box-shadow:inset 0 0 0 5px color-mix(in srgb,var(--cw-copper) 5%,transparent)}.home-adventure-level-orb small{font-size:.48rem;font-weight:950;letter-spacing:.08em;color:var(--cw-muted)}.home-adventure-level-orb strong{margin-top:-5px;color:var(--cw-copper);font-size:1.75rem;line-height:1}
.home-adventure-level-copy{display:grid;gap:3px}.home-adventure-level-copy>small{color:var(--cw-copper);font-size:.58rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.home-adventure-level-copy>strong{font-size:1rem}.home-adventure-level-copy>em{color:var(--cw-muted);font-size:.56rem;font-style:normal}.home-adventure-level>b{color:var(--cw-copper)}
.home-adventure-level progress,.home-adventure-feature progress,.home-adventure-continue-copy progress{display:block;width:100%;height:5px;border:0;border-radius:999px;overflow:hidden;background:var(--cw-line)}.home-adventure-level progress::-webkit-progress-bar,.home-adventure-feature progress::-webkit-progress-bar,.home-adventure-continue-copy progress::-webkit-progress-bar{background:var(--cw-line);border-radius:999px}.home-adventure-level progress::-webkit-progress-value,.home-adventure-feature progress::-webkit-progress-value,.home-adventure-continue-copy progress::-webkit-progress-value{background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));border-radius:999px}.home-adventure-level progress::-moz-progress-bar,.home-adventure-feature progress::-moz-progress-bar,.home-adventure-continue-copy progress::-moz-progress-bar{background:linear-gradient(90deg,var(--cw-copper),var(--cw-teal));border-radius:999px}
.home-adventure-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid var(--cw-line);border-radius:20px;background:var(--cw-bg)}.home-adventure-stats>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;padding:14px 16px}.home-adventure-stats>div+div{border-left:1px solid var(--cw-line)}.home-adventure-stats>div>span{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--cw-line);border-radius:11px;color:var(--cw-copper);font-size:1rem}.home-adventure-stats strong{font-size:1.25rem;line-height:1}.home-adventure-stats small{margin-top:3px;color:var(--cw-muted);font-size:.54rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.home-adventure-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.72fr);gap:12px;align-items:stretch}
.home-adventure-feature{position:relative;isolation:isolate;display:block;min-height:300px;overflow:hidden;border:1px solid var(--cw-line);border-radius:24px;background:radial-gradient(circle at 78% 24%,color-mix(in srgb,var(--cw-copper) 18%,transparent),transparent 33%),linear-gradient(145deg,color-mix(in srgb,var(--cw-teal) 8%,var(--cw-bg)),var(--cw-bg));color:#fff}.home-adventure-feature>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.home-adventure-feature:hover>img{transform:scale(1.025)}.home-adventure-feature-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,10,10,.66) 0%,rgba(8,10,10,.34) 48%,rgba(8,10,10,.10) 100%),linear-gradient(0deg,rgba(8,10,10,.30),transparent 68%)}.home-adventure-feature:not(.has-image) .home-adventure-feature-shade{background:linear-gradient(120deg,color-mix(in srgb,var(--cw-copper) 12%,#111),color-mix(in srgb,var(--cw-teal) 8%,#111))}
.home-adventure-feature-body{display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;padding:clamp(20px,3vw,30px);max-width:660px}.home-adventure-feature-kicker{align-self:flex-start;padding:6px 9px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(8,10,10,.45);font-size:.56rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(8px)}.home-adventure-feature-body>strong{margin-top:10px;font-family:Georgia,serif;font-size:clamp(1.55rem,3.4vw,2.55rem);line-height:1.02}.home-adventure-feature-meta{margin-top:5px;color:rgba(255,255,255,.76);font-size:.68rem}.home-adventure-progress-copy{display:flex;justify-content:space-between;gap:16px;margin-top:20px;font-size:.62rem}.home-adventure-progress-copy b{color:#fff}.home-adventure-feature progress{margin-top:7px;background:rgba(255,255,255,.15)}.home-adventure-feature progress::-webkit-progress-bar{background:rgba(255,255,255,.15)}.home-adventure-completed{align-self:flex-start;margin-top:18px;padding:7px 10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(15,125,93,.7);font-size:.62rem;font-weight:900}.home-adventure-feature-action{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:.68rem;font-weight:900}.home-adventure-feature-action b{color:var(--cw-copper)}
.home-adventure-continue{display:grid;grid-template-rows:auto 1fr;gap:11px;padding:16px;border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-bg)}.home-adventure-continue-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-adventure-continue-head small{display:block;color:var(--cw-copper);font-size:.53rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.home-adventure-continue-head h3{margin:3px 0 0;font-size:.94rem}.home-adventure-continue-head>a{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--cw-line);border-radius:10px;color:var(--cw-copper)}
.home-adventure-continue-list{display:grid;gap:8px}.home-adventure-continue-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--cw-line);border-radius:16px;background:var(--cw-surface);color:var(--cw-text);transition:transform .16s ease,border-color .16s ease}.home-adventure-continue-list>a:hover{transform:translateX(2px);border-color:color-mix(in srgb,var(--cw-copper) 36%,var(--cw-line))}.home-adventure-continue-score{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--cw-copper) 30%,var(--cw-line));border-radius:13px;color:var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 6%,var(--cw-bg));font-size:.7rem;font-weight:950}.home-adventure-continue-list>a.is-complete .home-adventure-continue-score{color:var(--cw-teal);border-color:color-mix(in srgb,var(--cw-teal) 32%,var(--cw-line));background:color-mix(in srgb,var(--cw-teal) 7%,var(--cw-bg))}.home-adventure-continue-copy{display:grid;gap:3px;min-width:0}.home-adventure-continue-copy strong,.home-adventure-continue-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-adventure-continue-copy strong{font-size:.72rem}.home-adventure-continue-copy small{color:var(--cw-muted);font-size:.55rem}.home-adventure-continue-copy progress{margin-top:3px;height:4px}.home-adventure-continue-list>a>b{color:var(--cw-copper)}.home-adventure-continue-empty{display:grid;place-items:center;align-content:center;gap:7px;padding:20px;text-align:center;border:1px dashed var(--cw-line);border-radius:16px;color:var(--cw-muted)}.home-adventure-continue-empty>span{color:var(--cw-copper);font-size:1.4rem}.home-adventure-continue-empty p{margin:0;font-size:.62rem;line-height:1.45}
.home-adventure-live{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:11px 13px;border:1px solid color-mix(in srgb,var(--cw-teal) 25%,var(--cw-line));border-radius:16px;background:color-mix(in srgb,var(--cw-teal) 6%,var(--cw-bg));color:var(--cw-text)}.home-adventure-live>span{display:inline-flex;align-items:center;gap:7px;color:var(--cw-teal);font-size:.57rem;font-weight:900}.home-adventure-live>span i{width:7px;height:7px;border-radius:50%;background:var(--cw-teal);box-shadow:0 0 0 4px color-mix(in srgb,var(--cw-teal) 14%,transparent)}.home-adventure-live>strong{font-size:.72rem}.home-adventure-live>small{color:var(--cw-muted);font-size:.59rem}.home-adventure-live>b{color:var(--cw-copper)}
.home-adventure-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:20px;border:1px dashed var(--cw-line-strong);border-radius:20px;background:var(--cw-bg)}.home-adventure-empty>span{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--cw-line);border-radius:15px;color:var(--cw-copper);font-size:1.3rem}.home-adventure-empty strong{font-size:.84rem}.home-adventure-empty p{margin:4px 0 0;color:var(--cw-muted);font-size:.64rem;line-height:1.5}
@media(max-width:900px){.home-adventure-overview,.home-adventure-content{grid-template-columns:1fr}.home-adventure-feature{min-height:280px}.home-adventure-feature-body{min-height:280px}.home-adventure-continue-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.home-adventure-section{padding-top:18px}.home-adventure-shell{gap:14px;padding:15px;border-radius:22px}.home-adventure-head{align-items:flex-start;flex-direction:column;gap:12px}.home-adventure-head .button{width:100%;text-align:center}.home-adventure-overview{gap:9px}.home-adventure-level{grid-template-columns:auto minmax(0,1fr) auto;padding:11px 12px}.home-adventure-level-orb{width:56px;height:56px}.home-adventure-level-orb strong{font-size:1.45rem}.home-adventure-stats>div{grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:center;text-align:center;padding:11px 6px}.home-adventure-stats>div>span{grid-row:auto;width:28px;height:28px;margin-bottom:5px}.home-adventure-stats strong{font-size:1.05rem}.home-adventure-stats small{font-size:.48rem;line-height:1.25}.home-adventure-feature,.home-adventure-feature-body{min-height:265px}.home-adventure-feature-shade{background:linear-gradient(0deg,rgba(8,10,10,.66) 0%,rgba(8,10,10,.32) 58%,rgba(8,10,10,.08) 100%)}.home-adventure-feature-body{padding:18px}.home-adventure-continue{padding:13px}.home-adventure-continue-list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(235px,82vw);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:3px;overscroll-behavior-inline:contain}.home-adventure-continue-list>a{scroll-snap-align:start}.home-adventure-live{grid-template-columns:minmax(0,1fr) auto}.home-adventure-live>span,.home-adventure-live>strong,.home-adventure-live>small{grid-column:1}.home-adventure-live>b{grid-column:2;grid-row:1/4}.home-adventure-empty{grid-template-columns:auto minmax(0,1fr)}.home-adventure-empty .button{grid-column:1/-1;width:100%}}
@media(max-width:420px){.home-adventure-shell{padding:13px}.home-adventure-level-orb{width:52px;height:52px}.home-adventure-level-copy>strong{font-size:.88rem}.home-adventure-level-copy>em{font-size:.51rem}.home-adventure-stats{border-radius:16px}.home-adventure-stats>div{padding:10px 4px}.home-adventure-feature,.home-adventure-feature-body{min-height:250px}.home-adventure-feature-body>strong{font-size:1.55rem}.home-adventure-progress-copy{font-size:.56rem}.home-adventure-continue-list{grid-auto-columns:minmax(225px,86vw)}}

/* v1.105.1 — park imagery + full attraction progression on home adventure */
.home-adventure-continue-list > a.has-image {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 104px;
    color: #fff;
    background: #111;
}
.home-adventure-continue-image {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .28s ease;
}
.home-adventure-continue-list > a.has-image:hover .home-adventure-continue-image {
    transform: scale(1.035);
}
.home-adventure-continue-shade {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(7, 9, 9, .62) 0%, rgba(7, 9, 9, .38) 58%, rgba(7, 9, 9, .16) 100%), linear-gradient(0deg, rgba(7, 9, 9, .20), transparent 72%);
}
.home-adventure-continue-list > a.has-image .home-adventure-continue-score {
    color: #fff;
    border-color: rgba(255, 255, 255, .28);
    background: rgba(8, 10, 10, .54);
    backdrop-filter: blur(7px);
}
.home-adventure-continue-list > a.has-image.is-complete .home-adventure-continue-score {
    color: #8de2cc;
    border-color: rgba(141, 226, 204, .42);
    background: rgba(8, 44, 35, .58);
}
.home-adventure-continue-list > a.has-image .home-adventure-continue-copy small {
    color: rgba(255, 255, 255, .76);
}
.home-adventure-continue-list > a.has-image .home-adventure-continue-copy progress {
    background: rgba(255, 255, 255, .2);
}
.home-adventure-continue-list > a.has-image .home-adventure-continue-copy progress::-webkit-progress-bar {
    background: rgba(255, 255, 255, .2);
}


/* v1.105.2 — brighter park imagery while preserving text readability */
.home-adventure-feature-body { text-shadow: 0 1px 12px rgba(0,0,0,.34); }
.home-adventure-feature-body progress, .home-adventure-feature-body .home-adventure-feature-action { text-shadow: none; }
.home-adventure-continue-list > a.has-image .home-adventure-continue-copy { text-shadow: 0 1px 8px rgba(0,0,0,.32); }
.home-adventure-continue-list > a.has-image > b { text-shadow: 0 1px 8px rgba(0,0,0,.32); }

/* v1.105.3 — Drawer mobile réellement fixé au viewport, quel que soit le scroll. */
@media (max-width: 1270px) {
    .cw-mobile-navigation {
        position: fixed;
        inset: 0 0 0 auto;
        z-index: 1500;
        width: min(390px, 100vw);
        height: 100vh;
        height: 100dvh;
        max-height: 100dvh;
        box-sizing: border-box;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        padding-top: max(14px, env(safe-area-inset-top));
        padding-right: max(14px, env(safe-area-inset-right));
        padding-bottom: max(14px, env(safe-area-inset-bottom));
    }
}

/* v1.105.10 — minimalist static homepage backgrounds */
.world-explorer-hero {
    isolation: isolate;
    background: var(--cw-bg);
}

.home-static-backdrop {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url('/images/home/home-hero-light-v110510.webp');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.home-static-backdrop::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.10) 34%, rgba(255,255,255,.02) 67%, rgba(255,255,255,.05) 100%),
        linear-gradient(180deg, rgba(255,255,255,.02) 0%, transparent 58%, rgba(245,240,232,.10) 100%);
}

html[data-theme="dark"] .home-static-backdrop {
    background-image: url('/images/home/home-hero-dark-v110510.webp');
}

html[data-theme="dark"] .home-static-backdrop::after {
    background:
        linear-gradient(90deg, rgba(3,8,12,.24) 0%, rgba(3,8,12,.12) 36%, rgba(3,8,12,.03) 68%, rgba(3,8,12,.07) 100%),
        linear-gradient(180deg, rgba(0,0,0,.04) 0%, transparent 50%, rgba(0,0,0,.08) 100%);
}

.world-explorer-hero .hero-layout {
    position: relative;
    z-index: 2;
}

@media (max-width: 1080px) {
    .home-static-backdrop {
        background-position: 58% center;
    }
}

@media (max-width: 720px) {
    .home-static-backdrop {
        background-position: 64% center;
    }

    .home-static-backdrop::after {
        background:
            linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.06) 42%, rgba(255,255,255,.10) 100%),
            linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.03) 100%);
    }

    html[data-theme="dark"] .home-static-backdrop::after {
        background:
            linear-gradient(180deg, rgba(3,8,12,.22) 0%, rgba(3,8,12,.06) 42%, rgba(3,8,12,.14) 100%),
            linear-gradient(90deg, rgba(3,8,12,.16) 0%, rgba(3,8,12,.03) 100%);
    }
}

/* v1.106.1 — Affichage/masquage sécurisé des champs mot de passe */
.auth-password-field{
    position:relative;
    width:100%;
}
.auth-password-field>input{
    width:100%;
    padding-right:50px!important;
}
.auth-password-toggle{
    position:absolute;
    top:50%;
    right:7px;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:1px solid transparent;
    border-radius:10px;
    background:transparent;
    color:var(--cw-muted);
    cursor:pointer;
    transform:translateY(-50%);
    transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease;
}
.auth-password-toggle:hover,
.auth-password-toggle:focus-visible{
    color:var(--cw-text);
    border-color:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 32%,var(--cw-line));
    background:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 8%,var(--cw-surface));
    outline:none;
}
.auth-password-toggle:active{transform:translateY(-50%) scale(.94)}
.auth-password-toggle[aria-pressed="true"]{
    color:var(--cw-wayfinding-cyan,#42c7d8);
    background:color-mix(in srgb,var(--cw-wayfinding-cyan,#42c7d8) 9%,var(--cw-surface));
}
.auth-password-toggle-icon{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.auth-password-toggle-icon--hide{display:none}
.auth-password-toggle[aria-pressed="true"] .auth-password-toggle-icon--show{display:none}
.auth-password-toggle[aria-pressed="true"] .auth-password-toggle-icon--hide{display:block}
@media(prefers-reduced-motion:reduce){
    .auth-password-toggle{transition:none!important}
}

/* v1.113.5 — Bannière parc plus lumineuse
   Réduit les voiles sombres globaux et conserve la lisibilité du contenu
   grâce à une ombre légère sur les textes. */
.park-detail-hero-v199930.has-media{
  background-image:
    linear-gradient(90deg,rgba(5,10,13,.58) 0%,rgba(5,10,13,.34) 42%,rgba(5,10,13,.12) 76%,rgba(5,10,13,.04) 100%),
    var(--park-hero-image);
}
.park-detail-hero-v199930 .park-detail-hero-shade{
  height:50%;
  background:linear-gradient(
    to bottom,
    transparent 0%,
    rgba(7,12,12,.08) 35%,
    rgba(7,12,12,.34) 72%,
    var(--cw-bg) 100%
  );
}
.park-detail-hero-v199930 .park-detail-breadcrumb,
.park-detail-hero-v199930 .park-detail-title-block>.eyebrow,
.park-detail-hero-v199930 .park-detail-brand h1,
.park-detail-hero-v199930 .park-detail-status{
  text-shadow:0 2px 16px rgba(0,0,0,.72);
}



/* v1.113.6 — Public park identity without trademarked logos/initial placeholders. */
.park-detail-hero-v199930 .park-detail-brand-compact{gap:0}
.park-detail-hero-v199930 .park-detail-quickfacts{margin-left:0}
@media(max-width:1180px){
  .park-detail-hero-v199930 .park-detail-actions-compact{margin-left:0}
}


/* Park planning strip — v1.113.16 neutral calendar shell */
.park-planning-section {
    padding-top: 18px;
    padding-bottom: 22px;
}
.park-planning-grid {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(390px, 1.05fr);
    gap: 18px;
    align-items: start;
}
.park-opening-calendar-panel,
.park-planning-grid > .park-today-panel {
    min-width: 0;
    border: 1px solid var(--cw-line-strong);
    border-radius: 18px;
    padding: 14px 16px;
    background: var(--cw-surface);
    box-shadow: 0 14px 34px rgba(0,0,0,.08);
}
.park-opening-calendar-panel {
    border-color: var(--cw-line-strong);
    background: var(--cw-surface);
}
.park-opening-calendar-panel h2,
.park-planning-grid > .park-today-panel h2 {
    margin: 4px 0 0;
    font-size: clamp(1.4rem, 1.9vw, 1.9rem);
}
.park-opening-calendar-panel h2 {
    margin-top: 1px;
    font-size: clamp(1rem, 1.2vw, 1.18rem);
    line-height: 1.05;
}
.park-calendar-heading {
    align-items: end;
    margin-bottom: 8px;
}
.park-calendar-heading .eyebrow { font-size: .55rem; }
.park-calendar-heading-tools {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
    min-width: 0;
}
.park-calendar-range {
    flex: 0 0 auto;
    color: var(--cw-muted);
    font-size: .58rem;
    font-weight: 750;
    white-space: nowrap;
}
.park-calendar-window-form {
    display: flex;
    align-items: center;
    gap: 5px;
}
.park-calendar-window-form label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.park-calendar-window-form select {
    min-width: 150px;
    max-width: 205px;
    height: 28px;
    padding: 0 28px 0 9px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 8px;
    background: var(--cw-surface-2);
    color: var(--cw-text);
    font: inherit;
    font-size: .58rem;
    font-weight: 750;
    cursor: pointer;
}
.park-calendar-window-submit {
    height: 28px;
    padding: 0 9px;
    border: 1px solid color-mix(in srgb, var(--cw-copper) 40%, var(--cw-line-strong));
    border-radius: 8px;
    background: color-mix(in srgb, var(--cw-copper) 10%, var(--cw-surface-2));
    color: var(--cw-text);
    font: inherit;
    font-size: .56rem;
    font-weight: 850;
    cursor: pointer;
}
.park-calendar-window-submit:hover {
    border-color: var(--cw-copper);
}
.park-calendar-frame {
    border: 1px solid var(--cw-line-strong);
    border-radius: 13px;
    padding: 8px;
    background: color-mix(in srgb, var(--cw-surface-2) 38%, var(--cw-surface-solid) 62%);
    box-shadow:
        inset 0 0 0 1px color-mix(in srgb, var(--cw-copper) 10%, transparent),
        0 7px 18px rgba(0,0,0,.055);
}
html[data-theme="dark"] .park-opening-calendar-panel {
    background: var(--cw-surface);
    border-color: var(--cw-line-strong);
}
html[data-theme="dark"] .park-calendar-frame {
    background: color-mix(in srgb, var(--cw-surface-2) 64%, var(--cw-surface-solid) 36%);
    border-color: color-mix(in srgb, var(--cw-line-strong) 78%, var(--cw-text) 22%);
}
.park-calendar-weekdays,
.park-calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    width: 100%;
}
.park-calendar-weekdays {
    gap: 4px;
    margin-bottom: 4px;
}
.park-calendar-weekdays span {
    color: var(--cw-muted);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .055em;
    text-align: center;
    text-transform: uppercase;
}
.park-calendar-grid { gap: 4px; }
.park-calendar-day {
    position: relative;
    min-width: 0;
    min-height: 52px;
    padding: 6px 6px 6px 8px;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--cw-line) 100%, transparent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cw-surface-2) 94%, var(--cw-surface));
}
.park-calendar-day::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: color-mix(in srgb, var(--cw-muted) 70%, transparent);
}
.park-calendar-day.is-open::before { background: #42c978; }
.park-calendar-day.is-closed::before { background: #e47c45; }
.park-calendar-day.is-today {
    border-color: color-mix(in srgb, var(--cw-line) 100%, transparent);
    background: color-mix(in srgb, var(--cw-surface-2) 94%, var(--cw-surface));
}
.park-calendar-day.is-today::after {
    content: "";
    position: absolute;
    left: 7px;
    right: 5px;
    bottom: 3px;
    height: 2px;
    border-radius: 999px;
    background: var(--cw-copper);
    opacity: .9;
}
.park-calendar-day.is-past:not(.is-today) {
    opacity: .54;
    filter: saturate(.65);
}
.park-calendar-date {
    display: flex;
    align-items: baseline;
    gap: 3px;
    margin-bottom: 5px;
    white-space: nowrap;
}
.park-calendar-date time {
    font-family: Georgia, serif;
    font-size: .88rem;
    font-weight: 700;
    line-height: 1;
}
.park-calendar-month {
    color: var(--cw-muted);
    font-size: .46rem;
    font-weight: 800;
    letter-spacing: .02em;
}
.park-calendar-day > strong {
    display: block;
    min-width: 0;
    font-size: .66rem;
    font-weight: 850;
    line-height: 1.08;
}
.park-calendar-day > strong.park-calendar-hours {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    column-gap: 2px;
    row-gap: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}
.park-calendar-hours > span {
    flex: 0 0 auto;
    white-space: nowrap;
}
.park-calendar-hours-more {
    font-size: .88em;
}
.park-calendar-day.is-open > strong { color: #38b96b; }
.park-calendar-day.is-closed > strong { color: #db6f36; }
.park-calendar-today-dot {
    display: inline-block;
    flex: 0 0 auto;
    width: 5px;
    height: 5px;
    margin-left: 1px;
    border-radius: 999px;
    background: var(--cw-copper);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--cw-copper) 14%, transparent);
}
.park-calendar-day.is-today .park-calendar-date time {
    font-weight: 850;
}
.park-planning-grid > .park-today-panel {
    display: flex;
    flex-direction: column;
}
.park-planning-grid .park-today-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.park-today-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--cw-line);
}
.park-today-actions > small { color: var(--cw-muted); font-size: .62rem; }
.park-ticket-button.is-disabled {
    opacity: .38;
    filter: grayscale(.8);
    cursor: not-allowed;
    pointer-events: none;
    box-shadow: none;
}
.park-story-panel-wide { width: 100%; }
.park-story-panel-wide > p { max-width: 900px; }

@media (max-width: 1100px) {
    .park-planning-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .park-planning-grid > .park-today-panel {
        min-width: 0;
    }
}
@media (max-width: 720px) {
    .park-planning-section {
        padding-top: 10px;
        padding-bottom: 14px;
    }
    .park-opening-calendar-panel,
    .park-planning-grid > .park-today-panel {
        border-radius: 14px;
        padding: 10px;
    }
    .park-calendar-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
        margin-bottom: 6px;
    }
    .park-calendar-heading-tools {
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
    }
    .park-opening-calendar-panel h2 {
        font-size: .9rem;
        white-space: nowrap;
    }
    .park-calendar-heading .eyebrow {
        display: none;
    }
    .park-calendar-range {
        margin-left: 0;
        font-size: .46rem;
    }
    .park-calendar-window-form { margin-left: auto; }
    .park-calendar-window-form select {
        min-width: 118px;
        max-width: 145px;
        height: 26px;
        padding-left: 7px;
        font-size: .50rem;
    }
    .park-calendar-window-submit {
        height: 26px;
        padding: 0 7px;
        font-size: .48rem;
    }
    .park-calendar-frame {
        border-radius: 10px;
        padding: 6px;
    }
    .park-calendar-weekdays,
    .park-calendar-grid { gap: 2px; }
    .park-calendar-weekdays { margin-bottom: 3px; }
    .park-calendar-weekdays span { font-size: .45rem; }
    .park-calendar-day {
        min-height: 44px;
        padding: 5px 3px 4px 5px;
        border-radius: 6px;
    }
    .park-calendar-date {
        gap: 2px;
        margin-bottom: 4px;
    }
    .park-calendar-date time { font-size: .76rem; }
    .park-calendar-month { font-size: .35rem; }
    .park-calendar-day > strong { font-size: .54rem; }
    .park-calendar-today-dot {
        width: 4px;
        height: 4px;
    }
    .park-calendar-day.is-today::after {
        left: 5px;
        right: 3px;
        bottom: 2px;
    }
    .park-planning-grid .park-today-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 420px) {
    .park-opening-calendar-panel h2 {
        font-size: .84rem;
    }
    .park-calendar-range {
        font-size: .42rem;
    }
    .park-calendar-heading-tools {
        align-items: stretch;
        flex-direction: column;
    }
    .park-calendar-window-form {
        width: 100%;
        margin-left: 0;
    }
    .park-calendar-window-form select {
        flex: 1 1 auto;
        min-width: 0;
        max-width: none;
    }
    .park-calendar-frame {
        padding: 5px;
        border-radius: 9px;
    }
    .park-calendar-weekdays span { font-size: .41rem; }
    .park-calendar-day {
        min-height: 42px;
        padding: 4px 2px 4px 5px;
    }
    .park-calendar-date time { font-size: .72rem; }
    .park-calendar-day > strong { font-size: .50rem; }
}


/* v1.113.17 — normal hours vs ThemeParks.wiki early-access windows */
.park-early-access {
    margin-top: 9px;
    padding: 7px 9px;
    border: 1px solid color-mix(in srgb, var(--cw-copper) 24%, var(--cw-line));
    border-radius: 9px;
    background: color-mix(in srgb, var(--cw-copper) 6%, var(--cw-surface-2));
}
.park-today-item .park-early-access > span {
    display: block;
    color: var(--cw-copper);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.park-early-access > b {
    display: block;
    margin-top: 3px;
    color: var(--cw-text);
    font-size: .76rem;
    font-weight: 800;
    line-height: 1.2;
}
@media (max-width: 720px) {
    .park-early-access {
        margin-top: 7px;
        padding: 6px 8px;
    }
    .park-early-access > b { font-size: .72rem; }
}

/* v1.113.20 — Community tips on park pages */
.park-community-tips-section {
    padding-top: 14px;
    padding-bottom: 58px;
}
.park-community-tips-shell {
    padding: 26px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 22px;
    background: color-mix(in srgb, var(--cw-surface-solid) 92%, transparent);
    box-shadow: 0 18px 48px color-mix(in srgb, #000 8%, transparent);
}
.park-community-tips-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
}
.park-community-tips-heading > div:first-child { min-width: 0; }
.park-community-tips-heading h2 {
    margin: 5px 0 6px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 3vw, 2.65rem);
    letter-spacing: -.03em;
}
.park-community-tips-heading p {
    max-width: 780px;
    margin: 0;
    color: var(--cw-muted);
}
.community-tip-category-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}
.community-tip-category-chip {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 10px;
    border: 1px solid var(--cw-line);
    border-radius: 999px;
    background: var(--cw-bg-soft);
    font-size: .76rem;
}
.community-tip-category-chip i { font-style: normal; }
.community-tip-category-chip b { font-weight: 800; }
.community-tip-category-chip em {
    min-width: 21px;
    height: 21px;
    display: grid;
    place-items: center;
    padding-inline: 5px;
    border-radius: 999px;
    background: var(--cw-surface-solid);
    color: var(--cw-muted);
    font-style: normal;
    font-size: .68rem;
    font-weight: 800;
}
.community-tip-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.community-tip-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--cw-line);
    border-radius: 16px;
    background: var(--cw-surface);
}
.community-tip-card-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}
.community-tip-card-topline time {
    color: var(--cw-muted);
    font-size: .7rem;
    white-space: nowrap;
}
.community-tip-category {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border: 1px solid var(--cw-line);
    border-radius: 999px;
    background: var(--cw-bg-soft);
    color: var(--cw-text);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .03em;
    text-transform: uppercase;
}
.community-tip-category.is-food { border-color: color-mix(in srgb, #d19045 45%, var(--cw-line)); }
.community-tip-category.is-lodging { border-color: color-mix(in srgb, #6f91b8 45%, var(--cw-line)); }
.community-tip-category.is-route { border-color: color-mix(in srgb, #5d9f87 45%, var(--cw-line)); }
.community-tip-category.is-travel { border-color: color-mix(in srgb, #8b78b9 45%, var(--cw-line)); }
.community-tip-category.is-other { border-color: var(--cw-line-strong); }
.community-tip-card h3 {
    margin: 0 0 7px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
}
.community-tip-card > p {
    margin: 0;
    color: var(--cw-muted);
    white-space: pre-line;
    overflow-wrap: anywhere;
}
.community-tip-card-details {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 13px;
    padding-top: 11px;
    border-top: 1px solid var(--cw-line);
    color: var(--cw-muted);
    font-size: .76rem;
}
.community-tip-card-details a { color: var(--cw-copper); font-weight: 800; }
.community-tip-card footer {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 14px;
    color: var(--cw-muted);
    font-size: .72rem;
}
.community-tip-card footer a,
.community-tip-card footer strong { color: var(--cw-text); font-weight: 800; }
.community-tip-empty {
    min-height: 112px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    padding: 20px;
    border: 1px dashed var(--cw-line-strong);
    border-radius: 15px;
    color: var(--cw-muted);
}
.community-tip-empty strong { color: var(--cw-text); }
.community-tip-submit { position: relative; flex: 0 0 auto; }
.community-tip-submit > summary {
    list-style: none;
    cursor: pointer;
    user-select: none;
}
.community-tip-submit > summary::-webkit-details-marker { display: none; }
.community-tip-submit[open] > summary { border-color: var(--cw-copper); }
.community-tip-form {
    position: absolute;
    z-index: 16;
    top: calc(100% + 10px);
    right: 0;
    width: min(560px, calc(100vw - 42px));
    padding: 18px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 18px;
    background: var(--cw-surface-solid);
    box-shadow: var(--cw-shadow);
}
.community-tip-form-head {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-bottom: 14px;
}
.community-tip-form-head strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.25rem; }
.community-tip-form-head small { color: var(--cw-muted); }
.community-tip-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.community-tip-form label {
    display: grid;
    gap: 5px;
    margin-bottom: 10px;
}
.community-tip-form label > span {
    color: var(--cw-muted);
    font-size: .69rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.community-tip-form input,
.community-tip-form select,
.community-tip-form textarea {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--cw-line-strong);
    border-radius: 11px;
    outline: 0;
    background: var(--cw-bg);
    color: var(--cw-text);
    font: inherit;
}
.community-tip-form input,
.community-tip-form select { min-height: 43px; padding: 8px 10px; }
.community-tip-form textarea { resize: vertical; min-height: 105px; padding: 10px; }
.community-tip-form input:focus,
.community-tip-form select:focus,
.community-tip-form textarea:focus {
    border-color: var(--cw-copper);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--cw-copper) 14%, transparent);
}
.community-tip-form-errors {
    display: grid;
    gap: 3px;
    margin: 0 0 10px;
    color: var(--cw-danger);
    font-size: .76rem;
}
.community-tip-flash {
    margin-bottom: 14px;
    padding: 11px 14px;
    border: 1px solid color-mix(in srgb, var(--cw-success) 40%, var(--cw-line));
    border-radius: 13px;
    background: color-mix(in srgb, var(--cw-success) 9%, var(--cw-surface));
    color: var(--cw-success);
    font-weight: 750;
}

/* Admin moderation for community tips */
.admin-community-tip-list { display: grid; gap: 10px; margin-top: 20px; }
.admin-community-tip-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px;
    border: 1px solid var(--cw-line);
    border-radius: 16px;
    background: var(--cw-surface);
}
.admin-community-tip-main { min-width: 0; }
.admin-community-tip-main h2 { margin: 8px 0 5px; font-size: 1.05rem; }
.admin-community-tip-main > p { margin: 0; color: var(--cw-muted); white-space: pre-line; }
.admin-community-tip-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 10px; color: var(--cw-muted); font-size: .72rem; }
.admin-community-tip-meta a { color: var(--cw-copper); font-weight: 800; }
.admin-community-tip-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.admin-community-tip-actions form { margin: 0; }

@media (max-width: 760px) {
    .park-community-tips-section { padding-top: 4px; padding-bottom: 42px; }
    .park-community-tips-shell { padding: 18px 14px; border-radius: 17px; }
    .park-community-tips-heading { display: grid; gap: 15px; }
    .park-community-tips-heading h2 { font-size: 1.75rem; }
    .community-tip-submit { width: 100%; }
    .community-tip-submit > summary { width: 100%; }
    .community-tip-form {
        position: static;
        width: 100%;
        margin-top: 10px;
        box-shadow: none;
    }
    .community-tip-form-grid { grid-template-columns: 1fr; gap: 0; }
    .community-tip-grid { grid-template-columns: 1fr; }
    .community-tip-category-row { gap: 6px; }
    .community-tip-category-chip { padding: 5px 8px; }
    .admin-community-tip-card { grid-template-columns: 1fr; align-items: start; }
    .admin-community-tip-actions { justify-content: flex-start; }
}

/* v1.113.21 — community tip targets + 1–5 community ratings */
.community-tip-ranking-note {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 8px;
    color: var(--cw-muted);
    font-size: .72rem;
    font-weight: 750;
}
.community-tip-category.is-park,
.community-tip-category-chip.is-park { border-color: color-mix(in srgb, var(--cw-copper) 48%, var(--cw-line)); }
.community-tip-category.is-attraction,
.community-tip-category-chip.is-attraction { border-color: color-mix(in srgb, #6f91b8 55%, var(--cw-line)); }
.community-tip-attraction-field > small {
    color: var(--cw-muted);
    font-size: .7rem;
    line-height: 1.35;
}
.community-tip-target {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: fit-content;
    max-width: 100%;
    margin: -1px 0 9px;
    padding: 5px 8px;
    border-radius: 9px;
    background: var(--cw-bg-soft);
    color: var(--cw-text);
    font-size: .74rem;
    font-weight: 800;
    text-decoration: none;
}
.community-tip-target:hover { color: var(--cw-copper); }
.community-tip-target.is-park { cursor: default; }
.community-tip-rating {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 14px;
    padding-top: 11px;
    border-top: 1px solid var(--cw-line);
}
.community-tip-rating-summary {
    display: inline-flex;
    align-items: baseline;
    gap: 7px;
    min-width: 0;
}
.community-tip-rating-summary strong {
    color: var(--cw-text);
    font-size: .82rem;
    font-weight: 850;
}
.community-tip-rating-summary span {
    color: var(--cw-muted);
    font-size: .7rem;
}
.community-tip-rating-form {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
}
.community-tip-rating-form > span {
    color: var(--cw-muted);
    font-size: .68rem;
    font-weight: 750;
}
.community-tip-stars {
    display: inline-flex;
    gap: 2px;
}
.community-tip-stars button {
    width: 26px;
    height: 28px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: color-mix(in srgb, var(--cw-muted) 62%, transparent);
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
    transition: color .15s ease, background .15s ease, transform .15s ease;
}
.community-tip-stars button.is-selected { color: var(--cw-copper); }
@media (hover:hover) and (pointer:fine) {
    .community-tip-stars button:hover {
        color: var(--cw-copper);
        background: color-mix(in srgb, var(--cw-copper) 10%, transparent);
        transform: translateY(-1px);
    }
}
.community-tip-stars button:focus-visible {
    outline: 2px solid var(--cw-copper);
    outline-offset: 1px;
}
@media (max-width: 760px) {
    .community-tip-rating {
        align-items: flex-start;
    }
    .community-tip-rating-form {
        width: 100%;
        justify-content: space-between;
    }
    .community-tip-stars button {
        width: 32px;
        height: 32px;
    }
}

/* v1.113.22 — compact community tip cards, filters and detail modal */
.community-tip-category-row {
    gap: 7px;
    margin-bottom: 16px;
}
.community-tip-category-filter {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 10px;
    border: 1px solid var(--cw-line);
    border-radius: 999px;
    background: var(--cw-bg-soft);
    color: var(--cw-text);
    font: inherit;
    font-size: .74rem;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease, transform .15s ease;
}
.community-tip-category-filter b { font-weight: 800; }
.community-tip-category-filter em {
    min-width: 20px;
    height: 20px;
    display: grid;
    place-items: center;
    padding-inline: 5px;
    border-radius: 999px;
    background: var(--cw-surface-solid);
    color: var(--cw-muted);
    font-style: normal;
    font-size: .66rem;
    font-weight: 850;
}
.community-tip-category-filter.is-active {
    border-color: color-mix(in srgb, var(--cw-copper) 62%, var(--cw-line));
    background: color-mix(in srgb, var(--cw-copper) 11%, var(--cw-surface));
    color: var(--cw-text);
}
.community-tip-category-filter.is-active em {
    background: color-mix(in srgb, var(--cw-copper) 18%, var(--cw-surface-solid));
    color: var(--cw-text);
}
.community-tip-category-filter:focus-visible {
    outline: 2px solid var(--cw-copper);
    outline-offset: 2px;
}
@media (hover:hover) and (pointer:fine) {
    .community-tip-category-filter:hover {
        border-color: var(--cw-line-strong);
        transform: translateY(-1px);
    }
}

.community-tip-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}
.community-tip-card {
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--cw-line);
    border-radius: 14px;
    background: var(--cw-surface);
    transition: border-color .15s ease, background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.community-tip-card[hidden] { display: none !important; }
.community-tip-card-button {
    width: 100%;
    min-height: 122px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
    padding: 11px;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    font: inherit;
    cursor: pointer;
}
.community-tip-card-button:focus-visible {
    outline: 2px solid var(--cw-copper);
    outline-offset: -3px;
    border-radius: 12px;
}
@media (hover:hover) and (pointer:fine) {
    .community-tip-card:hover {
        border-color: var(--cw-line-strong);
        background: color-mix(in srgb, var(--cw-surface) 88%, var(--cw-bg-soft));
        transform: translateY(-2px);
        box-shadow: 0 10px 24px color-mix(in srgb, #000 10%, transparent);
    }
}
.community-tip-card-head {
    display: flex;
    align-items: center;
    min-width: 0;
}
.community-tip-card-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: var(--cw-text);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1.2;
}
.community-tip-card-rating-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: auto;
}
.community-tip-card-rating-row strong {
    color: var(--cw-text);
    font-size: .75rem;
    font-weight: 850;
}
.community-tip-card-rating-row > span:last-child {
    color: var(--cw-muted);
    font-size: .66rem;
}
.community-tip-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    color: var(--cw-muted);
    font-size: .67rem;
}
.community-tip-card-meta > span:first-child {
    color: var(--cw-text);
    font-weight: 800;
}

.community-tip-stars-display {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    line-height: 1;
}
.community-tip-star {
    position: relative;
    width: .92em;
    display: inline-block;
    overflow: hidden;
    color: color-mix(in srgb, var(--cw-muted) 38%, transparent);
    font-size: .92rem;
    line-height: 1;
}
.community-tip-star.is-full { color: var(--cw-copper); }
.community-tip-star.is-half::before {
    content: '★';
    position: absolute;
    inset: 0 auto 0 0;
    width: 50%;
    overflow: hidden;
    color: var(--cw-copper);
}
.community-tip-stars-display.is-large .community-tip-star { font-size: 1.12rem; }

.community-tip-filter-empty {
    min-height: 84px;
    display: grid;
    place-items: center;
    padding: 16px;
    border: 1px dashed var(--cw-line-strong);
    border-radius: 14px;
    color: var(--cw-muted);
    text-align: center;
}
.community-tip-filter-empty[hidden] { display: none !important; }

body.community-tip-modal-open { overflow: hidden; }
.community-tip-modal {
    position: fixed;
    z-index: 240;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 22px;
}
.community-tip-modal[hidden] { display: none !important; }
.community-tip-modal-backdrop {
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, #000 68%, transparent);
    backdrop-filter: blur(5px);
}
.community-tip-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(680px, 100%);
    max-height: min(82vh, 760px);
    overflow: auto;
    padding: 22px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 19px;
    outline: 0;
    background: var(--cw-surface-solid);
    color: var(--cw-text);
    box-shadow: 0 24px 70px color-mix(in srgb, #000 34%, transparent);
}
.community-tip-modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid var(--cw-line);
    border-radius: 50%;
    background: var(--cw-bg-soft);
    color: var(--cw-text);
    cursor: pointer;
    font-size: 1.35rem;
    line-height: 1;
}
.community-tip-modal-close:hover { border-color: var(--cw-line-strong); }
.community-tip-modal-close:focus-visible {
    outline: 2px solid var(--cw-copper);
    outline-offset: 2px;
}
.community-tip-modal-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 12px;
    padding-right: 42px;
}
.community-tip-modal-topline time {
    color: var(--cw-muted);
    font-size: .7rem;
}
.community-tip-modal-dialog h3 {
    margin: 16px 0 10px;
    padding-right: 32px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.45rem, 3vw, 2rem);
    line-height: 1.12;
}
.community-tip-modal-body {
    margin: 14px 0 0;
    color: var(--cw-text);
    line-height: 1.65;
    white-space: pre-line;
    overflow-wrap: anywhere;
}
.community-tip-modal-rating {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
    padding-top: 15px;
    border-top: 1px solid var(--cw-line);
}
.community-tip-rating-summary.is-detailed {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}
.community-tip-rating-summary.is-detailed strong {
    color: var(--cw-text);
    font-size: .88rem;
}
.community-tip-modal-footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 16px;
    padding-top: 13px;
    border-top: 1px solid var(--cw-line);
    color: var(--cw-muted);
    font-size: .72rem;
}
.community-tip-modal-footer a,
.community-tip-modal-footer strong {
    color: var(--cw-text);
    font-weight: 850;
}

@media (max-width: 1320px) {
    .community-tip-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1050px) {
    .community-tip-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .community-tip-category-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }
    .community-tip-category-filter {
        width: 100%;
        min-width: 0;
        justify-content: flex-start;
        padding-inline: 9px;
    }
    .community-tip-category-filter em { margin-left: auto; }
    .community-tip-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
    .community-tip-card-button { min-height: 118px; gap: 6px; padding: 9px; }
    .community-tip-card-title { font-size: .86rem; -webkit-line-clamp: 2; }
    .community-tip-card-rating-row { gap: 3px; }
    .community-tip-card-rating-row strong { font-size: .69rem; }
    .community-tip-card-rating-row > span:last-child { font-size: .61rem; }
    .community-tip-card-meta { gap: 3px; font-size: .61rem; }
    .community-tip-category { font-size: .58rem; padding: 4px 6px; }
    .community-tip-modal { padding: 12px; }
    .community-tip-modal-dialog {
        width: 100%;
        max-height: 88vh;
        padding: 18px 15px;
        border-radius: 17px;
    }
    .community-tip-modal-topline { align-items: flex-start; padding-right: 40px; }
    .community-tip-modal-rating { align-items: flex-start; }
    .community-tip-modal-rating .community-tip-rating-form {
        width: 100%;
        justify-content: space-between;
    }
}

@media (max-width: 390px) {
    .community-tip-grid { gap: 6px; }
    .community-tip-card-button { min-height: 112px; padding: 8px; }
    .community-tip-card-title { font-size: .82rem; }
    .community-tip-star { font-size: .78rem; }
}

/* v1.113.28 — denser public community tip cards
   5 columns desktop, 4 compact desktop, 3 tablet, 2 mobile. */
/* v1.113.26 — community tips full moderation/report workflow */
.community-tip-heading-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}
.community-tip-modal-actions {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}
.community-tip-report { position: relative; }
.community-tip-report > summary { list-style: none; cursor: pointer; }
.community-tip-report > summary::-webkit-details-marker { display: none; }
.community-tip-report-form {
    position: absolute;
    right: 0;
    bottom: calc(100% + 8px);
    z-index: 5;
    width: min(380px, calc(100vw - 44px));
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--cw-line-strong);
    border-radius: 14px;
    background: var(--cw-surface-solid);
    box-shadow: 0 18px 50px color-mix(in srgb, #000 26%, transparent);
}
.community-tip-report-form label { display: grid; gap: 5px; }
.community-tip-report-form label > span,
.community-tip-report-form > strong { color: var(--cw-text); font-size: .78rem; font-weight: 800; }
.community-tip-report-form select,
.community-tip-report-form textarea {
    width: 100%;
    border: 1px solid var(--cw-line);
    border-radius: 10px;
    background: var(--cw-bg-soft);
    color: var(--cw-text);
    font: inherit;
    font-size: .78rem;
}
.community-tip-report-form select { min-height: 40px; padding: 7px 9px; }
.community-tip-report-form textarea { resize: vertical; padding: 9px; }
.community-tip-report-form small { color: var(--cw-muted); font-size: .68rem; }

.community-tip-mine-page,
.community-tip-edit-page { max-width: 1120px; }
.community-tip-mine-grid { display: grid; gap: 12px; margin-top: 20px; }
.community-tip-mine-card {
    padding: 16px;
    border: 1px solid var(--cw-line);
    border-radius: 16px;
    background: var(--cw-surface);
}
.community-tip-mine-card h2 { margin: 9px 0 4px; font-size: 1.08rem; }
.community-tip-mine-card > p { margin: 0; color: var(--cw-muted); }
.community-tip-mine-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    margin-top: 10px;
    color: var(--cw-muted);
    font-size: .72rem;
}
.community-tip-mine-actions,
.community-tip-edit-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}
.community-tip-mine-actions form { margin: 0; }
.community-tip-review-note {
    display: grid;
    gap: 4px;
    margin-top: 12px;
    padding: 10px 12px;
    border: 1px solid color-mix(in srgb, var(--cw-copper) 35%, var(--cw-line));
    border-radius: 12px;
    background: color-mix(in srgb, var(--cw-copper) 7%, var(--cw-bg-soft));
    color: var(--cw-muted);
    font-size: .76rem;
}
.community-tip-review-note strong { color: var(--cw-text); }
.community-tip-review-note.is-prominent { margin: 18px 0; }
.community-tip-edit-form {
    position: static;
    width: min(760px, 100%);
    margin-top: 18px;
    box-shadow: none;
}

.contribution-status.is-changes_requested {
    border-color: color-mix(in srgb, var(--cw-copper) 52%, var(--cw-line));
    color: var(--cw-copper);
}
.contribution-status.is-withdrawn { color: var(--cw-muted); }
.admin-community-tip-kpis { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.admin-community-tip-card-v2 { align-items: start; }
.community-tip-report-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 7px;
    border: 1px solid color-mix(in srgb, #d55 45%, var(--cw-line));
    border-radius: 999px;
    background: color-mix(in srgb, #d55 8%, transparent);
    color: var(--cw-text);
    font-size: .66rem;
    font-weight: 850;
}
.admin-community-tip-review-note { max-width: 820px; }
.admin-community-tip-reports {
    margin-top: 14px;
    border-top: 1px solid var(--cw-line);
    padding-top: 10px;
}
.admin-community-tip-reports > summary {
    cursor: pointer;
    color: var(--cw-text);
    font-size: .78rem;
    font-weight: 850;
}
.admin-community-tip-report-list { display: grid; gap: 8px; margin-top: 10px; }
.admin-community-tip-report {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr);
    gap: 12px;
    padding: 11px;
    border: 1px solid var(--cw-line);
    border-radius: 12px;
    background: var(--cw-bg-soft);
}
.admin-community-tip-report.is-pending { border-color: color-mix(in srgb, #d55 38%, var(--cw-line)); }
.admin-community-tip-report > div:first-child { display: grid; gap: 4px; }
.admin-community-tip-report span,
.admin-community-tip-report small { color: var(--cw-muted); font-size: .7rem; }
.admin-community-tip-report p { margin: 4px 0 0; white-space: pre-line; }
.admin-community-tip-report-actions { display: grid; gap: 7px; }
.admin-community-tip-report-actions textarea,
.admin-community-tip-action-details textarea {
    width: 100%;
    min-height: 72px;
    resize: vertical;
    padding: 8px;
    border: 1px solid var(--cw-line);
    border-radius: 9px;
    background: var(--cw-surface-solid);
    color: var(--cw-text);
    font: inherit;
    font-size: .75rem;
}
.admin-community-tip-report-actions > div { display: flex; flex-wrap: wrap; gap: 6px; }
.admin-community-tip-actions-v2 { min-width: 210px; align-items: stretch; }
.admin-community-tip-action-details { position: relative; }
.admin-community-tip-action-details > summary { list-style: none; cursor: pointer; }
.admin-community-tip-action-details > summary::-webkit-details-marker { display: none; }
.admin-community-tip-action-details > form {
    width: min(330px, calc(100vw - 40px));
    display: grid;
    gap: 7px;
    margin-top: 6px;
    padding: 9px;
    border: 1px solid var(--cw-line);
    border-radius: 10px;
    background: var(--cw-bg-soft);
}
.admin-community-tip-action-details.is-danger > form { border-color: color-mix(in srgb, #d55 38%, var(--cw-line)); }

@media (max-width: 980px) {
    .admin-community-tip-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .admin-community-tip-report { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .community-tip-heading-actions { width: 100%; justify-content: stretch; }
    .community-tip-heading-actions > .button,
    .community-tip-heading-actions > details { width: 100%; }
    .community-tip-heading-actions details > summary { width: 100%; }
    .community-tip-modal-actions { justify-content: stretch; }
    .community-tip-modal-actions > * { width: 100%; }
    .community-tip-report > summary { width: 100%; }
    .community-tip-report-form { position: static; width: 100%; margin-top: 7px; }
    .admin-community-tip-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-community-tip-actions-v2 { width: 100%; min-width: 0; }
    .admin-community-tip-action-details,
    .admin-community-tip-action-details > summary,
    .admin-community-tip-action-details > form { width: 100%; }
}

/* v1.113.27 — admin community tips moderation layout */
.admin-community-tip-list {
    gap: 16px;
    margin-top: 22px;
}
.admin-community-tip-card.admin-community-tip-card-v2 {
    display: block;
    padding: 0;
    border-radius: 20px;
    background: var(--cw-surface);
    box-shadow: 0 12px 34px color-mix(in srgb, #000 10%, transparent);
}
.admin-community-tip-card-v2 .admin-community-tip-main {
    padding: 20px 22px 18px;
}
.admin-community-tip-card-v2 .community-tip-card-topline {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 12px;
}
.admin-community-tip-card-v2 .community-tip-card-topline > * {
    flex: 0 0 auto;
}
.admin-community-tip-card-v2 .admin-community-tip-main h2 {
    margin: 0 0 8px;
    font-size: 1.3rem;
    line-height: 1.2;
}
.admin-community-tip-card-v2 .admin-community-tip-main > p {
    max-width: 920px;
    margin: 0;
    color: var(--cw-muted);
    font-size: .86rem;
    line-height: 1.62;
    white-space: pre-line;
}
.admin-community-tip-card-v2 .admin-community-tip-meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px 18px;
    margin-top: 16px;
    padding-top: 13px;
    border-top: 1px solid var(--cw-line);
    font-size: .71rem;
}
.admin-community-tip-card-v2 .admin-community-tip-meta > * {
    min-width: 0;
    overflow-wrap: anywhere;
}
.admin-community-tip-card-v2 .admin-community-tip-review-note {
    max-width: none;
    margin-top: 14px;
}
.admin-community-tip-card-v2 .admin-community-tip-reports {
    margin: 18px -22px -18px;
    padding: 14px 22px 18px;
    border-top: 1px solid var(--cw-line);
    border-radius: 0 0 20px 20px;
    background: color-mix(in srgb, var(--cw-bg-soft) 72%, transparent);
}
.admin-community-tip-card-v2 .admin-community-tip-reports > summary {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid color-mix(in srgb, #d55 35%, var(--cw-line));
    border-radius: 999px;
    background: color-mix(in srgb, #d55 7%, var(--cw-surface));
    list-style: none;
}
.admin-community-tip-card-v2 .admin-community-tip-reports > summary::-webkit-details-marker {
    display: none;
}
.admin-community-tip-card-v2 .admin-community-tip-report-list {
    gap: 10px;
    margin-top: 12px;
}
.admin-community-tip-card-v2 .admin-community-tip-report {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
    gap: 18px;
    padding: 15px;
    border-radius: 14px;
    background: var(--cw-surface);
}
.admin-community-tip-card-v2 .admin-community-tip-report > div:first-child {
    align-content: start;
    gap: 6px;
}
.admin-community-tip-card-v2 .admin-community-tip-report p {
    max-width: 760px;
    margin: 3px 0 0;
    color: var(--cw-text);
    font-size: .8rem;
    line-height: 1.5;
}
.admin-community-tip-card-v2 .admin-community-tip-report-actions {
    align-content: start;
    gap: 9px;
}
.admin-community-tip-card-v2 .admin-community-tip-report-actions textarea {
    min-height: 88px;
}
.admin-community-tip-card-v2 .admin-community-tip-report-actions > div {
    justify-content: flex-start;
}
.admin-community-tip-actions.admin-community-tip-actions-v2 {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
    padding: 14px 22px 16px;
    border-top: 1px solid var(--cw-line);
    border-radius: 0 0 20px 20px;
    background: color-mix(in srgb, var(--cw-bg-soft) 58%, transparent);
}
.admin-community-tip-actions-v2 > a,
.admin-community-tip-actions-v2 > form,
.admin-community-tip-actions-v2 > details {
    flex: 0 0 auto;
    margin: 0;
}
.admin-community-tip-actions-v2 > small {
    margin-left: auto;
    color: var(--cw-muted);
    font-size: .68rem;
}
.admin-community-tip-actions-v2 .button,
.admin-community-tip-action-details > summary.button {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    white-space: nowrap;
}
.admin-community-tip-actions-v2 .admin-community-tip-action-details[open] {
    flex: 1 1 100%;
    display: grid;
    grid-template-columns: max-content minmax(280px, 520px);
    align-items: start;
    gap: 12px;
    padding-top: 4px;
}
.admin-community-tip-actions-v2 .admin-community-tip-action-details[open] > form {
    width: 100%;
    margin: 0;
    padding: 12px;
    border-radius: 12px;
    background: var(--cw-surface);
}
.admin-community-tip-actions-v2 .admin-community-tip-action-details textarea {
    min-height: 88px;
}
.admin-community-tip-kpis {
    gap: 10px;
}
.admin-community-tip-kpis > div {
    min-width: 0;
}
.admin-user-filters.contribution-admin-filters {
    align-items: stretch;
}
.admin-user-filters.contribution-admin-filters > * {
    min-width: 0;
}

@media (max-width: 1040px) {
    .admin-community-tip-card-v2 .admin-community-tip-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .admin-community-tip-card-v2 .admin-community-tip-report {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .admin-community-tip-card.admin-community-tip-card-v2 {
        border-radius: 16px;
    }
    .admin-community-tip-card-v2 .admin-community-tip-main {
        padding: 16px 14px 14px;
    }
    .admin-community-tip-card-v2 .admin-community-tip-meta {
        grid-template-columns: 1fr;
        gap: 6px;
    }
    .admin-community-tip-card-v2 .admin-community-tip-reports {
        margin: 16px -14px -14px;
        padding: 12px 14px 14px;
        border-radius: 0 0 16px 16px;
    }
    .admin-community-tip-actions.admin-community-tip-actions-v2 {
        padding: 12px 14px 14px;
        border-radius: 0 0 16px 16px;
    }
    .admin-community-tip-actions-v2 > a,
    .admin-community-tip-actions-v2 > form,
    .admin-community-tip-actions-v2 > details,
    .admin-community-tip-actions-v2 > a.button,
    .admin-community-tip-actions-v2 > form > .button,
    .admin-community-tip-actions-v2 > details > summary.button {
        width: 100%;
    }
    .admin-community-tip-actions-v2 .button,
    .admin-community-tip-action-details > summary.button {
        width: 100%;
        white-space: normal;
    }
    .admin-community-tip-actions-v2 .admin-community-tip-action-details[open] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .admin-community-tip-actions-v2 > small {
        width: 100%;
        margin-left: 0;
    }
}

/* v1.113.29 — automatic community tip translations */
.community-tip-card-translated {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    margin-left: auto;
    color: var(--cw-muted);
    font-size: .58rem;
    font-weight: 750;
    white-space: nowrap;
}
.community-tip-translation-note {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px 10px;
    margin-top: 12px;
    padding: 9px 11px;
    border: 1px solid var(--cw-line);
    border-radius: 12px;
    background: var(--cw-bg-soft);
    color: var(--cw-muted);
    font-size: .67rem;
    line-height: 1.4;
}
.community-tip-translation-note > span { min-width: 0; }
.community-tip-translation-note button {
    appearance: none;
    margin-left: auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--cw-copper);
    cursor: pointer;
    font: inherit;
    font-weight: 850;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.community-tip-translation-note button:hover { color: var(--cw-text); }
.community-tip-translation-note button:focus-visible {
    outline: 2px solid var(--cw-copper);
    outline-offset: 3px;
    border-radius: 4px;
}
@media (max-width: 520px) {
    .community-tip-card-translated { margin-left: 0; }
    .community-tip-translation-note {
        align-items: flex-start;
    }
    .community-tip-translation-note button {
        margin-left: 0;
    }
}

/* Queue badges */
.ride-queue-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.ride-queue-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:34px;min-height:34px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--cw-copper) 24%,var(--cw-line));border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--cw-copper) 8%,var(--cw-surface-solid)),var(--cw-surface));box-shadow:0 10px 24px rgba(0,0,0,.05)}.ride-queue-badge img{display:block;width:20px;height:20px;object-fit:contain;flex:0 0 auto}.ride-queue-badge__text{font-size:.72rem;font-weight:850;line-height:1.15;white-space:nowrap}.ride-queue-badge small{font-size:.64rem;font-weight:800;color:var(--cw-muted);line-height:1}.ride-queue-badges--compact{gap:6px}.ride-queue-badges--compact .ride-queue-badge{min-width:30px;min-height:30px;padding:5px 6px}.ride-queue-badges--compact .ride-queue-badge img{width:18px;height:18px}.ride-queue-badges--large .ride-queue-badge{min-height:38px;padding:7px 10px}.ride-queue-badges--large .ride-queue-badge img{width:22px;height:22px}.ride-queue-badges--labels .ride-queue-badge{justify-content:flex-start;padding-inline:10px 12px}.park-experience-queues,.visit-queue-badges,.result-queue-badges,.explore-queue-badges,.reco-queue-badges,.collection-queue-badges,.profile-queue-badges,.progression-queue-badges,.detail-queue-badges,.my-world-queue-badges,.home-queue-badges,.ride-together-queue-badges,.group-visit-queue-badges{margin-top:10px}.ride-queue-badges--compact.park-experience-queues{margin-top:8px}.ride-queue-badges--compact.result-queue-badges,.ride-queue-badges--compact.explore-queue-badges{margin-top:8px}.ride-queue-badges--compact.progression-queue-badges{margin-top:8px}.ride-queue-badges--compact .ride-queue-badge__text{font-size:.68rem}@media (max-width: 640px){.ride-queue-badges--labels .ride-queue-badge{padding-inline:8px 10px}.ride-queue-badge__text{font-size:.68rem}}

/* Attraction / coaster detail: large park card */
.detail-park-section{padding-top:48px;padding-bottom:48px}.detail-park-heading{margin-bottom:20px}.detail-park-heading h2{margin-top:5px}.detail-park-card{display:grid;grid-template-columns:minmax(330px,.92fr) minmax(0,1.08fr);min-height:330px}.detail-park-card .discover-park-visual{height:100%;min-height:330px;aspect-ratio:auto}.detail-park-card .discover-park-body{padding:30px 32px;align-content:center}.detail-park-card .discover-park-intro small{font-size:.72rem}.detail-park-card .discover-park-intro strong{font-size:1.7rem;line-height:1.08}.detail-park-card .discover-park-intro>b{font-size:1.2rem}.detail-park-card .discover-park-hours{margin-top:22px;padding-top:18px}.detail-park-card .discover-park-hours small{font-size:.64rem}.detail-park-card .discover-park-hours strong{margin-top:3px;font-size:1rem}.detail-park-card .discover-park-stats{margin-top:18px;gap:12px}.detail-park-card .discover-park-stats>span{padding:13px 14px;border-radius:15px;font-size:.66rem}.detail-park-card .discover-park-stats strong{font-size:1.18rem}.detail-park-action{margin-top:22px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--cw-line);color:var(--cw-text);font-size:.75rem;font-weight:850}.detail-park-action b{color:var(--cw-copper);font-size:1rem}.detail-park-card .discover-park-status{left:18px;top:18px;padding:7px 11px;font-size:.65rem}.detail-park-card .discover-park-placeholder{font-size:3rem}@media(max-width:800px){.detail-park-section{padding-top:34px;padding-bottom:34px}.detail-park-card{grid-template-columns:1fr;min-height:0}.detail-park-card .discover-park-visual{min-height:0;aspect-ratio:16/9}.detail-park-card .discover-park-body{padding:20px}.detail-park-card .discover-park-intro strong{font-size:1.35rem}.detail-park-card .discover-park-hours{margin-top:16px;padding-top:14px}.detail-park-card .discover-park-stats{margin-top:14px}.detail-park-action{margin-top:16px;padding-top:14px}}


/* Coaster key facts cards — v1.113.64 */
.coaster-facts-strip-v2{padding:20px 0 24px;border-bottom:1px solid var(--cw-line,var(--line));background:var(--cw-bg,var(--surface))}.coaster-facts-grid-v2{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.coaster-facts-grid-v2>.coaster-fact-card{display:flex;align-items:center;gap:14px;min-width:0;padding:16px 18px;border:1px solid var(--cw-line,var(--line));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--cw-surface-solid,var(--surface)) 96%,var(--cw-copper,var(--accent)) 4%),var(--cw-surface,var(--surface)));box-shadow:0 10px 26px rgba(0,0,0,.045);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.coaster-facts-grid-v2>.coaster-fact-card:first-child,.coaster-facts-grid-v2>.coaster-fact-card:nth-child(odd){border-left:1px solid var(--cw-line,var(--line))}.coaster-facts-grid-v2>.coaster-fact-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cw-copper,var(--accent)) 42%,var(--cw-line,var(--line)));box-shadow:0 14px 34px rgba(0,0,0,.075)}.coaster-fact-icon{display:grid!important;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--cw-copper,var(--accent)) 10%,var(--cw-bg-soft,var(--surface)));color:var(--cw-copper,var(--accent));text-transform:none!important;letter-spacing:0!important}.coaster-fact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.coaster-fact-copy{display:grid!important;gap:4px;min-width:0;color:inherit!important;text-transform:none!important;letter-spacing:0!important}.coaster-facts-grid-v2 .coaster-fact-label{display:block;color:var(--cw-muted,var(--muted));font-size:.61rem;font-weight:850;line-height:1.15;letter-spacing:.09em;text-transform:uppercase}.coaster-facts-grid-v2 .coaster-fact-value{display:flex;align-items:baseline;gap:6px;color:var(--cw-text,var(--text));text-transform:none;letter-spacing:0}.coaster-facts-grid-v2 .coaster-fact-value strong{display:block;margin:0;font-size:1.55rem;line-height:1;font-weight:850}.coaster-facts-grid-v2 .coaster-fact-value small{display:block;margin:0;color:var(--cw-muted,var(--muted));font-size:.58rem;font-weight:850;line-height:1;text-transform:uppercase;letter-spacing:.08em}@media(max-width:760px){.coaster-facts-strip-v2{padding:14px 0 18px}.coaster-facts-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.coaster-facts-grid-v2>.coaster-fact-card{padding:13px 14px;gap:11px;border-bottom:1px solid var(--cw-line,var(--line))}.coaster-fact-icon{flex-basis:36px;width:36px;height:36px;border-radius:11px}.coaster-fact-icon svg{width:21px;height:21px}.coaster-facts-grid-v2 .coaster-fact-value strong{font-size:1.25rem}}@media(max-width:400px){.coaster-facts-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.coaster-facts-grid-v2>.coaster-fact-card{padding:11px 10px;gap:8px;border-left:1px solid var(--cw-line,var(--line))}.coaster-fact-icon{flex-basis:32px;width:32px;height:32px}.coaster-fact-icon svg{width:19px;height:19px}.coaster-facts-grid-v2 .coaster-fact-label{font-size:.54rem}.coaster-facts-grid-v2 .coaster-fact-value{gap:4px}.coaster-facts-grid-v2 .coaster-fact-value strong{font-size:1.08rem}.coaster-facts-grid-v2 .coaster-fact-value small{font-size:.5rem}}

/* Country flags — v1.113.65 */
.country-label{display:inline-flex;align-items:center;gap:6px;max-width:100%;vertical-align:middle}.country-label__flag{display:block;flex:0 0 auto;width:18px;height:13px;background-image:var(--country-flag-image);background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:3px;box-shadow:0 0 0 1px color-mix(in srgb,var(--cw-line,var(--line)) 76%,transparent),0 2px 5px rgba(0,0,0,.12)}.country-label__name{min-width:0}.country-label--small{gap:5px}.country-label--small .country-label__flag{width:16px;height:12px;border-radius:2px}.country-label--large{gap:8px}.country-label--large .country-label__flag{width:22px;height:16px;border-radius:4px}.country-label--flag-only{gap:0}.country-label--flag-only .country-label__flag{margin:0}

/* Account settings v1.113.66 */
.account-settings-hero{padding:64px 0 34px;border-bottom:1px solid var(--cw-line);background:linear-gradient(180deg,color-mix(in srgb,var(--cw-copper) 4%,transparent),transparent)}
.account-settings-hero-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.account-settings-hero h1{margin:6px 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.3rem,5vw,4.4rem);line-height:.98;font-weight:500}
.account-settings-hero p{max-width:760px;margin:0;color:var(--cw-muted);font-size:.94rem;line-height:1.65}
.account-settings-page{padding-top:38px}
.account-settings-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}
.account-settings-sidebar{position:sticky;top:104px;padding:14px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}
.account-settings-mini-profile{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;padding:8px 8px 18px;margin-bottom:8px;border-bottom:1px solid var(--cw-line)}
.account-settings-mini-avatar,.account-avatar-preview{overflow:hidden;display:grid;place-items:center;border:1px solid var(--cw-line-strong);background:linear-gradient(145deg,color-mix(in srgb,var(--cw-copper) 12%,var(--cw-bg-soft)),var(--cw-bg-soft));color:var(--cw-copper);font-family:Georgia,"Times New Roman",serif}
.account-settings-mini-avatar{width:54px;height:54px;border-radius:17px;font-size:1.45rem}
.account-settings-mini-avatar img,.account-avatar-preview img{width:100%;height:100%;object-fit:cover}
.account-settings-mini-profile strong,.account-settings-mini-profile small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-settings-mini-profile strong{font-size:.82rem}.account-settings-mini-profile small{margin-top:3px;color:var(--cw-muted);font-size:.62rem}
.account-settings-nav{display:grid;gap:4px}.account-settings-nav a{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:10px 11px;border:1px solid transparent;border-radius:13px;color:var(--cw-muted);text-decoration:none;transition:.18s ease}.account-settings-nav a:hover{background:var(--cw-bg-soft);color:var(--cw-text)}.account-settings-nav a.is-active{border-color:color-mix(in srgb,var(--cw-copper) 44%,var(--cw-line));background:color-mix(in srgb,var(--cw-copper) 8%,var(--cw-bg-soft));color:var(--cw-text)}.account-settings-nav a>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--cw-bg-soft);color:var(--cw-copper)}.account-settings-nav svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.account-settings-nav strong{font-size:.72rem}
.account-settings-content{min-width:0;display:grid;gap:16px}.account-settings-heading{padding:4px 4px 8px}.account-settings-heading h2{margin:7px 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.5vw,3.15rem);font-weight:500;line-height:1}.account-settings-heading p{max-width:760px;margin:0;color:var(--cw-muted);font-size:.82rem;line-height:1.6}.account-settings-flash{margin-bottom:2px}
.account-settings-card{padding:24px;border:1px solid var(--cw-line);border-radius:22px;background:var(--cw-surface)}.account-settings-card h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:1.42rem;font-weight:600}.account-settings-card>p,.account-settings-card-heading p{margin:7px 0 0;color:var(--cw-muted);font-size:.75rem;line-height:1.55}.account-settings-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.account-avatar-editor{display:grid;grid-template-columns:128px minmax(0,1fr);gap:24px;align-items:center}.account-avatar-preview{width:128px;height:128px;border-radius:30px;font-size:3.2rem;box-shadow:0 14px 34px rgba(0,0,0,.08)}.account-avatar-actions{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end}.account-avatar-upload{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px 12px;align-items:end;flex:1}.account-avatar-upload small{grid-column:1;color:var(--cw-muted);font-size:.62rem}.account-file-picker{position:relative;display:flex;align-items:center;min-height:44px;padding:0 14px;border:1px dashed var(--cw-line-strong);border-radius:13px;background:var(--cw-bg-soft);cursor:pointer}.account-file-picker span{font-size:.72rem;font-weight:800}.account-file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}
.account-settings-form,.account-settings-stack-form{display:grid;gap:16px}.account-settings-form label,.account-settings-field-grid label{display:grid;gap:7px}.account-settings-form label>span,.account-settings-field-grid label>span{font-size:.66rem;font-weight:850;color:var(--cw-muted);text-transform:uppercase;letter-spacing:.05em}.account-settings-form input:not([type=checkbox]):not([type=radio]),.account-settings-form select,.account-settings-field-grid select{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--cw-line);border-radius:12px;background:var(--cw-bg);color:var(--cw-text);font:inherit}.account-settings-form small{color:var(--cw-muted);font-size:.62rem;line-height:1.45}.account-settings-form>.button{justify-self:start}.account-settings-readonly{display:grid;gap:4px;padding:13px 15px;border-radius:13px;background:var(--cw-bg-soft);overflow:hidden}.account-settings-readonly span{font-size:.59rem;color:var(--cw-muted);text-transform:uppercase;letter-spacing:.05em}.account-settings-readonly strong{overflow:hidden;text-overflow:ellipsis;font-size:.69rem;white-space:nowrap}
.account-choice-grid{display:grid;gap:10px;margin-top:18px}.account-choice-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}.account-choice-card{position:relative;cursor:pointer}.account-choice-card input{position:absolute;opacity:0;pointer-events:none}.account-choice-card>span{display:block;height:100%;padding:15px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg-soft);transition:.18s ease}.account-choice-card strong,.account-choice-card small{display:block}.account-choice-card strong{font-size:.78rem}.account-choice-card small{margin-top:5px;color:var(--cw-muted);font-size:.61rem;line-height:1.45}.account-choice-card input:checked+span{border-color:var(--cw-copper);box-shadow:inset 0 0 0 1px var(--cw-copper);background:color-mix(in srgb,var(--cw-copper) 7%,var(--cw-bg-soft))}.account-settings-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-toggle-row{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:15px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg-soft);cursor:pointer}.account-toggle-row input[type=checkbox]{margin-top:2px;width:18px;height:18px;accent-color:var(--cw-copper)}.account-toggle-row strong,.account-toggle-row small{display:block}.account-toggle-row strong{font-size:.76rem}.account-toggle-row small{margin-top:4px;color:var(--cw-muted);font-size:.62rem;line-height:1.45}.account-settings-sticky-actions{display:flex;justify-content:flex-end;padding-top:2px}
.account-settings-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-settings-sessions{margin-top:0}.account-settings-link-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.account-settings-danger{border-color:color-mix(in srgb,#b94b42 34%,var(--cw-line));background:color-mix(in srgb,#b94b42 3%,var(--cw-surface))}.account-settings-danger .eyebrow{color:#c45c52}.account-settings-danger details{margin-top:18px}.account-settings-danger summary{cursor:pointer;font-weight:800;font-size:.72rem}.account-settings-danger .account-settings-form{margin-top:16px;max-width:600px}
@media(max-width:900px){.account-settings-layout{grid-template-columns:1fr}.account-settings-sidebar{position:static;padding:10px}.account-settings-mini-profile{display:none}.account-settings-nav{display:flex;overflow-x:auto;gap:7px;padding-bottom:2px;scrollbar-width:none}.account-settings-nav::-webkit-scrollbar{display:none}.account-settings-nav a{grid-template-columns:26px auto;flex:0 0 auto;padding:8px 10px}.account-settings-nav a>span{width:26px;height:26px;background:transparent}.account-settings-nav svg{width:15px;height:15px}.account-settings-two-col{grid-template-columns:1fr}}
@media(max-width:640px){.account-settings-hero{padding:38px 0 24px}.account-settings-hero-inner{display:grid}.account-settings-hero-inner>.button{justify-self:start}.account-settings-page{padding-top:22px}.account-settings-card{padding:18px;border-radius:18px}.account-avatar-editor{grid-template-columns:88px minmax(0,1fr);gap:16px}.account-avatar-preview{width:88px;height:88px;border-radius:23px;font-size:2.2rem}.account-avatar-upload{grid-template-columns:1fr}.account-avatar-upload small{grid-column:auto}.account-choice-grid.is-three,.account-settings-field-grid{grid-template-columns:1fr}.account-settings-link-card{align-items:flex-start;flex-direction:column}.account-settings-link-card .button{width:100%;justify-content:center}.account-settings-sticky-actions .button{width:100%;justify-content:center}}

/* Social authentication — v1.115.0 */
.auth-provider-stack{display:grid;gap:10px;margin:20px 0 0}.auth-provider-button{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:48px;padding:0 16px;border:1px solid var(--cw-line-strong);border-radius:14px;background:var(--cw-surface);color:var(--cw-text);font-size:.82rem;font-weight:850;text-decoration:none;transition:.18s ease}.auth-provider-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--cw-copper) 42%,var(--cw-line-strong));background:var(--cw-bg-soft)}.auth-provider-button.is-disabled{opacity:.48;cursor:not-allowed;transform:none}.auth-provider-mark{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;border:1px solid var(--cw-line);border-radius:9px;background:var(--cw-bg-soft);font-size:.84rem;font-weight:950;line-height:1}.auth-provider-mark.is-google,.auth-provider-button.is-google .auth-provider-mark{font-family:Arial,sans-serif}.auth-provider-mark.is-apple,.auth-provider-button.is-apple .auth-provider-mark{background:var(--cw-text);color:var(--cw-bg)}.auth-provider-mark.is-password{font-size:1.25rem}.auth-provider-separator{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--cw-muted);font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.auth-provider-separator::before,.auth-provider-separator::after{content:"";height:1px;flex:1;background:var(--cw-line)}.cw-auth-modal-pane .auth-provider-stack{margin-top:18px}.cw-auth-modal-pane .auth-provider-separator{margin:16px 0}.cw-auth-modal-form{margin-top:0}.account-auth-method-list{display:grid;gap:10px}.account-auth-method-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid var(--cw-line);border-radius:15px;background:var(--cw-bg-soft)}.account-auth-method-identity{display:flex;align-items:center;gap:11px;min-width:0}.account-auth-method-identity>div{min-width:0}.account-auth-method-identity strong,.account-auth-method-identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-auth-method-identity strong{font-size:.76rem}.account-auth-method-identity small{margin-top:3px;color:var(--cw-muted);font-size:.62rem}.account-auth-method-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.account-auth-method-actions form{margin:0}@media(max-width:640px){.account-auth-method-row{align-items:flex-start;flex-direction:column}.account-auth-method-actions{width:100%;justify-content:space-between}.account-auth-method-actions .button,.account-auth-method-actions form{width:100%}.account-auth-method-actions form .button{width:100%;justify-content:center}}
