/* RC-9 customer booking and private-management hierarchy. Theme colors remain inherited. */
.tiakari-booking-form{display:block;max-width:76rem}
.tiakari-booking-upper{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1rem,3vw,2rem);align-items:start}
.tiakari-booking-upper>form,.tiakari-booking-upper>section{margin:0}
.tiakari-calendar-prompt,.tiakari-availability-calendar,.tiakari-booking-availability,.tiakari-link-recovery,.tiakari-appointment-summary,.tiakari-reschedule{padding:clamp(.9rem,2vw,1.4rem);border:1px solid currentColor;border-radius:.5rem}
.tiakari-calendar-heading{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:.5rem}.tiakari-calendar-heading h3{margin:0;text-align:center}.tiakari-calendar-nav{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid currentColor;border-radius:.35rem;text-decoration:none}
.tiakari-public-calendar{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:.2rem;text-align:center}.tiakari-public-calendar th{font-size:.8rem}.tiakari-public-calendar td{height:46px;padding:0}.tiakari-public-calendar td>a,.tiakari-public-calendar td>span{display:grid;place-items:center;min-height:44px;border:2px solid transparent;border-radius:.35rem}.tiakari-public-calendar td>a{text-decoration:none}.tiakari-public-calendar .is-available a::after{content:"•";height:.5rem;line-height:.25rem}.tiakari-public-calendar .is-unavailable>span{opacity:.45}.tiakari-public-calendar .is-selected a{border-color:currentColor;font-weight:800}.tiakari-calendar-key{font-size:.85rem;margin-bottom:0}
.tiakari-booking-availability{margin-top:1.5rem}.tiakari-booking-details{margin-bottom:0}.tiakari-customer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.tiakari-customer-fields label{display:grid;gap:.3rem}.tiakari-customer-fields label:last-child{grid-column:1/-1}
.tiakari-link-recovery{margin-top:1.5rem}.tiakari-link-recovery form{grid-template-columns:minmax(12rem,1fr) auto;align-items:end}.tiakari-link-recovery form label{display:grid;gap:.3rem}.tiakari-link-recovery form button{white-space:nowrap}
.tiakari-booking-manage{max-width:64rem}.tiakari-manage-heading{text-align:center}.tiakari-appointment-summary{margin-block:1rem}.tiakari-appointment-summary h3{font-size:1.4rem}.tiakari-appointment-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tiakari-appointment-summary dl div{min-width:0}.tiakari-appointment-summary dt{font-weight:700}.tiakari-appointment-summary dd{margin:0}.tiakari-manage-status{display:inline-block;padding:.25rem .6rem;border:1px solid currentColor;border-radius:999px;font-weight:700}.tiakari-manage-cancel{display:flex;justify-content:flex-end}.tiakari-reschedule-provider{grid-template-columns:minmax(12rem,1fr) auto;align-items:end}.tiakari-reschedule-provider label{display:grid;gap:.3rem}.tiakari-reschedule-times{margin-top:1rem}
@media(max-width:760px){.tiakari-booking-form,.tiakari-booking-upper,.tiakari-booking-upper>*,.tiakari-booking-availability,.tiakari-link-recovery{width:100%;max-width:100%;min-width:0}.tiakari-booking-upper{grid-template-columns:minmax(0,1fr)}.tiakari-booking-upper .tiakari-booking-choices{order:0}.tiakari-booking-upper .tiakari-availability-calendar,.tiakari-booking-upper .tiakari-calendar-prompt{order:1;overflow-x:auto}.tiakari-public-calendar{min-width:0!important}.tiakari-customer-fields,.tiakari-appointment-summary dl{grid-template-columns:minmax(0,1fr)}.tiakari-customer-fields label:last-child{grid-column:auto}.tiakari-link-recovery form,.tiakari-reschedule-provider{grid-template-columns:minmax(0,1fr)}.tiakari-manage-cancel{justify-content:stretch}.tiakari-manage-cancel button{width:100%}}
@media(max-width:390px){.tiakari-calendar-prompt,.tiakari-availability-calendar,.tiakari-booking-availability,.tiakari-link-recovery,.tiakari-appointment-summary,.tiakari-reschedule{padding:.7rem}.tiakari-public-calendar{border-spacing:.1rem}.tiakari-public-calendar td>a,.tiakari-public-calendar td>span{min-height:42px}}
