/* Reservation lookup only; existing site styles remain untouched. */
.lmp-page .lmp-reservations > .lmp-section-title{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.lmp-page .lmp-reservations > .lmp-section-title > span{flex:0 0 100%}
.lmp-page .lmp-reservations > .lmp-section-title > div{flex:1 1 260px;min-width:0}
.lmp-page .lmp-reservations .lmp-clear-link{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:100%;height:36px;min-height:0;padding:0 14px;margin:0;align-items:center;justify-content:center;border:1px solid #d9dcd7;border-radius:8px;background:#fff;color:#555e52;font-size:13px;font-weight:500;white-space:nowrap}
.lmp-page .lmp-reservation-list{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.lmp-page article.lmp-reservation-card{display:block;cursor:default;transform:none;min-width:0}
.lmp-page article.lmp-reservation-card:hover{transform:none}
.lmp-page .lmp-reservation-card > h3{font-size:20px;font-weight:600}
.lmp-booking-products{display:grid;gap:20px;margin:24px 0;text-align:left}
.lmp-booking-product{min-width:0;padding-top:20px;border-top:1px solid #e5e7e3}
/* The customer-info row already supplies the divider in the summary card. */
.lmp-page .lmp-summary > .lmp-booking-products{margin:0;padding:24px 28px 28px;box-sizing:border-box}
.lmp-page .lmp-summary > .lmp-booking-products > .lmp-booking-product:first-child{border-top:0;padding-top:0}
.lmp-booking-product h4{margin:0 0 7px!important;font-size:17px!important;line-height:1.5;font-weight:600!important;color:#30372f}
.lmp-booking-product .lmp-product-meta,.lmp-booking-product .lmp-product-people{margin:4px 0!important;font-size:14px!important;font-weight:400!important;line-height:1.65;color:#60675e;overflow-wrap:anywhere}
.lmp-booking-product .lmp-session-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin:16px 0 8px!important;font-size:14px!important;font-weight:600!important;color:#424b40}
.lmp-session-heading span{font-size:13px;font-weight:400;color:#667060}
.lmp-booking-products .lmp-session-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;margin:12px 0 0}
.lmp-booking-products .lmp-session{display:flex;align-items:center;gap:12px;min-width:0;padding:13px 14px;border:1px solid #e0e4dc;border-radius:10px;background:#fff;color:#303a2e;font-size:14px;line-height:1.5;font-weight:400}
.lmp-session-no{flex:0 0 32px;font-weight:600}
.lmp-session-when{flex:1;min-width:0}
.lmp-session-when > span,.lmp-session-when small{display:block}
.lmp-session-when small{margin-top:3px;font-size:12px;color:#687263;font-weight:400}
.lmp-session-state{flex:0 0 auto;font-size:12px;font-weight:500;white-space:nowrap}
.lmp-booking-products .lmp-session.is-completed{background:#f1f2f0;border-color:#e4e6e1;color:#687164}
.lmp-session.is-completed .lmp-session-when small{color:#72796e}
.lmp-session.is-completed .lmp-session-state:before{content:'✓ ';}
.lmp-booking-products .lmp-session.is-inactive{background:#fafaf9;color:#72786e;border-style:dashed}
.lmp-season-scope{padding:16px 18px;margin:20px 0;background:#f5f6f2;border:1px solid #e1e5d9;border-radius:10px;color:#424a3d;font-size:14px;line-height:1.7}
.lmp-season-scope strong{font-weight:600}.lmp-season-scope p{font-size:14px!important;font-weight:400!important;margin:5px 0!important}
@media(max-width:640px){
.lmp-page .lmp-summary > .lmp-booking-products{padding:20px 16px 24px}
.lmp-page .lmp-reservations > .lmp-section-title{gap:10px}
.lmp-page .lmp-reservations > .lmp-section-title > div{flex-basis:100%}
.lmp-page .lmp-reservations .lmp-clear-link{margin-left:auto}
.lmp-booking-products .lmp-session-list{grid-template-columns:minmax(0,1fr)}
.lmp-booking-products .lmp-session{padding:11px 12px;gap:8px}
.lmp-page article.lmp-reservation-card{padding:20px 16px}
.lmp-booking-products{margin:18px 0;gap:16px}
}

/* Consent status is the action: no separate CTA below the reservation. */
.lmp-page .lmp-reservation-card dd.lmp-consent-cell{padding:0;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.lmp-page .lmp-consent-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;box-sizing:border-box;min-height:72px;padding:14px 16px;border-radius:12px;background:#69764e;color:#fff;text-decoration:none;box-shadow:none}
.lmp-page .lmp-consent-button .lmp-consent-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.lmp-page .lmp-consent-button small{display:block;font-size:12px;line-height:1.4;font-weight:400;color:inherit}
.lmp-page .lmp-consent-button strong{display:block;font-size:16px;line-height:1.5;font-weight:600;color:inherit}
.lmp-page .lmp-consent-button .lmp-consent-arrow{display:block;flex:0 0 auto;font-size:24px;line-height:1;font-weight:400;color:inherit}
.lmp-page .lmp-consent-button.is-signed{background:#f0f2ed;color:#46533f;border:1px solid #dce1d6}
.lmp-page .lmp-consent-button:hover{filter:brightness(.95)}
.lmp-page .lmp-consent-button:focus-visible,.lmp-page .lmp-clear-link:focus-visible{outline:2px solid #69764e;outline-offset:4px}
