*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#1e2927;background:#fff}a{color:inherit;text-decoration:none}button{border:0;border-radius:12px;padding:12px 18px;background:#123e38;color:#fff;font-weight:750;cursor:pointer}button.ghost{background:#fff;color:#123e38;border:1px solid #d7dfdc}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(10px);z-index:20;border-bottom:1px solid #edf0ef}.brand{display:flex;gap:10px;align-items:center;font-size:25px}.brand span{display:flex;flex-direction:column;font-size:16px}.brand small{font-size:9px;letter-spacing:4px;color:#c66d3d}nav{display:flex;gap:30px;font-size:14px;font-weight:650}.actions{display:flex;gap:10px}.hero{min-height:570px;background:linear-gradient(90deg,rgba(11,36,32,.63),rgba(11,36,32,.05)),url('https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2000&q=85') center/cover}.shade{min-height:570px;padding:115px 7vw 50px}.heroText{color:#fff;max-width:700px}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:800;color:#d88250}.hero h1{font-family:Georgia,serif;font-size:58px;line-height:1.02;margin:15px 0}.hero p{font-size:20px;line-height:1.6}.search{margin-top:45px;background:#fff;border-radius:18px;padding:10px;display:grid;grid-template-columns:1.6fr 1fr 1fr .8fr auto;max-width:1040px;box-shadow:0 18px 50px #0003}.search label{padding:7px 16px;border-right:1px solid #e6e8e7;font-size:12px;color:#65716e}.search b,.search input,.search select{display:block;border:0;background:transparent;margin-top:6px;font-size:14px;color:#1e2927;max-width:160px}.wrap{max-width:1200px;margin:auto;padding:70px 30px}.sectionHead h2,.management h2,.contact h2{font-family:Georgia,serif;font-size:38px;margin:0 0 8px}.sectionHead p{color:#6e7775}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:30px}.card{border:1px solid #e5e9e7;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 6px 24px #193d350c;cursor:pointer}.card img{width:100%;height:200px;object-fit:cover}.cardBody{padding:16px}.card h3{margin:0 0 7px;font-family:Georgia,serif;font-size:18px}.muted{color:#73807c;font-size:13px}.price{margin-top:14px;font-weight:800}.band{background:#f6f1e8;padding:45px 7vw;display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.band div{display:flex;flex-direction:column;gap:7px}.band span{font-size:13px;color:#69736f}.management{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.management p{line-height:1.7;color:#5e6966}.panel{padding:32px;border-radius:20px;background:#123e38;color:#fff;line-height:2}.contact{text-align:center;background:#f7f8f7;padding:70px 20px}.contact p{line-height:1.8}.contact a{color:#b95f34}.modal{position:fixed;inset:0;background:#10201dbb;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.hidden{display:none}.modalCard{position:relative;background:#fff;border-radius:20px;padding:30px;max-width:760px;width:100%;max-height:90vh;overflow:auto}.x{position:absolute;right:16px;top:12px;background:transparent;color:#333;font-size:28px;padding:4px}.form{display:grid;gap:12px}.form input,.form textarea,.form select{width:100%;padding:12px;border:1px solid #d9dfdc;border-radius:10px;font:inherit}.form textarea{min-height:100px}.tabs{display:flex;gap:8px;margin:15px 0}.tabs button{flex:1}.propertyHero{width:100%;height:270px;object-fit:cover;border-radius:14px}.bookingBox{background:#f6f1e8;border-radius:14px;padding:18px;margin-top:18px}.bookingBox .grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adminRow{border-top:1px solid #e5e9e7;padding:14px 0}.notice{padding:10px;border-radius:10px;background:#f6f1e8;margin:10px 0}.dashboardGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:900px){nav{display:none}.cards{grid-template-columns:repeat(2,1fr)}.search{grid-template-columns:1fr 1fr}.search button{grid-column:1/-1}.band{grid-template-columns:1fr 1fr}.management{grid-template-columns:1fr}.hero h1{font-size:44px}}@media(max-width:560px){header{padding:0 16px}.actions .ghost{display:none}.hero h1{font-size:38px}.shade{padding:80px 20px 35px}.search{grid-template-columns:1fr}.search label{border-right:0;border-bottom:1px solid #eee}.cards,.band,.dashboardGrid{grid-template-columns:1fr}.wrap{padding:50px 18px}}
.modalCard.wide{max-width:1180px;padding:0;overflow:hidden}.adminShell{display:grid;grid-template-columns:220px 1fr;min-height:720px}.adminNav{background:#123e38;color:#fff;padding:26px 18px;display:flex;flex-direction:column;gap:8px}.adminBrand{display:flex;gap:10px;align-items:center;padding:0 8px 24px;font-size:24px}.adminBrand div{display:flex;flex-direction:column;font-size:15px}.adminBrand small{font-size:9px;letter-spacing:2px;color:#e6a37c}.adminNav button{background:transparent;text-align:left;color:#dfe9e6;padding:12px;border-radius:9px}.adminNav button.active,.adminNav button:hover{background:#ffffff18;color:#fff}.navFoot{margin-top:auto;padding:18px 8px 4px;color:#bcd0ca;font-size:12px;line-height:1.6}.adminContent{padding:34px;background:#f8faf9;overflow:auto}.adminHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px}.adminHeader h2{font-family:Georgia,serif;font-size:34px;margin:5px 0}.adminHeader p{margin:0;color:#71807c}.statGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.statGrid>div{background:#fff;border:1px solid #e3e9e6;border-radius:14px;padding:20px;display:flex;flex-direction:column}.statGrid span,.statGrid small{color:#71807c;font-size:12px}.statGrid b{font-size:32px;margin:7px 0;color:#123e38}.adminTwo{display:grid;grid-template-columns:1fr 1fr;gap:18px}.adminPanel{background:#fff;border:1px solid #e3e9e6;border-radius:14px;padding:20px}.panelTitle{display:flex;justify-content:space-between;align-items:center}.textBtn{background:transparent;color:#b95f34;padding:4px}.listRow,.reservationRow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid #edf0ef}.listRow:first-of-type{border-top:0}.listRow div,.reservationRow div{display:flex;flex-direction:column;gap:4px}.listRow small,.reservationRow small{color:#71807c}.badge,.status{display:inline-block;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;text-transform:capitalize;background:#e9efed;color:#31534c}.status.published,.status.confirmed{background:#e5f4eb;color:#257044}.status.pending{background:#fff1d9;color:#8a5b00}.status.cancelled,.status.inactive{background:#f6e7e7;color:#9b3f3f}.propertyTable{display:grid;gap:12px}.propertyManage{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #e3e9e6;border-radius:14px;padding:12px}.propertyManage img{width:120px;height:85px;object-fit:cover;border-radius:10px}.propertyManage h3{margin:5px 0}.propertyManage p{margin:0;color:#71807c}.grow{flex:1}.mini{padding:7px 10px;font-size:12px}.danger{background:#9b3f3f}.formGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form label{font-size:12px;font-weight:700;color:#52615d}.form label input,.form label select,.form label textarea{margin-top:6px;font-weight:400;color:#1e2927}.editTop{display:flex;justify-content:space-between;align-items:flex-start;padding-right:30px}.editTop h2{margin-top:6px}.photoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.photoTile{position:relative}.photoTile img{width:100%;height:130px;object-fit:cover;border-radius:10px}.photoTile button{position:absolute;right:5px;top:5px;border-radius:50%;padding:4px 9px;background:#000a}.inlineUpload{margin-top:14px}.loading{padding:80px;text-align:center;color:#71807c}hr{border:0;border-top:1px solid #e5e9e7;margin:28px 0}.reservationRow select{padding:8px;border:1px solid #d9dfdc;border-radius:8px;background:#fff}
@media(max-width:850px){.adminShell{grid-template-columns:1fr}.adminNav{flex-direction:row;overflow:auto;align-items:center}.adminBrand,.navFoot{display:none}.adminContent{padding:20px}.statGrid{grid-template-columns:1fr 1fr}.adminTwo{grid-template-columns:1fr}.photoGrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.statGrid,.formGrid{grid-template-columns:1fr}.propertyManage{align-items:flex-start}.propertyManage img{width:90px;height:75px}.listBtn{display:none!important}}
.propertyManage.clickable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.propertyManage.clickable:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.propertyManage.clickable:focus{outline:2px solid currentColor;outline-offset:2px}.saveBar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.settingsPanel{max-width:680px}.propertyForm small{font-weight:400;color:#777}

/* Full-screen editing workspace: avoids nested modal scrolling and gives admins room to work. */
.noScroll{overflow:hidden}.workspace{position:fixed;inset:0;z-index:100;background:#f4f7f6;overflow-y:auto}.workspace.hidden{display:none}.workspaceTop{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px max(32px,5vw);background:#fff;border-bottom:1px solid #dfe6e3;box-shadow:0 4px 16px rgba(20,55,48,.05)}.workspaceTop h1{font-family:Georgia,serif;margin:5px 0 6px;font-size:34px}.workspaceTop p{margin:0;color:#71807c}.workspaceMain{max-width:1180px;margin:0 auto;padding:34px 30px 80px;display:grid;gap:24px}.editorCard{background:#fff;border:1px solid #e1e8e5;border-radius:16px;padding:28px;box-shadow:0 5px 22px rgba(18,62,56,.04)}.editorCard h2{font-family:Georgia,serif;margin-top:0}.sectionTitle{display:flex;justify-content:space-between;gap:20px}.workspace .formGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace .form textarea{min-height:150px}.workspace .saveBar{position:sticky;bottom:0;background:#fff;padding:14px 0 2px;border-top:1px solid #edf0ef;margin-top:8px}.contactSimple{max-width:520px;margin:22px auto 0;background:#fff;border:1px solid #e1e7e4;border-radius:16px;padding:26px;text-align:left}.contactLine{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:10px 0;border-top:1px solid #edf0ef}.contactLine:first-child{border-top:0}.contactLine span{font-size:12px;font-weight:800;color:#71807c;text-transform:uppercase;letter-spacing:.06em}.contactLine a{color:#b95f34;font-weight:700}.contactIntro{max-width:560px;margin:0 auto;color:#6e7775}
@media(max-width:850px){.workspace .formGrid{grid-template-columns:1fr 1fr}.workspaceTop{padding:20px}.workspaceMain{padding:22px 18px 60px}}@media(max-width:560px){.workspaceTop{position:relative;flex-direction:column}.workspaceTop button{width:100%}.workspace .formGrid{grid-template-columns:1fr}.editorCard{padding:20px}.contactLine{grid-template-columns:1fr;gap:4px}}

/* v3: Management is a true full-browser application, not a modal. */
.adminFullScreen{min-height:100vh;height:auto;grid-template-columns:240px minmax(0,1fr);background:#f8faf9}.workspace:has(.adminFullScreen){overflow-y:auto}.adminFullScreen .adminNav{position:sticky;top:0;height:100vh}.adminFullScreen .adminContent{min-height:100vh;overflow:visible;padding:42px max(32px,5vw) 80px}.adminFullScreen #adminPane{max-width:1400px;margin:0 auto}.backSite{display:block!important;width:100%;margin-top:18px;background:#ffffff14!important;border:1px solid #ffffff33!important;color:#fff!important;text-align:left!important}.workspace::-webkit-scrollbar{width:12px}.workspace::-webkit-scrollbar-thumb{background:#b9c6c2;border-radius:10px;border:3px solid #f4f7f6}.workspace::-webkit-scrollbar-track{background:#f4f7f6}@media(max-width:760px){.adminFullScreen{grid-template-columns:1fr}.adminFullScreen .adminNav{position:relative;height:auto}.adminFullScreen .adminContent{padding:24px 16px 60px}.adminNav{gap:4px}.statGrid{grid-template-columns:1fr 1fr}.adminTwo{grid-template-columns:1fr}}

/* v4 Reservations + visual availability calendar */
.clickable{cursor:pointer}.reservationList{display:grid;gap:12px}.reservationCard{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #e2e8e5;border-radius:14px;padding:18px 20px;transition:.12s ease}.reservationCard:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(18,62,56,.08)}.reservationCard h3{margin:8px 0 4px}.reservationCard p,.reservationCard small{margin:0;color:#71807c}.reservationAmount{text-align:right;display:flex;flex-direction:column;gap:7px}.reservationAmount b{font-size:22px}.reservationAmount span{font-size:12px;color:#b95f34;font-weight:800}.emptyState{text-align:center;padding:55px 20px;color:#71807c}.emptyState h3{color:#1e2927}.reservationWorkspace{max-width:1050px}.detailGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.detailGrid>div{background:#f7f9f8;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px}.detailGrid span,.notesBox span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#71807c;font-weight:800}.bigTotal{font-size:28px;color:#123e38}.notesBox{margin-top:18px;padding:16px;background:#f7f9f8;border-radius:12px}.notesBox p{margin-bottom:0}.statusActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.paymentPreview{border-style:dashed}.calendarToolbar{display:flex;align-items:center;justify-content:center;gap:20px;margin:14px 0}.calendarToolbar h3{font-family:Georgia,serif;font-size:25px;min-width:230px;text-align:center}.calendarLegend{display:flex;gap:18px;justify-content:flex-end;margin:0 0 12px;font-size:12px;color:#71807c}.calendarLegend span{display:flex;align-items:center;gap:6px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.dot.confirmed{background:#257044}.dot.pending{background:#d79a26}.dot.blocked{background:#697773}.calendarGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#dfe6e3;border:1px solid #dfe6e3;gap:1px;border-radius:14px;overflow:hidden}.calHead{background:#eef3f1;text-align:center;padding:10px;font-size:11px;font-weight:800;text-transform:uppercase;color:#71807c}.calDay{background:#fff;min-height:125px;padding:9px;overflow:hidden}.calDay.outside{background:#f7f9f8}.calDay>b{font-size:12px;color:#52615d}.calEvent{display:block;width:100%;border:0;border-radius:6px;margin-top:6px;padding:5px 6px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.calEvent.booking{cursor:pointer}.calEvent.confirmed{background:#e5f4eb;color:#257044}.calEvent.pending{background:#fff1d9;color:#8a5b00}.calEvent.completed{background:#e9efed;color:#31534c}.calEvent.block{background:#e7ebea;color:#465450}.blockDrawer{margin-bottom:18px;max-width:720px}.currentBlocks{margin-top:22px}.hidden{display:none!important}@media(max-width:850px){.detailGrid{grid-template-columns:1fr 1fr}.calDay{min-height:90px;padding:5px}.calEvent{font-size:9px}.calendarLegend{justify-content:flex-start}}@media(max-width:560px){.detailGrid{grid-template-columns:1fr}.reservationCard{align-items:flex-start}.reservationAmount{min-width:90px}.calendarGrid{min-width:760px}.adminContent:has(.calendarGrid){overflow-x:auto}.calendarToolbar{justify-content:flex-start}}

/* v5.1 targeted UX patch: keep the property close control visible while scrolling. */
.modalCard > .x{position:sticky;top:0;float:right;z-index:5;margin:-18px -18px 0 0;background:#fff;border:1px solid #dfe5e2;border-radius:999px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #0002;line-height:1}

/* v6.2.2 Guest Verification UX: inline private preview + unmistakable save confirmation. */
.verificationBanner{margin:18px 0;padding:15px 18px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.verificationBanner.verified{background:#e5f4eb;border:1px solid #b9dfc7;color:#257044}.verificationBanner.rejected{background:#f6e7e7;border:1px solid #e7c2c2;color:#9b3f3f}.verificationBanner span{font-size:13px}.idPreview{display:grid;grid-template-columns:minmax(220px,420px) 1fr;gap:20px;align-items:center;margin:18px 0;padding:16px;background:#f7f9f8;border:1px solid #e1e8e5;border-radius:14px}.idPreview img{width:100%;max-height:280px;object-fit:contain;background:#eef2f0;border-radius:10px}.idPreview>div,.idDocumentCard{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.idPreview span,.idDocumentCard span{color:#71807c;font-size:12px}.idDocumentCard{margin:18px 0;padding:20px;background:#f7f9f8;border:1px solid #e1e8e5;border-radius:14px}.buttonLink{display:inline-block;border-radius:12px;padding:12px 18px;background:#123e38;color:#fff;font-weight:750}.adminNotice{position:fixed;right:28px;bottom:28px;z-index:1000;background:#123e38;color:#fff;padding:14px 18px;border-radius:12px;box-shadow:0 10px 30px #0003;opacity:0;transform:translateY(12px);pointer-events:none;transition:.18s ease}.adminNotice.show{opacity:1;transform:translateY(0)}@media(max-width:700px){.idPreview{grid-template-columns:1fr}.verificationBanner{align-items:flex-start}.adminNotice{left:18px;right:18px;bottom:18px}}

/* v6.2.3 Guest Trust & Verification */
.idGallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:18px 0}.idTile{position:relative;border:1px solid #e1e8e5;background:#f7f9f8;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px}.idTile img,.pdfThumb{width:100%;height:180px;object-fit:contain;background:#eef2f0;border-radius:10px}.pdfThumb{display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;color:#52615d}.idTile small{color:#71807c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.idRemove{position:absolute;right:5px;top:5px;z-index:2;border-radius:50%;width:34px;height:34px;padding:0;background:#1e2927;color:#fff;font-size:22px;line-height:1}.autoIdUpload{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.autoIdUpload .muted{grid-column:1/-1}.trustActions{margin-top:20px}.dangerButton{background:#9b3f3f!important}.banBanner{padding:16px 18px;border-radius:12px;background:#f6e7e7;border:1px solid #e7c2c2;color:#7c2e2e;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.banBanner span{flex:1;min-width:180px}@media(max-width:700px){.autoIdUpload{grid-template-columns:1fr}}

.verificationUploadBox{margin:18px 0;padding:18px;border:2px solid #1f2937;border-radius:14px;background:#fff}
.verificationUploadHeading{display:flex;flex-direction:column;gap:3px;margin-bottom:4px}
.verificationUploadHeading strong{font-size:1.2rem}
.verificationUploadHeading span{color:#6b7280}
.verificationFilePicker{position:relative}
.verificationFilePicker input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.verificationChooseButton{display:inline-block;width:max-content;padding:12px 18px;margin:4px 0 6px;border-radius:9px;background:#111827;color:#fff;font-weight:700;cursor:pointer}
.verificationChooseButton:hover{opacity:.9}

/* v6.2.7: ensure guest-ID remove control receives pointer input */
.idRemove{pointer-events:auto;touch-action:manipulation}
.idRemove *{pointer-events:none}

/* v6.2.8 workflow */
.requirementBox{margin-top:18px;padding:14px;border:1px solid #ddd;border-radius:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.requirementBox span{flex:1;min-width:220px}.adminRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.adminRow>div{flex:1}
.bookingAccountLink{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;margin:.6rem 0;padding:1rem;border:1px solid #ddd;background:#fff;color:inherit;border-radius:12px}.bookingAccountLink small{display:block;margin-top:.25rem}.reservationSplash .propertyHero{max-height:360px;object-fit:cover;border-radius:14px}.statusActions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.userManageRow{gap:16px;align-items:center}.userAdminActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.userAdminActions select{min-width:120px;padding:8px 10px;border:1px solid #d8d8d8;border-radius:8px;background:#fff}.userAdminActions .danger{background:#fff;border:1px solid #b42318;color:#b42318}
@media(max-width:760px){.userManageRow{align-items:flex-start;flex-direction:column}.userAdminActions{justify-content:flex-start;width:100%}}

/* v6.2.11.7 workflow status */
.adminNav button.taskAttention{background:#8f2929;color:#fff;font-weight:850;box-shadow:inset 0 0 0 1px #ffffff24}.adminNav button.taskGood{background:#1f6a4c;color:#fff;font-weight:800}.taskCount,.taskClear{float:right;min-width:24px;text-align:center;border-radius:999px;padding:2px 7px;background:#fff;color:#8f2929}.taskClear{color:#1f6a4c}.taskPanelAttention{border:2px solid #b43a3a;background:#fffafa}.taskPanelGood{border:2px solid #2f7d58;background:#fbfffc}.taskBadgeRed{background:#f8dede!important;color:#9b2929!important}.taskBadgeGreen{background:#dff3e8!important;color:#216b49!important}.waitingPanel{margin-top:18px}.replacementCallout{display:inline-block;border-radius:999px;padding:6px 10px;background:#f8dede;color:#9b2929;font-size:12px;font-weight:850}.verificationBanner.replacement{border:1px solid #d79a9a;background:#fff3f3}

/* v6.2.11.9 verified customer + bookable search */
.identityBadge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;white-space:nowrap}.identityBadge.verified{background:#dff3e8;color:#216b49}.identityBadge.pending{background:#f6eadb;color:#8a5528}.card[role=button]:focus{outline:3px solid #2f7d58;outline-offset:3px}.bookingBox button:disabled{opacity:.55;cursor:not-allowed}

/* v6.2.11.10 reservation modal scroll fix */
.modalCard.wide{max-height:90vh;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 0 28px}
.modalCard.wide #modalBody{padding-bottom:8px}
.modalCard.wide .propertyHero{border-radius:20px 20px 14px 14px}
.modalCard.wide h2,.modalCard.wide #modalBody>p,.modalCard.wide .bookingBox{margin-left:28px;margin-right:28px}
.modalCard.wide .bookingBox{margin-bottom:4px}
.modalCard.wide>.x{position:sticky;top:12px;float:right;margin:12px 12px -54px 0;z-index:8;background:#fff;border:1px solid #dfe5e2;box-shadow:0 4px 14px #0002}
@media(max-width:560px){.modal{padding:8px}.modalCard.wide{max-height:94vh;border-radius:16px}.modalCard.wide h2,.modalCard.wide #modalBody>p,.modalCard.wide .bookingBox{margin-left:16px;margin-right:16px}.modalCard.wide .propertyHero{height:220px}}
/* v6.2.11.14 reservation gallery + change quote */
.reservationGallery{margin:0 0 1.4rem}.galleryFrame{position:relative;overflow:hidden;border-radius:16px;background:#eef1ef}.galleryFrame img{display:block;width:100%;height:min(430px,42vw);min-height:260px;object-fit:cover}.galleryArrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;padding:0;background:#fffffff0;color:#173c37;border:1px solid #d7dfdc;font-size:32px;line-height:1;box-shadow:0 4px 18px #0002}.galleryPrev{left:16px}.galleryNext{right:16px}.galleryCount{position:absolute;right:16px;bottom:14px;background:#173c37e8;color:#fff;border-radius:999px;padding:7px 11px;font-weight:800;font-size:12px}.changeQuote{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:#f6f8f7;border:1px solid #dce4e1;border-radius:14px;padding:16px}.changeQuote>div{display:flex;flex-direction:column;gap:5px}.changeQuote span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#6e7a76;font-weight:750}.changeQuote b{font-size:17px}.changeQuoteError{grid-column:1/-1;color:#a43d38!important;text-transform:none!important;letter-spacing:0!important}@media(max-width:760px){.changeQuote{grid-template-columns:1fr 1fr}.galleryFrame img{height:300px}}

.adminPropertyChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 20px}.adminPropertyChoice{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:18px;align-items:center;border:1px solid #dfe6e3;border-radius:12px;padding:10px;cursor:pointer}.adminPropertyChoice img{width:150px;height:100px;object-fit:cover;border-radius:9px}.adminPropertyChoice span{display:flex;flex-direction:column;gap:4px}.adminPropertyChoice small{color:#71807c}.adminPropertyChoice em{font-style:normal;font-size:11px;font-weight:800;color:#257044}.adminPropertyChoice.unavailable{opacity:.55;cursor:not-allowed;background:#f7f8f8}.adminPropertyChoice.unavailable em{color:#9b3f3f}@media(max-width:760px){.adminPropertyChoices{grid-template-columns:1fr}}
.bookingAccountWrap{position:relative}.bookingAccountWrap .bookingAccountLink{width:100%;padding-right:48px}.cancelledHideX{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;padding:0;font-size:20px;line-height:1;z-index:2}
/* v6.3 Owner Management Portal */
.ownerShell{min-height:100vh;background:#f7f5f0}.ownerStats{margin-bottom:24px}.ownerPropertyGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.ownerPropertyCard{overflow:hidden;border:1px solid #e4ded2;border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(30,35,30,.06)}.ownerPropertyCard>img{width:100%;height:190px;object-fit:cover;display:block}.ownerPropertyCard>div{padding:18px}.ownerPropertyCard h3{margin:8px 0}.ownerMoney{text-align:right}.ownerMoney small{display:block;color:#6e746d}
/* v6.3.1 Complete Property Listing Management */
.propertyListingForm{display:flex;flex-direction:column;gap:24px}.propertySection{padding:22px 0;border-bottom:1px solid #e3e8e5}.propertySection:first-child{padding-top:0}.propertySection:last-of-type{border-bottom:0}.propertySection h2{margin:0 0 16px}.amenityGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0 18px}.amenityCheck{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;padding:12px;border:1px solid #dce4e1;border-radius:10px;background:#f9faf9}.amenityCheck input{width:18px;height:18px}.propertyPhotoManager{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.propertyPhotoManager .photoTile{padding-bottom:12px}.propertyPhotoManager .photoTile img{height:170px}.photoPosition{position:absolute;left:10px;top:10px;background:#173c37e8;color:#fff;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:850}.photoActions{display:flex;gap:7px;padding:9px 9px 0}.photoActions button{flex:1}.photoActions button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:650px){.amenityGrid{grid-template-columns:1fr}.propertyPhotoManager{grid-template-columns:1fr}}

/* v6.3.1.1 bulk property photo uploader */
.bulkPhotoUpload{align-items:stretch}.photoUploadStatus{display:flex;flex-direction:column;gap:5px;min-width:240px;flex:1}.photoUploadStatus span{font-size:.85rem;color:var(--muted,#667085)}.photoUploadProgress{width:100%;height:10px}

/* v6.3.2 Property Experience & Gallery */
.propertyExperience{min-height:100%;background:#f7f8f7;color:#162b27}.propertyExperienceTop{max-width:1280px;margin:auto;padding:28px 34px 18px;display:flex;gap:28px;align-items:flex-start}.propertyExperienceTop h1{font-family:Georgia,serif;font-size:42px;margin:5px 0 6px}.propertyExperienceTop p{margin:0;color:#697772}.propertyBack{white-space:nowrap;margin-top:8px}.propertyExperienceMain{max-width:1280px;margin:auto;padding:0 34px 70px}.propertyGallery{background:#fff;border:1px solid #e0e6e3;border-radius:20px;overflow:hidden}.propertyGalleryHero{height:560px;position:relative;background:#e9eeec}.propertyGalleryHero>img{width:100%;height:100%;object-fit:cover;display:block}.propertyThumbs{display:flex;gap:9px;padding:12px;overflow-x:auto;scrollbar-width:thin}.propertyThumb{flex:0 0 105px;height:72px;padding:0;background:transparent;border:3px solid transparent;border-radius:10px;overflow:hidden}.propertyThumb.active{border-color:#c96f43}.propertyThumb img{width:100%;height:100%;object-fit:cover;display:block}.propertyExperienceGrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.72fr);gap:44px;margin-top:34px;align-items:start}.propertyDetails>section{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid #dfe5e2}.propertyDetails h2{font-family:Georgia,serif;font-size:28px;margin:0 0 15px}.propertyDetails h3{font-family:Georgia,serif;margin-top:24px}.propertyDescription{font-size:16px;line-height:1.75;white-space:pre-line}.publicAmenityGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.publicAmenityGrid div{padding:10px 0}.stayDetails{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stayDetails>div{background:#fff;border:1px solid #e1e7e4;border-radius:12px;padding:15px;display:flex;flex-direction:column;gap:6px}.stayDetails span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#71807c}.propertyBookingCard{position:sticky;top:24px;background:#fff;border:1px solid #dfe5e2;border-radius:18px;padding:22px;box-shadow:0 12px 35px #173c3714}.bookingPrice{font-size:14px;margin-bottom:18px}.bookingPrice b{font-size:26px}.bookingDateGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quoteRows{margin:8px 0;border-top:1px solid #e4e8e6;padding-top:10px}.quoteRows>div{display:flex;justify-content:space-between;gap:18px;padding:6px 0;font-size:13px}.quoteTotal{border-top:1px solid #dfe5e2;margin-top:7px;padding-top:12px!important;font-size:16px!important}.availabilityGood,.availabilityWarning{padding:10px 12px;border-radius:9px;margin:10px 0;font-size:12px;font-weight:700}.availabilityGood{background:#e7f4ec;color:#246b43}.availabilityWarning{background:#f8e8e6;color:#963f39}.availabilityCalendar{display:grid;grid-template-columns:1fr 1fr;gap:22px}.calendarMonth{background:#fff;border:1px solid #e0e6e3;border-radius:14px;padding:16px}.calendarMonth h3{margin:0 0 14px;font-family:Georgia,serif}.calendarWeek,.calendarDays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendarWeek span{font-size:10px;font-weight:800;color:#73807c;padding:5px}.calendarDays span,.calendarDays i{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-style:normal}.calendarDays span{background:#f3f6f4}.calendarDays span.blocked{background:#d7dcda;color:#8a9490;text-decoration:line-through}.calendarDays span.past{background:#26332f;color:#fff;opacity:1;text-decoration:none;cursor:not-allowed}.propertyGalleryHero .galleryArrow{z-index:2}@media(max-width:900px){.propertyExperienceGrid{grid-template-columns:1fr}.propertyBookingCard{position:static}.propertyGalleryHero{height:440px}.stayDetails{grid-template-columns:1fr 1fr}}@media(max-width:600px){.propertyExperienceTop{padding:18px;display:block}.propertyExperienceTop h1{font-size:34px}.propertyExperienceMain{padding:0 14px 50px}.propertyGalleryHero{height:290px}.propertyThumb{flex-basis:82px;height:58px}.publicAmenityGrid,.availabilityCalendar,.bookingDateGrid{grid-template-columns:1fr}.stayDetails{grid-template-columns:1fr 1fr}.propertyExperienceGrid{gap:24px}}

/* v6.3.3 Customer Discovery + Support */
.heroTagline{font-size:18px!important;letter-spacing:.01em}.discoverySearch{grid-template-columns:1.2fr 1fr 1fr .8fr .85fr auto!important}.discoverySearch select,.discoverySearch input{width:100%;border:0;background:transparent;font:inherit;color:#263532;outline:none}.discoverySearch label{min-width:0}.availabilityHeading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.availabilityHeading h2{margin-bottom:6px}.availabilityNav{display:flex;gap:8px}.availabilityNav button{min-width:46px;padding:9px 13px}.calendarRangeNote{margin-top:10px}.supportWidget{position:fixed;right:22px;bottom:22px;z-index:120}.supportFab{box-shadow:0 12px 30px rgba(18,62,56,.24);border-radius:999px;padding:14px 18px;display:flex;align-items:center;gap:8px}.supportPanel{position:absolute;right:0;bottom:58px;width:min(340px,calc(100vw - 32px));background:#fff;color:#1c2b28;border:1px solid #dfe5e2;border-radius:18px;padding:22px;box-shadow:0 18px 50px rgba(17,43,38,.22)}.supportPanel h3{font-family:Georgia,serif;font-size:24px;margin:7px 0}.supportPanel p{line-height:1.55}.supportPanel small{display:block;color:#6f7c78;line-height:1.45;margin-top:14px}.supportClose{position:absolute;right:10px;top:8px;background:transparent;color:#52615d;font-size:22px;padding:5px 9px}.supportAction{display:block;text-align:center;text-decoration:none;background:#123e38;color:#fff!important;border-radius:10px;padding:11px 12px;margin-top:9px;font-weight:700}.ghostSupport{background:#f3f6f4;color:#123e38!important}.hidden{display:none!important}@media(max-width:1050px){.discoverySearch{grid-template-columns:1fr 1fr 1fr!important}.discoverySearch button{grid-column:auto!important}}@media(max-width:700px){.discoverySearch{grid-template-columns:1fr!important}.discoverySearch button{grid-column:1!important}.supportWidget{right:14px;bottom:14px}.supportFab span{display:none}.supportFab{width:48px;height:48px;padding:0;justify-content:center}.availabilityHeading{align-items:center}}

/* v6.3.3.1 stable forward-calendar + owner management cards */
.availabilityNav button:disabled{opacity:.32;cursor:not-allowed;transform:none;box-shadow:none}.ownerManagementGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:18px}.ownerManagementCard{overflow:hidden;border:1px solid #e4ded2;border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(30,35,30,.06)}.ownerManagementCard.assigned{border-color:#9db9af;box-shadow:0 8px 28px rgba(18,62,56,.10)}.ownerManagementCard>img{width:100%;height:220px;object-fit:cover;display:block}.ownerManagementCardBody{padding:18px}.ownerManagementCardBody>div:first-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ownerManagementCardBody h3{margin:10px 0 4px;font-family:Georgia,serif;font-size:24px}.ownerManagementCardBody p{margin:0 0 16px}.ownerManagementCardBody button{width:100%}@media(max-width:800px){.ownerManagementGrid{grid-template-columns:1fr}}

/* v6.3.3.4: Owner-service dialogs must render above the full-screen Owner/Admin workspace. */
.modal{z-index:220}
/* v6.3.3.5 — Owner stay availability preview. Deliberately scoped to the owner request modal. */
.ownerStayAvailability{margin:2px 0 8px}.ownerAvailabilityHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.ownerAvailabilityHeader>div:first-child{display:flex;flex-direction:column;gap:3px}.ownerAvailabilityHeader small{color:#71807c}.ownerAvailabilityCalendar{gap:12px}.ownerAvailabilityCalendar .calendarMonth{padding:12px}.ownerAvailabilityCalendar .calendarMonth h3{font-size:17px;margin-bottom:8px}.ownerAvailabilityCalendar .calendarDays span,.ownerAvailabilityCalendar .calendarDays i{font-size:10px}.ownerAvailabilityCalendar .calendarDays span.blocked{background:#26332f;color:#fff;text-decoration:none;opacity:1}.ownerAvailabilityCalendar .calendarDays span.past{background:#ecefed;color:#9aa39f;opacity:.65}.ownerAvailabilityLegend{display:flex;gap:16px;margin-top:8px;font-size:11px;color:#71807c}.ownerAvailabilityLegend span{display:flex;align-items:center;gap:6px}.availabilitySwatch{width:12px;height:12px;border-radius:50%;display:inline-block}.availabilitySwatch.available{background:#f3f6f4;border:1px solid #dfe5e2}.availabilitySwatch.unavailable{background:#26332f}@media(max-width:600px){.ownerAvailabilityCalendar{grid-template-columns:1fr}.ownerAvailabilityHeader{align-items:center}}
/* v6.3.3.7 unified date selection */
.calendarDays span:not(.past):not(.blocked){cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.calendarDays span:not(.past):not(.blocked):hover{transform:scale(1.05);box-shadow:0 0 0 2px #1d4a42 inset}.calendarDays span.selected{background:#dcebe6;color:#173c37}.calendarDays span.selectedEdge{background:#1d4a42!important;color:#fff!important;font-weight:800;box-shadow:none}.ownerAvailabilityCalendar .calendarDays span.selected{background:#dcebe6;color:#173c37}.ownerAvailabilityCalendar .calendarDays span.selectedEdge{background:#c96f43!important;color:#fff!important}.availabilitySwatch.selected{background:#c96f43}.bookingCalendarHint{margin:-4px 0 10px}.propertyBookingCard input[readonly],.form input[readonly]{background:#f7f8f7;cursor:default}

/* v6.3.3.16 conflict resolution polish */
.conflictOfferHero{border:2px solid #2f6b59;background:#f2faf6}.conflictOfferGrid{display:grid;grid-template-columns:180px 1fr auto;gap:20px;align-items:center}.conflictOfferGrid img{width:180px;height:120px;object-fit:cover;border-radius:12px}.offerBadge{display:inline-block;padding:6px 10px;border-radius:999px;background:#e7f5ed;color:#216a43;font-size:11px;font-weight:900;letter-spacing:.04em}.adminPropertyChoice button{min-width:140px}.adminPropertyChoice span>b{font-size:17px}.adminPropertyChoice span small{line-height:1.45}.adminPropertyChoice span em{font-size:12px}.conflictPartyGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.conflictParty{border:1px solid #dfe6e3;border-radius:16px;padding:22px;background:#fff}.conflictParty.owner{border-color:#d98a75;background:#fff8f6}.conflictParty.customer{border-color:#9bcab8;background:#f7fcfa}@media(max-width:760px){.adminPropertyChoice,.conflictOfferGrid{grid-template-columns:1fr}.adminPropertyChoice img,.conflictOfferGrid img{width:100%;height:180px}.adminPropertyChoice button{width:100%}.conflictPartyGrid{grid-template-columns:1fr}}

/* v6.4.0 OTSR Assistant */
.assistantPanel{width:min(410px,calc(100vw - 32px));padding:20px}.assistantIntro{margin:8px 0 12px}.assistantMessages{height:260px;overflow-y:auto;background:#f6f8f7;border:1px solid #e1e7e4;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:9px}.assistantBubble{max-width:88%;padding:10px 12px;border-radius:13px;line-height:1.45;font-size:14px;white-space:pre-wrap}.assistantBot{align-self:flex-start;background:#fff;border:1px solid #dfe5e2}.assistantUser{align-self:flex-end;background:#123e38;color:#fff}.assistantComposer{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px;align-items:end}.assistantComposer textarea{resize:none;border:1px solid #ccd6d2;border-radius:10px;padding:10px;font:inherit;min-height:44px}.assistantComposer button{height:44px;padding:0 16px}.assistantLinks{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:12px}.assistantLinks a,.assistantLinks button{font-size:12px;font-weight:800;color:#123e38;text-decoration:none;background:none;padding:0}.helpGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.helpGrid>div{border:1px solid #e1e7e4;border-radius:13px;padding:15px;background:#f8faf9}.helpGrid h3{margin:0 0 7px}.helpGrid p{margin:0;line-height:1.5}.helpContact{border-top:1px solid #e1e7e4;padding-top:14px}@media(max-width:600px){.assistantPanel{position:fixed;inset:12px;width:auto;bottom:12px;max-height:calc(100vh - 24px);overflow:auto}.assistantMessages{height:min(45vh,360px)}.helpGrid{grid-template-columns:1fr}}

.helpCenterGrid p+p{margin-top:9px}.helpPolicies{border:1px solid #e1e7e4;border-radius:13px;padding:15px;background:#fff8f2;margin:6px 0 16px}.helpPolicies h3{margin:0 0 7px}.helpPolicies p{margin:0;line-height:1.55}.helpContact h3{margin-bottom:4px}
/* v6.4.2 flexible nightly pricing */
.pricingOverrides{margin-top:24px;display:grid;gap:24px}.weekdayRateGrid{display:grid;grid-template-columns:repeat(7,minmax(82px,1fr));gap:10px}.weekdayRateGrid label{text-align:center}.weekdayRateGrid input{text-align:center}.specialRateRow{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr auto;gap:10px;align-items:end;padding:12px 0;border-top:1px solid var(--line,#dde3df)}.specialRateRow:first-child{border-top:0}.pricingNote{font-size:.9em;color:#52645e}@media(max-width:850px){.weekdayRateGrid{grid-template-columns:repeat(2,1fr)}.specialRateRow{grid-template-columns:1fr 1fr}.specialRateRow label:first-child{grid-column:1/-1}}

/* v6.4.5 Custom Daily Pricing */
.customDailyPricing{margin-top:24px;padding-top:20px;border-top:1px solid var(--border,#d8ded9)}
.customDailyBuilder,.dailyRateRow{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:12px;align-items:end;margin:12px 0}
.dailyRateRow{grid-template-columns:1fr 1.5fr 1fr auto;padding:12px 0;border-bottom:1px solid var(--border,#e1e5e2)}
@media(max-width:760px){.customDailyBuilder,.dailyRateRow{grid-template-columns:1fr 1fr}.customDailyBuilder button,.dailyRateRow button{width:100%}}
@media(max-width:480px){.customDailyBuilder,.dailyRateRow{grid-template-columns:1fr}}

/* v6.4.6 Pricing Calendar + consolidated editor */
.pricingCalendarShell{margin-top:26px;padding:20px;border:1px solid var(--border,#d8ded9);border-radius:18px;background:#fafbf9}.pricingCalendarNav,.pricingEditLinks{display:flex;gap:8px;flex-wrap:wrap}.pricingEditLinks{margin-top:14px;padding-top:14px;border-top:1px solid var(--border,#e1e5e2)}.pricingCalendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pricingMonth{min-width:0;background:#fff;border:1px solid var(--border,#e1e5e2);border-radius:14px;padding:14px}.pricingMonth h4{text-align:center;margin:0 0 10px;font-family:Georgia,serif;font-size:18px}.pricingWeek,.pricingDays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.pricingWeek b{text-align:center;font-size:10px;color:#71807c;padding:4px 0}.pricingDays i{min-height:58px}.pricingDay{min-width:0;min-height:58px;padding:5px 3px;border:1px solid #e5e9e6;border-radius:8px;background:#fff;color:#263532;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.pricingDay span{font-size:10px;color:#6f7c78}.pricingDay b{font-size:12px;white-space:nowrap}.pricingDay small{font-size:8px;color:#7a8783;line-height:1}.pricingDay.pricingSpecial{background:#fff8ee;border-color:#ead7b6}.pricingDay.pricingCustom{background:#eef7f3;border-color:#a9cdbf}.pricingDay.pricingWeekday{background:#f7f8f7}.pricingDay:hover{border-color:#1d4a42;transform:translateY(-1px)}.pricingUnsaved{margin:10px 0 0;padding:9px 11px;border-radius:9px;background:#fff8e6;color:#6b5316;font-weight:700;font-size:12px}.pricingOverrides>[hidden]{display:none!important}
@media(max-width:900px){.pricingCalendar{grid-template-columns:1fr}}@media(max-width:520px){.pricingMonth{padding:8px}.pricingWeek,.pricingDays{gap:2px}.pricingDay{min-height:52px;padding:3px 1px}.pricingDay b{font-size:10px}.pricingDay small{display:none}.pricingCalendarNav{width:100%}.pricingCalendarNav button{flex:1}}
/* v6.5.1 Admin command center */
.reportToolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #e8e1d7;border-radius:16px;padding:12px 14px;margin:0 0 12px;box-shadow:0 5px 18px rgba(44,35,26,.04)}.reportToolbar select,.reportToolbar input{border:1px solid #ddd2c5;border-radius:9px;padding:8px;background:#fff}.reportRanges{display:flex;gap:6px}.reportRanges .active{background:#263d33;color:#fff;border-color:#263d33}.customRange{display:flex;gap:7px;align-items:center;margin-left:auto}.dashboardPeriod{display:flex;gap:10px;align-items:baseline;margin:6px 2px 10px}.kpiGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.kpiGrid button{text-align:left;background:#fff;border:1px solid #e8e1d7;border-radius:15px;padding:15px;cursor:pointer;box-shadow:0 5px 18px rgba(44,35,26,.04)}.kpiGrid button:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(44,35,26,.08)}.kpiGrid span,.kpiGrid small{display:block;color:#756d64;font-size:12px}.kpiGrid b{display:block;font-size:22px;margin:6px 0;color:#253b32}.miniMetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.miniMetrics div{background:#f8f5ef;border-radius:12px;padding:14px;text-align:center}.miniMetrics b,.miniMetrics span{display:block}.miniMetrics b{font-size:22px;color:#263d33}.miniMetrics span{font-size:11px;color:#756d64}.opsColumns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.opsColumns h4{margin:4px 0 10px}.operationRow{display:grid;grid-template-columns:86px 1fr auto;gap:12px;align-items:center;border-top:1px solid #eee7dd;padding:11px 0}.operationRow time{font-weight:700;font-size:12px;color:#806b49}.operationRow small{display:block;color:#777;margin-top:2px}.operationsGrid{align-items:stretch}@media(max-width:1100px){.kpiGrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.kpiGrid{grid-template-columns:repeat(2,1fr)}.opsColumns{grid-template-columns:1fr}.customRange{margin-left:0}.operationRow{grid-template-columns:72px 1fr}}

/* v6.5.2 dashboard polish */
.kpiGrid button{min-width:0;overflow:hidden}.kpiGrid b{font-size:clamp(18px,1.65vw,26px);line-height:1.05;white-space:nowrap;letter-spacing:-.02em}.kpiGrid small{line-height:1.25}.operationMeta{font-weight:700;color:#587064!important}.operationMeta.needsAttention{color:#a04440!important}.operationRow:hover{background:#faf7f2}.operationRow{border-radius:8px;padding-left:6px;padding-right:6px}
@media(max-width:1350px) and (min-width:1101px){.kpiGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.kpiGrid b{font-size:24px}}

/* v6.5.4 property-level fee exemption */
.feeExemptBadge{display:inline-flex;align-items:center;margin-left:8px;padding:4px 9px;border-radius:999px;background:#fff3c9;border:1px solid #e3bd55;font-size:11px;font-weight:800;color:#755000;text-transform:uppercase;letter-spacing:.04em}.feeExemptBanner{display:flex;gap:12px;align-items:center;padding:12px 16px;margin:0 0 14px;border-radius:12px;background:#fff8df;border:1px solid #e3bd55}.feeExemptBanner b{white-space:nowrap}.feeModeField{grid-column:span 2;border:1px solid #d9ddd8;border-radius:12px;padding:12px}.feeModeField>.fieldLabel{display:block;font-weight:700;margin-bottom:8px}.feeChoice{display:flex!important;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;cursor:pointer}.feeChoice:hover{background:#f6f7f5}.feeChoice.exempt{background:#fffaf0}.feeChoice input{width:auto!important;margin-top:3px}.feeChoice span{display:flex;flex-direction:column}.feeChoice small{margin-top:3px;color:#68706a}@media(max-width:700px){.feeModeField{grid-column:span 1}.feeExemptBanner{align-items:flex-start;flex-direction:column;gap:4px}}
/* v6.5.7 - Reservation payment confirmation */
.paymentConfirm {
  max-width: 620px;
  margin: 0 auto;
}

.paymentConfirm h2 {
  margin: 8px 0 6px;
  font-size: 30px;
  line-height: 1.15;
}

.paymentConfirm > .muted {
  margin: 0 0 24px;
}

.paymentProperty {
  padding: 18px 20px;
  margin: 20px 0;
  border: 1px solid #e4e7eb;
  border-radius: 14px;
  background: #f8fafb;
}

.paymentProperty h3 {
  margin: 0 0 7px;
  font-size: 18px;
}

.paymentProperty p {
  margin: 0;
  color: #59636e;
}

.paymentSummary {
  margin: 20px 0;
  border: 1px solid #e1e5e9;
  border-radius: 14px;
  overflow: hidden;
}

.paymentSummary > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 15px 18px;
  border-bottom: 1px solid #e8ebee;
}

.paymentSummary > div:last-child {
  border-bottom: 0;
}

.paymentSummary span {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.paymentSummary small {
  color: #69747f;
  font-size: 12px;
}

.paymentSummary b {
  white-space: nowrap;
  font-size: 17px;
}

.paymentSummary .paymentDue {
  padding-top: 18px;
  padding-bottom: 18px;
  background: #f5f8f7;
}

.paymentSummary .paymentDue > span {
  font-weight: 700;
}

.paymentSummary .paymentDue > b {
  font-size: 24px;
}

.paymentSecure {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 15px 18px;
  margin: 20px 0;
  border-radius: 12px;
  background: #f5f7f8;
}

.paymentSecure span {
  color: #64707b;
  font-size: 13px;
  line-height: 1.4;
}

.paymentActions {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.paymentActions button {
  width: 100%;
  min-height: 48px;
}

.paymentActions button:first-child {
  font-size: 15px;
  font-weight: 700;
}

.paymentActions button:disabled {
  cursor: wait;
  opacity: .7;
}

@media (max-width: 600px) {
  .paymentConfirm h2 {
    font-size: 25px;
  }

  .paymentSummary > div {
    padding: 14px;
  }

  .paymentSummary .paymentDue > b {
    font-size: 21px;
  }
}
/* ==========================================================
   OTSR PROPERTY MAP
   Shared map presentation for guest, owner and admin views
   ========================================================== */

.propertyMapSection {
    margin-top: 32px;
}

.propertyMapHeading {
    margin-bottom: 16px;
}

    .propertyMapHeading h2 {
        margin: 4px 0;
    }

.propertyMap {
    width: 100%;
    height: 420px;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.12);
}

.propertyMapPrivacy {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 12px;
}

    .propertyMapPrivacy span {
        color: #687078;
        font-size: 0.92rem;
    }

.propertyMapUnavailable {
    height: 100%;
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #687078;
    background: #f7f7f5;
    text-align: center;
    padding: 24px;
}

@media (max-width: 700px) {
    .propertyMap {
        height: 320px;
        border-radius: 14px;
    }
}
/* Property search map */
.propertyViewControls {
    display: flex;
    gap: 10px;
    align-items: center;
}

.propertyResultsMap {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 510px;
    margin-top: 20px;
    border-radius: 22px;
    overflow: hidden;
}

    .propertyResultsMap.hidden {
        display: none;
    }

#cards.hidden {
    display: none;
}

@media (max-width: 900px) {
    .propertyResultsMap {
        height: 440px;
    }
}

@media (max-width: 600px) {
    .propertyResultsMap {
        height: 380px;
        border-radius: 16px;
    }
}

/* OTSR founder story */
.founderStory{background:#f7f8f7;border-top:1px solid #edf0ef;border-bottom:1px solid #edf0ef;padding:64px 30px}
.founderStoryInner{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.founderStoryHeading h2{font-family:Georgia,serif;font-size:36px;line-height:1.15;margin:12px 0 0;color:#1e2927}
.founderStoryCopy p{margin:0 0 18px;color:#5e6966;line-height:1.8;font-size:15px}
@media(max-width:900px){.founderStoryInner{grid-template-columns:1fr;gap:26px}.founderStory{padding:52px 24px}.founderStoryHeading h2{font-size:32px}}
@media(max-width:560px){.founderStory{padding:44px 18px}.founderStoryHeading h2{font-size:28px}.founderStoryCopy p{font-size:14px}}

/* ============================================================
   OTSR BRAND MARK — Arizona cactus + sunshine
   Compact header treatment; full wordmark remains text for clarity.
   ============================================================ */
.brand::before{
  content:"";
  width:54px;
  height:54px;
  flex:0 0 54px;
  display:block;
  background:url('/otsr-cactus-sun.png') center/contain no-repeat;
}
@media(max-width:900px){
  .brand::before{width:46px;height:46px;flex-basis:46px}
}
@media(max-width:640px){
  .brand::before{width:40px;height:40px;flex-basis:40px}
}

/* OTSR payment-method foundation — Stripe/card active; PayPal/Venmo planned */
.paymentMethodSection{margin:22px 0}.paymentMethodHeading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px}.paymentMethodHeading>div{display:flex;flex-direction:column;gap:3px}.paymentMethodHeading>div>span{font-size:13px;color:#69747f}.paymentSecureBadge{padding:5px 9px;border-radius:999px;background:#eef5f1;color:#315d4f;font-size:11px;font-weight:800;white-space:nowrap}.paymentMethodOption{display:flex!important;align-items:center;gap:12px;padding:14px 15px;margin:8px 0;border:1px solid #dfe4e1;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.paymentMethodOption:hover{border-color:#9fb9ae}.paymentMethodOption.active{border-color:#315d4f;background:#f7faf8;box-shadow:0 0 0 1px #315d4f}.paymentMethodOption.future{cursor:not-allowed;background:#fafafa;opacity:.68}.paymentMethodOption input{width:auto!important;margin:0;accent-color:#315d4f}.paymentMethodCopy{display:flex;flex:1;flex-direction:column;gap:2px}.paymentMethodCopy strong{font-size:14px;color:#243832}.paymentMethodCopy small{font-size:12px;color:#6b7672}.paymentMethodStatus{font-size:11px;font-weight:800;color:#6d766f;white-space:nowrap}.paymentMethodOption.active .paymentMethodStatus{color:#315d4f}@media(max-width:520px){.paymentMethodHeading{align-items:center}.paymentMethodOption{padding:13px 12px}.paymentMethodStatus{font-size:10px}.paymentMethodCopy small{line-height:1.35}}
