/* ==========================================================================
   Kronix Hosting — bestelomgeving (custom.css)
   Wordt automatisch geladen door common.tpl, na all.min.css.
   Zelfde stijl als het klantgebied: rustig donker, grijze kaarten, cyaan accent.
   ========================================================================== */

/* ── Kleuren: alleen binnen de bestelomgeving overschreven ── */
#order-standard_cart {
    --bg: #080B17;
    --dark: #0D1122;
    --secondary: #121830;
    --border: #1F2747;
    --text: #EEF2FF;
    --muted: #9AA5C7;
    --accent: #2B5CFF;
    --accent-hover: #1E47E0;
    --success: #2ea043;
    --danger: #da3633;
    --warning: #d29922;
    --radius: 8px;
    --radius-lg: 10px;
    --radius-xl: 12px;

    --kx-line: #1A2140;
    --kx-field: #080B17;

    color: var(--text);
    font-size: 14px;
    line-height: 1.5;
}
#order-standard_cart *, #order-standard_cart *::before, #order-standard_cart *::after { box-sizing: border-box; }
#order-standard_cart a { color: var(--accent); }
#order-standard_cart a:hover { color: var(--accent-hover); }
#order-standard_cart a:focus-visible,
#order-standard_cart button:focus-visible,
#order-standard_cart input:focus-visible,
#order-standard_cart select:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#order-standard_cart .text-muted, #order-standard_cart small.text-muted { color: var(--muted) !important; }

/* Pagina's met een eigen hero (winkelwagen): geen dubbele witruimte */
#order-standard_cart.kx-has-hero { padding-top: 2rem; }
#order-standard_cart.kx-has-hero .secondary-cart-body,
#order-standard_cart.kx-has-hero .secondary-cart-sidebar,
#order-standard_cart.kx-has-hero .cart-body { padding-top: 0; }

/* ── Koppen ── */
#order-standard_cart .header-lined { border: 0; margin: 0 0 1.25rem; padding: 0; }
#order-standard_cart .header-lined h1,
#order-standard_cart .font-size-36 {
    font-size: 1.75rem !important; font-weight: 700; color: var(--text); letter-spacing: -.01em; margin: 0 0 .4rem;
}
#order-standard_cart .sub-heading {
    display: flex; align-items: center; gap: .75rem; margin: 1.75rem 0 1rem; height: auto; border: 0; text-align: left;
}
#order-standard_cart .sub-heading::after { content: ""; flex: 1; height: 1px; background: var(--border); }
#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading .primary-bg-color {
    position: static; padding: 0; background: none !important; color: var(--text); font-size: .95rem; font-weight: 600;
}
#order-standard_cart .kxc-section-label { color: var(--text); font-weight: 600; }

/* ── Kaarten en panelen ── */
#order-standard_cart .panel,
#order-standard_cart .card,
#order-standard_cart .kx-card {
    background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: none; color: var(--text);
}
#order-standard_cart .panel-heading,
#order-standard_cart .card-header {
    background: transparent; border-bottom: 1px solid var(--border); color: var(--text); font-weight: 600;
}
#order-standard_cart .panel-body, #order-standard_cart .card-body { color: var(--text); }

/* ── Knoppen ── */
#order-standard_cart .btn {
    border-radius: var(--radius); font-weight: 600; box-shadow: none; text-shadow: none;
    transition: background .15s ease, border-color .15s ease, filter .15s ease, transform .15s ease;
}
#order-standard_cart .btn-primary,
#order-standard_cart .btn-success,
#order-standard_cart .btn-checkout {
    background: var(--accent); border: 1px solid var(--accent); color: #FFFFFF !important;
}
#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-success:hover,
#order-standard_cart .btn-checkout:hover { background: var(--accent-hover); border-color: var(--accent-hover); color: #FFFFFF !important; }
#order-standard_cart .btn-default,
#order-standard_cart .btn-secondary,
#order-standard_cart .btn-continue-shopping {
    background: var(--secondary); border: 1px solid var(--border); color: var(--text) !important;
}
#order-standard_cart .btn-default:hover,
#order-standard_cart .btn-secondary:hover,
#order-standard_cart .btn-continue-shopping:hover { background: #18203D; border-color: #34406B; }
#order-standard_cart .btn-link { color: var(--accent); background: none; border: 0; }
#order-standard_cart .btn-link:hover { color: var(--accent-hover); text-decoration: none; }
#order-standard_cart .btn-lg { padding: .75rem 1.4rem; font-size: 1rem; }
/* btn-xs bestaat niet in Bootstrap 4: klein houden */
#order-standard_cart .btn-xs { padding: .15rem .45rem; font-size: .78rem; font-weight: 500; line-height: 1.4; }
#order-standard_cart .btn[disabled], #order-standard_cart .btn.disabled { opacity: .55; }
#order-standard_cart .btn-remove-from-cart { color: #ff7b72 !important; }
#order-standard_cart .btn-remove-from-cart:hover { color: #ffa198 !important; }

/* ── Formulieren ── */
#order-standard_cart .form-control,
#order-standard_cart select.form-control,
#order-standard_cart textarea.form-control {
    background: var(--kx-field) !important; color: var(--text) !important; border: 1px solid var(--border) !important;
    border-radius: var(--radius) !important; box-shadow: none !important; min-height: 42px; font-size: 16px;
}
@media (min-width: 768px) {
    #order-standard_cart .form-control { font-size: 14px; }
}
#order-standard_cart .form-control:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(43,92,255,.18) !important; }
#order-standard_cart .form-control::placeholder { color: #6E7899; }
#order-standard_cart .form-control[disabled], #order-standard_cart .form-control[readonly] { opacity: .65; }
#order-standard_cart .form-control option { background: var(--dark) !important; color: var(--text) !important; }
#order-standard_cart label { color: var(--text); font-weight: 500; }
#order-standard_cart .field-icon { color: var(--muted); }
#order-standard_cart .prepend-icon .field { padding-left: 42px; }
#order-standard_cart .field-error-msg { color: #ff7b72; font-size: .82rem; }
#order-standard_cart .input-group-addon,
#order-standard_cart .input-group-text { background: var(--secondary); border-color: var(--border); color: var(--muted); }
#order-standard_cart input:-webkit-autofill {
    -webkit-text-fill-color: var(--text); -webkit-box-shadow: 0 0 0 1000px var(--kx-field) inset;
}
#order-standard_cart input[type=checkbox], #order-standard_cart input[type=radio] { accent-color: var(--accent); }

/* ── Meldingen ── */
#order-standard_cart .alert { border-radius: var(--radius-lg); border: 1px solid; color: var(--text); background: var(--secondary); }
#order-standard_cart .alert-success { background: rgba(46,160,67,.1);  border-color: rgba(46,160,67,.4);  color: #56d364; }
#order-standard_cart .alert-info    { background: rgba(43,92,255,.07); border-color: rgba(43,92,255,.3);  color: #93ABFF; }
#order-standard_cart .alert-warning { background: rgba(210,153,34,.1); border-color: rgba(210,153,34,.4); color: #e3b341; }
#order-standard_cart .alert-danger  { background: rgba(218,54,51,.1);  border-color: rgba(218,54,51,.45); color: #ff7b72; }
#order-standard_cart .alert ul { margin: .4rem 0 0; padding-left: 1.2rem; }
#order-standard_cart .label, #order-standard_cart .badge { border-radius: 999px; font-weight: 600; }

/* ── Zijbalk met categorieën ── */
#order-standard_cart .cart-sidebar .panel,
#order-standard_cart .cart-sidebar .card { margin-bottom: 1rem; }
#order-standard_cart .cart-sidebar .list-group-item {
    background: transparent; border: 0; border-radius: var(--radius); color: var(--muted); padding: .55rem .8rem;
}
#order-standard_cart .cart-sidebar .list-group-item:hover { background: var(--secondary); color: var(--text); }
#order-standard_cart .cart-sidebar .list-group-item.active {
    background: rgba(43,92,255,.1); color: var(--accent); font-weight: 600;
}

/* ==========================================================================
   Productoverzicht (products.tpl)
   ========================================================================== */
.kxc-page-header { margin-bottom: 1.5rem; }
.kxc-page-title { font-size: 1.75rem; font-weight: 700; color: var(--text); letter-spacing: -.01em; margin: 0 0 .35rem; line-height: 1.2; }
.kxc-page-tagline { font-size: .95rem; color: var(--muted); margin: 0; }

/* Kolommen passen zich aan de ruimte aan (naast de zijbalk anders veel te smal) */
.kxc-products-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.1rem; align-items: stretch;
    padding-top: .75rem;
}
.kxc-product-card {
    position: relative; display: flex; flex-direction: column; gap: .8rem;
    background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 1.25rem;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.kxc-product-card:hover { transform: translateY(-3px); border-color: #34406B; box-shadow: 0 14px 30px -18px rgba(0,0,0,.8); }
.kxc-product-featured { border-color: rgba(43,92,255,.55); box-shadow: 0 0 0 1px rgba(43,92,255,.25), 0 16px 40px -24px rgba(43,92,255,.6); }
.kxc-product-featured:hover { border-color: var(--accent); }

.kxc-popular-badge {
    position: absolute; top: -11px; left: 1.25rem; z-index: 2;
    background: var(--accent); color: #FFFFFF; font-size: .7rem; font-weight: 700;
    padding: .2rem .7rem; border-radius: 999px; white-space: nowrap;
}
.kxc-product-name { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; font-size: 1.15rem; font-weight: 700; color: var(--text); line-height: 1.25; }
.kxc-qty-badge {
    font-size: .68rem; font-weight: 600; color: var(--muted); background: var(--secondary);
    border: 1px solid var(--border); border-radius: 999px; padding: .12rem .5rem; white-space: nowrap;
}

.kxc-product-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: .25rem; line-height: 1.1; padding-bottom: .8rem; border-bottom: 1px solid var(--kx-line); }
.kxc-price-amount { font-size: 1.85rem; font-weight: 800; color: var(--text); letter-spacing: -.02em; }
.kxc-price-period { font-size: .85rem; color: var(--muted); }
.kxc-price-annual { width: 100%; margin-top: .35rem; font-size: .78rem; color: #56d364; }

.kxc-spec-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; }
.kxc-spec-box { background: var(--secondary); border: 1px solid var(--border); border-radius: var(--radius); padding: .5rem .65rem; display: flex; flex-direction: column; gap: .1rem; min-width: 0; }
.kxc-spec-label { font-size: .7rem; color: var(--muted); }
.kxc-spec-value { font-size: .85rem; font-weight: 600; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.kxc-feature-list { flex: 1; }
.kxc-feature-list ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex; flex-direction: column; gap: .35rem; }
.kxc-feature-list ul li {
    display: flex !important; align-items: flex-start !important; gap: .5rem !important;
    font-size: .86rem !important; color: var(--muted) !important; line-height: 1.4 !important;
    padding: 0 !important; border: 0 !important; background: none !important;
}
.kxc-feature-list ul li::before {
    content: "" !important; flex-shrink: 0 !important; width: 14px; height: 14px; margin-top: 2px !important;
    background: no-repeat center / 14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300bfff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
}
.kxc-feature-list ul li i, .kxc-feature-list ul li .fa, .kxc-feature-list ul li .fas { display: none !important; }
.kxc-feature-list p { font-size: .86rem; color: var(--muted); margin: 0 0 .25rem; }

.kxc-setup-fee { font-size: .78rem; color: var(--muted); }

.kxc-order-btn {
    display: flex; align-items: center; justify-content: center; gap: .45rem; width: 100%; margin-top: auto;
    min-height: 44px; padding: .6rem 1rem; border-radius: var(--radius);
    background: var(--secondary); border: 1px solid var(--border); color: var(--text) !important;
    font-weight: 600; font-size: .92rem; text-decoration: none !important;
    transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.kxc-order-btn:hover { background: #18203D; border-color: #34406B; color: #fff !important; }
.kxc-order-btn i { font-size: .8em; transition: transform .15s ease; }
.kxc-order-btn:hover i { transform: translateX(3px); }
.kxc-order-btn-featured { background: var(--accent); border-color: var(--accent); color: #FFFFFF !important; }
.kxc-order-btn-featured:hover { background: var(--accent-hover); border-color: var(--accent-hover); color: #FFFFFF !important; }

/* ==========================================================================
   Winkelwagen (viewcart.tpl)
   ========================================================================== */
#order-standard_cart .view-cart-items-header {
    background: var(--secondary); color: var(--muted); border: 1px solid var(--border); border-bottom: 0;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0; font-size: .8rem; font-weight: 600; padding: .65rem 1rem;
}
#order-standard_cart .view-cart-items {
    background: var(--dark); border: 1px solid var(--border); border-radius: 0 0 var(--radius-lg) var(--radius-lg); overflow: hidden;
}
#order-standard_cart .view-cart-items .item,
#order-standard_cart .view-cart-items .item:nth-child(even) { background: transparent; border-bottom: 1px solid var(--kx-line); padding: 1rem; }
#order-standard_cart .view-cart-items .item:last-child { border-bottom: 0; }
#order-standard_cart .view-cart-items .item-title { color: var(--text); font-weight: 600; font-size: .98rem; }
#order-standard_cart .view-cart-items .item-group,
#order-standard_cart .view-cart-items .item-domain { color: var(--muted); font-size: .85rem; }
#order-standard_cart .view-cart-items .item-price span { color: var(--text); font-weight: 700; }
#order-standard_cart .view-cart-items .item-price .cycle,
#order-standard_cart .view-cart-items small { color: var(--muted); }
#order-standard_cart .view-cart-empty { color: var(--muted); padding: 2.5rem 1rem; text-align: center; }

/* Samenvatting rechts */
#order-standard_cart .order-summary,
#order-standard_cart .kxc-summary-card {
    background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-xl); overflow: hidden;
}
#order-standard_cart .order-summary h2 {
    background: transparent; color: var(--text); font-size: 1rem; font-weight: 600;
    border-bottom: 1px solid var(--border); padding: 1rem 1.25rem; margin: 0; text-align: left;
}
#order-standard_cart .summary-container { background: transparent; color: var(--text); padding: 1rem 1.25rem; }
#order-standard_cart .summary-container .subtotal,
#order-standard_cart .summary-container .bordered-totals { border-color: var(--kx-line); }
#order-standard_cart .summary-container .total-due-today .amt { color: var(--text); font-size: 1.6rem; font-weight: 800; }
#order-standard_cart .summary-container .total-due-today span:not(.amt) { color: var(--muted); }

/* ==========================================================================
   Checkout (checkout.tpl)
   ========================================================================== */
#order-standard_cart .account { background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); }
#order-standard_cart .account.active { border-color: var(--accent); background: rgba(43,92,255,.05); }
#order-standard_cart .paymethod-info,
#order-standard_cart .cc-input-container,
#order-standard_cart .apply-credit-container { background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); color: var(--text); }
#order-standard_cart .checkout-security-msg { background: var(--dark); border: 1px solid var(--border); color: var(--muted); border-radius: var(--radius-lg); }
#order-standard_cart #btnCompleteOrder { min-height: 50px; font-size: 1.05rem; }

/* ==========================================================================
   Domeinen
   ========================================================================== */
#order-standard_cart .domain-checker-container,
#order-standard_cart .domain-selection-options .option {
    background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); color: var(--text);
}
#order-standard_cart .domain-selection-options .option-selected,
#order-standard_cart .domain-selection-options .option:hover { border-color: rgba(43,92,255,.4); background: rgba(43,92,255,.04); }
#order-standard_cart .domain-checker-available { color: #56d364; }
#order-standard_cart .domain-checker-unavailable { color: #ff7b72; }
#order-standard_cart .domain-lookup-result .price { color: var(--text); font-weight: 700; }
#order-standard_cart .spotlight-tlds .spotlight-tld,
#order-standard_cart .suggested-domains { background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); color: var(--text); }
#order-standard_cart .domain-pricing .tld-row { border-color: var(--kx-line); }
#order-standard_cart .domain-pricing .tld-row.highlighted { background: var(--secondary); }

/* ==========================================================================
   Productconfiguratie en add-ons
   ========================================================================== */
#order-standard_cart .product-info { background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); color: var(--text); }
#order-standard_cart .product-info .product-title { color: var(--text); font-weight: 700; }
#order-standard_cart .field-container,
#order-standard_cart .panel-addon { background: var(--dark); border: 1px solid var(--border); border-radius: var(--radius-lg); }
#order-standard_cart .panel-addon-selected { border-color: rgba(46,160,67,.6); }
#order-standard_cart .panel-addon .panel-price { background: var(--secondary); color: var(--text); }

/* ==========================================================================
   Foutpagina (error.tpl) — voorheen donkere tekst op een donkere site
   ========================================================================== */
#order-standard_cart .alert-danger.error-heading {
    display: flex; align-items: center; gap: .75rem; font-size: 1.05rem; font-weight: 600; padding: 1rem 1.25rem;
}
#order-standard_cart .alert-danger.error-heading i { font-size: 1.4rem; }
#order-standard_cart p.margin-bottom { color: var(--muted); font-size: .98rem; line-height: 1.65; }
#order-standard_cart p.out-of-stock-msg {
    max-width: 700px; margin: 1.5rem auto; padding: 1rem 1.25rem; border-radius: var(--radius-lg);
    background: rgba(218,54,51,.08); border: 1px solid rgba(218,54,51,.4); color: #ff7b72; font-weight: 500;
}

/* ==========================================================================
   Mobiel
   ========================================================================== */
@media (max-width: 767px) {
    #order-standard_cart { padding-left: 14px; padding-right: 14px; }
    #order-standard_cart .cart-body,
    #order-standard_cart .secondary-cart-body,
    #order-standard_cart .secondary-cart-sidebar { padding-top: 5.25rem; }
    #order-standard_cart.kx-has-hero .secondary-cart-body,
    #order-standard_cart.kx-has-hero .secondary-cart-sidebar { padding-top: 0; }
    #order-standard_cart .secondary-cart-sidebar { width: 100%; margin-top: 1.25rem; }
    #order-standard_cart .header-lined h1,
    #order-standard_cart .font-size-36,
    .kxc-page-title { font-size: 1.4rem !important; }
    .kxc-products-grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
    .kxc-product-card:hover { transform: none; }
    #order-standard_cart .btn-lg,
    #order-standard_cart #btnCompleteOrder,
    #order-standard_cart .btn-checkout { width: 100%; }
    #order-standard_cart .view-cart-items-header { display: none !important; }
    #order-standard_cart .view-cart-items { border-radius: var(--radius-lg); }
}

@media (prefers-reduced-motion: reduce) {
    #order-standard_cart *, .kxc-product-card, .kxc-order-btn i { transition: none !important; }
}

/* Knoppen op de foutpagina naast elkaar */
#order-standard_cart .out-of-stock-msg + .text-center,
#order-standard_cart .out-of-stock-msg ~ .text-center { display: flex; gap: .6rem; justify-content: center; flex-wrap: wrap; }

/* ==========================================================================
   Stappenbalk en kop van de winkelwagen
   ========================================================================== */
.kx-steps {
    display: flex; align-items: center; gap: .5rem; list-style: none; margin: 0 0 1.25rem; padding: 0;
    font-size: .85rem; flex-wrap: wrap;
}
.kx-steps li { display: flex; align-items: center; gap: .5rem; color: #9AA5C7; }
.kx-steps li + li::before { content: ""; width: 28px; height: 1px; background: #263056; margin-right: .1rem; }
.kx-step-dot {
    width: 24px; height: 24px; border-radius: 50%; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: .75rem; font-weight: 700; background: #121830; border: 1px solid #263056; color: #9AA5C7;
}
.kx-steps li.is-current { color: #EEF2FF; font-weight: 600; }
.kx-steps li.is-current .kx-step-dot { background: #2B5CFF; border-color: #2B5CFF; color: #FFFFFF; box-shadow: 0 0 0 4px rgba(43,92,255,.15); }
.kx-steps li.is-done { color: #C3CBE6; }
.kx-steps li.is-done .kx-step-dot { background: rgba(46,160,67,.18); border-color: rgba(46,160,67,.5); color: #56d364; font-size: .65rem; }

.kx-cart-top { background: #080B17; padding: 7rem 24px 0; }
.kx-cart-top-in { max-width: 860px; margin: 0 auto; padding: 0 15px; }
.kx-cart-title { margin: 0 0 .35rem; font-size: 1.75rem; font-weight: 700; color: #EEF2FF; letter-spacing: -.01em; }
.kx-cart-sub { margin: 0; color: #9AA5C7; font-size: .95rem; }

@media (max-width: 767px) {
    .kx-cart-top { padding: 5.5rem 14px 0; }
    .kx-cart-title { font-size: 1.4rem; }
    .kx-steps { font-size: .78rem; gap: .35rem; }
    .kx-steps li + li::before { width: 14px; }
}
@media (max-width: 400px) {
    .kx-steps .kx-step-lbl { display: none; }
    .kx-steps li.is-current .kx-step-lbl { display: inline; }
}

/* ==========================================================================
   Basislaag: grid, hulpklassen en modals
   Je thema laadt geen Bootstrap-CSS, terwijl de WHMCS-bestelpagina's daar wel
   op leunen. Daardoor stonden kolommen onder elkaar, stonden de pop-ups
   ("Winkelwagen legen") gewoon open op de pagina en liepen bedragen niet uit.
   Deze laag vangt dat op. Heeft een pagina wel Bootstrap, dan botst dit niet.
   ========================================================================== */
#order-standard_cart .row { display: flex; flex-wrap: wrap; margin-left: -12px; margin-right: -12px; }
#order-standard_cart .row > [class*="col-"] { position: relative; width: 100%; min-width: 0; padding-left: 12px; padding-right: 12px; float: none; }
#order-standard_cart .clearfix::after, #order-standard_cart .row::after { content: ""; display: table; clear: both; }
#order-standard_cart .row::after { display: none; }
#order-standard_cart .row > .col-1, #order-standard_cart .row > .col-xs-1 { flex: 0 0 8.3333%; max-width: 8.3333%; }
#order-standard_cart .row > .col-2, #order-standard_cart .row > .col-xs-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
#order-standard_cart .row > .col-3, #order-standard_cart .row > .col-xs-3 { flex: 0 0 25.0000%; max-width: 25.0000%; }
#order-standard_cart .row > .col-4, #order-standard_cart .row > .col-xs-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
#order-standard_cart .row > .col-5, #order-standard_cart .row > .col-xs-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
#order-standard_cart .row > .col-6, #order-standard_cart .row > .col-xs-6 { flex: 0 0 50.0000%; max-width: 50.0000%; }
#order-standard_cart .row > .col-7, #order-standard_cart .row > .col-xs-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
#order-standard_cart .row > .col-8, #order-standard_cart .row > .col-xs-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
#order-standard_cart .row > .col-9, #order-standard_cart .row > .col-xs-9 { flex: 0 0 75.0000%; max-width: 75.0000%; }
#order-standard_cart .row > .col-10, #order-standard_cart .row > .col-xs-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
#order-standard_cart .row > .col-11, #order-standard_cart .row > .col-xs-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
#order-standard_cart .row > .col-12, #order-standard_cart .row > .col-xs-12 { flex: 0 0 100.0000%; max-width: 100.0000%; }
#order-standard_cart .offset-0, #order-standard_cart .col-xs-offset-0 { margin-left: 0.0000%; }
#order-standard_cart .offset-1, #order-standard_cart .col-xs-offset-1 { margin-left: 8.3333%; }
#order-standard_cart .offset-2, #order-standard_cart .col-xs-offset-2 { margin-left: 16.6667%; }
#order-standard_cart .offset-3, #order-standard_cart .col-xs-offset-3 { margin-left: 25.0000%; }
#order-standard_cart .offset-4, #order-standard_cart .col-xs-offset-4 { margin-left: 33.3333%; }
#order-standard_cart .offset-5, #order-standard_cart .col-xs-offset-5 { margin-left: 41.6667%; }
#order-standard_cart .offset-6, #order-standard_cart .col-xs-offset-6 { margin-left: 50.0000%; }
#order-standard_cart .offset-7, #order-standard_cart .col-xs-offset-7 { margin-left: 58.3333%; }
#order-standard_cart .offset-8, #order-standard_cart .col-xs-offset-8 { margin-left: 66.6667%; }
#order-standard_cart .offset-9, #order-standard_cart .col-xs-offset-9 { margin-left: 75.0000%; }
#order-standard_cart .offset-10, #order-standard_cart .col-xs-offset-10 { margin-left: 83.3333%; }
#order-standard_cart .offset-11, #order-standard_cart .col-xs-offset-11 { margin-left: 91.6667%; }
@media (min-width: 576px) {
  #order-standard_cart .row > .col-sm-1 { flex: 0 0 8.3333%; max-width: 8.3333%; }
  #order-standard_cart .row > .col-sm-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  #order-standard_cart .row > .col-sm-3 { flex: 0 0 25.0000%; max-width: 25.0000%; }
  #order-standard_cart .row > .col-sm-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  #order-standard_cart .row > .col-sm-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  #order-standard_cart .row > .col-sm-6 { flex: 0 0 50.0000%; max-width: 50.0000%; }
  #order-standard_cart .row > .col-sm-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  #order-standard_cart .row > .col-sm-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  #order-standard_cart .row > .col-sm-9 { flex: 0 0 75.0000%; max-width: 75.0000%; }
  #order-standard_cart .row > .col-sm-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  #order-standard_cart .row > .col-sm-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  #order-standard_cart .row > .col-sm-12 { flex: 0 0 100.0000%; max-width: 100.0000%; }
  #order-standard_cart .offset-sm-0, #order-standard_cart .col-sm-offset-0 { margin-left: 0.0000%; }
  #order-standard_cart .offset-sm-1, #order-standard_cart .col-sm-offset-1 { margin-left: 8.3333%; }
  #order-standard_cart .offset-sm-2, #order-standard_cart .col-sm-offset-2 { margin-left: 16.6667%; }
  #order-standard_cart .offset-sm-3, #order-standard_cart .col-sm-offset-3 { margin-left: 25.0000%; }
  #order-standard_cart .offset-sm-4, #order-standard_cart .col-sm-offset-4 { margin-left: 33.3333%; }
  #order-standard_cart .offset-sm-5, #order-standard_cart .col-sm-offset-5 { margin-left: 41.6667%; }
  #order-standard_cart .offset-sm-6, #order-standard_cart .col-sm-offset-6 { margin-left: 50.0000%; }
  #order-standard_cart .offset-sm-7, #order-standard_cart .col-sm-offset-7 { margin-left: 58.3333%; }
  #order-standard_cart .offset-sm-8, #order-standard_cart .col-sm-offset-8 { margin-left: 66.6667%; }
  #order-standard_cart .offset-sm-9, #order-standard_cart .col-sm-offset-9 { margin-left: 75.0000%; }
  #order-standard_cart .offset-sm-10, #order-standard_cart .col-sm-offset-10 { margin-left: 83.3333%; }
  #order-standard_cart .offset-sm-11, #order-standard_cart .col-sm-offset-11 { margin-left: 91.6667%; }
}
@media (min-width: 768px) {
  #order-standard_cart .row > .col-md-1 { flex: 0 0 8.3333%; max-width: 8.3333%; }
  #order-standard_cart .row > .col-md-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  #order-standard_cart .row > .col-md-3 { flex: 0 0 25.0000%; max-width: 25.0000%; }
  #order-standard_cart .row > .col-md-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  #order-standard_cart .row > .col-md-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  #order-standard_cart .row > .col-md-6 { flex: 0 0 50.0000%; max-width: 50.0000%; }
  #order-standard_cart .row > .col-md-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  #order-standard_cart .row > .col-md-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  #order-standard_cart .row > .col-md-9 { flex: 0 0 75.0000%; max-width: 75.0000%; }
  #order-standard_cart .row > .col-md-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  #order-standard_cart .row > .col-md-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  #order-standard_cart .row > .col-md-12 { flex: 0 0 100.0000%; max-width: 100.0000%; }
  #order-standard_cart .offset-md-0, #order-standard_cart .col-md-offset-0 { margin-left: 0.0000%; }
  #order-standard_cart .offset-md-1, #order-standard_cart .col-md-offset-1 { margin-left: 8.3333%; }
  #order-standard_cart .offset-md-2, #order-standard_cart .col-md-offset-2 { margin-left: 16.6667%; }
  #order-standard_cart .offset-md-3, #order-standard_cart .col-md-offset-3 { margin-left: 25.0000%; }
  #order-standard_cart .offset-md-4, #order-standard_cart .col-md-offset-4 { margin-left: 33.3333%; }
  #order-standard_cart .offset-md-5, #order-standard_cart .col-md-offset-5 { margin-left: 41.6667%; }
  #order-standard_cart .offset-md-6, #order-standard_cart .col-md-offset-6 { margin-left: 50.0000%; }
  #order-standard_cart .offset-md-7, #order-standard_cart .col-md-offset-7 { margin-left: 58.3333%; }
  #order-standard_cart .offset-md-8, #order-standard_cart .col-md-offset-8 { margin-left: 66.6667%; }
  #order-standard_cart .offset-md-9, #order-standard_cart .col-md-offset-9 { margin-left: 75.0000%; }
  #order-standard_cart .offset-md-10, #order-standard_cart .col-md-offset-10 { margin-left: 83.3333%; }
  #order-standard_cart .offset-md-11, #order-standard_cart .col-md-offset-11 { margin-left: 91.6667%; }
}
@media (min-width: 992px) {
  #order-standard_cart .row > .col-lg-1 { flex: 0 0 8.3333%; max-width: 8.3333%; }
  #order-standard_cart .row > .col-lg-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  #order-standard_cart .row > .col-lg-3 { flex: 0 0 25.0000%; max-width: 25.0000%; }
  #order-standard_cart .row > .col-lg-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  #order-standard_cart .row > .col-lg-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  #order-standard_cart .row > .col-lg-6 { flex: 0 0 50.0000%; max-width: 50.0000%; }
  #order-standard_cart .row > .col-lg-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  #order-standard_cart .row > .col-lg-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  #order-standard_cart .row > .col-lg-9 { flex: 0 0 75.0000%; max-width: 75.0000%; }
  #order-standard_cart .row > .col-lg-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  #order-standard_cart .row > .col-lg-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  #order-standard_cart .row > .col-lg-12 { flex: 0 0 100.0000%; max-width: 100.0000%; }
  #order-standard_cart .offset-lg-0, #order-standard_cart .col-lg-offset-0 { margin-left: 0.0000%; }
  #order-standard_cart .offset-lg-1, #order-standard_cart .col-lg-offset-1 { margin-left: 8.3333%; }
  #order-standard_cart .offset-lg-2, #order-standard_cart .col-lg-offset-2 { margin-left: 16.6667%; }
  #order-standard_cart .offset-lg-3, #order-standard_cart .col-lg-offset-3 { margin-left: 25.0000%; }
  #order-standard_cart .offset-lg-4, #order-standard_cart .col-lg-offset-4 { margin-left: 33.3333%; }
  #order-standard_cart .offset-lg-5, #order-standard_cart .col-lg-offset-5 { margin-left: 41.6667%; }
  #order-standard_cart .offset-lg-6, #order-standard_cart .col-lg-offset-6 { margin-left: 50.0000%; }
  #order-standard_cart .offset-lg-7, #order-standard_cart .col-lg-offset-7 { margin-left: 58.3333%; }
  #order-standard_cart .offset-lg-8, #order-standard_cart .col-lg-offset-8 { margin-left: 66.6667%; }
  #order-standard_cart .offset-lg-9, #order-standard_cart .col-lg-offset-9 { margin-left: 75.0000%; }
  #order-standard_cart .offset-lg-10, #order-standard_cart .col-lg-offset-10 { margin-left: 83.3333%; }
  #order-standard_cart .offset-lg-11, #order-standard_cart .col-lg-offset-11 { margin-left: 91.6667%; }
}
#order-standard_cart .float-left, #order-standard_cart .pull-left { float: left !important; }
#order-standard_cart .float-right, #order-standard_cart .pull-right { float: right !important; }
#order-standard_cart .text-left { text-align: left !important; }
#order-standard_cart .text-right { text-align: right !important; }
#order-standard_cart .text-center { text-align: center !important; }
#order-standard_cart .d-none, #order-standard_cart .w-hidden, #order-standard_cart .hidden { display: none !important; }
#order-standard_cart .d-inline { display: inline !important; }
#order-standard_cart .d-block { display: block !important; }
#order-standard_cart .d-flex { display: flex !important; }
#order-standard_cart .justify-content-center { justify-content: center !important; }
#order-standard_cart .justify-content-end { justify-content: flex-end !important; }
#order-standard_cart .align-items-center { align-items: center !important; }
#order-standard_cart .mb-0 { margin-bottom: 0 !important; } #order-standard_cart .mb-2 { margin-bottom: .5rem !important; } #order-standard_cart .mb-3, #order-standard_cart .margin-bottom { margin-bottom: 1rem !important; }
#order-standard_cart .mt-3 { margin-top: 1rem !important; } #order-standard_cart .w-100 { width: 100% !important; }
#order-standard_cart .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
#order-standard_cart .collapse:not(.show):not(.in) { display: none; }
#order-standard_cart .small, #order-standard_cart small { font-size: 85%; }
#order-standard_cart .input-group { display: flex; align-items: stretch; width: 100%; }
#order-standard_cart .input-group > .form-control { flex: 1 1 auto; min-width: 0; width: 1%; }
#order-standard_cart .input-group-btn, #order-standard_cart .input-group-append, #order-standard_cart .input-group-prepend { display: flex; }
#order-standard_cart .btn { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; padding: .55rem 1rem; font-size: .9rem; line-height: 1.3; cursor: pointer; text-decoration: none !important; border: 1px solid transparent; }
#order-standard_cart .btn-block { display: flex; width: 100%; }
#order-standard_cart .form-control { display: block; width: 100%; padding: .55rem .8rem; }
#order-standard_cart .form-group { margin-bottom: 1rem; }
@media (max-width: 575.98px) {
  #order-standard_cart .hidden-xs { display: none !important; }
}
@media (min-width: 576px) {
  #order-standard_cart .d-sm-none, #order-standard_cart .visible-xs-inline, #order-standard_cart .visible-xs, #order-standard_cart .visible-xs-block { display: none !important; }
  #order-standard_cart .d-sm-block { display: block !important; }
  #order-standard_cart .d-sm-inline { display: inline !important; }
}

/* Pop-ups (Winkelwagen legen, item verwijderen) */
#order-standard_cart .modal { display: none; position: fixed; inset: 0; z-index: 1050; overflow-x: hidden; overflow-y: auto; padding: 1rem; background: rgba(4,6,14,.72); }
#order-standard_cart .modal.show, #order-standard_cart .modal.in { display: flex !important; align-items: center; justify-content: center; }
#order-standard_cart .modal-dialog { width: 100%; max-width: 440px; margin: auto; position: relative; }
#order-standard_cart .modal-content { position: relative; background: var(--dark); border: 1px solid var(--border); border-radius: 14px; color: var(--text); box-shadow: 0 30px 80px -20px rgba(0,0,0,.8); }
#order-standard_cart .modal-body { padding: 1.75rem 1.5rem .5rem; }
#order-standard_cart .modal-footer { display: flex; gap: .6rem; justify-content: center; padding: 1rem 1.5rem 1.5rem !important; border: 0; background: transparent; }
#order-standard_cart .modal-footer .btn { min-width: 110px; }
#order-standard_cart .modal-title { color: var(--text); font-size: 1.15rem; font-weight: 700; }
#order-standard_cart .modal-title i { padding-top: 0 !important; margin-bottom: .75rem; font-size: 2rem; color: #ff7b72; }
#order-standard_cart .modal .close { position: absolute; top: .75rem; right: .75rem; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font-size: 1.4rem; line-height: 1; cursor: pointer; opacity: 1; }
#order-standard_cart .modal .close:hover { background: var(--secondary); color: var(--text); }
body.modal-open { overflow: hidden; }

/* Samenvatting: geen float meer (dan animeert WHMCS hem niet meer mee met scrollen,
   waardoor de pagina "bewoog") maar een rustig meeschuivend blok via sticky. */
#order-standard_cart .secondary-cart-body, #order-standard_cart .secondary-cart-sidebar, #order-standard_cart .cart-body, #order-standard_cart .cart-sidebar { float: none !important; }
#order-standard_cart .row:has(> .secondary-cart-sidebar), #order-standard_cart .row:has(> .cart-sidebar) { flex-wrap: nowrap; align-items: flex-start; }
#order-standard_cart #scrollingPanelContainer { margin-top: 0 !important; }
@media (min-width: 992px) {
  #order-standard_cart .secondary-cart-sidebar { position: sticky; top: 90px; align-self: flex-start; }
}
@media (max-width: 991.98px) {
  #order-standard_cart .row:has(> .secondary-cart-sidebar), #order-standard_cart .row:has(> .cart-sidebar) { flex-wrap: wrap; }
  #order-standard_cart .secondary-cart-body, #order-standard_cart .secondary-cart-sidebar { width: 100% !important; max-width: 100% !important; flex: 0 0 100%; }
}
@media (max-width: 1199.98px) {
  #order-standard_cart .cart-body { width: 100% !important; flex: 0 0 100%; }
}

/* Samenvattingsregels netjes links/rechts */
#order-standard_cart .summary-container .subtotal, #order-standard_cart .summary-container .bordered-totals > div, #order-standard_cart .summary-container .recurring-totals { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding: .45rem 0; }
#order-standard_cart .summary-container .subtotal > span, #order-standard_cart .summary-container .bordered-totals span, #order-standard_cart .summary-container .recurring-totals > span { float: none !important; }
#order-standard_cart .summary-container .recurring-totals .recurring-charges { text-align: right; }
#order-standard_cart .summary-container .total-due-today { display: flex; flex-direction: column; align-items: flex-end; gap: .15rem; margin: 1rem 0; padding: 1rem 0 0; border-top: 1px solid var(--kx-line); background: none !important; border-radius: 0 !important; }
#order-standard_cart .summary-container .total-due-today .amt { order: 2; }
#order-standard_cart .summary-container .total-due-today span:not(.amt) { order: 1; font-size: .82rem; }
#order-standard_cart .summary-container .btn-checkout { width: 100%; }
#order-standard_cart .summary-container .btn-continue-shopping { width: 100%; margin-top: .5rem; background: transparent; border: 0; color: var(--muted) !important; }
#order-standard_cart .summary-container .btn-continue-shopping:hover { color: var(--text) !important; background: transparent; }
#order-standard_cart .view-cart-items .item-price { text-align: right; }
#order-standard_cart .view-cart-items .btn-remove-from-cart { padding: .35rem; }
/* clearfix-pseudo telt anders mee als derde flex-item */
#order-standard_cart .summary-container .subtotal::after,
#order-standard_cart .summary-container .bordered-totals > div::after,
#order-standard_cart .summary-container .recurring-totals::after,
#order-standard_cart .summary-container .subtotal::before,
#order-standard_cart .summary-container .recurring-totals::before { display: none !important; content: none !important; }
#order-standard_cart .order-summary .summary-container .total-due-today .amt {
    background: none !important; border: 0 !important; padding: 0 !important; box-shadow: none !important;
    font-size: 1.7rem; font-weight: 800; color: var(--text); line-height: 1.1;
}
#order-standard_cart .order-summary #totalDueToday {
    background: none !important; border: 0 !important; padding: 0 !important; display: block !important;
    text-align: right !important; font-size: 1.7rem !important; font-weight: 800; color: var(--text) !important;
}
@media (max-width: 991.98px) {
    #order-standard_cart .secondary-cart-sidebar { margin-top: 1.5rem !important; }
}
/* Meldingen en labels zonder Bootstrap */
#order-standard_cart .alert { padding: .85rem 1.1rem; margin-bottom: 1rem; }
#order-standard_cart .label, #order-standard_cart .badge { display: inline-block; padding: .15rem .55rem; font-size: .75rem; line-height: 1.4; }
#order-standard_cart .label-default { background: var(--secondary); color: var(--muted); }
#order-standard_cart .label-info { background: rgba(43,92,255,.14); color: var(--accent); }

/* ==========================================================================
   MAKEOVER 2026 — zelfde uitstraling als de rest van kronixhosting.nl
   Merkblauw uit het logo, amber voor "populair", schuin afgesneden hoeken
   (de balken van de K) en brede koppen in Archivo.
   Staat onderaan zodat het voorgaat op de oudere regels hierboven.
   ========================================================================== */
#order-standard_cart {
    --bg: #080B17;
    --dark: #0D1122;
    --secondary: #121830;
    --border: rgba(138,160,255,.18);
    --kx-line: rgba(138,160,255,.12);
    --kx-field: #0B0F20;
    --text: #EEF2FF;
    --muted: #9AA5C7;
    --accent: #2B5CFF;
    --accent-hover: #1E47E0;
    --accent-soft: #93ABFF;
    --signal: #FFB23E;
    --success: #22C55E;
    --danger: #EF4444;
    --warning: #F59E0B;
    --radius: 6px;
    --radius-lg: 8px;
    --radius-xl: 10px;
    --kx-cut: 12px;
    font-family: var(--kx-font, 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif);
    font-size: 15px;
}

/* Links leesbaar op donker */
#order-standard_cart a,
#order-standard_cart .btn-link,
#order-standard_cart .kxc-guest a,
#order-standard_cart .kxc-loginwarn a { color: var(--accent-soft) !important; }
#order-standard_cart a:hover,
#order-standard_cart .btn-link:hover { color: #C3D0FF !important; }
#order-standard_cart a.btn-primary, #order-standard_cart a.btn-checkout, #order-standard_cart a.btn-success { color: #fff !important; }
#order-standard_cart a.btn-default, #order-standard_cart a.btn-secondary, #order-standard_cart a.btn-continue-shopping { color: var(--text) !important; }
#order-standard_cart a:focus-visible,
#order-standard_cart button:focus-visible,
#order-standard_cart input:focus-visible,
#order-standard_cart select:focus-visible { outline-color: var(--accent-soft); }

/* ── Koppen ── */
#order-standard_cart .header-lined h1,
#order-standard_cart .font-size-36,
#order-standard_cart .kxc-page-title,
#order-standard_cart .kxc-checkout-title,
.kx-cart-title {
    font-family: var(--kx-font, 'Archivo', system-ui, sans-serif) !important;
    font-size: clamp(1.8rem, 3.6vw, 2.6rem) !important;
    font-weight: 800 !important;
    font-stretch: 112%;
    letter-spacing: -.03em !important;
    line-height: 1.05 !important;
    color: var(--text, #EEF2FF) !important;
}
#order-standard_cart .kxc-page-tagline,
#order-standard_cart .kxc-checkout-subtitle,
.kx-cart-sub { font-size: 1rem !important; color: var(--muted, #9AA5C7) !important; }
#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading .primary-bg-color,
#order-standard_cart .kxc-section-label,
#order-standard_cart .kxc-section-label span {
    font-size: 1rem !important; font-weight: 700 !important; font-stretch: 110%;
    text-transform: none !important; letter-spacing: 0 !important; color: var(--text) !important;
}
#order-standard_cart .kxc-section-label {
    display: flex; align-items: center; gap: .6rem; margin: 2rem 0 1rem;
}
#order-standard_cart .kxc-section-label::before { content: ""; width: 18px; height: 2px; background: var(--accent); flex-shrink: 0; }

/* ── Kaarten: strakke hoeken ── */
#order-standard_cart .panel,
#order-standard_cart .card,
#order-standard_cart .kx-card,
#order-standard_cart .field-container,
#order-standard_cart .product-info,
#order-standard_cart .panel-addon,
#order-standard_cart .account,
#order-standard_cart .paymethod-info,
#order-standard_cart .cc-input-container,
#order-standard_cart .apply-credit-container,
#order-standard_cart .checkout-security-msg,
#order-standard_cart .domain-checker-container,
#order-standard_cart .domain-selection-options .option,
#order-standard_cart .spotlight-tlds .spotlight-tld,
#order-standard_cart .suggested-domains,
#order-standard_cart .view-cart-items,
#order-standard_cart .view-cart-items-header,
#order-standard_cart .alert { border-radius: 0 !important; }
#order-standard_cart .account.active,
#order-standard_cart .domain-selection-options .option-selected { border-color: var(--accent) !important; background: rgba(43,92,255,.08) !important; box-shadow: inset 3px 0 0 var(--accent); }

/* ── Knoppen ── */
#order-standard_cart .btn { border-radius: 0 !important; font-weight: 650; }
#order-standard_cart .btn-primary,
#order-standard_cart .btn-success,
#order-standard_cart .btn-checkout,
#order-standard_cart #btnCompleteOrder,
#order-standard_cart .kxc-order-btn-featured,
#order-standard_cart .kxc-auth-btn-primary.kxc-auth-btn-active {
    background: var(--accent) !important; border-color: var(--accent) !important; color: #fff !important;
    clip-path: polygon(0 0, calc(100% - var(--kx-cut)) 0, 100% var(--kx-cut), 100% 100%, var(--kx-cut) 100%, 0 calc(100% - var(--kx-cut)));
}
#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-success:hover,
#order-standard_cart .btn-checkout:hover,
#order-standard_cart #btnCompleteOrder:hover,
#order-standard_cart .kxc-order-btn-featured:hover { background: var(--accent-hover) !important; border-color: var(--accent-hover) !important; color: #fff !important; }
#order-standard_cart .btn-primary:focus-visible,
#order-standard_cart .btn-checkout:focus-visible,
#order-standard_cart #btnCompleteOrder:focus-visible { outline: none !important; box-shadow: inset 0 0 0 2px #fff !important; }
#order-standard_cart .btn-default,
#order-standard_cart .btn-secondary,
#order-standard_cart .btn-continue-shopping,
#order-standard_cart .kxc-order-btn,
#order-standard_cart .kxc-auth-btn {
    background: transparent; border: 1px solid rgba(138,160,255,.3) !important; color: var(--text) !important; border-radius: 0 !important;
}
#order-standard_cart .btn-default:hover,
#order-standard_cart .btn-secondary:hover,
#order-standard_cart .kxc-order-btn:hover,
#order-standard_cart .kxc-auth-btn:hover { background: rgba(43,92,255,.1) !important; border-color: var(--accent-soft) !important; color: #fff !important; }
#order-standard_cart .kxc-auth-btn-primary:not(.kxc-auth-btn-active) { color: var(--accent-soft) !important; border-color: rgba(43,92,255,.55) !important; }
#order-standard_cart .kxc-auth-btn-secondary.kxc-auth-btn-active { background: var(--secondary) !important; color: var(--text) !important; }
#order-standard_cart .btn-remove-from-cart { color: #fca5a5 !important; }

/* ── Formulieren ── */
#order-standard_cart .form-control,
#order-standard_cart select.form-control,
#order-standard_cart textarea.form-control {
    background: var(--kx-field) !important; border: 1px solid rgba(138,160,255,.2) !important; border-radius: 6px !important;
}
#order-standard_cart .form-control:hover { border-color: rgba(147,171,255,.35) !important; }
#order-standard_cart .form-control:focus { border-color: var(--accent-soft) !important; box-shadow: 0 0 0 3px rgba(43,92,255,.25) !important; }

/* ── Meldingen ── */
#order-standard_cart .alert-info { background: rgba(43,92,255,.1) !important; border-color: rgba(43,92,255,.35) !important; color: var(--accent-soft) !important; }
#order-standard_cart .alert-success { background: rgba(34,197,94,.1) !important; border-color: rgba(34,197,94,.35) !important; color: #86efac !important; }
#order-standard_cart .alert-warning { background: rgba(245,158,11,.1) !important; border-color: rgba(245,158,11,.38) !important; color: #fcd34d !important; }
#order-standard_cart .alert-danger  { background: rgba(239,68,68,.1) !important; border-color: rgba(239,68,68,.38) !important; color: #fca5a5 !important; }
#order-standard_cart .label, #order-standard_cart .badge { border-radius: 0 !important; }
#order-standard_cart .label-info { background: rgba(43,92,255,.16) !important; color: var(--accent-soft) !important; }

/* ── Zijbalk ── */
#order-standard_cart .cart-sidebar .list-group-item { border-radius: 0 !important; }
#order-standard_cart .cart-sidebar .list-group-item.active {
    background: rgba(43,92,255,.12) !important; color: #fff !important; box-shadow: inset 3px 0 0 var(--accent);
}

/* ── Productoverzicht: zelfde kaarten als op de productpagina's ── */
.kxc-products-grid { gap: 1rem !important; }
.kxc-product-card {
    background: #0D1122 !important; border: 1px solid rgba(138,160,255,.22) !important; border-radius: 0 !important;
    padding: 1.5rem 1.4rem 1.4rem !important; box-shadow: none !important;
}
.kxc-product-card:hover { transform: none !important; border-color: rgba(147,171,255,.45) !important; box-shadow: none !important; }
.kxc-product-featured { border-color: #2B5CFF !important; box-shadow: inset 0 3px 0 #2B5CFF !important; }
.kxc-popular-badge {
    left: auto !important; right: 1.1rem; top: 0 !important; transform: translateY(-50%);
    background: #FFB23E !important; color: #1A1204 !important; border-radius: 0 !important;
    font-size: .78rem !important; padding: .28rem .6rem !important;
}
.kxc-product-name { font-size: 1.1rem !important; font-weight: 700 !important; font-stretch: 108%; }
.kxc-qty-badge { border-radius: 0 !important; }
.kxc-product-price { border-bottom: 0 !important; padding-bottom: 0 !important; }
.kxc-price-amount { font-size: 2rem !important; font-weight: 800 !important; font-stretch: 115%; letter-spacing: -.035em !important; font-variant-numeric: tabular-nums; }
.kxc-price-annual { color: #86efac !important; }
/* Specificaties als rijen */
.kxc-spec-grid { display: block !important; border-top: 1px solid rgba(138,160,255,.12); }
.kxc-spec-box {
    flex-direction: row !important; justify-content: space-between; align-items: baseline; gap: .75rem;
    background: none !important; border: 0 !important; border-bottom: 1px solid rgba(138,160,255,.12) !important; border-radius: 0 !important;
    padding: .55rem 0 !important;
}
.kxc-spec-label { font-size: .86rem !important; color: #9AA5C7 !important; }
.kxc-spec-value { font-size: .88rem !important; text-align: right; white-space: normal !important; }
.kxc-feature-list ul li::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B5CFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
}
.kxc-feature-list ul li { color: #EEF2FF !important; }
.kxc-order-btn { min-height: 46px !important; }

/* ── Kop en stappen van de bestelflow ── */
.kx-cart-top {
    position: relative; background: #080B17 !important; padding-top: calc(70px + 2.75rem) !important;
}
.kx-cart-top::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
        linear-gradient(rgba(138,160,255,.12) 1px, transparent 1px) 0 0 / 100% 64px,
        linear-gradient(90deg, rgba(138,160,255,.12) 1px, transparent 1px) 0 0 / 64px 100%;
    opacity: .45;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 90%);
    mask-image: linear-gradient(180deg, #000, transparent 90%);
}
.kx-cart-top-in { position: relative; max-width: 1100px !important; }
.kx-steps { gap: .6rem !important; margin-bottom: 1.5rem !important; }
.kx-steps li { color: #9AA5C7 !important; font-weight: 550; }
.kx-steps li + li::before { width: 36px !important; background: rgba(138,160,255,.25) !important; }
.kx-step-dot {
    width: 30px !important; height: 30px !important; border-radius: 0 !important;
    background: #080B17 !important; border: 1px solid rgba(138,160,255,.3) !important; color: #EEF2FF !important;
    font-size: .8rem !important; font-variant-numeric: tabular-nums;
    clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px));
}
.kx-steps li.is-current { color: #EEF2FF !important; }
.kx-steps li.is-current .kx-step-dot { background: #2B5CFF !important; border-color: #2B5CFF !important; color: #fff !important; box-shadow: none !important; }
.kx-steps li.is-done { color: #C3CBE6 !important; }
.kx-steps li.is-done .kx-step-dot { background: #22C55E !important; border-color: #22C55E !important; color: #052e12 !important; }

/* ── Winkelwagen en samenvatting ── */
#order-standard_cart .view-cart-items-header { background: #121830 !important; font-size: .85rem !important; }
#order-standard_cart .view-cart-items .item-title { font-size: 1.02rem !important; font-weight: 700 !important; }
#order-standard_cart .view-cart-items .item-price span { font-variant-numeric: tabular-nums; }
#order-standard_cart .order-summary,
#order-standard_cart .kxc-summary-card,
.kxc-checkout-summary .order-summary {
    border-radius: 0 !important; box-shadow: none !important;
    border: 1px solid rgba(138,160,255,.22) !important;
    clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
}
#order-standard_cart .order-summary h2,
.kxc-checkout-summary .order-summary h2,
#order-standard_cart .kxc-summary-header {
    background: #121830 !important; text-transform: none !important; letter-spacing: 0 !important;
    font-size: 1rem !important; font-weight: 700 !important; font-stretch: 110%; color: #EEF2FF !important;
}
#order-standard_cart .summary-container .total-due-today .amt,
#order-standard_cart .order-summary #totalDueToday,
#order-standard_cart .kxc-summary-total-amount {
    font-size: 2rem !important; font-weight: 800 !important; font-stretch: 115%; letter-spacing: -.035em; font-variant-numeric: tabular-nums;
}

/* ── Inlog- en waarschuwingsblokken ── */
#order-standard_cart .kxc-guest { background: rgba(43,92,255,.08) !important; border-color: rgba(43,92,255,.32) !important; border-radius: 0 !important; }
#order-standard_cart .kxc-loginwarn { border-radius: 0 !important; }
.kxc-modal-box, #order-standard_cart .modal-content { border-radius: 0 !important; clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%); }

@media (max-width: 767px) {
    .kx-cart-top { padding-top: calc(70px + 1.5rem) !important; }
    .kx-steps li + li::before { width: 16px !important; }
}
@media (max-width: 480px) {
    /* custom.css van het thema geeft main-content hier al 80px ruimte */
    .kx-cart-top { padding-top: 1.25rem !important; }
}
@media (max-width: 480px) {
    /* Geen dubbele ruimte onder de header op kleine telefoons */
    .kxc-checkout-wrap { padding-top: 1.5rem !important; }
    #order-standard_cart:not(.kx-has-hero) .cart-body,
    #order-standard_cart:not(.kx-has-hero) .secondary-cart-body,
    #order-standard_cart:not(.kx-has-hero) .secondary-cart-sidebar { padding-top: 1.25rem !important; }
}

/* ==========================================================================
   CART — RONDE 2 (configureren, bevestiging, vertrouwensblok)
   ========================================================================== */

/* Ruimte onder de vaste header, gelijk voor alle stappen */
.kxc-page-header { padding-top: calc(70px + 2.5rem); margin-bottom: 2rem !important; }
.kxc-checkout-wrap { padding-top: calc(70px + 2.5rem) !important; }
@media (max-width: 767px) {
    .kxc-page-header { padding-top: calc(70px + 1.5rem); }
    .kxc-checkout-wrap { padding-top: calc(70px + 1.5rem) !important; }
}
@media (max-width: 480px) {
    /* custom.css van het thema geeft hier al 80px */
    .kxc-page-header { padding-top: 1.25rem; }
    .kxc-checkout-wrap { padding-top: 1.25rem !important; }
}
/* Op de configuratiepagina staat de kop al bovenaan; geen extra ruimte in de kolommen */
#order-standard_cart .kxc-page-header ~ form .secondary-cart-body,
#order-standard_cart .kxc-page-header ~ form .secondary-cart-sidebar { padding-top: 0 !important; }

/* ── Configureren: product als kaart ── */
#order-standard_cart .product-info {
    position: relative; margin-bottom: 1.5rem !important; padding: 1.4rem 1.5rem !important;
    background: #0D1122 !important; border: 1px solid rgba(138,160,255,.22) !important;
    box-shadow: inset 3px 0 0 #2B5CFF;
}
#order-standard_cart .product-info .product-title {
    margin: 0 0 .4rem !important; font-size: 1.35rem !important; font-weight: 800 !important; font-stretch: 112%;
    letter-spacing: -.02em; color: #EEF2FF !important;
}
#order-standard_cart .product-info p:not(.product-title) { margin: 0 !important; color: #9AA5C7 !important; line-height: 1.6; }
#order-standard_cart .field-container,
#order-standard_cart .product-configurable-options,
#order-standard_cart .addon-products .panel-addon {
    background: #0D1122 !important; border: 1px solid rgba(138,160,255,.18) !important;
}
#order-standard_cart .product-configurable-options { padding: 1.25rem 1.25rem .25rem; margin-bottom: 1.5rem; }
#order-standard_cart .sub-heading { margin: 2rem 0 1rem !important; border: 0 !important; }
#order-standard_cart .sub-heading::before { display: none !important; }
#order-standard_cart .sub-heading span { display: inline-flex; align-items: center; gap: .6rem; background: none !important; padding: 0 !important; }
#order-standard_cart .sub-heading span::before { content: ""; width: 18px; height: 2px; background: #2B5CFF; }
#order-standard_cart .panel-addon { transition: border-color .2s ease; }
#order-standard_cart .panel-addon:hover { border-color: rgba(147,171,255,.45) !important; }
#order-standard_cart .panel-addon-selected { border-color: #2B5CFF !important; box-shadow: inset 0 3px 0 #2B5CFF; }

/* ── Overzicht (ordersummary) ── */
#order-standard_cart .summary-container { padding: 1.1rem 1.25rem 1.25rem !important; }
#order-standard_cart .summary-container .product-name { display: block; font-size: 1.05rem; font-weight: 700; color: #EEF2FF; }
#order-standard_cart .summary-container .product-group { display: block; margin-bottom: .9rem; font-size: .88rem; color: #9AA5C7; }
#order-standard_cart .summary-container .clearfix { padding: .45rem 0; border-bottom: 1px solid rgba(138,160,255,.1); font-size: .92rem; }
#order-standard_cart .summary-container .summary-totals { margin-top: .5rem; padding-top: .25rem; }
#order-standard_cart .summary-container .total-due-today { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(138,160,255,.18); text-align: right; }
#order-standard_cart .summary-container .total-due-today span:not(.amt) { display: block; font-size: .85rem; color: #9AA5C7; }
#order-standard_cart #btnCompleteProductConfig { width: 100%; margin-top: 1rem; }

/* ── Vertrouwensblok ── */
.kxc-trust {
    margin-top: 1.25rem; padding: 1rem 1.1rem;
    border: 1px solid rgba(138,160,255,.14); background: rgba(13,17,34,.6); text-align: left;
}
.kxc-trust-list { list-style: none; margin: 0 0 .9rem; padding: 0; display: grid; gap: .45rem; }
.kxc-trust-list li { display: flex; align-items: center; gap: .55rem; font-size: .86rem; color: #C3CBE6; }
.kxc-trust-list i { width: 16px; text-align: center; color: #93ABFF; }
.kxc-trust-pay { display: flex; flex-wrap: wrap; gap: .35rem; }
.kxc-trust-pay img {
    height: 26px; width: auto; padding: 4px 6px; background: #0D1122; border: 1px solid rgba(138,160,255,.16);
}

/* ── Bevestiging ── */
.kxc-done-head { text-align: center; }
.kxc-done-head .kx-steps { justify-content: center; }
.kxc-done-icon {
    width: 72px; height: 72px; margin: .5rem auto 1.25rem;
    display: flex; align-items: center; justify-content: center;
    background: #22C55E; color: #052e12; font-size: 1.8rem;
    clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 16px 100%, 0 calc(100% - 16px));
    animation: kxc-pop .6s cubic-bezier(.34,1.56,.64,1) both .15s;
}
@keyframes kxc-pop { from { transform: scale(.4); opacity: 0; } to { transform: none; opacity: 1; } }
.kxc-done-card {
    max-width: 640px; margin: 0 auto 1.5rem; background: #0D1122; border: 1px solid rgba(138,160,255,.22);
    clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
}
.kxc-done-number {
    display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
    padding: 1.25rem 1.5rem; border-bottom: 1px solid rgba(138,160,255,.14); background: #121830;
}
.kxc-done-number .lbl { color: #9AA5C7; font-size: .95rem; }
.kxc-done-number .val { font-size: 1.6rem; font-weight: 800; font-stretch: 115%; letter-spacing: -.02em; color: #EEF2FF; font-variant-numeric: tabular-nums; }
.kxc-done-text { margin: 0 !important; padding: 1.25rem 1.5rem; color: #C3CBE6 !important; line-height: 1.65; }
#order-standard_cart .kxc-done-head ~ .alert { max-width: 640px; margin-left: auto; margin-right: auto; }
.kxc-done-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: .75rem; margin: 2rem 0 1rem; }

@media (prefers-reduced-motion: reduce) { .kxc-done-icon { animation: none; } }
#order-standard_cart .product-info .product-title { background: none !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; }
#order-standard_cart .secondary-cart-body > .field-container { padding: 1.1rem 1.25rem .35rem !important; margin-bottom: 1.25rem; }
#order-standard_cart .field-container label { color: #EEF2FF; font-weight: 600; }
