.mb-public-store .purchase-option[aria-current="page"]{border-color:var(--accent,#40d7e2);background:rgba(64,215,226,.09)}
.mb-public-store .mb-public-price{margin:14px 0 18px;font-size:clamp(1.35rem,3vw,2rem);font-weight:800}
.mb-public-store .mb-public-price del{font-size:.65em;opacity:.72}
.mb-public-store .mb-public-price ins{text-decoration:none}
.mb-public-store .mb-public-native-cart form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0}
.mb-public-store .mb-public-native-cart .quantity input{min-width:5.25rem;min-height:46px;color:inherit;background:transparent;border:1px solid currentColor;border-radius:10px;padding:8px}
.mb-public-store .mb-public-native-cart button.single_add_to_cart_button{min-height:46px;padding:10px 20px;border:0;border-radius:10px;background:#40d7e2;color:#061219;font-weight:800;cursor:pointer}
.mb-public-store .mb-public-native-cart button.single_add_to_cart_button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.mb-public-store .mb-public-native-cart :is(.tiered-pricing-table,.price-rules-table){width:100%;margin:14px 0;color:var(--text,#e9f7ff);border:1px solid var(--line,#29434f);border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden}
.mb-public-store .mb-public-native-cart :is(.tiered-pricing-table,.price-rules-table) :is(th,td){padding:10px 12px!important;background:var(--surface,#10212b)!important;color:var(--text,#e9f7ff)!important;border-color:var(--line,#29434f)!important;line-height:1.35}
.mb-public-store .mb-public-native-cart :is(.tiered-pricing-table,.price-rules-table) thead th{background:var(--raised,#17303b)!important;font-size:.8rem}
.mb-public-store .mb-public-native-cart :is(.tiered-pricing--active,.tier-price-active) td{background:#174350!important;color:#edfaff!important}
.mb-public-store .mb-public-native-cart :is(.tiered-pricing-table,.price-rules-table) .woocommerce-Price-amount{color:inherit!important}
.mb-public-store .site-header > .header-inner { display: flex; flex-wrap: nowrap; }
.mb-public-store .header-inner > .desktop-nav { margin-right: auto; white-space: nowrap; }
.mb-public-store .header-inner > .header-actions { flex: 0 0 auto; flex-wrap: nowrap; }
.store-partner-links { display: flex; gap: clamp(10px, 1.3vw, 22px); align-items: center; white-space: nowrap; font-size: 13px; }
.store-partner-links a:hover { color: var(--cyan); }
.mb-public-store .account-link small:not([hidden]) { display: block; }
@media (min-width: 601px) {
    .mb-public-store .site-header .account-link[data-account-entry]:not([data-open-store-account]) {
        box-sizing: border-box;
        min-width: 112px;
        min-height: 44px;
        justify-content: space-between;
        gap: 10px;
        padding: 7px 12px;
        font-family: Inter, "Segoe UI", Arial, sans-serif;
        font-synthesis: none;
        line-height: 1.2;
    }
    .mb-public-store .account-link[data-account-entry]:not([data-open-store-account]) > .icon:first-child { display: none; }
    .mb-public-store .site-header .account-link[data-account-entry]:not([data-open-store-account]) strong {
        display: block;
        font-size: 13px;
        font-weight: 600;
        line-height: 16px;
        letter-spacing: normal;
    }
    .mb-public-store .site-header .account-link[data-account-entry]:not([data-open-store-account]) small {
        margin-top: 1px;
        color: var(--muted, #abc2ce);
        font-size: 11px;
        font-weight: 400;
        line-height: 12px;
        letter-spacing: normal;
    }
}

.mb-public-store .mb-checkout-content .purchase-auth:not([hidden]) {
    display: grid;
    gap: 14px;
}
.mb-public-store .purchase-auth > :is(h3, p) { margin: 0; }
.mb-public-store .purchase-auth > [data-open-account] { margin-top: 6px; }
.mb-public-store .mb-checkout-content > .purchase-footnote { margin-top: 24px; max-width: 64ch; }

.mb-public-store .mb-checkout-content .purchase-confirmation:not([hidden]) {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: clamp(20px, 4vw, 42px) 0;
}
.mb-public-store .purchase-confirmation > :is(h3, p) { margin: 0; }
.mb-public-store .purchase-confirmation > span .icon { display: block; margin: 0; }
.mb-public-store .purchase-confirmation > [data-app-link] { max-width: 30rem; margin-top: 8px; }
.mb-public-store .purchase-confirmation > [data-stay] { min-height: 44px; padding: 8px 12px; }
.mb-public-store .purchase-confirmation > [data-handoff-countdown]:empty { display: none; }

.store-popover {
    --store-dialog-bg: #101f2a;
    --store-dialog-text: #edf6fa;
    --store-dialog-muted: #abc2ce;
    --store-dialog-line: #385261;
    --store-dialog-field: #0c1723;
    color: var(--store-dialog-text);
    background: var(--store-dialog-bg);
    border: 1px solid var(--store-dialog-line);
    border-radius: 22px;
    box-shadow: 0 24px 80px #050b12aa;
    width: min(calc(100% - 32px), 960px);
    max-height: calc(100dvh - 32px);
    padding: clamp(24px, 4vw, 44px);
    overflow: auto;
}
.store-popover::backdrop { background: #051019c9; backdrop-filter: blur(3px); }
.store-popover h2 { padding-right: 34px; margin: 10px 0; font-size: clamp(24px, 4vw, 34px); line-height: 1.13; }
.store-popover > p:not(.eyebrow) { color: var(--store-dialog-muted); margin: 0 0 20px; line-height: 1.6; }
.store-popover-close { position: absolute; top: 16px; right: 16px; width: 40px; height: 40px; border: 1px solid var(--store-dialog-line); border-radius: 10px; background: var(--store-dialog-field); color: inherit; font-size: 24px; cursor: pointer; }
.store-popover :focus-visible, .purchase-club:focus-visible { outline: 2px solid var(--cyan,#43dbe1); outline-offset: 3px; }
dialog.store-account {
    box-sizing: border-box;
    width: min(calc(100% - 24px), 576px);
    padding: 0;
}
.store-account-brand {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    min-height: 68px;
    padding: 12px clamp(20px, 5vw, 32px);
    border-bottom: 1px solid var(--store-dialog-line);
}
.store-account-brand img { width: 145px; height: auto; display: block; }
html[data-mb-theme="light"] .store-account-brand img { filter: brightness(.28); }
.store-account-brand .store-popover-close { position: static; flex: 0 0 auto; }
.store-account-content { padding: 22px clamp(20px, 5vw, 32px) 26px; }
.store-account-content h2 { margin: 0; padding: 0; font-size: clamp(24px, 5vw, 30px); }
.store-account-intro { margin: 6px 0 18px; color: var(--store-dialog-muted); }
.store-account-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 18px; }
.store-account-tabs button {
    padding: 9px 6px;
    min-height: 44px;
    border: 1px solid var(--store-dialog-line);
    border-radius: 10px;
    background: var(--store-dialog-field);
    color: inherit;
    font: inherit;
    cursor: pointer;
}
.store-account-tabs button[aria-pressed="true"] {
    border-color: var(--cyan, #43dbe1);
    background: color-mix(in srgb, var(--cyan, #43dbe1) 10%, var(--store-dialog-field));
}
.store-account form { display: grid; gap: 10px; }
.store-account label { display: grid; gap: 5px; font-size: 13px; font-weight: 600; }
.store-account input:not([type="checkbox"]) {
    box-sizing: border-box;
    width: 100%;
    min-height: 46px;
    padding: 8px 12px;
    border: 1px solid var(--store-dialog-line);
    border-radius: 9px;
    background: var(--store-dialog-field);
    color: inherit;
    font: inherit;
    font-weight: 400;
}
.store-account .store-account-reveal {
    justify-self: start;
    padding: 4px 8px;
    margin-top: -4px;
    border: 1px solid var(--store-dialog-line);
    border-radius: 7px;
    background: transparent;
    color: var(--store-dialog-text);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.store-account .store-remember { margin: 0; color: var(--store-dialog-muted); font-size: 12px; }
.store-account-links, .store-account-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
    font-size: 13px;
}
.store-account-links { margin-top: 9px; }
.store-account-legal { margin-top: 14px; justify-content: center; }
.store-account-links a, .store-account-legal a {
    color: var(--store-dialog-muted);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.store-account .store-google-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    margin-top: 16px;
    padding: 8px 10px;
    border: 1px solid var(--store-dialog-line);
    border-radius: 10px;
    background: var(--store-dialog-field);
    color: var(--store-dialog-text);
    font-weight: 600;
}
.store-account .store-google-button:hover { border-color: var(--cyan, #43dbe1); }
.store-account .store-google-status { margin: 8px 0 0; color: var(--store-dialog-muted); font-size: 12px; }
.store-account-error { color: #ffa78c; font-size: 13px; }
.store-popover [hidden] { display: none !important; }

button.purchase-club { width: 100%; text-align: left; color: inherit; font: inherit; cursor: pointer; }
button.purchase-club:hover { border-color: #b19be1; }
.store-club-badges { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 12px; padding: 0; margin: 22px 0; text-align: center; list-style: none; }
.store-club-badges li { min-width: 0; font-size: 13px; }
.store-club-points, .store-club-discount { display: block; margin-top: 4px; font-size: .88em; line-height: 1.35; }
.store-club-points { color: var(--store-dialog-muted); }
.store-club-discount { color: var(--cyan,#43dbe1); font-weight: 700; }
html[data-mb-theme="light"] .store-club-discount { color: #146473; }
.store-club-badges .rk-emblem { width: min(100%, 94px); height: auto; aspect-ratio: 1; margin: 0 auto 8px; }
.store-club-badges .rk-gem { width: 78%; height: 84%; }
.store-club-badges svg { max-width: 85%; max-height: 85%; }
.store-club-rules { padding-top: 16px; border-top: 1px solid var(--store-dialog-line); }

html[data-mb-theme="light"] .store-popover { --store-dialog-bg: #f6fbfc; --store-dialog-text: #172d39; --store-dialog-muted: #435b68; --store-dialog-line: #9fb8c2; --store-dialog-field: #fff; }
html[data-mb-theme="light"] .store-account-error { color: #9b3220; }
@media (max-width: 1200px) {
    .mb-public-store .header-inner > .desktop-nav, .store-partner-links { display: none; }
    .mb-public-store .header-inner .header-actions { margin-left: auto; }
    .mb-public-store .header-inner .mobile-toggle { display: block; }
}

.mb-public-store .store-email-catalog { padding-bottom: clamp(44px, 7vw, 92px); }
.store-email-catalog .email-grid { margin-top: 0; }
.store-email-catalog .email-card .email-price { margin-top: auto; }

.store-coupons { border: 1px solid var(--line,#385261); border-radius: 12px; margin-bottom: 20px; padding: 14px; }
.store-coupons > label { display: block; font-weight: 700; margin-bottom: 8px; }
.store-coupon-entry { display: flex; gap: 8px; }
.store-coupon-entry input { flex: 1; min-width: 0; padding: 8px 12px; min-height: 42px; color: inherit; background: transparent; border: 1px solid var(--line,#385261); border-radius: 8px; }
.store-coupon-entry button { padding: 8px 14px; }
.store-coupon-applied > div { display: flex; justify-content: space-between; gap: 10px; margin-top: 8px; }
.store-coupon-applied button { color: inherit; background: transparent; border: 0; text-decoration: underline; cursor: pointer; }
.store-coupons [data-coupon-status], .store-coupon-discount { font-size: .86em; margin: 8px 0 0; }
.store-coupons [data-coupon-status][data-error="true"] { color: var(--store-dialog-error,#ffac98); }
html[data-mb-theme="light"] .store-coupons { --store-dialog-error: #a03327; }
@media (max-width: 580px) {
    .store-club-badges { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
    .store-club-badges li { font-size: 11px; }
}

/* Account password recovery shortcut */
.mb-recovery-link:not([hidden]) {
    box-sizing:border-box;
    min-height:48px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:4px 12px;
    border:1px solid #8ebcee;
    border-radius:11px;
    background:#c5e2ff;
    color:#102e50;
    text-align:left;
    text-decoration:none;
    transition:background .15s,border-color .15s;
}
.mb-recovery-link:not([hidden]):hover {background:#e0eeff;color:#102e50;border-color:#82b0e2;text-decoration:none}
.mb-recovery-link[hidden] {display:none}
.mb-recovery-link:focus-visible,.mb-recovery-support-link:focus-visible {outline:2px solid #4284bf;outline-offset:3px}
.mb-recovery-key-tile {
    display:grid;
    place-items:center;
    flex:none;
    box-sizing:border-box;
    width:32px;
    height:32px;
    border:1px solid #285785;
    border-radius:9px;
    background:linear-gradient(150deg,#3975a9,#214b75 58%,#15385e);
    color:#f0f9ff;
    box-shadow:inset 0 1px 0 #b3ddff70,0 1px 2px #193f6c38;
}
.mb-recovery-key {width:23px;height:23px;fill:currentColor}
.mb-recovery-text {min-width:0}
.mb-recovery-text strong {display:block;font-size:14px;font-weight:740;line-height:1.25}
.mb-recovery-text small {display:block;margin-top:2px;color:#294967;font-size:12px;line-height:1.3}
.mb-recovery-arrow,.mb-support-arrow {flex:none;margin-left:auto;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.mb-recovery-arrow {color:#143e68}
@media(prefers-reduced-motion:reduce) {.mb-recovery-link:not([hidden]),.mb-recovery-support-link {transition:none}}

/* Two-line account entry for signed-out customers. */
.mb-public-store .mb-account-guest,
.mb-public-store .mb-account-guest-arrow { display:none; }
.mb-public-store .site-header [data-account-outline][data-open-store-account] {
    --account-bg:#102631;
    --account-hover:#173846;
    --account-border:#50c8d3;
    --account-title:#f4fcff;
    --account-subtitle:#b9d5e1;
    --account-icon-bg:#214b5a;
    --account-icon:#bbf7fa;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex:none;
    gap:9px;
    width:auto;
    min-width:172px;
    min-height:48px;
    padding:5px 9px;
    border:1px solid var(--account-border);
    border-radius:9px;
    background:var(--account-bg);
    color:var(--account-title);
    white-space:nowrap;
    text-decoration:none;
    font-synthesis:none;
}
html[data-mb-theme="light"] .mb-public-store .site-header [data-account-outline][data-open-store-account] {
    --account-bg:#f8fcfe;
    --account-hover:#e6f8fa;
    --account-border:#16808a;
    --account-title:#132d3b;
    --account-subtitle:#435f6f;
    --account-icon-bg:#dbf3f6;
    --account-icon:#175866;
    border-color:var(--account-border);
    background:var(--account-bg);
    color:var(--account-title);
}
html .mb-public-store .site-header [data-account-outline][data-open-store-account]:hover {
    background:var(--account-hover);
}
.mb-public-store [data-account-outline][data-open-store-account]:focus-visible {
    outline:2px solid var(--account-border);
    outline-offset:3px;
}
.mb-public-store .site-header [data-account-outline][data-open-store-account] > .icon:first-child {
    box-sizing:border-box;
    display:block;
    flex:none;
    width:32px;
    height:32px;
    padding:7px;
    margin:0;
    border-radius:8px;
    color:var(--account-icon);
    background:var(--account-icon-bg);
}
.mb-public-store [data-account-outline][data-open-store-account] > span:has(> [data-account-greeting]) {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip-path:inset(50%);
    white-space:nowrap;
}
.mb-public-store [data-account-outline][data-open-store-account] .mb-account-arrow-signed { display:none; }
.mb-public-store [data-account-outline][data-open-store-account] .mb-account-guest {
    display:grid!important;
    gap:3px;
    text-align:left;
}
.mb-public-store .mb-account-guest b { font-size:15px;font-weight:740;line-height:1; }
.mb-public-store .mb-account-guest small { color:var(--account-subtitle);font-size:12px;font-weight:550;line-height:1.13; }
.mb-public-store [data-account-outline][data-open-store-account] .mb-account-guest-arrow {
    display:grid!important;
    place-items:center;
    flex:none;
    width:25px;
    margin-left:auto;
    color:var(--account-icon);
}
.mb-public-store .site-header [data-account-outline] .mb-account-guest-arrow .icon { display:block;width:15px;height:15px;margin:0; }
@media (max-width:600px) {
    .mb-public-store .site-header [data-account-outline][data-open-store-account] {
        min-width:0;
        min-height:44px;
        height:auto;
        gap:5px;
        padding:5px 6px;
    }
    .mb-public-store .site-header [data-account-outline][data-open-store-account] > .icon:first-child {width:24px;height:24px;padding:4px}
    .mb-public-store [data-account-outline][data-open-store-account] .mb-account-guest {gap:2px}
    .mb-public-store .mb-account-guest b {font-size:13px}
    .mb-public-store .mb-account-guest small {font-size:10px}
    .mb-public-store [data-account-outline][data-open-store-account] .mb-account-guest-arrow {width:13px}
    .mb-public-store .site-header [data-account-outline] .mb-account-guest-arrow .icon {width:12px;height:12px}
}

@media (max-width:380px) {
    .mb-public-store .site-header > .header-inner:has([data-account-outline][data-open-store-account]) {
        width:calc(100% - 20px);
    }
    .mb-public-store .site-header [data-account-outline][data-open-store-account] {
        gap:4px;
        padding-inline:5px;
    }
    .mb-public-store .site-header [data-account-outline][data-open-store-account] > .icon:first-child {
        width:20px;
        height:20px;
        padding:3px;
        border-radius:5px;
    }
    .mb-public-store .site-header [data-account-outline][data-open-store-account] .mb-account-guest-arrow {
        display:none!important;
    }
}

@media (max-width:360px) {
    .mb-public-store .site-header > .header-inner:has([data-account-outline][data-open-store-account]) {
        width:calc(100% - 16px);
        gap:4px;
    }
    .mb-public-store .site-header .header-inner:has([data-account-outline][data-open-store-account]) .brand img { width:72px; }
    .mb-public-store .site-header .header-actions:has([data-account-outline][data-open-store-account]) { gap:3px; }
}

/* Product card label and recommendation. */
.mb-public-store .family-card-labels {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:4px 8px;
    min-height:24px;
}
.mb-public-store .family-card-labels .card-eyebrow {min-height:0}
.mb-public-store .family-card-recommended {
    padding:3px 7px;
    border:1px solid #41738d;
    border-radius:999px;
    background:#183a51;
    color:#d2eeff;
    font-size:11px;
    font-weight:700;
    line-height:1.15;
    white-space:nowrap;
}
html[data-mb-theme="light"] .mb-public-store .family-card-recommended {
    border-color:#83b2ce;
    background:#e0f0fa;
    color:#244d68;
}
