/* Facturación — tablero Odoo (Ventas / Compras / Banco / Efectivo) */
.account-odo-board {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 4px 0 28px;
    box-sizing: border-box;
}

.account-odo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.account-odo-card {
    display: flex;
    flex-direction: column;
    min-height: 220px;
    padding: 18px 18px 14px;
    border: 1px solid var(--gray-200, #e5e7eb);
    border-radius: 4px;
    background: #fff;
}

.account-odo-card--wide {
    grid-column: 1 / -1;
    min-height: 140px;
}

.account-odo-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.account-odo-card__head h2 {
    margin: 0 0 4px;
    color: var(--sfe-navy, #1e2b3c);
    font-size: 1.15rem;
    font-weight: 700;
}

.account-odo-card__head p {
    margin: 0;
    max-width: 42ch;
    color: var(--gray-500, #6b7280);
    font-size: .86rem;
    line-height: 1.35;
}

.account-odo-card__head .btn-primary {
    flex: 0 0 auto;
    background: var(--sfe-primary, #007BFF);
    border-color: var(--sfe-primary, #007BFF);
}

.account-odo-card__head .btn-primary:hover {
    filter: brightness(1.05);
}

.account-odo-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 12px;
}

.account-odo-aging {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    min-height: 140px;
    padding: 8px 4px 0;
}

.account-odo-aging__col {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-width: 0;
}

.account-odo-aging__bar-wrap {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 110px;
}

.account-odo-aging__bar {
    width: 100%;
    min-height: 6px;
    border-radius: 3px 3px 0 0;
    background: color-mix(in srgb, var(--sfe-primary, #007BFF) 55%, #c4b5c8);
}

.account-odo-aging__bar.is-overdue {
    background: color-mix(in srgb, #dc2626 70%, #007BFF);
}

.account-odo-aging__label {
    color: var(--gray-500, #6b7280);
    font-size: .68rem;
    text-align: center;
    line-height: 1.2;
}

.account-odo-aging__value {
    color: var(--sfe-navy, #1e2b3c);
    font-size: .68rem;
    font-weight: 600;
    text-align: center;
}

.account-odo-meta {
    margin-top: auto;
    color: var(--gray-500, #6b7280);
    font-size: .82rem;
}

.account-odo-meta a {
    color: var(--sfe-primary, #007BFF);
    text-decoration: none;
    font-weight: 600;
}

.account-odo-purchase-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    min-height: 140px;
}

.account-odo-drop,
.account-odo-manual {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 12px;
    border: 1px dashed var(--gray-300, #d1d5db);
    border-radius: 6px;
    color: var(--gray-600, #4b5563);
    text-align: center;
    text-decoration: none;
    font-size: .9rem;
    transition: border-color .15s ease, background .15s ease;
}

.account-odo-drop:hover,
.account-odo-manual:hover {
    border-color: var(--sfe-primary, #007BFF);
    background: color-mix(in srgb, var(--sfe-primary, #007BFF) 6%, white);
    color: var(--sfe-primary, #007BFF);
}

.account-odo-drop__icon {
    font-size: 1.6rem;
    line-height: 1;
    opacity: .75;
}

.account-odo-bank-cta {
    align-self: flex-start;
    background: var(--sfe-primary, #007BFF);
    border-color: var(--sfe-primary, #007BFF);
}

.account-odo-bank-logos {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.account-odo-bank-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 6px 4px;
    border: 1px solid var(--gray-200, #e5e7eb);
    border-radius: 4px;
    background: #fafafa;
    color: var(--gray-600, #4b5563);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .02em;
}

.account-odo-wave {
    flex: 1;
    min-height: 72px;
    border-radius: 6px;
    background:
        radial-gradient(120% 80% at 10% 100%, color-mix(in srgb, var(--sfe-primary, #007BFF) 18%, transparent), transparent 60%),
        radial-gradient(100% 70% at 90% 80%, color-mix(in srgb, #94a3b8 22%, transparent), transparent 55%),
        linear-gradient(180deg, #fff, #f8fafc);
}

.account-odo-kpi-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.account-odo-kpi-label {
    display: block;
    margin-bottom: 4px;
    color: var(--gray-500, #6b7280);
    font-size: .78rem;
}

.account-odo-kpi-row strong {
    color: var(--sfe-navy, #1e2b3c);
    font-size: 1.15rem;
}

@media (max-width: 900px) {
    .account-odo-grid {
        grid-template-columns: 1fr;
    }

    .account-odo-purchase-actions {
        grid-template-columns: 1fr;
    }

    .account-odo-bank-logos {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.account-odo-card__actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
.account-odo-meta--split {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
