:root {
  --font-family-base: "Century Gothic", "Trebuchet MS", Arial, sans-serif;
  --font-size-page-title: 30px;
  --font-size-section-title: 19px;
  --font-size-body: 14px;
  --font-size-label: 13px;
  --font-size-small: 12px;
  --font-size-helper: 11px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 650;
  --font-weight-bold: 700;
  --line-height-body: 1.5;
  --line-height-heading: 1.2;
  --color-primary: #1769e0;
  --color-primary-soft: #edf5ff;
  --color-danger: #a93030;
  --color-danger-soft: #fff0f0;
  --color-success: #1d7b48;
  --color-success-soft: #e6f7ed;
  --color-bg: #f5f7fa;
  --color-surface: #fff;
  --color-border: #e2e7ec;
  --color-text: #17212b;
  --color-text-muted: #697586;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 14px;
  --space-xs: 8px;
  --space-sm: 10px;
  --space-md: 16px;
  --space-lg: 24px;
  --sidebar-width: 230px;
  --shadow-card: 0 2px 8px rgba(20, 43, 61, .04);
}

body, input, select, textarea, button { font-family: var(--font-family-base); }
.typePageTitle { font-size: var(--font-size-page-title); font-weight: var(--font-weight-bold); line-height: var(--line-height-heading); }
.typeSectionTitle, .typeCardTitle { font-size: var(--font-size-section-title); font-weight: var(--font-weight-bold); line-height: var(--line-height-heading); }
.typeBody { font-size: var(--font-size-body); font-weight: var(--font-weight-regular); line-height: var(--line-height-body); }
.typeBodyMuted { font-size: var(--font-size-body); color: var(--color-text-muted); line-height: var(--line-height-body); }
.typeLabel { font-size: var(--font-size-label); font-weight: var(--font-weight-semibold); }
.typeTableHeader { font-size: var(--font-size-small); font-weight: var(--font-weight-bold); letter-spacing: .04em; text-transform: uppercase; }
.typeTableCell, .typeButton { font-size: var(--font-size-body); }
.typeButton { font-weight: var(--font-weight-semibold); }
.typeSmall { font-size: var(--font-size-small); }
.typeHelper, .typeValidation { font-size: var(--font-size-helper); }
.typeValidation { color: var(--color-danger); font-weight: var(--font-weight-semibold); }

select { width: 100%; border: 1px solid #cfd8e0; border-radius: var(--radius-sm); padding: 10px 11px; font: inherit; background: var(--color-surface); color: var(--color-text); }
input:focus-visible, select:focus-visible, textarea:focus-visible, .btn:focus-visible, a:focus-visible, summary:focus-visible { outline: 3px solid rgba(23, 105, 224, .22); outline-offset: 2px; }
input:disabled, select:disabled, textarea:disabled { background: #f0f3f5; color: #7a8792; cursor: not-allowed; }
.fieldError input, .fieldError select, .fieldError textarea, input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--color-danger); }
.fieldErrorText { color: var(--color-danger); font-size: 12px; font-weight: 600; }
.appSidebar { padding: var(--space-lg) var(--space-md); overflow-x: hidden; }
.sidebarHeader { min-width: 0; padding: 2px var(--space-xs) var(--space-lg); border-bottom: 1px solid rgba(255, 255, 255, .12); }
.sidebarBrand, .sidebarRole, .sidebarVersion { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sidebarBrand { font-size: 24px; font-weight: 800; letter-spacing: -.5px; }
.sidebarHeader .sidebarRole { margin-top: var(--space-xs); color: #c8d3dc; font-size: var(--font-size-helper); font-weight: var(--font-weight-medium); opacity: .82; }
.sidebarHeader .sidebarVersion { margin-top: 5px; color: #aab8c4; font-size: 10px; font-weight: var(--font-weight-regular); opacity: .64; }
.appSidebar .sidebarNav { display: grid; align-content: start; gap: 6px; min-width: 0; margin-top: var(--space-lg); }
.appSidebar .sidebarNav > a, .appSidebar .sidebarLogout { display: flex; align-items: center; min-width: 0; min-height: 44px; padding: var(--space-sm) 14px; border-radius: 10px; color: #c8d3dc; font-size: var(--font-size-label); font-weight: var(--font-weight-medium); line-height: 1.35; }
.appSidebar .sidebarNav > a:hover, .appSidebar .sidebarLogout:hover { background: rgba(255, 255, 255, .07); color: var(--color-surface); }
.appSidebar .sidebarNav > a.active { background: #244f73; color: var(--color-surface); font-weight: var(--font-weight-bold); }
.appSidebar .sidebarNav > a:focus-visible, .appSidebar .sidebarLogout:focus-visible { outline-color: rgba(104, 167, 255, .58); }
.sidebarContext { margin: var(--space-md) 0 var(--space-xs); padding: 12px 14px; border: 1px solid rgba(255, 255, 255, .08); border-radius: var(--radius-sm); background: rgba(255, 255, 255, .055); min-width: 0; }
.sidebarContext small, .sidebarContext b { display: block; }
.sidebarContext small { color: #aab8c4; font-size: 10px; line-height: 1.4; margin-bottom: 5px; }
.sidebarContext b { color: var(--color-surface); font-size: var(--font-size-label); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.companyAdminContext { margin-top: 0; }
.appSidebar .sidebarLogout { margin-top: auto; padding-top: var(--space-md); border-top: 1px solid rgba(255, 255, 255, .12); border-radius: 0; color: #aab8c4; }
.appSidebar .sidebarLogout:hover { border-radius: 10px; }
@media(max-width:900px) {
  .appSidebar { align-items: center; gap: var(--space-md); padding: var(--space-md); overflow: visible; }
  .sidebarHeader { flex: 0 1 auto; padding: 0 var(--space-md) 0 0; border-right: 1px solid rgba(255, 255, 255, .12); border-bottom: 0; }
  .sidebarBrand { font-size: 20px; }
  .appSidebar .sidebarNav { display: flex; align-items: center; gap: 6px; min-width: 0; margin: 0; }
  .appSidebar .sidebarNav > a, .appSidebar .sidebarLogout { min-height: 42px; }
  .sidebarContext { max-width: 190px; margin: 0; }
  .appSidebar .sidebarLogout { margin-left: auto; padding-top: var(--space-sm); border-top: 0; border-left: 1px solid rgba(255, 255, 255, .12); border-radius: 0; }
}
@media(max-width:700px) {
  .appSidebar { align-items: stretch; flex-direction: column; }
  .sidebarHeader { padding: 0 0 var(--space-md); border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .12); }
  .appSidebar .sidebarNav { display: grid; margin: 0; }
  .sidebarContext { max-width: none; }
  .appSidebar .sidebarLogout { margin: 0; padding: var(--space-md) 14px var(--space-sm); border-top: 1px solid rgba(255, 255, 255, .12); border-left: 0; }
}
.productCard{position:relative}.productCard>a{display:block;padding-right:34px}.productDelete{position:absolute;top:12px;right:12px;z-index:1}
