    /* ══════════════════════════════════════════════════════════════
       VANTASTIC ERP — Términos de Cobranza
       Prefijo: tc-  |  Paleta: azul cobalto suave
       Sin Bootstrap, sin Syncfusion, sin :root
       ══════════════════════════════════════════════════════════════ */
    .tc-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.40);
        z-index: var(--z-modal-3); /* D-51 (era 999000) */
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 12px;
    }

    .tc-panel {
        width: clamp(320px, 45vw, 900px);
        height: min(95vh, 900px);
        background: #fff;
        border-radius: 10px;
        border: 1px solid #d0d0d0;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
    }

    /* Tablet */
    @media (max-width: 1024px) {
        .tc-panel

    {
        width: 70vw;
        height: 92vh;
    }

    }

    /* Tablet pequeña */
    @media (max-width: 768px) {
        .tc-panel

    {
        width: 90vw;
        height: 94vh;
        border-radius: 8px;
    }

    }

    /* Celular */
    @media (max-width: 576px) {
        .tc-overlay

    {
        padding: 0;
    }

    .tc-panel {
        width: 100vw;
        height: 100vh;
        max-width: none;
        border-radius: 0;
        border: none;
    }

    }
    /* ── OVERLAY ─────────────────────────────────────────────────── */
    /*.tc-overlay {
        position: fixed;
        inset: 0;
        z-index: 10000;
        background: rgba(15, 23, 42, .48);
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding: 20px 12px;
        overflow-y: auto;
    }*/

    /* ── PANEL BASE ──────────────────────────────────────────────── */
    /*.tc-panel {
        width: 100%;
        max-width: 640px;
        min-width: 340px;
        display: flex;
        flex-direction: column;
        background: #fff;
        border-radius: 8px;
        border: 0.5px solid #cbd5e1;
        overflow: hidden;
        max-height: 92vh;
    }*/

    /* ── PANEL PROCESANDO ────────────────────────────────────────── */
    .tc-proc-panel {
        width: 100%;
        max-width: 480px;
        background: #fff;
        border-radius: 8px;
        border: 0.5px solid #cbd5e1;
        overflow: hidden;
        margin: auto;
    }

    /* ── PANEL RESULTADO ─────────────────────────────────────────── */
    .tc-result-panel {
        width: 100%;
        max-width: 440px;
        background: #fff;
        border-radius: 8px;
        border: 0.5px solid #cbd5e1;
        overflow: hidden;
        margin: auto;
    }

    /* ── PANEL VISTA PREVIA ──────────────────────────────────────── */
    .tc-print-panel {
        width: 100%;
        max-width: 720px;
        min-width: 340px;
        display: flex;
        flex-direction: column;
        background: #fff;
        border-radius: 8px;
        border: 0.5px solid #cbd5e1;
        overflow: hidden;
        max-height: 92vh;
    }

    /* ── HEADER ──────────────────────────────────────────────────── */
    .tc-header {
        background: #1e3a5f;
        padding: 11px 16px;
        display: flex;
        align-items: center;
        gap: 9px;
        flex-shrink: 0;
        user-select: none;
    }

    .tc-header--success {
        background: #14532d;
    }

    .tc-header--error {
        background: #7f1d1d;
    }

    .tc-header__icon {
        font-size: 16px;
        color: #93c5fd;
        flex-shrink: 0;
    }

    .tc-header__title {
        font-size: 13px;
        font-weight: 600;
        color: #fff;
        letter-spacing: .15px;
    }

    .tc-badge {
        margin-left: auto;
        font-size: 10px;
        font-weight: 600;
        background: rgba(255,255,255,.16);
        color: #e0f2fe;
        padding: 2px 10px;
        border-radius: 20px;
        border: 0.5px solid rgba(255,255,255,.25);
        letter-spacing: .3px;
        white-space: nowrap;
    }

    .tc-badge--ok {
        background: #166534;
        color: #dcfce7;
        border-color: #15803d;
    }

    .tc-badge--err {
        background: #7f1d1d;
        color: #fecaca;
        border-color: #b91c1c;
    }

    .tc-close {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: rgba(255,255,255,.14);
        border: none;
        cursor: pointer;
        color: #fff;
        font-size: 11px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background .12s;
        flex-shrink: 0;
        margin-left: auto;
    }

        .tc-close:hover {
            background: rgba(220,38,38,.7);
        }

    /* ── BODY (scroll) ───────────────────────────────────────────── */
    .tc-body {
        flex: 1;
        overflow-y: auto;
        padding: 14px 18px;
        display: flex;
        flex-direction: column;
        gap: 10px;
        scrollbar-width: thin;
        scrollbar-color: #cbd5e1 transparent;
        font-size: 12px;
        color: #1e293b;
    }

    /* ── FOOTER ──────────────────────────────────────────────────── */
    .tc-footer {
        padding: 10px 16px;
        background: #f8fafc;
        border-top: 0.5px solid #e2e8f0;
        display: flex;
        gap: 8px;
        justify-content: flex-end;
        flex-shrink: 0;
    }

    /* ── LAYOUT FIELDS ───────────────────────────────────────────── */
    .tc-row {
        display: flex;
        gap: 10px;
        align-items: flex-end;
        flex-wrap: wrap;
    }

    .tc-row--end {
        align-items: flex-end;
    }

    .tc-row--wrap {
        flex-wrap: wrap;
    }

    .tc-field {
        display: flex;
        flex-direction: column;
        gap: 3px;
        flex: 1;
        min-width: 0;
    }

    .tc-field--grow {
        flex: 2;
    }

    .tc-lbl {
        font-size: 10px;
        font-weight: 700;
        color: #64748b;
        text-transform: uppercase;
        letter-spacing: .45px;
        white-space: nowrap;
    }

    /* ── INPUTS & SELECTS ────────────────────────────────────────── */
    .tc-input,
    .tc-select {
        height: 30px;
        padding: 0 9px;
        border: 0.5px solid #cbd5e1;
        border-radius: 5px;
        font-size: 12px;
        font-family: inherit;
        color: #1e293b;
        background: #fff;
        width: 100%;
        box-sizing: border-box;
        transition: border-color .12s, box-shadow .12s;
        appearance: none;
        -webkit-appearance: none;
    }

        .tc-input:focus,
        .tc-select:focus {
            outline: none;
            border-color: #3b82f6;
            box-shadow: 0 0 0 3px rgba(59,130,246,.1);
        }

        .tc-input--readonly,
        .tc-input[readonly] {
            background: #f1f5f9;
            color: #64748b;
            border-style: dashed;
            cursor: default;
        }

        .tc-input:disabled,
        .tc-select:disabled {
            background: #f1f5f9;
            color: #94a3b8;
            border-style: dashed;
            cursor: not-allowed;
            opacity: 1;
        }

    .tc-select {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M0 0l4.5 5L9 0z' fill='%2394a3b8'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: right 8px center;
        padding-right: 24px;
        cursor: pointer;
    }

    .tc-textarea {
        height: 56px;
        resize: vertical;
        padding: 6px 9px;
    }

    .tc-input--cell {
        height: 24px;
        font-size: 11px;
        padding: 0 5px;
    }

    /* ── BUTTONS ─────────────────────────────────────────────────── */
    .tc-btn {
        height: 30px;
        padding: 0 14px;
        border: none;
        border-radius: 5px;
        font-size: 11px;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 5px;
        white-space: nowrap;
        transition: filter .12s, transform .1s;
        flex-shrink: 0;
    }

        .tc-btn:hover {
            filter: brightness(1.07);
        }

        .tc-btn:active {
            transform: scale(.97);
        }

        .tc-btn:disabled {
            opacity: .44;
            cursor: not-allowed;
            filter: none;
        }

    .tc-btn--primary {
        background: #1d4ed8;
        color: #fff;
    }

    .tc-btn--info {
        background: #3b82f6;
        color: #fff;
    }

    .tc-btn--success {
        background: #16a34a;
        color: #fff;
    }

    .tc-btn--sec {
        background: #f1f5f9;
        color: #475569;
        border: 0.5px solid #cbd5e1;
    }

    .tc-btn--lg {
        height: 36px;
        font-size: 12px;
        padding: 0 20px;
    }

    /* ── CHIPS — CONDICIÓN DE VENTA ──────────────────────────────── */
    .tc-chips {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
        margin-top: 2px;
    }

    .tc-chip {
        height: 30px;
        padding: 0 16px;
        border-radius: 20px;
        border: 0.5px solid #cbd5e1;
        background: #f8fafc;
        color: #475569;
        font-size: 12px;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        transition: all .14s;
        white-space: nowrap;
    }

        .tc-chip:hover {
            border-color: #93c5fd;
            color: #1d4ed8;
            background: #eff6ff;
        }

    .tc-chip--active {
        background: #1d4ed8;
        color: #fff;
        border-color: #1d4ed8;
    }

        .tc-chip--active:hover {
            background: #1e40af;
            border-color: #1e40af;
            color: #fff;
        }

    /* ── CARDS COLLAPSIBLES ──────────────────────────────────────── */
    .tc-card {
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        background: #fff;
    }

    .tc-card--warn {
        border-color: #fbbf24;
    }

    .tc-card--green {
        border-color: #4ade80;
    }

    .tc-card--cyan {
        border-color: #22d3ee;
    }

    .tc-card--indigo {
        border-color: #818cf8;
    }

    summary.tc-card__hdr {
        display: flex;
        align-items: center;
        gap: 7px;
        padding: 8px 12px;
        font-size: 10px;
        font-weight: 800;
        color: #334155;
        background: #f8fafc;
        cursor: pointer;
        user-select: none;
        list-style: none;
        letter-spacing: .5px;
        text-transform: uppercase;
        border-radius: 6px;
    }

        summary.tc-card__hdr::-webkit-details-marker {
            display: none;
        }

    .tc-ico {
        color: #3b82f6;
        width: 13px;
        text-align: center;
        font-size: 13px;
    }

    .tc-ico--warn {
        color: #f59e0b;
    }

    .tc-ico--green {
        color: #16a34a;
    }

    .tc-ico--cyan {
        color: #06b6d4;
    }

    .tc-ico--indigo {
        color: #6366f1;
    }

    .tc-arrow {
        margin-left: auto;
        font-size: 9px;
        color: #94a3b8;
        transition: transform .15s;
    }

    details[open] .tc-arrow {
        transform: rotate(180deg);
    }

    .tc-card__body {
        padding: 10px 12px;
        display: flex;
        flex-direction: column;
        gap: 8px;
        border-top: 0.5px solid #f1f5f9;
    }

    /* ── PAY PANELS ──────────────────────────────────────────────── */
    .tc-pay-panel {
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        padding: 8px 11px;
        background: #fafbff;
    }

    .tc-pay-lbl {
        font-size: 10px;
        font-weight: 800;
        color: #3b82f6;
        text-transform: uppercase;
        letter-spacing: .5px;
        margin-bottom: 7px;
        display: flex;
        align-items: center;
        gap: 5px;
    }

    /* ── CRÉDITO / CUOTAS ────────────────────────────────────────── */
    .tc-stat-chip {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .tc-grid-wrap {
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        overflow: hidden;
        overflow-x: auto;
    }

    .tc-grid {
        width: 100%;
        border-collapse: collapse;
        font-size: 11px;
    }

        .tc-grid th {
            background: #f1f5f9;
            color: #475569;
            font-size: 10px;
            font-weight: 700;
            text-transform: uppercase;
            padding: 5px 7px;
            border-bottom: 0.5px solid #e2e8f0;
            text-align: center;
            white-space: nowrap;
        }

        .tc-grid td {
            padding: 4px 7px;
            border-bottom: 0.5px solid #f1f5f9;
            color: #334155;
            vertical-align: middle;
            text-align: center;
        }

        .tc-grid tr:last-child td {
            border-bottom: none;
        }

    .tc-tc {
        font-size: 10px;
        color: #94a3b8;
    }

    .tc-cuota-footer {
        display: flex;
        gap: 7px;
        justify-content: flex-end;
    }

    .tc-cuota-chip {
        font-size: 11px;
        font-weight: 700;
        background: #f1f5f9;
        color: #475569;
        padding: 3px 11px;
        border-radius: 20px;
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .tc-cuota-chip--sum {
        background: #eff6ff;
        color: #1d4ed8;
    }

    /* ── RESUMEN ─────────────────────────────────────────────────── */
    .tc-summary-hero {
        display: flex;
        align-items: baseline;
        gap: 8px;
        padding-bottom: 8px;
        border-bottom: 0.5px solid #f1f5f9;
    }

    .tc-s-cur {
        font-size: 11px;
        color: #64748b;
        font-weight: 600;
    }

    .tc-s-amt {
        font-size: 22px;
        font-weight: 800;
        color: #1e293b;
        letter-spacing: -.5px;
    }

    .tc-s-items {
        margin-left: auto;
        font-size: 10px;
        color: #94a3b8;
        background: #f1f5f9;
        padding: 2px 8px;
        border-radius: 20px;
    }

    .tc-summary-tbl {
        width: 100%;
        border-collapse: collapse;
        font-size: 11px;
    }

        .tc-summary-tbl th {
            background: #f8fafc;
            color: #475569;
            font-size: 10px;
            font-weight: 700;
            text-transform: uppercase;
            padding: 4px 8px;
            border-bottom: 0.5px solid #e2e8f0;
            text-align: right;
        }

            .tc-summary-tbl th:first-child {
                text-align: left;
            }

        .tc-summary-tbl td {
            padding: 4px 8px;
            text-align: right;
            color: #475569;
            border-bottom: 0.5px solid #f8fafc;
        }

            .tc-summary-tbl td:first-child {
                text-align: left;
                color: #64748b;
            }

    .tc-tbl-sub td {
        background: #f8fafc;
        font-weight: 700;
        color: #1e293b;
        border-top: 0.5px solid #e2e8f0;
    }

    .tc-tbl-total td {
        border-top: 1.5px solid #818cf8;
        background: #eef2ff;
        color: #4338ca;
        font-weight: 800;
    }

    /* ══════════════════════════════════════════════════════════════
       MODAL PROCESANDO
       ══════════════════════════════════════════════════════════════ */
    .tc-proc-body {
        padding: 24px 20px;
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .tc-proc-spinner-row {
        display: flex;
        align-items: center;
        gap: 18px;
    }

    .tc-spinner-ring {
        width: 44px;
        height: 44px;
        border: 3px solid #bfdbfe;
        border-top-color: #1d4ed8;
        border-radius: 50%;
        animation: tc-spin .85s linear infinite;
        flex-shrink: 0;
    }

    @keyframes tc-spin {
        to

    {
        transform: rotate(360deg);
    }

    }

    .tc-spin {
        animation: tc-spin 1.2s linear infinite;
    }

    .tc-proc-info {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .tc-proc-msg {
        font-size: 14px;
        font-weight: 600;
        color: #1e3a5f;
    }

    .tc-proc-sub {
        font-size: 12px;
        color: #475569;
    }

    .tc-proc-elapsed {
        font-size: 12px;
        color: #64748b;
    }

    .tc-elapsed-val {
        font-weight: 700;
        color: #1d4ed8;
        font-variant-numeric: tabular-nums;
    }

    .tc-proc-log {
        background: #f8fafc;
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        overflow: hidden;
    }

    .tc-proc-log__hdr {
        padding: 6px 12px;
        font-size: 10px;
        font-weight: 700;
        color: #64748b;
        text-transform: uppercase;
        letter-spacing: .5px;
        border-bottom: 0.5px solid #e2e8f0;
        display: flex;
        align-items: center;
        gap: 6px;
    }

    .tc-proc-log__body {
        padding: 8px 12px;
        display: flex;
        flex-direction: column;
        gap: 3px;
        max-height: 140px;
        overflow-y: auto;
        scrollbar-width: thin;
    }

    .tc-log-line {
        font-size: 11px;
        font-family: 'Consolas', 'Courier New', monospace;
        line-height: 1.6;
    }

    /* ══════════════════════════════════════════════════════════════
       MODAL RESULTADO
       ══════════════════════════════════════════════════════════════ */
    .tc-result-body {
        padding: 24px 20px;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .tc-result-success-box {
        background: #f0fdf4;
        border: 0.5px solid #bbf7d0;
        border-radius: 8px;
        padding: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        text-align: center;
    }

    .tc-result-error-box {
        background: #fff1f2;
        border: 0.5px solid #fecdd3;
        border-radius: 8px;
        padding: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        text-align: center;
    }

    .tc-result-icon {
        font-size: 40px;
    }

    .tc-result-icon--ok {
        color: #15803d;
    }

    .tc-result-icon--err {
        color: #b91c1c;
    }

    .tc-result-tipo {
        font-size: 12px;
        color: #166534;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .3px;
    }

    .tc-result-nro {
        font-size: 22px;
        font-weight: 700;
        color: #14532d;
        letter-spacing: .5px;
    }

    .tc-result-sunat-msg {
        font-size: 11px;
        padding: 4px 12px;
        border-radius: 20px;
        display: flex;
        align-items: center;
        gap: 5px;
        font-weight: 600;
    }

    .tc-msg--ok {
        background: #dcfce7;
        color: #14532d;
    }

    .tc-msg--err {
        background: #fee2e2;
        color: #7f1d1d;
    }

    .tc-result-meta {
        display: flex;
        gap: 14px;
        font-size: 11px;
        color: #4b7a62;
        margin-top: 4px;
    }

        .tc-result-meta span {
            display: flex;
            align-items: center;
            gap: 4px;
        }

    .tc-result-err-title {
        font-size: 14px;
        font-weight: 600;
        color: #7f1d1d;
    }

    .tc-result-err-msg {
        font-size: 12px;
        color: #b91c1c;
        line-height: 1.5;
    }

    .tc-result-actions {
        display: flex;
        gap: 10px;
        justify-content: center;
        flex-wrap: wrap;
    }

    /* ══════════════════════════════════════════════════════════════
       MODAL VISTA PREVIA / IMPRESIÓN
       ══════════════════════════════════════════════════════════════ */
    .tc-print-body {
        flex: 1;
        overflow-y: auto;
        padding: 14px 18px;
        display: flex;
        flex-direction: column;
        gap: 12px;
        scrollbar-width: thin;
        scrollbar-color: #cbd5e1 transparent;
    }

    .tc-doc-card {
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        overflow: hidden;
    }

    .tc-doc-card__head {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 12px 14px;
        background: #f8fafc;
        border-bottom: 0.5px solid #e2e8f0;
        gap: 12px;
        flex-wrap: wrap;
    }

    .tc-doc-empresa {
        font-size: 13px;
        font-weight: 700;
        color: #1e293b;
    }

    .tc-doc-ruc {
        font-size: 11px;
        color: #64748b;
        margin-top: 2px;
    }

    .tc-doc-tipo {
        font-size: 13px;
        font-weight: 700;
        color: #1d4ed8;
    }

    .tc-doc-nro {
        font-size: 15px;
        font-weight: 800;
        color: #1e3a5f;
        letter-spacing: .3px;
    }

    .tc-doc-card__meta {
        padding: 8px 14px;
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
        font-size: 11px;
        color: #475569;
    }

        .tc-doc-card__meta span {
            display: flex;
            align-items: center;
            gap: 4px;
        }

    .tc-sunat-resp {
        padding: 6px 14px;
        font-size: 11px;
        font-weight: 600;
        display: flex;
        align-items: center;
        gap: 6px;
        border-top: 0.5px solid #e2e8f0;
    }

    .tc-sunat-resp--ok {
        background: #f0fdf4;
        color: #166534;
    }

    .tc-sunat-resp--err {
        background: #fff1f2;
        color: #b91c1c;
    }

    .tc-pdf-frame {
        height: 420px;
        border: 0.5px solid #e2e8f0;
        border-radius: 6px;
        overflow: hidden;
        background: #f1f5f9;
    }

    /* ── BOTONES DE ACCIÓN IMPRESIÓN ─────────────────────────────── */
    .tc-print-actions {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
        gap: 8px;
    }

    .tc-action-btn {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        height: 58px;
        border: none;
        border-radius: 6px;
        font-size: 11px;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        color: #fff;
        transition: filter .12s, transform .1s;
    }

        .tc-action-btn i {
            font-size: 18px;
        }

        .tc-action-btn:hover {
            filter: brightness(1.08);
        }

        .tc-action-btn:active {
            transform: scale(.97);
        }

    .tc-action-btn--blue {
        background: #1d4ed8;
    }

    .tc-action-btn--teal {
        background: #0f766e;
    }

    .tc-action-btn--purple {
        background: #7c3aed;
    }

    .tc-action-btn--indigo {
        background: #4338ca;
    }

    .tc-action-btn--green {
        background: #15803d;
    }

    .tc-action-btn--slate {
        background: #475569;
    }

    /* ══════════════════════════════════════════════════════════════
       LOADING OVERLAY GLOBAL
       ══════════════════════════════════════════════════════════════ */
    .tc-loading-overlay {
        position: fixed;
        inset: 0;
        z-index: var(--z-bloqueo); /* D-51 (era 20000) */
        background: rgba(15, 23, 42, .3);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .tc-loading-ring {
        width: 36px;
        height: 36px;
        border: 3px solid #bfdbfe;
        border-top-color: #1d4ed8;
        border-radius: 50%;
        animation: tc-spin .8s linear infinite;
    }
    .cv-section-label {
        font-size: 10.5px;
        font-weight: 500;
        letter-spacing: .08em;
        color: #185FA5;
        text-transform: uppercase;
        margin-bottom: 6px;
        display: flex;
        align-items: center;
        gap: 6px;
    }

    .cv-chips {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
        gap: 8px;
        margin-bottom: 14px;
    }

    .cv-chip {
        background: #E6F1FB;
        border: 1px solid #B5D4F4;
        border-radius: 10px;
        padding: 10px 14px;
    }

    .cv-chip-lbl {
        font-size: 11px;
        color: #185FA5;
        margin: 0 0 3px;
        display: flex;
        align-items: center;
        gap: 5px;
    }

    .cv-chip-val {
        font-size: 14px;
        font-weight: 500;
        color: #0C447C;
        margin: 0;
    }

    .cv-badge {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        font-size: 12px;
        font-weight: 500;
        padding: 3px 10px;
        border-radius: 999px;
        background: #185FA5;
        color: #E6F1FB;
    }

    .cv-accord {
        background: #fff;
        border: 1px solid #B5D4F4;
        border-radius: 12px;
        overflow: hidden;
        margin-bottom: 14px;
    }

        .cv-accord > summary {
            list-style: none;
            padding: 12px 16px;
            display: flex;
            align-items: center;
            gap: 8px;
            cursor: pointer;
            background: #E6F1FB;
            font-size: 13px;
            font-weight: 500;
            color: #0C447C;
            user-select: none;
        }

            .cv-accord > summary i.arr {
                margin-left: auto;
                font-size: 14px;
                color: #378ADD;
                transition: transform .25s;
            }

        .cv-accord[open] > summary i.arr {
            transform: rotate(180deg);
        }

    .cv-accord-body {
        padding: 12px 16px;
    }

    .cv-kv {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 7px 0;
        border-bottom: 1px solid #E6F1FB;
        gap: 12px;
    }

        .cv-kv:last-child {
            border-bottom: none;
        }

    .cv-kv-k {
        font-size: 12px;
        color: #378ADD;
        display: flex;
        align-items: center;
        gap: 6px;
        white-space: nowrap;
    }

    .cv-kv-v {
        font-size: 13px;
        font-weight: 500;
        color: #0C447C;
        text-align: right;
        max-width: 60%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .cv-sep {
        border: none;
        border-top: 1px solid #E6F1FB;
        margin: 6px 0;
    }

    .cv-orig-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 7px 0;
        border-bottom: 1px solid #E6F1FB;
        gap: 12px;
    }

        .cv-orig-row:last-child {
            border-bottom: none;
        }

    .cv-pill-wrap {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
    }

    .cv-pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 12px;
        padding: 5px 14px;
        border-radius: 999px;
        border: 1px solid #B5D4F4;
        background: #E6F1FB;
        color: #185FA5;
    }

        .cv-pill.on {
            background: #185FA5;
            color: #E6F1FB;
            border-color: #185FA5;
            font-weight: 500;
        }
