/* Guide-only corrections. Shared header, homepage and tools are unchanged. */
html:has(body[data-story-guide]) { --guide-topbar:68px; --guide-menubar:56px; --guide-header:calc(var(--guide-topbar) + var(--guide-menubar) + env(safe-area-inset-top)); scroll-padding-top:calc(var(--guide-header) + 16px); }
body[data-story-guide] > main { position:relative; isolation:isolate; z-index:var(--z-base); }
body[data-story-guide] > .lgz-gbar { position:sticky; top:0; z-index:var(--z-sticky); }
body[data-story-guide] > .lgz-mbar { top:calc(var(--guide-topbar) + env(safe-area-inset-top)); z-index:var(--z-dropdown); background:var(--lgz-bg); }
body[data-story-guide] .desktop-chapter-rail { top:var(--guide-header); bottom:0; height:calc(100dvh - var(--guide-header)); overflow-y:auto; overscroll-behavior:contain; padding-block:16px; }
body[data-story-guide] .desktop-chapter-rail nav { margin:12px 0; padding:0; gap:8px; }
body[data-story-guide] .desktop-chapter-rail nav a { min-height:44px; }
body[data-story-guide] .desktop-chapter-rail__brand { padding-bottom:14px; }
body[data-story-guide] .desktop-chapter-rail__foot { display:flex; align-items:center; min-height:44px; margin-top:auto; padding-block:12px; }
body[data-story-guide] .desktop-chapter-rail nav a::before { display:none; }
body[data-story-guide] .desktop-chapter-rail nav a[aria-current] { color:#fff; background:rgba(255,255,255,.13); }
body[data-story-guide] .guide-context { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:0 24px; padding:8px var(--guide-gutter); border-bottom:1px solid var(--lgz-rule); background:var(--lgz-bg); }
body[data-story-guide] .guide-context .lz-map-nav { display:flex; align-items:center; gap:16px; padding:0; margin:0; min-height:44px; width:auto; border:0; background:none; }
body[data-story-guide] .guide-context #lz-map-nav-top { width:auto!important; padding:0!important; flex:0 1 auto; background:none!important; color:var(--lgz-ink)!important; }
body[data-story-guide] #lz-map-nav-top .lz-map-context { color:var(--lgz-muted)!important; }
body[data-story-guide] #lz-map-nav-bottom { background:var(--lgz-bg)!important; color:var(--lgz-ink)!important; }
body[data-story-guide] .guide-context .lz-map-context { font-size:12px; }
body[data-story-guide] .guide-context .lz-guide-tools { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; width:auto; max-width:100%; margin:0; padding:0; background:none; }
body[data-story-guide] .guide-context a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; text-decoration:none; }
body[data-story-guide] .hero .nav .brand { display:inline-flex; align-items:center; min-height:44px; color:white!important; opacity:1!important; }
body[data-story-guide] .hero .nav { z-index:var(--z-dropdown)!important; }
body[data-story-guide] :is(.guide-context,.guide-chapters-dialog) a:active { scale:.97; }
body[data-story-guide] .guide-chapters-trigger { display:none; }
body[data-story-guide] .guide-chapters-dialog { margin:auto; padding:24px; width:min(520px,calc(100% - 32px)); max-height:calc(var(--visual-height,100dvh) - 32px); border:1px solid var(--lgz-rule); border-radius:20px; color:var(--lgz-ink); background:var(--lgz-bg); overscroll-behavior:contain; overflow:auto; z-index:var(--z-modal); }
body[data-story-guide] .guide-chapters-dialog::backdrop { background:rgba(7,18,27,.65); }
body[data-story-guide] .guide-chapters-dialog header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:12px; border-bottom:1px solid var(--lgz-rule); }
body[data-story-guide] .guide-chapters-dialog h2 { margin:0; font:600 22px/1.4 var(--lgz-f-body); }
body[data-story-guide] .guide-chapters-dialog button { flex:none; min-width:44px; min-height:44px; border:1px solid var(--lgz-rule); border-radius:50%; background:none; color:inherit; }
body[data-story-guide] .guide-chapters-dialog nav { display:grid; gap:8px; margin-top:16px; }
body[data-story-guide] .guide-chapters-dialog nav a { display:flex; align-items:center; min-height:48px; padding:10px 14px; border-radius:8px; color:inherit; text-decoration:none; }
body[data-story-guide] .guide-chapters-dialog nav a[aria-current] { color:var(--lgz-on-accent); background:var(--lgz-accent); }
body[data-story-guide] :is(.trip-mode-launch,.itinerary-customizer-launch) { z-index:var(--z-sticky)!important; }
body[data-story-guide] :is(.trip-mode-overlay,.itinerary-customizer) { overscroll-behavior:contain; }
body[data-story-guide] :is(.trip-mode-panel,.itinerary-customizer__panel) { max-height:calc(var(--visual-height,100dvh) - 32px); }
body[data-story-guide] :is(.trip-mode-content,.itinerary-customizer__body) { min-height:0; overscroll-behavior:contain; }
body[data-story-guide] .trip-mode-content { padding-bottom:calc(16px + env(safe-area-inset-bottom)); }
body[data-story-guide] .trip-days-wrap { grid-template-columns:44px minmax(0,1fr) 44px!important; gap:8px!important; }
body[data-story-guide] .trip-mode-days { min-width:0; margin:0!important; padding-inline:0!important; }
body[data-story-guide] #travel-quick-dock { z-index:var(--z-sticky)!important; scroll-margin-block:calc(var(--guide-header) + 16px); }
body[data-story-guide] #travel-quick-dock + .trip-pulse { margin-top:0!important; }
body[data-story-guide] :is(.trip-mode-close,.itinerary-customizer__close,.trip-photo-viewer button,.trip-days-arrow,.trip-map-provider button,.gallery-btn) { min-width:44px!important; min-height:44px!important; }
body[data-story-guide] :is(.trip-stop-actions,.trip-photo-tools,.trip-map-provider) { gap:8px; flex-wrap:wrap; }
body[data-story-guide] :is(.trip-stop-actions a,.trip-photo-tools label,.trip-photo-tools button,.trip-shopping-body a) { display:inline-flex; align-items:center; justify-content:center; min-height:44px; }
body[data-story-guide] :is(.trip-mode-dock,.itinerary-customizer__actions) { bottom:0!important; margin-bottom:0!important; }
body[data-story-guide] .itinerary-customizer__actions { position:static; }
body[data-story-guide] .trip-photo-viewer { z-index:calc(var(--z-modal) + 1)!important; }
body[data-story-guide] .gallery-controls { gap:8px; }
body[data-story-guide] .hours-line b { color:#87452f!important; }
body[data-story-guide] :is(.checklist-memory-status,.packing-checklist label small) { color:#40584e!important; }
body[data-story-guide][data-handbook-theme] .packing-checklist label div small { color:#40584e!important; }
body[data-story-guide][data-handbook-theme] :is(.booking-checklist label div small,.journey-label) { color:#40584e!important; }
body[data-story-guide] .custom-restore { min-height:44px!important; min-width:44px!important; }
body[data-story-guide] .world-footer .landscape-credit-link { color:var(--lgz-ink)!important; }
body[data-story-guide] main>footer .shell>a { display:inline-flex; align-items:center; min-height:44px; margin-right:8px; }
body[data-story-guide] .photo-strip { touch-action:pan-x pan-y; }
@media(min-width:1180px){
 body[data-story-guide] > .lgz-gbar,body[data-story-guide] > .lgz-mbar { margin-left:0!important; width:100%!important; }
}
@media(max-width:1179px){
 body[data-story-guide] .guide-chapters-trigger { position:fixed; left:max(16px,env(safe-area-inset-left)); bottom:calc(24px + env(safe-area-inset-bottom)); z-index:var(--z-sticky); display:inline-flex; align-items:center; gap:10px; min-height:48px; padding:0 18px; border:1px solid var(--lgz-rule); border-radius:24px; color:var(--lgz-ink); background:var(--lgz-surface); box-shadow:0 4px 16px #0002; font:600 14px/1.4 var(--lgz-f-body); text-decoration:none; }
 body[data-story-guide] .guide-context { gap:0 16px; }
}
@media(max-width:859px){
 html:has(body[data-story-guide]) { --guide-topbar:0px; --guide-header:56px; scroll-padding-top:72px; }
 body[data-story-guide] > .lgz-gbar { position:relative; }
 body[data-story-guide] > .lgz-mbar { top:0; }
 body[data-story-guide] .guide-context { display:block; padding-block:6px; }
 body[data-story-guide] .guide-context .lz-map-nav { justify-content:space-between; }
 body[data-story-guide] .guide-context .lz-guide-tools { justify-content:flex-start; gap:8px 16px; }
 body[data-story-guide] .guide-context a { font-size:13px; }
 body[data-story-guide] .guide-chapters-dialog { width:100%; max-width:none; margin:auto 0 0; max-height:calc(var(--visual-height,100dvh) - env(safe-area-inset-top) - 16px); border-radius:20px 20px 0 0; padding:20px max(20px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left)); }
 body[data-story-guide] .guide-chapters-dialog nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body[data-story-guide] .guide-chapters-dialog nav a { font-size:14px; }
 body[data-story-guide] :is(.trip-mode-overlay,.itinerary-customizer) { padding:max(8px,env(safe-area-inset-top)) 0 0; backdrop-filter:none; }
 body[data-story-guide] :is(.trip-mode-panel,.itinerary-customizer__panel) { width:100%; max-height:calc(var(--visual-height,100dvh) - env(safe-area-inset-top) - 8px); height:calc(var(--visual-height,100dvh) - env(safe-area-inset-top) - 8px); }
 body[data-story-guide] .trip-mode-content { padding-bottom:calc(20px + env(safe-area-inset-bottom)); }
 body[data-story-guide] .itinerary-customizer__body { padding-bottom:calc(24px + env(safe-area-inset-bottom)); }
 body[data-story-guide] :is(.trip-mode-header,.itinerary-customizer__head) { padding-left:max(16px,env(safe-area-inset-left)); padding-right:max(16px,env(safe-area-inset-right)); }
 body[data-story-guide] .trip-mode-dock { backdrop-filter:none; }
 body[data-story-guide] .trip-photo-viewer button { top:calc(12px + env(safe-area-inset-top)); right:max(12px,env(safe-area-inset-right)); }
 body[data-story-guide] .trip-mode-header .trip-map-provider>span { flex-basis:100%; }
 body[data-story-guide] .trip-map-provider button { flex:1; }
 body[data-story-guide] #lgz-directory .lgz-directory-nav { gap:8px; }
}
@media(max-height:500px) and (orientation:landscape){
 body[data-story-guide] .guide-chapters-dialog { margin:auto; width:calc(100% - 32px); border-radius:16px; }
 body[data-story-guide] .guide-chapters-dialog nav { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body[data-story-guide] .trip-mode-panel { grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr); grid-template-rows:minmax(0,1fr); width:min(900px,100%); }
 body[data-story-guide] .trip-mode-header { overflow:auto; }
 body[data-story-guide] .itinerary-customizer__head p { display:none; }
}
@media(prefers-reduced-motion:reduce){ body[data-story-guide] *,body[data-story-guide] *::before { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
