.pcw-home .pcw-quote-actions{display:flex;gap:10px;margin-top:1.2rem}
.pcw-home .pcw-quote-actions .pcw-submit{flex:1;width:auto;min-height:48px;margin-top:0;padding:12px 10px;font-size:.85rem;gap:6px}
#pcw-booking[hidden],#pcw-booking [hidden]{display:none!important}
.pcw-booking-open #pcw-quote-step-one,.pcw-booking-open #pcw-quote-form{display:none!important}
#pcw-booking{color:#234d39;min-width:0}
.pcw-booking-format{border:0;padding:0;margin:18px 0;display:flex;flex-wrap:wrap;gap:12px}
.pcw-booking-format legend{float:none;width:auto;font-size:.88rem;font-weight:700;margin-bottom:10px}
.pcw-booking-format label{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #c9d5c9;border-radius:9px;background:#fffdf8;cursor:pointer;font-size:.85rem}
.pcw-booking-format input{accent-color:#24563e}
#pcw-booking-help{font-size:.82rem;line-height:1.6}
.pcw-schedule-scroll{overflow:auto;max-height:460px;border:1px solid #d6dfd0;border-radius:16px;background:#fffdf8;box-shadow:0 8px 24px rgba(35,77,57,.06);scrollbar-width:thin;scrollbar-color:#5c8068 #e9eee4;scrollbar-gutter:stable}
.pcw-schedule{width:100%;min-width:510px;border-collapse:separate;border-spacing:0;font-size:.72rem;text-align:center}
.pcw-schedule caption{caption-side:top;padding:16px;text-align:left;color:#24563e;font-weight:700;letter-spacing:.04em;background:#eef3e9}
.pcw-schedule th{padding:9px 4px;background:#eef3e9;font-weight:600}
.pcw-schedule thead th{position:sticky;top:0;z-index:1}
.pcw-schedule th:first-child{position:sticky;left:0;z-index:1}
.pcw-schedule td{padding:0 5px;border-right:1px solid #edf0e8;background:linear-gradient(#e9eee4 1px,transparent 1px)}
.pcw-schedule button{position:relative;display:block;width:100%;height:36px;padding:0 2px;border:0;background:transparent;border-radius:0;color:#647c65;cursor:crosshair;font:600 .68rem var(--sans);touch-action:none;user-select:none;-webkit-user-select:none}
.pcw-schedule button:hover{background:#e7efe2}
.pcw-schedule button.is-selected{background:#2e6048;color:#fff;box-shadow:inset 1px 0 rgba(255,255,255,.12),inset -1px 0 rgba(255,255,255,.12)}
.pcw-schedule button.is-start{border-radius:9px 9px 0 0;padding-top:6px}
.pcw-schedule button.is-end{border-radius:0 0 9px 9px;padding-bottom:6px}
.pcw-schedule button.is-start:not(.is-end)::before,.pcw-schedule button.is-end::after{content:'';position:absolute;width:16px;height:3px;left:50%;transform:translateX(-50%);border-radius:4px;background:#bcd2b7}
.pcw-schedule button.is-start::before{top:5px}
.pcw-schedule button.is-end::after{bottom:5px}
.pcw-schedule-scroll.is-dragging{cursor:grabbing}
.pcw-schedule-scroll::-webkit-scrollbar{width:9px;height:9px}
.pcw-schedule-scroll::-webkit-scrollbar-track{background:#e9eee4;border-radius:10px}
.pcw-schedule-scroll::-webkit-scrollbar-thumb{background:#5c8068;border:2px solid #e9eee4;border-radius:10px}
.pcw-schedule-scroll::-webkit-scrollbar-thumb:hover{background:#2e6048}
#pcw-booking button:focus-visible,.pcw-schedule-scroll:focus-visible{outline:3px solid #ba8b55;outline-offset:2px}
#pcw-booking-selection{font-size:.85rem;font-weight:600;margin:14px 0;padding:12px 14px;border-left:3px solid #739579;background:#eef3e9;border-radius:0 9px 9px 0}
.pcw-booking-details{margin-top:18px}
#pcw-booking-status{font-size:.85rem;margin:12px 0}
#pcw-booking-back{margin-top:14px;width:100%}
#pcw-booking-success{padding:24px 0}
#pcw-booking-success h3{font-family:Newsreader,Georgia,serif;font-size:1.8rem}
#pcw-booking button:disabled{opacity:.65;cursor:wait}
@media(max-width:380px){.pcw-home .pcw-quote-actions{gap:6px}.pcw-home .pcw-quote-actions .pcw-submit{font-size:.75rem;padding:10px 7px}}
