/* Observed Dink City / Playbypoint: quiet canvas, green selection, linear steps. */
body[data-page="app"]{background:#f7f8f7}body[data-route="book"] main{max-width:900px;padding:32px 24px 80px}body[data-route="book"] .page-intro{display:block;margin-bottom:24px}body[data-route="book"] .page-intro h1{font-size:28px;margin-top:16px}.booking-back{font-size:13px;color:#596b68}body[data-route="book"] .steps{margin-top:20px;justify-content:flex-start}body[data-route="book"] .workspace{display:block;border:1px solid #dce3df;background:white;border-radius:12px;overflow:hidden}body[data-route="book"] .panel{border-radius:0;padding:28px;background:white}body[data-route="book"] .calendar-heading h2{font-size:20px;display:flex;align-items:center;gap:8px}.step-dot{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#34776b;color:white;font-size:13px;font-weight:700;margin-right:6px}body[data-route="book"] .date-strip{gap:6px}body[data-route="book"] .date{border-radius:5px;min-width:0;min-height:78px;background:white;border:1px solid #dce3df}body[data-route="book"] .date.selected{background:#34776b;color:white;outline:2px solid #34776b;outline-offset:2px}body[data-route="book"] .date.selected small{color:white}body[data-route="book"] .control-row{align-items:flex-start;gap:18px}body[data-route="book"] .slots{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}body[data-route="book"] .slot{border-radius:5px;min-height:64px;border:1px solid #8cb4a5;background:#f4faf6;color:#245f50;box-shadow:none}body[data-route="book"] .slot.chosen{background:#34776b;color:white;border-color:#34776b}body[data-route="book"] .slot.busy,body[data-route="book"] .slot.past{background:#f0f1f0;color:#737c76;border-color:#e0e3e0}body[data-route="book"] .slot.short{background:white;border:1px dashed #b6bcb6;color:#747c76}body[data-route="book"] .period{padding-top:12px}body[data-route="book"] .period-label{padding-bottom:8px}body[data-route="book"] .side{position:static;border-top:1px solid #dce3df;padding:0 28px 24px;display:block}.side .venue-card{background:#f8faf8;border:0;border-radius:0;margin:0 -28px;padding:20px 28px}.summary{background:white!important;border:0!important;box-shadow:none!important;padding:24px 0!important;border-radius:0!important;position:static!important}.summary h2{font-size:20px}.summary .primary{background:#34776b;border-radius:5px;min-height:48px}.summary .row{padding:10px 0}.summary .total{border-top:1px solid #dce3df}.trust-note{padding:0!important}.venue-info{margin-top:24px}.checkout-dialog{background:white}.checkout-recap{border-radius:6px;background:#f7faf8;border:1px solid #dce3df}.checkout-breakdown{border-top:1px solid #dce3df;padding-top:12px}.checkout-breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;font-size:13px}.checkout-price{border-top:1px solid #dce3df;margin-top:8px;padding-top:16px}.payment-methods label{border-radius:5px}.checkout-action .primary{background:#34776b;border-radius:5px;min-height:48px}.mobile-pay .primary{background:#34776b;border-radius:5px}.mobile-pay{background:white;border-top:1px solid #dce3df}
@media(max-width:650px){body[data-route="book"] main{padding:20px 12px 100px}body[data-route="book"] .page-intro h1{font-size:24px}body[data-route="book"] .panel{padding:18px 12px}body[data-route="book"] .calendar-heading h2{font-size:17px}body[data-route="book"] .calendar-heading strong{font-size:10px}body[data-route="book"] .date{min-height:70px}body[data-route="book"] .date small{font-size:10px}body[data-route="book"] .date-strip{gap:4px}body[data-route="book"] .slots{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-route="book"] .side{padding:0 16px 20px}.side .venue-card{margin:0 -16px;padding:16px}.checkout-breakdown>div{font-size:12px}}

.checkout-range{white-space:nowrap;margin:6px 0}.checkout-time>small{display:block;font-size:13px;font-weight:400;margin-top:12px;color:#5d6d65}.selected-ranges{border-top:1px solid #dce3df;border-bottom:1px solid #dce3df}.slot small{font-size:11px}.control-row>p{margin:0;font-size:13px;color:#5d6d65}
