/* A light, consistent visitor interface; lodging identities retain their own colors. */
:root{--visitor-green:#496f3d;--visitor-ink:#293a31;--visitor-muted:#596b5b}
body{color:var(--visitor-ink);background:#f8f9f7}
.primary,.cd-primary-action,.budget-copy{background:var(--visitor-green)}
.find-search input::placeholder{color:#687a6b;opacity:1}
.result-location,.result-location span,.card-amenities,.card-price>span,.card-freshness,.picture-label,.small-caption,.xp-note,.tool-hint,.sheet-fineprint,.local-caption,.cd-muted,.cd-photo-meta,.budget-local-note{color:var(--visitor-muted)}
.result-location,.card-amenities,.card-freshness,.card-price>span,.picture-label,.result-tags>span{font-size:12px}
.directory-dock .filter-pill{min-height:40px}.directory-dock .filter-toolbar{min-height:40px}
.directory-dock .view-switch a{width:36px;height:36px}.directory-dock .view-switch{padding:0}
.directory-dock .result-heading{min-height:44px;height:44px}
.directory-dock .stay-more{width:28px;right:-2px}
.directory-dock .stay-tab>small,.directory-dock .stay-all>small{font-size:11px}
.browse-options{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 16px 12px;min-height:40px}
.browse-options>button{display:flex;align-items:center;gap:7px;min-height:44px;color:var(--visitor-muted);font-size:12px;padding:4px 0}
.browse-options .icon{width:16px;height:16px}
.density-switch{display:flex;padding:3px;border:1px solid #dce3d9;border-radius:10px;background:#fff;gap:3px}
.density-switch button{min-height:36px;min-width:48px;border-radius:7px;font-size:12px;color:var(--visitor-muted)}
.density-switch button[aria-pressed=true]{background:#e8eee4;color:#3f6136;font-weight:650}
.results-grid.is-compact{gap:12px}
.results-grid.is-compact>.result-card{display:grid;grid-template-columns:94px minmax(0,1fr);gap:12px;padding:12px;border-radius:14px;align-items:start}
.results-grid.is-compact .result-photo{width:94px;height:106px;min-height:0;border-radius:10px;overflow:hidden;position:relative;grid-column:1;grid-row:1}
.results-grid.is-compact .result-photo>a{height:100%;display:block}.results-grid.is-compact .result-photo img{height:100%;width:100%;object-fit:cover}
.results-grid.is-compact .save-button{top:5px;right:5px;width:34px;height:34px;min-width:34px;min-height:34px}
.results-grid.is-compact .save-button .icon{width:18px;height:18px}
.results-grid.is-compact .picture-label{left:5px;right:auto;bottom:5px;padding:3px 5px;font-size:10px;max-width:84px}
.results-grid.is-compact .result-copy{padding:0;min-width:0;grid-column:2;grid-row:1}
.results-grid.is-compact h2{font-size:16px;line-height:1.5;margin:3px 0 7px}
.results-grid.is-compact .result-location{font-size:12px;margin:0;display:block}.results-grid.is-compact .result-location span{display:none}
.results-grid.is-compact .result-tags{gap:4px;margin:0 0 6px}.results-grid.is-compact .result-tags>span{font-size:11px;padding:3px 5px}
.results-grid.is-compact .card-amenities,.results-grid.is-compact .card-match,.results-grid.is-compact .card-freshness{display:none}
.results-grid.is-compact .card-price{margin:5px 0 0;padding:7px 0 0}.results-grid.is-compact .card-price>span{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.results-grid.is-compact .card-price p{font-size:12px;line-height:1.7;-webkit-line-clamp:2;margin:3px 0 0}
.results-grid.is-compact .result-bottom{display:block;padding:5px 0 0;margin:0;border:0}.results-grid.is-compact .result-bottom>a{display:flex;align-items:center;font-size:12px;min-height:36px}
.results-grid.is-compact .camp-tool-actions{display:flex;gap:5px;margin-top:0}.results-grid.is-compact .camp-tool-actions button{font-size:11px;min-height:36px;padding:5px 7px;flex:1}
.saved-organization{margin:0 16px 8px;padding:14px;border:1px solid #dfe5dc;border-radius:14px;background:#fff}
.saved-status-tabs{display:flex;gap:4px;padding-bottom:10px;border-bottom:1px solid #e8ede4}
.saved-status-tabs button{flex:1;min-height:40px;border-radius:8px;font-size:13px;color:var(--visitor-muted)}
.saved-status-tabs button[aria-pressed=true]{background:#e9f0e5;color:#3f6136;font-weight:650}
.saved-status-tabs b{font-size:11px;margin-left:6px;font-weight:500}
.saved-folder-row{display:flex;gap:10px;align-items:center;margin-top:10px}.saved-folder-row select{min-width:0;flex:1;min-height:44px;border:1px solid #dce3d9;border-radius:9px;padding:7px;background:#fff;color:var(--visitor-ink);font-size:16px}
.saved-folder-row button{min-height:44px;font-size:12px;flex-shrink:0;color:#496f3d}
.local-caption{font-size:11px;line-height:1.7;margin:8px 0 0}.saved-reset{min-height:40px;color:#496f3d;font-size:12px}
.saved-card-organize{display:flex;align-items:center;gap:5px;color:#496f3d;font-size:12px;min-height:40px;text-align:left;max-width:100%;overflow-wrap:anywhere}
.saved-card-organize .icon{width:13px;height:13px;flex-shrink:0}
.collection-folder-list>div{display:flex;gap:10px;align-items:center;border-bottom:1px solid #e8ede4;min-height:52px}
.collection-folder-list b{flex:1;font-size:14px;overflow-wrap:anywhere}.collection-folder-list button{font-size:12px;min-height:44px;min-width:36px;color:var(--visitor-muted)}
.collection-camp-name{font-size:15px;font-weight:600;line-height:1.7;margin:0 0 15px;overflow-wrap:anywhere}
.preset-form select{min-height:46px;border:1px solid #dce3d9;border-radius:9px;background:white;padding:9px;color:var(--visitor-ink);font-size:16px;width:100%;margin:5px 0 12px}
.tool-groups section+section{margin-top:22px}.tool-groups h3{margin:0 0 9px;font-size:12px;letter-spacing:1px;color:#687a6b}
.tool-groups .assistant-links{margin:0}.tool-groups .assistant-links>a,.tool-groups .assistant-links>button{min-height:52px;font-size:14px}.tool-groups .assistant-links b{font-size:12px;margin-left:auto}.tool-groups .assistant-links small{font-size:12px;color:var(--visitor-muted)}
.search-viewed{display:flex;align-items:center;gap:9px;width:100%;min-height:48px;text-align:left;font-size:14px;border-bottom:1px solid #e1e7dc;margin-bottom:14px;color:#496f3d}.search-viewed .icon:last-child{margin-left:auto}
.map-reference-bar{display:flex;align-items:center;gap:8px;margin:0 16px 10px;min-height:42px}.map-reference-bar>button{display:flex;align-items:center;gap:5px;font-size:12px;color:#496f3d;min-height:42px}.map-reference-bar>button:first-child{padding:0 8px;border:1px solid #dce3d9;border-radius:9px;background:white}.map-reference-bar>span{font-size:11px;line-height:1.5;color:var(--visitor-muted);flex:1}.map-reference-bar>.icon,.map-reference-bar button>.icon{width:15px;height:15px}.map-reference-bar>button:last-child{min-width:34px;justify-content:center}
.sheet .nearby-panel{margin:0;padding:0;border:0;background:transparent}.sheet .nearby-actions{flex-wrap:wrap}.sheet .nearby-actions>button{min-height:44px}.sheet .radius-options{margin-top:14px}.sheet .radius-options>button{min-height:42px}
.directory-page .map-stage:not(.is-expanded){height:clamp(340px,52dvh,510px)}
.map-floating-tools>button,.map-legend-toggle>summary{min-height:40px!important}.map-legend-content{font-size:12px}
.contact-choice-list{display:grid;gap:10px}.contact-choice-list>a{display:flex;align-items:center;gap:12px;min-height:70px;border:1px solid #dce3d9;background:white;border-radius:12px;padding:12px;color:#3b5636}.contact-choice-list>a>div{flex:1;min-width:0}.contact-choice-list b{display:block;font-size:14px;line-height:1.6}.contact-choice-list small{display:block;font-size:12px;color:var(--visitor-muted);line-height:1.7}.contact-choice-list>a:last-child{background:#eef3e9}.contact-choice-list .icon{width:19px;height:19px;flex-shrink:0}
.enquiry-options{padding:13px;border:1px solid #dfe5dc;border-radius:12px;margin:4px 0 16px}.enquiry-options summary{font-size:14px;min-height:28px;cursor:pointer;color:#496f3d}.enquiry-options summary span{font-size:12px;margin-left:12px;color:var(--visitor-muted)}.enquiry-options[open] summary{margin-bottom:16px}.enquiry-options>label{display:block;margin-top:10px}
.cd-photo-filters{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 8px;padding:0 0 2px}.cd-photo-filters>button{flex-shrink:0;min-height:38px;border:1px solid #dce3d9;border-radius:8px;padding:5px 10px;color:var(--visitor-muted);font-size:12px}.cd-photo-filters>button[aria-pressed=true]{background:#e9f0e5;border-color:#91a884;color:#3f6136}.cd-photo-filters span{font-size:11px;margin-left:6px}.cd-photo-filter-note{font-size:11px;color:var(--visitor-muted);line-height:1.6;margin:0 0 10px}
.cd-slide[hidden],.cd-lightbox-slide[hidden],.cd-thumbnail[hidden]{display:none!important}
.cd-extra-details{border:1px solid #dce3d9;border-radius:12px;padding:12px 15px;margin-top:18px}.cd-extra-details>summary{font-size:14px;color:#496f3d;cursor:pointer;min-height:30px;line-height:30px}
.trip-backup-shortcut{display:flex;align-items:center;gap:7px;margin:14px 22px 0;min-height:44px;font-size:12px;color:#496f3d}.trip-backup-shortcut .icon{width:16px;height:16px}.trip-backup-shortcut .icon:last-child{margin-left:auto}
.budget-help{margin:20px 22px;border-top:1px solid #dfe5dc;padding:8px 0}.budget-help summary{font-size:13px;min-height:44px;line-height:44px;color:#496f3d;cursor:pointer}.budget-help .budget-disclaimer{margin:0;padding:0;font-size:12px;color:var(--visitor-muted)}
/* Compact, consistent page hierarchy for tools and guides. */
#main:not(.directory-page)>.find-topbar{height:52px;min-height:52px;padding:6px 20px;background:#f8f9f7;border-bottom:1px solid #e5e9e1}
.tool-page-head,.xp-head,.budget-head,.page-heading{padding-top:20px;padding-bottom:20px}
.tool-page-head h1,.xp-head h1,.budget-head h1,.page-heading h1{font-size:25px;line-height:1.45;letter-spacing:-.5px;margin:9px 0}
.tool-page-head>p:last-child,.xp-head>p,.budget-head>div,.page-heading>p:last-child{font-size:13px;line-height:1.8;color:var(--visitor-muted)}
.tool-back,.xp-back,.xp-head>a,.budget-head>a{font-size:13px;min-height:40px;display:inline-flex;align-items:center}
.page-heading .eyebrow{display:none}.page-heading h1{margin-top:0}
.xp-topic-links{margin:0 20px 20px}.xp-topic-links>a{min-height:48px;font-size:14px}.guide-cover{margin-top:4px;min-height:220px;height:250px}.guide-cover-copy h2{font-size:26px}
@media(max-width:360px){.browse-options,.map-reference-bar{margin-left:12px;margin-right:12px}.saved-organization{margin-left:12px;margin-right:12px;padding:11px}.results-grid.is-compact>.result-card{grid-template-columns:80px minmax(0,1fr);gap:9px;padding:10px}.results-grid.is-compact .result-photo{width:80px;height:100px}.results-grid.is-compact .result-bottom>a{font-size:11px}.results-grid.is-compact h2{font-size:15px}.map-reference-bar{gap:5px}.map-reference-bar>span{font-size:10px}.tool-page-head h1,.xp-head h1,.budget-head h1,.page-heading h1{font-size:23px}.directory-dock .result-actions{gap:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
