/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Login page */
.login-helper-text{
	color:rgba(0,0,0,.5) !important;
	text-align:center !important;
	margin:48px auto !important;
}
.request-btn{
	color:var(--color-primary) !important;
	text-decoration:underline !important;
}

.elementor-lost-password{
	margin-right:0 !important;
	margin-left:auto !important;
	margin-bottom:-16px !important; 
}
.elementor-widget-login .elementor-button[name="wp-submit"] {
    display:flex !important;
	gap:12px !important;
	align-items:center !important;
	justify-content:center !important;
	height: 56px !important;
}
.elementor-widget-login .elementor-button[name="wp-submit"]:hover {
    background-color: var(--color-primary-10) !important;
	color:var(--color-primary) !important;
}
.elementor-widget-login .elementor-field-type-text .input-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    color: #111;
    pointer-events: none;
    /* label hoogte compenseren */
    margin-top: 11px;
}
.elementor-widget-login .elementor-field-group .elementor-field, .elementor-widget-login .elementor-field-subgroup label {
    padding-left: 48px;
}
.elementor-widget-login .elementor-field-textual{
	height:56px !important;
}

.jet-form-builder__field-wrap .input-icon {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	color: #111;
	pointer-events: none;
}

.login-btn-icon {
    display: flex;
}
.btn-with-icon {
    display: flex;
    gap: 12px;
}

/* Diamond calculator */
.diamond-calc__label { display: block; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: rgba(0,0,0,.5); margin-bottom: 8px; }
.diamond-calc__field { display: flex; align-items: stretch; width: 100%; background: rgba(0,0,0,.05); border-radius: 4px; overflow: hidden; }
.diamond-calc__arrows { display: flex; flex-direction: column; flex-shrink: 0; }
.diamond-calc__arrow { display: flex; align-items: center; justify-content: center; background: none; border: none; cursor: pointer; padding: 0 10px; flex: 1; color: inherit; opacity: .5; transition: opacity .15s, background .15s; }
.diamond-calc__arrow:hover { opacity: 1; background: rgba(0,0,0,.04); }
.diamond-calc__input { flex: 1; min-width: 0; border: none !important; outline: none; padding: 12px 10px; font-size: 15px; background: transparent; color: inherit; -moz-appearance: textfield; }
.diamond-calc__input::-webkit-inner-spin-button,
.diamond-calc__input::-webkit-outer-spin-button { display: none; }
.diamond-calc__pieces-label{opacity:.5};
.diamond-calc__input::placeholder { color: rgba(0,0,0,.35); }
.diamond-calc__suffix { display: flex; align-items: center; padding: 0 14px 0 6px; font-size: 16px; font-weight: 400; letter-spacing: 0.16px; color: var(--e-global-color-primary, #000); flex-shrink: 0; white-space: nowrap; }
.diamond-calc__result { margin: 8px 0 0; font-size: 16px; text-align: right; opacity: 1; font-weight:500; color:#000;}
.diamond-calc__pieces { font-weight: 600; }
.diamond-price-display { display: inline-block; }
.diamond-calc__field--readonly { background: rgba(0,0,0,.04); }
.diamond-calc__field--readonly .diamond-calc__input { opacity: .5; cursor: default; }
.melee-cart-product-link { display: block; font-size: 13px; font-weight: 600; color: inherit; text-decoration: none; margin-bottom: 8px; }
.melee-cart-product-link:hover { text-decoration: underline; }
.diamond-price-display { font-size: 24px; font-weight: 600; color: #000;}
[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover{
	background-color:var( --e-global-color-primary );
}
.woocommerce-breadcrumb{
	display:none;
}

/* Request access form */
.melee-register-wrap { width: 100%; max-width: 480px; }
.melee-register-form { display: flex; flex-direction: column; gap: 16px; }
.melee-register-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.melee-register-field { display: flex; flex-direction: column; gap: 6px; }
.melee-register-label { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: rgba(0,0,0,.5); }
.melee-register-input-wrap { position: relative; }
.melee-register-input-wrap .input-icon { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; color: #111; pointer-events: none; opacity: .45; }
.melee-register-input { height: 56px; padding: 0 16px; background-color: #0000000D; border-width: 0px !important; border-radius: 8px !important; color: #00000040 !important; font-size: 15px; outline: none; width: 100%; box-sizing: border-box; transition: opacity .15s; }
.melee-register-input--icon { padding-left: 48px !important; }
.melee-register-input:focus { opacity: 1; }
label.melee-register-label { color: #00000080 !important; font-size: 12px; font-weight: 400 !important; text-transform: uppercase; letter-spacing: 0; }
.melee-register-error { padding: 12px 16px; background: #fff0f0; border: 1px solid #ffcccc; border-radius: 4px; font-size: 14px; color: #c00; }
.melee-register-btn { height: 56px; padding: 16px; background: var(--e-global-color-primary, #000); color: #fff; border: none; border-radius: 4px; font-size: 15px; font-weight: 600; cursor: pointer; transition: opacity .15s; }
.melee-register-btn:hover { opacity: .85; }
.melee-register-btn:disabled { opacity: .5; cursor: default; }
.melee-register-success-msg { margin-bottom: 16px; font-size: 15px; }

/* Password rules */
.melee-pw-rules { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 5px 16px; }
.melee-pw-rule { font-size: 12px; color: rgba(0,0,0,.4); display: flex; align-items: center; gap: 7px; transition: color .2s; }
.melee-pw-rule::before { content: ''; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: rgba(0,0,0,.15); flex-shrink: 0; transition: background .2s; }
.melee-pw-rule--ok { color: rgba(0,0,0,.7); }
.melee-pw-rule--ok::before { background: #2e7d32; }

/* KYC iframe */
.melee-kyc-iframe-wrap { width: 100%; }
.melee-kyc-iframe { width: 100%; min-height: 700px; border: none; display: block; }

/* ── Order history ─────────────────────────────────────────────── */
.melee-orders { width: 100%; }
.melee-orders__header { display: flex; align-items: baseline; gap: 10px; margin-bottom: 20px; }
.melee-orders__title { font-size: 24px; font-weight: 600; margin: 0; }
.melee-orders__count { font-size: 13px; color: rgba(0,0,0,.4); }

/* Tabs */
.melee-orders__tabs { display: flex; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }
.melee-orders__tab { padding: 10px 16px; font-size: 16px; font-weight: 400; letter-spacing: .01em; color: rgba(0,0,0,.6); text-decoration: none !important; border: 1px solid rgba(0,0,0,.05); border-radius: 8px; display: flex; align-items: center; gap: 6px; transition: all .15s; }
.melee-orders__tab:hover { border-color: rgba(0,0,0,.15); color: #000; }
.melee-orders__tab--active { color: #1748CD; background: rgba(23,72,205,.1); border-color: rgba(23,72,205,.2); }
.melee-orders__tab-count { background: rgba(0,0,0,.08); border-radius: 20px; padding: 1px 7px; font-size: 11px; font-weight: 600; }
.melee-orders__tab--active .melee-orders__tab-count { background: rgba(23,72,205,.15); color: #1748CD; }

/* Table */
.melee-orders__table-wrap { overflow-x: auto; background: #fff; border-radius: 16px; padding: 12px; }
.melee-orders__table { width: 100%; border-collapse: separate; border-spacing: 0; }
.melee-orders__table thead tr { background:rgba(23,72,205,.1); border-radius: 8px; }
.melee-orders__table thead th { font-size: 12px; font-weight: 400; letter-spacing: .01em; text-transform: uppercase; color: rgba(0,0,0,1); padding: 8px 12px; text-align: left; border: none; }
.melee-orders__table thead th:first-child { border-radius: 8px 0 0 8px; }
.melee-orders__table thead th:last-child { border-radius: 0 8px 8px 0; }
.melee-orders__row { border-bottom: 1px solid rgba(0,0,0,.06); }
.melee-orders__row:last-child { border-bottom: none; }
.melee-orders__row:hover { background: none; }
.melee-orders__row td { padding: 14px 12px; vertical-align: middle; font-size: 14px; }
.melee-orders__order-num { font-weight: 600; font-size: 13px; color: #000 !important; text-decoration: none; display: block; }
.melee-orders__order-num:hover { text-decoration: underline; }
.melee-orders__date { font-size: 12px; color: rgba(0,0,0,.4); display: block; margin-top: 2px; }
.melee-orders__item-name { display: block; font-size: 13px; font-weight: 500; color: #000 !important; }
.melee-orders__item-extra { display: block; font-size: 12px; color: rgba(0,0,0,.4); margin-top: 2px; }
.melee-orders__cell--carats { font-size: 13px; font-weight: 500; white-space: nowrap; }
.melee-orders__cell--total { font-size: 14px; font-weight: 600; white-space: nowrap; color: #000 !important; }
.melee-orders__cell--action { text-align: right; }
.melee-orders__chevron { color: rgba(0,0,0,.3); transition: color .15s; display: inline-flex; }
.melee-orders__chevron:hover { color: #000; }

/* Status badges */
.melee-orders__badge { display: inline-block; padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; }
.melee-orders__badge--on-hold          { background: #fff8e1; color: #94660f; } /* Awaiting payment */
.melee-orders__badge--payment-received { background: #e3f0fd; color: #1a5dab; }
.melee-orders__badge--shipped          { background: #ece3fb; color: #6b3fa0; }
.melee-orders__badge--completed        { background: #e8f6ec; color: #1f7a3d; } /* Delivered */
.melee-orders__badge--processing       { background: #fff8e1; color: #b36200; }
.melee-orders__badge--pending          { background: rgba(0,0,0,.06); color: rgba(0,0,0,.5); }
.melee-orders__badge--cancelled        { background: #ffebee; color: #c62828; }

/* Empty state */
.melee-orders__empty { padding: 40px 0; text-align: center; color: rgba(0,0,0,.4); }

/* Pagination */
.melee-orders__pagination { display: flex; gap: 8px; margin-top: 20px; }
.melee-orders__page-btn { padding: 8px 16px; background: rgba(0,0,0,.05); border-radius: 4px; font-size: 13px; font-weight: 500; text-decoration: none; color: inherit; transition: background .15s; }
.melee-orders__page-btn:hover { background: rgba(0,0,0,.1); }

/* ── My Account layout ─────────────────────────────────────────── */
.melee-account { display: grid; grid-template-columns: 20% calc(80% - 64px); gap: 64px; align-items: start; padding-block: 64px; }
.melee-account__sidebar { background: #fff; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; justify-content: space-between; position: sticky; top: 24px; height: calc(100vh - 256px); box-shadow: 0 2px 16px 0 rgba(0,0,0,.05); }
.melee-account__nav { display: flex; flex-direction: column; gap: 2px; }
.melee-account__nav-item { display: flex; align-items: center; gap: 10px; padding: 16px 20px; border-radius: 10px; font-size: 14px; font-weight: 500; color: rgba(0,0,0,1); text-decoration: none !important; transition: background .12s, color .12s; }
.melee-account__nav-item:hover,
.melee-account__nav-item--active { background: #1748CD !important; color: #fff !important; }
.melee-account__nav-item:hover .melee-account__nav-icon,
.melee-account__nav-item--active .melee-account__nav-icon { opacity: 1; }
/* Tache Circle ster behoudt goudkleur */
.melee-account__nav-item:hover .melee-account__nav-icon svg[data-circle],
.melee-account__nav-item--active .melee-account__nav-icon svg[data-circle] { fill: #c9a227 !important; }
.melee-account__nav-icon { display: flex; flex-shrink: 0; opacity: .6; }

/* Bottom block */
.melee-account__bottom { display: flex; flex-direction: column; gap: 12px; border-top: 1px solid rgba(0,0,0,.07); padding-top: 16px; }

/* User block */
.melee-account__user { display: flex; align-items: center; gap: 12px; }
.melee-account__avatar { width: 40px; height: 40px; border-radius: 10px; background: rgba(0,0,0,.06); display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; }
.melee-account__avatar img { width: 40px; height: 40px; border-radius: 10px; }
.melee-account__user-name { display: block; font-size: 13px; font-weight: 600; color: #000; line-height: 1.3; }
.melee-account__user-email { display: block; font-size: 11px; color: rgba(0,0,0,.4); margin-top: 1px; }

/* Sign out */
.melee-account__signout { display: inline-flex; width: fit-content; align-items: center; gap: 8px; font-size: 13px; font-weight: 500; color: #e05555; text-decoration: none !important; background: #fdf0f0; padding: 12px 16px; border-radius: 10px; transition: background .12s; }
.melee-account__signout:hover { background: #fce4e4; color: #c94040; }
.melee-account__content { min-width: 0; }

/* ── My Account responsive ─────────────────────────────────────── */
@media (max-width: 1024px) {
    .melee-account { grid-template-columns: 220px 1fr; gap: 32px; }
}

@media (max-width: 860px) {
    .melee-account { grid-template-columns: 1fr; gap: 20px; padding-block: 28px; }
    .melee-account__sidebar { position: static; height: auto; padding: 14px; gap: 14px; }
    /* Nav als compact 2×2 raster i.p.v. lange kolom */
    .melee-account__nav { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 0; }
    .melee-account__nav-item { padding: 12px 14px; font-size: 13px; }
    /* User + signout compact op één rij, email verbergen */
    .melee-account__bottom { flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; padding-top: 12px; }
    .melee-account__user-email { display: none; }

    /* Hero kleiner */
    .melee-account__hero-title { font-size: 28px; }
    .melee-account__hero-row { flex-wrap: wrap; gap: 8px; }

    /* Formulieren: 2-koloms rijen → 1 kolom */
    .melee-form-row, .melee-register-row { grid-template-columns: 1fr; }

    /* Tache Circle kaarten stacken */
    .tc-circle__tier-card { flex-direction: column; align-items: flex-start; gap: 16px; }
    .tc-circle__tier-right { text-align: left; }

    /* Order detail header stack */
    .melee-order-detail__header { flex-direction: column; align-items: flex-start; gap: 12px; }
}

@media (max-width: 520px) {
    .melee-account__hero-title { font-size: 24px; }
    .melee-orders__tabs { gap: 6px; }
    .melee-orders__tab { padding: 8px 12px; font-size: 14px; }
    .tc-circle__tier-name, .tc-circle__spend-amount { font-size: 22px; }
    .melee-pw-rules { grid-template-columns: 1fr; }
}

/* ── Tache Circle ───────────────────────────────────────────────── */
.tc-circle { display: flex; flex-direction: column; gap: 16px; }
.tc-circle__header { margin-bottom: 4px; }
.tc-circle__title { font-size: 24px; font-weight: 600; margin: 0 0 4px; }
.tc-circle__subtitle { font-size: 14px; color: rgba(0,0,0,.4); margin: 0; }

/* Huidige tier card */
.tc-circle__tier-card { background: #fff; border-radius: 12px; padding: 24px; display: flex; justify-content: space-between; align-items: center; }
.tc-circle__tier-label { display: block; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: rgba(0,0,0,.4); margin-bottom: 6px; }
.tc-circle__tier-name { display: block; font-size: 28px; font-weight: 700; line-height: 1; margin-bottom: 6px; }
.tc-circle__tier-reward { display: inline-block; font-size: 13px; font-weight: 500; background: rgba(0,0,0,.05); padding: 3px 10px; border-radius: 20px; }
.tc-circle__tier-reward--none { color: rgba(0,0,0,.35); }
.tc-circle__tier-right { text-align: right; }
.tc-circle__spend-label { display: block; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: rgba(0,0,0,.4); margin-bottom: 6px; }
.tc-circle__spend-amount { display: block; font-size: 28px; font-weight: 700; }

/* Progress card */
.tc-circle__progress-card { background: #fff; border-radius: 12px; padding: 20px 24px; }
.tc-circle__progress-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; font-size: 14px; }
.tc-circle__progress-pct { font-weight: 600; font-size: 13px; }
.tc-circle__progress-track { height: 6px; background: rgba(0,0,0,.07); border-radius: 99px; overflow: hidden; }
.tc-circle__progress-fill { height: 100%; border-radius: 99px; transition: width .4s ease; }
.tc-circle__progress-remaining { margin: 10px 0 0; font-size: 12px; color: rgba(0,0,0,.4); }
.tc-circle__progress-card--elite { text-align: center; }
.tc-circle__elite-msg { margin: 0; font-size: 15px; font-weight: 500; }

/* Tier items */
.tc-circle__tiers { background: #fff; border-radius: 12px; padding: 8px; display: flex; flex-direction: column; }
.tc-circle__tier-item { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 8px; transition: background .12s; }
.tc-circle__tier-item--active { background: rgba(0,0,0,.03); }
.tc-circle__tier-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.tc-circle__tier-info { flex: 1; }
.tc-circle__tier-item-name { display: block; font-size: 14px; font-weight: 600; }
.tc-circle__tier-item-threshold { display: block; font-size: 12px; color: rgba(0,0,0,.4); margin-top: 2px; }
.tc-circle__tier-current-badge { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; background: rgba(0,0,0,.07); padding: 3px 8px; border-radius: 20px; color: rgba(0,0,0,.5); }

/* Achtergrond voor volledige account pagina */
body.woocommerce-account { background: rgba(0,0,0,.05); }

/* Section/wrapper replicatie voor WooCommerce account pagina's (geen Elementor context) */
body.woocommerce-account .section {
    padding-block-start: 0px;
    padding-block-end: 0px;
    padding-inline-start: 5%;
    padding-inline-end: 5%;
    justify-content: center;
}
body.woocommerce-account .wrapper {
    max-width: 1800px;
    margin-inline: auto;
    width: 100%;
}

/* ── Account hero ───────────────────────────────────────────────── */
.melee-account__hero { margin-bottom: 32px; }
.melee-account__breadcrumb { display: flex; align-items: center; gap: 8px; font-size: 14px; color: rgba(0,0,0,.4); margin-bottom: 12px; }
.melee-account__breadcrumb a { color: rgba(0,0,0,.4); text-decoration: none; }
.melee-account__breadcrumb a:hover { color: #000; }
.melee-account__breadcrumb-sep { display: flex; align-items: center; }
.melee-account__hero-title { font-size: 40px; font-weight: 400; letter-spacing: .01em; color: #000; margin: 0; line-height: 1.1; }

/* Override bootstrap/theme thead border */
.melee-orders__table caption+thead tr:first-child td,
.melee-orders__table caption+thead tr:first-child th,
.melee-orders__table colgroup+thead tr:first-child td,
.melee-orders__table colgroup+thead tr:first-child th,
.melee-orders__table thead:first-child tr:first-child td,
.melee-orders__table thead:first-child tr:first-child th { border: none !important; }

.melee-orders__table td { background: none !important; border: none !important; }

.melee-orders__table { margin-bottom: 0 !important; }

/* ── Order detail ───────────────────────────────────────────────── */
.melee-order-detail { display: flex; flex-direction: column; gap: 20px; }
.melee-order-detail__header { display: flex; align-items: center; justify-content: space-between; }
.melee-order-detail__back { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; color: rgba(0,0,0,.5); text-decoration: none !important; transition: color .12s; }
.melee-order-detail__back:hover { color: #000; }
.melee-order-detail__meta { display: flex; align-items: center; gap: 12px; }
.melee-order-detail__date { font-size: 13px; color: rgba(0,0,0,.4); }
.melee-order-detail__totals { background: #fff; border-radius: 16px; padding: 12px 16px; display: flex; flex-direction: column; gap: 0; }
.melee-order-detail__total-row { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-bottom: 1px solid rgba(0,0,0,.06); font-size: 14px; }
.melee-order-detail__total-row:last-child { border-bottom: none; }
.melee-order-detail__total-label { color: rgba(0,0,0,.5); }
.melee-order-detail__total-value { font-weight: 500; color: #000; }
.melee-order-detail__total-row--grand .melee-order-detail__total-label,
.melee-order-detail__total-row--grand .melee-order-detail__total-value { font-size: 16px; font-weight: 700; color: #000; }

/* ── Account form (edit-account) ───────────────────────────────── */
.melee-edit-account { display: flex; flex-direction: column; gap: 16px; }
.melee-form-card { background: #fff; border-radius: 16px; overflow: hidden; }
.melee-form-card__header { padding: 20px 24px 0; }
.melee-form-card__title { font-size: 16px; font-weight: 600; margin: 0 0 4px; color: #000; }
.melee-form-card__subtitle { font-size: 13px; color: rgba(0,0,0,.4); margin: 0; }
.melee-form-card__body { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 16px; }
.melee-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.melee-form-field { display: flex; flex-direction: column; gap: 6px; }
.melee-form-label { font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: rgba(0,0,0,.4); }
.melee-form-input { height: 48px; padding: 0 16px; background: rgba(0,0,0,.05); border: none !important; border-radius: 8px; font-size: 15px; color: #000; outline: none; width: 100%; box-sizing: border-box; transition: background .15s; }
.melee-form-input:focus { background: rgba(0,0,0,.08); }
.melee-form-input::placeholder { color: rgba(0,0,0,.3); }
.melee-form-card__actions { display: flex; justify-content: flex-end; padding-top: 4px; }
.melee-form-btn { height: 44px; padding: 0 24px; background: #1748CD; color: #fff; border: none; border-radius: 8px; font-size: 14px; font-weight: 600; cursor: pointer; transition: opacity .15s; }
.melee-form-btn:hover { opacity: .85; background: #1748CD; }

/* Tache Circle cards consistent met de rest */
.tc-circle__tier-card,
.tc-circle__progress-card,
.tc-circle__tiers { border-radius: 16px !important; }

.edit-account { display: flex; flex-direction: column; gap: 16px; }

/* ── Dashboard ──────────────────────────────────────────────────── */
.melee-dashboard__welcome { font-size: 16px; color: rgba(0,0,0,.5); margin: 0 0 24px; }
.melee-dashboard__welcome strong { color: #000; }
.melee-dashboard__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 600px) { .melee-dashboard__grid { grid-template-columns: 1fr; } }
.melee-dashboard__card { background: #fff; border-radius: 16px; padding: 20px 24px; display: flex; align-items: center; gap: 16px; text-decoration: none !important; color: inherit; transition: box-shadow .15s; }
.melee-dashboard__card--link:hover { box-shadow: 0 4px 20px rgba(0,0,0,.08); }
.melee-dashboard__card-icon { width: 40px; height: 40px; background: rgba(0,0,0,.05); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: rgba(0,0,0,.5); }
.melee-dashboard__card-body { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.melee-dashboard__card-label { font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: #000; }
.melee-dashboard__card-value { font-size: 16px; font-weight: 600; color: #000; }
.melee-dashboard__card-sub { font-size: 12px; color: var(--e-global-color-primary, #1748CD); }
.melee-dashboard__card-chevron { color: rgba(0,0,0,.25); flex-shrink: 0; }
.melee-dashboard__progress-wrap { display: flex; flex-direction: column; gap: 4px; margin-top: 4px; }
.melee-dashboard__progress-track { height: 4px; background: rgba(0,0,0,.08); border-radius: 99px; overflow: hidden; }
.melee-dashboard__progress-fill { height: 100%; border-radius: 99px; }

.melee-login-error { padding: 12px 16px; background: #fff0f0; border: 1px solid #ffcccc; border-radius: 8px; font-size: 14px; color: #c00; margin-bottom: 16px; }

/* ── Wishlist / Saved items ─────────────────────────────────────── */
.melee-wishlist-empty { padding: 40px 0; color: rgba(0,0,0,.4); display: flex; flex-direction: column; gap: 16px; }
.melee-wishlist-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.melee-wishlist-item { background: #fff; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; }
.melee-wishlist-item__img-wrap { display: block; aspect-ratio: 1; overflow: hidden; }
.melee-wishlist-item__img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.melee-wishlist-item__img-wrap:hover img { transform: scale(1.03); }
.melee-wishlist-item__body { padding: 14px 16px 8px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.melee-wishlist-item__name { font-size: 14px; font-weight: 600; color: #000; text-decoration: none !important; line-height: 1.3; }
.melee-wishlist-item__name:hover { text-decoration: underline !important; }
.melee-wishlist-item__size { font-size: 12px; color: rgba(0,0,0,.4); }
.melee-wishlist-item__price { font-size: 15px; font-weight: 600; color: #000; margin-top: 4px; }
.melee-wishlist-item__per-ct { font-size: 12px; font-weight: 400; color: rgba(0,0,0,.4); }
.melee-wishlist-item__cta { display: block; text-align: center; padding: 10px 16px; margin: 0 16px 16px; background: #1748CD; color: #fff; border-radius: 8px; font-size: 13px; font-weight: 600; text-decoration: none !important; transition: opacity .15s; }
.melee-wishlist-item__cta:hover { opacity: .85; color: #fff; }

.melee-account__content .jet-listing-grid--col-2 { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; }
@media (max-width: 600px) {
    .melee-account__content .jet-listing-grid--col-2 { grid-template-columns: 1fr !important; }
    .melee-wishlist-grid { grid-template-columns: 1fr; }
}

#melee-min-order-notice { margin-top: 10px; padding: 12px 16px; background: #fff8e1; border: 1px solid #ffe082; border-radius: 8px; font-size: 13px; color: #7a5a00; }

.melee-account__hero-row { display: flex; align-items: baseline; gap: 24px; }
.melee-account__hero-count { font-size: 13px; color: rgba(0,0,0,.4); }

/* Lokale hub disclaimer-tooltip */
.melee-fee-free { color: #1f7a3d; font-weight: 600; }

/* Laat verzend-/cart-containers de tooltip naar buiten tonen i.p.v. afkappen */
.woocommerce-shipping-totals, .woocommerce-shipping-methods, .shipping,
.cart_totals, .woocommerce-checkout-review-order-table,
.jet-woo-builder-cart-totals, .jet-woo-cart-totals { overflow: visible !important; }

.melee-hub-tip { position: relative; display: inline-flex; align-items: center; color: rgba(0,0,0,.4); cursor: help; vertical-align: middle; }
.melee-hub-tip:hover, .melee-hub-tip:focus { color: #1748CD; outline: none; }
.melee-hub-tip__bubble { position: absolute; bottom: calc(100% + 10px); right: -8px; width: 260px; max-width: 70vw; background: #16181d; color: #fff; font-size: 12px; font-weight: 400; line-height: 1.5; padding: 10px 12px; border-radius: 8px; opacity: 0; visibility: hidden; transition: opacity .15s, visibility .15s; z-index: 999; box-shadow: 0 6px 24px rgba(0,0,0,.25); pointer-events: none; white-space: normal; }
.melee-hub-tip__bubble::after { content: ''; position: absolute; top: 100%; right: 12px; border: 6px solid transparent; border-top-color: #16181d; }
.melee-hub-tip:hover .melee-hub-tip__bubble, .melee-hub-tip:focus .melee-hub-tip__bubble { opacity: 1; visibility: visible; }

/* ── Responsive overrides (ná de basisregels zodat ze winnen) ───── */
@media (max-width: 860px) {
    .tc-circle__tier-card { flex-direction: column !important; align-items: flex-start !important; gap: 16px; }
    .tc-circle__tier-right { text-align: left !important; }
    .melee-order-detail__header { flex-direction: column; align-items: flex-start; gap: 12px; }
}
@media (max-width: 520px) {
    .tc-circle__tier-name, .tc-circle__spend-amount { font-size: 22px; }
}

/* ── Local hub — couriergroep op checkout ──────────────────────── */
.melee-hub-group { list-style: none; cursor: pointer; }
.melee-hub-label { cursor: pointer; }            /* zelfde tekststyling als de andere labels (geërfd) */
li.melee-hub-courier { padding-left: 22px; }     /* couriers ingesprongen onder de hub-kop */

/* ── Currency switcher (USD ⇄ EUR) — display-only, catalogus/productprijzen ── */
.melee-price--eur { display: none; }
body.melee-cur-eur .melee-price--usd { display: none; }
body.melee-cur-eur .melee-price--eur { display: inline; }

.melee-cur-select { appearance: none; -webkit-appearance: none; cursor: pointer; font: inherit; font-size: 13px; font-weight: 600; line-height: 1; color: currentColor; background: transparent; border: 1px solid rgba(0,0,0,.2); border-radius: 6px; padding: 6px 26px 6px 10px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none' stroke='%23999' stroke-width='1.6'><path d='M1 1l4 4 4-4'/></svg>"); background-repeat: no-repeat; background-position: right 9px center; transition: border-color .15s; }
.melee-cur-select:hover { border-color: rgba(0,0,0,.4); }
.melee-cur-select:focus { outline: none; border-color: #111; }
.melee-cur-select option { color: #111; }

/* ── Sticky top bar in de header ──────────────────────────────────
   Topbar (1e container) blijft vast bovenaan; de onderste (sporadische)
   promobar scrollt gewoon mee weg. De header reserveert exact de
   topbar-hoogte (via --melee-topbar-h, gezet door JS), zodat de ruimte
   altijd klopt — ook als de promobar er niet is. #main heeft GEEN padding nodig. */
.elementor-location-header { padding-top: var(--melee-topbar-h, 0px); }
.elementor-location-header > .e-con:first-child {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

/* ── Diamond calculator: By carat / By stones toggle ──────────────── */
.diamond-calc__modes { display: inline-flex; gap: 2px; margin-bottom: 10px; padding: 3px; border: 1px solid rgba(0,0,0,.12); border-radius: 999px; background: rgba(0,0,0,.03); }
.diamond-calc__mode { appearance: none; border: 0; background: transparent; cursor: pointer; font: inherit; font-size: 12px; font-weight: 600; line-height: 1; letter-spacing: .01em; color: rgba(0,0,0,.55); padding: 7px 14px; border-radius: 999px; transition: background-color .15s, color .15s; }
.diamond-calc__mode:hover { color: rgba(0,0,0,.8); }
.diamond-calc__mode.is-active { background: #111; color: #fff; }

/* ── Cart quantity block (Carats / Pieces met ~ en (Required)) ────── */
.melee-cq { display: flex; flex-direction: column; gap: 6px; }
.melee-cq__row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 14px; }
.melee-cq__label { color: rgba(0,0,0,.55); min-width: 58px; }
.melee-cq__field { margin: 0; }
.melee-cq__req { font-size: 12px; font-style: italic; color: rgba(0,0,0,.45); }
.melee-cart-approx { font-variant-numeric: tabular-nums; }

/* ── Order detail: track & trace ──────────────────────────────────── */
.melee-order-detail__tracking { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; padding: 14px 16px; background: rgba(23,72,205,.05); border: 1px solid rgba(23,72,205,.15); border-radius: 10px; font-size: 14px; }
.melee-order-detail__tracking-icon { display: flex; color: #1748CD; flex-shrink: 0; }
.melee-order-detail__tracking-label { color: rgba(0,0,0,.55); font-weight: 600; }
.melee-order-detail__tracking-code { font-weight: 600; letter-spacing: .02em; color: #111; user-select: all; word-break: break-all; }

/* T-SHIELD trigger — klikbaar */
.tshield { cursor: pointer; }

/* ── Toast: product toegevoegd aan winkelmandje ───────────────────── */
.melee-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 100000;
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: min(360px, calc(100vw - 32px));
    padding: 13px 18px;
    background: var(--e-global-color-primary, #1748CD);
    color: #fff;
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(0,0,0,.22);
    font-size: 14px;
    line-height: 1.4;
    opacity: 0;
    transform: translateY(12px);
    transition: opacity .28s ease, transform .28s ease;
    pointer-events: none;
}
.melee-toast.is-visible { opacity: 1; transform: translateY(0); }
.melee-toast__icon { flex-shrink: 0; color: #fff; }
.melee-toast__text strong { font-weight: 600; }
@media (max-width: 600px) {
    .melee-toast { left: 16px; right: 16px; bottom: 16px; max-width: none; }
}

/* ── Cart drawer (off-canvas) ─────────────────────────────────────── */
body.melee-cd-lock { overflow: hidden; }
.melee-cd-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.45); opacity: 0; transition: opacity .3s ease; z-index: 100000; }
.melee-cd-overlay.is-open { opacity: 1; }
.melee-cd {
    position: fixed; top: 0; right: 0; height: 100%;
    width: min(440px, 100vw); max-width: 100vw;
    background: #fff; z-index: 100001;
    display: flex; flex-direction: column;
    box-shadow: -8px 0 40px rgba(0,0,0,.18);
    transform: translateX(100%); transition: transform .32s cubic-bezier(.4,0,.2,1);
}
.melee-cd.is-open { transform: translateX(0); }
.melee-cd-head { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid rgba(0,0,0,.08); }
.melee-cd-title { font-size: 18px; font-weight: 600; }
.melee-cd-close { background: none; border: 0; cursor: pointer; color: #111; display: flex; padding: 4px; border-radius: 6px; }
.melee-cd-close:hover { background: rgba(0,0,0,.05); }
.melee-cd-content { flex: 1; min-height: 0; overflow: hidden; display: flex; flex-direction: column; transition: opacity .15s; }
.melee-cd-content.is-loading { opacity: .5; pointer-events: none; }

.melee-cd-items { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 8px 24px; }
.melee-cd-item { display: flex; gap: 14px; padding: 18px 0; border-bottom: 1px solid rgba(0,0,0,.07); }
.melee-cd-thumb { flex-shrink: 0; width: 64px; height: 64px; border-radius: 8px; overflow: hidden; background: rgba(0,0,0,.04); }
.melee-cd-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.melee-cd-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.melee-cd-name { font-size: 14px; font-weight: 600; color: #111; text-decoration: none; line-height: 1.3; }
.melee-cd-name:hover { text-decoration: underline; }
.melee-cd-rows { display: flex; flex-direction: column; gap: 4px; }
.melee-cd-row { display: flex; align-items: center; gap: 8px; font-size: 13px; flex-wrap: wrap; }
.melee-cd-label { color: rgba(0,0,0,.5); min-width: 52px; }
.melee-cd-approx { font-variant-numeric: tabular-nums; }
.melee-cd-field { width: auto; max-width: 150px; }
.melee-cd-field .diamond-calc__input { padding: 6px 8px; font-size: 14px; width: 64px; }
.melee-cd-field .diamond-calc__suffix { font-size: 13px; padding: 0 10px 0 4px; }
.melee-cd-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 2px; }
.melee-cd-price { font-size: 15px; font-weight: 600; }
.melee-cd-remove { background: none; border: 0; cursor: pointer; color: rgba(0,0,0,.4); display: flex; padding: 4px; border-radius: 6px; transition: color .15s, background .15s; }
.melee-cd-remove:hover { color: #c0392b; background: rgba(192,57,43,.08); }

.melee-cd-totals { padding: 18px 24px; border-top: 1px solid rgba(0,0,0,.08); display: flex; flex-direction: column; gap: 8px; }
.melee-cd-trow { display: flex; justify-content: space-between; font-size: 14px; }
.melee-cd-trow span:last-child { font-variant-numeric: tabular-nums; }
.melee-cd-muted { color: rgba(0,0,0,.5); font-size: 13px; }
.melee-cd-total { font-size: 16px; font-weight: 700; padding-top: 8px; border-top: 1px solid rgba(0,0,0,.08); margin-top: 2px; }
.melee-cd-minorder { margin: 0 24px; padding: 10px 14px; background: #fff7ed; border: 1px solid #fed7aa; border-radius: 8px; font-size: 12.5px; color: #9a3412; }
.melee-cd-checkout { display: block; margin: 16px 24px 24px; padding: 16px; text-align: center; background: var(--e-global-color-primary, #1748CD); color: #fff !important; font-size: 15px; font-weight: 600; border-radius: 8px; text-decoration: none; transition: opacity .15s; }
.melee-cd-checkout:hover { opacity: .9; }
.melee-cd-checkout.is-disabled { opacity: .45; pointer-events: none; }
.melee-cd-empty { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 40px 24px; color: rgba(0,0,0,.6); }
.melee-cd-shopbtn { padding: 12px 22px; background: var(--e-global-color-primary, #1748CD); color: #fff !important; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 14px; }

/* ── Quick add-to-cart modal ──────────────────────────────────────── */
.melee-qa-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.45); opacity: 0; transition: opacity .25s ease; z-index: 100002; }
.melee-qa-overlay.is-open { opacity: 1; }
.melee-qa {
    position: fixed; top: 50%; left: 50%; z-index: 100003;
    width: min(560px, calc(100vw - 32px));
    max-height: calc(100vh - 48px); overflow-y: auto;
    background: #fff; border-radius: 18px; padding: 32px;
    box-shadow: 0 24px 70px rgba(0,0,0,.28);
    transform: translate(-50%, -48%) scale(.98); opacity: 0; pointer-events: none;
    transition: opacity .25s ease, transform .25s ease;
}
.melee-qa.is-open { opacity: 1; transform: translate(-50%, -50%) scale(1); pointer-events: auto; }
.melee-qa-close { position: absolute; top: 22px; right: 22px; background: none; border: 0; cursor: pointer; color: rgba(0,0,0,.45); display: flex; padding: 4px; border-radius: 6px; }
.melee-qa-close:hover { color: #111; background: rgba(0,0,0,.05); }
.melee-qa-eyebrow { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--e-global-color-primary, #1748CD); }
.melee-qa-title { font-size: 25px; font-weight: 700; margin: 8px 0 0; color: #111; letter-spacing: -.01em; }

.melee-qa-product { display: flex; align-items: center; gap: 14px; margin-top: 20px; padding: 14px; background: rgba(0,0,0,.035); border-radius: 14px; }
.melee-qa-img { width: 58px; height: 58px; border-radius: 10px; object-fit: cover; background: rgba(0,0,0,.05); flex-shrink: 0; }
.melee-qa-name { font-size: 16px; font-weight: 600; color: #111; line-height: 1.3; }
.melee-qa-from { font-size: 13.5px; color: rgba(0,0,0,.5); margin-top: 3px; }
.melee-qa-from .woocommerce-Price-amount { font-weight: 600; color: rgba(0,0,0,.75); }

.melee-qa-modes { display: flex; gap: 6px; margin-top: 22px; }
.melee-qa-mode { flex: 1; appearance: none; border: 1.5px solid rgba(0,0,0,.12); background: #fff; cursor: pointer; font: inherit; font-size: 15px; font-weight: 600; color: rgba(0,0,0,.55); padding: 13px; border-radius: 12px; transition: border-color .15s, color .15s, background-color .15s; }
.melee-qa-mode:hover { background: var(--e-global-color-primary, #1748CD); border-color: var(--e-global-color-primary, #1748CD); color: #fff; }
.melee-qa-mode.is-active { background: var(--e-global-color-primary, #1748CD); border-color: var(--e-global-color-primary, #1748CD); color: #fff; }

.melee-qa-field { display: flex; align-items: center; margin-top: 10px; border: 1.5px solid rgba(0,0,0,.12); border-radius: 12px; padding: 4px 18px; transition: border-color .15s; }
.melee-qa-field:focus-within { border-color: var(--e-global-color-primary, #1748CD); }
.melee-qa-input { flex: 1; min-width: 0; border: 0 !important; outline: none; background: transparent; font-size: 22px; font-weight: 600; color: #111; padding: 14px 0; -moz-appearance: textfield; }
.melee-qa-input::-webkit-inner-spin-button, .melee-qa-input::-webkit-outer-spin-button { display: none; }
.melee-qa-suffix { font-size: 15px; color: rgba(0,0,0,.45); flex-shrink: 0; padding-left: 10px; }
.melee-qa-approx { min-height: 18px; margin-top: 8px; font-size: 13px; color: rgba(0,0,0,.5); }

.melee-qa-total { display: flex; align-items: center; justify-content: space-between; margin-top: 18px; padding: 16px 20px; background: #eef2fc; background: color-mix(in srgb, var(--e-global-color-primary, #1748CD) 8%, #fff); border-radius: 14px; }
.melee-qa-totlabel { font-size: 16px; font-weight: 600; color: rgba(0,0,0,.65); }
.melee-qa-totval { font-size: 24px; font-weight: 700; color: #111; font-variant-numeric: tabular-nums; }

.melee-qa-actions { display: flex; gap: 12px; margin-top: 22px; }
.melee-qa-cancel { flex: 1; padding: 16px; background: rgba(0,0,0,.05); color: #111; border: 0; border-radius: 12px; font-size: 15px; font-weight: 600; cursor: pointer; transition: background .15s; }
.melee-qa-cancel:hover { background: rgba(0,0,0,.09); }
.melee-qa-add { flex: 1.6; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 16px; background: var(--e-global-color-primary, #1748CD); color: #fff !important; border: 0; border-radius: 12px; font-size: 15px; font-weight: 600; cursor: pointer; transition: opacity .15s; }
.melee-qa-add:hover { opacity: .92; }
.melee-qa-add:disabled { background: rgba(0,0,0,.06); color: rgba(0,0,0,.35) !important; cursor: default; }
.melee-qa-add.is-loading { opacity: .6; pointer-events: none; }

@media (max-width: 560px) {
    .melee-qa { padding: 24px; border-radius: 14px; }
}

/* ── Diamond calculator: toggle links + veld rechts (quick-add stijl) ── */
.diamond-calc__row { display: flex; gap: 12px; align-items: stretch; }
.diamond-calc__row + .diamond-calc__result { margin-top: 12px; }
.diamond-calc .diamond-calc__modes { display: flex; gap: 4px; margin-bottom: 0; padding: 4px; border: 1.5px solid rgba(0,0,0,.12); border-radius: 12px; background: #fff; flex-shrink: 0; }
.diamond-calc .diamond-calc__mode { padding: 10px 18px; border-radius: 9px; font-size: 15px; font-weight: 600; color: rgba(0,0,0,.55); }
.diamond-calc .diamond-calc__mode:hover { background: var(--e-global-color-primary, #1748CD); color: #fff; }
.diamond-calc .diamond-calc__mode.is-active { background: var(--e-global-color-primary, #1748CD); color: #fff; }
.diamond-calc__row .diamond-calc__field { flex: 1; width: auto; background: #fff; border: 1.5px solid rgba(0,0,0,.12); border-radius: 12px; transition: border-color .15s; }
.diamond-calc__row .diamond-calc__field:focus-within { border-color: var(--e-global-color-primary, #1748CD); }

@media (max-width: 560px) {
    .diamond-calc__row { flex-direction: column; }
    .diamond-calc .diamond-calc__modes { justify-content: center; }
}

/* ── Cart drawer: customer reference per item ─────────────────────── */
.melee-cd-ref { width: 100%; margin-top: 10px; padding: 9px 12px; border: 1px solid rgba(0,0,0,.14); border-radius: 8px; font: inherit; font-size: 13px; color: #111; background: #fff; outline: none; transition: border-color .15s; }
.melee-cd-ref::placeholder { color: rgba(0,0,0,.4); }
.melee-cd-ref:focus { border-color: var(--e-global-color-primary, #1748CD); }
/* My Account order detail: referentie onder de productnaam */
.melee-orders__item-ref { display: block; margin-top: 3px; font-size: 12px; color: rgba(0,0,0,.5); }

/* ── Checkout: terms & conditions checkbox ────────────────────────── */
.melee-terms { margin: 18px 0; border: 1px solid transparent; border-radius: 8px; transition: border-color .15s, background-color .15s, padding .15s; }
.melee-terms__label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: 14px; line-height: 1.5; color: rgba(0,0,0,.75); }
.melee-terms__input { width: 18px; height: 18px; margin: 1px 0 0; flex-shrink: 0; accent-color: var(--e-global-color-primary, #1748CD); cursor: pointer; }
.melee-terms__text a { color: var(--e-global-color-primary, #1748CD); text-decoration: underline; }
.melee-terms__req { color: #c0392b; }
.melee-terms__msg { display: none; margin-top: 8px; font-size: 13px; font-weight: 500; color: #c0392b; }
/* Foutstaat: rood kader + melding */
.melee-terms--error { border-color: #e74c3c; background: #fff5f5; padding: 14px 16px; }
.melee-terms--error .melee-terms__input { outline: 2px solid #e74c3c; outline-offset: 2px; }
.melee-terms--error .melee-terms__msg { display: block; }

/* ── Cart drawer: verzendmethode-keuze ────────────────────────────── */
.melee-cd-shipping { margin: 4px 0 6px; }
.melee-cd-shiplabel { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: rgba(0,0,0,.45); margin-bottom: 8px; }
.melee-cd-shipopt { display: flex; align-items: center; gap: 10px; padding: 11px 13px; border: 1.5px solid rgba(0,0,0,.12); border-radius: 10px; cursor: pointer; margin-bottom: 8px; font-size: 13.5px; transition: border-color .15s, background-color .15s; }
.melee-cd-shipopt:hover { border-color: rgba(0,0,0,.25); }
.melee-cd-shipopt.is-selected { border-color: var(--e-global-color-primary, #1748CD); background: #eef2fc; background: color-mix(in srgb, var(--e-global-color-primary, #1748CD) 6%, #fff); }
.melee-cd-shipradio { width: 16px; height: 16px; flex-shrink: 0; accent-color: var(--e-global-color-primary, #1748CD); cursor: pointer; margin: 0; }
.melee-cd-shipname { flex: 1; min-width: 0; line-height: 1.35; }
.melee-cd-shipcost { font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }

/* ── Cart drawer: hub-tooltip bubbel binnen de smalle drawer houden ── */
.melee-cd-shipopt { position: relative; }
.melee-cd .melee-hub-tip { position: static; }                 /* offset-parent wordt de optie */
.melee-cd .melee-hub-tip__bubble { left: 12px; right: 12px; width: auto; max-width: none; bottom: calc(100% + 8px); }
.melee-cd .melee-hub-tip__bubble::after { display: none; }     /* pijltje weg (geen vaste anker-positie) */
