/* Shared Night Ride guide layout and controls. */
.tgc-guide{--tgc-border:var(--night-line,#414B65);--tgc-radius:var(--thmprk-radius,5px);color:var(--thmprk-color-ink,#F1F2FA);min-width:0;overflow-wrap:anywhere}
main.tgc-guide,#park-guide,.tgc-guide-hub-nav{box-sizing:border-box;width:min(calc(100% - 2 * var(--thmprk-gutter,20px)),var(--thmprk-content,80rem));max-width:none;margin-inline:auto;padding:32px 0}
.tgc-guide-embed{max-width:100%;padding:24px 0}
.tgc-guide a{color:var(--thmprk-color-action,#D9F978);text-underline-offset:.2em}
.tgc-guide h1{font-size:clamp(2.25rem,4.5vw,4.5rem);max-width:24ch;line-height:1.08}
.tgc-guide h2{font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.15}
.tgc-guide h3{font-size:1.375rem;line-height:1.3}
.tgc-guide section{margin-block:40px}.tgc-heading{margin-block:32px}.tgc-heading>p:last-child,#story>p,.tgc-note{max-width:75ch}
.tgc-eyebrow{font-size:.875rem;font-weight:700;color:var(--night-muted,#B4B8CA)}
.tgc-guide :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box;min-width:0;max-width:100%;min-height:48px;padding:11px 13px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius);background:var(--night-panel,#1A2032);color:var(--night-ink,#F1F2FA);font:400 1rem/1.5 var(--thmprk-font-body,sans-serif);color-scheme:dark}
.tgc-guide :is(input:not([type=checkbox]):not([type=radio]),select){height:48px}.tgc-guide textarea{min-height:8rem;resize:vertical}
.tgc-guide :is(input[type=checkbox],input[type=radio]){width:1.125rem;height:1.125rem;min-height:0;margin:0 .4rem 0 0;accent-color:var(--night-lime,#D9F978);vertical-align:middle}
.tgc-guide :is(button,.tgc-button){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius);background:transparent;color:var(--night-ink,#F1F2FA);font:700 .9375rem/1.45 var(--thmprk-font-body,sans-serif);text-align:center;text-decoration:none;cursor:pointer;transition:background-color 220ms ease-in-out,border-color 220ms ease-in-out,color 220ms ease-in-out}
.tgc-guide :is(button,.tgc-button):hover{background:var(--night-raised,#232B42);border-color:var(--night-lilac,#B9A9FF);color:var(--night-ink,#F1F2FA)}
.tgc-guide :is(.tgc-parkbar form button,.tgc-search button){background:var(--night-lime,#D9F978);border-color:var(--night-lime,#D9F978);color:var(--night-dark-ink,#151A24)}
.tgc-guide :is(.tgc-parkbar form button,.tgc-search button):hover{background:var(--night-lilac,#B9A9FF);border-color:var(--night-lilac,#B9A9FF);color:var(--night-dark-ink,#151A24)}
.tgc-guide button:disabled{cursor:not-allowed;opacity:.5}.tgc-guide :focus-visible{outline:3px solid var(--night-lilac,#B9A9FF);outline-offset:4px}
.tgc-guide [hidden]{display:none!important}.tgc-guide [id]{scroll-margin-top:190px;scroll-margin-bottom:150px}
.tgc-parkbar{position:sticky;top:0;z-index:90;background:var(--thmprk-color-canvas,#111522);border-block:1px solid var(--tgc-border)}
.tgc-parkbar-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}.tgc-park-name{font-weight:700;max-width:40%}
.tgc-parkbar form{display:flex;flex:0 1 28rem;align-items:end;gap:8px;margin:0}.tgc-parkbar label{display:grid;flex:1;gap:6px;min-width:0;margin:0}.tgc-search-label{font-size:.8125rem;font-weight:600}
.tgc-parkbar input{width:100%;min-width:0}.tgc-parkbar button{flex-shrink:0}
.tgc-nav{display:flex;flex-wrap:wrap;gap:8px}.tgc-nav a,.tgc-nav>span{padding:12px 16px;border-radius:var(--tgc-radius)}
.tgc-parkbar .tgc-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:8px 0;gap:8px;border:0}
.tgc-parkbar .tgc-nav>a,.tgc-parkbar .tgc-nav>span{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:48px;font-size:.9375rem;font-weight:600;text-decoration:none}
.tgc-nav [aria-current],.tgc-nav-compact [aria-current]{background:var(--night-lime,#D9F978);color:var(--night-dark-ink,#151A24)}
.tgc-nav small{display:block;font-size:.75rem}.tgc-nav-compact{display:none}.tgc-parkbar-inline{position:static}.tgc-guide-hub-nav{position:sticky;top:0;z-index:90;padding-block:0!important}.tgc-guide-hub-nav .tgc-parkbar{position:static}
body.admin-bar .tgc-parkbar:not(.tgc-parkbar-inline),body.admin-bar .tgc-guide-hub-nav{top:32px}
.tgc-search{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:20px 16px;margin-block:24px;padding:24px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius);background:var(--night-panel,#1A2032)}
.tgc-search label{display:grid;grid-column:span 3;gap:8px;min-width:0;margin:0;font-size:.875rem;font-weight:600}.tgc-search :is(input,select){width:100%}
.tgc-search .tgc-filter-q{grid-column:span 4}.tgc-search .tgc-filter-type{grid-column:span 2}.tgc-filter-actions{display:flex;grid-column:span 6;align-items:center;flex-wrap:wrap;gap:12px}.tgc-search>p{grid-column:1/-1;margin:0;order:-1}
.tgc-note{font-size:.9375rem;color:var(--night-muted,#B4B8CA);line-height:1.65}.tgc-filter-chips{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0}.tgc-filter-chips a{display:block;padding:10px 14px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius)}
.tgc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}.tgc-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius);background:var(--night-panel,#1A2032)}
.tgc-card h3{margin:0 0 16px}.tgc-card h3 a{color:var(--night-ink,#F1F2FA);text-decoration:none}.tgc-card h3 a:hover{color:var(--night-lime,#D9F978);text-decoration:underline}.tgc-card p{margin:0 0 16px}.tgc-card>button{align-self:start;margin-top:auto}
.tgc-card figure{margin:0 0 16px}.tgc-card figure img{aspect-ratio:16/9;object-fit:cover}.tgc-figure{margin-inline:0}.tgc-figure img{display:block;width:100%;height:auto;border-radius:var(--tgc-radius)}.tgc-figure figcaption{font-size:.875rem;line-height:1.6;padding-block:12px;color:var(--night-muted,#B4B8CA)}.tgc-credit{display:block}
.tgc-land-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;list-style:none;padding:0}.tgc-land-list a{display:flex;align-items:center;min-height:56px;height:100%;padding:16px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius);background:var(--night-panel,#1A2032);font-weight:600;text-decoration:none}.tgc-land-list a:hover{border-color:var(--night-lilac,#B9A9FF)}
.tgc-on-page{display:flex;flex-wrap:wrap;gap:12px 20px;padding:20px;background:var(--night-panel,#1A2032);border:1px solid var(--tgc-border);border-radius:var(--tgc-radius)}
.tgc-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}.tgc-facts>div{padding:20px;background:var(--night-panel,#1A2032);border-left:3px solid var(--night-lilac,#B9A9FF)}.tgc-facts>.tgc-fact-wide{grid-column:1/-1}.tgc-facts dt{font-weight:700}.tgc-facts dd{margin:8px 0 0}
.tgc-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;margin-block:32px}.tgc-pagination a{display:inline-flex;align-items:center;min-height:48px;padding:10px 16px;border:1px solid var(--tgc-border);border-radius:var(--tgc-radius)}
.tgc-day-row{padding:24px 0;border-bottom:1px solid var(--tgc-border)}.tgc-day-row label{display:block;margin-block:16px}.tgc-day-row button{margin:4px 8px 4px 0}.tgc-day-row textarea{display:block;width:100%;margin-top:8px}
.tgc-continuations{border-top:1px solid var(--tgc-border);margin-top:40px;padding-top:24px}.tgc-menu-item{padding:20px 0;border-bottom:1px solid var(--tgc-border)}.tgc-menu-item h5{font-size:1.15rem;margin:0 0 8px}.tgc-menu-item p{margin:8px 0}.tgc-menu-section{font-weight:700;border-bottom:2px solid var(--night-lilac,#B9A9FF);padding-bottom:10px}.tgc-print-plan{display:none}
@media(max-width:1000px){.tgc-search label,.tgc-search .tgc-filter-type{grid-column:span 4}.tgc-search .tgc-filter-q{grid-column:span 8}.tgc-filter-actions{grid-column:span 8}}
@media(max-width:782px){body.admin-bar .tgc-parkbar:not(.tgc-parkbar-inline),body.admin-bar .tgc-guide-hub-nav{top:46px}}
@media(max-width:760px){.tgc-parkbar-top{align-items:stretch;flex-direction:column;gap:12px;padding-block:12px}.tgc-park-name{max-width:none}.tgc-parkbar form{width:100%;flex-basis:auto}.tgc-parkbar:not(.tgc-parkbar-inline) .tgc-nav-primary{position:fixed;bottom:var(--thmprk-tray-height,0px);left:0;right:0;z-index:100;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--tgc-border);background:var(--night-bg,#111522)}.tgc-parkbar .tgc-nav>a,.tgc-parkbar .tgc-nav>span{min-height:48px;padding:8px 3px;font-size:clamp(.6875rem,3vw,.75rem);letter-spacing:-.01em;white-space:nowrap;overflow-wrap:normal}.tgc-nav small{font-size:.625rem}.tgc-guide:not(.tgc-guide-embed){padding-bottom:calc(112px + env(safe-area-inset-bottom) + var(--thmprk-tray-height,0px))}.tgc-parkbar-inline .tgc-nav-primary{position:static}}
@media(max-width:600px){main.tgc-guide,#park-guide{padding-top:24px}.tgc-heading{margin-block:28px}.tgc-guide section{margin-block:32px}.tgc-search{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px}.tgc-search label,.tgc-search .tgc-filter-type,.tgc-search .tgc-filter-q,.tgc-filter-actions{grid-column:1/-1}.tgc-search .tgc-filter-scope,.tgc-search .tgc-filter-sort{grid-column:span 1}.tgc-filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tgc-filter-actions :is(button,a){width:100%;padding-inline:10px}.tgc-card{padding:20px}.tgc-on-page{padding:16px}.tgc-guide h1{font-size:clamp(2rem,8.5vw,2.75rem)}body.admin-bar .tgc-parkbar:not(.tgc-parkbar-inline),body.admin-bar .tgc-guide-hub-nav{top:0}}
@media(max-width:359px){.tgc-parkbar:not(.tgc-parkbar-inline) .tgc-nav-primary{display:none}.tgc-nav-compact{display:block;position:fixed;bottom:var(--thmprk-tray-height,0px);left:0;right:0;z-index:100;max-height:70dvh;overflow:auto;padding:8px 16px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--tgc-border);background:var(--night-bg,#111522)}.tgc-nav-compact summary{min-height:48px;padding:10px;cursor:pointer;font-weight:700}.tgc-nav-compact nav{display:grid;gap:4px;padding:8px}.tgc-nav-compact nav>a,.tgc-nav-compact nav>span{display:block;min-height:48px;padding:12px}.tgc-search .tgc-filter-scope,.tgc-search .tgc-filter-sort{grid-column:1/-1}.tgc-filter-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tgc-guide *{scroll-behavior:auto!important;transition:none!important}}
@media print{.tgc-parkbar,.tgc-guide-hub-nav,.tgc-nav-primary{position:static!important}.tgc-nav-compact{display:none!important}body.tgc-printing>*{display:none!important}body.tgc-printing>.tgc-print-plan{display:block!important;color:#000;background:#fff;font:12pt/1.5 sans-serif}body.tgc-printing .tgc-print-plan a{color:#000}body.tgc-printing .tgc-print-plan img{display:none!important}.tgc-print-plan li{break-inside:avoid;margin-bottom:16pt}.tgc-print-plan h1{font-size:22pt}}

/* Keep keyboard focus clear of persistent guide navigation, including short viewports. */
.tgc-guide :is(a,button,input,select,textarea,summary){scroll-margin-block:230px 150px}
.tgc-guide :is(input:not([type=checkbox]):not([type=radio]),select,textarea,.tgc-button),.tgc-guide button:not([type=submit]),.tgc-guide-bar input{border-color:#76819A}
@media(max-height:500px){.tgc-parkbar:not(.tgc-parkbar-inline),.tgc-guide-hub-nav{position:static}.tgc-guide :is(a,button,input,select,textarea,summary){scroll-margin-block:24px 150px}}

/* Native park overview sections share the guide's sticky navigation clearance. */
body:has(.tgc-guide-hub-nav) :is([id],a,button,input,select,textarea,summary){scroll-margin-block:230px 150px}
@media(max-width:359px){.tgc-guide-hub-nav{position:static}.tgc-parkbar-inline .tgc-nav-primary{grid-template-columns:repeat(3,minmax(0,1fr))}body:has(.tgc-guide-hub-nav) :is([id],a,button,input,select,textarea,summary){scroll-margin-top:24px}}
@media(max-height:500px){body:has(.tgc-guide-hub-nav) :is([id],a,button,input,select,textarea,summary){scroll-margin-top:24px}}
