html{scroll-behavior:smooth;scroll-padding-top:110px}body{padding:0;margin:0}.wrap{display:block}*{box-sizing:border-box}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--lake);outline-offset:4px}button{cursor:pointer;color:var(--ink)}
.site-nav{position:sticky;top:0;z-index:1001;background:var(--paper);border-bottom:1px solid var(--line);padding:12px max(20px,calc((100vw - 1100px)/2));display:flex;align-items:center;gap:20px;flex-wrap:wrap}.brand{font-size:18px;font-weight:800;text-decoration:none;color:var(--ink);white-space:nowrap}.brand small{font-size:12px;color:var(--muted);display:block}.site-nav nav{display:flex;gap:4px;flex:1}.site-nav nav a{padding:10px 12px;border-radius:8px;text-decoration:none;white-space:nowrap;font-size:14px}.site-nav nav a[aria-current]{background:var(--lake-soft);color:var(--lake);font-weight:700}.day-jump{display:flex;gap:8px;align-items:center;font-size:12px;max-width:245px}.day-jump select{min-height:42px;max-width:190px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:6px}.wrap{max-width:1100px;margin:auto;padding:24px 22px}.page-heading{padding:28px 0 22px}.page-heading h1{font-size:clamp(26px,4.1vw,44px);line-height:1.35;max-width:900px}.page-heading p{max-width:760px;font-size:16px;line-height:1.8}section{margin:28px 0}.skip-link{position:fixed;top:-80px;left:10px;background:var(--paper);padding:12px;z-index:9999}.skip-link:focus{top:10px}
.day-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.day-card{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--paper);text-decoration:none;color:var(--ink)}.day-card:hover{border-color:var(--lake);background:var(--lake-soft)}.day-card>span{font:600 13px var(--mono);color:var(--lake)}.day-card h3{font-size:20px;line-height:1.55}.day-card small{color:var(--muted);flex:1}.day-card>b{font-size:14px;color:var(--lake);margin-top:4px}.callout{padding:22px;border:1px solid var(--line);border-left:4px solid var(--lake);border-radius:10px;margin:24px 0;background:var(--paper)}.callout p{line-height:1.8}.day-pager{display:flex;justify-content:space-between;gap:16px;margin:12px 0 24px}.day-pager a{padding:10px 14px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.day{margin:0}.day .meals{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.meal li{border-bottom:1px solid var(--line);padding:14px 0}.meal li:last-child{border:0}.lk{display:inline-block;min-height:32px;padding:8px 10px}.navbtn{display:inline-block;padding:12px 14px;line-height:1.4}.price-update{padding:14px 16px;background:var(--lake-soft);border-left:3px solid var(--lake);line-height:1.8}
.preview-grid{display:flex;gap:6px;overflow:hidden;margin-top:12px}.thumb{padding:0;border:0;border-radius:8px;background:var(--bg);flex:1;min-width:0;overflow:hidden}.thumb img{display:block;width:100%;height:110px;object-fit:cover;transition:opacity .2s}.thumb:hover img{opacity:.8}.photo-preview.large .thumb img{height:160px}.album-link{border:0;background:none;padding:8px 0;color:var(--lake);font-size:13px;min-height:40px;text-align:left}.hotel-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.hotel-card{background:var(--paper);border:1px solid var(--line);padding:22px;border-radius:12px;scroll-margin-top:120px}.hotel-card h2{font-size:22px}.hotel-card dl{font-size:14px;line-height:1.75;margin:10px 0}.hotel-card dl>div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.hotel-card dt{color:var(--muted)}.hotel-card dd{margin:0}.table-scroll{max-width:100%;overflow-x:auto;margin:14px 0}.table-scroll table{min-width:660px;width:100%;margin:0}.prep-group{border:1px solid var(--line);border-radius:10px;background:var(--paper);margin:14px 0;padding:0 18px}.prep-group>summary{font-weight:700;font-size:18px;padding:18px 0;cursor:pointer}.prep-group section{margin-top:0}.prep-group>summary small{font-size:13px}.source-note{font-size:12px;color:var(--muted)}
.photo-dialog{width:min(920px,94vw);max-height:92dvh;padding-bottom:20px;overflow:auto}.photo-stage{padding:0 18px}.photo-stage #photo-main{display:block;width:100%;height:52vh;object-fit:contain;background:var(--bg);border-radius:6px}.photo-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0}.photo-controls button{border:1px solid var(--line);border-radius:7px;background:var(--paper);padding:8px 12px;min-height:44px}.photo-controls button:disabled{opacity:.35;cursor:default}#photo-thumbs{display:flex;overflow-x:auto;gap:8px;padding:4px 18px 12px}#photo-thumbs button{flex:0 0 80px;background:none;padding:2px;border:2px solid transparent;border-radius:6px}#photo-thumbs button[aria-pressed=true]{border-color:var(--lake)}#photo-thumbs img{display:block;width:72px;height:52px;object-fit:cover;border-radius:3px}#photo-note,#photo-source{margin:8px 18px;display:block}.photo-top{gap:12px}.photo-top h3{margin:0;line-height:1.5}.photo-close{flex-shrink:0;padding:6px 10px}.map-scroll{overflow-x:auto}.map-scroll svg{min-width:760px}.mp-lbl{font-size:25px}.mp-stay{font-size:29px}.map-leader{opacity:.8}
.saving-total{background:var(--paper);border:2px solid var(--lake);border-radius:12px;padding:24px;margin:0 0 26px;display:grid;gap:8px}.saving-total strong{font:700 38px var(--mono);color:var(--lake)}.saving-total p{margin:0;font-size:13px;color:var(--muted)}.saving-total button{justify-self:start;padding:10px;border:1px solid var(--line);background:var(--bg);border-radius:7px;margin-top:10px}.options-list{display:grid;gap:24px}.option-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;margin:18px 0}.option-meta{font-size:14px;color:var(--lake);font-weight:700}.option-card h3{font-size:23px;margin:10px 0 18px}.option-card p{line-height:1.8}.option-card fieldset{padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.option-card label{padding:16px;border:1px solid var(--line);border-radius:8px;display:flex;gap:10px;cursor:pointer;font-size:14px;line-height:1.7}.option-card label:has(input:checked){border:2px solid var(--lake);padding:15px;background:var(--lake-soft)}.option-card input{width:20px;height:20px;flex-shrink:0;accent-color:var(--lake)}.option-card small{display:block;color:var(--muted);font-size:14px;margin-top:8px}.option-card summary{cursor:pointer;padding:10px 0;color:var(--lake)}.option-card .photo-preview{max-width:480px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}footer{border-top:1px solid var(--line);padding:24px 0;margin-top:40px;color:var(--muted);font-size:12px;line-height:1.8}
@media(max-width:760px){html{scroll-padding-top:175px}.site-nav{padding:10px 14px;gap:8px}.brand{font-size:16px}.brand small{display:inline;margin-left:8px}.site-nav nav{order:3;flex-basis:100%;overflow-x:auto}.site-nav nav a{padding:9px 11px;font-size:13px}.day-jump{margin-left:auto;font-size:0}.day-jump select{max-width:128px;font-size:12px;min-height:36px}.wrap{padding:14px 16px}.page-heading{padding:16px 0}.day-cards,.hotel-cards{grid-template-columns:1fr}.day-card{padding:18px}.day-card h3{font-size:18px}.hotel-card{padding:17px}.photo-preview.large .thumb img{height:118px}.photo-stage{padding:0 10px}.photo-stage #photo-main{height:39dvh}.photo-dialog{max-height:92dvh;width:96vw}.photo-top{padding:12px}.photo-top h3{font-size:16px}.photo-controls{font-size:13px}.photo-controls button{padding:8px}.option-card{padding:18px}.option-card fieldset{grid-template-columns:1fr}.option-card h3{font-size:20px}.day .meals{grid-template-columns:1fr}.day .dh{flex-wrap:wrap}.row{font-size:15px}.photo-preview .thumb img{height:100px}.day-pager{font-size:13px}.day-pager a{padding:10px}.hotel-card dl>div{grid-template-columns:90px 1fr}.map-scroll svg{min-width:760px}.facts{display:grid}.chip{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.draft-status{font-size:13px;line-height:1.8;padding:12px 16px;background:var(--lake-soft);border-radius:8px;margin:0 0 24px}.review-jumps{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.review-jumps a{border:1px solid var(--line);border-radius:8px;padding:10px 14px;text-decoration:none}.prep-group>p{line-height:1.95;margin:0 0 18px}.prep-group[open]>summary{color:var(--lake)}.site-nav nav{min-width:0;overflow-x:auto}#daily details{scroll-margin-top:160px}#value table,#hotels table{line-height:1.8}#limits li{margin:12px 0;line-height:1.85}
@media print{.site-nav,.photo-dialog,.photo-preview,.day-pager{display:none}.wrap{max-width:none}details>section{display:block!important}.option-card{break-inside:avoid}}

.shop-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.shop-card{padding:20px;border:1px solid var(--line);background:var(--paper);border-radius:10px}.shop-card h3{font-size:19px;margin:0}.shop-card .preview-grid img{height:130px}.shop-card .lks{display:flex;gap:8px;flex-wrap:wrap}.prep-group .shop-card{padding:14px}@media(max-width:760px){.shop-cards{grid-template-columns:1fr}.shop-card .preview-grid img{height:105px}}

.map-feedback{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.map-feedback p{margin:0}.map-feedback button{padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);min-height:44px}.map-feedback a{padding:10px 0}.map-feedback [hidden]{display:none!important}#route-schematic{scroll-margin-top:160px}
.day10-choice{margin-top:0}.day10-choice>p{font-size:1rem;line-height:1.85}.day10-choice .local-note{font-size:.875rem;color:var(--muted)}.day10-pick{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}.day10-pick legend{font-size:1rem;margin-bottom:10px}.day10-pick label{display:flex;gap:12px;border:2px solid var(--line);border-radius:10px;padding:18px;cursor:pointer;background:var(--paper)}.day10-pick label:has(input:checked){border-color:var(--lake);background:var(--lake-soft)}.day10-pick input{width:22px;height:22px;flex-shrink:0;accent-color:var(--lake)}.day10-pick small{display:block;font-size:.875rem;line-height:1.8;margin-top:8px;color:var(--muted)}.day10-jumps{display:flex;gap:18px;flex-wrap:wrap}.day10-jumps a{padding:8px 0}.day10-plans{display:grid;grid-template-columns:1fr 1fr;gap:22px}.day10-plan{background:var(--paper);border:2px solid var(--line);padding:24px;border-radius:12px;scroll-margin-top:140px;min-width:0}.day10-plan h2{font-size:1.6rem;margin:10px 0}.day10-plan p{font-size:1rem;line-height:1.85}.plan-fit{color:var(--muted)}.day10-timeline{list-style:none;padding:0;margin:24px 0}.day10-timeline li{border-top:1px solid var(--line);padding:16px 0}.day10-timeline time{font-family:var(--mono);font-size:.9rem;color:var(--lake);display:block;margin-bottom:6px}.day10-timeline b{font-size:1rem}.day10-timeline p{margin:6px 0 0;color:var(--muted)}.plan-cost{background:var(--lake-soft);padding:16px;border-radius:8px}.plan-cost p{font-size:.875rem;margin:8px 0 0}body:has(.day10-pick input[value="original"]:checked) #plan-a,body:has(.day10-pick input[value="alternative"]:checked) #plan-b{border-color:var(--lake)}@media(max-width:760px){.day10-pick,.day10-plans{grid-template-columns:1fr}.day10-plan{padding:18px;scroll-margin-top:160px}}
