/* Shemex visual refresh. Presentation only; shared by standalone and cloud.
 * Scoped selectors keep checkout geometry, dialogs and print layouts intact.
 * This file is deliberately independent of runtime-generated Tailwind CSS. */
.pricing-retired { margin:0; padding:32px 18px; background:#f3f6fb; color:#172b49; font:16px/1.7 system-ui,sans-serif; }
.pricing-retired main { max-width:680px; margin:40px auto; padding:32px; background:white; border:1px solid #dde5f0; border-radius:18px; }
.pricing-retired a { color:#245ac5; text-underline-offset:4px; }
.pricing-retired a:focus-visible { outline:3px solid #245ac5; outline-offset:4px; }
:root {
  --ui-ink: #172b49;
  --ui-accent: #245ac5;
  --ui-canvas: #f3f6fb;
  --ui-line: #dde5f0;
  --ui-elevation: 0 5px 20px rgba(25, 45, 80, .055);
}

@media screen {
  .ui-refresh #pageContent {
    background: radial-gradient(ellipse at 100% 0, rgba(79,70,229,.045), transparent 45%), var(--ui-canvas);
  }
  html.dark .ui-refresh #pageContent {
    background: radial-gradient(ellipse at 100% 0, rgba(99,102,241,.07), transparent 45%), #0a1222;
  }
  .ui-refresh #mainContent > header { box-shadow: 0 2px 12px rgba(25,45,80,.035); }
  .ui-refresh #appSidebar { box-shadow: 3px 0 20px rgba(25,45,80,.025); }
  .ui-refresh #appSidebar .sidebar-header { border-bottom-color: var(--ui-line); }
  .ui-refresh #appSidebar .sidebar-link { margin: 2px 10px; border-radius: 10px; }
  .ui-refresh #appSidebar .sidebar-link[aria-current="page"] {
    background: linear-gradient(100deg, #eeedff, #f4f6ff);
    border-right: 0;
    box-shadow: inset 3px 0 var(--ui-accent);
    color: #4338ca;
  }
  html.dark .ui-refresh #appSidebar .sidebar-link[aria-current="page"] {
    background: linear-gradient(100deg, #292650, #19243c);
    box-shadow: inset 3px 0 #a5b4fc;
    color: #c7d2fe;
  }
  .ui-refresh .card { border-color: var(--ui-line); box-shadow: var(--ui-elevation); }
  .ui-refresh .card-header { background-image: linear-gradient(110deg, rgba(79,70,229,.035), transparent); }
  .ui-refresh .table thead th {
    background: #eef2f9 !important;
    color: #53627b !important;
    letter-spacing: .045em;
  }
  html.dark .ui-refresh .card { border-color: #29364d; box-shadow: none; }
  html.dark .ui-refresh .table thead th { background: #172237 !important; color: #b8c7dd !important; }
  .ui-refresh .form-control:focus, .ui-refresh .form-select:focus {
    border-color: #818cf8;
    box-shadow: 0 0 0 3px rgba(99,102,241,.13);
  }
  .ui-refresh .page-header-title { letter-spacing: -.035em; }

  /* Dashboard: orient first, scan numbers second, then take action. */
  .ui-refresh .dashboard-heading {
    padding: 24px 28px;
    border-radius: 20px;
    background: radial-gradient(ellipse at 95% 0, rgba(99,102,241,.42), transparent 60%), linear-gradient(115deg, #142742, #25345b);
    border: 1px solid rgba(148,163,184,.18);
    box-shadow: 0 8px 22px rgba(23,43,73,.12);
    gap: 20px;
  }
  .ui-refresh .dashboard-heading > div:first-child > p:first-child { color: #bac7ff; letter-spacing: .14em; }
  .ui-refresh .dashboard-heading h2 { color: #fff; font-size: clamp(1.45rem, 2.2vw, 1.9rem); letter-spacing: -.035em; }
  .ui-refresh .dashboard-heading > div:first-child > p:last-child { color: #cad5e8; margin-bottom: 0; }
  .ui-refresh .dashboard-heading > div:last-child > a {
    background: rgba(255,255,255,.09);
    border-color: rgba(255,255,255,.2);
    color: #f1f5ff;
    min-height: 36px;
  }
  .ui-refresh .dashboard-heading > div:last-child > a:hover { background: rgba(255,255,255,.17); }
  .ui-refresh .dashboard-kpis > * {
    --metric-color: #059669;
    --metric-tint: rgba(16,185,129,.075);
    border-radius: 16px;
    border-top: 3px solid var(--metric-color) !important;
    padding: 20px !important;
    min-height: 178px;
    background-image: linear-gradient(125deg, var(--metric-tint), transparent 70%);
    box-shadow: var(--ui-elevation);
    min-width: 0;
  }
  .ui-refresh .dashboard-kpis > :nth-child(2) { --metric-color: #e05c69; --metric-tint: rgba(244,63,94,.065); }
  .ui-refresh .dashboard-kpis > :nth-child(3) { --metric-color: #4283dd; --metric-tint: rgba(59,130,246,.075); }
  .ui-refresh .dashboard-kpis > :nth-child(4) { --metric-color: #8b5cf6; --metric-tint: rgba(139,92,246,.075); }
  .ui-refresh .dashboard-kpis .tabular-nums { font-weight: 750; letter-spacing: -.035em; overflow-wrap: anywhere; }
  .ui-refresh .dashboard-kpis > * > .text-xs:last-child { color: #64748b; }
  html.dark .ui-refresh .dashboard-kpis > * > .text-xs:last-child { color: #94a3b8; }
  .ui-refresh .dashboard-shortcut { border-radius: 14px; box-shadow: 0 3px 12px rgba(25,45,80,.035); }
  .ui-refresh .dashboard-shortcut > div { border-radius: 12px; background: #f1f3ff; border-color: #e5e7fc; }
  .ui-refresh .dashboard-shortcut > span { color: #465771; text-align: center; line-height: 1.35; }
  .ui-refresh .dashboard-shortcut:hover { border-color: #a5b4fc; box-shadow: 0 6px 20px rgba(79,70,229,.09); }
  html.dark .ui-refresh .dashboard-shortcut > div { background: #222b46; border-color: #34415d; }
  html.dark .ui-refresh .dashboard-shortcut > span { color: #bac8dc; }
  .ui-refresh #alerts-panel { scroll-margin-top: 20px; }

  /* Authentication: calm surfaces and a consistent accent. */
  .ui-login .rp { background: radial-gradient(ellipse at 90% 10%, #e5eaff, transparent 55%), #f5f7fc; }
  html.dark .ui-login .rp { background: radial-gradient(ellipse at 90% 10%, #1b2443, transparent 65%), #0c1425; }
  .ui-login .login-card { border-top: 3px solid #818cf8; box-shadow: 0 20px 60px rgba(28,44,78,.12); }
  .ui-login .lp { background: radial-gradient(ellipse at 15% 30%, #23345b, transparent 65%), #101d33; }
  .ui-login .auth-input { min-height: 48px; }
  .ui-agent-login {
    background: radial-gradient(ellipse at 10% 0, #e0e7ff, transparent 50%), radial-gradient(ellipse at 100% 100%, #dff3f0, transparent 50%), #f6f8fc;
  }
  .ui-agent-login .agent-login-card { border: 1px solid #dfe5f3; border-top: 3px solid #818cf8; box-shadow: 0 18px 45px rgba(29,49,89,.09); }

  /* Field operations use the same palette, while preserving their mobile nav. */
  .ui-agent { background: #eaf0f8; }
  .ui-agent .agent-shell { border-color: #d9e2ef; box-shadow: 0 18px 60px rgba(25,45,80,.13); }
  .ui-agent #agentMain { background: radial-gradient(ellipse at 100% 0, rgba(99,102,241,.05), transparent 55%), #f3f6fb; }
  .ui-agent .agent-shell header { background: linear-gradient(105deg, #263b68, #4f46e5); }
  .ui-agent .agent-dashboard-heading { padding: 18px; background: #fff; border: 1px solid #dde5f0; border-radius: 16px; box-shadow: var(--ui-elevation); }
  .ui-agent .agent-dashboard-heading h1 { font-size: 1.5rem; color: #192e4d; }
  .ui-agent .agent-dashboard-heading p:last-child { color: #64748b; font-size: .75rem; }
  .ui-agent .agent-stat-grid > div { border-top: 3px solid #6366f1; background-image: linear-gradient(130deg, rgba(99,102,241,.07), transparent 75%); box-shadow: var(--ui-elevation); }
  .ui-agent .agent-stat-grid > div:nth-child(2) { border-top-color: #10b981; background-image: linear-gradient(130deg, rgba(16,185,129,.07), transparent 75%); }
  .ui-agent .agent-stat-grid .text-slate-400 { color: #64748b; }
  .ui-agent .agent-quick-actions a { border-radius: 13px; min-height: 58px; }
  .ui-agent .agent-stock-panel { box-shadow: var(--ui-elevation); }
  .ui-agent .bottom-nav .nav-item.active { background: #eef2ff; border-radius: 12px; }
  .ui-agent .sidebar-link.active { background: #eeedff; box-shadow: inset 3px 0 #6366f1; }

  /* Terminal: color and surfaces only; preserve product/cart sizes. */
  .ui-pos > header { border-top: 3px solid #6366f1; box-shadow: 0 3px 16px rgba(25,45,80,.055); }
  .ui-pos #posMain { background: #f3f6fb; }
  .ui-pos .pos-card { border: 1px solid #dde5f0; background-color: #fff; box-shadow: 0 4px 14px rgba(25,45,80,.055); }
  .ui-pos .pos-card:hover { border-color: #818cf8; }
  .ui-pos .cat-pill.active { background: #4f46e5; border-color: #4f46e5; color: #fff; box-shadow: 0 3px 10px rgba(79,70,229,.16); }
  .ui-pos #posCartPanel { box-shadow: -5px 0 24px rgba(25,45,80,.07); }
  html.dark .ui-pos #posMain { background: #0c1526; }
  html.dark .ui-pos .pos-card { background-color: #17243a; border-color: #2e3d56; box-shadow: none; }
  html.dark .ui-pos .pos-card:hover { border-color: #818cf8; }
}

@media screen and (max-width: 767px) {
  .ui-refresh .dashboard-heading { padding: 19px; border-radius: 16px; }
  .ui-refresh .dashboard-heading > div:last-child { width: 100%; }
  .ui-refresh .dashboard-heading > div:last-child > a { min-height: 40px; }
  .ui-refresh .dashboard-kpis { gap: 12px; }
  .ui-refresh .dashboard-kpis > * { border-radius: 13px; padding: 14px !important; min-height: 160px; }
  .ui-refresh #mobileMenuButton { min-width: 44px; min-height: 44px; }
  .ui-agent .agent-shell { height: 100dvh; }
  .ui-agent .agent-dashboard-heading { flex-wrap: wrap; }
  .ui-agent .agent-dashboard-heading > a { min-height: 44px; }
  .ui-agent .agent-stat-grid .tabular-nums { overflow-wrap: anywhere; }
  .ui-login .auth-input { font-size: 16px; }
  .ui-agent-login select { font-size: 16px; }
}

@media screen and (max-width: 359px) {
  .ui-refresh .dashboard-kpis { grid-template-columns: minmax(0, 1fr); }
  .ui-agent .agent-stat-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  .ui-agent *, .ui-agent-login *, .ui-login *, .ui-pos * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

@media (forced-colors: active) {
  .ui-refresh .dashboard-heading, .ui-refresh .dashboard-kpis > *, .ui-agent .agent-stat-grid > div { border: 1px solid CanvasText; }
}
/* Tailwind's .collapse sets visibility:collapse. Bootstrap uses the same
   class for disclosures; expanded panels must stay visible. Do not override
   Bootstrap's display:none for a closed panel. */
.collapse.show,
.collapsing {
  visibility: visible;
}

/* Shared workspace polish; screen-only, never changes terminal/print geometry. */
@media screen {
  html[data-display-mode="touch"] .ui-refresh #pageContent .btn,
  html[data-display-mode="touch"] .ui-refresh #pageContent .form-control,
  html[data-display-mode="touch"] .ui-refresh #pageContent .form-select,
  html[data-display-mode="touch"] .ui-pos .cat-pill { min-height: 48px; font-size: 16px; }
  .ui-refresh #appSidebar .sidebar-link { text-decoration: none; gap: 12px; line-height: 1.4; }
  .ui-refresh #appSidebar .sidebar-link i { flex: 0 0 20px; text-align: center; }
  .ui-refresh .app-topbar > div { min-width: 0; }
  .ui-refresh .app-topbar button { flex-shrink: 0; }
  .ui-refresh .app-topbar #notifBtn,
  .ui-refresh .app-topbar #themeToggle { width: 40px; height: 40px; }
  .ui-refresh #pageContent .btn { border-radius: 10px; }
  .ui-refresh #pageContent .form-control,
  .ui-refresh #pageContent .form-select { border-radius: 10px; }
  .ui-refresh #pageContent .form-label { line-height: 1.5; }
  .ui-refresh #pageContent .table td { padding-top: 12px; padding-bottom: 12px; vertical-align: middle; }
  .ui-refresh #pageContent .table thead th { line-height: 1.5; }
  .ui-refresh .workspace-heading h1 { font-weight: 750; letter-spacing: -.025em; margin-bottom: 6px; }
  .ui-refresh .workspace-heading p { margin-bottom: 0; max-width: 65ch; line-height: 1.6; }
  .ui-refresh .workspace-filter .form-label { width: 100%; }
  .ui-refresh .workspace-filter .btn { min-height: 40px; }
  .ui-refresh .workspace-empty { text-align: center; padding: 32px 16px !important; }
  .ui-refresh .dashboard-status-grid { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
  .ui-refresh .dashboard-status-grid > a { min-width: 0; min-height: 88px; text-decoration: none; }
  .ui-refresh .dashboard-status-grid .truncate { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
  .ui-refresh .dashboard-status-grid .tabular-nums { font-size: 1.05rem; font-variant-numeric: tabular-nums; }
  .ui-refresh .settings-index { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 12px; border: 1px solid var(--ui-line); border-radius: 14px; background: #fff; }
  .ui-refresh .settings-index-label { color: #64748b; font-size: .75rem; font-weight: 700; padding: 0 6px; }
  .ui-refresh .settings-index a { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 12px; border-radius: 9px; background: #f1f5fb; color: #245ac5; text-decoration: none; font-size: .8rem; font-weight: 600; }
  .ui-refresh .settings-index a:hover { background: #e6edfb; }
  .ui-refresh #pageContent [id^="settings-"], .ui-refresh #operations-heading { scroll-margin-top: 90px; }
  html.dark .ui-refresh .settings-index { background: #172237; border-color: #29364d; }
  html.dark .ui-refresh .settings-index a { background: #22324c; color: #bfdbfe; }
  html.dark .ui-refresh .settings-index-label { color: #b8c7dd; }
  html.dark .ui-refresh #pageContent .btn-outline-primary { color: #bfdbfe !important; border-color: #7895e5 !important; }
  html.dark .ui-refresh #pageContent .btn-outline-primary:hover { color: #fff !important; }
  html.dark .ui-refresh .nav-clean-tabs .nav-link.active { color: #c7d2fe; border-bottom-color: #a5b4fc; }
  .ui-refresh :is(a, button, summary, input, select, textarea):focus-visible { outline: 3px solid #4283dd; outline-offset: 3px; }
  .ui-refresh details > summary { min-height: 40px; padding-block: 8px; cursor: pointer; }
  .ui-refresh main[data-route="job_reports"] .fs-4 { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
  .ui-refresh main[data-route="service_jobs"] td[colspan="8"],
  .ui-refresh main[data-route="job_reports"] td[colspan="8"] { text-align: center; padding: 32px 16px; }
}
@media screen and (max-width: 767px) {
  .ui-refresh .app-topbar { gap: 8px; }
  .ui-refresh .app-topbar #notifBtn, .ui-refresh .app-topbar #themeToggle { width: 44px; height: 44px; }
  .ui-refresh [data-close-navigation] { min-width: 44px; min-height: 44px; }
  .ui-refresh #mobileNavigationLinks .sidebar-link { min-height: 44px; margin: 2px 10px; border-radius: 10px; text-decoration: none; }
  .ui-refresh #mobileNavigationLinks .sidebar-link[aria-current="page"] { box-shadow: inset 3px 0 var(--ui-accent); border-right: 0; }
  .ui-refresh .dashboard-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .ui-refresh .dashboard-status-grid > a { padding: 12px; gap: 10px; }
  .ui-refresh .workspace-heading { gap: 14px; }
  .ui-refresh #pageContent .form-control, .ui-refresh #pageContent .form-select { min-height: 44px; font-size: 16px; }
  .ui-refresh #pageContent .btn { min-height: 40px; }
  .ui-refresh .settings-index a { min-height: 44px; }
  .ui-refresh .workspace-filter .btn { width: 100%; }
  .ui-refresh .report-date-filter { flex-wrap: wrap; margin-left: 0 !important; width: 100%; }
  .ui-refresh .report-date-filter .form-control { width: calc(50% - 4px) !important; min-width: 0; }
  .ui-refresh .report-date-filter > span { display: none; }
  .ui-refresh .report-date-filter .btn { width: 100%; }
}
@media screen and (max-width: 359px) {
  .ui-refresh .dashboard-status-grid { grid-template-columns: minmax(0, 1fr); }
}
@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ui-refresh .dashboard-heading { flex-direction: column; align-items: flex-start; }
  .ui-refresh .dashboard-heading > div:last-child { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .ui-refresh *, .ui-refresh *::before, .ui-refresh *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* 2026 visual system: shared screen-only components. No height/overflow
   overrides on the terminal, app shell or dialogs; print rules stay separate. */
:root {
  --ui-accent-hover: #1d49a3;
  --ui-accent-soft: #eaf1ff;
  --ui-muted: #53647e;
  --ui-radius: 16px;
  --ui-line: #dbe4f0;
  --ui-elevation: 0 4px 18px rgba(18, 42, 78, .055);
}
@media screen {
  :is(.ui-refresh,.ui-login,.ui-agent-login,.ui-agent,.ui-pos) { -webkit-font-smoothing: antialiased; }
  .ui-refresh #pageContent { background: radial-gradient(ellipse at 100% 0, #eaf1ff 0, transparent 48%), #f4f7fc; }
  .ui-refresh #appSidebar { border-right-color: var(--ui-line); box-shadow: 4px 0 24px rgba(18,42,78,.025); }
  .ui-refresh #appSidebar .sidebar-link { padding-block: 11px; font-weight: 550; transition: background-color .15s, color .15s; }
  .ui-refresh #appSidebar .sidebar-link[aria-current="page"] { color: #17499f; background: var(--ui-accent-soft); box-shadow: inset 3px 0 var(--ui-accent); font-weight: 700; }
  .ui-refresh .app-topbar { border-bottom-color: var(--ui-line); box-shadow: 0 3px 16px rgba(18,42,78,.035); }
  .ui-refresh #pageContent :is(.card,.workspace-filter) { border-radius: var(--ui-radius); }
  .ui-refresh #pageContent .card { animation: none; }
  .ui-refresh #pageContent .card-header { background-image: none; border-bottom-color: var(--ui-line); padding-block: 16px; }
  .ui-refresh #pageContent .card-header :is(h2,h3,h4,h5,h6) { letter-spacing: -.02em; }
  .ui-refresh #pageContent :is(.btn,.form-control,.form-select) { min-height: 40px; }
  .ui-refresh #pageContent .btn { font-weight: 600; }
  .ui-refresh #pageContent .btn-primary { --bs-btn-bg: var(--ui-accent); --bs-btn-border-color: var(--ui-accent); --bs-btn-hover-bg: var(--ui-accent-hover); --bs-btn-hover-border-color: var(--ui-accent-hover); --bs-btn-active-bg: #173d8c; --bs-btn-active-border-color: #173d8c; }
  .ui-refresh #pageContent .btn-primary { background: linear-gradient(110deg,#245ac5,#3175df) !important; box-shadow: 0 3px 10px rgba(36,90,197,.2) !important; }
  .ui-refresh #pageContent .btn-primary:hover { background: linear-gradient(110deg,#1d49a3,#245ac5) !important; }
  .ui-refresh #pageContent .btn-outline-primary { --bs-btn-color: var(--ui-accent); --bs-btn-border-color: #a7bfe9; --bs-btn-hover-bg: var(--ui-accent); --bs-btn-hover-border-color: var(--ui-accent); }
  .ui-refresh #pageContent .form-label { font-weight: 600; color: #334866; }
  .ui-refresh #pageContent :is(.form-control,.form-select) { border-color: #cbd8e9; }
  .ui-refresh #pageContent :is(.form-control,.form-select):focus { border-color: var(--ui-accent); box-shadow: 0 0 0 3px rgba(36,90,197,.14); }
  .ui-refresh #pageContent :is(.form-control,.form-select).is-invalid { border-color: var(--bs-form-invalid-border-color,#dc3545); }
  .ui-refresh #pageContent .table { --bs-table-border-color: #e4ebf5; }
  .ui-refresh #pageContent .table thead th { background: #edf3fc !important; color: #405574 !important; font-size: .75rem; letter-spacing: .035em; }
  .ui-refresh #pageContent .table td { font-size: .875rem; }
  .ui-refresh #pageContent .table-responsive { border-radius: 12px; }
  .ui-refresh .workspace-heading h1 { font-size: clamp(1.5rem,2.4vw,2rem); color: var(--ui-ink); }
  .ui-refresh .workspace-heading p { color: var(--ui-muted); }
  .ui-refresh .nav-clean-tabs .nav-link.active { color: var(--ui-accent); border-bottom-color: var(--ui-accent); }
  .ui-refresh .settings-index { box-shadow: var(--ui-elevation); }
  .ui-refresh .settings-index a { background: var(--ui-accent-soft); color: #17499f; }

  /* Clear dashboard hierarchy; retain all figures, scopes and permissions. */
  .ui-refresh .dashboard-heading { background: radial-gradient(ellipse at 100% 0, rgba(80,151,255,.3), transparent 65%), linear-gradient(110deg,#112b4e,#1c4480); padding: 28px; border-radius: 20px; }
  .ui-refresh .dashboard-heading > div:first-child > p:first-child { color: #b9d8ff; }
  .ui-refresh .dashboard-kpis > * { border-top-width: 2px !important; border-radius: 18px; }
  .ui-refresh .dashboard-kpis > :nth-child(4) { --metric-color: #1e6ba8; --metric-tint: rgba(30,107,168,.075); }
  .ui-refresh .dashboard-kpis > :nth-child(4) .tabular-nums { color: #1e6ba8; }
  .ui-refresh .dashboard-kpis .tabular-nums { font-variant-numeric: tabular-nums; font-size: clamp(1.35rem,2vw,1.8rem); }
  .ui-refresh .dashboard-shortcut { text-decoration: none; }
  .ui-refresh .dashboard-shortcut > div { background: var(--ui-accent-soft); border-color: #d5e3fa; }
  .ui-refresh .dashboard-shortcut:hover { border-color: #a7bfe9; box-shadow: 0 6px 20px rgba(36,90,197,.1); }
  .ui-refresh .dashboard-status-grid > a { border-radius: 14px; }

  /* Authentication keeps customer branding and existing sign-in controls. */
  .ui-login .lp { background: radial-gradient(ellipse at 0 0,#1b4b8c,transparent 65%),#102744; }
  .ui-login .rp { background: radial-gradient(ellipse at 100% 0,#e5efff,transparent 55%),#f4f7fc; }
  .ui-login .login-card { border-top-color: var(--ui-accent); border-radius: 22px; }
  .ui-login .btn-signin { background: linear-gradient(115deg,#245ac5,#3175df); box-shadow: 0 6px 18px rgba(36,90,197,.23); }
  .ui-login .btn-signin:hover { box-shadow: 0 8px 24px rgba(36,90,197,.3); }
  .ui-login .auth-input:focus { border-color: var(--ui-accent); box-shadow: 0 0 0 3px rgba(36,90,197,.14); }
  .ui-login .metric-lbl { color: #b5c8e1; }
  .ui-login .lp p { color: #bfd0e6 !important; }
  .ui-login .rp > p { color: #61728d !important; }
  .ui-agent-login { background: radial-gradient(ellipse at 0 0,#dceaff,transparent 55%),#f4f7fc; }
  .ui-agent-login .agent-login-card { border-top-color: var(--ui-accent); border-radius: 22px; }
  .ui-agent .agent-shell header { background: linear-gradient(110deg,#17385e,#245ac5); }
  .ui-agent #agentMain { background: #f4f7fc; }
  .ui-agent .agent-stat-grid > div:first-child { border-top-color: var(--ui-accent); background-image: linear-gradient(130deg,rgba(36,90,197,.08),transparent 75%); }
  .ui-agent .bottom-nav .nav-item.active, .ui-agent .sidebar-link.active { background: var(--ui-accent-soft); color: #17499f; }
  .ui-agent .sidebar-link.active { box-shadow: inset 3px 0 var(--ui-accent); }
  .ui-pos > header { border-top-color: var(--ui-accent); }
  .ui-pos .cat-pill.active { background: var(--ui-accent); border-color: var(--ui-accent); box-shadow: 0 3px 10px rgba(36,90,197,.18); }
  .ui-pos #btnCheckout { background: linear-gradient(110deg,#245ac5,#3175df); }
  .ui-login .lp h1 span { background-image: linear-gradient(110deg,#c0ddff,#7eb4ff) !important; }
  .ui-agent-login p { color: var(--ui-muted); }
  .ui-refresh #appFooterBar { color: #64748b; }
  .ui-refresh :is(.app-topbar,#appFooterBar) kbd { color: #53647e; background: #edf3fc; border: 1px solid #dbe4f0; }
  .ui-pos .pos-card { border-radius: 14px; }
  .ui-pos .pos-card:hover { border-color: #7ca7eb; }
  :is(.ui-refresh,.ui-login,.ui-agent-login,.ui-agent,.ui-pos) :is(.bg-indigo-600,.bg-indigo-500) { background-color: var(--ui-accent); }
  :is(.ui-refresh,.ui-login,.ui-agent-login,.ui-agent,.ui-pos) :is(.text-indigo-600,.text-indigo-500) { color: var(--ui-accent); }
  .ui-refresh .app-topbar a[href="index.php?route=pos"] { background: linear-gradient(110deg,#245ac5,#3175df); }
  :is(.ui-login,.ui-agent-login,.ui-agent,.ui-pos) :is(a,button,input,select,textarea):focus-visible { outline: 3px solid #3175df; outline-offset: 3px; }

  /* Dark surfaces are explicit so the light refresh never washes them out. */
  html.dark .ui-refresh #pageContent, html.dark .ui-agent #agentMain { background: #0d1728; }
  html.dark .ui-refresh #appSidebar .sidebar-link[aria-current="page"] { background: #1b3455; color: #bfdbfe; }
  html.dark .ui-refresh #pageContent :is(.form-label,.workspace-heading h1) { color: #d8e5f6; }
  html.dark .ui-refresh .workspace-heading p { color: #a8bad2; }
  html.dark .ui-refresh #pageContent .table thead th { background: #1a2a42 !important; color: #c3d3e9 !important; }
  html.dark .ui-refresh #pageContent details > summary { color: #bfdbfe !important; }
  html.dark .ui-refresh :is(.app-topbar,#appFooterBar) kbd { color: #c3d3e9; background: #1a2a42; border-color: #405574; }
  html.dark .ui-refresh .dashboard-shortcut > div { background: #1b3455; border-color: #304d74; }
  html.dark :is(.ui-refresh,.ui-login,.ui-agent-login,.ui-agent,.ui-pos) :is(.text-indigo-600,.text-indigo-500) { color: #9cc5ff; }
  html.dark .ui-refresh .dashboard-kpis > :nth-child(4) .tabular-nums { color: #9cc5ff; }
  html.dark .ui-login .rp { background: #0d1728; }
  html.dark .ui-refresh #pageContent :is(.form-control,.form-select) { border-color: #405574; }
}
@media screen and (hover:hover) {
  .ui-refresh #appSidebar .sidebar-link:not([aria-current="page"]):hover { background: #f0f5fd; color: #17499f; }
  html.dark .ui-refresh #appSidebar .sidebar-link:not([aria-current="page"]):hover { background: #1b2e49; color: #bfdbfe; }
}
@media screen and (max-width:767px) {
  .ui-refresh .dashboard-heading { padding: 20px; }
  .ui-refresh .dashboard-kpis > * { min-height: 155px; }
  :is(.ui-agent,.ui-agent-login,.ui-login) :is(button,select,input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])) { min-height: 44px; }
  .ui-refresh .dashboard-heading > div:last-child > a { padding: 7px 9px; font-size: 11px; }
  .ui-refresh #pageContent .table-responsive { overscroll-behavior-x: contain; }
}
@media screen {
  .ui-access { background: radial-gradient(ellipse at 100% 0,#e5efff,transparent 55%),#f4f7fc; padding: 20px; }
  .ui-access .activation-card { border: 1px solid var(--ui-line); border-top: 3px solid var(--ui-accent); border-radius: 22px; box-shadow: 0 20px 60px rgba(18,42,78,.12); }
  .ui-access :is(.btn-activate,.bg-indigo-600) { background: var(--ui-accent); color: #fff; }
  .ui-access :is(input,textarea,select):focus-visible { outline: 3px solid #3175df; outline-offset: 3px; }
  .ui-access :is(button,a):focus-visible { outline: 3px solid #3175df; outline-offset: 3px; }
  html.dark .ui-access { background: #0d1728; }
}
@media screen and (max-width:767px) {
  .ui-access .activation-card { padding: 24px; }
  .ui-access :is(button,input:not([type="hidden"]),select) { min-height: 44px; }
}
/* Native keyboard scrolling for wide data tables; no print-layout changes. */
@media screen {
  .ui-refresh .table-responsive.is-scrollable:focus-visible {
    outline: 3px solid var(--ui-accent);
    outline-offset: -3px;
  }
  .ui-refresh .table-responsive { scrollbar-color: #8ca8d4 transparent; }
}
