:root {
  --pm-bg: radial-gradient(1200px 600px at 15% -10%, rgba(220, 38, 38, 0.10), transparent 58%),
    radial-gradient(1000px 520px at 90% 0%, rgba(214, 195, 162, 0.22), transparent 42%),
    #f4f7fb;
  --pm-card: rgba(255, 255, 255, 0.92);
  --pm-ink: #0f172a;
  --pm-muted: #64748b;
  --pm-line: #dbe4ee;
  --pm-primary: #ef4444;
  --pm-primary-2: #dc2626;
  --pm-radius: 16px;
  --pm-shadow: 0 22px 60px rgba(15, 23, 42, 0.1);
}

html, body {
  font-family: Inter, "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: var(--pm-ink);
}

body {
  background: var(--pm-bg);
}

.card, .panel, .box, .modal-card {
  border-color: var(--pm-line) !important;
  border-radius: var(--pm-radius) !important;
  box-shadow: var(--pm-shadow) !important;
}

input, select, textarea {
  border-radius: 12px !important;
  border: 1px solid #cbd5e1 !important;
}

input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--pm-primary) !important;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.16) !important;
}

/*
 * Tlačidlá — jeden štýl pre celú aplikáciu.
 *
 * Predtým tu bolo pravidlo, ktoré cez !important prepisovalo KAŽDÉ tlačidlo
 * červeným gradientom so zdvihom pri hoveri. Tým prebilo aj komponenty, ktoré
 * vlastný (novší) štýl majú — chipy .ds-tab, Tailwind tlačidlá s rounded-lg,
 * akčné tlačidlá v analytike — a celé UI vyzeralo staro a jednolito červeno.
 *
 * Teraz sa štýluje len tlačidlo, ktoré vlastný vzhľad NEMÁ, a to plochou
 * primárnou červenou (bez gradientu, bez zdvihu).
 */
button:not([data-sidebar-nav]):not([class*='wms-btn']):not(.wms-inv-product-link):not(.im-btn-ghost):not(.secondary):not(.im-btn-secondary):not(.plain-btn):not(.wms-orders-extra-x):not(.wms-multipick-btn):not(.ds-tab):not(.admin-tab-btn):not(.module-btn):not(.rev-report-action-btn):not(.loyalty-sb-nav-btn):not(.loyalty-sb-subnav-btn):not(.loyalty-sb-foot-btn):not(.wms-pg-btn):not(.expiry-global-banner-btn):not(.expiry-global-banner-close):not(.wms-expiry-view-btn):not(.pp-ret-view-btn):not(.wms-rcv-obj-badge):not(.wms-retlist-alarm):not(.minv-kbd-done):not(.wms-expiry-tab):not(.wms-rcv-queue-tab):not(.rev-prod-search-item):not(.rev-prod-search-all):not(.rev-cat-search-item):not([class*='rounded-']):not(.im-act-primary):not(.im-act-secondary):not([class*='bg-']) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0.5rem 0.875rem;
  border: 1px solid transparent;
  border-radius: 10px;
  background: var(--pm-primary-2);
  color: #ffffff;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.25rem;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

button:not([data-sidebar-nav]):not([class*='wms-btn']):not(.wms-inv-product-link):not(.im-btn-ghost):not(.secondary):not(.im-btn-secondary):not(.plain-btn):not(.wms-orders-extra-x):not(.wms-multipick-btn):not(.ds-tab):not(.admin-tab-btn):not(.module-btn):not(.rev-report-action-btn):not(.loyalty-sb-nav-btn):not(.loyalty-sb-subnav-btn):not(.loyalty-sb-foot-btn):not(.wms-pg-btn):not(.expiry-global-banner-btn):not(.expiry-global-banner-close):not(.wms-expiry-view-btn):not(.pp-ret-view-btn):not(.wms-rcv-obj-badge):not(.wms-retlist-alarm):not(.minv-kbd-done):not(.wms-expiry-tab):not(.wms-rcv-queue-tab):not(.rev-prod-search-item):not(.rev-prod-search-all):not(.rev-cat-search-item):not([class*='rounded-']):not(.im-act-primary):not(.im-act-secondary):not([class*='bg-']):hover {
  background: #b91c1c;
}

button:not([data-sidebar-nav]):not([class*='wms-btn']):not(.plain-btn):not(.wms-orders-extra-x):not(.wms-multipick-btn):focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.28);
}

button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

/* sekundárne — svetlé s rámom, nie béžový gradient */
button.secondary:not([data-sidebar-nav]),
button.im-btn-secondary:not([data-sidebar-nav]) {
  background: #ffffff;
  color: #374151;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 0.5rem 0.875rem;
  font-size: 0.8125rem;
  font-weight: 500;
}

button.secondary:not([data-sidebar-nav]):hover,
button.im-btn-secondary:not([data-sidebar-nav]):hover {
  background: #f9fafb;
  border-color: #d1d5db;
}

table th {
  background: #f8fafc !important;
}

.muted, .k {
  color: var(--pm-muted) !important;
}
