.lab-booking-shell{max-width:880px;margin:0 auto;padding:44px clamp(20px,5vw,72px) 96px}.lab-booking-form{gap:24px;display:grid}.lab-booking-section,.lab-review{border:1px solid color-mix(in srgb, var(--store-ink) 12%, transparent);border-radius:var(--store-radius);background:var(--store-card);gap:18px;margin:0;padding:clamp(20px,4vw,32px);display:grid}.lab-booking-section legend,.lab-consents legend,.lab-slot-list legend{color:var(--store-ink);padding:0 8px;font-weight:600}.lab-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.lab-choice-card{border:1px solid color-mix(in srgb, var(--store-ink) 14%, transparent);border-radius:var(--store-radius-sm);cursor:pointer;gap:12px;padding:18px;display:flex}.lab-choice-card:has(input:checked){border-color:var(--store-ink);box-shadow:0 0 0 2px color-mix(in srgb, var(--store-ink) 12%, transparent)}.lab-choice-card span{gap:7px;display:grid}.lab-choice-card em{color:var(--store-ink);font-size:1.35rem;font-style:normal}.lab-choice-card small,.lab-booking-form p{color:var(--store-muted);line-height:1.75}.lab-booking-section>label,.lab-address-grid label{color:var(--store-ink);gap:8px;font-size:.88rem;font-weight:600;display:grid}.lab-booking-form input[type=text],.lab-booking-form input[type=tel],.lab-booking-form input[type=date],.lab-booking-form select{border:1px solid color-mix(in srgb, var(--store-ink) 18%, transparent);width:100%;min-height:46px;color:var(--store-ink);font:inherit;background:#fff;border-radius:10px;padding:10px 12px}.lab-address-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.lab-address-grid label:nth-child(n+5){grid-column:1/-1}.lab-slot-list,.lab-consents{border:1px solid color-mix(in srgb, var(--store-ink) 10%, transparent);border-radius:12px;gap:10px;margin:0;padding:16px;display:grid}.lab-slot-list label,.lab-consents label{align-items:flex-start;gap:10px;line-height:1.65;display:flex}.lab-consent-group{gap:6px;display:grid}.lab-consents label span{font-weight:600}.lab-consent-details{color:var(--store-muted);margin:0;padding-left:34px;font-size:.9rem;line-height:1.6}.lab-consent-details li{list-style:outside}.lab-review h2{margin:0;font-size:1.35rem}.lab-review dl{gap:10px;margin:0;display:grid}.lab-review dl div{border-bottom:1px solid color-mix(in srgb, var(--store-ink) 8%, transparent);grid-template-columns:minmax(100px,.35fr) 1fr;gap:12px;padding-bottom:10px;display:grid}.lab-review dt{color:var(--store-muted)}.lab-review dd{color:var(--store-ink);margin:0;font-weight:600}.lab-legal-links{flex-wrap:wrap;gap:12px 18px;display:flex}.lab-legal-links a{color:var(--store-ink);text-underline-offset:3px;text-decoration:underline}.lab-submit{width:100%;min-height:52px}.lab-booking-form [role=alert]{background:color-mix(in srgb, var(--store-danger) 10%, #fff);color:var(--store-danger);border-radius:10px;margin:0;padding:12px 14px}.lab-page-alert{border:1px solid color-mix(in srgb, var(--store-danger) 30%, transparent);border-radius:var(--store-radius-sm);background:color-mix(in srgb, var(--store-danger) 10%, #fff);color:var(--store-danger);align-items:flex-start;gap:10px;padding:14px;line-height:1.7;display:flex}.lab-page-alert span{gap:6px;display:grid}.lab-page-alert a{color:inherit;font-weight:600;text-decoration:underline}.lab-service-summary{gap:22px;display:grid}.lab-service-summary h2,.lab-service-detail h3,.lab-service-summary p,.lab-service-prices{margin:0}.lab-service-summary h2{color:var(--store-ink);margin-top:4px;font-size:clamp(1.35rem,4vw,1.75rem)}.lab-service-summary h2+p,.lab-service-detail p,.lab-service-note{color:var(--store-muted);line-height:1.75}.lab-service-prices{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.lab-service-prices div,.lab-service-detail{border:1px solid color-mix(in srgb, var(--store-ink) 12%, transparent);border-radius:var(--store-radius-sm);background:var(--store-sunken);padding:18px}.lab-service-prices dt{color:var(--store-muted);font-size:.88rem}.lab-service-prices dd{color:var(--store-ink);margin:8px 0 0;font-size:1.3rem;font-weight:700}.lab-service-detail{gap:8px;display:grid}.lab-service-detail h3{color:var(--store-ink);font-size:1rem}.lab-service-note{border-left:3px solid color-mix(in srgb, var(--store-ink) 32%, transparent);background:color-mix(in srgb, var(--store-ink) 4%, transparent);padding:14px 16px;font-size:.9rem}@media (max-width:640px){.lab-choice-grid,.lab-address-grid,.lab-service-prices{grid-template-columns:minmax(0,1fr)}.lab-address-grid label:nth-child(n+5){grid-column:auto}.lab-review dl div{grid-template-columns:minmax(0,1fr);gap:4px}}
