/* Preserve desktop tables; show each existing row as a labelled card on phones. */
@media screen and (max-width: 767px) {
    .cb-mobile-wrapper { overflow: visible !important; }
    table.cb-mobile-cards { display: block; width: 100% !important; min-width: 0 !important; border: 0 !important; }
    .cb-mobile-cards thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
    .cb-mobile-cards tbody { display: block; width: 100%; }
    .cb-mobile-cards tbody tr { display: block; margin: 0 0 16px; padding: 6px 12px; border: 1px solid #dbe3e4; border-radius: 10px; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.04); }
    .cb-mobile-cards tbody td { display: block; width: auto !important; min-width: 0 !important; max-width: none !important; padding: 9px 0 !important; border: 0 !important; border-bottom: 1px solid #eef1f2 !important; white-space: normal !important; overflow-wrap: anywhere; text-align: left !important; background: transparent !important; }
    .cb-mobile-cards tbody td::before { content: attr(data-label); display: block; margin-bottom: 3px; color: #247d87; font-weight: 700; font-size: 12px; line-height: 1.4; }
    .cb-mobile-cards tbody td:last-child { border-bottom: 0 !important; }
    .cb-mobile-cards tbody .cb-mobile-message::before { display: none; }
    .cb-mobile-cards tbody td .btn, .cb-mobile-cards tbody td .label { max-width: 100%; white-space: normal; }
    .cb-mobile-cards tbody td .label { display: inline-block; line-height: 1.5; margin: 2px 2px 2px 0; }
    .cb-mobile-cards tbody td .btn { margin: 3px 0; }
}
