/* Legacy skin: gives every OLD (Argon/Bootstrap) page the new look while the new shell is on.
   Loaded only with the shell, scoped to body.wt-skin, so the classic layout never sees it.
   Deliberately NOT in a layer: layered rules lose to the old unlayered theme, and this has to win.
   Pages are still migrated one by one to real wt- components; this removes the "two apps in one" feeling meanwhile. */
html:has(body.wt-skin){background:var(--wt-color-page)}
body.wt-skin{--primary:var(--wt-color-action);--secondary:var(--wt-color-surface);background:var(--wt-color-page) !important;color:var(--wt-color-text);font-family:var(--wt-font-sans) !important;-webkit-font-smoothing:antialiased}
.wt-skin h1:not(.ws *):not(.header *),.wt-skin h2:not(.ws *):not(.header *),.wt-skin h3:not(.ws *):not(.header *),.wt-skin h4:not(.ws *):not(.header *),.wt-skin h5:not(.ws *):not(.header *),.wt-skin h6:not(.ws *):not(.header *),.wt-skin .h1:not(.ws *):not(.header *),.wt-skin .h2:not(.ws *):not(.header *),.wt-skin .h3:not(.ws *):not(.header *),.wt-skin .h4:not(.ws *):not(.header *),.wt-skin .h5:not(.ws *):not(.header *),.wt-skin .h6:not(.ws *):not(.header *){font-family:var(--wt-font-sans);color:var(--wt-color-text);letter-spacing:var(--wt-tracking-heading);font-weight:var(--wt-weight-heavy)}
/* Links: as weak as a bare "a" rule (later in the cascade than the old theme), so any module class that styles its own link-buttons wins */
:where(.wt-skin .main-content) a:where(:not(.ws *)){color:var(--wt-color-action-text)}
.wt-skin .main-content .breadcrumb a{color:var(--wt-color-action-text)}
:where(.wt-skin .main-content) a:where(:not(.ws *)):hover{color:var(--wt-color-action-deep)}
.wt-skin .text-muted,.wt-skin .text-sm.text-muted{color:var(--wt-color-text-muted) !important}
.wt-skin .text-dark,.wt-skin .text-default{color:var(--wt-color-text) !important}
.wt-skin .text-primary,.wt-skin .text-success{color:var(--wt-color-action-text) !important}
.wt-skin .text-danger{color:var(--wt-color-danger-text) !important}
.wt-skin .text-warning{color:var(--wt-color-warning) !important}
.wt-skin .text-info{color:var(--wt-color-info) !important}
.wt-skin .bg-white:not(.icon-shape),.wt-skin .bg-secondary:not(.icon-shape){background-color:var(--wt-color-surface) !important}
.wt-skin .main-content{background:transparent;margin:0 !important;min-height:0}
.wt-skin .main-content > .container-fluid,.wt-skin .main-content > .header > .container-fluid{width:var(--wt-content-width);max-width:none;margin-inline:auto;padding-inline:0 !important}
@media (max-width:900px){.wt-skin .main-content > .container-fluid,.wt-skin .main-content > .header > .container-fluid{width:calc(100% - 2 * var(--wt-space-4))}}
/* Bootstrap rows keep their -15px side margins inside the padding-free container; on pages whose content reaches the right edge (WhatsApp setup) that empty gutter made the page scroll sideways. Clip it (clip, not hidden, so the sticky top bar keeps working). */
.wt-skin .wt-main{overflow-x:clip}

/* The big coloured Argon banner behind page titles becomes a plain header */
/* Solid colour fills that Argon drew as gradients (stat cards, badges, panels) */
.wt-skin .bg-gradient-primary,.wt-skin .bg-gradient-success,.wt-skin .bg-primary,.wt-skin .bg-success{background:var(--wt-color-action) !important;background-image:none !important;color:var(--wt-color-on-action)}
.wt-skin .bg-gradient-info,.wt-skin .bg-info{background:var(--wt-color-info) !important;background-image:none !important;color:var(--wt-color-surface)}
.wt-skin .bg-gradient-danger,.wt-skin .bg-danger{background:var(--wt-color-danger) !important;background-image:none !important;color:var(--wt-color-on-danger)}
.wt-skin .bg-gradient-warning,.wt-skin .bg-warning{background:var(--wt-color-cat-orange) !important;background-image:none !important;color:var(--wt-color-surface)}
.wt-skin .bg-gradient-default,.wt-skin .bg-default{background:var(--wt-color-text-2) !important;background-image:none !important;color:var(--wt-color-surface)}
/* The big coloured banner behind a page title is not a panel: it becomes a plain header (this must come after the fills above) */
.wt-skin .header:not([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header){background:transparent !important;background-image:none !important;color:var(--wt-color-text)}
/* Pages with their own hero banner keep it, as one dark-green panel in both themes (white text stays readable) */
.wt-skin .main-content > .header:is([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header){width:var(--wt-content-width);margin:var(--wt-space-5) auto 0;padding:var(--wt-space-6) var(--wt-space-6) var(--wt-space-8) !important;border-radius:var(--wt-radius-xl);background:linear-gradient(100deg,var(--wt-color-banner),var(--wt-color-banner-2)) !important;color:#fff;--wt-color-on-action:#fff;--wt-color-text-inverse:#fff}
.wt-skin .main-content > .header:is([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header) :is(.text-muted,.text-white-50,small):not(:is(.card,[class*="-card"]) *){color:rgba(255,255,255,.8) !important}
.wt-skin .main-content > .header:is([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header) :is(.card,[class*="-card"]){color:var(--wt-color-text)}
.wt-skin .main-content > .header:is([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header) > .container-fluid{width:100%}
/* Round icons on stat cards: a soft tile with a coloured icon, so the icon is always visible */
.wt-skin .icon-shape,.wt-skin .icon.icon-shape{background:var(--wt-color-action-tint) !important;background-image:none !important;color:var(--wt-color-action-text) !important;box-shadow:none}
.wt-skin .icon-shape i,.wt-skin .icon-shape svg,.wt-skin .icon-shape .text-white{color:inherit !important}
.wt-skin .icon-shape.bg-gradient-info,.wt-skin .icon-shape.bg-info{background:var(--wt-color-info-tint) !important;color:var(--wt-color-info) !important}
.wt-skin .icon-shape.bg-gradient-danger,.wt-skin .icon-shape.bg-danger{background:var(--wt-color-danger-tint) !important;color:var(--wt-color-danger-text) !important}
.wt-skin .icon-shape.bg-gradient-warning,.wt-skin .icon-shape.bg-warning{background:var(--wt-color-warning-tint) !important;color:var(--wt-color-warning) !important}
.wt-skin .icon-shape.bg-gradient-default,.wt-skin .icon-shape.bg-default,.wt-skin .icon-shape.bg-white{background:var(--wt-color-surface-sunken) !important;color:var(--wt-color-text-2) !important}
.wt-skin .header.pb-8{padding-bottom:var(--wt-space-4) !important}
.wt-skin .header.pt-md-8,.wt-skin .header.pt-5{padding-top:var(--wt-space-6) !important}
.wt-skin .mt--6,.wt-skin .mt--7{margin-top:0 !important}
.wt-skin .header:not([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header) :is(.text-white,h1,h2,.text-light){color:var(--wt-color-text) !important}
.wt-skin .header:not([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header) .text-white-50{color:var(--wt-color-text-muted) !important}
/* Inside the (now transparent) page header, "light text" tokens mean normal text; buttons keep their own */
.wt-skin .header:not([style*="background"],.recovery-header,.campaign-builder-hero,.crm-import-header){--wt-color-on-action:var(--wt-color-text);--wt-color-text-inverse:var(--wt-color-text)}
.wt-skin .header .btn,.wt-skin .header .wt-btn,.wt-skin .header .badge,.wt-skin .header [class*="bg-"]{--wt-color-on-action:var(--wt-color-on-action-base);--wt-color-text-inverse:var(--wt-color-text-inverse-base)}
.wt-skin .header .btn-outline-light,.wt-skin .header .btn-outline-white,.wt-skin .header .btn-white,.wt-skin .btn-outline-light{background:var(--wt-color-surface) !important;border:1px solid var(--wt-color-border-strong) !important;color:var(--wt-color-action-deep) !important}

/* Cards */
.wt-skin .card{background:var(--wt-color-surface);color:var(--wt-color-text);border:1px solid var(--wt-color-border);border-radius:var(--wt-radius-xl);box-shadow:none}
.wt-skin .card-header{background:transparent;border-bottom:1px solid var(--wt-color-border);color:var(--wt-color-text)}
.wt-skin .card-footer{background:transparent;border-top:1px solid var(--wt-color-border)}
.wt-skin .card-body{color:var(--wt-color-text)}
.wt-skin .card .card-title{color:var(--wt-color-text)}
.wt-skin .shadow,.wt-skin .shadow-sm,.wt-skin .card.shadow{box-shadow:var(--wt-shadow-1) !important}
.wt-skin .icon.icon-shape{border-radius:var(--wt-radius-lg)}

/* Buttons */
.wt-skin .btn{font-family:var(--wt-font-sans);font-weight:var(--wt-weight-heavy);font-size:15px;border-radius:var(--wt-radius-md);box-shadow:none;text-transform:none;letter-spacing:0;transform:none;transition:background var(--wt-duration-fast) var(--wt-ease-standard)}
.wt-skin .btn-sm{min-height:40px;padding:0 18px;font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.wt-skin .btn:hover,.wt-skin .btn:focus{transform:none;box-shadow:none}
.wt-skin .btn:focus-visible,.wt-skin .btn:focus{box-shadow:var(--wt-focus-ring) !important}
.wt-skin .btn-primary,.wt-skin .btn-success,.wt-skin .btn-default,.wt-skin .btn-info,.wt-skin .nav-pills .nav-link.active{background:var(--wt-color-action) !important;border-color:var(--wt-color-action) !important;color:var(--wt-color-on-action) !important}
.wt-skin .btn-primary:hover,.wt-skin .btn-success:hover,.wt-skin .btn-default:hover,.wt-skin .btn-info:hover,.wt-skin .btn-primary:not(:disabled):not(.disabled):active{background:var(--wt-color-action-hover);border-color:var(--wt-color-action-hover);color:var(--wt-color-on-action)}
.wt-skin .btn-secondary,.wt-skin .btn-light,.wt-skin .btn-white,.wt-skin .btn-neutral{background:var(--wt-color-surface);border:1px solid var(--wt-color-border-strong);color:var(--wt-color-action-deep)}
.wt-skin .btn-secondary:hover,.wt-skin .btn-light:hover,.wt-skin .btn-white:hover,.wt-skin .btn-neutral:hover{background:var(--wt-color-action-tint);color:var(--wt-color-action-deep)}
.wt-skin .btn-outline-primary,.wt-skin .btn-outline-success,.wt-skin .btn-outline-default,.wt-skin .btn-outline-info{background:transparent;border:1px solid var(--wt-color-action);color:var(--wt-color-action-text)}
.wt-skin .btn-outline-primary:hover,.wt-skin .btn-outline-success:hover,.wt-skin .btn-outline-default:hover,.wt-skin .btn-outline-info:hover{background:var(--wt-color-action-tint);color:var(--wt-color-action-deep)}
.wt-skin .btn-danger{background:var(--wt-color-danger);border-color:var(--wt-color-danger);color:var(--wt-color-on-danger)}
.wt-skin .btn-outline-danger{background:transparent;border:1px solid var(--wt-color-danger);color:var(--wt-color-danger-text)}
.wt-skin .btn-warning{background:var(--wt-color-warning-tint);border-color:var(--wt-color-warning);color:var(--wt-color-warning)}
.wt-skin .btn-link{color:var(--wt-color-action-text);background:transparent;border:0}
.wt-skin .btn.disabled,.wt-skin .btn:disabled{opacity:.5}

/* Forms */
.wt-skin .form-control,.wt-skin .custom-select,.wt-skin select.form-control,.wt-skin textarea.form-control,.wt-skin .select2-container--default .select2-selection--single,.wt-skin .select2-container--default .select2-selection--multiple{background-color:var(--wt-color-surface);color:var(--wt-color-text);border:1px solid var(--wt-color-border-strong);border-radius:var(--wt-radius-md);box-shadow:none;font-family:var(--wt-font-sans)}
.wt-skin .form-control,.wt-skin .custom-select{border:1px solid var(--wt-color-border-strong) !important;border-radius:var(--wt-radius-md) !important;padding-inline:var(--wt-space-3)}
.wt-skin .form-control:focus,.wt-skin .custom-select:focus{background-color:var(--wt-color-surface);color:var(--wt-color-text);border-color:var(--wt-color-action);box-shadow:var(--wt-focus-ring)}
.wt-skin .form-control::placeholder{color:var(--wt-color-text-faint)}
.wt-skin .form-control:disabled,.wt-skin .form-control[readonly]{background-color:var(--wt-color-surface-sunken);color:var(--wt-color-text-muted)}
.wt-skin .form-control.is-invalid{border-color:var(--wt-color-danger)}
.wt-skin .invalid-feedback{color:var(--wt-color-danger-text)}
.wt-skin .form-control-label,.wt-skin label:not(.ws *),.wt-skin .col-form-label{color:var(--wt-color-text-2);font-weight:var(--wt-weight-semibold)}
.wt-skin .input-group-text{background:var(--wt-color-surface-sunken);color:var(--wt-color-text-muted);border:1px solid var(--wt-color-border-strong)}
.wt-skin .input-group-alternative{background:var(--wt-color-surface);box-shadow:none;border:1px solid var(--wt-color-border-strong)}
.wt-skin .custom-control-input:checked ~ .custom-control-label::before{background:var(--wt-color-action);border-color:var(--wt-color-action)}
.wt-skin .select2-dropdown{background:var(--wt-color-surface);color:var(--wt-color-text);border-color:var(--wt-color-border-strong)}

/* Tables */
.wt-skin .table{color:var(--wt-color-text)}
.wt-skin .table th,.wt-skin .table thead th{background:transparent;color:var(--wt-color-text-muted);font-size:var(--wt-text-xs);font-weight:var(--wt-weight-semibold);text-transform:none;letter-spacing:0;border-bottom:1px solid var(--wt-color-border-strong);border-top:0}
.wt-skin .table td{border-top:1px solid var(--wt-color-border);color:var(--wt-color-text)}
.wt-skin .thead-light th{background:transparent;color:var(--wt-color-text-muted)}
.wt-skin .table-hover tbody tr:hover,.wt-skin .table-striped tbody tr:nth-of-type(odd){background:var(--wt-color-surface-sunken)}
.wt-skin .table-responsive{border-radius:var(--wt-radius-lg)}

/* Badges, alerts, progress */
.wt-skin .badge{border-radius:var(--wt-radius-pill);font-weight:var(--wt-weight-semibold);text-transform:none;letter-spacing:0;background:var(--wt-color-surface-sunken);color:var(--wt-color-text-2)}
.wt-skin .badge-success,.wt-skin .badge-primary{background:var(--wt-color-success-tint);color:var(--wt-color-success)}
.wt-skin .badge-warning{background:var(--wt-color-warning-tint);color:var(--wt-color-warning)}
.wt-skin .badge-danger{background:var(--wt-color-danger-tint);color:var(--wt-color-danger-text)}
.wt-skin .badge-info,.wt-skin .badge-default{background:var(--wt-color-info-tint);color:var(--wt-color-info)}
.wt-skin .alert{border:0;border-radius:var(--wt-radius-sm);background:var(--wt-color-surface-sunken) !important;color:var(--wt-color-text-2) !important;box-shadow:none}
.wt-skin .alert-success{background:var(--wt-color-success-tint) !important;color:var(--wt-color-success) !important}
.wt-skin .alert-warning{background:var(--wt-color-warning-tint) !important;color:var(--wt-color-warning) !important}
.wt-skin .alert-danger,.wt-skin .alert-error{background:var(--wt-color-danger-tint) !important;color:var(--wt-color-danger-text) !important}
.wt-skin .alert-info,.wt-skin .alert-primary,.wt-skin .alert-default{background:var(--wt-color-info-tint) !important;color:var(--wt-color-info) !important}
.wt-skin .alert .close{color:inherit}
.wt-skin .progress{background:var(--wt-color-border);border-radius:var(--wt-radius-pill);box-shadow:none}
.wt-skin .progress-bar,.wt-skin .bg-success.progress-bar{background:var(--wt-color-action)}

/* Tabs, pills, dropdowns, pagination, list groups, modals */
.wt-skin .nav-tabs{border-bottom:1px solid var(--wt-color-border)}
.wt-skin .nav-tabs .nav-link{border:0;border-bottom:2px solid transparent;color:var(--wt-color-text-muted);font-weight:var(--wt-weight-semibold);background:transparent}
.wt-skin .nav-tabs .nav-link.active{color:var(--wt-color-action-text);border-bottom-color:var(--wt-color-action);background:transparent}
.wt-skin .nav-pills .nav-link{border-radius:var(--wt-radius-md);color:var(--wt-color-text-2);background:transparent;box-shadow:none}
.wt-skin .nav-pills .nav-link.active{background:var(--wt-color-action-tint);color:var(--wt-color-action-deep)}
.wt-skin .dropdown-menu{background:var(--wt-color-surface);border:1px solid var(--wt-color-border);border-radius:var(--wt-radius-lg);box-shadow:var(--wt-shadow-3)}
.wt-skin .dropdown-item{color:var(--wt-color-text);border-radius:var(--wt-radius-sm)}
.wt-skin .dropdown-item:hover,.wt-skin .dropdown-item:focus{background:var(--wt-color-action-tint);color:var(--wt-color-text)}
.wt-skin .dropdown-divider{border-color:var(--wt-color-border)}
.wt-skin .page-link{background:var(--wt-color-surface);border:1px solid var(--wt-color-border);color:var(--wt-color-text-2);border-radius:var(--wt-radius-sm);margin-inline:2px}
.wt-skin .page-item.active .page-link{background:var(--wt-color-action);border-color:var(--wt-color-action);color:var(--wt-color-on-action)}
.wt-skin .list-group-item{background:var(--wt-color-surface);color:var(--wt-color-text);border-color:var(--wt-color-border)}
.wt-skin .modal-content{background:var(--wt-color-surface);color:var(--wt-color-text);border:1px solid var(--wt-color-border);border-radius:var(--wt-radius-xl);box-shadow:var(--wt-shadow-3)}
.wt-skin .modal-header,.wt-skin .modal-footer{border-color:var(--wt-color-border);background:transparent}
.wt-skin .modal-header .close,.wt-skin .close{color:var(--wt-color-text-muted);text-shadow:none}
.wt-skin .breadcrumb{background:transparent !important}
.wt-skin .breadcrumb-item.active,.wt-skin .breadcrumb-item+.breadcrumb-item::before{color:var(--wt-color-text-muted) !important}
.wt-skin hr:not(.ws *){border-color:var(--wt-color-border)}
.wt-skin .border,.wt-skin .border-bottom,.wt-skin .border-top{border-color:var(--wt-color-border) !important}
.wt-skin code:not(.ws *){color:var(--wt-color-action-deep);background:var(--wt-color-action-tint);border-radius:4px}

/* Old top navbar title strip, if a page still renders it */
.wt-skin .navbar-top{background:transparent}

/* Selects: the arrow gets space from the border; the distance comes from the global tokens */
.wt-skin select.form-control,.wt-skin .custom-select{-webkit-appearance:none;appearance:none;padding-inline-end:var(--wt-select-pad-end) !important;background-image:linear-gradient(45deg,transparent 50%,var(--wt-color-text-muted) 50%),linear-gradient(135deg,var(--wt-color-text-muted) 50%,transparent 50%) !important;background-position:calc(100% - var(--wt-select-arrow-gap)) 50%,calc(100% - var(--wt-select-arrow-gap) + 5px) 50% !important;background-size:5px 5px,5px 5px !important;background-repeat:no-repeat !important}
[dir="rtl"] .wt-skin select.form-control,[dir="rtl"] .wt-skin .custom-select{background-position:var(--wt-select-arrow-gap) 50%,calc(var(--wt-select-arrow-gap) - 5px) 50% !important}

/* Chat pages fill the screen: fit them between the new top bar and the bottom, no footer */
body.chat-page-mode.wt-skin .wt-foot{display:none}
body.chat-page-mode.wt-skin .wt-main{height:100dvh;min-height:0;overflow:hidden}
body.chat-page-mode.wt-skin .wt-main > .main-content{display:flex;flex-direction:column;min-height:0 !important;flex:1;overflow:hidden}
body.chat-page-mode.wt-skin #chatList.chat-page-shell{flex:1 1 0;width:var(--wt-chat-width) !important;max-width:none !important;margin-inline:auto !important;padding:var(--wt-space-3) 0 var(--wt-space-4) !important;height:auto !important;min-height:0 !important;max-height:none !important}

/* Tables must fit the card: tighter cells, smaller row buttons and avatars (no cut-off Actions column) */
.wt-skin .table td,.wt-skin .table th{padding:12px 10px !important;vertical-align:middle}
.wt-skin .table td .btn,.wt-skin .table td .btn-sm{min-height:34px !important;padding:0 12px !important;font-size:13px !important;white-space:nowrap}
.wt-skin .table td .btn-icon,.wt-skin .table td .btn.px-2{padding:0 10px !important}
.wt-skin .table .avatar,.wt-skin .table .avatar-sm{width:36px !important;height:36px !important}
.wt-skin .table-responsive{max-width:100%}
.wt-skin .card{max-width:100%}
/* Chips with a colour picked by the user (group colours): always readable text */
.wt-skin .badge[style*="background"]{color:#fff !important}
/* One focus ring, the brand green, everywhere (no blue browser ring) */
.wt-skin :focus-visible{outline:2px solid var(--wt-color-action);outline-offset:2px}
.wt-skin .wt-input:focus-visible,.wt-skin .form-control:focus-visible,.wt-skin .wt-search-input:focus-visible{outline:none}

/* Contact avatars: initials underneath, the photo (when there is one) on top */
.wt-skin .wt-contact-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;background:var(--wt-color-action-tint) !important;color:var(--wt-color-action-text) !important;font-weight:var(--wt-weight-bold);font-size:13px;overflow:hidden;flex:none}
.wt-skin .wt-contact-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* A Bootstrap row placed straight in the page header: keep it inside the content width (no side-scroll) */
.wt-skin .main-content > .header > .row{width:var(--wt-content-width);margin-inline:auto !important}
/* Long tables: let cell text wrap so the table fits the card; actions stay on one line */
.wt-skin .table td,.wt-skin .table th{white-space:normal}
.wt-skin .table td:last-child,.wt-skin .table th:last-child{white-space:nowrap}
.wt-skin .page-item.disabled .page-link,.wt-skin span.page-link{color:var(--wt-color-text-muted)}
/* File inputs (custom-file) */
.wt-skin .custom-file-label{background:var(--wt-color-surface);color:var(--wt-color-text-2);border-color:var(--wt-color-border-strong)}
.wt-skin .custom-file-label::after{background:var(--wt-color-surface-sunken);color:var(--wt-color-text-2)}
/* Code blocks and pre: readable in both themes */
.wt-skin pre:not(.ws *){background:var(--wt-color-surface-sunken) !important;color:var(--wt-color-text) !important;border:1px solid var(--wt-color-border);border-radius:var(--wt-radius-md)}

/* Outline buttons the old theme drew in near-white */
.wt-skin .btn-outline-secondary,.wt-skin .btn-outline-dark,.wt-skin .btn-outline-default{background:var(--wt-color-surface) !important;border:1px solid var(--wt-color-border-strong) !important;color:var(--wt-color-text-2) !important}
.wt-skin .btn-outline-secondary:hover,.wt-skin .btn-outline-dark:hover,.wt-skin .btn-outline-default:hover{background:var(--wt-color-surface-sunken) !important;color:var(--wt-color-text) !important}
.wt-skin .btn-outline-warning{background:transparent !important;border:1px solid var(--wt-color-warning) !important;color:var(--wt-color-warning) !important}
/* White text/icons sitting on light fills */
.wt-skin .bg-white .text-white,.wt-skin .bg-secondary .text-white,.wt-skin .bg-light .text-white,.wt-skin .bg-white.text-white,.wt-skin .bg-secondary.text-white,.wt-skin .bg-light.text-white{color:var(--wt-color-text-2) !important}
.wt-skin .bg-light{background-color:var(--wt-color-surface-sunken) !important}

.wt-skin :is(.bg-gradient-primary,.bg-gradient-success,.bg-primary,.bg-success) :is(.text-white,.text-white-50,h1,h2,h3,h4,h5,p){color:var(--wt-color-on-action) !important}

/* Every list page (general/index): the card holds the table edge to edge, cells breathe, nothing is cut */
.wt-listcard{padding:0;overflow:hidden}
.wt-listcard .table-responsive{overflow-x:auto;width:100%}
.wt-listcard .table{margin-bottom:0;width:100%}
.wt-listcard .card-footer{background:transparent;border-top:1px solid var(--wt-color-border)}
.wt-listcard .card-header{background:transparent}
.wt-listcrumbs .breadcrumb{padding:0;margin:0;background:transparent}
.wt-listcrumbs nav{margin:0}

/* Small icon buttons in table rows (edit, delete) are soft tiles, not loud solid fills */
.wt-skin .table td .btn-success,.wt-skin .table td .btn-primary:not(.btn-block):not(:only-child){background:var(--wt-color-action-tint) !important;border-color:transparent !important;color:var(--wt-color-action-text) !important}
.wt-skin .table td .btn-danger{background:var(--wt-color-danger-tint) !important;border-color:transparent !important;color:var(--wt-color-danger-text) !important}
.wt-skin .table td .btn-success:hover{background:var(--wt-color-action) !important;color:var(--wt-color-on-action) !important}
.wt-skin .table td .btn-danger:hover{background:var(--wt-color-danger) !important;color:var(--wt-color-on-danger) !important}
