
:root{--mv-bg:#060a0f;--mv-panel:#111820;--mv-panel2:#182029;--mv-gold:#f5b942;--mv-gold2:#ffe2a1;--mv-text:#eef3f7;--mv-muted:#9aa6b2;--mv-border:#34414d;}
html,body{background:radial-gradient(circle at 50% 20%,#18232d 0,#0b1117 38%,#05080c 80%)!important;color:var(--mv-text)!important;}
body .bg-white,body .card,body .bg-gray-50,body .bg-gray-50\/50,body .bg-slate-50{background-color:var(--mv-panel)!important;color:var(--mv-text)!important;}
body header,body aside{background-color:#0b1117!important;border-color:var(--mv-border)!important;}
body .text-gray-900,body .text-slate-900,body .text-gray-800,body .text-slate-800{color:var(--mv-text)!important;}
body .text-gray-700,body .text-slate-700,body .text-gray-600,body .text-slate-600,body .text-gray-500,body .text-slate-500,body .text-gray-400,body .text-slate-400{color:var(--mv-muted)!important;}
body .border-gray-100,body .border-gray-200,body .border-slate-100,body .border-slate-200,body .border{border-color:var(--mv-border)!important;}
body .btn-primary,body .bg-brand-600,body .bg-slate-900{background:linear-gradient(135deg,#c88925,#f5b942)!important;color:#111!important;}
body .text-brand-700,body .text-brand-800{color:var(--mv-gold2)!important;}
body .bg-brand-50,body .bg-brand-100{background-color:#2a2113!important;}
body input,body select,body textarea{background:#0b1117!important;color:var(--mv-text)!important;border-color:var(--mv-border)!important;}
body input:focus,body select:focus,body textarea:focus{border-color:var(--mv-gold)!important;box-shadow:0 0 0 3px #f5b94222!important;}
body a:hover{color:var(--mv-gold2);}
/* POS: colour treatment only; dimensions/layout are intentionally untouched. */
body.mercavium-pos{background:#070b10!important;}
body.mercavium-pos .bg-\[\#1e5bb8\]{background:#9b681f!important;}
body.mercavium-pos .text-\[\#1e5bb8\]{color:#f5b942!important;}
body.mercavium-pos .tile{background:#111820!important;border-color:#34414d!important;color:#eef3f7!important;}

/* POS payment/readability fixes — keep the existing POS layout, only correct colours/contrast. */
body.mercavium-pos .pad-btn{
  background:#182029!important;
  color:#eef3f7!important;
  border:1px solid #34414d!important;
}
body.mercavium-pos .pad-btn:hover{
  background:#222d38!important;
  color:#ffe2a1!important;
}
body.mercavium-pos .pad-btn:active{
  background:#2a2113!important;
  color:#f5b942!important;
}

/* Inactive payment methods must not become white-on-light after the global dark theme. */
body.mercavium-pos .pay-btn.bg-slate-200,
body.mercavium-pos button.bg-slate-200{
  background:#182029!important;
  color:#eef3f7!important;
  border:1px solid #34414d!important;
}
body.mercavium-pos .pay-btn.active,
body.mercavium-pos .pay-btn.bg-\[\#1e5bb8\]{
  background:linear-gradient(135deg,#9b681f,#d89b32)!important;
  color:#fff!important;
  border-color:#f5b942!important;
  outline-color:#f5b942!important;
}

/* Payment dialog values and labels need maximum contrast at till distance. */
body.mercavium-pos #payDialog .bg-white{
  background:#111820!important;
  color:#eef3f7!important;
}
body.mercavium-pos #payDialog #tendered{
  background:#070b10!important;
  color:#ffffff!important;
  border-color:#566471!important;
  caret-color:#f5b942!important;
}
body.mercavium-pos #payDialog #tendered::placeholder{
  color:#71808d!important;
  opacity:1!important;
}
body.mercavium-pos #payDialog #dlgTotal,
body.mercavium-pos #payDialog .text-white{
  color:#ffffff!important;
}
body.mercavium-pos #payDialog #changeOut.text-emerald-600{
  color:#6ee7b7!important;
}
body.mercavium-pos #payDialog #changeOut.text-red-600{
  color:#fca5a5!important;
}
body.mercavium-pos #payDialog #nonCashNote{
  background:#0b1117!important;
  color:#cbd5e1!important;
  border-color:#34414d!important;
}
body.mercavium-pos #payDialog button[type="submit"].bg-emerald-600,
body.mercavium-pos #openPayBtn{
  background:#15803d!important;
  color:#fff!important;
}
body.mercavium-pos #payDialog button[type="submit"].bg-emerald-600:hover,
body.mercavium-pos #openPayBtn:hover{
  background:#16a34a!important;
}

/* Keep the order total and cart figures readable against the dark panel. */
body.mercavium-pos #orderTotal,
body.mercavium-pos .cart-line .font-bold{
  color:#ffffff!important;
}

/* 2026-09-27 full-site colour/contrast audit.
   Keep all management pages readable on the dark Mercavium theme, including
   modal actions, status badges, tables and form controls. */
html{color-scheme:dark;}
body .btn-secondary{
  background:#182029!important;
  color:#eef3f7!important;
  border:1px solid #3b4854!important;
}
body .btn-secondary:hover{background:#222d38!important;color:#ffe2a1!important;border-color:#8c672b!important;}
body .btn-danger{background:#3a1619!important;color:#fecaca!important;border:1px solid #7f1d1d!important;}
body .btn-danger:hover{background:#7f1d1d!important;color:#fff!important;}

body .bg-gray-100,body .bg-slate-100,body .bg-slate-200{background:#182029!important;color:#eef3f7!important;}
body .hover\:bg-gray-50:hover,body .hover\:bg-gray-100:hover,body .hover\:bg-gray-200:hover,
body .hover\:bg-gray-50\/50:hover,body .hover\:bg-gray-50\/60:hover,body .hover\:bg-gray-50\/80:hover{background:#202a34!important;}
body .bg-white\/50,body .bg-white\/80,body .bg-white\/90,body .bg-white\/95{background:rgba(17,24,32,.94)!important;color:#eef3f7!important;}

body .bg-red-50,body .bg-red-100{background:#351519!important;}
body .text-red-700,body .text-red-800{color:#fecaca!important;}
body .text-red-600,body .text-red-500{color:#fca5a5!important;}
body .bg-amber-50,body .bg-amber-100{background:#332611!important;}
body .text-amber-900,body .text-amber-800,body .text-amber-700,body .text-amber-600{color:#fcd98d!important;}
body .bg-blue-100{background:#14263d!important;} body .text-blue-700{color:#bfdbfe!important;}
body .bg-violet-100{background:#251a3d!important;} body .text-violet-800{color:#ddd6fe!important;}
body .bg-emerald-50,body .bg-emerald-100{background:#102a20!important;} body .text-emerald-800,body .text-emerald-900{color:#a7f3d0!important;}

body table thead{background:#0d141b!important;color:#b8c2cc!important;}
body table tbody tr{border-color:#293640!important;}
body table tbody tr:hover{background:#16212a!important;}
body hr{border-color:#34414d!important;}
body option{background:#0b1117;color:#eef3f7;}
body input[type="checkbox"],body input[type="radio"]{accent-color:#d89b32;}
body input:disabled,body select:disabled,body textarea:disabled{background:#0a0e13!important;color:#64727f!important;opacity:1!important;}
body ::placeholder{color:#71808d!important;opacity:1;}

/* Keep positive/negative status colours vivid enough on dark panels. */
body .text-green-600,body .text-green-700{color:#86efac!important;}
body .text-emerald-600{color:#6ee7b7!important;}
body .bg-green-600,body .bg-emerald-600{color:#fff!important;}
body .bg-red-600,body .bg-red-700{color:#fff!important;}

/* Dark modal surfaces, including product edit and manager-authorisation dialogs. */
body [class*="fixed"][class*="inset-0"] .bg-white{background:#111820!important;color:#eef3f7!important;border:1px solid #34414d!important;}

/* Finance stream controls: active labels must remain readable against their fills. */
body .bg-amber-500.text-slate-950{color:#10151a!important;}
body .bg-violet-600.text-white,body .bg-slate-700.text-white{color:#fff!important;}

body .litre-toggle-knob{background:#ffffff!important;}
