/* Hidden Places — Host Listings Stage 1. Scoped to .hpl-* to avoid changing older views. */
.hpl-page{--hpl-green:#133d2f;--hpl-green2:#205a43;--hpl-muted:#71847b;--hpl-line:#dbe6df;--hpl-soft:#f7faf8;--hpl-gold:#d3ae66;color:#153f31;padding:0 0 36px;max-width:none}
.hpl-page *{box-sizing:border-box}
.hpl-hero{border-radius:12px;padding:19px 24px 20px;background:linear-gradient(105deg,#12382b,#245a43);color:#fff;margin:4px 0 8px}
.hpl-kicker,.hpl-drawer-kicker{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:#e2bc6a}
.hpl-hero h1{font-family:Georgia,serif;font-size:2rem;font-weight:500;line-height:1.18;margin:6px 0}
.hpl-hero p{font-size:.86rem;color:#e5eee8;margin:0}
.hpl-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.hpl-tabs a{font-weight:700;font-size:.77rem;text-decoration:none;border:1px solid var(--hpl-line);background:#fff;border-radius:7px;color:#174534;padding:8px 12px}
.hpl-tabs a.is-active{background:var(--hpl-green);color:#fff;border-color:var(--hpl-green)}
.hpl-panel{border:1px solid var(--hpl-line);border-radius:12px;background:#fff;padding:15px 16px}
.hpl-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:10px}
.hpl-panel h2{font-weight:800;color:#174333;font-size:1rem;margin:0 0 4px}
.hpl-panel p{font-size:.79rem;color:var(--hpl-muted);margin:0}
.hpl-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;padding:9px 13px;border:1px solid var(--hpl-line);background:#fff;text-decoration:none!important;color:var(--hpl-green)!important;cursor:pointer;font-weight:800;font-size:.79rem;font-family:inherit;white-space:nowrap}
.hpl-button--solid{background:var(--hpl-green)!important;border-color:var(--hpl-green)!important;color:white!important}
.hpl-button--solid:hover{background:var(--hpl-green2)!important}
.hpl-button--outline:hover{background:#f1f6f3}
.hpl-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}
.hpl-stat{min-width:0;min-height:86px;border:1px solid var(--hpl-line);border-radius:10px;background:#fff;padding:13px 14px;text-decoration:none!important;display:flex;flex-direction:column;justify-content:space-between;color:var(--hpl-green)!important}
.hpl-stat>span{font-size:.72rem;font-weight:750;color:#648777}
.hpl-stat>strong{font-size:1.65rem;line-height:1.1;font-weight:800;font-variant-numeric:tabular-nums}
.hpl-stat.is-active{border-color:#9cbfa9;background:#eff6f0}
.hpl-stat--warning strong{color:#b36c37}
.hpl-list-panel{padding:14px 15px 0}
.hpl-panel-heading{margin-bottom:14px}
.hpl-filters{display:grid;grid-template-columns:minmax(180px,1.65fr) repeat(4,minmax(116px,1fr));column-gap:10px;row-gap:9px;align-items:end}
.hpl-field{font-size:.71rem;font-weight:800;color:#245442;display:flex;flex-direction:column;gap:6px;min-width:0;margin:0}
.hpl-field input,.hpl-field select,.hpl-field textarea{font:400 .82rem/1.4 inherit;line-height:1.4;width:100%;min-width:0;border:1px solid var(--hpl-line);border-radius:7px;background:#fff;padding:8px 10px;color:#214638;outline-offset:2px}
.hpl-field input:focus,.hpl-field select:focus,.hpl-field textarea:focus{border-color:#4c8c68;outline:2px solid #d5e9da}
.hpl-field textarea{resize:vertical}
.hpl-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap}
.hpl-filter-actions span{margin-right:auto;font-size:.72rem;color:var(--hpl-muted);font-weight:400}
.hpl-text-link{font-weight:750;color:#22614a!important;text-decoration:none!important;font-size:.77rem}
.hpl-text-link:hover{text-decoration:underline!important}
.hpl-table-heading{border-top:1px solid #ebf0ec;padding:12px 0 9px;margin-top:11px;display:flex;justify-content:space-between;gap:10px;font-size:.75rem;color:#648073}
.hpl-table-heading strong{color:#1d513e}
.hpl-table-scroll{overflow-x:auto;max-width:100%}
.hpl-table{border-collapse:collapse;width:100%;min-width:950px;font-size:.8rem;color:#214f3f}
.hpl-table thead{background:#edf4ee}
.hpl-table th{color:#527765;text-align:left;font-size:.7rem;padding:11px 10px;font-weight:850;white-space:nowrap}
.hpl-table th:first-child{border-radius:6px 0 0 0}
.hpl-table th:last-child{border-radius:0 6px 0 0}
.hpl-table td{padding:11px 10px;border-bottom:1px solid #e7eee9;vertical-align:middle}
.hpl-table tbody tr:last-child td{border-bottom:0}
.hpl-row{cursor:pointer}
.hpl-row:hover,.hpl-row:focus{background:#f0f6f2;outline:none}
.hpl-row:focus-visible{outline:2px solid #2b6c4a;outline-offset:-2px}
.hpl-name-cell strong{display:block;font-weight:800;color:#174b38;max-width:300px}
.hpl-name-cell small{display:block;color:#86988e;margin-top:3px}
.hpl-nowrap{white-space:nowrap}
.hpl-pill{display:inline-block;border:1px solid transparent;border-radius:999px;padding:5px 8px;line-height:1.1;font-size:.68rem;font-weight:800;white-space:nowrap}
.hpl-pill--neutral{background:#edf2ee;color:#385949}
.hpl-pill--good{background:#e8f5ed;color:#218152}
.hpl-pill--warn{background:#fff1dd;color:#95612b}
.hpl-pill--blue{background:#eaf3f6;color:#3d7281}
.hpl-actions{white-space:nowrap}
.hpl-actions a{color:#1e5a42!important;margin-right:11px;text-decoration:none!important;font-size:.73rem;font-weight:800}
.hpl-actions a:hover{text-decoration:underline!important}
.hpl-chevron{font-size:1.4rem;color:#7f9b89;vertical-align:middle}
.hpl-empty{text-align:center;padding:35px 12px!important;color:#657d71}
.hpl-footnote{padding:12px 0 13px;margin:0!important;color:#8a988e!important;font-size:.69rem!important}
.hpl-terms{border:1px solid #e0c48d;background:#fffaf0;border-radius:11px;padding:13px 14px;margin-bottom:10px;display:flex;gap:12px;align-items:center}
.hpl-terms-icon{width:27px;height:27px;background:#eabf70;border-radius:50%;color:#563915;font-weight:900;display:grid;place-items:center;flex:0 0 auto}
.hpl-terms-copy{flex:1;min-width:0}
.hpl-terms-copy strong{font-size:.82rem;color:#664919}
.hpl-terms-copy p{margin:3px 0 0;font-size:.77rem;color:#8b6a37}
.hpl-backdrop{position:fixed;inset:0;z-index:1990;background:rgba(8,28,20,.38)}
.hpl-backdrop[hidden]{display:none!important}
.hpl-drawer{position:fixed;z-index:2000;top:0;right:0;width:min(510px,100vw);height:100dvh;background:#fff;box-shadow:-8px 0 40px #061c1433;transform:translateX(105%);transition:transform .22s ease;display:flex;flex-direction:column;overflow:hidden;color:#1d4435}
.hpl-drawer.is-open{transform:translateX(0)}
.hpl-drawer-top{background:#153d30;color:#fff;position:relative;padding:21px 22px 18px;flex:0 0 auto}
.hpl-drawer-top h2{font-size:1.4rem;line-height:1.25;margin:6px 38px 5px 0;color:#fff}
.hpl-drawer-top p{font-size:.79rem;margin:0 0 11px;color:#d0e6d8}
.hpl-drawer-tags{display:flex;gap:6px;flex-wrap:wrap}
.hpl-drawer-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;border:0;background:#386456;color:#fff;border-radius:50%;font-size:1.25rem;width:29px;height:29px;cursor:pointer}
.hpl-drawer-content{overflow:auto;padding:18px 21px;flex:1}
.hpl-drawer-section{margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #e7eee9}
.hpl-drawer-section:last-child{border-bottom:0}
.hpl-drawer-section h3{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:#4c7b61;margin:0 0 10px}
.hpl-drawer-section p{font-size:.81rem;color:#657e70;margin:0 0 12px}
.hpl-drawer-section .hpl-field{margin-bottom:12px;font-size:.74rem}
.hpl-drawer-section .hpl-field input,.hpl-drawer-section .hpl-field textarea{font-size:.83rem}
.hpl-save-error{font-size:.78rem;color:#9e2727;background:#fff3f3;padding:9px 10px;border-radius:6px;margin:0 0 10px}
.hpl-save-error[hidden]{display:none}
.hpl-drawer-footer{display:flex;gap:9px;flex-wrap:wrap;align-items:center;flex:0 0 auto;border-top:1px solid #e6eee8;padding:15px 18px;background:#fff}
.hpl-facts{margin:0;display:grid;gap:0;font-size:.8rem}
.hpl-facts div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf2ee}
.hpl-facts dt{color:#6b8777}
.hpl-facts dd{margin:0;font-weight:800;text-align:right}
.hpl-issues{padding:0 0 0 18px;font-size:.78rem;color:#945c23;line-height:1.8}
.hpl-all-good{color:#27774d!important}
.hpl-muted{color:#7e9587;font-size:.72rem}
.hpl-drawer-loading{padding:28px 22px;color:#668071}
.hpl-backline{margin:12px 0}
.hpl-backline a{text-decoration:none;color:#28644a;font-weight:750;font-size:.84rem}
.hpl-create-intro{margin-bottom:13px}
.hpl-place-select{max-width:400px;margin-top:15px}
.hpl-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.hpl-type-card{display:flex;flex-direction:column;gap:8px;min-height:160px;background:#fff;color:#184a38!important;border:1px solid var(--hpl-line);padding:20px;border-radius:12px;text-decoration:none!important}
.hpl-type-card:hover{border-color:#78af8b;background:#f4faf6}
.hpl-type-card>span{font-size:1.45rem}.hpl-type-card strong{font-size:1rem}.hpl-type-card small{color:#779185;flex:1}.hpl-type-card b{font-size:.77rem}
@media(max-width:1200px){.hpl-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.hpl-search-field{grid-column:span 2}}
@media(max-width:750px){.hpl-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hpl-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.hpl-search-field{grid-column:1/-1}.hpl-terms,.hpl-toolbar{align-items:flex-start;flex-direction:column}.hpl-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hpl-drawer-footer .hpl-button{flex:1}}
@media(max-width:500px){.hpl-hero{padding:15px}.hpl-hero h1{font-size:1.6rem}.hpl-filters,.hpl-create-grid{grid-template-columns:1fr}.hpl-filter-actions{justify-content:flex-start}.hpl-filter-actions span{width:100%}.hpl-stat>strong{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.hpl-drawer{transition:none}}

/* Stage 1B — contextual, column-driven drawers */
.hpl-drawer{--hpl-line:#dbe6df;--hpl-green:#133d2f;--hpl-green2:#205a43;width:min(580px,100vw)}
.hpl-drawer-nav{display:flex;flex:0 0 auto;gap:5px;padding:10px 14px;overflow-x:auto;border-bottom:1px solid #e4ece6;background:#f9fbf9;scrollbar-width:thin}
.hpl-drawer-nav button{flex:0 0 auto;border-radius:6px;border:1px solid #dce7df;background:#fff;color:#245442;font-size:.7rem;font-family:inherit;font-weight:750;padding:7px 10px;cursor:pointer;white-space:nowrap}
.hpl-drawer-nav button.is-active{background:#194734;color:#fff;border-color:#194734}
.hpl-drawer-content{padding:18px 21px 30px}
.hpl-clickable-pill{border:0;font-family:inherit;cursor:pointer;white-space:nowrap}
.hpl-clickable-pill:hover,.hpl-clickable-pill:focus-visible{outline:2px solid #81ae91;outline-offset:2px}
.hpl-name-button,.hpl-price-button{border:0;background:none;color:#174b38;font:inherit;text-align:left;cursor:pointer;padding:0}
.hpl-name-button{font-weight:800;line-height:1.35;max-width:300px}
.hpl-name-button:hover,.hpl-price-button:hover{text-decoration:underline}
.hpl-subaction{background:none;border:0;display:block;margin-top:4px;font-size:.68rem;font-weight:650;color:#397257;cursor:pointer;padding:0;text-decoration:underline dotted}
.hpl-cell-stack{display:flex;gap:3px;flex-direction:column;align-items:flex-start}
.hpl-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:12px 0}
.hpl-photo-tile{border:1px solid #dae7de;border-radius:10px;padding:7px;background:#fff;min-width:0}
.hpl-photo-check{display:grid;grid-template-columns:20px minmax(0,1fr);gap:7px;cursor:pointer;align-items:start;font-size:.75rem;color:#214d3a}
.hpl-photo-check input{margin-top:5px;accent-color:#1b6848}
.hpl-photo-check img{display:block;grid-column:2;width:100%;height:130px;object-fit:cover;border-radius:5px;background:#eef4ef}
.hpl-photo-caption{grid-column:2;line-height:1.35;overflow-wrap:anywhere}
.hpl-cover-choice{display:flex;align-items:center;gap:6px;padding:9px 2px 2px 27px;font-size:.72rem;color:#315943;cursor:pointer}
.hpl-cover-choice input{accent-color:#1b6848}
.hpl-cover-choice:has(input:disabled){opacity:.45}
.hpl-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.hpl-choice-grid--one{grid-template-columns:1fr}
.hpl-check-tile{display:grid;grid-template-columns:18px minmax(0,1fr);gap:5px 7px;align-items:center;background:#fff;border:1px solid #d8e5dc;border-radius:8px;padding:12px 10px;cursor:pointer;color:#24513c;font-size:.79rem;font-weight:750;line-height:1.4}
.hpl-check-tile:has(input:checked){background:#edf7ef;border-color:#93bea0}
.hpl-check-tile input{grid-row:1/span 2;align-self:start;margin-top:3px;accent-color:#1c714d}
.hpl-check-tile small{grid-column:2;color:#829789;font-size:.69rem;font-weight:500}
.hpl-big-option{margin-bottom:9px}
.hpl-big-option span{font-size:.86rem}
.hpl-selection-count{font-size:.75rem!important;font-weight:800;color:#236c4d!important;margin:8px 0!important}
.hpl-inline-note{border-radius:8px;background:#f4f8f4;padding:12px 13px!important;color:#4d7160!important;font-size:.76rem!important;margin:12px 0!important}
.hpl-inline-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:15px}
.hpl-empty-state{padding:17px 12px;background:#f7faf8;border:1px dashed #cadfd0;border-radius:9px;color:#597869;font-size:.78rem}
.hpl-drawer-footer{position:relative;z-index:1}
.hpl-drawer-footer [data-drawer-save]{min-width:145px}
.hpl-save-error{margin-top:12px}
.hpl-drawer-section .hpl-field textarea{line-height:1.6}
.hpl-table th:first-child{min-width:175px}
.hpl-table td{padding:10px 8px}
.hpl-row:focus-within{background:#f5faf6}
@media(max-width:600px){.hpl-photo-grid,.hpl-choice-grid{grid-template-columns:1fr}.hpl-drawer-footer{gap:7px}.hpl-drawer-top{padding:16px 18px}.hpl-drawer-content{padding:14px 17px}.hpl-drawer-nav{padding:8px}}

/* Stage 1C — spacious, single-workspace listing editor. */
.hpl-drawer {
    width: min(850px, 100vw);
    --hpl-green: #153d30;
    --hpl-line: #dfe9e1;
}
.hpl-drawer-top {padding: 20px 25px 19px;}
.hpl-drawer-top h2 {font-size: 1.48rem; margin-top: 7px; margin-bottom: 3px;}
.hpl-drawer-top p {margin-bottom: 11px;}
.hpl-drawer-body {
    display: grid;
    grid-template-columns: 222px minmax(0, 1fr);
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    background: #fff;
}
.hpl-drawer-nav {
    display: block;
    overflow-y: auto;
    overflow-x: hidden;
    border-right: 1px solid #e1ebe3;
    border-bottom: 0;
    background: #f6f9f6;
    padding: 21px 12px 22px;
    min-width: 0;
}
.hpl-nav-heading {
    color: #7a9584;
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .115em;
    padding: 0 12px 12px;
}
.hpl-drawer-nav button {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: normal;
    text-align: left;
    padding: 11px 10px;
    margin-bottom: 4px;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #345d49;
}
.hpl-drawer-nav button:hover {background: #e9f1ea;}
.hpl-drawer-nav button.is-active {background: #174633; color: #fff; border-color: #174633; box-shadow: 0 2px 4px #173a2922;}
.hpl-nav-number {display: grid;place-items:center;flex:0 0 27px;height:27px;border-radius:7px;background:#e8efe9;color:#436a54;font-size:.67rem;letter-spacing:0;}
.hpl-drawer-nav button.is-active .hpl-nav-number {background: #42735b;color: #fff;}
.hpl-nav-text {display:flex; flex-direction:column;gap:3px;min-width:0;}
.hpl-nav-text strong {font-size:.75rem; line-height:1.23;font-weight:850;}
.hpl-nav-text small {font-size:.64rem; line-height:1.28;font-weight:500;opacity:.74;overflow-wrap:anywhere;}
.hpl-nav-advanced {border-top: 1px solid #dce7de;margin:20px 8px 0;padding:19px 4px 8px;display:flex;flex-direction:column;gap:8px;}
.hpl-nav-advanced span {font-size:.62rem;letter-spacing:.1em;font-weight:850;color:#879c8b;}
.hpl-nav-advanced a {color:#1d583e;font-size:.75rem;font-weight:800;text-decoration:none;}
.hpl-nav-advanced a:hover {text-decoration:underline;}
.hpl-nav-advanced small {font-size:.68rem;color:#7e9286;line-height:1.55;}
.hpl-drawer-mobile-menu {display:none;}
.hpl-drawer-content {overflow-y:auto;overflow-x:hidden;padding:24px 25px 35px;min-width:0;min-height:0;}
.hpl-section-title {margin:0 0 17px;border-bottom:1px solid #e7eee8;padding:0 0 15px;}
.hpl-section-eyebrow {display:block;color:#82988c;text-transform:uppercase;letter-spacing:.09em;font-size:.64rem;font-weight:800;margin-bottom:7px;}
.hpl-section-title h3 {font-family:Georgia,serif;font-weight:500;color:#173e2e;font-size:1.51rem;line-height:1.2;margin:0;}
.hpl-drawer-section {padding:0;margin:0;border:0;}
.hpl-section-description {font-size:.82rem;color:#5b7667;line-height:1.65;margin:0 0 17px;}
.hpl-edit-card {border:1px solid #e0e9e2;background:#fff;border-radius:10px;padding:18px 18px 15px;margin:0 0 14px;}
.hpl-edit-card--muted {background:#f9fbf9;}
.hpl-card-heading {display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #edf2ee;padding-bottom:12px;margin-bottom:14px;}
.hpl-card-heading h4 {color:#234d39;font-weight:850;font-size:.84rem;margin:0;}
.hpl-drawer-section .hpl-field {margin-bottom:16px;font-size:.74rem;gap:8px;}
.hpl-drawer-section .hpl-field:last-child {margin-bottom:0;}
.hpl-drawer-section .hpl-field input,.hpl-drawer-section .hpl-field textarea {padding:11px 12px;font-size:.85rem;line-height:1.55;}
.hpl-drawer-section .hpl-field small {color:#8a9b90;line-height:1.5;font-size:.69rem;font-weight:500;}
.hpl-small-help {color:#718b7b;font-size:.75rem;line-height:1.6;margin:10px 0 0;}
.hpl-facility-group-heading {margin:18px 0 7px;font-size:.72rem;color:#6e8e78;letter-spacing:.045em;font-weight:850;}
.hpl-facility-group-heading:first-of-type {margin-top:4px;}
.hpl-photo-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.hpl-photo-check {grid-template-columns:20px minmax(0,1fr);}
.hpl-photo-check img {height:105px;}
.hpl-photo-tile {border-radius:9px;}
.hpl-cover-choice {padding-left:0;}
.hpl-choice-grid {gap:10px;}
.hpl-check-tile {min-height:48px;}
.hpl-big-option {min-height:80px;}
.hpl-price-highlight {display:flex;justify-content:space-between;align-items:center;gap:16px;border-radius:9px;background:#edf6ef;padding:14px 17px;margin-bottom:12px;}
.hpl-price-highlight span {color:#5d826a;font-size:.75rem;font-weight:750;}
.hpl-price-highlight strong {color:#154333;font-size:1.12rem;}
.hpl-stage-callout {background:#f6f9f6;border:1px solid #dce8de;border-radius:10px;padding:17px 18px;margin:14px 0 0;}
.hpl-stage-callout strong {font-size:.83rem;color:#29553e;}
.hpl-stage-callout p {color:#637d6b;font-size:.77rem;line-height:1.62;margin:8px 0 13px;}
.hpl-terms-alert {padding:15px 17px;background:#fffaed;border:1px solid #e4c887;border-radius:10px;margin-bottom:14px;}
.hpl-terms-alert strong {font-size:.82rem;color:#8d6623;}
.hpl-terms-alert p {font-size:.77rem;color:#856c40;line-height:1.55;margin:7px 0 12px;}
.hpl-checklist {display:flex;flex-direction:column;gap:7px;}
.hpl-checklist-item {border:1px solid #e6e4d9;background:#fffefa;border-radius:8px;display:flex;gap:11px;padding:10px 12px;text-align:left;align-items:center;cursor:pointer;font:inherit;color:#76582c;}
.hpl-checklist-item:hover {background:#fff6e6;border-color:#d8c69c;}
.hpl-checklist-item strong {flex:1;font-size:.75rem;font-weight:750;}
.hpl-checklist-item span:first-child {display:grid;place-items:center;flex:0 0 20px;height:20px;border-radius:50%;background:#f8e2bd;font-size:.72rem;font-weight:850;}
.hpl-drawer-footer {padding:13px 20px;gap:10px;flex-wrap:nowrap;box-shadow:0 -3px 12px rgba(12,37,24,.035);}
.hpl-footer-context {font-size:.73rem;font-weight:800;color:#537662;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.hpl-footer-spacer {flex:1;}
.hpl-drawer-footer [data-drawer-save] {min-width:130px;}
.hpl-drawer-footer .hpl-button {min-width:0;}
@media(max-width:740px) {
    .hpl-drawer {width:100vw;}
    .hpl-drawer-top {padding:16px 18px;}
    .hpl-drawer-top h2 {font-size:1.2rem;}
    .hpl-drawer-body {display:block;}
    .hpl-drawer-nav {display:none;}
    .hpl-drawer-mobile-menu {display:flex;flex-direction:column;gap:5px;flex:0 0 auto;padding:10px 17px;background:#f6f9f6;border-bottom:1px solid #dfe9e2;}
    .hpl-drawer-mobile-menu label {font-size:.7rem;color:#517260;font-weight:800;}
    .hpl-drawer-mobile-menu select {width:100%;padding:10px 9px;border:1px solid #d1e0d5;border-radius:8px;background:#fff;color:#254d36;font:inherit;font-size:.84rem;}
    .hpl-drawer-content {height:100%;padding:17px 18px 27px;}
    .hpl-drawer-footer {padding:10px 12px;gap:7px;}
    .hpl-footer-context {display:none;}
    .hpl-drawer-footer .hpl-button {flex:1;font-size:.72rem;padding:9px 7px;}
    .hpl-edit-card {padding:13px 13px 11px;}
    .hpl-photo-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:400px) {.hpl-drawer-footer .hpl-button {font-size:.68rem;}}

/* Stage 1D: inline pricing / payment form */
.hpl-drawer-section .hpl-field select {padding:11px 12px;font-size:.85rem;line-height:1.55;min-height:44px;}
.hpl-pricing-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.hpl-pricing-conditional[hidden] {display:none!important;}
.hpl-pricing-conditional {padding:13px 14px 2px;border:1px solid #dce9df;border-radius:9px;background:#f7faf7;margin:8px 0 13px;}
.hpl-pricing-fields .hpl-field {min-width:0;}
@media(max-width:650px){.hpl-pricing-fields {grid-template-columns:1fr;gap:5px;}}

/* Stage 1E — inline availability editing */
.hpl-availability-days {grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px;}
.hpl-availability-days .hpl-check-tile {min-height:46px;}
.hpl-drawer-section .hpl-pricing-fields + .hpl-pricing-fields {margin-top:16px;}
.hpl-stage-callout .hpl-button {margin-right:7px;margin-bottom:7px;}
@media (max-width:550px){.hpl-availability-days {grid-template-columns:1fr;}}

/* Stage 1E2 — scheduled experience sessions */
.hpl-session-list {display:flex;flex-direction:column;gap:8px;margin:12px 0 18px}
.hpl-session-row {display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f7faf8;border:1px solid #e0eae2;border-radius:8px;padding:11px 12px}
.hpl-session-row > div {min-width:0;display:flex;flex-direction:column;gap:3px}
.hpl-session-row strong {font-size:.8rem;color:#214c39}
.hpl-session-row small {font-size:.71rem;color:#638171;line-height:1.45}
.hpl-session-row form {flex:0 0 auto;margin:0}
.hpl-session-remove {background:#fff;color:#9b5143;border:1px solid #e7c7c0;border-radius:7px;padding:8px 10px;cursor:pointer;font-size:.72rem;font-weight:750}
.hpl-session-remove:hover {background:#fff6f3;border-color:#cd978a}
.hpl-session-add-form {background:#fbfdfb;border-top:1px solid #e7ede8;padding-top:14px;margin-top:15px}
.hpl-session-add-form > .hpl-button {margin-top:4px}
.hpl-session-add-form .hpl-field {min-width:0}
@media(max-width:550px){.hpl-session-row {align-items:flex-start}.hpl-session-row small {overflow-wrap:anywhere}}

/* Stage 1E3 — individual listing blocks */
.hpl-block-repeat{display:flex;gap:10px;align-items:flex-start;margin:13px 0;color:#244a37;font-size:.8rem;font-weight:650;cursor:pointer}
.hpl-block-repeat input{margin-top:3px;accent-color:#1b533e}
.hpl-block-repeat span{display:flex;flex-direction:column;gap:4px}
.hpl-block-repeat small{font-size:.71rem;color:#738477;font-weight:400;line-height:1.45}
.hpl-action-banner{margin:0 0 14px;padding:12px 14px;background:#eaf5ed;color:#206b42;border:1px solid #cce3d2;border-radius:8px;font-size:.78rem;line-height:1.5}
.hpl-action-banner--warning{background:#fff3e4;color:#854c2d;border-color:#eaccab}

/* Stage 1E4: seasonal rate overview and imported stay pricing actions. */
.hpl-rate-list{display:grid;gap:9px;margin:12px 0 6px}
.hpl-rate-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #e0e9e2;border-radius:9px;background:#f9fbf9}
.hpl-rate-main{display:flex;flex-direction:column;gap:3px;min-width:0}
.hpl-rate-main strong{font-size:.83rem;color:#174b38}
.hpl-rate-main span,.hpl-rate-main small{font-size:.74rem;color:#617d6d}
.hpl-rate-main .hpl-rate-amount{font-weight:750;color:#173f32}
.hpl-rate-row form{flex-shrink:0}
.hpl-confirm-choice{display:flex;align-items:flex-start;gap:9px;font-size:.79rem;color:#294f3e;line-height:1.45;margin:12px 0}
.hpl-confirm-choice input{margin-top:3px;flex-shrink:0}
.hpl-edit-card form[data-session-create] > button[type="submit"]{margin-top:12px}
.hpl-edit-card form[data-session-action] + form[data-session-action]{margin-top:16px}
@media(max-width:600px){.hpl-rate-row{align-items:flex-start;flex-wrap:wrap}}

.hpl-rate-details {margin-top:6px;font-size:.75rem;}
.hpl-rate-details summary{cursor:pointer;color:#205c43;font-weight:750;padding:5px 0;}
.hpl-rate-detail-scroll{max-height:240px;overflow:auto;max-width:100%;}
.hpl-rate-detail-table{width:100%;border-collapse:collapse;font-size:.73rem;}
.hpl-rate-detail-table th,.hpl-rate-detail-table td{text-align:left;border-bottom:1px solid #e0e9e2;padding:6px 10px 6px 0;}
.hpl-rate-detail-table th{font-weight:750;color:#537763;}

/* Stage 1F — publication controls and precise readiness review. */
.hpl-publish-actions form{margin:12px 0 14px}
.hpl-publish-primary{min-width:180px;min-height:42px}
.hpl-publish-primary:disabled{opacity:.52;cursor:not-allowed}
.hpl-publish-danger{background:#fff8f6!important;color:#93483e!important;border-color:#d8a89e!important;min-height:42px}
.hpl-publish-danger:hover{background:#ffefeb!important}
.hpl-checklist-item--link{text-decoration:none!important}
.hpl-suggestions .hpl-checklist-item{background:#f8faf8;border-color:#dce8dd;color:#305b42}
.hpl-suggestions .hpl-checklist-item span:first-child{background:#e3f1e8}
.hpl-publish-actions .hpl-text-link{display:inline-block;margin-top:6px}
.hpl-publish-actions .hpl-small-help{line-height:1.6}

/* Stage 1G: ticket option management matches seasonal rate row styling. */
.hpl-rate-list{display:grid;gap:8px}
.hpl-rate-row strong{font-size:.81rem;color:#194735}
.hpl-rate-row small{display:inline-block;margin-top:4px;color:#66816f;font-size:.73rem}
.hpl-pricing-fields [data-experience-ticket-fields][hidden]{display:none}

/* Stage 1G: photo ordering and uploads within the listing drawer. */
.hpl-assigned-photo-list{display:grid;gap:9px}
.hpl-assigned-photo{display:flex;align-items:center;gap:10px;border:1px solid #e0e9e2;border-radius:8px;padding:8px;background:#fbfdfb;flex-wrap:wrap}
.hpl-assigned-photo>img{width:65px;height:52px;border-radius:6px;object-fit:cover;flex-shrink:0}
.hpl-assigned-photo-detail{flex:1;min-width:130px;display:grid;gap:3px}
.hpl-assigned-photo-detail strong{color:#1a4c38;font-size:.8rem}
.hpl-assigned-photo-detail small{font-size:.71rem;color:#66816f}
.hpl-assigned-photo-detail .hpl-pill{justify-self:start}
.hpl-assigned-photo-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.hpl-assigned-photo-actions .hpl-button{padding:6px 9px;font-size:.72rem}

/* Stage 3B-1 — lightweight draft creation in the existing drawer. */
.hpl-create-drawer-form {display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;}
.hpl-create-drawer-content {flex:1;overflow-y:auto;min-height:0;padding:20px 24px 26px;background:#fafcfb;}
.hpl-create-drawer-content .hpl-edit-card {margin-bottom:13px;}
.hpl-create-drawer-content .hpl-card-heading {margin-bottom:14px;}
.hpl-create-categories {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.hpl-create-category {position:relative;display:block;cursor:pointer;min-width:0;}
.hpl-create-category input {position:absolute;width:1px;height:1px;opacity:0;}
.hpl-create-category-face {display:flex;flex-direction:column;gap:5px;min-height:113px;border:1.5px solid #dbe8df;border-radius:10px;background:#fff;padding:14px;transition:border-color .12s,background .12s;}
.hpl-create-category-face strong {font-size:.85rem;color:#214938;}
.hpl-create-category-face small {font-size:.73rem;color:#6d8577;line-height:1.35;}
.hpl-create-category-icon {font-size:1.35rem;line-height:1.4;}
.hpl-create-category:hover .hpl-create-category-face {border-color:#7dae8c;background:#f4faf6;}
.hpl-create-category input:checked+.hpl-create-category-face {border-color:#2d7953;background:#eff8f1;box-shadow:0 0 0 1px #2d7953 inset;}
.hpl-create-category input:focus-visible+.hpl-create-category-face {outline:3px solid #afcbbb;outline-offset:2px;}
.hpl-create-explainer {margin:10px 0 0;font-size:.76rem;color:#708779;line-height:1.55;}
.hpl-create-drawer-footer {justify-content:flex-end;}
@media(max-width:530px) { .hpl-create-categories {grid-template-columns:1fr 1fr;gap:8px;} .hpl-create-category-face{padding:10px;min-height:120px;} .hpl-create-drawer-content{padding:14px;} }

/* Stage 3C — clear Experience ticketing and scheduling choices. */
.hpl-schedule-mode-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;}
.hpl-schedule-mode-choice{position:relative;display:block;cursor:pointer;min-width:0;}
.hpl-schedule-mode-choice input{position:absolute;opacity:0;width:1px;height:1px;}
.hpl-schedule-mode-choice span{display:flex;flex-direction:column;gap:5px;height:100%;padding:14px 13px;border:1.5px solid #dfebe1;border-radius:9px;background:#fff;transition:background .15s,border-color .15s;}
.hpl-schedule-mode-choice strong{font-size:.78rem;color:#1d4835;line-height:1.4;}
.hpl-schedule-mode-choice small{font-size:.7rem;color:#64806d;line-height:1.55;}
.hpl-schedule-mode-choice input:checked+span{background:#edf8f0;border-color:#307d56;box-shadow:0 0 0 1px #307d56 inset;}
.hpl-schedule-mode-choice input:focus-visible+span{outline:3px solid #accab6;outline-offset:2px;}
.hpl-experience-scheduling-card [data-scheduling-mode-duration]{margin:4px 0 16px;}
.hpl-experience-scheduling-card [data-scheduling-mode-duration][hidden]{display:none;}
@media(max-width:540px){.hpl-schedule-mode-choices{grid-template-columns:1fr;}}

/* Stage 3C — Experience pricing method and conditional sections. */
.hpl-experience-pricing-card [data-experience-mode][hidden],
.hpl-drawer-section [data-experience-ticket-fields][hidden],
.hpl-drawer-section [data-experience-additional-tickets][hidden],
.hpl-drawer-section [data-experience-scheduled-sections][hidden],
.hpl-drawer-section [data-experience-flexible-details][hidden],
.hpl-experience-scheduling-card [data-scheduling-unsaved-note][hidden]{display:none!important;}
.hpl-experience-pricing-card .hpl-schedule-mode-choices{margin-bottom:12px;}
.hpl-experience-pricing-card .hpl-inline-note{margin-bottom:0!important;}

/* Stage 3C-2 — lifecycle controls */
.hpl-lifecycle-danger { border-color:#dcaeac !important; background:#fffafa; }
.hpl-lifecycle-danger-button { color:#9a2c27 !important; background:#fff !important; border:1px solid #c77b77 !important; }
.hpl-lifecycle-danger-button:disabled { opacity:.45; cursor:not-allowed; }
.hpl-drawer-section form[data-hpl-lifecycle], .hpl-drawer-section form[data-hpp-lifecycle] { display:grid; gap:12px; }
.hpl-drawer-section form[data-hpl-lifecycle] button, .hpl-drawer-section form[data-hpp-lifecycle] button { justify-self:start; }

/* Stage 4B: legacy links became drawer buttons; keep their former compact link treatment. */
.hpl-table .hpl-actions button.hpl-text-link {appearance:none;border:0;background:transparent;padding:0;margin-right:11px;color:#1e5a42;font-family:inherit;font-size:.73rem;font-weight:800;cursor:pointer;line-height:inherit}
.hpl-table .hpl-actions button.hpl-text-link:hover {text-decoration:underline!important}
.hpl-table .hpl-actions button.hpl-text-link:focus-visible {outline:2px solid #3f8e64;outline-offset:3px;border-radius:2px}
