:root {
  color-scheme: dark;
  --bg: #07080b;
  --surface: #101218;
  --surface-2: #151822;
  --surface-3: #1b1f2b;
  --line: rgba(255, 255, 255, 0.1);
  --line-strong: rgba(255, 255, 255, 0.18);
  --text: #f7f8fb;
  --muted: #969dac;
  --blue: #5a82ff;
  --violet: #9c63ff;
  --pink: #ff4fbd;
  --cyan: #23b8ff;
  --gold: #c5a15c;
  --cream: #f1eee6;
  --green: #55d6a9;
  --danger: #ff6b78;
  --radius: 18px;
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  min-width: 320px;
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 15% -10%, rgba(90, 130, 255, 0.1), transparent 30%),
    var(--bg);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

button, input { font: inherit; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }

:where(button, a, input, textarea, select, summary):focus-visible {
  outline: 2px solid rgba(92, 190, 255, 0.95);
  outline-offset: 3px;
}

[hidden] { display: none !important; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.access-screen {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 100svh;
  place-items: center;
  overflow: hidden;
  padding: 28px;
  background:
    linear-gradient(135deg, rgba(8, 10, 16, 0.7), rgba(8, 10, 16, 0.9)),
    radial-gradient(ellipse 50% 62% at 4% 16%, rgba(0, 196, 255, 0.2), transparent 72%),
    radial-gradient(ellipse 52% 58% at 98% 82%, rgba(255, 66, 189, 0.19), transparent 74%),
    radial-gradient(ellipse 44% 46% at 83% 7%, rgba(138, 90, 255, 0.16), transparent 72%),
    url("assets/images/v4-lcd.jpg") center/cover no-repeat;
}

.access-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.78;
  pointer-events: none;
}

.access-video-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7, 9, 14, 0.32), rgba(7, 9, 14, 0.7) 50%, rgba(7, 9, 14, 0.34)),
    linear-gradient(180deg, rgba(5, 7, 12, 0.2), rgba(5, 7, 12, 0.58)),
    radial-gradient(circle at 50% 45%, transparent 0 20%, rgba(4, 6, 11, 0.28) 72%);
  pointer-events: none;
}

.access-glow {
  position: absolute;
  z-index: 2;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  filter: blur(90px);
  pointer-events: none;
}

.access-glow-one { top: -190px; right: -100px; background: rgba(78, 122, 255, 0.36); }
.access-glow-two { bottom: -210px; left: -120px; background: rgba(255, 67, 189, 0.27); }

.access-card {
  position: relative;
  z-index: 3;
  width: min(620px, 100%);
  padding: clamp(28px, 5vw, 52px);
  border: 1px solid var(--line-strong);
  border-radius: 28px;
  background: rgba(10, 12, 18, 0.94);
  box-shadow: var(--shadow);
}

@media (prefers-reduced-motion: reduce) {
  .access-video { display: none; }
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.brand-mark {
  position: relative;
  display: grid;
  width: 44px;
  height: 44px;
  isolation: isolate;
  overflow: hidden;
  place-items: center;
  border: 1px solid rgba(197, 161, 92, 0.45);
  border-radius: 13px;
  color: var(--cream);
  background: rgba(9, 11, 15, 0.96);
  box-shadow: inset 0 0 24px rgba(255, 255, 255, 0.06), 0 9px 24px rgba(0, 0, 0, 0.32);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.brand-mark::before {
  position: absolute;
  z-index: -2;
  inset: -70%;
  background: conic-gradient(from 30deg, var(--pink), var(--violet), var(--cyan), var(--gold), var(--pink));
  content: "";
  animation: brand-orbit 7s linear infinite;
}

.brand-mark::after {
  position: absolute;
  z-index: -1;
  inset: 2px;
  border-radius: 10px;
  background: radial-gradient(circle at 30% 20%, #20232c, #090a0e 72%);
  content: "";
}

.brand-leopard-mark { overflow: hidden; }
.brand-leopard-mark img { position: relative; z-index: 1; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; animation: leopard-logo-shimmer 9s ease-in-out infinite alternate; }

.brand > span:last-child { display: grid; gap: 2px; }
.brand b { font-size: 15px; letter-spacing: 0.02em; }
.brand-wordmark { display: flex; gap: 0.28em; }
.brand-wordmark-accent {
  color: transparent;
  background: linear-gradient(100deg, var(--gold) 5%, #fff0b8 30%, var(--pink) 52%, var(--violet) 70%, var(--cyan) 94%);
  background-size: 260% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  animation: brand-shimmer 6s ease-in-out infinite;
}
.brand small { color: var(--muted); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }

.access-copy { margin: 42px 0 28px; }
.eyebrow { color: #aebfff; font-size: 11px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; }

h1, h2, p { margin: 0; }

h1 {
  margin-top: 10px;
  font-size: clamp(38px, 7vw, 68px);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

h2 { font-size: 22px; letter-spacing: -0.025em; }

.access-copy p {
  max-width: 450px;
  margin-top: 18px;
  color: #b7bdc9;
  font-size: 16px;
  line-height: 1.65;
}

.access-form label {
  display: block;
  color: #cbd0d9;
  font-size: 12px;
  font-weight: 700;
}

.access-form label > span { display: block; margin-bottom: 9px; }
.access-fields { display: grid; gap: 14px; margin-bottom: 16px; }
.access-fields input { padding: 0 15px; }
.company-lookup-row { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; margin-bottom: 6px !important; }
.company-lookup-row .button { min-height: 50px; white-space: nowrap; }
.company-lookup-message { display: block; min-height: 17px; color: var(--muted); font-size: 10px; font-weight: 500; line-height: 1.45; }
.company-lookup-message.is-success { color: var(--green); }
.company-lookup-message.is-warning { color: #e1ba73; }
.company-requisites { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.company-requisites[hidden] { display: none; }
.company-lookup-result { grid-column: 1 / -1; display: grid; gap: 4px; padding: 12px 13px; border: 1px solid rgba(85, 214, 169, 0.24); border-radius: 11px; background: rgba(85, 214, 169, 0.055); }
.company-lookup-result strong { color: var(--green); font-size: 12px; }
.company-lookup-result strong.is-warning { color: #e1ba73; }
.company-lookup-result span, .company-lookup-result p, .company-lookup-result small { color: var(--muted); font-size: 10px; line-height: 1.45; }
.access-code-form { margin-top: 20px; }
.access-mode-switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5px;
  margin-bottom: 22px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.035);
}

.access-mode-button {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  cursor: pointer;
  color: var(--muted);
  background: transparent;
  font-size: 13px;
  font-weight: 800;
  transition: color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.access-mode-button.is-active {
  color: var(--text);
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 5px 18px rgba(0, 0, 0, 0.18);
}

.permanent-login-button { margin-top: 16px; }
#permanentAccessCode { padding: 0 15px; letter-spacing: 0.08em; text-transform: uppercase; }
.minimum-order-access { display: grid; gap: 4px; margin: -6px 0 20px; padding: 13px 15px; border: 1px solid rgba(255, 190, 92, 0.26); border-radius: 12px; background: rgba(255, 190, 92, 0.07); }
.minimum-order-access span { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: 0.08em; }
.minimum-order-access strong { color: #ffd391; font-size: 13px; }
.code-sent-message { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; padding: 12px 14px; border: 1px solid rgba(85, 214, 169, 0.28); border-radius: 12px; background: rgba(85, 214, 169, 0.07); font-size: 12px; }
.code-sent-message span { color: var(--muted); }
.code-sent-message strong { color: var(--green); }
.access-approval-pending { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px 16px; align-items: start; margin-top: 20px; padding: 20px; border: 1px solid rgba(85, 214, 169, .34); border-radius: 16px; background: linear-gradient(135deg, rgba(85, 214, 169, .12), rgba(106, 87, 255, .08)); }
.access-approval-pending[hidden] { display: none; }
.access-approval-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #07130f; background: var(--green); font-size: 22px; font-weight: 900; box-shadow: 0 0 24px rgba(85, 214, 169, .3); }
.access-approval-pending h2 { margin: 4px 0 6px; color: var(--cream); font-size: 20px; }
.access-approval-pending p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.access-approval-pending .button { grid-column: 1 / -1; }
.access-back-button { margin-top: 13px; }

.access-input-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }

input {
  width: 100%;
  min-height: 50px;
  border: 1px solid var(--line-strong);
  border-radius: 12px;
  outline: none;
  color: var(--text);
  background: rgba(255, 255, 255, 0.055);
  transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

input:focus {
  border-color: rgba(90, 130, 255, 0.85);
  background: rgba(255, 255, 255, 0.075);
  box-shadow: 0 0 0 4px rgba(90, 130, 255, 0.14);
}

.access-input-row input { padding: 0 15px; letter-spacing: 0.12em; text-align: center; }

.button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 800;
  transition: transform 160ms ease, border-color 160ms ease, opacity 160ms ease, background 160ms ease;
}

.button:hover:not(:disabled) { transform: translateY(-1px); }
.button:disabled { cursor: not-allowed; opacity: 0.42; }

.button-primary {
  color: #fff;
  background: linear-gradient(120deg, #5578fa, #8a5bf4 55%, #d349ac);
  box-shadow: 0 10px 30px rgba(103, 90, 240, 0.24);
}

.button-secondary { border-color: var(--line); background: var(--surface-2); }
.button-secondary:hover { border-color: var(--line-strong); background: var(--surface-3); }
.button-wide { width: 100%; }

.form-error { min-height: 20px; margin-top: 8px; color: var(--danger); font-size: 12px; }

.demo-hint {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 20px;
  padding: 12px 14px;
  border: 1px dashed rgba(90, 130, 255, 0.35);
  border-radius: 12px;
  color: var(--muted);
  background: rgba(90, 130, 255, 0.06);
  font-size: 12px;
}

.demo-hint button, .text-button {
  padding: 0;
  border: 0;
  color: #b9c7ff;
  background: none;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}

.access-note { margin-top: 24px; color: #747b89; font-size: 11px; text-align: center; }

.access-support-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  margin-top: 20px;
  padding: 13px;
  border: 1px solid rgba(90, 130, 255, 0.24);
  border-radius: 14px;
  background: linear-gradient(110deg, rgba(90, 130, 255, 0.08), rgba(255, 79, 189, 0.045));
}

.access-support-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid rgba(90, 130, 255, 0.28);
  border-radius: 11px;
  background: rgba(90, 130, 255, 0.11);
  font-size: 17px;
}

.access-support-copy { display: grid; min-width: 0; gap: 3px; }
.access-support-copy strong { color: var(--cream); font-size: 12px; }
.access-support-copy small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.access-support-card .button { min-height: 40px; padding: 0 14px; white-space: nowrap; font-size: 11px; }

.app-shell {
  position: relative;
  min-height: 100svh;
  isolation: isolate;
  background: #05070d;
}

.app-shell > main,
.app-shell > footer { position: relative; z-index: 1; }
.product-ambient {
  position: fixed;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.product-ambient::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    radial-gradient(ellipse at 18% 22%, rgba(28, 189, 255, 0.1), transparent 38%),
    radial-gradient(ellipse at 82% 76%, rgba(255, 48, 182, 0.09), transparent 40%),
    linear-gradient(100deg, rgba(5, 7, 13, 0.88), rgba(5, 7, 13, 0.76) 48%, rgba(5, 7, 13, 0.9));
  content: "";
}
.product-ambient img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transition: opacity 2.2s ease;
}
.product-ambient img.is-visible { opacity: 0.46; }
.product-ambient img:nth-child(1) { object-position: 50% 50%; }
.product-ambient img:nth-child(2) { object-position: 50% 46%; }
.product-ambient img:nth-child(3) { object-position: 50% 54%; }

.app-shell::before {
  position: fixed;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 62% 42% at 7% 5%, rgba(0, 195, 255, 0.25), transparent 68%),
    radial-gradient(ellipse 54% 44% at 96% 9%, rgba(255, 52, 183, 0.21), transparent 70%),
    radial-gradient(ellipse 58% 48% at 72% 74%, rgba(130, 82, 255, 0.19), transparent 72%),
    radial-gradient(ellipse 46% 36% at 8% 91%, rgba(59, 235, 184, 0.13), transparent 72%),
    linear-gradient(180deg, #070a12 0%, #090a15 46%, #06070e 100%);
  content: "";
}

.app-shell::after {
  position: fixed;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.16;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, black, transparent 72%);
  content: "";
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgba(197, 161, 92, 0.16);
  background: linear-gradient(90deg, rgba(8, 9, 11, 0.98), rgba(12, 13, 18, 0.97), rgba(8, 9, 11, 0.98));
}

.header-inner, main, footer {
  width: min(1480px, calc(100% - 40px));
  margin: 0 auto;
}

.header-inner {
  display: grid;
  min-height: 76px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 34px;
}

.cabinet-header-inner { grid-template-columns: 1fr auto; gap: 24px; }
.cabinet-header-inner .company-menu { justify-self: end; }

.header-nav { display: flex; align-items: center; gap: 6px; }
.header-nav a { padding: 9px 12px; border-radius: 10px; color: var(--muted); font-size: 13px; font-weight: 700; }
.header-nav a:hover, .header-nav a.active { color: var(--text); background: rgba(255, 255, 255, 0.055); }

.company-menu { display: flex; align-items: center; gap: 14px; }
.company-name { max-width: 230px; overflow: hidden; font-size: 12px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }

main { padding: 54px 0 70px; }

.catalog-hero {
  position: relative;
  display: flex;
  min-height: 230px;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  overflow: hidden;
  margin-bottom: 18px;
  padding: clamp(28px, 4vw, 46px);
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 26px;
  background:
    linear-gradient(115deg, rgba(19, 21, 27, 0.96), rgba(14, 16, 22, 0.78)),
    radial-gradient(circle at 80% 15%, rgba(35, 184, 255, 0.2), transparent 34%);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.35), inset 0 1px rgba(255, 255, 255, 0.05);
}

.catalog-hero::before {
  position: absolute;
  width: 360px;
  height: 360px;
  right: -135px;
  bottom: -230px;
  border-radius: 50%;
  background: conic-gradient(from 40deg, rgba(255, 98, 219, 0.26), rgba(141, 99, 255, 0.18), rgba(35, 184, 255, 0.24), rgba(197, 161, 92, 0.2), rgba(255, 98, 219, 0.26));
  filter: blur(28px);
  content: "";
  animation: brand-orbit 16s linear infinite;
}

.catalog-hero-copy, .catalog-hero-side { position: relative; z-index: 1; }
.catalog-hero-copy { max-width: 720px; }
.catalog-hero h1 { color: var(--cream); font-size: clamp(38px, 5vw, 64px); }
.catalog-hero h1 .hero-title-accent { color: var(--gold); }
.catalog-hero p { max-width: 650px; margin-top: 16px; color: #aeb4bd; line-height: 1.65; }

.catalog-hero-side { display: grid; max-width: 440px; justify-items: end; gap: 24px; }
.hero-brand-lockup { display: flex; align-items: center; gap: 13px; }
.hero-brand-emblem {
  position: relative;
  display: grid;
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  overflow: hidden;
  place-items: center;
  border-radius: 17px;
  isolation: isolate;
}

.hero-brand-emblem img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: screen;
  filter: saturate(1.12) brightness(1.08) drop-shadow(0 9px 20px rgba(35, 184, 255, 0.14));
  animation: emblem-spectrum 9s ease-in-out infinite;
}

.hero-brand-emblem::after {
  position: absolute;
  width: 130%;
  height: 18px;
  transform: translateX(-85px) rotate(-38deg);
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.68), transparent);
  mix-blend-mode: screen;
  content: "";
  animation: emblem-sheen 5.8s ease-in-out infinite;
}

.hero-brand-words { display: grid; min-width: 160px; padding: 1px 0 2px; }
.hero-brand-words b {
  color: transparent;
  background: linear-gradient(100deg, var(--cream) 0%, var(--cream) 32%, var(--cyan) 45%, var(--pink) 54%, var(--cream) 69%, var(--cream) 100%);
  background-size: 280% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  font-size: clamp(23px, 2vw, 25px);
  font-weight: 950;
  line-height: 1.22;
  letter-spacing: -0.045em;
  animation: brand-shimmer 6s ease-in-out infinite;
}
.hero-brand-words b:last-child {
  background-image: linear-gradient(100deg, var(--gold) 0%, #ffe9a9 30%, var(--pink) 45%, var(--violet) 55%, var(--cyan) 64%, var(--gold) 78%, var(--gold) 100%);
}

.hero-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.hero-badges span, .demo-label {
  padding: 8px 11px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: #bdc3cf;
  background: rgba(255, 255, 255, 0.035);
  font-size: 11px;
  font-weight: 700;
}

.order-terms {
  margin-bottom: 14px;
  padding: 14px 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(17, 19, 25, 0.97), rgba(11, 13, 18, 0.95));
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.25), inset 0 1px rgba(255, 255, 255, 0.03);
}

.order-terms-heading { margin-bottom: 10px; }
.order-terms-heading h2 { margin-top: 3px; font-size: 16px; }
.order-terms-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.order-term-card {
  display: grid;
  min-height: 78px;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid rgba(255, 255, 255, 0.085);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.017));
}

.order-term-icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(35, 184, 255, 0.24);
  border-radius: 10px;
  color: var(--cyan);
  background: rgba(35, 184, 255, 0.07);
}

.order-term-card:nth-child(2) .order-term-icon { border-color: rgba(197, 161, 92, 0.28); color: #dfbd78; background: rgba(197, 161, 92, 0.075); }
.order-term-card:nth-child(3) .order-term-icon { border-color: rgba(85, 214, 169, 0.27); color: var(--green); background: rgba(85, 214, 169, 0.075); }
.order-term-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.order-term-card h3 { margin: 0 0 4px; font-size: 12px; }
.order-term-card p { color: #9fa6b2; font-size: 10px; line-height: 1.4; }

.catalog-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr);
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(115deg, rgba(18, 20, 26, 0.97), rgba(11, 13, 18, 0.95));
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.025);
}

.search-field { position: relative; display: block; }
.search-field svg {
  position: absolute;
  top: 50%;
  left: 15px;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  fill: none;
  stroke: var(--muted);
  stroke-linecap: round;
  stroke-width: 1.8;
}
.search-field input { padding: 0 15px 0 44px; }

.filter-chips { display: flex; gap: 6px; }
.filter-chip {
  min-height: 40px;
  padding: 0 13px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--muted);
  background: transparent;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}
.filter-chip:hover, .filter-chip.active { border-color: var(--line); color: var(--text); background: var(--surface-3); }
.demo-control { min-height: 40px; font-size: 12px; }

.content-grid { display: grid; grid-template-columns: minmax(0, 1fr) clamp(390px, 28vw, 430px); gap: 22px; align-items: start; }
.products-panel, .order-panel {
  border: 1px solid rgba(255, 255, 255, 0.105);
  border-radius: var(--radius);
  background: linear-gradient(145deg, rgba(17, 19, 25, 0.98), rgba(12, 14, 19, 0.97));
  box-shadow: var(--shadow), inset 0 1px rgba(255, 255, 255, 0.03);
}
.products-panel { min-width: 0; overflow: hidden; }

.panel-heading, .order-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 20px 22px;
  border-bottom: 1px solid var(--line);
}
.panel-heading p { margin-top: 4px; color: var(--muted); font-size: 12px; }

.products-table-wrap { overflow-x: auto; }
.catalog-tree { display: grid; }
.catalog-group, .catalog-series { border-bottom: 1px solid var(--line); }
.catalog-group:last-child { border-bottom: 0; }
.catalog-group > summary, .catalog-series > summary { display: grid; align-items: center; cursor: pointer; list-style: none; user-select: none; }
.catalog-group > summary::-webkit-details-marker, .catalog-series > summary::-webkit-details-marker { display: none; }
.catalog-group > summary { grid-template-columns: 34px minmax(0, 1fr) auto; gap: 12px; padding: 18px 20px; background: rgba(255, 255, 255, 0.018); }
.catalog-group > summary:hover { background: linear-gradient(90deg, rgba(35, 184, 255, 0.045), rgba(197, 161, 92, 0.035)); }
.catalog-group > summary strong { font-size: 15px; }
.catalog-group > summary > span:last-child, .catalog-series > summary > span:last-child { color: var(--muted); font-size: 10px; }
.catalog-series-list { padding-left: 18px; border-top: 1px solid var(--line); background: rgba(0, 0, 0, 0.1); }
.catalog-series > summary { grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; padding: 14px 18px; }
.catalog-series > summary:hover { background: rgba(90, 130, 255, 0.045); }
.catalog-series > summary strong { font-size: 12px; }
.catalog-series > .products-table-wrap { border-top: 1px solid var(--line); }
.catalog-direct-products > .products-table-wrap { border-top: 1px solid var(--line); }
.tree-toggle { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid rgba(197, 161, 92, 0.27); border-radius: 8px; color: #e8d7ae; background: rgba(197, 161, 92, 0.065); font-size: 17px; font-weight: 600; }
.tree-toggle::before { content: "+"; }
details[open] > summary > .tree-toggle::before { content: "−"; }
.products-table { width: 100%; min-width: 890px; border-collapse: collapse; }
.products-table th, .products-table td { padding: 14px 16px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: middle; }
.products-table th { color: #757d8d; background: #0d0f14; font-size: 10px; font-weight: 900; letter-spacing: 0.1em; text-transform: uppercase; }
.products-table th:nth-child(3), .products-table td:nth-child(3),
.products-table th:nth-child(5), .products-table td:nth-child(5) { text-align: right; }
.products-table tr:last-child td { border-bottom: 0; }
.products-table tbody tr { transition: background 160ms ease; }
.products-table tbody tr:hover { background: rgba(255, 255, 255, 0.018); }
.product-title-link { display: inline-flex; align-items: center; gap: 6px; color: var(--cream); font-size: 13px; font-weight: 850; line-height: 1.35; transition: color 160ms ease; }
.product-title-link:hover { color: #7ccfff; }
.product-title-link-action { flex: 0 0 auto; padding: 2px 6px; border: 1px solid rgba(53, 188, 255, 0.28); border-radius: 999px; color: #76d2ff; background: rgba(35, 184, 255, 0.08); font-size: 9px; font-weight: 800; white-space: nowrap; }
.product-title-link:hover .product-title-link-action { border-color: rgba(83, 216, 255, 0.65); color: #c7f0ff; }
.site-product-description { display: -webkit-box; max-width: 600px; overflow: hidden; margin-top: 4px; color: #9ca6b8; font-size: 11px; line-height: 1.48; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.model-page-body { min-height: 100svh; margin: 0; color: var(--text); isolation: isolate; background: #070a12; font-family: Inter, "Segoe UI", Arial, sans-serif; }
.model-page-shell { position: relative; z-index: 1; width: min(1040px, calc(100% - 40px)); margin: 0 auto; padding: 34px 0 64px; }
.model-page-ambient { position: fixed; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; }
.model-page-ambient::after { position: absolute; inset: 0; background: linear-gradient(105deg, rgba(7, 10, 18, 0.78), rgba(7, 10, 18, 0.58) 54%, rgba(7, 10, 18, 0.82)), radial-gradient(ellipse at 88% 13%, rgba(111, 55, 255, 0.12), transparent 42%), radial-gradient(ellipse at 11% 86%, rgba(31, 208, 255, 0.1), transparent 40%); content: ""; }
.model-page-ambient img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: 0; filter: saturate(1.25) contrast(1.06) brightness(0.82); transition: opacity 1.8s ease; }
.model-page-ambient img.is-visible { opacity: 0.72; }
.model-page-ambient img:nth-child(1) { object-position: 50% 50%; }
.model-page-ambient img:nth-child(2) { object-position: 50% 45%; }
.model-page-ambient img:nth-child(3) { object-position: 50% 55%; }
.model-page-back { display: inline-block; margin-bottom: 22px; color: #aeb8d0; font-size: 13px; font-weight: 750; }
.model-page-back:hover { color: var(--cyan); }
.model-page-card { display: grid; grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.1fr); gap: clamp(26px, 5vw, 64px); align-items: center; min-height: 540px; padding: clamp(26px, 5vw, 56px); border: 1px solid var(--line-strong); border-radius: 28px; background: linear-gradient(135deg, rgba(18, 22, 34, 0.96), rgba(10, 12, 19, 0.94)); box-shadow: var(--shadow); }
.model-page-gallery { min-width: 0; }
.model-page-image { display: grid; min-height: 350px; overflow: hidden; place-items: center; border: 1px solid rgba(126, 154, 255, 0.18); border-radius: 22px; background: radial-gradient(circle at 50% 35%, rgba(65, 201, 255, 0.15), transparent 58%), rgba(255, 255, 255, 0.02); }
.model-page-image img { width: min(100%, 430px); max-height: 430px; object-fit: contain; }
.model-page-media {
  object-fit: var(--model-image-fit, contain) !important;
  object-position: var(--model-image-position, 50% 50%) !important;
  transform: scale(var(--model-image-scale, 1));
  transform-origin: var(--model-image-position, 50% 50%);
}
.model-page-media--main { width: 100% !important; height: clamp(350px, 42vw, 430px); max-height: none !important; transition: transform 260ms ease, opacity 180ms ease; }
.model-page-media--thumbnail { width: 100%; height: 100%; }
.model-page-media--ambient { transform: scale(var(--model-image-scale, 1)); }
.model-page-thumbs { display: flex; gap: 9px; margin-top: 13px; overflow-x: auto; padding-bottom: 3px; }
.model-page-thumbs button { flex: 0 0 auto; display: grid; width: 62px; height: 62px; place-items: center; overflow: hidden; padding: 4px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255, 255, 255, 0.025); cursor: pointer; }
.model-page-thumbs button:hover, .model-page-thumbs button.is-active { border-color: rgba(74, 202, 255, 0.78); box-shadow: 0 0 0 2px rgba(74, 202, 255, 0.14); }
.model-page-thumbs img { width: 100%; height: 100%; object-fit: contain; }
.model-page-copy h1 { margin-top: 10px; color: var(--cream); font-size: clamp(34px, 5vw, 56px); line-height: 1.03; }
.model-page-copy p { max-width: 560px; margin: 19px 0 28px; color: #b1b9c8; font-size: 15px; line-height: 1.75; }
.model-page-highlights { display: flex; flex-wrap: wrap; gap: 8px; }
.model-page-highlights span { padding: 8px 10px; border: 1px solid rgba(102, 200, 255, 0.23); border-radius: 999px; color: #b6e4ff; background: rgba(49, 149, 255, 0.08); font-size: 11px; font-weight: 700; }
.model-page-specs { grid-column: 1 / -1; margin-top: 10px; padding-top: 34px; border-top: 1px solid var(--line); }
.model-page-specs h2 { margin-bottom: 18px; color: var(--cream); font-size: 22px; }
.model-page-spec-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.model-page-spec-grid article { display: grid; gap: 7px; min-height: 112px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.024); }
.model-page-spec-grid span { color: #8f9ab0; font-size: 10px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.model-page-spec-grid strong { color: var(--cream); font-size: 15px; line-height: 1.35; }
.model-page-spec-grid small { color: #98a3b7; font-size: 10px; line-height: 1.45; }
.model-page-error { grid-column: 1 / -1; }
.manufacturer-presentation-body { background: #05070c; }
.manufacturer-presentation-body .model-page-shell { width: 100%; padding: 0; }
.manufacturer-presentation { display: block; min-height: 100svh; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.manufacturer-slide { position: relative; display: grid; min-height: 100svh; overflow: hidden; align-items: end; isolation: isolate; background: #080a10; }
.manufacturer-slide-image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.08); filter: saturate(1.05) contrast(1.03); transition: transform 1.5s cubic-bezier(.2,.7,.2,1), filter 1.2s ease; }
.manufacturer-slide-overlay { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(3, 5, 10, 0.84) 0%, rgba(3, 5, 10, 0.45) 49%, rgba(3, 5, 10, 0.18) 100%), linear-gradient(0deg, rgba(3, 5, 10, 0.68), transparent 62%); }
.manufacturer-slide.light .manufacturer-slide-overlay { background: linear-gradient(90deg, rgba(12, 18, 27, 0.78) 0%, rgba(12, 18, 27, 0.36) 50%, rgba(12, 18, 27, 0.08) 100%), linear-gradient(0deg, rgba(10, 15, 23, 0.48), transparent 60%); }
.manufacturer-slide-copy { width: min(650px, calc(100% - 72px)); margin: 0 0 clamp(48px, 8vh, 100px) clamp(28px, 9vw, 150px); opacity: 1; transform: translateY(0); transition: transform .9s cubic-bezier(.2,.7,.2,1) .12s; }
.manufacturer-slide.is-visible .manufacturer-slide-copy { transform: translateY(-8px); }
.manufacturer-slide.is-visible .manufacturer-slide-image { transform: scale(1); filter: saturate(1.18) contrast(1.06); }
.manufacturer-slide-6 .manufacturer-slide-overlay { background: linear-gradient(90deg, rgba(3, 5, 10, 0.1), rgba(3, 5, 10, 0.52) 44%, rgba(3, 5, 10, 0.96) 100%), linear-gradient(0deg, rgba(3, 5, 10, 0.65), transparent 60%); }
.manufacturer-slide-6 .manufacturer-slide-copy { margin-left: auto; margin-right: clamp(28px, 9vw, 150px); }
.manufacturer-slide-number { display: grid; width: 44px; height: 44px; margin-bottom: 20px; place-items: center; border: 1px solid rgba(106, 213, 255, 0.56); border-radius: 50%; color: #b7efff; background: rgba(5, 11, 19, 0.32); font-size: 13px; font-weight: 900; }
.manufacturer-slide-copy h1 { max-width: 800px; margin: 12px 0 16px; color: #fff; font-size: clamp(42px, 7vw, 92px); line-height: .98; letter-spacing: -.045em; }
.manufacturer-slide-copy p { max-width: 610px; color: rgba(242, 246, 255, 0.88); font-size: clamp(15px, 1.5vw, 19px); line-height: 1.62; }
.manufacturer-scroll-hint { position: absolute; right: 34px; bottom: 30px; color: rgba(238, 245, 255, 0.68); font-size: 11px; font-weight: 750; letter-spacing: .04em; }
.manufacturer-specs-section { display: grid; grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr); gap: clamp(28px, 6vw, 90px); padding: clamp(54px, 10vw, 150px); background: radial-gradient(circle at 90% 0%, rgba(24, 203, 255, 0.18), transparent 35%), #080b13; }
.manufacturer-specs-section h2 { max-width: 360px; margin-top: 12px; color: var(--cream); font-size: clamp(34px, 4vw, 58px); line-height: 1; }
.manufacturer-specs-section .model-page-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 700px) { .product-ambient img, .model-page-ambient img { object-position: center; } .product-ambient img:nth-child(3), .model-page-ambient img:nth-child(3) { display: none; } .model-page-shell { width: min(100% - 28px, 1040px); padding-top: 20px; } .model-page-card { grid-template-columns: 1fr; min-height: 0; padding: 24px; } .model-page-image { min-height: 260px; } .model-page-spec-grid { grid-template-columns: 1fr; } .manufacturer-presentation-body .model-page-shell { width: 100%; padding: 0; } .manufacturer-slide-copy { width: min(100% - 36px, 650px); margin-left: 18px; margin-bottom: 70px; } .manufacturer-slide-copy h1 { font-size: clamp(38px, 13vw, 60px); } .manufacturer-slide-copy p { font-size: 14px; } .manufacturer-slide-image { object-position: 58% center; } .manufacturer-slide-overlay { background: linear-gradient(0deg, rgba(3, 5, 10, 0.89), rgba(3, 5, 10, 0.12) 76%); } .manufacturer-specs-section { grid-template-columns: 1fr; padding: 52px 20px; } .manufacturer-specs-section .model-page-spec-grid { grid-template-columns: 1fr; } .manufacturer-scroll-hint { right: 18px; bottom: 20px; font-size: 9px; } }

.product-cell { display: flex; min-width: 300px; align-items: center; gap: 14px; }
.product-image {
  width: 74px;
  height: 74px;
  flex: 0 0 74px;
  border: 1px solid var(--line);
  border-radius: 14px;
  object-fit: cover;
  background: #fff;
}
.product-info { display: grid; gap: 5px; }
.product-info strong { font-size: 14px; line-height: 1.35; }
.product-info span { color: #747c8c; font-size: 10px; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.specs { display: flex; max-width: 255px; flex-wrap: wrap; gap: 5px; }
.specs span { padding: 5px 7px; border-radius: 7px; color: #aeb4c0; background: rgba(255, 255, 255, 0.045); font-size: 10px; white-space: nowrap; }

.price-cell { min-width: 130px; }
.price-cell strong, .line-total { display: block; font-size: 16px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.retail-price { display: block; margin-bottom: 4px; color: #737b8b; font-size: 10px; white-space: nowrap; }
.retail-price s { text-decoration-color: #596171; text-decoration-thickness: 1px; }
.price-cell small { display: flex; align-items: center; justify-content: flex-end; gap: 6px; margin-top: 4px; color: var(--muted); font-size: 9px; }
.product-logistics { display: grid; justify-items: end; gap: 2px; margin-top: 7px; color: #929bac; font-size: 10px; line-height: 1.4; white-space: nowrap; }
.product-logistics > span:last-child { color: #aab1bd; }
.price-not-set { color: #e0a865; font-size: 13px !important; }
.quantity-unavailable { display: inline-block; max-width: 110px; color: var(--muted); font-size: 10px; line-height: 1.25; }
.saving-badge { padding: 3px 5px; border-radius: 5px; color: var(--green); background: rgba(85, 214, 169, 0.09); font-style: normal; font-weight: 900; }

.quantity-control { display: inline-grid; min-width: 142px; grid-template-columns: 44px 54px 44px; border: 1px solid var(--line); border-radius: 11px; overflow: hidden; background: rgba(255, 255, 255, 0.025); }
.quantity-control button { min-height: 44px; border: 0; color: #b7bdc9; background: transparent; cursor: pointer; font-size: 18px; }
.quantity-control button:hover { color: #fff; background: rgba(255, 255, 255, 0.06); }
.quantity-control input { min-height: 44px; padding: 0; border-width: 0 1px; border-radius: 0; border-color: var(--line); background: transparent; text-align: center; font-size: 13px; font-weight: 800; -moz-appearance: textfield; }
.quantity-control input::-webkit-outer-spin-button, .quantity-control input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }

.empty-state { display: grid; min-height: 260px; place-content: center; gap: 8px; color: var(--muted); text-align: center; }
.empty-state strong { color: var(--text); }

.order-panel { position: sticky; top: 146px; overflow: hidden; }
.order-panel .order-heading { padding: 22px 24px; }
.order-heading h2 { margin-top: 6px; font-size: 23px; }
.order-heading .eyebrow { font-size: 10px; }
.order-count { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(135deg, var(--blue), var(--pink)); box-shadow: 0 8px 22px rgba(124, 83, 255, .24); font-size: 14px; font-weight: 900; }
.order-draft-state { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: -2px 22px 0; padding: 10px 11px; border: 1px solid rgba(85, 214, 169, .28); border-radius: 10px; background: rgba(85, 214, 169, .055); }
.order-draft-state[hidden] { display: none; }
.order-draft-state > span { display: grid; gap: 2px; }
.order-draft-state strong { color: #bff7e4; font-size: 9px; }
.order-draft-state small { color: var(--muted); font-size: 8px; line-height: 1.35; }
.order-draft-state button { padding: 5px 7px; border: 0; color: #c7d0e2; background: transparent; cursor: pointer; font-size: 8px; font-weight: 800; }
.order-draft-state button:hover { color: #fff; }

.order-company { display: grid; gap: 5px; margin: 18px 22px 0; padding: 16px 17px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.028); }
.order-company span, .order-company small { color: var(--muted); font-size: 11px; }
.order-company strong { font-size: 15px; }

.order-lines { max-height: 340px; overflow-y: auto; padding: 15px 22px; }
.order-empty { display: grid; min-height: 150px; place-content: center; justify-items: center; gap: 12px; color: var(--muted); text-align: center; }
.order-empty-icon { display: grid; width: 38px; height: 38px; place-items: center; border: 1px dashed var(--line-strong); border-radius: 50%; font-size: 22px; }
.order-empty p { max-width: 220px; font-size: 12px; line-height: 1.5; }

.order-line { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px 14px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.order-line:last-child { border-bottom: 0; }
.order-line strong { display: -webkit-box; overflow: hidden; font-size: 13px; line-height: 1.4; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.order-line > span { padding-top: 1px; font-size: 13px; font-weight: 900; white-space: nowrap; }
.order-line small { color: var(--muted); font-size: 11px; line-height: 1.5; }
.order-line button { justify-self: end; padding: 0; border: 0; color: #8c94a3; background: none; cursor: pointer; font-size: 11px; }
.order-line button:hover { color: var(--danger); }

.order-totals { display: grid; gap: 11px; padding: 17px 22px; border-top: 1px solid var(--line); }
.order-totals > div { display: flex; justify-content: space-between; gap: 20px; color: var(--muted); font-size: 12px; }
.order-totals strong { color: #c8cdd7; font-variant-numeric: tabular-nums; }
.order-totals .order-logistics-total { color: #8d96a5; }
.order-totals .order-logistics-total strong { color: #aebfff; }
.order-totals .grand-total { align-items: end; padding-top: 10px; border-top: 1px solid var(--line); color: var(--text); font-size: 15px; }
.order-delivery-preview { display: grid; gap: 11px; margin: 0 22px 16px; padding: 16px; border: 1px solid rgba(197, 161, 92, 0.25); border-radius: 14px; background: linear-gradient(145deg, rgba(197, 161, 92, .07), rgba(79, 117, 255, .035)); }
.order-delivery-preview-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.order-delivery-preview-heading strong { color: var(--cream); font-size: 13px; }
.order-delivery-preview-heading span { color: #b9c6f5; font-size: 10px; font-weight: 700; white-space: nowrap; }
.order-delivery-preview > p { color: #9ba5b6; font-size: 11px; line-height: 1.5; }
.order-delivery-controls { display: grid; }
.order-delivery-controls input { min-width: 0; min-height: 44px; padding: 0 12px; font-size: 12px; }
.order-delivery-result { display: grid; gap: 7px; }
.order-delivery-result:empty { display: none; }
.order-delivery-result strong { color: #c3cefa; font-size: 13px; }
.order-delivery-result span { color: var(--muted); font-size: 11px; line-height: 1.45; }
.grand-total strong { color: var(--text); font-size: 27px; letter-spacing: -.02em; }
.order-panel > .button { width: calc(100% - 44px); min-height: 50px; margin: 0 22px; font-size: 15px; }
.minimum-order-status { margin: 0 22px 14px; padding: 11px 13px; border: 1px solid rgba(255, 190, 92, 0.22); border-radius: 11px; color: #d9b97d; background: rgba(255, 190, 92, 0.055); font-size: 11px; line-height: 1.5; text-align: center; }
.minimum-order-status.is-ready { border-color: rgba(85, 214, 169, 0.28); color: var(--green); background: rgba(85, 214, 169, 0.07); }
.order-note { padding: 14px 24px 22px; color: #858d9c; font-size: 10px; line-height: 1.5; text-align: center; }

.mobile-order-bar { display: none; }

footer { display: flex; justify-content: space-between; gap: 20px; padding: 22px 0 34px; border-top: 1px solid var(--line); color: #747b88; font-size: 11px; }

.modal {
  width: min(720px, calc(100% - 28px));
  max-height: calc(100svh - 40px);
  padding: 0;
  border: 0;
  border-radius: 22px;
  color: var(--text);
  background: transparent;
  overflow: visible;
}
#priceDialog { width: min(860px, calc(100% - 28px)); }
.modal::backdrop { background: rgba(0, 0, 0, 0.72); backdrop-filter: blur(8px); }
.modal-card { max-height: calc(100svh - 40px); overflow-y: auto; border: 1px solid var(--line-strong); border-radius: 22px; background: #11141b; box-shadow: var(--shadow); }
.modal-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 24px; border-bottom: 1px solid var(--line); }
.modal-heading h2 { margin-top: 7px; }
.modal-heading p { margin-top: 7px; color: var(--muted); font-size: 12px; }
.icon-button { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: var(--surface-2); cursor: pointer; font-size: 22px; }

.markup-settings { display: grid; grid-template-columns: minmax(220px, 0.8fr) minmax(260px, 1.5fr) auto; align-items: center; gap: 16px; padding: 18px 24px; border-bottom: 1px solid var(--line); background: rgba(255, 255, 255, 0.018); }
.markup-settings > label { display: flex; align-items: center; justify-content: space-between; gap: 14px; color: var(--text); font-size: 12px; font-weight: 800; }
.markup-settings > p { color: var(--muted); font-size: 10px; line-height: 1.45; }
.markup-settings > button { white-space: nowrap; }
.markup-input-wrap { position: relative; width: 94px; flex: 0 0 94px; }
.markup-input-wrap input { min-height: 42px; padding: 0 30px 0 10px; text-align: right; }
.markup-input-wrap > span { position: absolute; top: 50%; right: 11px; color: var(--muted); transform: translateY(-50%); }

.price-editor-list { display: grid; max-height: 430px; overflow-y: auto; }
.price-editor-row { display: grid; grid-template-columns: 58px minmax(0, 1fr) 160px; align-items: center; gap: 14px; padding: 13px 24px; border-bottom: 1px solid var(--line); }
.price-editor-row img { width: 58px; height: 58px; border-radius: 10px; object-fit: cover; }
.price-editor-row strong { display: block; font-size: 12px; }
.price-editor-row small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; }
.price-input-wrap { position: relative; }
.price-input-wrap input { min-height: 42px; padding: 0 34px 0 12px; text-align: right; }
.price-input-wrap span { position: absolute; top: 50%; right: 12px; transform: translateY(-50%); color: var(--muted); font-size: 11px; }
.modal-actions { display: flex; justify-content: flex-end; gap: 10px; padding: 18px 24px; }

.request-card { width: min(620px, calc(100vw - 32px)); }
.request-form-body { display: grid; gap: 18px; padding: 22px 24px 0; }
.order-contact-fields { display: grid; gap: 12px; padding: 15px; border: 1px solid rgba(85, 214, 169, 0.22); border-radius: 14px; background: rgba(85, 214, 169, 0.035); }
.order-contact-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.order-contact-heading h3 { margin-top: 4px; color: var(--cream); font-size: 15px; }
.order-contact-heading > span { flex: 0 0 auto; color: var(--muted); font-size: 9px; line-height: 1.4; text-align: right; }
.order-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.order-contact-grid label { display: grid; gap: 6px; }
.order-contact-grid label > span { color: var(--muted); font-size: 10px; }
.order-contact-grid em { color: #8d98b5; font-style: normal; }
.order-contact-grid input, .order-contact-grid textarea { width: 100%; min-height: 42px; padding: 0 11px; }
.order-contact-grid textarea { min-height: 64px; padding-top: 10px; padding-bottom: 10px; resize: vertical; }
.order-comment-field { grid-column: 1 / -1; }
.delivery-calculator { display: grid; gap: 11px; padding: 15px; border: 1px solid rgba(197, 161, 92, 0.24); border-radius: 14px; background: linear-gradient(135deg, rgba(197, 161, 92, 0.07), rgba(79, 117, 255, 0.035)); }
.delivery-calculator-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.delivery-calculator h3 { margin-top: 4px; color: var(--cream); font-size: 15px; }
.delivery-calculator > p { color: var(--muted); font-size: 10px; line-height: 1.5; }
.delivery-cargo { flex: 0 0 auto; padding: 6px 8px; border: 1px solid var(--line); border-radius: 999px; color: #b7c4ef; background: rgba(79, 117, 255, 0.08); font-size: 9px; white-space: nowrap; }
.delivery-city-field { position: relative; display: grid; gap: 6px; }
.delivery-city-field > span { color: var(--muted); font-size: 10px; }
.delivery-city-field input[type="text"] { min-height: 42px; padding: 0 11px; }
.delivery-city-results { position: absolute; top: calc(100% + 4px); z-index: 3; display: grid; width: 100%; max-height: 190px; overflow-y: auto; border: 1px solid var(--line-strong); border-radius: 11px; background: #191d26; box-shadow: var(--shadow); }
.delivery-city-results[hidden] { display: none; }
.delivery-city-result { width: 100%; padding: 10px 11px; border: 0; border-bottom: 1px solid var(--line); color: var(--text); background: transparent; cursor: pointer; font: inherit; text-align: left; }
.delivery-city-result:last-child { border-bottom: 0; }
.delivery-city-result:hover, .delivery-city-result:focus-visible { background: rgba(79, 117, 255, 0.12); outline: none; }
.delivery-city-result strong, .delivery-city-result small { display: block; }
.delivery-city-result strong { font-size: 11px; }
.delivery-city-result small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.delivery-calculate-button { justify-self: start; min-height: 38px; padding: 0 13px; font-size: 11px; }
.delivery-quotes { display: grid; gap: 8px; }
.delivery-choice-hint { margin: 2px 0 1px; color: #b7c4ef; font-size: 10px; font-weight: 800; }
.delivery-quote-wrap { display: grid; gap: 7px; }
.delivery-quote { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255, 255, 255, 0.018); cursor: pointer; transition: border-color .16s ease, background .16s ease; }
.delivery-quote:hover { border-color: rgba(126, 154, 255, 0.34); }
.delivery-quote.is-selected { border-color: rgba(126, 154, 255, 0.68); background: rgba(79, 117, 255, 0.11); box-shadow: inset 0 0 0 1px rgba(126, 154, 255, 0.12); }
.delivery-quote > input { width: 17px; height: 17px; margin: 0; accent-color: #7f9bff; }
.delivery-quote strong, .delivery-quote small { display: block; }
.delivery-quote strong { color: var(--cream); font-size: 12px; }
.delivery-quote small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.delivery-quote .delivery-quote-destination { color: #bdc9f1; }
.delivery-quote-price { color: #b7c4ef; font-size: 15px; font-weight: 900; text-align: right; white-space: nowrap; }
.delivery-quote-price small { color: var(--muted); font-size: 9px; font-weight: 500; }
.delivery-pickup-selector { display: grid; gap: 8px; padding: 12px; border: 1px solid rgba(126, 154, 255, 0.3); border-radius: 11px; background: rgba(79, 117, 255, 0.055); }
.delivery-pickup-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.delivery-pickup-heading > div:first-child { display: grid; gap: 2px; }
.delivery-pickup-heading strong { color: var(--cream); font-size: 11px; }
.delivery-pickup-heading small { color: var(--muted); font-size: 9px; }
.delivery-pickup-view-switch { display: inline-flex; flex: 0 0 auto; padding: 3px; border: 1px solid var(--line); border-radius: 9px; background: rgba(0, 0, 0, .18); }
.delivery-pickup-view-button { min-height: 28px; padding: 0 10px; border: 0; border-radius: 7px; color: var(--muted); background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }
.delivery-pickup-view-button:hover { color: var(--cream); }
.delivery-pickup-view-button.is-active { color: #fff; background: linear-gradient(135deg, rgba(79, 117, 255, .78), rgba(208, 69, 186, .7)); box-shadow: 0 5px 16px rgba(54, 68, 132, .25); }
.delivery-pickup-search-wrap { display: grid; gap: 5px; }
.delivery-pickup-search-wrap > span, .delivery-pickup-results-count { color: #aeb9dc; font-size: 9px; font-weight: 750; }
.delivery-pickup-search { width: 100%; min-height: 38px; padding: 0 12px; border: 1px solid var(--line); border-radius: 9px; outline: none; color: var(--cream); background: rgba(0, 0, 0, .2); font: inherit; font-size: 11px; }
.delivery-pickup-search:focus { border-color: rgba(126, 154, 255, .72); box-shadow: 0 0 0 3px rgba(79, 117, 255, .12); }
.delivery-pickup-selected { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 11px; border: 1px solid rgba(65, 229, 176, .35); border-radius: 9px; background: rgba(65, 229, 176, .06); }
.delivery-pickup-selected > span { display: grid; min-width: 0; gap: 3px; }
.delivery-pickup-selected small { color: #76d7b7; font-size: 8px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.delivery-pickup-selected b { overflow: hidden; color: var(--cream); font-size: 10px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.delivery-pickup-selected > strong { flex: 0 0 auto; color: #8bf3d1; font-size: 12px; }
.delivery-pickup-list { display: grid; max-height: 250px; gap: 6px; overflow-y: auto; padding-right: 3px; }
.delivery-pickup-option { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: start; gap: 9px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 9px; background: rgba(0, 0, 0, 0.12); cursor: pointer; }
.delivery-pickup-option:hover { border-color: rgba(126, 154, 255, 0.34); }
.delivery-pickup-option.is-selected { border-color: rgba(65, 229, 176, 0.48); background: rgba(65, 229, 176, 0.065); }
.delivery-pickup-option input { width: 15px; height: 15px; margin: 2px 0 0; accent-color: #55d6a9; }
.delivery-pickup-number { display: grid !important; width: 19px; height: 19px; place-items: center; border-radius: 999px; color: #cbd5ff; background: rgba(126, 154, 255, .15); font-size: 8px; font-weight: 900; }
.delivery-pickup-option span { display: grid; gap: 3px; }
.delivery-pickup-option b { color: #e7e9ef; font-size: 10px; line-height: 1.4; }
.delivery-pickup-option small { color: var(--muted); font-size: 9px; }
.delivery-pickup-more { min-height: 36px; border: 1px solid rgba(126, 154, 255, .28); border-radius: 9px; color: #cad4ff; background: rgba(79, 117, 255, .08); cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }
.delivery-pickup-more:hover { border-color: rgba(126, 154, 255, .55); background: rgba(79, 117, 255, .14); }
.delivery-pickup-empty { padding: 18px; border: 1px dashed var(--line); border-radius: 9px; color: var(--muted); font-size: 10px; text-align: center; }
.delivery-pickup-map-shell { display: grid; gap: 8px; }
.delivery-pickup-map { height: 330px; overflow: hidden; border: 1px solid rgba(126, 154, 255, .25); border-radius: 11px; background: #111722; }
.delivery-pickup-map-message { display: grid; height: 100%; place-items: center; padding: 24px; color: var(--muted); font-size: 10px; line-height: 1.5; text-align: center; }
.delivery-pickup-map-selection { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; background: rgba(0, 0, 0, .16); }
.delivery-pickup-map-selection span { display: grid; min-width: 0; gap: 3px; }
.delivery-pickup-map-selection small { color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.delivery-pickup-map-selection b { overflow: hidden; color: var(--cream); font-size: 10px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.delivery-pickup-map-selection > strong { flex: 0 0 auto; color: #b7c4ef; font-size: 12px; }
.delivery-pickup-map-icon-shell { border: 0 !important; background: transparent !important; }
.delivery-pickup-map-icon { position: relative; display: grid; width: 32px; height: 32px; place-items: center; border: 2px solid #c5d0ff; border-radius: 50% 50% 50% 8px; color: #fff; background: linear-gradient(135deg, #4f75ff, #d045ba); box-shadow: 0 7px 18px rgba(20, 18, 53, .52); font-size: 10px; font-weight: 950; transform: rotate(-45deg); }
.delivery-pickup-map-icon::after { position: absolute; inset: 3px; border: 1px solid rgba(255, 255, 255, .35); border-radius: inherit; content: ""; }
.delivery-pickup-map-icon.is-selected { border-color: #8bf3d1; background: linear-gradient(135deg, #23aa83, #4f75ff); box-shadow: 0 0 0 4px rgba(65, 229, 176, .2), 0 8px 22px rgba(20, 18, 53, .58); }
.delivery-pickup-map-icon > b { position: relative; z-index: 1; color: inherit; font: inherit; transform: rotate(45deg); }
.delivery-pickup-map .leaflet-control-attribution { color: #5e6878; background: rgba(255, 255, 255, .88); font-size: 8px; }
.delivery-pickup-map .leaflet-control-attribution a { color: #3a5ab8; }
.delivery-pickup-map .leaflet-popup-content-wrapper, .delivery-pickup-map .leaflet-popup-tip { color: #e7e9ef; background: #171c26; }
.delivery-pickup-map .leaflet-popup-content { margin: 11px 13px; }
.delivery-pickup-map-popup { display: grid; max-width: 230px; gap: 4px; }
.delivery-pickup-map-popup b { color: #fff; font-size: 10px; line-height: 1.4; }
.delivery-pickup-map-popup span { color: #8bf3d1; font-size: 11px; font-weight: 900; }
.delivery-pickup-map-popup small { color: #aab4c5; font-size: 8px; }
.order-delivery-choice-hint { margin-bottom: 2px; color: #b7c4ef !important; font-size: 11px !important; font-weight: 800; }
.order-delivery-choice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 10px; padding: 10px 11px; border: 1px solid transparent; border-radius: 10px; cursor: pointer; }
.order-delivery-choice:hover { background: rgba(255, 255, 255, 0.025); }
.order-delivery-choice.is-selected { border-color: rgba(126, 154, 255, 0.45); background: rgba(79, 117, 255, 0.09); }
.order-delivery-choice input { width: 16px; height: 16px; margin: 1px 0 0; accent-color: #7f9bff; }
.order-delivery-choice > span { display: grid; gap: 3px; }
.order-delivery-choice small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.payment-methods { display: grid; gap: 9px; margin: 0; padding: 0; border: 0; }
.payment-methods legend { margin-bottom: 2px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.payment-method-option { display: flex; align-items: flex-start; gap: 11px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, 0.02); cursor: pointer; }
.payment-method-option:has(input:checked) { border-color: rgba(126, 154, 255, 0.56); background: rgba(79, 117, 255, 0.09); }
.payment-method-option input { flex: 0 0 auto; width: 16px; height: 16px; margin-top: 1px; accent-color: #7f9bff; }
.payment-method-option span { display: grid; gap: 4px; }
.payment-method-option strong { color: var(--cream); font-size: 12px; }
.payment-method-option small { color: var(--muted); font-size: 10px; line-height: 1.45; }
.bank-details-fields { display: grid; gap: 12px; padding: 15px; border: 1px solid rgba(126, 154, 255, 0.24); border-radius: 14px; background: rgba(79, 117, 255, 0.045); }
.bank-details-fields[hidden] { display: none; }
.bank-details-heading { display: grid; gap: 4px; }
.bank-details-heading strong { color: var(--cream); font-size: 12px; }
.bank-details-heading span { color: var(--muted); font-size: 10px; line-height: 1.45; }
.diadoc-id-field { display: grid; gap: 6px; }
.diadoc-id-field > label { color: var(--muted); font-size: 10px; }
.diadoc-id-field > select,
.diadoc-id-field > input { width: 100%; min-height: 42px; padding: 0 11px; border: 1px solid var(--border); border-radius: 10px; color: var(--text); background: rgba(255, 255, 255, 0.045); }
.diadoc-id-field > select:disabled,
.diadoc-id-field > input:disabled { opacity: 0.55; }
.diadoc-id-field > select option { color: #111827; background: #fff; }
.diadoc-id-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: stretch; }
.diadoc-id-control input { width: 100%; min-height: 42px; padding: 0 11px; }
.diadoc-id-control .button { min-height: 42px; padding: 0 16px; }
.diadoc-id-field small { color: #b8c4e8; font-size: 10px; line-height: 1.45; }
.diadoc-id-field .diadoc-lookup-status { min-height: 15px; color: var(--muted); }
.diadoc-id-field .diadoc-lookup-status.is-success { color: #70e8c2; }
.diadoc-id-field .diadoc-lookup-status.is-warning { color: #f0c979; }
.diadoc-id-field .diadoc-lookup-status.is-error { color: #ff8f9b; }

@media (max-width: 560px) {
  .diadoc-id-control { grid-template-columns: 1fr; }
  .diadoc-id-control .button { width: 100%; }
}
.bank-details-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.bank-details-grid label { display: grid; gap: 6px; }
.bank-details-grid label > span { color: var(--muted); font-size: 10px; }
.bank-details-grid input { width: 100%; min-height: 42px; padding: 0 11px; }
.bank-lookup-status { min-height: 15px; color: var(--muted); font-size: 10px; line-height: 1.4; }
.bank-lookup-status.is-success { color: var(--green); }
.bank-lookup-status.is-warning { color: #e1ba73; }
.request-dialog-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 15px; border-top: 1px solid var(--line); }
.request-dialog-summary span { color: var(--muted); font-size: 11px; }
.request-dialog-summary strong { color: var(--cream); font-size: 18px; }
.request-form-body .form-error { margin: -4px 0 0; }

.success-card { padding: 34px; text-align: center; }
.success-card h2 { margin-top: 9px; font-size: 28px; }
.success-card > p { margin: 12px auto 24px; color: var(--muted); line-height: 1.6; }
.success-icon { display: grid; width: 64px; height: 64px; margin: 0 auto 20px; place-items: center; border: 1px solid rgba(85, 214, 169, 0.35); border-radius: 50%; color: var(--green); background: rgba(85, 214, 169, 0.1); font-size: 28px; }
.local-preview { display: grid; gap: 6px; margin-bottom: 22px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, 0.025); }
.local-preview span { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.local-preview strong { font-size: 12px; }

.toast { position: fixed; right: 20px; bottom: 20px; z-index: 100; max-width: 360px; padding: 13px 16px; border: 1px solid var(--line-strong); border-radius: 12px; background: #1a1e28; box-shadow: var(--shadow); opacity: 0; pointer-events: none; transform: translateY(12px); transition: 180ms ease; font-size: 12px; }
.toast.show { opacity: 1; transform: translateY(0); }

@keyframes brand-orbit {
  to { transform: rotate(1turn); }
}

@keyframes argb-ambient {
  0% { opacity: 0.88; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.045) translate3d(-0.4%, 0.35%, 0); }
  100% { opacity: 0.92; transform: scale(1.02) translate3d(0.35%, -0.25%, 0); }
}

@keyframes access-ambient {
  0% { transform: translate3d(0, 0, 0) scale(0.94); opacity: 0.72; }
  100% { transform: translate3d(-26px, 20px, 0) scale(1.12); opacity: 1; }
}

@keyframes leopard-logo-shimmer {
  0% { filter: saturate(1.08) hue-rotate(0deg) brightness(1); transform: scale(1); }
  55% { filter: saturate(1.42) hue-rotate(22deg) brightness(1.1); transform: scale(1.035); }
  100% { filter: saturate(1.18) hue-rotate(-14deg) brightness(1.05); transform: scale(1.012); }
}

@keyframes brand-shimmer {
  0%, 18% { background-position: 100% 50%; }
  58%, 100% { background-position: 0 50%; }
}

@keyframes emblem-spectrum {
  0%, 100% { filter: hue-rotate(0deg) saturate(1.12) brightness(1.08) drop-shadow(0 9px 20px rgba(35, 184, 255, 0.14)); }
  50% { filter: hue-rotate(42deg) saturate(1.3) brightness(1.16) drop-shadow(0 9px 24px rgba(255, 98, 219, 0.2)); }
}

@keyframes emblem-sheen {
  0%, 24% { transform: translateX(-85px) rotate(-38deg); opacity: 0; }
  38% { opacity: 0.9; }
  58%, 100% { transform: translateX(85px) rotate(-38deg); opacity: 0; }
}

@media (max-width: 1120px) {
  .content-grid { grid-template-columns: 1fr; }
  .order-panel { position: static; }
  .order-lines { max-height: none; }
  .catalog-toolbar { grid-template-columns: 1fr auto; }
  .demo-control { grid-column: 1 / -1; justify-self: start; }
  .catalog-view { padding-bottom: 92px; }
  .mobile-order-bar:not([hidden]) {
    position: fixed;
    z-index: 60;
    right: 14px;
    bottom: 14px;
    left: 14px;
    display: flex;
    width: min(680px, calc(100% - 28px));
    min-height: 66px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 auto;
    padding: 10px 11px 10px 17px;
    border: 1px solid rgba(126, 154, 255, 0.34);
    border-radius: 17px;
    background: linear-gradient(120deg, rgba(17, 20, 29, 0.98), rgba(25, 18, 35, 0.98));
    box-shadow: 0 18px 55px rgba(0, 0, 0, 0.55), 0 0 34px rgba(100, 85, 255, 0.1);
    backdrop-filter: blur(18px);
  }
  .mobile-order-bar-summary { display: grid; min-width: 0; gap: 3px; }
  .mobile-order-bar-count { overflow: hidden; color: var(--muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
  .mobile-order-bar-total { color: var(--cream); font-size: 19px; font-variant-numeric: tabular-nums; white-space: nowrap; }
  .mobile-order-bar-button { flex: 0 0 auto; min-height: 44px; padding: 0 18px; }
  #orderPanel { scroll-margin-top: 142px; }
}

@media (max-width: 760px) {
  .access-screen { padding: 16px; }
  .access-card { padding: 26px 20px; }
  .access-copy { margin: 42px 0 28px; }
  .access-input-row { grid-template-columns: 1fr; }
  .company-lookup-row, .company-requisites { grid-template-columns: 1fr; }
  .company-lookup-result { grid-column: auto; }
  .header-inner, main, footer { width: min(100% - 24px, 1480px); }
  .header-inner { min-height: 68px; grid-template-columns: 1fr auto; gap: 12px; }
  .header-nav { display: none; }
  .company-name { display: none; }
  main { padding-top: 34px; }
  .catalog-hero { display: grid; }
  .catalog-hero-side { max-width: none; justify-items: start; }
  .hero-badges { justify-content: flex-start; }
  .order-terms { padding: 14px; }
  .order-terms-grid { grid-template-columns: 1fr; }
  .order-term-card { min-height: 0; }
  .catalog-toolbar { grid-template-columns: 1fr; }
  .filter-chips { overflow-x: auto; padding-bottom: 2px; }
  .filter-chip { flex: 0 0 auto; }
  .catalog-group > summary { grid-template-columns: 30px 1fr; }
  .catalog-group > summary > span:last-child, .catalog-series > summary > span:last-child { grid-column: 2; }
  .catalog-series-list { padding-left: 8px; }
  .demo-control { grid-column: auto; }
  .panel-heading { padding: 16px; }
  .products-table, .products-table tbody, .products-table tr, .products-table td { display: block; min-width: 0; }
  .products-table thead { display: none; }
  .products-table tbody { display: grid; gap: 10px; padding: 10px; }
  .products-table tr { padding: 13px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.015); }
  .products-table td { padding: 7px 0; border: 0; text-align: left !important; }
  .product-cell { min-width: 0; }
  .product-image { width: 68px; height: 68px; flex-basis: 68px; }
  .specs { max-width: none; }
  .products-table td:nth-child(3), .products-table td:nth-child(4), .products-table td:nth-child(5) { display: inline-flex; width: 32%; min-width: 0; vertical-align: bottom; }
  .products-table td:nth-child(3) { justify-content: flex-start; }
  .product-logistics { justify-items: start; }
  .products-table td:nth-child(4) { justify-content: center; }
  .products-table td:nth-child(5) { justify-content: flex-end; }
  .quantity-control { min-width: 132px; grid-template-columns: 42px 48px 42px; }
  .line-total { font-size: 14px; }
  footer { display: grid; }
  .markup-settings { grid-template-columns: 1fr; padding: 16px; }
  .markup-settings > label { justify-content: flex-start; }
  .price-editor-row { grid-template-columns: 46px 1fr; padding: 12px 16px; }
  .price-editor-row img { width: 46px; height: 46px; }
  .price-input-wrap { grid-column: 1 / -1; }
}

@media (max-width: 480px) {
  .demo-hint { align-items: flex-start; flex-direction: column; }
  .brand small { display: none; }
  .catalog-hero h1 { font-size: 42px; }
  .products-table td:nth-child(3) { width: 46%; }
  .products-table td:nth-child(4) { width: 54%; justify-content: flex-end; }
  .products-table td:nth-child(5) { width: 100%; justify-content: space-between; margin-top: 5px; padding-top: 10px; border-top: 1px solid var(--line); }
  .products-table td:nth-child(5)::before { content: "Сумма"; color: var(--muted); font-size: 10px; text-transform: uppercase; }
  .mobile-order-bar:not([hidden]) { right: 8px; bottom: 8px; left: 8px; width: calc(100% - 16px); gap: 10px; padding-left: 14px; }
  .mobile-order-bar-button { padding: 0 14px; font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .brand-mark::before,
  .brand-wordmark-accent,
  .brand-leopard-mark img,
  .catalog-hero::before,
  .hero-brand-emblem img,
  .hero-brand-emblem::after,
  .hero-brand-words b,
  .hero-brand-words b:last-child,
  .app-shell::before,
  .access-glow { animation: none; }
  .dashboard-video { display: none; }
}

.admin-body { min-height: 100vh; background: var(--bg); }
.admin-header-inner { grid-template-columns: 1fr auto; }
.admin-main { padding: 44px 0 72px; }
.admin-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.admin-hero h1, .admin-key-card h1 { font-size: clamp(38px, 6vw, 64px); }
.admin-hero p, .admin-key-card p { max-width: 650px; margin-top: 14px; color: var(--muted); line-height: 1.6; }
.admin-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.admin-settings-card { display: grid; gap: 16px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.admin-tier-settings-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.admin-tier-settings-heading h2 { margin-top: 5px; }
.admin-tier-settings-heading p { max-width: 760px; margin-top: 8px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.admin-tier-grid { display: grid; gap: 8px; }
.admin-tier-row { display: grid; grid-template-columns: minmax(165px, 1fr) repeat(3, minmax(135px, 0.72fr)); align-items: end; gap: 10px; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 13px; background: rgba(255, 255, 255, 0.022); }
.admin-tier-range span, .admin-tier-row label > span, .admin-tier-open-ended > span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.admin-tier-range strong, .admin-tier-open-ended strong { display: flex; min-height: 42px; align-items: center; font-size: 13px; }
.admin-tier-row label { display: grid; }
.admin-tier-row input { min-height: 42px; padding: 0 11px; }
.admin-tier-open-ended strong { color: #c7ccd5; font-size: 11px; }
.admin-tier-note { color: var(--muted); font-size: 11px; line-height: 1.5; }
.admin-status { padding: 20px 2px 12px; color: var(--muted); font-size: 12px; }
.admin-price-list { display: grid; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.admin-price-row { display: grid; grid-template-columns: 58px minmax(240px, 1.5fr) repeat(2, minmax(110px, 0.55fr)) minmax(150px, 0.7fr) minmax(110px, 0.55fr); align-items: center; gap: 14px; padding: 13px 18px; border-bottom: 1px solid var(--line); }
.admin-price-row:last-child { border-bottom: 0; }
.admin-price-row > img { width: 58px; height: 58px; border-radius: 10px; object-fit: cover; }
.admin-product-name strong { display: block; font-size: 12px; }
.admin-product-name small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.admin-price-value span, .admin-manual-price > span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: 0.07em; }
.admin-price-value strong { font-size: 13px; }
.admin-manual-price input { min-height: 42px; padding: 0 11px; text-align: right; }
.admin-effective-price strong { color: var(--green); }
.admin-key-card { width: min(660px, 100%); margin: 40px auto; padding: 34px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.admin-key-card form { display: grid; grid-template-columns: 1fr auto; gap: 10px; margin-top: 22px; }
.admin-key-card input { padding: 0 14px; }
.admin-integration-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.admin-integration-card { display: grid; min-height: 190px; align-content: start; gap: 16px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: rgba(17, 20, 28, 0.92); box-shadow: var(--shadow); }
.admin-integration-card.is-ok { border-color: rgba(77, 224, 174, 0.27); background: linear-gradient(145deg, rgba(77, 224, 174, 0.065), rgba(17, 20, 28, 0.94) 55%); }
.admin-integration-card.is-warning { border-color: rgba(232, 184, 94, 0.28); background: linear-gradient(145deg, rgba(232, 184, 94, 0.06), rgba(17, 20, 28, 0.94) 55%); }
.admin-integration-card.is-error, .admin-integration-card.is-not-configured { border-color: rgba(255, 112, 128, 0.25); }
.admin-integration-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.admin-integration-card-heading strong { font-size: 15px; }
.admin-integration-card-heading span { padding: 6px 9px; border: 1px solid currentColor; border-radius: 999px; color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.admin-integration-card.is-ok .admin-integration-card-heading span { color: var(--green); }
.admin-integration-card.is-warning .admin-integration-card-heading span { color: var(--gold); }
.admin-integration-card.is-error .admin-integration-card-heading span, .admin-integration-card.is-not-configured .admin-integration-card-heading span { color: #ff8f9b; }
.admin-integration-card p { min-height: 3em; color: #c7ccd5; font-size: 11px; line-height: 1.55; }
.admin-integration-card dl { display: grid; gap: 8px; margin: auto 0 0; }
.admin-integration-card dl div { display: flex; justify-content: space-between; gap: 10px; border-top: 1px solid rgba(255, 255, 255, 0.06); padding-top: 8px; }
.admin-integration-card dt { color: var(--muted); font-size: 9px; }
.admin-integration-card dd { margin: 0; color: #dce1eb; font-size: 9px; text-align: right; }
.admin-integration-note { display: grid; gap: 7px; margin-top: 14px; padding: 17px 20px; border: 1px solid rgba(106, 129, 255, 0.22); border-radius: 14px; background: rgba(82, 100, 197, 0.07); }
.admin-integration-note strong { font-size: 12px; }
.admin-integration-note span { color: var(--muted); font-size: 11px; line-height: 1.55; }

@media (max-width: 1050px) {
  .admin-tier-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-price-row { grid-template-columns: 52px minmax(220px, 1fr) repeat(2, minmax(105px, 0.5fr)); }
  .admin-manual-price, .admin-effective-price { grid-column: auto; }
  .admin-integration-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .admin-main { padding-top: 28px; }
  .admin-hero { align-items: flex-start; flex-direction: column; }
  .admin-tier-settings-heading { align-items: flex-start; flex-direction: column; }
  .admin-tier-row { grid-template-columns: 1fr; }
  .admin-price-row { grid-template-columns: 48px 1fr; }
  .admin-price-row > img { width: 48px; height: 48px; }
  .admin-price-value, .admin-manual-price { grid-column: 1 / -1; }
  .admin-key-card form { grid-template-columns: 1fr; }
  .admin-integration-grid { grid-template-columns: 1fr; }
}

.cabinet-navigation {
  position: sticky;
  z-index: 19;
  top: 76px;
  border-bottom: 1px solid var(--line);
  background: rgba(10, 13, 19, 0.98);
}

.cabinet-navigation-inner {
  display: flex;
  width: min(100% - 40px, 1480px);
  min-height: 54px;
  margin: 0 auto;
  align-items: stretch;
  gap: 4px;
  overflow-x: auto;
}

.cabinet-navigation-button {
  position: relative;
  display: inline-flex;
  min-width: max-content;
  align-items: center;
  gap: 7px;
  padding: 0 16px;
  border: 0;
  color: var(--muted);
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.cabinet-navigation-button::after {
  position: absolute;
  right: 12px;
  bottom: -1px;
  left: 12px;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: linear-gradient(90deg, #4f75ff, #d73cad);
  content: "";
  opacity: 0;
}

.cabinet-navigation-button:hover,
.cabinet-navigation-button.is-active { color: var(--cream); }
.cabinet-navigation-button.is-active::after { opacity: 1; }
.cabinet-navigation-button > span:not(.chat-nav-indicator) {
  display: inline-grid;
  min-width: 21px;
  min-height: 21px;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: #bbc1cb;
  font-size: 9px;
}

.chat-nav-indicator {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 12px rgba(65, 229, 176, 0.7);
}

.cabinet-main { min-height: calc(100vh - 180px); padding: 24px 0 64px; }
.cabinet-view[hidden] { display: none !important; }

.dashboard-view { display: grid; gap: 18px; }
.dashboard-command-center {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 340px;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
  align-items: stretch;
  gap: clamp(28px, 5vw, 72px);
  overflow: hidden;
  padding: clamp(30px, 4vw, 46px);
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 24px;
  background:
    radial-gradient(circle at 95% 110%, rgba(215, 60, 173, 0.2), transparent 38%),
    radial-gradient(circle at 5% -20%, rgba(47, 192, 255, 0.12), transparent 34%),
    linear-gradient(rgba(10, 13, 20, 0.74), rgba(10, 13, 20, 0.74)),
    url("assets/videos/jungle-leopard-rgb-fans-poster.jpg") center / cover,
    var(--surface);
  box-shadow: 0 26px 70px rgba(0, 0, 0, 0.36), inset 0 1px rgba(255, 255, 255, 0.045);
}
.dashboard-command-center > :not(.dashboard-video):not(.dashboard-video-overlay) { position: relative; z-index: 2; }
.dashboard-video { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; opacity: 0.34; pointer-events: none; }
.dashboard-video-overlay { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, rgba(10, 13, 20, 0.98) 0%, rgba(10, 13, 20, 0.91) 45%, rgba(10, 13, 20, 0.72) 72%, rgba(10, 13, 20, 0.66) 100%), linear-gradient(0deg, rgba(10, 13, 20, 0.48), transparent 54%); }

.dashboard-command-copy { align-self: center; max-width: 760px; }
.dashboard-command-center h1,
.cabinet-page-heading h1 { margin-top: 6px; color: var(--cream); font-size: clamp(34px, 5vw, 54px); }
.dashboard-command-copy > p:not(.dashboard-minimum),
.cabinet-page-heading p { max-width: 680px; margin-top: 11px; color: var(--muted); line-height: 1.6; }

.dashboard-primary-action { display: flex; align-items: stretch; gap: 12px; margin-top: 24px; }
.dashboard-start-button { min-width: 248px; min-height: 52px; padding-right: 24px; padding-left: 24px; font-size: 14px; }
.dashboard-draft-summary {
  display: grid;
  min-width: 170px;
  align-content: center;
  gap: 3px;
  padding: 8px 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.055);
  backdrop-filter: blur(12px);
}
.dashboard-draft-summary span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.dashboard-draft-summary strong { color: var(--cream); font-size: 19px; font-variant-numeric: tabular-nums; }
.dashboard-minimum { margin-top: 11px; color: #c9d3ee; font-size: 11px; line-height: 1.45; }
.dashboard-hero-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 22px; }
.dashboard-hero-badges span { padding: 7px 10px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 999px; color: #c6cad4; background: rgba(8, 10, 16, 0.44); font-size: 10px; }

.dashboard-latest-card {
  display: grid;
  min-width: 0;
  align-content: start;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 19px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.028));
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(18px);
}
.dashboard-latest-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; color: #b5bdcc; font-size: 10px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.dashboard-order-count { display: inline-flex; align-items: baseline; gap: 4px; padding: 5px 8px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 999px; color: var(--muted); letter-spacing: 0; text-transform: none; }
.dashboard-order-count b { color: var(--cream); font-size: 11px; }
.dashboard-latest-number { overflow: hidden; margin-top: 30px; color: var(--cream); font-size: clamp(17px, 2vw, 23px); line-height: 1.3; text-overflow: ellipsis; }
.dashboard-latest-card > p { margin-top: 8px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.dashboard-latest-total { margin-top: 18px; color: var(--cream); font-size: 30px; font-variant-numeric: tabular-nums; }
.dashboard-latest-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.dashboard-card-action {
  width: max-content;
  min-height: 44px;
  margin-top: 0;
  padding: 0 14px;
  border: 1px solid rgba(126, 154, 255, 0.3);
  border-radius: 10px;
  color: #d1dcff;
  background: rgba(79, 117, 255, 0.1);
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.dashboard-card-action:hover { border-color: rgba(126, 154, 255, 0.58); background: rgba(79, 117, 255, 0.17); }
.dashboard-invoice-action { border-color: transparent; color: #fff; background: linear-gradient(105deg, #5876ff, #cb3fb8); }
.dashboard-invoice-action:hover { border-color: transparent; background: linear-gradient(105deg, #6682ff, #dc49c7); }

.dashboard-shipment-card {
  display: grid;
  grid-template-columns: 48px minmax(300px, .8fr) minmax(430px, 1.2fr) auto;
  align-items: center;
  gap: 20px;
  padding: 20px 22px;
  border: 1px solid rgba(65, 229, 176, .32);
  border-radius: 20px;
  background: radial-gradient(circle at 0 50%, rgba(47, 192, 255, .12), transparent 28%), linear-gradient(115deg, rgba(16, 31, 37, .98), rgba(13, 17, 27, .97));
  box-shadow: 0 18px 46px rgba(0, 0, 0, .28), inset 0 1px rgba(255, 255, 255, .04);
}
.dashboard-shipment-list { display: grid; gap: 14px; }
.dashboard-shipment-list[hidden] { display: none; }
.dashboard-shipment-card[hidden] { display: none; }
.dashboard-shipment-card[data-status="problem"], .dashboard-shipment-card[data-status="cancelled"] { border-color: rgba(255, 174, 79, .45); background: linear-gradient(115deg, rgba(43, 29, 20, .98), rgba(16, 18, 26, .97)); }
.dashboard-shipment-icon { display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid rgba(65, 229, 176, .35); border-radius: 15px; color: #dffff5; background: rgba(65, 229, 176, .12); font-size: 23px; font-weight: 900; }
.dashboard-shipment-main { min-width: 0; }
.dashboard-shipment-title-row { display: flex; align-items: baseline; gap: 10px; margin-top: 4px; }
.dashboard-shipment-title-row h2 { overflow: hidden; color: var(--cream); font-size: 19px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-shipment-order { flex: none; color: #91a0ba; font-size: 10px; }
.dashboard-shipment-progress { display: grid; grid-template-columns: repeat(5, 1fr); margin: 15px 0 0; padding: 0; list-style: none; }
.dashboard-shipment-progress li { position: relative; display: grid; gap: 5px; color: #687287; font-size: 9px; font-weight: 800; }
.dashboard-shipment-progress li::after { position: absolute; top: 4px; right: calc(50% + 7px); left: calc(-50% + 7px); height: 1px; background: rgba(255, 255, 255, .11); content: ""; }
.dashboard-shipment-progress li:first-child::after { display: none; }
.dashboard-shipment-progress li span { position: relative; z-index: 1; width: 9px; height: 9px; border: 2px solid #465064; border-radius: 50%; background: #121722; }
.dashboard-shipment-progress li.is-complete { color: #bcebdd; }
.dashboard-shipment-progress li.is-complete::after { background: rgba(65, 229, 176, .6); }
.dashboard-shipment-progress li.is-complete span { border-color: #41e5b0; background: #41e5b0; box-shadow: 0 0 10px rgba(65, 229, 176, .45); }
.dashboard-shipment-progress li.is-current span { transform: scale(1.25); }
.dashboard-shipment-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 22px; margin: 0; }
.dashboard-shipment-details div { min-width: 0; }
.dashboard-shipment-details dt { color: #778197; font-size: 9px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.dashboard-shipment-details dd { overflow: hidden; margin: 4px 0 0; color: #e3e9f4; font-size: 11px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-shipment-action { min-height: 44px; padding: 0 15px; border: 1px solid rgba(126, 154, 255, .34); border-radius: 11px; color: #dbe3ff; background: rgba(79, 117, 255, .11); font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.dashboard-shipment-action:hover { border-color: rgba(126, 154, 255, .65); background: rgba(79, 117, 255, .2); }
.order-history-card.is-highlighted { border-color: rgba(126, 154, 255, .8); box-shadow: 0 0 0 2px rgba(126, 154, 255, .18), 0 0 28px rgba(111, 78, 255, .2); }

.dashboard-order-guide {
  padding: 24px 28px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(14, 17, 25, 0.94);
  box-shadow: var(--shadow);
}
.dashboard-order-guide-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.dashboard-order-guide-heading h2 { margin-top: 6px; }
.dashboard-order-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); overflow: hidden; margin: 18px 0 0; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, 0.018); list-style: none; }
.dashboard-order-steps li { display: grid; min-width: 0; grid-template-columns: 29px minmax(0, 1fr); align-items: center; gap: 11px; padding: 15px 16px; }
.dashboard-order-steps li + li { border-left: 1px solid var(--line); }
.dashboard-step-number { display: grid; width: 29px; height: 29px; place-items: center; border: 1px solid rgba(126, 154, 255, 0.4); border-radius: 50%; color: #b3c3ff; background: rgba(79, 117, 255, 0.11); font-size: 11px; font-weight: 800; }
.dashboard-order-steps li div { display: grid; gap: 3px; min-width: 0; }
.dashboard-order-steps strong { color: var(--cream); font-size: 12px; line-height: 1.35; }
.dashboard-order-steps li span:not(.dashboard-step-number) { color: var(--muted); font-size: 10px; line-height: 1.35; }
.dashboard-order-terms { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.dashboard-order-terms span { padding: 6px 9px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; color: #aeb4c0; background: rgba(255, 255, 255, 0.025); font-size: 10px; line-height: 1.35; }
.dashboard-assistance { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 0.48fr); gap: 12px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.dashboard-company-summary,
.dashboard-support-action { display: grid; min-width: 0; gap: 4px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.022); text-align: left; }
.dashboard-company-summary span,
.dashboard-support-action span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.dashboard-company-summary strong,
.dashboard-support-action strong { overflow: hidden; color: var(--cream); font-size: 13px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-company-summary small,
.dashboard-support-action small { overflow: hidden; color: var(--muted); font-size: 10px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-support-action { position: relative; padding-right: 50px; color: inherit; font: inherit; cursor: pointer; }
.dashboard-support-action::after { position: absolute; top: 50%; right: 17px; color: #9db4ff; font-size: 20px; content: "→"; transform: translateY(-50%); }
.dashboard-support-action:hover { border-color: rgba(126, 154, 255, 0.38); background: rgba(79, 117, 255, 0.08); }

.company-profile-card,
.chat-panel {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.cabinet-page-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}
.orders-list { display: grid; gap: 12px; }
.order-history-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: var(--surface);
  box-shadow: var(--shadow);
}
.order-history-summary {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) repeat(4, minmax(105px, 0.55fr)) auto;
  align-items: center;
  gap: 14px;
  padding: 17px 19px;
}
.order-history-summary span,
.order-history-summary small { color: var(--muted); font-size: 9px; }
.order-history-summary strong { display: block; margin-top: 4px; color: var(--cream); font-size: 12px; }
.order-status-badge {
  display: inline-flex;
  width: max-content;
  padding: 7px 10px;
  border: 1px solid rgba(65, 229, 176, 0.22);
  border-radius: 999px;
  color: var(--green) !important;
  background: rgba(65, 229, 176, 0.07);
  font-weight: 800;
}
.order-history-actions { display: flex; gap: 7px; }
.order-history-actions button,
.order-history-actions a {
  min-width: max-content;
  padding: 9px 11px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: #dce0e8;
  background: rgba(255, 255, 255, 0.025);
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
.order-history-actions .order-invoice-download { border-color: rgba(105, 139, 255, 0.52); color: #fff; background: linear-gradient(105deg, rgba(75, 111, 255, 0.72), rgba(200, 58, 180, 0.72)); }
.order-history-details { padding: 0 19px 18px; }
.order-history-details[hidden] { display: none; }
.order-history-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 75px 110px 120px;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
  color: #cdd2db;
  font-size: 10px;
}
.order-history-row span:not(:first-child) { text-align: right; }
.cabinet-empty-card {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 64px 24px;
  border: 1px dashed rgba(255, 255, 255, 0.13);
  border-radius: 18px;
  color: var(--muted);
  text-align: center;
}
.cabinet-empty-card strong { color: var(--cream); font-size: 16px; }
.cabinet-empty-card .button { margin-top: 8px; }

.company-profile-card { display: grid; grid-template-columns: 1.4fr repeat(3, minmax(140px, 0.55fr)); gap: 12px; }
.company-profile-card > div { display: grid; gap: 7px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, 0.02); }
.company-profile-card span { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: 0.07em; }
.company-profile-card strong { color: var(--cream); font-size: 12px; line-height: 1.45; }
.company-profile-note { max-width: 780px; margin-top: 13px; color: var(--muted); font-size: 10px; line-height: 1.55; }
.company-preferences-card {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 0.8fr) auto;
  align-items: end;
  gap: 16px;
  margin-top: 14px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: var(--surface);
  box-shadow: var(--shadow);
}
.company-preferences-card h2 { margin-top: 5px; color: var(--cream); font-size: 17px; }
.company-preferences-card p { max-width: 580px; margin-top: 6px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.company-preferences-card label { display: grid; gap: 7px; }
.company-preferences-card label span { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.company-preferences-card input { width: 100%; }
.company-preferences-status { grid-column: 2 / -1; min-height: 1.4em; color: var(--green); font-size: 9px; }

.chat-connection-status {
  display: inline-flex;
  align-items: center;
  padding: 8px 11px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}
.chat-connection-status.is-connected { border-color: rgba(65, 229, 176, 0.24); color: var(--green); }
.chat-connection-status.is-warning { border-color: rgba(226, 174, 81, 0.3); color: var(--gold); }
.widget-chat-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  max-width: 960px;
  margin: 0 auto;
  align-items: center;
  gap: 18px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0, rgba(79, 117, 255, 0.12), transparent 42%),
    var(--surface);
  box-shadow: var(--shadow);
}
.widget-chat-icon { display: grid; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(79, 117, 255, 0.25); border-radius: 16px; background: rgba(79, 117, 255, 0.1); font-size: 24px; }
.widget-chat-card strong { color: var(--cream); font-size: 15px; }
.widget-chat-card p { max-width: 650px; margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.widget-chat-note { max-width: 900px; margin: 12px auto 0; color: var(--muted); font-size: 10px; line-height: 1.55; text-align: center; }

/* Bitrix24 assigns each operator an inline colour; keep message names consistent.
   Scope this override to incoming names, leaving the header and customer text alone. */
.bx-livechat-wrapper .bx-im-message-type-opponent .bx-im-message-content-name {
  color: #374151 !important;
}

.bx-livechat-wrapper .bx-im-message-type-opponent .bx-im-message-content-name.jl-chat-name-andrey {
  color: #dc2626 !important;
}

/* Кнопка стандартного виджета Bitrix24: фирменная палитра кабинета без потери контраста. */
.b24-widget-button-inner-container,
.b24-widget-button-inner-block {
  overflow: hidden !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #526fff 5%, #8d55f3 50%, #d640ad 100%) !important;
  box-shadow:
    0 10px 28px rgba(83, 111, 255, .46),
    0 0 22px rgba(215, 64, 173, .3) !important;
}
.b24-widget-button-icon-container {
  border-radius: 50% !important;
}
.b24-widget-button-pulse,
.b24-widget-button-pulse-animate {
  border-color: rgba(116, 111, 255, .62) !important;
  background-color: rgba(109, 91, 242, .18) !important;
}
.b24-widget-button-icon-container svg,
.b24-widget-button-icon-container svg path {
  fill: #fff !important;
}
.b24-widget-button-wrapper:hover .b24-widget-button-inner-container,
.b24-widget-button-wrapper:focus-within .b24-widget-button-inner-container {
  filter: brightness(1.1) saturate(1.08);
  box-shadow:
    0 12px 34px rgba(83, 111, 255, .56),
    0 0 28px rgba(215, 64, 173, .4) !important;
}
/* BEGIN B2B warm livechat theme 20260921
   Only the customer ledger shell; no layout, identity, API or status changes.
   Selectors verified against the live Bitrix24 widget on 2026-09-21. */
.ledger-theme .bx-livechat-wrapper .bx-livechat-head {
  background: #f5dccf !important;
  color: #532d1e !important;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-head .bx-livechat-user-name,
.ledger-theme .bx-livechat-wrapper .bx-livechat-head .bx-livechat-user-position {
  color: #532d1e !important;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-head .bx-livechat-user-status {
  border-color: #f5dccf !important;
}
/* These are monochrome background icons, not avatars or coloured vote states. */
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn-menu,
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn-close,
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn-mail,
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn-list {
  filter: brightness(0);
  opacity: .7;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn:hover {
  opacity: 1;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-control-btn:focus-visible {
  outline: 2px solid #893116;
  outline-offset: -4px;
  opacity: 1;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-body,
.ledger-theme .bx-livechat-wrapper .bx-mobilechat-body {
  background: #fffaf6 !important;
}
/* Do not override vendor error/unread/blink backgrounds or image timestamps. */
.ledger-theme .bx-livechat-wrapper .bx-im-message-type-self:not(.bx-im-message-status-error):not(.bx-im-message-status-unread):not(.bx-im-message-status-blink) .bx-im-message-content {
  background-color: #f5dccf !important;
  color: #38322e;
  border-color: #eadfd7;
  box-shadow: none;
}
.ledger-theme .bx-livechat-wrapper .bx-im-message-type-opponent:not(.bx-im-message-status-error):not(.bx-im-message-status-unread):not(.bx-im-message-status-blink) .bx-im-message-content {
  background-color: #fff !important;
  color: #38322e;
  box-shadow: 0 1px 2px rgba(56, 50, 46, .1);
}
.ledger-theme .bx-livechat-wrapper .bx-im-message-type-opponent .bx-im-message-content-name,
.ledger-theme .bx-livechat-wrapper .bx-im-message-type-opponent .bx-im-message-content-name.jl-chat-name-andrey {
  color: #893116 !important;
}
.ledger-theme .bx-livechat-wrapper .bx-im-message:not(.bx-im-message-status-error) .bx-im-message-content:not(.bx-im-message-content-fit) .bx-im-message-content-date {
  color: #785340;
}
.ledger-theme .bx-livechat-wrapper .bx-im-message-content a {
  color: #893116;
  text-underline-offset: 2px;
}
.ledger-theme .bx-livechat-wrapper .bx-im-dialog-group-date {
  color: #785340 !important;
  background-color: #fcf5ef;
  border-color: #eadfd7;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-textarea {
  background: #fff;
}
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-input {
  background: #fff;
  color: #38322e;
  border-color: #c8b6aa;
  caret-color: #ae451f;
}
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-input::placeholder {
  color: #6d625c;
  opacity: 1;
}
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-input:focus-visible {
  outline: 2px solid #ae451f;
  outline-offset: -2px;
}
.ledger-theme .bx-livechat-wrapper ::selection {
  background: #f5dccf;
  color: #38322e;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-inner-container,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-inner-block {
  background: #ae451f !important;
  box-shadow: none !important;
  filter: none;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-inner-container {
  box-shadow: 0 5px 16px rgba(56, 50, 46, .18) !important;
}
.ledger-theme .b24-widget-button-wrapper:hover .b24-widget-button-inner-block,
.ledger-theme .b24-widget-button-wrapper:focus-within .b24-widget-button-inner-block {
  background: #893116 !important;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-pulse,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-pulse-animate {
  animation: none !important;
  opacity: 0 !important;
}
/* Preserve the vendor's white SVG icons: override colour, never background-image. */
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-openline_livechat,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-crmform,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-inner-mask,
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-send-button {
  background-color: #ae451f !important;
  border-color: #ae451f !important;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-openline_livechat:hover,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-crmform:hover,
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-send-button:hover {
  background-color: #893116 !important;
  border-color: #893116 !important;
}
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-send-button:not(:disabled):not([aria-disabled="true"]) {
  opacity: 1;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-social-item:focus-visible,
.ledger-theme .bx-livechat-wrapper .bx-im-textarea-send-button:focus-visible {
  outline: 2px solid #893116;
  outline-offset: 3px;
}
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-popup,
.ledger-theme .b24-widget-button-wrapper .b24-widget-button-popup-triangle {
  border-color: #c8b6aa !important;
}
.ledger-theme .bx-livechat-wrapper .bx-livechat-textarea {
  border-top-color: #eadfd7;
}
/* END B2B warm livechat theme 20260921 */
.legacy-chat-panel[hidden] { display: none !important; }
.chat-panel { max-width: 960px; margin: 0 auto; padding: 0; overflow: hidden; }
.chat-messages {
  display: flex;
  min-height: 390px;
  max-height: 58vh;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  padding: 22px;
  background: radial-gradient(circle at 100% 0, rgba(79, 117, 255, 0.06), transparent 42%);
}
.chat-empty { display: grid; margin: auto; justify-items: center; gap: 7px; color: var(--muted); text-align: center; }
.chat-empty strong { color: var(--cream); }
.chat-message { display: grid; width: min(74%, 620px); gap: 5px; }
.chat-message.is-outgoing { align-self: flex-end; justify-items: end; }
.chat-message.is-incoming { align-self: flex-start; }
.chat-message-bubble { padding: 12px 14px; border: 1px solid var(--line); border-radius: 15px 15px 15px 4px; color: #e5e7ec; background: rgba(255, 255, 255, 0.035); font-size: 11px; line-height: 1.55; white-space: pre-wrap; }
.chat-message.is-outgoing .chat-message-bubble { border-color: rgba(79, 117, 255, 0.25); border-radius: 15px 15px 4px 15px; background: rgba(79, 117, 255, 0.13); }
.chat-message-meta { color: var(--muted); font-size: 8px; }
.chat-compose { padding: 15px; border-top: 1px solid var(--line); background: rgba(255, 255, 255, 0.018); }
.chat-compose textarea { width: 100%; min-height: 82px; resize: vertical; padding: 13px; }
.chat-compose > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 10px; }
.chat-compose small { color: var(--muted); }
.chat-compose .form-error { margin-top: 8px; }

.admin-section-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 18px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(10, 13, 20, 0.72);
}
.admin-section-tab {
  min-width: 150px;
  padding: 12px 18px;
  border: 0;
  border-radius: 11px;
  color: var(--muted);
  background: transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.admin-section-tab.is-active {
  color: var(--cream);
  background: linear-gradient(135deg, rgba(79, 117, 255, 0.28), rgba(208, 69, 186, 0.22));
}
.admin-order-list { display: grid; gap: 14px; }
.admin-order-card {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0, rgba(208, 69, 186, 0.08), transparent 38%),
    var(--surface);
}
.admin-order-heading,
.admin-order-meta,
.admin-order-actions,
.admin-fbo-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.admin-order-heading h2 { margin: 5px 0; color: var(--cream); }
.admin-order-heading p,
.admin-order-meta,
.admin-fbo-product span,
.admin-fbo-result small { color: var(--muted); }
.admin-order-total { display: grid; justify-items: end; gap: 5px; }
.admin-order-total strong { color: var(--cream); font-size: 24px; }
.admin-order-meta { justify-content: flex-start; flex-wrap: wrap; margin-top: 14px; font-size: 11px; }
.admin-order-meta span:not(:last-child)::after { margin-left: 14px; content: "·"; }
.admin-order-actions { justify-content: flex-end; margin-top: 16px; }
.admin-fbo-result {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid rgba(79, 117, 255, 0.22);
  border-radius: 15px;
  background: rgba(79, 117, 255, 0.055);
}
.admin-fbo-summary strong { color: var(--cream); }
.admin-fbo-products { display: grid; gap: 10px; margin-top: 14px; }
.admin-fbo-product { display: grid; gap: 10px; padding-top: 14px; border-top: 1px solid var(--line); }
.admin-fbo-product-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
}
.admin-fbo-product-title { display: grid; min-width: 0; gap: 5px; }
.admin-fbo-product-title strong { overflow: hidden; color: var(--cream); text-overflow: ellipsis; white-space: nowrap; }
.admin-fbo-product-title span { color: var(--muted); font-size: 10px; }
.admin-fbo-quantity-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(86px, 1fr));
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
}
.admin-fbo-quantity-grid > div { display: grid; min-height: 58px; align-content: center; justify-items: center; gap: 3px; padding: 8px 14px; }
.admin-fbo-quantity-grid > div + div,
.admin-fbo-quantity-grid > div + label,
.admin-fbo-quantity-grid > label + div { border-left: 1px solid var(--line); }
.admin-fbo-quantity-grid span { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.admin-fbo-quantity-grid strong { color: var(--cream); font-size: 19px; }
.admin-fbo-quantity-grid strong small { color: inherit; font-size: 10px; }
.admin-fbo-quantity-grid .has-stock strong,
.admin-fbo-quantity-grid .covered strong { color: var(--green); }
.admin-fbo-quantity-grid .no-stock strong,
.admin-fbo-quantity-grid .needs-fbs strong { color: var(--gold); }
.admin-fbo-selection { display: grid; min-height: 58px; align-content: center; justify-items: center; gap: 4px; padding: 7px 10px; }
.admin-fbo-selection input {
  width: 58px;
  min-height: 30px;
  padding: 3px 6px;
  border-radius: 8px;
  color: var(--cream);
  font-weight: 900;
  text-align: center;
}
.admin-fbo-warehouses { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-fbo-warehouses span {
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.025);
  font-size: 10px;
}
.admin-fbo-destination { margin: 10px 0 0; color: #c7d5ff; font-size: 10px; }
.admin-fbo-warehouses span.is-near-destination {
  border-color: rgba(65, 229, 176, 0.38);
  color: #c7fff0;
  background: rgba(65, 229, 176, 0.1);
  box-shadow: inset 0 0 20px rgba(65, 229, 176, 0.04);
}
.admin-fbo-warning { margin: 14px 0 7px; color: var(--gold); font-size: 10px; line-height: 1.5; }
.admin-fbs-panel {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid rgba(65, 229, 176, 0.22);
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(65, 229, 176, 0.055), rgba(79, 117, 255, 0.04));
}

.admin-invoice-panel {
  display: grid;
  grid-template-columns: minmax(160px, .7fr) minmax(220px, 1fr) auto;
  gap: 10px 18px;
  align-items: center;
  margin: 16px 0;
  padding: 15px 17px;
  border: 1px solid rgba(87, 229, 184, .28);
  border-radius: 14px;
  background: rgba(30, 72, 68, .18);
}
.admin-invoice-panel small { grid-column: 2 / -1; color: var(--muted); }
.admin-invoice-email { display: grid; gap: 5px; }
.admin-invoice-email span { color: var(--muted); font-size: 9px; }
.admin-invoice-email input { min-width: 220px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; color: var(--cream); background: rgba(255,255,255,.04); }
.admin-invoice-kicker { color: #6ee7c3; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.order-invoice-notice { display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; border: 1px solid rgba(87, 229, 184, .3); border-radius: 12px; color: #d9fff3; background: rgba(30, 72, 68, .2); }
.order-invoice-notice span { color: var(--muted); }
.order-shipment-notice { display: grid; grid-template-columns: minmax(220px, 1fr) repeat(2, minmax(150px, .55fr)); gap: 10px; margin-bottom: 10px; padding: 12px 14px; border: 1px solid rgba(65, 229, 176, .28); border-radius: 12px; background: rgba(30, 72, 68, .18); }
.order-shipment-notice > div { display: grid; gap: 4px; }
.order-shipment-notice strong, .order-shipment-notice b { color: #dcfff4; }
.order-shipment-notice span, .order-shipment-notice small { color: var(--muted); font-size: 10px; }
.order-shipment-part { padding-left: 10px; border-left: 1px solid rgba(255,255,255,.1); }
.order-shipment-history { margin: 0 0 10px; padding: 14px 16px; border: 1px solid rgba(126, 154, 255, .22); border-radius: 12px; background: rgba(19, 24, 37, .72); }
.order-shipment-history > strong { color: #eef2ff; font-size: 11px; }
.order-shipment-history ol { display: grid; gap: 0; margin: 12px 0 0; padding: 0; list-style: none; }
.order-shipment-history li { position: relative; display: grid; grid-template-columns: 13px minmax(0, 1fr); gap: 10px; min-height: 40px; }
.order-shipment-history li:not(:last-child)::after { position: absolute; top: 12px; bottom: -2px; left: 5px; width: 1px; background: rgba(126, 154, 255, .28); content: ""; }
.order-shipment-history-dot { position: relative; z-index: 1; width: 11px; height: 11px; border: 2px solid #7185c9; border-radius: 50%; background: #151b29; }
.order-shipment-history li:last-child .order-shipment-history-dot { border-color: #41e5b0; background: #41e5b0; box-shadow: 0 0 10px rgba(65, 229, 176, .4); }
.order-shipment-history li.is-pickup-ready b { color: #72f0c7; }
.order-shipment-history li div { display: grid; gap: 3px; padding-bottom: 10px; }
.order-shipment-history b { color: #dbe3f6; font-size: 10px; }
.order-shipment-history small { color: var(--muted); font-size: 9px; }
@media (max-width: 760px) { .admin-invoice-panel { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .order-shipment-notice { grid-template-columns: 1fr; } .order-shipment-part { padding-top: 8px; padding-left: 0; border-top: 1px solid rgba(255,255,255,.1); border-left: 0; } }

@media (max-width: 1180px) {
  .dashboard-shipment-card { grid-template-columns: 48px minmax(0, 1fr) auto; }
  .dashboard-shipment-details { grid-column: 2 / -1; }
}

@media (max-width: 700px) {
  .dashboard-shipment-card { grid-template-columns: 40px minmax(0, 1fr); gap: 14px; padding: 18px 16px; border-radius: 17px; }
  .dashboard-shipment-icon { width: 40px; height: 40px; border-radius: 12px; font-size: 19px; }
  .dashboard-shipment-title-row { align-items: flex-start; flex-direction: column; gap: 3px; }
  .dashboard-shipment-title-row h2 { font-size: 17px; white-space: normal; }
  .dashboard-shipment-progress { overflow-x: auto; min-width: 0; }
  .dashboard-shipment-progress li { min-width: 78px; }
  .dashboard-shipment-details { grid-column: 1 / -1; grid-template-columns: 1fr; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, .08); }
  .dashboard-shipment-details dd { white-space: normal; }
  .dashboard-shipment-action { grid-column: 1 / -1; width: 100%; }
}
.admin-first-order-confirmation { margin: 0 0 20px; padding: 14px 0; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.55; }
.admin-first-order-confirmation summary { cursor: pointer; font-weight: 650; }
.admin-first-order-confirmation p { margin: 12px 0; overflow-wrap: anywhere; }
.admin-first-order-confirmation label { display: grid; gap: 6px; margin: 12px 0; }
.admin-first-order-confirmation input { width: 100%; min-width: 0; min-height: 44px; }
.admin-first-order-confirmation .button { white-space: normal; }
.admin-fbs-heading,
.admin-fbs-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.admin-fbs-heading h3 { margin: 4px 0 0; color: var(--cream); }
.admin-fbs-mode {
  padding: 7px 10px;
  border: 1px solid rgba(65, 229, 176, 0.3);
  border-radius: 999px;
  color: #bfffee;
  background: rgba(65, 229, 176, 0.08);
  font-size: 9px;
  font-weight: 800;
}
.admin-fbs-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.admin-fbs-checklist label {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
  cursor: pointer;
}
.admin-fbs-checklist input { width: 17px; height: 17px; margin: 1px 0 0; accent-color: var(--green); }
.admin-fbs-checklist span { display: grid; gap: 4px; }
.admin-fbs-checklist b { color: var(--cream); font-size: 11px; }
.admin-fbs-checklist small,
.admin-fbs-actions small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.admin-fbs-actions { margin-top: 12px; }
.admin-fbs-draft-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  margin-top: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.admin-fbs-draft-summary > div { display: grid; gap: 4px; padding: 11px 13px; }
.admin-fbs-draft-summary > div + div { border-left: 1px solid var(--line); }
.admin-fbs-draft-summary span { color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.admin-fbs-draft-summary strong { overflow: hidden; color: var(--cream); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.admin-fbs-draft-rows { display: grid; gap: 6px; margin-top: 10px; }
.admin-fbs-draft-rows > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 9px 11px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.025);
}
.admin-fbs-draft-rows span { overflow: hidden; color: #e6e9f2; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.admin-fbs-draft-rows b { color: var(--green); font-size: 11px; }
.admin-fbs-draft-rows small { color: var(--muted); font-size: 9px; }
.admin-fbs-safe-note { margin: 12px 0 0; color: var(--green); font-size: 9px; line-height: 1.45; }
.admin-ozon-preflight {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(104, 139, 255, 0.28);
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(79, 117, 255, 0.08), rgba(208, 69, 186, 0.045));
}
.admin-ozon-preflight-heading,
.admin-ozon-preflight-split-heading,
.admin-ozon-preflight-plan-heading,
.admin-ozon-preflight-point {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.admin-ozon-preflight-heading h4 { margin: 4px 0 0; color: var(--cream); font-size: 15px; }
.admin-ozon-preflight-heading > span {
  padding: 6px 9px;
  border: 1px solid rgba(65, 229, 176, 0.28);
  border-radius: 999px;
  color: #bfffee;
  background: rgba(65, 229, 176, 0.07);
  font-size: 9px;
  font-weight: 800;
}
.admin-ozon-preflight > p { max-width: 880px; margin: 9px 0 12px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.admin-ozon-preflight-result { display: grid; gap: 12px; margin-top: 13px; }
.admin-ozon-preflight-result[hidden] { display: none; }
.admin-ozon-preflight-point {
  align-items: flex-start;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.025);
}
.admin-ozon-preflight-point > div { display: grid; gap: 4px; }
.admin-ozon-preflight-point span,
.admin-ozon-preflight-point small { color: var(--muted); font-size: 9px; }
.admin-ozon-preflight-point strong { color: var(--cream); font-size: 11px; }
.admin-ozon-preflight-plans { display: grid; gap: 10px; }
.admin-ozon-preflight-plan { padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: rgba(8, 11, 17, 0.46); }
.admin-ozon-preflight-plan-heading > div { display: grid; gap: 3px; }
.admin-ozon-preflight-plan-heading span { color: #aebcff; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.admin-ozon-preflight-plan-heading strong { color: var(--cream); font-size: 12px; }
.admin-ozon-preflight-plan-heading > b { font-size: 11px; }
.admin-ozon-preflight-plan-heading > b.is-available { color: var(--green); }
.admin-ozon-preflight-plan-heading > b.is-unavailable { color: var(--gold); }
.admin-ozon-preflight-price { display: flex; align-items: baseline; gap: 9px; margin: 10px 0 0; }
.admin-ozon-preflight-price strong { color: var(--cream); font-size: 15px; }
.admin-ozon-preflight-price span { color: var(--muted); font-size: 9px; line-height: 1.45; }
.admin-ozon-preflight-splits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 10px; }
.admin-ozon-preflight-split { padding: 11px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255, 255, 255, 0.02); }
.admin-ozon-preflight-split.is-available { border-color: rgba(65, 229, 176, 0.2); }
.admin-ozon-preflight-split.is-unavailable { border-color: rgba(197, 161, 92, 0.3); }
.admin-ozon-preflight-split-heading strong { color: var(--cream); font-size: 10px; }
.admin-ozon-preflight-split-heading span { color: #aebcff; font-size: 10px; font-weight: 900; }
.admin-ozon-preflight-split dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 9px 0; }
.admin-ozon-preflight-split dl > div { display: grid; gap: 3px; }
.admin-ozon-preflight-split dt { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.admin-ozon-preflight-split dd { overflow: hidden; margin: 0; color: #e7eaf3; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.admin-ozon-preflight-items,
.admin-ozon-preflight-timeslots { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.admin-ozon-preflight-items span,
.admin-ozon-preflight-timeslots span {
  padding: 5px 7px;
  border-radius: 7px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.035);
  font-size: 8px;
}
.admin-ozon-preflight-items b { color: var(--cream); }
.admin-ozon-preflight-split > small { color: var(--muted); font-size: 8px; }
.admin-ozon-preflight-warning { margin: 0; color: var(--gold); font-size: 9px; line-height: 1.5; }
.admin-ozon-workflow { display: grid; gap: 10px; margin-top: 13px; padding-top: 13px; border-top: 1px solid var(--line); }
.admin-ozon-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 9px; padding: 12px; border: 1px solid rgba(95, 114, 255, .22); border-radius: 12px; background: rgba(55, 68, 139, .08); }
.admin-ozon-actions > small { flex-basis: 100%; color: var(--muted); font-size: 9px; line-height: 1.45; }
.admin-ozon-confirm { display: grid; flex: 1 1 260px; gap: 5px; }
.admin-ozon-confirm span { color: var(--muted); font-size: 9px; }
.admin-ozon-confirm input { width: 100%; padding: 10px 12px; border: 1px solid var(--line); border-radius: 9px; color: var(--cream); background: rgba(255,255,255,.04); }
.admin-ozon-state { display: grid; gap: 4px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; }
.admin-ozon-state strong { color: var(--cream); font-size: 11px; }
.admin-ozon-state span { color: var(--muted); font-size: 9px; line-height: 1.4; }
.admin-ozon-state.is-created { border-color: rgba(65, 229, 176, .3); background: rgba(65, 229, 176, .06); }
.admin-ozon-state.is-warning { border-color: rgba(197, 161, 92, .35); background: rgba(197, 161, 92, .06); }
.admin-ozon-next-steps > .admin-ozon-state { flex: 1 1 220px; }
.admin-ozon-act-artifacts { display: flex; flex: 1 1 100%; flex-wrap: wrap; align-items: center; gap: 8px; }
.admin-ozon-barcode { display: grid; gap: 2px; min-width: 190px; padding: 8px 10px; border: 1px solid rgba(93, 214, 255, .24); border-radius: 9px; background: rgba(18, 164, 224, .06); }
.admin-ozon-barcode small { color: var(--muted); font-size: 8px; }
.admin-ozon-barcode strong { color: var(--cream); font: 700 11px/1.35 ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; }
.admin-empty-state { padding: 30px; border: 1px dashed var(--line); border-radius: 18px; color: var(--muted); text-align: center; }

.admin-attention {
  display: grid;
  gap: 12px;
  margin: 4px 0 16px;
  padding: 16px;
  border: 1px solid rgba(126, 154, 255, .2);
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(79, 117, 255, .08), rgba(208, 69, 186, .035) 58%, rgba(15, 18, 25, .9));
}
.admin-attention-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; }
.admin-attention-heading h2 { margin: 3px 0 0; color: var(--cream); font-size: 19px; }
.admin-attention-heading > strong { color: var(--cream); font-size: 30px; line-height: 1; }
.admin-attention-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
.admin-attention-card {
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: inherit;
  background: rgba(10, 12, 18, .66);
  cursor: pointer;
  text-align: left;
}
.admin-attention-card > span { display: grid; gap: 5px; }
.admin-attention-card strong { color: var(--cream); font-size: 12px; }
.admin-attention-card small { color: var(--muted); font-size: 9px; line-height: 1.35; }
.admin-attention-card b { display: grid; min-width: 35px; height: 35px; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(135deg, #4f75ff, #d045ba); font-size: 16px; }
.admin-attention-card:hover, .admin-attention-card.is-active { border-color: rgba(126, 154, 255, .5); background: rgba(79, 117, 255, .11); }
.admin-attention-card.is-empty { opacity: .52; }

.admin-order-tools {
  display: grid;
  grid-template-columns: minmax(240px, 340px) minmax(0, 1fr);
  align-items: end;
  gap: 14px;
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(15, 18, 25, 0.86);
}
.admin-order-search { display: grid; gap: 7px; }
.admin-order-search > span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.admin-order-search input { min-height: 44px; padding: 0 13px; }
.admin-order-filters { display: flex; min-width: 0; flex-wrap: wrap; gap: 7px; }
.admin-order-filter {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--muted);
  background: rgba(255, 255, 255, .022);
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
}
.admin-order-filter b { display: grid; min-width: 20px; height: 20px; place-items: center; border-radius: 999px; color: #cbd5f3; background: rgba(126, 154, 255, .12); font-size: 9px; }
.admin-order-filter:hover { color: var(--cream); background: rgba(255, 255, 255, .045); }
.admin-order-filter.is-active { border-color: rgba(126, 154, 255, .42); color: #fff; background: linear-gradient(135deg, rgba(79, 117, 255, .2), rgba(208, 69, 186, .13)); }

.admin-order-card { overflow: hidden; padding: 0; transition: border-color 180ms ease, background 180ms ease; }
.admin-order-card.is-expanded { border-color: rgba(126, 154, 255, .28); }
.admin-order-summary {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(280px, 1.25fr) minmax(240px, .9fr) auto 72px;
  align-items: center;
  gap: 18px;
  padding: 16px 18px;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
  text-align: left;
}
.admin-order-summary:hover { background: linear-gradient(90deg, rgba(79, 117, 255, .055), rgba(208, 69, 186, .035)); }
.admin-order-summary-main { display: grid; min-width: 0; gap: 4px; }
.admin-order-stage { width: fit-content; padding: 4px 7px; border: 1px solid rgba(126, 154, 255, .26); border-radius: 999px; color: #bdc9f5; background: rgba(79, 117, 255, .08); font-size: 9px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.admin-order-card[data-order-stage="ready"] .admin-order-stage,
.admin-order-card[data-order-stage="draft"] .admin-order-stage { border-color: rgba(85, 214, 169, .3); color: #bff7e4; background: rgba(85, 214, 169, .08); }
.admin-order-card[data-order-stage="invoice"] .admin-order-stage,
.admin-order-card[data-order-stage="payment"] .admin-order-stage { border-color: rgba(197, 161, 92, .34); color: #eed8a9; background: rgba(197, 161, 92, .09); }
.admin-order-number { overflow: hidden; color: var(--cream); font-size: 17px; text-overflow: ellipsis; white-space: nowrap; }
.admin-order-company { overflow: hidden; color: var(--muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.admin-order-next-action { margin-top: 3px; color: #c8d2ff; font-size: 10px; font-weight: 750; line-height: 1.35; }
.admin-order-next-action::before { margin-right: 6px; color: #6e91ff; content: "Следующий шаг:"; }
.admin-order-compact-meta { display: flex; min-width: 0; flex-wrap: wrap; gap: 7px 12px; color: var(--muted); font-size: 11px; }
.admin-order-compact-meta span:not(:last-child)::after { margin-left: 12px; color: #535b6b; content: "·"; }
.admin-order-summary .admin-order-total { min-width: 112px; }
.admin-order-summary .admin-order-total strong { font-size: 19px; }
.admin-order-summary .admin-order-total span { color: var(--muted); font-size: 10px; }
.admin-order-toggle-label { justify-self: end; color: #aebcff; font-size: 10px; font-weight: 850; }
.admin-order-toggle-label::after { display: inline-block; margin-left: 6px; content: "↓"; transition: transform 160ms ease; }
.admin-order-card.is-expanded .admin-order-toggle-label::after { transform: rotate(180deg); }
.admin-order-details { padding: 0 18px 18px; border-top: 1px solid var(--line); }
.admin-order-details[hidden] { display: none; }
.admin-order-delivery-panel { display: grid; grid-template-columns: minmax(120px, .45fr) minmax(220px, 1fr); gap: 5px 18px; align-items: center; margin-top: 16px; padding: 14px 16px; border: 1px solid rgba(138, 98, 255, .3); border-radius: 14px; background: linear-gradient(135deg, rgba(138, 98, 255, .09), rgba(255, 207, 51, .04)); }
.admin-order-delivery-panel > span { grid-row: 1 / 3; color: #b9c3ff; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.admin-order-delivery-panel strong { color: var(--cream); }
.admin-order-delivery-panel small { color: var(--muted); }
.admin-order-empty-filter { padding: 32px 20px; border: 1px dashed var(--line); border-radius: 17px; color: var(--muted); text-align: center; }
.admin-invoice-error { grid-column: 1 / -1; margin: 2px 0 0; padding: 10px 12px; border: 1px solid rgba(255, 107, 120, .28); border-radius: 10px; color: #ffadb5; background: rgba(255, 107, 120, .07); font-size: 11px; line-height: 1.45; }
.admin-tab-count { display: inline-grid; min-width: 20px; height: 20px; margin-left: 5px; padding: 0 6px; place-items: center; border-radius: 999px; color: #fff; background: #e84972; font-size: 10px; line-height: 1; }
.admin-tab-count[hidden] { display: none; }
.admin-access-section { margin-top: 16px; padding: 18px; border: 1px solid #dce5f0; border-radius: 20px; color: #172033; background: #f5f8fc; box-shadow: 0 18px 50px rgba(15, 35, 67, .12); }
.admin-access-section .admin-access-hero { margin: 0; border: 1px solid #dce5f0; background: #fff; }
.admin-access-section .eyebrow { color: #315bea; }
.admin-access-section .admin-hero h1 { color: #101828; }
.admin-access-section .admin-hero p,
.admin-access-section .admin-status { color: #64748b; }
.admin-access-section .button-secondary { border-color: #c8d3e2; color: #334155; background: #fff; }
.admin-access-guidance { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 14px 0; padding: 14px 16px; border: 1px solid #b9c9fa; border-radius: 14px; color: #2948a6; background: #edf2ff; }
.admin-access-guidance b { font-size: 13px; }
.admin-access-guidance span { color: #526580; font-size: 11px; }
.admin-access-list { display: grid; gap: 12px; }
.admin-access-card { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 22px; padding: 20px; border: 1px solid #d9e2ee; border-left: 5px solid #315bea; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(30, 50, 85, .08); }
.admin-access-card h2 { margin: 8px 0 14px; color: #172033; font-size: 21px; }
.admin-access-state { display: inline-flex; padding: 5px 9px; border-radius: 999px; color: #087557; background: #e7f8f1; font-size: 9px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.admin-access-details { display: grid; grid-template-columns: repeat(3, minmax(120px, 1fr)); gap: 12px 18px; margin: 0; }
.admin-access-details div { min-width: 0; }
.admin-access-details dt { margin-bottom: 3px; color: #8490a3; font-size: 9px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.admin-access-details dd { overflow-wrap: anywhere; margin: 0; color: #334155; font-size: 12px; font-weight: 700; }
.admin-access-actions { display: grid; align-content: center; gap: 9px; padding-left: 20px; border-left: 1px solid #e5eaf1; }
.admin-access-actions .button { width: 100%; }
.admin-access-actions small { color: #7b879a; font-size: 9px; line-height: 1.45; text-align: center; }
.admin-access-reject { color: #b4234e !important; }
.admin-access-empty { display: grid; gap: 5px; padding: 34px 20px; border: 1px dashed #bfcbdc; border-radius: 16px; color: #64748b; background: #fff; text-align: center; }
.admin-access-empty strong { color: #1e293b; font-size: 17px; }

@media (max-width: 760px) {
  .admin-access-section { padding: 10px; border-radius: 16px; }
  .admin-access-guidance { align-items: flex-start; flex-direction: column; }
  .admin-access-card { grid-template-columns: 1fr; padding: 15px; }
  .admin-access-details { grid-template-columns: 1fr 1fr; }
  .admin-access-actions { padding-top: 14px; padding-left: 0; border-top: 1px solid #e5eaf1; border-left: 0; }
  .cabinet-navigation { top: 68px; }
  .admin-order-tools { grid-template-columns: 1fr; }
  .admin-attention-grid { grid-template-columns: 1fr 1fr; }
  .admin-order-filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; }
  .admin-order-filter { flex: 0 0 auto; }
  .admin-order-summary { grid-template-columns: minmax(0, 1fr) auto; gap: 10px 14px; padding: 14px; }
  .admin-order-compact-meta { grid-column: 1 / -1; }
  .admin-order-summary .admin-order-total { grid-column: 2; grid-row: 1; align-self: start; }
  .admin-order-toggle-label { grid-column: 1 / -1; justify-self: start; }
  .admin-order-details { padding: 0 12px 12px; }
  .admin-fbo-product-main { grid-template-columns: 1fr; }
  .admin-fbo-quantity-grid { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-fbo-quantity-grid > div:nth-child(3),
  .admin-fbo-quantity-grid > label:nth-child(3) { border-left: 0; }
  .admin-fbo-quantity-grid > div:nth-child(n+3),
  .admin-fbo-quantity-grid > label:nth-child(n+3) { border-top: 1px solid var(--line); }
  .admin-fbs-checklist,
  .admin-fbs-draft-summary { grid-template-columns: 1fr; }
  .admin-fbs-draft-summary > div + div { border-top: 1px solid var(--line); border-left: 0; }
  .admin-fbs-heading,
  .admin-fbs-actions,
  .admin-ozon-preflight-heading,
  .admin-ozon-preflight-point { align-items: stretch; flex-direction: column; }
  .admin-fbs-draft-rows > div { grid-template-columns: 1fr auto; }
  .admin-fbs-draft-rows small { grid-column: 1 / -1; }
  .admin-ozon-preflight-splits { grid-template-columns: 1fr; }
  .admin-ozon-preflight-plan-heading { align-items: flex-start; }
  .admin-ozon-preflight-split dl { grid-template-columns: 1fr; }
  .admin-invoice-panel small,
  .admin-invoice-error { grid-column: auto; }
}

@media (max-width: 1000px) {
  .dashboard-order-steps { display: flex; overflow-x: auto; padding-bottom: 3px; border: 0; border-radius: 0; background: none; scroll-snap-type: x proximity; }
  .dashboard-order-steps li { flex: 0 0 210px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, 0.018); scroll-snap-align: start; }
  .dashboard-order-steps li + li { border-left: 1px solid var(--line); }
  .dashboard-assistance { grid-template-columns: 1fr; }
  .order-history-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .order-history-actions { grid-column: 1 / -1; }
  .company-profile-card { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .company-preferences-card { grid-template-columns: 1fr 1fr; }
  .company-preferences-card > div { grid-column: 1 / -1; }
  .company-preferences-status { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .dashboard-command-center { grid-template-columns: 1fr; min-height: 0; }
  .dashboard-latest-card { min-height: 176px; }
}

@media (max-width: 760px) {
  .access-support-card { grid-template-columns: auto minmax(0, 1fr); }
  .access-support-card .button { grid-column: 1 / -1; width: 100%; }
  .cabinet-navigation-inner { width: 100%; padding: 0 8px; }
  .cabinet-navigation-button { min-height: 50px; padding: 0 12px; }
  .cabinet-main { padding-top: 16px; }
  .dashboard-command-center { padding: 24px 20px; border-radius: 20px; }
  .dashboard-command-center h1, .cabinet-page-heading h1 { font-size: 36px; }
  .dashboard-command-copy > p:not(.dashboard-minimum) { font-size: 13px; }
  .dashboard-primary-action { align-items: stretch; flex-direction: column; }
  .dashboard-start-button { width: 100%; min-width: 0; }
  .dashboard-draft-summary { min-width: 0; }
  .dashboard-hero-badges { margin-top: 17px; }
  .dashboard-latest-card { min-height: 176px; padding: 20px; }
  .dashboard-order-guide { padding: 20px 16px; }
  .dashboard-order-guide-heading { align-items: flex-start; flex-direction: column; gap: 4px; }
  .dashboard-order-steps { margin-top: 14px; }
  .dashboard-order-steps li { flex-basis: 195px; }
  .dashboard-company-summary strong,
  .dashboard-company-summary small,
  .dashboard-support-action strong,
  .dashboard-support-action small { white-space: normal; }
  .company-profile-card { grid-template-columns: 1fr; }
  .company-preferences-card { grid-template-columns: 1fr; padding: 18px; }
  .company-preferences-card > div,
  .company-preferences-status { grid-column: auto; }
  .cabinet-page-heading { align-items: flex-start; flex-direction: column; }
  .order-history-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .order-history-summary > div:first-child { grid-column: 1 / -1; }
  .order-history-row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; font-size: 11px; }
  .order-history-row span:first-child { grid-column: 1 / -1; padding-bottom: 3px; }
  .order-history-row span:not(:first-child) { display: grid; gap: 3px; text-align: left; }
  .order-history-row span:nth-child(2)::before,
  .order-history-row span:nth-child(3)::before,
  .order-history-row span:nth-child(4)::before { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
  .order-history-row span:nth-child(2)::before { content: "Количество"; }
  .order-history-row span:nth-child(3)::before { content: "Цена"; }
  .order-history-row span:nth-child(4)::before { content: "Сумма"; }
  .chat-message { width: 88%; }
  .widget-chat-card { grid-template-columns: auto 1fr; }
  .widget-chat-card .button { grid-column: 1 / -1; width: 100%; }
  .order-contact-grid { grid-template-columns: 1fr; }
  .bank-details-grid { grid-template-columns: 1fr; }
  .request-form-body { padding-right: 18px; padding-left: 18px; }
  .request-card .modal-actions { padding-right: 18px; padding-left: 18px; }
  .delivery-pickup-heading { align-items: stretch; flex-direction: column; }
  .delivery-pickup-view-switch { align-self: stretch; }
  .delivery-pickup-view-button { flex: 1; }
  .delivery-pickup-map { height: 300px; }
}

.info-view { display: grid; gap: 18px; }
.info-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 390px;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 24px;
  background:
    radial-gradient(circle at 10% 10%, rgba(79, 117, 255, .16), transparent 38%),
    radial-gradient(circle at 96% 92%, rgba(215, 60, 173, .16), transparent 40%),
    #0d1119;
  box-shadow: 0 26px 70px rgba(0, 0, 0, .34);
}
.info-hero-copy { display: grid; align-content: center; justify-items: start; padding: clamp(30px, 5vw, 62px); }
.info-hero-copy h1 { max-width: 760px; margin-top: 8px; color: var(--cream); font-size: clamp(38px, 5vw, 66px); line-height: .98; letter-spacing: -.045em; }
.info-hero-copy > p { max-width: 720px; margin-top: 20px; color: #b5bdcc; font-size: 15px; line-height: 1.65; }
.info-hero-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.info-hero-actions .button { min-height: 48px; padding-right: 20px; padding-left: 20px; }
.info-hero-media { position: relative; min-height: 390px; overflow: hidden; border-left: 1px solid rgba(255, 255, 255, .1); background: #f5f6f8; }
.info-hero-media::after { position: absolute; inset: 0; border: 1px solid rgba(255, 255, 255, .06); content: ""; pointer-events: none; }
.info-hero-media > img { width: 100%; height: 100%; object-fit: contain; }
.info-hero-media-cover > img { object-fit: cover; }
.info-hero-media-dark { background: #050607; }
.info-media-caption { position: absolute; right: 20px; bottom: 20px; left: 20px; display: grid; gap: 4px; padding: 15px 17px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 14px; background: rgba(7, 10, 16, .82); box-shadow: 0 14px 36px rgba(0, 0, 0, .28); backdrop-filter: blur(18px); }
.info-media-caption span { color: #aeb9dc; font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.info-media-caption strong { color: var(--cream); font-size: 15px; line-height: 1.35; }
.info-hero-payment { border-color: rgba(93, 132, 255, .24); }
.info-hero-payment { min-height: 310px; grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); }
.info-hero-payment .info-hero-copy { padding: 34px clamp(30px, 4vw, 48px); }
.info-hero-payment .info-hero-copy h1 { max-width: 620px; font-size: clamp(38px, 4.2vw, 56px); }
.info-hero-payment .info-hero-copy > p { margin-top: 15px; }
.info-hero-payment .info-hero-actions { margin-top: 21px; }
.info-hero-payment .info-hero-media { min-height: 310px; }
.info-hero-media-payment {
  isolation: isolate;
  background:
    radial-gradient(circle at 78% 18%, rgba(87, 123, 255, .26), transparent 34%),
    radial-gradient(circle at 28% 88%, rgba(219, 62, 175, .22), transparent 38%),
    linear-gradient(145deg, #10172a 0%, #151827 44%, #29182b 100%);
}
.info-hero-media-payment::before {
  position: absolute;
  inset: -12%;
  z-index: -1;
  background:
    linear-gradient(120deg, transparent 18%, rgba(255, 255, 255, .055) 35%, transparent 53%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, .018) 0 1px, transparent 1px 46px);
  content: "";
  filter: blur(8px);
  transform: rotate(-4deg);
}
.payment-media-glow { position: absolute; inset: 14% 8% 17%; border-radius: 50%; background: rgba(113, 113, 255, .2); filter: blur(52px); }
.payment-document {
  position: absolute;
  top: 24px;
  right: 17%;
  width: min(72%, 420px);
  height: 230px;
  padding: 25px 27px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 9px;
  color: #2b3140;
  background: linear-gradient(145deg, #fff 0%, #eef1f7 100%);
  box-shadow: 0 28px 55px rgba(0, 0, 0, .42);
  filter: blur(.45px);
  transform: rotate(-4deg);
}
.payment-document-heading { display: flex; align-items: center; gap: 12px; padding-bottom: 15px; border-bottom: 2px solid #252b38; }
.payment-document-heading > div { display: grid; gap: 3px; }
.payment-document-heading strong { font-size: 15px; letter-spacing: .03em; }
.payment-document-heading span { color: #747b89; font-size: 7px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.payment-document-mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 8px; color: #fff !important; background: linear-gradient(135deg, #4f75ff, #d73cad); font-size: 11px !important; font-weight: 900; }
.payment-document-requisites { display: grid; gap: 6px; margin-top: 15px; }
.payment-document-requisites i, .payment-document-total span { display: block; height: 5px; border-radius: 6px; background: #bdc3cf; }
.payment-document-requisites i:nth-child(1) { width: 75%; }
.payment-document-requisites i:nth-child(2) { width: 91%; }
.payment-document-requisites i:nth-child(3) { width: 58%; }
.payment-document-table { display: grid; grid-template-columns: 1.6fr .55fr .7fr; gap: 3px; margin-top: 17px; padding: 3px; border: 1px solid #aeb5c2; }
.payment-document-table span { height: 17px; background: #d8dce4; }
.payment-document-table span:nth-child(-n+3) { height: 10px; background: #aeb5c2; }
.payment-document-total { display: flex; align-items: center; justify-content: flex-end; gap: 13px; margin-top: 13px; }
.payment-document-total span { width: 54px; }
.payment-document-total strong { font-size: 12px; }
.payment-qr-card {
  position: absolute;
  top: 61px;
  right: 6%;
  display: grid;
  width: 128px;
  justify-items: center;
  gap: 8px;
  padding: 13px 13px 15px;
  border: 1px solid rgba(255, 255, 255, .76);
  border-radius: 13px;
  color: #202633;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 22px 42px rgba(0, 0, 0, .4);
  filter: blur(.3px);
  transform: rotate(5deg);
}
.payment-qr-card > span { color: #737b8b; font-size: 7px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.payment-qr-card > strong { font-size: 11px; }
.payment-qr-code { position: relative; width: 88px; height: 88px; border: 7px solid #fff; background: repeating-conic-gradient(#151a24 0 25%, #fff 0 50%) 0 / 14px 14px; box-shadow: 0 0 0 1px #d6d9df; }
.payment-qr-code i { position: absolute; width: 24px; height: 24px; border: 6px solid #151a24; background: #fff; box-shadow: inset 0 0 0 4px #fff, inset 0 0 0 8px #151a24; }
.payment-qr-code i:nth-child(1) { top: 0; left: 0; }
.payment-qr-code i:nth-child(2) { top: 0; right: 0; }
.payment-qr-code i:nth-child(3) { bottom: 0; left: 0; }
.info-hero-media-payment .info-media-caption { right: 16px; bottom: 14px; left: 16px; padding: 11px 14px; }
.info-hero-delivery { min-height: 310px; grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); border-color: rgba(226, 174, 81, .25); }
.info-hero-delivery .info-hero-copy { padding: 34px clamp(30px, 4vw, 48px); }
.info-hero-delivery .info-hero-copy h1 { max-width: 650px; font-size: clamp(38px, 4.2vw, 56px); }
.info-hero-delivery .info-hero-copy > p { margin-top: 15px; }
.info-hero-delivery .info-hero-actions { margin-top: 21px; }
.info-hero-delivery .info-hero-media { min-height: 310px; }
.info-hero-media-delivery { isolation: isolate; background: #0b101d; }
.info-hero-media-delivery > img { object-position: 62% 58%; filter: blur(1px) saturate(.88) brightness(.78); transform: scale(1.035); }
.info-hero-media-delivery::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7, 11, 20, .22), transparent 34%),
    linear-gradient(180deg, rgba(7, 11, 20, .08) 35%, rgba(7, 11, 20, .42) 100%);
  content: "";
  pointer-events: none;
}
.info-hero-media-delivery .info-media-caption { z-index: 2; right: 16px; bottom: 14px; left: 16px; padding: 11px 14px; }
.info-hero-warranty { min-height: 310px; grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); border-color: rgba(65, 229, 176, .23); }
.info-hero-warranty .info-hero-copy { padding: 34px clamp(30px, 4vw, 48px); }
.info-hero-warranty .info-hero-copy h1 { max-width: 650px; font-size: clamp(38px, 4.2vw, 56px); }
.info-hero-warranty .info-hero-copy > p { margin-top: 15px; }
.info-hero-warranty .info-hero-actions { margin-top: 21px; }
.info-hero-warranty .info-hero-media { min-height: 310px; }
.info-hero-media-warranty { isolation: isolate; background: #050a15; }
.info-hero-media-warranty > img { object-position: 65% 50%; filter: saturate(.92) brightness(.78); transform: scale(1.025); }
.info-hero-media-warranty::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(5, 9, 18, .22), transparent 34%),
    linear-gradient(180deg, rgba(5, 9, 18, .02) 35%, rgba(5, 9, 18, .46) 100%);
  content: "";
  pointer-events: none;
}
.warranty-hero-title {
  position: absolute;
  top: 44%;
  left: 65.5%;
  z-index: 2;
  display: grid;
  min-width: 190px;
  justify-items: center;
  gap: 2px;
  color: #f8fbff;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 3px 22px rgba(0, 0, 0, .78), 0 0 30px rgba(92, 160, 255, .32);
  transform: translate(-50%, -50%);
}
.warranty-hero-title span { font-size: 12px; font-weight: 900; letter-spacing: .2em; }
.warranty-hero-title strong { font-size: clamp(34px, 3.4vw, 48px); line-height: 1; letter-spacing: -.035em; }
.info-hero-media-warranty .info-media-caption { z-index: 2; right: 16px; bottom: 14px; left: 16px; padding: 11px 14px; }

.info-key-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: rgba(14, 17, 25, .96); box-shadow: var(--shadow); }
.info-key-facts > div { display: grid; min-height: 92px; align-content: center; gap: 7px; padding: 18px 22px; }
.info-key-facts > div + div { border-left: 1px solid var(--line); }
.info-key-facts span { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.info-key-facts strong { color: var(--cream); font-size: 14px; line-height: 1.4; }

.info-section, .info-faq { padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: rgba(14, 17, 25, .96); box-shadow: var(--shadow); }
.info-section-heading { max-width: 780px; }
.info-section-heading h2 { margin-top: 6px; color: var(--cream); font-size: clamp(22px, 3vw, 32px); }
.info-section-heading p { margin-top: 8px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.info-flow { display: grid; margin: 22px 0 0; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, .015); list-style: none; }
.info-flow-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.info-flow li { display: grid; min-width: 0; grid-template-columns: 34px minmax(0, 1fr); align-content: start; gap: 12px; padding: 20px; }
.info-flow li + li { border-left: 1px solid var(--line); }
.info-flow li > span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(126, 154, 255, .42); border-radius: 50%; color: #c7d2ff; background: rgba(79, 117, 255, .12); font-size: 12px; font-weight: 900; }
.info-flow li > div { display: grid; gap: 6px; }
.info-flow strong { color: var(--cream); font-size: 13px; line-height: 1.35; }
.info-flow p { color: var(--muted); font-size: 10px; line-height: 1.55; }

.info-options-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.warranty-checklist-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.info-option-card, .warranty-checklist { position: relative; overflow: hidden; padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: rgba(14, 17, 25, .96); box-shadow: var(--shadow); }
.info-option-card::before, .warranty-checklist::before { position: absolute; top: 0; right: 0; left: 0; height: 3px; background: linear-gradient(90deg, #4f75ff, #d73cad); content: ""; }
.info-option-accent-pink::before { background: linear-gradient(90deg, #a95eff, #e541ad); }
.info-option-accent-violet::before { background: linear-gradient(90deg, #ffcf33, #ff5b45, #8a62ff); }
.info-option-accent-gold::before, .warranty-checklist-warning::before { background: linear-gradient(90deg, #d8993e, #f2cf78); }
.info-option-label { color: #aebcff; font-size: 9px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.info-option-card h2, .warranty-checklist h2 { margin-top: 8px; color: var(--cream); font-size: 24px; }
.info-option-card > p { margin-top: 9px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.info-option-card ul, .warranty-checklist ul { display: grid; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
.info-option-card li, .warranty-checklist li { position: relative; padding-left: 20px; color: #c2c8d3; font-size: 11px; line-height: 1.55; }
.info-option-card li::before, .warranty-checklist li::before { position: absolute; top: .55em; left: 2px; width: 7px; height: 7px; border-radius: 50%; background: linear-gradient(135deg, #6685ff, #d84bb6); box-shadow: 0 0 12px rgba(99, 132, 255, .36); content: ""; }
.info-option-accent-violet li::before { background: linear-gradient(135deg, #ffcf33, #8a62ff); box-shadow: 0 0 12px rgba(138, 98, 255, .4); }
.info-option-accent-gold li::before, .warranty-checklist-warning li::before { background: var(--gold); box-shadow: 0 0 12px rgba(226, 174, 81, .3); }

.info-notice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.info-notice-grid article { padding: 22px; border: 1px solid var(--line); border-radius: 17px; background: rgba(14, 17, 25, .92); }
.info-notice-grid span { color: #aebcff; font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.info-notice-grid h3 { margin-top: 8px; color: var(--cream); font-size: 16px; }
.info-notice-grid p { margin-top: 9px; color: var(--muted); font-size: 10px; line-height: 1.6; }

.info-faq { display: grid; gap: 8px; }
.info-faq .info-section-heading { margin-bottom: 10px; }
.info-faq details { border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, .018); }
.info-faq summary { position: relative; padding: 16px 46px 16px 17px; color: var(--cream); font-size: 12px; font-weight: 800; cursor: pointer; list-style: none; }
.info-faq summary::-webkit-details-marker { display: none; }
.info-faq summary::after { position: absolute; top: 50%; right: 18px; color: #aebcff; font-size: 18px; content: "+"; transform: translateY(-50%); }
.info-faq details[open] summary::after { content: "−"; }
.info-faq details p { padding: 0 17px 17px; color: var(--muted); font-size: 11px; line-height: 1.65; }

@media (max-width: 1100px) {
  .info-hero { grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr); }
  .info-hero-payment { grid-template-columns: minmax(0, 1fr) minmax(330px, .72fr); }
  .info-hero-delivery { grid-template-columns: minmax(0, 1fr) minmax(330px, .72fr); }
  .info-hero-warranty { grid-template-columns: minmax(0, 1fr) minmax(330px, .72fr); }
  .info-flow-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .info-flow li:nth-child(3) { border-top: 1px solid var(--line); border-left: 0; }
  .info-flow li:nth-child(4) { border-top: 1px solid var(--line); }
  .info-key-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .info-key-facts > div:nth-child(3) { border-top: 1px solid var(--line); border-left: 0; }
  .info-key-facts > div:nth-child(4) { border-top: 1px solid var(--line); }
}

@media (max-width: 760px) {
  .info-view { gap: 12px; }
  .info-hero { grid-template-columns: 1fr; min-height: 0; border-radius: 20px; }
  .info-hero-copy { padding: 26px 20px; }
  .info-hero-copy h1 { font-size: 40px; }
  .info-hero-copy > p { margin-top: 15px; font-size: 13px; }
  .info-hero-actions { align-items: stretch; flex-direction: column; width: 100%; margin-top: 22px; }
  .info-hero-actions .button { width: 100%; }
  .info-hero-media { min-height: 290px; border-top: 1px solid rgba(255, 255, 255, .1); border-left: 0; }
  .info-hero-payment .info-hero-copy { padding: 24px 20px; }
  .info-hero-payment .info-hero-copy h1 { font-size: 38px; }
  .info-hero-payment .info-hero-media { min-height: 245px; }
  .payment-document { top: 18px; right: 14%; height: 190px; padding: 19px 21px; }
  .payment-qr-card { top: 43px; right: 5%; width: 108px; padding: 10px; }
  .payment-qr-code { width: 70px; height: 70px; background-size: 12px 12px; }
  .payment-qr-code i { width: 20px; height: 20px; border-width: 5px; }
  .info-hero-delivery .info-hero-copy { padding: 24px 20px; }
  .info-hero-delivery .info-hero-copy h1 { font-size: 38px; }
  .info-hero-delivery .info-hero-media { min-height: 245px; }
  .info-hero-warranty .info-hero-copy { padding: 24px 20px; }
  .info-hero-warranty .info-hero-copy h1 { font-size: 38px; }
  .info-hero-warranty .info-hero-media { min-height: 245px; }
  .warranty-hero-title { top: 44%; left: 65.5%; min-width: 150px; }
  .warranty-hero-title strong { font-size: 34px; }
  .info-key-facts, .info-options-grid, .warranty-checklist-grid, .info-notice-grid { grid-template-columns: 1fr; }
  .info-key-facts > div + div { border-top: 1px solid var(--line); border-left: 0; }
  .info-key-facts > div { min-height: 78px; }
  .info-section, .info-faq, .info-option-card, .warranty-checklist { padding: 20px 17px; }
  .info-flow-four { grid-template-columns: 1fr; }
  .info-flow li + li, .info-flow li:nth-child(4) { border-top: 1px solid var(--line); border-left: 0; }
}
.admin-fbs-panel.is-linked-target {
  animation: linked-shipment-target 2.4s ease-out;
}

@keyframes linked-shipment-target {
  0%, 35% {
    border-color: rgba(92, 227, 187, 0.95);
    box-shadow: 0 0 0 3px rgba(92, 227, 187, 0.18), 0 0 34px rgba(72, 115, 255, 0.22);
  }
  100% {
    box-shadow: none;
  }
}

/* Светлое рабочее место отгрузок: отдельная тема только для раздела менеджера. */
.admin-shipments-mode {
  background: #eef3f8;
}
.admin-shipments-mode .admin-main {
  max-width: 1680px;
}
.admin-shipments-mode .admin-section-tabs {
  border-color: #dbe3ef;
  background: #fff;
  box-shadow: 0 8px 28px rgba(27, 45, 74, .07);
}
.admin-shipments-mode .admin-section-tab { color: #64748b; }
.admin-shipments-mode .admin-section-tab:hover { color: #172033; background: #f1f5f9; }
.admin-shipments-mode .admin-section-tab.is-active {
  color: #fff;
  background: linear-gradient(135deg, #315bea, #7147d9);
  box-shadow: 0 7px 20px rgba(49, 91, 234, .22);
}
.admin-shipments-section {
  --cream: #172033;
  --muted: #64748b;
  --line: #dbe3ef;
  --surface: #fff;
  color: #172033;
  padding: 22px;
  border: 1px solid #dbe3ef;
  border-radius: 22px;
  background: #f5f8fc;
  box-shadow: 0 18px 50px rgba(33, 50, 79, .08);
}
.admin-shipments-section .eyebrow { color: #315bea; }
.admin-shipments-hero {
  min-height: 0;
  padding: 22px 24px;
  border: 1px solid #dce5f2;
  border-radius: 17px;
  background: #fff;
  box-shadow: none;
}
.admin-shipments-hero h1 { margin: 5px 0 6px; color: #101828; font-size: clamp(30px, 4vw, 46px); }
.admin-shipments-hero p { max-width: 720px; margin: 0; color: #64748b; font-size: 13px; }
.admin-shipments-section .button-secondary {
  border-color: #cbd6e6;
  color: #334155;
  background: #fff;
}
.admin-shipments-section .button-secondary:hover { border-color: #315bea; color: #2146c7; background: #f4f7ff; }
.admin-workflow-map {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
  margin: 14px 0;
  border: 1px solid #dbe3ef;
  border-radius: 16px;
  background: #fff;
}
.admin-workflow-map > div {
  position: relative;
  display: flex;
  min-height: 76px;
  align-items: center;
  gap: 10px;
  padding: 13px 15px;
}
.admin-workflow-map > div + div { border-left: 1px solid #e4eaf3; }
.admin-workflow-map > div:not(:last-child)::after {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: -5px;
  width: 9px;
  height: 9px;
  border-top: 1px solid #cbd5e1;
  border-right: 1px solid #cbd5e1;
  background: #fff;
  content: "";
  transform: translateY(-50%) rotate(45deg);
}
.admin-workflow-map b {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  color: #315bea;
  background: #eef3ff;
  font-size: 12px;
}
.admin-workflow-map span { display: grid; gap: 3px; }
.admin-workflow-map strong { color: #1e293b; font-size: 11px; }
.admin-workflow-map small { color: #7b879a; font-size: 9px; line-height: 1.35; }
.admin-shipments-section .admin-status { color: #64748b; }
.admin-shipments-section .admin-attention {
  gap: 16px;
  padding: 18px;
  border-color: #dbe3ef;
  background: #fff;
  box-shadow: 0 8px 28px rgba(30, 52, 86, .06);
}
.admin-primary-action {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
  border: 2px solid #315bea;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(120deg, #234fd8, #6844d5 72%, #a03ebc);
  box-shadow: 0 13px 28px rgba(49, 91, 234, .22);
}
.admin-primary-action-marker {
  padding: 7px 9px;
  border-radius: 8px;
  color: #1f3ca6;
  background: #fff;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.admin-primary-action h2 { margin: 0 0 4px; color: #fff; font-size: 23px; }
.admin-primary-action p { margin: 0; color: rgba(255,255,255,.78); font-size: 11px; }
.admin-primary-action .button-primary { color: #203a91; background: #fff; box-shadow: none; }
.admin-primary-action.is-complete { border-color: #49b68b; background: linear-gradient(120deg, #1d8c68, #36a57f); }
.admin-shipments-section .admin-attention-heading h2,
.admin-shipments-section .admin-attention-heading > strong { color: #172033; }
.admin-shipments-section .admin-attention-card {
  border-color: #dbe3ef;
  color: #172033;
  background: #f8fafc;
}
.admin-shipments-section .admin-attention-card > i {
  display: grid;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 50%;
  color: #315bea;
  background: #e9efff;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
}
.admin-shipments-section .admin-attention-card strong { color: #1e293b; }
.admin-shipments-section .admin-attention-card small { color: #748196; }
.admin-shipments-section .admin-attention-card:hover,
.admin-shipments-section .admin-attention-card.is-active { border-color: #6f8cf0; background: #f0f4ff; }
.admin-shipments-section .admin-attention-card b { color: #fff; background: #315bea; }
.admin-shipments-section .admin-order-tools {
  border-color: #dbe3ef;
  background: #fff;
}
.admin-shipments-section .admin-order-search input,
.admin-shipments-section .admin-invoice-email input,
.admin-shipments-section .admin-ozon-confirm input {
  border-color: #cbd5e1;
  color: #172033;
  background: #fff;
}
.admin-shipments-section .admin-order-filter {
  border-color: #dbe3ef;
  color: #64748b;
  background: #f8fafc;
}
.admin-shipments-section .admin-order-filter:hover { color: #172033; background: #eef3f8; }
.admin-shipments-section .admin-order-filter.is-active { border-color: #315bea; color: #fff; background: #315bea; }
.admin-shipments-section .admin-order-filter.is-active b { color: #315bea; background: #fff; }
.admin-shipments-section .admin-order-card {
  border-color: rgba(var(--order-accent-rgb), .28);
  background: #fff;
  box-shadow: 0 7px 24px rgba(var(--order-accent-rgb), .08);
}
.admin-shipments-section .admin-order-card.is-expanded { border-color: var(--order-accent); box-shadow: 0 12px 35px rgba(var(--order-accent-rgb), .14); }
.admin-shipments-section .admin-order-summary:hover { background: #f7f9fd; }
.admin-shipments-section .admin-order-stage { border-color: rgba(var(--order-accent-rgb), .32); color: var(--order-accent); background: var(--order-accent-soft); }
.admin-shipments-section .admin-order-card[data-order-stage="ready"] .admin-order-stage,
.admin-shipments-section .admin-order-card[data-order-stage="draft"] .admin-order-stage { border-color: rgba(var(--order-accent-rgb), .32); color: var(--order-accent); background: var(--order-accent-soft); }
.admin-shipments-section .admin-order-card[data-order-stage="invoice"] .admin-order-stage,
.admin-shipments-section .admin-order-card[data-order-stage="payment"] .admin-order-stage { border-color: rgba(var(--order-accent-rgb), .32); color: var(--order-accent); background: var(--order-accent-soft); }
.admin-shipments-section .admin-order-number,
.admin-shipments-section .admin-order-total strong { color: #172033; }
.admin-shipments-section .admin-order-company,
.admin-shipments-section .admin-order-compact-meta,
.admin-shipments-section .admin-order-total span { color: #64748b; }
.admin-shipments-section .admin-order-toggle-label { color: var(--order-accent); }
.admin-shipments-section .admin-order-next-action {
  display: grid;
  width: fit-content;
  gap: 2px;
  margin-top: 7px;
  padding: 8px 10px;
  border-left: 4px solid var(--order-accent);
  border-radius: 7px;
  color: #172033;
  background: var(--order-accent-soft);
}
.admin-shipments-section .admin-order-next-action::before { display: none; }
.admin-shipments-section .admin-order-next-action small { color: var(--order-accent); font-size: 8px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.admin-shipments-section .admin-order-next-action strong { font-size: 11px; }
.admin-shipments-section .admin-order-details { border-color: #dbe3ef; background: #f8fafc; }
.admin-current-step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  margin-top: 16px;
  padding: 15px 17px;
  border: 2px solid var(--order-accent);
  border-radius: 14px;
  background: var(--order-accent-soft);
}
.admin-current-step > span {
  padding: 7px 9px;
  border-radius: 8px;
  color: #fff;
  background: var(--order-accent);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.admin-current-step > div { display: grid; gap: 4px; }
.admin-current-step strong { color: #172033; font-size: 16px; }
.admin-current-step small { color: #64748b; font-size: 10px; }
.admin-step-block {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #dbe3ef;
  border-radius: 15px;
  background: #fff;
}
.admin-step-block.is-current {
  border: 2px solid var(--order-accent);
  box-shadow: 0 9px 26px rgba(var(--order-accent-rgb), .14);
}
.admin-step-block > header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 13px;
  border-bottom: 1px solid #e5eaf2;
}
.admin-step-block > header > b {
  padding: 6px 8px;
  border-radius: 7px;
  color: #64748b;
  background: #eef2f7;
  font-size: 8px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.admin-step-block.is-current > header > b { color: #fff; background: var(--order-accent); }
.admin-step-block > header > div { display: grid; gap: 3px; }
.admin-step-block > header strong { color: #172033; font-size: 15px; }
.admin-step-block > header small { color: #64748b; font-size: 9px; }
.admin-step-block > .admin-invoice-panel,
.admin-step-block > .admin-fbs-panel { margin-top: 14px; margin-bottom: 0; box-shadow: none; }
.admin-reference-action {
  align-items: center;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e5eaf2;
}
.admin-reference-action > span { display: grid; gap: 3px; }
.admin-reference-action strong { color: #334155; font-size: 11px; }
.admin-reference-action small { color: #7b879a; font-size: 9px; }
.admin-shipments-section .admin-order-delivery-panel,
.admin-shipments-section .admin-invoice-panel,
.admin-shipments-section .admin-fbo-result,
.admin-shipments-section .admin-fbs-panel,
.admin-shipments-section .admin-ozon-preflight {
  border-color: #d4dfed;
  background: #fff;
  box-shadow: 0 5px 18px rgba(33, 50, 79, .05);
}
.admin-shipments-section .admin-order-delivery-panel > span,
.admin-shipments-section .admin-invoice-kicker { color: var(--order-accent); }
.admin-shipments-section .admin-order-card .button-primary {
  border-color: var(--order-accent);
  color: #fff;
  background: var(--order-accent);
  box-shadow: 0 7px 18px rgba(var(--order-accent-rgb), .2);
}
.admin-shipments-section .admin-order-card .button-primary:hover {
  filter: brightness(.94) saturate(1.08);
  box-shadow: 0 9px 22px rgba(var(--order-accent-rgb), .28);
}
.admin-shipments-section .admin-order-card .button-secondary {
  border-color: rgba(var(--order-accent-rgb), .35);
  color: var(--order-accent);
  background: var(--order-accent-soft);
}
.admin-shipments-section .admin-order-card .button-secondary:hover {
  border-color: var(--order-accent);
  color: var(--order-accent);
  background: #fff;
}
.admin-shipments-section .admin-fbs-mode,
.admin-shipments-section .admin-ozon-preflight-heading > span { border-color: #9bdac3; color: #087557; background: #eaf9f3; }
.admin-shipments-section .admin-fbs-checklist label,
.admin-shipments-section .admin-fbs-draft-rows > div,
.admin-shipments-section .admin-ozon-preflight-point,
.admin-shipments-section .admin-ozon-preflight-split,
.admin-shipments-section .admin-ozon-preflight-plan,
.admin-shipments-section .admin-ozon-actions { border-color: #dbe3ef; background: #f8fafc; }
.admin-shipments-section .admin-fbs-draft-rows span,
.admin-shipments-section .admin-ozon-preflight-split dd { color: #334155; }
.admin-shipments-section .admin-ozon-preflight-plan-heading span,
.admin-shipments-section .admin-ozon-preflight-split-heading span { color: #315bea; }
.admin-shipments-section .admin-ozon-preflight-items span,
.admin-shipments-section .admin-ozon-preflight-timeslots span { background: #eef2f7; }
.admin-shipments-section .admin-ozon-state.is-created { border-color: #9bdac3; background: #ecfaf5; }
.admin-shipments-section .admin-ozon-state.is-warning { border-color: #e5c875; background: #fff9e8; }

@media (max-width: 1100px) {
  .admin-workflow-map { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .admin-workflow-map > div:nth-child(4) { border-left: 0; }
  .admin-workflow-map > div:nth-child(n+4) { border-top: 1px solid #e4eaf3; }
}
@media (max-width: 760px) {
  .admin-shipments-section { padding: 10px; border-radius: 16px; }
  .admin-workflow-map { grid-template-columns: 1fr 1fr; }
  .admin-workflow-map > div { min-height: 68px; border-top: 1px solid #e4eaf3; }
  .admin-workflow-map > div:nth-child(odd) { border-left: 0; }
  .admin-primary-action { grid-template-columns: 1fr; align-items: stretch; }
  .admin-primary-action-marker { width: fit-content; }
  .admin-primary-action .button { width: 100%; }
  .admin-current-step { grid-template-columns: 1fr; }
  .admin-current-step > span { width: fit-content; }
  .admin-step-block { padding: 12px; }
}
