.msb-annual-page{max-width:900px;color:#142238}.msb-annual-card{margin:24px 0;padding:28px;border:1px solid #d5e0ed;border-radius:18px;background:#f6f8fb}.msb-annual-row,.msb-annual-totals>div{display:flex;align-items:center;justify-content:space-between;gap:18px}.msb-annual-row h2{margin:0;font-weight:700}.msb-annual-badge{background:#e7f3df;color:#397e20;padding:7px 12px;border-radius:8px;font-weight:700}.msb-annual-card>p{margin:18px 0}.msb-annual-muted{color:#657b99}.msb-annual-totals{margin:26px 0}.msb-annual-totals>div{padding:10px 0}.msb-annual-totals dt{font-weight:400}.msb-annual-totals dd{margin:0;white-space:nowrap}.msb-annual-totals .msb-annual-total{border-top:1px solid #d5e0ed;margin-top:10px;padding-top:20px;font-size:19px;font-weight:700}.msb-annual-total dt{font-weight:700}.msb-annual-checkout{border-top:1px solid #d5e0ed;padding-top:22px;margin-top:26px}.msb-annual-checkout label{display:block;font-weight:400;line-height:1.6}.msb-annual-checkout input[type=checkbox]{accent-color:#74bf35;width:18px;height:18px;vertical-align:middle;margin-right:8px}.msb-annual-button{display:block;width:100%;background:#74bf35;color:#102039;border:0;border-radius:9px;padding:15px;margin-top:20px;font-weight:700}.msb-annual-secondary{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:18px}.msb-annual-secondary button{min-height:44px;border:0;background:transparent;color:#435d7d;text-decoration:underline}.msb-annual-period{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 0 24px;border:0}.msb-annual-period legend{text-align:center;font-size:15px;border:0;margin-bottom:12px}.msb-annual-period label{padding:12px 18px;border:1px solid #cbd9e8;border-radius:10px;cursor:pointer;background:#fff;color:#17243b}.msb-annual-period label:has(input:checked){border-color:#74bf35;background:#eef7e7}.msb-annual-period input{accent-color:#74bf35;margin-right:7px}.msb-annual-plan-note{font-size:12px;color:#617894;margin:-12px 0 18px;min-height:36px}.msb-annual-select-form button{width:100%;border:0}.msb-annual-page button:focus-visible,.msb-annual-period input:focus-visible{outline:3px solid #277ddd;outline-offset:3px}@media(max-width:600px){.msb-annual-card{padding:20px}.msb-annual-row{align-items:flex-start;flex-direction:column}.msb-annual-totals .msb-annual-total{font-size:17px}.msb-annual-secondary{flex-direction:column}}
.msb-annual-page{margin:0 auto;padding:32px 16px;line-height:1.6}.msb-annual-period[hidden]{display:none}.msb-annual-plan-note:empty{display:none}.msb-annual-select-form{margin-top:auto}.msb-annual-select-form button.v3-sales-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 14px;border:1px solid #76c043;border-radius:9px;background:#76c043;color:#08111f;font-size:14px;font-weight:700;line-height:1.45;cursor:pointer}.msb-annual-select-form button.v3-sales-button:hover{background:#6ab139}.msb-annual-select-form button:focus-visible{outline:3px solid #277ddd;outline-offset:3px}

/* Scoped overrides: the legacy theme also styles generic labels and buttons. */
html.design-v3 #root .v3-sales-plan__price > .msb-annual-price-row {
    display: flex; align-items: center; justify-content: space-between;
    width: 100%; gap: 8px; float: none; margin: 0; padding: 0;
}
html.design-v3 #root .msb-annual-price-row > strong { white-space: nowrap; }
html.design-v3 #root .msb-annual-price-discount {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
    padding: 5px 9px; border-radius: 999px; background: #e7f3df; color: #397e20;
    font-size: 13px; font-weight: 700; line-height: 1.2; letter-spacing: normal;
    white-space: nowrap;
}
html.design-v3 #root .msb-annual-price-discount[hidden] { display: none; }
@media (min-width: 1024px) and (max-width: 1199px) {
    html.design-v3 #root .v3-sales__plans--four .msb-annual-selected [data-plan-price] { font-size: 32px; }
}
html.design-v3 #root .msb-annual-period {
    position: relative; width: max-content; min-width: 0; max-width: 100%;
    flex-wrap: nowrap; gap: 4px; margin: 18px auto 28px; padding: 4px;
    border: 1px solid #d5e0ed; border-radius: 12px; background: #edf2f7;
    overflow: visible;
}
html.design-v3 #root .msb-annual-period legend,
html.design-v3 #root .msb-cart-duration legend {
    width: 100%; margin: 0 0 12px; padding: 0; border: 0;
    color: #17243b; font-size: 15px; font-weight: 600; line-height: 1.5;
    letter-spacing: normal; text-transform: none;
}
html.design-v3 #root .msb-annual-period label {
    position: relative; display: inline-flex; align-items: center; justify-content: center;
    min-width: 108px; min-height: 48px; margin: 0; padding: 11px 18px;
    border: 1px solid transparent; border-radius: 8px; background: transparent; color: #52637a;
    font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1.4;
    letter-spacing: normal; text-transform: none; text-align: center;
}
html.design-v3 #root .msb-annual-period label:has(input:checked) {
    border-color: #d0dfc5; background: #fff; color: #17243b;
    box-shadow: 0 2px 5px rgba(16,32,57,.08);
}
html.design-v3 #root .msb-annual-period label:has(input:focus-visible) {
    outline: 3px solid #277ddd; outline-offset: 2px;
}
html.design-v3 #root .msb-annual-period-copy {
    display: block;
    float: none; margin: 0; padding: 0; font: inherit;
}
html.design-v3 #root .msb-annual-period-name {
    display: block; float: none; margin: 0; padding: 0; color: inherit; font: inherit;
}
html.design-v3 #root .msb-annual-period input[type="radio"],
html.design-v3 #root .msb-annual-period legend {
    position: absolute; width: 1px; height: 1px; min-height: 0;
    margin: -1px; padding: 0; border: 0; overflow: hidden;
    clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap;
}
html.design-v3 #root .msb-cart-duration {
    clear: both; margin: 20px 0; padding: 0; border: 0; box-shadow: none; background: transparent;
}
html.design-v3 #root .msb-cart-duration fieldset { margin: 0; padding: 0; border: 0; }
html.design-v3 #root .msb-cart-duration-options {
    display: flex; gap: 4px; flex-wrap: nowrap; width: max-content; max-width: 100%;
    margin-top: 18px; padding: 4px; border: 1px solid #d5e0ed; border-radius: 12px;
    background: #edf2f7; overflow: visible;
}
html.design-v3 #root .msb-cart-duration-options button {
    position: relative; display: inline-flex; align-items: center; justify-content: center;
    overflow: visible;
    min-width: 108px; min-height: 48px; margin: 0; padding: 11px 18px;
    border: 1px solid transparent; border-radius: 8px;
    background: transparent; color: #52637a; box-shadow: none;
    font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1.4;
    letter-spacing: normal; text-transform: none; text-decoration: none; cursor: pointer;
}
html.design-v3 #root .msb-cart-duration-options button[aria-pressed="true"] {
    opacity: 1; background: #fff; border-color: #d0dfc5; color: #17243b; cursor: default;
    box-shadow: 0 2px 5px rgba(16,32,57,.08);
}
html.design-v3 #root .msb-cart-duration-options button:not(:disabled):hover { border-color: #74bf35; }
html.design-v3 #root .msb-cart-duration-options button:focus-visible { outline: 3px solid #277ddd; outline-offset: 3px; }
html.design-v3 #root .msb-cart-duration-label {
    display: inline; float: none; margin: 0; padding: 0;
    color: inherit; font: inherit; white-space: nowrap;
}
html.design-v3 #root .msb-cart-duration-discount,
html.design-v3 #root .msb-annual-discount-badge {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
    float: none; margin: 0; padding: 4px 9px; border-radius: 999px;
    background: #76c043; color: #102039; -webkit-text-fill-color: #102039;
    font-family: inherit; font-size: 13px; font-weight: 800; line-height: 1.2;
    letter-spacing: normal; white-space: nowrap;
}
html.design-v3 #root .msb-annual-period .msb-annual-discount-badge,
html.design-v3 #root .msb-cart-duration-options .msb-cart-duration-discount {
    position: absolute; top: -17px; right: 7px; z-index: 1;
    padding: 4px 8px; border: 2px solid #fff; border-radius: 7px;
    box-shadow: 0 2px 4px rgba(16,32,57,.10); font-size: 12px;
    pointer-events: none;
}
@media (max-width: 360px) {
    html.design-v3 #root .msb-cart-duration-options button { min-width: 100px; padding-inline: 12px; }
}
html.design-v3 #root .msb-cart-annual-info { margin: 0 0 20px; }
html.design-v3 #root .msb-cart-annual-info p { margin: 0 0 10px; color: #657b99; font-size: 13px; line-height: 1.6; }
html.design-v3 #root .msb-cart-remove-form { border: 0; box-shadow: none; }
html.design-v3 #root .msb-cart-remove-form button {
    min-width: 0; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 9px;
    background: transparent; box-shadow: none; font-size: 19px; line-height: 1; cursor: pointer;
}
html.design-v3 #root .msb-cart-remove-form button:hover { background: #dc4c4c; color: #fff; }
html.design-v3 #root .msb-cart-remove-form button i { margin: 0; padding: 0; }
html.design-v3 #root .msb-cart-annual-checkout { margin: 0; box-shadow: none; }
html.design-v3 #root .msb-cart-annual-totals { margin: 0; padding-bottom: 14px; border-bottom: 1px solid #d5e0ed; }
html.design-v3 #root .msb-cart-annual-totals > div { display: flex; justify-content: space-between; gap: 12px; margin: 0 0 8px; }
html.design-v3 #root .msb-cart-annual-totals dt { font-size: 14px; font-weight: 400; }
html.design-v3 #root .msb-cart-annual-totals dd { margin: 0; font-size: 14px; white-space: nowrap; }
html.design-v3 #root .msb-cart-annual-discount { color: #397e20; }
html.design-v3 #root .msb-cart-duration button::before,
html.design-v3 #root .msb-cart-duration button::after,
html.design-v3 #root .msb-cart-remove-form button::before,
html.design-v3 #root .msb-cart-remove-form button::after,
html.design-v3 #root .msb-cart-annual-checkout button::before,
html.design-v3 #root .msb-cart-annual-checkout button::after { display: none; }
