@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');

body { font-family: 'Inter', sans-serif !important; background: #f0f2f7 !important; }

/* Header */
.navbar { background: #1e2433 !important; padding: 10px 0 !important; }
.navbar-brand img { filter: brightness(10) !important; }
.navbar-brand span { color: #fff !important; font-weight: 600 !important; }
.nav-link { color: rgba(255,255,255,0.6) !important; font-size: 13.5px !important; }
.nav-link:hover { color: #fff !important; }
.btn-outline-primary { border-color: rgba(255,255,255,0.3) !important; color: rgba(255,255,255,0.8) !important; border-radius: 7px !important; font-size: 13px !important; }
.btn-outline-primary:hover { background: rgba(255,255,255,0.1) !important; color: #fff !important; }

/* Breadcrumb */
.breadcrumb { background: transparent !important; font-size: 12.5px !important; padding: 0 !important; }
.breadcrumb-item a { color: #4f80ff !important; text-decoration: none !important; }
.breadcrumb-item.active { color: #96a0b0 !important; }

/* Cards */
.card { background: #fff !important; border: 1px solid #e4e8f0 !important; border-radius: 11px !important; box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important; }
.card-header { background: #fafbfd !important; border-bottom: 1px solid #f0f3f8 !important; padding: 14px 20px !important; font-size: 14px !important; font-weight: 600 !important; color: #1e2433 !important; }
.card-body { padding: 20px !important; }

/* Accordeon */
.accordion-item { background: #fff !important; border: 1px solid #e4e8f0 !important; border-radius: 9px !important; margin-bottom: 8px !important; overflow: hidden !important; }
.accordion-button { background: #fafbfd !important; color: #3d4657 !important; font-size: 13.5px !important; font-weight: 500 !important; font-family: 'Inter', sans-serif !important; box-shadow: none !important; padding: 13px 18px !important; }
.accordion-button:not(.collapsed) { background: #fafbfd !important; color: #1e2433 !important; box-shadow: none !important; border-bottom: 1px solid #f0f3f8 !important; }
.accordion-button:focus { box-shadow: none !important; }
.accordion-button:hover { background: #f6f8fc !important; }
.accordion-button::after { opacity: 0.4 !important; filter: none !important; }
.accordion-body { background: #fff !important; padding: 20px !important; color: #2e3749 !important; font-family: 'Inter', sans-serif !important; }

/* Badges */
.badge.bg-info { background: #eef3ff !important; color: #4f80ff !important; font-weight: 600 !important; border-radius: 5px !important; }
.badge.bg-success { background: #e8f5ee !important; color: #2d8a55 !important; font-weight: 600 !important; border-radius: 5px !important; }

/* List group items */
.list-group-item { border: 1.5px solid #e4e8f0 !important; border-radius: 8px !important; margin-bottom: 7px !important; padding: 12px 16px !important; font-size: 13.5px !important; font-weight: 500 !important; color: #2e3749 !important; transition: border-color 0.12s, background 0.12s !important; }
.list-group-item:hover { border-color: #afc5ff !important; background: #f4f8ff !important; }

/* Knoppen */
.btn-primary { background: #4f80ff !important; border-color: #4f80ff !important; border-radius: 8px !important; font-weight: 500 !important; font-family: 'Inter', sans-serif !important; }
.btn-primary:hover { background: #3d6ef0 !important; border-color: #3d6ef0 !important; }

/* Formulieren */
.form-control, .form-select { border: 1px solid #dde2ea !important; border-radius: 8px !important; font-size: 13.5px !important; font-family: 'Inter', sans-serif !important; }
.form-control:focus, .form-select:focus { border-color: #4f80ff !important; box-shadow: 0 0 0 3px rgba(79,128,255,0.12) !important; }
.form-label { font-size: 12px !important; font-weight: 500 !important; color: #6e7a8a !important; }

/* Footer */
footer, #footer { border-top: 1px solid #e4e8f0 !important; color: #b0b8c8 !important; font-size: 11.5px !important; }
footer a, #footer a { color: #b0b8c8 !important; text-decoration: none !important; }

/* ── Header verfijning ── */
.navbar { padding: 8px 0 !important; }
.navbar .container { max-width: 100% !important; padding: 0 24px !important; }
.navbar-brand { font-size: 15px !important; font-weight: 600 !important; letter-spacing: -0.3px !important; }

/* Taalkeuze */
.js-language-selector { background: rgba(255,255,255,0.08) !important; border: 1px solid rgba(255,255,255,0.15) !important; color: rgba(255,255,255,0.75) !important; border-radius: 7px !important; font-size: 12.5px !important; padding: 5px 10px !important; }

/* Page container minder smal */
.container { max-width: 960px !important; }

/* Page titel */
h1 { font-size: 20px !important; font-weight: 600 !important; color: #1e2433 !important; letter-spacing: -0.3px !important; }

/* Accordeon items niet in een card wrapper */
#orderbutton { border: none !important; box-shadow: none !important; background: transparent !important; }
#orderbutton .card-body { padding: 0 !important; background: transparent !important; }

/* Accordion items */
.accordion { display: flex !important; flex-direction: column !important; gap: 8px !important; }
.accordion-item { margin-bottom: 0 !important; }

/* ── Header full width ── */
header { width: 100vw !important; margin-left: calc(-50vw + 50%) !important; }

/* ── Categorie titel ── */
.accordion-body h5 {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.09em !important;
  color: #96a0b0 !important;
  margin-bottom: 10px !important;
}

/* ── Product links ── */
.list-group { display: flex !important; flex-direction: column !important; gap: 7px !important; }
.list-group-item {
  border-radius: 8px !important;
  border: 1.5px solid #e4e8f0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  color: #2e3749 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}
.list-group-item:hover { border-color: #4f80ff !important; background: #f4f8ff !important; color: #1e2433 !important; }
.list-group-item .svg-icon { width: 16px !important; height: 16px !important; fill: #4f80ff !important; flex-shrink: 0 !important; }

/* ── Accordion strakker ── */
.accordion-button .svg-icon { width: 16px !important; height: 16px !important; fill: currentColor !important; opacity: 0.5 !important; flex-shrink: 0 !important; }
.accordion-button.collapsed .badge { opacity: 0.7 !important; }

/* ── Page wrapper padding ── */
.container > .row { padding-top: 20px !important; }

/* ── Content breder ── */
.col-12.col-md-9 { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
.col-3 { display: none !important; }
.row { margin: 0 !important; }

/* Main container padding */
.container { padding: 0 40px !important; max-width: 1200px !important; }

/* Kaart max breedte */
.card.mb-4 { max-width: 780px !important; margin: 0 auto !important; }

/* ── Header logo en nav ── */
.navbar-brand { color: #fff !important; font-weight: 700 !important; font-size: 16px !important; letter-spacing: -0.3px !important; }
.navbar-nav .nav-link { color: rgba(255,255,255,0.6) !important; font-size: 13.5px !important; font-weight: 400 !important; padding: 6px 12px !important; border-radius: 6px !important; }
.navbar-nav .nav-link:hover { color: #fff !important; background: rgba(255,255,255,0.07) !important; }
.btn-outline-primary { border-color: #4f80ff !important; color: #4f80ff !important; font-size: 13px !important; padding: 6px 14px !important; border-radius: 7px !important; }
.btn-outline-primary:hover { background: rgba(255,255,255,0.1) !important; border-color: rgba(255,255,255,0.4) !important; color: #fff !important; }

/* ── Kaart breder ── */
.card.mb-4 { max-width: 860px !important; }

/* ── Accordeon body open state ── */
.accordion-item:has(.accordion-collapse.show) {
  border-color: #d0d8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
}

/* ── Categorie label uppercase subtiel ── */
.accordion-body h5 {
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #96a0b0 !important;
  font-weight: 600 !important;
  margin-bottom: 10px !important;
}

/* ── Product link pijl blauw ── */
.list-group-item .svg-icon { color: #4f80ff !important; fill: #4f80ff !important; }

/* ── Accordion header active dot ── */
.accordion-button:not(.collapsed)::before {
  content: '' !important;
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #4f80ff !important;
  margin-right: 10px !important;
  flex-shrink: 0 !important;
}

/* ── Configuratie stap ── */
.accordion-body .btn-dark,
.accordion-body .btn-secondary,
.accordion-body button[type="button"]:not(.btn-link) {
  background: #4f80ff !important;
  border-color: #4f80ff !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
}

.accordion-body .btn-dark:hover,
.accordion-body button[type="button"]:not(.btn-link):hover {
  background: #3d6ef0 !important;
  border-color: #3d6ef0 !important;
}

/* Tab knoppen (Register/Transfer) */
.accordion-body .nav-tabs .nav-link {
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  color: #8c96a8 !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  padding: 8px 14px !important;
}

.accordion-body .nav-tabs .nav-link.active {
  border-bottom-color: #4f80ff !important;
  color: #4f80ff !important;
  background: transparent !important;
}

.accordion-body .nav-tabs {
  border-bottom: 1px solid #e4e8f0 !important;
  margin-bottom: 16px !important;
}

/* Domein input */
.accordion-body .input-group .form-control {
  border-right: none !important;
}

.accordion-body .input-group .form-select {
  border-le

cat >> /home/veloxhos/klant.veloxhosting.nl/themes/velox/assets/css/velox.css << 'EOF'

/* ── Alle knoppen blauw ── */
.btn-dark {
  background-color: #4f80ff !important;
  border-color: #4f80ff !important;
  color: #fff !important;
  border-radius: 8px !important;
}
.btn-dark:hover {
  background-color: #3d6ef0 !important;
  border-color: #3d6ef0 !important;
}

/* ── Ingelogd: sidebar zichtbaar ── */
.col-3 { display: block !important; }

#sidebarMenu .nav-link {
  color: #4a5568 !important;
  font-size: 13.5px !important;
  padding: 8px 12px !important;
  border-radius: 7px !important;
  margin-bottom: 2px !important;
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
}

#sidebarMenu .nav-link:hover {
  background: rgba(79,128,255,0.08) !important;
  color: #2e3749 !important;
}

#sidebarMenu .nav-link.velox-active,
#sidebarMenu .nav-link.active {
  background: rgba(79,128,255,0.12) !important;
  color: #3b65e8 !important;
  font-weight: 500 !important;
}

#sidebarMenu .svg-icon {
  width: 15px !important;
  height: 15px !important;
  fill: currentColor !important;
  opacity: 0.6 !important;
}

/* Rekeningsaldo blokje */
#sidebarMenu .pt-3 {
  padding: 12px 12px 4px !important;
  border-top: 1px solid #e4e8f0 !important;
  margin-top: 8px !important;
}

#sidebarMenu h5.text-secondary {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #96a0b0 !important;
}

#sidebarMenu h4 {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1e2433 !important;
}

/* ── Sidebar tekst leesbaar ── */
.col-3 a.nav-link,
.col-3 .nav-link,
#sidebarMenu a,
#sidebarMenu .nav-link,
.offcanvas-body .nav-link {
  color: #3d4657 !important;
  opacity: 1 !important;
  visibility: visible !important;
  font-size: 13.5px !important;
}

.col-3 a.nav-link:hover,
.col-3 .nav-link:hover {
  color: #1e2433 !important;
  background: rgba(79,128,255,0.08) !important;
}

/* Sidebar container achtergrond */
.col-3 { background: transparent !important; }
.col-3 .offcanvas-body { background: transparent !important; }

/* Nav items niet wegschuiven */
.col-3 .nav { opacity: 1 !important; transform: none !important; }

/* ── Sidebar fix exact selector ── */
.offcanvas-item > a.nav-link,
.offcanvas-item a {
  color: #3d4657 !important;
  font-size: 13.5px !important;
  padding: 8px 12px !important;
  border-radius: 7px !important;
  margin-bottom: 2px !important;
}

.offcanvas-item > a.nav-link:hover,
.offcanvas-item a:hover {
  background: rgba(79,128,255,0.08) !important;
  color: #1e2433 !important;
}

.offcanvas-item > a.nav-link.velox-active,
.offcanvas-item > a.nav-link.active {
  background: rgba(79,128,255,0.12) !important;
  color: #3b65e8 !important;
  font-weight: 500 !important;
}

/* ── Sidebar noodfix ── */
body .offcanvas-item a,
body .offcanvas-item > a,
body li.offcanvas-item a.nav-link,
body ul.nav a.nav-link {
  color: #2e3749 !important;
}

/* ── Taalkeuze selector match profiel knop ── */
.vx-topbar .js-language-selector,
select.js-language-selector {
    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233d4657'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 10px !important;
    border: 1px solid #e4e8f0 !important;
    border-radius: 20px !important;
    color: #3d4657 !important;
    font-size: 13px !important;
    padding: 6px 32px 6px 14px !important;
    height: 36px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    max-width: 180px !important;
    cursor: pointer !important;
}
.vx-topbar .js-language-selector:hover,
select.js-language-selector:hover {
    background-color: #f6f8fc !important;
    border-color: #d0d8e8 !important;
}

/* Verberg interne order sidebar wanneer embedded in dashboard */
.vx-content .velox-order-sidebar { display: none !important; }
.vx-content .velox-order-shell { grid-template-columns: 1fr !important; display: block !important; }
.vx-content .velox-order-topbar { display: none !important; }
.vx-content .velox-order-main { padding: 0 !important; }
.vx-content .velox-order-stage { padding: 0 !important; }

/* Order pagina topbar hoogte vergroten voor stappen */
.order-index .vx-topbar {
    height: auto !important;
    min-height: 70px !important;
    padding: 10px 28px !important;
    align-items: center !important;
}

/* Stappen labels zichtbaar maken */
.order-index .vx-topbar {
    overflow: visible !important;
    min-height: 80px !important;
    align-items: flex-start !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}
.order-index #velox-steps {
    overflow: visible !important;
}
.order-index .velox-step-label {
    position: relative !important;
    white-space: nowrap !important;
}

/* Taalschakelaar styling */

/* Taalschakelaar TomSelect fix */
.vx-topbar .ts-wrapper.js-language-selector {
    min-width: 220px !important;
    max-width: 220px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
}
.vx-topbar .ts-wrapper.js-language-selector .ts-control {
    background-color: #f0f2f7 !important;
    border: 1px solid #d0d8e8 !important;
    border-radius: 20px !important;
    color: #2e3749 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 30px 0 14px !important;
    overflow: hidden !important;
}
.vx-topbar .ts-control .item {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 36px !important;
}

/* Login knop fix in witte topbar */
.vx-topbar .btn-outline-primary {
    border-color: #4f80ff !important;
    color: #4f80ff !important;
    background: transparent !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    padding: 5px 14px !important;
}
.vx-topbar .btn-outline-primary:hover {
    background: #4f80ff !important;
    color: #fff !important;
}

/* Taalknop hoogte fix - onderste rand zichtbaar */
.vx-topbar .ts-wrapper.js-language-selector {
    height: 34px !important;
}
.vx-topbar .ts-wrapper.js-language-selector .ts-control {
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
}

/* Topbar overflow fix */
.vx-topbar {
    overflow: visible !important;
}

/* Order pagina topbar padding fix */
.order-index .vx-topbar {
    padding-bottom: 10px !important;
    padding-top: 10px !important;
    align-items: center !important;
}
