:root {
  --shell-bg: #f4f6fa;
  --shell-surface: #fff;
  --shell-soft: #f1f4f9;
  --shell-line: #dce3ed;
  --shell-ink: #1c2c45;
  --shell-muted: #566980;
  --shell-link: #205ae1;
}
.nz-header {
  background: var(--shell-surface);
  border-color: var(--shell-line);
}
.nz-head-inner {
  width: min(calc(100% - 40px), 1560px);
  min-height: 62px;
  height: 65px;
  gap: clamp(22px, 3vw, 46px);
}
.nz-brand img { width: 35px; height: 35px; }
.nz-header-actions { gap: clamp(9px, 1.2vw, 20px); }
.nz-cart-link, .nz-theme {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: var(--shell-muted);
  background: transparent;
  font-size: 13px;
}
.nz-cart-link {
  position: relative;
  min-height: 34px;
  white-space: nowrap;
}
.nz-cart-link b {
  min-width: 15px;
  padding: 0 3px;
  border-radius: 8px;
  color: #fff;
  background: #245ffa;
  font-size: 10px;
  line-height: 15px;
  text-align: center;
}
.nz-cart-link b[hidden], .nz-theme-sun { display: none; }
.nz-theme {
  border: 1px solid var(--shell-line);
  border-radius: 3px;
  min-height: 32px;
  width: 32px;
  padding: 3px;
}
.nz-theme:hover { color: var(--shell-link); background: var(--shell-soft); }
.nz-console-link {
  background: #245ffa;
  border-color: #245ffa;
  border-radius: 3px;
}
.nz-console-link:hover { background: #184bcf; }
.nz-nav a[aria-current='page']::after {
  left: 0;
  right: 0;
  width: auto;
  height: 2px;
}
.nz-hero {
  background: linear-gradient(108deg, #f7faff 0%, #edf3ff 54%, #dceaff 100%);
}
.nz-hero-inner { min-height: clamp(275px, 24vw, 360px); }
.nz-hero h1 {
  font-size: clamp(40px, 4.1vw, 62px);
  margin: 0 0 12px;
}
.nz-hero-copy p { max-width: 400px; }
.nz-hero-art { width: min(47%, 550px); }
.nz-btn, .nz-buy-link { border-radius: 3px; }
.nz-services-inner { padding-block: 16px; }
.nz-catalog { background: var(--shell-bg); }
.nz-card {
  box-shadow: none;
  border-color: var(--shell-line);
  border-radius: 4px;
  padding: 19px;
}
.nz-card:hover { box-shadow: 0 3px 15px #23446c0c; }
.nz-region-icon { border-radius: 4px; width: 38px; height: 38px; }
.nz-region-icon i { font-size: 22px; }
.nz-region-icon { flex: none; }
.nz-card-top h3 { font-size: 17px; }
.nz-card .nz-specs { margin-block: 16px; padding-block: 12px; }
.nz-count-label { margin: 0 0 8px; font-size: 12px; color: var(--shell-muted); }
.nz-page-top { background: var(--shell-surface); }
.nz-callout { border-radius: 4px; }

.nz-cart-page {
  min-height: 70vh;
  padding: 24px 0 56px;
  background: var(--shell-bg);
  color: var(--shell-ink);
}
.nz-cart-page :where(h1,h2,p) { margin: 0; }
.nz-cart-path, .nz-cart-heading, .nz-cart-listhead, .nz-cart-actions {
  display: flex;
  align-items: center;
}
.nz-cart-path { gap: 9px; color: var(--shell-muted); font-size: 12px; }
.nz-cart-heading { margin: 20px 0 22px; justify-content: space-between; gap: 15px; }
.nz-cart-heading h1 { font-size: clamp(25px, 3vw, 34px); }
.nz-cart-heading p, .nz-cart-empty p { color: var(--shell-muted); margin-top: 6px; font-size: 14px; }
.nz-cart-list, .nz-cart-empty {
  border: 1px solid var(--shell-line);
  border-radius: 4px;
  background: var(--shell-surface);
}
.nz-cart-listhead { gap: 8px; padding: 15px 19px; border-bottom: 1px solid var(--shell-line); font-size: 14px; font-weight: 600; }
.nz-cart-listhead b { font-size: 12px; color: var(--shell-muted); }
.nz-cart-row {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) minmax(110px,.32fr) auto;
  align-items: center;
  gap: 16px;
  padding: 19px;
}
.nz-cart-row + .nz-cart-row { border-top: 1px solid var(--shell-line); }
.nz-cart-machine { display: grid; place-items: center; width: 40px; height: 40px; color: var(--shell-link); background: var(--shell-soft); }
.nz-cart-machine i { font-size: 25px; }
.nz-cart-description h2 { font-size: 16px; overflow-wrap: anywhere; }
.nz-cart-description p, .nz-cart-price span { color: var(--shell-muted); font-size: 12px; }
.nz-cart-description p { margin-top: 5px; overflow-wrap: anywhere; }
.nz-cart-price strong { display: block; margin-top: 3px; font-size: 19px; font-variant-numeric: tabular-nums; }
.nz-cart-price small { font-size: 11px; font-weight: 500; }
.nz-cart-actions { gap: 9px; flex-wrap: wrap; }
.nz-cart-actions a { min-height: 36px; padding: 7px 12px; font-size: 13px; }
.nz-cart-remove { color: var(--shell-muted); background: transparent; border: 0; padding: 8px 4px; font-size: 13px; }
.nz-cart-remove:hover { color: #b73f32; }
.nz-cart-empty { padding: clamp(38px,8vw,90px) 20px; text-align: center; }
.nz-cart-empty > i { font-size: 31px; color: var(--shell-link); }
.nz-cart-empty h2 { margin-block-start: 10px; font-size: 20px; }
.nz-cart-empty a { margin-top: 18px; }
.nz-cart-error { color: #b2392d; padding-block: 8px; }
.shop-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 7px 13px;
  color: var(--shell-link);
  background: #edf3ff;
  border-radius: 3px;
  border: 1px solid #cfddfb;
  font-size: 13px;
}
.shop-add:disabled { opacity: .55; }

:root[data-theme='dark'] {
  color-scheme: dark;
  --shell-bg: #101722;
  --shell-surface: #192331;
  --shell-soft: #253143;
  --shell-line: #344458;
  --shell-ink: #e2eaf7;
  --shell-muted: #afbdd0;
  --shell-link: #89b0ff;
  --nz-ink: var(--shell-ink);
  --nz-text: #c4d0e0;
  --nz-muted: var(--shell-muted);
  --nz-blue: var(--shell-link);
  --nz-deep: #6599ff;
  --nz-line: var(--shell-line);
  --nz-pale: #253b59;
  --nz-page: var(--shell-bg);
  background: var(--shell-bg);
  color: var(--shell-ink);
}
[data-theme='dark'] :is(.nz-theme-sun) { display: block; }
[data-theme='dark'] :is(.nz-theme-moon) { display: none; }
[data-theme='dark'] :is(.nz-brand small,.nz-nav a,.nz-menu,#nz-session,.nz-language-control,.nz-cart-link,
.nz-section-head p,.nz-bread,.nz-specs dt,.nz-card-region,.nz-price small,.nz-filter-note,.nz-os-filter,
.nz-foot-brand span,.nz-footer nav,.nz-more span,.nz-hero-copy p) { color: var(--shell-muted); }
[data-theme='dark'] :is(.nz-nav a[aria-current='page'],.nz-nav a:hover,.nz-inline-link,.nz-tab[aria-pressed='true'],
.nz-buy-link,.nz-os-filter button[aria-pressed='true']) { color: var(--shell-link); }
[data-theme='dark'] :is(.nz-card,.nz-services,.nz-footer,.nz-nav,.nz-pane,.nz-help details,.nz-message,.nz-page-top) {
  background: var(--shell-surface);
  border-color: var(--shell-line);
}
[data-theme='dark'] :is(.nz-specs dd,.nz-price strong,.nz-hero h1,.nz-card-top h3,.nz-help summary,.nz-tab) { color: var(--shell-ink); }
[data-theme='dark'] .nz-hero { background: linear-gradient(110deg,#18283e,#1a2e49 54%,#213b5d); border-color: var(--shell-line); }
[data-theme='dark'] .nz-hero::after { background: linear-gradient(0deg,#192c451f,transparent); }
[data-theme='dark'] :is(.nz-tab,.nz-callout,.nz-buy-link,.nz-region-icon,.nz-card .nz-region-icon,.nz-btn:not(.primary)) {
  color: var(--shell-ink);
  background: var(--shell-soft);
  border-color: var(--shell-line);
}
[data-theme='dark'] :is(.nz-btn.primary,.nz-console-link,.shop-order:not(:disabled)) {
  color: #fff;
  background: #315fd7;
  border-color: #5480ef;
}
[data-theme='dark'] :is(.nz-tab[aria-pressed='true'],.nz-os-filter button[aria-pressed='true']) { background: #243a5c; border-color: #5079ba; }
[data-theme='dark'] :is(.nz-os-filter,.nz-specs,.nz-service + .nz-service) { border-color: var(--shell-line); }
[data-theme='dark'] :is(.nz-os-filter button,.nz-language-control select) { color: var(--shell-muted); border-color: var(--shell-line); }
[data-theme='dark'] body:has(.purchase-workspace) {
  --shop-ink: var(--shell-ink);
  --shop-muted: var(--shell-muted);
  --shop-border: var(--shell-line);
  --shop-canvas: var(--shell-bg);
  --shop-blue: #335ed8;
  --shop-blue-dark: var(--shell-link);
}
[data-theme='dark'] :is(.shop-panel,.shop-path,.shop-rail,.shop-checkout-bar,.shop-breakdown,.pn-nav,.pc-image-card) {
  background: var(--shell-surface); border-color: var(--shell-line); color: var(--shell-ink);
}
[data-theme='dark'] .shop-notice { color: #c2d6fd; background: #233750; border-color: #365787; }
[data-theme='dark'] :is(.shop-chip,.shop-models,.shop-fixed,.shop-details,.shop-add,.pc-image-pick,.pc-image-card .pc-image-pick) {
  color: var(--shell-ink); background: var(--shell-soft); border-color: var(--shell-line);
}
[data-theme='dark'] .shop-models .shop-chip { background: var(--shell-surface); }
[data-theme='dark'] .shop-chip:is(:hover,.is-on,[aria-pressed='true'],[aria-checked='true']) {
  color: #fff; background: #315fd7; border-color: #7697f4;
}
[data-theme='dark'] :is(.shop-label,.shop-spec-line,.shop-cost,.shop-cost small,.shop-stock,.pn-heading span,.pn-nav button,.pn-nav summary) { color: var(--shell-muted); }
[data-theme='dark'] .shop-cost strong { color: #ff9e82; }
[data-theme='dark'] :is(.shop-feedback,.nz-cart-error) { color: #ffa9a3; }
[data-theme='dark'] :is(.shop-input,.shop-control input,.shop-control select,.pn-search input,.pc-image-card select) {
  background: var(--shell-bg); color: var(--shell-ink); border-color: var(--shell-line);
}
[data-theme='dark'] .pn-nav { --pn-blue:var(--shell-link); --pn-line:var(--shell-line); }
[data-theme='dark'] .pn-nav :is(details,summary,button) { background-color: transparent; }
[data-theme='dark'] .pn-nav :is(.pn-group,.pn-family,.pn-result,.pn-shell) { background-color: var(--shell-surface); }
[data-theme='dark'] .pn-nav :is([aria-current],[aria-selected='true'],button:hover) { color: var(--shell-link); background-color:#253955; }
[data-theme='dark'] .pc-image-card.is-picked { border-color: #7294ff; }
[data-theme='dark'] :is(.bc-console,.bc-auth) {
  --bcc-ink: var(--shell-ink); --bcc-muted: var(--shell-muted); --bcc-line: var(--shell-line);
  --bcc-blue: var(--shell-link); --bcc-pale: #243a58; background: var(--shell-bg);
}
[data-theme='dark'] :is(.bcc-sidebar,.bcc-card,.bcc-stat,.bcc-dialog,.bcc-auth-card,.nz-tickets section,.bcc-auth-form) {
  color: var(--shell-ink); background: var(--shell-surface); border-color: var(--shell-line);
}
[data-theme='dark'] :is(.bcc-table-wrap th,.bcc-btn.subtle,.bcc-avatar,.bcc-credentials,.bcc-callout,.bcc-account,.bcc-stat-icon) {
  color: var(--shell-muted); background: var(--shell-soft); border-color: var(--shell-line);
}
[data-theme='dark'] :is(.bc-console,.bc-auth,.nz-tickets) :is(input,textarea,select) { color:var(--shell-ink); background:var(--shell-bg); border-color:var(--shell-line); }
[data-theme='dark'] .bc-console .bcc-nav-link { color:var(--shell-muted); }
[data-theme='dark'] .bcc-btn.primary { color:white; background:#315fd7; }

@media (max-width: 1140px) {
  .nz-cart-link > span { display: none; }
  .nz-header-actions { gap: 10px; }
  .nz-head-inner { gap: 23px; }
}
@media (max-width: 930px) {
  .nz-head-inner { width: calc(100% - 24px); gap: 14px; }
  .nz-header-actions { gap: 7px; }
  .nz-nav { gap: 11px; }
  .nz-nav a { font-size: 13px; }
  #nz-session { max-width: 70px; }
  .nz-menu { display: grid; place-items: center; background: transparent; color: var(--shell-ink); border: 0; width: 30px; height: 32px; }
  .nz-menu i { font-size: 22px; }
  .nz-nav { display:none; position:absolute; z-index:2; inset:100% 0 auto; height:auto; padding:9px 16px 12px; background: var(--shell-surface); border-bottom:1px solid var(--shell-line); box-shadow:0 5px 15px #1b355012; }
  .nz-nav.open { display:grid; grid-template-columns:1fr 1fr; }
  .nz-nav a { padding:8px; }
  .nz-nav a[aria-current='page']::after { display:none; }
}
@media (max-width: 800px) {
  .nz-cart-row { grid-template-columns: auto minmax(0,1fr) auto; gap: 10px; }
  .nz-cart-actions { grid-column: 2 / -1; }
  .nz-head-inner { min-height: 57px; height: 59px; }
  .nz-hero-inner { min-height: 265px; }
}
@media (max-width: 650px) {
  .nz-head-inner,body:has(.purchase-workspace) .nz-head-inner { width: calc(100% - 16px); gap: 4px; }
  .nz-brand { gap: 5px; flex: 0 1 auto; min-width: 27px; }
  .nz-brand img { flex-shrink:0; }
  .nz-brand > span { min-width: 0; }
  .nz-brand strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .nz-brand img { width: 26px; height: 26px; }
  .nz-header-actions { gap: 5px; }
  .nz-cart-link, .nz-theme, .nz-menu { min-height: 31px; width: 26px; }
  .nz-cart-link b { position:absolute; right:-4px; top:0; }
  .nz-theme { border-color: transparent; }
  .nz-hero-inner { min-height: 0; }
  .nz-hero-art { width: min(80%, 340px); }
  .nz-hero h1 { font-size: 38px; }
  .nz-console-link i { display: none; }
  .nz-language-control select { width: 31px; min-height: 31px; opacity: 0; padding: 0; }
  .nz-language-control { width: 31px; height: 31px; justify-content:center; }
  .nz-language-control > svg { inset-inline-start:7px; width:17px; height:17px; }
  .nz-language-control .nz-language-arrow { display: none; }
  .nz-language-control:focus-within { outline: 2px solid #6292ee; }
  #nz-session { max-width: 50px; font-size: 12px; }
  .nz-cart-heading { align-items: flex-start; }
  .nz-cart-row { grid-template-columns: minmax(0,1fr) auto; padding:14px; }
  .nz-cart-machine { display: none; }
  .nz-cart-actions { grid-column: 1 / -1; }
  .shop-add { min-height: 36px; padding-inline:7px; font-size:12px; }
  .shop-bar-actions { flex-wrap:wrap; max-width:100%; }
}
@media (max-width: 400px) {
  .nz-brand strong { font-size:15px; }
  .nz-brand small { font-size:6px; }
  .nz-header-actions { gap:3px; }
  #nz-session { max-width:36px; }
  .nz-console-link { font-size: 0; min-width: 29px; padding: 6px; }
  .nz-console-link i { display: inline-block; font-size: 15px; }
  .nz-cart-heading p { max-width: 200px; }
}
