/* Apple HIG-informed web tokens. Native pt and CSS px are different units. */
:root{--hit:44px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-control:12px;--radius-card:16px;--body:1.0625rem;--callout:1rem;--subhead:.9375rem;--footnote:.8125rem;--caption:.75rem;--large-title:2.125rem;--title1:1.75rem;--title2:1.375rem;--title3:1.25rem}
html{-webkit-text-size-adjust:100%;font-size:100%}.circle,.row-tools button,.references button{min-width:var(--hit);min-height:var(--hit)}.solid,.outline,.tabs button,.back,.dock button,.dock a{min-height:var(--hit);min-width:var(--hit)}.references button{right:4px;top:4px}.nav a{min-height:var(--hit);display:inline-flex;align-items:center}.fold-icon{font-style:normal;pointer-events:none}button:disabled{cursor:default}.tabs{gap:4px;padding:4px;background:var(--sage);border-radius:14px}.tabs button{flex:1;text-align:center;padding-inline:10px;background:transparent;min-width:0}.tabs button[aria-selected=true]{background:var(--white);color:var(--ink);box-shadow:0 2px 5px #26352215}.dialog-head .tabs+.tabs{margin-top:10px}.trip-stop time{font-variant-numeric:tabular-nums}.gallery-controls{align-items:center}.dialog-body{padding-bottom:35px}.map-button{cursor:zoom-in}.stop-link{min-height:72px}.dialog-body .actions a{font-size:var(--footnote)}.phrase>.outline{flex-shrink:0}.edit-row input,.edit-row textarea,.edit-title,.add-form input,.edit-note,.provider select{font-size:1rem;min-height:44px}.upload-label{min-height:44px;align-items:center}.topbar{padding-top:env(safe-area-inset-top);height:calc(78px + env(safe-area-inset-top))}.wrap{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.dock{max-width:calc(100% - 24px);box-shadow:0 4px 8px #26352212,0 15px 35px #26352216}.toast{bottom:calc(90px + env(safe-area-inset-bottom));z-index:160}.trip-intro,.feature,.edit-row,.phrase,.hero,.photo-note,.chapter-head{min-width:0}.trip-intro>div,.feature>div,.edit-row>div,.phrase>div,.hero>div,.chapter-head>div{min-width:0;overflow-wrap:anywhere}.row-tools{padding-top:18px}.edit-row{grid-template-columns:100px 1fr 96px}.dialog-body .references img{cursor:zoom-in}.text-fold>summary,.section-fold>summary{min-height:56px}.tabs button:focus-visible{outline-offset:-3px}
@media(max-width:760px){body{font-size:var(--body);line-height:1.65}.topbar{height:calc(60px + env(safe-area-inset-top))}.wrap{width:calc(100% - 40px)}.hero h1{font-size:3.5rem;line-height:1.02}.hero p,.periods p,.feature p,.tips p,.shopping-copy p,.food-intro p,.trip-stop p{font-size:var(--body);line-height:1.65}.eyebrow{font-size:.6875rem;line-height:1.5;letter-spacing:.12em}.chapter h2{font-size:var(--large-title);line-height:1.22}.feature h3,.trip-intro h2{font-size:var(--title1);line-height:1.25}.day>summary h3,.dialog-top h2,.trip-stop h3{font-size:var(--title2);line-height:1.3}.mini>summary b,.photo-note h4,.small-place h3{font-size:var(--title3)}.chapter-head .muted,.day>summary p,.photo-note p,.trip-intro p,.small-place p,.guard,.map-foot,.check span,.trip-stats,.transfer{font-size:var(--footnote);line-height:1.5}.outline,.solid,.back,.tabs button,.provider{font-size:var(--subhead)}.nav a,.stop-link b{font-size:var(--footnote)}.stop-link small,.stop-link span,.gallery-caption,.cover figcaption{font-size:var(--caption);letter-spacing:0}.mini>summary{padding:16px}.stop-strip{gap:8px}.stop-link{padding:12px}.periods>div{grid-template-columns:34px 1fr;gap:14px}.photo-note{grid-template-columns:90px 1fr}.photo-note .eyebrow{font-size:.6875rem}.facts b{font-size:var(--subhead)}.facts small{font-size:var(--caption)}.dialog-head{padding-top:calc(16px + env(safe-area-inset-top))}.trip-intro{grid-template-columns:1fr 88px}.trip-intro img{width:88px;height:132px}.dialog-body{padding-inline:max(20px,env(safe-area-inset-left));padding-bottom:28px}.dialog-foot{padding-bottom:max(12px,env(safe-area-inset-bottom));gap:8px}.dialog-foot .outline,.dialog-foot .solid{padding:10px 12px}.edit-row{grid-template-columns:90px 1fr}.row-tools{padding:0}.edit-row label{font-size:var(--caption)}.edit-row textarea{font-size:1rem}.edit-label{font-size:var(--footnote)}.add-form{grid-template-columns:90px 1fr}.check{min-height:60px}.check b{font-size:var(--body)}.check input{width:24px;height:24px}.dock button,.dock a{font-size:var(--subhead);padding:10px 14px}.gallery .photo{height:auto;aspect-ratio:4/3;object-fit:cover}.shopping-pair .photo{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.section-fold>summary b{font-size:var(--body)}.text-fold>summary{font-size:var(--subhead)}.trip-stop{grid-template-columns:48px 1fr}.trip-stop time{font-size:var(--footnote)}.phrase b{font-size:var(--title3)}.phrase p{font-size:var(--footnote)}.mini .stop-link{word-break:normal}.request{font-size:var(--footnote)}.dialog-head{position:relative}.dialog-foot{position:sticky}.references img{height:160px}.footer p{font-size:var(--footnote)}}
@media(max-width:760px){.edit-row{grid-template-columns:114px 1fr}.edit-row input[type=time]{padding-inline:8px;min-width:0}.add-form{grid-template-columns:114px 1fr}.gallery-controls [data-counter]{min-width:48px}.trip-intro .eyebrow{white-space:normal}.transfer{border-left:1px solid var(--line);margin-left:22px;padding-left:34px}.hero .actions{padding-bottom:16px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:3rem}.dialog-body{padding-inline:16px}.dialog-head{padding-inline:16px}.tabs button{padding-inline:6px;font-size:var(--footnote)}.trip-intro{grid-template-columns:1fr}.trip-intro img{display:none}.facts{gap:12px}.photo-note{grid-template-columns:1fr}.photo-note img{width:100%;height:145px;object-fit:cover}.dock button,.dock a{padding-inline:11px}.summary-strip article{gap:12px}.chapter-head{gap:10px}.stop-strip{grid-template-columns:1fr}.phrase{align-items:start}.edit-row{grid-template-columns:1fr}.row-tools{grid-column:1}.add-form{grid-template-columns:1fr}.add-form button{grid-column:auto}}
@media(prefers-reduced-transparency:reduce){.nav,.dock,.dialog-head,.dialog-foot{background:var(--paper);backdrop-filter:none}dialog::backdrop{backdrop-filter:none;background:#20271ccc}}@media(prefers-contrast:more){:root{--muted:#42483f;--line:#899181}.solid{background:#2b3829}}
