/* BH Wholesale — Frontend styles
   Follows biohacker.team (dark) design tokens from biohacker-theme main.css:
   --bg #050507 | --bg-2 #0a0a0e | --fg #f5f5f4 | --fg-mute #8a8a90
   --rule #1a1a1f | --blue #1c3fd1 | --blue-light #85b1eb | --font-mono Geist Mono
*/

/* ── Price label ─────────────────────────────────────────────────────────── */
.bhw-price-label {
    display: block;
    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--fg-mute, #8a8a90);
    margin-bottom: 3px;
}

/* ── MOQ cart label ──────────────────────────────────────────────────────── */
.bhw-moq-label {
    display: block;
    font-size: 11px;
    color: var(--fg-mute, #8a8a90);
    margin-top: 3px;
    letter-spacing: .06em;
}

/* ── Balance section on order detail ─────────────────────────────────────── */
.bhw-balance-section {
    margin-top: 2em;
    padding: 1.5em;
    background: var(--bg-2, #0a0a0e);
    border: 1px solid var(--rule, #1a1a1f);
    border-left: 2px solid var(--blue-light, #85b1eb);
}

.bhw-balance-section h3 {
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--blue-light, #85b1eb);
    margin: 0 0 1em;
    font-weight: 400;
}

.bhw-balance-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.2em;
    font-size: 14px;
}

.bhw-balance-table td {
    padding: 6px 0;
    border-bottom: 1px solid var(--rule, #1a1a1f);
    color: var(--fg-mute, #8a8a90);
}

.bhw-balance-table tr:last-child td {
    border-bottom: none;
    font-weight: 500;
    color: var(--fg, #f5f5f4);
}

.bhw-balance-paid {
    border-left-color: var(--blue-light, #85b1eb);
}

.bhw-balance-paid h3 {
    color: var(--blue-light, #85b1eb);
}

.bhw-balance-paid p {
    color: var(--fg-mute, #8a8a90);
    margin: 0;
}

/* ── Wholesale account dashboard ─────────────────────────────────────────── */
.bh-account-wholesale {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.bhw-summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1px;
    background: var(--rule, #1a1a1f);
    border: 1px solid var(--rule, #1a1a1f);
    margin: 1.5em 0;
}

.bhw-summary-card {
    background: var(--bg, #050507);
    padding: 16px 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.bhw-summary-num {
    display: block;
    font-size: 20px;
    font-weight: 500;
    color: var(--fg, #f5f5f4);
    letter-spacing: -0.01em;
    line-height: 1;
}

.bhw-summary-num .woocommerce-Price-amount {
    color: var(--fg, #f5f5f4);
}

.bhw-summary-label {
    display: block;
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 10px;
    letter-spacing: .12em;
    color: var(--fg-mute, #8a8a90);
    text-transform: uppercase;
}

/* ── Pay Balance button state ─────────────────────────────────────────────── */
.bhw-pay-balance-btn:disabled {
    opacity: .5;
    cursor: not-allowed;
}

.bhw-pay-balance-spinner {
    display: inline-block;
    font-size: 12px;
    color: var(--fg-mute, #8a8a90);
    margin-left: .75em;
}

/* ── Effective deposit rate line ─────────────────────────────────────────── */
.bhw-deposit-rate {
    margin: -.5em 0 .5em;
    font-size: 13px;
    color: var(--fg-mute, #8a8a90);
}

.bhw-deposit-rate strong {
    color: var(--fg, #f5f5f4);
    font-weight: 500;
}

/* ── Deposit & balance history ───────────────────────────────────────────── */
.bhw-history-title {
    font-size: 17px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: var(--fg, #f5f5f4);
    margin: 1.5em 0 .25em;
}

.bhw-orders-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
    font-size: 13.5px;
}

.bhw-orders-table th {
    text-align: left;
    padding: 10px 12px 10px 0;
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--fg-mute, #8a8a90);
    font-weight: 400;
    border-bottom: 1px solid var(--rule, #1a1a1f);
}

.bhw-orders-table td {
    padding: 12px 12px 12px 0;
    border-bottom: 1px solid var(--rule, #1a1a1f);
    color: var(--fg-mute, #8a8a90);
    vertical-align: top;
}

.bhw-orders-table .bhw-amount {
    text-align: right;
    white-space: nowrap;
}

.bhw-orders-table .bhw-actions {
    text-align: right;
}

.bhw-orders-table a {
    color: var(--blue-light, #85b1eb);
    text-decoration: none;
}

.bhw-orders-table a:hover {
    text-decoration: underline;
}

.bhw-status-paid {
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--blue-light, #85b1eb);
}

.bhw-status-due {
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--fg-mute, #8a8a90);
}

.bhw-status-meta {
    display: block;
    color: var(--fg-mute, #8a8a90);
    font-size: 11px;
    margin-top: 4px;
    font-family: inherit;
    text-transform: none;
    letter-spacing: normal;
}

/* ── Per-order line items disclosure ─────────────────────────────────────── */
.bhw-order-items {
    margin-top: 4px;
}

.bhw-order-items summary {
    cursor: pointer;
    color: var(--fg-mute, #8a8a90);
    font-size: 11px;
    letter-spacing: .04em;
}

.bhw-order-items ul {
    margin: 6px 0 0;
    padding-left: 1.1em;
    font-size: 12px;
    color: var(--fg-mute, #8a8a90);
}

/* ── Dashboard footer actions ────────────────────────────────────────────── */
.bhw-dashboard-actions {
    margin-top: 1em;
    display: flex;
    gap: .75em;
    flex-wrap: wrap;
}

.bhw-empty {
    margin-top: 1.5em;
    color: var(--fg-mute, #8a8a90);
}

@media (max-width: 540px) {
    .bhw-summary-grid {
        grid-template-columns: 1fr;
    }
}
