.today-page{max-width:1240px;margin:auto;padding:28px 28px 64px;--today-navy:#10264d;--today-mint:#bdeddd;--today-line:rgba(16,38,77,.16);--surface:var(--btp-surface,#fff)}
.today-page section,.today-page aside{min-width:0;scroll-margin-top:110px}
.today-hero{display:flex;justify-content:space-between;gap:32px;background:var(--today-navy);color:#fff;border-radius:24px;padding:44px 46px;margin-bottom:24px;overflow:hidden}
.today-hero h1{font-size:clamp(2.5rem,6vw,4.7rem);line-height:1.05;letter-spacing:-.045em;margin:20px 0;color:#fff}
.today-hero>div>p:last-child{color:#e1ecee;max-width:580px;font-size:1.08rem;line-height:1.7}
.today-hero .eyebrow{color:var(--today-mint);display:flex;flex-wrap:wrap;gap:12px}
.today-hero-note{align-self:center;flex:0 0 235px;padding-left:26px;border-left:1px solid #597084}
.today-hero-note p{font-size:1.2rem;line-height:1.5;margin:14px 0 20px}.today-hero-note a{color:var(--today-mint);font-weight:700}.today-spark{display:block;font-size:3.8rem;line-height:1;color:var(--today-mint)}
.today-controls{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(145px,1fr));gap:18px;background:var(--surface,#fff);border:1px solid var(--today-line);border-radius:18px;padding:24px}
.today-controls label{display:block;font-weight:700;font-size:0.85rem;margin-bottom:8px}.today-controls select{width:100%;min-height:48px;padding:10px 30px 10px 12px;border:1px solid var(--today-line);border-radius:8px;background:var(--surface,#fff);color:inherit;font:inherit;font-size:0.9rem}
.today-location-row{display:flex;flex-wrap:wrap;gap:8px}.today-location-row select{flex:1 1 210px;min-width:0}.today-location-row button{font-size:0.8125rem;padding:9px 12px;min-height:44px;white-space:normal}
.today-control-note{grid-column:1/-1;font-size:0.8125rem;line-height:1.6;margin:0;color:var(--muted,#546173)}
.today-status{font-size:0.85rem;margin:16px 2px 24px;min-height:1.6em}.today-page .eyebrow{font-size:0.8125rem;letter-spacing:.14em;font-weight:800;margin:0 0 8px}.today-page h2{font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.2;letter-spacing:-.025em;margin:0}.today-page h3{font-size:1.1rem;line-height:1.4;margin:0 0 10px}
.today-section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:20px}.today-section-heading>a{font-size:0.85rem;font-weight:700}.today-page>section{margin-top:36px}.today-page>.today-hero{margin-top:0}.today-subtle{font-size:0.8125rem;line-height:1.65;color:var(--muted,#546173)}
.today-weather{padding-bottom:30px;border-bottom:1px solid var(--today-line)}.today-weather-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px}.today-temperature{font-size:2.5rem;line-height:1.1;font-weight:800;letter-spacing:-.04em;margin:0 0 8px}.today-weather-grid p{margin:8px 0;line-height:1.6}.today-weather-grid>div+div{border-left:1px solid var(--today-line);padding-left:24px}.today-hourly{list-style:none;padding:0;margin:12px 0;display:flex;flex-wrap:wrap;gap:8px 20px}.today-hourly li{display:flex;flex-direction:column;gap:4px;font-size:0.8125rem}.today-weather-alert{padding:14px 18px;background:#fff1d5;border-left:4px solid #a85c00;color:#503300;border-radius:8px;margin-top:16px}.today-weather-alert p{margin:5px 0}.today-weather-alert a{color:inherit;text-decoration:underline}
.today-pick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.today-place-card{border:1px solid var(--today-line);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:12px;background:var(--surface,#fff)}.today-place-card h3{margin:0;font-size:1.22rem}.today-place-card h3 a{color:inherit;text-decoration:none}.today-place-card h3 a:hover{text-decoration:underline}.today-place-card p{margin:0;font-size:0.88rem;line-height:1.65}.today-place-card .today-reason{color:var(--today-navy);background:var(--today-mint);padding:7px 10px;border-radius:6px;font-size:0.8125rem;font-weight:700;align-self:start}.today-place-card .today-distance{font-size:0.8125rem;color:var(--muted,#546173);font-weight:700}.today-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;padding-top:6px}.today-card-actions button{min-height:44px;padding:10px 15px;font-size:0.8125rem}.today-card-actions a{font-size:0.8125rem}.today-card-details summary{font-size:0.8125rem;min-height:32px;padding:5px 0;cursor:pointer}.today-card-details p{font-size:0.8125rem;margin-top:8px}
.today-main-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:44px;margin-top:48px}.today-event-group{margin:26px 0 12px;font-size:0.8125rem;text-transform:uppercase;letter-spacing:.09em}.today-event{padding:20px 0;border-bottom:1px solid var(--today-line)}.today-event h3{margin:7px 0}.today-event p{font-size:0.85rem;line-height:1.65;margin:8px 0}.today-event .today-event-meta{font-size:0.8125rem;color:var(--muted,#546173)}.today-event-links{display:flex;flex-wrap:wrap;gap:16px;font-size:0.8125rem}.today-event-tag{display:inline-block;background:var(--today-mint);color:var(--today-navy);border-radius:5px;padding:5px 8px;font-size:0.8125rem;font-weight:700}
.today-side{display:flex;flex-direction:column;gap:26px}.today-outing{background:var(--today-navy);color:#fff;border-radius:18px;padding:26px}.today-outing h2,.today-outing a{color:#fff}.today-outing .eyebrow{color:var(--today-mint)}.today-outing p{font-size:0.85rem;line-height:1.6}.today-outing ol{padding-left:22px;margin:20px 0}.today-outing li{margin:15px 0;line-height:1.4}.today-outing li button{display:block;font-size:0.8125rem;color:var(--today-mint);background:transparent;border:0;text-decoration:underline;min-height:44px;padding:4px 0}.today-outing .today-plan-link{display:block;background:var(--today-mint);color:var(--today-navy);padding:13px 16px;border-radius:8px;font-weight:800;text-align:center;text-decoration:none}.today-outing #today-share{width:100%;margin-top:12px;min-height:44px;border:1px solid #9aadc4;color:#fff;background:transparent;border-radius:8px;font:inherit;font-size:0.85rem}.today-outing #today-share-status{margin:0}.today-specials{border:1px solid var(--today-line);border-radius:18px;padding:26px}.today-specials p,.today-help p{font-size:0.85rem;line-height:1.7}.today-help{padding:0 6px}.today-help>a{display:block;font-size:0.85rem;margin:12px 0}.today-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.today-place-grid .today-place-card{padding:20px}.today-data-note{margin-top:38px;border-top:1px solid var(--today-line);padding-top:22px;font-size:0.85rem;line-height:1.8}.today-data-note summary{min-height:44px;font-weight:700;cursor:pointer}.today-empty{padding:24px 0;font-size:0.9rem;line-height:1.7}.today-retry{margin-left:12px}
html[data-btp-theme=dark] .today-page{--today-line:rgba(191,217,236,.24);--surface:#15273e;--muted:#b9c7d7}html[data-btp-theme=dark] .today-controls select{color:#edf3f8}html[data-btp-theme=dark] .today-weather-alert{background:#46351c;color:#ffebc0}
.today-page .today-hero h1,.today-page .today-outing h2,.today-page .today-outing>a{color:#fff}.today-page .today-outing .today-plan-link{color:var(--today-navy)}.today-page .today-outing li button{color:var(--today-mint)}
.today-page #today-weather-content{min-height:220px}
.today-outing-jump{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:18px 0 10px;padding:12px 16px;border-radius:10px;background:var(--today-mint);color:var(--today-navy);font-size:0.88rem;font-weight:700}.today-outing-jump[hidden]{display:none}.today-outing-jump a{color:inherit;min-height:32px;display:inline-flex;align-items:center;gap:4px}
.today-outing .today-stop-name{display:block;font-weight:700}.today-outing .today-stop-note{display:block;margin-top:2px}.today-page .today-outing li button{width:auto;box-shadow:none;text-align:left;min-width:44px}.today-outing .today-stop-note{font-size:0.8125rem;color:#d4e2ec}.today-outing .today-fit{margin:14px 0 6px}.today-outing .today-fit-warning{padding:10px 12px;border-radius:8px;background:#fff1d5;color:#503300}
.today-outing .today-limits{margin:16px 0 8px}.today-outing .today-fit-warning p{margin:6px 0;color:#503300}.today-outing .today-accept{display:block;width:100%;min-height:44px;margin:10px 0 4px;border:0;border-radius:8px;background:var(--today-navy);color:#fff;font:inherit;font-weight:800;font-size:0.85rem;padding:10px 14px}.today-page .today-outing .today-plan-secondary{background:transparent;color:#fff;border:1px solid var(--today-mint)}.today-outing .today-subtle-light{font-size:0.8125rem;color:#d4e2ec;margin:6px 0 0}
.today-outing .today-plan-pending{width:100%;border:0;font:inherit;font-weight:800;opacity:.7;cursor:progress}
/* The shared outline style sets its background with !important; a saved stop needs a visible state. */
.today-card-actions button.outline[aria-pressed=true]{background:var(--today-mint)!important;color:var(--today-navy)!important;border-color:var(--today-navy)}.today-card-actions button[aria-disabled=true]{opacity:.7;cursor:not-allowed}.today-empty .outline{margin-left:8px;min-height:44px}.today-outing h2:focus{outline:2px solid var(--today-mint);outline-offset:4px}
.btp-today .site-footer{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;padding:40px max(24px,calc((100vw - 1184px)/2))}.btp-today .site-footer>nav{display:block}.btp-today .site-footer .footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.btp-today .site-footer h2{font-size:1rem;letter-spacing:0;margin-bottom:16px}.btp-today .site-footer .footer-note{grid-column:1/-1}.btp-today .site-footer a{font-size:0.8125rem}
@media(max-width:900px){.btp-today .site-footer{grid-template-columns:1fr}.btp-today .site-footer .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.today-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.today-location-field{grid-column:1/-1}.today-location-row select{flex-grow:0;flex-basis:370px}.today-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-hero{padding:36px}.today-main-grid{gap:26px}}
@media(max-width:760px){.today-page{padding:18px 18px 40px}.today-hero{padding:28px;gap:20px;border-radius:18px}.today-hero-note{display:none}.today-hero h1{font-size:3.1rem}.today-pick-grid{grid-template-columns:1fr}.today-main-grid{grid-template-columns:1fr;margin-top:36px}.today-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.today-help{grid-column:1/-1}.today-weather-grid{grid-template-columns:1fr 1fr}.today-weather-grid>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--today-line);padding:18px 0 0}.today-place-card{padding:22px}.today-wide-break{display:none}}
@media(max-width:480px){.today-page{padding:14px 14px 32px}.today-hero{padding:25px 22px}.today-hero h1{font-size:2.7rem}.today-hero .eyebrow{font-size:0.8125rem}.today-controls{padding:18px;grid-template-columns:1fr;gap:16px 12px}.today-controls>div:last-of-type{grid-column:1/-1}.today-controls select{font-size:1rem}.today-location-row select{flex:1 1 100%}.today-location-row button{width:100%}.today-weather-grid{grid-template-columns:1fr}.today-weather-grid>div+div{border-left:0;border-top:1px solid var(--today-line);padding:16px 0 0}.today-side,.today-place-grid{grid-template-columns:1fr}.today-weather-grid>div:last-child{grid-column:auto}.today-section-heading{align-items:start}.today-hero>div>p:last-child{font-size:0.95rem}}
:where(html[data-btp-theme="dark"]) .today-hero{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-hero h1{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-hero>div>p:last-child{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-hero-note{border-left:1px solid var(--btp-control)}:where(html[data-btp-theme="dark"]) .today-controls{background:var(--surface,var(--btp-surface))}:where(html[data-btp-theme="dark"]) .today-controls select{background:var(--surface,var(--btp-surface))}:where(html[data-btp-theme="dark"]) .today-control-note{color:var(--muted,var(--btp-ink))}:where(html[data-btp-theme="dark"]) .today-subtle{color:var(--muted,var(--btp-ink))}:where(html[data-btp-theme="dark"]) .today-weather-alert{background:var(--btp-surface);border-left:4px solid var(--btp-control);color:var(--btp-status-danger)}:where(html[data-btp-theme="dark"]) .today-place-card{background:var(--surface,var(--btp-surface))}:where(html[data-btp-theme="dark"]) .today-place-card .today-distance{color:var(--muted,var(--btp-ink))}:where(html[data-btp-theme="dark"]) .today-event .today-event-meta{color:var(--muted,var(--btp-ink))}:where(html[data-btp-theme="dark"]) .today-outing{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-outing h2,:where(html[data-btp-theme="dark"]) .today-outing a{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-outing #today-share{border:1px solid var(--btp-control);color:var(--btp-on-dark)}html[data-btp-theme="dark"][data-btp-theme=dark] .today-controls select{color:var(--btp-on-dark)}html[data-btp-theme="dark"][data-btp-theme=dark] .today-weather-alert{background:var(--btp-night);color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-page .today-hero h1,:where(html[data-btp-theme="dark"]) .today-page .today-outing h2,:where(html[data-btp-theme="dark"]) .today-page .today-outing>a{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-outing .today-stop-note{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-outing .today-fit-warning{background:var(--btp-surface);color:var(--btp-status-danger)}:where(html[data-btp-theme="dark"]) .today-outing .today-fit-warning p{color:var(--btp-status-danger)}:where(html[data-btp-theme="dark"]) .today-outing .today-accept{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-page .today-outing .today-plan-secondary{color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .today-outing .today-subtle-light{color:var(--btp-on-dark)}