/* === Bundle Overview Table === */
.dbo-filter-wrap { font-size: 0.9em; }
.dbo-filter-bar  { margin-bottom: 8px; }
.dbo-table {
    border-collapse: collapse;
    width: 100%;
}
.dbo-table th,
.dbo-table td {
    border: 1px solid #d8d8d8;
    padding: 5px 8px;
    vertical-align: top;
}
.dbo-table th {
    background: #f5f5f2;
    font-size: 0.8em;
    text-align: center;
}
.dbo-table th:first-child { text-align: left; min-width: 220px; }
.dbo-table td:first-child { min-width: 220px; vertical-align: middle; }
.dbo-table th:last-child,
.dbo-table td:last-child { min-width: 130px; text-align: center; }
/* Zebra */
.dbo-table tbody tr:nth-child(even) td { background: #f7f7f4; }
/* Thumbnail-Container im Header */
.dbo-th-inner { display: flex; flex-direction: column; align-items: center; }
.dbo-thumb-box {
    flex-shrink: 0;
    width: 78px; height: 58px;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 3px;
}
.dbo-thumb-box img { max-width: 78px; max-height: 58px; width: auto; height: auto; display: block; }
.dbo-col-code  { font-weight: 700; font-size: 0.9em; color: #333; }
.dbo-col-title { color: #666; font-weight: normal; font-size: 0.88em; word-break: break-word; }
/* Sortierbar */
.dbo-table th.dbo-prod-col.dbo-sortable { cursor: pointer; user-select: none; }
.dbo-table th.dbo-prod-col.dbo-sortable:hover { background: #eceae4; }
.dbo-table th.dbo-prod-col.dbo-col-sorted-asc,
.dbo-table th.dbo-prod-col.dbo-col-sorted-desc { background: #dedad0; }
.dbo-table th.dbo-prod-col.dbo-sortable:hover:not(.dbo-col-sorted-asc):not(.dbo-col-sorted-desc):not(:has(.dbo-thumb-box:hover)) .dbo-col-code::after { content: ' ↕'; font-weight: normal; font-size: 0.85em; color: #999; }
.dbo-table th.dbo-prod-col.dbo-sortable:has(.dbo-thumb-box:hover) { cursor: default; }
.dbo-table th.dbo-prod-col.dbo-col-sorted-asc .dbo-col-code::after  { content: ' ↑'; font-weight: normal; font-size: 0.85em; color: #666; }
.dbo-table th.dbo-prod-col.dbo-col-sorted-desc .dbo-col-code::after { content: ' ↓'; font-weight: normal; font-size: 0.85em; color: #666; }
/* Bundle-Zeile */
.dbo-bundle-row { display: flex !important; align-items: center; gap: 8px; }
.dbo-bundle-thumb { flex-shrink: 0; width: 68px; height: 50px; display: flex; align-items: center; }
.dbo-bundle-thumb img { max-width: 68px; max-height: 50px; width: auto; height: auto; }
.dbo-bundle-info strong { font-size: 0.88em; line-height: 1.3; }
.dbo-price { font-size: 0.85em; color: #555; margin-top: 3px; }
.dbo-check { color: #1a9e3f; font-size: 1.5em; font-weight: bold; line-height: 1; }
/* Action-Buttons */
.dbo-table td:last-child .uk-button { display: block; width: 100%; box-sizing: border-box; margin-bottom: 5px; white-space: normal; text-align: center; line-height: 1.3; }

/* === DHD Add-to-Cart Button (Orange Pill) === */
.single_add_to_cart_button {
    background-color: var(--accent, #ff8f00) !important;
    color: var(--text-dark, #080808) !important;
    border: none !important;
    border-radius: 999px !important;
    padding: var(--space-s, 16px) var(--space-m, 32px) !important;
    font-family: var(--text-font-family, Inter, sans-serif) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.52px !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    cursor: pointer;
    flex: 1 0 0;
    text-align: center;
    transition: opacity 0.2s;
    min-height: unset !important;
}
.single_add_to_cart_button:hover { opacity: 0.85; }

/* Aktions-Spalte etwas breiter */
.dbo-table td:last-child,
.dbo-table th:last-child { width: 160px; min-width: 160px; max-width: 160px; }

/* === Bundle Order Wizard Button === */
.dbo-filter-wrap .dhd-bundle-order-wizard-button a.uk-button {
    font-size: 11px !important;
    padding-block: 5px !important;
    padding-inline: 4px !important;
    width: 100%;
    box-sizing: border-box;
}

.dhd-bundle-order-wizard-button a.uk-button {
    background: var(--btn-background);
    color: var(--btn-text-color);
    padding-block: var(--btn-padding-block); padding-inline: var(--btn-padding-inline);
    inline-size: var(--btn-width, auto);
    min-inline-size: var(--btn-min-width);
    line-height: var(--btn-line-height);
    font-family: var(--btn-font-family);
    font-size: var(--btn-font-size, var(--text-m));
    font-weight: var(--btn-font-weight);
    font-style: var(--btn-font-style);
    text-transform: var(--btn-text-transform);
    letter-spacing: var(--btn-letter-spacing);
    text-decoration: var(--btn-text-decoration);
    border-width: var(--btn-border-width);
    border-style: var(--btn-border-style);
    border-radius: var(--btn-border-radius);
    border-color: var(--btn-border-color);
    transition: var(--btn-transition, var(--transition));
    justify-content: var(--btn-justify-content, center);
    align-items: var(--btn-align-items, center);
    text-align: var(--btn-text-align, center);
    display: var(--btn-display, inline-flex);
    --btn-background: transparent;
    --btn-background-hover: var(--base-ultra-dark);
    --btn-text-color: var(--base-dark);
    --btn-text-color-hover: var(--base-ultra-light);
    --btn-border-width: 2px;
    --btn-border-color: var(--base-dark);
    --btn-border-color-hover: var(--base-dark);
    --focus-color: var(--accent);
}

@media (hover: hover) and (pointer: fine) {
    .dhd-bundle-order-wizard-button a.uk-button:hover {
        background: var(--btn-background-hover);
        color: var(--btn-text-color-hover);
        border-color: var(--btn-border-color-hover);
        text-decoration: var(--btn-text-decoration-hover);
    }
}

.dhd-bundle-order-wizard-button a.uk-button:where(:focus-visible) {
    outline-style: solid;
    outline-color: var(--focus-color);
    outline-width: var(--focus-width);
    outline-offset: var(--focus-offset);
}
