*{box-sizing:border-box}body{margin:0;background:#f5f2ea;color:#173a33;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}a{text-decoration:none;color:inherit}.siteHeader{padding:20px 7vw;background:#153d35;color:#fff;display:flex;justify-content:space-between;align-items:center}.siteHeader b{display:block;letter-spacing:3px}.siteHeader small{display:block;opacity:.75;margin-top:4px}.headLinks{display:flex;gap:12px;align-items:center}.headLinks a{font-size:13px}.siteHeader button{background:transparent;border:1px solid #ffffff55;color:#fff;border-radius:999px;padding:9px 14px}.hero{padding:70px 7vw;background:linear-gradient(120deg,#17483f,#79a498);color:#fff}.hero h1{font:60px Georgia,serif;margin:8px 0}.hero p{max-width:650px;font-size:18px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:900}.eyebrow.dark{color:#71827c}.steps{max-width:900px;margin:26px auto;display:flex;justify-content:space-between;padding:0 20px}.steps div{display:flex;gap:8px;align-items:center;color:#98a59f;font-size:13px}.steps span{width:27px;height:27px;border-radius:50%;background:#d8dedb;display:grid;place-items:center}.steps .active{font-weight:800;color:#173a33}.steps .active span{background:#c78e4a;color:#fff}.panel{max-width:1120px;margin:0 auto 30px;background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 30px #173a3310}.panel h2{font:38px Georgia,serif;margin-top:0}.grid4{display:grid;grid-template-columns:1fr 1fr .8fr 1fr;grid-gap:14px;gap:14px;align-items:end}label{display:block;font-size:13px;font-weight:800;margin-bottom:14px}input,select{display:block;width:100%;padding:11px;border:1px solid #d7dfdc;border-radius:8px;margin-top:6px;background:#fff}button{border:0;background:#173a33;color:#fff;padding:12px 15px;border-radius:9px;font-weight:800;cursor:pointer}button:disabled{opacity:.35;cursor:not-allowed}.back,.outline{background:transparent;color:#173a33;border:1px solid #cbd5d1}.legend{font-size:12px;color:#73837d;margin:25px 0 10px}.lg{display:inline-block;width:12px;height:12px;border-radius:3px;margin:0 5px 0 12px}.free{background:#e5f3ed}.partial{background:#fff1cf}.full{background:#f3dede}.calendarDemo{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px}.month{border:1px solid #e0e5e3;border-radius:12px;padding:12px}.month h3{font:20px Georgia,serif}.days{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.days span{font-size:11px;padding:6px 0;text-align:center;border-radius:5px}.roomGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.roomGrid article{border:1px solid #e0e5e3;border-radius:14px;overflow:hidden;padding-bottom:14px}.roomPhoto{height:145px;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,#4d7b70,#c8b18b)}.p2{background:linear-gradient(140deg,#5c8b80,#d6e4df)}.p3{background:linear-gradient(140deg,#8c775e,#decfb6)}.p4{background:linear-gradient(140deg,#6f8d99,#d9e6eb)}.p5{background:linear-gradient(140deg,#819569,#e0e0bd)}.roomInfo{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:12px 13px 0}.roomInfo h3{font:21px Georgia,serif;margin:0}.ok,.roomGrid button,.roomGrid p{margin-left:13px;margin-right:13px}.ok{font-size:12px;color:#2b7d62}.split{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:28px;gap:28px}.summary{background:#f5f2ea;border-radius:14px;padding:19px;align-self:start}.summary>div{display:flex;justify-content:space-between;padding:9px 0}.summary .green{color:#26745c}.summary .total{font-size:20px;border-top:1px solid #d6dad7;margin-top:7px;padding-top:14px}.summary .big{font:36px Georgia,serif;display:block}.summary p{font-size:12px;color:#71827c}.actions{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #edf0ee;padding-top:18px}.check{display:flex;gap:8px;align-items:center;font-weight:500}.check input{width:auto;margin:0}.hint,.hold{background:#fff3d8;border-left:4px solid #c78e4a;padding:11px;border-radius:7px;margin:10px 0}.payBox{background:#f8faf9;border:1px dashed #bdcac5;padding:12px;border-radius:10px}.bankInfo{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;background:#fff;padding:12px;border-radius:8px;margin-bottom:12px}.bankInfo span{color:#71827c}.success{text-align:center;padding:50px}.tick{width:62px;height:62px;border-radius:50%;background:#dceee7;margin:auto;display:grid;place-items:center;font-size:28px}.bookingCode{display:inline-block;background:#173a33;color:#fff;padding:12px 18px;border-radius:9px;font-weight:900;letter-spacing:1px}.adminShell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{background:#153d35;color:#fff;padding:24px 16px;display:flex;flex-direction:column;gap:8px}.adminBrand{padding:4px 8px 24px}.adminBrand b,.adminBrand span{display:block;letter-spacing:3px}.adminBrand span{opacity:.65;font-size:12px;margin-top:3px}.sidebar button{background:transparent;text-align:left}.sidebar button.active{background:#ffffff18}.sidebar a{margin-top:auto;padding:10px;font-size:13px;opacity:.8}.adminMain{padding:28px}.adminTop{display:flex;justify-content:space-between;align-items:center}.adminTop h1{font:42px Georgia,serif;margin:4px 0 20px}.adminUser{background:#fff;padding:10px 14px;border-radius:999px;box-shadow:0 5px 14px #0001}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:18px}.stats div{background:#fff;border-radius:14px;padding:18px}.stats span{display:block;color:#76857f;font-size:12px}.stats b{display:block;font-size:26px;margin-top:8px}.adminCard{background:#fff;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 8px 24px #173a3310}.adminCard h2{font:28px Georgia,serif;margin-top:0}.queue,.reviewCard{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-top:1px solid #edf0ee}.queue div,.reviewCard div:first-child{display:flex;flex-direction:column;gap:4px}.queue span,.reviewCard span{font-size:12px;color:#75847f}.approve{background:#2f7d64}.reject{background:#9a4c4c}.calendarTableWrap,.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:11px;border-bottom:1px solid #edf0ee;text-align:left;white-space:nowrap}td small{display:block;color:#7b8984;margin-top:3px}.tiny{padding:7px 10px;font-size:11px}.status{padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900}.status.confirmed{background:#dcefe8;color:#26745c}.status.payment_pending{background:#fff1cf;color:#8d681d}.status.held{background:#e9edf7;color:#54668b}.status.cancelled,.status.payment_rejected{background:#f3dddd;color:#8a4545}.status.checked_in{background:#dce8f4;color:#3f647f}.status.checked_out{background:#ececec;color:#656565}.calendarTable th small{display:block;font-weight:400}.calendarTable td{min-width:72px;text-align:center}.calendarTable .freecell{background:#e5f3ed}.calendarTable .confirmed{background:#dcefe8}.calendarTable .payment_pending{background:#fff1cf}.calendarTable .held{background:#e9edf7}.formGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.drawer{position:fixed;inset:0;background:#0007;display:flex;justify-content:flex-end;z-index:30}.drawerCard{width:min(420px,92vw);height:100%;background:#fff;padding:25px;position:relative}.close{position:absolute;right:14px;top:12px;background:transparent;color:#173a33;font-size:24px}.drawerActions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:25px}@media(max-width:900px){.calendarDemo,.grid4,.split{grid-template-columns:1fr}.roomGrid{grid-template-columns:1fr 1fr}.panel{margin-left:14px;margin-right:14px}.adminShell{grid-template-columns:1fr}.sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:10;flex-direction:row;overflow:auto;padding:10px}.adminBrand,.sidebar a{display:none}.sidebar button{white-space:nowrap}.adminMain{padding:16px}.stats{grid-template-columns:1fr 1fr}.formGrid{grid-template-columns:1fr}.actions{grid-column:1}}@media(max-width:560px){.roomGrid{grid-template-columns:1fr}.hero h1{font-size:42px}.siteHeader{padding:16px}.headLinks a{display:none}.stats{grid-template-columns:1fr}.steps{overflow:auto;gap:18px}}.adminLive{max-width:1180px;margin:auto;padding:28px}.adminLiveTop{display:flex;justify-content:space-between;align-items:center}.adminLiveTop h1{font:44px Georgia,serif;margin:5px 0 20px}.adminLoginBox{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:12px;gap:12px;align-items:center;background:#fff;border-radius:14px;padding:16px;margin-bottom:16px}.adminLoginBox span{display:block;font-size:12px;color:#74847e;margin-top:4px}.adminLoginBox input{margin:0}.adminMessage{padding:11px 13px;background:#fff1cf;border-radius:9px;margin-bottom:14px}.actionBtns{display:flex;gap:6px}.adminLive .stats{margin-bottom:16px}@media(max-width:760px){.adminLive{padding:14px}.adminLoginBox{grid-template-columns:1fr}.adminLiveTop h1{font-size:34px}}.globalError{max-width:1120px;margin:0 auto 16px;background:#f8dddd;color:#7f3e3e;border-left:4px solid #9a4c4c;padding:12px 14px;border-radius:8px}.empty{padding:24px;background:#f6f6f2;border-radius:10px}.priceReceipt{background:#f8faf9;border:1px solid #e0e6e3;border-radius:10px;padding:12px;margin-bottom:15px}.priceReceipt>div{display:flex;justify-content:space-between;padding:7px}.priceReceipt .green{color:#26745c}.priceReceipt .total{font-size:18px;border-top:1px solid #dde4e1}.expired{background:#f4dddd!important;border-left-color:#9a4c4c!important;color:#7f3e3e}.adminTabs{display:flex;gap:8px;overflow:auto;margin-bottom:16px}.adminTabs button{white-space:nowrap;background:#fff;color:#173a33;border:1px solid #dce3e0}.adminTabs button.active{background:#173a33;color:#fff}.proofLink{font-size:12px;color:#2c715e;text-decoration:underline}.blockList{margin-top:22px}.blockList>div{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-gap:12px;gap:12px;padding:11px 0;border-top:1px solid #edf0ee;font-size:13px}.span2{grid-column:1/-1}.loginPage{min-height:100vh;display:grid;place-items:center;padding:20px;background:#f5f2ea}.loginCard{width:min(430px,100%);background:#fff;padding:28px;border-radius:18px;box-shadow:0 12px 34px #173a3315}.loginCard h1{font:38px Georgia,serif;margin-top:4px}.loginCard>a{display:block;margin-top:16px;font-size:13px}.lookupGrid{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:12px;gap:12px;align-items:end}.bookingLookup{margin-top:35px}.bookingResult{margin-top:24px;border-top:1px solid #e5e9e7;padding-top:22px}.bookingResultHead{display:flex;justify-content:space-between;align-items:center}.bookingResultHead h3{font:28px Georgia,serif;margin:5px 0}.bookingFacts{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin:18px 0}.bookingFacts>div{background:#f7f8f6;padding:13px;border-radius:10px}.bookingFacts span{display:block;font-size:11px;color:#75847f;margin-bottom:5px}.adminAccount{display:flex;align-items:center;gap:10px}.adminAccount span{font-size:13px}.adminAccount .outline{background:#fff}@media(max-width:760px){.lookupGrid{grid-template-columns:1fr}.bookingFacts{grid-template-columns:1fr 1fr}.bookingResultHead{align-items:flex-start;gap:10px}.adminAccount span{display:none}}.paymentReviewCard{display:grid;grid-template-columns:1fr auto;grid-gap:18px;gap:18px;align-items:center;padding:18px 0;border-top:1px solid #edf0ee}.paymentReviewMain{min-width:0}.paymentReviewMain>div:first-child{display:flex;flex-direction:column;gap:4px}.paymentReviewMain>div:first-child span{font-size:12px;color:#75847f}.paymentFacts{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));grid-gap:9px;gap:9px;margin:13px 0}.paymentFacts span{background:#f7f8f6;border-radius:9px;padding:9px;min-width:0}.paymentFacts small{display:block;font-size:10px;color:#75847f;margin-bottom:4px}.paymentFacts b{display:block;font-size:12px;overflow-wrap:anywhere}.paymentActions{display:flex;flex-direction:column;gap:8px;min-width:180px}.paymentActions button{width:100%}.proofButton{display:inline-block;margin-top:3px;padding:8px 10px;border:1px solid #cbd5d1;border-radius:8px}.status.verified{background:#dcefe8;color:#26745c}.status.rejected{background:#f3dddd;color:#8a4545}@media(max-width:760px){.paymentReviewCard{grid-template-columns:1fr}.paymentFacts{grid-template-columns:1fr 1fr}.paymentActions{min-width:0;flex-direction:row}.paymentActions button{flex:1 1}}