/* ALTMEZ V128 HF5.1 — Full UI Contrast Fix
   UI-only compatibility layer. No model/database/API/business logic changes. */
:root,
html[data-altmez-theme="dark"]{
  color-scheme:dark;
  --a-bg:#06111f;
  --a-bg2:#07182a;
  --a-panel:#0a1b2f;
  --a-panel-2:#0d223a;
  --a-panel-3:#102943;
  --a-nav:#07182a;
  --a-line:#1b4764;
  --a-line-soft:rgba(111,164,197,.22);
  --a-text:#f4f8fc;
  --a-muted:#a7bacb;
  --a-accent:#1aa6a6;
  --a-accent-2:#2b9fd4;
  --a-accent-soft:rgba(26,166,166,.18);
  --a-success:#63d59c;
  --a-success-bg:rgba(40,185,120,.15);
  --a-warning:#f1b85c;
  --a-warning-bg:rgba(215,155,53,.16);
  --a-danger:#ff7b86;
  --a-danger-bg:rgba(217,83,95,.16);
  --a-info:#67c5f3;
  --a-info-bg:rgba(43,159,212,.15);
  --a-shadow:0 14px 32px rgba(0,0,0,.16);
  --a-radius:14px;
  /* Legacy variables used throughout app.css */
  --bg:var(--a-bg);
  --card:var(--a-panel);
  --text:var(--a-text);
  --muted:var(--a-muted);
  --primary:var(--a-accent);
  --border:var(--a-line);
  --danger:var(--a-danger);
  --warn:var(--a-warning);
  --sc-brand:var(--a-accent);
  --sc-ink:var(--a-text);
  --sc-muted:var(--a-muted);
  --sc-line:var(--a-line);
  --sc-shadow:var(--a-shadow);
}
html[data-altmez-theme="light"]{
  color-scheme:light;
  --a-bg:#eaf0f5;
  --a-bg2:#f3f6f9;
  --a-panel:#ffffff;
  --a-panel-2:#f5f8fa;
  --a-panel-3:#e8f0f5;
  --a-nav:#07182a;
  --a-line:#b9cad6;
  --a-line-soft:rgba(52,78,97,.18);
  --a-text:#10283b;
  --a-muted:#526a7e;
  --a-accent:#0f8d8d;
  --a-accent-2:#0d6f9d;
  --a-accent-soft:rgba(15,141,141,.10);
  --a-success:#116b45;
  --a-success-bg:#e8f7ef;
  --a-warning:#8a570c;
  --a-warning-bg:#fff3d9;
  --a-danger:#a72532;
  --a-danger-bg:#fdebed;
  --a-info:#155f89;
  --a-info-bg:#e8f4fb;
  --a-shadow:0 10px 24px rgba(28,52,70,.09);
  --bg:var(--a-bg);
  --card:var(--a-panel);
  --text:var(--a-text);
  --muted:var(--a-muted);
  --primary:var(--a-accent);
  --border:var(--a-line);
  --danger:var(--a-danger);
  --warn:var(--a-warning);
  --sc-brand:var(--a-accent);
  --sc-ink:var(--a-text);
  --sc-muted:var(--a-muted);
  --sc-line:var(--a-line);
  --sc-shadow:var(--a-shadow);
}

*{box-sizing:border-box}
html,body{min-height:100%;background:var(--a-bg)!important;color:var(--a-text)!important}
body{margin:0;background:linear-gradient(180deg,var(--a-bg),var(--a-bg2) 56%,var(--a-bg))!important;color:var(--a-text)!important}
body,button,input,select,textarea{font-family:system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif}
a{color:var(--a-accent-2)}
main,.main,.content,.page,.page-content,.container,.wrapper,.app,.layout{color:var(--a-text)!important}
hr,.sep{border-color:var(--a-line-soft)!important;background:var(--a-line-soft)!important}

/* Navigation stays dark in both themes for consistent contrast. */
.topbar,header.topbar,body>header,.navbar,.top-nav,.app-header,.main-header{
  background:var(--a-nav)!important;color:#f7fbff!important;border-color:#173a54!important;
}
.topbar *:not(input):not(select):not(textarea):not(option),
header.topbar *:not(input):not(select):not(textarea):not(option){color:#f7fbff}
.topbar small,header.topbar small{color:#b6c8d8!important}
.topbar a,.topbar .link-button{color:#f7fbff!important}
.global-support-nav{background:#0f8d83!important;color:#fff!important}

/* Core surfaces. Deliberately excludes semantic alerts/statuses and hero banners. */
:where(
  .c,.card,.panel,.box,.widget,.section-card,.content-card,.stat,.opbox,.cat,.product,.sourcecard,.pricebox,
  .settings-group,.feature-grid>div,.connection-status,.category-card,.category-product-row,.salla-category-node,.empty-category,
  .stat-card,.qr-box,.message-details>div,.make-status-box,.processor-stats>div,.catalog-sync-status,
  .triage-dashboard-stat,.triage-category-group,.triage-identity,.triage-panel,.triage-pre,.triage-preview-result,
  .whatsapp-center-tabs,.support-case-accordion,.support-case-body,.support-unread-card,.support-unread-body,.support-kpi,
  .support-menu-grid>a,.sc-tabs,.sc-kpi,.sc-section,.sc-help-card,.sc-filter-panel,.sc-results-count,.sc-case,.sc-case-body,
  .sc-panel,.sc-mini-details details,.sc-empty,.manual-provider-link,.manual-provider-advanced,.sc-compensation-dashboard,
  .sc-simple-health,.sc-simple-stages>a,.sc-simple-tools,.sc-simple-cases,.sc-simple-case,.sc-simple-case-body,
  .sc-simple-conversation-card,.sc-simple-order-card,.sc-simple-status-form,.sc-simple-suggestion,.sc-simple-case-actions,
  .sc-order-link-form,.ue-order-title,.ue-kpis,.ue-kpis>div,.ue-link-flow>article,.ue-operation-tabs a,.ue-form-section,
  .sp-panel,.sp-run,.sp-stat,.sp-history,.sp-line,.ac-card,.ac-stat,.wa-kpis>div,.wa-kpis>a,.wa-check,.wa-advanced,
  .smart-tab,.smart-card,.order-meta>div,.timeline>div,.action-box,.attempt-row,.advanced-tools,.manual-entry-panel
){
  background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;box-shadow:none!important;
}
:where(.stat,.opbox,.cat,.product,.sourcecard,.pricebox,.sp-stat,.ue-kpis>div,.order-meta>div,.timeline>div,.attempt-row){background:var(--a-panel-2)!important}
html[data-altmez-theme="light"] :where(.c,.card,.panel,.box,.widget,.section-card,.content-card,.sp-panel,.sp-run,.sc-section,.smart-card,.ac-card){box-shadow:var(--a-shadow)!important}

/* Text: protect readability against legacy hard-coded light/dark colors. */
:where(h1,h2,h3,h4,h5,h6,legend){color:var(--a-text)!important}
b,strong{color:inherit}
:where(.muted,.text-muted,.help,.hint,.field-help,.original,.ac-muted,.ac-small,.sp-panel-head p,.sp-run-meta,.sp-stat span,.sp-line-meta,
  .wa-kpis small,.wa-section-head p,.wa-flow li span,.sc-simple-hero p,.sc-simple-health,.sc-simple-stages small,.sc-simple-customer-message p,
  .ue-kpis small,.ue-link-flow small,.ue-operation-head p,.ue-operation-tabs small,.action-box p,.timeline small,.order-meta small,.muted-note){color:var(--a-muted)!important}
:where(.c,.card,.panel,.box,.widget,.sp-panel,.sp-run,.sc-section,.smart-card,.ac-card,.wa-kpis,.ue-order-title,.ue-kpis)
  :where(p,label,summary,td,th){color:var(--a-text)}
code,pre,.sku,.ac-command{color:var(--a-text)!important;background:var(--a-panel-3)!important;border-color:var(--a-line)!important}
.api-link{color:var(--a-accent-2)!important}

/* Forms and native controls. */
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,
.field input,.field select,.price-input,.fileinput,.sc-field input,.sc-field select,.sc-field textarea,
.sp-field input,.sp-field select,.sp-field textarea,.ac-field input,.ac-field select,.sc-order-link-controls input,.sp-search input{
  background:var(--a-panel-2)!important;color:var(--a-text)!important;border:1px solid var(--a-line)!important;border-radius:9px!important;box-shadow:none!important;outline:none!important;
}
input::placeholder,textarea::placeholder{color:var(--a-muted)!important;opacity:.85}
input:focus,select:focus,textarea:focus,.form-control:focus{border-color:var(--a-accent-2)!important;box-shadow:0 0 0 3px rgba(43,159,212,.13)!important}
select option,optgroup{background:var(--a-panel)!important;color:var(--a-text)!important}
input[type="checkbox"],input[type="radio"]{accent-color:var(--a-accent)}
input[type="file"]::file-selector-button{background:var(--a-panel-3);color:var(--a-text);border:1px solid var(--a-line);border-radius:7px;padding:6px 9px}
.readonly{background:var(--a-panel-3)!important;color:var(--a-muted)!important}

/* Buttons. */
button,.button,.btn,input[type="submit"],input[type="button"],a.btn,.ac-btn,.sp-btn,.sc-btn{
  border-radius:9px;box-shadow:none;
}
button:not(.secondary):not(.delete-button):not(.link-button):not([class*="light"]):not([class*="ghost"]),
.button:not(.secondary):not(.delete-button),.btn:not(.light):not(.secondary):not(.gray):not(.grey):not(.dark):not(.red):not(.danger):not(.amber):not(.blue),
input[type="submit"],input[type="button"]{
  background:linear-gradient(180deg,var(--a-accent),#117f82)!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important;
}
:where(.secondary,.btn.light,.btn.secondary,.btn.gray,.btn.grey,.delete-button,.toolbar .delete-button,.ac-btn.light,.sp-btn-secondary,.sp-btn-ghost,.sc-btn-light){
  background:var(--a-panel-3)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;
}
.btn.dark,.ac-btn.secondary{background:#203f57!important;color:#fff!important;border-color:#315d78!important}
.btn.blue{background:#176fa7!important;color:#fff!important}.btn.amber,.ac-btn.warn{background:#9d6818!important;color:#fff!important}
.btn.red,.btn.danger,.ac-btn.danger,.sp-btn-danger,.danger-action,.sc-btn-danger-solid{background:#a93743!important;color:#fff!important}
button:disabled,.btn:disabled{opacity:.48!important;transform:none!important;cursor:not-allowed!important}

/* Tables. */
table,.table,.table-responsive,.table-wrap,.ac-table-wrap{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
th,.ac-table th,.sp-table thead th,.sp-history-table th{background:var(--a-panel-3)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
td,.ac-table td,.sp-table tbody td,.sp-history-table td{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line-soft)!important}
tbody tr:nth-child(even) td{background:var(--a-panel-2)!important}
tbody tr:hover td,.sp-table tbody tr:hover td{background:var(--a-accent-soft)!important}

/* Neutral notices that were cream/white in the legacy CSS. */
.note,.help-box,.balance-alert-box,.sc-action-box,.triage-owner-note,.sp-note-warning{
  background:var(--a-warning-bg)!important;color:var(--a-warning)!important;border-color:color-mix(in srgb,var(--a-warning) 45%,transparent)!important;
}
.note :where(p,span,small,b,strong),.help-box :where(p,span,small,b,strong),.balance-alert-box :where(p,span,small,b,strong),.sp-note-warning :where(p,span,small,b,strong){color:inherit!important}
.sp-note-info,.notice,.info,.sc-notice-info{background:var(--a-info-bg)!important;color:var(--a-info)!important;border-color:color-mix(in srgb,var(--a-info) 42%,transparent)!important}

/* Success / warning / danger / info states — preserve meaning without bright white blocks. */
:where(.safe,.ok,.success,.status-completed,.connection-connected,.badge.completed,.badge.ok,.ac-ok,.ac-badge.ok,.sp-state-completed,.sp-badge-completed,
  .sc-status.status-resolved,.sc-status.status-compensated,.sc-compensation-card.compensation-completed,.sc-compensation-card.compensation-verified,
  .catalog-linked,.linked-product-row td,.category-product-row.is-linked,.support-message-bubble.direction-out,.triage-reply,.ue-notify-choice,.sc-reply-box,.manual-entry-panel>summary){
  background:var(--a-success-bg)!important;color:var(--a-success)!important;border-color:color-mix(in srgb,var(--a-success) 42%,transparent)!important;
}
:where(.warn,.warning,.alert:not(.error):not(.info):not(.success),.status-queued,.badge.manual,.badge.retry,.provider-alert-badge.alert-enabled,
  .sp-state-sent,.sp-state-queued,.sp-badge-pending,.priority-high,.triage-status-badge.status-waiting_customer,.sc-status.status-waiting_customer,.sc-status.status-waiting_provider,
  .sc-status.status-compensation_review,.ue-op-badge.op-resend,.decision.blocked){
  background:var(--a-warning-bg)!important;color:var(--a-warning)!important;border-color:color-mix(in srgb,var(--a-warning) 42%,transparent)!important;
}
:where(.bad,.error,.danger,.alert.error,.status-failed,.badge.failed,.badge.incomplete,.connection-failed,.provider-alert-badge.alert-low,.provider-low-balance,.low-balance-stat,
  .catalog-unavailable,.complaint-status.status-new,.priority-critical,.triage-status-badge.status-new,.support-unread-total,.sc-priority.priority-critical,
  .sc-notice-error,.sc-compensation-card.compensation-expired,.sc-compensation-card.compensation-needs_staff,.sp-state-failed,.sp-state-partial,.sp-badge-incomplete,.sp-badge-partial,.sp-badge-cancelled,.decision.danger,.ac-err,.ac-badge.off){
  background:var(--a-danger-bg)!important;color:var(--a-danger)!important;border-color:color-mix(in srgb,var(--a-danger) 42%,transparent)!important;
}
:where(.alert.info,.status-running,.connection-checking,.badge.processing,.priority-medium,.triage-status-badge.status-reviewing,.sc-status.status-new,.sc-status.status-reviewing,
  .ue-op-badge.op-original,.sp-state-processing,.sp-badge-processing,.ac-badge,.triage-product-badge,.support-source-badge.source-triage){
  background:var(--a-info-bg)!important;color:var(--a-info)!important;border-color:color-mix(in srgb,var(--a-info) 42%,transparent)!important;
}
:where(.safe,.ok,.success,.warn,.warning,.bad,.error,.danger,.alert,.notice,.info) :where(p,span,small,b,strong){color:inherit!important}

/* Progress tracks were a recurring white strip. */
.progress,.progress-track{background:var(--a-panel-3)!important;border:1px solid var(--a-line-soft)!important}
.progress>span,.progress-bar{background:linear-gradient(90deg,var(--a-accent),var(--a-accent-2))!important}

/* TakeCard/FazerCards catalog pages. */
.gp{color:var(--a-text)!important}.gp .advanced-tools>summary{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.gp .bulkbar{background:var(--a-nav)!important;color:#fff!important;border:1px solid #1b4764!important}.gp .bulkbar *{color:#fff}
.gp .supplier-image,.gp .cat-image{background:var(--a-panel-3)!important;border-color:var(--a-line)!important}
.gp .product.selected{border-color:var(--a-accent-2)!important;box-shadow:0 0 0 1px var(--a-accent-2)!important}
.gp .hero :where(h1,h2){color:var(--a-text)!important}.gp .hero .muted{color:var(--a-muted)!important}
.ac-flow span,.ac-callout{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.ac-danger-zone{background:var(--a-danger-bg)!important;border-color:color-mix(in srgb,var(--a-danger) 40%,transparent)!important}

/* WhatsApp / support / execution page hero blocks keep an intentional dark accent in BOTH modes. */
:where(.smart-hero,.wa-hero,.sc-hero,.ue-hero){
  background:linear-gradient(135deg,#102a43,#0f766e)!important;color:#fff!important;border-color:#245a68!important;box-shadow:none!important;
}
:where(.smart-hero,.wa-hero,.sc-hero,.ue-hero) :where(h1,h2,h3,p,span,small,b,strong,label){color:#f7fbff!important}
.wa-hub-tabs{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.20)!important}.wa-hub-tabs a{color:#e8fffb!important}.wa-hub-tabs a.is-active{background:#fff!important;color:#0f514b!important}
.sc-hero .sc-btn-primary{background:#fff!important;color:#0f766e!important}.sc-hero .sc-btn-light{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
.ue-hero-actions .button{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.30)!important}

/* Support center families. */
.sc-simple-hero{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;box-shadow:none!important}
.sc-simple-hero h1{color:var(--a-text)!important}.sc-simple-hero p{color:var(--a-muted)!important}
.sc-simple-stages>a.is-active,.sc-help-card.is-active,.ue-link-flow>article.is-found,.ue-operation-tabs a.active{background:var(--a-accent-soft)!important;border-color:var(--a-accent)!important;color:var(--a-text)!important}
.sc-simple-customer-message,.sc-integration-bar,.sc-live-conversation{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.sc-chat-bubble,.support-message-bubble.direction-in{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.support-unread-shortcut,.support-source-badge.source-complaint,.tone-rose,.tone-pink{background:var(--a-danger-bg)!important;color:var(--a-danger)!important}

/* Salla section processor and other structured forms. */
.sp-hero{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;box-shadow:var(--a-shadow)!important}
.sp-hero h1,.sp-panel-head h2,.sp-stat strong,.sp-order-number,.sp-line-title strong,.sp-decision{color:var(--a-text)!important}.sp-hero p{color:var(--a-muted)!important}
.sp-stats{background:var(--a-panel-2)!important;border-color:var(--a-line)!important}
.sp-order-chip,.sp-mini,.sp-history-order{background:var(--a-panel-3)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.sp-empty{background:var(--a-panel-2)!important;color:var(--a-muted)!important;border-color:var(--a-line)!important}
.sp-filter{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}.sp-filter.active{background:var(--a-accent)!important;color:#fff!important;border-color:var(--a-accent)!important}

/* Manual entry. */
.smart-tab.active,.manual-order-card{background:var(--a-accent-soft)!important;color:var(--a-text)!important;border-color:var(--a-accent)!important}
.manual-order-card h2{color:var(--a-accent-2)!important}.missing-chips span{background:var(--a-info-bg)!important;color:var(--a-info)!important}.notify-box{background:var(--a-success-bg)!important;color:var(--a-success)!important;border-color:color-mix(in srgb,var(--a-success) 42%,transparent)!important}.notify-box span{color:inherit!important}

/* Fixed shortcut and uploaded-logo white canvas. */
.global-support-shortcut{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;box-shadow:var(--a-shadow)!important}.global-support-shortcut small{color:var(--a-muted)!important}
html[data-altmez-theme="dark"] main img[style*="background:#fff"],html[data-altmez-theme="dark"] main img[style*="background: #fff"]{background:var(--a-panel-2)!important;border-color:var(--a-line)!important}

/* Defensive compatibility for old utility classes; no pure white/cream operational blocks in dark mode. */
html[data-altmez-theme="dark"] :where(.bg-white,[class~="bg-white"]){background:var(--a-panel)!important;color:var(--a-text)!important}
html[data-altmez-theme="dark"] main :where([style*="background:#fff"],[style*="background: #fff"],[style*="background-color:#fff"],[style*="background-color: #fff"]):not(button):not(.btn){background:var(--a-panel-2)!important;color:var(--a-text)!important}

/* Light theme contrast reinforcement: legacy pages often assume white text because their original hero was dark. */
html[data-altmez-theme="light"] main :where(.c,.card,.panel,.box,.widget,.section-card,.content-card,.stat,.opbox,.cat,.product,.sourcecard,.pricebox,.sp-panel,.sp-run,.smart-card,.ac-card,.sc-section,.ue-order-title,.ue-kpis)
  :where(h1,h2,h3,h4,h5,h6,legend,summary,label){color:var(--a-text)!important}
html[data-altmez-theme="light"] main :where(.muted,.text-muted,.help,.hint,small,.field-help){color:var(--a-muted)!important}
html[data-altmez-theme="light"] .gp .c{background:#fff!important;border-color:#b9cad6!important;box-shadow:0 8px 18px rgba(28,52,70,.06)!important}
html[data-altmez-theme="light"] .gp .stat,html[data-altmez-theme="light"] .gp .opbox,html[data-altmez-theme="light"] .gp .sourcecard,html[data-altmez-theme="light"] .gp .pricebox{background:#f5f8fa!important}

/* Scrollbars + toggle. */
*{scrollbar-width:thin;scrollbar-color:var(--a-line) var(--a-bg)}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--a-bg)}::-webkit-scrollbar-thumb{background:var(--a-line);border-radius:999px;border:2px solid var(--a-bg)}
#altmez-theme-toggle{position:fixed;left:18px;bottom:18px;z-index:2147483000;display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 12px;background:var(--a-panel)!important;color:var(--a-text)!important;border:1px solid var(--a-line)!important;border-radius:999px!important;box-shadow:var(--a-shadow)!important;font-weight:800;font-size:12px;cursor:pointer}
#altmez-theme-toggle:hover{border-color:var(--a-accent-2)!important;filter:none;transform:none}
img{max-width:100%}
@media(max-width:900px){#altmez-theme-toggle{left:10px;bottom:10px;min-height:38px;padding:7px 10px}.c,.card,.panel,.box,.widget,.section-card,.content-card{border-radius:10px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* HF5.1 exhaustive legacy-light compatibility audit additions. */
:where(.connection-waiting,.connection-paused,.sync-status,.badge.received,.priority-low,.support-menu-message,
  .sc-case-category-icon,.sc-filter-icon,.sc-filter-toggle,.sc-help-count,.sc-message-box,.sc-notify-choice,
  .salla-lookup-grid>div,.salla-category-node.depth-0>summary,.sp-badge-unknown){
  background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important;
}
.active-filter,.sc-simple-links a.is-active,.sc-panel-head>span,.manual-link-guide{
  background:var(--a-accent-soft)!important;color:var(--a-accent)!important;border-color:var(--a-accent)!important;
}
:where(.danger-zone-card,.sc-tabs b.has-alert,.support-unread-shortcut,.triage-critical-stat,.status-employee,.tone-red){
  background:var(--a-danger-bg)!important;color:var(--a-danger)!important;border-color:color-mix(in srgb,var(--a-danger) 42%,transparent)!important;
}
:where(.complaint-row.complaint-new td,.complaint-row.complaint-deleted td){background:var(--a-danger-bg)!important;color:var(--a-text)!important}
:where(.complaint-row.complaint-follow_up td,.complaint-row.complaint-resolved td){background:var(--a-panel-2)!important;color:var(--a-text)!important}
:where(.complaint-row.complaint-escalated td,.complaint-status.status-escalated,.support-source-badge.source-handoff,.sc-notice-warning,.tone-amber,.tone-orange,.triage-high-stat,.ac-warn){
  background:var(--a-warning-bg)!important;color:var(--a-warning)!important;border-color:color-mix(in srgb,var(--a-warning) 42%,transparent)!important;
}
:where(.complaint-status.status-follow_up,.tone-blue,.tone-cyan,.tone-indigo,.triage-category-badge){
  background:var(--a-info-bg)!important;color:var(--a-info)!important;border-color:color-mix(in srgb,var(--a-info) 38%,transparent)!important;
}
:where(.complaint-auto-badge,.badge.manual-linked,.ue-op-badge.op-link,.sc-notice-success,.sc-kpi-resolved .sc-kpi-icon,.tone-green,.sc-chat-bubble.is-store,.status-pill,.sp-safe){
  background:var(--a-success-bg)!important;color:var(--a-success)!important;border-color:color-mix(in srgb,var(--a-success) 38%,transparent)!important;
}
:where(.ue-op-badge.op-compensation,.tone-violet,.sc-kpi-progress .sc-kpi-icon){background:color-mix(in srgb,#805ad5 14%,var(--a-panel))!important;color:color-mix(in srgb,#805ad5 75%,var(--a-text))!important;border-color:color-mix(in srgb,#805ad5 35%,transparent)!important}
:where(.tone-slate,.sc-kpi-new .sc-kpi-icon,.sc-kpi-waiting .sc-kpi-icon){background:var(--a-panel-3)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.sc-manual-compensation,.wa-fixed-policy>div{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.complaint-message-cell details,.complaint-message-cell summary{background:var(--a-panel-2)!important;color:var(--a-text)!important;border-color:var(--a-line)!important}
.products th{background:var(--a-panel-3)!important;color:var(--a-text)!important}.products td{background:var(--a-panel)!important;color:var(--a-text)!important;border-color:var(--a-line-soft)!important}
.provider-alert-badge.alert-disabled{background:var(--a-panel-3)!important;color:var(--a-muted)!important;border-color:var(--a-line)!important}
.sc-compensation-card.compensation-review{background:var(--a-warning-bg)!important;color:var(--a-warning)!important;border-color:color-mix(in srgb,var(--a-warning) 42%,transparent)!important}
.connection-dot{background:var(--a-muted)!important}

/* =====================================================================
   ALTMEZ V128 HF5.2 — contrast hardening + header theme control
   UI-only layer. The rules below intentionally target display classes only.
   ===================================================================== */

/* The application header remains dark and readable in BOTH themes. */
html[data-altmez-theme="dark"] body > header.topbar,
html[data-altmez-theme="light"] body > header.topbar,
html[data-altmez-theme] header.topbar,
html[data-altmez-theme] .topbar{
  background:#07182a!important;
  background-color:#07182a!important;
  color:#f7fbff!important;
  border-color:#173a54!important;
}
html[data-altmez-theme] .topbar nav,
html[data-altmez-theme] .topbar nav a,
html[data-altmez-theme] .topbar nav .link-button,
html[data-altmez-theme] .topbar > div,
html[data-altmez-theme] .topbar > div > strong{
  color:#f7fbff!important;
}
html[data-altmez-theme] .topbar small{color:#b6c8d8!important}

/* Theme control now lives in the header instead of floating over page content. */
#altmez-theme-toggle{
  position:static!important;
  inset:auto!important;
  z-index:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:34px!important;
  margin:0!important;
  padding:7px 10px!important;
  flex:0 0 auto!important;
  background:#102d45!important;
  color:#f7fbff!important;
  border:1px solid #28516d!important;
  border-radius:9px!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
#altmez-theme-toggle:hover,#altmez-theme-toggle:focus-visible{
  background:#16405d!important;
  color:#fff!important;
  border-color:#4b86aa!important;
  outline:none!important;
  box-shadow:0 0 0 3px rgba(75,134,170,.22)!important;
}
#altmez-theme-toggle .altmez-theme-icon{font-size:14px;line-height:1}
.topbar nav #altmez-theme-toggle{order:98}
.topbar nav form[action="/logout"]{order:99}

/* Neutral pills were the main remaining white-on-white problem. */
.badge,.status-pill,.sync-state,.sp-badge,.ac-badge,.triage-status-badge,.triage-category-badge,
.provider-alert-badge,.complaint-status,.support-source-badge,.sc-status,.sc-priority,.ue-op-badge,
.sc-results-count,.sp-order-chip,.sp-mini,.sp-history-order{
  background:var(--a-panel-3)!important;
  color:var(--a-text)!important;
  border-color:var(--a-line)!important;
}

/* Semantic badge families — readable in both themes without white capsules. */
:where(.badge.completed,.badge.ok,.badge.manual-linked,.status-completed,.connection-connected,
  .provider-alert-badge.alert-ok,.complaint-status.status-resolved,.complaint-auto-badge,
  .triage-status-badge.status-resolved,.sc-status.status-resolved,.sc-status.status-compensated,
  .sp-badge-completed,.sp-state-completed,.ac-badge.ok,.ue-op-badge.op-link,.status-pill.completed){
  background:var(--a-success-bg)!important;color:var(--a-success)!important;
  border-color:color-mix(in srgb,var(--a-success) 38%,transparent)!important;
}
:where(.badge.failed,.badge.incomplete,.badge.cancelled,.status-failed,.connection-failed,
  .provider-alert-badge.alert-low,.complaint-status.status-new,.triage-status-badge.status-new,
  .sc-priority.priority-critical,.triage-priority-badge.priority-critical,.sp-badge-incomplete,
  .sp-badge-partial,.sp-badge-cancelled,.sp-state-failed,.sp-state-partial,.ac-badge.off){
  background:var(--a-danger-bg)!important;color:var(--a-danger)!important;
  border-color:color-mix(in srgb,var(--a-danger) 40%,transparent)!important;
}
:where(.badge.processing,.status-running,.status-queued,.connection-checking,
  .complaint-status.status-follow_up,.triage-status-badge.status-reviewing,
  .triage-priority-badge.priority-medium,.triage-category-badge,.sc-status.status-new,
  .sc-status.status-reviewing,.sp-badge-processing,.sp-state-processing,.ue-op-badge.op-original){
  background:var(--a-info-bg)!important;color:var(--a-info)!important;
  border-color:color-mix(in srgb,var(--a-info) 38%,transparent)!important;
}
:where(.badge.manual,.badge.retry,.badge.pending,.connection-waiting,.connection-paused,
  .provider-alert-badge.alert-enabled,.complaint-status.status-escalated,
  .triage-status-badge.status-waiting_customer,.triage-priority-badge.priority-high,
  .sc-status.status-waiting_customer,.sc-status.status-waiting_provider,.sc-status.status-compensation_review,
  .sp-badge-pending,.sp-state-sent,.sp-state-queued,.ue-op-badge.op-resend){
  background:var(--a-warning-bg)!important;color:var(--a-warning)!important;
  border-color:color-mix(in srgb,var(--a-warning) 40%,transparent)!important;
}

/* Small counts/buttons in catalog trees must not become pale unreadable capsules. */
.category-badges .badge,.catalog-numbers .badge,.salla-category-node .badge,
.category-product-row .badge,.catalog-sync-status .badge,.table-wrap .badge,
table .badge,.products .badge{
  text-shadow:none!important;
}

/* Dark-theme surface hardening for every legacy operational block still using a light paint. */
html[data-altmez-theme="dark"] main [data-altmez-auto-surface="1"]{
  background:var(--a-panel-2)!important;
  background-image:none!important;
  color:var(--a-text)!important;
  border-color:var(--a-line)!important;
  box-shadow:none!important;
}
html[data-altmez-theme="dark"] main [data-altmez-auto-tone="success"]{
  background:var(--a-success-bg)!important;color:var(--a-success)!important;
  border-color:color-mix(in srgb,var(--a-success) 38%,transparent)!important;
}
html[data-altmez-theme="dark"] main [data-altmez-auto-tone="warning"]{
  background:var(--a-warning-bg)!important;color:var(--a-warning)!important;
  border-color:color-mix(in srgb,var(--a-warning) 40%,transparent)!important;
}
html[data-altmez-theme="dark"] main [data-altmez-auto-tone="danger"]{
  background:var(--a-danger-bg)!important;color:var(--a-danger)!important;
  border-color:color-mix(in srgb,var(--a-danger) 40%,transparent)!important;
}
html[data-altmez-theme="dark"] main [data-altmez-auto-tone="info"]{
  background:var(--a-info-bg)!important;color:var(--a-info)!important;
  border-color:color-mix(in srgb,var(--a-info) 38%,transparent)!important;
}

/* Light theme: if legacy CSS leaves light text on a light surface, force readable ink. */
html[data-altmez-theme="light"] main [data-altmez-force-readable="1"]{color:var(--a-text)!important}
html[data-altmez-theme="light"] main [data-altmez-force-readable="1"] :where(b,strong,h1,h2,h3,h4,h5,h6,label,summary,p,span,small){color:inherit!important}

/* A few old generic color-only classes need theme-aware text too. */
html[data-altmez-theme="dark"] :where(.ok,.safe){color:var(--a-success)!important}
html[data-altmez-theme="dark"] :where(.warn){color:var(--a-warning)!important}
html[data-altmez-theme="dark"] :where(.bad,.danger){color:var(--a-danger)!important}
html[data-altmez-theme="dark"] :where(.notice){color:var(--a-info)!important}

/* Images keep their natural canvas; only their surrounding cards are themed. */
html[data-altmez-theme] main :where(img,svg,canvas,video,picture){color:initial}

@media(max-width:900px){
  .topbar nav #altmez-theme-toggle{min-height:32px!important;padding:6px 9px!important;font-size:11px!important}
}
