/* Kratoma bulk discount — product page tier matrix */
.kdisc-wrap {
    margin: 16px 0 8px;
    border: 1px solid #dde4d4;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    font-size: 14px;
    box-shadow: 0 1px 3px rgba(46, 51, 32, 0.04);
}

/* Header band */
.kdisc-head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: linear-gradient(135deg, #6c7d4e 0%, #7C9039 100%);
    color: #fff;
}
.kdisc-head-icon { flex: 0 0 auto; opacity: 0.95; }
.kdisc-head-text {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Grid table */
.kdisc-table {
    display: block;
    padding: 4px 0;
}
.kdisc-row {
    display: grid !important;
    grid-template-columns: minmax(60px, 0.7fr) repeat(var(--kdisc-cols), 1fr);
    align-items: center;
}
.kdisc-cell {
    padding: 10px 14px;
}

/* Header row (breakpoint labels) */
.kdisc-row-head .kdisc-cell-th {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #8a9676;
    padding-top: 8px;
    padding-bottom: 4px;
}

/* Data rows */
.kdisc-data-row {
    border-top: 1px solid #eef1ea;
    transition: background 0.15s ease;
}
.kdisc-cell-size {
    font-weight: 700;
    color: #2e3320;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.kdisc-cell-price {
    display: flex;
    align-items: baseline;
    gap: 5px;
    flex-wrap: wrap;
}
.kdisc-price {
    font-weight: 700;
    color: #2e3320;
    font-size: 15px;
}
.kdisc-each {
    font-size: 11px;
    color: #9aa18c;
}
.kdisc-save {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    color: #5d7a1f;
    background: #eef3e1;
    border-radius: 4px;
    padding: 1px 5px;
    letter-spacing: 0.02em;
}
.kdisc-empty { color: #cfd5c6; }

/* Highlight the row matching the currently-selected size */
.kdisc-data-row.kdisc-selected {
    background: #f4f7ee;
}
.kdisc-data-row.kdisc-selected .kdisc-cell-size {
    color: #5d7a1f;
}

/* Mobile: shrink padding + font so the grid still fits */
@media (max-width: 480px) {
    .kdisc-cell { padding: 8px 8px; }
    .kdisc-row {
        grid-template-columns: minmax(46px, 0.6fr) repeat(var(--kdisc-cols), 1fr);
    }
    .kdisc-price { font-size: 13px; }
    .kdisc-each { display: none; }
    .kdisc-cell-size { font-size: 12px; }
    .kdisc-row-head .kdisc-cell-th { font-size: 9px; }
}
