html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* Farben (primary, Links, Buttons) kommen aus Design/Mdrix/mdrix.css */

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
/* Kopfbereich der Inhaltsseiten (früher Inline-Style mit height: 60%) */
.md-hero {
    background-image: url('/Design/Mdrix/Img/index/Mdrix_Startbild.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    display: table;
    width: 100%;
    min-height: 60vh;
}

/* Sprungziele (z.B. aus der Suche) nicht unter der fixierten Navigation verstecken */
.md-team-member {
    scroll-margin-top: 5rem;
}

.md-team-member:target {
    outline: 2px solid var(--bs-primary);
    outline-offset: 4px;
}

/* Globale Suche: Ergebnisfenster unter der fixierten Navigation */
.md-search-backdrop {
    position: fixed;
    inset: 56px 0 0 0;
    z-index: 1025;
}

.md-search-panel {
    position: fixed;
    top: 56px;
    left: 0;
    right: 0;
    max-height: calc(100vh - 56px);
    overflow-y: auto;
    z-index: 1029;
    padding-bottom: 2rem;
}

.md-search-thumb {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 0.25rem;
}

.md-search-panel .list-group-item.active {
    background-color: #662d91;
    border-color: #662d91;
}

/* Veranstaltungen */
.md-event-date {
    min-width: 4rem;
    border: 1px solid #662d91;
    border-radius: 0.375rem;
    padding: 0.25rem 0.5rem;
    color: #662d91;
    align-self: flex-start;
}

.md-event-day {
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.1;
}

.md-event-month {
    text-transform: uppercase;
    font-size: 0.85rem;
}

/* Vergangene Veranstaltungen dezent statt grau hinterlegt */
.md-event-card.md-event-past {
    opacity: 0.7;
}

.md-event-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.25);
}

.md-event-map {
    width: 100%;
    height: 200px;
    border: 1px solid #662d91;
    border-radius: 0.375rem;
}

.nav-pills .nav-link.active {
    background-color: #662d91;
}

.nav-pills .nav-link {
    color: #662d91;
}

/* Blog */
.md-blog-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
    background: #f3eef7;
}

.md-blog-featured .md-blog-image {
    height: 100%;
    border-top-right-radius: 0;
}

.md-blog-preview {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.md-blog-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.25);
}

/* Themen-Abzeichen liegen über dem Karten-Link und bleiben einzeln anklickbar */
.md-blog-card .md-blog-topic {
    position: relative;
    z-index: 2;
}

/* Themen-Buttons in Karten und im Beitrag kompakt */
.md-blog-topic.btn-sm {
    --bs-btn-padding-y: 0.1rem;
    --bs-btn-padding-x: 0.45rem;
    --bs-btn-font-size: 0.8rem;
}

.md-blog-content img {
    max-width: 100%;
    height: auto;
}

/* Karte wie btn-outline-primary: violetter Rahmen, beim Darüberfahren violett hinterlegt */
.md-blog-card-outline {
    border: 1px solid #662d91;
    transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
}

.md-blog-card-outline .card-footer {
    border-top-color: #662d91;
}

.md-blog-card-outline:hover {
    background-color: #662d91;
}

.md-blog-card-outline:hover .card-title,
.md-blog-card-outline:hover .card-text,
.md-blog-card-outline:hover .card-footer,
.md-blog-card-outline:hover .card-footer .text-muted {
    color: #fff !important;
}

.md-blog-card-outline:hover .card-footer .btn-outline-primary {
    color: #fff;
    border-color: #fff;
}

/* Neuerer/vorheriger Beitrag: Button und Karte teilen sich die Spalte, Karte füllt den Rest */
.md-blog-neighbor {
    display: flex;
    flex-direction: column;
}

.md-blog-neighbor .md-blog-card {
    height: auto !important;
    flex: 1 1 auto;
}

.md-blog-neighbor > .btn {
    align-self: flex-start;
}

/* Karten: Inhalt füllt die Höhe, Fußzeile immer unten (auch bei kurzen Texten) */
.md-blog-card:not(.md-blog-featured) > div {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

.md-blog-card:not(.md-blog-featured) > div > div:last-child {
    flex: 1 1 auto;
}

/* Startseite: Slider mit festem Seitenverhältnis (Bilder 1920 x 600), damit beim Laden nichts springt */
.md-start-slider .md-slide-image,
.card .md-slide-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1920 / 600;
    object-fit: cover;
    background: #f3eef7;
}

.md-slide-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    border: 3px solid #fff;
    background: rgba(102, 45, 145, 0.8);
    color: #fff;
    font-size: 2rem;
    z-index: 3;
}

.md-slide-play:hover {
    background: #662d91;
}

.md-video-body video,
.md-video-body iframe {
    width: 100%;
    height: 100%;
    border: 0;
    background: #000;
}

/* Startseite: Marken, Platzhalter, Infokarten */
.md-brand-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.25);
}

.md-placeholder-logo {
    display: block;
    aspect-ratio: 1;
}

.md-placeholder-image {
    display: block;
    height: 200px;
}

.md-placeholder-card {
    display: block;
    height: 180px;
    border-radius: 0.375rem;
}

.md-start-info {
    border-color: #662d91;
}

/* Produkte: Karten, Bilder, Kennzeichen */
.md-product-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.25);
}

.md-product-thumb,
.md-product-image,
.md-product-thumb-small {
    position: relative;
    display: block;
    aspect-ratio: 1;
    background: #fff;
}

.md-product-thumb img,
.md-product-image img,
.md-product-thumb-small img {
    width: 100%;
    height: 100%;
    /* Produktbilder aus dem ERP sind meist 300×300: nicht unscharf vergrößern */
    object-fit: scale-down;
}

.md-product-thumb {
    padding: 0.75rem;
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

.md-product-thumb-small {
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-sm);
    padding: 0.25rem;
}

.md-product-badges {
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
}

/* Beschreibung aus dem ERP (RTF → HTML): Absätze, Listen, technische Daten */
.md-product-description ul {
    padding-left: 1.25rem;
}

.md-spec-table {
    width: auto;
    max-width: 100%;
}

.md-spec-table th {
    font-weight: 600;
    padding-right: 1.5rem;
    white-space: nowrap;
    color: var(--bs-secondary-color);
}

@media (max-width: 575.98px) {
    .md-spec-table th {
        white-space: normal;
    }
}

/* Produktvideos: Vorschaubild von YouTube, abgespielt im Video-Fenster */
.md-video-card {
    border: 1px solid var(--bs-border-color);
}

.md-video-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.25);
}

.md-video-thumb {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
    border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.md-video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.md-video-thumb .md-slide-play {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    font-size: 1.25rem;
}

/* Listenpreis (mdrix.css verkleinert .fs-5, daher eigene Klasse) */
.md-price {
    font-size: 1.15rem;
    color: var(--bs-emphasis-color);
}

.md-price-card {
    max-width: 28rem;
}

/* letztes Vorschaubild: Anzahl weiterer Bilder in der Galerie */
.md-thumb-more {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(102, 45, 145, 0.7);
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    border-radius: inherit;
}

/* Downloadbereich: Eintrag aus der globalen Suche (/Download#download-…) hervorheben */
.md-download {
    scroll-margin-top: 5rem;
}

.md-download:target {
    background: rgba(102, 45, 145, 0.12);
}

/* Kundenbereich: Navigation, Belegtabellen, Kennzahlen (einheitlich für alle Seiten) */
.md-nav-customer {
    max-width: 14rem;
}

.md-customer-menu {
    min-width: 260px;
}

.md-login-menu {
    width: 280px;
}

.md-customer-nav {
    gap: 0.25rem;
    scrollbar-width: thin;
}

.md-customer-nav .nav-link {
    color: var(--bs-body-color);
    padding: 0.35rem 0.75rem;
}

.md-customer-nav .nav-link:hover {
    background: rgba(102, 45, 145, 0.08);
}

.md-customer-nav .nav-link.active {
    background: #662d91;
    color: #fff;
}

.md-doc-table th {
    font-weight: 600;
    color: var(--bs-secondary-color);
    white-space: nowrap;
}

.md-doc-table .btn-sm {
    --bs-btn-padding-y: 0.1rem;
}

.md-row-credit > td {
    background: rgba(25, 135, 84, 0.06);
}

.md-dl dt {
    font-weight: 400;
    color: var(--bs-secondary-color);
}

.md-dl dd {
    margin-bottom: 0.25rem;
}

.md-kpi {
    color: var(--bs-body-color);
}

a.md-kpi:hover,
a.md-planned:hover,
.md-package-card:hover {
    box-shadow: 0 0.25rem 0.75rem rgba(102, 45, 145, 0.2);
}

.md-planned {
    color: var(--bs-body-color);
    border-style: dashed;
}

.md-list-search {
    max-width: 32rem;
}

@media print {
    .md-customer-area .table-responsive {
        overflow: visible;
    }
}

/* Aufträge/Angebote: Entwürfe, Auswahlkarten, Artikelsuche */
.md-row-draft > td {
    background: rgba(255, 193, 7, 0.12);
}

.md-choice-card {
    cursor: pointer;
}

.md-choice-card:hover {
    border-color: #662d91;
}

.md-choice-active {
    border-color: #662d91;
    box-shadow: 0 0 0 0.15rem rgba(102, 45, 145, 0.25);
}

.md-suggestions {
    z-index: 1050;
    max-height: 22rem;
    overflow-y: auto;
}

.md-note-input {
    max-width: 28rem;
}

.md-totals {
    min-width: 18rem;
}

.md-filter-card .btn-sm {
    --bs-btn-padding-y: 0.15rem;
}

.md-legend {
    font-size: 1rem;
}

/* kleine Produktbilder in Auftrags-/Angebotslisten */
.md-doc-thumb {
    width: 32px;
    height: 32px;
    object-fit: contain;
    background: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-sm);
}

.md-doc-thumb-text {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.55rem;
    color: var(--bs-secondary-color);
    overflow: hidden;
}

/* Konditionen des angemeldeten Kunden auf der Detailseite */
.md-conditions th {
    font-weight: 600;
    color: var(--bs-secondary-color);
    font-size: 0.85rem;
}

.md-pos-thumb {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    object-fit: contain;
    background: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-sm);
}

/* Interner Bereich: Live-Protokoll mit eigener Bildlaufleiste */
.md-live-log {
    max-height: 70vh;
    overflow-y: auto;
}

/* Interner Bereich: Dialoge, Dateiablage, Zuschneiden */
.md-modal {
    background: rgba(0, 0, 0, .45);
}

.md-drop-zone {
    border: 2px dashed transparent;
    min-height: 8rem;
}

.md-drop-zone.md-drop-active {
    border-color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), .05);
}

.md-file-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 9rem;
    background: #f4f4f6 repeating-conic-gradient(#eee 0% 25%, #fff 0% 50%) 50% / 16px 16px;
    border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
    overflow: hidden;
}

.md-file-thumb img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.md-crop-container {
    background: #222;
    text-align: center;
    border-radius: .25rem;
    padding: .5rem;
}

.md-crop-stage {
    position: relative;
    display: inline-block;
    touch-action: none;
    user-select: none;
}

.md-crop-image {
    display: block;
    max-width: 100%;
    max-height: 65vh;
}

.md-crop-box {
    position: absolute;
    border: 2px solid #fff;
    box-shadow: 0 0 0 9999px rgba(0, 0, 0, .55);
    cursor: move;
    touch-action: none;
}

.md-crop-handle {
    position: absolute;
    width: 18px;
    height: 18px;
    background: #fff;
    border: 2px solid var(--bs-primary);
    border-radius: 50%;
}

.md-crop-nw { left: -10px; top: -10px; cursor: nwse-resize; }
.md-crop-ne { right: -10px; top: -10px; cursor: nesw-resize; }
.md-crop-sw { left: -10px; bottom: -10px; cursor: nesw-resize; }
.md-crop-se { right: -10px; bottom: -10px; cursor: nwse-resize; }

.md-slider-thumb {
    max-height: 4.5rem;
}

/* Vorschau: Slider schmaler als auf der Startseite, Beschriftung trotzdem lesbar */
.md-slider-preview {
    font-size: .85rem;
}

/* Blog-Editor */
.md-blog-thumb {
    max-height: 3.5rem;
}

.md-code {
    font-family: var(--bs-font-monospace);
    font-size: .85rem;
    line-height: 1.45;
    white-space: pre-wrap;
}

.md-editor-preview {
    max-height: calc(24 * 1.45 * .85rem + 1rem);
    overflow-y: auto;
}

@media (min-width: 1200px) {
    .md-sticky-panel {
        position: sticky;
        top: 4.5rem;
        max-height: calc(100vh - 5rem);
        overflow-y: auto;
        padding-right: .25rem;
    }
}

/* Vertrieb: letzter Besuch (Farben wie bisher auf der Karte) */
.md-visit-dot {
    display: inline-block;
    width: .9rem;
    height: .9rem;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, .2);
}

.md-visit-recent { background: #198754; }
.md-visit-40 { background: #9acd32; }
.md-visit-90 { background: #ffc107; }
.md-visit-180 { background: #fd7e14; }
.md-visit-360 { background: #dc3545; }
.md-visit-none { background: #adb5bd; }

/* Lager: Unterschriftenfeld (Tablet) */
.md-signature-pad {
    display: block;
    width: 100%;
    height: 260px;
    border: 2px dashed var(--bs-primary);
    border-radius: .5rem;
    background: #fff linear-gradient(to top, transparent 0 22%, #ced4da 22% calc(22% + 1px), transparent calc(22% + 1px));
    touch-action: none;
    cursor: crosshair;
}

@media (min-width: 992px) {
    .md-signature-pad { height: 320px; }
}

/* Lager: Kamera-Scanner, Erfassungsstand */
.md-scanner-video {
    display: block;
    width: 100%;
    max-height: 40vh;
    margin-top: .5rem;
    border-radius: .5rem;
    background: #000;
    object-fit: cover;
}

.md-progress-thin {
    height: .4rem;
}

.md-pick-thumb {
    width: 2.5rem;
    height: 2.5rem;
    object-fit: contain;
    background: #fff;
    border-radius: .25rem;
}

.md-serial-preview {
    max-height: 9rem;
    overflow-y: auto;
}

.md-pick-image {
    width: 6rem;
    height: 6rem;
    object-fit: contain;
}

.md-pick-positions {
    max-height: 45vh;
    overflow-y: auto;
}

/* Kommissionieren: Seriennummern im Bestand */
.md-sn-free {
    background: #fff;
    color: var(--bs-primary);
    border: 1px solid var(--bs-primary) !important;
    font-weight: 500;
}

button.md-sn-free:hover {
    background: var(--bs-primary);
    color: #fff;
}

.md-pick-stock {
    max-height: 60vh;
    overflow-y: auto;
}

/* Vertrieb: inaktive Ansprechpersonen ausgegraut */
.md-inactive,
.md-inactive a {
    color: var(--bs-secondary-color) !important;
    opacity: .6;
}

/* Vertrieb: Karte */
.md-map {
    height: calc(100vh - 6.5rem);
    min-height: 420px;
}

@media (min-width: 992px) {
    .md-map-side {
        max-height: calc(100vh - 6.5rem);
        overflow-y: auto;
    }
}

.md-map-loading {
    position: absolute;
    top: 1rem;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    padding: .25rem .75rem;
    border-radius: .25rem;
    z-index: 1000;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
}

.md-map-fit {
    position: absolute;
    top: 5rem;
    left: .6rem;
    z-index: 1000;
}

.md-legend-dot {
    display: inline-block;
    width: .8rem;
    height: .8rem;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, .25);
}

.md-map-cluster span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, .85);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .3);
    color: #000;
    font-weight: 700;
    font-size: .8rem;
    text-shadow: 0 0 3px #fff;
}

.md-map-stop span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #6f42c1;
    color: #fff;
    font-weight: 700;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .5);
}

.md-map-home {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #212529;
    color: #fff;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .5);
}

/* QR-Codes: Aufrufe je Tag (Farben: Kategorien 1–3 der geprüften Referenzpalette, mit Legende und Zahlen) */
.md-qr-colors {
    --qr-confirmed: #2a78d6;
    --qr-unclear: #eb6834;
    --qr-bot: #1baf7a;
}

.md-qr-chart {
    display: block;
    width: 100%;
    height: 9rem;
}

.md-qr-chart .md-chart-axis {
    stroke: #ced4da;
    stroke-width: 1;
}

.md-qr-chart .md-chart-hit {
    fill: transparent;
}

.md-qr-chart .md-chart-hit:hover {
    fill: rgba(0, 0, 0, .06);
}

.md-legend-dot[style*="--qr"] {
    border: 0;
}

/* Intern: Team */
.md-team-thumb {
    width: 2.75rem;
    height: 2.75rem;
    object-fit: cover;
    flex-shrink: 0;
}

/* Staffelpreise: Menge links, Preis rechtsbündig */
.md-price-tiers td {
    padding: 0.1rem 0;
    vertical-align: baseline;
}

.md-price-tiers td + td {
    padding-left: 1.5rem;
}

/* Intern: Produktdaten-Abgleich */
.md-pd-tile {
    min-width: 7.5rem;
    line-height: 1.1;
}

/* Verfügbarkeit */
.md-stock-table td {
    border-bottom-color: var(--bs-border-color-translucent);
}

.md-stock-line i {
    width: 1rem;
}
