/* Purchased-package scheduling summary and light appointment-scheduling shell. */
.bom-scheduling-package-summary{
    margin:18px 0 22px;
    padding:24px;
    border:1.5px solid #8c63e6;
    border-radius:20px;
    background:linear-gradient(135deg,#fff 0%,#fbf9ff 100%);
    box-shadow:0 12px 32px rgba(76,45,135,.07);
    color:#17142d;
}
.bom-scheduling-package-summary__badge{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:5px 12px;
    border:1px solid #d6c7f6;
    border-radius:999px;
    color:#6842c2;
    background:#fff;
    font-size:12px;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
}
.bom-scheduling-package-summary__intro{display:flex;justify-content:space-between;gap:20px;margin-top:14px;padding-bottom:18px;border-bottom:1px solid #e8e0f6;}
.bom-scheduling-package-summary__intro h2{margin:0 0 6px!important;color:#17142d!important;font-size:30px!important;line-height:1.15!important;font-weight:700!important;}
.bom-scheduling-package-summary__intro p{max-width:760px;margin:0!important;color:#5f6575!important;font-size:15px!important;line-height:1.5!important;}
.bom-scheduling-package-summary__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:18px;}
.bom-scheduling-package-summary__field{min-width:0;padding:10px 18px;border-right:1px solid #e8e0f6;}
.bom-scheduling-package-summary__field:nth-child(4n+1){padding-left:0;}
.bom-scheduling-package-summary__field:nth-child(4n){border-right:0;}
.bom-scheduling-package-summary__field span{display:block;margin-bottom:4px;color:#73788a;font-size:12px;font-weight:600;}
.bom-scheduling-package-summary__field strong{display:block;color:#241a45;font-size:15px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;}
.bom-scheduling-package-summary__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;padding:14px 16px;border:1px solid #e5dbf7;border-radius:14px;background:#fcfbff;}
.bom-scheduling-package-summary__steps>div{display:flex;align-items:center;gap:10px;min-width:0;}
.bom-scheduling-package-summary__steps b{display:inline-flex;flex:0 0 30px;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:#7146d3;color:#fff;font-size:14px;}
.bom-scheduling-package-summary__steps span{display:flex;min-width:0;flex-direction:column;gap:2px;}
.bom-scheduling-package-summary__steps strong{color:#6540bd;font-size:13px;line-height:1.25;}
.bom-scheduling-package-summary__steps small{color:#777b89;font-size:11px;line-height:1.25;}

/* Keep Booking View data/functionality intact while making the scheduling surface match the package-builder family. */
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking){
    padding:22px!important;
    border-radius:22px!important;
    background:#fff!important;
    color:#17142d!important;
    box-shadow:0 10px 34px rgba(47,34,84,.06)!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-header h2{
    color:#17142d!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-intro{
    color:#5f6575!important;
}
.bom-scheduling-manual-heading{margin:0 0 14px;padding:0;}
.bom-scheduling-manual-heading h3{margin:0 0 4px!important;color:#17142d!important;font-size:24px!important;line-height:1.2!important;}
.bom-scheduling-manual-heading p{margin:0!important;color:#6d7280!important;font-size:14px!important;}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-card{
    border-color:#ded5f1!important;
    background:#fff!important;
    box-shadow:0 8px 20px rgba(46,32,78,.05)!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-card.is-open{
    border-color:#8c63e6!important;
    box-shadow:0 10px 26px rgba(92,59,164,.09)!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-summary,
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-header-main,
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-panel{
    background:#fff!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-appointment-category-title{
    color:#241a45!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-visit-basket{
    border-color:#ded5f1!important;
    border-radius:18px!important;
    background:#fff!important;
    color:#241a45!important;
    box-shadow:0 12px 30px rgba(46,32,78,.08)!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-visit-basket-header h3{
    color:#6540bd!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-visit-basket-summary>div{
    border-color:#e5def1!important;
    background:#fcfbff!important;
}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) .bom-web-page-config-cart-button{
    border-radius:10px!important;
}

@media (max-width:980px){
    .bom-scheduling-package-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .bom-scheduling-package-summary__field:nth-child(n){padding:10px 14px;border-right:0;border-bottom:1px solid #eee8f7;}
    .bom-scheduling-package-summary__field:nth-last-child(-n+2){border-bottom:0;}
    .bom-scheduling-package-summary__steps{grid-template-columns:1fr;}
}
@media (max-width:640px){
    .bom-scheduling-package-summary{padding:18px;border-radius:16px;}
    .bom-scheduling-package-summary__intro h2{font-size:24px!important;}
    .bom-scheduling-package-summary__grid{grid-template-columns:1fr;}
    .bom-scheduling-package-summary__field:nth-child(n){padding:10px 0;border-bottom:1px solid #eee8f7;}
    .bom-scheduling-package-summary__field:last-child{border-bottom:0;}
    .bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking){padding:14px!important;}
}

/* Programme scheduling configuration shell — deliberately namespaced so the Series Planner is untouched. */
.bom-package-schedule-dialog{
    width:min(1180px,calc(100vw - 42px))!important;
    max-width:1180px!important;
    max-height:calc(100vh - 36px)!important;
    border-radius:22px!important;
    background:#fff!important;
    overflow:auto!important;
}
.bom-package-schedule-close{position:sticky!important;top:14px!important;float:right!important;z-index:4!important;margin:14px 14px -52px 0!important;}
.bom-package-schedule-body{padding:28px!important;color:#18172a!important;}
.bom-package-schedule-page-title{margin:0 0 18px!important;color:#17142d!important;font-size:34px!important;line-height:1.1!important;font-weight:600!important;}
.bom-package-schedule-programme-card,.bom-package-schedule-section{padding:24px 26px;margin-bottom:16px;background:linear-gradient(135deg,#fff 0%,#fdfbff 100%);}
.bom-package-schedule-kicker{display:block;margin-bottom:7px;color:#6540bd;font-size:12px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;}
.bom-package-schedule-programme-card h4{margin:0 0 7px!important;color:#143421!important;font-size:32px!important;line-height:1.12!important;font-weight:500!important;}
.bom-package-schedule-programme-card p{margin:0 0 10px!important;color:#5c6272!important;font-size:15px!important;line-height:1.45!important;}
.bom-package-schedule-programme-card>strong{display:block;color:#6842c2;font-size:14px;font-weight:700;}
.bom-package-schedule-section{position:relative;display:grid;grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);gap:24px;align-items:center;padding:20px 24px 20px 68px;margin-bottom:14px;}
.bom-package-schedule-section--pattern{align-items:start;}
.bom-package-schedule-step{position:absolute;left:18px;top:17px;display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:#7047d1;color:#fff;font-size:17px;font-weight:800;box-shadow:0 6px 14px rgba(112,71,209,.22);}
.bom-package-schedule-section-copy h4{margin:0 0 5px!important;color:#17142d!important;font-size:19px!important;line-height:1.25!important;}
.bom-package-schedule-section-copy p{margin:0!important;color:#667087!important;font-size:13px!important;line-height:1.45!important;}
.bom-package-schedule-choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.bom-package-schedule-choice{position:relative;min-height:48px;padding:10px 40px 10px 16px;border:1px solid #718276;border-radius:10px;background:#fff;color:#17251d;font-size:14px;font-weight:700;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
.bom-package-schedule-choice:hover{border-color:#7146d3;box-shadow:0 5px 14px rgba(97,64,178,.08);}
.bom-package-schedule-choice:focus-visible,.bom-package-week-choice:focus-visible,.bom-package-cycle-stepper button:focus-visible,.bom-package-progression-handle:focus-visible{outline:3px solid rgba(113,70,211,.24);outline-offset:2px;}
.bom-package-schedule-choice.is-selected{border-color:#7146d3;box-shadow:inset 0 0 0 1px #7146d3;}
.bom-package-schedule-tick{display:none;position:absolute;right:13px;top:50%;width:26px;height:26px;transform:translateY(-50%);align-items:center;justify-content:center;border-radius:50%;background:#7146d3;color:#fff;font-style:normal;font-size:16px;font-weight:800;}
.is-selected>.bom-package-schedule-tick{display:flex;}
.bom-package-schedule-pattern-panel{grid-column:1/-1;margin-top:4px;padding:16px;border:1px solid #dfd3f8;border-radius:14px;background:#fbf9ff;}
.bom-package-schedule-pattern-panel[hidden]{display:none!important;}
.bom-package-schedule-helper{margin:0 0 14px!important;color:#606a81!important;font-size:13px!important;}
.bom-package-cycle-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:18px;align-items:stretch;}
.bom-package-cycle-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.bom-package-cycle-card{padding:14px 12px;border:1.5px solid;border-radius:13px;background:#fff;text-align:center;}
.bom-package-cycle-card[hidden]{display:none!important;}
.bom-package-cycle-card>strong{display:block;margin-bottom:10px;font-size:15px;}
.bom-package-duration-60{--bom-duration:#2574d8;--bom-duration-soft:#eef6ff;border-color:#4f91e4!important;color:#1c5faa!important;}
.bom-package-duration-90{--bom-duration:#f36c21;--bom-duration-soft:#fff4ed;border-color:#f48a4e!important;color:#d9540e!important;}
.bom-package-duration-120{--bom-duration:#7543dd;--bom-duration-soft:#f4efff;border-color:#9169e8!important;color:#6334c8!important;}
.bom-package-cycle-stepper{display:grid;grid-template-columns:48px 1fr 48px;overflow:hidden;border:1px solid #d6d9e0;border-radius:9px;background:#fff;}
.bom-package-cycle-stepper button{min-height:42px;border:0;background:#fff;color:#142031;font-size:22px;cursor:pointer;}
.bom-package-cycle-stepper button:first-child{border-right:1px solid #e0e2e7;}
.bom-package-cycle-stepper button:last-child{border-left:1px solid #e0e2e7;}
.bom-package-cycle-stepper span{display:flex;align-items:center;justify-content:center;color:#17142d;font-size:22px;font-weight:500;}
.bom-package-cycle-preview-wrap{padding:14px 16px;border:1px solid #ded5f1;border-radius:13px;background:#fff;}
.bom-package-cycle-preview-wrap>strong{display:block;margin-bottom:12px;color:#272244;font-size:15px;}
.bom-package-cycle-preview{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.bom-package-cycle-chip{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:6px 13px;border:1px solid;border-radius:999px;background:var(--bom-duration-soft,#f7f7f8);color:var(--bom-duration,#333);font-size:12px;font-weight:750;}
.bom-package-cycle-chip--repeat{border-color:#cfd3db;background:#f8f9fb;color:#4c5669;}
.bom-package-cycle-preview-wrap p{margin:10px 0 0!important;color:#667087!important;font-size:12px!important;line-height:1.35!important;}
.bom-package-week-selector{display:grid;grid-template-columns:repeat(7,minmax(48px,1fr));overflow:hidden;border:1px solid #718276;border-radius:11px;background:#fff;}
.bom-package-week-choice{position:relative;min-height:46px;border:0;border-right:1px solid #718276;background:#fff;color:#14251b;font-size:14px;font-weight:700;cursor:pointer;}
.bom-package-week-choice:last-child{border-right:0;}
.bom-package-week-choice.is-selected{box-shadow:inset 0 0 0 2px #7146d3;color:#241a45;}
.bom-package-week-choice .bom-package-schedule-tick{right:8px;width:24px;height:24px;font-size:14px;}
.bom-package-week-note{grid-column:2;margin-top:-12px;font-size:12px;font-weight:700;line-height:1.4;}
.bom-package-week-note.is-recommended{color:#6540bd;}
.bom-package-week-note.is-warning{padding-left:22px;color:#6a43c3;position:relative;}
.bom-package-week-note.is-warning:before{content:'⚠';position:absolute;left:0;color:#f17825;}
.bom-package-week-note.is-above{color:#596274;}
.bom-package-red-light-controls{display:grid;gap:10px;}
.bom-package-red-light-cadence{padding:9px 14px;border:1px solid #718276;border-radius:9px;background:#fff;text-align:center;color:#17251d;font-size:13px;font-weight:700;}
.bom-package-red-light-note{margin:0!important;color:#667087!important;font-size:12px!important;}





.bom-package-progression-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:12px;text-align:center;}
.bom-package-progression-count strong{display:block;font-size:16px;color:var(--bom-duration);}
.bom-package-progression-count span{display:block;margin-top:2px;color:#6b7180;font-size:11px;}
.bom-package-progression-track{position:relative;height:30px;margin:8px 8px 2px;touch-action:none;}
.bom-package-progression-track:before{content:'';position:absolute;left:0;right:0;top:12px;height:6px;border-radius:999px;background:#e5e7ec;}
.bom-package-progression-track-fill{position:absolute;top:12px;height:6px;border-radius:999px;pointer-events:none;}
.bom-package-progression-track-fill--60{background:#2574d8;}
.bom-package-progression-track-fill--90{background:#f36c21;}
.bom-package-progression-track-fill--120{background:#7543dd;}
.bom-package-progression-handle{position:absolute;top:2px;width:25px;height:25px;margin-left:-12.5px;border:5px solid #fff;border-radius:50%;background:#7543dd;box-shadow:0 2px 8px rgba(55,38,94,.22);cursor:grab;touch-action:none;z-index:2;}
.bom-package-progression-handle:active{cursor:grabbing;}


/* Live protocol-phase model. Phase colours mirror the duration controls and preview chips. */
.bom-package-schedule-section--phases{align-items:center;}
.bom-package-phase-badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.bom-package-phase-badge{position:relative;min-height:104px;padding:13px 14px 12px;border:1.5px solid;border-radius:13px;background:var(--bom-duration-soft,#fff);font:inherit;text-align:center;cursor:pointer;transition:box-shadow .16s ease,transform .16s ease,background .16s ease;}
.bom-package-phase-badge:hover{transform:translateY(-1px);}
.bom-package-phase-badge:focus-visible{outline:3px solid rgba(112,71,209,.22);outline-offset:2px;}
.bom-package-phase-badge.is-selected{box-shadow:0 0 0 2px #7047d1 inset,0 4px 12px rgba(68,47,111,.08);}
.bom-package-phase-badge span{display:block;margin-bottom:5px;color:#667087;font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;}
.bom-package-phase-badge strong{display:block;color:var(--bom-duration,#241a45);font-size:18px;line-height:1.2;}
.bom-package-phase-badge small{display:block;margin-top:7px;color:#586174;font-size:11px;font-weight:700;line-height:1.35;}
.bom-package-phase-tick{position:absolute;top:8px;right:8px;display:flex;width:19px;height:19px;align-items:center;justify-content:center;border:1.5px solid #7047d1;border-radius:50%;background:#fff;color:transparent;font-size:11px;font-style:normal;font-weight:900;line-height:1;}
.bom-package-phase-badge.is-selected .bom-package-phase-tick{background:#7047d1;color:#fff;}
.bom-package-phase-selection-note{grid-column:2 / -1;margin:2px 0 0;color:#677084;font-size:12px;line-height:1.45;}
.bom-package-schedule-section--error{grid-template-columns:1fr;padding-left:24px;border-color:#d96a59;background:#fff8f6;}
.bom-package-cycle-preview-wrap p.is-valid{color:#4c6270!important;font-weight:700;}
.bom-package-cycle-preview-wrap p.is-warning{position:relative;padding-left:20px;color:#6a43c3!important;font-weight:700;}
.bom-package-cycle-preview-wrap p.is-warning:before{content:'⚠';position:absolute;left:0;color:#f17825;}
.bom-package-progression-handle[data-bom-progression-handle="1"]{z-index:3;}
.bom-package-progression-handle[data-bom-progression-handle="2"]{z-index:2;}

@media(max-width:900px){
    .bom-package-schedule-section{grid-template-columns:1fr;padding-left:64px;gap:14px;}
    .bom-package-cycle-layout{grid-template-columns:1fr;}
    .bom-package-phase-badges{grid-template-columns:repeat(3,minmax(0,1fr));}
    
    .bom-package-week-note{grid-column:1;}
}
@media(max-width:640px){
    .bom-package-schedule-dialog{width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important;}
    .bom-package-schedule-body{padding:18px 14px!important;}
    .bom-package-schedule-page-title{font-size:27px!important;}
    .bom-package-schedule-programme-card{padding:20px 18px;}
    .bom-package-schedule-programme-card h4{font-size:25px!important;}
    .bom-package-schedule-section{padding:62px 14px 18px;}
    .bom-package-schedule-step{left:14px;top:14px;}
    .bom-package-schedule-choice-row,.bom-package-cycle-counters,.bom-package-phase-badges{grid-template-columns:1fr;}
    .bom-package-week-selector{grid-template-columns:repeat(4,1fr);border:0;gap:7px;}
    .bom-package-week-choice{border:1px solid #718276!important;border-radius:8px;}
    
    
    .bom-package-progression-counts{gap:7px;}
}

/* Package route / manual selection divider — mirrors the established programme-purchase OR treatment. */
.bom-scheduling-route-divider{display:grid;grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);gap:14px;align-items:center;width:min(760px,calc(100% - 24px));margin:24px auto;color:#7047d1;}
.bom-scheduling-route-divider__line{display:block;height:1px;background:#7047d1;opacity:.72;}
.bom-scheduling-route-divider__label{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid #7047d1;border-radius:50%;background:#fff;color:#7047d1;font-size:12px;font-weight:800;letter-spacing:.04em;}

/* Protocol recommendation warnings are deliberately red; the selected purchase cadence remains a separate state. */
.bom-package-week-note.is-warning{color:#b42318;}
.bom-package-week-note.is-warning:before{color:#b42318;}
.bom-package-protocol-recommendation-error{margin:0!important;color:#b42318!important;font-weight:700;}
.bom-package-week-choice.is-protocol-recommended:not(.is-selected){box-shadow:inset 0 -3px 0 rgba(113,70,211,.38);}

/* When phase boundaries coincide, offset only their visual hit targets so both remain independently accessible. */
.bom-package-progression-handle.is-coincident-first{top:-5px;}
.bom-package-progression-handle.is-coincident-second{top:9px;}


/* 2026-08-29.009 — protocol phase readability + package-route top-spacing tidy. */
.bom-package-phase-item{min-width:0;text-align:center;}
.bom-package-phase-badge{display:flex;min-height:68px;width:100%;align-items:center;justify-content:center;gap:16px;padding:12px 42px 12px 16px;text-align:center;}
.bom-package-phase-badge span,
.bom-package-phase-badge strong{display:inline;margin:0;font-size:18px;line-height:1.2;font-weight:800;letter-spacing:0;text-transform:none;white-space:nowrap;}
.bom-package-phase-badge span{color:#667087;}
.bom-package-phase-badge strong{color:var(--bom-duration,#241a45);}
.bom-package-phase-metrics{display:block;min-height:18px;margin-top:7px;color:#586174;font-size:12px;font-weight:700;line-height:1.35;text-align:center;}

/* The package card is the route heading; remove stacked BOM top spacing instead of adding another title. */
.bom-web-page-config-page:has(.bom-scheduling-package-summary){margin-top:0;padding-top:0;}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking):has(> .bom-scheduling-package-summary){margin-top:0!important;padding-top:0!important;}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:0;}

@media(max-width:900px){
    .bom-package-phase-badge{gap:10px;padding-left:12px;padding-right:36px;}
    .bom-package-phase-badge span,.bom-package-phase-badge strong{font-size:16px;}
}
@media(max-width:640px){
    .bom-package-phase-badge{min-height:62px;}
}

/* 2026-08-29.012 — persistent package schedule-plan handoff. */
.bom-scheduling-package-current{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:14px;align-items:center;margin-top:18px;padding:13px 16px;border:1px solid #e5dbf7;border-radius:14px;background:#fcfbff;}
.bom-scheduling-package-current>div:first-child{display:flex;flex-direction:column;gap:3px;}
.bom-scheduling-package-current span{color:#6b5d87;font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;}
.bom-scheduling-package-current strong{color:#241a45;font-size:14px;}
.bom-scheduling-package-current [data-bom-current-plan-details]{color:#667087;font-size:12px;line-height:1.4;}
.bom-package-schedule-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid #e8e0f6;}
.bom-package-schedule-save-status{flex:1;min-height:20px;color:#596274;font-size:12px;font-weight:700;line-height:1.4;}
.bom-package-save-schedule{min-width:230px;}
.bom-package-save-schedule.is-loading{opacity:.68;cursor:wait;}
.bom-package-phase-badge.is-scheduled{opacity:.7;cursor:not-allowed;box-shadow:inset 0 0 0 1px #b8adcf;}
.bom-package-phase-badge.is-scheduled:after{content:'Scheduled';position:absolute;left:10px;bottom:5px;color:#6b5d87;font-size:9px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;}
/* Match the package card's top inset to the Booking View's 22px side inset. */
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:22px;}
@media(max-width:640px){
    .bom-scheduling-package-current{grid-template-columns:1fr;}
    .bom-package-schedule-actions{align-items:stretch;flex-direction:column;}
    .bom-package-save-schedule{width:100%;min-width:0;}
    .bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:14px;}
}

/* 2026-08-30 restore deliberate top inset for the package scheduling route */
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:30px!important}
@media(max-width:720px){.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:18px!important}}

/* 2026-08-30 use real parent inset; do not rely on a collapsing first-child margin. */
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking):has(> .bom-scheduling-package-summary){padding-top:30px!important;}
.bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking) > .bom-scheduling-package-summary{margin-top:0!important;}
@media(max-width:720px){
  .bom-web-page-config-view-has-visit-basket:not(.bom-web-page-config-view-is-group-access-booking):has(> .bom-scheduling-package-summary){padding-top:18px!important;}
}
