/*
 * CoalERP Enterprise 28.0.0-beta19
 * Modern Workspace & Unified UI authority.
 * This file is intentionally loaded last and owns the shell, dashboard, filters,
 * forms, tables, overlays, mobile behaviour and print output.
 */
:root {
  --ce19-brand:#67b041;
  --ce19-brand-strong:#397c2b;
  --ce19-brand-deep:#173e24;
  --ce19-brand-soft:#edf8e8;
  --ce19-canvas:#f4f7f3;
  --ce19-surface:#ffffff;
  --ce19-surface-2:#f8faf7;
  --ce19-surface-3:#eef3ed;
  --ce19-text:#182219;
  --ce19-text-2:#4f5f52;
  --ce19-muted:#718074;
  --ce19-line:#dce5db;
  --ce19-line-strong:#bdcbb9;
  --ce19-success:#1e7a43;
  --ce19-warning:#9a5b00;
  --ce19-danger:#b4232f;
  --ce19-info:#245fae;
  --ce19-radius-sm:8px;
  --ce19-radius:12px;
  --ce19-radius-lg:18px;
  --ce19-shadow-1:0 1px 2px rgba(21,38,24,.04),0 4px 14px rgba(21,38,24,.04);
  --ce19-shadow-2:0 14px 40px rgba(16,36,21,.11);
  --ce19-sidebar:292px;
  --ce19-sidebar-rail:82px;
  --ce19-topbar:68px;
  --ce19-content-max:1680px;
  --ce19-gutter:clamp(16px,2vw,32px);
  --ce19-control:44px;
  --ce19-mobile-dock:72px;
  --ce19-z-sticky:40;
  --ce19-z-progress:970;
  --ce19-z-topbar:1000;
  --ce19-z-scrim:1030;
  --ce19-z-sidebar:1040;
  --ce19-z-drawer:1120;
  --ce19-z-split:1160;
  --ce19-z-mobile:1200;
  --ce19-z-modal:1320;
  --ce19-z-popover:1400;
  --ce19-z-toast:1480;
  --ce19-z-guide:1540;
  --ce19-z-command:1600;
  --ce19-z-alert:1680;
}

html[data-theme="dark"] {
  --ce19-canvas:#0f1510;
  --ce19-surface:#172019;
  --ce19-surface-2:#1c281e;
  --ce19-surface-3:#263329;
  --ce19-text:#f0f5ef;
  --ce19-text-2:#c2cec0;
  --ce19-muted:#98a697;
  --ce19-line:#344337;
  --ce19-line-strong:#4d6051;
  --ce19-brand-soft:#1e3422;
  --ce19-shadow-1:0 1px 2px rgba(0,0,0,.22),0 5px 18px rgba(0,0,0,.18);
  --ce19-shadow-2:0 18px 48px rgba(0,0,0,.36);
}

html { max-width:100%; overflow-x:clip; scroll-padding-top:calc(var(--ce19-topbar) + 16px); }
body.wow-erp.ce-app-shell.ce-ui-v19 {
  min-width:0;
  max-width:100%;
  overflow-x:clip;
  background:var(--ce19-canvas) !important;
  color:var(--ce19-text) !important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
body.ce-ui-v19 *, body.ce-login-v19 * { box-sizing:border-box; }
body.ce-ui-v19 a { text-underline-offset:3px; }
body.ce-ui-v19 :where(button,a,input,select,textarea,[tabindex]):focus-visible,
body.ce-login-v19 :where(button,a,input,select,textarea,[tabindex]):focus-visible {
  outline:3px solid color-mix(in srgb,var(--ce19-brand) 72%,#fff) !important;
  outline-offset:2px !important;
}

/* ---------- Stable app shell ---------- */
body.ce-ui-v19 .app { min-height:100dvh; display:block !important; }
body.ce-ui-v19 .sidebar {
  position:fixed !important;
  inset:0 auto 0 0 !important;
  width:var(--ce19-sidebar) !important;
  max-width:calc(100vw - 20px);
  display:flex !important;
  flex-direction:column !important;
  transform:none !important;
  visibility:visible !important;
  opacity:1 !important;
  background:linear-gradient(180deg,#11271a 0%,#0c1a12 100%) !important;
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:0 0 0 1px rgba(0,0,0,.06),12px 0 40px rgba(5,18,9,.10);
  z-index:var(--ce19-z-sidebar) !important;
  transition:transform .22s ease !important;
  overflow:hidden !important;
}
body.ce-ui-v19 .main {
  display:block !important;
  min-width:0 !important;
  margin-left:var(--ce19-sidebar) !important;
  transition:none !important;
}
body.ce-ui-v19.ce-sidebar-collapsed .sidebar,
body.ce-ui-v19.sidebar-collapsed .sidebar {
  width:var(--ce19-sidebar-rail) !important;
  min-width:var(--ce19-sidebar-rail) !important;
  max-width:var(--ce19-sidebar-rail) !important;
  flex-basis:var(--ce19-sidebar-rail) !important;
}
body.ce-ui-v19.ce-sidebar-collapsed .main,
body.ce-ui-v19.sidebar-collapsed .main { margin-left:var(--ce19-sidebar-rail) !important; }
body.ce-ui-v19 .ce-sidebar-v8__head {
  min-height:76px;
  padding:12px 12px 10px !important;
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
body.ce-ui-v19 .ce-brand-v8 { min-width:0; flex:1; padding:0 !important; }
body.ce-ui-v19 .ce-brand-media { width:46px; height:46px; min-width:46px; border-radius:14px; overflow:hidden; }
body.ce-ui-v19 .ce-brand-copy { min-width:0; color:#fff; }
body.ce-ui-v19 .ce-brand-copy>b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.ce-ui-v19 .ce-brand-meta { color:#94a99a; }
body.ce-ui-v19 .ce-brand-version { background:rgba(103,176,65,.16); color:#c9ebb8; border:1px solid rgba(103,176,65,.3); }
body.ce-ui-v19 .ce-sidebar-collapse {
  display:inline-grid !important;
  place-items:center;
  width:44px !important;
  min-width:44px !important;
  height:44px !important;
  padding:0 !important;
  border-radius:12px !important;
  color:#dbe8dc !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.ce-ui-v19 .ce-sidebar-collapse:hover { background:rgba(255,255,255,.13) !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-sidebar-v8__head { justify-content:center; padding-inline:10px !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-brand-v8 { display:none !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-sidebar-collapse { position:static !important; inset:auto !important; }
body.ce-ui-v19 .ce-command-trigger--sidebar {
  margin:0 12px 10px !important;
  min-height:44px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.06) !important;
  color:#d4e0d5 !important;
}
body.ce-ui-v19.ce-sidebar-collapsed .ce-command-trigger--sidebar { width:54px !important; margin-inline:auto !important; justify-content:center !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-command-trigger--sidebar span,
body.ce-ui-v19.ce-sidebar-collapsed .ce-command-trigger--sidebar kbd { display:none !important; }
body.ce-ui-v19 .ce-sidebar-scroll {
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  padding:0 10px 18px !important;
}
body.ce-ui-v19 .ce-sidebar-scroll::-webkit-scrollbar { width:7px; }
body.ce-ui-v19 .ce-sidebar-scroll::-webkit-scrollbar-thumb { background:rgba(255,255,255,.18); border-radius:999px; }
body.ce-ui-v19 .ce-nav-section-label { color:#708476; padding:12px 10px 7px; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
body.ce-ui-v19 .ce-nav-group { margin:0 0 4px; }
body.ce-ui-v19 .ce-nav-group__toggle {
  min-height:42px !important;
  padding:9px 10px !important;
  border-radius:10px !important;
  color:#aebdb0 !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.ce-ui-v19 .ce-nav-group__toggle:hover { color:#fff !important; background:rgba(255,255,255,.055) !important; }
body.ce-ui-v19 .ce-nav-group__body { padding:2px 0 6px; }
body.ce-ui-v19 .ce-nav-link {
  min-height:44px !important;
  margin:2px 0 !important;
  padding:9px 11px !important;
  border-radius:11px !important;
  color:#c5d1c7 !important;
  gap:11px !important;
  font-size:13px !important;
  font-weight:540 !important;
}
body.ce-ui-v19 .ce-nav-link:hover { color:#fff !important; background:rgba(255,255,255,.075) !important; }
body.ce-ui-v19 .ce-nav-link.active {
  color:#f5fff1 !important;
  background:linear-gradient(90deg,rgba(103,176,65,.29),rgba(103,176,65,.13)) !important;
  box-shadow:inset 3px 0 0 var(--ce19-brand);
}
body.ce-ui-v19 .ce-nav-link svg { width:19px; height:19px; flex:0 0 19px; }
body.ce-ui-v19 .ce-nav-link .count { margin-left:auto; background:rgba(255,255,255,.10); color:#dce6de; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-section-label,
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-group__toggle span,
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-group__toggle svg,
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-link>span:not(.count),
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-link .count,
body.ce-ui-v19.ce-sidebar-collapsed #cePersonalNavHost { display:none !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-group__body { display:block !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-link { justify-content:center !important; padding-inline:0 !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-nav-link.active { box-shadow:inset 3px 0 0 var(--ce19-brand); }
body.ce-ui-v19 .ce-side-foot-v8 {
  position:relative !important;
  flex:0 0 auto;
  padding:10px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  background:#0c1a12 !important;
}
body.ce-ui-v19.ce-sidebar-collapsed .ce-user-summary>span:not(.av) { display:none !important; }
body.ce-ui-v19.ce-sidebar-collapsed .ce-user-summary { justify-content:center; }

body.ce-ui-v19 .topbar {
  position:sticky !important;
  top:0 !important;
  height:var(--ce19-topbar) !important;
  min-height:var(--ce19-topbar) !important;
  padding:0 var(--ce19-gutter) !important;
  display:grid !important;
  grid-template-columns:minmax(190px,.8fr) minmax(260px,1.25fr) minmax(260px,.95fr);
  align-items:center !important;
  gap:18px !important;
  background:color-mix(in srgb,var(--ce19-surface) 92%,transparent) !important;
  border-bottom:1px solid var(--ce19-line) !important;
  box-shadow:0 1px 0 rgba(24,34,25,.02);
  backdrop-filter:blur(16px);
  z-index:var(--ce19-z-topbar) !important;
}
body.ce-ui-v19 .ce-topbar-v8__start,
body.ce-ui-v19 .ce-topbar-v8__end { min-width:0; }
body.ce-ui-v19 .ce-topbar-title { min-width:0; }
body.ce-ui-v19 .ce-topbar-title h2 { color:var(--ce19-text); font-size:15px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.ce-ui-v19 .ce-topbar-kicker { color:var(--ce19-muted); }
body.ce-ui-v19 .ce-command-trigger--topbar {
  min-height:42px !important;
  width:100%;
  max-width:620px;
  justify-self:center;
  border:1px solid var(--ce19-line) !important;
  border-radius:12px !important;
  background:var(--ce19-surface-2) !important;
  color:var(--ce19-text-2) !important;
  box-shadow:none !important;
}
body.ce-ui-v19 .ce-command-trigger--topbar:hover { border-color:var(--ce19-line-strong) !important; background:var(--ce19-surface) !important; }
body.ce-ui-v19 .ce-topbar-v8__end { display:flex; justify-content:flex-end; align-items:center; gap:8px; }
body.ce-ui-v19 .ce-icon-button,
body.ce-ui-v19 .ce-topbar-avatar,
body.ce-ui-v19 .theme-btn { width:44px !important; min-width:44px !important; height:44px !important; min-height:44px !important; }
body.ce-ui-v19 .ce-workflow-badge,
body.ce-ui-v19 .ce-sync-status { min-height:38px; border-radius:999px; }
body.ce-ui-v19 .content {
  width:100% !important;
  max-width:var(--ce19-content-max) !important;
  min-width:0;
  margin:0 auto !important;
  padding:calc(var(--ce19-gutter) * .78) var(--ce19-gutter) calc(var(--ce19-gutter) * 1.3) !important;
}
body.ce-ui-v19 .ce-context-bar {
  margin:0 0 16px !important;
  padding:9px 12px !important;
  border:1px solid var(--ce19-line) !important;
  border-radius:12px !important;
  background:color-mix(in srgb,var(--ce19-surface) 94%,transparent) !important;
  box-shadow:var(--ce19-shadow-1);
}
body.ce-ui-v19 .ce-context-button { min-height:38px !important; border-radius:9px !important; }
body.ce-ui-v19 .scrim { z-index:var(--ce19-z-scrim) !important; }

/* ---------- Page structure, cards and dashboards ---------- */
body.ce-ui-v19 .page-head {
  align-items:center !important;
  margin:0 0 18px !important;
  padding:4px 0 0;
  gap:18px !important;
}
body.ce-ui-v19 .page-head h1 { color:var(--ce19-text); font-size:clamp(1.45rem,2vw,2rem) !important; letter-spacing:-.025em; }
body.ce-ui-v19 .page-head p { max-width:780px; color:var(--ce19-text-2) !important; }
body.ce-ui-v19 .page-head .actions,
body.ce-ui-v19 .toolbar,
body.ce-ui-v19 .actions { gap:8px !important; }
body.ce-ui-v19 .panel,
body.ce-ui-v19 .stat,
body.ce-ui-v19 .card,
body.ce-ui-v19 .ce-workspace-kpi,
body.ce-ui-v19 .ce-readiness-kpi,
body.ce-ui-v19 .ce-finance-kpi,
body.ce-ui-v19 .ce-close-kpi {
  border:1px solid var(--ce19-line) !important;
  background:var(--ce19-surface) !important;
  color:var(--ce19-text) !important;
  border-radius:var(--ce19-radius-lg) !important;
  box-shadow:var(--ce19-shadow-1) !important;
}
body.ce-ui-v19 .panel { overflow:clip; margin-bottom:20px !important; }
body.ce-ui-v19 .panel-head,
body.ce-ui-v19 .panel .ph {
  padding:18px 20px !important;
  border-bottom:1px solid var(--ce19-line) !important;
  background:linear-gradient(180deg,var(--ce19-surface),var(--ce19-surface-2));
}
body.ce-ui-v19 .panel-head h2,
body.ce-ui-v19 .panel-head h3,
body.ce-ui-v19 .panel .ph h3 { color:var(--ce19-text); }
body.ce-ui-v19 .panel-head p,
body.ce-ui-v19 .panel .ph .sub { color:var(--ce19-muted) !important; }
body.ce-ui-v19 .ce-workspace-kpis,
body.ce-ui-v19 .ce-readiness-kpis,
body.ce-ui-v19 .ce-finance-kpis,
body.ce-ui-v19 .ce-close-kpis,
body.ce-ui-v19 .cards,
body.ce-ui-v19 .kpi-grid,
body.ce-ui-v19 .ce-kpi-row {
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr)) !important;
  gap:14px !important;
  margin-bottom:20px !important;
}
body.ce-ui-v19 :is(.ce-workspace-kpi,.ce-readiness-kpi,.ce-finance-kpi,.ce-close-kpi,.stat) {
  min-width:0;
  padding:18px !important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
body.ce-ui-v19 :is(.ce-workspace-kpi,.ce-readiness-kpi,.ce-finance-kpi,.ce-close-kpi,.stat):hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--ce19-brand) 34%,var(--ce19-line)) !important;
  box-shadow:var(--ce19-shadow-2) !important;
}
body.ce-ui-v19 :is(.ce-workspace-kpi,.ce-readiness-kpi,.ce-finance-kpi,.ce-close-kpi,.stat) strong {
  font-size:clamp(1.45rem,2.2vw,2rem);
  line-height:1.05;
  color:var(--ce19-text);
}
body.ce-ui-v19 :is(.ce-workspace-kpi,.ce-readiness-kpi,.ce-finance-kpi,.ce-close-kpi,.stat) small { color:var(--ce19-muted); }
body.ce-ui-v19 .ce-workspace-grid,
body.ce-ui-v19 .ce-readiness-grid,
body.ce-ui-v19 .ce-close-grid,
body.ce-ui-v19 .grid-2c,
body.ce-ui-v19 .grid-2,
body.ce-ui-v19 .grid2 {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:start;
}
body.ce-ui-v19 .ce-workspace-task,
body.ce-ui-v19 .ce-readiness-action,
body.ce-ui-v19 .ce-workspace-actions a {
  min-height:64px;
  border:1px solid var(--ce19-line) !important;
  border-radius:12px !important;
  background:var(--ce19-surface-2) !important;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
body.ce-ui-v19 .ce-workspace-task:hover,
body.ce-ui-v19 .ce-readiness-action:hover,
body.ce-ui-v19 .ce-workspace-actions a:hover { border-color:var(--ce19-brand) !important; background:var(--ce19-brand-soft) !important; transform:translateX(2px); }

/* ---------- Buttons and form controls ---------- */
body.ce-ui-v19 .btn,
body.ce-ui-v19 button,
body.ce-ui-v19 input,
body.ce-ui-v19 select,
body.ce-ui-v19 textarea { font:inherit; }
body.ce-ui-v19 .btn {
  min-height:42px !important;
  padding:9px 14px !important;
  border-radius:10px !important;
  border-color:var(--ce19-line) !important;
  background:var(--ce19-surface) !important;
  color:var(--ce19-text) !important;
  box-shadow:none !important;
}
body.ce-ui-v19 .btn:hover { border-color:var(--ce19-line-strong) !important; background:var(--ce19-surface-2) !important; }
body.ce-ui-v19 .btn.primary,
body.ce-ui-v19 .btn.signal {
  background:linear-gradient(135deg,var(--ce19-brand-strong),var(--ce19-brand-deep)) !important;
  color:#fff !important;
  border-color:var(--ce19-brand-strong) !important;
}
body.ce-ui-v19 .btn.primary:hover,
body.ce-ui-v19 .btn.signal:hover { filter:brightness(1.06); box-shadow:0 8px 20px rgba(57,124,43,.18) !important; }
body.ce-ui-v19 .btn.danger { color:var(--ce19-danger) !important; background:color-mix(in srgb,var(--ce19-danger) 6%,var(--ce19-surface)) !important; }
body.ce-ui-v19 .btn.sm { min-height:36px !important; padding:6px 10px !important; }
body.ce-ui-v19 :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.form-control) {
  min-height:var(--ce19-control) !important;
  border:1px solid var(--ce19-line-strong) !important;
  border-radius:10px !important;
  background:var(--ce19-surface) !important;
  color:var(--ce19-text) !important;
  padding:9px 11px !important;
  box-shadow:none !important;
}
body.ce-ui-v19 textarea { min-height:96px !important; resize:vertical; }
body.ce-ui-v19 :is(input,select,textarea):hover { border-color:color-mix(in srgb,var(--ce19-brand) 36%,var(--ce19-line-strong)) !important; }
body.ce-ui-v19 :is(input,select,textarea):focus { border-color:var(--ce19-brand-strong) !important; box-shadow:0 0 0 3px color-mix(in srgb,var(--ce19-brand) 18%,transparent) !important; }
body.ce-ui-v19 :is(input,select,textarea):disabled,
body.ce-ui-v19 :is(input,textarea)[readonly] {
  opacity:.78 !important;
  color:var(--ce19-text-2) !important;
  background:var(--ce19-surface-3) !important;
  border-style:dashed !important;
  cursor:not-allowed !important;
}
body.ce-ui-v19 label { color:var(--ce19-text-2); font-weight:600; }
body.ce-ui-v19 .form-grid { gap:14px 16px !important; }
body.ce-ui-v19 .form-grid>label,
body.ce-ui-v19 .ce-payment-details-grid label,
body.ce-ui-v19 .ce-party-selector label { gap:6px; min-width:0; }

/* ---------- Modern guided filters ---------- */
body.ce-ui-v19 .ce-smart-filter,
body.ce-ui-v19 form.ce-finance-filter,
body.ce-ui-v19 form[data-ce-filter] {
  position:relative;
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) !important;
  gap:12px 14px !important;
  align-items:end !important;
  margin:0 0 14px !important;
  padding:16px !important;
  border:1px solid var(--ce19-line) !important;
  border-radius:var(--ce19-radius-lg) !important;
  background:var(--ce19-surface) !important;
  box-shadow:var(--ce19-shadow-1);
}
body.ce-ui-v19 .ce-smart-filter__head {
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid var(--ce19-line);
}
body.ce-ui-v19 .ce-smart-filter__title { display:flex; align-items:center; gap:8px; color:var(--ce19-text); font-size:14px; font-weight:750; }
body.ce-ui-v19 .ce-smart-filter__count { display:inline-grid; place-items:center; min-width:25px; height:25px; padding:0 8px; border-radius:999px; background:var(--ce19-brand-soft); color:var(--ce19-brand-strong); font-size:12px; }
body.ce-ui-v19 .ce-smart-filter__actions { display:flex; gap:7px; align-items:center; }
body.ce-ui-v19 .ce-smart-filter__toggle,
body.ce-ui-v19 .ce-smart-filter__clear { min-height:36px !important; border-radius:9px; }
body.ce-ui-v19 .ce-filter-chips { display:flex; flex-wrap:wrap; gap:7px; margin:-5px 0 16px; }
body.ce-ui-v19 .ce-filter-chip { display:inline-flex; align-items:center; gap:6px; min-height:30px; padding:4px 9px; border-radius:999px; background:var(--ce19-brand-soft); color:var(--ce19-brand-strong); font-size:12px; font-weight:650; }
body.ce-ui-v19 .ce-smart-filter>.actions,
body.ce-ui-v19 .ce-smart-filter>.full { grid-column:1 / -1; }
body.ce-ui-v19 .ce-smart-filter.is-collapsed>:not(.ce-smart-filter__head):not(input[type="hidden"]) { display:none !important; }

/* ---------- Tables and registers ---------- */
body.ce-ui-v19 .tbl-wrap,
body.ce-ui-v19 .table-responsive,
body.ce-ui-v19 [data-enterprise-grid] {
  max-width:100%;
  overflow:auto !important;
  border:1px solid var(--ce19-line) !important;
  border-radius:var(--ce19-radius) !important;
  background:var(--ce19-surface) !important;
  box-shadow:var(--ce19-shadow-1) !important;
  scrollbar-gutter:stable;
  overscroll-behavior-inline:contain;
}
body.ce-ui-v19 table { width:100%; color:var(--ce19-text); }
body.ce-ui-v19 thead th {
  min-height:44px;
  padding:11px 13px !important;
  background:var(--ce19-surface-3) !important;
  color:var(--ce19-text-2) !important;
  border-bottom:1px solid var(--ce19-line-strong) !important;
  font-size:12px !important;
  font-weight:750 !important;
  letter-spacing:.015em;
  z-index:var(--ce19-z-sticky) !important;
}
body.ce-ui-v19 tbody td { padding:11px 13px !important; border-bottom:1px solid var(--ce19-line) !important; vertical-align:middle; }
body.ce-ui-v19 tbody tr:nth-child(even) { background:color-mix(in srgb,var(--ce19-surface-2) 62%,transparent); }
body.ce-ui-v19 tbody tr:hover { background:var(--ce19-brand-soft) !important; }
body.ce-ui-v19 .erp-table--sticky thead th:first-child { z-index:calc(var(--ce19-z-sticky) + 2) !important; }
body.ce-ui-v19 .erp-table--sticky tbody td:first-child { z-index:calc(var(--ce19-z-sticky) - 1) !important; background:inherit; }
body.ce-ui-v19 .ce-grid-tools,
body.ce-ui-v19 .erp-grid-tools {
  border:1px solid var(--ce19-line) !important;
  border-bottom:0 !important;
  border-radius:var(--ce19-radius) var(--ce19-radius) 0 0 !important;
  background:var(--ce19-surface) !important;
}
body.ce-ui-v19 .ce-pagination { padding:4px 0; }
body.ce-ui-v19 .ce-pagination a,
body.ce-ui-v19 .ce-pagination span { border-color:var(--ce19-line); background:var(--ce19-surface); color:var(--ce19-text); }
body.ce-ui-v19 .ce-pagination .active { background:var(--ce19-brand-strong) !important; border-color:var(--ce19-brand-strong) !important; color:#fff !important; }
body.ce-ui-v19 .ce-register-search { position:relative; display:flex; align-items:center; gap:8px; min-width:min(100%,300px); }
body.ce-ui-v19 .ce-register-search input { flex:1; padding-right:42px !important; }
body.ce-ui-v19 .ce-register-search__clear { position:absolute; right:4px; width:36px !important; min-width:36px !important; height:36px !important; min-height:36px !important; border:0; background:transparent; color:var(--ce19-muted); }
body.ce-ui-v19 .ce-record-count { color:var(--ce19-muted); font-size:12px; white-space:nowrap; }

/* ---------- Payment Proposal modern workspace ---------- */
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-layout {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(330px,390px) !important;
  gap:22px !important;
  align-items:start !important;
}
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-review {
  position:sticky !important;
  top:calc(var(--ce19-topbar) + 16px) !important;
  max-height:calc(100dvh - var(--ce19-topbar) - 32px) !important;
  overflow:auto !important;
  border-radius:var(--ce19-radius-lg) !important;
  border:1px solid var(--ce19-line) !important;
  box-shadow:var(--ce19-shadow-2) !important;
  background:var(--ce19-surface) !important;
  scrollbar-gutter:stable;
}
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-table-wrap { max-height:min(60dvh,650px) !important; }
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-source-table { min-width:880px !important; }
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-alloc { width:126px !important; text-align:right; font-variant-numeric:tabular-nums; }
body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-review__facts>div { grid-template-columns:minmax(112px,.9fr) minmax(140px,1.1fr) !important; }

/* ---------- Dialogs, drawers and overlays ---------- */
body.ce-ui-v19 .ce-route-progress { z-index:var(--ce19-z-progress) !important; }
body.ce-ui-v19 .scrim { z-index:var(--ce19-z-scrim) !important; }
body.ce-ui-v19 .erp-activity-drawer { z-index:var(--ce19-z-drawer) !important; }
body.ce-ui-v19 .erp-split-workspace { top:var(--ce19-topbar) !important; z-index:var(--ce19-z-split) !important; }
body.ce-ui-v19 .erp-mobile-actions { z-index:var(--ce19-z-mobile) !important; }
body.ce-ui-v19 .modal-bg,
body.ce-ui-v19 .modal-backdrop,
body.ce-ui-v19 .ce-dialog-backdrop { z-index:var(--ce19-z-modal) !important; }
body.ce-ui-v19 :is(.popover,.dropdown-menu,.ce-ledger-picker,.ce-quick-create) { z-index:var(--ce19-z-popover) !important; }
body.ce-ui-v19 :is(.toast-wrap,.toast-container,[data-toast-host]) { z-index:var(--ce19-z-toast) !important; }
body.ce-ui-v19 :is(.ce-page-guide,.ce-page-guide-backdrop) { z-index:var(--ce19-z-guide) !important; }
body.ce-ui-v19 :is(.ce-command-center,#ceCommandCenter,.ce-shortcuts) { z-index:var(--ce19-z-command) !important; }
body.ce-ui-v19 .ce-network-status { z-index:var(--ce19-z-alert) !important; }
body.ce-ui-v19 .modal-bg.open { display:grid !important; place-items:center !important; padding:20px !important; background:rgba(9,18,11,.62) !important; backdrop-filter:blur(4px); }
body.ce-ui-v19 .modal-bg.open>.modal {
  width:min(960px,calc(100vw - 40px)) !important;
  max-width:960px !important;
  max-height:calc(100dvh - 40px) !important;
  overflow:hidden !important;
  border:1px solid color-mix(in srgb,var(--ce19-line) 82%,transparent) !important;
  border-radius:20px !important;
  background:var(--ce19-surface) !important;
  color:var(--ce19-text) !important;
  box-shadow:0 28px 90px rgba(5,14,8,.32) !important;
}
body.ce-ui-v19 .modal-bg.open .ce-modal-form,
body.ce-ui-v19 .modal-bg.open .modal>form { display:flex !important; flex-direction:column !important; max-height:calc(100dvh - 40px) !important; }
body.ce-ui-v19 .modal-bg.open .mb { flex:1 1 auto; overflow:auto !important; padding:18px 20px !important; overscroll-behavior:contain; }
body.ce-ui-v19 .modal-bg.open .mh,
body.ce-ui-v19 .modal-bg.open .mf { flex:0 0 auto; padding:16px 20px !important; background:var(--ce19-surface) !important; }
body.ce-ui-v19 .ce-page-guide,
body.ce-ui-v19 .ce-shortcuts__dialog,
body.ce-ui-v19 .ce-command-center__dialog { background:var(--ce19-surface) !important; color:var(--ce19-text) !important; }
body.ce-ui-v19.ce-overlay-lock { overflow:hidden !important; }
body.ce-ui-v19 .erp-split-workspace[aria-hidden="true"] { visibility:hidden !important; pointer-events:none !important; transform:translateX(103%) !important; }
body.ce-ui-v19 .erp-split-workspace[aria-hidden="false"] { visibility:visible !important; pointer-events:auto !important; transform:translateX(0) !important; }

/* ---------- Responsive shell ---------- */
@media (max-width:1249px) {
  body.ce-ui-v19 .topbar { grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr) auto; gap:12px !important; }
  body.ce-ui-v19 .ce-workflow-badge span:not(.dot),
  body.ce-ui-v19 .ce-sync-status span { display:none; }
  body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-layout { grid-template-columns:minmax(0,1fr) !important; }
  body.ce-ui-v19[data-page="payment_proposals"] .ce-payment-review { position:relative !important; top:auto !important; max-height:none !important; }
}
@media (max-width:1049px) {
  body.ce-ui-v19 .sidebar {
    width:min(90vw,320px) !important;
    transform:translateX(-104%) !important;
    box-shadow:22px 0 60px rgba(0,0,0,.28);
  }
  body.ce-ui-v19.nav-open .sidebar,
  body.ce-ui-v19.side-open .sidebar,
  body.ce-ui-v19.ce-sidebar-mobile-open .sidebar,
  body.ce-ui-v19 .sidebar.open { transform:translateX(0) !important; }
  body.ce-ui-v19.ce-sidebar-collapsed .sidebar { width:min(90vw,320px) !important; }
  body.ce-ui-v19 .main,
  body.ce-ui-v19.ce-sidebar-collapsed .main,
  body.ce-ui-v19.sidebar-collapsed .main { margin-left:0 !important; transition:none !important; }
  body.ce-ui-v19 .topbar {
    grid-template-columns:minmax(0,1fr) auto !important;
    padding-inline:14px !important;
  }
  body.ce-ui-v19 .ce-command-trigger--topbar { display:none !important; }
  body.ce-ui-v19 .burger { display:inline-grid !important; }
  body.ce-ui-v19 .ce-topbar-v8__end { gap:5px; }
  body.ce-ui-v19 .ce-new-action__button { min-width:44px; padding-inline:10px !important; }
  body.ce-ui-v19 .ce-workspace-grid,
  body.ce-ui-v19 .ce-readiness-grid,
  body.ce-ui-v19 .ce-close-grid,
  body.ce-ui-v19 .grid-2c,
  body.ce-ui-v19 .grid-2,
  body.ce-ui-v19 .grid2 { grid-template-columns:minmax(0,1fr) !important; }
  body.ce-ui-v19 .content { padding-bottom:calc(var(--ce19-mobile-dock) + 24px + env(safe-area-inset-bottom,0px)) !important; }
  body.ce-ui-v19 .chat-fab { display:none !important; }
}
@media (max-width:768px) {
  body.ce-ui-v19 .content { padding:14px 14px calc(var(--ce19-mobile-dock) + 22px + env(safe-area-inset-bottom,0px)) !important; }
  body.ce-ui-v19 .ce-context-bar { align-items:flex-start !important; }
  body.ce-ui-v19 .ce-context-crumbs { overflow-x:auto; white-space:nowrap; max-width:100%; }
  body.ce-ui-v19 .ce-context-actions { width:100%; justify-content:flex-start; overflow-x:auto; }
  body.ce-ui-v19 .page-head { align-items:flex-start !important; }
  body.ce-ui-v19 .page-head .actions,
  body.ce-ui-v19 .toolbar { width:100%; }
  body.ce-ui-v19 .ce-smart-filter { grid-template-columns:minmax(0,1fr) !important; }
  body.ce-ui-v19 .ce-smart-filter:not(.has-active-filters) { padding:10px !important; }
  body.ce-ui-v19 .ce-smart-filter:not(.has-active-filters):not(.is-expanded)>:not(.ce-smart-filter__head):not(input[type="hidden"]) { display:none !important; }
  body.ce-ui-v19 :is(.ce-workspace-kpis,.ce-readiness-kpis,.ce-finance-kpis,.ce-close-kpis,.cards,.kpi-grid,.ce-kpi-row) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.ce-ui-v19 .modal-bg.open { padding:0 !important; place-items:end center !important; }
  body.ce-ui-v19 .modal-bg.open>.modal { width:100% !important; max-width:none !important; max-height:94dvh !important; border-radius:20px 20px 0 0 !important; }
  body.ce-ui-v19 .modal-bg.open .ce-modal-form,
  body.ce-ui-v19 .modal-bg.open .modal>form { max-height:94dvh !important; }
}
@media (max-width:520px) {
  body.ce-ui-v19 .topbar { height:64px !important; min-height:64px !important; }
  body.ce-ui-v19 .ce-topbar-kicker { display:none; }
  body.ce-ui-v19 .ce-topbar-title h2 { font-size:14px; }
  body.ce-ui-v19 .ce-new-action__button { font-size:0; }
  body.ce-ui-v19 .ce-new-action__button::after { content:"+"; font-size:22px; }
  body.ce-ui-v19 :is(.ce-workspace-kpis,.ce-readiness-kpis,.ce-finance-kpis,.ce-close-kpis,.cards,.kpi-grid,.ce-kpi-row) { grid-template-columns:minmax(0,1fr) !important; }
  body.ce-ui-v19 .btn { white-space:normal !important; }
  body.ce-ui-v19 .page-head .actions .btn { flex:1 1 calc(50% - 8px); }
  body.ce-ui-v19 .ce-smart-filter__head { align-items:flex-start; }
  body.ce-ui-v19 .ce-smart-filter__actions { flex-wrap:wrap; justify-content:flex-end; }
}

/* ---------- Login page ---------- */
body.ce-login-v19 {
  min-height:100dvh;
  margin:0;
  background:
    radial-gradient(circle at 15% 14%,rgba(103,176,65,.24),transparent 34%),
    linear-gradient(135deg,#0d2014 0%,#173b23 48%,#eff6ec 48%,#f7faf6 100%);
  color:var(--ce19-text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  overflow-x:hidden;
}
.ce-login-v19 .ce-login-shell-v19 {
  min-height:100dvh;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
}
.ce-login-v19 .ce-login-story-v19 {
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:22px;
  padding:clamp(44px,7vw,110px);
  color:#fff;
}
.ce-login-v19 .ce-login-story-v19 h1 { max-width:720px; font-size:clamp(2.5rem,5vw,4.8rem); line-height:.98; letter-spacing:-.055em; }
.ce-login-v19 .ce-login-story-v19>p { max-width:650px; color:#c6d8c8; font-size:clamp(1rem,1.6vw,1.25rem); }
.ce-login-v19 .ce-login-story__eyebrow { color:#b9dfa8; font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.ce-login-v19 .ce-login-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; max-width:760px; }
.ce-login-v19 .ce-login-benefit { padding:16px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(255,255,255,.07); backdrop-filter:blur(10px); }
.ce-login-v19 .ce-login-benefit b { display:block; margin-bottom:5px; }
.ce-login-v19 .ce-login-benefit span { color:#bfd0c1; font-size:13px; }
.ce-login-v19 .ce-login-form-v19 { display:grid; place-items:center; padding:28px; }
.ce-login-v19 .ce-login-card-v19 {
  width:min(100%,480px);
  padding:clamp(26px,4vw,42px);
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  background:rgba(255,255,255,.93);
  box-shadow:0 28px 80px rgba(8,22,11,.24);
  backdrop-filter:blur(18px);
}
.ce-login-v19 .ce-login-brand-row { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.ce-login-v19 .ce-login-brand-row .ce-brand-media { width:52px; height:52px; min-width:52px; border-radius:15px; overflow:hidden; }
.ce-login-v19 .ce-login-brand-row b { display:block; color:#19251a; font-size:15px; }
.ce-login-v19 .ce-login-brand-row span span { color:#667467; font-size:12px; }
.ce-login-v19 .ce-login-version { display:inline-flex; min-height:28px; align-items:center; padding:3px 9px; border-radius:999px; background:#edf7e9; color:#397c2b; border:1px solid #cfe7c6; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.ce-login-v19 .ce-login-card-v19 h2 { margin:18px 0 5px; color:#172219; font-size:clamp(1.8rem,3vw,2.25rem); }
.ce-login-v19 .ce-login-intro { margin:0 0 22px; color:#657266; }
.ce-login-v19 .ce-login-field { display:grid; gap:7px; margin-bottom:15px; }
.ce-login-v19 .ce-login-field label { color:#38463a; font-weight:700; }
.ce-login-v19 .ce-login-field input { width:100%; min-height:48px; border:1px solid #cfdace; border-radius:12px; padding:10px 12px; background:#fff; color:#172219; }
.ce-login-v19 .ce-login-field input:focus { border-color:#397c2b; box-shadow:0 0 0 3px rgba(103,176,65,.18); outline:0; }
.ce-login-v19 .ce-login-submit { width:100%; min-height:50px; border:0; border-radius:12px; background:linear-gradient(135deg,#4b9236,#173e24); color:#fff; font-weight:800; cursor:pointer; }
.ce-login-v19 .ce-login-submit:hover { filter:brightness(1.06); }
.ce-login-v19 .ce-login-note { margin:15px 0 0; text-align:center; color:#748075; font-size:12px; }
.ce-login-v19 .ce-login-error { padding:11px 12px; margin-bottom:15px; border:1px solid #efc5c8; border-radius:10px; background:#fff0f1; color:#9a2730; }
@media (max-width:900px) {
  body.ce-login-v19 { background:linear-gradient(180deg,#10291a 0%,#173b23 34%,#f4f8f2 34%,#f4f8f2 100%); }
  .ce-login-v19 .ce-login-shell-v19 { grid-template-columns:minmax(0,1fr); }
  .ce-login-v19 .ce-login-story-v19 { padding:36px 22px 64px; }
  .ce-login-v19 .ce-login-story-v19 h1 { font-size:clamp(2.2rem,10vw,3.6rem); }
  .ce-login-v19 .ce-login-benefits { grid-template-columns:minmax(0,1fr); }
  .ce-login-v19 .ce-login-form-v19 { margin-top:-44px; padding:0 14px 28px; align-items:start; }
  .ce-login-v19 .ce-login-card-v19 { border-radius:20px; }
}

/* ---------- Reduced motion and high contrast ---------- */
@media (prefers-reduced-motion:reduce) {
  body.ce-ui-v19 *, body.ce-login-v19 * { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}
@media (prefers-contrast:more) {
  body.ce-ui-v19 :is(.panel,.tbl-wrap,.btn,input,select,textarea,.ce-context-bar) { border-color:var(--ce19-line-strong) !important; }
  body.ce-ui-v19 .ce-nav-link.active { outline:2px solid #fff; outline-offset:-2px; }
}

/* ---------- Final print authority ---------- */
@media print {
  @page { size:A4 portrait; margin:9mm; }
  html,body { background:#fff !important; color:#000 !important; overflow:visible !important; }
  body.ce-ui-v19 :is(.sidebar,.scrim,.topbar,.botnav,.ce-context-bar,.toolbar,.page-head .actions,.row-actions,.burger,.side-foot,
    form.gsearch,.ce-smart-filter,.ce-filter-chips,.erp-activity-drawer,.erp-mobile-actions,.erp-mobile-action-trigger,
    .erp-split-workspace,.ce-page-guide,.ce-page-guide-backdrop,.ce-shortcuts,.ce-command-center,#ceCommandCenter,
    .ce-network-status,.chat-fab,.ce-chat-box,.toast-wrap,.toast-container,.modal-bg,.modal-backdrop,.dropdown-menu,
    .popover,.ce-route-progress,[data-no-print]) { display:none !important; visibility:hidden !important; }
  body.ce-ui-v19 :is(.app,.main,.content) {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    overflow:visible !important;
    background:#fff !important;
  }
  body.ce-ui-v19 :is(.panel,.cards,.tbl-wrap,.table-responsive,.print-shell,.pshell) {
    box-shadow:none !important;
    border-color:#bbb !important;
    overflow:visible !important;
    max-height:none !important;
    break-inside:auto !important;
    page-break-inside:auto !important;
  }
  body.ce-ui-v19 table { width:100% !important; border-collapse:collapse !important; font-size:9.5pt !important; color:#000 !important; }
  body.ce-ui-v19 thead { display:table-header-group !important; }
  body.ce-ui-v19 tfoot { display:table-footer-group !important; }
  body.ce-ui-v19 tr { break-inside:avoid !important; page-break-inside:avoid !important; }
  body.ce-ui-v19 th, body.ce-ui-v19 td { white-space:normal !important; overflow-wrap:anywhere; border-color:#c8c8c8 !important; }
  body.ce-ui-v19 th { background:#eee !important; color:#000 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  body.ce-ui-v19 :is(.panel,section,article) { break-inside:auto !important; page-break-inside:auto !important; }
  body.ce-ui-v19 a[href]::after { content:"" !important; }
  body.ce-ui-v19 .page-head h1 { font-size:18pt !important; }
  body.ce-ui-v19 .page-head :is(p,.eyebrow) { display:none !important; }
  table[data-wide-report="true"], [data-wide-report="true"] { page:ce19-wide; }
  @page ce19-wide { size:A4 landscape; margin:8mm; }
}
