/* Issue #8902 — admin Credit Cards page styling.
   Reuses dms-badge tokens (per feedback_dms_badge_termont2_only memory). */

/* Full-bleed wrapper — admin pages render edge-to-edge, no horizontal padding.
   Per Sergey 2026-05-08: "let in 100% container — dont put padding left or right" */
.cw-admin-fullbleed {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.cw-admin-fullbleed .card {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
}
/* Counter the Logistik theme's article wrapper padding too */
body.page article > .cw-admin-fullbleed,
.entry-content > .cw-admin-fullbleed {
    margin-left: -15px !important;
    margin-right: -15px !important;
}

#cw-admin-credit-cards-wrap .dms-badge {
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 4px;
    display: inline-block;
    line-height: 1;
}
.cw-cc-card-visa       { background: #1a1f71; color: #fff; }
.cw-cc-card-mastercard { background: #eb001b; color: #fff; }
.cw-cc-card-amex       { background: #2e77bb; color: #fff; }
.cw-cc-card-discover   { background: #ff6000; color: #fff; }
.cw-cc-card-diners     { background: #0079be; color: #fff; }
.cw-cc-card-jcb        { background: #0e4c96; color: #fff; }
.cw-cc-card-unknown    { background: #6c757d; color: #fff; }

.cw-cc-status-active        { background: #198754; color: #fff; }
.cw-cc-status-expiring-soon { background: #ffc107; color: #212529; }
.cw-cc-status-expired       { background: #d63638; color: #fff; }
.cw-cc-status-unknown       { background: #6c757d; color: #fff; }

#cw-cc-table td { vertical-align: middle; font-size: 13px; }
#cw-cc-table .pan-masked {
    font-family: 'Courier New', monospace;
    letter-spacing: 1px;
    font-weight: 600;
}
#cw-cc-table .token-masked {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    color: #666;
}
.cw-cc-default-badge { color: #198754; font-size: 14px; }

/* KPI cards */
#cw-cc-kpis .cw-kpi-num { font-size: 28px; font-weight: 700; line-height: 1.1; }
#cw-cc-kpis .cw-kpi-lbl { font-size: 11px; text-transform: uppercase; opacity: 0.7; letter-spacing: 0.05em; }

/* #9240 (2026-05-10) KPI hover/click affordances (port of #9030 .wcp-kpi-card pattern) */
.cw-cc-kpi-card { cursor: pointer; transition: transform 0.15s ease, box-shadow 0.15s ease; }
.cw-cc-kpi-card:hover { transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.08); }
.cw-cc-kpi-card.cw-cc-kpi-active { box-shadow: 0 0 0 2px #1890ff inset, 0 4px 8px rgba(24,144,255,0.2); }
.cw-cc-kpi-card.cw-cc-kpi-aggregate { cursor: help; } /* aggregate KPIs reset filters — signal it's not a row filter */

/* Hero card */
#cw-cc-hero .cw-cc-hero-icon { font-size: 48px; }

/* DataTables.net Bootstrap-friendly tweaks */
#cw-cc-table_wrapper .dataTables_length select,
#cw-cc-table_wrapper .dataTables_filter input { padding: 4px 8px; }
#cw-cc-table_wrapper .dataTables_info { font-size: 12px; color: #666; }
#cw-cc-table_wrapper .pagination { margin-bottom: 0; }
#cw-cc-table_wrapper { padding: 0 8px; }

/* #8912 — Select2 chip alignment + Org column ellipsis */
#cw-admin-credit-cards-wrap .select2-container .select2-selection--single {
    height: calc(1.5em + .5rem + 2px);
    padding: 1px 4px;
    font-size: .875rem;
}
#cw-admin-credit-cards-wrap .select2-container .select2-selection__rendered { line-height: calc(1.5em + .5rem); padding-left: 6px; }
#cw-admin-credit-cards-wrap .select2-container .select2-selection__arrow { height: calc(1.5em + .5rem); }
#cw-cc-table td .dms-badge.dms-badge-primary { white-space: nowrap; max-width: 220px; overflow: hidden; text-overflow: ellipsis; display: inline-block; vertical-align: middle; }
