:root{
    --sbb-primary-color:#0b1f44;
    --sbb-button-color:#2579c4;
    --sbb-font-family:"Space Grotesk",sans-serif;
    --sbb-bg:#f7f8fa;
    --sbb-card-bg:#ffffff;
    --sbb-border:#dbe3ee;
    --sbb-muted:#667085;
    --sbb-text:#101828;
    --sbb-success:#15803d;
    --sbb-danger:#b42318;
    --sbb-radius:18px;
    --sbb-shadow:0 14px 42px rgba(15,23,42,.08);
}

.sbb-booking-wrapper,
.sbb-booking-wrapper *,
.sbb-modal,
.sbb-modal *{
    box-sizing:border-box;
    font-family:var(--sbb-font-family);
}

.sbb-booking-wrapper{
    width:min(1160px,calc(100% - 28px));
    margin:30px auto;
    padding:30px;
    border:1px solid var(--sbb-border);
    border-radius:24px;
    background:var(--sbb-bg);
    color:var(--sbb-text);
    box-shadow:var(--sbb-shadow);
}

.sbb-progress-wrap{margin-bottom:18px}
.sbb-progress-bar{height:9px;overflow:hidden;border-radius:999px;background:#e4e9f0}
.sbb-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--sbb-button-color),var(--sbb-primary-color));transition:width .32s ease}

.sbb-steps{display:grid;gap:12px;margin-bottom:30px}
.sbb-steps-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.sbb-step{
    min-height:78px;
    padding:13px 12px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    border:1px solid transparent;
    border-radius:15px;
    background:#e9edf2;
    color:var(--sbb-primary-color);
    text-align:left;
    font-size:15px;
    font-weight:700;
    line-height:1.2;
    transition:.22s ease;
}
.sbb-step-icon{width:36px;height:36px;min-width:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;font-size:16px}
.sbb-step.active{background:var(--sbb-button-color);color:#fff;box-shadow:0 10px 22px rgba(15,23,42,.12);transform:translateY(-1px)}
.sbb-step.active .sbb-step-icon{background:rgba(255,255,255,.18)}
.sbb-step.completed{border-color:color-mix(in srgb,var(--sbb-success) 34%,#fff);background:color-mix(in srgb,var(--sbb-success) 10%,#fff);color:var(--sbb-success)}
.sbb-step.completed .sbb-step-icon{background:color-mix(in srgb,var(--sbb-success) 14%,#fff)}

.sbb-booking-step{animation:sbbFadeUp .3s ease}
@keyframes sbbFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.sbb-step-content h2{
    margin:0 0 16px;
    color:var(--sbb-primary-color);
    font-size:28px;
    font-weight:750;
    line-height:1.2;
    letter-spacing:-.02em;
    text-align:center;
}
.sbb-booking-wrapper h3,.sbb-booking-wrapper h4{color:var(--sbb-primary-color)}
.sbb-booking-wrapper p{color:var(--sbb-muted);font-size:15px;line-height:1.65}
.sbb-selected-product-note{margin:0 0 16px;text-align:center;color:var(--sbb-primary-color)}
.sbb-empty-state{padding:18px;border:1px dashed var(--sbb-border);border-radius:14px;background:#fff;text-align:center}

.sbb-combined-section{
    padding:24px;
    border:1px solid var(--sbb-border);
    border-radius:20px;
    background:rgba(255,255,255,.72);
}
.sbb-section-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:4px}
.sbb-section-heading-row h2{text-align:left;margin-bottom:12px}
.sbb-section-kicker{display:inline-block;margin-bottom:7px;color:var(--sbb-button-color);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.sbb-section-divider{display:flex;align-items:center;gap:14px;margin:24px 0;color:var(--sbb-muted);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.sbb-section-divider::before,.sbb-section-divider::after{content:"";height:1px;flex:1;background:var(--sbb-border)}
.sbb-section-note{margin:-3px 0 20px!important;text-align:left}

.sbb-postcode-field-wrap{position:relative;max-width:760px;margin:0 auto}
#sbb_postcode,
#sbb-step-4 input[type="date"],
.sbb-booking-wrapper select,
.sbb-booking-wrapper textarea{
    width:100%;
    max-width:100%;
    min-height:50px;
    padding:13px 15px;
    border:1px solid #cbd5e1;
    border-radius:12px;
    background:#fff;
    color:var(--sbb-text);
    font-size:16px;
    outline:none;
    transition:.2s ease;
}
#sbb_postcode:focus,#sbb-step-4 input[type="date"]:focus,.sbb-booking-wrapper select:focus,.sbb-booking-wrapper textarea:focus{border-color:var(--sbb-button-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--sbb-button-color) 16%,transparent)}
.sbb-booking-wrapper label{color:var(--sbb-primary-color);font-size:15px;font-weight:700}

#sbb_postcode_list{position:absolute;z-index:50;top:calc(100% + 7px);left:0;right:0;max-height:230px;overflow:auto;border:1px solid var(--sbb-border)!important;border-radius:12px;background:#fff;box-shadow:0 18px 38px rgba(15,23,42,.14)}
.sbb-post-item{padding:12px 14px!important;border-bottom:1px solid #edf0f4;background:#fff;color:var(--sbb-primary-color);font-size:14px;cursor:pointer}
.sbb-post-item:last-child{border-bottom:0}.sbb-post-item:hover{background:color-mix(in srgb,var(--sbb-button-color) 8%,#fff)}.sbb-post-item-empty{color:var(--sbb-muted);cursor:default}

.sbb-bin-grid,.sbb-waste-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;margin-top:10px}
.sbb-bin-card,.sbb-waste-card{display:block;cursor:pointer}
.sbb-bin-card input,.sbb-waste-card input{position:absolute;opacity:0;pointer-events:none}
.sbb-bin-card-inner,.sbb-waste-card-inner{
    min-height:190px;
    height:100%;
    padding:17px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:1px solid var(--sbb-border);
    border-radius:16px;
    background:#fff;
    text-align:center;
    transition:.22s ease;
}
.sbb-bin-card:hover .sbb-bin-card-inner,.sbb-waste-card:hover .sbb-waste-card-inner{border-color:color-mix(in srgb,var(--sbb-button-color) 55%,#fff);transform:translateY(-1px)}
.sbb-bin-card input:checked + .sbb-bin-card-inner,.sbb-waste-card input:checked + .sbb-waste-card-inner{border-color:var(--sbb-button-color);box-shadow:0 10px 24px rgba(15,23,42,.1);transform:translateY(-2px)}
.sbb-bin-card-inner{position:relative;overflow:hidden}
.sbb-bin-selected-mark{
    position:absolute;
    z-index:3;
    top:12px;
    right:12px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:var(--sbb-success);
    color:#fff;
    font-size:18px;
    font-weight:900;
    line-height:1;
    box-shadow:0 8px 20px color-mix(in srgb,var(--sbb-success) 28%,transparent);
    opacity:0;
    transform:scale(.72);
    transition:opacity .2s ease,transform .2s ease;
    pointer-events:none;
}
.sbb-bin-card input:checked + .sbb-bin-card-inner .sbb-bin-selected-mark{opacity:1;transform:scale(1)}
.sbb-bin-card-inner img{width:112px;height:100px;object-fit:contain;border-radius:12px}.sbb-waste-card-inner img{width:96px;height:96px;object-fit:cover;border-radius:14px}
.sbb-bin-fallback,.sbb-waste-fallback{display:flex;align-items:center;justify-content:center;border-radius:16px;background:#f1f4f8}.sbb-bin-fallback{width:112px;height:100px;font-size:38px}.sbb-waste-fallback{width:96px;height:96px;font-size:34px}
.sbb-bin-name,.sbb-waste-name{color:var(--sbb-primary-color);font-size:17px;font-weight:750}
.sbb-choice-list{display:grid;gap:12px}.sbb-choice-card{display:flex;align-items:center;gap:11px;padding:16px;border:1px solid var(--sbb-border);border-radius:13px;background:#fff}.sbb-choice-card input{accent-color:var(--sbb-button-color)}.sbb-choice-card-text{color:var(--sbb-primary-color);font-size:17px;font-weight:700}

.sbb-waste-option{display:flex;flex-direction:column;min-width:0}.sbb-waste-option .sbb-waste-card{flex:1}.sbb-waste-option .sbb-waste-card-inner{height:100%}
.sbb-booking-wrapper .sbb-waste-guide-button{width:100%;min-width:0;margin-top:8px;padding:10px 12px;border:1px solid var(--sbb-border);border-radius:10px;background:#fff;color:var(--sbb-primary-color);box-shadow:none;font-size:14px;font-weight:750}
.sbb-booking-wrapper .sbb-waste-guide-button:hover{border-color:var(--sbb-button-color);background:color-mix(in srgb,var(--sbb-button-color) 5%,#fff);opacity:1}

.sbb-addon-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px;align-items:stretch}
.sbb-addon-card{min-width:0;padding:15px;display:flex;flex-direction:column;border:1px solid var(--sbb-border);border-radius:17px;background:#fff;transition:.22s ease}
.sbb-addon-card:hover{border-color:color-mix(in srgb,var(--sbb-button-color) 45%,#fff)}
.sbb-addon-card.sbb-selected{border-color:var(--sbb-button-color);box-shadow:0 11px 26px rgba(15,23,42,.1);transform:translateY(-2px)}
.sbb-addon-image-wrap{width:100%;aspect-ratio:1.15/1;margin-bottom:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:13px;background:#f0f3f6}
.sbb-addon-image-wrap img{width:100%;height:100%;object-fit:cover}.sbb-addon-fallback{width:94px;height:94px;display:flex;align-items:center;justify-content:center;border-radius:20px;background:#fff;font-size:46px}
.sbb-addon-card h3{margin:0 0 8px;font-size:20px;line-height:1.25}.sbb-addon-card p{margin:0 0 12px;font-size:14px;line-height:1.5}
.sbb-addon-price{min-height:58px;margin-top:auto;padding-top:8px;color:var(--sbb-primary-color)}.sbb-addon-price strong{display:block;font-size:21px;font-weight:800;line-height:1.25}.sbb-addon-price>span{display:block;margin-top:4px;color:var(--sbb-muted);font-size:13px}.sbb-addon-price .woocommerce-Price-amount,.sbb-addon-price .woocommerce-Price-currencySymbol,.sbb-addon-price bdi{display:inline!important;white-space:nowrap!important;font-size:inherit!important;line-height:inherit!important}
.sbb-addon-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0}.sbb-addon-qty-label{color:var(--sbb-primary-color);font-size:13px;font-weight:800}
.sbb-qty-control{display:grid;grid-template-columns:40px 48px 40px;overflow:hidden;border:1px solid var(--sbb-border);border-radius:9px}
.sbb-booking-wrapper .sbb-qty-control button{width:40px;height:40px;min-width:0;padding:0;border-radius:0;box-shadow:none;font-size:20px}.sbb-addon-qty{width:48px!important;height:40px;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;text-align:center;font-weight:800;-moz-appearance:textfield}.sbb-addon-qty::-webkit-inner-spin-button,.sbb-addon-qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.sbb-booking-wrapper .sbb-addon-toggle{width:100%;min-width:0;padding:12px 14px;border-radius:10px;font-size:15px}.sbb-addon-card.sbb-selected .sbb-addon-toggle{background:var(--sbb-success)}

.sbb-placement-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:15px}
.sbb-placement-card{display:block;cursor:pointer}.sbb-placement-card input{position:absolute;opacity:0;pointer-events:none}
.sbb-placement-card-inner{min-height:142px;height:100%;padding:15px;display:flex;align-items:center;gap:15px;border:1px solid var(--sbb-border);border-radius:16px;background:#fff;transition:.22s ease}
.sbb-placement-card:hover .sbb-placement-card-inner{border-color:color-mix(in srgb,var(--sbb-button-color) 50%,#fff)}
.sbb-placement-card input:checked + .sbb-placement-card-inner{border-color:var(--sbb-button-color);box-shadow:0 10px 24px rgba(15,23,42,.1);transform:translateY(-2px)}
.sbb-placement-media{width:104px;height:104px;min-width:104px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:14px;background:#f1f4f7}.sbb-placement-media img{width:100%;height:100%;object-fit:cover}.sbb-placement-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#fff;font-size:24px}
.sbb-placement-copy{display:flex;flex:1;flex-direction:column;min-width:0}.sbb-placement-title{color:var(--sbb-primary-color);font-size:18px;font-weight:800}.sbb-placement-description{margin-top:7px;color:var(--sbb-muted);font-size:13px;line-height:1.5;font-weight:500}.sbb-placement-price{margin-top:10px;color:var(--sbb-button-color);font-size:14px;font-weight:800}

.sbb-live-price{margin-top:20px;padding:14px 16px;border:1px solid var(--sbb-border);border-radius:12px;background:#fff;color:var(--sbb-primary-color);text-align:center;font-size:19px;font-weight:800}.sbb-price-main{font-size:20px}.sbb-price-breakdown{margin-top:5px;color:var(--sbb-muted);font-size:12px;font-weight:550}.sbb-price-breakdown span{padding:0 3px}.sbb-price-loading{font-style:italic;opacity:.75}

.sbb-date-note{margin:0 auto 18px!important;text-align:center;font-weight:700}.sbb-date-note-success{color:var(--sbb-success)!important}.sbb-date-note-error{color:var(--sbb-danger)!important}
.sbb-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sbb-date-field{display:flex;flex-direction:column;gap:8px}.sbb-date-field span{font-size:14px;font-weight:800}

.sbb-button-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}.sbb-button-row-center{justify-content:center}
.sbb-booking-wrapper button{appearance:none;min-width:132px;padding:13px 23px;border:0;border-radius:11px;background:var(--sbb-button-color);color:#fff;font-size:16px;font-weight:800;line-height:1.2;text-align:center;cursor:pointer;box-shadow:0 8px 20px rgba(15,23,42,.1);transition:.2s ease}
.sbb-booking-wrapper button:hover{opacity:.94;transform:translateY(-1px)}.sbb-booking-wrapper button:focus-visible{outline:3px solid color-mix(in srgb,var(--sbb-button-color) 30%,transparent);outline-offset:2px}.sbb-booking-wrapper button:disabled{opacity:.65;cursor:not-allowed;transform:none}
.sbb-btn-secondary{border:1px solid #d1d8e2!important;background:#e9edf2!important;color:var(--sbb-primary-color)!important;box-shadow:none!important}
.sbb-booking-wrapper button.sbb-loading::after{content:"";width:14px;height:14px;margin-left:9px;display:inline-block;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:sbbSpin .7s linear infinite;vertical-align:middle}@keyframes sbbSpin{to{transform:rotate(360deg)}}

#sbb-toast-container{position:fixed;z-index:999999;top:24px;right:24px;display:flex;flex-direction:column;gap:10px;width:min(360px,calc(100% - 32px))}.sbb-toast{padding:14px 16px;border-radius:12px;background:#111827;color:#fff;font-size:14px;line-height:1.5;box-shadow:0 12px 30px rgba(0,0,0,.2);opacity:0;transform:translateY(-8px);transition:.25s ease}.sbb-toast.show{opacity:1;transform:none}.sbb-toast-success{border-left:4px solid #22c55e}.sbb-toast-error{border-left:4px solid #ef4444}

.sbb-modal{position:fixed;z-index:999999;inset:0;display:none;align-items:center;justify-content:center;padding:20px}.sbb-modal.sbb-modal-open{display:flex}.sbb-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.72);backdrop-filter:blur(3px)}
.sbb-modal-dialog{position:relative;z-index:1;width:min(820px,100%);max-height:88vh;overflow:auto;padding:28px;border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.3)}.sbb-modal-dialog h3{margin:0 48px 12px 0;color:var(--sbb-primary-color);font-size:27px;line-height:1.25}.sbb-modal-intro{margin-bottom:20px;color:#475467;font-size:15px;line-height:1.65}.sbb-modal-intro p:first-child{margin-top:0}.sbb-modal-intro p:last-child{margin-bottom:0}
.sbb-modal-close{position:absolute;top:14px;right:14px;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:#edf1f5;color:var(--sbb-primary-color);font-size:24px;line-height:1;cursor:pointer}
.sbb-guide-tabs{display:flex;gap:10px;border-bottom:1px solid var(--sbb-border)}.sbb-guide-tab{flex:0 1 auto;min-width:0;padding:13px 18px;border:1px solid var(--sbb-border);border-bottom:0;border-radius:11px 11px 0 0;background:#f2f4f7;color:var(--sbb-primary-color);font-size:14px;font-weight:800;cursor:pointer}.sbb-guide-tab.is-active{border-color:var(--sbb-button-color);background:var(--sbb-button-color);color:#fff}
.sbb-guide-panel{padding:22px 2px 2px;color:#344054;font-size:15px;line-height:1.7}.sbb-guide-panel h2,.sbb-guide-panel h3,.sbb-guide-panel h4{margin:0 0 12px;color:var(--sbb-primary-color)}.sbb-guide-panel ul,.sbb-guide-panel ol{padding-left:21px}.sbb-guide-panel li{margin-bottom:5px}.sbb-guide-panel[hidden]{display:none!important}body.sbb-modal-lock{overflow:hidden}

.sbb-checkout-summary{width:100%;max-width:1200px;margin:24px auto;overflow:hidden;border:1px solid var(--sbb-border);border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.07);font-family:var(--sbb-font-family)}.sbb-checkout-summary h3{margin:0;padding:18px 22px;background:linear-gradient(135deg,var(--sbb-button-color),var(--sbb-primary-color));color:#fff;font-size:22px}.sbb-summary-table{width:100%;margin:0;border-collapse:collapse;background:#fff}.sbb-summary-table th,.sbb-summary-table td{padding:15px 18px;border-bottom:1px solid #edf0f4;text-align:left;vertical-align:middle;font-size:15px}.sbb-summary-table th{width:38%;background:#f8fafc;color:var(--sbb-primary-color);font-weight:800}.sbb-summary-table td{color:var(--sbb-text)}.sbb-summary-table tr:last-child th,.sbb-summary-table tr:last-child td{border-bottom:0}

@media(max-width:1050px){.sbb-steps-5{grid-template-columns:repeat(3,minmax(0,1fr))}.sbb-addon-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}}
@media(max-width:820px){.sbb-booking-wrapper{padding:22px}.sbb-bin-grid,.sbb-waste-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.sbb-placement-grid{grid-template-columns:1fr}.sbb-date-grid{grid-template-columns:1fr}.sbb-guide-tabs{flex-direction:column;border-bottom:0}.sbb-guide-tab{width:100%;border-bottom:1px solid var(--sbb-border);border-radius:10px}}
@media(max-width:650px){.sbb-booking-wrapper{width:calc(100% - 16px);margin:12px auto;padding:15px;border-radius:18px}.sbb-steps-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sbb-step{min-height:68px;justify-content:flex-start;padding:10px;font-size:13px}.sbb-step-icon{width:31px;height:31px;min-width:31px}.sbb-combined-section{padding:15px}.sbb-section-heading-row h2,.sbb-step-content h2{font-size:22px}.sbb-bin-grid,.sbb-waste-grid,.sbb-addon-grid{grid-template-columns:1fr}.sbb-button-row{flex-direction:column-reverse}.sbb-button-row button{width:100%}.sbb-button-row-center{flex-direction:column}.sbb-placement-card-inner{align-items:flex-start}.sbb-placement-media{width:86px;height:86px;min-width:86px}.sbb-modal-dialog{padding:21px}.sbb-modal-dialog h3{font-size:22px}.sbb-checkout-summary{width:auto!important;max-width:none!important;margin:18px 15px!important}.sbb-checkout-summary h3{padding-left:15px!important;padding-right:15px!important}.sbb-summary-table th,.sbb-summary-table td{display:block;width:100%;padding-left:15px!important;padding-right:15px!important}.sbb-summary-table th{padding-bottom:7px;border-bottom:0}.sbb-summary-table td{padding-top:7px}}
@media(max-width:420px){.sbb-steps-5{grid-template-columns:1fr}.sbb-step{justify-content:flex-start}.sbb-placement-card-inner{flex-direction:column}.sbb-placement-media{width:100%;height:150px}.sbb-section-divider span{text-align:center}.sbb-addon-controls{align-items:flex-start;flex-direction:column}.sbb-qty-control{align-self:stretch;grid-template-columns:40px 1fr 40px}.sbb-addon-qty{width:100%!important}}

/* Version 1.3: custom step icons and premium add-on cards */
.sbb-step-icon img{width:24px;height:24px;display:block;object-fit:contain}
.sbb-step.active .sbb-step-icon img{filter:none}

.sbb-addon-grid{align-items:stretch;gap:20px}
.sbb-addon-card{position:relative;overflow:hidden;padding:0!important;border:1px solid #dfe6ee!important;border-radius:20px!important;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)!important;box-shadow:0 12px 32px rgba(15,23,42,.07);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}
.sbb-addon-card:hover{border-color:color-mix(in srgb,var(--sbb-button-color) 42%,#dfe6ee)!important;box-shadow:0 18px 40px rgba(15,23,42,.11);transform:translateY(-3px)}
.sbb-addon-card.sbb-selected{border-color:var(--sbb-button-color)!important;box-shadow:0 18px 42px color-mix(in srgb,var(--sbb-button-color) 18%,transparent)}
.sbb-addon-image-wrap{position:relative;height:220px;margin:0!important;border-radius:0!important;background:linear-gradient(145deg,#eef2f6,#e6ebf1)!important}
.sbb-addon-image-wrap img{transition:transform .35s ease}
.sbb-addon-card:hover .sbb-addon-image-wrap img{transform:scale(1.035)}
.sbb-addon-fallback{width:96px!important;height:96px!important;border:1px solid rgba(15,23,42,.06);border-radius:24px!important;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.sbb-addon-badge{position:absolute;z-index:2;top:14px;left:14px;padding:7px 10px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(255,255,255,.9);color:var(--sbb-primary-color);font-size:11px;font-weight:800;letter-spacing:.025em;box-shadow:0 6px 18px rgba(15,23,42,.08);backdrop-filter:blur(5px)}
.sbb-addon-selected-mark{position:absolute;z-index:3;top:13px;right:13px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sbb-success);color:#fff;font-size:17px;font-weight:900;box-shadow:0 8px 20px rgba(21,128,61,.24);opacity:0;transform:scale(.78);transition:.2s ease}
.sbb-addon-card.sbb-selected .sbb-addon-selected-mark{opacity:1;transform:scale(1)}
.sbb-addon-card-body{flex:1;min-height:330px;padding:20px;display:flex;flex-direction:column}
.sbb-addon-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.sbb-addon-card h3{margin:0!important;color:var(--sbb-primary-color);font-size:21px!important;letter-spacing:-.015em}
.sbb-addon-description{min-height:44px;margin:9px 0 0!important;color:var(--sbb-muted)!important;font-size:14px!important;line-height:1.58!important}
.sbb-addon-price{min-height:66px;margin:18px 0 0!important;padding:15px 16px!important;border:1px solid #e4e9ef;border-radius:13px;background:#f7f9fb;color:var(--sbb-primary-color)!important}
.sbb-addon-price strong{display:flex!important;align-items:baseline;gap:2px;font-size:21px!important;line-height:1.15;white-space:nowrap}
.sbb-addon-price .woocommerce-Price-amount,.sbb-addon-price .woocommerce-Price-currencySymbol{white-space:nowrap}
.sbb-addon-price>span{margin-top:5px!important;color:var(--sbb-muted)!important;font-size:13px!important;font-weight:600}.sbb-addon-price strong .woocommerce-Price-amount,.sbb-addon-price strong .woocommerce-Price-currencySymbol,.sbb-addon-price strong bdi{margin:0!important;color:var(--sbb-primary-color)!important}
.sbb-addon-card-footer{margin-top:auto;padding-top:17px}
.sbb-addon-controls{margin:0 0 13px!important;padding:0 1px}
.sbb-addon-qty-label{font-size:12px!important;letter-spacing:.025em;text-transform:uppercase}
.sbb-qty-control{border-color:#d9e1ea!important;border-radius:11px!important;background:#fff;box-shadow:0 4px 12px rgba(15,23,42,.04)}
.sbb-booking-wrapper .sbb-qty-control button{background:var(--sbb-button-color)!important;color:#fff!important}
.sbb-booking-wrapper .sbb-addon-toggle{min-height:46px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--sbb-button-color),color-mix(in srgb,var(--sbb-button-color) 80%,var(--sbb-primary-color)))!important;box-shadow:0 10px 22px color-mix(in srgb,var(--sbb-button-color) 22%,transparent)!important}
.sbb-addon-card.sbb-selected .sbb-addon-toggle{background:linear-gradient(135deg,var(--sbb-success),color-mix(in srgb,var(--sbb-success) 82%,#fff))!important;box-shadow:0 10px 22px color-mix(in srgb,var(--sbb-success) 24%,transparent)!important}

@media(max-width:650px){
    .sbb-addon-image-wrap{height:205px}
    .sbb-addon-card-body{min-height:0;padding:18px}
    .sbb-addon-description{min-height:0}
}


/* Waste guide agreement */
.sbb-guide-agreement{margin-top:22px;padding-top:18px;border-top:1px solid var(--sbb-border);display:flex;align-items:center;justify-content:space-between;gap:18px}
.sbb-guide-agree-label{display:flex!important;align-items:flex-start;gap:11px;flex:1;margin:0!important;color:var(--sbb-primary-color)!important;font-size:14px!important;font-weight:700!important;line-height:1.5;cursor:pointer}
.sbb-guide-agree-label input{width:19px;height:19px;min-width:19px;margin:1px 0 0;accent-color:var(--sbb-button-color)}
#sbb-guide-agree-button{min-width:155px;min-height:44px;padding:10px 18px;border:0;border-radius:11px;background:var(--sbb-button-color);color:#fff;font-weight:800;cursor:pointer}
#sbb-guide-agree-button:disabled{background:#d5dbe3;color:#7b8492;cursor:not-allowed;box-shadow:none}
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-agreed{border-color:color-mix(in srgb,var(--sbb-success) 55%,#fff);background:color-mix(in srgb,var(--sbb-success) 9%,#fff);color:var(--sbb-success)}
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-agreed::after{content:" ✓";font-weight:900}

@media(max-width:650px){
    .sbb-guide-agreement{align-items:stretch;flex-direction:column}
    #sbb-guide-agree-button{width:100%}
}

/* Waste Pro 1.6.1: selected bin check badge and 15px mobile checkout-summary gutters. */


/* Waste Pro 1.7.0: waste-guide attention state */
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-warning{
    border-color:#d92d20!important;
    background:#d92d20!important;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(217,45,32,.28)!important;
    animation:sbbGuideAttention .85s ease-in-out 2;
}
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-warning::before{
    content:"⚠ ";
    font-weight:900;
}
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-warning:hover,
.sbb-booking-wrapper .sbb-waste-guide-button.sbb-guide-warning:focus{
    border-color:#b42318!important;
    background:#b42318!important;
    color:#fff!important;
    outline:3px solid rgba(217,45,32,.18);
    outline-offset:2px;
}
@keyframes sbbGuideAttention{
    0%,100%{transform:translateY(0)}
    45%{transform:translateY(-3px)}
}
