/* Customer prototype v0.37.2: one real plan, a compact drawer on every screen size. */
.customer-compact #booking-customer-navigation .customer-plan-slot{position:absolute;display:block;width:0;height:0;grid-column:auto;grid-row:auto}
.customer-compact #booking-customer-navigation{grid-template-columns:minmax(0,1fr) auto}
.customer-compact #booking-customer-navigation .customer-account-slot{grid-column:2}
@media(min-width:980px){.customer-compact #booking-customer-navigation{grid-template-columns:auto minmax(0,1fr) auto}.customer-compact #booking-customer-navigation .customer-account-slot{grid-column:3}}
.customer-compact #customer-plan-launcher{position:fixed;inset:auto calc(18px + env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) auto;display:grid;place-items:center;width:50px;height:50px;padding:12px;border:1px solid #c4d3ec;border-radius:50%;background:white;color:#1557d7;z-index:45;box-shadow:0 4px 18px #10233f24;cursor:pointer}
#customer-plan-launcher svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#customer-plan-launcher [data-plan-count]{position:absolute;right:-3px;top:-4px;min-width:22px;height:22px;display:grid;place-items:center;padding:0 5px;border:2px solid white;border-radius:11px;background:#1557d7;color:white;font-size:11px;font-weight:700}
.customer-compact #customer-plan-overview{inset:0 0 0 auto;margin:0;width:min(80vw,860px);max-width:none;height:100vh;height:100dvh;max-height:none;border:0;border-radius:14px 0 0 14px;box-shadow:-8px 0 32px #10233f24;color:#000}
#customer-plan-overview[open]{animation:customer-plan-enter 220ms ease-out;display:flex;flex-direction:column}
#customer-plan-overview>header{padding:12px 16px;background:#f6f8fc}
#customer-plan-overview>footer{padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff}
#customer-plan-content{padding:0 16px;container-type:inline-size;min-height:0;overflow:auto;overscroll-behavior:contain;flex:1 1 auto}
#customer-plan-content [data-plan-status]:empty{display:none}
#customer-plan-overview #assignment-dock{position:static!important;margin:0;padding:0;border:0;box-shadow:none;max-height:none}
#customer-plan-overview #assignment-dock .dock-shell,#customer-plan-overview #assignment-dock .dock-inner{display:block;padding:0!important;max-height:none}
#customer-plan-overview #assignment-body{display:block;max-height:none!important;overflow:visible!important}
#customer-plan-overview :is(#assignment-toggle,#plan-added,#selected-offer,#empty-plan,#result-action-selection){display:none!important}
#customer-plan-overview #assignment-actions{padding:0!important;margin:0;display:block}
#customer-plan-overview #saved-cart,#customer-plan-overview .dock-body{padding:0}
#customer-plan-overview #assignment-next{margin:0;min-height:44px}
#customer-plan-overview .customer-plan-columns,.customer-plan-table-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) 44px;gap:12px;align-items:start}
.customer-plan-columns{padding:14px 0 9px;border-bottom:1px solid #d9e0eb;color:#4a5360;font-size:11px;font-weight:650}
.customer-plan-columns span:last-child{grid-column:3}
.customer-plan-columns .customer-plan-sort{display:inline-flex;align-items:center;gap:5px;justify-self:start;min-height:44px;margin:-14px 0 -9px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer}
.customer-plan-sort span:last-child{grid-column:auto}
.customer-plan-sort:focus-visible{outline:2px solid #1557d7;outline-offset:2px}
.customer-plan-table{margin:0;padding:0;list-style:none}
.customer-plan-table-row{padding:14px 0;border-bottom:1px solid #d9e0eb;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.customer-plan-table-row strong{font-size:14px;line-height:1.4}
.customer-plan-table-row :is(p,small){margin:3px 0;font-size:12px;line-height:1.5;color:#000}
.customer-plan-offer,.customer-plan-price,.customer-plan-time{min-width:0}
.customer-plan-offer strong{display:inline}
.customer-plan-offer strong::after{content:' · ';font-weight:400}
.customer-plan-offer p{display:inline}
.customer-plan-price strong{display:block;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}
.customer-plan-amount,.customer-plan-unit{display:inline-block;white-space:nowrap}
.customer-plan-unit{font-size:11px;font-weight:600}
.customer-plan-price{text-align:right}
.customer-compact.flow-discovery:not(.is-search-entry) .customer-search-grid{grid-template-columns:minmax(0,1fr)}
.customer-plan-price small{display:block;font-size:11px}
.customer-plan-table-row .customer-plan-remove{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #d9e0eb;border-radius:6px;background:#fff;color:#000;cursor:pointer}
.customer-plan-remove svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.customer-plan-table-row>details{grid-column:1/-1;min-width:0}
.customer-plan-table-row summary{display:flex;align-items:center;gap:6px;min-height:44px;font-size:12px;color:#1557d7;cursor:pointer;list-style:none}
.customer-plan-table-row summary::before{content:'›';font-size:18px}
.customer-plan-table-row details[open] summary::before{transform:rotate(90deg)}
.customer-plan-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0 0 10px;padding:10px 0;border-top:1px solid #edf0f5}
.customer-plan-addresses>div{min-width:0}
.customer-plan-addresses dt{font-size:11px;font-weight:600;color:#4a5360;margin:0 0 2px}
.customer-plan-addresses dd{margin:0;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.customer-plan-addresses dd>span{display:block}
.customer-plan-table-row [disabled]{opacity:.6;cursor:wait}
.customer-compact #customer-plan-content .customer-plan-note,.customer-compact #customer-plan-content [data-plan-status]{font-size:12px;line-height:1.45;margin:10px 0}
.customer-compact #customer-plan-content .customer-plan-table-row{padding:12px 0 4px;gap:6px 12px}
.customer-compact #customer-plan-content .customer-plan-table-row :is(p,small){font-size:12px;line-height:1.45;margin:0}
.customer-compact #customer-plan-content .customer-plan-table-row strong{font-size:14px;line-height:1.4}
.customer-compact #customer-plan-content .customer-plan-table-row summary{padding:0;font-size:12px;line-height:1.4;min-height:44px}
.customer-plan-time{display:flex;flex-direction:column;gap:2px}
.customer-plan-date,.customer-plan-arrival{white-space:nowrap;font-size:12px}
@container (max-width:440px){
 #customer-plan-overview .customer-plan-columns{grid-template-columns:minmax(0,1fr) minmax(72px,.75fr) 44px;gap:8px}
 .customer-plan-columns>span:first-child{display:none}.customer-plan-columns .customer-plan-sort{grid-column:1}.customer-plan-columns>span:last-child{grid-column:2}
 .customer-plan-table-row{grid-template-columns:minmax(0,1fr) minmax(72px,.75fr) 44px;gap:6px 8px;padding:12px 0}
 .customer-plan-offer{grid-column:1;grid-row:1}.customer-plan-time{grid-column:1/-1;grid-row:2;flex-direction:row;flex-wrap:wrap;gap:2px 8px}.customer-plan-price{grid-column:2;grid-row:1}.customer-plan-remove{grid-column:3;grid-row:1}
 .customer-compact #customer-plan-content .customer-plan-table-row{column-gap:8px}
 .customer-compact #customer-plan-content .customer-plan-table-row strong{font-size:13px}.customer-compact #customer-plan-content .customer-plan-table-row :is(p,small){font-size:11px}
 .customer-plan-table-row>details{grid-row:3}
 .customer-plan-addresses{grid-template-columns:minmax(0,1fr);gap:8px}
}
@media(max-width:440px){#customer-plan-content{padding:0 12px}#customer-plan-overview>header{padding:10px 12px}#customer-plan-overview>footer{padding:8px 12px calc(8px + env(safe-area-inset-bottom))}}
@keyframes customer-plan-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){#customer-plan-overview[open]{animation:none}}
