:root {
  --blue: #66c5e1;
  --ink: #202221;
  --muted: #626c70;
  --line: #d7dfe2;
  --workspace-background: #f5f7f8;
  --workspace-surface: #fff;
  --workspace-raised: #e9e9e9;
  color-scheme: light;
}
:root[data-theme="dark"] {
  --ink: #e9e9e9;
  --muted: #b3bfc2;
  --line: #505b5e;
  --workspace-background: #202221;
  --workspace-surface: #2c302f;
  --workspace-raised: #363d3d;
  color-scheme: dark;
}
body, body:not(.signed-in) {
  font: 14px "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: var(--workspace-background) !important;
}
button, input, textarea, select { font: inherit; }
button, input, select, .workspace-menu summary {
  min-height: 36px;
}
button, .workspace-menu summary {
  padding: 7px 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--workspace-surface);
  color: var(--ink);
}
button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid #1689a9;
  outline-offset: 3px;
}
button.primary {
  min-height: 42px;
  background: #66c5e1;
  border-color: #66c5e1;
  color: #202221;
}
input, select, textarea, #login input, #login .combo018 > input {
  background: var(--workspace-surface);
  border-color: var(--line);
  color: var(--ink);
}
#workspaceHeader {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  background: var(--workspace-surface);
  border-bottom: 1px solid var(--line);
}
.workspace-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  padding: 12px 16px;
  background: #202221;
  border-radius: 0 14px 14px 0;
}
.workspace-logo img {
  display: block;
  width: 170px;
  height: 58px;
  object-fit: contain;
  filter: invert(1) hue-rotate(180deg) brightness(2.5);
}
#workspaceModules {
  display: flex;
  gap: 4px;
  margin: 0;
  padding: 4px;
  background: var(--workspace-raised);
  border-radius: 9px;
}
#workspaceModules button {
  padding: 8px 16px;
  font-size: 14px;
  border-color: transparent;
  color: var(--ink);
  background: transparent;
}
#workspaceModules button.selected {
  color: #202221;
  background: #66c5e1;
  border-color: #66c5e1;
  box-shadow: none;
}
#workspaceTheme { margin: 8px 16px 8px 0; }
#workspaceAccount { margin-left: auto; }
#workspaceModules[hidden] ~ #workspaceTheme { margin-left: auto; }
#workspaceAccount .sidebottom {
  position: absolute;
  bottom: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
#workspaceModules[hidden], #workspaceAccount[hidden], #serviceNavigation[hidden],
#serviceNavigation [hidden], #app > aside[hidden] { display: none !important; }
#app main {
  width: 100%;
  max-width: 1800px;
  margin-inline: auto;
  padding: 20px clamp(12px, 3vw, 34px);
}
#serviceNavigation, #salesTop017 {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: -20px calc(-1 * clamp(12px, 3vw, 34px)) 20px;
  padding: 10px clamp(12px, 3vw, 34px);
  background: var(--workspace-surface);
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  color: var(--ink);
}
#serviceNavigation > button, #salesNav017 button {
  width: auto;
  margin: 0;
  padding: 7px 12px;
  min-height: 36px;
  color: var(--ink);
  border: 1px solid transparent;
  border-radius: 7px;
}
#salesTop017 #salesNav017 { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; }
#salesTop017 > b { display: none; }
#serviceNavigation button.active, #salesNav017 button.active,
.workspace-menu.selected > summary {
  color: #202221;
  background: #66c5e1;
  border-color: #66c5e1;
}
.workspace-menu { position: relative; flex: 0 0 auto; }
.workspace-menu summary { cursor: pointer; }
.workspace-menu-items, #workspaceAccount .sidebottom, #salesAdvancedMenu017 {
  position: absolute;
  z-index: 20;
  top: calc(100% + 5px);
  min-width: 180px;
  width: max-content;
  max-width: calc(100vw - 24px);
  padding: 6px;
  background: var(--workspace-surface);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 8px 24px #0003;
}
#workspaceAccount .sidebottom { right: 0; }
#workspaceAccount #signedInUser010 { color: inherit; margin: 6px; }
#workspaceAccount .sidebottom button { margin: 4px 0 0; }
.workspace-menu-items button, #serviceSettingsMenu button {
  width: 100%;
  text-align: left;
  margin: 2px 0;
}
#serviceSettingsMenu { padding-left: 8px; }
#login, body:not(.signed-in) #login {
  width: min(420px, calc(100% - 24px));
  margin: 48px auto;
  padding: 28px;
  background: var(--workspace-surface);
  color: var(--ink);
  border: 1px solid var(--line);
  box-shadow: 0 12px 36px #0001;
}
#login > .brand { display: none; }
#login p, #login label { color: var(--ink); }
#login .error, .error { color: #c92b44; }
.sub, .hint, .notice, footer, #updated { color: var(--muted); }
.status-card020 {
  background: var(--workspace-surface);
  color: var(--ink);
  border-color: var(--line);
  border-top-color: var(--status-color);
}
#salesAdvanced017 > summary { background: var(--workspace-surface); color: var(--ink); border-color: var(--line); }
#salesAdvancedMenu017 button { color: var(--ink); }
:root[data-theme="dark"] #workspaceHeader { background: #202221; }
:root[data-theme="dark"] :is(dialog:not(#previewDialog), #view) {
  color: var(--ink);
}
:root[data-theme="dark"] :is(dialog:not(#previewDialog), #view) :is(h2, h3, h4, p, span, label, strong, b, small, td, th),
:root[data-theme="dark"] .card {
  color: inherit;
}
:root[data-theme="dark"] :is(dialog:not(#previewDialog), #view) :is(section, article, table, th),
:root[data-theme="dark"] :is(dialog:not(#previewDialog), .card, .combo-menu018, .combo-menu018 button,
.status-card020, .table-wrap, .status-card020 > div, .dashboard-top, .analytics-kpis018 article,
.analytics-panel018, .sales-filters017, .sales-welcome017, .mail-settings013) {
  background-color: var(--workspace-surface);
  border-color: var(--line);
}
:root[data-theme="dark"] :is(.toolbar, .dashboard-tiles > div, .pos-products018, .pos-basket018,
.pos-product018, .pos-line018, .pos-total018, .service-financials019, .analytics-note018) {
  background-color: var(--workspace-raised);
  color: var(--ink);
  border-color: var(--line);
}
:root[data-theme="dark"] tr:hover { background-color: #3a494b; }
:root[data-theme="dark"] .status-card020 { border-top-color: var(--status-color); }
:root[data-theme="dark"] .error { color: #ffadb8; }
:root[data-theme="dark"] button:focus-visible, :root[data-theme="dark"] summary:focus-visible,
:root[data-theme="dark"] input:focus-visible { outline-color: #66c5e1; }
@media (max-width: 700px), (pointer: coarse) {
  button, input, select, .workspace-menu summary,
  #serviceNavigation > button, #salesNav017 button { min-height: 44px; }
}
@media (max-width: 700px) {
  #workspaceHeader { gap: 8px; }
  .workspace-logo { padding: 9px 12px; min-height: 70px; }
  .workspace-logo img { width: 130px; height: 48px; }
  #workspaceModules { order: 1; margin: 0 12px 10px; }
  #workspaceModules button { padding-inline: 14px; }
  #workspaceTheme { margin: 8px 12px 8px 0; padding-inline: 9px; }
  #workspaceAccount { margin-left: auto; }
  #workspaceAccount > summary { padding-inline: 9px; }
  #serviceNavigation, #salesTop017 { gap: 5px; }
  .workspace-menu-items { position: static; box-shadow: none; }
  #serviceMore .workspace-menu-items { min-width: 160px; }
  #login, body:not(.signed-in) #login { margin-block: 24px; }
}
@media print {
  #workspaceHeader { display: none !important; }
  :root[data-theme="dark"] body { background: white !important; }
}
.service-queue-page :is(#cards, #period, #filter, #allDates, #orderDateRange012) { display: none !important; }
#serviceQueueFilters { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; }
#serviceQueueFilters[hidden] { display: none; }
#serviceQueueFilters label { min-width: 0; }
#serviceQueueFilters select { max-width: 190px; }
#serviceQueueDates { display: flex; flex-basis: 100%; }
#serviceQueueDates[hidden], #serviceQueueDates [hidden] { display: none; }
#serviceQueueDates [data-period="range"] { display: flex; flex-wrap: wrap; gap: 8px; }
.service-queue-date { display: flex; align-items: stretch; gap: 4px; }
.service-queue-date button { padding: 0 10px; display: grid; place-items: center; }
.service-queue-date input { width: 145px; }
.service-queue-date input::-webkit-calendar-picker-indicator { display: none; }
#serviceQueueYear { width: 100px; }
#serviceQueueAll[aria-pressed="true"] { border-color: #66c5e1; box-shadow: inset 0 -2px #66c5e1; }
.service-queue-open { padding: 4px 8px; color: inherit; font-weight: 700; }
.service-queue-page #view tr[data-id] { cursor: pointer; }
.service-queue-page #view :is(th, td) { padding: 8px 12px; }
.service-queue-page .service-queue-debt .debt-label { color: #9a2235; }
:root[data-theme="dark"] .service-queue-page .service-queue-debt .debt-label { color: #ff9b9f !important; }
#editor.saved-order-workspace #savedOrderDevice.saved-order-match { border-color: #66c5e1; box-shadow: inset 3px 0 #66c5e1; }
@media (max-width: 700px) {
  #serviceQueueFilters { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 8px; }
  #serviceQueueFilters select { width: 100%; max-width: none; }
  #serviceQueueDates { grid-column: 1 / -1; }
  #serviceQueueDates [data-period="range"] { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #serviceQueueDates [data-period="range"][hidden] { display: none; }
  .service-queue-date button { min-width: 44px; }
  .service-queue-date input { flex: 1; min-width: 0; width: auto; padding-inline: 6px; }
}
