/* Inventory POS Pro UI — global visual system
   Loaded after the legacy theme so every existing screen receives the same
   modern shell without breaking server-rendered forms or plugin behaviour. */
:root {
    --pro-bg: #f5f7fb;
    --pro-surface: #ffffff;
    --pro-surface-2: #f8fafc;
    --pro-ink: #101828;
    --pro-muted: #667085;
    --pro-border: #e4e7ec;
    --pro-border-strong: #d0d5dd;
    --pro-primary: #335cff;
    --pro-primary-hover: #2449dc;
    --pro-primary-soft: #eef2ff;
    --pro-success: #079455;
    --pro-success-soft: #ecfdf3;
    --pro-warning: #dc6803;
    --pro-warning-soft: #fffaeb;
    --pro-danger: #d92d20;
    --pro-danger-soft: #fef3f2;
    --pro-info: #026aa2;
    --pro-info-soft: #f0f9ff;
    --pro-sidebar: #0b1220;
    --pro-sidebar-muted: #98a2b3;
    --pro-radius-sm: 8px;
    --pro-radius: 14px;
    --pro-radius-lg: 20px;
    --pro-shadow-sm: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06);
    --pro-shadow: 0 10px 30px rgba(16,24,40,.08);
    --pro-focus: 0 0 0 4px rgba(51,92,255,.13);
    --pro-transition: 160ms cubic-bezier(.2,.8,.2,1);
}

html { background: var(--pro-bg) !important; }
body, body.tw-bg-gray-100 { background: var(--pro-bg) !important; color: var(--pro-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
main.tw-bg-gray-100 { background: var(--pro-bg) !important; }
#scrollable-container { background: var(--pro-bg); scrollbar-gutter: stable; }
.content { padding: 24px 28px 36px !important; }
.content-header { padding: 24px 28px 0 !important; }
.content-header h1, .content-header h2 { color: var(--pro-ink); font-weight: 750; letter-spacing: -.03em; }

/* Navigation shell */
.side-bar { background: var(--pro-sidebar) !important; border-right: 1px solid rgba(255,255,255,.06); box-shadow: 8px 0 32px rgba(11,18,32,.12); }
.side-bar, .side-bar * { scrollbar-color: rgba(255,255,255,.18) transparent; }
.side-bar a { border-radius: 10px; color: #d0d5dd !important; transition: background var(--pro-transition), color var(--pro-transition), transform var(--pro-transition); }
.side-bar a:hover { background: rgba(255,255,255,.07) !important; color: #fff !important; transform: translateX(2px); }
.side-bar li.active > a, .side-bar a.active { background: linear-gradient(135deg, rgba(80,112,255,.28), rgba(51,92,255,.15)) !important; color: #fff !important; box-shadow: inset 3px 0 0 #7b91ff; }
.side-bar .chiled { border-left: 1px solid rgba(255,255,255,.09); margin-left: 22px; }
.side-bar svg { stroke-width: 1.75; }
.main-header, header { backdrop-filter: blur(18px); }
.main-header, .tw-sticky.tw-top-0, header.tw-sticky { background: rgba(255,255,255,.9) !important; border-bottom: 1px solid rgba(228,231,236,.9) !important; box-shadow: 0 1px 12px rgba(16,24,40,.035) !important; }

/* Universal cards */
.box, .card, .well, .panel, .widget-user, .nav-tabs-custom, .pro-card, .inv-card {
    background: var(--pro-surface) !important;
    border: 1px solid var(--pro-border) !important;
    border-radius: var(--pro-radius) !important;
    box-shadow: var(--pro-shadow-sm) !important;
}
.box { overflow: visible; }
.box-header, .card-header, .panel-heading { padding: 18px 20px !important; border-bottom: 1px solid var(--pro-border) !important; background: transparent !important; border-radius: var(--pro-radius) var(--pro-radius) 0 0 !important; }
.box-header .box-title, .card-title, .panel-title { font-size: 16px !important; font-weight: 700 !important; color: var(--pro-ink) !important; letter-spacing: -.015em; }
.box-body, .card-body, .panel-body { padding: 20px !important; }
.box-footer, .card-footer, .panel-footer { padding: 16px 20px !important; background: var(--pro-surface-2) !important; border-top: 1px solid var(--pro-border) !important; border-radius: 0 0 var(--pro-radius) var(--pro-radius) !important; }
.box.box-solid > .box-header { color: var(--pro-ink) !important; }

/* Forms */
.form-group { margin-bottom: 18px; }
.form-group label, .control-label { color: #344054; font-size: 13px; font-weight: 650; margin-bottom: 7px; }
.form-control, .select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple, input[type="text"], input[type="number"], input[type="email"], input[type="password"], input[type="date"], textarea, select {
    min-height: 42px;
    border: 1px solid var(--pro-border-strong) !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: var(--pro-ink) !important;
    box-shadow: 0 1px 2px rgba(16,24,40,.03) !important;
    transition: border-color var(--pro-transition), box-shadow var(--pro-transition), background var(--pro-transition);
}
.form-control:focus, .select2-container--focus .select2-selection, input:focus, textarea:focus, select:focus { border-color: #7f96ff !important; box-shadow: var(--pro-focus) !important; outline: none !important; }
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { background: #f2f4f7 !important; color: var(--pro-muted) !important; }
.input-group-addon { border-color: var(--pro-border-strong) !important; background: var(--pro-surface-2) !important; color: var(--pro-muted) !important; }
.help-block { color: var(--pro-muted) !important; font-size: 12px; line-height: 1.5; margin-top: 6px; }
.select2-container--default .select2-selection--single { height: 42px !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 40px !important; padding-left: 12px !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 40px !important; }
.select2-dropdown { border: 1px solid var(--pro-border) !important; border-radius: 12px !important; box-shadow: var(--pro-shadow) !important; overflow: hidden; }
.select2-results__option { padding: 10px 12px !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--pro-primary) !important; }

/* Buttons */
.btn, .tw-dw-btn { min-height: 38px; border-radius: 9px !important; border-width: 1px !important; font-weight: 650 !important; letter-spacing: -.005em; padding: 8px 14px !important; box-shadow: 0 1px 2px rgba(16,24,40,.05); transition: transform var(--pro-transition), box-shadow var(--pro-transition), background var(--pro-transition), border-color var(--pro-transition); }
.btn:hover, .tw-dw-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 10px rgba(16,24,40,.11); }
.btn:active { transform: translateY(0); }
.btn-primary, .tw-dw-btn-primary { background: var(--pro-primary) !important; border-color: var(--pro-primary) !important; color: #fff !important; }
.btn-primary:hover { background: var(--pro-primary-hover) !important; border-color: var(--pro-primary-hover) !important; }
.btn-default { background: #fff !important; border-color: var(--pro-border-strong) !important; color: #344054 !important; }
.btn-success { background: var(--pro-success) !important; border-color: var(--pro-success) !important; }
.btn-warning { background: var(--pro-warning) !important; border-color: var(--pro-warning) !important; color: #fff !important; }
.btn-danger { background: var(--pro-danger) !important; border-color: var(--pro-danger) !important; }
.btn-info { background: var(--pro-info) !important; border-color: var(--pro-info) !important; }
.btn-xs { min-height: 30px; padding: 4px 9px !important; border-radius: 7px !important; }
.btn-lg { min-height: 46px; padding: 11px 18px !important; }

/* Tables and DataTables */
.table-responsive { border: 0 !important; border-radius: 0 0 var(--pro-radius) var(--pro-radius); }
.table { color: #344054; margin-bottom: 0 !important; }
.table > thead > tr > th { background: #f8fafc !important; color: #475467 !important; text-transform: uppercase; letter-spacing: .045em; font-size: 11px; font-weight: 750; border-bottom: 1px solid var(--pro-border) !important; padding: 12px 14px !important; white-space: nowrap; }
.table > tbody > tr > td, .table > tfoot > tr > td { border-top: 1px solid #edf0f4 !important; padding: 13px 14px !important; vertical-align: middle !important; }
.table-hover > tbody > tr { transition: background var(--pro-transition); }
.table-hover > tbody > tr:hover { background: #f8faff !important; }
.table td small { display: block; color: var(--pro-muted); margin-top: 3px; }
table.dataTable { border-collapse: separate !important; border-spacing: 0; }
.dataTables_wrapper .dataTables_filter input, .dataTables_wrapper .dataTables_length select { border-radius: 9px !important; border: 1px solid var(--pro-border-strong) !important; min-height: 36px; }
.dataTables_wrapper .dataTables_filter input { min-width: 220px; padding-left: 12px; }
.dataTables_wrapper .dataTables_info { color: var(--pro-muted); padding-top: 16px !important; }
.pagination > li > a, .pagination > li > span { border: 1px solid var(--pro-border) !important; color: #344054 !important; min-width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; margin: 0 2px; border-radius: 8px !important; }
.pagination > .active > a, .pagination > .active > span { background: var(--pro-primary) !important; border-color: var(--pro-primary) !important; color: #fff !important; }
.dt-buttons { display: flex; gap: 6px; flex-wrap: wrap; }
.dt-button { background: #fff !important; color: #344054 !important; border: 1px solid var(--pro-border) !important; border-radius: 8px !important; padding: 7px 10px !important; }

/* Alerts, labels, tabs, modals */
.alert { border-radius: 12px !important; border: 1px solid transparent !important; padding: 14px 16px !important; }
.alert-success { background: var(--pro-success-soft) !important; color: #05603a !important; border-color: #abefc6 !important; }
.alert-warning { background: var(--pro-warning-soft) !important; color: #93370d !important; border-color: #fedf89 !important; }
.alert-danger { background: var(--pro-danger-soft) !important; color: #912018 !important; border-color: #fecdca !important; }
.alert-info { background: var(--pro-info-soft) !important; color: #175cd3 !important; border-color: #b2ddff !important; }
.label, .badge { border-radius: 999px !important; padding: 5px 9px !important; font-weight: 650; }
.nav-tabs { border-bottom: 1px solid var(--pro-border) !important; }
.nav-tabs > li > a { border: 0 !important; border-bottom: 2px solid transparent !important; color: var(--pro-muted) !important; font-weight: 650; padding: 13px 16px !important; }
.nav-tabs > li.active > a, .nav-tabs > li > a:hover { color: var(--pro-primary) !important; border-bottom-color: var(--pro-primary) !important; background: transparent !important; }
.modal-content { border: 0 !important; border-radius: 18px !important; box-shadow: 0 24px 80px rgba(16,24,40,.25) !important; overflow: hidden; }
.modal-header { border-bottom: 1px solid var(--pro-border) !important; padding: 18px 20px !important; }
.modal-footer { border-top: 1px solid var(--pro-border) !important; background: var(--pro-surface-2); padding: 14px 20px !important; }
.dropdown-menu { border: 1px solid var(--pro-border) !important; border-radius: 12px !important; box-shadow: var(--pro-shadow) !important; padding: 6px !important; }
.dropdown-menu > li > a { border-radius: 8px; padding: 9px 11px !important; }
.dropdown-menu > li > a:hover { background: var(--pro-primary-soft) !important; color: var(--pro-primary) !important; }

/* POS workspace */
body.lockscreen { background: #eef2f7 !important; }
body.lockscreen #scrollable-container { overflow: auto !important; }
.pos-form-actions, .pos-subtotal, .pos-total, .pos-payment-options { border-radius: var(--pro-radius) !important; }
#pos_table, #pos_table tbody, #pos_table tr { background: #fff; }
#pos_table tbody tr { border-bottom: 1px solid var(--pro-border); }
#pos_table td { padding: 10px !important; }
.pos_product_div, .pos_product_div .product_list { scrollbar-color: #cbd5e1 transparent; }
.product_box, .product_list .product { border: 1px solid var(--pro-border) !important; border-radius: 12px !important; box-shadow: var(--pro-shadow-sm); transition: transform var(--pro-transition), box-shadow var(--pro-transition), border-color var(--pro-transition); overflow: hidden; }
.product_box:hover, .product_list .product:hover { transform: translateY(-2px); border-color: #aab8ff !important; box-shadow: 0 10px 24px rgba(16,24,40,.11); }
#pos-finalize, #pos-save { border-radius: 12px !important; }

/* Auth and public screens */
.login-box, .register-box { width: min(460px, calc(100% - 32px)); }
.login-box-body, .register-box-body { border: 1px solid var(--pro-border); border-radius: 20px; box-shadow: var(--pro-shadow); padding: 28px !important; }

/* New command-centre components */
.pro-page { max-width: 1680px; margin: 0 auto; }
.pro-page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.pro-page-header h1 { margin: 4px 0 7px; color: var(--pro-ink); font-size: clamp(26px, 3vw, 38px); line-height: 1.08; font-weight: 780; letter-spacing: -.045em; }
.pro-page-header p { color: var(--pro-muted); margin: 0; max-width: 740px; font-size: 15px; }
.pro-eyebrow { color: var(--pro-primary); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.pro-header-actions { display: flex; gap: 9px; flex-wrap: wrap; }
.pro-health-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px; color: #fff; background: radial-gradient(circle at 10% 0%, rgba(123,145,255,.42), transparent 36%), linear-gradient(135deg, #101828, #162345 72%, #243b78); border-radius: var(--pro-radius-lg); box-shadow: 0 18px 45px rgba(16,24,40,.18); margin-bottom: 18px; }
.pro-health-score { display: flex; align-items: center; gap: 20px; }
.pro-health-score-ring { width: 112px; height: 112px; flex: 0 0 112px; border-radius: 50%; display: grid; place-content: center; text-align: center; background: radial-gradient(circle closest-side, #14213d 78%, transparent 79% 100%), conic-gradient(#8fa3ff calc(var(--score) * 1%), rgba(255,255,255,.13) 0); }
.pro-health-score-ring strong { display: inline; font-size: 35px; line-height: 1; }
.pro-health-score-ring span { color: #c7d7fe; }
.pro-health-score h2 { color: #fff; margin: 4px 0 5px; font-size: 24px; font-weight: 750; }
.pro-health-score p { color: #cbd5e1; margin: 0; }
.pro-health-actions { display: flex; gap: 9px; flex-wrap: wrap; }
.pro-health-actions .btn-default { background: rgba(255,255,255,.10) !important; color: #fff !important; border-color: rgba(255,255,255,.25) !important; }
.pro-stat-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 12px; margin-bottom: 24px; }
.pro-stat-card { background: var(--pro-surface); border: 1px solid var(--pro-border); border-radius: 13px; padding: 15px; display: flex; align-items: center; gap: 12px; box-shadow: var(--pro-shadow-sm); }
.pro-stat-card > i { width: 38px; height: 38px; border-radius: 10px; display: grid; place-content: center; background: var(--pro-primary-soft); color: var(--pro-primary); }
.pro-stat-card span { display: block; color: var(--pro-muted); font-size: 11px; font-weight: 650; }
.pro-stat-card strong { display: block; color: var(--pro-ink); font-size: 21px; line-height: 1.2; margin-top: 2px; }
.pro-section-heading { display: flex; align-items: center; justify-content: space-between; margin: 28px 0 12px; }
.pro-section-heading h2 { margin: 3px 0 0; font-size: 21px; color: var(--pro-ink); font-weight: 750; }
.pro-issue-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 20px; }
.pro-issue-card { display: flex; gap: 13px; padding: 16px; background: #fff; border: 1px solid var(--pro-border); border-radius: 13px; box-shadow: var(--pro-shadow-sm); }
.pro-issue-card.is-critical { border-left: 4px solid var(--pro-danger); }
.pro-issue-card.is-warning { border-left: 4px solid var(--pro-warning); }
.pro-issue-icon { width: 38px; height: 38px; border-radius: 10px; display: grid; place-content: center; flex: 0 0 38px; }
.is-critical .pro-issue-icon { background: var(--pro-danger-soft); color: var(--pro-danger); }
.is-warning .pro-issue-icon { background: var(--pro-warning-soft); color: var(--pro-warning); }
.pro-issue-title { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.pro-issue-title h3 { font-size: 14px; font-weight: 750; margin: 0; color: var(--pro-ink); }
.pro-issue-title span { border-radius: 999px; min-width: 26px; height: 26px; display: grid; place-content: center; font-size: 12px; font-weight: 750; background: #f2f4f7; }
.pro-issue-copy { min-width: 0; flex: 1; }
.pro-issue-copy p { color: var(--pro-muted); font-size: 12px; line-height: 1.5; margin: 6px 0 0; }
.pro-card { margin-bottom: 18px; overflow: hidden; }
.pro-card-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; padding: 19px 20px; border-bottom: 1px solid var(--pro-border); }
.pro-card-header h2 { color: var(--pro-ink); font-size: 17px; font-weight: 750; letter-spacing: -.02em; margin: 3px 0 4px; }
.pro-card-header p { color: var(--pro-muted); font-size: 13px; margin: 0; }
.pro-table td strong { color: var(--pro-ink); }
.pro-empty-state { min-height: 170px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--pro-muted); text-align: center; gap: 7px; }
.pro-empty-state i { font-size: 28px; color: var(--pro-success); }
.pro-empty-state strong { color: var(--pro-ink); }
.pro-empty-state.compact { min-height: 100px; }
.pro-two-column { display: grid; grid-template-columns: 1.25fr .75fr; gap: 18px; }
.pro-count-badge { border-radius: 999px; background: var(--pro-warning-soft); color: var(--pro-warning); padding: 6px 10px; font-weight: 750; }
.pro-list-row { display: flex; justify-content: space-between; gap: 14px; align-items: center; padding: 13px 20px; border-bottom: 1px solid #edf0f4; }
.pro-list-row:last-child { border-bottom: 0; }
.pro-list-row strong, .pro-list-row span { display: block; }
.pro-list-row span { color: var(--pro-muted); font-size: 12px; margin-top: 3px; }
.pro-list-row b { font-variant-numeric: tabular-nums; }
.pro-mini-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--pro-border); }
.pro-mini-metrics a { display: flex; flex-direction: column; gap: 6px; padding: 20px; background: #fff; color: var(--pro-ink); }
.pro-mini-metrics a:hover { background: var(--pro-primary-soft); }
.pro-mini-metrics span { color: var(--pro-muted); font-size: 12px; }
.pro-mini-metrics strong { font-size: 25px; }
.pro-callout { display: flex; gap: 14px; padding: 16px 18px; margin-bottom: 18px; background: var(--pro-info-soft); color: #1849a9; border: 1px solid #b2ddff; border-radius: 13px; }
.pro-callout > i { font-size: 22px; }
.pro-callout strong { color: #175cd3; }
.pro-callout p { margin: 3px 0 0; }
.pro-form-grid { display: grid; grid-template-columns: 1fr 1.5fr auto 1fr 1.5fr; gap: 14px; align-items: end; padding: 20px; }
.pro-form-grid .form-group { margin: 0; }
.pro-map-arrow { width: 38px; height: 42px; display: grid; place-content: center; color: var(--pro-primary); }
.pro-form-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; padding-top: 5px; }
.pro-pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 5px 9px; background: var(--pro-primary-soft); color: var(--pro-primary); font-size: 11px; font-weight: 750; text-transform: capitalize; }
.pro-pagination { padding: 14px 20px; border-top: 1px solid var(--pro-border); }
.pro-settings-layout { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.pro-settings-layout .pro-card { padding-bottom: 6px; }
.pro-settings-layout .form-group { padding: 10px 20px 0; }
.pro-toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 20px; margin: 0; border-bottom: 1px solid #edf0f4; cursor: pointer; }
.pro-toggle-row > div { min-width: 0; }
.pro-toggle-row strong, .pro-toggle-row span { display: block; }
.pro-toggle-row strong { color: var(--pro-ink); font-size: 13px; }
.pro-toggle-row span { color: var(--pro-muted); font-size: 12px; line-height: 1.5; margin-top: 3px; }
.pro-toggle-row input { position: absolute; opacity: 0; pointer-events: none; }
.pro-toggle-row i { width: 42px; height: 24px; border-radius: 999px; background: #d0d5dd; position: relative; flex: 0 0 auto; transition: background var(--pro-transition); }
.pro-toggle-row i:after { content: ''; position: absolute; width: 18px; height: 18px; left: 3px; top: 3px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(16,24,40,.25); transition: transform var(--pro-transition); }
.pro-toggle-row input:checked + i { background: var(--pro-primary); }
.pro-toggle-row input:checked + i:after { transform: translateX(18px); }
.pro-sticky-actions { position: sticky; bottom: 0; z-index: 20; display: flex; justify-content: flex-end; gap: 9px; padding: 14px 18px; background: rgba(245,247,251,.9); backdrop-filter: blur(16px); border-top: 1px solid var(--pro-border); }

/* Command palette */
.pro-command-backdrop { position: fixed; inset: 0; z-index: 99999; display: none; place-items: start center; padding: 10vh 16px 16px; background: rgba(11,18,32,.58); backdrop-filter: blur(5px); }
.pro-command-backdrop.is-open { display: grid; }
.pro-command { width: min(680px, 100%); background: #fff; border: 1px solid rgba(255,255,255,.7); border-radius: 18px; box-shadow: 0 30px 100px rgba(11,18,32,.38); overflow: hidden; }
.pro-command-search { display: flex; align-items: center; gap: 12px; padding: 15px 17px; border-bottom: 1px solid var(--pro-border); }
.pro-command-search i { color: var(--pro-muted); font-size: 17px; }
.pro-command-search input { border: 0 !important; box-shadow: none !important; min-height: 34px; padding: 0 !important; flex: 1; font-size: 16px; }
.pro-command-search kbd { background: #f2f4f7; color: var(--pro-muted); border: 1px solid var(--pro-border); border-radius: 6px; padding: 3px 6px; }
.pro-command-list { padding: 8px; max-height: 55vh; overflow: auto; }
.pro-command-item { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 10px; color: #344054; cursor: pointer; }
.pro-command-item:hover, .pro-command-item.is-active { background: var(--pro-primary-soft); color: var(--pro-primary); }
.pro-command-item i { width: 24px; text-align: center; }
.pro-command-item span { flex: 1; font-weight: 650; }
.pro-command-item small { color: var(--pro-muted); }
.pro-command-empty { padding: 30px; text-align: center; color: var(--pro-muted); }

/* Dark workspace option only affects content; print remains white. */
body.pro-dark { --pro-bg:#0d1422; --pro-surface:#121c2d; --pro-surface-2:#172235; --pro-ink:#f2f4f7; --pro-muted:#98a2b3; --pro-border:#253248; --pro-border-strong:#344054; }
body.pro-dark main.tw-bg-gray-100, body.pro-dark #scrollable-container { background: var(--pro-bg) !important; }
body.pro-dark .box, body.pro-dark .card, body.pro-dark .panel, body.pro-dark .pro-card, body.pro-dark .pro-stat-card, body.pro-dark .pro-issue-card, body.pro-dark .pro-list-row, body.pro-dark .pro-mini-metrics a { background: var(--pro-surface) !important; }
body.pro-dark .table > thead > tr > th { background: var(--pro-surface-2) !important; }
body.pro-dark .table-hover > tbody > tr:hover { background: #18243a !important; }
body.pro-dark .form-control, body.pro-dark input, body.pro-dark textarea, body.pro-dark select, body.pro-dark .select2-selection { background: #111b2b !important; color: var(--pro-ink) !important; }

@media (max-width: 1199px) {
    .pro-stat-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .pro-issue-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .pro-form-grid { grid-template-columns: 1fr 1fr; }
    .pro-map-arrow { display: none; }
}
@media (max-width: 767px) {
    .content { padding: 16px 14px 28px !important; }
    .content-header { padding: 16px 14px 0 !important; }
    .pro-page-header, .pro-health-hero { flex-direction: column; align-items: stretch; }
    .pro-header-actions, .pro-health-actions { width: 100%; }
    .pro-header-actions .btn, .pro-health-actions .btn, .pro-health-actions form { flex: 1; }
    .pro-health-actions form .btn { width: 100%; }
    .pro-health-score { align-items: flex-start; }
    .pro-health-score-ring { width: 86px; height: 86px; flex-basis: 86px; }
    .pro-health-score-ring strong { font-size: 27px; }
    .pro-stat-grid, .pro-issue-grid, .pro-two-column, .pro-settings-layout, .pro-form-grid { grid-template-columns: 1fr; }
    .pro-stat-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .pro-card-header { flex-direction: column; }
    .pro-form-actions { grid-column: auto; }
    .table-responsive { overflow-x: auto; }
    .dataTables_wrapper .dataTables_filter input { min-width: 0; width: 100%; }
}
@media print {
    body, main, #scrollable-container { background: #fff !important; color: #000 !important; }
    .side-bar, header, .main-header, .pro-header-actions, .pro-health-actions, .pro-sticky-actions, .pro-command-backdrop, .dt-buttons, .dataTables_filter, .dataTables_length { display: none !important; }
    .content { padding: 0 !important; }
    .box, .card, .pro-card { box-shadow: none !important; break-inside: avoid; }
}
.pro-health-header-link { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); }
.pro-health-header-link:hover { background: rgba(255,255,255,.20); }
.pro-command-trigger kbd { margin-left: 8px; padding: 2px 5px; border-radius: 5px; background: #f2f4f7; color: #667085; border: 1px solid #e4e7ec; font-size: 10px; }
