:root {
  --st7-ink: #111216;
  --st7-muted: #666a73;
  --st7-line: #e5e7ec;
  --st7-paper: #f7f7f4;
  --st7-white: #ffffff;
  --st7-red: #b3192a;
  --st7-blue: #153e8f;
  --st7-deep: #071844;
  --st7-radius: 8px;
  --st7-shadow: 0 24px 80px rgba(17, 18, 22, 0.14);
  --st7-pointer-x: 50vw;
  --st7-pointer-y: 42vh;
}

body {
  position: relative;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}

body::before,
body::after {
  pointer-events: none;
  content: "";
  position: fixed;
  inset: 0;
  z-index: 1;
  opacity: 0;
  transition: opacity 420ms ease;
}

body::before {
  background:
    radial-gradient(circle at var(--st7-pointer-x) var(--st7-pointer-y), rgba(255, 255, 255, 0.34), transparent 0 118px),
    radial-gradient(circle at var(--st7-pointer-x) var(--st7-pointer-y), rgba(36, 86, 214, 0.24), transparent 0 260px);
  mix-blend-mode: screen;
}

body::after {
  background:
    linear-gradient(120deg, transparent 0 24%, rgba(255, 255, 255, 0.1) 30%, transparent 38%),
    radial-gradient(circle at 18% 20%, rgba(179, 25, 42, 0.1), transparent 28%),
    radial-gradient(circle at 82% 76%, rgba(21, 62, 143, 0.12), transparent 30%);
  mix-blend-mode: overlay;
  animation: st7-ambient-shift 12s ease-in-out infinite alternate;
}

.st7-motion-ready body::before,
.st7-motion-ready body::after {
  opacity: 1;
}

body > * {
  position: relative;
  z-index: 2;
}

body::selection {
  color: var(--st7-white);
  background: var(--st7-red);
}

.home-nav,
.catalog-header,
.admin-header,
.stock-header,
.accounting-header,
.client-header {
  background: rgba(7, 20, 58, 0.76) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
  box-shadow: 0 16px 44px rgba(7, 20, 58, 0.18);
  backdrop-filter: blur(22px) saturate(150%);
}

.catalog-header,
.admin-header,
.stock-header,
.accounting-header,
.client-header {
  color: var(--st7-white);
}

.catalog-header nav,
.admin-header nav,
.stock-header nav,
.accounting-header nav,
.client-header nav,
.home-nav {
  color: rgba(255, 255, 255, 0.78) !important;
}

.home-nav a,
.catalog-header nav a,
.admin-header nav a,
.stock-header nav a,
.accounting-header nav a,
.client-header nav a {
  position: relative;
  opacity: 1;
  letter-spacing: 0;
  transition:
    color 240ms ease,
    transform 640ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 240ms ease;
}

.home-nav a::after,
.catalog-header nav a::after,
.admin-header nav a::after,
.stock-header nav a::after,
.accounting-header nav a::after,
.client-header nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -9px;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 540ms cubic-bezier(0.16, 1, 0.3, 1);
}

.home-nav a:hover,
.catalog-header nav a:hover,
.catalog-header nav [aria-current="page"],
.admin-header nav a:hover,
.stock-header nav a:hover,
.stock-header nav [aria-current="page"],
.accounting-header nav a:hover,
.client-header nav a:hover {
  color: var(--st7-white) !important;
  transform: translateY(-1px);
}

.home-nav a:hover::after,
.catalog-header nav a:hover::after,
.catalog-header nav [aria-current="page"]::after,
.admin-header nav a:hover::after,
.stock-header nav a:hover::after,
.stock-header nav [aria-current="page"]::after,
.accounting-header nav a:hover::after,
.client-header nav a:hover::after {
  transform: scaleX(1);
}

.brand img {
  filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.24));
  transition: transform 720ms cubic-bezier(0.16, 1, 0.3, 1), filter 240ms ease;
}

.brand:hover img {
  transform: translateY(-2px) scale(1.035) rotate(-1deg);
  filter: drop-shadow(0 14px 24px rgba(0, 0, 0, 0.28));
}

.order-pill,
.admin-header button,
.import-button,
.save-button,
.variant-heading button,
.list-heading button,
.danger-button,
.brand-links a,
.clear-filters,
.add-order,
.order-actions button,
.send-copy-notice button,
.reprint-order {
  border-radius: 999px !important;
  transition:
    background 220ms ease,
    color 220ms ease,
    transform 640ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 220ms ease !important;
}

.order-pill:hover,
.admin-header button:hover,
.import-button:hover,
.save-button:hover,
.variant-heading button:hover,
.list-heading button:hover,
.danger-button:hover,
.brand-links a:hover,
.clear-filters:hover,
.add-order:hover,
.order-actions button:hover,
.send-copy-notice button:hover,
.reprint-order:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(179, 25, 42, 0.18);
}

.catalog-hero,
.admin-layout,
.style-card,
.stock-card,
.login-card,
.access-card,
.accounting-layout {
  animation: st7-rise 780ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.style-card,
.stock-card,
.variant-card,
.summary-card,
.movement-card,
.login-card,
.access-card {
  transition:
    transform 680ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 260ms ease,
    border-color 260ms ease;
}

.style-card:hover,
.stock-card:hover,
.variant-card:hover,
.summary-card:hover,
.movement-card:hover {
  transform: translateY(-5px);
}

.style-card:hover img,
.stock-card:hover img,
.variant-card:hover img {
  transform: scale(1.035);
}

.style-card img,
.stock-card img,
.variant-card img {
  transition: transform 780ms cubic-bezier(0.16, 1, 0.3, 1), filter 260ms ease;
}

@keyframes st7-rise {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes st7-ambient-shift {
  from {
    transform: translate3d(-1.5%, -1%, 0) scale(1);
  }
  to {
    transform: translate3d(1.5%, 1%, 0) scale(1.04);
  }
}

@media (max-width: 720px) {
  .status-toast {
    top: calc(env(safe-area-inset-top) + 112px) !important;
    right: 12px !important;
    left: 12px !important;
    max-width: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }

  body::before,
  body::after {
    display: none !important;
  }
}
