.rrpav-page-header{align-items:flex-start}.rrpav-mode-options{display:grid;gap:12px}.rrpav-mode-option{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:12px;background:var(--bx-color-bg-elevated,#fff);cursor:pointer}.rrpav-mode-option input{margin-top:5px}.rrpav-mode-option span{display:grid;gap:3px}.rrpav-mode-option small,.rrpav-record-list small{color:var(--bx-color-fg-muted,#6a6a6a)}.rrpav-inline-grid,.rrpav-feed-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.rrpav-feed-form{grid-template-columns:minmax(150px,.7fr) minmax(180px,1fr) minmax(120px,.45fr)}.rrpav-inline-grid label,.rrpav-feed-form label,.rrpav-enquiry-form label{display:grid;gap:6px}.rrpav-grid-span-2{grid-column:span 2}.rrpav-section-heading,.rrpav-public-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.rrpav-section-heading h2,.rrpav-public-heading h2{margin-top:0}.rrpav-secret-warning{margin:14px 0;padding:12px 14px;border-radius:10px;background:#fff8df;border:1px solid #e4c96a}.rrpav-record-list{display:grid;gap:10px;margin-top:18px}.rrpav-record-list article{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 14px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px}.rrpav-record-list article>div{display:grid;gap:3px}.rrpav-sync-status.is-failed{color:#b42318}.rrpav-sync-status.is-success{color:#16733b}.rrpav-public-panel{margin-top:18px}.rrpav-on-request{display:grid;gap:4px;padding:16px;border-radius:12px;background:var(--bx-color-bg-muted,#f7f7f9)}
.rrpav-calendar{position:relative}.rrpav-calendar-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:8px}.rrpav-calendar-toolbar button{width:38px;height:38px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:50%;background:var(--bx-color-bg-elevated,#fff);font-size:25px;line-height:1;cursor:pointer}.rrpav-calendar-toolbar button:disabled{opacity:.35;cursor:not-allowed}.rrpav-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.rrpav-calendar-month h3{text-align:center;margin:0 0 10px;font-size:17px}.rrpav-calendar-weekdays,.rrpav-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.rrpav-calendar-weekdays span{text-align:center;font-size:12px;font-weight:600;color:var(--bx-color-fg-muted,#6a6a6a);padding:4px}.rrpav-calendar-days button{position:relative;aspect-ratio:1;border:0;border-radius:50%;background:transparent;display:grid;place-items:center;min-width:0;padding:0;color:inherit;cursor:pointer}.rrpav-calendar-days button:hover:not(:disabled){background:var(--bx-color-bg-muted,#f1f2f4)}.rrpav-calendar-days button.is-unavailable{background:#eceef1;color:#858a94;text-decoration:line-through}.rrpav-calendar-days button.is-selected{background:#d9e9ee;color:#163d45;text-decoration:none;border-radius:8px}.rrpav-calendar-days button.is-arrival,.rrpav-calendar-days button.is-departure{background:var(--bx-color-accent,#ef5455);color:#fff;text-decoration:none}.rrpav-calendar-days button.is-outside{visibility:hidden}.rrpav-calendar-days button.is-past{opacity:.32;cursor:not-allowed}.rrpav-calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:13px}.rrpav-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.rrpav-calendar-legend i{width:13px;height:13px;border-radius:4px;border:1px solid var(--bx-color-border,#d8dbe2)}.rrpav-calendar-legend .is-available{background:var(--bx-color-bg-elevated,#fff)}.rrpav-calendar-legend .is-unavailable{background:#eceef1}.rrpav-calendar-legend .is-selected{background:#d9e9ee}.rrpav-last-sync{font-size:13px;color:var(--bx-color-fg-muted,#6a6a6a)}.rrpav-enquiry-form{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--bx-color-border,#d8dbe2)}.rrpav-selection-summary{font-weight:600;margin:0}.rrpav-selection-error{min-height:1.4em;color:#b42318;margin:0}.rrpav-enquiry-form button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:859px){.rrpav-calendar-months{grid-template-columns:1fr}.rrpav-inline-grid,.rrpav-feed-form{grid-template-columns:1fr}.rrpav-grid-span-2{grid-column:auto}.rrpav-section-heading,.rrpav-public-heading{display:grid}.rrpav-record-list article{align-items:flex-start}.rrpav-calendar-days button{min-height:34px;aspect-ratio:auto}.rrpav-page-header .rrprop-page-actions{width:100%}}
@media(max-width:480px){.rrpav-calendar-weekdays,.rrpav-calendar-days{gap:2px}.rrpav-calendar-days button{min-height:36px}.rrpav-record-list article{display:grid}.rrpav-record-list article form{justify-self:start}}
.rrpav-calendar-loading,.rrpav-calendar-error{margin:0;padding:14px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:8px;background:var(--bx-color-bg-muted,#f7f7f9);color:var(--bx-color-fg-muted,#6a6a6a)}.rrpav-calendar-error{color:#b42318}.rrpav-search-dates{display:grid;gap:8px}.rrpav-search-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rrpav-search-dates[hidden]{display:none!important}.rrpav-test-panel form{margin-top:12px}@media(max-width:680px){.rrpav-search-date-grid{grid-template-columns:1fr}}

/* Studio and venue hourly availability. */
.rrpav-schedule-grid{display:grid;gap:8px;margin-top:16px}.rrpav-schedule-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.7fr) minmax(130px,.7fr);gap:12px;align-items:end;padding:10px 12px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px;background:var(--bx-color-bg-elevated,#fff)}.rrpav-schedule-row label{display:grid;gap:5px}.rrpav-day-toggle{display:flex!important;align-items:center;gap:9px;font-weight:600;padding-bottom:10px}.rrpav-time-block-form{grid-template-columns:minmax(150px,.8fr) minmax(130px,.65fr) minmax(130px,.65fr) minmax(180px,1fr)}.rrpav-all-day-toggle{display:flex!important;align-items:center;gap:8px;align-self:center;padding:8px 0}.rrpav-time-grid,.rrpav-search-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rrpav-search-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rrpav-time-grid label,.rrpav-search-time-grid label{display:grid;gap:6px}.rrpav-opening-hours{margin:12px 0 18px;padding:11px 13px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px}.rrpav-opening-hours summary{cursor:pointer;font-weight:600}.rrpav-opening-hours dl{display:grid;gap:7px;margin:12px 0 0}.rrpav-opening-hours dl>div{display:flex;justify-content:space-between;gap:12px}.rrpav-opening-hours dt{font-weight:600}.rrpav-opening-hours dd{margin:0}.rrpav-calendar-days button.is-partial:not(.is-selected){box-shadow:inset 0 -4px 0 #e7ad2d}.rrpav-calendar-days button.is-closed{opacity:.56}.rrpav-calendar-legend .is-partial{background:linear-gradient(to top,#e7ad2d 0 34%,var(--bx-color-bg-elevated,#fff) 34%)}.rrpav-calendar-days button.is-space-date{border-radius:50%;background:var(--bx-color-accent,#ef5455);color:#fff}.rrpav-time-block-form [data-rrpav-time-field] input:disabled{opacity:.5}.rrpav-search-dates small{color:var(--bx-color-fg-muted,#6a6a6a)}
@media(max-width:900px){.rrpav-schedule-row{grid-template-columns:1fr 1fr}.rrpav-day-toggle{grid-column:1/-1;padding-bottom:0}.rrpav-time-block-form{grid-template-columns:repeat(2,minmax(0,1fr))}.rrpav-time-block-form button{justify-self:start}}
@media(max-width:680px){.rrpav-schedule-row,.rrpav-time-block-form,.rrpav-time-grid,.rrpav-search-time-grid{grid-template-columns:1fr}.rrpav-day-toggle{grid-column:auto}.rrpav-time-block-form button{width:100%}}

.rrpav-timezone-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.rrpav-timezone-form label{min-width:min(100%,360px);flex:1}.rrpav-timezone-form select{width:100%}

/* 0.2.2: make timed unavailability and sample test data unmistakable. */
.rrpav-sample-summary{margin:12px 0;padding:12px 14px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px;background:var(--bx-color-bg-muted,#fafafa)}
.rrpav-sample-summary ul{margin:8px 0 0 20px}
.rrpav-calendar-days button.is-partial:not(.is-selected){position:relative;box-shadow:inset 0 -6px 0 #e7ad2d;outline:1px solid rgba(231,173,45,.5)}
.rrpav-calendar-days button.is-partial:not(.is-selected)::after{content:"";position:absolute;right:4px;top:4px;width:6px;height:6px;border-radius:50%;background:#e7ad2d}


/* 0.2.4: optional detailed daily availability for studios and venues. */
.rrpav-public-detail-toggle{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px;background:var(--bx-color-bg-elevated,#fff);cursor:pointer}
.rrpav-public-detail-toggle input{margin-top:4px}
.rrpav-public-detail-toggle span{display:grid;gap:4px}
.rrpav-public-detail-toggle small{color:var(--bx-color-fg-muted,#6a6a6a)}
.rrpav-calendar-days button.is-inspected:not(.is-selected){outline:2px solid var(--bx-color-accent,#ef5455);outline-offset:1px}
.rrpav-day-details{margin-top:18px;padding:16px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:12px;background:var(--bx-color-bg-elevated,#fff)}
.rrpav-day-details__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.rrpav-day-details__heading h3{margin:0 0 4px;font-size:18px}
.rrpav-day-details__heading p{margin:0;color:var(--bx-color-fg-muted,#6a6a6a);font-size:13px}
.rrpav-day-details__close{flex:0 0 auto;width:34px;height:34px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:50%;background:var(--bx-color-bg-muted,#f7f7f9);font-size:24px;line-height:1;cursor:pointer}
.rrpav-day-details__message{margin:14px 0 0;padding:12px 14px;border-radius:9px;background:var(--bx-color-bg-muted,#f7f7f9)}
.rrpav-day-details__message.is-unavailable{color:#7d3f00;background:#fff4db}
.rrpav-day-timeline{display:flex;overflow:hidden;height:28px;margin-top:16px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:8px;background:var(--bx-color-bg-muted,#f7f7f9)}
.rrpav-day-timeline>span{display:block;min-width:1px}
.rrpav-day-timeline>span.is-available{background:#dff3e5}
.rrpav-day-timeline>span.is-unavailable{background:#f0c56a}
.rrpav-day-timeline-scale{display:flex;justify-content:space-between;margin-top:5px;color:var(--bx-color-fg-muted,#6a6a6a);font-size:12px}
.rrpav-day-periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.rrpav-day-periods>div{padding:12px 13px;border:1px solid var(--bx-color-border,#d8dbe2);border-radius:10px;background:var(--bx-color-bg-muted,#fafafa)}
.rrpav-day-periods h4{margin:0 0 8px;font-size:15px}
.rrpav-day-periods p{margin:0;color:var(--bx-color-fg-muted,#6a6a6a);font-size:13px}
.rrpav-day-periods ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}
.rrpav-day-periods li{display:flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}
@media(max-width:680px){.rrpav-day-periods{grid-template-columns:1fr}.rrpav-day-details{padding:14px}.rrpav-day-details__heading h3{font-size:17px}}
