/* Shyntec Admin — Lumo theme overrides. Dark scheme is fixed via @ColorScheme
   on Application (sets the theme="dark" attribute Lumo needs for its full
   dark palette): the real usage scene is an assembly bay under dim bench
   lighting, so dark is the floor, not an option. Accent is blue
   (avionics/instrument-panel association). */
/* Lumo's own dark palette lives under [theme~="dark"] (set by @ColorScheme on
   Application), which outranks a plain html selector — override there, not on html. */
[theme~="dark"] {
  --lumo-primary-color: #60a5fa;
}

/* Side nav: accent icons when inactive, filled container on the current item. */
vaadin-side-nav-item:not([current]) > vaadin-icon {
  color: var(--lumo-primary-text-color);
}

vaadin-side-nav-item[current]::part(content) {
  --vaadin-side-nav-item-background: var(--vaadin-background-container);
  --vaadin-side-nav-item-border-color: transparent;
}

vaadin-side-nav::part(label) {
  text-transform: uppercase;
  font-size: var(--lumo-font-size-xs);
  color: var(--vaadin-text-color);
  letter-spacing: 0.03em;
}

/* Lumo's default/tertiary buttons are already neutral (only "primary" picks up
   --lumo-primary-color), so only the flat, borderless, shadowless surface
   needs restating here. */
:is(vaadin-button, vaadin-menu-bar-button, vaadin-upload-button):not([theme~="primary"], [theme~="tertiary"]) {
  --vaadin-button-background: var(--vaadin-background-container);
  --vaadin-button-border-color: transparent;
  --vaadin-button-shadow: none;
}

/* QR label print (AssemblyLabelDialog, ComponentLabelDialog): hide everything except the
   label panel and size it to a sticker. ponytail: 50mm x 30mm is a placeholder footprint —
   the real size/margin only gets calibrated against the actual label stock (Post-Completion). */
@media print {
  body * {
    visibility: hidden;
  }

  .qr-label-print,
  .qr-label-print * {
    visibility: visible;
  }

  .qr-label-print {
    position: fixed;
    top: 0;
    left: 0;
    width: 50mm;
    height: 30mm;
  }
}
