/* Shared pending bills + billing history containers (login + pay). */

.jm-billing-panel,
.jm-pay-history-panel {
    display: flex;
    flex-direction: column;
    gap: 0.75em;
    padding: 0.65em 0.75em;
    border: 1px solid var(--border);
    border-radius: 0.25rem;
    max-height: min(70vh, 36rem);
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.jm-billing-panel::-webkit-scrollbar,
.jm-pay-history-panel::-webkit-scrollbar,
.jm-pay-admin-list::-webkit-scrollbar,
.jm-pay-admin-suggestions::-webkit-scrollbar {
    display: none;
}

.jm-pay-admin-list,
.jm-pay-admin-suggestions {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.jm-billing-heading,
.jm-pay-history-heading {
    margin: 0;
    font-family: var(--font-heading);
    font-weight: 300;
    font-style: italic;
    font-size: clamp(0.95rem, 1.6vw, 1.1rem);
    color: var(--text-primary);
}

.jm-billing-status,
.jm-pay-history-status {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.92em;
}

.jm-billing-list,
.jm-pay-history-list {
    display: flex;
    flex-direction: column;
    gap: 0.65em;
}

.jm-billing-item,
.jm-pay-history-item {
    padding: 0.55em 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.jm-billing-item:last-child,
.jm-pay-history-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.jm-billing-item__row,
.jm-pay-history-item__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.35em 0.75em;
}

.jm-billing-item__label,
.jm-pay-history-item__label {
    font-family: var(--font-heading);
    font-weight: 300;
    font-style: italic;
    color: var(--text-primary);
}

.jm-billing-item__amount,
.jm-pay-history-item__amount {
    color: var(--text-primary);
}

.jm-billing-item__meta,
.jm-pay-history-item__meta {
    margin: 0.35em 0 0;
    font-size: 0.92em;
    color: var(--text-muted);
}

.jm-billing-item__message,
.jm-pay-history-item__message {
    margin: 0.35em 0 0;
    font-size: 0.92em;
    color: var(--text-body);
}

.jm-billing-actions,
.jm-pay-history-item__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 0.45em;
    margin-top: 0.45em;
}

.jm-billing-actions a.jm-btn,
.jm-pay-history-item__actions a.jm-btn {
    text-decoration: none;
    color: #fff;
}

.jm-billing-actions a.jm-btn:hover,
.jm-billing-actions a.jm-btn:focus-visible,
.jm-pay-history-item__actions a.jm-btn:hover,
.jm-pay-history-item__actions a.jm-btn:focus-visible {
    color: #fff;
    text-decoration: none;
}

.jm-pay-chooser-footer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45em;
    margin-top: 0.45em;
}

.jm-pay-chooser-or {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.92em;
}

.jm-pay-session-text {
    margin: 0;
    flex: 1 1 0;
    min-width: 0;
    font-family: var(--font-heading);
    font-weight: 300;
    font-style: italic;
    font-size: clamp(0.95rem, 1.6vw, 1.1rem);
    color: var(--text-primary);
}

.jm-pay-session-text span {
    color: inherit;
}

.jm-pay-pending {
    display: flex;
    flex-direction: column;
    gap: 0.75em;
}
