/* OTWA Farm Booking — public + shared calendar styles.
   Category colours pull from the ACSS palette on the front end; the second
   value in each var() is a fallback used in wp-admin where ACSS isn't loaded. */

.otwa-calendar,
.otwa-request {
	--otwa-stay:        var(--primary-trans-30,   rgba(99, 153, 34, 0.28));
	--otwa-stay-solid:  var(--primary,            #639922);
	--otwa-retreat:     var(--secondary-trans-30, rgba(216, 90, 48, 0.26));
	--otwa-retreat-solid: var(--secondary,        #D85A30);
	--otwa-visit:       var(--accent-trans-30,    rgba(55, 138, 221, 0.24));
	--otwa-visit-solid: var(--accent,             #378ADD);
	--otwa-closed-a:    var(--shade-light,        #d3d1c7);
	--otwa-closed-b:    var(--shade,              #b4b2a9);
	--otwa-line:        var(--base-trans-20,      rgba(0,0,0,0.10));
	--otwa-radius: 8px;
	font-family: inherit;
}

.otwa-calendar { max-width: 640px; }

.otwa-cal-head {
	display: flex; align-items: center; justify-content: center; gap: 1rem;
	margin-bottom: 0.75rem;
}
.otwa-cal-title { font-weight: 600; font-size: 1.05rem; min-width: 11rem; text-align: center; }
.otwa-nav {
	background: none; border: 1px solid var(--otwa-line); border-radius: var(--otwa-radius);
	width: 2rem; height: 2rem; font-size: 1.1rem; line-height: 1; cursor: pointer;
}
.otwa-nav:hover { background: var(--otwa-line); }

.otwa-legend { display: flex; flex-wrap: wrap; gap: 0.85rem; margin-bottom: 0.6rem; }
.otwa-lg { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.8rem; opacity: 0.85; }
.otwa-sw { width: 0.85rem; height: 0.85rem; border-radius: 3px; display: inline-block; }

.otwa-chips { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-bottom: 0.75rem; }
.otwa-chip {
	font-size: 0.8rem; padding: 0.2rem 0.7rem; border-radius: 999px;
	border: 1px solid var(--otwa-line); background: none; cursor: pointer;
}
.otwa-chip.is-active { background: var(--otwa-stay-solid); color: #fff; border-color: transparent; }

.otwa-dow { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-bottom: 4px; }
.otwa-dow span { text-align: center; font-size: 0.72rem; opacity: 0.55; }

.otwa-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }

.otwa-day {
	position: relative; border: 1px solid var(--otwa-line); border-radius: 6px;
	aspect-ratio: 1 / 0.82; padding: 0.3rem 0.4rem; background: var(--otwa-cell, transparent);
	overflow: hidden;
}
.otwa-day.is-empty { border: none; background: none; }
.otwa-day .otwa-n { font-size: 0.8rem; position: relative; z-index: 2; }
.otwa-day.is-past { opacity: 0.4; }
.otwa-day.is-selectable { cursor: pointer; }
.otwa-day.is-selectable:hover { border-color: var(--otwa-stay-solid); }

.otwa-band {
	position: absolute; left: 0; right: 0; bottom: 0; height: 40%;
	display: flex; align-items: center; justify-content: center;
	font-size: 0.6rem; z-index: 1;
}
.otwa-band.cat-stay { background: var(--otwa-stay); }
.otwa-band.cat-visit { background: var(--otwa-visit); }
.otwa-band.cat-retreat { background: var(--otwa-retreat); }

/* Turnover: checkout morning — only the left half is occupied. */
.otwa-band.is-turnover { width: 50%; right: auto; }

/* Property-wide closure — diagonal neutral stripe over the whole cell. */
.otwa-day.is-property::before {
	content: ""; position: absolute; inset: 0; z-index: 1; opacity: 0.7;
	background: repeating-linear-gradient(45deg,
		var(--otwa-closed-a), var(--otwa-closed-a) 5px,
		var(--otwa-closed-b) 5px, var(--otwa-closed-b) 10px);
}
.otwa-day.is-property .otwa-pw {
	position: absolute; top: 3px; right: 4px; z-index: 2; font-size: 0.65rem; opacity: 0.75;
}

/* Admin selection */
.otwa-day.is-selected { outline: 2px solid var(--otwa-stay-solid); outline-offset: -2px; }
.otwa-day.is-in-range { background: var(--otwa-stay); }

/* Filter dimming */
.otwa-grid.filter-stay .otwa-band.cat-visit,
.otwa-grid.filter-stay .otwa-band.cat-retreat,
.otwa-grid.filter-visit .otwa-band.cat-stay,
.otwa-grid.filter-visit .otwa-band.cat-retreat,
.otwa-grid.filter-retreat .otwa-band.cat-stay,
.otwa-grid.filter-retreat .otwa-band.cat-visit { opacity: 0.12; }

.otwa-cal-note { font-size: 0.78rem; opacity: 0.6; margin-top: 0.6rem; }

/* ------------------------------------------------------------------ */
/* Scoped calendar = compact Airbnb-style date picker                  */
/* ------------------------------------------------------------------ */

.otwa-calendar.is-scoped { max-width: 340px; }
.otwa-calendar.is-scoped .otwa-cal-title { font-size: 0.95rem; min-width: 9rem; }
.otwa-calendar.is-scoped .otwa-grid { gap: 2px; }
.otwa-calendar.is-scoped .otwa-dow { gap: 2px; }
.otwa-calendar.is-scoped .otwa-dow span { font-size: 0.65rem; }

.otwa-calendar.is-scoped .otwa-day {
	aspect-ratio: 1 / 1; border: none; border-radius: 999px;
	display: flex; align-items: center; justify-content: center; padding: 0;
}
.otwa-calendar.is-scoped .otwa-day .otwa-n {
	font-size: 0.82rem; width: 100%; height: 100%;
	display: flex; align-items: center; justify-content: center; border-radius: 999px;
}
.otwa-calendar.is-scoped .otwa-day.is-empty { border: none; }

.otwa-calendar.is-scoped .otwa-day.is-unavailable .otwa-n {
	text-decoration: line-through; opacity: 0.35; cursor: not-allowed;
}
.otwa-calendar.is-scoped .otwa-day.is-past .otwa-n { opacity: 0.25; text-decoration: line-through; }

.otwa-calendar.is-scoped .otwa-day.is-selectable { cursor: pointer; }
.otwa-calendar.is-scoped .otwa-day.is-selectable:hover .otwa-n {
	box-shadow: inset 0 0 0 1.5px var(--otwa-stay-solid);
}

/* Turnover day — a subtle diagonal split so guests see it's a changeover. */
.otwa-calendar.is-scoped .otwa-day.is-turnover-day .otwa-n {
	background: linear-gradient(135deg, var(--otwa-stay) 0 50%, transparent 50% 100%);
}

/* Range highlight */
.otwa-calendar.is-scoped .otwa-day.is-in-range .otwa-n { background: var(--otwa-stay); border-radius: 0; }
.otwa-calendar.is-scoped .otwa-day.is-selected .otwa-n {
	background: var(--otwa-stay-solid); color: #fff; border-radius: 999px;
}
.otwa-calendar.is-scoped .otwa-legend { display: none; }

/* ------------------------------------------------------------------ */
/* Request form                                                        */
/* ------------------------------------------------------------------ */

.otwa-request { max-width: 640px; }
.otwa-req-cats { display: flex; gap: 0.4rem; margin-bottom: 1rem; }
.otwa-cat-btn {
	font-size: 0.85rem; padding: 0.35rem 0.9rem; border-radius: 999px;
	border: 1px solid var(--otwa-line); background: none; cursor: pointer;
}
.otwa-cat-btn.is-active { background: var(--otwa-stay-solid); color: #fff; border-color: transparent; }

.otwa-req-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem 1rem; }
.otwa-field { display: flex; flex-direction: column; gap: 0.25rem; }
.otwa-field.otwa-full { grid-column: 1 / -1; }
.otwa-field label { font-size: 0.75rem; opacity: 0.7; }
.otwa-field input, .otwa-field select, .otwa-field textarea {
	padding: 0.5rem 0.6rem; border: 1px solid var(--otwa-line); border-radius: var(--otwa-radius);
	font: inherit; width: 100%; box-sizing: border-box; background: #fff;
}
.otwa-time { font-size: 0.72rem; opacity: 0.6; }
.otwa-when[hidden], .otwa-field[hidden] { display: none; }

.otwa-hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }

.otwa-req-foot { display: flex; align-items: center; justify-content: flex-end; gap: 1rem; margin-top: 1rem; }
.otwa-req-msg { font-size: 0.85rem; opacity: 0.85; }
.otwa-req-msg.is-error { color: #A32D2D; }
.otwa-req-msg.is-ok { color: #3B6D11; }
.otwa-submit {
	background: var(--otwa-stay-solid); color: #fff; border: none; border-radius: var(--otwa-radius);
	padding: 0.55rem 1.3rem; font: inherit; cursor: pointer;
}
.otwa-submit:disabled { opacity: 0.5; cursor: default; }

@media (max-width: 480px) {
	.otwa-req-fields { grid-template-columns: 1fr; }
}

/* ============================================================ */
/* Overview calendar clarity + booking popup/modal (v1.2)       */
/* ============================================================ */
.otwa-calendar:not(.is-scoped){max-width:min(100%,1040px);margin-inline:auto;background:var(--white,#fff);border:1px solid var(--otwa-line);border-radius:var(--radius,16px);padding:clamp(1.25rem,2.5vw,2rem);box-shadow:0 1px 2px rgba(20,30,10,.05),0 12px 34px rgba(20,30,10,.06);}
.otwa-calendar:not(.is-scoped) .otwa-cal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;}
.otwa-calendar:not(.is-scoped) .otwa-cal-title{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:800;letter-spacing:-.01em;color:var(--primary,#2f5d1e);text-align:center;min-width:auto;}
.otwa-calendar:not(.is-scoped) .otwa-nav{width:3.2rem;height:3.2rem;border-radius:999px;border:1px solid var(--otwa-line);background:var(--white,#fff);font-size:1.6rem;line-height:1;color:var(--primary,#2f5d1e);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s,transform .15s;}
.otwa-calendar:not(.is-scoped) .otwa-nav:hover{background:var(--otwa-stay);border-color:var(--otwa-stay-solid);transform:translateY(-1px);}
.otwa-calendar:not(.is-scoped) .otwa-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem;margin:0 0 1rem;}
.otwa-calendar:not(.is-scoped) .otwa-lg{font-size:1rem;color:var(--text,#333);gap:.55rem;align-items:center;font-weight:500;}
.otwa-calendar:not(.is-scoped) .otwa-sw{width:1.3rem;height:1.3rem;border-radius:5px;}
.otwa-calendar:not(.is-scoped) .otwa-chips{justify-content:center;gap:.55rem;margin-bottom:1.5rem;}
.otwa-calendar:not(.is-scoped) .otwa-chip{font-size:1rem;padding:.5rem 1.25rem;border-radius:999px;border:1px solid var(--otwa-line);background:var(--white,#fff);color:var(--text,#333);cursor:pointer;transition:all .15s;}
.otwa-calendar:not(.is-scoped) .otwa-chip:hover{border-color:var(--otwa-stay-solid);}
.otwa-calendar:not(.is-scoped) .otwa-chip.is-active{background:var(--primary,#2f5d1e);color:#fff;border-color:var(--primary,#2f5d1e);}
.otwa-calendar:not(.is-scoped) .otwa-dow{gap:8px;margin-bottom:8px;}
.otwa-calendar:not(.is-scoped) .otwa-dow span{font-size:.92rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--shade,#7d7d75);}
.otwa-calendar:not(.is-scoped) .otwa-grid{gap:8px;}
.otwa-calendar:not(.is-scoped) .otwa-day{aspect-ratio:1/1;border:1px solid var(--otwa-line);border-radius:12px;padding:.55rem;overflow:hidden;background:var(--white,#fff);transition:box-shadow .15s,transform .15s;}
.otwa-calendar:not(.is-scoped) .otwa-day.is-empty{border:none;background:transparent;}
.otwa-calendar:not(.is-scoped) .otwa-n{position:relative;z-index:2;font-size:1.15rem;font-weight:700;color:var(--text,#26261f);}
.otwa-calendar:not(.is-scoped) .otwa-day.is-past{opacity:.4;}
.otwa-calendar:not(.is-scoped) .otwa-day.is-selectable{cursor:pointer;}
.otwa-calendar:not(.is-scoped) .otwa-day.is-selectable:hover{box-shadow:inset 0 0 0 2px var(--otwa-stay-solid);transform:translateY(-1px);}
.otwa-calendar:not(.is-scoped) .otwa-day.is-picked{box-shadow:inset 0 0 0 3px var(--primary,#2f5d1e);}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band{left:0;right:0;bottom:0;height:8px;}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band.cat-stay{background:var(--otwa-stay-solid);}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band.cat-retreat{background:var(--otwa-retreat-solid);}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band.cat-visit{background:var(--otwa-visit-solid);}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band.is-turnover{width:50%;}
.otwa-calendar:not(.is-scoped) .otwa-legend .otwa-sw.cat-stay{background:var(--otwa-stay-solid);}
.otwa-calendar:not(.is-scoped) .otwa-legend .otwa-sw.cat-retreat{background:var(--otwa-retreat-solid);}
.otwa-calendar:not(.is-scoped) .otwa-legend .otwa-sw.cat-visit{background:var(--otwa-visit-solid);}
.otwa-calendar:not(.is-scoped) .otwa-day.is-property .otwa-pw{z-index:3;font-size:1rem;}
.otwa-calendar:not(.is-scoped) .otwa-cal-note{text-align:center;font-size:1rem;color:var(--text,#555);margin-top:1.25rem;background:var(--shade-ultra-light,#f5f5f2);padding:.75rem 1rem;border-radius:var(--radius-s,10px);}
@supports selector(:has(*)){
  .otwa-calendar:not(.is-scoped) .otwa-day::after{position:absolute;left:6px;right:6px;bottom:10px;text-align:center;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1.1;z-index:2;color:rgba(20,28,12,.9);}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-stay:not(.is-turnover)){background:color-mix(in srgb,var(--otwa-stay-solid) 55%,#fff);border-color:var(--otwa-stay-solid);}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-stay:not(.is-turnover))::after{content:"Farm Stay";}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-retreat){background:color-mix(in srgb,var(--otwa-retreat-solid) 55%,#fff);border-color:var(--otwa-retreat-solid);}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-retreat)::after{content:"Retreat";}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-visit){background:color-mix(in srgb,var(--otwa-visit-solid) 55%,#fff);border-color:var(--otwa-visit-solid);}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-visit)::after{content:"Visit";}
  .otwa-calendar:not(.is-scoped) .otwa-day.is-partial{cursor:pointer;}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.is-turnover):not(:has(.otwa-band.cat-stay:not(.is-turnover)))::after{content:"Changeover";color:var(--otwa-stay-solid);}
  .otwa-calendar:not(.is-scoped) .otwa-day.is-property{border-color:var(--otwa-closed-b,#b4b2a9);}
  .otwa-calendar:not(.is-scoped) .otwa-day.is-property::after{content:"Closed";color:rgba(40,40,36,.9);}
  .otwa-calendar:not(.is-scoped) .otwa-day.is-property::before{opacity:.85;}
  .otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band:not(.is-turnover){display:none;}
}

/* Booking popup */
.otwa-pop-backdrop{position:fixed;inset:0;z-index:99998;}
.otwa-pop{position:absolute;z-index:99999;background:var(--white,#fff);border:1px solid var(--otwa-line);border-radius:14px;box-shadow:0 10px 40px rgba(20,30,10,.22);padding:1.1rem;min-width:230px;max-width:min(92vw,300px);}
.otwa-pop-arrow{position:absolute;top:-7px;left:50%;transform:translateX(-50%) rotate(45deg);width:12px;height:12px;background:var(--white,#fff);border-left:1px solid var(--otwa-line);border-top:1px solid var(--otwa-line);}
.otwa-pop-date{font-weight:800;color:var(--primary,#2f5d1e);font-size:1.05rem;margin-bottom:.15rem;}
.otwa-pop-q{font-size:.92rem;color:var(--text,#555);margin-bottom:.85rem;}
.otwa-pop-opts{display:flex;flex-direction:column;gap:.5rem;}
.otwa-pop-opts button{display:flex;align-items:center;gap:.65rem;width:100%;text-align:left;padding:.65rem .85rem;border:1px solid var(--otwa-line);border-radius:999px;background:var(--white,#fff);font-size:.98rem;font-weight:700;color:var(--text,#333);cursor:pointer;transition:all .12s;}
.otwa-pop-opts button:hover{border-color:var(--primary,#2f5d1e);background:var(--shade-ultra-light,#f5f5f2);transform:translateY(-1px);}
.otwa-pop-dot{width:.9rem;height:.9rem;border-radius:4px;flex:none;}

/* Booking modal */
.otwa-modal[hidden]{display:none;}
.otwa-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-start;justify-content:center;padding:5vh 1rem;overflow:auto;}
.otwa-modal-backdrop{position:fixed;inset:0;background:rgba(20,25,15,.5);}
.otwa-modal-panel{position:relative;z-index:1;background:var(--white,#fff);border-radius:var(--radius,16px);max-width:640px;width:100%;padding:clamp(1.5rem,3vw,2.25rem);box-shadow:0 20px 60px rgba(0,0,0,.25);}
.otwa-modal-x{position:absolute;top:.6rem;right:.75rem;width:2.4rem;height:2.4rem;border:none;background:transparent;font-size:1.9rem;line-height:1;color:var(--text,#555);cursor:pointer;border-radius:999px;}
.otwa-modal-x:hover{background:var(--shade-ultra-light,#f0f0ec);}
.otwa-modal .otwa-request{max-width:none;}
.otwa-modal .otwa-req-title{margin-top:0;}

/* ============================================================ */
/* v1.4 consolidated: violet visit, popup, modal, datepicker    */
/* ============================================================ */
.otwa-calendar{--otwa-visit-solid:#7A4DA8;--otwa-visit:rgba(122,77,168,.30);}
.otwa-pop-opts button[data-choose="visit"] .otwa-pop-dot{background:#7A4DA8 !important;}
.otwa-pop{min-width:255px;padding:1.3rem;}
.otwa-pop-date{font-size:1.3rem;}
.otwa-pop-q{font-size:1.05rem;margin-bottom:1rem;}
.otwa-pop-opts button{font-size:1.05rem;padding:.75rem 1rem;}
.otwa-pop-dot{width:1rem;height:1rem;}
.otwa-modal .otwa-req-cats{display:none;}
.otwa-modal .otwa-req-title{font-size:1.9rem;margin:0 0 1.25rem;}
.otwa-modal .otwa-req-fields{grid-template-columns:1fr;gap:1rem;margin-top:0;}
.otwa-modal .otwa-field label{font-size:var(--text-s,.95rem);font-weight:700;color:var(--text,#333);margin-bottom:.3rem;}
.otwa-modal .otwa-field label::after{content:" *";color:#d9342b;font-weight:700;}
.otwa-modal .otwa-field input,.otwa-modal .otwa-field select,.otwa-modal .otwa-field textarea{padding:.9rem 1rem;border:1.5px solid var(--otwa-line,#dcdcd6);border-radius:10px;font-size:var(--text-m,1.05rem);background:#fff;color:var(--text,#222);transition:border-color .15s,box-shadow .15s;}
.otwa-modal .otwa-field input:focus,.otwa-modal .otwa-field select:focus,.otwa-modal .otwa-field textarea:focus{border-color:var(--primary,#2f5d1e);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#2f5d1e) 22%,transparent);}
.otwa-modal .otwa-field input[data-field="start_date"],.otwa-modal .otwa-field input[data-field="end_date"]{cursor:pointer;}
.otwa-modal .otwa-time{font-size:.82rem;color:var(--shade,#8a8a82);}
.otwa-modal .otwa-req-foot{margin-top:1.5rem;flex-direction:column;align-items:center;gap:.85rem;}
.otwa-modal .otwa-req-msg{font-size:var(--text-s,.95rem);text-align:center;}
.otwa-modal .otwa-submit{background:var(--primary,#2f5d1e);color:#fff;font-size:var(--text-m,1.05rem);padding:.85rem 1.9rem;border-radius:999px;font-weight:600;border:none;cursor:pointer;transition:opacity .15s,transform .15s;}
.otwa-modal .otwa-submit:hover{opacity:.92;transform:translateY(-1px);}
.otwa-dp-backdrop{position:fixed;inset:0;z-index:100001;}
.otwa-dp{position:absolute;z-index:100002;background:#fff;border:1px solid var(--otwa-line,#e2e2dc);border-radius:12px;box-shadow:0 12px 40px rgba(20,30,10,.2);padding:.9rem;width:290px;box-sizing:border-box;}
.otwa-dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;}
.otwa-dp-title{font-weight:700;font-size:1rem;color:var(--text,#26261f);}
.otwa-dp-nav{width:2.1rem;height:2.1rem;border-radius:999px;border:1px solid var(--otwa-line,#e2e2dc);background:#fff;cursor:pointer;font-size:1.05rem;line-height:1;}
.otwa-dp-nav:hover{background:var(--shade-ultra-light,#f3f3ef);}
.otwa-dp-dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px;}
.otwa-dp-dow span{text-align:center;font-size:.7rem;font-weight:700;color:var(--shade,#9a9a92);}
.otwa-dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}
.otwa-dp-cell{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;font-size:.9rem;border-radius:999px;color:var(--text,#26261f);}
.otwa-dp-cell.is-off{color:#a6a69e;text-decoration:line-through;text-decoration-thickness:1.5px;cursor:not-allowed;background:var(--shade-ultra-light,#f4f4f1);}
.otwa-dp-cell.is-open{cursor:pointer;font-weight:700;}
.otwa-dp-cell.is-open:hover{box-shadow:inset 0 0 0 1.5px var(--primary,#2f5d1e);}
.otwa-dp-cell.is-cur{background:var(--primary,#2f5d1e);color:#fff;font-weight:700;}

/* v1.5 — book button */
.otwa-book-btn{display:inline-block;background:var(--primary,#2f5d1e);color:#fff;border:none;border-radius:999px;padding:.75rem 1.7rem;font-size:var(--text-m,1.05rem);font-weight:600;cursor:pointer;transition:opacity .15s,transform .15s;text-decoration:none;}
.otwa-book-btn:hover{opacity:.92;transform:translateY(-1px);color:#fff;}

/* v1.6 — Rental category (accent blue, distinct from violet visits) */
.otwa-calendar,.otwa-request{--otwa-rental:var(--secondary-trans-30,rgba(216,90,48,.26));--otwa-rental-solid:var(--secondary,#D85A30);}
.otwa-band.cat-rental{background:var(--otwa-rental);}
.otwa-calendar:not(.is-scoped) .otwa-grid .otwa-band.cat-rental{background:var(--otwa-rental-solid);}
.otwa-calendar:not(.is-scoped) .otwa-legend .otwa-sw.cat-rental{background:var(--otwa-rental-solid);}
@supports selector(:has(*)){
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-rental){background:color-mix(in srgb,var(--otwa-rental-solid) 55%,#fff);border-color:var(--otwa-rental-solid);}
  .otwa-calendar:not(.is-scoped) .otwa-day:has(.otwa-band.cat-rental)::after{content:"Rental";}
}

/* v1.6 — modal "what you're booking" subtitle */
.otwa-req-subtitle{margin:-.5rem 0 1rem;font-size:var(--text-m,1.05rem);font-weight:600;color:var(--primary,#2f5d1e);}
.otwa-req-subtitle[hidden]{display:none;}
