.lb-admin-grid{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:24px;align-items:start}.lb-admin section,.lb-settings{background:#fff;border:1px solid #dcdcde;padding:20px}.lb-admin label,.lb-settings label{display:block;margin:0 0 14px;font-weight:600}.lb-admin input:not([type=checkbox]),.lb-admin select,.lb-admin textarea,.lb-settings input,.lb-settings textarea{box-sizing:border-box;width:100%;margin-top:5px}.lb-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lb-table-wrap{overflow:auto}.lb-status{display:inline-block;padding:3px 8px;border-radius:20px;background:#eee;text-transform:capitalize}.lb-confirmed{background:#dcedd5;color:#235019}.lb-awaiting_payment,.lb-pending{background:#fff2c7;color:#674f00}.lb-cancelled{background:#f6d8d8;color:#751d1d}.lb-delete{color:#b32d2e}.lb-settings{max-width:680px}@media(max-width:1000px){.lb-admin-grid{grid-template-columns:1fr}}
.lb-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.lb-calendar-scroll{overflow:auto;border-radius:10px;box-shadow:0 2px 12px rgba(30,40,25,.08)}.lb-admin-calendar{display:grid;min-width:1000px;border-top:1px solid #dfe3dc;border-left:1px solid #dfe3dc;background:#fff}.lb-cal-corner,.lb-cal-head,.lb-cal-unit,.lb-cal-cell{box-sizing:border-box;min-height:52px;border-right:1px solid #dfe3dc;border-bottom:1px solid #dfe3dc;padding:6px;text-align:center}.lb-cal-corner,.lb-cal-unit{position:sticky;left:0;z-index:5;background:#fff;text-align:left}.lb-cal-corner{font-weight:700;background:#3f4b32;color:#fff;padding:16px 12px}.lb-cal-unit{padding:10px 12px}.lb-cal-unit small{display:block;color:#7b8175;font-weight:400;margin-top:3px}.lb-cal-head{background:#f8faf7;padding-top:9px}.lb-cal-head small{display:block;font-size:10px;color:#777}.lb-cal-head.lb-weekend{background:#f1eee6}.lb-cal-head.lb-past{background:#e8e9e7;color:#92968f}.lb-cal-cell{position:relative;padding:0;min-width:42px}.lb-open{background:#f7fbf5}.lb-booked{background:#5c714b;color:#fff;border-right-color:rgba(255,255,255,.18)}.lb-blocked{background:#cf9b42;color:#fff;border-right-color:rgba(255,255,255,.2)}.lb-cal-cell.lb-past{filter:saturate(.25);opacity:.55}.lb-cal-head.lb-today,.lb-cal-cell.lb-today{box-shadow:inset 3px 0 #d06b3b,inset -3px 0 #d06b3b;opacity:1;filter:none}.lb-cal-head.lb-today{background:#fff0e7;color:#9c3f19}.lb-event-start{border-radius:7px 0 0 7px}.lb-event-start a,.lb-event-start span{position:absolute;left:7px;top:50%;z-index:3;transform:translateY(-50%);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;text-decoration:none;font-size:11px;font-weight:700;text-align:left}.lb-event-start a:hover{text-decoration:underline}.lb-admin-key{display:flex;flex-wrap:wrap;gap:18px;margin:14px 0 24px}.lb-admin-key span{display:flex;align-items:center;gap:6px}.lb-admin-key i{width:16px;height:16px;border-radius:3px}.lb-admin-key i.lb-today{background:#fff0e7;border:2px solid #d06b3b}.lb-admin-key i.lb-past{background:#d9dada}.lb-calendar-tools{margin-top:22px}.lb-admin{overflow-x:auto}.lb-copy-field{width:100%;font-family:monospace;background:#f6f7f7}
.lb-cal-cell.lb-status-awaiting_payment{background:#2878b8;color:#fff}.lb-cal-cell.lb-status-pending{background:#76539a;color:#fff}.lb-admin-key i.lb-quote-sent{background:#2878b8}.lb-admin-key i.lb-pending-request{background:#76539a}
@media(max-width:782px){.lb-heading{align-items:flex-start;flex-direction:column}.lb-heading>div{display:flex;width:100%;gap:6px}.lb-heading .button{flex:1;text-align:center;margin:0}.lb-calendar-scroll{margin-left:-10px;margin-right:-10px;border-radius:0;scrollbar-color:#52613b #e6e8e3}.lb-admin-calendar{min-width:1180px}.lb-cal-corner,.lb-cal-unit{width:125px;min-width:125px;box-shadow:4px 0 8px rgba(30,40,25,.12)}.lb-cal-corner{padding:12px 8px}.lb-cal-unit{font-size:11px;padding:8px}.lb-cal-cell,.lb-cal-head{min-height:46px}.lb-cal-head{font-size:11px}.lb-event-start a,.lb-event-start span{max-width:145px;font-size:10px}.lb-admin-key{gap:9px 14px;font-size:11px}.lb-calendar-tools .lb-two{grid-template-columns:1fr}.lb-table-wrap table{min-width:650px}}
.lb-shortcode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;max-width:1100px;margin:18px 0 30px}.lb-shortcode-grid section{margin:0;border-radius:10px;box-shadow:0 3px 14px rgba(35,45,30,.06)}.lb-shortcode-grid h2,.lb-shortcode-grid h3{margin-top:0}.lb-code-copy{display:flex;align-items:stretch;gap:8px}.lb-code-copy code{display:flex;align-items:center;flex:1;min-width:0;padding:11px 12px;border:1px solid #d7d9d4;border-radius:6px;background:#f5f7f4;overflow:auto;white-space:nowrap}.lb-code-copy .button{height:auto;min-height:40px}.lb-copy-feedback{position:fixed;right:25px;bottom:25px;padding:10px 16px;border-radius:6px;background:#2e4b28;color:#fff;font-weight:700}.lb-copy-feedback:empty{display:none}@media(max-width:600px){.lb-shortcode-grid{grid-template-columns:1fr}.lb-code-copy{flex-direction:column}.lb-code-copy code{white-space:normal;overflow-wrap:anywhere}}

/* Unit editor is used in both wp-admin and the private frontend portal. */
.lb-unit-editor{max-width:1120px}.lb-unit-editor *{box-sizing:border-box}.lb-unit-editor-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px}.lb-unit-editor-head h1{margin:4px 0 0}.lb-section-kicker{display:block;color:#65745c;font-size:10px;font-weight:800;letter-spacing:.14em}.lb-unit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px}.lb-unit-list article,.lb-unit-add{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:130px;padding:20px;border:1px solid #d9e0d5;border-radius:14px;background:#fff;text-decoration:none;box-shadow:0 5px 17px rgba(40,55,33,.05)}.lb-unit-add{align-items:flex-start;justify-content:center;flex-direction:column;border:2px dashed #a9b8a2;background:#f7faf5;color:#405333}.lb-unit-list h2{margin:6px 0}.lb-unit-list p{margin:0}.lb-unit-type{display:inline-flex;padding:4px 8px;border-radius:20px;background:#e7eee3;color:#405333;font-size:9px;font-weight:800;text-transform:uppercase}.lb-unit-form{display:grid;gap:18px}.lb-unit-form>section{padding:24px;border:1px solid #d9e0d5;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(40,55,33,.05)}.lb-unit-form>section>h2{margin:3px 0 17px}.lb-unit-form label{display:block;margin:0 0 14px;font-weight:650}.lb-unit-form input:not([type=checkbox]),.lb-unit-form select{display:block;width:100%;min-height:46px;margin-top:7px;padding:9px 12px;border:1px solid #b9c3b4;border-radius:8px;background:#fff}.lb-unit-form input:focus,.lb-unit-form select:focus{outline:3px solid rgba(64,83,51,.13);border-color:#405333}.lb-unit-form .lb-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lb-unit-form .lb-three{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.lb-check-label{display:flex!important;align-items:center;gap:9px}.lb-check-label input{width:18px;height:18px;margin:0}.lb-price-matrix{display:grid!important;grid-template-columns:minmax(155px,.8fr) repeat(2,minmax(190px,1fr))!important;gap:9px!important;margin-top:18px;padding:15px;border:1px solid #dce3d8;border-radius:13px;background:#f2f5f0}.lb-matrix-head,.lb-matrix-label,.lb-price-matrix>label{margin:0!important;padding:13px!important;border-radius:9px}.lb-matrix-head{display:flex;align-items:center;justify-content:center;background:#405333;color:#fff;font-size:12px;font-weight:800;text-align:center}.lb-matrix-head:first-child{background:transparent}.lb-matrix-label{display:flex;justify-content:center;flex-direction:column;background:#e5ebe1}.lb-matrix-label strong{font-size:14px;color:#32412d}.lb-matrix-label small{margin-top:4px;color:#687064;font-size:10px}.lb-price-matrix>label{background:#fff;border:1px solid #dce2d8;font-size:0!important}.lb-price-matrix>label input{min-height:52px;margin:0!important;border:2px solid #cad4c5!important;font-size:18px!important;font-weight:750;color:#2e4028}.lb-price-matrix>label input:focus{border-color:#526b45!important}.lb-unit-save{position:sticky;bottom:10px;z-index:10;display:flex;justify-content:flex-end;padding:11px 14px;border:1px solid #d5ddd1;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 9px 28px rgba(40,55,33,.16)}.lb-unit-save p{margin:0}.lb-unit-save input{min-width:190px!important;margin:0!important}
@media(max-width:700px){.lb-unit-editor-head{align-items:flex-start}.lb-unit-editor-head .button{width:auto!important}.lb-unit-list{grid-template-columns:1fr}.lb-unit-list article,.lb-unit-add{min-height:108px;padding:15px}.lb-unit-form{gap:11px}.lb-unit-form>section{padding:16px;border-radius:12px}.lb-unit-form .lb-two,.lb-unit-form .lb-three{grid-template-columns:1fr;gap:0}.lb-price-matrix{grid-template-columns:1fr 1fr!important;gap:7px!important;padding:9px}.lb-matrix-head:first-child{display:none}.lb-matrix-head{min-height:38px;padding:8px 3px!important;font-size:10px}.lb-matrix-label{grid-column:1/-1;padding:9px!important}.lb-price-matrix>label{padding:7px!important}.lb-price-matrix>label input{min-height:48px;font-size:16px!important}.lb-unit-save{bottom:5px}.lb-unit-save,.lb-unit-save p,.lb-unit-save input{width:100%!important}}

.lb-unit-form>section:nth-of-type(2){margin-bottom:-19px;border-bottom:0;border-radius:15px 15px 0 0}.lb-unit-form>section:nth-of-type(3){padding-top:22px;border-top:1px dashed #c7d0c2;border-radius:0 0 15px 15px;box-shadow:0 9px 18px rgba(40,55,33,.05)}.lb-unit-form>section:nth-of-type(3)>h2{margin-top:0;font-size:0}.lb-unit-form>section:nth-of-type(3)>h2:after{content:"Standard nightly & extra guest prices";font-size:19px}.lb-unit-form>section:nth-of-type(3)>.description{font-size:0}.lb-unit-form>section:nth-of-type(3)>.description:after{content:"Used when a matrix price is blank, for Friday/Saturday pricing, and for guests above four.";font-size:12px}.lb-unit-save input[type=submit],.lb-unit-save .button-primary{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;border:1px solid #304126!important;border-radius:8px!important;background:#405333!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:14px!important;font-weight:800!important;opacity:1!important;box-shadow:none!important}.lb-unit-save input[type=submit]:hover,.lb-unit-save .button-primary:hover{background:#304126!important;color:#fff!important}
@media(max-width:700px){.lb-unit-form>section:nth-of-type(2){margin-bottom:-12px}.lb-unit-form>section:nth-of-type(3){padding-top:18px;border-radius:0 0 12px 12px}.lb-unit-save input[type=submit]{width:100%!important}}

/* The four price-matrix amounts are the complete unit price. Legacy fallback
   fields remain in storage for older bookings but are no longer shown. */
.lb-unit-form>section:nth-of-type(2){margin-bottom:0!important;border:1px solid #d9e0d5!important;border-radius:15px!important}.lb-unit-form>section:nth-of-type(3){display:none!important}.lb-unit-form>section:nth-of-type(2)>.description{max-width:720px;padding:10px 12px;border-radius:8px;background:#edf3e9;color:#405333;font-weight:600}.lb-unit-form>section:nth-of-type(2)>.description:after{content:" These amounts are the full accommodation price for the selected guest group."}

.lb-price-matrix>.lb-matrix-head:nth-child(2),.lb-price-matrix>.lb-matrix-head:nth-child(3){font-size:0}.lb-price-matrix>.lb-matrix-head:nth-child(2):after{content:"1–2 guests";font-size:12px}.lb-price-matrix>.lb-matrix-head:nth-child(3):after{content:"3–4 guests";font-size:12px}.lb-unit-form>section:nth-of-type(2)>.description{font-size:0}.lb-unit-form>section:nth-of-type(2)>.description:after{content:"Prices are per room, not per person. One or two guests pay the same room price; three or four guests pay the same larger-group room price.";font-size:12px}

/* Flexible room/package editor */
.lb-room-editor{max-width:1120px}.lb-room-editor *{box-sizing:border-box}.lb-room-form{display:grid;gap:16px}.lb-room-form>section{padding:24px;border:1px solid #d9e0d5;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(40,55,33,.05)}.lb-room-form label{display:block;margin:0 0 14px;font-weight:650}.lb-room-form input:not([type=checkbox]),.lb-room-form select{display:block;width:100%;min-height:46px;margin-top:7px;padding:9px 12px;border:1px solid #b9c3b4;border-radius:8px;background:#fff}.lb-room-rows{display:grid;gap:12px;margin:18px 0}.lb-room-row{padding:16px;border:1px solid #d8e0d4;border-left:5px solid #526b45;border-radius:11px;background:#f7faf5}.lb-room-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.lb-room-row-head strong{font-size:15px;color:#34452e}.lb-remove-room{padding:5px 8px;border:0;background:transparent;color:#a13932;font-weight:700;cursor:pointer}.lb-room-fields{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(110px,.55fr) minmax(150px,.8fr) minmax(150px,.8fr);gap:12px}.lb-room-fields label{margin:0}.lb-add-room{min-height:44px!important}.lb-room-form .lb-unit-save input[type=submit]{background:#405333!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
@media(max-width:850px){.lb-room-fields{grid-template-columns:1fr 1fr}.lb-room-fields label:first-child{grid-column:1/-1}}@media(max-width:520px){.lb-room-form>section{padding:15px}.lb-room-row{padding:12px}.lb-room-fields{grid-template-columns:1fr}.lb-room-fields label:first-child{grid-column:auto}.lb-add-room{width:100%}}

/* House and camp pricing editor */
.lb-type-editor{max-width:1180px}.lb-type-form{display:grid;gap:18px}.lb-type-form>section{padding:24px;border:1px solid #d9e0d5;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(40,55,33,.05)}.lb-type-form>section h2{margin:4px 0 8px}.lb-type-form label{display:block;margin:0;font-weight:700}.lb-type-form input:not([type=checkbox]),.lb-type-form select{display:block;box-sizing:border-box;width:100%;min-height:46px;margin-top:7px;padding:9px 12px;border:1px solid #b9c3b4;border-radius:8px;background:#fff}.lb-config-rows{display:grid;gap:14px;margin:20px 0 15px}.lb-config-row{padding:17px;border:1px solid #d8e0d4;border-left:5px solid #526b45;border-radius:12px;background:#f7faf5}.lb-config-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.lb-config-head strong{font-size:15px}.lb-remove-config{border:0;background:transparent;color:#a13932;font-weight:750;cursor:pointer}.lb-house-fields{display:grid;grid-template-columns:minmax(150px,1.25fr) minmax(115px,.75fr) minmax(100px,.6fr) minmax(80px,.5fr) minmax(145px,1fr) minmax(145px,1fr);gap:12px;align-items:end}.lb-camp-fields{display:grid;grid-template-columns:minmax(170px,1.25fr) repeat(4,minmax(120px,1fr));gap:12px;align-items:end}.lb-capacity-output{display:flex;align-items:center;min-height:46px;margin-top:7px;padding:9px 12px;border:1px solid #ced7ca;border-radius:8px;background:#e8eee4;color:#405333;font-size:17px;font-weight:800}.lb-type-form .lb-unit-save{margin-top:0}.lb-type-form .lb-unit-save input[type=submit]{background:#405333!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#304126!important}
@media(max-width:980px){.lb-house-fields{grid-template-columns:repeat(3,1fr)}.lb-camp-fields{grid-template-columns:1fr 1fr}}@media(max-width:620px){.lb-type-form{gap:11px}.lb-type-form>section{padding:16px}.lb-type-form .lb-two,.lb-house-fields,.lb-camp-fields{grid-template-columns:1fr}.lb-config-row{padding:13px}.lb-type-form [data-add-bedroom],.lb-type-form [data-add-sleeper],.lb-type-form [data-add-camp]{width:100%;min-height:44px;margin:4px 0}}
.lb-type-form .lb-rule-check{display:flex;align-items:center;gap:9px;min-height:46px;padding:9px 12px;border:1px solid #ced7ca;border-radius:8px;background:#f1f5ee}.lb-type-form .lb-rule-check input{width:18px;height:18px;margin:0}
/* Modern Loerkop booking surface */
.lb-accommodation-booking{--lb-forest:#3f5132;--lb-forest-dark:#2f4026;--lb-sand:#f7f3e9;--lb-line:#ded7c7;gap:clamp(20px,3vw,36px);align-items:start}.lb-accommodation-booking>h2{font-family:inherit;font-size:clamp(25px,3vw,38px);letter-spacing:-.025em}.lb-calendar-wrap,.lb-booking-form{border:1px solid var(--lb-line);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 18px 45px rgba(44,55,35,.09)}.lb-calendar-wrap{padding:clamp(16px,2.5vw,26px)}.lb-calendar-bar{padding:0 0 17px;border-bottom:1px solid #ece7dc}.lb-calendar-title{font-size:19px;font-weight:800;color:var(--lb-forest-dark)}.lb-month-nav{width:44px;height:44px;border:1px solid #d8d0bf!important;background:#fff!important;color:var(--lb-forest)!important;box-shadow:0 5px 14px rgba(48,61,39,.08)}.lb-month h3{font-size:23px;letter-spacing:-.02em}.lb-week{color:#78806f;font-size:11px;letter-spacing:.08em}.lb-day{border-radius:10px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.lb-day.lb-free:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(62,82,49,.15)}.lb-booking-form{padding:clamp(18px,3vw,30px);background:linear-gradient(145deg,#faf7ef,#f4efe3)}.lb-booking-form input,.lb-booking-form select,.lb-booking-form textarea{border-radius:10px!important;border-color:#cfc6b4!important;background:#fff!important}.lb-booking-form .lb-button{min-height:52px;border-radius:11px;background:var(--lb-forest)!important;box-shadow:0 8px 18px rgba(52,70,41,.18)}.lb-booking-form .lb-button:hover{background:var(--lb-forest-dark)!important;transform:translateY(-1px)}.lb-price-card{border-radius:16px!important;overflow:hidden}.lb-result.lb-error{border-radius:12px}.lb-guest-fields{animation:lbReveal .25s ease}@keyframes lbReveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:600px){.lb-calendar-wrap,.lb-booking-form{border-radius:16px}.lb-accommodation-booking>h2{font-size:27px}.lb-days{gap:5px}.lb-day{min-height:40px;font-size:13px}.lb-booking-form{padding:16px}.lb-booking-form .lb-button{width:100%}}
/* Google-style monthly management calendar */
.lb-google-calendar{max-width:1500px;overflow:visible}.lb-gcal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}.lb-gcal-toolbar h1{margin:3px 0 0;font-size:28px}.lb-gcal-actions{display:flex;gap:7px}.lb-gcal-actions .button{min-width:42px}.lb-gcal-week,.lb-gcal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.lb-gcal-week{border:1px solid #d9ddd5;border-bottom:0;border-radius:14px 14px 0 0;background:#f5f7f3}.lb-gcal-week span{padding:10px;text-align:center;color:#687063;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.lb-gcal-grid{overflow:hidden;border-top:1px solid #d9ddd5;border-left:1px solid #d9ddd5;border-radius:0 0 14px 14px;background:#fff;box-shadow:0 12px 35px rgba(34,48,28,.08)}.lb-gcal-day{box-sizing:border-box;min-height:132px;padding:7px;border-right:1px solid #d9ddd5;border-bottom:1px solid #d9ddd5;background:#fff}.lb-gcal-day.is-empty{background:#f5f6f4}.lb-gcal-day.is-past{background:#f7f7f6}.lb-gcal-date{display:flex;justify-content:flex-end;margin-bottom:5px}.lb-gcal-date span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-size:12px;font-weight:700}.lb-gcal-day.is-today .lb-gcal-date span{background:#d66d38;color:#fff}.lb-gcal-events{display:grid;gap:3px}.lb-gcal-event{display:block;min-width:0;padding:5px 6px;border-radius:5px;background:#5c714b;color:#fff!important;text-decoration:none;font-size:10px;line-height:1.25;overflow:hidden}.lb-gcal-event strong,.lb-gcal-event span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-gcal-event.is-pending{background:#76539a}.lb-gcal-event.is-awaiting_payment{background:#2878b8}.lb-gcal-event.is-blocked{background:#cf9140}.lb-gcal-day.is-past .lb-gcal-event{opacity:.68}@media(max-width:782px){.lb-gcal-toolbar{align-items:flex-start;flex-direction:column}.lb-gcal-actions{width:100%}.lb-gcal-actions .button{flex:1}.lb-gcal-week span{padding:8px 2px;font-size:9px}.lb-gcal-day{min-height:86px;padding:3px}.lb-gcal-date span{width:23px;height:23px}.lb-gcal-event{padding:4px;font-size:0}.lb-gcal-event strong{font-size:8px}.lb-gcal-event span{display:none}.lb-google-calendar .lb-calendar-tools{grid-template-columns:1fr}}
.lb-delivery-check{margin-top:22px;padding:20px;border:1px solid #d8e2d3;border-radius:13px;background:#f3f7f0}.lb-delivery-check h2{margin:5px 0 12px}.lb-delivery-check ul{display:grid;gap:8px;margin:0;padding-left:20px}.lb-delivery-check p{margin:15px 0 0;color:#596254}.lb-delivery-check strong{color:#34482d}
