/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-primitives.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --sw-primitive-font-family-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sw-primitive-color-page: #f7f8fa;
  --sw-primitive-color-panel: #ffffff;
  --sw-primitive-color-panel-muted: #f2f5f8;
  --sw-primitive-color-text: #17202a;
  --sw-primitive-color-muted: #5d6875;
  --sw-primitive-color-border: #d9dee5;
  --sw-primitive-color-border-strong: #c7d8ec;
  --sw-primitive-color-accent: #2563eb;
  --sw-primitive-color-accent-contrast: #ffffff;
  --sw-primitive-color-focus: rgba(37, 99, 235, 0.24);
  --sw-primitive-color-success: #15803d;
  --sw-primitive-color-warning: #b7791f;
  --sw-primitive-color-danger: #b42318;
  --sw-primitive-color-disabled: #8b98a8;
  --sw-primitive-color-danger-surface: #fff1f0;
  --sw-primitive-color-warning-surface: #fff7e6;
  --sw-primitive-color-success-surface: #ecfdf3;
  --sw-primitive-color-accent-surface: #eff6ff;
  --sw-primitive-color-neutral-surface: #f6f8fb;
  --sw-primitive-color-stale-surface: #f5f3ff;
  --sw-primitive-color-conflict-surface: #fff4ed;
  --sw-primitive-color-stale: #5b4ac7;
  --sw-primitive-color-conflict: #c2410c;
  --sw-primitive-color-overlay-backdrop: rgba(15, 23, 32, 0.36);

  --sw-primitive-space-page-inset: 24px;
  --sw-primitive-space-stack-sm: 8px;
  --sw-primitive-space-stack-md: 12px;
  --sw-primitive-space-stack-lg: 16px;
  --sw-primitive-space-grid-gap: 16px;
  --sw-primitive-space-row-padding: 12px;
  --sw-primitive-space-control-padding: 12px;
  --sw-primitive-space-badge-padding: 10px;
  --sw-primitive-space-menu-inset: 4px;
  --sw-primitive-space-panel-padding: 16px;
  --sw-primitive-space-panel-padding-compact: 12px;
  --sw-primitive-space-select-item-end-padding: 32px;
  --sw-primitive-space-overlay-padding: 20px;
  --sw-primitive-space-overlay-gap: 18px;
  --sw-primitive-space-toolbar-padding: 10px;
  --sw-primitive-space-table-cell-padding: 12px;
  --sw-primitive-space-state-padding: 18px;
  --sw-primitive-space-mobile-action-inline: 12px;

  --sw-primitive-type-page-title-size: 22px;
  --sw-primitive-type-section-title-size: 15px;
  --sw-primitive-type-body-size: 13px;
  --sw-primitive-type-caption-size: 12px;
  --sw-primitive-type-control-size: 13px;
  --sw-primitive-type-line-tight: 1.2;
  --sw-primitive-type-line-body: 1.45;

  --sw-primitive-radius-panel: 8px;
  --sw-primitive-radius-control: 6px;
  --sw-primitive-radius-choice: 5px;
  --sw-primitive-radius-badge: 999px;
  --sw-primitive-radius-focus: 8px;

  --sw-primitive-shadow-panel: 0 8px 24px rgba(15, 23, 32, 0.08);
  --sw-primitive-shadow-raised: 0 14px 28px rgba(26, 46, 74, 0.06);
  --sw-primitive-shadow-overlay: 0 24px 48px rgba(26, 46, 74, 0.16);
  --sw-primitive-shadow-focus: 0 0 0 4px var(--sw-primitive-color-focus);

  --sw-primitive-border-default: 1px solid var(--sw-primitive-color-border);
  --sw-primitive-border-subtle: 1px solid rgba(217, 222, 229, 0.72);
  --sw-primitive-border-strong: 1px solid var(--sw-primitive-color-border-strong);
  --sw-primitive-border-interactive: 1px solid rgba(37, 99, 235, 0.58);
  --sw-primitive-border-spinner-width: 2px;

  --sw-primitive-density-row-height: 44px;
  --sw-primitive-density-toolbar-height: 40px;
  --sw-primitive-density-control-height: 36px;
  --sw-primitive-density-control-height-sm: 32px;
  --sw-primitive-density-control-height-lg: 42px;
  --sw-primitive-density-textarea-min-height: 88px;
  --sw-primitive-density-badge-height: 24px;
  --sw-primitive-density-choice-size: 18px;
  --sw-primitive-density-choice-icon-size: 14px;
  --sw-primitive-density-icon-size: 16px;
  --sw-primitive-density-select-content-min-width: 180px;
  --sw-primitive-density-menu-min-width: 192px;
  --sw-primitive-density-popover-width: 280px;
  --sw-primitive-density-tooltip-max-width: 240px;
  --sw-primitive-density-dialog-width: 520px;
  --sw-primitive-density-sheet-width: 420px;
  --sw-primitive-density-sheet-bottom-height: 72vh;
  --sw-primitive-density-overlay-max-height: 86vh;
  --sw-primitive-density-close-button-size: 30px;
  --sw-primitive-density-breadcrumb-separator-size: 14px;
  --sw-primitive-density-separator-height: 1px;
  --sw-primitive-density-tab-height: 34px;
  --sw-primitive-density-scrollbar-size: 10px;
  --sw-primitive-density-spinner-size: 14px;
  --sw-primitive-density-switch-width: 38px;
  --sw-primitive-density-switch-height: 22px;
  --sw-primitive-density-switch-thumb-size: 18px;
  --sw-primitive-density-inspector-width: 360px;
  --sw-primitive-density-mobile-action-height: 64px;
  --sw-primitive-density-table-row-height: 44px;
  --sw-primitive-density-data-list-media-size: 40px;
  --sw-primitive-density-state-icon-size: 34px;
  --sw-primitive-density-skeleton-block-height: 14px;
  --sw-primitive-layer-overlay: 50;
  --sw-primitive-layer-mobile-action: 40;
  --sw-primitive-layer-popover: 60;
  --sw-primitive-layer-tooltip: 70;
  --sw-primitive-motion-fast: 120ms;
  --sw-primitive-motion-switch-thumb-start: 1px;
  --sw-primitive-motion-switch-thumb-checked: 17px;
}

.sw-type-page-title {
  margin: 0;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-page-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-type-section-title {
  margin: 0;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 650;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-type-body {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-type-caption {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-surface-page {
  background: var(--sw-primitive-color-page);
  color: var(--sw-primitive-color-text);
}

.sw-surface-panel {
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-panel);
}

.sw-stack-sm,
.sw-stack-md,
.sw-cluster-sm,
.sw-split,
.sw-toolbar {
  display: flex;
}

.sw-stack-sm,
.sw-stack-md {
  flex-direction: column;
}

.sw-stack-sm {
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-stack-md {
  gap: var(--sw-primitive-space-stack-md);
}

.sw-cluster-sm {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  flex-wrap: wrap;
}

.sw-split {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-grid-gap);
}

.sw-toolbar {
  min-height: var(--sw-primitive-density-toolbar-height);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  min-height: var(--sw-primitive-density-control-height);
  gap: var(--sw-primitive-space-stack-sm);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  padding: 0 var(--sw-primitive-space-control-padding);
  font-family: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 650;
  line-height: 1;
  cursor: pointer;
}

/* The canonical primitive must carry disabled presentation even when a
   consumer does not compile Tailwind utility variants. This also covers Link
   buttons whose original component enforces aria-disabled event custody. */
.sw-primitive-button:disabled,
.sw-primitive-button[aria-disabled='true'] {
  opacity: 0.5;
  cursor: not-allowed;
}

.sw-primitive-button__content {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-button:focus-visible {
  box-shadow: var(--sw-primitive-shadow-focus);
}

.sw-primitive-button--primary {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-primitive-button--secondary {
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
}

.sw-primitive-button--danger {
  border-color: var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-primitive-button--ghost {
  border-color: transparent;
  background: transparent;
  color: var(--sw-primitive-color-text);
}

.sw-primitive-button--sm {
  min-height: var(--sw-primitive-density-control-height-sm);
}

.sw-primitive-button--md {
  min-height: var(--sw-primitive-density-control-height);
}

.sw-primitive-button--lg {
  min-height: var(--sw-primitive-density-control-height-lg);
}

.sw-primitive-button--icon {
  width: var(--sw-primitive-density-control-height);
  padding: 0;
}

.sw-primitive-state--loading {
  cursor: wait;
}

.sw-primitive-spinner {
  width: var(--sw-primitive-density-spinner-size);
  height: var(--sw-primitive-density-spinner-size);
  flex: 0 0 auto;
  border: var(--sw-primitive-border-spinner-width) solid currentColor;
  border-right-color: transparent;
  border-radius: var(--sw-primitive-radius-badge);
}

.sw-primitive-badge {
  display: inline-flex;
  min-height: var(--sw-primitive-density-badge-height);
  align-items: center;
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  padding: 0 var(--sw-primitive-space-badge-padding);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 650;
  line-height: 1;
}

.sw-primitive-badge--neutral {
  background: var(--sw-primitive-color-panel-muted);
  color: var(--sw-primitive-color-muted);
}

.sw-primitive-badge--success {
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-primitive-color-success);
}

.sw-primitive-badge--warning {
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-primitive-color-warning);
}

.sw-primitive-badge--danger {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-primitive-color-danger);
}

.sw-primitive-badge--info {
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
}

.sw-primitive-field {
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-field__label,
.sw-primitive-choice__label {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 650;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-field__description {
  margin: 0;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-field__error {
  margin: 0;
  color: var(--sw-primitive-color-danger);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 650;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-control {
  outline: none;
}

.sw-primitive-input {
  min-height: var(--sw-primitive-density-control-height);
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  line-height: var(--sw-primitive-type-line-body);
  padding: 0 var(--sw-primitive-space-control-padding);
}

.sw-primitive-textarea {
  min-height: var(--sw-primitive-density-textarea-min-height);
  resize: vertical;
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  line-height: var(--sw-primitive-type-line-body);
  padding: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-control-padding);
}

.sw-primitive-input:focus-visible,
.sw-primitive-textarea:focus-visible,
.sw-primitive-select:focus-visible,
.sw-primitive-checkbox:focus-visible,
.sw-primitive-switch:focus-visible {
  border-color: var(--sw-primitive-color-accent);
  box-shadow: var(--sw-primitive-shadow-focus);
  outline: none;
}

.sw-primitive-input:disabled,
.sw-primitive-input[aria-disabled='true'],
.sw-primitive-textarea:disabled,
.sw-primitive-textarea[aria-disabled='true'],
.sw-primitive-select[data-disabled],
.sw-primitive-checkbox[data-disabled],
.sw-primitive-switch[data-disabled] {
  color: var(--sw-primitive-color-disabled);
  cursor: not-allowed;
}

.sw-primitive-state--error {
  border-color: var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger-surface);
}

.sw-primitive-state--readonly {
  background: var(--sw-primitive-color-panel-muted);
}

.sw-primitive-state--blocked {
  border-color: var(--sw-primitive-color-warning);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-primitive-select {
  display: inline-flex;
  min-height: var(--sw-primitive-density-control-height);
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  padding: 0 var(--sw-primitive-space-control-padding);
}

.sw-primitive-select__icon {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
  color: var(--sw-primitive-color-muted);
}

.sw-primitive-select__content {
  z-index: var(--sw-primitive-layer-overlay);
  min-width: var(--sw-primitive-density-select-content-min-width);
  overflow: hidden;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-overlay);
}

.sw-primitive-select__viewport {
  padding: var(--sw-primitive-space-menu-inset);
}

.sw-primitive-select__item {
  position: relative;
  display: flex;
  min-height: var(--sw-primitive-density-control-height-sm);
  align-items: center;
  border-radius: var(--sw-primitive-radius-control);
  color: var(--sw-primitive-color-text);
  cursor: pointer;
  font-size: var(--sw-primitive-type-control-size);
  padding: 0 var(--sw-primitive-space-select-item-end-padding) 0 var(--sw-primitive-space-control-padding);
  user-select: none;
}

.sw-primitive-select__item[data-highlighted] {
  background: var(--sw-primitive-color-accent-surface);
  outline: none;
}

.sw-primitive-select__item[data-disabled] {
  color: var(--sw-primitive-color-disabled);
  cursor: not-allowed;
}

.sw-primitive-select__indicator {
  position: absolute;
  right: var(--sw-primitive-space-stack-sm);
  display: inline-flex;
  width: var(--sw-primitive-density-icon-size);
  align-items: center;
  justify-content: center;
  color: var(--sw-primitive-color-accent);
}

.sw-primitive-choice {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-checkbox {
  display: inline-flex;
  width: var(--sw-primitive-density-choice-size);
  height: var(--sw-primitive-density-choice-size);
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-choice);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-primitive-checkbox[data-state='checked'] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent);
}

.sw-primitive-checkbox__indicator {
  display: inline-flex;
  width: var(--sw-primitive-density-choice-icon-size);
  height: var(--sw-primitive-density-choice-icon-size);
  align-items: center;
  justify-content: center;
}

.sw-primitive-switch {
  position: relative;
  width: var(--sw-primitive-density-switch-width);
  height: var(--sw-primitive-density-switch-height);
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-panel-muted);
}

.sw-primitive-switch[data-state='checked'] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent);
}

.sw-primitive-switch__thumb {
  display: block;
  width: var(--sw-primitive-density-switch-thumb-size);
  height: var(--sw-primitive-density-switch-thumb-size);
  transform: translateX(var(--sw-primitive-motion-switch-thumb-start));
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
  transition: transform var(--sw-primitive-motion-fast) ease;
}

.sw-primitive-switch[data-state='checked'] .sw-primitive-switch__thumb {
  transform: translateX(var(--sw-primitive-motion-switch-thumb-checked));
}

.sw-primitive-panel {
  overflow: hidden;
}

.sw-primitive-panel--default {
  padding: var(--sw-primitive-space-panel-padding);
}

.sw-primitive-panel--compact {
  padding: var(--sw-primitive-space-panel-padding-compact);
}

.sw-primitive-panel__header,
.sw-primitive-panel__body,
.sw-primitive-panel__footer {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-panel__header,
.sw-primitive-panel__body {
  flex-direction: column;
}

.sw-primitive-panel__header {
  padding-bottom: var(--sw-primitive-space-stack-md);
}

.sw-primitive-panel__body {
  padding: var(--sw-primitive-space-stack-md) 0;
}

.sw-primitive-panel__footer {
  align-items: center;
  justify-content: flex-end;
  padding-top: var(--sw-primitive-space-stack-md);
}

.sw-primitive-panel__title {
  margin: 0;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-panel__description {
  margin: 0;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-mobile-action-bar {
  min-height: var(--sw-primitive-density-mobile-action-height);
  padding: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-page-inset);
  border-top: var(--sw-primitive-border-default);
  background: var(--sw-primitive-color-panel);
}

.sw-primitive-tabs__list {
  display: inline-flex;
  min-height: var(--sw-primitive-density-tab-height);
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel-muted);
  padding: var(--sw-primitive-space-menu-inset);
}

.sw-primitive-tabs__trigger {
  min-height: var(--sw-primitive-density-control-height-sm);
  border: 0;
  border-radius: var(--sw-primitive-radius-control);
  background: transparent;
  color: var(--sw-primitive-color-muted);
  cursor: pointer;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 650;
  line-height: 1;
  padding: 0 var(--sw-primitive-space-control-padding);
}

.sw-primitive-tabs__trigger[data-state='active'] {
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-primitive-tabs__trigger:focus-visible,
.sw-primitive-dialog__close:focus-visible,
.sw-primitive-sheet__close:focus-visible,
.sw-primitive-dropdown__item:focus-visible,
.sw-primitive-popover__content:focus-visible,
.sw-primitive-tooltip__content:focus-visible {
  box-shadow: var(--sw-primitive-shadow-focus);
  outline: none;
}

.sw-primitive-tabs__content {
  padding-top: var(--sw-primitive-space-stack-md);
}

.sw-primitive-toolbar,
.sw-primitive-action-header {
  display: flex;
  min-height: var(--sw-primitive-density-toolbar-height);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-toolbar {
  padding: var(--sw-primitive-space-menu-inset) 0;
}

.sw-primitive-toolbar__group,
.sw-primitive-action-header__leading,
.sw-primitive-action-header__trailing,
.sw-primitive-action-header__actions {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-toolbar__spacer,
.sw-primitive-action-header__main {
  flex: 1 1 auto;
  min-width: 0;
}

.sw-primitive-toolbar__title {
  margin: 0;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-toolbar__description {
  margin: 0;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-breadcrumb {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-primitive-breadcrumb__list,
.sw-primitive-breadcrumb__item {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-breadcrumb__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-primitive-breadcrumb__link {
  color: var(--sw-primitive-color-muted);
  text-decoration: none;
}

.sw-primitive-breadcrumb__link:hover {
  color: var(--sw-primitive-color-text);
}

.sw-primitive-breadcrumb__page {
  color: var(--sw-primitive-color-text);
  font-weight: 650;
}

.sw-primitive-breadcrumb__separator {
  display: inline-flex;
  width: var(--sw-primitive-density-breadcrumb-separator-size);
  height: var(--sw-primitive-density-breadcrumb-separator-size);
  align-items: center;
  justify-content: center;
}

.sw-primitive-dialog__overlay,
.sw-primitive-sheet__overlay {
  position: fixed;
  z-index: var(--sw-primitive-layer-overlay);
  inset: 0;
  background: var(--sw-primitive-color-overlay-backdrop);
}

.sw-primitive-dialog__content,
.sw-primitive-sheet__content,
.sw-primitive-popover__content,
.sw-primitive-dropdown__content,
.sw-primitive-tooltip__content {
  border: var(--sw-primitive-border-default);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  box-shadow: var(--sw-primitive-shadow-overlay);
}

.sw-primitive-dialog__content {
  /* Dialog portals are outside the shell, so inherit the shared font token
     explicitly rather than the browser body's default serif face. */
  font-family: var(--sw-primitive-font-family-sans);
  position: fixed;
  z-index: var(--sw-primitive-layer-overlay);
  top: 50%;
  left: 50%;
  display: flex;
  width: min(calc(100vw - (var(--sw-primitive-space-page-inset) * 2)), var(--sw-primitive-density-dialog-width));
  max-height: var(--sw-primitive-density-overlay-max-height);
  transform: translate(-50%, -50%);
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-md);
  overflow: hidden;
  border-radius: var(--sw-primitive-radius-panel);
  padding: var(--sw-primitive-space-overlay-padding);
}

.sw-primitive-dialog__header,
.sw-primitive-sheet__header,
.sw-primitive-dialog__body,
.sw-primitive-sheet__body {
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-dialog__content :is(input, select, textarea, button) {
  font-family: inherit;
}

.sw-primitive-dialog__body,
.sw-primitive-sheet__body {
  overflow: auto;
}

.sw-primitive-dialog__footer,
.sw-primitive-sheet__footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-dialog__title,
.sw-primitive-sheet__title {
  margin: 0;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-dialog__description,
.sw-primitive-sheet__description {
  margin: 0;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-dialog__close,
.sw-primitive-sheet__close {
  position: absolute;
  top: var(--sw-primitive-space-stack-sm);
  right: var(--sw-primitive-space-stack-sm);
  display: inline-flex;
  width: var(--sw-primitive-density-close-button-size);
  height: var(--sw-primitive-density-close-button-size);
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--sw-primitive-radius-control);
  background: transparent;
  color: var(--sw-primitive-color-muted);
  cursor: pointer;
}

.sw-primitive-sheet__content {
  position: fixed;
  z-index: var(--sw-primitive-layer-overlay);
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-overlay-gap);
  padding: var(--sw-primitive-space-overlay-padding);
}

.sw-primitive-sheet__content[data-side='right'],
.sw-primitive-sheet__content[data-side='left'] {
  top: 0;
  bottom: 0;
  width: min(100vw, var(--sw-primitive-density-sheet-width));
}

.sw-primitive-sheet__content[data-side='right'] {
  right: 0;
  border-radius: var(--sw-primitive-radius-panel) 0 0 var(--sw-primitive-radius-panel);
}

.sw-primitive-sheet__content[data-side='left'] {
  left: 0;
  border-radius: 0 var(--sw-primitive-radius-panel) var(--sw-primitive-radius-panel) 0;
}

.sw-primitive-sheet__content[data-side='bottom'] {
  right: 0;
  bottom: 0;
  left: 0;
  max-height: var(--sw-primitive-density-sheet-bottom-height);
  border-radius: var(--sw-primitive-radius-panel) var(--sw-primitive-radius-panel) 0 0;
}

.sw-primitive-dropdown__content,
.sw-primitive-popover__content {
  z-index: var(--sw-primitive-layer-popover);
  border-radius: var(--sw-primitive-radius-control);
}

.sw-primitive-dropdown__content {
  min-width: var(--sw-primitive-density-menu-min-width);
  overflow: hidden;
  padding: var(--sw-primitive-space-menu-inset);
}

.sw-primitive-dropdown__item,
.sw-primitive-dropdown__label {
  display: flex;
  min-height: var(--sw-primitive-density-control-height-sm);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  border-radius: var(--sw-primitive-radius-control);
  font-size: var(--sw-primitive-type-control-size);
  line-height: var(--sw-primitive-type-line-tight);
  padding: 0 var(--sw-primitive-space-control-padding);
}

.sw-primitive-dropdown__item {
  cursor: pointer;
  user-select: none;
}

.sw-primitive-dropdown__item[data-highlighted] {
  background: var(--sw-primitive-color-accent-surface);
  outline: none;
}

.sw-primitive-dropdown__item[data-disabled] {
  color: var(--sw-primitive-color-disabled);
  cursor: not-allowed;
}

.sw-primitive-dropdown__label {
  color: var(--sw-primitive-color-muted);
  font-weight: 700;
}

.sw-primitive-dropdown__separator {
  height: var(--sw-primitive-density-separator-height);
  margin: var(--sw-primitive-space-menu-inset) 0;
  background: var(--sw-primitive-color-border);
}

.sw-primitive-dropdown__item-indicator,
.sw-primitive-dropdown__sub-icon {
  display: inline-flex;
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  align-items: center;
  justify-content: center;
}

.sw-primitive-dropdown__shortcut {
  margin-left: auto;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-primitive-popover__content {
  width: var(--sw-primitive-density-popover-width);
  padding: var(--sw-primitive-space-panel-padding-compact);
}

.sw-primitive-tooltip__content {
  z-index: var(--sw-primitive-layer-tooltip);
  max-width: var(--sw-primitive-density-tooltip-max-width);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-text);
  color: var(--sw-primitive-color-panel);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
  padding: var(--sw-primitive-space-menu-inset) var(--sw-primitive-space-stack-sm);
}

.sw-primitive-scroll-area {
  position: relative;
  overflow: hidden;
}

.sw-primitive-scroll-area__viewport {
  width: 100%;
  height: 100%;
  border-radius: inherit;
}

.sw-primitive-scroll-area__scrollbar {
  display: flex;
  touch-action: none;
  user-select: none;
}

.sw-primitive-scroll-area__scrollbar[data-orientation='vertical'] {
  width: var(--sw-primitive-density-scrollbar-size);
}

.sw-primitive-scroll-area__scrollbar[data-orientation='horizontal'] {
  height: var(--sw-primitive-density-scrollbar-size);
  flex-direction: column;
}

.sw-primitive-scroll-area__thumb {
  position: relative;
  flex: 1;
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-border-strong);
}

.sw-primitive-scroll-area__corner {
  background: var(--sw-primitive-color-panel-muted);
}

.sw-primitive-table {
  width: 100%;
  border-collapse: collapse;
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-primitive-table__caption {
  caption-side: bottom;
  padding-top: var(--sw-primitive-space-stack-md);
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  text-align: left;
}

.sw-primitive-table__header {
  border-bottom: var(--sw-primitive-border-strong);
}

.sw-primitive-table__body .sw-primitive-table__row {
  border-bottom: var(--sw-primitive-border-subtle);
}

.sw-primitive-table__row {
  min-height: var(--sw-primitive-density-table-row-height);
}

.sw-primitive-table__row[data-selected='true'] {
  background: var(--sw-primitive-color-accent-surface);
}

.sw-primitive-table__head,
.sw-primitive-table__cell {
  min-height: var(--sw-primitive-density-table-row-height);
  padding: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-table-cell-padding);
  text-align: left;
  vertical-align: middle;
}

.sw-primitive-table__head {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-primitive-data-list {
  display: flex;
  margin: 0;
  padding: 0;
  flex-direction: column;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  list-style: none;
}

.sw-primitive-data-list__row {
  display: grid;
  min-height: var(--sw-primitive-density-row-height);
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-stack-md);
}

.sw-primitive-data-list__row + .sw-primitive-data-list__row {
  border-top: var(--sw-primitive-border-subtle);
}

.sw-primitive-data-list__row[data-selected='true'] {
  background: var(--sw-primitive-color-accent-surface);
}

.sw-primitive-data-list__media {
  display: inline-flex;
  width: var(--sw-primitive-density-data-list-media-size);
  height: var(--sw-primitive-density-data-list-media-size);
  align-items: center;
  justify-content: center;
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel-muted);
  color: var(--sw-primitive-color-muted);
}

.sw-primitive-data-list__content {
  min-width: 0;
}

.sw-primitive-data-list__title,
.sw-primitive-data-list__description {
  margin: 0;
}

.sw-primitive-data-list__title {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-data-list__description,
.sw-primitive-data-list__meta {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-data-list__meta,
.sw-primitive-data-list__status,
.sw-primitive-data-list__actions {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-pagination,
.sw-primitive-pagination__list,
.sw-primitive-pagination__item {
  display: flex;
  align-items: center;
}

.sw-primitive-pagination__list {
  margin: 0;
  padding: 0;
  gap: var(--sw-primitive-space-menu-inset);
  list-style: none;
}

.sw-primitive-pagination__button {
  min-height: var(--sw-primitive-density-control-height-sm);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  cursor: pointer;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 650;
  padding: 0 var(--sw-primitive-space-control-padding);
}

.sw-primitive-pagination__button[data-current='true'] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
}

.sw-primitive-pagination__button:disabled {
  color: var(--sw-primitive-color-disabled);
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-primitive-pagination__button:focus-visible {
  box-shadow: var(--sw-primitive-shadow-focus);
  outline: none;
}

.sw-primitive-skeleton-surface {
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-skeleton {
  min-height: var(--sw-primitive-density-skeleton-block-height);
  border-radius: var(--sw-primitive-radius-control);
  background: linear-gradient(
    90deg,
    var(--sw-primitive-color-panel-muted),
    var(--sw-primitive-color-neutral-surface),
    var(--sw-primitive-color-panel-muted)
  );
}

.sw-primitive-action-status {
  display: flex;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  padding: var(--sw-primitive-space-stack-md);
}

.sw-primitive-action-status__icon,
.sw-primitive-state-surface__glyph {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-primitive-action-status__content,
.sw-primitive-state-surface__content {
  min-width: 0;
}

.sw-primitive-action-status__title,
.sw-primitive-action-status__description,
.sw-primitive-state-surface__title,
.sw-primitive-state-surface__description {
  margin: 0;
}

.sw-primitive-action-status__title,
.sw-primitive-state-surface__title {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-primitive-action-status__description,
.sw-primitive-state-surface__description {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-primitive-action-status--loading,
.sw-primitive-action-status--blocked,
.sw-primitive-state-surface--permission,
.sw-primitive-state-surface--blocked {
  border-color: var(--sw-primitive-color-warning);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-primitive-action-status--success {
  border-color: var(--sw-primitive-color-success);
  background: var(--sw-primitive-color-success-surface);
}

.sw-primitive-action-status--warning,
.sw-primitive-state-surface--stale {
  border-color: var(--sw-primitive-color-stale);
  background: var(--sw-primitive-color-stale-surface);
}

.sw-primitive-action-status--error,
.sw-primitive-state-surface--error {
  border-color: var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger-surface);
}

.sw-primitive-state-surface {
  display: flex;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-md);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  padding: var(--sw-primitive-space-state-padding);
}

.sw-primitive-state-surface__icon {
  display: inline-flex;
  width: var(--sw-primitive-density-state-icon-size);
  height: var(--sw-primitive-density-state-icon-size);
  align-items: center;
  justify-content: center;
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel-muted);
  color: var(--sw-primitive-color-muted);
}

.sw-primitive-state-surface__action {
  display: flex;
  margin-top: var(--sw-primitive-space-stack-md);
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-primitive-state-surface--empty,
.sw-primitive-state-surface--readOnly {
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-primitive-state-surface--conflict {
  border-color: var(--sw-primitive-color-conflict);
  background: var(--sw-primitive-color-conflict-surface);
}

.sw-mobile-action-bar {
  position: sticky;
  z-index: var(--sw-primitive-layer-mobile-action);
  bottom: 0;
  display: grid;
  min-height: var(--sw-primitive-density-mobile-action-height);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-mobile-action-inline)
    calc(var(--sw-primitive-space-stack-sm) + env(safe-area-inset-bottom));
  border-top: var(--sw-primitive-border-default);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-mobile-action-bar__secondary,
.sw-mobile-action-bar__content,
.sw-mobile-action-bar__primary {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-mobile-action-bar__content {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-mobile-action-bar-spacer {
  min-height: calc(var(--sw-primitive-density-mobile-action-height) + env(safe-area-inset-bottom));
}

@media (max-width: 640px) {
  .sw-primitive-data-list__row,
  .sw-mobile-action-bar {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .sw-primitive-data-list__status,
  .sw-primitive-data-list__actions,
  .sw-mobile-action-bar__primary {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }
}

.sw-substrate {
  min-height: 100vh;
  font-family: var(--sw-primitive-font-family-sans);
}

.sw-substrate__topbar,
.sw-substrate__hero,
.sw-substrate__layout {
  width: min(100%, calc(1200px + (var(--sw-primitive-space-page-inset) * 2)));
  margin: 0 auto;
  padding-inline: var(--sw-primitive-space-page-inset);
}

.sw-substrate__topbar {
  display: flex;
  min-height: calc(var(--sw-primitive-density-toolbar-height) * 2);
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-grid-gap);
}

.sw-substrate__brand,
.sw-substrate__topbar-actions,
.sw-substrate__search,
.sw-substrate__table-actions {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-substrate__mark {
  display: inline-flex;
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
  align-items: center;
  justify-content: center;
  border: var(--sw-primitive-border-strong);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-accent);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 800;
}

.sw-substrate__search {
  min-width: min(36vw, 320px);
  position: relative;
}

.sw-substrate__search .sw-primitive-input {
  width: 100%;
  padding-left: calc(var(--sw-primitive-space-control-padding) * 3);
}

.sw-substrate__search-icon {
  position: absolute;
  z-index: 1;
  left: var(--sw-primitive-space-control-padding);
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  color: var(--sw-primitive-color-muted);
}

.sw-substrate__hero {
  padding-block: var(--sw-primitive-space-stack-md);
}

.sw-substrate__hero .sw-primitive-action-status {
  max-width: var(--sw-primitive-density-inspector-width);
}

.sw-substrate__layout {
  display: grid;
  grid-template-columns: minmax(max-content, 88px) minmax(0, 1fr);
  gap: var(--sw-primitive-space-grid-gap);
  padding-block: var(--sw-primitive-space-grid-gap);
}

.sw-substrate__rail {
  display: grid;
  align-self: start;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-substrate__rail-item {
  min-height: var(--sw-primitive-density-row-height);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-muted);
  cursor: pointer;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-substrate__rail-item[data-active='true'] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
}

.sw-substrate__workspace {
  display: grid;
  min-width: 0;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-substrate__tab-toolbar {
  align-items: flex-start;
  padding-block: var(--sw-primitive-space-stack-sm);
}

.sw-substrate__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  gap: var(--sw-primitive-space-grid-gap);
  align-items: start;
}

.sw-substrate__form-grid,
.sw-substrate__overlay-grid,
.sw-substrate__table-panel,
.sw-substrate__state-grid {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-substrate__form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-substrate__form-grid .sw-primitive-field:nth-child(3),
.sw-substrate__choice-grid {
  grid-column: 1 / -1;
}

.sw-substrate__choice-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
  align-items: center;
}

.sw-substrate__overlay-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-substrate__overlay-grid .sw-primitive-button,
.sw-substrate__overlay-grid .sw-primitive-button__content {
  width: 100%;
}

.sw-substrate__table-actions {
  justify-content: space-between;
  flex-wrap: wrap;
}

.sw-substrate__scroll {
  max-width: 100%;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
}

.sw-substrate__scroll .sw-primitive-scroll-area__viewport {
  max-height: calc(var(--sw-primitive-density-row-height) * 5);
}

.sw-substrate__state-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-substrate__skeleton-card {
  grid-column: 1 / -1;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  padding: var(--sw-primitive-space-panel-padding);
}

.sw-substrate__strong-text {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
}

.sw-substrate__glyph {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-substrate > .sw-mobile-action-bar {
  position: static;
  margin-top: var(--sw-primitive-space-grid-gap);
}

.sw-substrate > .sw-mobile-action-bar-spacer {
  display: none;
}

@media (max-width: 860px) {
  .sw-substrate__topbar {
    align-items: flex-start;
    flex-direction: column;
    padding-block: var(--sw-primitive-space-stack-md);
  }

  .sw-substrate__topbar-actions,
  .sw-substrate__search {
    width: 100%;
  }

  .sw-substrate__layout,
  .sw-substrate__grid,
  .sw-substrate__state-grid,
  .sw-substrate__form-grid,
  .sw-substrate__choice-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-substrate__rail {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .sw-substrate__topbar,
  .sw-substrate__hero,
  .sw-substrate__layout {
    padding-inline: var(--sw-primitive-space-stack-md);
  }

  .sw-substrate__hero .sw-primitive-action-header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: stretch;
  }

  .sw-substrate__hero .sw-primitive-action-header__trailing,
  .sw-substrate__hero .sw-primitive-action-header__actions {
    grid-column: 1 / -1;
    width: 100%;
  }

  .sw-substrate__hero .sw-primitive-action-header__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-substrate__hero .sw-primitive-action-header__actions .sw-primitive-button,
  .sw-substrate__hero .sw-primitive-action-status {
    width: 100%;
    max-width: none;
  }

  .sw-substrate__overlay-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/*!**************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-shell.css ***!
  \**************************************************************************************************************************************************************************************************************************************************************************/
html,
body {
  width: 100%;
  min-width: 0;
  min-height: 100%;
  margin: 0;
  background: var(--sw-primitive-color-page);
}

body {
  overflow-x: clip;
}

.sw-admin-shell {
  --sw-admin-shell-bg-app: #151515;
  --sw-admin-shell-bg-rail: #111111;
  --sw-admin-shell-bg-page: var(--sw-primitive-color-page);
  --sw-admin-shell-surface: var(--sw-primitive-color-panel);
  --sw-admin-shell-surface-soft: #eef3f7;
  --sw-admin-shell-surface-tint: #f8fbff;
  --sw-admin-shell-ink: var(--sw-primitive-color-text);
  --sw-admin-shell-ink-soft: var(--sw-primitive-color-muted);
  --sw-admin-shell-ink-inverse: #f7fbff;
  --sw-admin-shell-ink-rail-muted: #a3a3a3;
  --sw-admin-shell-line: var(--sw-primitive-color-border);
  --sw-admin-shell-line-soft: rgba(217, 224, 231, 0.72);
  --sw-admin-shell-rail-line: rgba(220, 230, 239, 0.16);
  --sw-admin-shell-rail-hover: rgba(255, 255, 255, 0.09);
  --sw-admin-shell-header-bg: rgba(255, 255, 255, 0.9);
  --sw-admin-shell-rail-note-bg: rgba(255, 255, 255, 0.06);
  --sw-admin-shell-border: 1px solid var(--sw-admin-shell-line);
  --sw-admin-shell-border-soft: 1px solid var(--sw-admin-shell-line-soft);
  --sw-admin-shell-border-rail: 1px solid var(--sw-admin-shell-rail-line);
  --sw-admin-shell-border-transparent: 1px solid transparent;
  --sw-admin-shell-accent: var(--sw-primitive-color-accent);
  --sw-admin-shell-green: var(--sw-primitive-color-success);
  --sw-admin-shell-warning: var(--sw-primitive-color-warning);
  --sw-admin-shell-danger: var(--sw-primitive-color-danger);
  --sw-admin-shell-radius: var(--sw-primitive-radius-panel);
  --sw-admin-shell-radius-sm: var(--sw-primitive-radius-control);
  --sw-admin-shell-shadow: var(--sw-primitive-shadow-panel);
  --sw-admin-shell-rail-width: 5.75rem;
  --sw-admin-shell-context-width: 15.5rem;
  --sw-admin-shell-gap: var(--sw-primitive-space-grid-gap);
  --sw-admin-shell-page-inset: var(--sw-primitive-space-page-inset);
  --sw-admin-shell-panel-pad: var(--sw-primitive-space-panel-padding);
  --sw-admin-shell-panel-pad-compact: var(--sw-primitive-space-panel-padding-compact);
  --sw-admin-shell-row-height: 3.5rem;
  --sw-admin-shell-header-min: 5rem;
  --sw-admin-shell-control: var(--sw-primitive-density-control-height);
  --sw-admin-visual-viewport-width: 100vw;
  --sw-admin-visual-viewport-height: 100dvh;
  --sw-admin-visual-viewport-offset-left: 0px;
  --sw-admin-visual-viewport-offset-top: 0px;
  --sw-admin-visual-viewport-bottom-gap: 0px;
  --sw-admin-mobile-chrome-height: calc(
    var(--sw-primitive-density-mobile-action-height)
    + env(safe-area-inset-bottom)
  );
  --sw-admin-shell-mobile-bar: var(--sw-admin-mobile-chrome-height);
  --sw-admin-shell-title-max: 38rem;
  --sw-admin-shell-subtitle-max: 42rem;
  --sw-admin-shell-status-max: 18rem;
  --sw-admin-shell-summary-min: 8.5rem;
  --sw-admin-shell-body-visual-size: 5rem;
  --sw-admin-shell-state-min: 10rem;
  --sw-admin-shell-header-blur: blur(12px);
  --sw-admin-shell-rail-meta-gap: 0.125rem;
  --sw-admin-shell-focus: var(--sw-primitive-shadow-focus);

  min-height: 100vh;
  min-height: var(--sw-admin-visual-viewport-height, 100dvh);
  display: grid;
  grid-template-columns: var(--sw-admin-shell-rail-width) minmax(0, 1fr);
  background: var(--sw-admin-shell-bg-page);
  color: var(--sw-admin-shell-ink);
  font-family: var(--sw-primitive-font-family-sans);
  letter-spacing: 0;
  overflow-x: clip;
  width: 100%;
}

.sw-admin-shell *,
.sw-admin-shell *::before,
.sw-admin-shell *::after {
  box-sizing: border-box;
}

.sw-admin-shell button,
.sw-admin-shell input,
.sw-admin-shell select,
.sw-admin-shell textarea {
  font: inherit;
  letter-spacing: 0;
}

.sw-admin-shell__rail {
  min-height: 100vh;
  position: sticky;
  top: 0;
  display: flex;
  flex-direction: column;
  gap: var(--sw-admin-shell-gap);
  padding: 0.875rem 0.625rem;
  background: linear-gradient(180deg, var(--sw-admin-shell-bg-rail), var(--sw-admin-shell-bg-app));
  color: var(--sw-admin-shell-ink-inverse);
  z-index: 3;
}

.sw-admin-shell__brand,
.sw-admin-shell__account,
.sw-admin-shell__mobile-action-bar,
.sw-admin-shell__context-note,
.sw-admin-shell__body-tags,
.sw-admin-shell__state-head,
.sw-admin-shell__content-head,
.sw-admin-shell__header,
.sw-admin-shell__header-side,
.sw-admin-shell__actions,
.sw-admin-shell__rail-item,
.sw-admin-shell__context-item,
.sw-admin-shell__body-panel,
.sw-admin-shell__handoff-detail-head,
.sw-admin-shell__handoff-row,
.sw-admin-shell__mobile-active-strip,
.sw-admin-shell__state-card {
  display: flex;
}

.sw-admin-shell__brand {
  align-items: center;
  justify-content: center;
  min-height: var(--sw-admin-shell-control);
  padding-bottom: var(--sw-admin-shell-panel-pad-compact);
  border-bottom: var(--sw-admin-shell-border-rail);
}

.sw-admin-shell__brand-mark,
.sw-admin-shell__avatar,
.sw-admin-shell__summary-icon,
.sw-admin-shell__body-visual,
.sw-admin-shell__rail-icon {
  display: grid;
  place-items: center;
}

.sw-admin-shell__brand-mark {
  width: var(--sw-admin-shell-control);
  height: var(--sw-admin-shell-control);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-ink-inverse);
  color: var(--sw-admin-shell-bg-app);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-admin-shell__brand span:not(.sw-admin-shell__brand-mark) {
  display: none;
}

.sw-admin-shell__brand strong,
.sw-admin-shell__brand small {
  display: block;
}

.sw-admin-shell__brand small {
  color: var(--sw-admin-shell-ink-rail-muted);
}

.sw-admin-shell__rail-list,
.sw-admin-shell__context-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sw-admin-shell__rail-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__rail-scroll {
  min-height: 0;
  flex: 1;
}

.sw-admin-shell__rail-scroll .sw-primitive-scroll-area__viewport {
  max-height: calc(100vh - var(--sw-admin-shell-row-height) - var(--sw-admin-shell-page-inset));
}

.sw-admin-shell__rail-row {
  min-width: 0;
}

.sw-admin-shell__rail-item {
  position: relative;
  width: 100%;
  min-height: 4.25rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.55rem 1.1rem 0.55rem 0.45rem;
  border: 0;
  border-radius: 1.15rem;
  background: transparent;
  color: var(--sw-admin-shell-ink-rail-muted);
  cursor: pointer;
}

.sw-admin-shell__rail-item:hover,
.sw-admin-shell__rail-item:focus-visible,
.sw-admin-shell__rail-item[data-active="true"] {
  background: var(--sw-admin-shell-rail-hover);
  color: var(--sw-admin-shell-ink-inverse);
}

.sw-admin-shell__rail-item:focus-visible {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-admin-shell__rail-item:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-admin-shell__rail-actionable-badge {
  position: absolute;
  top: 0.3rem;
  right: 0.72rem;
  display: inline-flex;
  min-width: 1.15rem;
  height: 1.15rem;
  align-items: center;
  justify-content: center;
  padding: 0 0.28rem;
  border: 2px solid var(--sw-admin-shell-bg-rail);
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-size: 0.58rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 0.2rem 0.55rem rgb(15 23 42 / 0.22);
}

.sw-admin-shell__rail-item:hover .sw-admin-shell__rail-actionable-badge,
.sw-admin-shell__rail-item:focus-visible .sw-admin-shell__rail-actionable-badge,
.sw-admin-shell__rail-item[data-active="true"] .sw-admin-shell__rail-actionable-badge {
  border-color: var(--sw-admin-shell-rail-hover);
}

.sw-admin-shell__rail-reason {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.sw-admin-shell__rail-icon svg,
.sw-admin-shell__context-item svg,
.sw-admin-shell__notify svg,
.sw-admin-shell__state-head svg,
.sw-admin-shell__context-note svg,
.sw-admin-shell__summary-icon svg,
.sw-admin-shell__body-visual svg,
.sw-admin-shell__mobile-summary svg,
.sw-admin-shell__rail-footer svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-admin-shell__rail-copy {
  display: block;
  min-width: 0;
  max-width: 3.8rem;
  text-align: center;
}

.sw-admin-shell__rail-label {
  display: block;
  overflow: hidden;
  color: currentColor;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-admin-shell__rail-meta,
.sw-admin-shell__rail-badge,
.sw-admin-shell__rail-footer {
  display: none;
}

.sw-admin-shell__rail-chevron {
  position: absolute;
  top: 50%;
  right: 0.35rem;
  width: 0.85rem;
  height: 0.85rem;
  transform: translateY(-50%);
  color: currentColor;
  opacity: 0.72;
}

.sw-admin-shell__workspace {
  min-width: 0;
  max-width: 100%;
  display: flex;
  flex-direction: column;
}

.sw-admin-shell__header {
  min-height: var(--sw-admin-shell-header-min);
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-primitive-space-stack-lg) var(--sw-admin-shell-page-inset);
  border-bottom: var(--sw-admin-shell-border);
  background: var(--sw-admin-shell-header-bg);
  position: sticky;
  top: 0;
  z-index: 2;
  backdrop-filter: var(--sw-admin-shell-header-blur);
}

.sw-admin-shell__header-main {
  min-width: 0;
}

/* A route can own its one page heading; navigation/account chrome stays shared. */
.sw-admin-shell__header[data-heading-placement="content"] {
  min-height: 0;
  flex-direction: row;
  padding-block: var(--sw-primitive-space-stack-sm);
}
.sw-admin-shell__header[data-heading-placement="content"] .sw-admin-shell__breadcrumb {
  margin-bottom: 0;
}

.sw-admin-shell__breadcrumb {
  margin-bottom: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__title {
  margin: 0;
  max-width: var(--sw-admin-shell-title-max);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-page-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-shell__subtitle,
.sw-admin-shell__eyebrow,
.sw-admin-shell__context-note,
.sw-admin-shell__summary-card p,
.sw-admin-shell__body-copy p,
.sw-admin-shell__state-card p {
  margin: 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-shell__subtitle {
  max-width: var(--sw-admin-shell-subtitle-max);
  margin-top: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__header-side {
  align-items: center;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__account {
  min-height: var(--sw-admin-shell-control);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-shell__avatar {
  width: var(--sw-primitive-density-close-button-size);
  height: var(--sw-primitive-density-close-button-size);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-bg-app);
  color: var(--sw-admin-shell-ink-inverse);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-admin-shell__account strong,
.sw-admin-shell__account small {
  display: block;
  white-space: nowrap;
}

.sw-admin-shell__account strong {
  font-size: var(--sw-primitive-type-control-size);
}

.sw-admin-shell__account small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-admin-shell__status {
  max-width: var(--sw-admin-shell-status-max);
}

.sw-admin-shell__layout {
  min-width: 0;
  flex: 1;
  display: grid;
  grid-template-columns: var(--sw-admin-shell-context-width) minmax(0, 1fr);
}

.sw-admin-shell__layout[data-context-sidebar="hidden"] {
  grid-template-columns: minmax(0, 1fr);
}

.sw-admin-shell__context {
  padding: var(--sw-admin-shell-page-inset) var(--sw-admin-shell-panel-pad);
  border-right: var(--sw-admin-shell-border);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-shell__context-header {
  margin-bottom: var(--sw-primitive-space-stack-lg);
}

.sw-admin-shell__eyebrow {
  color: var(--sw-admin-shell-green);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
  text-transform: uppercase;
}

.sw-admin-shell__context-title,
.sw-admin-shell__section-title,
.sw-admin-shell__summary-card h3,
.sw-admin-shell__body-copy h3,
.sw-admin-shell__state-card h3 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-shell__context-title {
  margin-top: var(--sw-primitive-space-stack-sm);
  font-size: var(--sw-primitive-type-page-title-size);
}

.sw-admin-shell__context-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__context-scroll {
  min-height: 0;
  max-height: calc(100vh - var(--sw-admin-shell-header-min) - var(--sw-admin-shell-page-inset));
}

/* This navigation only scrolls vertically. Radix's intrinsic-width table
   wrapper must not widen every button when one translated label is longer. */
.sw-admin-shell__context-scroll .sw-primitive-scroll-area__viewport > div {
  display: block !important;
  width: 100%;
}

.sw-admin-shell__context-list > li { min-width: 0; }

.sw-admin-shell__context-item {
  width: 100%;
  min-width: 0;
  min-height: var(--sw-primitive-density-control-height-lg);
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-transparent);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: transparent;
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
  text-align: left;
}

.sw-admin-shell__context-item:hover,
.sw-admin-shell__context-item:focus-visible {
  border-color: var(--sw-admin-shell-line);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__context-item:focus-visible {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-admin-shell__context-item[data-active="true"] {
  border-color: var(--sw-admin-shell-line);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-green);
  font-weight: 700;
}

.sw-admin-shell__context-item:disabled {
  color: var(--sw-admin-shell-ink-soft);
  cursor: not-allowed;
}

.sw-admin-shell__context-label {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.sw-admin-shell__context-reason,
.sw-admin-shell__mobile-reason {
  display: block;
  margin: var(--sw-primitive-space-stack-sm) var(--sw-primitive-space-control-padding) 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-shell__context-note {
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-admin-shell-page-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__main {
  min-width: 0;
  padding: var(--sw-admin-shell-page-inset);
  display: grid;
  gap: var(--sw-admin-shell-gap);
  align-content: start;
}

.sw-admin-shell__actions {
  align-items: center;
  flex-wrap: wrap;
  min-width: 0;
  min-height: var(--sw-primitive-density-toolbar-height);
  padding: var(--sw-primitive-space-toolbar-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-shell__actions .sw-primitive-toolbar__group {
  min-width: 0;
  flex-wrap: wrap;
}

.sw-admin-shell__posture-button[aria-pressed="true"] {
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-admin-shell__content,
.sw-admin-shell__state {
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-admin-shell__content {
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__content-head,
.sw-admin-shell__state-head {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-shell__card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__summary-card {
  min-height: var(--sw-admin-shell-summary-min);
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__summary-icon {
  width: var(--sw-primitive-density-state-icon-size);
  height: var(--sw-primitive-density-state-icon-size);
  margin-bottom: var(--sw-primitive-space-stack-md);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-admin-shell__summary-card p,
.sw-admin-shell__body-copy p {
  margin-top: var(--sw-primitive-space-stack-sm);
}

.sw-admin-shell__body-panel {
  align-items: center;
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-admin-shell-panel-pad);
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-admin-shell__handoff {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__handoff-list {
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-admin-shell__handoff-row {
  width: 100%;
  min-height: var(--sw-admin-shell-row-height);
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
  text-align: left;
}

.sw-admin-shell__handoff-row:hover,
.sw-admin-shell__handoff-row:focus-visible,
.sw-admin-shell__handoff-row[aria-pressed="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-primitive-color-accent-surface);
}

.sw-admin-shell__handoff-row:focus-visible {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-admin-shell__handoff-row span:first-child {
  min-width: 0;
}

.sw-admin-shell__handoff-row strong,
.sw-admin-shell__handoff-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-admin-shell__handoff-row strong {
  font-size: var(--sw-primitive-type-control-size);
}

.sw-admin-shell__handoff-row small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-admin-shell__handoff-detail {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__handoff-detail-head {
  align-items: flex-start;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-shell__handoff-detail h3,
.sw-admin-shell__handoff-detail h4,
.sw-admin-shell__handoff-detail p {
  margin: 0;
}

.sw-admin-shell__handoff-detail h3 {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-shell__handoff-detail h4 {
  margin-top: var(--sw-primitive-space-stack-md);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
}

.sw-admin-shell__handoff-detail p,
.sw-admin-shell__handoff-note {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-shell__handoff-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__handoff-note {
  margin-top: var(--sw-admin-shell-panel-pad);
  padding-top: var(--sw-primitive-space-stack-md);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-admin-shell__body-visual {
  width: var(--sw-admin-shell-body-visual-size);
  min-width: var(--sw-admin-shell-body-visual-size);
  height: var(--sw-admin-shell-body-visual-size);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-accent);
}

.sw-admin-shell__body-tags {
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-admin-shell__state {
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__state-head {
  margin-bottom: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__state-head svg {
  color: var(--sw-admin-shell-accent);
}

.sw-admin-shell__state-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-shell__state-grid > .sw-primitive-state-surface,
.sw-admin-shell__state-card {
  min-height: var(--sw-admin-shell-state-min);
}

.sw-admin-shell__state-card {
  flex-direction: column;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-state-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-shell__skeleton-line {
  width: 100%;
}

.sw-admin-shell__skeleton-line--short {
  width: 62%;
}

.sw-admin-shell__posture-ledger {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-shell__posture-row {
  display: grid;
  grid-template-columns: minmax(0, 12rem) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__posture-row[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-primitive-color-accent-surface);
}

.sw-admin-shell__posture-row strong,
.sw-admin-shell__posture-row span {
  min-width: 0;
}

.sw-admin-shell__posture-row span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-shell__mobile-action-bar {
  display: none;
}

/* The navigation Sheet is portaled outside .sw-admin-shell. Resolve its
   existing shell aliases here instead of inheriting missing variables/font. */
.sw-admin-shell__mobile-sheet {
  --sw-admin-shell-radius: var(--sw-primitive-radius-panel);
  --sw-admin-shell-radius-sm: var(--sw-primitive-radius-control);
  --sw-admin-shell-gap: var(--sw-primitive-space-grid-gap);
  --sw-admin-shell-panel-pad: var(--sw-primitive-space-panel-padding);
  --sw-admin-shell-panel-pad-compact: var(--sw-primitive-space-panel-padding-compact);
  --sw-admin-shell-ink: var(--sw-primitive-color-text);
  --sw-admin-shell-ink-soft: var(--sw-primitive-color-muted);
  --sw-admin-shell-border: var(--sw-primitive-border-default);
  --sw-admin-shell-accent: var(--sw-primitive-color-accent);
  --sw-admin-shell-surface: var(--sw-primitive-color-panel);
  --sw-admin-shell-surface-tint: var(--sw-primitive-color-panel-muted);
  font-family: var(--sw-primitive-font-family-sans);
  font-size: var(--sw-primitive-type-body-size);
  color: var(--sw-primitive-color-text);
  line-height: var(--sw-primitive-type-line-body);
  border-radius: var(--sw-admin-shell-radius) var(--sw-admin-shell-radius) 0 0;
}

.sw-admin-shell__mobile-sheet-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-shell__mobile-sheet-title {
  margin: 0 0 var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
}

.sw-admin-shell__mobile-active-strip {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  margin-bottom: var(--sw-admin-shell-panel-pad);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-shell__mobile-active-strip span {
  min-width: 0;
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-admin-shell__mobile-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: 0;
  margin: 0;
  list-style: none;
}

.sw-admin-shell__mobile-nav-item {
  box-sizing: border-box;
  font: inherit;
  text-align: start;
  display: flex;
  width: 100%;
  min-height: var(--sw-primitive-density-row-height);
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
}

.sw-admin-shell__mobile-nav-item[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-admin-shell-accent);
  font-weight: 700;
}

.sw-admin-shell__mobile-module-status {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
}

.sw-admin-shell__mobile-actionable-badge {
  display: inline-flex;
  min-width: 1.25rem;
  height: 1.25rem;
  align-items: center;
  justify-content: center;
  padding: 0 0.32rem;
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-size: 0.6rem;
  font-weight: 900;
  line-height: 1;
}

.sw-admin-shell__mobile-nav-item:disabled {
  color: var(--sw-admin-shell-ink-soft);
  cursor: not-allowed;
  opacity: 0.76;
}

.sw-admin-shell__mobile-nav-item > span:first-child {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.sw-admin-shell__mobile-nav-item:focus-visible {
  outline: 2px solid var(--sw-primitive-color-accent);
  outline-offset: 2px;
}

.sw-admin-shell__mobile-module-status,
.sw-admin-shell__mobile-actionable-badge {
  overflow: visible;
  white-space: nowrap;
}

@media (min-width: 72em) {
  .sw-admin-shell {
    --sw-admin-shell-rail-width: 5.75rem;
  }

  .sw-admin-shell__brand {
    justify-content: center;
  }

  .sw-admin-shell__brand span:not(.sw-admin-shell__brand-mark),
  .sw-admin-shell__rail-meta,
  .sw-admin-shell__rail-badge,
  .sw-admin-shell__rail-footer {
    display: none;
  }

  .sw-admin-shell__rail-item {
    justify-content: center;
    flex-direction: column;
    padding: 0.55rem 1.1rem 0.55rem 0.45rem;
  }

  .sw-admin-shell__rail-copy {
    display: block;
    min-width: 0;
    max-width: 3.8rem;
    flex: initial;
    text-align: center;
  }
}

@media (max-width: 70em) {
  .sw-admin-shell__card-grid,
  .sw-admin-shell__handoff,
  .sw-admin-shell__state-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-admin-shell__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .sw-admin-shell__header-side {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  /* Compact headers keep one row. The stacked header's full-width account
     section must not shrink the breadcrumb into a narrow vertical column. */
  .sw-admin-shell__header[data-heading-placement="content"] .sw-admin-shell__header-main {
    flex: 1 1 auto;
  }

  .sw-admin-shell__header[data-heading-placement="content"] .sw-admin-shell__header-side {
    width: auto;
    flex: 0 0 auto;
  }
}

@media (max-width: 52em),
  (max-width: 60em) and (max-height: 30em) and (orientation: landscape) {
  .sw-admin-shell {
    grid-template-columns: 1fr !important;
    max-width: 100vw;
    min-height: var(--sw-admin-visual-viewport-height, 100dvh);
  }

  .sw-admin-shell[data-drawer-open="true"] {
    grid-template-columns: 1fr !important;
  }

  .sw-admin-shell__workspace,
  .sw-admin-shell__header,
  .sw-admin-shell__layout,
  .sw-admin-shell__main {
    max-width: 100vw;
    overflow-x: clip;
  }

  .sw-admin-shell__workspace {
    grid-column: 1 / -1;
  }

  /* The visual-lock workspace is viewport-height and main is the scroller.
     Reserve the measured fixed chrome here, not outside that clipped workspace.
     The viewport gap also covers a raised bar while a software keyboard is open. */
  .sw-admin-shell__main {
    padding-block-end: calc(
      var(--sw-admin-shell-page-inset)
      + var(--sw-admin-mobile-chrome-height)
      + var(--sw-admin-visual-viewport-bottom-gap, 0px)
    );
    scroll-padding-block-end: calc(
      var(--sw-primitive-space-stack-md)
      + var(--sw-admin-mobile-chrome-height)
      + var(--sw-admin-visual-viewport-bottom-gap, 0px)
    );
  }

  .sw-admin-shell__rail {
    display: none;
  }

  .sw-admin-shell__layout {
    grid-template-columns: 1fr;
  }

  .sw-admin-shell__context {
    display: none;
  }

  .sw-admin-shell__header {
    position: static;
    display: grid;
    min-height: var(--sw-primitive-density-mobile-action-height);
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--sw-primitive-space-stack-sm);
    flex-direction: row;
    padding: var(--sw-primitive-space-stack-sm) var(--sw-admin-shell-page-inset);
    backdrop-filter: none;
  }

  .sw-admin-shell__breadcrumb,
  .sw-admin-shell__subtitle,
  .sw-admin-shell__status,
  .sw-admin-shell__notify,
  .sw-admin-shell__account small {
    display: none;
  }

  .sw-admin-shell__title {
    overflow: hidden;
    font-size: var(--sw-primitive-type-section-title-size);
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .sw-admin-shell__header-side {
    width: auto;
    min-width: 0;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  .sw-admin-shell__account {
    min-height: var(--sw-primitive-density-control-height-lg);
    max-width: min(38vw, 10rem);
    padding-inline: var(--sw-primitive-space-stack-sm);
  }

  .sw-admin-shell__account strong {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .sw-admin-shell__status {
    max-width: none;
    width: 100%;
  }

  .sw-admin-shell__mobile-action-bar {
    display: grid;
    position: fixed;
    z-index: var(--sw-primitive-layer-mobile-action);
    right: auto;
    bottom: var(--sw-admin-visual-viewport-bottom-gap, 0px);
    left: var(--sw-admin-visual-viewport-offset-left, 0px);
    width: min(
      var(--sw-admin-visual-viewport-width, 100vw),
      calc(100vw - var(--sw-admin-visual-viewport-offset-left, 0px))
    );
    max-width: 100vw;
    max-height: 6rem;
    grid-template-columns: auto minmax(0, 1fr);
    grid-column: auto;
    grid-row: auto;
    contain: layout paint;
  }

  .sw-admin-shell__mobile-action-bar .sw-mobile-action-bar__content span,
  .sw-admin-shell__mobile-action-bar .sw-primitive-button {
    display: inline-flex;
    align-items: center;
    gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-admin-shell__mobile-action-bar .sw-mobile-action-bar__primary .sw-primitive-button {
    width: 100%;
    justify-content: center;
    white-space: normal;
  }

  .sw-admin-shell__mobile-action-bar .sw-mobile-action-bar__primary {
    grid-column: auto;
    justify-content: flex-end;
  }

  .sw-admin-shell__mobile-action-bar[data-page-action-state="present"]
    .sw-mobile-action-bar__content {
    display: none;
  }

  .sw-admin-shell__mobile-action-bar .sw-primitive-button {
    min-width: 2.75rem;
    min-height: 2.75rem;
  }

  /* Labeled Radix choices are buttons, but their associated labels supply
     the touch area. Keep checkbox boxes and switch tracks at their shared sizes. */
  .sw-admin-shell.sw-surface-page .sw-primitive-choice:has(> .sw-primitive-choice__label),
  .sw-admin-shell.sw-surface-page .sw-primitive-choice__label {
    min-height: 2.75rem;
    align-items: center;
  }

  .sw-admin-shell.sw-surface-page .sw-primitive-choice__label {
    display: inline-flex;
    min-width: 2.75rem;
  }

  .sw-admin-shell.sw-surface-page
    :where(
      button:not(:is(.sw-primitive-checkbox, .sw-primitive-switch):has(~ .sw-primitive-choice__label)),
      [role="button"],
      [role="tab"],
      a[href][role="button"],
      a[href][class*="action"],
      a[href][class*="button"],
      select,
      textarea,
      input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"])
    ) {
    min-width: 2.75rem;
    min-height: 2.75rem;
  }

  .sw-admin-shell[data-mobile-navigation-open="true"] .sw-admin-shell__mobile-action-bar,
  body:has(.sw-primitive-dialog__overlay) .sw-admin-shell__mobile-action-bar,
  body:has(.sw-primitive-sheet__overlay) .sw-admin-shell__mobile-action-bar {
    visibility: hidden;
    pointer-events: none;
  }

  .sw-admin-shell__mobile-sheet-grid {
    grid-template-columns: 1fr;
  }

  .sw-admin-shell__handoff,
  .sw-admin-shell__handoff-columns {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 38em) {
  .sw-admin-shell {
    --sw-admin-shell-page-inset: var(--sw-primitive-space-panel-padding-compact);
  }

  .sw-admin-shell__header-side,
  .sw-admin-shell__account,
  .sw-admin-shell__actions,
  .sw-admin-shell__body-panel {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-admin-shell__notify {
    display: none;
  }

  .sw-admin-shell__actions {
    display: grid;
    grid-template-columns: 1fr;
    height: max-content;
    min-height: max-content;
  }

  .sw-admin-shell__card-grid,
  .sw-admin-shell__state-grid {
    grid-template-columns: 1fr;
  }

  .sw-admin-shell__content-head,
  .sw-admin-shell__state-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .sw-admin-shell__actions .sw-primitive-toolbar__group,
  .sw-admin-shell__actions .sw-primitive-button {
    width: 100%;
  }

  .sw-admin-shell__actions .sw-primitive-toolbar__spacer {
    display: none;
  }

  .sw-admin-shell__actions .sw-primitive-toolbar__group {
    display: grid;
    align-items: stretch;
    align-self: stretch;
    grid-template-columns: 1fr;
    margin: 0;
    max-width: 100%;
    min-width: 0;
    transform: none;
    width: auto;
  }

  .sw-admin-shell__posture-row {
    grid-template-columns: 1fr;
    gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-admin-shell__body-visual {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 60em) and (max-height: 30em) and (orientation: landscape) {
  .sw-admin-shell {
    --sw-admin-shell-page-inset: var(--sw-primitive-space-panel-padding-compact);
    --sw-admin-shell-gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-admin-shell__header {
    min-height: 3.5rem;
    padding-block: var(--sw-primitive-space-menu-inset);
  }

  .sw-admin-shell__account {
    max-width: 8rem;
  }

  .sw-admin-shell__avatar,
  .sw-admin-shell__mobile-action-bar .sw-mobile-action-bar__content {
    display: none;
  }

  .sw-admin-shell__main {
    padding-block-start: var(--sw-primitive-space-stack-sm);
  }

  .sw-admin-shell__mobile-action-bar {
    min-height: 3.5rem;
    max-height: 4rem;
    padding-block: var(--sw-primitive-space-menu-inset)
      calc(var(--sw-primitive-space-menu-inset) + env(safe-area-inset-bottom));
  }
}

/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-archetypes.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
.sw-admin-archetypes__toolbar {
  row-gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-archetypes__toolbar-note {
  flex-basis: 100%;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-archetypes__toolbar .sw-primitive-button:disabled {
  border-color: var(--sw-admin-shell-line);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-admin-archetypes__selector {
  flex-wrap: wrap;
  max-width: 100%;
}

.sw-admin-archetypes__selector-tab {
  white-space: nowrap;
}

.sw-admin-archetypes {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-archetypes__head,
.sw-admin-archetypes__primary-head,
.sw-admin-archetypes__inspector-head,
.sw-admin-archetypes__device-pill,
.sw-admin-archetypes__source-map,
.sw-admin-archetypes__source-map div,
.sw-admin-archetypes__mobile-state,
.sw-admin-archetypes__disabled-action {
  display: flex;
}

.sw-admin-archetypes__head {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-archetypes__head p,
.sw-admin-archetypes__primary-head p,
.sw-admin-archetypes__mobile-state p {
  margin: var(--sw-primitive-space-stack-sm) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-archetypes__device-pill {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-admin-archetypes__device-pill svg,
.sw-admin-archetypes__row-visual svg,
.sw-admin-archetypes__inspector-icon svg,
.sw-admin-archetypes__source-map svg,
.sw-admin-archetypes__mobile-state svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-admin-archetypes__metric-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-archetypes__metric {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-archetypes__metric span,
.sw-admin-archetypes__metric strong,
.sw-admin-archetypes__metric small {
  display: block;
}

.sw-admin-archetypes__metric span,
.sw-admin-archetypes__metric small,
.sw-admin-archetypes__row-meta,
.sw-admin-archetypes__inspector-row small,
.sw-admin-archetypes__handoff-list dt,
.sw-admin-archetypes__source-map span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-archetypes__metric strong {
  margin-top: var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-archetypes__metric .sw-primitive-badge {
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-admin-archetypes__workspace-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(var(--sw-admin-shell-context-width), 0.36fr);
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-admin-archetypes__primary-region,
.sw-admin-archetypes__inspector,
.sw-admin-archetypes__source-map {
  min-width: 0;
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-archetypes__primary-region,
.sw-admin-archetypes__inspector {
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-admin-archetypes__primary-head {
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  margin-bottom: var(--sw-admin-shell-panel-pad);
}

.sw-admin-archetypes__primary-head h3,
.sw-admin-archetypes__inspector h3,
.sw-admin-archetypes__mobile-state h3 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-archetypes__primary-head .sw-primitive-field,
.sw-admin-archetypes__primary-head .sw-primitive-input {
  max-width: var(--sw-admin-shell-title-max);
}

.sw-admin-archetypes__table-wrap {
  overflow-x: auto;
}

.sw-admin-archetypes__row-title,
.sw-admin-archetypes__row-meta {
  display: block;
}

.sw-admin-archetypes__row-title {
  color: var(--sw-admin-shell-ink);
  font-weight: 700;
}

.sw-admin-archetypes__row-visual,
.sw-admin-archetypes__inspector-icon {
  display: grid;
  place-items: center;
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-admin-shell-accent);
}

.sw-admin-archetypes__inspector {
  position: sticky;
  top: calc(var(--sw-admin-shell-header-min) + var(--sw-admin-shell-gap));
}

.sw-admin-archetypes__inspector-head {
  align-items: center;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-archetypes__handoff-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  margin: var(--sw-admin-shell-panel-pad) 0;
}

.sw-admin-archetypes__handoff-list div {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-archetypes__handoff-list dt,
.sw-admin-archetypes__handoff-list dd {
  margin: 0;
}

.sw-admin-archetypes__handoff-list dd {
  margin-top: var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-archetypes__inspector-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-archetypes__inspector-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-archetypes__inspector-row strong,
.sw-admin-archetypes__inspector-row small {
  display: block;
}

.sw-admin-archetypes__disabled-action {
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
  width: 100%;
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-archetypes__state-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-archetypes__mobile-state {
  min-height: var(--sw-admin-shell-state-min);
  flex-direction: column;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-state-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-archetypes__mobile-state svg {
  color: var(--sw-admin-shell-green);
}

.sw-admin-archetypes__skeleton-line {
  width: 100%;
}

.sw-admin-archetypes__skeleton-line--short {
  width: 62%;
}

.sw-admin-archetypes__source-map {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
}

.sw-admin-archetypes__source-map div {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-archetypes__source-map svg {
  color: var(--sw-admin-shell-warning);
}

.sw-admin-daily-console,
.sw-admin-state-matrix {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-daily-console__head,
.sw-admin-daily-console__health-head,
.sw-admin-daily-console__panel-head,
.sw-admin-daily-console__storefront-body,
.sw-admin-daily-console__next-action,
.sw-admin-daily-console__inspector-head,
.sw-admin-state-matrix__head,
.sw-admin-state-matrix__body,
.sw-admin-state-matrix__ready-surface,
.sw-admin-state-matrix__mobile-surface {
  display: flex;
}

.sw-admin-daily-console__head,
.sw-admin-state-matrix__head {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-daily-console__head p,
.sw-admin-daily-console__panel-head p,
.sw-admin-daily-console__storefront-preview small,
.sw-admin-daily-console__next-action p,
.sw-admin-daily-console__next-action small,
.sw-admin-daily-console__inspector p,
.sw-admin-daily-console__inspector dt,
.sw-admin-state-matrix__head p,
.sw-admin-state-matrix__action-posture p,
.sw-admin-state-matrix__ready-surface p,
.sw-admin-state-matrix__mobile-surface p {
  margin: var(--sw-primitive-space-stack-sm) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-daily-console__health-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-daily-console__health-card,
.sw-admin-daily-console__queue,
.sw-admin-daily-console__storefront,
.sw-admin-daily-console__next-action,
.sw-admin-daily-console__activity,
.sw-admin-daily-console__inspector,
.sw-admin-state-matrix__action-posture,
.sw-admin-state-matrix__ready-surface,
.sw-admin-state-matrix__mobile-surface {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-daily-console__state-banner {
  min-width: 0;
}

.sw-admin-daily-console__health-card {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-admin-daily-console__health-head,
.sw-admin-daily-console__panel-head,
.sw-admin-daily-console__next-action,
.sw-admin-daily-console__inspector-head,
.sw-admin-state-matrix__body,
.sw-admin-state-matrix__ready-surface,
.sw-admin-state-matrix__mobile-surface {
  align-items: center;
  gap: var(--sw-admin-shell-gap);
}

.sw-admin-daily-console__health-head,
.sw-admin-daily-console__panel-head,
.sw-admin-daily-console__next-action {
  justify-content: space-between;
}

.sw-admin-daily-console__health-head span:first-child,
.sw-admin-daily-console__panel-head h3,
.sw-admin-daily-console__next-action h3,
.sw-admin-daily-console__inspector h3,
.sw-admin-state-matrix__action-posture h3,
.sw-admin-state-matrix__ready-surface h3,
.sw-admin-state-matrix__mobile-surface h3 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-daily-console__health-card strong {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-page-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-admin-daily-console__health-card p,
.sw-admin-daily-console__health-card small {
  margin: 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-daily-console__health-icon,
.sw-admin-daily-console__task-icon,
.sw-admin-state-matrix__ready-surface > svg,
.sw-admin-state-matrix__mobile-surface > svg,
.sw-admin-daily-console__inspector-head > svg {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-admin-shell-accent);
}

.sw-admin-daily-console__health-icon[data-tone='success'],
.sw-admin-daily-console__task-icon[data-tone='success'],
.sw-admin-state-matrix__ready-surface > svg {
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-admin-daily-console__health-icon[data-tone='warning'],
.sw-admin-daily-console__task-icon[data-tone='warning'] {
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-warning);
}

.sw-admin-daily-console__health-icon[data-tone='danger'],
.sw-admin-daily-console__task-icon[data-tone='danger'] {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-admin-shell-danger);
}

.sw-admin-daily-console__main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.54fr);
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-admin-daily-console__left-column,
.sw-admin-daily-console__right-column,
.sw-admin-daily-console__task-list,
.sw-admin-daily-console__task-skeleton,
.sw-admin-daily-console__storefront-facts,
.sw-admin-daily-console__storefront-activity,
.sw-admin-daily-console__inspector dl,
.sw-admin-state-matrix__action-posture {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-admin-daily-console__task-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto auto;
  gap: var(--sw-primitive-space-stack-md);
  align-items: center;
  width: 100%;
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  text-align: left;
}

.sw-admin-daily-console__task-row[data-selected='true'] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-primitive-color-accent-surface);
}

.sw-admin-daily-console__task-main,
.sw-admin-daily-console__task-main strong,
.sw-admin-daily-console__task-main small {
  display: block;
}

.sw-admin-daily-console__task-main strong,
.sw-admin-daily-console__task-count,
.sw-admin-daily-console__storefront-facts dd,
.sw-admin-daily-console__inspector dd {
  color: var(--sw-admin-shell-ink);
  font-weight: 700;
}

.sw-admin-daily-console__task-main small,
.sw-admin-daily-console__storefront-facts dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-daily-console__task-main small {
  display: none;
}

.sw-admin-daily-console__queue-action {
  width: 100%;
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-daily-console__storefront-body {
  flex-direction: column;
  align-items: stretch;
  margin-top: var(--sw-admin-shell-panel-pad);
}

.sw-admin-daily-console__storefront .sw-primitive-button,
.sw-admin-daily-console__next-action .sw-primitive-button {
  width: 100%;
}

.sw-admin-daily-console__storefront-preview {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-daily-console__storefront-browser {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border-bottom: var(--sw-admin-shell-border-soft);
  background: var(--sw-admin-shell-surface);
}

.sw-admin-daily-console__storefront-browser span {
  width: var(--sw-primitive-density-choice-icon-size);
  height: var(--sw-primitive-density-choice-icon-size);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-line);
}

.sw-admin-daily-console__storefront-hero {
  display: grid;
  place-content: center;
  min-height: var(--sw-admin-shell-state-min);
  padding: var(--sw-admin-shell-panel-pad);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-admin-daily-console__storefront-hero strong {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
}

.sw-admin-daily-console__storefront-facts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
}

.sw-admin-daily-console__storefront-facts div,
.sw-admin-daily-console__inspector dl div,
.sw-admin-daily-console__storefront-activity {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-daily-console__storefront-activity h4,
.sw-admin-daily-console__storefront-activity p {
  margin: 0;
}

.sw-admin-daily-console__storefront-activity h4 {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
}

.sw-admin-daily-console__storefront-activity p {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-admin-daily-console__storefront-facts dt,
.sw-admin-daily-console__storefront-facts dd,
.sw-admin-daily-console__inspector dt,
.sw-admin-daily-console__inspector dd {
  margin: 0;
}

.sw-admin-daily-console__next-action {
  align-items: stretch;
  flex-direction: column;
  background: var(--sw-admin-shell-surface-tint);
}

.sw-admin-daily-console__activity {
  overflow-x: auto;
}

.sw-admin-daily-console__skeleton-line,
.sw-admin-state-matrix__skeleton-line {
  width: 100%;
}

.sw-admin-daily-console__skeleton-line--short,
.sw-admin-state-matrix__skeleton-line--short {
  width: 62%;
}

.sw-admin-state-matrix__selector {
  flex-wrap: wrap;
}

.sw-admin-state-matrix__selector-tab {
  white-space: nowrap;
}

.sw-admin-state-matrix__body {
  align-items: stretch;
}

.sw-admin-state-matrix__surface {
  flex: 1 1 auto;
}

.sw-admin-state-matrix__action-posture {
  flex: 0 0 var(--sw-admin-shell-context-width);
}

.sw-storefront-manager {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-storefront-manager__head,
.sw-storefront-manager__device-switch,
.sw-storefront-manager__panel-head,
.sw-storefront-manager__inventory-row,
.sw-storefront-manager__row-actions,
.sw-storefront-manager__storefront-nav,
.sw-storefront-manager__action-strip,
.sw-storefront-manager__action-buttons,
.sw-storefront-manager__action-strip li,
.sw-storefront-manager__module-list span {
  display: flex;
}

.sw-storefront-manager__head,
.sw-storefront-manager__panel-head {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-storefront-manager__head p,
.sw-storefront-manager__panel-head p,
.sw-storefront-manager__inventory-main small,
.sw-storefront-manager__updated,
.sw-storefront-manager__storefront-nav span,
.sw-storefront-manager__hero span,
.sw-storefront-manager__product-rail small,
.sw-storefront-manager__style-list dt,
.sw-storefront-manager__module-list h4,
.sw-storefront-manager__state-list p,
.sw-storefront-manager__compare-slot p,
.sw-storefront-manager__action-strip span,
.sw-storefront-manager__action-strip li {
  margin: var(--sw-primitive-space-stack-sm) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-storefront-manager__device-switch,
.sw-storefront-manager__mode-tabs {
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__device-button[data-active='true'] {
  border-color: var(--sw-admin-shell-green);
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-storefront-manager__workspace {
  display: grid;
  grid-template-columns: minmax(var(--sw-admin-shell-context-width), 0.48fr) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-storefront-manager__inventory {
  grid-row: 1 / span 2;
}

.sw-storefront-manager__preview-column,
.sw-storefront-manager__detail {
  grid-column: 2;
}

.sw-storefront-manager__inventory,
.sw-storefront-manager__preview,
.sw-storefront-manager__detail,
.sw-storefront-manager__compare-slot,
.sw-storefront-manager__action-strip {
  min-width: 0;
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-storefront-manager__inventory,
.sw-storefront-manager__detail,
.sw-storefront-manager__compare-slot,
.sw-storefront-manager__action-strip {
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-storefront-manager__inventory-list,
.sw-storefront-manager__action-strip ul {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-storefront-manager__inventory-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  width: 100%;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  text-align: left;
}

.sw-storefront-manager__inventory-row[data-selected='true'] {
  border-color: var(--sw-admin-shell-green);
  background: var(--sw-primitive-color-success-surface);
}

.sw-storefront-manager__thumb {
  display: grid;
  place-items: center;
  flex: 0 0 var(--sw-admin-shell-body-visual-size);
  width: var(--sw-admin-shell-body-visual-size);
  height: var(--sw-admin-shell-body-visual-size);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-storefront-manager__thumb span,
.sw-storefront-manager__hero-image span,
.sw-storefront-manager__product-rail article > span,
.sw-storefront-manager__compare-columns span {
  display: block;
  border-radius: var(--sw-admin-shell-radius-sm);
  background:
    linear-gradient(
      var(--sw-admin-shell-surface-tint),
      var(--sw-admin-shell-surface-soft)
    );
}

.sw-storefront-manager__thumb span {
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
}

.sw-storefront-manager__inventory-main {
  display: block;
  min-width: 0;
  flex: 1 1 auto;
}

.sw-storefront-manager__inventory-main strong,
.sw-storefront-manager__product-rail strong,
.sw-storefront-manager__style-list dd,
.sw-storefront-manager__module-list span,
.sw-storefront-manager__action-strip strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 700;
}

.sw-storefront-manager__row-actions {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__updated,
.sw-storefront-manager__row-actions {
  grid-column: 2 / -1;
}

.sw-storefront-manager__row-actions span,
.sw-storefront-manager__module-list span,
.sw-storefront-manager__action-strip li {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__row-actions svg,
.sw-storefront-manager__device-button svg,
.sw-storefront-manager__action-button svg,
.sw-storefront-manager__compare-slot > svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-storefront-manager__preview-column,
.sw-storefront-manager__style-list,
.sw-storefront-manager__module-list,
.sw-storefront-manager__state-list {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-storefront-manager__preview {
  overflow: hidden;
}

.sw-storefront-manager__preview[data-device='mobile'] {
  max-width: var(--sw-admin-shell-status-max);
  margin-inline: auto;
}

.sw-storefront-manager__browser-bar {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border-bottom: var(--sw-admin-shell-border-soft);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-storefront-manager__browser-bar span {
  width: var(--sw-primitive-density-choice-icon-size);
  height: var(--sw-primitive-density-choice-icon-size);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-line);
}

.sw-storefront-manager__storefront-frame {
  background: var(--sw-admin-shell-surface);
}

.sw-storefront-manager__storefront-nav {
  align-items: center;
  justify-content: center;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border-bottom: var(--sw-admin-shell-border-soft);
}

.sw-storefront-manager__storefront-nav strong {
  color: var(--sw-admin-shell-ink);
  letter-spacing: 0;
}

.sw-storefront-manager__hero {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  min-height: var(--sw-admin-shell-state-min);
  padding: var(--sw-admin-shell-panel-pad);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-storefront-manager__preview[data-device='mobile'] .sw-storefront-manager__hero {
  grid-template-columns: 1fr;
}

.sw-storefront-manager__hero p,
.sw-storefront-manager__hero h3,
.sw-storefront-manager__module-list h4,
.sw-storefront-manager__compare-slot h3 {
  margin: 0;
}

.sw-storefront-manager__hero h3,
.sw-storefront-manager__panel-head h3,
.sw-storefront-manager__compare-slot h3 {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-storefront-manager__hero p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-storefront-manager__hero button {
  margin-top: var(--sw-admin-shell-panel-pad-compact);
  padding: var(--sw-primitive-space-control-padding-y) var(--sw-primitive-space-control-padding-x);
  border: 0;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-ink);
  color: var(--sw-admin-shell-surface);
  font: inherit;
  font-weight: 700;
}

.sw-storefront-manager__hero-image {
  display: grid;
  place-items: center;
  min-height: var(--sw-admin-shell-state-min);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-storefront-manager__hero-image span {
  width: 62%;
  aspect-ratio: 1;
}

.sw-storefront-manager__product-rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-storefront-manager__preview[data-device='mobile'] .sw-storefront-manager__product-rail {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-storefront-manager__product-rail article {
  min-width: 0;
}

.sw-storefront-manager__product-rail article > span {
  width: 100%;
  aspect-ratio: 1;
  margin-bottom: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__style-list {
  margin: var(--sw-admin-shell-panel-pad) 0;
}

.sw-storefront-manager__style-list div,
.sw-storefront-manager__state-list article {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-storefront-manager__style-list dt,
.sw-storefront-manager__style-list dd {
  margin: 0;
}

.sw-storefront-manager__style-list dd {
  margin-top: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__compare-slot {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  background: var(--sw-admin-shell-surface-tint);
}

.sw-storefront-manager__compare-slot > svg {
  color: var(--sw-admin-shell-warning);
}

.sw-storefront-manager__compare-slot--open {
  grid-template-columns: auto minmax(0, 0.72fr) minmax(0, 1fr);
}

.sw-storefront-manager__compare-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__compare-columns span {
  min-height: var(--sw-admin-shell-row-height);
}

.sw-storefront-manager__action-strip {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-storefront-manager__action-buttons {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-storefront-manager__action-strip ul {
  flex-basis: 100%;
}

.sw-storefront-manager__action-strip > div:first-child span {
  display: block;
}

.sw-operator-workbench,
.sw-detail-inspector {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-operator-workbench__head,
.sw-operator-workbench__head-actions,
.sw-operator-workbench__toolbar,
.sw-operator-workbench__search,
.sw-operator-workbench__product-button,
.sw-operator-workbench__readiness,
.sw-operator-workbench__row-actions,
.sw-operator-workbench__pagination,
.sw-operator-workbench__inspector-head,
.sw-operator-workbench__section-head,
.sw-operator-workbench__check-list li,
.sw-operator-workbench__next-actions li,
.sw-operator-workbench__inspector-actions,
.sw-operator-workbench__mobile-continuation,
.sw-detail-inspector__identity,
.sw-detail-inspector__identity-main,
.sw-detail-inspector__identity-actions,
.sw-detail-inspector__toolbar,
.sw-detail-inspector__lane-head,
.sw-detail-inspector__section-title,
.sw-detail-inspector__blocked-list li,
.sw-detail-inspector__guard-head,
.sw-detail-inspector__guard-actions {
  display: flex;
}

.sw-operator-workbench__head,
.sw-detail-inspector__identity {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-operator-workbench__head p,
.sw-operator-workbench__toolbar .sw-primitive-toolbar-title,
.sw-operator-workbench__category small,
.sw-operator-workbench__readiness small,
.sw-operator-workbench__updated,
.sw-operator-workbench__inspector-head span,
.sw-operator-workbench__fact-grid dt,
.sw-operator-workbench__check-list li,
.sw-operator-workbench__next-actions small,
.sw-operator-workbench__inspector-actions p,
.sw-operator-workbench__mobile-continuation span,
.sw-detail-inspector__identity p,
.sw-detail-inspector__readiness-strip span,
.sw-detail-inspector__lane-head p,
.sw-detail-inspector__facts span,
.sw-detail-inspector__blocked-list li,
.sw-detail-inspector__disabled-reason,
.sw-detail-inspector__guard-list dt,
.sw-detail-inspector__guard-note p {
  margin: var(--sw-primitive-space-stack-sm) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-operator-workbench__head-actions,
.sw-detail-inspector__identity-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__toolbar,
.sw-detail-inspector__toolbar {
  row-gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__search {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: min(100%, var(--sw-admin-shell-status-max));
}

.sw-operator-workbench__search svg,
.sw-operator-workbench__row-actions svg,
.sw-operator-workbench__section-head svg,
.sw-operator-workbench__check-list svg,
.sw-operator-workbench__mobile-continuation svg,
.sw-detail-inspector__lane-icon svg,
.sw-detail-inspector__section-title svg,
.sw-detail-inspector__blocked-list svg,
.sw-detail-inspector__guard-head svg,
.sw-detail-inspector__guard-actions svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
}

.sw-operator-workbench__filters,
.sw-detail-inspector__lane-tabs {
  flex-wrap: wrap;
}

.sw-operator-workbench__filter-tab,
.sw-detail-inspector__lane-tab {
  gap: var(--sw-primitive-space-stack-sm);
  white-space: nowrap;
}

.sw-operator-workbench__filter-tab span {
  padding: 0 var(--sw-primitive-space-stack-sm);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-operator-workbench__workspace {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 0.72fr);
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-operator-workbench__table-panel,
.sw-operator-workbench__inspector,
.sw-detail-inspector__lane-workspace,
.sw-detail-inspector__guard,
.sw-detail-inspector__readiness-strip article {
  min-width: 0;
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-operator-workbench__table-scroll {
  overflow-x: auto;
}

.sw-operator-workbench__row[data-selected='true'] {
  background: var(--sw-primitive-color-accent-surface);
}

.sw-operator-workbench__product-button {
  align-items: center;
  gap: var(--sw-primitive-space-stack-md);
  width: 100%;
  border: 0;
  background: transparent;
  color: var(--sw-admin-shell-ink);
  font: inherit;
  text-align: left;
}

.sw-operator-workbench__product-button strong,
.sw-operator-workbench__product-button small,
.sw-operator-workbench__category strong,
.sw-operator-workbench__category small,
.sw-operator-workbench__readiness small,
.sw-operator-workbench__inspector-head span,
.sw-operator-workbench__next-actions strong {
  display: block;
}

.sw-operator-workbench__product-button strong,
.sw-operator-workbench__category strong,
.sw-operator-workbench__completion strong,
.sw-operator-workbench__fact-grid dd,
.sw-operator-workbench__next-actions strong,
.sw-detail-inspector__readiness-strip strong,
.sw-detail-inspector__facts strong,
.sw-detail-inspector__guard-list dd {
  color: var(--sw-admin-shell-ink);
  font-weight: 700;
}

.sw-operator-workbench__thumb {
  display: grid;
  place-items: center;
  flex: 0 0 var(--sw-primitive-density-control-height-lg);
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-detail-inspector__product-visual {
  display: grid;
  place-items: center;
  flex: 0 0 var(--sw-admin-shell-body-visual-size);
  width: var(--sw-admin-shell-body-visual-size);
  height: var(--sw-admin-shell-body-visual-size);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-operator-workbench__thumb[data-tone='success'],
.sw-detail-inspector__product-visual[data-tone='success'] {
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-operator-workbench__thumb[data-tone='warning'],
.sw-detail-inspector__product-visual[data-tone='warning'] {
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-warning);
}

.sw-operator-workbench__thumb[data-tone='danger'],
.sw-detail-inspector__product-visual[data-tone='danger'] {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-admin-shell-danger);
}

.sw-operator-workbench__completion {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: var(--sw-admin-shell-body-visual-size);
}

.sw-operator-workbench__completion > span {
  display: block;
  height: var(--sw-primitive-density-choice-icon-size);
  overflow: hidden;
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-line);
}

.sw-operator-workbench__completion > span > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sw-admin-shell-warning);
}

.sw-operator-workbench__completion[data-completion='high'] > span > span {
  width: 92%;
  background: var(--sw-admin-shell-green);
}

.sw-operator-workbench__completion[data-completion='medium'] > span > span {
  width: 74%;
}

.sw-operator-workbench__completion[data-completion='low'] > span > span {
  width: 60%;
}

.sw-operator-workbench__readiness {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: max-content;
}

.sw-operator-workbench__row-actions {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__pagination {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-operator-workbench__pagination > span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-operator-workbench__inspector,
.sw-detail-inspector__lane-workspace,
.sw-detail-inspector__guard {
  display: grid;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-operator-workbench__inspector {
  position: sticky;
  top: calc(var(--sw-admin-shell-header-min) + var(--sw-admin-shell-gap));
}

.sw-operator-workbench__inspector-head,
.sw-detail-inspector__identity-main,
.sw-detail-inspector__lane-head,
.sw-detail-inspector__guard-head {
  align-items: center;
  gap: var(--sw-admin-shell-gap);
}

.sw-operator-workbench__inspector-head h3,
.sw-operator-workbench__section-head h4,
.sw-detail-inspector__lane-head h3,
.sw-detail-inspector__section-title h4,
.sw-detail-inspector__guard-head h3 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-operator-workbench__media-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__media-strip span {
  display: block;
  aspect-ratio: 1;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-operator-workbench__media-strip span[data-tone='success'] {
  background: var(--sw-primitive-color-success-surface);
}

.sw-operator-workbench__section-head,
.sw-detail-inspector__section-title {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__fact-grid,
.sw-detail-inspector__readiness-strip,
.sw-detail-inspector__facts {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__fact-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-operator-workbench__fact-grid div,
.sw-detail-inspector__facts article,
.sw-detail-inspector__guard-list div,
.sw-detail-inspector__guard-note {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-operator-workbench__fact-grid dt,
.sw-operator-workbench__fact-grid dd,
.sw-detail-inspector__guard-list dt,
.sw-detail-inspector__guard-list dd {
  margin: 0;
}

.sw-operator-workbench__check-list,
.sw-operator-workbench__next-actions,
.sw-detail-inspector__blocked-list ul {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-operator-workbench__check-list li,
.sw-operator-workbench__next-actions li,
.sw-detail-inspector__blocked-list li {
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__check-list svg,
.sw-detail-inspector__blocked-list svg {
  color: var(--sw-admin-shell-warning);
}

.sw-operator-workbench__next-actions li {
  justify-content: space-between;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-operator-workbench__inspector-actions {
  flex-direction: column;
  align-items: stretch;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-operator-workbench__mobile-continuation {
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-operator-workbench__mobile-continuation svg {
  color: var(--sw-admin-shell-green);
}

.sw-detail-inspector__readiness-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sw-detail-inspector__readiness-strip article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
}

.sw-detail-inspector__lane-tabs {
  align-items: stretch;
}

.sw-detail-inspector__lane-tab {
  align-items: center;
}

.sw-detail-inspector__workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.42fr);
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-detail-inspector__lane-head {
  align-items: flex-start;
}

.sw-detail-inspector__lane-icon,
.sw-detail-inspector__guard-head > svg {
  display: grid;
  place-items: center;
  flex: 0 0 var(--sw-primitive-density-control-height-lg);
  width: var(--sw-primitive-density-control-height-lg);
  height: var(--sw-primitive-density-control-height-lg);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-admin-shell-accent);
}

.sw-detail-inspector__lane-icon[data-tone='success'] {
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-detail-inspector__lane-icon[data-tone='warning'] {
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-warning);
}

.sw-detail-inspector__lane-icon[data-tone='danger'] {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-admin-shell-danger);
}

.sw-detail-inspector__facts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-detail-inspector__facts article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-detail-inspector__lane-action {
  justify-self: start;
}

.sw-detail-inspector__guard {
  position: sticky;
  top: calc(var(--sw-admin-shell-header-min) + var(--sw-admin-shell-gap));
}

.sw-detail-inspector__guard-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-detail-inspector__guard-note {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-detail-inspector__guard-actions {
  flex-direction: column;
  align-items: stretch;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-editor-workspace,
.sw-settings-console {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-editor-workspace__head,
.sw-editor-workspace__panel-head,
.sw-editor-workspace__preview-nav,
.sw-editor-workspace__action-guard,
.sw-editor-workspace__guard-copy,
.sw-editor-workspace__action-buttons,
.sw-editor-workspace__guard-reasons li,
.sw-settings-console__head,
.sw-settings-console__panel-head,
.sw-settings-console__control,
.sw-settings-console__control-reason,
.sw-settings-console__guard-head,
.sw-settings-console__actions,
.sw-settings-console__action-reasons li {
  display: flex;
}

.sw-editor-workspace__head,
.sw-editor-workspace__panel-head,
.sw-settings-console__head,
.sw-settings-console__panel-head {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-editor-workspace__head p,
.sw-editor-workspace__panel-head p,
.sw-editor-workspace__field small,
.sw-editor-workspace__preview-nav span,
.sw-editor-workspace__preview-hero p,
.sw-editor-workspace__diff-panel p,
.sw-editor-workspace__diff-rows span,
.sw-editor-workspace__guard-copy span,
.sw-editor-workspace__guard-reasons li,
.sw-settings-console__head p,
.sw-settings-console__panel-head p,
.sw-settings-console__control-main small,
.sw-settings-console__control-reason span,
.sw-settings-console__guard-head span,
.sw-settings-console__guard-grid span,
.sw-settings-console__action-reasons li {
  margin: var(--sw-primitive-space-stack-sm) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-editor-workspace__panel-head h3,
.sw-editor-workspace__preview-hero h3,
.sw-editor-workspace__diff-panel h3,
.sw-settings-console__panel-head h3,
.sw-settings-console__guard-head h3 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-editor-workspace__section-tabs,
.sw-settings-console__group-tabs {
  flex-wrap: wrap;
}

.sw-editor-workspace__section-tab,
.sw-settings-console__group-tab {
  gap: var(--sw-primitive-space-stack-sm);
  white-space: nowrap;
}

.sw-editor-workspace__workspace,
.sw-settings-console__workspace {
  display: grid;
  gap: var(--sw-admin-shell-gap);
  align-items: start;
}

.sw-editor-workspace__workspace {
  grid-template-columns: minmax(var(--sw-admin-shell-context-width), 0.46fr) minmax(0, 1fr);
}

.sw-settings-console__workspace {
  grid-template-columns: minmax(0, 1fr) minmax(var(--sw-admin-shell-context-width), 0.42fr);
}

.sw-editor-workspace__form-panel,
.sw-editor-workspace__preview-panel,
.sw-editor-workspace__diff-panel,
.sw-editor-workspace__action-guard,
.sw-settings-console__controls,
.sw-settings-console__guard {
  min-width: 0;
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-editor-workspace__form-panel,
.sw-editor-workspace__diff-panel,
.sw-editor-workspace__action-guard,
.sw-settings-console__controls,
.sw-settings-console__guard {
  padding: var(--sw-admin-shell-panel-pad);
}

.sw-editor-workspace__field-list,
.sw-editor-workspace__preview-column,
.sw-editor-workspace__diff-rows,
.sw-settings-console__control-list,
.sw-settings-console__guard,
.sw-settings-console__guard-grid,
.sw-settings-console__action-reasons {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-editor-workspace__field-list {
  margin: var(--sw-admin-shell-panel-pad) 0;
}

.sw-editor-workspace__field,
.sw-settings-console__control-main {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-editor-workspace__field > span {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
}

.sw-editor-workspace__browser-bar {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border-bottom: var(--sw-admin-shell-border-soft);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-editor-workspace__browser-bar span {
  width: var(--sw-primitive-density-choice-icon-size);
  height: var(--sw-primitive-density-choice-icon-size);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-line);
}

.sw-editor-workspace__preview-panel {
  overflow: hidden;
}

.sw-editor-workspace__preview-frame {
  background: var(--sw-admin-shell-surface);
}

.sw-editor-workspace__preview-nav {
  align-items: center;
  justify-content: center;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border-bottom: var(--sw-admin-shell-border-soft);
}

.sw-editor-workspace__preview-nav strong {
  color: var(--sw-admin-shell-ink);
}

.sw-editor-workspace__preview-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  min-height: var(--sw-admin-shell-state-min);
  padding: var(--sw-admin-shell-panel-pad);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-editor-workspace__preview-hero button {
  margin-top: var(--sw-admin-shell-panel-pad-compact);
  padding: var(--sw-primitive-space-control-padding-y) var(--sw-primitive-space-control-padding-x);
  border: 0;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-ink);
  color: var(--sw-admin-shell-surface);
  font: inherit;
  font-weight: 700;
}

.sw-editor-workspace__preview-art {
  display: grid;
  place-items: center;
  min-height: var(--sw-admin-shell-state-min);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-editor-workspace__preview-art span,
.sw-editor-workspace__diff-rows article::before {
  display: block;
  border-radius: var(--sw-admin-shell-radius-sm);
  background:
    linear-gradient(
      var(--sw-admin-shell-surface-tint),
      var(--sw-admin-shell-surface-soft)
    );
}

.sw-editor-workspace__preview-art span {
  width: 62%;
  aspect-ratio: 1;
}

.sw-editor-workspace__diff-panel {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  background: var(--sw-admin-shell-surface-tint);
}

.sw-editor-workspace__diff-panel,
.sw-editor-workspace__guard-copy,
.sw-editor-workspace__guard-reasons li,
.sw-settings-console__control-reason,
.sw-settings-console__guard-head,
.sw-settings-console__action-reasons li {
  gap: var(--sw-admin-shell-gap);
}

.sw-editor-workspace__diff-panel > svg,
.sw-editor-workspace__guard-copy > svg,
.sw-settings-console__guard-head > svg,
.sw-settings-console__guard-grid svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  flex: 0 0 auto;
  color: var(--sw-admin-shell-warning);
}

.sw-editor-workspace__diff-panel--open {
  grid-template-columns: auto minmax(0, 0.5fr) minmax(0, 1fr);
}

.sw-editor-workspace__diff-rows {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-editor-workspace__diff-rows article,
.sw-settings-console__control,
.sw-settings-console__guard-grid article {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-editor-workspace__diff-rows article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-editor-workspace__diff-rows article::before {
  content: "";
  width: 100%;
  min-height: var(--sw-admin-shell-row-height);
}

.sw-editor-workspace__diff-rows strong,
.sw-editor-workspace__guard-copy strong,
.sw-settings-console__guard-grid strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 700;
}

.sw-editor-workspace__action-guard {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
  align-items: start;
  gap: var(--sw-admin-shell-gap);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-editor-workspace__guard-copy {
  align-items: flex-start;
}

.sw-editor-workspace__guard-copy strong,
.sw-editor-workspace__guard-copy span {
  display: block;
}

.sw-editor-workspace__action-buttons {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-editor-workspace__action-button:disabled,
.sw-settings-console__actions .sw-primitive-button:disabled {
  border-color: var(--sw-admin-shell-line);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-editor-workspace__guard-reasons,
.sw-settings-console__action-reasons {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-editor-workspace__guard-reasons {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-editor-workspace__guard-reasons li,
.sw-settings-console__action-reasons li {
  align-items: center;
}

.sw-editor-workspace__action-button svg,
.sw-settings-console__actions svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
}

.sw-settings-console__control {
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-settings-console__control-main {
  flex: 1 1 auto;
  min-width: 0;
}

.sw-settings-console__control-reason {
  align-items: center;
  justify-content: flex-end;
  max-width: var(--sw-admin-shell-title-max);
}

.sw-settings-console__guard {
  position: sticky;
  top: calc(var(--sw-admin-shell-header-min) + var(--sw-admin-shell-gap));
}

.sw-settings-console__guard-head {
  align-items: flex-start;
}

.sw-settings-console__guard-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-settings-console__guard-grid article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-settings-console__actions {
  flex-direction: column;
  align-items: stretch;
  gap: var(--sw-primitive-space-stack-sm);
}

@media (min-width: 92em) {
  .sw-storefront-manager__workspace {
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.2fr) minmax(var(--sw-admin-shell-context-width), 0.55fr);
  }

  .sw-storefront-manager__inventory {
    grid-row: auto;
  }

  .sw-storefront-manager__preview-column,
  .sw-storefront-manager__detail {
    grid-column: auto;
  }
}

@media (max-width: 70em) {
  .sw-admin-archetypes__workspace-grid,
  .sw-admin-archetypes__state-grid,
  .sw-admin-daily-console__health-grid,
  .sw-detail-inspector__readiness-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-admin-daily-console__main-grid,
  .sw-admin-state-matrix__body,
  .sw-operator-workbench__workspace,
  .sw-detail-inspector__workspace,
  .sw-editor-workspace__workspace,
  .sw-settings-console__workspace {
    grid-template-columns: 1fr;
  }

  .sw-admin-archetypes__inspector,
  .sw-operator-workbench__inspector,
  .sw-detail-inspector__guard,
  .sw-settings-console__guard {
    position: static;
  }

}

@media (max-width: 52em) {
  .sw-admin-archetypes__head,
  .sw-admin-archetypes__primary-head,
  .sw-admin-archetypes__source-map,
  .sw-storefront-manager__head,
  .sw-storefront-manager__panel-head,
  .sw-storefront-manager__action-strip,
  .sw-storefront-manager__compare-slot,
  .sw-storefront-manager__compare-slot--open,
  .sw-operator-workbench__head,
  .sw-operator-workbench__head-actions,
  .sw-operator-workbench__toolbar,
  .sw-operator-workbench__pagination,
  .sw-detail-inspector__identity,
  .sw-detail-inspector__identity-actions,
  .sw-detail-inspector__toolbar,
  .sw-detail-inspector__lane-head,
  .sw-editor-workspace__head,
  .sw-editor-workspace__panel-head,
  .sw-editor-workspace__preview-nav,
  .sw-editor-workspace__diff-panel,
  .sw-editor-workspace__diff-panel--open,
  .sw-editor-workspace__action-guard,
  .sw-editor-workspace__action-buttons,
  .sw-settings-console__head,
  .sw-settings-console__panel-head,
  .sw-settings-console__control,
  .sw-settings-console__control-reason {
    align-items: stretch;
    flex-direction: column;
    grid-template-columns: 1fr;
  }

  .sw-admin-archetypes__metric-strip,
  .sw-admin-archetypes__workspace-grid,
  .sw-admin-archetypes__state-grid,
  .sw-admin-daily-console__health-grid,
  .sw-admin-daily-console__main-grid,
  .sw-storefront-manager__workspace,
  .sw-storefront-manager__hero,
  .sw-storefront-manager__product-rail,
  .sw-storefront-manager__compare-columns,
  .sw-operator-workbench__workspace,
  .sw-operator-workbench__fact-grid,
  .sw-detail-inspector__workspace,
  .sw-detail-inspector__readiness-strip,
  .sw-detail-inspector__facts,
  .sw-editor-workspace__workspace,
  .sw-editor-workspace__preview-hero,
  .sw-editor-workspace__diff-rows,
  .sw-settings-console__workspace,
  .sw-settings-console__guard-grid {
    grid-template-columns: 1fr;
  }

  .sw-storefront-manager__inventory {
    grid-row: auto;
  }

  .sw-storefront-manager__preview-column,
  .sw-storefront-manager__detail {
    grid-column: auto;
  }

  .sw-admin-archetypes__primary-head .sw-primitive-field,
  .sw-admin-archetypes__primary-head .sw-primitive-input {
    max-width: none;
  }

  .sw-admin-daily-console__head,
  .sw-admin-daily-console__panel-head,
  .sw-admin-daily-console__storefront-body,
  .sw-admin-daily-console__next-action,
  .sw-admin-state-matrix__head,
  .sw-admin-state-matrix__body {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-admin-daily-console__task-row {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .sw-storefront-manager__storefront-nav,
  .sw-storefront-manager__action-buttons,
  .sw-storefront-manager__action-button,
  .sw-operator-workbench__head-actions .sw-primitive-button,
  .sw-detail-inspector__identity-actions .sw-primitive-button,
  .sw-detail-inspector__lane-action,
  .sw-editor-workspace__action-buttons,
  .sw-editor-workspace__action-button,
  .sw-settings-console__actions .sw-primitive-button {
    width: 100%;
  }

  .sw-storefront-manager__storefront-nav {
    justify-content: flex-start;
    overflow-x: auto;
  }

  .sw-storefront-manager__action-buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-storefront-manager__action-strip {
    position: sticky;
    bottom: var(--sw-primitive-space-stack-md);
    z-index: 1;
  }

  .sw-admin-shell:has(.sw-editor-workspace) .sw-admin-shell__mobile-action-bar,
  .sw-admin-shell:has(.sw-settings-console) .sw-admin-shell__mobile-action-bar {
    position: static;
  }

  .sw-operator-workbench__table,
  .sw-operator-workbench__table-head,
  .sw-operator-workbench__table-body,
  .sw-operator-workbench__row {
    display: block;
  }

  .sw-operator-workbench__table-head {
    display: none;
    border: 0;
  }

  .sw-operator-workbench__table-body {
    display: grid;
    gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-operator-workbench__row {
    border: var(--sw-admin-shell-border-soft);
    border-radius: var(--sw-admin-shell-radius-sm);
    background: var(--sw-admin-shell-surface);
  }

  .sw-operator-workbench__row > td {
    display: block;
    border-bottom: var(--sw-admin-shell-border-soft);
  }

  .sw-operator-workbench__row > td:last-child {
    border-bottom: 0;
  }

  .sw-admin-daily-console__task-count {
    grid-column: 2 / -1;
  }

  .sw-admin-state-matrix__action-posture,
  .sw-admin-daily-console__storefront-facts {
    flex-basis: auto;
  }
}

/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-ai-work-center.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
.sw-shop-admin-frame__rail-signals {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.4rem;
}

.sw-shop-admin-frame__rail-actionable-badge,
.sw-shop-admin-frame__mobile-actionable-badge {
  display: inline-flex;
  min-width: 1.3rem;
  height: 1.3rem;
  align-items: center;
  justify-content: center;
  padding: 0 0.32rem;
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-size: 0.58rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 0.2rem 0.55rem rgb(15 23 42 / 0.18);
}

.sw-shop-admin-frame__mobile-tab {
  position: relative;
}

.sw-shop-admin-frame__mobile-actionable-badge {
  position: absolute;
  top: 0.2rem;
  right: 0.35rem;
  min-width: 1.15rem;
  height: 1.15rem;
  padding: 0 0.25rem;
}

.sw-ai-work-center {
  display: grid;
  min-width: 0;
  gap: var(--sw-primitive-space-stack-lg);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-ai-work-center :is(h1, h3, h4, p, dl, dd) {
  margin: 0;
  overflow-wrap: anywhere;
}

.sw-ai-work-center__heading {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-ai-work-center__heading h1 {
  font-size: var(--sw-primitive-type-page-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-ai-work-center__heading p,
.sw-ai-work-center__muted,
.sw-ai-work-center small,
.sw-ai-work-center dt {
  color: var(--sw-admin-shell-ink-soft);
}

.sw-ai-work-center small,
.sw-ai-work-center dt {
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-ai-work-center :is(button, select, .sw-primitive-button) {
  min-height: var(--sw-primitive-density-control-height-lg);
  max-width: 100%;
}

.sw-ai-work-center .sw-primitive-button {
  height: auto;
  white-space: normal;
  text-align: center;
}

.sw-ai-work-center .sw-primitive-button__content {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-ai-work-center :is(button, select, a, [tabindex]):focus-visible {
  outline: 2px solid var(--sw-admin-shell-accent);
  outline-offset: 2px;
}

.sw-ai-work-center__toolbar,
.sw-ai-work-center__body {
  display: grid;
  min-width: 0;
  gap: var(--sw-primitive-space-stack-lg);
}

.sw-ai-work-center__toolbar {
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-ai-work-center__view-tabs {
  display: flex;
  min-width: 0;
  gap: var(--sw-primitive-space-stack-sm);
  padding: 4px;
  overflow-x: auto;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-ai-work-center__view-tabs button {
  flex: 1 0 auto;
  max-width: none;
  white-space: nowrap;
}

.sw-ai-work-center__view-tabs button[aria-selected="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-admin-shell-accent);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-ai-work-center__toolbar-controls,
.sw-ai-work-center__cost-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-ai-work-center__toolbar-controls {
  align-items: end;
  justify-content: space-between;
}

.sw-ai-work-center__toolbar-controls label {
  display: grid;
  min-width: 0;
  width: min(22rem, 100%);
  gap: var(--sw-primitive-space-stack-sm);
  font-weight: 600;
}

.sw-ai-work-center__toolbar-controls select {
  width: 100%;
  min-width: 0;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-ai-work-center__summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
}

.sw-ai-work-center__summary article,
.sw-ai-work-center__work-card {
  display: grid;
  min-width: 0;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
}

.sw-ai-work-center__summary span {
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink-soft);
}

.sw-ai-work-center__summary strong {
  font-size: var(--sw-primitive-type-page-title-size);
  line-height: var(--sw-primitive-type-line-tight);
  font-variant-numeric: tabular-nums;
}

.sw-ai-work-center__summary article[data-emphasis="true"],
.sw-ai-work-center__work-card[data-tone="warning"] {
  border-color: var(--sw-admin-shell-warning);
}

.sw-ai-work-center__work-card[data-tone="info"] {
  border-color: var(--sw-primitive-color-stale);
}

.sw-ai-work-center__boundary,
.sw-ai-work-center__source-context,
.sw-ai-work-center__work-status,
.sw-ai-work-center__cost,
.sw-ai-work-center__feedback,
.sw-ai-work-center__focus {
  min-width: 0;
  padding: var(--sw-primitive-space-stack-md);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-ai-work-center__boundary,
.sw-ai-work-center__cost,
.sw-ai-work-center__focus {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-ai-work-center__source-context,
.sw-ai-work-center__work-status {
  display: flex;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-ai-work-center__source-context svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.sw-ai-work-center__source-context span,
.sw-ai-work-center__work-status span {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.sw-ai-work-center__source-context[data-tone="success"] {
  background: var(--sw-primitive-color-success-surface);
}

.sw-ai-work-center__source-context[data-tone="danger"],
.sw-ai-work-center__feedback[role="alert"] {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-admin-shell-danger);
}

.sw-ai-work-center__work-card[data-tone="warning"] .sw-ai-work-center__work-status {
  background: var(--sw-primitive-color-warning-surface);
}

.sw-ai-work-center__work-card[data-tone="info"] .sw-ai-work-center__work-status {
  background: var(--sw-primitive-color-stale-surface);
}

.sw-ai-work-center__work-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-ai-work-center__work-card > header,
.sw-ai-work-center__work-card > footer {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-ai-work-center__work-card > header > div {
  min-width: 0;
  flex: 1 1 12rem;
}

.sw-ai-work-center__work-card :is(h3, h4) {
  font-size: var(--sw-primitive-type-section-title-size);
}

.sw-ai-work-center__work-card dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-ai-work-center__work-card dl > div {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.sw-ai-work-center__work-card dd {
  font-variant-numeric: tabular-nums;
}

.sw-ai-work-center__work-card > footer {
  padding-top: var(--sw-primitive-space-stack-md);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-ai-work-center__work-card > footer small {
  max-width: 22rem;
}

.sw-ai-work-center__state,
.sw-ai-work-center__empty {
  display: grid;
  min-width: 0;
  min-height: 12rem;
  place-items: center;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  text-align: center;
}

.sw-ai-work-center__state > div {
  display: grid;
  min-width: 0;
  justify-items: center;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-ai-work-center__loading {
  width: min(22rem, 100%);
  height: 4rem;
}

.sw-ai-work-center__truncated {
  color: var(--sw-admin-shell-ink-soft);
  text-align: center;
}

.sw-ai-work-center__spin {
  animation: sw-ai-work-center-spin 0.9s linear infinite;
}

@keyframes sw-ai-work-center-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .sw-ai-work-center *,
  .sw-ai-work-center *::before,
  .sw-ai-work-center *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

@media (max-width: 64em) {
  .sw-ai-work-center__summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sw-ai-work-center__work-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 52em) {
  .sw-ai-work-center :is(button, select, .sw-primitive-button) {
    min-height: 44px;
  }

  .sw-ai-work-center__toolbar-controls {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-ai-work-center__toolbar-controls label {
    width: 100%;
  }

  .sw-ai-work-center__summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-ai-work-center__work-card dl {
    grid-template-columns: 1fr;
  }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-products.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
.sw-products-toolbar,
.sw-products-toolbar__actions,
.sw-products-catalog__hero-actions,
.sw-products-panel__head,
.sw-products-product-cell,
.sw-products-table__action,
.sw-products-chip-list,
.sw-product-detail__header,
.sw-product-detail__actions,
.sw-product-detail__tabs,
.sw-product-detail__tab,
.sw-product-pricing__heading,
.sw-product-pricing__owner-head,
.sw-product-media__heading,
.sw-product-media-card__head,
.sw-product-variant-matrix__head,
.sw-product-inventory__heading,
.sw-product-description-block strong {
  display: flex;
  align-items: center;
}

.sw-products-toolbar {
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1rem 1.125rem;
  border: var(--sw-admin-shell-border);
  border-radius: 1.25rem;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-products-toolbar h2,
.sw-products-catalog h2,
.sw-product-detail h2,
.sw-products-panel h3,
.sw-product-detail-card h3,
.sw-product-pricing__owner-card h4,
.sw-product-media-posture__body h4,
.sw-product-description-blocks h3,
.sw-product-description-ai h3 {
  margin: 0;
  letter-spacing: -0.035em;
}

.sw-products-toolbar h2 {
  font-size: 1.2rem;
}

.sw-products-toolbar__actions,
.sw-products-catalog__hero-actions,
.sw-products-chip-list {
  gap: 0.625rem;
  flex-wrap: wrap;
}

.sw-products-toolbar__search,
.sw-products-toolbar__filter {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-height: var(--sw-primitive-density-control-height-lg);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-neutral-surface);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 800;
}

.sw-products-toolbar__search svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
}

.sw-products-toolbar__search input,
.sw-products-toolbar__filter select {
  min-width: 0;
  border: 0;
  background: transparent;
  color: var(--sw-admin-shell-ink);
  font: inherit;
  outline: 0;
}

.sw-products-toolbar__search input {
  width: min(100%, var(--sw-admin-shell-context-width));
}

.sw-products-toolbar__search input::placeholder {
  color: var(--sw-admin-shell-ink-soft);
}

.sw-products-toolbar__filter span {
  color: var(--sw-admin-shell-ink-soft);
}

.sw-products-toolbar__filter select {
  min-width: var(--sw-primitive-density-select-content-min-width);
  cursor: pointer;
}

.sw-products-toolbar__search:focus-within,
.sw-products-toolbar__filter:focus-within {
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-products-eyebrow {
  margin: 0 0 0.35rem;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.sw-products-muted {
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.55;
}

.sw-products-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-height: 2.5rem;
  padding: 0 1rem;
  border-radius: 0.875rem;
  font-size: 0.875rem;
  font-weight: 900;
  text-decoration: none;
}

.sw-products-action svg {
  width: 0.95rem;
  height: 0.95rem;
}

.sw-products-action--primary {
  border: 1px solid #2563eb;
  background: linear-gradient(135deg, #2563eb, #4f46e5);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.22);
}

.sw-products-action--secondary {
  border: 1px solid #d7e0ee;
  background: #ffffff;
  color: #334155;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.05);
}

.sw-products-action--danger {
  border: 1px solid var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-primitive-color-danger);
}

.sw-products-action:disabled,
.sw-products-icon-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.sw-products-catalog,
.sw-product-detail {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.sw-product-public-readiness {
  min-width: 0;
  display: grid;
  gap: 0.9rem;
  padding: 1rem;
}

.sw-product-public-readiness--merchant {
  align-content: start;
  overflow: hidden;
}

.sw-product-public-readiness__hero {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: start;
}

.sw-product-public-readiness__copy {
  min-width: 0;
  display: grid;
  gap: 0.45rem;
}

.sw-product-public-readiness__copy > *,
.sw-product-public-readiness__remaining li > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-product-public-readiness__secondary,
.sw-product-public-readiness__remaining p,
.sw-product-public-readiness__remaining small {
  margin: 0;
  color: #64748b;
  line-height: 1.5;
}

.sw-product-public-readiness__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2rem;
  max-width: 100%;
  padding: 0.3rem 0.7rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
}

.sw-product-public-readiness__status--success {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
}

.sw-product-public-readiness__status--attention {
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
}

.sw-product-public-readiness__status--neutral {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #475569;
}

.sw-product-public-readiness__status--critical {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}

.sw-product-public-readiness__primary-action {
  justify-self: start;
  min-width: min(100%, 11rem);
  min-height: 2.75rem;
}

.sw-product-public-readiness__primary-action--disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.sw-product-public-readiness__remaining {
  min-width: 0;
  display: grid;
  gap: 0.55rem;
  padding-top: 0.75rem;
  border-top: 1px solid #e2e8f0;
}

.sw-product-public-readiness__remaining ul {
  min-width: 0;
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-product-public-readiness__remaining li {
  min-width: 0;
  display: grid;
  gap: 0.2rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.8rem;
  background: #f8fafc;
}

@media (max-width: 760px) {
  .sw-product-public-readiness__hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-public-readiness__status {
    justify-self: start;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .sw-product-public-readiness__primary-action {
    width: 100%;
    min-width: 0;
  }
}

.sw-products-catalog {
  container: sw-products-catalog / inline-size;
}

.sw-products-catalog__hero {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1.25rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.45rem;
  background: linear-gradient(135deg, #ffffff 0%, #f7fbff 52%, #eff6ff 100%);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.1);
}

.sw-products-catalog__hero h2,
.sw-product-detail__title h2 {
  color: #0f172a;
  font-size: clamp(1.6rem, 2.4vw, 2.35rem);
  line-height: 1.02;
}

.sw-products-catalog__hero p {
  max-width: 44rem;
  margin: 0.85rem 0 0;
  color: #475569;
  line-height: 1.65;
}

.sw-products-catalog__hero-actions {
  align-content: center;
  justify-content: flex-end;
}

.sw-products-alert {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.85rem 1rem;
  border: 1px solid #fecaca;
  border-radius: 1rem;
  background: #fff1f2;
  color: #991b1b;
  font-weight: 850;
}

.sw-products-alert svg {
  width: 1rem;
  height: 1rem;
}

.sw-products-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

.sw-products-metric,
.sw-products-panel,
.sw-product-detail-card,
.sw-product-description-blocks,
.sw-product-description-ai {
  min-width: 0;
  border: 1px solid #dfe8f5;
  border-radius: 1.25rem;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-products-metric {
  padding: 0.9rem 1rem;
}

.sw-products-metric__icon {
  display: grid;
  place-items: center;
  width: 2.1rem;
  height: 2.1rem;
  margin-bottom: 0.8rem;
  border-radius: 0.8rem;
  background: linear-gradient(135deg, #dbeafe, #eef2ff);
  color: #2563eb;
}

.sw-products-metric__icon svg {
  width: 1rem;
  height: 1rem;
}

.sw-products-metric span:not(.sw-products-metric__icon),
.sw-products-metric small {
  display: block;
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 800;
}

.sw-products-metric strong {
  display: block;
  margin: 0.25rem 0;
  color: #111827;
  font-size: 1.35rem;
  font-weight: 950;
}

.sw-products-catalog__workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--sw-admin-shell-status-max);
  gap: 1rem;
  min-width: 0;
}

.sw-products-panel,
.sw-product-detail-card,
.sw-product-description-blocks,
.sw-product-description-ai {
  padding: 1rem;
}

.sw-products-panel__head {
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.9rem;
}

.sw-products-panel__head h3,
.sw-product-detail-card h3,
.sw-product-description-blocks h3,
.sw-product-description-ai h3 {
  font-size: 1.05rem;
}

.sw-products-table {
  --sw-products-table-columns:
    minmax(calc(var(--sw-admin-shell-control) * 1.45), calc(var(--sw-admin-shell-control) * 1.45))
    minmax(14ch, 0.9fr)
    minmax(12ch, 0.8fr)
    minmax(14ch, 0.9fr)
    minmax(22ch, 1.7fr)
    minmax(12ch, 0.8fr)
    minmax(15ch, 15ch);

  display: grid;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  scrollbar-gutter: stable;
}

.sw-products-table__row {
  display: grid;
  grid-template-columns: var(--sw-products-table-columns);
  align-items: center;
  gap: 0.75rem;
  box-sizing: border-box;
  width: 100%;
  min-width: max(100%, 90ch);
  padding: 0.8rem 0.95rem;
  border: 0;
  border-bottom: 1px solid #e2e8f0;
  background: #ffffff;
  color: #111827;
  text-align: left;
}

.sw-products-table__row--head {
  background: #f8fafc;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-products-table__row--body {
  cursor: default;
  font: inherit;
}

.sw-products-table__row--body:hover,
.sw-products-table__row--body[data-active="true"] {
  background: #f8fbff;
}

.sw-products-table__row--loading {
  height: 4.3rem;
  background: linear-gradient(90deg, #f8fafc, #eef2ff, #f8fafc);
}

.sw-products-price-cell,
.sw-products-inventory-cell {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  color: #111827;
  font-size: 0.86rem;
  font-weight: 900;
}

.sw-products-price-cell strong,
.sw-products-price-cell small,
.sw-products-inventory-cell strong,
.sw-products-inventory-cell small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-products-price-cell small,
.sw-products-inventory-cell small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-products-price-cell[data-state="unavailable"],
.sw-products-inventory-cell[data-state="unavailable"] {
  color: var(--sw-admin-shell-warning);
}

.sw-products-price-cell--sale {
  color: var(--sw-admin-shell-warning);
}

.sw-products-price-cell--sale small {
  color: var(--sw-admin-shell-warning);
}

.sw-products-status-stack {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.35rem;
}

.sw-products-product-cell {
  min-width: 0;
  gap: 0.75rem;
}

.sw-products-product-cell strong,
.sw-products-product-cell small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-products-product-cell small {
  margin-top: 0.25rem;
  color: #64748b;
  font-size: 0.78rem;
}

.sw-products-catalog__thumb,
.sw-product-detail__hero-image {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 3rem;
  height: 3rem;
  border-radius: 0.95rem;
  object-fit: cover;
  background: #e2e8f0;
  color: #64748b;
}

.sw-products-catalog__thumb svg,
.sw-product-detail__hero-image svg {
  width: 1.2rem;
  height: 1.2rem;
}

.sw-products-table__action {
  justify-content: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-accent);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 900;
}

.sw-products-table__inspect-action,
.sw-products-table__edit-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-height: var(--sw-admin-shell-control);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 950;
  text-decoration: none;
  cursor: pointer;
}

.sw-products-table__inspect-action {
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-products-table__edit-action {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-admin-shell-accent);
  color: var(--sw-admin-shell-ink-inverse);
}

.sw-products-table__inspect-action:focus-visible,
.sw-products-table__edit-action:focus-visible {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-products-table__edit-action svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
}

.sw-products-empty {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-state-padding);
  color: var(--sw-admin-shell-ink-soft);
  text-align: center;
}

.sw-products-empty strong {
  color: var(--sw-admin-shell-ink);
}

.sw-products-empty span {
  line-height: var(--sw-primitive-type-line-body);
}

.sw-products-inspector__body {
  display: grid;
  gap: 0.8rem;
}

.sw-products-inspector__body--state {
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-products-inspector__body--state strong {
  color: var(--sw-admin-shell-ink);
}

.sw-products-inspector__body .sw-products-catalog__thumb {
  width: 100%;
  height: 10rem;
  border-radius: 1rem;
}

.sw-products-inspector__body h4 {
  margin: 0;
  font-size: 1.1rem;
}

.sw-products-inspector__body p {
  margin: 0;
  color: #64748b;
  font-size: 0.82rem;
}

.sw-product-detail__header {
  gap: 1rem;
  min-width: 0;
  padding: 1.1rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.45rem;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.1);
}

.sw-product-detail__hero-image {
  width: 5.8rem;
  height: 5.8rem;
}

.sw-product-detail__title {
  min-width: 0;
  flex: 1;
}

.sw-product-detail__title span {
  display: block;
  margin-top: 0.25rem;
  color: #64748b;
  font-weight: 800;
}

.sw-product-detail__actions {
  justify-content: flex-end;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.sw-product-detail__actions .sw-products-action,
.sw-product-page-access__primary {
  min-height: 2.75rem;
}

.sw-product-page-access {
  display: grid;
  grid-template-columns: minmax(13rem, 0.75fr) minmax(0, 2fr);
  gap: 0.55rem 0.75rem;
  min-width: 0;
  padding: 0.7rem 0.8rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.sw-product-page-access__copy,
.sw-product-page-access__layers article,
.sw-product-page-access__details > div,
.sw-product-page-access__release-details {
  min-width: 0;
}

.sw-product-page-access__copy {
  display: grid;
  align-content: center;
  gap: 0.18rem;
}

.sw-product-page-access__copy > strong {
  color: var(--sw-admin-shell-ink);
  font-size: 0.95rem;
  line-height: 1.3;
}

.sw-product-page-access__copy > p:last-child,
.sw-product-page-access__details p,
.sw-product-page-access__details li span {
  margin: 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
  overflow-wrap: anywhere;
}

.sw-product-page-access__layers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.45rem;
  min-width: 0;
}

.sw-product-page-access__layers article {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 0.45rem;
  padding: 0.45rem 0.55rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-product-page-access__layers article > span {
  flex: 0 0 auto;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-page-access__details,
.sw-product-page-access__notice,
.sw-product-page-access__error {
  grid-column: 1 / -1;
}

.sw-product-page-access__details {
  border-top: 1px solid #e2e8f0;
  padding-top: 0.35rem;
}

.sw-product-page-access__details summary {
  width: fit-content;
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 900;
  cursor: pointer;
}

.sw-product-page-access__details > div {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 0.75rem;
  padding: 0.35rem 0 0.2rem;
}

.sw-product-page-access__details ul {
  display: grid;
  gap: 0.35rem;
  margin: 0;
  padding-left: 1.15rem;
}

.sw-product-page-access__layer-details {
  align-content: start;
}

.sw-product-page-access__release-details {
  display: grid;
  align-content: start;
  gap: 0.35rem;
}

.sw-product-page-access__release-details > ul {
  margin-top: 0.1rem;
}

.sw-product-page-access__details li strong,
.sw-product-page-access__details li span {
  display: block;
}

.sw-product-page-access__notice,
.sw-product-page-access__error {
  margin: 0;
  padding: 0.65rem 0.75rem;
  border-radius: 0.75rem;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-page-access__notice {
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-admin-shell-green);
}

.sw-product-page-access__error {
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-primitive-color-danger);
}

.sw-product-detail__tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.45rem;
  padding: 0.45rem;
  border: 1px solid #dfe8f5;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.sw-product-detail__tab {
  gap: 0.4rem;
  min-height: 2.75rem;
  padding: 0 0.8rem;
  border: 1px solid transparent;
  border-radius: 0.8rem;
  background: transparent;
  color: #64748b;
  font-weight: 900;
  cursor: pointer;
}

.sw-product-detail__tab svg {
  width: 1rem;
  height: 1rem;
}

.sw-product-detail__tab[data-active="true"] {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.sw-product-detail__tabpanel {
  min-width: 0;
}

.sw-product-specs {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.sw-product-specs__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1rem 1.1rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.sw-product-specs__heading h3 {
  margin: 0.2rem 0 0.35rem;
}

.sw-product-specs__maintenance {
  border: 1px solid #dbe6f4;
  border-radius: 0.9rem;
  background: #fff;
}

.sw-product-specs__maintenance summary {
  display: flex;
  min-height: 2.75rem;
  align-items: center;
  padding: 0.65rem 0.85rem;
  color: #334155;
  font-size: 0.78rem;
  font-weight: 850;
  cursor: pointer;
}

.sw-product-specs__maintenance > div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  padding: 0.75rem 0.85rem;
  border-top: 1px solid #e2e8f0;
}

.sw-product-specs__maintenance summary:focus-visible,
.sw-product-detail__tab:focus-visible,
.sw-product-specs__panel:focus-visible,
.sw-product-page-access__details summary:focus-visible,
.sw-product-page-access__primary:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.35);
  outline-offset: 2px;
}

.sw-product-specs__panel {
  display: grid;
  gap: 1rem;
  min-width: 0;
  outline: none;
}

.sw-product-detail-tab-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 1rem;
}

.sw-product-detail-tab-grid--paper-doll-full {
  grid-template-columns: minmax(0, 1fr);
}

.sw-product-detail-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1rem;
}

.sw-product-detail-field-grid label {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
  padding: 0.9rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #f8fafc;
}

.sw-product-detail-field-grid span {
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
}

.sw-product-detail-field-grid strong {
  overflow: hidden;
  color: #111827;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-basic__heading,
.sw-product-basic__actions,
.sw-product-basic__summary,
.sw-product-basic__stale {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.85rem;
}

.sw-product-basic__heading h3 {
  margin-bottom: 0.35rem;
}

.sw-product-basic__section {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1rem;
}

.sw-product-basic__field {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.sw-product-basic__field span,
.sw-product-basic__summary dt {
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
}

.sw-product-basic__field input,
.sw-product-basic__field select {
  width: 100%;
  min-height: 2.75rem;
  padding: 0 0.85rem;
  border: 1px solid #dbe7f4;
  border-radius: 0.75rem;
  background: #ffffff;
  color: #0f172a;
  font: inherit;
  font-weight: 800;
}

.sw-product-basic__field input:disabled,
.sw-product-basic__field select:disabled,
.sw-products-action:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.sw-product-basic__field small,
.sw-product-basic__readonly small {
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
}

.sw-product-basic__summary {
  margin-top: 1rem;
  padding: 0.9rem;
  border: 1px solid #dbe7f4;
  border-radius: 0.9rem;
  background: #f8fafc;
}

.sw-product-basic__summary dl {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  min-width: min(100%, 23rem);
}

.sw-product-basic__summary div {
  min-width: 0;
}

.sw-product-basic__summary dd {
  margin: 0;
  overflow: hidden;
  color: #0f172a;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-basic__summary div[data-dirty="true"] dd {
  color: #1d4ed8;
}

.sw-product-basic__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-top: 1rem;
}

.sw-product-basic__save-main {
  border-color: #1d4ed8;
  background: #1d4ed8;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(29, 78, 216, 0.2);
}

.sw-product-basic__save-main:hover:not(:disabled) {
  border-color: #1e40af;
  background: #1e40af;
}

.sw-product-basic__missing {
  padding: 0.95rem;
  border: 1px solid #fed7aa;
  border-radius: 0.9rem;
  background: #fff7ed;
}

.sw-product-basic__stale {
  margin-top: 1rem;
  justify-content: flex-start;
  padding: 0.85rem;
  border: 1px solid #fed7aa;
  border-radius: 0.9rem;
  background: #fff7ed;
  color: #9a3412;
  font-weight: 800;
}

.sw-product-basic__stale svg,
.sw-product-basic__alert svg {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
}

.sw-product-seo {
  align-items: start;
}

.sw-product-seo__heading,
.sw-product-seo__release-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.85rem;
}

.sw-product-seo__fields,
.sw-product-seo__release-card {
  display: grid;
  gap: 0.9rem;
}

.sw-product-seo__fields {
  margin-top: 1rem;
}

.sw-product-seo__textarea {
  width: 100%;
  min-height: 8rem;
  padding: 0.8rem 0.85rem;
  border: 1px solid #dbe7f4;
  border-radius: 0.75rem;
  background: #ffffff;
  color: #0f172a;
  font: inherit;
  font-weight: 700;
  line-height: 1.55;
  resize: vertical;
}

.sw-product-seo__textarea:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.sw-product-seo__search-preview {
  display: grid;
  gap: 0.45rem;
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid #dbe7f4;
  border-radius: 0.9rem;
  background: #f8fafc;
}

.sw-product-seo__search-preview strong,
.sw-product-seo__release-title {
  color: #0f172a;
  overflow-wrap: anywhere;
}

.sw-product-seo__search-preview p,
.sw-product-seo__search-preview small,
.sw-product-seo__release-note {
  margin: 0;
  color: #64748b;
  line-height: 1.55;
}

.sw-product-seo .sw-products-action {
  min-height: 2.75rem;
}

.sw-product-seo__release-card .sw-products-action {
  justify-self: start;
}

.sw-product-seo__release-note {
  padding-top: 0.9rem;
  border-top: 1px solid #dbe7f4;
  font-size: 0.82rem;
}

.sw-product-basic__category {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  margin-top: var(--sw-primitive-space-stack-lg);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-basic__category-head,
.sw-product-basic__category-actions {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-product-basic__category-head h4 {
  margin: 0 0 var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-title-size);
}

.sw-product-basic__category-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: var(--sw-primitive-space-stack-md);
}

.sw-product-basic__category-readback {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-basic__category-readback span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-basic__category-readback strong {
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-product-basic__category-readback small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-basic__category-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.sw-product-basic__readonly {
  grid-template-columns: 1fr;
}

.sw-product-pricing__heading {
  justify-content: space-between;
  gap: 0.85rem;
}

.sw-product-pricing__heading h3 {
  margin-bottom: 0.35rem;
}

.sw-product-pricing__facts,
.sw-product-pricing__owner-grid,
.sw-product-pricing__ledger {
  display: grid;
  gap: 0.8rem;
  margin-top: 1rem;
}

.sw-product-pricing__facts {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sw-product-pricing__owner-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-pricing__fact,
.sw-product-pricing__owner-card,
.sw-product-pricing__ledger div {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.9rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #f8fafc;
}

.sw-product-pricing__fact--primary {
  background: #eff6ff;
  border-color: #bfdbfe;
}

.sw-product-pricing__fact[data-state="unavailable"] {
  background: #fff7ed;
  border-color: #fed7aa;
}

.sw-product-pricing__fact span,
.sw-product-pricing__owner-head span,
.sw-product-pricing__ledger span {
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
}

.sw-product-pricing__fact strong,
.sw-product-pricing__owner-card h4,
.sw-product-pricing__ledger strong {
  overflow-wrap: anywhere;
  color: #111827;
  font-weight: 950;
}

.sw-product-pricing__fact small,
.sw-product-pricing__owner-card p,
.sw-product-pricing__ledger small {
  margin: 0;
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
}

.sw-product-pricing__owner-card {
  border-style: dashed;
}

.sw-product-pricing__owner-card[data-state="blocked"],
.sw-product-pricing__owner-card[data-state="owner-gap"] {
  border-color: #fed7aa;
  background: #fff7ed;
}

.sw-product-pricing__owner-head {
  justify-content: space-between;
  gap: 0.7rem;
}

.sw-product-pricing__unavailable {
  border-color: #fed7aa;
  background: #fff7ed;
}

.sw-product-pricing__merchant-section {
  display: grid;
  gap: 0.8rem;
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #ffffff;
}

.sw-product-pricing__section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
}

.sw-product-pricing__section-title h4,
.sw-product-pricing__section-title p {
  margin: 0;
}

.sw-product-pricing__section-title p {
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.5;
}

.sw-product-pricing__merchant-grid,
.sw-product-pricing__member-grid,
.sw-product-pricing__setting-list {
  display: grid;
  gap: 0.75rem;
}

.sw-product-pricing__merchant-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-pricing__member-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sw-product-pricing__merchant-field,
.sw-product-pricing__member-field,
.sw-product-pricing__switch-row,
.sw-product-pricing__setting-row {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.9rem;
  background: #f8fafc;
}

.sw-product-pricing__merchant-field[data-state="owner-gap"],
.sw-product-pricing__switch-row[data-state="owner-gap"],
.sw-product-pricing__member-field,
.sw-product-pricing__setting-row {
  border-style: dashed;
  border-color: #fed7aa;
  background: #fff7ed;
}

.sw-product-pricing__merchant-field strong,
.sw-product-pricing__member-field strong,
.sw-product-pricing__switch-row strong,
.sw-product-pricing__setting-row strong {
  overflow-wrap: anywhere;
  color: #111827;
  font-weight: 950;
}

.sw-product-media-surface {
  align-items: start;
}

.sw-product-media__heading {
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-lg);
}

.sw-product-media-posture {
  display: grid;
  grid-template-columns: minmax(var(--sw-admin-shell-summary-min), var(--sw-admin-shell-status-max)) minmax(0, 1fr);
  gap: var(--sw-primitive-space-stack-lg);
  margin-top: var(--sw-primitive-space-stack-lg);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-product-media-posture__preview {
  display: grid;
  place-items: center;
  min-width: 0;
  aspect-ratio: 1;
  border: var(--sw-admin-shell-border);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  overflow: hidden;
}

.sw-product-media-posture__preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-product-media-posture__preview svg {
  width: var(--sw-primitive-density-state-icon-size);
  height: var(--sw-primitive-density-state-icon-size);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-product-media-posture__body,
.sw-product-media-card__body,
.sw-product-media-ledger {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-product-media-posture__body dl,
.sw-product-media-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin-block: unset;
  margin-inline: unset;
}

.sw-product-media-posture__body dl div,
.sw-product-media-card__meta div,
.sw-product-media-ledger div {
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-media-posture__body dt,
.sw-product-media-card__meta dt,
.sw-product-media-ledger span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-media-posture__body dd,
.sw-product-media-card__meta dd {
  margin-block-start: var(--sw-primitive-space-menu-inset);
  margin-block-end: unset;
  margin-inline: unset;
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 900;
}

.sw-product-media-state {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-lg);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border);
  border-color: var(--sw-primitive-color-warning);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-product-media-state[data-state="loading"] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
}

.sw-product-media-state[data-state="empty"] {
  border-color: var(--sw-admin-shell-line);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-product-media-state p {
  margin-block: unset;
  margin-inline: unset;
  color: var(--sw-admin-shell-ink-soft);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-media-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 1rem;
}

.sw-product-media-grid img,
.sw-product-media-grid span {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 1rem;
  object-fit: cover;
  background: #f1f5f9;
  color: #64748b;
}

.sw-product-media-grid svg {
  width: 1.3rem;
  height: 1.3rem;
}

.sw-product-media-directories {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-lg);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-product-media-directories button {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  max-width: 100%;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  cursor: pointer;
}

.sw-product-media-directories button[data-active="true"] {
  border-color: var(--sw-primitive-color-accent);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-product-media-directories button span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-product-media-directory-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-media-candidate-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
  margin-top: var(--sw-primitive-space-stack-lg);
}

.sw-product-media-card {
  min-width: 0;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  overflow: hidden;
}

.sw-product-media-card__frame {
  display: grid;
  place-items: center;
  aspect-ratio: 4 / 3;
  background: var(--sw-primitive-color-panel-muted);
  overflow: hidden;
}

.sw-product-media-card__frame > * {
  grid-area: 1 / 1;
}

.sw-product-media-card__frame img,
.sw-product-media-card__frame video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-product-media-card__body {
  padding: var(--sw-admin-shell-panel-pad-compact);
}

.sw-product-media-card__head {
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-media-card__semantic-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-media-card[data-selected="true"] {
  border-color: var(--sw-primitive-color-accent);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-product-media-card__head strong,
.sw-product-media-ledger strong {
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-product-media-card__meta {
  grid-template-columns: 1fr;
}

.sw-product-media-card__actions,
.sw-product-media__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-media-card__actions {
  margin-top: var(--sw-primitive-space-stack-sm);
}

.sw-product-media__alert {
  display: grid;
  align-items: start;
}

.sw-products-alert--success {
  border-color: var(--sw-primitive-color-success);
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-primitive-color-success);
}

.sw-products-alert--compact {
  display: inline-flex;
  justify-self: start;
  width: fit-content;
  max-width: min(100%, 34rem);
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.2;
}

.sw-product-media-gallery-order {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-media-gallery-order__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-product-media-gallery-order__row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-product-media-gallery-order__row span {
  display: inline-flex;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-products-icon-button {
  display: inline-grid;
  place-items: center;
  width: var(--sw-primitive-density-control-height-sm);
  height: var(--sw-primitive-density-control-height-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
}

.sw-products-icon-button svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
}

.sw-products-icon-button:disabled {
  cursor: not-allowed;
}

.sw-product-media-side-panel {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  align-content: start;
}

.sw-product-media-ledger small {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-list,
.sw-product-variant-commerce-strip,
.sw-product-variant-setup-rail,
.sw-product-variant-workbench-table,
.sw-product-variant-matrix__dimensions,
.sw-product-variant-matrix__combinations,
.sw-product-variant-image-posture,
.sw-product-inventory__aggregate-grid,
.sw-product-inventory__bottlenecks,
.sw-product-inventory__component-list,
.sw-product-inventory__draft-panel,
.sw-product-inventory__variant-matrix,
.sw-product-inventory__readback,
.sw-product-inventory__blocked-actions,
.sw-product-placeholder-board {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-variant-row {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.85rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.9rem;
  background: #f8fafc;
}

.sw-product-variant-matrix {
  display: flex;
  flex-direction: column;
  gap: var(--sw-primitive-space-stack-md);
  min-width: 0;
}

.sw-product-variant-matrix__head {
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-variant-matrix__summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--sw-admin-shell-summary-min), 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-variant-matrix__head { order: 0; }
.sw-product-variant-setup-rail { order: 1; }
.sw-product-variant-matrix__editor { order: 2; }
.sw-product-variant-workbench-table { order: 3; }
.sw-product-variant-matrix__summary { order: 4; }
.sw-product-bom-projection-contract { order: 5; }
.sw-product-bom-owner-map { order: 6; }
.sw-product-bom-readback { order: 7; }
.sw-product-variant-matrix__dimensions { order: 8; }

.sw-product-variant-matrix__summary div,
.sw-product-variant-commerce-card,
.sw-product-bom-projection-contract,
.sw-product-bom-owner-map,
.sw-product-bom-owner-map__card,
.sw-product-bom-option-mapping,
.sw-product-bom-option-mapping__row,
.sw-product-variant-matrix__dimension,
.sw-product-variant-projection__trace,
.sw-product-variant-matrix__row,
.sw-product-variant-matrix__blocker,
.sw-product-variant-source-gaps,
.sw-product-variant-source-gaps div,
.sw-product-variant-image-posture__row,
.sw-product-variant-image-posture__empty,
.sw-product-variant-compositor,
.sw-product-inventory__mode-card,
.sw-product-inventory__summary-card,
.sw-product-inventory__aggregate-card,
.sw-product-inventory__bottleneck-row,
.sw-product-inventory__component-row,
.sw-product-inventory__row,
.sw-product-inventory__matrix-row,
.sw-product-inventory__draft-row,
.sw-product-inventory__empty,
.sw-product-inventory__blocker {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-inventory__heading {
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-inventory__heading h3 {
  margin: 0;
}

.sw-product-inventory__mode-grid,
.sw-product-inventory__summary,
.sw-product-inventory__aggregate-grid {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-inventory__mode-grid,
.sw-product-inventory__aggregate-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-product-inventory__summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-product-inventory__save-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__save-strip strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-inventory__owner-contract {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-inventory__save-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-inventory__warning,
.sw-product-inventory__error {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-inventory__warning {
  color: var(--sw-admin-shell-warning);
}

.sw-product-inventory__error {
  color: var(--sw-admin-shell-danger);
}

.sw-product-inventory__mode-card,
.sw-product-inventory__summary-card,
.sw-product-inventory__aggregate-card {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-inventory__mode-card[data-posture="active"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__mode-card[data-posture="blocked"],
.sw-product-inventory__blocker {
  border-color: var(--sw-admin-shell-warning);
}

.sw-product-inventory__mode-card strong,
.sw-product-inventory__summary-card strong,
.sw-product-inventory__aggregate-card strong,
.sw-product-inventory__section-head strong,
.sw-product-inventory__bottleneck-row span,
.sw-product-inventory__component-row strong,
.sw-product-inventory__empty strong,
.sw-product-inventory__blocker strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-inventory__mode-card span,
.sw-product-inventory__summary-card span,
.sw-product-inventory__summary-card small,
.sw-product-inventory__aggregate-card span,
.sw-product-inventory__aggregate-card small,
.sw-product-inventory__section-head p,
.sw-product-inventory__component-row span,
.sw-product-inventory__empty p,
.sw-product-inventory__blocker p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-inventory__summary-card span {
  font-weight: 850;
}

.sw-product-inventory__summary-card strong,
.sw-product-inventory__aggregate-card strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-inventory__section-head,
.sw-product-inventory__component-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-inventory__section-head p,
.sw-product-inventory__component-row span {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
}

.sw-product-inventory__bottleneck-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-inventory__row {
  display: grid;
  grid-template-columns:
    minmax(0, 1.1fr)
    minmax(0, 0.75fr)
    minmax(0, 0.75fr)
    minmax(0, 0.75fr)
    auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__matrix-row {
  display: grid;
  grid-template-columns:
    minmax(0, 1.35fr)
    minmax(0, 1fr)
    minmax(0, 0.85fr)
    auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__draft-panel {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__draft-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 1.25fr)
    minmax(0, 0.75fr)
    minmax(0, 0.75fr)
    minmax(0, 1fr);
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-sm);
}

.sw-product-inventory__field {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-inventory__field span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-inventory__field input,
.sw-product-inventory__field select,
.sw-product-inventory__draft-row input,
.sw-product-inventory__draft-row select {
  width: 100%;
  min-width: 0;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-product-inventory__draft-row {
  display: grid;
  grid-template-columns:
    minmax(0, 1.3fr)
    minmax(0, 1fr)
    minmax(0, 0.72fr)
    minmax(0, 0.72fr)
    minmax(0, 0.9fr);
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  margin-top: var(--sw-primitive-space-stack-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-inventory__draft-row--head {
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-inventory__row--head {
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-inventory__matrix-row--head {
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-inventory__row strong,
.sw-product-inventory__row span,
.sw-product-inventory__matrix-row strong,
.sw-product-inventory__matrix-row span,
.sw-product-inventory__draft-row strong,
.sw-product-inventory__draft-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-inventory__empty,
.sw-product-inventory__blocker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
}

.sw-product-inventory__empty svg,
.sw-product-inventory__blocker svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  color: var(--sw-admin-shell-warning);
}

.sw-product-inventory__empty p,
.sw-product-inventory__blocker p {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
}

.sw-product-inventory__blocked-actions .sw-products-action {
  width: 100%;
}

.sw-product-variant-matrix__summary dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-variant-matrix__summary dd {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-commerce-strip {
  grid-template-columns: repeat(4, minmax(var(--sw-admin-shell-summary-min), 1fr));
}

.sw-product-variant-setup-rail {
  grid-template-columns: minmax(22rem, 1.45fr) repeat(2, minmax(var(--sw-admin-shell-summary-min), 1fr));
}

.sw-product-variant-setup-rail div,
.sw-product-variant-workbench-table,
.sw-product-variant-workbench-row {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-setup-rail div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-setup-rail span,
.sw-product-variant-setup-rail small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-setup-rail strong {
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-setup-rail__actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.sw-product-variant-workbench-table {
  overflow: auto;
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-workbench-table--legacy-in-variant-tab {
  display: none;
}

.sw-product-variant-workbench-table--paper-doll {
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-paper-doll__thumbnail-card--legacy {
  display: none;
}

.sw-product-variant-workbench-table__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-variant-workbench-table__head > div {
  min-width: 0;
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__head {
  display: grid;
  grid-template-columns: minmax(12rem, 1fr) minmax(0, 1.8fr);
  align-items: start;
}

.sw-product-variant-workbench-table__tools,
.sw-product-variant-workbench-table__pager {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-workbench-search {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: min(100%, 14rem);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-workbench-search input,
.sw-product-variant-workbench-page-size select {
  min-height: var(--sw-primitive-density-control-height);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-product-variant-workbench-page-size {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-workbench-table__pager--numbered {
  max-inline-size: min(100%, 34rem);
  justify-content: flex-end;
}

.sw-product-variant-workbench-table__tools--paper-doll {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  justify-self: end;
  column-gap: var(--sw-primitive-space-menu-inset);
  row-gap: var(--sw-primitive-space-menu-inset);
  inline-size: min(100%, 50rem);
  min-width: 0;
}

.sw-product-variant-workbench-table__tools--paper-doll .sw-product-variant-workbench-page-size {
  grid-column: 2;
  justify-self: end;
}

.sw-product-variant-workbench-table__tools--paper-doll .sw-product-variant-workbench-table__pager--numbered {
  grid-column: 1;
  grid-row: 1;
  flex-wrap: nowrap;
  max-inline-size: 100%;
  min-width: 0;
  margin-inline-end: var(--sw-primitive-space-stack-sm);
  overflow-x: auto;
  scrollbar-width: thin;
}

.sw-product-variant-workbench-table__pager--numbered .sw-products-action {
  flex: 0 0 auto;
  min-inline-size: 2.25rem;
  padding-inline: 0.75rem;
  white-space: nowrap;
}

.sw-product-variant-workbench-table__pager-ellipsis {
  flex: 0 0 auto;
  min-inline-size: 1.15rem;
  text-align: center;
}

.sw-product-variant-workbench-table__tools--paper-doll > .sw-products-action {
  grid-column: 3;
  flex: 0 0 auto;
  inline-size: 7.75rem;
  justify-content: center;
  white-space: nowrap;
}

.sw-product-variant-workbench-table__pager span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-workbench-table__head small {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-workbench-table__head h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-workbench-table__title {
  min-width: 0;
  writing-mode: horizontal-tb;
}

.sw-product-variant-workbench-recompose-progress {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  margin-top: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-accent-soft);
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-workbench-recompose-progress strong,
.sw-product-variant-workbench-recompose-progress small {
  display: block;
}

.sw-product-variant-workbench-recompose-progress small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-variant-workbench-recompose-progress__spinner {
  inline-size: 1.15rem;
  block-size: 1.15rem;
  border: 3px solid color-mix(in srgb, var(--sw-admin-shell-accent-strong) 22%, transparent);
  border-top-color: var(--sw-admin-shell-accent-strong);
  border-radius: 999px;
  animation: sw-product-variant-recompose-spin 0.85s linear infinite;
}

.sw-product-variant-workbench-row--recomposing {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--sw-admin-shell-accent-strong) 24%, transparent);
}

@keyframes sw-product-variant-recompose-spin {
  to {
    transform: rotate(360deg);
  }
}

.sw-product-variant-workbench-table__row {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  min-width: 0;
  padding: var(--sw-primitive-space-menu-inset) 0;
  border-bottom: var(--sw-admin-shell-border-soft);
}

.sw-product-variant-workbench-table__row--compact {
  grid-template-columns:
    minmax(7.5rem, 0.85fr)
    minmax(10rem, 1.15fr)
    minmax(7rem, 0.75fr)
    minmax(6.5rem, 0.7fr)
    minmax(6.5rem, 0.7fr)
    minmax(8rem, 0.85fr)
    minmax(5.75rem, 0.6fr)
    minmax(8rem, 0.75fr);
  min-width: 58rem;
}

.sw-product-variant-workbench-table__row--full {
  grid-template-columns:
    minmax(7.5rem, 0.8fr)
    minmax(10rem, 1.05fr)
    minmax(7rem, 0.72fr)
    minmax(6.5rem, 0.65fr)
    minmax(6.5rem, 0.65fr)
    minmax(8rem, 0.8fr)
    minmax(5.75rem, 0.55fr)
    minmax(8rem, 0.72fr)
    minmax(5.75rem, 0.52fr)
    minmax(5.75rem, 0.52fr)
    minmax(5.75rem, 0.52fr)
    minmax(8rem, 0.72fr);
  min-width: 82rem;
}

.sw-product-variant-workbench-table__row--paper-doll {
  grid-template-columns:
    minmax(5.5rem, 0.56fr)
    minmax(12rem, 1.7fr)
    minmax(4.75rem, 0.52fr)
    minmax(4.75rem, 0.52fr)
    minmax(4.75rem, 0.52fr)
    minmax(7rem, 0.72fr)
    minmax(6.25rem, 0.62fr);
  width: 100%;
  min-width: 0;
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row {
  width: 100%;
}

/* Keep the original seven cells and mobile grid areas; the failed attempt
   belongs with its existing variant label, never in a hidden legacy list. */
.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__variant-name:has([data-composition-result]) {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__variant-name [data-composition-result] {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 500;
  line-height: 1.45;
  white-space: normal;
  overflow-wrap: break-word;
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row .sw-product-variant-workbench-table__row {
  border-bottom: 0;
}

.sw-product-variant-workbench-table--paper-doll button.sw-product-variant-workbench-table__row-action[data-command-intent] {
  white-space: normal;
  overflow-wrap: normal;
  text-align: center;
  min-height: 44px;
}

@media (max-width: 359px) {
  /* Retain all original grid areas/order. The thumbnail must not consume
     the width needed to read a complete price and the original row action. */
  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row[data-inventory-variant] .sw-product-variant-workbench-table__row--paper-doll {
    grid-template-columns: 4rem minmax(3rem, 1fr) repeat(2, minmax(0, 1fr));
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row[data-inventory-variant] .sw-product-variant-workbench-table__fact--price[data-price-known='true'] .sw-product-variant-workbench-table__fact-value {
    white-space: nowrap;
    overflow-wrap: normal;
  }
}

.sw-product-variant-workbench-table--paper-doll .sw-product-paper-doll__thumbnail-frame {
  width: min(100%, 6rem);
  min-width: 0;
  aspect-ratio: 1 / 1;
  height: auto;
}

.sw-product-variant-workbench-table__row--head {
  position: sticky;
  top: 0;
  z-index: 1;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-workbench-formula-anchor {
  position: relative;
  overflow: visible !important;
}

.sw-product-variant-workbench-price-heading {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  overflow: visible;
  white-space: nowrap;
}

.sw-product-variant-workbench-currency-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.35rem;
  padding: 0 var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: 999px;
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-accent-strong);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  line-height: 1;
}

.sw-product-variant-workbench-formula-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.35rem;
  margin-left: var(--sw-primitive-space-menu-inset);
  padding: 0 var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: 999px;
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-accent-strong);
  font: inherit;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  cursor: pointer;
}

.sw-product-variant-workbench-formula-chip:hover,
.sw-product-variant-workbench-formula-chip:focus-visible {
  border-color: var(--sw-admin-shell-accent-border);
  background: var(--sw-admin-shell-accent-soft);
}

.sw-product-variant-workbench-formula {
  position: absolute;
  top: calc(100% + var(--sw-primitive-space-menu-inset));
  right: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 22rem;
  width: max-content;
  padding: var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow-soft);
}

.sw-product-variant-workbench-formula > strong,
.sw-product-variant-workbench-formula > button {
  flex-shrink: 0;
  white-space: nowrap;
}

.sw-product-variant-workbench-formula select,
.sw-product-variant-workbench-formula input {
  min-height: 2rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-variant-workbench-formula input {
  width: 5rem;
}

.sw-product-variant-workbench-formula small {
  max-width: 9rem;
  white-space: normal;
}

.sw-product-variant-workbench-row {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  margin-top: var(--sw-primitive-space-stack-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-workbench__image {
  display: grid;
  grid-template-columns: var(--sw-primitive-density-data-list-media-size) minmax(0, 1fr);
  gap: var(--sw-primitive-space-menu-inset);
  align-items: center;
  min-width: 0;
}

.sw-product-variant-workbench__thumb {
  display: grid;
  place-items: center;
  inline-size: var(--sw-primitive-density-data-list-media-size);
  block-size: var(--sw-primitive-density-data-list-media-size);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-product-variant-workbench__thumb img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.sw-product-variant-workbench-table__row strong,
.sw-product-variant-workbench-table__row span,
.sw-product-variant-workbench-table__row small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sw-product-variant-workbench-table__fact {
  position: relative;
  display: block;
  min-width: 0;
}

.sw-product-variant-workbench-table__fact-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.sw-product-variant-workbench-table__fact-value {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-product-variant-workbench-inventory-cell {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell {
  flex-wrap: nowrap;
}

.sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__row > .sw-products-action {
  justify-self: end;
  min-inline-size: 4.5rem;
  padding-inline: 0.75rem;
  white-space: nowrap;
}

.sw-product-variant-workbench-inventory-cell input {
  width: 5.5rem;
  min-height: 2rem;
  padding: 0 var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  font: inherit;
}

.sw-product-variant-workbench-inventory-cell .sw-products-action {
  min-height: 2rem;
  padding-inline: 0.65rem;
}

.sw-product-inventory-details {
  min-inline-size: 0;
  padding-inline: var(--sw-primitive-space-stack-sm);
  color: var(--sw-admin-shell-ink-soft);
  font-size: 0.8rem;
}

.sw-product-inventory-details > summary {
  min-block-size: 44px;
  align-content: center;
  cursor: pointer;
}

.sw-product-inventory-details > p {
  margin-block: 0 var(--sw-primitive-space-stack-sm);
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.sw-product-variant-workbench-table--paper-doll[data-inventory-source='bom'] .sw-product-variant-workbench-inventory-cell[data-editing='false'] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--sw-primitive-space-menu-inset);
  min-inline-size: 0;
}

.sw-product-variant-workbench-table--paper-doll[data-inventory-source='bom'] .sw-product-variant-workbench-inventory-cell > small {
  max-inline-size: 100%;
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  .sw-product-variant-workbench-table--paper-doll {
    overflow: visible;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__head {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__title {
    width: 100%;
    max-width: 100%;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__title h4 {
    width: 100%;
    max-width: 100%;
    line-height: 1.25;
    overflow-wrap: break-word;
    text-wrap: balance;
    white-space: normal;
    word-break: normal;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__title small {
    max-width: 100%;
    white-space: normal;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__tools--paper-doll {
    display: flex;
    width: 100%;
    max-width: none;
    align-items: center;
    justify-content: flex-start;
    justify-self: stretch;
    flex-wrap: wrap;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-page-size {
    order: 1;
    justify-self: auto;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-page-size select {
    min-height: 44px;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__tools--paper-doll > .sw-products-action {
    order: 2;
    width: auto;
    min-width: 7.75rem;
    min-height: 44px;
    flex: 1 1 7.75rem;
    justify-self: stretch;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__tools--paper-doll .sw-product-variant-workbench-table__pager--numbered {
    order: 3;
    max-width: 100%;
    margin-inline-end: 0;
    flex: 1 0 100%;
    justify-content: flex-start;
  }

  /* Keep the original seven-cell header and its pricing relationships.
     Mobile cards already carry the other labels; reveal only the two
     existing formula cells, without moving/duplicating their controls. */
  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__row--head {
    position: relative;
    display: grid;
    grid-template-columns: 0 0 0 minmax(0, 1fr) minmax(0, 1fr) 0 0;
    gap: 0;
    align-items: start;
    padding-block: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__row--head > :not(.sw-product-variant-workbench-formula-anchor) {
    display: none;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula-anchor {
    position: static;
    display: grid;
    justify-items: start;
    gap: var(--sw-primitive-space-menu-inset);
    white-space: normal;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula-anchor:nth-child(4) {
    grid-column: 4;
    padding-inline-end: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula-anchor:nth-child(5) {
    grid-column: 5;
    padding-inline-start: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula-chip {
    min-width: 44px;
    min-height: 44px;
    margin-inline-start: 0;
    padding-inline: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula {
    box-sizing: border-box;
    left: 0;
    right: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--sw-primitive-space-stack-sm);
    width: 100%;
    min-width: 0;
    padding: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula > strong,
  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula > select,
  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula > small {
    grid-column: 1 / -1;
    max-width: none;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula :is(select, input, button) {
    box-sizing: border-box;
    width: 100%;
    min-width: 44px;
    min-height: 44px;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-formula > small {
    overflow-wrap: anywhere;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row {
    margin-top: 0;
    background: transparent;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row:last-child {
    margin-bottom: var(--sw-primitive-space-stack-md);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row .sw-product-variant-workbench-table__row--paper-doll {
    box-sizing: border-box;
    grid-template-columns: clamp(5.25rem, 26vw, 6rem) repeat(3, minmax(0, 1fr));
    grid-template-areas:
      'image name name name'
      'image price sale member'
      'image inventory inventory inventory'
      'image action action action';
    align-items: start;
    column-gap: var(--sw-primitive-space-menu-inset);
    row-gap: 0.35rem;
    width: 100%;
    min-width: 0;
    padding: 0.625rem;
    border: var(--sw-admin-shell-border-soft);
    border-radius: var(--sw-admin-shell-radius-md);
    background: var(--sw-admin-shell-surface-tint);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-paper-doll__thumbnail-frame {
    grid-area: image;
    align-self: start;
    width: 100%;
    max-width: 6rem;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__variant-name {
    grid-area: name;
    display: -webkit-box;
    align-self: start;
    max-width: 100%;
    overflow: hidden;
    color: var(--sw-admin-shell-ink);
    font-size: 0.9rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact--price {
    grid-area: price;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact--sale-price {
    grid-area: sale;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact--member-price {
    grid-area: member;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact {
    display: grid;
    gap: 0.125rem;
    align-content: start;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact-label {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    overflow: visible;
    clip: auto;
    clip-path: none;
    color: var(--sw-admin-shell-ink-soft);
    font-size: 0.65rem;
    font-weight: 850;
    line-height: 1.1;
    text-overflow: clip;
    white-space: normal;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__fact-value {
    overflow: visible;
    color: var(--sw-admin-shell-ink);
    font-size: 0.78rem;
    font-weight: 850;
    line-height: 1.25;
    text-overflow: clip;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell {
    grid-area: inventory;
    display: grid;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    gap: 0.15rem 0.4rem;
    overflow: visible;
    text-overflow: clip;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='false'] {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      'label button'
      'value button';
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='false'] > .sw-product-variant-workbench-table__fact-label {
    grid-area: label;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='false'] > strong {
    grid-area: value;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='false'] > .sw-products-action {
    grid-area: button;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='true'] {
    grid-template-columns: minmax(4rem, 1fr) repeat(2, auto);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell[data-editing='true'] > .sw-product-variant-workbench-table__fact-label {
    grid-column: 1 / -1;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell > strong {
    max-inline-size: 100%;
    overflow: visible;
    color: var(--sw-admin-shell-ink);
    font-size: 0.78rem;
    line-height: 1.2;
    text-overflow: clip;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell input {
    width: 100%;
    min-width: 0;
    min-height: 44px;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-inventory-cell .sw-products-action {
    min-height: 44px;
    padding-inline: 0.65rem;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__row--paper-doll > .sw-product-variant-workbench-table__row-action {
    grid-area: action;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    justify-self: stretch;
  }
}

@media (min-width: 761px) and (max-width: 60em) and (max-height: 30em) and (orientation: landscape) {
  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__head {
    grid-template-columns: minmax(12rem, 0.65fr) minmax(0, 1.35fr);
    gap: var(--sw-primitive-space-stack-sm);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__title h4 {
    width: 100%;
    line-height: 1.25;
    white-space: normal;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__tools--paper-doll {
    width: 100%;
    max-width: none;
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-table__row--paper-doll {
    grid-template-columns:
      minmax(5rem, 0.56fr)
      minmax(10rem, 1.7fr)
      repeat(3, minmax(4.25rem, 0.52fr))
      minmax(6.5rem, 0.72fr)
      minmax(5rem, 0.62fr);
    gap: var(--sw-primitive-space-menu-inset);
  }

  .sw-product-variant-workbench-table--paper-doll .sw-product-variant-workbench-row:last-child {
    margin-bottom: var(--sw-primitive-space-stack-md);
  }
}

.sw-product-variant-workbench-table__row small,
.sw-product-variant-workbench__image small {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-workbench__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-drawer {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-strong);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow-soft);
}

.sw-product-variant-drawer__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-variant-drawer__head h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-drawer__head small,
.sw-product-variant-drawer__section small,
.sw-product-variant-drawer__section p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-drawer__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
}

.sw-product-variant-drawer__section,
.sw-product-variant-drawer__blocker {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-drawer__section strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-drawer__image-row {
  display: grid;
  grid-template-columns: var(--sw-primitive-density-data-list-media-size) minmax(0, 1fr);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-drawer__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-drawer__fields label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-variant-drawer__fields input,
.sw-product-variant-drawer__fields select {
  width: 100%;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-variant-drawer__fields input:disabled,
.sw-product-variant-drawer__fields select:disabled {
  color: var(--sw-admin-shell-muted);
  cursor: not-allowed;
}

.sw-product-variant-drawer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-drawer__blocked-fields {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-drawer__blocked-fields label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-variant-drawer__blocked-fields input {
  width: 100%;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-muted);
  font: inherit;
}

.sw-product-variant-commerce-card {
  display: grid;
  align-content: start;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-commerce-card--handoff {
  border-color: var(--sw-admin-shell-accent-soft);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-commerce-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-product-variant-commerce-card__head span,
.sw-product-variant-commerce-card small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-commerce-card strong {
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-commerce-card p {
  margin: 0;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-commerce-card__thumbnail {
  display: grid;
  grid-template-columns: var(--sw-primitive-density-data-list-media-size) minmax(0, 1fr);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-commerce-card__thumbnail-frame {
  display: grid;
  place-items: center;
  inline-size: var(--sw-primitive-density-data-list-media-size);
  block-size: var(--sw-primitive-density-data-list-media-size);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
}

.sw-product-variant-commerce-card__thumbnail-frame img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: contain;
}

.sw-product-variant-commerce-card__thumbnail-frame svg {
  inline-size: var(--sw-primitive-density-icon-size);
  block-size: var(--sw-primitive-density-icon-size);
}

.sw-product-variant-commerce-card__thumbnail-copy {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-variant-commerce-card__thumbnail-copy strong,
.sw-product-variant-commerce-card__thumbnail-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-commerce-card .sw-products-action {
  justify-self: start;
  margin-top: var(--sw-primitive-space-menu-inset);
}

.sw-product-bom-projection-contract,
.sw-product-bom-owner-map,
.sw-product-variant-source-gaps {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-bom-projection-contract {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  border-color: var(--sw-admin-shell-accent-soft);
  background: var(--sw-admin-shell-surface);
}

.sw-product-bom-projection-contract h4,
.sw-product-bom-owner-map h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-bom-projection-contract p,
.sw-product-bom-owner-map p,
.sw-product-bom-owner-map small,
.sw-product-bom-owner-map dd,
.sw-product-bom-option-mapping__row span,
.sw-product-variant-projection__trace p,
.sw-product-variant-source-gaps small {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-bom-projection-contract__rules,
.sw-product-bom-owner-map__head,
.sw-product-bom-owner-map__grid,
.sw-product-bom-option-mapping,
.sw-product-bom-option-mapping__head,
.sw-product-bom-readback__actions,
.sw-product-variant-source-gaps {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-bom-readback__actions {
  justify-items: end;
}

.sw-product-bom-owner-map__head,
.sw-product-bom-option-mapping__row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.sw-product-bom-owner-map__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-bom-owner-map__card dl {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  margin: var(--sw-primitive-space-stack-sm) 0 0;
}

.sw-product-bom-owner-map__card dl div,
.sw-product-bom-option-mapping__row {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-bom-owner-map dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-bom-owner-map dd {
  margin: 0;
}

.sw-product-bom-option-mapping__row {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
}

.sw-product-variant-projection {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-projection__trace {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-projection__trace strong,
.sw-product-variant-source-gaps strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-projection__trace small {
  display: block;
  margin-top: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-matrix__dimension {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-spec-board {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-spec-board__head,
.sw-product-variant-spec-row {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-menu-inset) var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-spec-board__head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-product-variant-spec-board__head h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-spec-row {
  grid-template-columns: minmax(8rem, 0.52fr) minmax(0, 2.35fr) minmax(8.5rem, 0.55fr);
  align-items: center;
}

.sw-product-variant-spec-row__name,
.sw-product-variant-spec-row__status {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
}

.sw-product-variant-spec-row__name strong {
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-control-size);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-spec-row__name small,
.sw-product-variant-spec-row__status span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-variant-spec-row__chips {
  align-items: stretch;
}

.sw-product-variant-spec-row--selected {
  border-color: var(--sw-admin-shell-accent-soft);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-spec-row__expand {
  min-height: 2.65rem;
}

.sw-product-variant-spec-option-detail {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(12rem, 1.2fr) repeat(3, minmax(9rem, 0.85fr));
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-primitive-space-menu-inset) var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-spec-option-detail div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.12rem var(--sw-primitive-space-menu-inset);
  align-items: center;
  min-width: 0;
}

.sw-product-variant-spec-option-detail span,
.sw-product-variant-spec-option-detail small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-variant-spec-option-detail strong {
  grid-column: 1 / -1;
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-spec-option-detail .sw-products-action {
  min-height: 2rem;
  padding-inline: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-matrix__value {
  display: inline-grid;
  grid-template-areas:
    "label label"
    "modifier status";
  grid-template-columns: minmax(0, auto) auto;
  grid-template-rows: auto auto;
  align-items: center;
  justify-items: center;
  gap: 0.04rem 0.28rem;
  min-height: 2.35rem;
  max-width: 13rem;
  padding: 0.18rem 0.42rem;
  border: 1px solid var(--sw-admin-shell-accent);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-accent);
  color: var(--sw-admin-shell-on-accent, #fff);
  cursor: pointer;
  font: inherit;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-matrix__value--selected {
  border-color: var(--sw-admin-shell-accent-soft);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-product-variant-matrix__value .sw-product-variant-matrix__input {
  width: 100%;
  min-height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  text-align: center;
  box-shadow: none;
}

.sw-product-variant-matrix__value .sw-product-variant-matrix__input:focus {
  background: rgba(255, 255, 255, 0.18);
  border-radius: 0.2rem;
  outline: 1px solid rgba(255, 255, 255, 0.46);
}

.sw-product-variant-matrix__value .sw-product-variant-matrix__input[type="number"] {
  -moz-appearance: textfield;
}

.sw-product-variant-matrix__value .sw-product-variant-matrix__input[type="number"]::-webkit-outer-spin-button,
.sw-product-variant-matrix__value .sw-product-variant-matrix__input[type="number"]::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.sw-product-variant-matrix__value-label,
.sw-product-variant-matrix__value-modifier {
  display: block;
  max-width: 9rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-matrix__value-label {
  grid-area: label;
  color: inherit;
  line-height: 1.08;
}

.sw-product-variant-matrix__value-modifier {
  grid-area: modifier;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.66rem;
  font-weight: 950;
  line-height: 1;
}

.sw-product-variant-matrix__value-status {
  grid-area: status;
  display: inline-flex;
  gap: 0.12rem;
  align-items: center;
  justify-content: center;
}

.sw-product-variant-matrix__value-status-pill {
  padding: 0.03rem 0.18rem;
  border-radius: var(--sw-primitive-radius-badge);
  font-size: 0.56rem;
  font-weight: 950;
  line-height: 1.05;
}

.sw-product-variant-matrix__value-status-pill--ready {
  background: rgba(255, 255, 255, 0.2);
  color: var(--sw-admin-shell-on-accent, #fff);
}

.sw-product-variant-matrix__value-status-pill--missing {
  background: rgba(255, 255, 255, 0.92);
  color: var(--sw-admin-shell-warning);
}

.sw-product-variant-matrix__value-status-pill--unknown {
  background: rgba(255, 255, 255, 0.16);
  color: rgba(255, 255, 255, 0.82);
}

.sw-product-variant-matrix__row small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-variant-matrix__row {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.75fr) minmax(0, 0.65fr) minmax(0, 0.9fr) auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
}

.sw-product-variant-matrix__row--head {
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-matrix__row strong,
.sw-product-variant-matrix__row span,
.sw-product-variant-matrix__row small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-matrix__blocker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-matrix__blocker svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  color: var(--sw-admin-shell-warning);
}

.sw-product-variant-matrix__blocker p {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-image-posture__head,
.sw-product-variant-image-posture__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
}

.sw-product-variant-image-posture__head h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-size);
}

.sw-product-variant-image-posture__row {
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-image-posture__preview {
  display: grid;
  place-items: center;
  inline-size: var(--sw-primitive-density-data-list-media-size);
  block-size: var(--sw-primitive-density-data-list-media-size);
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-product-variant-image-posture__preview img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.sw-product-variant-image-posture__preview svg,
.sw-product-variant-compositor svg,
.sw-product-variant-image-posture__empty svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
}

.sw-product-variant-image-posture__body {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-variant-image-posture__body strong,
.sw-product-variant-image-posture__body small,
.sw-product-variant-image-posture__missing {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-image-posture__body small,
.sw-product-variant-image-posture__missing,
.sw-product-variant-image-posture__empty,
.sw-product-variant-compositor p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-image-posture__missing {
  font-weight: 850;
}

.sw-product-variant-image-posture__empty,
.sw-product-variant-compositor {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-compositor {
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-variant-compositor svg {
  color: var(--sw-admin-shell-warning);
}

.sw-product-variant-compositor div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-variant-compositor strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-compositor p {
  margin: 0;
}

.sw-product-paper-doll__head,
.sw-product-paper-doll__section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-paper-doll__summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--sw-admin-shell-summary-min), 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin: var(--sw-primitive-space-stack-md) 0 0;
}

.sw-product-paper-doll__summary div,
.sw-product-paper-doll__canvas,
.sw-product-paper-doll__layers,
.sw-product-paper-doll__composites,
.sw-product-paper-doll__layer-row,
.sw-product-paper-doll__composite-row {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-paper-doll__summary dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-paper-doll__summary dd {
  margin: var(--sw-primitive-space-menu-inset) 0 0;
  color: var(--sw-admin-shell-ink);
  font-weight: 900;
}

.sw-product-paper-doll__canvas,
.sw-product-paper-doll__layers,
.sw-product-paper-doll__composites {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-paper-doll__canvas h4,
.sw-product-paper-doll__layers h4,
.sw-product-paper-doll__composites h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-paper-doll__canvas p {
  margin: 0;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-product-paper-doll__layer-row,
.sw-product-paper-doll__composite-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__layer-row strong,
.sw-product-paper-doll__layer-row span,
.sw-product-paper-doll__composite-row strong,
.sw-product-paper-doll__composite-row span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__workbench {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.sw-product-paper-doll__thumbnail-card {
  align-self: start;
}

.sw-product-paper-doll__thumbnail-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin-top: var(--sw-primitive-space-stack-md);
}

.sw-product-paper-doll__thumbnail-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-paper-doll__thumbnail-row--success {
  border-color: var(--sw-primitive-color-success);
  background: var(--sw-primitive-color-success-surface);
}

.sw-product-paper-doll__thumbnail-row--info {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__thumbnail-row--warning {
  border-color: var(--sw-primitive-color-warning);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-product-paper-doll__thumbnail-row--danger {
  border-color: var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger-surface);
}

.sw-product-paper-doll__summary-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-md);
  margin-bottom: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__summary-head > div {
  display: grid;
  min-width: 0;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__summary-head .sw-products-action {
  flex: 0 0 auto;
  min-width: max-content;
  padding-inline: var(--sw-primitive-space-stack-sm);
  white-space: nowrap;
}

.sw-product-paper-doll__thumbnail-frame {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-paper-doll__thumbnail-frame--uploadable {
  cursor: pointer;
  position: relative;
}

.sw-product-paper-doll__thumbnail-frame--uploadable:focus-within {
  outline: 2px solid var(--sw-admin-shell-accent-soft);
  outline-offset: 2px;
}

.sw-product-paper-doll__thumbnail-frame--uploadable input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.sw-product-paper-doll__thumbnail-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__thumbnail-copy {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__thumbnail-copy strong,
.sw-product-paper-doll__thumbnail-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__thumbnail-copy small,
.sw-product-paper-doll__thumbnail-empty {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-product-paper-doll__thumbnail-advanced {
  display: inline-flex;
  width: fit-content;
  padding: var(--sw-primitive-space-menu-inset) var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-pill);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-warning);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__workbench-grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(360px, 1.6fr);
  gap: var(--sw-primitive-space-stack-md);
  align-items: stretch;
}

.sw-product-paper-doll__workbench-grid--focused {
  grid-template-columns: 26rem minmax(0, 1fr);
  align-items: start;
}

.sw-product-paper-doll__workbench-grid--focused .sw-product-paper-doll__preview {
  position: sticky;
  top: calc(var(--sw-admin-shell-gap) - 40px);
  z-index: 1;
  order: -1;
  align-content: start;
  justify-items: start;
  overflow: visible;
}

@media (max-width: 52em),
  (max-width: 60em) and (max-height: 30em) and (orientation: landscape) {
  .sw-product-paper-doll__workbench-grid--focused {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-paper-doll__workbench-grid--focused .sw-product-paper-doll__preview {
    position: static;
    inset: auto;
    z-index: auto;
    order: initial;
    max-height: none;
    overflow: visible;
    scroll-margin-bottom: calc(
      var(--sw-admin-mobile-chrome-height)
      + var(--sw-primitive-space-stack-md)
    );
  }
}

.sw-product-paper-doll__workbench-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__stock-mode-gate,
.sw-product-paper-doll__spec-collapsed {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
}

.sw-product-paper-doll__stock-mode-gate {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

.sw-product-paper-doll__spec-collapsed p,
.sw-product-paper-doll__stock-mode-gate span {
  margin: 0;
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-paper-doll__vvcw {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.sw-product-paper-doll__vvcw-head,
.sw-product-paper-doll__vvcw-actions,
.sw-product-paper-doll__vvcw-spec-head,
.sw-product-paper-doll__vvcw-status-row,
.sw-product-paper-doll__vvcw-inventory-row {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__vvcw-head {
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: var(--sw-primitive-space-menu-inset);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-product-paper-doll__vvcw-head h4,
.sw-product-paper-doll__vvcw-spec-head label,
.sw-product-paper-doll__vvcw-option-card label,
.sw-product-paper-doll__vvcw-add-card strong,
.sw-product-paper-doll__vvcw-add-spec strong {
  margin: 0;
}

.sw-product-paper-doll__vvcw-actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.sw-product-paper-doll__vvcw-feedback {
  padding: var(--sw-primitive-space-menu-inset) var(--sw-admin-shell-panel-pad-compact);
  border-radius: var(--sw-admin-shell-radius-sm);
  font-weight: 850;
}

.sw-product-paper-doll__vvcw-feedback--compact {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  gap: var(--sw-primitive-space-menu-inset);
  width: fit-content;
  max-width: min(100%, 26rem);
  padding: 0.28rem 0.58rem;
  border-radius: 999px;
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.2;
}

.sw-product-paper-doll__vvcw-feedback--success {
  background: rgba(34, 197, 94, 0.12);
  color: var(--sw-admin-shell-success);
}

.sw-product-paper-doll__vvcw-feedback--error {
  background: rgba(239, 68, 68, 0.12);
  color: var(--sw-admin-shell-danger);
}

.sw-product-paper-doll__vvcw-feedback--info {
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-muted);
}

.sw-product-paper-doll__vvcw-spec-list,
.sw-product-paper-doll__vvcw-spec {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__vvcw-spec {
  padding: 0;
  border: 1px solid transparent;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: transparent;
}

.sw-product-paper-doll__vvcw-spec[data-vvcw-dragging="true"] {
  opacity: 0.64;
}

.sw-product-paper-doll__vvcw-spec[data-vvcw-drop-target="true"] {
  border-color: rgba(37, 99, 235, 0.68);
  box-shadow: inset 0 3px 0 rgba(37, 99, 235, 0.76), 0 0 0 2px rgba(37, 99, 235, 0.12);
  background: rgba(37, 99, 235, 0.04);
}

.sw-product-paper-doll__vvcw-spec-head {
  justify-content: space-between;
  flex-wrap: nowrap;
  padding-top: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__vvcw-spec-handle,
.sw-product-paper-doll__vvcw-inline-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: var(--sw-admin-shell-border-soft);
  border-radius: 999px;
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-spec-handle {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  padding: 0;
  cursor: grab;
}

.sw-product-paper-doll__vvcw-spec-handle:active {
  cursor: grabbing;
}

.sw-product-paper-doll__vvcw-spec-title-row,
.sw-product-paper-doll__vvcw-spec-edit-row,
.sw-product-paper-doll__vvcw-inline-actions {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__vvcw-spec-title-row,
.sw-product-paper-doll__vvcw-spec-edit-row {
  flex: 1 1 14rem;
  min-height: 28px;
}

.sw-product-paper-doll__vvcw-spec-title-row strong {
  min-width: 0;
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-size: 0.9rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__vvcw-spec-edit-row label {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  gap: 2px;
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: 0.9rem;
  font-weight: 850;
  white-space: nowrap;
}

.sw-product-paper-doll__vvcw-spec-edit-row label span {
  color: inherit;
  font: inherit;
}

.sw-product-paper-doll__vvcw-spec-edit-row input {
  min-height: 28px;
  padding: 0 0.35rem;
  border-radius: var(--sw-admin-shell-radius-xs);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 850;
}

.sw-product-paper-doll__vvcw-inline-actions {
  flex: 0 0 auto;
}

.sw-product-paper-doll__vvcw-inline-actions button {
  width: 28px;
  height: 28px;
  padding: 0;
}

.sw-product-paper-doll__vvcw-inline-actions button:first-child {
  color: var(--sw-admin-shell-success);
}

.sw-product-paper-doll__vvcw-inline-actions button:last-child {
  color: var(--sw-admin-shell-danger);
}

.sw-product-paper-doll__vvcw-spec-head label,
.sw-product-paper-doll__vvcw-option-card label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-admin-shell-font-size-sm);
  font-weight: 850;
}

.sw-product-paper-doll__vvcw-spec-head input,
.sw-product-paper-doll__vvcw-option-card input {
  width: 100%;
}

.sw-product-paper-doll__vvcw-option-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 6px;
}

.sw-product-paper-doll__vvcw-option-card,
.sw-product-paper-doll__vvcw-add-card,
.sw-product-paper-doll__vvcw-add-spec {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__vvcw-image,
.sw-product-paper-doll__vvcw-add-card,
.sw-product-paper-doll__vvcw-add-spec {
  color: var(--sw-admin-shell-ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-image {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  border: 0;
  background: transparent;
}

.sw-product-paper-doll__vvcw-inventory-row {
  align-items: end;
}

.sw-product-paper-doll__vvcw-inventory-row label {
  flex: 1 1 0;
}

.sw-product-paper-doll__vvcw-unlimited {
  display: flex !important;
  align-items: center;
  grid-template-columns: auto 1fr;
}

.sw-product-paper-doll__vvcw-add-card,
.sw-product-paper-doll__vvcw-add-spec {
  border-style: dashed;
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-paper-doll__vvcw-option-tile {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 54px;
  padding: 7px 8px;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__vvcw-option-tile--selected {
  border-color: rgba(37, 99, 235, 0.56);
  background: rgba(37, 99, 235, 0.06);
}

.sw-product-paper-doll__vvcw-option-tile--editing {
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  min-height: 108px;
}

.sw-product-paper-doll__vvcw-tile-thumb {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-xs);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-muted);
  font: inherit;
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-tile-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-tile-copy strong,
.sw-product-paper-doll__vvcw-tile-copy span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__vvcw-tile-copy span {
  color: var(--sw-admin-shell-muted);
  font-size: 11px;
  font-weight: 750;
}

.sw-product-paper-doll__vvcw-tile-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.sw-product-paper-doll__vvcw-tile-edit-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  min-height: 20px;
  padding: 0 5px;
  border: var(--sw-admin-shell-border-soft);
  border-radius: 999px;
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  font-size: 10px;
  font-weight: 850;
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-tile-edit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  grid-template-areas:
    'name name actions'
    'price stock actions';
  align-items: end;
  gap: 6px;
  min-width: 0;
}

.sw-product-paper-doll__vvcw-tile-edit-name {
  grid-area: name;
  min-width: 0;
}

.sw-product-paper-doll__vvcw-tile-edit label:nth-of-type(2) {
  grid-area: price;
}

.sw-product-paper-doll__vvcw-tile-edit label:nth-of-type(3) {
  grid-area: stock;
}

.sw-product-paper-doll__vvcw-tile-edit .sw-product-paper-doll__vvcw-inline-actions {
  grid-area: actions;
  align-self: center;
  flex-direction: column;
}

.sw-product-paper-doll__vvcw-tile-edit label {
  display: grid;
  gap: 2px;
  color: var(--sw-admin-shell-muted);
  font-size: 11px;
  font-weight: 850;
}

.sw-product-paper-doll__vvcw-tile-edit input {
  min-height: 28px;
  padding: 4px 6px;
  min-width: 0;
}

.sw-product-paper-doll__vvcw-tile-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
}

.sw-product-paper-doll__vvcw-tile-actions .sw-products-action {
  min-height: 28px;
  padding: 4px 8px;
  font-size: 11px;
}

.sw-product-paper-doll__vvcw-add-tile {
  place-items: center;
  justify-content: center;
  border-style: dashed;
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
  cursor: pointer;
}

.sw-product-paper-doll__vvcw-spec-name-input {
  min-width: 12rem;
}

.sw-product-paper-doll__legacy-option-groups {
  display: none;
}

@media (max-width: 620px) {
  .sw-product-paper-doll__vvcw-option-grid,
  .sw-product-paper-doll__vvcw-inventory-row {
    grid-template-columns: 1fr;
  }

  .sw-product-paper-doll__vvcw-head,
  .sw-product-paper-doll__vvcw-actions,
  .sw-product-paper-doll__vvcw-spec-head {
    align-items: stretch;
    flex-direction: column;
  }

  /* Keep the existing mobile column order. A desktop flex basis otherwise
     becomes a 14rem height here, while implicit grid minima retain long names. */
  .sw-product-paper-doll__vvcw > *,
  .sw-product-paper-doll__vvcw-spec,
  .sw-product-paper-doll__vvcw-spec-head,
  .sw-product-paper-doll__vvcw-spec-edit-row label {
    min-inline-size: 0;
    max-inline-size: 100%;
  }

  .sw-product-paper-doll__vvcw-spec-title-row,
  .sw-product-paper-doll__vvcw-spec-edit-row {
    flex-basis: auto;
  }

  .sw-product-paper-doll__vvcw-spec-title-row strong,
  .sw-product-paper-doll__vvcw-feedback {
    box-sizing: border-box;
    min-inline-size: 0;
    max-inline-size: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .sw-product-paper-doll__vvcw-spec-name-input {
    min-width: 0;
    min-block-size: 44px;
    width: 100%;
  }

  .sw-product-paper-doll__vvcw-spec-handle,
  .sw-product-paper-doll__vvcw-tile-edit-button,
  .sw-product-paper-doll__vvcw-inline-actions button {
    min-inline-size: 44px;
    min-block-size: 44px;
  }

  .sw-product-paper-doll__vvcw-tile-edit {
    /* Keep name / price / stock / actions in their original grid areas.
       A one-column declaration left two implicit min-content columns and
       let the 44px actions overlap the stock field at 320px. */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
  }

  .sw-product-paper-doll__vvcw-tile-edit label {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .sw-product-paper-doll__vvcw-tile-edit input {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
  }
}

@media (max-width: 620px) {
  .sw-product-paper-doll__tree-commerce-edit .sw-product-paper-doll__vvcw-inline-actions {
    flex-direction: column;
  }

  .sw-product-paper-doll__tree-commerce-edit input {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    padding-inline: 3px;
    appearance: textfield;
    -moz-appearance: textfield;
  }

  /* At 320px the native spinner consumed the original number field's text
     area and hid the saved base price. Keep its numeric semantics, keyboard
     editing and original column; remove only the browser's redundant arrows. */
  .sw-product-paper-doll__tree-commerce-edit input::-webkit-inner-spin-button,
  .sw-product-paper-doll__tree-commerce-edit input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  .sw-product-paper-doll__tree-commerce-edit label {
    overflow-wrap: anywhere;
  }
}


/* Original composite picker: readable command status and one full-size
   recovery action, rather than squeezing both into an alert pill. */
.sw-product-composite-upload-status {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink);
}

.sw-product-composite-upload-status p {
  margin: 0;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: break-word;
}

.sw-product-composite-upload-status > button {
  justify-self: stretch;
  min-width: 44px;
  min-height: 44px;
  white-space: normal;
}

.sw-product-paper-doll__save-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
  padding-top: var(--sw-primitive-space-stack-sm);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-product-paper-doll__save-state {
  display: flex;
  align-items: center;
  flex: 1 1 var(--sw-admin-shell-summary-min);
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__save-state span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sw-product-paper-doll__save-footer--manager {
  align-items: center;
}

.sw-product-paper-doll__save-state:has(> [data-testid='product-detail-recompose-command-feedback']) {
  flex-wrap: wrap;
}

.sw-product-paper-doll__save-state:has(> [data-testid='product-detail-recompose-command-feedback']) > .sw-primitive-badge {
  flex-shrink: 0;
  max-width: 100%;
  overflow: visible;
  white-space: normal;
}

.sw-product-paper-doll__save-state > [data-testid='product-detail-recompose-command-feedback'] {
  flex: 1 1 16rem;
  overflow: visible;
  text-overflow: clip;
}

.sw-product-paper-doll__save-indicators,
.sw-product-paper-doll__save-manager-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__save-manager-actions {
  justify-content: flex-end;
}

.sw-product-paper-doll__layer-tree,
.sw-product-paper-doll__preview {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-paper-doll__layer-tree h5,
.sw-product-paper-doll__preview h5 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-paper-doll__tree-row {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  width: 100%;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__tree-row--active {
  border-color: var(--sw-admin-shell-accent);
  box-shadow: var(--sw-admin-shell-shadow-focus);
}

.sw-product-paper-doll__tree-group {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding-top: var(--sw-primitive-space-menu-inset);
  border-top: var(--sw-admin-shell-border-soft);
}

.sw-product-paper-doll__tree-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-xs);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-admin-shell-font-size-sm);
}

.sw-product-paper-doll__tree-group-head strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-paper-doll__tree-row span,
.sw-product-paper-doll__tree-row small,
.sw-product-paper-doll__preview-head small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__tree-row span {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__tree-row--compact {
  grid-template-columns: 54px minmax(0, 1fr) 48px;
  align-items: center;
  min-height: 64px;
}

.sw-product-paper-doll__tree-row--main-body-commerce {
  grid-template-columns: 54px minmax(0, 1fr) auto;
}

.sw-product-paper-doll__tree-row--main-body-editing {
  min-height: 108px;
  align-items: start;
}

.sw-product-paper-doll__tree-commerce-edit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 6px;
  align-items: end;
  min-width: 0;
}

.sw-product-paper-doll__tree-commerce-edit label {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: var(--sw-admin-shell-muted);
  font-size: 11px;
  font-weight: 850;
}

.sw-product-paper-doll__tree-commerce-edit input {
  min-width: 0;
  min-height: 28px;
  padding: 4px 6px;
}

.sw-product-paper-doll__mini-thumb,
.sw-product-paper-doll__tree-copy {
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__mini-thumb {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-paper-doll__mini-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__tree-copy {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__tree-copy strong,
.sw-product-paper-doll__tree-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__nudge-pad {
  display: grid;
  grid-template-columns: repeat(3, 14px);
  grid-template-areas:
    '. up .'
    'left . right'
    '. down .';
  gap: 0.1rem;
  justify-content: center;
}

.sw-product-paper-doll__nudge-pad button {
  display: grid;
  place-items: center;
  width: 14px;
  height: 14px;
  padding: 0;
  border: var(--sw-admin-shell-border-soft);
  border-radius: 0.35rem;
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font-size: 0.64rem;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
}

.sw-product-paper-doll__nudge-pad button:nth-child(1) { grid-area: up; }
.sw-product-paper-doll__nudge-pad button:nth-child(2) { grid-area: left; }
.sw-product-paper-doll__nudge-pad button:nth-child(3) { grid-area: right; }
.sw-product-paper-doll__nudge-pad button:nth-child(4) { grid-area: down; }

.sw-product-paper-doll__workbox {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2.5rem);
}

.sw-product-paper-doll__workbox-backdrop {
  position: fixed;
  inset: 0;
  z-index: 0;
  border: 0;
  background: rgba(15, 23, 42, 0.46);
  backdrop-filter: blur(12px) saturate(1.15);
  cursor: pointer;
}

.sw-product-paper-doll__workbox-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  gap: var(--sw-primitive-space-stack-md);
  width: min(1040px, calc(100vw - 2rem));
  max-height: min(820px, calc(100vh - 2rem));
  overflow: auto;
  padding: clamp(1rem, 2vw, 1.6rem);
  border: 1px solid rgba(226, 232, 240, 0.82);
  border-radius: 1.35rem;
  background: var(--sw-admin-shell-surface);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
}

.sw-product-paper-doll__workbox-head,
.sw-product-paper-doll__workbox-grid {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__workbox-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.sw-product-paper-doll__workbox-head h4,
.sw-product-paper-doll__workbox-head p {
  margin: 0;
}

.sw-product-paper-doll__workbox-grid {
  grid-template-columns: minmax(180px, 0.45fr) minmax(0, 1fr);
  align-items: start;
  min-width: 0;
}

.sw-product-paper-doll__workbox-preview {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  min-height: 180px;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
  font-weight: 900;
}

.sw-product-paper-doll__workbox-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__workbox-selected-state {
  position: absolute;
  inset-inline: var(--sw-primitive-space-stack-sm);
  inset-block-end: var(--sw-primitive-space-stack-sm);
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-primitive-space-menu-inset) var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__workbox-selected-state span {
  overflow: hidden;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__workbox-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  gap: var(--sw-primitive-space-stack-sm);
}

/* Keep the original workbox fields and column order. Native option text must
   not enlarge the implicit grid beyond its existing mobile single column. */
.sw-product-paper-doll__workbox-controls > *,
.sw-product-paper-doll__asset-picker > label {
  min-width: 0;
}

.sw-product-paper-doll__workbox-panel select {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-product-paper-doll__workbox-controls small {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.4;
}

.sw-product-paper-doll__workbox-action-area,
.sw-product-paper-doll__workbox-action-head {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__workbox-action-area {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-paper-doll__workbox-action-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.sw-product-paper-doll__workbox-action-head > div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__workbox-action-head strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-paper-doll__workbox-save-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-paper-doll__workbox-save-strip > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__workbox-save-strip .sw-primitive-badge {
  flex-shrink: 0;
  white-space: nowrap;
}

.sw-product-paper-doll__workbox-save-strip span[role] {
  overflow: visible;
  overflow-wrap: anywhere;
}

@media (max-width: 620px) {
  /* The original recovery control and its explanation stay in the same
     save strip. Reserve readable lines instead of a button-wide text sliver. */
  .sw-product-paper-doll__workbox-save-strip:has(> button:is([data-command-intent="read-receipt"], [data-command-intent="apply-uploaded-layer"])) {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-paper-doll__workbox-save-strip:has(> button:is([data-command-intent="read-receipt"], [data-command-intent="apply-uploaded-layer"])) > button {
    justify-self: start;
    min-height: 44px;
    max-width: 100%;
  }

  .sw-product-paper-doll__workbox-save-strip:has(> button[data-command-intent="apply-uploaded-layer"]) .sw-primitive-badge {
    max-width: 100%;
    white-space: normal;
    overflow: visible;
    flex-shrink: 1;
  }

  .sw-product-paper-doll__workbox-save-strip:has(> button[data-command-intent="apply-uploaded-layer"]) span[role] {
    overflow-wrap: break-word;
    line-height: 1.5;
  }
}

.sw-product-paper-doll__workbox-save-strip span {
  overflow: hidden;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  text-overflow: ellipsis;
}

.sw-product-paper-doll__asset-picker,
.sw-product-paper-doll__asset-library {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__asset-picker {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-paper-doll__asset-picker-head,
.sw-product-paper-doll__asset-library-tools,
.sw-product-paper-doll__asset-library-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__asset-picker-head > div,
.sw-product-paper-doll__asset-library-tools label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__asset-picker-head span,
.sw-product-paper-doll__asset-library-tools span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-paper-doll__asset-library {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__asset-library-tools input {
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-paper-doll__asset-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__asset-library-card {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__asset-library-card[data-selected='true'] {
  border-color: var(--sw-admin-shell-accent);
  outline: 2px solid var(--sw-admin-shell-accent-soft);
}

.sw-product-paper-doll__asset-library-thumb {
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
}

.sw-product-paper-doll__asset-library-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__asset-library-card strong,
.sw-product-paper-doll__asset-library-card small,
.sw-product-paper-doll__asset-library-pager span,
.sw-product-paper-doll__asset-library-empty {
  overflow: hidden;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  text-overflow: ellipsis;
}

.sw-product-paper-doll__asset-library-card strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-paper-doll__asset-library-pager span {
  white-space: nowrap;
}

.sw-product-paper-doll__nudge-pad--workbox {
  /* Keep the same directional areas. Tracks follow each actual control,
     including the existing mobile 44px minimum, so targets cannot overlap. */
  grid-template-columns: repeat(3, max-content);
  gap: var(--sw-primitive-space-menu-inset);
  justify-content: start;
}

.sw-product-paper-doll__nudge-pad--workbox button {
  width: var(--sw-primitive-density-control-height-sm);
  height: var(--sw-primitive-density-control-height-sm);
  border-radius: var(--sw-admin-shell-radius-sm);
  font-size: var(--sw-primitive-type-control-size);
}

.sw-product-paper-doll__preview-head {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__preview-stage {
  position: relative;
  justify-self: stretch;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-width: 100%;
  aspect-ratio: 1 / 1;
  min-height: 0;
  overflow: hidden;
  border: none;
  border-radius: var(--sw-admin-shell-radius-sm);
  background:
    linear-gradient(45deg, var(--sw-admin-shell-surface-soft) 25%, transparent 25%),
    linear-gradient(-45deg, var(--sw-admin-shell-surface-soft) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, var(--sw-admin-shell-surface-soft) 75%),
    linear-gradient(-45deg, transparent 75%, var(--sw-admin-shell-surface-soft) 75%);
  background-position: 0 0, 0 12px, 12px -12px, -12px 0;
  background-size: 24px 24px;
}

.sw-product-paper-doll__preview-layer {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__preview-layer img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}

.sw-product-paper-doll__preview-layer small {
  align-self: end;
  padding: 0.2rem 0.35rem;
  border-radius: var(--sw-admin-shell-radius-xs);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
}

.sw-product-paper-doll__preview-caption {
  display: block;
  width: 360px;
  max-width: 100%;
  min-height: calc(0.72rem * 1.35);
  overflow: hidden;
  color: var(--sw-admin-shell-muted);
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__related-strip-wrap {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  width: 100%;
  max-width: 100%;
}

.sw-product-paper-doll__related-scroll {
  display: grid;
  place-items: center;
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
  cursor: pointer;
}

.sw-product-paper-doll__related-strip {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - (4 * var(--sw-primitive-space-menu-inset))) / 5);
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  padding-bottom: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__related-slot {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 100%;
  min-width: 0;
  max-width: none;
  aspect-ratio: 1 / 1;
  min-height: 0;
  padding: 0.25rem;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
  cursor: grab;
}

.sw-product-paper-doll__related-slot:active {
  cursor: grabbing;
}

.sw-product-paper-doll__related-slot[data-paper-doll-related-dragging="true"] {
  border-color: rgba(37, 99, 235, 0.72);
  opacity: 0.62;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.16);
}

.sw-product-paper-doll__related-slot--empty {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  border-style: dashed;
  background: var(--sw-admin-shell-surface-soft);
  cursor: pointer;
}

.sw-product-paper-doll__related-slot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__related-slot video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sw-product-paper-doll__related-external-video {
  display: grid;
  place-items: center;
  gap: 0.25rem;
  width: 100%;
  height: 100%;
  min-height: 3.5rem;
  color: var(--sw-admin-shell-muted);
  font-size: 0.72rem;
  font-weight: 900;
  text-align: center;
}

.sw-product-paper-doll__related-preview {
  position: absolute;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: start center;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  background:
    linear-gradient(45deg, var(--sw-admin-shell-surface-soft) 25%, transparent 25%),
    linear-gradient(-45deg, var(--sw-admin-shell-surface-soft) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, var(--sw-admin-shell-surface-soft) 75%),
    linear-gradient(-45deg, transparent 75%, var(--sw-admin-shell-surface-soft) 75%);
  background-color: var(--sw-admin-shell-surface);
  background-position: 0 0, 0 10px, 10px -10px, -10px 0;
  background-size: 20px 20px;
}

.sw-product-paper-doll__related-preview img,
.sw-product-paper-doll__related-preview video {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: var(--sw-admin-shell-radius-sm);
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
}

.sw-product-paper-doll__related-preview .sw-product-paper-doll__related-external-video {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  background: var(--sw-admin-shell-surface);
  border-radius: var(--sw-admin-shell-radius-sm);
}

.sw-product-media-library-picker {
  position: fixed;
  inset: 0;
  z-index: 82;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2.5rem);
}

.sw-product-media-library-picker__backdrop {
  position: fixed;
  inset: 0;
  z-index: 0;
  border: 0;
  background: rgba(15, 23, 42, 0.46);
  backdrop-filter: blur(12px) saturate(1.15);
  cursor: pointer;
}

.sw-product-media-library-picker__panel {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  width: min(56rem, calc(100vw - 2rem));
  min-width: 0;
  max-width: 100%;
  max-height: min(47.5rem, calc(100dvh - 2rem));
  overflow: auto;
  padding: clamp(1rem, 2vw, 1.4rem);
  border: 1px solid rgba(226, 232, 240, 0.82);
  border-radius: 1.1rem;
  /* The shared picker can live in a Dialog portal outside .sw-admin-shell. */
  background: var(--sw-admin-shell-surface, var(--sw-primitive-color-panel));
  color: var(--sw-admin-shell-ink, var(--sw-primitive-color-text));
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
}

.sw-product-media-library-picker .sw-html-media__load-more {
  min-height: var(--sw-primitive-density-row-height);
  justify-self: start;
}

.sw-product-media-library-picker__head,
.sw-product-media-library-picker__actions {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
  flex-wrap: wrap;
}

.sw-product-media-library-picker__upload {
  position: relative;
  overflow: hidden;
}

.sw-product-media-library-picker__upload[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: 0.58;
}

.sw-product-media-library-picker__upload input {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

.sw-product-media-library-picker__external-video {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-menu-inset);
  align-items: center;
}

.sw-product-media-library-picker__external-video input {
  min-height: var(--sw-primitive-density-control-height-sm);
  min-width: 0;
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-media-library-picker__head > div,
.sw-product-media-library-picker__search {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-media-library-picker__head h2,
.sw-product-media-library-picker__head p {
  max-width: 100%;
  margin: 0;
  overflow-wrap: anywhere;
}

.sw-product-media-library-picker__head small,
.sw-product-media-library-picker__search span,
.sw-product-media-library-picker__empty,
.sw-product-media-library-picker__library-card small {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-media-library-picker__search input {
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-media-library-picker__empty {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-height: 4rem;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

/* Only caller-supplied gate labels opt in; keep default picker geometry and
   the original form/field order. A compact status label must not collapse. */
.sw-product-media-library-picker__empty .sw-product-media-library-picker__gate-label {
  flex-shrink: 0;
  white-space: nowrap;
}

/* Only the existing gallery feedback region: long translated actions must
   remain whole without moving any specification group or field. */
.sw-product-gallery-save-feedback {
  flex-wrap: wrap;
}
.sw-product-gallery-save-feedback > span {
  flex: 1 1 24rem;
  min-width: 0;
}
.sw-product-gallery-save-feedback > button {
  flex: 0 0 auto;
  white-space: nowrap;
  border-radius: var(--sw-primitive-radius-control);
}
@media (max-width: 600px) {
  .sw-product-gallery-save-feedback > button { min-height: 44px; }
}

.sw-product-media-library-picker__library {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(7.5rem, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-media-library-picker__library-card {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink);
  text-align: left;
  cursor: pointer;
}

.sw-product-media-library-picker__library-card[data-selected="true"] {
  border-color: rgba(59, 130, 246, 0.82);
  background: rgba(239, 246, 255, 0.86);
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.18);
}

.sw-product-media-library-picker__library-card:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.sw-product-media-library-picker__library-thumb {
  position: relative;
  display: grid;
  place-items: center;
  height: 8.25rem;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-media-library-picker__library-thumb img,
.sw-product-media-library-picker__library-thumb video {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.sw-product-media-library-picker__library-external {
  display: grid;
  place-items: center;
  gap: 0.25rem;
  width: 100%;
  height: 100%;
  color: var(--sw-admin-shell-muted);
  font-size: 0.72rem;
  font-weight: 900;
  text-align: center;
}

.sw-product-media-library-picker__library-kind {
  position: absolute;
  right: 0.35rem;
  bottom: 0.35rem;
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  padding: 0.15rem 0.35rem;
  border-radius: var(--sw-admin-shell-radius-pill);
  background: rgba(15, 23, 42, 0.82);
  color: #fff;
  font-size: 0.68rem;
  font-weight: 700;
}

.sw-product-media-library-picker__library-card strong,
.sw-product-media-library-picker__library-card small {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.sw-product-media-library-picker :where(button, input):focus-visible,
.sw-product-media-library-picker__upload:focus-within {
  outline: 3px solid var(--sw-color-focus-indicator);
  outline-offset: 3px;
}

/* Keep the original workbox layout while making its file controls reachable. */
.sw-product-paper-doll__workbox input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.sw-product-paper-doll__workbox :where(button, input, select):focus-visible,
.sw-product-paper-doll__workbox label:has(> input[type="file"]):focus-within {
  outline: 3px solid var(--sw-primitive-color-accent);
  outline-offset: 3px;
}

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

.sw-product-complements fieldset {
  min-width: 0;
}

.sw-product-complements li {
  overflow-wrap: anywhere;
}

@media (max-width: 767px) {
  .sw-product-complements {
    margin-bottom: calc(5rem + env(safe-area-inset-bottom));
  }
}

@media (max-width: 480px) {
  .sw-product-media-library-picker {
    padding: 0.5rem;
  }

  .sw-product-media-library-picker__panel {
    width: calc(100vw - 1rem);
    max-height: calc(100dvh - 1rem);
    padding: 0.85rem;
  }

  .sw-product-media-library-picker__head,
  .sw-product-media-library-picker__actions,
  .sw-product-media-library-picker__external-video {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .sw-product-media-library-picker__head > button,
  .sw-product-media-library-picker__actions > *,
  .sw-product-media-library-picker__external-video > button {
    width: 100%;
  }

  .sw-product-media-library-picker__library {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 7.5rem), 1fr));
  }
}

.sw-product-paper-doll__related-picker {
  position: fixed;
  inset: 0;
  z-index: 82;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2.5rem);
}

.sw-product-paper-doll__related-picker-panel {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  width: min(780px, calc(100vw - 2rem));
  max-height: min(760px, calc(100vh - 2rem));
  overflow: auto;
  padding: clamp(1rem, 2vw, 1.4rem);
  border: 1px solid rgba(226, 232, 240, 0.82);
  border-radius: 1.1rem;
  background: var(--sw-admin-shell-surface);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
}

.sw-product-paper-doll__related-picker-head,
.sw-product-paper-doll__related-picker-actions {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__related-upload {
  position: relative;
  overflow: hidden;
}

.sw-product-paper-doll__related-upload[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: 0.58;
}

.sw-product-paper-doll__related-upload input {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

.sw-product-paper-doll__related-picker-head > div,
.sw-product-paper-doll__related-search {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-paper-doll__related-picker-head h4,
.sw-product-paper-doll__related-picker-head p {
  margin: 0;
}

.sw-product-paper-doll__related-picker-head small,
.sw-product-paper-doll__related-search span,
.sw-product-paper-doll__related-empty,
.sw-product-paper-doll__related-library-card small {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__related-search input {
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-paper-doll__related-empty {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-height: 4rem;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-paper-doll__related-library {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(7.5rem, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__related-library-card {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink);
  text-align: left;
  cursor: pointer;
}

.sw-product-paper-doll__related-library-card[data-selected="true"] {
  border-color: rgba(59, 130, 246, 0.82);
  background: rgba(239, 246, 255, 0.86);
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.18);
}

.sw-product-paper-doll__related-library-card:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.sw-product-paper-doll__related-library-thumb {
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__related-library-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-product-paper-doll__related-library-card strong,
.sw-product-paper-doll__related-library-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-paper-doll__preview-layer--missing {
  border: none;
}

.sw-product-paper-doll__preview-missing {
  display: grid;
  place-items: center;
  min-height: 92px;
  color: var(--sw-admin-shell-muted);
}

.sw-product-paper-doll__preview-layer--active {
  border: none;
  outline: none;
}

.sw-product-paper-doll__preview-empty {
  display: grid;
  place-items: center;
  min-height: 320px;
  color: var(--sw-admin-shell-muted);
  font-weight: 800;
}

.sw-product-paper-doll__preview-tools,
.sw-product-paper-doll__asset-actions,
.sw-product-paper-doll__mask-cover {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__preview-tools span,
.sw-product-paper-doll__mask-cover div {
  padding: var(--sw-primitive-space-menu-inset) var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-pill);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__asset-box {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-paper-doll__asset-box {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
}

.sw-product-paper-doll__asset-thumb {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-muted);
}

.sw-product-paper-doll__field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__field-grid label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__field-grid input,
.sw-product-paper-doll__field-grid select {
  width: 100%;
  min-width: 0;
  min-height: var(--sw-primitive-density-control-height-sm);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-product-paper-doll__mask-cover div {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  border-radius: var(--sw-admin-shell-radius-sm);
}

.sw-product-paper-doll__mask-cover button {
  border: 0;
  background: transparent;
  color: var(--sw-admin-shell-accent);
  font: inherit;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  cursor: pointer;
}

.sw-product-paper-doll__advanced {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-paper-doll__advanced-note {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-product-paper-doll__advanced-note span,
.sw-product-paper-doll__advanced-note small {
  color: var(--sw-admin-shell-warning);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__advanced-note strong {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-product-paper-doll__variant-main-handoff {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-paper-doll__variant-main-handoff > div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-paper-doll__variant-main-handoff span,
.sw-product-paper-doll__variant-main-handoff small,
.sw-product-paper-doll__variant-main-handoff li {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-paper-doll__variant-main-handoff strong {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-product-paper-doll__variant-main-handoff ul {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  margin: 0;
  padding-left: var(--sw-primitive-space-stack-md);
}

.sw-product-variant-matrix__feedback,
.sw-product-variant-matrix__editor,
.sw-product-variant-matrix__draft-dimension,
.sw-product-variant-matrix__validation {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  margin-top: var(--sw-primitive-space-stack-md);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-product-variant-matrix__feedback {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 850;
}

.sw-product-variant-matrix__feedback--success {
  border-color: var(--sw-admin-shell-success);
  color: var(--sw-admin-shell-success);
}

.sw-product-variant-matrix__feedback--error {
  border-color: var(--sw-admin-shell-danger);
  color: var(--sw-admin-shell-danger);
}

.sw-product-variant-matrix__feedback--info {
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-matrix__editor-head,
.sw-product-variant-matrix__draft-dimension-head,
.sw-product-variant-matrix__draft-value,
.sw-product-variant-matrix__actions {
  display: flex;
  align-items: flex-end;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-product-variant-matrix__editor-head,
.sw-product-variant-matrix__draft-dimension-head,
.sw-product-variant-matrix__actions {
  justify-content: space-between;
}

.sw-product-variant-matrix__editor-head h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-section-size);
}

.sw-product-variant-dimension-builder {
  border-color: rgba(37, 99, 235, 0.28);
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.82), var(--sw-admin-shell-surface));
  box-shadow: var(--sw-admin-shell-shadow-soft);
}

.sw-product-variant-dimension-builder__head-actions,
.sw-product-variant-dimension-builder__impact,
.sw-product-variant-dimension-builder__bulk {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-variant-dimension-builder__impact {
  justify-content: space-between;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 850;
}

.sw-product-variant-combination-gate {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: 1px solid rgba(245, 158, 11, 0.34);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: rgba(255, 251, 235, 0.78);
}

.sw-product-variant-combination-gate h4,
.sw-product-variant-combination-gate p {
  margin: 0;
}

.sw-product-variant-combination-gate h4 {
  color: var(--sw-admin-shell-ink);
}

.sw-product-variant-combination-gate p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-combination-gate__options {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-variant-combination-gate__options article {
  display: grid;
  gap: 0.16rem;
  min-width: 0;
  padding: var(--sw-primitive-space-menu-inset);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-combination-gate__options strong {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
}

.sw-product-variant-combination-gate__options small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: 0.68rem;
  line-height: 1.25;
}

.sw-product-variant-combination-gate__options .sw-products-badge,
.sw-product-variant-combination-gate__options .sw-products-action {
  justify-self: start;
}

.sw-product-variant-sellable-selection-contract {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: 1px solid rgba(245, 158, 11, 0.38);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-sellable-selection-contract h4,
.sw-product-variant-sellable-selection-contract p {
  margin: 0;
}

.sw-product-variant-sellable-selection-contract dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-menu-inset);
  margin: 0;
}

.sw-product-variant-sellable-selection-contract dl div {
  min-width: 0;
}

.sw-product-variant-sellable-selection-contract dt,
.sw-product-variant-sellable-selection-contract p {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-variant-sellable-selection-contract dd {
  margin: 0.12rem 0 0;
  overflow: hidden;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-product-variant-sellable-selection-contract__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-menu-inset);
  align-items: center;
}

.sw-product-variant-dimension-builder__bulk {
  align-items: flex-end;
  padding: var(--sw-primitive-space-stack-sm);
  border: 1px dashed #bfdbfe;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: rgba(239, 246, 255, 0.62);
}

.sw-product-variant-dimension-builder__bulk label {
  display: grid;
  flex: 1 1 18rem;
  gap: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-dimension-builder__bulk textarea {
  width: 100%;
  min-height: 5.25rem;
  resize: vertical;
  padding: var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-body-size);
}

.sw-product-variant-dimension-builder__bulk textarea:focus {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-product-variant-matrix__editor-head p,
.sw-product-variant-matrix__validation {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-variant-matrix__draft-values {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-variant-matrix__draft-value {
  flex-wrap: wrap;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-variant-matrix__draft-dimension label,
.sw-product-variant-matrix__draft-value label {
  display: grid;
  flex: 1 1 var(--sw-admin-shell-context-width);
  gap: var(--sw-primitive-space-menu-inset);
  min-width: min(100%, var(--sw-admin-shell-summary-min));
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-variant-matrix__input {
  width: 100%;
  min-height: var(--sw-primitive-density-control-height);
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 850;
}

.sw-product-variant-matrix__input:focus {
  outline: 0;
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-product-variant-matrix__input:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.sw-product-placeholder-board {
  padding: 1rem;
  border: 1px dashed #cbd5e1;
  border-radius: 1rem;
  background: #f8fafc;
  color: #64748b;
}

.sw-product-description-workbench {
  display: grid;
  grid-template-columns: 17.5rem minmax(0, 1fr) 18rem;
  gap: 1rem;
  min-width: 0;
}

.sw-product-description-blocks,
.sw-product-description-ai {
  padding: 1rem;
}

.sw-product-description-block {
  margin-top: 0.7rem;
  padding: 0.8rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.9rem;
  background: #ffffff;
}

.sw-product-description-block strong {
  justify-content: space-between;
  gap: 0.6rem;
  font-size: 0.88rem;
}

.sw-product-description-block small {
  display: block;
  margin-top: 0.35rem;
  color: #64748b;
  font-size: 0.75rem;
  line-height: 1.45;
}

.sw-product-description-canvas {
  min-width: 0;
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.35rem;
  background: linear-gradient(#e8eef7 1px, transparent 1px), linear-gradient(90deg, #e8eef7 1px, transparent 1px), #f3f7fc;
  background-size: 32px 32px;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-product-description-page {
  overflow: hidden;
  max-width: 42rem;
  min-height: 33rem;
  margin: 0 auto;
  border: 1px solid #dbe3ee;
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: 0 24px 58px rgba(15, 23, 42, 0.16);
}

.sw-product-description-page__tabs {
  display: flex;
  gap: 1.4rem;
  align-items: end;
  height: 3.2rem;
  padding: 0 1.5rem;
  border-bottom: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 0.82rem;
}

.sw-product-description-page__tabs b {
  display: flex;
  align-items: center;
  height: 100%;
  border-bottom: 2px solid #111827;
  color: #111827;
}

.sw-product-description-page__hero {
  padding: 2rem;
  background: linear-gradient(135deg, #0f172a, #111827);
  color: #ffffff;
}

.sw-product-description-page__hero p {
  margin: 0;
  color: #cbd5e1;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.14em;
}

.sw-product-description-page__hero h3 {
  max-width: 28rem;
  margin: 0.8rem 0;
  font-size: 2rem;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.sw-product-description-page__hero span,
.sw-product-description-page__section p {
  color: #cbd5e1;
  line-height: 1.6;
}

.sw-product-description-page__section {
  padding: 1.5rem 2rem;
}

.sw-product-description-page__section h4 {
  margin: 0 0 0.65rem;
  font-size: 1.2rem;
}

.sw-product-description-page__section p {
  margin: 0;
  color: #475569;
}

.sw-product-story-workspace {
  display: grid;
  grid-template-columns: 18rem minmax(0, 1fr) 19rem;
  gap: var(--sw-admin-shell-gap);
  align-items: start;
  min-width: 0;
}

.sw-product-story-workspace > * {
  min-width: 0;
}

.sw-product-story-head {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
  align-items: flex-start;
  padding: var(--sw-primitive-space-card-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-head h3,
.sw-product-story-stack h4,
.sw-product-story-inspector h4 {
  margin: 0.25rem 0;
  color: var(--sw-admin-shell-ink);
  letter-spacing: -0.02em;
}

.sw-product-story-head__actions,
.sw-product-story-blocked-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
  justify-content: flex-end;
}

.sw-product-story-binding {
  grid-column: 1 / -1;
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-card-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-story-binding__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-admin-shell-gap);
}

.sw-product-story-binding__head h4 {
  margin: 0.25rem 0;
  color: var(--sw-admin-shell-ink);
  letter-spacing: -0.02em;
}

.sw-product-story-binding__head p:last-child,
.sw-product-story-binding__migration p {
  margin: 0;
  color: var(--sw-admin-shell-muted);
}

.sw-product-story-binding__identity {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-binding__identity div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-binding__identity dt {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-story-binding__identity dd {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  word-break: break-word;
}

.sw-product-story-binding__migration {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-card-padding);
  border: 1px solid rgba(217, 119, 6, 0.28);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: rgba(255, 251, 235, 0.72);
}

.sw-product-story-binding__candidates {
  display: grid;
  gap: var(--sw-primitive-space-stack-xs);
}

.sw-product-story-binding__candidate {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-primitive-space-stack-sm);
  align-items: flex-start;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  cursor: pointer;
}

.sw-product-story-binding__candidate[data-selected="true"] {
  border-color: rgba(37, 99, 235, 0.4);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.sw-product-story-binding__candidate input {
  margin-top: 0.2rem;
}

.sw-product-story-binding__candidate span {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
}

.sw-product-story-binding__candidate small {
  color: var(--sw-admin-shell-muted);
  word-break: break-word;
}

.sw-product-story-stack,
.sw-product-story-inspector {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-card-padding);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-story-section-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-stack-xs);
  align-items: center;
  width: 100%;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  text-align: left;
  cursor: pointer;
}

.sw-product-story-section-row[data-active="true"] {
  border-color: rgba(37, 99, 235, 0.4);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.sw-product-story-section-row span {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
}

.sw-product-story-section-row strong,
.sw-product-story-section-row small {
  min-width: 0;
}

.sw-product-story-section-row small {
  grid-column: 2 / 4;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-product-story-state {
  display: grid;
  gap: var(--sw-primitive-space-stack-xs);
  padding: var(--sw-primitive-space-card-padding);
  border: 1px dashed var(--sw-admin-shell-border-color);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-muted);
}

.sw-product-story-canvas {
  min-width: 0;
  padding: 1rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: linear-gradient(#e8eef7 1px, transparent 1px), linear-gradient(90deg, #e8eef7 1px, transparent 1px), #f3f7fc;
  background-size: 32px 32px;
  box-shadow: var(--sw-admin-shell-shadow-soft);
}

.sw-product-story-preview .sw-product-description-page__section {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-preview .sw-product-description-page__section small {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-product-story-inspector dl {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-inspector dl div {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-inspector dt {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
}

.sw-product-story-inspector dd {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  word-break: break-word;
}

.sw-product-story-editor {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-schema-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-schema-summary div,
.sw-product-story-layout {
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-schema-summary span,
.sw-product-story-layout__head span,
.sw-product-story-layout label span {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-schema-summary strong {
  display: block;
  margin-block-start: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink);
  overflow-wrap: anywhere;
}

.sw-product-story-editor label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-editor__sync-note {
  margin: var(--sw-primitive-space-menu-inset) 0;
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-editor__structured-summary {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  color: var(--sw-admin-shell-ink);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-editor__structured-editor {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-editor__structured-head,
.sw-product-story-editor__structured-item > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-editor__structured-head > div,
.sw-product-story-editor__structured-head > span {
  display: grid;
  gap: 0.15rem;
  color: var(--sw-admin-shell-ink);
  font-weight: 850;
}

.sw-product-story-editor__structured-head small,
.sw-product-story-editor__structured-item > header strong {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-product-story-editor__structured-add,
.sw-product-story-editor__structured-item > header button {
  min-height: 2rem;
  padding: 0.35rem 0.7rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: 999px;
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
  cursor: pointer;
}

.sw-product-story-editor__structured-item > header button {
  color: #b91c1c;
}

.sw-product-story-editor__structured-add:disabled,
.sw-product-story-editor__structured-item > header button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.sw-product-story-editor__structured-list,
.sw-product-story-editor__structured-fields,
.sw-product-story-editor__structured-cta {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-product-story-editor__structured-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-story-editor__structured-fields[data-kind='cta'] {
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
}

.sw-product-story-editor__structured-item {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: 1px solid #dbe4f0;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: #f8fbff;
}

.sw-product-story-editor__structured-fields label,
.sw-product-story-editor__structured-cta label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  min-width: 0;
  max-width: 100%;
}

.sw-product-story-editor__structured-fields input,
.sw-product-story-editor__structured-fields textarea,
.sw-product-story-editor__structured-fields select,
.sw-product-story-editor__structured-cta input,
.sw-product-story-editor__structured-cta textarea,
.sw-product-story-editor__structured-cta select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.sw-product-story-editor__structured-fields textarea {
  min-height: 6rem;
}

.sw-product-story-editor__structured-cta {
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: var(--sw-primitive-space-stack-sm);
  border: 1px dashed #cbd5e1;
  border-radius: var(--sw-admin-shell-radius-sm);
}

.sw-product-story-editor__structured-cta > span {
  grid-column: 1 / -1;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-editor__structured-empty {
  padding: var(--sw-primitive-space-stack-md);
  border: 1px dashed #cbd5e1;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: #f8fafc;
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.5;
  text-align: center;
}

@media (max-width: 720px) {
  .sw-product-story-editor__structured-head {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-product-story-editor__structured-fields,
  .sw-product-story-editor__structured-fields[data-kind='cta'],
  .sw-product-story-editor__structured-cta {
    grid-template-columns: minmax(0, 1fr);
  }
}

.sw-product-story-editor input,
.sw-product-story-editor textarea,
.sw-product-story-editor select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-story-layout {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-layout__head {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-story-layout__head h5 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-product-story-layout__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-editor__actions,
.sw-product-story-order-preview,
.sw-product-story-mutation-status {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-mutation-status {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.5;
}

.sw-product-story-mutation-status strong {
  color: #b91c1c;
}

.sw-product-story-boundary-panel {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-boundary-panel__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-boundary-panel__head h4 {
  margin: 0;
}

.sw-product-story-boundary-panel__list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-product-story-boundary-panel__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-boundary-panel__row > span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-product-story-unsaved-handoff {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-card-padding);
  border: 1px solid var(--sw-admin-shell-border-color);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-unsaved-handoff strong,
.sw-product-story-unsaved-handoff p {
  margin: 0;
}

.sw-product-story-unsaved-handoff p {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.5;
}

.sw-product-story-ai-assist {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-color: var(--sw-primitive-color-warning);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-ai-assist__head,
.sw-product-story-ai-assist__actions,
.sw-product-story-ai-assist__proof {
  display: flex;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-ai-assist__head {
  justify-content: space-between;
}

.sw-product-story-ai-assist__head h4,
.sw-product-story-ai-assist__head p {
  margin: 0;
}

.sw-product-story-ai-assist__head p,
.sw-product-story-ai-assist__actions span,
.sw-product-story-ai-assist__idle {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-ai-assist__head > span,
.sw-product-story-ai-assist__actions {
  flex-wrap: wrap;
}

.sw-product-story-ai-assist__base,
.sw-product-story-ai-assist__grid,
.sw-product-story-ai-assist__text-grid {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-ai-assist__base,
.sw-product-story-ai-assist__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-story-ai-assist__base div,
.sw-product-story-ai-assist label,
.sw-product-story-ai-assist__idle,
.sw-product-story-ai-assist__proof,
.sw-product-story-ai-assist__audit pre {
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-ai-assist dt,
.sw-product-story-ai-assist label span,
.sw-product-story-ai-assist__audit summary {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-ai-assist dd {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  overflow-wrap: anywhere;
}

.sw-product-story-ai-assist label {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
}

.sw-product-story-ai-assist input,
.sw-product-story-ai-assist select,
.sw-product-story-ai-assist textarea {
  width: 100%;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
}

.sw-product-story-ai-assist__wide-field {
  grid-column: 1 / -1;
}

.sw-product-story-ai-assist__blockers {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-product-story-ai-assist__blockers li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-primitive-space-menu-inset);
  align-items: start;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-ai-assist__blockers svg,
.sw-product-story-ai-assist__proof svg {
  width: var(--sw-primitive-density-icon-size);
  height: var(--sw-primitive-density-icon-size);
  color: var(--sw-admin-shell-warning);
}

.sw-product-story-ai-assist__proof {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-ai-assist__audit {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-ai-assist__audit summary {
  cursor: pointer;
}

.sw-product-story-ai-assist__audit pre {
  max-block-size: calc(var(--sw-primitive-density-control-height-lg) * 6);
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-family: var(--sw-primitive-type-mono-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
  overflow: auto;
  white-space: pre-wrap;
}

.sw-product-story-proposal {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-proposal__head,
.sw-product-story-proposal__actions,
.sw-product-story-proposal__footer {
  display: flex;
  align-items: flex-start;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-proposal__head {
  justify-content: space-between;
}

.sw-product-story-proposal__head h4,
.sw-product-story-proposal__head p,
.sw-product-story-proposal__diff p {
  margin: 0;
}

.sw-product-story-proposal__head p,
.sw-product-story-proposal__actions span,
.sw-product-story-proposal__empty,
.sw-product-story-proposal__diff p {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-proposal__identity,
.sw-product-story-proposal__protected ul,
.sw-product-story-proposal__diff ul {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-proposal__identity {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-product-story-proposal__identity div,
.sw-product-story-proposal__empty,
.sw-product-story-proposal__stale,
.sw-product-story-proposal__protected,
.sw-product-story-proposal__diff,
.sw-product-story-proposal__preview,
.sw-product-story-proposal__audit pre {
  min-width: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-story-proposal__identity dt,
.sw-product-story-proposal__audit summary {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-proposal__identity dd {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  overflow-wrap: anywhere;
}

.sw-product-story-proposal__actions {
  flex-wrap: wrap;
}

.sw-product-story-proposal__stale {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  background: var(--sw-primitive-color-warning-surface);
}

.sw-product-story-proposal__protected,
.sw-product-story-proposal__diff,
.sw-product-story-proposal__preview,
.sw-product-story-proposal__audit {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-proposal__audit--hidden {
  display: none;
}

.sw-product-story-proposal__protected strong,
.sw-product-story-proposal__diff strong,
.sw-product-story-proposal__preview strong {
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-proposal__protected ul,
.sw-product-story-proposal__diff ul {
  padding: 0;
  list-style: none;
}

.sw-product-story-proposal__protected li,
.sw-product-story-proposal__diff li {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-proposal__protected li {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-product-story-proposal__diff li {
  grid-template-columns: minmax(0, 0.9fr) repeat(2, minmax(0, 1fr));
}

.sw-product-story-proposal__diff span,
.sw-product-story-proposal__protected span {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  overflow-wrap: anywhere;
}

.sw-product-story-proposal__diff code,
.sw-product-story-proposal__audit pre {
  color: var(--sw-admin-shell-ink);
  font-family: var(--sw-primitive-type-mono-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.sw-product-story-proposal__render {
  max-block-size: calc(var(--sw-primitive-density-control-height-lg) * 8);
  overflow: auto;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-product-story-proposal__footer {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.sw-product-story-proposal__audit summary {
  cursor: pointer;
}

.sw-product-story-proposal__audit pre {
  max-block-size: calc(var(--sw-primitive-density-control-height-lg) * 6);
  margin: 0;
  overflow: auto;
  white-space: pre-wrap;
}

.sw-product-story-visual-target {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
  max-width: 100%;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
}

.sw-product-story-visual-target__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-visual-target__head h4,
.sw-product-story-visual-target__helper {
  margin: 0;
}

.sw-product-story-visual-target__helper {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-product-story-visual-target__identity {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-visual-target__route,
.sw-product-story-visual-target__identity div,
.sw-product-story-visual-target__blockers li,
.sw-product-story-visual-target__provider-lane,
.sw-product-story-visual-target__evidence-lane,
.sw-product-story-visual-target__provider-proof div,
.sw-product-story-visual-target__evidence-proof div,
.sw-product-story-visual-target__provider-blockers li,
.sw-product-story-visual-target__evidence-blockers li,
.sw-product-story-visual-target__f4-state,
.sw-product-story-visual-target__provider-pattern {
  display: grid;
  gap: var(--sw-primitive-space-menu-inset);
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-story-visual-target dt,
.sw-product-story-visual-target__route span,
.sw-product-story-visual-target__blockers span,
.sw-product-story-visual-target__provider-pattern span,
.sw-product-story-visual-target__provider-blockers span,
.sw-product-story-visual-target__evidence-blockers span,
.sw-product-story-visual-target__f4-state span,
.sw-product-story-visual-target__request summary,
.sw-product-story-visual-target__lineage summary {
  color: var(--sw-admin-shell-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-product-story-visual-target dd {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  overflow-wrap: anywhere;
}

.sw-product-story-visual-target code,
.sw-product-story-visual-target pre {
  max-width: 100%;
  color: var(--sw-admin-shell-ink);
  font-family: var(--sw-primitive-type-mono-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
  font-size: var(--sw-primitive-type-caption-size);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.sw-product-story-visual-target__route code {
  overflow-wrap: anywhere;
}

.sw-product-story-visual-target__blockers {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-product-story-visual-target__provider-lane {
  background: var(--sw-primitive-color-warning-surface);
}

.sw-product-story-visual-target__evidence-lane {
  background: var(--sw-admin-shell-surface-soft);
}

.sw-product-story-visual-target__provider-head,
.sw-product-story-visual-target__evidence-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-visual-target__provider-head h5,
.sw-product-story-visual-target__evidence-head h5 {
  margin: 0;
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-product-story-visual-target__provider-proof,
.sw-product-story-visual-target__evidence-proof {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
}

.sw-product-story-visual-target__provider-blockers,
.sw-product-story-visual-target__evidence-blockers {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.sw-product-story-visual-target__request,
.sw-product-story-visual-target__lineage {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-product-story-visual-target__request summary,
.sw-product-story-visual-target__lineage summary {
  cursor: pointer;
}

.sw-product-story-visual-target__request pre,
.sw-product-story-visual-target__lineage pre {
  max-block-size: calc(var(--sw-primitive-density-control-height-lg) * 6);
  margin: 0;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-primitive-color-neutral-surface);
  line-height: var(--sw-primitive-type-line-body);
  overflow: auto;
  white-space: pre-wrap;
}

.sw-product-story-preview-link {
  display: block;
  padding: var(--sw-primitive-space-stack-sm);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-accent);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
  overflow-wrap: anywhere;
}

.sw-product-story-boundary {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-stack-sm);
  border: 1px solid rgba(245, 158, 11, 0.35);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: rgba(255, 251, 235, 0.85);
  color: #92400e;
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.5;
}

.sw-product-story-boundary svg {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
}

@container sw-products-catalog (max-width: 74rem) {
  .sw-products-catalog__workspace {
    grid-template-columns: 1fr;
  }

  .sw-products-inspector {
    order: 2;
  }
}

@media (max-width: 1180px) {
  .sw-product-variant-spec-row {
    grid-template-columns: minmax(7rem, 0.46fr) minmax(0, 1.9fr) minmax(7.5rem, 0.48fr);
  }

  .sw-product-variant-spec-option-detail,
  .sw-product-variant-sellable-selection-contract dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-product-variant-combination-gate__options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-products-catalog__hero,
  .sw-products-catalog__workspace,
  .sw-product-detail__header,
  .sw-product-page-access,
  .sw-product-detail-tab-grid,
  .sw-product-description-workbench,
  .sw-product-story-workspace {
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  .sw-product-story-head,
  .sw-product-story-binding__head {
    flex-direction: column;
  }

  .sw-product-story-head__actions {
    justify-content: flex-start;
  }

  .sw-product-story-binding__identity {
    grid-template-columns: 1fr;
  }

  .sw-products-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 52em) {
  .sw-admin-shell:has(.sw-products-catalog),
  .sw-admin-shell:has(.sw-product-detail) {
    grid-template-columns: minmax(0, 1fr);
    max-width: 100vw;
    padding-bottom: var(--sw-admin-shell-mobile-bar);
  }

  .sw-admin-shell:has(.sw-products-catalog) .sw-admin-shell__rail,
  .sw-admin-shell:has(.sw-product-detail) .sw-admin-shell__rail {
    display: none !important;
  }

  .sw-product-story-visual-target__head {
    flex-direction: column;
  }

  .sw-product-story-visual-target__provider-head {
    flex-direction: column;
  }

  .sw-product-story-visual-target__evidence-head {
    flex-direction: column;
  }

  .sw-product-story-boundary-panel__head {
    flex-direction: column;
  }

  .sw-product-story-boundary-panel__row {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
  }

  .sw-product-story-ai-assist__head,
  .sw-product-story-ai-assist__actions,
  .sw-product-story-proposal__head,
  .sw-product-story-proposal__actions,
  .sw-product-story-proposal__footer {
    flex-direction: column;
  }

  .sw-product-story-ai-assist__base,
  .sw-product-story-ai-assist__grid,
  .sw-product-story-proposal__identity,
  .sw-product-story-proposal__diff li {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-story-visual-target__identity {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-story-schema-summary,
  .sw-product-story-layout__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-story-visual-target__provider-proof,
  .sw-product-story-visual-target__evidence-proof {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-admin-shell:has(.sw-products-catalog) .sw-admin-shell__workspace,
  .sw-admin-shell:has(.sw-products-catalog) .sw-admin-shell__header,
  .sw-admin-shell:has(.sw-products-catalog) .sw-admin-shell__layout,
  .sw-admin-shell:has(.sw-products-catalog) .sw-admin-shell__main,
  .sw-admin-shell:has(.sw-product-detail) .sw-admin-shell__workspace,
  .sw-admin-shell:has(.sw-product-detail) .sw-admin-shell__header,
  .sw-admin-shell:has(.sw-product-detail) .sw-admin-shell__layout,
  .sw-admin-shell:has(.sw-product-detail) .sw-admin-shell__main {
    max-width: 100vw;
    overflow-x: clip;
  }
}

@media (max-width: 760px) {
  .sw-product-variant-spec-row {
    grid-template-columns: 1fr;
  }

  .sw-product-variant-spec-row__status {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
  }

  .sw-product-variant-spec-option-detail,
  .sw-product-variant-sellable-selection-contract dl,
  .sw-product-variant-combination-gate__options {
    grid-template-columns: 1fr;
  }

  .sw-product-variant-matrix__value {
    max-width: min(100%, 11rem);
  }

  .sw-products-toolbar,
  .sw-products-toolbar__actions,
  .sw-product-detail__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-product-detail__tabs {
    position: sticky;
    bottom: calc(
      var(--sw-admin-shell-mobile-bar)
      + var(--sw-primitive-space-stack-sm)
    );
    z-index: 1;
    display: flex;
    max-width: 100%;
    align-items: center;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scroll-margin-block-end: calc(
      var(--sw-admin-shell-mobile-bar)
      + var(--sw-primitive-space-stack-md)
    );
    -webkit-overflow-scrolling: touch;
  }

  .sw-product-detail__tab {
    width: auto;
    flex: 0 0 auto;
    justify-content: flex-start;
    scroll-snap-align: center;
    white-space: nowrap;
  }

  .sw-product-specs__heading {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-product-specs__maintenance > div {
    flex-direction: column;
  }

  .sw-product-specs__maintenance .sw-products-action {
    width: 100%;
  }

  .sw-product-page-access {
    gap: 0.35rem;
    padding: 0.55rem 0.6rem;
  }

  .sw-product-page-access__copy {
    gap: 0;
  }

  .sw-product-page-access__copy .sw-products-eyebrow,
  .sw-product-page-access__copy > p:last-child {
    display: none;
  }

  .sw-product-page-access__layers {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.3rem;
  }

  .sw-product-page-access__layers article {
    min-height: 3rem;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.4rem 0.45rem;
  }

  .sw-product-page-access__details {
    padding-top: 0.2rem;
  }

  .sw-product-page-access__details > div {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-product-detail__actions .sw-products-action,
  .sw-product-page-access__primary {
    width: 100%;
  }

  .sw-product-basic__actions .sw-products-action,
  .sw-product-basic__category-actions .sw-products-action {
    width: 100%;
  }

  .sw-products-table {
    overflow: visible;
  }

  .sw-products-table__row {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .sw-products-category-products__row {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .sw-products-table__action {
    align-items: stretch;
  }

  .sw-products-category-products__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-products-table__inspect-action,
  .sw-products-table__edit-action {
    flex: 1 1 auto;
  }

  .sw-products-metric-grid,
  .sw-product-detail-field-grid,
  .sw-product-basic__section,
  .sw-product-pricing__facts,
  .sw-product-pricing__owner-grid,
  .sw-product-pricing__merchant-grid,
  .sw-product-pricing__member-grid,
  .sw-product-pricing__setting-row,
  .sw-product-basic__category-grid,
  .sw-product-media-posture,
  .sw-product-media-posture__body dl,
  .sw-product-media-candidate-grid,
  .sw-product-variant-matrix__summary,
  .sw-product-variant-commerce-strip,
  .sw-product-variant-setup-rail,
  .sw-product-variant-drawer__grid,
  .sw-product-variant-drawer__fields,
  .sw-product-bom-projection-contract,
  .sw-product-bom-owner-map__head,
  .sw-product-bom-owner-map__grid,
  .sw-product-bom-option-mapping__row,
  .sw-product-variant-projection__trace,
  .sw-product-variant-source-gaps,
  .sw-product-variant-matrix__row,
  .sw-product-variant-workbench-table__row,
  .sw-product-variant-drawer__image-row,
  .sw-product-variant-matrix__blocker,
  .sw-product-variant-image-posture__head,
  .sw-product-variant-image-posture__row,
  .sw-product-variant-compositor,
  .sw-product-paper-doll__head,
  .sw-product-paper-doll__section-head,
  .sw-product-paper-doll__summary,
  .sw-product-paper-doll__workbench-grid,
  .sw-product-paper-doll__workbox-grid,
  .sw-product-paper-doll__layer-row,
  .sw-product-paper-doll__composite-row,
  .sw-product-paper-doll__thumbnail-row,
  .sw-product-inventory__mode-grid,
  .sw-product-inventory__summary,
  .sw-product-inventory__aggregate-grid,
  .sw-product-inventory__draft-grid,
  .sw-product-inventory__row,
  .sw-product-inventory__matrix-row,
  .sw-product-inventory__draft-row,
  .sw-product-inventory__empty,
  .sw-product-inventory__blocker {
    grid-template-columns: 1fr;
  }

  .sw-product-basic__heading,
  .sw-product-basic__summary,
  .sw-product-basic__actions,
  .sw-product-basic__category-head,
  .sw-product-seo__heading,
  .sw-product-seo__release-heading,
  .sw-product-basic__category-actions,
  .sw-product-pricing__heading,
  .sw-product-media__heading,
  .sw-product-variant-matrix__head,
  .sw-product-variant-commerce-card__head,
  .sw-product-variant-drawer__head,
  .sw-product-variant-image-posture__head,
  .sw-product-inventory__heading,
  .sw-product-inventory__save-strip,
  .sw-product-inventory__section-head,
  .sw-product-inventory__component-row,
  .sw-product-inventory__bottleneck-row {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-product-inventory__save-actions {
    justify-content: stretch;
  }

  .sw-product-variant-workbench-table__row {
    min-width: 0;
  }

  .sw-product-inventory__save-actions .sw-products-action {
    width: 100%;
  }
}

@media (max-width: 60em) and (max-height: 30em) and (orientation: landscape) {
  .sw-product-detail__tabs {
    position: static;
    bottom: auto;
    z-index: auto;
  }

  .sw-product-detail__actions {
    overflow-x: auto;
    flex-direction: row;
    overscroll-behavior-inline: contain;
  }

  .sw-product-detail__actions .sw-products-action {
    width: auto;
    min-width: max-content;
    flex: 0 0 auto;
  }
}

/* DIR174 launch-first product ResourceIndex */
.sw-products-toolbar {
  display: grid;
  grid-template-columns: minmax(16rem, 1fr) auto auto auto;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  min-width: 0;
  padding: 0.8rem 1rem;
  border: 1px solid #dbe4ee;
  border-radius: 1rem;
  background: #fff;
}

.sw-products-toolbar__search {
  display: flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  gap: 0.6rem;
  padding: 0 0.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.75rem;
  background: #fff;
}

.sw-products-toolbar__search svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  color: #64748b;
}

.sw-products-toolbar__search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #0f172a;
  font: inherit;
}

.sw-products-toolbar__filters {
  min-width: 0;
}

.sw-products-toolbar__filters > summary {
  display: none;
}

.sw-products-toolbar__filter-fields {
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.sw-products-toolbar__filter {
  display: grid;
  min-width: 9rem;
  gap: 0.2rem;
  color: #475569;
  font-size: 0.68rem;
  font-weight: 800;
}

.sw-products-toolbar__filter select {
  min-height: 2.75rem;
  max-width: 14rem;
  padding: 0.45rem 2rem 0.45rem 0.65rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.7rem;
  background: #fff;
  color: #0f172a;
  font: inherit;
  font-size: 0.78rem;
}

.sw-products-toolbar__reload {
  min-height: 2.75rem;
  white-space: nowrap;
}

.sw-products-catalog {
  display: grid;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  gap: 0.65rem;
  container: products-catalog / inline-size;
}

.sw-products-table {
  display: grid;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
  border: 1px solid var(--sw-primitive-color-border, #d9dee5);
  border-radius: var(--sw-primitive-radius-panel, 8px);
  background: var(--sw-primitive-color-surface, #fff);
}

.sw-products-table__row {
  display: grid;
  grid-template-columns: minmax(14rem, 2.1fr) minmax(7.5rem, 0.8fr) minmax(8.5rem, 0.9fr) minmax(12rem, 1fr) minmax(5.5rem, auto);
  min-width: 0;
  align-items: center;
  gap: 0.85rem;
  padding: 0.72rem 0.85rem;
}

.sw-products-table__row--head {
  border-bottom: 1px solid #dbe4ee;
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.sw-products-table__row--body + .sw-products-table__row--body {
  border-top: 1px solid #eef2f7;
}

.sw-products-table__row--body:hover {
  background: #f8fafc;
}

.sw-products-table__row--loading {
  min-height: 4.75rem;
  background: linear-gradient(90deg, #f8fafc, #eef2f7, #f8fafc);
  background-size: 200% 100%;
  animation: sw-products-loading 1.4s ease-in-out infinite;
}

@keyframes sw-products-loading {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}

.sw-products-product-cell {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.75rem;
}

.sw-products-product-cell > span:last-child {
  display: grid;
  min-width: 0;
  gap: 0.15rem;
}

.sw-products-product-cell strong,
.sw-products-product-cell small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-products-product-cell strong {
  color: #0f172a;
  font-size: 0.86rem;
}

.sw-products-product-cell small {
  color: #64748b;
  font-size: 0.7rem;
}

.sw-products-catalog__thumb {
  width: 2.75rem;
  height: 2.75rem;
  flex: 0 0 2.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.7rem;
  object-fit: cover;
  background: #f8fafc;
}

.sw-products-catalog__thumb--empty {
  display: grid;
  place-items: center;
  color: #94a3b8;
}

.sw-products-catalog__thumb--empty svg {
  width: 1.05rem;
  height: 1.05rem;
}

.sw-products-price-cell,
.sw-products-inventory-cell {
  display: grid;
  min-width: 0;
  gap: 0.15rem;
}

.sw-products-price-cell strong,
.sw-products-inventory-cell strong {
  color: #0f172a;
  font-size: 0.78rem;
  overflow-wrap: anywhere;
}

.sw-products-price-cell[data-state="unavailable"] strong,
.sw-products-inventory-cell[data-state="unavailable"] strong {
  color: #92400e;
}

.sw-products-inventory-cell small {
  color: #64748b;
  font-size: 0.67rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.sw-products-status-stack {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.sw-products-table__action {
  display: flex;
  justify-content: flex-end;
}

.sw-products-table__edit-action {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.55rem 0.75rem;
  border: 1px solid var(--sw-primitive-color-border, #d9dee5);
  border-radius: var(--sw-primitive-radius-control, 6px);
  background: var(--sw-primitive-color-surface, #fff);
  color: var(--sw-primitive-color-accent, #2563eb);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.sw-products-table__edit-action svg {
  width: 0.9rem;
  height: 0.9rem;
}

.sw-products-table__edit-action[data-state="unavailable"] {
  border-color: #e2e8f0;
  background: #f8fafc;
  color: #64748b;
}

.sw-products-table__edit-action:focus-visible,
.sw-products-toolbar__search:focus-within,
.sw-products-toolbar__filter select:focus-visible,
.sw-products-toolbar__filters > summary:focus-visible {
  outline: 3px solid rgb(37 99 235 / 0.25);
  outline-offset: 2px;
}

.sw-products-empty {
  display: grid;
  grid-column: 1 / -1;
  min-height: 9rem;
  place-content: center;
  gap: 0.35rem;
  padding: 1.5rem;
  color: #64748b;
  text-align: center;
}

.sw-products-empty strong {
  color: #0f172a;
}

.sw-products-catalog__summary {
  margin: 0;
  color: #64748b;
  font-size: 0.7rem;
  text-align: right;
}

@media (max-width: 920px) {
  .sw-products-toolbar {
    grid-template-columns: minmax(12rem, 1fr) auto auto;
  }

  .sw-products-toolbar__filters {
    grid-column: 1 / -1;
  }

  .sw-products-toolbar__filter-fields {
    justify-content: flex-end;
  }

  .sw-products-table__row {
    grid-template-columns: minmax(12rem, 1.8fr) minmax(7rem, 0.75fr) minmax(7.5rem, 0.8fr) minmax(10rem, 1fr) auto;
    gap: 0.65rem;
  }
}

@media (max-width: 760px) {
  .sw-products-toolbar {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 0.7rem;
  }

  .sw-products-toolbar__search {
    grid-column: 1 / -1;
  }

  .sw-products-toolbar__filters {
    grid-column: 1 / -1;
    border: 1px solid #dbe4ee;
    border-radius: 0.75rem;
  }

  .sw-products-toolbar__filters > summary {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 0.7rem;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 850;
    cursor: pointer;
  }

  .sw-products-toolbar__filters > summary span {
    margin-left: auto;
    color: #64748b;
    font-size: 0.68rem;
    font-weight: 700;
  }

  .sw-products-toolbar__filters > summary svg {
    width: 0.95rem;
    height: 0.95rem;
  }

  .sw-products-toolbar__filter-fields {
    align-items: stretch;
    flex-direction: column;
    padding: 0.7rem;
    border-top: 1px solid #e2e8f0;
  }

  .sw-products-toolbar__filter,
  .sw-products-toolbar__filter select {
    width: 100%;
    max-width: none;
  }

  .sw-products-toolbar__reload {
    width: auto;
  }

}

/* Respond to the usable catalog width, including an open shared subnav.
   Product/specification workbenches do not use this named container. */
@container products-catalog (min-width: 42.001rem) and (max-width: 64rem) {
  .sw-products-table__row {
    grid-template-columns: minmax(11rem, 1.8fr) minmax(5rem, .7fr) minmax(6rem, .8fr) minmax(8rem, 1fr) minmax(4rem, auto);
    gap: 8px;
    padding: 12px;
  }
  .sw-products-product-cell strong { white-space: normal; line-height: 1.5; }
}

@container products-catalog (max-width: 42rem) {
  .sw-products-table {
    position: relative;
    overflow: visible;
    border: 0;
    background: transparent;
  }

  .sw-products-table__row--head {
    position: absolute;
    width: 1px;
    min-width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    grid-template-columns: repeat(5, 1px);
    gap: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }

  .sw-products-table__row--body {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--sw-primitive-color-border, #d9dee5);
    border-radius: var(--sw-primitive-radius-panel, 8px);
    background: var(--sw-primitive-color-surface, #fff);
  }

  .sw-products-product-cell strong { white-space: normal; line-height: 1.5; }

  .sw-products-table__row--body + .sw-products-table__row--body {
    margin-top: 0.65rem;
    border-top: 1px solid #dbe4ee;
  }

  .sw-products-table__row--body > [data-label]:not(.sw-products-product-cell) {
    display: grid;
    grid-template-columns: 6.5rem minmax(0, 1fr);
    align-items: start;
    gap: 0.6rem;
  }

  .sw-products-table__row--body > [data-label]:not(.sw-products-product-cell)::before {
    content: attr(data-label);
    color: #64748b;
    font-size: 0.68rem;
    font-weight: 800;
  }

  .sw-products-status-stack {
    justify-content: flex-start;
  }

  .sw-products-table__action {
    justify-content: stretch;
  }

  .sw-products-table__edit-action {
    width: 100%;
  }

  .sw-products-table__row--loading {
    min-height: 8rem;
    border-radius: var(--sw-primitive-radius-panel, 8px);
  }

  .sw-products-catalog__summary {
    text-align: left;
  }
}

/* A desktop workspace narrowed by navigation remains denser than a phone. */
@container products-catalog (min-width: 28rem) and (max-width: 42rem) {
  .sw-products-table__row--body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-products-product-cell { grid-column: 1 / -1; }
  .sw-products-table__row--body > [data-label]:not(.sw-products-product-cell) {
    grid-template-columns: 4.5rem minmax(0, 1fr);
    align-items: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sw-products-table__row--loading {
    animation: none;
  }
}

/*!********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/product-story-template-publication.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************/
.sw-product-story-template-assembly{container:sw-product-assembly/inline-size;min-width:0;display:grid;gap:0.8rem;padding:0.95rem;border:1px solid #cbd8e8;border-radius:0.95rem;background:#fff}.sw-product-story-template-assembly>header,.sw-product-story-template-assembly>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:0.8rem}.sw-product-story-template-assembly>header>div{display:grid;gap:0.16rem}.sw-product-story-template-assembly>header span{color:#2563eb;font-size:0.62rem;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.sw-product-story-template-assembly h4,.sw-product-story-template-assembly p{margin:0}.sw-product-story-template-assembly h4{color:#172033;font-size:0.92rem}.sw-product-story-template-assembly p,.sw-product-story-template-assembly footer>span{color:#64748b;font-size:0.68rem;line-height:1.5}.sw-product-story-template-assembly__status{display:flex;align-items:flex-start;gap:0.5rem;padding:0.68rem 0.75rem;border:1px solid #dbe4ef;border-radius:0.75rem;background:#f8fafc}.sw-product-story-template-assembly__status[data-status="current"]{border-color:#a7d9bf;background:#f0fdf4}.sw-product-story-template-assembly__status[data-status="blocked"],.sw-product-story-template-assembly__status[data-status="stale"]{border-color:#edc87a;background:#fff9e9}.sw-product-story-template-assembly__status>svg{width:1rem;height:1rem;flex:0 0 auto;color:#2563eb}.sw-product-story-template-assembly__status>span{display:grid;gap:0.1rem}.sw-product-story-template-assembly__status strong{color:#172033;font-size:0.72rem}.sw-product-story-template-assembly__status small{color:#64748b;font-size:0.6rem}.sw-product-story-template-assembly fieldset{min-width:0;margin:0;padding:0;border:0}.sw-product-story-template-assembly legend{margin-bottom:0.45rem;color:#334155;font-size:0.66rem;font-weight:850}.sw-product-story-template-assembly__templates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.55rem}.sw-product-story-template-assembly__templates label{display:flex;align-items:flex-start;gap:0.55rem;min-width:0;padding:0.72rem;border:1px solid #dce4ef;border-radius:0.75rem;background:#fff;cursor:pointer}.sw-product-story-template-assembly__templates label:has(input:checked){border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb}.sw-product-story-template-assembly__templates input{margin-top:0.1rem;accent-color:#2563eb}.sw-product-story-template-assembly__templates label>span{display:grid;gap:0.12rem;min-width:0}.sw-product-story-template-assembly__templates strong{color:#172033;font-size:0.73rem}.sw-product-story-template-assembly__templates small,.sw-product-story-template-assembly__templates code{color:#64748b;font-size:0.58rem;overflow-wrap:anywhere}.sw-product-story-template-assembly__owners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.5rem;margin:0}.sw-product-story-template-assembly__owners>div{display:grid;gap:0.12rem;min-width:0;padding:0.58rem;border:1px solid #e1e8f1;border-radius:0.68rem;background:#f8fafc}.sw-product-story-template-assembly__owners dt{color:#718096;font-size:0.56rem;font-weight:850}.sw-product-story-template-assembly__owners dd{min-width:0;margin:0;color:#27364a;font-size:0.65rem;font-weight:800;overflow-wrap:anywhere}.sw-product-story-template-assembly__header-use{grid-template-columns:minmax(0,1fr)}.sw-product-story-template-assembly__header-use :is(strong,small){font-size:.875rem;line-height:1.5}.sw-product-story-template-assembly>header>button{flex-shrink:0;white-space:nowrap}@container sw-product-assembly (max-width:36rem){.sw-product-story-template-assembly>header{flex-direction:column}.sw-product-story-template-assembly>footer{flex-wrap:wrap}.sw-product-story-template-assembly__owners{grid-template-columns:repeat(3,minmax(0,1fr))}.sw-product-story-template-assembly__owners>div:first-child{grid-column:1/-1}.sw-product-story-template-assembly__owners dt{font-size:.75rem}.sw-product-story-template-assembly__owners dd{font-size:.875rem;line-height:1.5}}.sw-product-story-template-assembly__blockers{padding:0.65rem 0.75rem;border-left:3px solid #d18b15;background:#fff9e9;color:#7a5311;font-size:0.66rem}.sw-product-story-template-assembly__blockers ul{margin:0.3rem 0 0;padding-left:1.1rem}.sw-product-story-template-assembly__error,.sw-product-story-template-assembly__success{padding:0.65rem 0.75rem;border-radius:0.7rem;font-weight:800}.sw-product-story-template-assembly__error{background:#fff1f0;color:#b42318!important}.sw-product-story-template-assembly__success{display:flex;align-items:center;gap:0.4rem;background:#f0fdf4;color:#166534!important}.sw-product-story-template-assembly__success svg{width:0.9rem;height:0.9rem}.sw-product-story-template-assembly>footer{align-items:center}.sw-product-story-template-assembly>footer .sw-products-action{flex:0 0 auto}.sw-product-story-history-drawer{overflow:hidden;border:1px solid #dce4ef;border-radius:0.82rem;background:#fff}.sw-product-story-history-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:0.7rem;padding:0.75rem 0.85rem;color:#334155;cursor:pointer;list-style:none}.sw-product-story-history-drawer>summary::-webkit-details-marker{display:none}.sw-product-story-history-drawer>summary span{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.74rem;font-weight:850}.sw-product-story-history-drawer>summary svg{width:0.95rem;height:0.95rem;color:#2563eb}.sw-product-story-history-drawer>summary small{color:#718096;font-size:0.62rem}.sw-product-story-history-drawer[open]>summary{border-bottom:1px solid #e7ecf2;background:#f8fafc}.sw-product-template-publication{display:grid;gap:1rem;min-width:0;margin-block-start:1.5rem}.sw-product-release-preview{display:grid;gap:1rem;min-width:0}.sw-product-release-preview__viewport{width:100%;min-width:0;max-height:70dvh;overflow:auto;overscroll-behavior:contain;border:1px solid var(--sw-primitive-color-border, #d5dce5)}.sw-product-release-preview__viewport[data-device="mobile"]{width:min(390px,100%);margin-inline:auto}.sw-product-release-preview__confirm{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.5rem}.sw-product-release-preview__confirm input{width:1.25rem;height:1.25rem;flex-shrink:0}.sw-product-release-preview button,.sw-product-template-publication>button{min-height:44px}.sw-product-release-preview__viewport:focus-within{outline:2px solid var(--sw-color-focus-indicator, #165eff)}.sw-product-story-release-panel{display:grid;gap:0.8rem;padding:0.95rem;border:1px solid #cfd9e7;border-radius:0.95rem;background:#fff}.sw-product-story-release-panel>header,.sw-product-story-release-panel__readback>header{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem}.sw-product-story-release-panel>header>div{display:grid;gap:0.18rem}.sw-product-story-release-panel>header strong{color:#172033;font-size:0.92rem}.sw-product-story-release-panel>header p,.sw-product-story-release-panel__actions span,.sw-product-story-release-panel__readback p,.sw-product-story-release-panel__history p{margin:0;color:#64748b;font-size:0.68rem;line-height:1.5}.sw-product-story-release-panel__notice{padding:0.65rem 0.75rem;border-radius:0.72rem;background:#fff1f0;color:#b42318;font-size:0.72rem;font-weight:800}.sw-product-story-release-panel__status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.55rem}.sw-product-story-release-panel__status-grid article{display:grid;gap:0.18rem;min-width:0;padding:0.7rem;border:1px solid #e1e8f1;border-radius:0.75rem;background:#f8fafc}.sw-product-story-release-panel__status-grid small,.sw-product-story-release-panel__readback dt,.sw-product-story-release-panel__history small{color:#718096;font-size:0.59rem;font-weight:750}.sw-product-story-release-panel__status-grid strong{min-width:0;color:#172033;font-size:0.78rem;overflow-wrap:anywhere}.sw-product-story-release-panel__status-grid span{color:#64748b;font-size:0.62rem;line-height:1.42}.sw-product-story-release-panel__changes{display:grid;gap:0.2rem;padding:0.65rem 0.75rem;border-left:3px solid #2563eb;background:#eff6ff}.sw-product-story-release-panel__changes strong{color:#1e3a8a;font-size:0.68rem}.sw-product-story-release-panel__changes span{color:#355589;font-size:0.63rem;word-break:break-word}.sw-product-story-release-panel__actions{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}.sw-product-story-release-panel__actions .sw-products-action{flex:0 0 auto}.sw-product-story-release-panel .sw-products-action,.sw-product-story-release-panel .sw-product-story-generation__confirm>button{min-width:2.75rem;min-height:2.75rem}.sw-product-story-release-panel__readback{display:grid;gap:0.65rem;padding:0.75rem;border:1px solid #a7d9bf;border-radius:0.8rem;background:#f0fdf4}.sw-product-story-release-panel__readback>header span{display:inline-flex;align-items:center;gap:0.4rem;color:#166534}.sw-product-story-release-panel__readback dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.5rem;margin:0}.sw-product-story-release-panel__readback dl>div{display:grid;gap:0.12rem}.sw-product-story-release-panel__readback dd{min-width:0;margin:0;color:#173d2b;font-size:0.68rem;font-weight:800;overflow-wrap:anywhere}.sw-product-story-release-panel__readback a{display:inline-flex;align-items:center;gap:0.35rem;width:fit-content;color:#166534;font-size:0.7rem;font-weight:850}.sw-product-story-release-panel__history{display:grid;gap:0.45rem;padding:0.65rem}.sw-product-story-release-panel__history article{display:flex;align-items:center;justify-content:space-between;gap:0.7rem;padding:0.58rem 0.65rem;border:1px solid #e1e8f1;border-radius:0.68rem;background:#fff}.sw-product-story-release-panel__history article>span{display:grid;gap:0.1rem}.sw-product-story-release-panel__history-copy{min-width:0}.sw-product-story-release-panel__history article>.sw-products-action{flex:0 0 auto}.sw-product-story-release-panel__history article strong,.sw-product-story-release-panel__history article b{color:#27364a;font-size:0.68rem}.sw-product-story-release-panel__history code{color:#64748b;font-size:0.58rem}.sw-product-story-release-panel__rollback-readback{display:grid;gap:0.65rem;padding:0.72rem;border:1px solid #a7d9bf;border-radius:0.72rem;background:#f0fdf4}.sw-product-story-release-panel__rollback-readback>header{display:flex;align-items:center;justify-content:space-between;gap:0.65rem}.sw-product-story-release-panel__rollback-readback>header span,.sw-product-story-release-panel__rollback-readback a{display:inline-flex;align-items:center;gap:0.35rem;color:#166534}.sw-product-story-release-panel__rollback-readback dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.5rem;margin:0}.sw-product-story-release-panel__rollback-readback dl>div{display:grid;gap:0.12rem}.sw-product-story-release-panel__rollback-readback dd{min-width:0;margin:0;color:#173d2b;font-size:0.68rem;font-weight:800;overflow-wrap:anywhere}.sw-product-story-release-panel__rollback-readback a{width:fit-content;font-size:0.7rem;font-weight:850}.sw-product-story-release-panel__boundary{display:flex;align-items:flex-start;gap:0.45rem;color:#526174;font-size:0.63rem;line-height:1.45}.sw-product-story-release-panel__boundary svg{flex:0 0 auto;width:0.9rem;height:0.9rem;color:#2563eb}.sw-product-story-release-panel__continuation-failed{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.65rem 0.7rem;border:1px solid #f2c7a5;border-radius:0.72rem;background:#fff7ed}.sw-product-story-release-panel__continuation-failed p{color:#9a3412}.sw-product-story-history-drawer>summary:focus-visible{outline-offset:-4px}#product-story-merchant-inline-editor-heading:focus{outline:3px solid var(--sw-color-focus-indicator);outline-offset:3px}@media (max-width:820px){.sw-product-story-release-panel>header,.sw-product-story-release-panel__readback>header,.sw-product-story-release-panel__rollback-readback>header,.sw-product-story-release-panel__history article{align-items:stretch;flex-direction:column}.sw-product-story-release-panel__status-grid,.sw-product-story-release-panel__readback dl,.sw-product-story-release-panel__rollback-readback dl{grid-template-columns:1fr}}

/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-ai-execution.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.sw-product-story-generation{display:grid;gap:0.9rem;min-width:0}.sw-product-story-generation__confirm p{margin:0}.sw-product-story-generation__confirm{display:grid;gap:0.55rem;padding:0.75rem;border:1px solid #e8c77a;border-radius:0.76rem;background:#fff9e9}.sw-product-story-generation__confirm{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.sw-product-story-generation__confirm>div{display:grid;gap:0.18rem}.sw-product-story-generation__confirm p{color:#725622;font-size:0.68rem;line-height:1.45}.sw-product-story-generation__confirm>button{min-height:2.2rem;padding:0.4rem 0.65rem;border:1px solid #d9c17e;border-radius:0.62rem;background:#fff;color:#5f4d25;font:inherit;font-size:0.68rem;font-weight:850;cursor:pointer}.sw-product-story-generation__confirm>button[data-primary="true"]{border-color:#9b7425;background:#9b7425;color:#fff}.sw-ai-execution-return{display:grid;gap:0.65rem;padding:0.78rem;border:1px solid #dce4ef;border-radius:0.86rem;background:#fff}.sw-ai-execution-return__head{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem}.sw-ai-execution-return__head>div:first-child{display:grid;gap:0.12rem}.sw-ai-execution-return__head>div:first-child>span{color:#2563eb;font-size:0.56rem;font-weight:900;letter-spacing:0.08em}.sw-ai-execution-return__head h5,.sw-ai-execution-return__head p{margin:0}.sw-ai-execution-return__head h5{color:#172033;font-size:0.78rem}.sw-ai-execution-return__head p{max-width:40rem;color:#64748b;font-size:0.62rem;line-height:1.45}.sw-ai-execution-return__identity{display:flex;align-items:flex-start;gap:0.38rem;max-width:18rem;min-width:0;padding:0.42rem 0.5rem;border:1px solid #bfdbfe;border-radius:0.62rem;background:#eff6ff}.sw-ai-execution-return__identity>svg{width:0.9rem;height:0.9rem;flex:0 0 auto;color:#2563eb}.sw-ai-execution-return__identity>span{display:grid;min-width:0;gap:0.08rem}.sw-ai-execution-return__identity strong,.sw-ai-execution-return__identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-ai-execution-return__identity strong{color:#1e4d86;font-size:0.58rem}.sw-ai-execution-return__identity small{color:#4f6f96;font-size:0.54rem}.sw-ai-execution-return__actions{display:flex;gap:0.45rem;flex-wrap:wrap}.sw-ai-execution-return__actions button{display:inline-flex;align-items:center;gap:0.35rem;min-height:2.2rem;padding:0.4rem 0.65rem;border:1px solid #dce4ef;border-radius:0.65rem;background:#fff;color:#526174;font:inherit;font-size:0.68rem;font-weight:800;cursor:pointer}.sw-ai-execution-return__actions button:disabled,.sw-ai-execution-return__paste button:disabled{opacity:0.55;cursor:not-allowed}.sw-ai-execution-return__actions svg{width:0.9rem;height:0.9rem}.sw-ai-execution-return__paste{display:grid;gap:0.55rem;padding:0.7rem;border:1px solid #bfdbfe;border-radius:0.72rem;background:#eff6ff}.sw-ai-execution-return__paste label{display:grid;gap:0.35rem;color:#1e4d86;font-size:0.68rem;font-weight:800}.sw-ai-execution-return__paste textarea{min-height:14rem;resize:vertical;padding:0.7rem;border:1px solid #93c5fd;border-radius:0.65rem;background:#fff;color:#172033;font:0.68rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.sw-ai-execution-return__paste .sw-products-action{justify-self:start}.sw-ai-execution-return__boundary{display:flex;align-items:flex-start;gap:0.38rem;color:#526174;font-size:0.6rem;line-height:1.45}.sw-ai-execution-return__boundary svg{width:0.88rem;height:0.88rem;flex:0 0 auto;color:#2563eb}.sw-ai-execution-launcher{display:grid;gap:0.72rem;padding:0.82rem;border:1px solid #cbd8ea;border-radius:0.9rem;background:linear-gradient(145deg,#f8fbff,#ffffff)}.sw-ai-execution-launcher__head{display:flex;align-items:flex-start;justify-content:space-between;gap:0.8rem}.sw-ai-execution-launcher__head>div:first-child{display:grid;gap:0.12rem}.sw-ai-execution-launcher__head span{color:#2563eb;font-size:0.58rem;font-weight:900;letter-spacing:0.08em;text-transform:uppercase}.sw-ai-execution-launcher__head h5,.sw-ai-execution-launcher__head p{margin:0}.sw-ai-execution-launcher__head h5{color:#172033;font-size:0.84rem}.sw-ai-execution-launcher__head p{max-width:42rem;color:#64748b;font-size:0.65rem;line-height:1.48}.sw-ai-execution-launcher__safety{display:inline-flex;align-items:center;gap:0.35rem;max-width:20rem;padding:0.42rem 0.58rem;border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#166534;font-size:0.59rem;font-weight:750;line-height:1.35}.sw-ai-execution-launcher__safety svg{width:0.9rem;height:0.9rem;flex:0 0 auto}.sw-ai-execution-launcher__modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.55rem}.sw-ai-execution-launcher__mode{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:0.58rem;min-width:0;padding:0.7rem;border:1px solid #dce4ef;border-radius:0.78rem;background:#fff;color:#172033;text-align:left;cursor:pointer;transition:border-color 140ms ease,box-shadow 140ms ease,transform 140ms ease}.sw-ai-execution-launcher__mode:hover:not(:disabled),.sw-ai-execution-launcher__mode:focus-visible{border-color:#60a5fa;box-shadow:0 8px 22px rgb(37 99 235/0.12);transform:translateY(-1px)}.sw-ai-execution-launcher__mode:disabled{opacity:0.58;cursor:not-allowed}.sw-ai-execution-launcher__mode>svg{width:1.08rem;height:1.08rem;color:#2563eb}.sw-ai-execution-launcher__mode>span{display:grid;gap:0.18rem;min-width:0}.sw-ai-execution-launcher__mode strong{font-size:0.69rem}.sw-ai-execution-launcher__mode small{color:#64748b;font-size:0.59rem;line-height:1.42}.sw-ai-execution-launcher__confirm{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:0.55rem;padding:0.72rem;border:1px solid #f0c578;border-radius:0.78rem;background:#fff9e9}.sw-ai-execution-launcher__confirm>div{display:grid;gap:0.18rem}.sw-ai-execution-launcher__confirm strong,.sw-ai-execution-launcher__confirm p{margin:0}.sw-ai-execution-launcher__confirm strong{color:#7c2d12;font-size:0.7rem}.sw-ai-execution-launcher__confirm p{color:#92400e;font-size:0.61rem;line-height:1.45}.sw-ai-execution-launcher__confirm button{display:inline-flex;align-items:center;justify-content:center;gap:0.32rem;min-height:2rem;padding:0.42rem 0.62rem;border:1px solid #d9b35f;border-radius:0.58rem;background:#fff;color:#7c2d12;font:inherit;font-size:0.63rem;font-weight:850;cursor:pointer}.sw-ai-execution-launcher__confirm button[data-primary="true"]{border-color:#1d4ed8;background:#2563eb;color:#fff}.sw-ai-execution-launcher__confirm button svg{width:0.88rem;height:0.88rem}.sw-ai-execution-launcher__status{display:flex;align-items:flex-start;gap:0.38rem;margin:0;padding:0.55rem 0.62rem;border:1px solid #bbf7d0;border-radius:0.68rem;background:#f0fdf4;color:#166534;font-size:0.63rem;line-height:1.45}.sw-ai-execution-launcher__status svg{width:0.9rem;height:0.9rem;flex:0 0 auto}.sw-ai-execution-launcher__spin{animation:sw-product-story-generation-spin 0.9s linear infinite}@media (max-width:820px){.sw-ai-execution-return__head{flex-direction:column}.sw-ai-execution-return__identity{width:100%;max-width:none}.sw-ai-execution-return__actions{display:grid;grid-template-columns:1fr}.sw-ai-execution-return__actions button,.sw-ai-execution-return__paste .sw-products-action{justify-content:center;width:100%}.sw-ai-execution-launcher__head{flex-direction:column}.sw-ai-execution-launcher__safety{max-width:none;border-radius:0.68rem}.sw-ai-execution-launcher__modes{grid-template-columns:1fr}.sw-ai-execution-launcher__confirm{grid-template-columns:1fr 1fr}.sw-ai-execution-launcher__confirm>div{grid-column:1/-1}}@keyframes sw-product-story-generation-spin{to{transform:rotate(360deg)}}@media (max-width:820px){.sw-product-story-generation__confirm{grid-template-columns:1fr 1fr}.sw-product-story-generation__confirm>div{grid-column:1/-1}}

/*!******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-customers.css ***!
  \******************************************************************************************************************************************************************************************************************************************************************************/
/* Customer workspace composition. Control semantics remain in components/ui;
   these rules do not select product/specification or storefront elements. */
.sw-customers-directory,
.sw-customers-detail,
.sw-customers-views-sheet {
  --sw-primitive-radius-control: 6px;
  --sw-primitive-radius-panel: 8px;
  --sw-primitive-color-accent: #2563eb;
  --sw-primitive-color-accent-contrast: #fff;
  --sw-primitive-density-control-height: 42px;
  --sw-primitive-density-control-height-lg: 42px;
  --sw-admin-shell-radius: 8px;
  --sw-admin-shell-radius-sm: 6px;
  min-width: 0;
  color: var(--sw-admin-shell-ink, #17202a);
}

.sw-customers-directory,
.sw-customers-detail {
  display: grid;
  gap: 16px;
  container-name: customers;
  container-type: inline-size;
}

.sw-customers-page-heading,
.sw-customers-heading-actions,
.sw-customers-panel__head,
.sw-customers-pagination,
.sw-customers-order-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.sw-customers-page-heading { align-items: flex-start; flex-wrap: wrap; }
.sw-customers-page-heading > div:first-child { flex: 1 1 20rem; min-width: 0; }
.sw-customers-page-heading h1 { margin: 0; font-size: 24px; line-height: 1.35; letter-spacing: 0; }
.sw-customers-page-heading p { margin: 8px 0 0; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 14px; line-height: 1.65; }
.sw-customers-heading-actions { flex-wrap: wrap; justify-content: flex-end; }
.sw-customers-directory h2,
.sw-customers-directory h3,
.sw-customers-detail h2,
.sw-customers-detail h3,
.sw-customers-views-sheet h3 { margin: 0; line-height: 1.5; letter-spacing: 0; }
.sw-customers-directory h2,
.sw-customers-detail h2 { font-size: 20px; }
.sw-customers-directory h3,
.sw-customers-detail h3,
.sw-customers-views-sheet h3 { font-size: 16px; }

.sw-customers-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  border: 1px solid #d9dee5;
  border-radius: 8px;
  background: #fff;
}
.sw-customers-toolbar > select { flex: 1 1 10rem; max-width: 100%; min-width: 0; background: #f6f8fb; }
.sw-customers-search { display: grid; align-items: center; position: relative; flex: 2 1 16rem; min-width: 0; }
.sw-customers-search > svg { position: absolute; inset-inline-start: 12px; width: 16px; height: 16px; pointer-events: none; color: var(--sw-admin-shell-ink-soft, #5d6875); }
.sw-customers-search input { width: 100%; min-width: 0; padding-inline-start: 38px; background: #f6f8fb; }
.sw-customers-status-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; min-width: 0; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 13px; line-height: 1.5; }
.sw-customers-status-strip:empty { display: none; }
.sw-customers-status-strip .sw-primitive-badge { gap: 6px; }
.sw-customers-status-strip .sw-primitive-badge svg { width: 16px; height: 16px; flex: none; }
.sw-customers-status-strip strong { color: var(--sw-admin-shell-ink, #17202a); font-weight: 650; }

.sw-customers-panel,
.sw-customers-empty-state {
  min-width: 0;
  border: 1px solid #d9dee5;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.sw-customers-panel { display: grid; gap: 16px; padding: 16px; }
.sw-customers-results { padding: 0; gap: 0; }
.sw-customers-table { display: grid; min-width: 0; border-radius: 8px 8px 0 0; overflow: clip; }
.sw-customers-table__row {
  display: grid;
  grid-template-columns: minmax(120px, 1.15fr) minmax(136px, 1.3fr) minmax(90px, .85fr) minmax(120px, 1.1fr) minmax(100px, .9fr) 150px;
  align-items: center;
  min-height: 76px;
  border-bottom: 1px solid #e9edf2;
  background: #fff;
  font-size: 14px;
  line-height: 1.55;
}
.sw-customers-table__row--head { min-height: 44px; color: var(--sw-admin-shell-ink-soft, #5d6875); background: #f6f8fb; font-size: 12.8px; font-weight: 650; }
.sw-customers-table__row > span { display: block; min-width: 0; padding: 12px; overflow-wrap: anywhere; }
.sw-customers-table__row > span:last-child { text-align: end; }
.sw-customers-table strong,
.sw-customers-table small,
.sw-customers-saved-view strong,
.sw-customers-saved-view small,
.sw-customers-order-card__head strong,
.sw-customers-order-card__head small { display: block; }
.sw-customers-table strong { font-weight: 650; }
.sw-customers-table small { margin-top: 4px; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 12.8px; }
.sw-customers-table a { max-width: 100%; text-decoration: none; }
.sw-customers-cell-label { display: none; }
.sw-customers-pagination { padding: 12px 16px; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 13px; flex-wrap: wrap; }
.sw-customers-empty-state { display: flex; gap: 16px; align-items: flex-start; padding: 24px; }
.sw-customers-empty-state > svg { flex: none; width: 24px; height: 24px; color: var(--sw-primitive-color-warning); }
.sw-customers-empty-state p { margin: 8px 0 16px; color: var(--sw-admin-shell-ink-soft, #5d6875); line-height: 1.65; }
.sw-customers-muted { margin: 0; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 14px; line-height: 1.65; }
.sw-customers-eyebrow { margin: 0 0 4px; color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 12.8px; font-weight: 600; }

/* The view manager is portaled outside the shell's border-box scope. Keep its
   declared width and 100% controls inclusive of padding and borders. */
.sw-customers-views-sheet,
.sw-customers-views-sheet *,
.sw-customers-views-sheet *::before,
.sw-customers-views-sheet *::after { box-sizing: border-box; }

/* On-demand view manager uses the existing Radix Sheet, never a second rail. */
.sw-customers-views-sheet {
  --sw-primitive-density-sheet-width: 32.5rem;
  --sw-primitive-space-overlay-padding: 24px;
  --sw-primitive-space-overlay-gap: 24px;
  font-family: var(--sw-primitive-font-family-sans);
  background: #fff;
}
.sw-customers-views-sheet .sw-primitive-sheet__header { padding-inline-end: 40px; }
.sw-customers-views-sheet .sw-primitive-sheet__close { min-width: 44px; min-height: 44px; }
.sw-customers-views-sheet .sw-primitive-sheet__close:disabled { opacity: .45; cursor: not-allowed; }
.sw-customers-views-body { min-height: 0; flex: 1; overflow: auto; overscroll-behavior: contain; padding-block-end: env(safe-area-inset-bottom, 0); }
.sw-customers-view-editor { display: grid; gap: 16px; }
.sw-customers-views-body > .sw-customers-saved-list { padding-top: 24px; border-top: 1px solid #d9dee5; margin-top: 24px; }
.sw-customers-view-editor > p { margin: 0; line-height: 1.65; }
.sw-customers-view-editor > [role='alert'] { padding: 12px; border-inline-start: 3px solid var(--sw-primitive-color-warning); background: var(--sw-primitive-color-warning-surface); }
.sw-customers-field,
.sw-customers-criteria,
.sw-customers-saved-list,
.sw-customers-saved-actions { display: grid; gap: 8px; min-width: 0; }
.sw-customers-field > span,
.sw-customers-criteria > span { font-size: 13px; font-weight: 650; color: var(--sw-admin-shell-ink-soft, #5d6875); }
.sw-customers-field :is(input, textarea) { width: 100%; min-width: 0; border: 1px solid #d9dee5; border-radius: 6px; background: #f6f8fb; color: #17202a; font: inherit; padding: 10px 12px; }
.sw-customers-field textarea { min-height: 8rem; resize: vertical; }
.sw-customers-field :is(input, textarea):focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.sw-customers-criteria { padding: 12px; background: #f6f8fb; border-radius: 6px; }
.sw-customers-criteria p,
.sw-customers-saved-view small { margin: 0; line-height: 1.65; font-size: 13px; color: var(--sw-admin-shell-ink-soft, #5d6875); overflow-wrap: anywhere; }
.sw-customers-saved-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sw-customers-saved-view { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid #e9edf2; }
.sw-customers-saved-view strong { overflow-wrap: anywhere; font-size: 14px; font-weight: 650; }
.sw-customers-views-sheet .sw-customers-panel__head { flex-wrap: wrap; }

/* Detail keeps the existing service commands and order reader. */
.sw-customers-detail__layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr); align-items: start; gap: 16px; min-width: 0; }
.sw-customers-detail__main,
.sw-customers-detail__side,
.sw-customers-order-list,
.sw-customers-note-list { display: grid; gap: 16px; min-width: 0; }
.sw-customers-detail__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; }
.sw-customers-detail__facts--compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sw-customers-detail__facts div { min-width: 0; padding: 12px; border-radius: 6px; background: #f6f8fb; }
.sw-customers-detail__facts dt,
.sw-customers-detail__facts dd { margin: 0; overflow-wrap: anywhere; }
.sw-customers-detail__facts dt { color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 13px; font-weight: 600; }
.sw-customers-detail__facts dd { margin-top: 4px; font-size: 14px; line-height: 1.6; font-weight: 650; }
.sw-customers-order-card,
.sw-customers-note { padding: 12px; border: 1px solid #e9edf2; border-radius: 6px; }
.sw-customers-order-card__head { align-items: flex-start; flex-wrap: wrap; margin-bottom: 12px; }
.sw-customers-order-card__head small,
.sw-customers-note small,
.sw-customers-address { color: var(--sw-admin-shell-ink-soft, #5d6875); font-size: 13px; }
.sw-customers-address,
.sw-customers-note p { margin: 8px 0 0; line-height: 1.65; overflow-wrap: anywhere; white-space: pre-wrap; }
.sw-customers-form-state { display: flex; align-items: flex-start; gap: 8px; min-width: 0; margin: 0; font-size: 14px; line-height: 1.6; }
.sw-customers-form-state svg { width: 18px; height: 18px; flex: none; margin-top: 2px; }
.sw-customers-form-state--success { color: var(--sw-primitive-color-success); }
.sw-customers-form-state--danger { color: var(--sw-primitive-color-danger); }
.sw-customers-form-state--neutral { color: var(--sw-admin-shell-ink-soft, #5d6875); }
.sw-customers-badge { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 999px; border: 1px solid #d9dee5; font-size: 12.8px; white-space: nowrap; }
.sw-customers-badge--neutral { background: #f6f8fb; color: #5d6875; }
.sw-customers-badge--warning { background: var(--sw-primitive-color-warning-surface); color: var(--sw-primitive-color-warning); }
.sw-customers-badge--success { background: var(--sw-primitive-color-success-surface); color: var(--sw-primitive-color-success); }
.sw-customers-badge--danger { background: var(--sw-primitive-color-danger-surface); color: var(--sw-primitive-color-danger); }
.sw-customers-action { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 0 12px; border-radius: 6px; border: 1px solid #d9dee5; font-size: 14px; font-weight: 650; cursor: pointer; text-decoration: none; }
.sw-customers-action svg { width: 16px; height: 16px; flex: none; }
.sw-customers-action--primary { border-color: #2563eb; background: #2563eb; color: white; }
.sw-customers-action--secondary { background: white; color: #17202a; }
.sw-customers-action:disabled { cursor: not-allowed; opacity: .58; }
.sw-customers-action:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }

.sw-customers-skeleton,
.sw-customers-skeleton-row span { border-radius: 6px; background: #f0f2f6; }
.sw-customers-skeleton--title { width: min(100%, 16rem); height: 32px; }
.sw-customers-skeleton-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; min-height: 56px; }
.sw-customers-skeleton-row span { min-height: 40px; }
.sw-customers-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

@container customers (max-width: 760px) {
  .sw-customers-page-heading > div:first-child { flex-basis: 100%; }
  .sw-customers-heading-actions { justify-content: flex-start; }
  .sw-customers-table { gap: 12px; overflow: visible; }
  .sw-customers-results { padding: 12px; }
  .sw-customers-table__row { grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid #d9dee5; border-radius: 6px; }
  .sw-customers-table__row--head { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); padding: 0; border: 0; min-height: 0; }
  .sw-customers-table__row > span { border-bottom: 1px solid #e9edf2; align-self: stretch; }
  .sw-customers-table__row > span:nth-child(1),
  .sw-customers-table__row > span:nth-child(2),
  .sw-customers-table__row > span:nth-child(5),
  .sw-customers-table__row > span:last-child { grid-column: 1 / -1; }
  .sw-customers-table__row > span:last-child { text-align: start; border-bottom: 0; }
  .sw-customers-table__row > span:last-child a { width: 100%; min-height: 44px; }
  .sw-customers-table__row:not(.sw-customers-table__row--head) > span > .sw-customers-cell-label { display: block; margin-bottom: 4px; font-size: 12px; font-weight: 600; color: #5d6875; }
  .sw-customers-detail__layout,
  .sw-customers-detail__facts--compact { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .sw-customers-directory,
  .sw-customers-detail,
  .sw-customers-views-sheet { --sw-primitive-density-control-height: 44px; --sw-primitive-density-control-height-lg: 44px; }
  .sw-customers-toolbar { padding: 12px; }
  .sw-customers-search { flex-basis: 100%; }
  .sw-customers-heading-actions { width: 100%; }
  .sw-customers-heading-actions > * { flex: 1 1 auto; }
  .sw-customers-detail__facts,
  .sw-customers-saved-actions { grid-template-columns: minmax(0, 1fr); }
  .sw-customers-views-sheet { --sw-primitive-space-overlay-padding: 16px; }
  .sw-customers-pagination { justify-content: center; padding: 12px 0 0; }
  .sw-customers-pagination > span { flex-basis: 100%; text-align: center; order: -1; }
  .sw-customers-action { min-height: 44px; }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-settings.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
/* The existing shell owns page insets. Settings owns only its content stack;
   retired readiness panels and duplicate legacy editors have no consumers. */
.sw-settings-policy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--sw-primitive-space-grid-gap);
}

@media (max-width: 52em) {
  .sw-admin-shell.sw-surface-page:has(.sw-settings-policy),
  .sw-admin-shell.sw-surface-page[data-drawer-open="true"]:has(.sw-settings-policy) {
    grid-template-columns: 1fr;
    max-width: 100vw;
  }

  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__rail,
  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__context {
    display: none;
  }

  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__workspace,
  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__header,
  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__layout,
  .sw-admin-shell:has(.sw-settings-policy) .sw-admin-shell__main {
    max-width: 100vw;
    overflow-x: clip;
  }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-platform.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
.sw-platform-control { display: grid; gap: 16px; min-width: 0; color: var(--sw-primitive-color-text); font-size: var(--sw-primitive-type-body-size, 13px); line-height: 1.6; }
.sw-platform-header { display: grid; gap: 8px; }
.sw-platform-header h1 { margin: 0; font-size: var(--sw-primitive-type-page-title-size, 22px); line-height: 1.4; }
.sw-platform-header > p { max-width: 90ch; margin: 0; color: var(--sw-primitive-color-muted); }
.sw-platform-section { padding: var(--sw-primitive-space-panel-padding, 16px); box-shadow: none; min-width: 0; }
.sw-platform-section > section { display: grid; gap: 16px; min-width: 0; }
.sw-platform-section__header { display: grid; gap: 4px; }
.sw-platform-section h2 { margin: 0; font-size: var(--sw-primitive-type-section-title-size, 15px); line-height: 1.5; }
.sw-platform-section h3, .sw-platform-section h4 { margin: 0; font-size: var(--sw-primitive-type-body-size, 13px); line-height: 1.6; }
.sw-platform-section p { margin: 0; }
.sw-platform-section__header p, .sw-platform-muted { color: var(--sw-primitive-color-muted); }
.sw-platform-facts { margin: 0; display: grid; min-width: 0; }
.sw-platform-facts > div { display: grid; grid-template-columns: minmax(130px, 0.5fr) minmax(0, 1.5fr); gap: 12px; padding: 12px 0; border-bottom: var(--sw-primitive-border-subtle); }
.sw-platform-facts > div:last-child { border-bottom: 0; }
.sw-platform-facts dt { color: var(--sw-primitive-color-muted); }
.sw-platform-facts dd { margin: 0; overflow-wrap: anywhere; min-width: 0; }
.sw-platform-fact-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding-top: 16px; border-top: var(--sw-primitive-border-subtle); }
.sw-platform-fact-columns > section { display: grid; gap: 8px; align-content: start; min-width: 0; }
.sw-platform-usage { display: grid; gap: 12px; border-top: var(--sw-primitive-border-subtle); padding-top: 16px; }
.sw-platform-usage > div { padding: 12px; border: var(--sw-primitive-border-subtle); border-radius: var(--sw-primitive-radius-panel); }
.sw-platform-action-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sw-platform-records { display: grid; gap: 16px; min-width: 0; }
.sw-platform-records article { display: flex; justify-content: space-between; align-items: center; gap: 16px; border-top: var(--sw-primitive-border-subtle); padding-top: 16px; min-width: 0; }
.sw-platform-records article > div { display: grid; gap: 8px; min-width: 0; overflow-wrap: anywhere; }
.sw-platform-records .sw-primitive-badge { justify-self: start; }
.sw-platform-override-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; min-width: 0; }
.sw-platform-override-form .sw-platform-action-row { grid-column: 1 / -1; }
.sw-platform-feedback { display: grid; justify-items: start; gap: 8px; border: var(--sw-primitive-border-default); border-radius: var(--sw-primitive-radius-panel); padding: 12px 16px; background: var(--sw-primitive-color-panel); }
.sw-platform-feedback[role='alert'] { border-color: var(--sw-primitive-color-warning); }
.sw-platform-feedback p { margin: 0; }
.sw-platform-control .sw-primitive-button { max-width: 100%; white-space: normal; }
@media (max-width: 640px) {
  .sw-platform-facts > div, .sw-platform-fact-columns, .sw-platform-override-form { grid-template-columns: minmax(0, 1fr); }
  .sw-platform-facts > div { gap: 4px; }
  .sw-platform-records article { flex-direction: column; align-items: stretch; }
  .sw-platform-control :is(.sw-primitive-button,[role='combobox'],input) { min-height: 44px; }
}

/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-storefront.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
/* Product editor overlays do not own storefront content layout. */
.sw-product-template-canvas.sw-composition-preview,
.sw-product-template-canvas.sw-composition-preview > .sw-visual-shell__surface { overflow: visible; }
.sw-product-template-canvas.sw-composition-preview { width: 100%; isolation: isolate; }
/* Storefront announcements stay inside their preview layer, below the editor. */
.sw-product-template-canvas.sw-composition-preview > .sw-visual-shell__surface { isolation: isolate; }
.sw-product-template-canvas.sw-composition-preview[data-preview-mode="mobile"] { width: min(390px, 100%); max-width: none; padding: 0; }
.sw-product-template-canvas[data-preview-mode="mobile"] > .sw-visual-shell__surface { border: 0; border-radius: 0; }
.sw-product-template-canvas [data-product-inspector-host] { position: relative; z-index: var(--sw-primitive-layer-overlay); }
.sw-product-template-canvas .sw-composition-preview__section-frame[data-editing="true"] { z-index: auto; min-height: 0; padding: 0; }
.sw-product-template-canvas [data-editor-section] { scroll-margin-block: 8rem 6rem; }
.sw-product-template-canvas [data-editor-section]:focus-visible { outline: 2px solid var(--sw-color-focus-indicator); outline-offset: -2px; }
.sw-product-template-canvas .sw-composition-preview__section--editing {
  position: fixed; z-index: var(--sw-primitive-layer-overlay); right: var(--sw-primitive-space-page-inset); bottom: var(--sw-primitive-space-page-inset);
  width: min(460px, calc(100vw - 2 * var(--sw-primitive-space-page-inset))); max-height: 72dvh; min-height: 0; height: auto;
  overflow-y: auto; overscroll-behavior: contain; box-sizing: border-box; padding: var(--sw-primitive-space-panel-padding);
  border: 1px solid var(--sw-primitive-color-border); border-radius: var(--sw-primitive-radius-panel); background: var(--sw-primitive-color-panel); box-shadow: 0 10px 36px rgb(0 0 0 / .18);
}
.sw-product-template-canvas .sw-template-builder-section-editor__head > button { flex-shrink: 0; min-width: 88px; min-height: 44px; white-space: nowrap; }
.sw-product-template-canvas .sw-product-service-notice { margin: 0; padding: 1rem; font-size: 1rem; line-height: 1.6; color: var(--sw-primitive-color-text); background: var(--sw-primitive-color-panel); }
/* Service setup previews live in the real product detail column, not the
   window-wide legacy canvas. Let their tracks shrink without clipping either
   their guidance or the editor controls; saved stacked/spacing variants remain. */
.sw-product-template-canvas .sw-composition-preview__section-frame { grid-template-columns: minmax(0, 1fr); }
.sw-product-template-canvas .sw-precision-product-page__utility {
  min-width: 0; max-width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
  column-gap: 1rem; padding-inline: 1rem;
}
@media (max-width: 780px) {
  .sw-product-template-canvas .sw-composition-preview__section--editing { right: 0; left: 0; bottom: var(--sw-admin-mobile-chrome-height, 4rem); width: 100%; border-radius: var(--sw-primitive-radius-panel) var(--sw-primitive-radius-panel) 0 0; padding-bottom: var(--sw-primitive-space-panel-padding); }
  .sw-product-template-canvas .sw-composition-preview__section--editing .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field { grid-template-columns: minmax(0, 1fr); }
  .sw-product-template-canvas .sw-composition-preview__section--editing .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > :is(label, input, select, textarea) { grid-column: 1; }
  .sw-product-template-canvas .sw-composition-preview__section--editing .sw-template-builder-inspector :is(button, input:not([type="checkbox"]), select, textarea),
  .sw-product-template-canvas .sw-composition-preview__section--editing .sw-template-builder-inspector__toggle { min-height: 44px; font-size: 1rem; }
}

.sw-visual-shell {
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.25rem;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.sw-visual-shell[data-preview-mode="mobile"] {
  max-width: 30rem;
  margin-inline: auto;
}

.sw-visual-shell__surface {
  display: grid;
  gap: 0;
  margin-top: 1rem;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 1.1rem;
  background: #faf8f4;
}

.sw-visual-shell-announcement {
  padding: 0.55rem 1rem;
  background: #111827;
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-visual-shell-header,
.sw-visual-shell-footer,
.sw-visual-shell-layout,
.sw-visual-shell-main,
.sw-visual-shell-section,
.sw-visual-shell-hero,
.sw-visual-shell-product-grid,
.sw-visual-shell-category-grid,
.sw-visual-shell-product-detail,
.sw-module-detail-editor {
  display: grid;
  gap: 1rem;
}

.sw-visual-shell-header {
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  padding: 1rem 1.25rem;
  background: #ffffff;
  border-bottom: 1px solid #e5e7eb;
}

.sw-visual-shell-header nav,
.sw-visual-shell-header div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  color: #334155;
  font-size: 0.78rem;
  font-weight: 900;
}

.sw-visual-shell-layout {
  grid-template-columns: 9rem minmax(0, 1fr);
  align-items: start;
}

.sw-visual-shell-leftnav {
  display: grid;
  gap: 0.65rem;
  padding: 1rem;
  background: #f3f4f6;
  min-height: 100%;
}

.sw-visual-shell-leftnav p {
  margin: 0;
  color: #111827;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-visual-shell-leftnav span {
  color: #475569;
  font-size: 0.78rem;
  font-weight: 850;
}

.sw-visual-shell-main {
  padding: 1.25rem;
  background: #faf8f4;
}

.sw-visual-shell-hero {
  grid-template-columns: minmax(0, 0.9fr) minmax(18rem, 1.1fr);
  align-items: stretch;
  padding: 1.2rem;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 1.1rem;
}

.sw-visual-shell-hero h2,
.sw-visual-shell-product-detail h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(1.75rem, 4vw, 3.2rem);
  font-weight: 950;
  letter-spacing: -0.06em;
  line-height: 0.98;
}

.sw-visual-shell-hero p,
.sw-visual-shell-section p,
.sw-visual-shell-product-detail p {
  margin: 0;
  color: #64748b;
  font-size: 0.75rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-visual-shell-hero span,
.sw-visual-shell-section span,
.sw-visual-shell-product-detail span {
  color: #475569;
  line-height: 1.55;
}

.sw-visual-shell-hero button,
.sw-visual-shell-product-grid button,
.sw-visual-shell-purchase-card button {
  width: fit-content;
  padding: 0.65rem 0.95rem;
  border: 1px solid #111827;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-weight: 950;
}

.sw-visual-shell-hero__media,
.sw-visual-shell-product-detail__gallery,
.sw-visual-shell-product-grid i {
  display: grid;
  min-height: 15rem;
  place-items: center;
  border-radius: 1rem;
  background: linear-gradient(135deg, #d7d0c5, #f8f3e9);
  color: #334155;
  font-weight: 950;
}

.sw-visual-shell-section,
.sw-visual-shell-product-detail,
.sw-visual-shell-purchase-card {
  padding: 1rem;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  background: #ffffff;
}

.sw-visual-shell-category-grid,
.sw-visual-shell-product-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sw-visual-shell-category-grid span {
  min-height: 6rem;
  display: grid;
  place-items: end start;
  padding: 0.85rem;
  border-radius: 0.9rem;
  background: #eee7dc;
  color: #111827;
  font-weight: 950;
}

.sw-visual-shell-product-grid article {
  display: grid;
  gap: 0.55rem;
}

.sw-visual-shell-product-grid i {
  min-height: 9rem;
  font-style: normal;
}

.sw-visual-shell-product-grid b,
.sw-visual-shell-footer b {
  color: #111827;
  font-weight: 950;
}

.sw-visual-shell-product-grid em {
  color: #64748b;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
}

.sw-visual-shell-product-detail {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
}

.sw-visual-shell-purchase-card {
  align-content: start;
}

.sw-visual-shell-footer {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 1.25rem;
  border-top: 1px solid #e5e7eb;
  background: #111827;
  color: #ffffff;
}

.sw-visual-shell-footer section {
  display: grid;
  gap: 0.45rem;
}

.sw-visual-shell-footer span {
  color: #cbd5e1;
  font-size: 0.78rem;
}

.sw-module-detail-editor {
  padding: 0.85rem;
  border: 1px solid #dbeafe;
  border-radius: 1rem;
  background: #f8fbff;
}

.sw-module-detail-editor label {
  display: grid;
  gap: 0.35rem;
}

.sw-module-detail-editor input,
.sw-module-detail-editor textarea {
  border: 1px solid #cbd5e1;
  border-radius: 0.75rem;
  padding: 0.6rem 0.75rem;
  background: #ffffff;
  color: #0f172a;
}

.sw-template-builder-layout--advanced {
  grid-template-columns: 17rem minmax(36rem, 1fr) 25rem;
}

.sw-template-builder-region,
.sw-template-advanced-editor-card,
.sw-template-advanced-schema,
.sw-template-advanced-commerce-slots {
  display: grid;
  gap: 0.65rem;
  padding: 0.8rem;
  border: 1px solid #dbeafe;
  border-radius: 0.95rem;
  background: #f8fbff;
}

.sw-template-builder-region strong,
.sw-template-advanced-schema strong,
.sw-template-advanced-editor-card h3 {
  color: #0f172a;
  font-weight: 950;
}

.sw-template-builder-region small,
.sw-template-advanced-schema span,
.sw-template-advanced-editor-card small {
  color: #64748b;
  font-size: 0.74rem;
}

.sw-template-advanced-canvas {
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.2rem;
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.sw-template-advanced-canvas[data-preview-mode="mobile"] {
  max-width: 28rem;
  margin-inline: auto;
}

.sw-template-advanced-canvas__page {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 1.15rem;
  background: linear-gradient(180deg, #f8fbff, #f8fafc);
}

.sw-template-advanced-canvas__nav,
.sw-template-advanced-hero,
.sw-template-advanced-product-layout,
.sw-template-advanced-region-map,
.sw-template-advanced-product-gallery,
.sw-template-advanced-commerce-slots,
.sw-template-advanced-slide-tabs {
  display: grid;
  gap: 0.85rem;
}

.sw-template-advanced-canvas__nav {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-advanced-canvas__nav nav {
  display: flex;
  gap: 0.8rem;
  color: #475569;
  font-size: 0.78rem;
  font-weight: 900;
}

.sw-template-advanced-hero {
  grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.9fr);
  align-items: stretch;
  padding: 1rem;
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

.sw-template-advanced-hero h3,
.sw-template-advanced-product-layout__main h3 {
  margin: 0.4rem 0;
  color: #0f172a;
  font-size: 1.55rem;
  font-weight: 950;
  letter-spacing: -0.04em;
}

.sw-template-advanced-hero button,
.sw-template-advanced-purchase-panel button,
.sw-template-advanced-editor-card button {
  width: fit-content;
  padding: 0.55rem 0.85rem;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #ffffff;
  color: #0f172a;
  font-weight: 900;
}

.sw-template-advanced-hero button {
  border: 0;
  background: #0f172a;
  color: #ffffff;
}

.sw-template-advanced-hero__image,
.sw-template-advanced-media-frame {
  display: grid;
  min-height: 14rem;
  place-items: center;
  border-radius: 1rem;
  background: linear-gradient(135deg, #cbd5e1, #eff6ff);
  color: #475569;
  font-weight: 900;
  overflow: hidden;
}

.sw-template-advanced-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-template-advanced-product-layout {
  grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
}

.sw-template-advanced-product-layout__main,
.sw-template-advanced-purchase-panel,
.sw-template-advanced-region-map article {
  padding: 1rem;
  border-radius: 1.05rem;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

.sw-template-advanced-product-gallery {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-template-advanced-product-gallery span,
.sw-template-advanced-purchase-panel span,
.sw-template-advanced-commerce-slots span {
  padding: 0.7rem;
  border-radius: 0.8rem;
  background: #eef6ff;
  color: #1e3a8a;
  font-weight: 900;
}

.sw-template-advanced-purchase-panel {
  align-content: start;
}

.sw-template-advanced-purchase-panel label,
.sw-template-advanced-editor-card label {
  display: grid;
  gap: 0.35rem;
}

.sw-template-advanced-purchase-panel select,
.sw-template-advanced-editor-card input,
.sw-template-advanced-editor-card textarea,
.sw-template-advanced-editor-card select {
  width: 100%;
  border: 1px solid #cbd5e1;
  border-radius: 0.75rem;
  padding: 0.62rem 0.75rem;
  background: #ffffff;
  color: #0f172a;
}

.sw-template-advanced-region-map {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-template-advanced-region-map article[data-grid="left-2"] {
  grid-column: span 2;
}

.sw-template-advanced-region-map article[data-grid="full"] {
  grid-column: 1 / -1;
}

.sw-template-advanced-canvas [data-active="true"] {
  outline: 2px solid #2563eb;
  outline-offset: 3px;
}

.sw-template-advanced-slide-tabs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1180px) {
  .sw-template-builder-layout--advanced,
  .sw-template-advanced-hero,
  .sw-template-advanced-product-layout,
  .sw-template-advanced-region-map {
    grid-template-columns: 1fr;
  }
}

.sw-template-system,
.sw-template-builder {
  display: grid;
  gap: 1rem;
}

.sw-template-system-hero,
.sw-template-system-editor-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.35rem;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
}

.sw-template-system-hero h2,
.sw-template-system-editor-head h2 {
  margin: 0;
  color: #0f172a;
  font-size: 1.5rem;
  font-weight: 950;
  letter-spacing: -0.04em;
}

.sw-template-system-hero p,
.sw-template-system-editor-head span,
.sw-template-system-panel p,
.sw-template-builder-inspector p {
  color: #64748b;
  font-size: 0.86rem;
  line-height: 1.55;
}

.sw-template-system-hero__summary,
.sw-template-system-toolbar,
.sw-template-system-section-head,
.sw-template-system-layout,
.sw-template-system-detail-layout,
.sw-template-builder-layout,
.sw-template-system-framework-grid {
  display: grid;
  gap: 1rem;
}

.sw-template-system-hero__summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 26rem;
}

.sw-template-system-hero__summary span,
.sw-template-system-panel,
.sw-template-builder-rail,
.sw-template-builder-inspector,
.sw-template-system-canvas,
.sw-template-system-module-library {
  border: 1px solid #dfe8f5;
  border-radius: 1.15rem;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.sw-template-system-hero__summary span {
  display: grid;
  gap: 0.2rem;
  padding: 0.8rem;
  color: #111827;
  font-weight: 950;
}

.sw-template-system-hero__summary b,
.sw-template-system-toolbar span {
  color: #64748b;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-template-system-toolbar {
  grid-template-columns: minmax(0, 1fr) 14rem;
  align-items: end;
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.1rem;
  background: #ffffff;
}

.sw-template-system-toolbar label {
  display: grid;
  gap: 0.4rem;
}

.sw-template-system-toolbar .sw-input {
  width: 100%;
  min-height: var(--sw-density-toolbar, var(--sw-primitive-density-toolbar-height));
  padding: 0 var(--sw-primitive-space-control-padding);
  border: var(--sw-border-default, var(--sw-primitive-border-default));
  border-radius: var(--sw-radius-control, var(--sw-primitive-radius-control));
  background: var(--sw-color-surface, var(--sw-primitive-color-panel));
  color: var(--sw-color-text-primary, var(--sw-primitive-color-text));
  font: inherit;
  font-size: var(--sw-type-body, var(--sw-primitive-type-control-size));
  font-weight: 800;
  outline: none;
  box-shadow: var(--sw-shadow-panel, var(--sw-primitive-shadow-raised));
}

.sw-template-system-toolbar .sw-input:focus {
  border: var(--sw-border-interactive, var(--sw-primitive-border-interactive));
  box-shadow: var(--sw-shadow-focus, var(--sw-primitive-shadow-focus));
}

.sw-template-system-layout {
  grid-template-columns: minmax(0, 1fr) 22rem;
  align-items: start;
}

.sw-template-system-detail-layout {
  grid-template-columns: 22rem minmax(0, 1fr);
  align-items: start;
}

.sw-template-system-panel,
.sw-template-builder-rail,
.sw-template-builder-inspector,
.sw-template-system-canvas,
.sw-template-system-module-library {
  padding: 1rem;
}

.sw-template-system-section-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-system-section-head h3,
.sw-template-system-panel h3,
.sw-template-builder-rail h3,
.sw-template-builder-inspector h3 {
  margin: 0;
  color: #0f172a;
  font-size: 1rem;
  font-weight: 950;
}

.sw-template-system-framework-grid,
.sw-template-system-module-list,
.sw-template-system-canvas__header,
.sw-template-system-canvas__sections {
  display: grid;
  gap: 0.85rem;
}

.sw-template-system-framework-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-products-catalog__workspace {
  grid-template-columns:
    minmax(0, 1fr)
    minmax(calc(var(--sw-density-row-compact, var(--sw-primitive-density-row-height)) * 8), 0.42fr);
}

.sw-products-catalog__rows {
  grid-template-columns: minmax(0, 1fr);
}

.sw-products-catalog__row {
  grid-template-columns:
    minmax(calc(var(--sw-density-row-compact, var(--sw-primitive-density-row-height)) * 3), 0.28fr)
    minmax(0, 1fr);
  align-items: stretch;
}

.sw-products-catalog__row[data-active="true"] {
  box-shadow:
    inset calc(var(--sw-border-width, var(--sw-primitive-density-separator-height)) * 3) 0 0 var(--sw-color-action-primary, var(--sw-primitive-color-accent)),
    var(--sw-shadow-panel, var(--sw-primitive-shadow-panel));
}

.sw-products-catalog__row-facts,
.sw-products-catalog__badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-space-1, var(--sw-primitive-space-stack-sm));
  align-items: center;
}

.sw-products-catalog__row-facts span {
  min-width: 0;
  display: inline-grid;
  gap: calc(var(--sw-space-1, var(--sw-primitive-space-stack-sm)) * 0.4);
  padding: var(--sw-space-1, var(--sw-primitive-space-stack-sm)) var(--sw-primitive-space-badge-padding);
  border: var(--sw-border-subtle, var(--sw-primitive-border-subtle));
  border-radius: var(--sw-radius-control, var(--sw-primitive-radius-control));
  background: var(--sw-color-surface-muted, var(--sw-primitive-color-panel-muted));
  color: var(--sw-color-text-primary, var(--sw-primitive-color-text));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  font-weight: 900;
}

.sw-products-catalog__row-facts b {
  color: var(--sw-color-text-secondary, var(--sw-primitive-color-muted));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-products-catalog__coverage,
.sw-products-catalog__readiness,
.sw-products-catalog__posture,
.sw-products-catalog__inspector {
  min-width: 0;
}

.sw-products-catalog__coverage-table,
.sw-products-catalog__module-list {
  display: grid;
  gap: var(--sw-space-2, var(--sw-primitive-space-stack-md));
}

.sw-products-catalog__coverage-row,
.sw-products-catalog__module-row {
  min-width: 0;
  display: grid;
  gap: var(--sw-space-2, var(--sw-primitive-space-stack-md));
  align-items: center;
  padding: var(--sw-space-row-padding, var(--sw-primitive-space-row-padding));
  border: var(--sw-border-subtle, var(--sw-primitive-border-subtle));
  border-radius: var(--sw-radius-panel, var(--sw-primitive-radius-panel));
  background: var(--sw-color-surface, var(--sw-primitive-color-panel));
  color: var(--sw-color-text-primary, var(--sw-primitive-color-text));
  text-decoration: none;
}

.sw-products-catalog__coverage-row {
  grid-template-columns:
    minmax(0, 1.3fr)
    repeat(4, minmax(calc(var(--sw-density-row-compact, var(--sw-primitive-density-row-height)) * 2), 0.38fr))
    auto;
}

.sw-products-catalog__module-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.sw-products-catalog__coverage-row:hover {
  border: var(--sw-border-interactive, var(--sw-primitive-border-interactive));
  background: var(--sw-color-surface-muted, var(--sw-primitive-color-panel-muted));
}

.sw-products-catalog__coverage-row span,
.sw-products-catalog__module-row span {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-space-1, var(--sw-primitive-space-stack-sm)) * 0.5);
}

.sw-products-catalog__coverage-row strong,
.sw-products-catalog__module-row strong {
  color: var(--sw-color-text-primary, var(--sw-primitive-color-text));
  font-weight: 950;
}

.sw-products-catalog__coverage-row small,
.sw-products-catalog__module-row small {
  color: var(--sw-color-text-secondary, var(--sw-primitive-color-muted));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  line-height: 1.45;
}

.sw-products-catalog__coverage-row b {
  color: var(--sw-color-text-secondary, var(--sw-primitive-color-muted));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-products-catalog__secondary {
  grid-template-columns:
    minmax(0, 1fr)
    minmax(calc(var(--sw-density-row-compact, var(--sw-primitive-density-row-height)) * 8), 0.42fr);
}

.sw-products-catalog__owner-panel,
.sw-products-catalog__readback-state {
  min-width: 0;
}

.sw-products-catalog__state-rows {
  align-content: start;
}

.sw-products-catalog__management-rows,
.sw-products-catalog__management-main,
.sw-products-catalog__management-actions {
  display: grid;
  gap: var(--sw-space-1, var(--sw-primitive-space-stack-sm));
}

.sw-products-catalog__management-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-space-2, var(--sw-primitive-space-stack-md));
  padding: var(--sw-space-row-padding, var(--sw-primitive-space-row-padding));
  border: var(--sw-border-subtle, var(--sw-primitive-border-subtle));
  border-radius: var(--sw-radius-panel, var(--sw-primitive-radius-panel));
  background: var(--sw-color-surface, var(--sw-primitive-color-panel));
}

.sw-products-catalog__management-main {
  min-width: 0;
}

.sw-products-catalog__management-main strong {
  color: var(--sw-color-text-primary, var(--sw-primitive-color-text));
  font-weight: 950;
}

.sw-products-catalog__management-main small,
.sw-products-catalog__action-message {
  color: var(--sw-color-text-secondary, var(--sw-primitive-color-muted));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  line-height: 1.45;
}

.sw-products-catalog__action-message[role="alert"] {
  color: var(--sw-color-danger, var(--sw-primitive-color-danger));
}

.sw-products-catalog__management-actions {
  justify-items: end;
}

.sw-products-catalog__management-actions .sw-storefront-action {
  min-width: max-content;
}

.sw-products-catalog__management-actions .sw-storefront-action:disabled {
  cursor: not-allowed;
  color: var(--sw-primitive-color-disabled);
}

.sw-products-catalog__disabled-action {
  display: inline-flex;
  align-items: center;
  min-height: var(--sw-density-control, var(--sw-primitive-density-control-height));
  padding-inline: var(--sw-primitive-space-control-padding);
  border: var(--sw-border-subtle, var(--sw-primitive-border-subtle));
  border-radius: var(--sw-radius-control, var(--sw-primitive-radius-control));
  background: var(--sw-color-surface-muted, var(--sw-primitive-color-panel-muted));
  color: var(--sw-color-text-secondary, var(--sw-primitive-color-muted));
  font-size: var(--sw-type-caption, var(--sw-primitive-type-caption-size));
  font-weight: 900;
}

.sw-products-catalog__retry {
  justify-self: start;
}

.sw-template-system-module-card {
  display: grid;
  gap: 0.7rem;
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #ffffff;
  color: #111827;
  text-align: left;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}

.sw-template-system-module-card div {
  display: grid;
  gap: 0.4rem;
}

.sw-template-system-module-card strong {
  color: #111827;
  font-weight: 950;
}

.sw-template-system-module-card p,
.sw-template-system-module-card__meta span {
  color: #64748b;
  font-size: 0.76rem;
  line-height: 1.45;
}

.sw-template-builder-layout {
  grid-template-columns: 16rem minmax(0, 1fr) 22rem;
  align-items: start;
}

.sw-template-builder-rail,
.sw-template-builder-inspector {
  display: grid;
  gap: 0.75rem;
}

.sw-template-builder-rail button,
.sw-template-builder-library-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.85rem;
  background: #ffffff;
  color: #111827;
  text-align: left;
}

.sw-template-builder-rail button[data-active="true"] {
  border-color: #bfdbfe;
  background: #eff6ff;
}

.sw-template-builder-region--shell {
  padding: 0.65rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #f8fafc;
}

.sw-template-builder-region--shell button {
  border-style: dashed;
}

.sw-template-builder-region--shell button[data-active="true"] {
  border-style: solid;
  background: #ecfeff;
  border-color: #67e8f9;
}

.sw-template-builder-rail button:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-template-builder-library-item {
  cursor: default;
}

.sw-template-builder-library-item[aria-disabled="true"] {
  opacity: 0.72;
}

.sw-template-builder-layout--preview-workspace {
  grid-template-columns: 17rem minmax(0, 1fr);
}

.sw-template-builder-preview-workspace,
.sw-template-builder-section-editor,
.sw-template-builder-add-section-picker {
  min-width: 0;
  display: grid;
  gap: 1rem;
}

.sw-template-builder-preview-workspace[data-mode="inline-settings"] {
  align-items: start;
}

.sw-template-builder-section-editor__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem;
  border: 1px solid #dbeafe;
  border-radius: 0.95rem;
  background: #f8fbff;
}

.sw-template-builder-section-editor__head h3 {
  margin: 0;
  color: #0f172a;
  font-size: 1.05rem;
  font-weight: 950;
}

.sw-template-builder-section-editor__head span,
.sw-template-builder-rail > div > span {
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
}

.sw-template-builder-section-editor .sw-template-builder-inspector {
  border: 0;
  box-shadow: none;
  padding: 0;
}

.sw-template-builder-add-section-picker {
  padding: 0.75rem;
  border: 1px dashed #bfdbfe;
  border-radius: 0.95rem;
  background: #f8fbff;
}

.sw-template-builder-add-section-picker button {
  opacity: 0.78;
}

.sw-template-system-canvas {
  overflow: hidden;
}

.sw-template-system-canvas__browser {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #e2e8f0;
}

.sw-template-system-canvas__browser span {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #94a3b8;
}

.sw-template-system-canvas__browser strong {
  margin-left: auto;
  color: #64748b;
  font-size: 0.74rem;
}

.sw-template-system-canvas__page {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 1rem;
  background: #f8fafc;
}

.sw-template-system-canvas__header {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-system-canvas__header nav {
  display: flex;
  gap: 0.7rem;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 900;
}

.sw-template-system-canvas__hero,
.sw-template-system-canvas__sections article {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

@media (max-width: 1180px) {
  .sw-template-system-toolbar .sw-input {
    min-height: 44px;
  }

  .sw-template-system-hero,
  .sw-template-system-editor-head {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-template-system-hero__summary,
  .sw-template-system-toolbar,
  .sw-template-system-layout,
  .sw-template-system-detail-layout,
  .sw-template-builder-layout,
  .sw-template-system-framework-grid,
  .sw-products-catalog__row,
  .sw-products-catalog__coverage-row,
  .sw-products-catalog__management-row,
  .sw-products-catalog__secondary {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .sw-products-catalog__management-actions {
    justify-items: stretch;
  }
}

.sw-template-system-canvas[data-preview-mode="mobile"] {
  max-width: 26rem;
  margin-inline: auto;
}

.sw-template-system-canvas__tokens,
.sw-template-system-canvas__category-row,
.sw-template-system-canvas__product-grid,
.sw-template-system-module-tabs,
.sw-template-builder-inspector__tabs {
  display: grid;
  gap: 0.65rem;
}

.sw-template-system-canvas__tokens {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 0.75rem;
}

.sw-template-system-canvas__tokens span,
.sw-template-system-canvas__category-row span {
  padding: 0.55rem 0.7rem;
  border-radius: 0.75rem;
  background: #eef6ff;
  color: #1e3a8a;
  font-size: 0.75rem;
  font-weight: 900;
}

.sw-template-system-canvas__hero button {
  width: fit-content;
  margin-top: 0.8rem;
  padding: 0.55rem 0.9rem;
  border: 0;
  border-radius: 999px;
  background: #0f172a;
  color: #ffffff;
  font-weight: 900;
}

.sw-template-system-canvas__category-row,
.sw-template-system-canvas__product-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-template-system-canvas__product-grid article {
  display: grid;
  gap: 0.45rem;
  padding: 0.75rem;
  border-radius: 0.9rem;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

.sw-template-system-canvas__product-grid i,
.sw-template-system-module-card__preview span {
  display: block;
  min-height: 4rem;
  border-radius: 0.75rem;
  background: linear-gradient(135deg, #cbd5e1, #f8fafc);
}

.sw-template-system-canvas [data-active="true"] {
  outline: 2px solid #2563eb;
  outline-offset: 3px;
}

.sw-template-system-module-tabs,
.sw-template-builder-inspector__tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-template-system-module-tabs button,
.sw-template-builder-inspector__tabs button {
  padding: 0.45rem;
  border: 1px solid #dbeafe;
  border-radius: 0.7rem;
  background: #ffffff;
  color: #1e3a8a;
  font-weight: 900;
}

.sw-template-system-module-tabs button[data-active="true"],
.sw-template-builder-inspector__tabs button[data-active="true"],
.sw-template-system-module-card[data-active="true"] {
  border-color: #2563eb;
  background: #eff6ff;
}

.sw-template-system-module-card__preview {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.35rem;
  padding: 0.55rem;
  border: 1px solid #dbeafe;
  border-radius: 0.85rem;
  background: #f8fbff;
}

.sw-template-builder-inspector__group,
.sw-template-builder-module-detail,
.sw-template-builder-inspector__field,
.sw-template-builder-inspector__field label,
.sw-template-builder-inspector__guard,
.sw-template-builder-inspector__empty,
.sw-composition-preview__draft-copy {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-template-builder-inspector__group {
  min-width: 0;
}

.sw-template-builder-module-detail {
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow-card);
}

.sw-template-builder-module-detail div {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
}

.sw-template-builder-module-detail strong,
.sw-template-builder-module-detail span {
  min-width: 0;
}

.sw-template-builder-module-detail strong {
  color: var(--sw-admin-shell-ink);
}

.sw-template-builder-module-detail span {
  color: var(--sw-admin-shell-ink-soft);
  line-height: 1.45;
}

.sw-template-builder-module-detail .sw-storefront-action {
  grid-column: 1 / -1;
  justify-content: center;
}

.sw-template-builder-inspector__field {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-template-builder-inspector__field label {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-builder-inspector__field label span {
  min-width: 0;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-template-builder-inspector__field label small,
.sw-template-builder-inspector__field em {
  color: var(--sw-admin-shell-ink-soft);
  font-style: normal;
  font-weight: 900;
}

.sw-template-builder-inspector__field em {
  color: var(--sw-admin-shell-warning);
}

.sw-template-builder-inspector__field input,
.sw-template-builder-inspector__field textarea,
.sw-template-builder-inspector__field select,
.sw-template-builder-inspector__field output {
  width: 100%;
  min-width: 0;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  padding: var(--sw-admin-shell-panel-pad-compact);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  line-height: 1.45;
}

.sw-template-builder-inspector__field textarea {
  min-height: 5.8rem;
  resize: vertical;
}

.sw-template-builder-inspector__field output {
  display: block;
  color: var(--sw-admin-shell-ink-soft);
}

.sw-template-builder-inspector__field input:disabled,
.sw-template-builder-inspector__field textarea:disabled,
.sw-template-builder-inspector__field select:disabled,
.sw-template-builder-inspector__disabled-action:disabled {
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  cursor: not-allowed;
}

.sw-template-builder-inspector__disabled-action {
  width: 100%;
  min-height: var(--sw-admin-shell-control);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  font-weight: 950;
}

.sw-template-builder-inspector__toggle {
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: start;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-template-builder-inspector__toggle input {
  width: calc(var(--sw-admin-shell-control) / 2.5);
}

.sw-template-builder-hero-image-field {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-template-builder-hero-image-field__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-admin-shell-gap);
  align-items: center;
}

.sw-template-builder-hero-image-field__actions .sw-storefront-action {
  min-height: var(--sw-admin-shell-control);
  cursor: pointer;
}

.sw-template-builder-hero-image-field__actions .sw-storefront-action[aria-disabled="true"] {
  opacity: 0.62;
  pointer-events: none;
}

.sw-template-builder-hero-image-field__actions input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.sw-template-builder-hero-image-field small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 850;
}

.sw-template-builder-inspector__group[data-compact="true"] {
  gap: 0.35rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field {
  grid-template-columns: minmax(6.4rem, 0.22fr) minmax(0, 1fr);
  gap: 0.2rem 0.55rem;
  align-items: center;
  padding: 0.26rem 0;
  border: 0;
  border-bottom: var(--sw-admin-shell-border-soft);
  border-radius: 0;
  background: transparent;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > label:not(.sw-template-builder-inspector__toggle) {
  grid-column: 1;
  min-height: 1.15rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > label:not(.sw-template-builder-inspector__toggle) span {
  font-size: 0.78rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > label:not(.sw-template-builder-inspector__toggle) small,
.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field .sw-badge {
  font-size: 0.68rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field input,
.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field textarea,
.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field select {
  grid-column: 2;
  min-height: 2.15rem;
  padding: 0.34rem 0.5rem;
  font-size: 0.78rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field textarea {
  min-height: 3rem;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > .sw-template-builder-inspector__toggle {
  grid-column: 2;
  width: fit-content;
  min-height: 1.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.45rem;
  padding: 0.18rem 0.4rem;
  border: 0;
  background: transparent;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__toggle input {
  width: 1rem;
  height: 1rem;
  min-height: 1rem;
  padding: 0;
}

.sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__toggle span {
  color: var(--sw-admin-shell-ink);
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.45;
}

.sw-template-builder-hero-image-field {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 0fr) auto;
  align-items: center;
  gap: 0.35rem;
  column-gap: 0;
}

.sw-template-builder-hero-image-field input {
  grid-column: 1 / 2;
}

.sw-template-builder-hero-image-field__actions {
  grid-column: 2 / 3;
  gap: 0.3rem;
}

.sw-template-builder-hero-image-field__actions .sw-storefront-action {
  min-height: 2.15rem;
  padding: 0.35rem 0.55rem;
  font-size: 0.72rem;
  white-space: nowrap;
}

.sw-template-builder-hero-image-field small {
  display: none;
}

.sw-template-web-image-action {
  grid-column: 1 / -1;
  display: grid;
  gap: 0.5rem;
  min-width: 0;
}
.sw-template-web-image-action .sw-storefront-action {
  justify-self: start;
  min-height: 2.625rem;
  max-width: 100%;
  white-space: normal;
}
.sw-template-builder-hero-image-field .sw-template-web-image-action small,
.sw-template-web-image-action [role="status"] {
  display: block;
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.sw-template-builder-slide-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.4rem;
}

.sw-template-builder-slide-tabs button {
  position: relative;
  min-height: 6.25rem;
  display: grid;
  gap: 0.1rem;
  place-items: center;
  overflow: hidden;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-template-builder-slide-tabs[data-kind="featured-collection"] button {
  min-height: auto;
  aspect-ratio: 1 / 1;
}

.sw-template-builder-slide-tabs[data-kind="featured-collection"][data-card-ratio="4:5"] button {
  aspect-ratio: 4 / 5;
}

.sw-template-builder-slide-tabs button[data-has-image="true"] {
  min-height: 6.25rem;
  color: #ffffff;
  text-shadow: 0 1px 8px rgba(15, 23, 42, 0.78);
}

.sw-template-builder-slide-tabs[data-kind="featured-collection"] button[data-has-image="true"] {
  min-height: auto;
}

.sw-template-builder-slide-tabs button[data-has-image="true"]::after {
  position: absolute;
  inset: 0;
  content: '';
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.1), rgba(15, 23, 42, 0.72));
}

.sw-template-builder-slide-tabs button img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-template-builder-slide-tabs button span,
.sw-template-builder-slide-tabs button small {
  position: relative;
  z-index: 1;
}

.sw-template-builder-slide-tabs button[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-template-builder-slide-tabs button[data-enabled="false"] {
  opacity: 0.58;
}

.sw-template-builder-slide-tabs small {
  color: var(--sw-admin-shell-ink-soft);
  font-size: 0.64rem;
  font-weight: 850;
}

.sw-template-builder-slide-tabs button[data-has-image="true"] small {
  color: rgba(255, 255, 255, 0.86);
}

@media (max-width: 480px) {
  .sw-template-page-editor-shell .sw-template-builder-slide-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sw-template-page-editor-shell .sw-template-builder-slide-tabs button {
    min-height: 4.5rem;
    padding: 0.5rem;
    font-weight: 650;
  }
  .sw-template-page-editor-shell .sw-template-builder-slide-tabs small {
    font-size: 0.75rem;
  }
}

.sw-template-builder-inspector__save-footer {
  position: sticky;
  bottom: 0;
  z-index: 2;
  display: grid;
  padding-top: var(--sw-admin-shell-gap);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0), var(--sw-admin-shell-surface) 38%);
}

.sw-template-builder-inspector__save-footer .sw-storefront-action {
  justify-content: center;
  min-height: 2.8rem;
}

.sw-template-builder-inspector__save-footer .sw-storefront-action:disabled {
  border-color: var(--sw-admin-shell-border);
  background: var(--sw-admin-shell-surface-soft);
  color: var(--sw-admin-shell-ink-soft);
  box-shadow: none;
}

.sw-template-builder-navbar-editor {
  display: grid;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-gap);
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: var(--sw-admin-shell-radius);
  background: #ffffff;
  color: #111827;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12);
}

.sw-template-builder-navbar-editor__head,
.sw-template-builder-navbar-editor__footer {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  justify-content: space-between;
}

.sw-template-builder-navbar-editor__head h3,
.sw-template-builder-navbar-editor__head p {
  margin: 0;
}

.sw-template-builder-navbar-editor__body {
  display: grid;
  grid-template-columns: minmax(11rem, 0.75fr) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
}

.sw-template-builder-navbar-editor__list,
.sw-template-builder-navbar-editor__form {
  display: grid;
  gap: 0.55rem;
}

.sw-template-builder-navbar-editor__list button {
  display: flex;
  min-height: 2.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.45rem 0.65rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  background: #f8fafc;
  color: #111827;
  font-weight: 850;
}

.sw-template-builder-navbar-editor__list button[data-active="true"] {
  border-color: #67e8f9;
  background: #ecfeff;
}

.sw-template-builder-navbar-editor__form label {
  display: grid;
  gap: 0.3rem;
  font-size: 0.78rem;
  font-weight: 900;
}

.sw-template-builder-navbar-editor__form input,
.sw-template-builder-navbar-editor__form output {
  min-height: 2.35rem;
  padding: 0.45rem 0.6rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.7rem;
  background: #ffffff;
  font-size: 0.88rem;
  font-weight: 800;
}

.sw-composition-preview [data-shell-active="true"] {
  outline: 2px solid #67e8f9;
  outline-offset: 3px;
}

.sw-composition-preview [data-shell-surface="navbar"] {
  position: relative;
}

.sw-composition-preview__shell-edit {
  min-height: 2rem;
  padding: 0.3rem 0.7rem;
  border: 0;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 950;
}

.sw-composition-preview__shell-editor {
  grid-column: 1 / -1;
}

.sw-template-style-media-source {
  display: grid;
  gap: 0.65rem;
  padding: 0.7rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-md);
  background: var(--sw-admin-shell-surface-soft);
}

.sw-template-style-media-source__tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
}

.sw-template-style-media-source__tabs button,
.sw-template-style-media-source__product button,
.sw-template-style-media-source__product select {
  min-height: 2.35rem;
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font-weight: 850;
}

.sw-template-style-media-source__tabs button[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-admin-shell-accent-soft);
  color: var(--sw-admin-shell-accent);
}

.sw-template-style-media-source__product {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.5rem;
  align-items: center;
}

.sw-template-style-media-source__product span,
.sw-template-style-media-source__tag {
  color: var(--sw-admin-shell-ink-soft);
  font-size: 0.78rem;
  font-weight: 800;
}

.sw-template-style-media-source__product select {
  padding-inline: 0.65rem;
}

.sw-template-style-media-source__product button {
  padding-inline: 0.8rem;
}

.sw-template-builder-inspector__empty,
.sw-template-builder-inspector__guard {
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  color: var(--sw-admin-shell-ink-soft);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-template-builder-product-picker,
.sw-template-builder-media-picker,
.sw-template-builder-product-picker__status,
.sw-template-builder-product-picker__list,
.sw-template-builder-media-picker__grid,
.sw-composition-preview__product-binding {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-template-builder-product-picker__status {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-builder-product-picker__status span {
  color: var(--sw-admin-shell-ink-soft);
  font-weight: 850;
}

.sw-template-builder-product-picker__list,
.sw-template-builder-media-picker__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-template-builder-product-picker__list button,
.sw-template-builder-media-picker__grid button {
  min-width: 0;
  display: grid;
  gap: var(--sw-admin-shell-gap);
  justify-items: start;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  text-align: start;
  font: inherit;
}

.sw-template-builder-product-picker__list button[data-active="true"],
.sw-template-builder-media-picker__grid button[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-template-builder-product-picker__list img,
.sw-template-builder-product-picker__list button > span,
.sw-template-builder-media-picker__grid img,
.sw-template-builder-media-picker__grid button > span {
  width: 100%;
  aspect-ratio: 1;
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-soft);
  object-fit: cover;
}

.sw-template-builder-product-picker__list strong,
.sw-template-builder-media-picker__grid strong {
  max-width: 100%;
  overflow-wrap: anywhere;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-admin-shell-type-body);
  font-weight: 950;
}

.sw-template-builder-product-picker__list small,
.sw-template-builder-media-picker__grid small {
  color: var(--sw-admin-shell-ink-soft);
  font-weight: 850;
}

.sw-composition-preview__draft-marker,
.sw-composition-preview__draft-copy,
.sw-composition-preview__product-binding,
.sw-composition-preview__read-state {
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-warning);
}

.sw-composition-preview__draft-marker {
  width: fit-content;
  padding: var(--sw-admin-shell-panel-pad-compact);
  font-weight: 950;
}

.sw-composition-preview__draft-copy {
  margin-top: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
}

.sw-composition-preview__draft-copy strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-composition-preview__draft-copy span {
  color: var(--sw-admin-shell-warning);
}

.sw-composition-preview__product-binding {
  padding: var(--sw-admin-shell-panel-pad-compact);
}

.sw-composition-preview__read-state {
  width: fit-content;
  padding: var(--sw-admin-shell-panel-pad-compact);
  font-weight: 850;
}

.sw-composition-preview__read-state span {
  color: var(--sw-admin-shell-warning);
}

.sw-composition-preview__product-binding strong,
.sw-composition-preview__product-binding span,
.sw-composition-preview__product-binding em {
  margin: 0;
  overflow-wrap: anywhere;
  font-style: normal;
}

.sw-composition-preview__product-binding strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-composition-preview__product-binding span,
.sw-composition-preview__product-binding em {
  color: var(--sw-admin-shell-warning);
  font-weight: 850;
}

.sw-theme-studio,
.sw-theme-studio__layout,
.sw-theme-studio__controls,
.sw-theme-studio__preview-stack,
.sw-theme-studio__rail,
.sw-theme-studio__control-group,
.sw-theme-studio__summary,
.sw-theme-studio__state-region,
.sw-theme-studio__summary dl,
.sw-theme-readiness,
.sw-theme-readiness__panels,
.sw-theme-readiness__panel,
.sw-theme-readiness__facts {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-studio__status,
.sw-theme-studio__toolbar,
.sw-theme-studio__target-switcher,
.sw-theme-studio__mode-switch,
.sw-theme-studio__actions,
.sw-theme-studio__summary-badges,
.sw-theme-readiness__strip,
.sw-theme-readiness__next-step {
  display: flex;
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-studio__status {
  flex-wrap: wrap;
  align-items: center;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-theme-studio__status span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  padding-inline: var(--sw-admin-shell-gap);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-studio__toolbar {
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-theme-studio__target-switcher,
.sw-theme-studio__mode-switch {
  flex-wrap: wrap;
}

.sw-theme-studio__target-switcher button,
.sw-theme-studio__mode-switch button,
.sw-theme-studio__option-grid button {
  min-height: var(--sw-admin-shell-control);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  font-size: var(--sw-admin-shell-type-body);
  font-weight: 900;
}

.sw-theme-studio__target-switcher button,
.sw-theme-studio__mode-switch button {
  padding-inline: var(--sw-admin-shell-panel-pad);
}

.sw-theme-studio__target-switcher button[data-active="true"],
.sw-theme-studio__mode-switch button[data-active="true"],
.sw-theme-studio__option-grid button[data-active="true"] {
  border-color: var(--sw-admin-shell-accent);
  background: var(--sw-primitive-color-accent-surface);
  box-shadow: var(--sw-admin-shell-focus);
}

.sw-theme-studio__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.sw-theme-studio__summary-badges {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.sw-theme-studio__layout {
  grid-template-columns: minmax(var(--sw-admin-shell-context-width), 0.32fr) minmax(0, 1fr);
  grid-template-areas: "controls preview" "rail rail";
  align-items: start;
}

.sw-theme-studio__control-pane {
  grid-area: controls;
  min-width: 0;
  scroll-margin-block: 8rem 6rem;
}

.sw-theme-studio__preview-panel {
  grid-area: preview;
  scroll-margin-block: 8rem 6rem;
}

.sw-theme-studio__return-bar {
  position: sticky;
  top: 7rem;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  justify-content: space-between;
  padding: var(--sw-admin-shell-panel-pad-compact);
  margin-bottom: var(--sw-admin-shell-gap);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-theme-studio__return-bar button,
.sw-theme-studio__toolbar > .sw-storefront-action {
  min-height: max(44px, var(--sw-admin-shell-control));
}

.sw-theme-studio__rail {
  grid-area: rail;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}

.sw-theme-studio__rail > .sw-theme-readiness,
.sw-theme-studio__rail > .sw-theme-draft {
  grid-column: 1 / -1;
}

.sw-theme-studio__summary > .sw-template-system-section-head {
  flex-wrap: wrap;
  align-items: start;
}

.sw-theme-studio__summary > .sw-template-system-section-head > div:first-child {
  flex: 1 1 12rem;
}

.sw-theme-studio__control-pane:focus-visible,
.sw-theme-studio__preview-panel:focus-visible {
  outline: 3px solid var(--sw-admin-shell-accent);
  outline-offset: 3px;
}

.sw-theme-studio__control-group,
.sw-theme-studio__summary,
.sw-theme-studio__state-region,
.sw-theme-readiness,
.sw-theme-readiness__panel {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-theme-studio__option-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--sw-admin-shell-status-max), 1fr));
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-studio__option-grid button {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
  justify-items: start;
  padding: var(--sw-admin-shell-panel-pad-compact);
  text-align: start;
}

.sw-theme-studio__option-grid strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-theme-studio__option-grid span,
.sw-theme-studio__summary p,
.sw-theme-readiness p,
.sw-theme-readiness__fact span,
.sw-theme-studio__save-message,
.sw-theme-studio__apply-message {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  line-height: 1.5;
}

.sw-theme-studio__summary dl {
  margin: 0;
}

.sw-theme-studio__summary dl div {
  display: grid;
  grid-template-columns: var(--sw-admin-shell-summary-min) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  padding-block: calc(var(--sw-admin-shell-gap) / 1.5);
  border-bottom: var(--sw-primitive-border-subtle);
}

.sw-theme-studio__summary dt,
.sw-theme-studio__summary dd {
  margin: 0;
}

.sw-theme-studio__summary dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-studio__summary dd {
  min-width: 0;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.sw-theme-studio__preview-panel,
.sw-theme-studio__rail,
.sw-theme-studio__state-region,
.sw-theme-readiness,
.sw-theme-readiness__panel {
  min-width: 0;
}

.sw-theme-studio__preview-panel {
  align-content: start;
}

.sw-theme-studio__preview-head {
  margin-bottom: var(--sw-admin-shell-gap);
}

.sw-theme-studio__state-row {
  min-width: 0;
  display: grid;
  grid-template-columns: var(--sw-admin-shell-summary-min) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  padding-block: calc(var(--sw-admin-shell-gap) / 1.5);
  border-bottom: var(--sw-primitive-border-subtle);
}

.sw-theme-studio__state-row span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-studio__state-row strong {
  min-width: 0;
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.sw-theme-readiness {
  align-content: start;
}

.sw-theme-readiness h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-admin-shell-type-body);
  font-weight: 950;
}

.sw-theme-readiness__strip,
.sw-theme-readiness__next-step {
  flex-wrap: wrap;
  align-items: center;
}

.sw-theme-readiness__strip span,
.sw-theme-readiness__next-step span {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: calc(var(--sw-admin-shell-gap) / 2);
  padding: calc(var(--sw-admin-shell-gap) / 2) var(--sw-admin-shell-gap);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 900;
}

.sw-theme-readiness__strip strong,
.sw-theme-readiness__next-step span {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
}

.sw-theme-readiness__panel {
  box-shadow: none;
}

.sw-theme-readiness__panel[data-readiness-status="ready"],
.sw-theme-readiness__fact[data-readiness-status="ready"] {
  border-color: color-mix(in srgb, var(--sw-primitive-color-success) 36%, var(--sw-primitive-color-border));
}

.sw-theme-readiness__panel[data-readiness-status="blocked"],
.sw-theme-readiness__panel[data-readiness-status="degraded"],
.sw-theme-readiness__fact[data-readiness-status="blocked"],
.sw-theme-readiness__fact[data-readiness-status="degraded"] {
  border-color: color-mix(in srgb, var(--sw-primitive-color-danger) 34%, var(--sw-primitive-color-border));
}

.sw-theme-readiness__fact {
  min-width: 0;
  display: grid;
  grid-template-columns: var(--sw-admin-shell-summary-min) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  padding-block: calc(var(--sw-admin-shell-gap) / 1.5);
  border-bottom: var(--sw-primitive-border-subtle);
}

.sw-theme-readiness__fact dt,
.sw-theme-readiness__fact dd {
  min-width: 0;
  margin: 0;
}

.sw-theme-readiness__fact dt {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-readiness__fact dd {
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
}

.sw-theme-readiness__fact strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.sw-theme-draft,
.sw-theme-draft__grid,
.sw-theme-draft__card,
.sw-theme-draft__seo-stack,
.sw-theme-draft__fields,
.sw-theme-draft__brand-list,
.sw-theme-proposal,
.sw-theme-proposal__ready,
.sw-theme-proposal__diff,
.sw-theme-proposal__protected {
  display: grid;
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-draft {
  scroll-margin-block: 8rem 6rem;
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius);
  background: var(--sw-admin-shell-surface);
  box-shadow: var(--sw-admin-shell-shadow);
}

.sw-theme-draft__actions,
.sw-theme-draft__blocked-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-draft__grid {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1fr);
  align-items: start;
}

.sw-theme-draft__card {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-theme-draft h4 {
  margin: 0;
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-admin-shell-type-body);
  font-weight: 950;
}

.sw-theme-draft p,
.sw-theme-draft__brand-list span,
.sw-theme-draft__busy {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  line-height: 1.5;
}

.sw-theme-draft__brand-list {
  margin: 0;
}

.sw-theme-draft__brand-list div {
  min-width: 0;
  display: grid;
  grid-template-columns: var(--sw-admin-shell-summary-min) minmax(0, 1fr);
  gap: var(--sw-admin-shell-gap);
  padding-block: calc(var(--sw-admin-shell-gap) / 1.5);
  border-bottom: var(--sw-primitive-border-subtle);
}

.sw-theme-draft__brand-list dt,
.sw-theme-draft__brand-list dd {
  min-width: 0;
  margin: 0;
}

.sw-theme-draft__brand-list dt,
.sw-theme-draft__fields label span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-draft__brand-list dd {
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
}

.sw-theme-draft__brand-list strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.sw-theme-proposal {
  min-width: 0;
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-theme-proposal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-admin-shell-gap);
}

.sw-theme-proposal__actions .sw-storefront-action {
  min-height: var(--sw-admin-shell-control);
}

.sw-theme-proposal__state,
.sw-theme-proposal__mode {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-theme-proposal__state span,
.sw-theme-proposal__mode span,
.sw-theme-proposal__diff-row span {
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-proposal__state strong,
.sw-theme-proposal__mode strong,
.sw-theme-proposal__diff-row strong {
  color: var(--sw-admin-shell-ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.sw-theme-proposal__diff-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(7rem, 0.6fr) minmax(0, 1fr) minmax(0, 1.2fr);
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface-tint);
}

.sw-theme-proposal__diff-row > div,
.sw-theme-proposal__diff-row label {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
}

.sw-theme-proposal__diff-label {
  color: var(--sw-admin-shell-ink);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 950;
}

.sw-theme-proposal__diff-row :is(input, textarea).sw-input {
  width: 100%;
  min-width: 0;
  min-height: var(--sw-admin-shell-control);
}

.sw-theme-proposal__diff-row textarea.sw-input {
  min-height: calc(var(--sw-admin-shell-control) * 1.75);
  resize: vertical;
}

.sw-theme-proposal__diff-row input[type="checkbox"] {
  inline-size: var(--sw-primitive-density-icon-size);
  block-size: var(--sw-primitive-density-icon-size);
  accent-color: var(--sw-admin-shell-accent);
}

.sw-theme-proposal__protected {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-theme-proposal__protected span {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
  padding: calc(var(--sw-admin-shell-gap) / 1.5) var(--sw-admin-shell-gap);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 900;
}

.sw-theme-proposal__protected strong {
  color: var(--sw-admin-shell-danger);
  font-weight: 950;
}

.sw-theme-draft__fields label {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-admin-shell-gap) / 2);
}

.sw-theme-draft__fields :is(input, textarea).sw-input {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: var(--sw-admin-shell-control);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
  color: var(--sw-admin-shell-ink);
  font: inherit;
  resize: vertical;
}
.sw-theme-draft__fields :is(input, textarea).sw-input:focus-visible {
  outline: 3px solid var(--sw-admin-shell-accent);
  outline-offset: 2px;
}

.sw-theme-draft__fields textarea.sw-input {
  min-height: calc(var(--sw-admin-shell-control) * 2);
}

@media (max-width: 680px) {
  .sw-theme-draft .sw-storefront-action,
  .sw-theme-draft__fields input:not([type="checkbox"]).sw-input,
  .sw-theme-draft .sw-theme-draft__toggle {
    min-height: max(44px, var(--sw-admin-shell-control));
  }
  .sw-theme-draft__fields textarea.sw-input { min-height: max(88px, calc(var(--sw-admin-shell-control) * 2)); }
  .sw-theme-draft__fields :is(input, textarea).sw-input { font-size: 1rem; }
}

.sw-theme-draft__toggle {
  display: flex;
  align-items: center;
  gap: var(--sw-admin-shell-gap);
  min-height: var(--sw-admin-shell-control);
  padding: var(--sw-admin-shell-panel-pad-compact);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-admin-shell-radius-sm);
  background: var(--sw-admin-shell-surface);
}

.sw-theme-draft__toggle input {
  inline-size: var(--sw-primitive-density-icon-size);
  block-size: var(--sw-primitive-density-icon-size);
  accent-color: var(--sw-admin-shell-accent);
}

.sw-theme-draft__blocked-strip {
  justify-content: flex-start;
  padding-top: var(--sw-admin-shell-gap);
  border-top: var(--sw-primitive-border-subtle);
}

.sw-theme-draft__blocked-strip span {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: calc(var(--sw-admin-shell-gap) / 2);
  padding: calc(var(--sw-admin-shell-gap) / 2) var(--sw-admin-shell-gap);
  border: var(--sw-admin-shell-border-soft);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-admin-shell-surface-tint);
  color: var(--sw-admin-shell-ink-soft);
  font-size: var(--sw-admin-shell-type-caption);
  font-weight: 900;
}

.sw-theme-draft__blocked-strip strong {
  color: var(--sw-admin-shell-danger);
  font-weight: 950;
}

/* Theme preview content now uses the shared saved-site renderer. The retired
 * source-only preview skin is intentionally not retained as a second mapping. */

@media (max-width: 1180px) {
  .sw-theme-studio__layout {
    grid-template-columns: 1fr;
    grid-template-areas: "preview" "controls" "rail";
  }

  .sw-theme-studio__rail {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-theme-studio__return-bar {
    top: 5rem;
  }

  .sw-theme-studio__toolbar {
    align-items: stretch;
  }

  .sw-theme-studio__actions {
    order: -1;
    width: 100%;
    justify-content: stretch;
  }

  .sw-theme-studio__actions .sw-storefront-action {
    flex: 1 1 calc((100% - var(--sw-admin-shell-gap)) / 2);
    justify-content: center;
  }

  .sw-theme-draft__grid {
    grid-template-columns: 1fr;
  }

  .sw-theme-draft__actions {
    width: 100%;
    justify-content: stretch;
  }

  .sw-theme-draft__actions .sw-storefront-action {
    flex: 1 1 calc((100% - var(--sw-admin-shell-gap)) / 2);
    justify-content: center;
  }

  .sw-theme-proposal__actions .sw-storefront-action {
    flex: 1 1 100%;
  }

  .sw-theme-proposal__diff-row,
  .sw-theme-proposal__protected {
    grid-template-columns: 1fr;
  }
}

.sw-storefront-toolbar,
.sw-storefront-toolbar__actions,
.sw-storefront-hero,
.sw-storefront-hero__actions,
.sw-storefront-panel__head,
.sw-storefront-module-row,
.sw-storefront-chip-list,
.sw-storefront-editor__header,
.sw-storefront-editor__workspace,
.sw-storefront-editor__rail button {
  display: flex;
  align-items: center;
}

.sw-storefront-toolbar {
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1rem 1.125rem;
  border: 1px solid var(--sw-admin-shell-line);
  border-radius: 1.25rem;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-storefront-toolbar h2,
.sw-storefront h2,
.sw-storefront h3,
.sw-storefront-editor h2,
.sw-storefront-editor h3 {
  margin: 0;
  letter-spacing: -0.035em;
}

.sw-storefront-toolbar h2 {
  font-size: 1.2rem;
}

.sw-storefront-toolbar__actions,
.sw-storefront-hero__actions,
.sw-storefront-chip-list {
  gap: 0.625rem;
  flex-wrap: wrap;
}

.sw-storefront-eyebrow {
  margin: 0 0 0.35rem;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.sw-storefront-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-height: 2.5rem;
  padding: 0 1rem;
  border-radius: 0.875rem;
  font-size: 0.875rem;
  font-weight: 900;
  text-decoration: none;
}

.sw-storefront-action svg {
  width: 0.95rem;
  height: 0.95rem;
}

.sw-storefront-action--primary {
  border: 1px solid #2563eb;
  background: linear-gradient(135deg, #2563eb, #4f46e5);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.22);
}

.sw-storefront-action--secondary {
  border: 1px solid #d7e0ee;
  background: #ffffff;
  color: #334155;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.05);
}

.sw-storefront,
.sw-storefront-editor {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.sw-storefront-hero {
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1.25rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.45rem;
  background:
    radial-gradient(circle at 92% 8%, rgba(37, 99, 235, 0.15), transparent 35%),
    linear-gradient(135deg, #ffffff 0%, #f7fbff 52%, #eff6ff 100%);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.1);
}

.sw-storefront-hero h2,
.sw-storefront-editor__header h2 {
  color: #0f172a;
  font-size: clamp(1.6rem, 2.4vw, 2.35rem);
  line-height: 1.02;
}

.sw-storefront-hero p {
  max-width: 45rem;
  margin: 0.85rem 0 0;
  color: #475569;
  line-height: 1.65;
}

.sw-storefront-hero__actions {
  align-content: center;
  justify-content: flex-end;
}

.sw-storefront-metric-grid,
.sw-storefront-readiness-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

.sw-storefront-metric,
.sw-storefront-panel,
.sw-storefront-readiness-grid article {
  min-width: 0;
  border: 1px solid #dfe8f5;
  border-radius: 1.25rem;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-storefront-metric {
  padding: 0.9rem 1rem;
}

.sw-storefront-metric__icon,
.sw-storefront-module-row__icon,
.sw-storefront-preview-card,
.sw-storefront-readiness-grid article svg {
  display: grid;
  place-items: center;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.82rem;
  background: linear-gradient(135deg, #dbeafe, #eef2ff);
  color: #2563eb;
}

.sw-storefront-metric__icon svg,
.sw-storefront-module-row__icon svg,
.sw-storefront-preview-card svg,
.sw-storefront-readiness-grid article svg {
  width: 1.1rem;
  height: 1.1rem;
}

.sw-storefront-metric span:not(.sw-storefront-metric__icon),
.sw-storefront-metric small {
  display: block;
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 800;
}

.sw-storefront-metric strong {
  display: block;
  margin: 0.25rem 0;
  color: #111827;
  font-size: 1.35rem;
  font-weight: 950;
}

.sw-storefront-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 19rem;
  gap: 1rem;
  min-width: 0;
}

.sw-storefront-panel {
  padding: 1rem;
}

.sw-storefront-panel__head {
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.9rem;
}

.sw-storefront-panel__head h3 {
  font-size: 1.05rem;
}

.sw-storefront-module-list {
  display: grid;
  gap: 0.65rem;
}

.sw-storefront-module-row {
  width: 100%;
  min-width: 0;
  gap: 0.75rem;
  padding: 0.85rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #ffffff;
  color: #111827;
  cursor: pointer;
  text-align: left;
}

.sw-storefront-module-row:hover,
.sw-storefront-module-row[data-active="true"] {
  border-color: #bfdbfe;
  background: #f8fbff;
}

.sw-storefront-module-row__copy {
  min-width: 0;
  flex: 1;
}

.sw-storefront-module-row__copy strong,
.sw-storefront-module-row__copy small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sw-storefront-module-row__copy strong {
  color: #111827;
  font-weight: 950;
  white-space: nowrap;
}

.sw-storefront-module-row__copy small {
  display: -webkit-box;
  margin-top: 0.2rem;
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sw-storefront-module-row__type {
  color: #475569;
  font-size: 0.8rem;
  font-weight: 900;
}

.sw-storefront-inspector__body {
  display: grid;
  gap: 0.8rem;
}

.sw-storefront-preview-card {
  width: 100%;
  height: 10rem;
  border-radius: 1rem;
  background:
    linear-gradient(#dbeafe 1px, transparent 1px),
    linear-gradient(90deg, #dbeafe 1px, transparent 1px),
    #f8fbff;
  background-size: 28px 28px;
}

.sw-storefront-preview-card svg {
  width: 2.4rem;
  height: 2.4rem;
}

.sw-storefront-inspector__body h4,
.sw-storefront-inspector__body p {
  margin: 0;
}

.sw-storefront-inspector__body h4 {
  color: #111827;
  font-size: 1.08rem;
  font-weight: 950;
}

.sw-storefront-inspector__body p {
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.55;
}

.sw-storefront-readiness {
  min-width: 0;
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.35rem;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-storefront-readiness-grid article {
  display: grid;
  gap: 0.55rem;
  align-content: start;
  padding: 0.95rem;
}

.sw-storefront-readiness-grid article strong {
  color: #111827;
  font-size: 0.98rem;
  font-weight: 950;
}

.sw-storefront-readiness-grid article p {
  margin: 0;
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.5;
}

.sw-storefront-editor__header {
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding: 1.1rem;
  border: 1px solid #dbe6f4;
  border-radius: 1.45rem;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.1);
}

.sw-storefront-editor__header div {
  min-width: 0;
  flex: 1;
}

.sw-storefront-editor__header span {
  display: block;
  margin-top: 0.35rem;
  color: #64748b;
  font-size: 0.86rem;
  font-weight: 800;
}

.sw-storefront-editor__workspace {
  align-items: stretch;
  gap: 1rem;
  min-width: 0;
}

.sw-storefront-editor__rail {
  flex: 0 0 16.5rem;
}

.sw-storefront-editor__rail button {
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  min-height: 2.8rem;
  margin-top: 0.55rem;
  padding: 0 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.9rem;
  background: #ffffff;
  color: #111827;
  font-weight: 900;
  cursor: pointer;
}

.sw-storefront-editor__rail button[data-active="true"] {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.sw-storefront-editor__canvas {
  flex: 1;
  min-width: 0;
  padding: 1rem;
  border: 1px solid #dfe8f5;
  border-radius: 1.35rem;
  background:
    linear-gradient(#e8eef7 1px, transparent 1px),
    linear-gradient(90deg, #e8eef7 1px, transparent 1px),
    #f3f7fc;
  background-size: 32px 32px;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.08);
}

.sw-storefront-page-preview {
  overflow: hidden;
  max-width: 44rem;
  min-height: 35rem;
  margin: 0 auto;
  border: 1px solid #dbe3ee;
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: 0 24px 58px rgba(15, 23, 42, 0.16);
}

.sw-storefront-page-preview__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 3.2rem;
  padding: 0 1.5rem;
  border-bottom: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 900;
}

.sw-storefront-page-preview__hero {
  padding: 2.2rem;
  background: linear-gradient(135deg, #0f172a, #111827);
  color: #ffffff;
}

.sw-storefront-page-preview__hero p {
  margin: 0;
  color: #cbd5e1;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.14em;
}

.sw-storefront-page-preview__hero h3 {
  max-width: 29rem;
  margin: 0.8rem 0;
  font-size: 2.1rem;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.sw-storefront-page-preview__hero span {
  color: #cbd5e1;
  line-height: 1.6;
}

.sw-storefront-page-preview__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  padding: 1.5rem;
}

.sw-storefront-page-preview__grid span {
  min-height: 9rem;
  border-radius: 1rem;
  background: #f1f5f9;
}

.sw-storefront-editor__assistant {
  flex: 0 0 18rem;
}

.sw-storefront-editor__assistant p {
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.55;
}

.sw-storefront-workspace--styles {
  grid-template-columns: minmax(0, 1fr) 20rem;
}

.sw-storefront-style-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.sw-storefront-style-card {
  display: grid;
  gap: 0.8rem;
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid #e2e8f0;
  border-radius: 1.1rem;
  background: #ffffff;
  color: #111827;
  cursor: pointer;
  text-align: left;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}

.sw-storefront-style-card:hover,
.sw-storefront-style-card[data-active="true"] {
  border-color: #bfdbfe;
  background: #f8fbff;
  box-shadow: 0 16px 34px rgba(37, 99, 235, 0.1);
}

.sw-storefront-style-card__body,
.sw-storefront-style-card__topline,
.sw-storefront-style-card__meta,
.sw-storefront-style-facts {
  display: grid;
  min-width: 0;
}

.sw-storefront-style-card__body {
  gap: 0.55rem;
}

.sw-storefront-style-card__topline {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.7rem;
}

.sw-storefront-style-card__topline strong {
  overflow: hidden;
  color: #111827;
  font-size: 0.98rem;
  font-weight: 950;
  letter-spacing: -0.025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-storefront-style-card__body small {
  display: -webkit-box;
  overflow: hidden;
  min-height: 2.6rem;
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sw-storefront-style-card__meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
}

.sw-storefront-style-card__meta span {
  overflow: hidden;
  padding: 0.35rem 0.45rem;
  border-radius: 0.65rem;
  background: #f1f5f9;
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-storefront-style-thumb {
  position: relative;
  display: grid;
  grid-template-rows: 1.45rem 1fr 3.2rem;
  overflow: hidden;
  width: 100%;
  min-height: 10.5rem;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 1rem;
  background: #f8fafc;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
}

.sw-storefront-style-thumb__browser {
  display: flex;
  align-items: center;
  gap: 0.32rem;
  padding: 0 0.65rem;
  background: rgba(255, 255, 255, 0.76);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.sw-storefront-style-thumb__browser span {
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.28);
}

.sw-storefront-style-thumb__hero {
  display: block;
  margin: 0.65rem;
  border-radius: 0.85rem;
}

.sw-storefront-style-thumb__content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.45rem;
  padding: 0 0.65rem 0.65rem;
}

.sw-storefront-style-thumb__content span {
  display: block;
  border-radius: 0.65rem;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

.sw-storefront-style-thumb--minimal {
  background: linear-gradient(135deg, #f8fafc, #ffffff 50%, #dbeafe);
}

.sw-storefront-style-thumb--minimal .sw-storefront-style-thumb__hero {
  background: linear-gradient(135deg, #111827, #334155);
}

.sw-storefront-style-thumb--editorial {
  background: linear-gradient(135deg, #fff7ed, #fafaf9 48%, #e7e5e4);
}

.sw-storefront-style-thumb--editorial .sw-storefront-style-thumb__hero {
  background: linear-gradient(135deg, #78350f, #d6d3d1);
}

.sw-storefront-style-thumb--launch {
  background: linear-gradient(135deg, #0f172a, #1d4ed8 52%, #dbeafe);
}

.sw-storefront-style-thumb--launch .sw-storefront-style-thumb__browser {
  background: rgba(15, 23, 42, 0.52);
}

.sw-storefront-style-thumb--launch .sw-storefront-style-thumb__browser span {
  background: rgba(255, 255, 255, 0.6);
}

.sw-storefront-style-thumb--launch .sw-storefront-style-thumb__hero {
  background: linear-gradient(135deg, #ffffff, #93c5fd);
}

.sw-storefront-style-thumb--boutique {
  background: linear-gradient(135deg, #1c1917, #7c2d12 58%, #fed7aa);
}

.sw-storefront-style-thumb--boutique .sw-storefront-style-thumb__browser {
  background: rgba(28, 25, 23, 0.58);
}

.sw-storefront-style-thumb--boutique .sw-storefront-style-thumb__browser span {
  background: rgba(255, 255, 255, 0.56);
}

.sw-storefront-style-thumb--boutique .sw-storefront-style-thumb__hero {
  background: linear-gradient(135deg, #fef3c7, #451a03);
}

.sw-storefront-style-thumb--catalog {
  background: linear-gradient(135deg, #e2e8f0, #ffffff 45%, #bfdbfe);
}

.sw-storefront-style-thumb--catalog .sw-storefront-style-thumb__hero {
  background: linear-gradient(90deg, #cbd5e1 0 22%, #ffffff 22% 28%, #60a5fa 28% 100%);
}

.sw-storefront-style-thumb--commerce {
  background: linear-gradient(135deg, #020617, #111827 55%, #bbf7d0);
}

.sw-storefront-style-thumb--commerce .sw-storefront-style-thumb__browser {
  background: rgba(2, 6, 23, 0.6);
}

.sw-storefront-style-thumb--commerce .sw-storefront-style-thumb__browser span {
  background: rgba(255, 255, 255, 0.58);
}

.sw-storefront-style-thumb--commerce .sw-storefront-style-thumb__hero {
  background: linear-gradient(135deg, #22c55e, #f8fafc);
}

.sw-storefront-inspector__body > .sw-storefront-style-thumb {
  min-height: 11.5rem;
}

.sw-storefront-style-facts {
  gap: 0.5rem;
}

.sw-storefront-style-facts span {
  display: grid;
  gap: 0.2rem;
  padding: 0.65rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.85rem;
  background: #f8fafc;
  color: #111827;
  font-size: 0.82rem;
  font-weight: 900;
}

.sw-storefront-style-facts b {
  color: #64748b;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-storefront-page-template-section {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #e2e8f0;
}

.sw-storefront-page-template-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
}

.sw-storefront-page-template-section__head h3 {
  margin: 0;
  color: #111827;
  font-size: 1.02rem;
  font-weight: 950;
  letter-spacing: -0.025em;
}

.sw-storefront-page-template-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

.sw-storefront-page-template-card {
  display: grid;
  grid-template-rows: 6rem auto;
  gap: 0.65rem;
  min-width: 0;
  padding: 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  background: #ffffff;
  color: #111827;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}

.sw-storefront-page-template-card:hover,
.sw-storefront-page-template-card:focus-visible {
  border-color: #bfdbfe;
  background: #f8fbff;
  box-shadow: 0 16px 34px rgba(37, 99, 235, 0.1);
  outline: none;
}

.sw-storefront-page-template-card__preview {
  display: grid;
  gap: 0.38rem;
  padding: 0.55rem;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 0.85rem;
  background: linear-gradient(135deg, #f8fafc, #eff6ff);
}

.sw-storefront-page-template-card__preview span {
  display: block;
  border-radius: 0.45rem;
  background: #cbd5e1;
}

.sw-storefront-page-template-card__preview span:first-child {
  background: #111827;
}

.sw-storefront-page-template-card__body {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.sw-storefront-page-template-card__topline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.55rem;
}

.sw-storefront-page-template-card__topline strong {
  overflow: hidden;
  color: #111827;
  font-size: 0.9rem;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-storefront-page-template-card__body small {
  display: -webkit-box;
  overflow: hidden;
  min-height: 2.35rem;
  color: #64748b;
  font-size: 0.74rem;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sw-storefront-page-template-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.35rem;
}

.sw-storefront-page-template-card__meta span {
  overflow: hidden;
  padding: 0.32rem 0.42rem;
  border-radius: 0.6rem;
  background: #f1f5f9;
  color: #64748b;
  font-size: 0.66rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-storefront-detail-tabs {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  padding: 0.5rem;
  border: 1px solid #dfe8f5;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.sw-storefront-detail-tabs span,
.sw-storefront-detail-tabs a {
  display: inline-flex;
  align-items: center;
  min-height: 2.35rem;
  padding: 0 0.8rem;
  border: 1px solid transparent;
  border-radius: 0.8rem;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.sw-storefront-detail-tabs span[data-active="true"],
.sw-storefront-detail-tabs a:hover,
.sw-storefront-detail-tabs a:focus-visible {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.sw-storefront-style-detail-grid {
  display: grid;
  grid-template-columns: 20rem minmax(0, 1fr);
  gap: 1rem;
  min-width: 0;
}

.sw-storefront-style-detail-grid .sw-storefront-panel > h3,
.sw-storefront-theme-grid .sw-storefront-panel > h3 {
  margin: 0.85rem 0 0.5rem;
  color: #111827;
  font-size: 1.08rem;
  font-weight: 950;
  letter-spacing: -0.025em;
}

.sw-storefront-style-detail-grid .sw-storefront-panel > p,
.sw-storefront-theme-grid .sw-storefront-panel > p {
  margin: 0 0 0.85rem;
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.55;
}

.sw-storefront-editor__rail-link {
  display: flex;
  align-items: center;
  min-height: 2.55rem;
  margin-top: 0.5rem;
  padding: 0 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.85rem;
  background: #ffffff;
  color: #111827;
  font-size: 0.84rem;
  font-weight: 900;
  text-decoration: none;
}

.sw-storefront-editor__rail-link:hover,
.sw-storefront-editor__rail-link:focus-visible,
.sw-storefront-editor__rail-link[data-active="true"] {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.sw-storefront-editor__rail-kicker {
  margin-top: 1rem;
}

.sw-storefront-theme-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.sw-storefront-theme-grid .sw-storefront-panel {
  display: grid;
  align-content: start;
  gap: 0.55rem;
}

@media (max-width: 1180px) {
  .sw-storefront-toolbar,
  .sw-storefront-hero,
  .sw-storefront-editor__header,
  .sw-storefront-editor__workspace {
    align-items: stretch;
    flex-direction: column;
  }

  .sw-storefront-workspace,
  .sw-storefront-metric-grid,
  .sw-storefront-readiness-grid {
    grid-template-columns: 1fr;
  }

  .sw-storefront-editor__rail,
  .sw-storefront-editor__assistant {
    flex-basis: auto;
  }
}

.sw-template-builder--advanced {
  gap: var(--sw-primitive-space-grid-gap);
  min-width: 0;
}


.sw-template-builder-action-toolbar,
.sw-template-builder-status-strip,
.sw-template-builder-page-list,
.sw-template-builder-inspector__group,
.sw-template-builder-inspector__guard,
.sw-composition-preview__facts,
.sw-composition-preview__summary-stack,
.sw-composition-preview__media-strip {
  display: flex;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-template-builder-action-toolbar,
.sw-template-builder-status-strip {
  align-items: center;
  flex-wrap: wrap;
}

.sw-template-builder-action-toolbar .sw-storefront-action[data-active="true"] {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
}

.sw-template-builder-action-toolbar .sw-storefront-action:disabled,
.sw-composition-preview__newsletter-actions button:disabled,
.sw-composition-preview__purchase button:disabled,
.sw-composition-preview__purchase select:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-template-builder-status-strip {
  min-height: var(--sw-primitive-density-toolbar-height);
  padding: var(--sw-primitive-space-toolbar-padding) var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-template-builder-status-strip span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-neutral-surface);
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-template-builder-contract {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--sw-primitive-space-grid-gap);
  min-width: 0;
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-template-builder-contract__copy,
.sw-template-builder-contract__facts,
.sw-template-builder-contract__actions {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-template-builder-contract__copy h3,
.sw-template-builder-contract__copy p {
  margin: 0;
}

.sw-template-builder-contract__copy h3 {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-template-builder-contract__copy p {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-template-builder-contract__facts {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.sw-template-builder-contract__facts span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-neutral-surface);
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-template-builder-contract__actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.sw-template-builder-contract__actions .sw-storefront-action:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-template-preview-bridge {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--sw-primitive-space-grid-gap);
  min-width: 0;
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-template-preview-bridge__copy,
.sw-template-preview-bridge__meta,
.sw-template-preview-bridge__actions {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-template-preview-bridge__copy h3,
.sw-template-preview-bridge__copy p {
  margin: 0;
}

.sw-template-preview-bridge__copy h3 {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-template-preview-bridge__copy p,
.sw-template-preview-bridge__meta span {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-template-preview-bridge__meta {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.sw-template-preview-bridge__meta span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-neutral-surface);
  font-weight: 750;
}

.sw-template-preview-bridge__actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.sw-template-preview-bridge__actions .sw-storefront-action:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.sw-template-builder-state {
  display: grid;
  gap: var(--sw-primitive-space-stack-lg);
  max-width: var(--sw-primitive-density-dialog-width);
  padding: var(--sw-primitive-space-state-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-danger-surface);
}

.sw-template-builder-state h2,
.sw-template-builder-state p {
  margin: 0;
}

.sw-template-builder-state h2 {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-page-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-template-builder-state p {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-body-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-template-builder-page-list {
  flex-direction: column;
}

.sw-template-builder-page-list__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-height: var(--sw-primitive-density-row-height);
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 750;
  text-decoration: none;
}

.sw-template-builder-page-list__item[data-active="true"],
.sw-template-builder-page-list__item:focus-visible,
.sw-template-builder-page-list__item:hover {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
  outline: none;
}

.sw-template-builder-inspector__group,
.sw-template-builder-inspector__guard {
  flex-direction: column;
  padding: var(--sw-primitive-space-panel-padding-compact);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-template-builder-inspector__control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
  min-height: var(--sw-primitive-density-row-height);
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
}

.sw-template-builder-inspector__control small,
.sw-template-builder-inspector__empty,
.sw-template-builder-inspector__guard span {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-template-builder-inspector__control small {
  grid-column: 1 / -1;
}

.sw-composition-preview {
  min-width: 0;
  border-radius: var(--sw-primitive-radius-panel);
}

.sw-composition-preview__surface {
  position: relative;
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-composition-preview__header {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.sw-composition-preview__main {
  padding: var(--sw-primitive-space-panel-padding);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-composition-preview__main[data-page-id="product-page"] {
  grid-template-columns: minmax(0, 1.16fr) minmax(calc(var(--sw-primitive-density-inspector-width) * 0.72), 0.84fr);
  align-items: start;
}

.sw-composition-preview__main[data-page-id="collection-page"] {
  grid-template-columns: minmax(0, 1fr);
}

.sw-composition-preview__section-frame {
  position: relative;
  min-width: 0;
  display: grid;
}

.sw-composition-preview__section-frame[data-active="true"] {
  z-index: 1;
}

.sw-composition-preview__section {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-panel-padding);
  padding-bottom: calc(var(--sw-primitive-space-panel-padding) + var(--sw-primitive-density-control-height));
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
}

.sw-composition-preview__section-actions {
  position: absolute;
  z-index: 12;
  right: 0.85rem;
  bottom: 0.85rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  align-items: center;
  justify-content: flex-end;
  padding: 0.35rem;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(10px);
}

.sw-composition-preview__section-actions .sw-storefront-action {
  min-height: 2.1rem;
  padding: 0.42rem 0.75rem;
  font-size: 0.74rem;
}

.sw-composition-preview__section[data-active="true"] {
  border-color: var(--sw-primitive-color-accent);
  box-shadow: var(--sw-primitive-shadow-focus);
}

.sw-composition-preview__section p,
.sw-composition-preview__section h3,
.sw-composition-preview__section span {
  margin: 0;
}

.sw-composition-preview__section p {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-composition-preview__section h3 {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-composition-preview__hero {
  grid-template-columns: minmax(0, 1fr) minmax(calc(var(--sw-primitive-density-inspector-width) * 0.75), 0.9fr);
  align-items: stretch;
}

.sw-composition-preview__hero .sw-composition-preview__facts {
  grid-column: 1 / -1;
}

.sw-composition-preview__hero-media,
.sw-composition-preview__media-main,
.sw-composition-preview__grid i,
.sw-composition-preview__media-strip span {
  display: grid;
  min-height: calc(var(--sw-primitive-density-row-height) * 3);
  place-items: center;
  border-radius: var(--sw-primitive-radius-panel);
  background: linear-gradient(135deg, var(--sw-primitive-color-panel-muted), var(--sw-primitive-color-accent-surface));
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

/* Content is painted by Shared Renderer; this frame only hosts editor controls. */
.sw-composition-preview__hero--shared {
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
  min-height: 0;
  overflow: hidden;
}

.sw-composition-preview__media-main img,
.sw-composition-preview__grid img,
.sw-composition-preview__media-strip img {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.sw-composition-preview__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-composition-preview__grid article {
  min-width: 0;
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  align-content: start;
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-composition-preview__grid b {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-composition-preview__grid small {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-composition-preview__grid article > img,
.sw-composition-preview__grid article > i {
  width: 100%;
  aspect-ratio: 1;
}

.sw-composition-preview__product-gallery {
  grid-template-columns: minmax(0, 1fr);
}

.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__section-frame[data-section-kind="product_gallery"] {
  grid-row: span 2;
}

.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__section-frame[data-section-kind="collection_grid"],
.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__section-frame[data-section-kind="proof_strip"] {
  grid-column: 1 / -1;
}

.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__product-gallery {
  grid-row: span 2;
}

.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__collection,
.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__section[data-section-kind="proof_strip"] {
  grid-column: 1 / -1;
}

.sw-composition-preview__media-main {
  min-height: calc(var(--sw-primitive-density-row-height) * 5);
}

.sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__media-main {
  min-height: calc(var(--sw-primitive-density-row-height) * 7);
}

.sw-composition-preview__media-strip span {
  flex: 1 1 0;
  min-height: calc(var(--sw-primitive-density-row-height) * 1.35);
}

.sw-composition-preview__media-strip em {
  align-self: end;
  justify-self: stretch;
  color: var(--sw-primitive-color-text);
  font-style: normal;
  overflow-wrap: anywhere;
  text-align: center;
}

.sw-composition-preview__product-summary,
.sw-composition-preview__purchase {
  align-content: start;
}

.sw-composition-preview__summary-stack {
  flex-wrap: wrap;
}

.sw-composition-preview__category-entry {
  gap: var(--sw-primitive-space-stack-lg);
}

.sw-composition-preview__category-entry-head {
  display: grid;
  gap: var(--sw-primitive-space-stack-xs);
}

.sw-composition-preview__category-entry-head p,
.sw-composition-preview__category-entry-head h3,
.sw-composition-preview__category-entry-head span {
  margin: 0;
}

.sw-composition-preview__category-entry-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
}

.sw-composition-preview__category-entry[data-columns="2"] .sw-composition-preview__category-entry-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-composition-preview__category-entry[data-columns="4"] .sw-composition-preview__category-entry-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sw-composition-preview__category-entry[data-spacing="dense"] .sw-composition-preview__category-entry-grid {
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-composition-preview__category-entry-grid a {
  position: relative;
  min-height: 10rem;
  display: grid;
  align-content: end;
  gap: var(--sw-primitive-space-stack-xs);
  overflow: hidden;
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel-soft);
  color: var(--sw-primitive-color-text);
  text-decoration: none;
}

.sw-composition-preview__category-entry-grid a[data-has-image="true"] {
  color: #ffffff;
  text-shadow: 0 1px 10px rgba(15, 23, 42, 0.75);
}

.sw-composition-preview__category-entry-grid a[data-has-image="true"]::after {
  position: absolute;
  inset: 0;
  content: '';
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.05), rgba(15, 23, 42, 0.78));
}

.sw-composition-preview__category-entry-grid img,
.sw-composition-preview__category-entry-grid i {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-composition-preview__category-entry-grid i {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.12), rgba(15, 23, 42, 0.06));
}

.sw-composition-preview__category-entry-grid strong,
.sw-composition-preview__category-entry-grid span {
  position: relative;
  z-index: 1;
}

.sw-composition-preview__category-entry-grid strong {
  font-size: clamp(1rem, 2vw, 1.35rem);
  font-weight: 950;
}

.sw-composition-preview__category-entry-grid span {
  font-size: var(--sw-primitive-type-control-size);
  line-height: 1.45;
}

.sw-composition-preview__featured-collection {
  gap: var(--sw-primitive-space-stack-lg);
  background: #fff;
  color: #111827;
}

.sw-composition-preview__featured-collection-head {
  display: flex;
  gap: var(--sw-primitive-space-stack-md);
  align-items: end;
  justify-content: space-between;
}

.sw-composition-preview__featured-collection-head div {
  display: grid;
  gap: var(--sw-primitive-space-stack-xs);
}

.sw-composition-preview__featured-collection-head p,
.sw-composition-preview__featured-collection-head h3,
.sw-composition-preview__featured-collection-head span {
  margin: 0;
}

.sw-composition-preview__featured-collection-head h3 {
  color: #111827;
  font-size: clamp(1.3rem, 2.4vw, 2rem);
  font-weight: 950;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.sw-composition-preview__featured-collection-head p,
.sw-composition-preview__featured-collection-head a {
  color: #111827;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  text-transform: uppercase;
}

.sw-composition-preview__featured-collection-head span {
  color: #64748b;
  font-size: var(--sw-primitive-type-control-size);
}

.sw-composition-preview__featured-collection-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
}

.sw-composition-preview__featured-collection[data-columns="3"] .sw-composition-preview__featured-collection-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-composition-preview__featured-collection-grid > a {
  min-width: 0;
  display: grid;
  gap: var(--sw-primitive-space-stack-xs);
  color: #111827;
  text-decoration: none;
}

.sw-composition-preview__featured-collection-media {
  position: relative;
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  background: #f4f5f7;
}

.sw-composition-preview__featured-collection[data-card-ratio="4:5"] .sw-composition-preview__featured-collection-media {
  aspect-ratio: 4 / 5;
}

.sw-composition-preview__featured-collection-media img,
.sw-composition-preview__featured-collection-media i {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-composition-preview__featured-collection-media i {
  background: linear-gradient(135deg, #f8fafc, #e5e7eb);
}

.sw-composition-preview__featured-collection-media em,
.sw-composition-preview__featured-collection-media small {
  position: absolute;
  display: inline-flex;
  align-items: center;
  font-size: var(--sw-primitive-type-caption-size);
  font-style: normal;
  font-weight: 900;
}

.sw-composition-preview__featured-collection-media em {
  right: 0.7rem;
  bottom: 0.7rem;
  min-height: 2rem;
  padding: 0 0.85rem;
  border-radius: 999px;
  background: rgba(17, 24, 39, 0.88);
  color: #fff;
}

.sw-composition-preview__featured-collection-media small {
  top: 0.7rem;
  left: 0.7rem;
  min-height: 1.8rem;
  padding: 0 0.65rem;
  background: #fff;
  color: #111827;
}

.sw-composition-preview__featured-collection-grid strong,
.sw-composition-preview__featured-collection-grid b {
  color: #111827;
  font-weight: 900;
}

.sw-composition-preview__featured-collection-grid span,
.sw-composition-preview__featured-collection-grid s {
  color: #64748b;
}

.sw-composition-preview__featured-collection-grid mark {
  justify-self: start;
  padding: 0.18rem 0.55rem;
  background: #111827;
  color: #fff;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 900;
  text-transform: uppercase;
}

.sw-composition-preview__brand-story {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  align-items: stretch;
  overflow: hidden;
  padding: clamp(1.2rem, 3vw, 2.6rem);
  border: 0;
  border-radius: 0;
  background: #05070b;
  color: #ffffff;
}

.sw-composition-preview__brand-story[data-media-side="left"] .sw-composition-preview__brand-story-media {
  order: -1;
}

.sw-composition-preview__brand-story[data-tone="paper-minimal"] {
  border: var(--sw-primitive-border-subtle);
  background: #ffffff;
  color: #111827;
}

.sw-composition-preview__brand-story-copy {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
  align-content: center;
}

.sw-composition-preview__brand-story-copy p,
.sw-composition-preview__brand-story-copy h3,
.sw-composition-preview__brand-story-copy span {
  margin: 0;
}

.sw-composition-preview__brand-story-copy p {
  color: rgba(255, 255, 255, 0.62);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.sw-composition-preview__brand-story[data-tone="paper-minimal"] .sw-composition-preview__brand-story-copy p,
.sw-composition-preview__brand-story[data-tone="paper-minimal"] .sw-composition-preview__brand-story-copy span,
.sw-composition-preview__brand-story[data-tone="paper-minimal"] .sw-composition-preview__brand-story-highlights small {
  color: #64748b;
}

.sw-composition-preview__brand-story-copy h3 {
  max-width: 11ch;
  color: inherit;
  font-size: clamp(2rem, 4.4vw, 5rem);
  font-weight: 950;
  letter-spacing: -0.07em;
  line-height: 0.92;
}

.sw-composition-preview__brand-story-copy span {
  max-width: 34rem;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(0.95rem, 1.2vw, 1.12rem);
  line-height: 1.75;
}

.sw-composition-preview__brand-story-copy a {
  justify-self: start;
  display: inline-flex;
  min-height: 2.6rem;
  align-items: center;
  justify-content: center;
  padding: 0 1.05rem;
  border-radius: 999px;
  background: #ffffff;
  color: #05070b;
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
  text-decoration: none;
  text-transform: uppercase;
}

.sw-composition-preview__brand-story[data-tone="paper-minimal"] .sw-composition-preview__brand-story-copy a {
  background: #111827;
  color: #ffffff;
}

.sw-composition-preview__brand-story-highlights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
  padding-top: var(--sw-primitive-space-stack-sm);
}

.sw-composition-preview__brand-story-highlights article {
  display: grid;
  gap: 0.35rem;
  padding-top: var(--sw-primitive-space-stack-sm);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.sw-composition-preview__brand-story[data-tone="paper-minimal"] .sw-composition-preview__brand-story-highlights article {
  border-top-color: rgba(15, 23, 42, 0.14);
}

.sw-composition-preview__brand-story-highlights strong {
  color: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 950;
}

.sw-composition-preview__brand-story-highlights small {
  color: rgba(255, 255, 255, 0.7);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.45;
}

.sw-composition-preview__brand-story-media {
  min-height: 28rem;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: radial-gradient(circle at 50% 42%, rgba(148, 163, 184, 0.35), transparent 30%), #111827;
}

.sw-composition-preview__brand-story-media img,
.sw-composition-preview__brand-story-media i {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-composition-preview__brand-story-media i {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(148, 163, 184, 0.28));
}

.sw-composition-preview__customer-trust {
  display: grid;
  gap: var(--sw-primitive-space-stack-lg);
  padding: clamp(1.2rem, 3vw, 2.4rem);
  border: 0;
  border-radius: 0;
  background: #05070b;
  color: #ffffff;
}

.sw-composition-preview__customer-trust[data-tone="paper-trust"] {
  border: var(--sw-primitive-border-subtle);
  background: #ffffff;
  color: #111827;
}

.sw-composition-preview__customer-trust-head {
  display: grid;
  max-width: 48rem;
  gap: var(--sw-primitive-space-stack-xs);
}

.sw-composition-preview__customer-trust-head p,
.sw-composition-preview__customer-trust-head h3,
.sw-composition-preview__customer-trust-head span {
  margin: 0;
}

.sw-composition-preview__customer-trust-head p {
  color: rgba(255, 255, 255, 0.62);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.sw-composition-preview__customer-trust[data-tone="paper-trust"] .sw-composition-preview__customer-trust-head p,
.sw-composition-preview__customer-trust[data-tone="paper-trust"] .sw-composition-preview__customer-trust-head span,
.sw-composition-preview__customer-trust[data-tone="paper-trust"] .sw-composition-preview__customer-trust-grid small {
  color: #64748b;
}

.sw-composition-preview__customer-trust-head h3 {
  color: inherit;
  font-size: clamp(1.8rem, 3.4vw, 4rem);
  font-weight: 950;
  letter-spacing: -0.06em;
  line-height: 0.98;
}

.sw-composition-preview__customer-trust-head span {
  color: rgba(255, 255, 255, 0.76);
  font-size: var(--sw-primitive-type-control-size);
  line-height: 1.7;
}

.sw-composition-preview__customer-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
}

.sw-composition-preview__customer-trust[data-columns="2"] .sw-composition-preview__customer-trust-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-composition-preview__customer-trust-grid article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  align-content: start;
  min-height: 15rem;
  padding: clamp(1rem, 2vw, 1.5rem);
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.06);
}

.sw-composition-preview__customer-trust[data-tone="paper-trust"] .sw-composition-preview__customer-trust-grid article {
  border-color: rgba(15, 23, 42, 0.12);
  background: #f8fafc;
}

.sw-composition-preview__customer-trust-grid b {
  justify-self: start;
  color: inherit;
  font-size: clamp(1.4rem, 2vw, 2.25rem);
  font-weight: 950;
  letter-spacing: -0.04em;
}

.sw-composition-preview__customer-trust-grid blockquote {
  margin: 0;
  color: inherit;
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  font-weight: 800;
  line-height: 1.55;
}

.sw-composition-preview__customer-trust-grid strong {
  margin-top: auto;
  color: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 950;
}

.sw-composition-preview__customer-trust-grid small {
  color: rgba(255, 255, 255, 0.62);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.45;
}

.sw-composition-preview__newsletter-footer {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(12rem, 0.6fr);
  gap: clamp(1rem, 3vw, 2.4rem);
  align-items: end;
  padding: clamp(1.2rem, 3vw, 2.8rem);
  border: 0;
  border-radius: 0;
  background: #05070b;
  color: #ffffff;
}

.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] {
  border: var(--sw-primitive-border-subtle);
  background: #ffffff;
  color: #111827;
}

.sw-composition-preview__newsletter-footer[data-layout="footer-compact"] {
  grid-template-columns: minmax(0, 1fr);
}

.sw-composition-preview__newsletter-copy {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  align-content: start;
}

.sw-composition-preview__newsletter-copy p,
.sw-composition-preview__newsletter-copy h3,
.sw-composition-preview__newsletter-copy span,
.sw-composition-preview__newsletter-copy small {
  margin: 0;
}

.sw-composition-preview__newsletter-copy p {
  color: rgba(255, 255, 255, 0.62);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 950;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] .sw-composition-preview__newsletter-copy p,
.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] .sw-composition-preview__newsletter-copy span,
.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] .sw-composition-preview__newsletter-copy small {
  color: #64748b;
}

.sw-composition-preview__newsletter-copy h3 {
  max-width: 13ch;
  color: inherit;
  font-size: clamp(2rem, 4vw, 4.7rem);
  font-weight: 950;
  letter-spacing: -0.07em;
  line-height: 0.94;
}

.sw-composition-preview__newsletter-copy span {
  max-width: 38rem;
  color: rgba(255, 255, 255, 0.78);
  font-size: var(--sw-primitive-type-control-size);
  line-height: 1.7;
}

.sw-composition-preview__newsletter-form {
  display: grid;
  grid-template-columns: minmax(12rem, 1fr) auto;
  gap: 0.55rem;
  max-width: 32rem;
  padding-top: var(--sw-primitive-space-stack-sm);
}

.sw-composition-preview__newsletter-form input,
.sw-composition-preview__newsletter-form button {
  min-height: 2.75rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 850;
}

.sw-composition-preview__newsletter-form input {
  padding: 0 1rem;
  background: rgba(255, 255, 255, 0.08);
  color: inherit;
}

.sw-composition-preview__newsletter-form button {
  padding: 0 1.15rem;
  background: #ffffff;
  color: #05070b;
}

.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] .sw-composition-preview__newsletter-form input {
  border-color: rgba(15, 23, 42, 0.16);
  background: #f8fafc;
}

.sw-composition-preview__newsletter-footer[data-tone="paper-footer"] .sw-composition-preview__newsletter-form button {
  background: #111827;
  color: #ffffff;
}

.sw-composition-preview__newsletter-copy small {
  max-width: 32rem;
  color: rgba(255, 255, 255, 0.58);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: 1.55;
}

.sw-composition-preview__newsletter-links {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  justify-items: end;
}

.sw-composition-preview__newsletter-footer[data-layout="footer-compact"] .sw-composition-preview__newsletter-links {
  justify-items: start;
}

.sw-composition-preview__newsletter-links a {
  color: inherit;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
}

.sw-composition-preview__newsletter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
  align-items: center;
}

.sw-composition-preview__newsletter-actions button {
  min-height: var(--sw-primitive-density-control-height);
  padding-inline: var(--sw-primitive-space-control-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-primitive-color-warning);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 750;
}

.sw-composition-preview__newsletter-actions span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-composition-preview__summary-stack span,
.sw-composition-preview__facts span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-composition-preview__purchase-controls,
.sw-composition-preview__purchase label {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-composition-preview__purchase-controls {
  align-items: start;
}

.sw-composition-preview__purchase select,
.sw-composition-preview__purchase input,
.sw-composition-preview__purchase button {
  min-height: var(--sw-primitive-density-control-height);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 750;
}

.sw-composition-preview__purchase select,
.sw-composition-preview__purchase input {
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-composition-preview__purchase button {
  justify-self: start;
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-composition-preview__purchase button:disabled,
.sw-composition-preview__purchase input:disabled {
  border-color: var(--sw-primitive-color-danger);
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-primitive-color-danger);
}

.sw-composition-preview__facts {
  flex-wrap: wrap;
}

.sw-composition-preview__footer {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-radius: 0;
}

.sw-composition-preview[data-preview-mode="mobile"] {
  max-width: min(100%, calc(var(--sw-primitive-density-inspector-width) + var(--sw-primitive-space-panel-padding)));
}

.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__header,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__hero,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__grid,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__category-entry-grid,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__featured-collection-grid,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__brand-story,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__brand-story-highlights,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__customer-trust-grid,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__newsletter-footer,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__newsletter-form,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__main[data-page-id="collection-page"],
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__main[data-page-id="product-page"],
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__footer {
  grid-template-columns: 1fr;
}

.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__product-gallery,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__collection,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__main[data-page-id="product-page"] .sw-composition-preview__section[data-section-kind="proof_strip"] {
  grid-column: auto;
  grid-row: auto;
}

.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__header nav,
.sw-composition-preview[data-preview-mode="mobile"] .sw-composition-preview__header div {
  justify-content: flex-start;
}

.sw-shell-editor {
  min-width: 0;
}

.sw-shell-editor__layout {
  align-items: start;
}

.sw-shell-editor__structure,
.sw-shell-editor__canvas,
.sw-shell-editor__inspector {
  min-width: 0;
}

.sw-shell-editor__status {
  margin-block: var(--sw-primitive-space-stack-md);
}

.sw-shell-preview {
  width: 100%;
}

.sw-shell-preview__surface {
  min-width: 0;
}

.sw-shell-preview__announcement,
.sw-shell-preview__header,
.sw-shell-preview__footer,
.sw-shell-preview__header nav,
.sw-shell-preview__header button {
  transition:
    border-color var(--sw-primitive-motion-fast),
    box-shadow var(--sw-primitive-motion-fast),
    background var(--sw-primitive-motion-fast);
}

.sw-shell-preview__announcement[data-active="true"],
.sw-shell-preview__header[data-active="true"],
.sw-shell-preview__footer[data-active="true"],
.sw-shell-preview__header nav[data-active="true"],
.sw-shell-preview__header button[data-active="true"] {
  outline: var(--sw-primitive-border-interactive);
  outline-offset: calc(var(--sw-primitive-space-stack-sm) / 2);
  box-shadow: var(--sw-primitive-shadow-focus);
}

.sw-shell-preview__header nav {
  min-width: 0;
}

.sw-shell-preview__header div {
  align-items: center;
}

.sw-shell-preview__header button {
  min-height: var(--sw-primitive-density-badge-height);
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-primitive-color-danger);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-shell-preview__header button:disabled {
  cursor: not-allowed;
}

.sw-shell-preview__main {
  padding: var(--sw-primitive-space-panel-padding);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-shell-preview__main section {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-height: calc(var(--sw-primitive-density-row-height) * 4);
  align-content: center;
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
}

.sw-shell-preview__main p,
.sw-shell-preview__main h3,
.sw-shell-preview__main span {
  margin: 0;
}

.sw-shell-preview__main p {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-shell-preview__main h3 {
  max-width: var(--sw-primitive-density-dialog-width);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-shell-preview__main span {
  color: var(--sw-primitive-color-warning);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-shell-editor .sw-template-builder-inspector__field {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-shell-editor .sw-template-builder-inspector__field button:disabled {
  cursor: not-allowed;
}

.sw-shell-editor .sw-storefront-action:disabled {
  cursor: not-allowed;
  color: var(--sw-primitive-color-disabled);
}

.sw-shell-preview[data-preview-mode="mobile"] {
  max-width: min(100%, calc(var(--sw-primitive-density-inspector-width) + var(--sw-primitive-space-panel-padding)));
}

.sw-shell-preview[data-preview-mode="mobile"] .sw-shell-preview__header,
.sw-shell-preview[data-preview-mode="mobile"] .sw-shell-preview__footer {
  grid-template-columns: 1fr;
}

.sw-shell-preview[data-preview-mode="mobile"] .sw-shell-preview__header nav,
.sw-shell-preview[data-preview-mode="mobile"] .sw-shell-preview__header div {
  justify-content: flex-start;
}

.sw-navigation-menu-builder {
  min-width: 0;
}

.sw-navigation-menu-builder__layout {
  grid-template-columns:
    minmax(calc(var(--sw-primitive-density-row-height) * 4), 0.86fr)
    minmax(0, 1.72fr)
    minmax(calc(var(--sw-primitive-density-inspector-width) * 0.86), 0.98fr);
  align-items: start;
}

.sw-navigation-menu-builder__tree,
.sw-navigation-menu-builder__canvas,
.sw-navigation-menu-builder__inspector,
.sw-navigation-menu-builder__ai-panel,
.sw-navigation-menu-builder__state-ledger,
.sw-shell-global-settings {
  min-width: 0;
}

.sw-navigation-menu-builder__tree,
.sw-navigation-menu-builder__inspector,
.sw-navigation-menu-builder__ai-panel,
.sw-navigation-menu-builder__state-ledger,
.sw-navigation-menu-builder__preview,
.sw-shell-global-settings {
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-raised);
}

.sw-navigation-menu-builder__canvas,
.sw-navigation-menu-builder__panel-head,
.sw-navigation-menu-builder__tree-actions,
.sw-navigation-menu-builder__tree-list,
.sw-navigation-menu-builder__tree-group,
.sw-navigation-menu-builder__tree-children,
.sw-navigation-menu-builder__blocked-actions,
.sw-navigation-menu-builder__empty,
.sw-navigation-menu-builder__proposal-summary,
.sw-navigation-menu-builder__proposal-diff,
.sw-navigation-menu-builder__proposal-edit,
.sw-navigation-menu-builder__preview,
.sw-navigation-menu-builder__preview-surface,
.sw-shell-global-settings,
.sw-shell-global-settings__rows,
.sw-shell-global-settings__detail,
.sw-navigation-menu-builder__desktop-preview,
.sw-navigation-menu-builder__mobile-preview,
.sw-navigation-menu-builder__accordion,
.sw-navigation-menu-builder__dropdown,
.sw-navigation-menu-builder__order-controls,
.sw-navigation-menu-builder__visibility {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-navigation-menu-builder__canvas {
  gap: var(--sw-primitive-space-grid-gap);
}

.sw-navigation-menu-builder__panel-head h3,
.sw-navigation-menu-builder__panel-head p,
.sw-navigation-menu-builder__panel-head span,
.sw-navigation-menu-builder__dropdown h3 {
  margin: 0;
}

.sw-navigation-menu-builder__panel-head h3,
.sw-navigation-menu-builder__dropdown h3 {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-section-title-size);
  line-height: var(--sw-primitive-type-line-tight);
}

.sw-navigation-menu-builder__panel-head span,
.sw-navigation-menu-builder__proposal-summary span,
.sw-navigation-menu-builder__proposal-diff span,
.sw-navigation-menu-builder__proposal-edit small,
.sw-navigation-menu-builder__dropdown span,
.sw-navigation-menu-builder__dropdown small,
.sw-navigation-menu-builder__preview-body span,
.sw-navigation-menu-builder__mobile-preview span {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-navigation-menu-builder__tree-list {
  gap: var(--sw-primitive-space-stack-md);
}

.sw-navigation-menu-builder__tree-group {
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-navigation-menu-builder__tree button,
.sw-navigation-menu-builder__tree-actions button,
.sw-navigation-menu-builder__empty button,
.sw-navigation-menu-builder__blocked-actions button,
.sw-shell-global-settings__rows button,
.sw-navigation-menu-builder__order-controls button,
.sw-navigation-menu-builder__storefront-header nav button,
.sw-navigation-menu-builder__accordion button {
  min-width: 0;
  min-height: var(--sw-primitive-density-control-height);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 800;
}

.sw-navigation-menu-builder__tree button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-row-padding);
  text-align: start;
}

.sw-shell-global-settings {
  align-content: start;
}

.sw-shell-global-settings__rows {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-shell-global-settings__rows button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-row-padding);
  text-align: start;
}

.sw-shell-global-settings__rows button[data-active="true"],
.sw-shell-global-settings__rows button:hover,
.sw-shell-global-settings__rows button:focus-visible {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
  outline: none;
}

.sw-shell-global-settings__rows button[data-blocked="true"] {
  opacity: var(--sw-primitive-opacity-disabled);
}

.sw-shell-global-settings__detail {
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-shell-global-settings__toggle {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 800;
}

.sw-shell-global-settings__toggle small {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 750;
}

.sw-shell-global-settings__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-md);
  padding-block: var(--sw-primitive-space-stack-md);
}

.sw-shell-global-settings__fields > label,
.sw-shell-global-settings__fields fieldset,
.sw-shell-global-settings__fields fieldset label {
  min-width: 0;
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-shell-global-settings__fields fieldset {
  margin: 0;
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
}

.sw-shell-global-settings__fields legend,
.sw-shell-global-settings__fields span {
  color: var(--sw-primitive-color-muted);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 850;
}

.sw-shell-global-settings__fields :is(input, textarea).sw-input {
  width: 100%;
  min-width: 0;
}

.sw-shell-global-settings__fields textarea.sw-input {
  min-height: calc(var(--sw-admin-shell-control) * 1.6);
  resize: vertical;
}

.sw-navigation-menu-builder__tree-actions button,
.sw-navigation-menu-builder__empty button,
.sw-navigation-menu-builder__inline-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-navigation-menu-builder__tree button[data-active="true"],
.sw-navigation-menu-builder__tree button:hover,
.sw-navigation-menu-builder__tree button:focus-visible,
.sw-navigation-menu-builder__tree-actions button:hover,
.sw-navigation-menu-builder__tree-actions button:focus-visible,
.sw-navigation-menu-builder__empty button:hover,
.sw-navigation-menu-builder__empty button:focus-visible,
.sw-navigation-menu-builder__storefront-header nav button[data-open="true"],
.sw-navigation-menu-builder__accordion section[data-expanded="true"] > button {
  border-color: var(--sw-primitive-color-accent);
  background: var(--sw-primitive-color-accent-surface);
  color: var(--sw-primitive-color-accent);
  outline: none;
}

.sw-navigation-menu-builder__tree-children {
  padding-inline-start: var(--sw-primitive-space-stack-md);
}

.sw-navigation-menu-builder__tree-children button {
  grid-template-columns: minmax(0, 1fr);
  min-height: var(--sw-primitive-density-row-height);
}

.sw-navigation-menu-builder__order-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-navigation-menu-builder__order-controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-navigation-menu-builder__tree-children button[data-visible="false"],
.sw-navigation-menu-builder__dropdown-grid article[data-visible="false"],
.sw-navigation-menu-builder__accordion span[data-visible="false"] {
  opacity: var(--sw-primitive-opacity-disabled);
}

.sw-navigation-menu-builder__empty {
  justify-items: start;
  padding: var(--sw-primitive-space-panel-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-neutral-surface);
  color: var(--sw-primitive-color-muted);
}

.sw-navigation-menu-builder__empty strong {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-navigation-menu-builder__blocked-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-navigation-menu-builder__blocked-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-navigation-menu-builder__blocked-actions button:disabled,
.sw-navigation-menu-builder__toolbar .sw-storefront-action:disabled,
.sw-navigation-menu-builder__state-ledger .sw-storefront-action:disabled {
  cursor: not-allowed;
  opacity: var(--sw-primitive-opacity-disabled);
}

.sw-navigation-menu-builder__preview {
  overflow: hidden;
}

.sw-navigation-menu-builder__preview[data-preview-mode="mobile"] {
  max-width: min(100%, calc(var(--sw-primitive-density-inspector-width) + var(--sw-primitive-space-panel-padding)));
  margin-inline: auto;
}

.sw-navigation-menu-builder__preview-surface {
  margin-top: var(--sw-primitive-space-stack-md);
  overflow: hidden;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-navigation-menu-builder__storefront-header,
.sw-navigation-menu-builder__mobile-preview header {
  display: grid;
  grid-template-columns: minmax(0, 0.58fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--sw-primitive-space-stack-md);
  padding: var(--sw-primitive-space-panel-padding);
  border-bottom: var(--sw-primitive-border-subtle);
  background: var(--sw-primitive-color-panel);
}

.sw-navigation-menu-builder__storefront-header strong,
.sw-navigation-menu-builder__mobile-preview strong,
.sw-navigation-menu-builder__dropdown strong {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 900;
}

.sw-navigation-menu-builder__storefront-header nav {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-primitive-space-stack-sm);
  justify-content: flex-end;
}

.sw-navigation-menu-builder__storefront-header nav button {
  display: inline-flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-navigation-menu-builder__storefront-header nav svg,
.sw-navigation-menu-builder__accordion svg,
.sw-navigation-menu-builder__visibility svg {
  flex: none;
}

.sw-navigation-menu-builder__dropdown {
  grid-template-columns: minmax(0, 0.48fr) minmax(0, 1fr);
  padding: var(--sw-primitive-space-panel-padding);
}

.sw-navigation-menu-builder__dropdown[data-presentation="mega"] {
  grid-template-columns: minmax(0, 0.36fr) minmax(0, 1fr);
}

.sw-navigation-menu-builder__dropdown[data-presentation="dropdown"] .sw-navigation-menu-builder__dropdown-grid {
  grid-template-columns: minmax(0, 1fr);
}

.sw-navigation-menu-builder__dropdown-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-navigation-menu-builder__dropdown-grid article {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  align-content: start;
  min-width: 0;
  min-height: calc(var(--sw-primitive-density-row-height) * 2);
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
}

.sw-navigation-menu-builder__preview-body,
.sw-navigation-menu-builder__state-ledger {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-panel-padding);
}

.sw-navigation-menu-builder__preview-surface[data-animation="reduced_motion"] {
  scroll-behavior: auto;
}

.sw-navigation-menu-builder__preview-body span {
  min-height: var(--sw-primitive-density-badge-height);
  display: inline-flex;
  align-items: center;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-primitive-color-panel-muted);
  font-weight: 800;
}

.sw-navigation-menu-builder__mobile-preview header {
  grid-template-columns: minmax(0, 1fr) auto;
}

.sw-navigation-menu-builder__accordion {
  padding: var(--sw-primitive-space-panel-padding);
}

.sw-navigation-menu-builder__accordion section {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
}

.sw-navigation-menu-builder__accordion button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  padding-inline: var(--sw-primitive-space-control-padding);
  text-align: start;
}

.sw-navigation-menu-builder__accordion section > div {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  padding: var(--sw-primitive-space-row-padding);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-navigation-menu-builder__inspector {
  display: grid;
  gap: var(--sw-primitive-space-stack-md);
}

.sw-navigation-menu-builder__inspector .sw-template-builder-inspector__field {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-navigation-menu-builder__inspector input,
.sw-navigation-menu-builder__inspector select {
  width: 100%;
  min-height: var(--sw-primitive-density-control-height);
  padding-inline: var(--sw-primitive-space-control-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 750;
}

.sw-navigation-menu-builder__visibility {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-navigation-menu-builder__visibility label {
  display: flex;
  align-items: center;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-navigation-menu-builder__ai-panel {
  align-content: start;
}

.sw-navigation-menu-builder__proposal-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-navigation-menu-builder__proposal-summary span,
.sw-navigation-menu-builder__proposal-diff div,
.sw-navigation-menu-builder__proposal-edit {
  min-width: 0;
  padding: var(--sw-primitive-space-row-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-neutral-surface);
}

.sw-navigation-menu-builder__proposal-summary span {
  color: var(--sw-primitive-color-muted);
  font-weight: 800;
}

.sw-navigation-menu-builder__proposal-diff {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sw-navigation-menu-builder__proposal-diff div {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
}

.sw-navigation-menu-builder__proposal-diff strong,
.sw-navigation-menu-builder__proposal-edit label span {
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-body-size);
}

.sw-navigation-menu-builder__proposal-diff-row {
  align-content: start;
}

.sw-navigation-menu-builder__proposal-edit {
  grid-template-columns: minmax(0, 0.34fr) minmax(0, 1fr);
  align-items: center;
}

.sw-navigation-menu-builder__proposal-edit label {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-width: 0;
}

.sw-navigation-menu-builder__proposal-edit input {
  width: 100%;
  min-height: var(--sw-primitive-density-control-height);
  padding-inline: var(--sw-primitive-space-control-padding);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-control);
  background: var(--sw-primitive-color-panel);
  color: var(--sw-primitive-color-text);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 750;
}

@media (max-width: 1180px) {
  .sw-template-builder-action-toolbar {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-template-builder-action-toolbar .sw-storefront-action {
    width: 100%;
    justify-content: center;
  }

  .sw-template-builder-layout--advanced,
  .sw-template-builder-contract,
  .sw-template-preview-bridge,
  .sw-composition-preview__header,
  .sw-composition-preview__hero,
  .sw-composition-preview__grid,
  .sw-composition-preview__footer,
  .sw-navigation-menu-builder__layout,
  .sw-navigation-menu-builder__dropdown,
  .sw-navigation-menu-builder__dropdown[data-presentation="mega"],
  .sw-navigation-menu-builder__proposal-summary,
  .sw-navigation-menu-builder__proposal-diff,
  .sw-navigation-menu-builder__proposal-edit,
  .sw-shell-global-settings__rows,
  .sw-shell-global-settings__toggle,
  .sw-shell-preview__header,
  .sw-shell-preview__footer {
    grid-template-columns: 1fr;
  }

  .sw-navigation-menu-builder__storefront-header {
    grid-template-columns: 1fr;
  }

  .sw-navigation-menu-builder__storefront-header nav {
    justify-content: flex-start;
  }

  .sw-template-builder-page-list__item,
  .sw-template-builder-region button,
  .sw-template-builder-module-detail,
  .sw-template-builder-inspector__control,
  .sw-template-builder-contract__copy,
  .sw-template-builder-contract__facts,
  .sw-template-builder-contract__actions,
  .sw-template-preview-bridge__copy,
  .sw-template-preview-bridge__meta,
  .sw-template-preview-bridge__actions {
    min-width: 0;
  }

  .sw-template-builder-contract__copy,
  .sw-template-builder-contract__facts,
  .sw-template-builder-contract__actions,
  .sw-template-preview-bridge__copy,
  .sw-template-preview-bridge__meta,
  .sw-template-preview-bridge__actions {
    justify-content: flex-start;
  }

  .sw-template-builder-contract__actions .sw-storefront-action,
  .sw-template-preview-bridge__actions .sw-storefront-action {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 52em) {
  .sw-admin-shell:has(.sw-navigation-menu-builder) .sw-admin-shell__main {
    padding-block-end: calc(
      var(--sw-admin-shell-page-inset)
      + var(
        --sw-admin-mobile-chrome-height,
        calc(var(--sw-primitive-density-mobile-action-height) + env(safe-area-inset-bottom, 0px))
      )
    );
    scroll-padding-block-end: calc(
      var(--sw-admin-shell-page-inset)
      + var(
        --sw-admin-mobile-chrome-height,
        calc(var(--sw-primitive-density-mobile-action-height) + env(safe-area-inset-bottom, 0px))
      )
    );
  }

  .sw-navigation-menu-builder,
  .sw-navigation-menu-builder__tree,
  .sw-navigation-menu-builder__preview,
  .sw-navigation-menu-builder__inspector,
  .sw-navigation-menu-builder__ai-panel,
  .sw-navigation-menu-builder__state-ledger,
  .sw-shell-global-settings,
  .sw-navigation-menu-builder :is(button, input, select) {
    scroll-margin-block-end: calc(
      var(--sw-admin-shell-page-inset)
      + var(
        --sw-admin-mobile-chrome-height,
        calc(var(--sw-primitive-density-mobile-action-height) + env(safe-area-inset-bottom, 0px))
      )
    );
  }

  .sw-template-builder-inspector__save-footer {
    position: static;
    bottom: auto;
    z-index: auto;
  }

  .sw-navigation-menu-builder :is(button, input, select):focus-visible {
    outline: 0;
    box-shadow: var(--sw-primitive-shadow-focus);
  }
}

@media (max-width: 32.5em) {
  .sw-template-builder-action-toolbar {
    grid-template-columns: 1fr;
  }

  .sw-template-builder-status-strip span {
    width: 100%;
    justify-content: center;
  }

  .sw-template-builder-contract__facts span {
    width: 100%;
    justify-content: center;
  }

  .sw-navigation-menu-builder__blocked-actions,
  .sw-shell-global-settings__rows,
  .sw-navigation-menu-builder__order-controls {
    grid-template-columns: 1fr;
  }

  .sw-navigation-menu-builder__blocked-actions button,
  .sw-shell-global-settings__rows button,
  .sw-navigation-menu-builder__order-controls button {
    width: 100%;
    white-space: normal;
  }
}

.sw-visual-shell-header[data-header-tone="dark"] {
  background: #05070b;
  color: #ffffff;
}

.sw-visual-shell-header[data-header-tone="dark"] nav,
.sw-visual-shell-header[data-header-tone="dark"] div {
  color: rgba(255, 255, 255, 0.86);
}

.sw-visual-shell-header[data-header-tone="transparent"] {
  background: rgba(5, 7, 11, 0.28);
  color: #ffffff;
  backdrop-filter: blur(10px);
}

.sw-visual-shell-header[data-logo-position="center"] {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.sw-visual-shell-header[data-logo-position="center"] > b {
  justify-self: center;
  grid-column: 2;
  font-size: 1.65rem;
  letter-spacing: 0.02em;
}

.sw-visual-shell-header[data-logo-position="center"] > nav {
  grid-column: 1 / -1;
  justify-content: center;
}

.sw-visual-shell-header[data-navbar-position="same-row"] > nav {
  grid-column: auto;
}

.sw-visual-shell-header[data-header-mode="overlay"] {
  position: absolute;
  inset: 2.9rem 0 auto 0;
  z-index: 12;
}

.sw-visual-shell-header[data-header-mode="overlay"][data-header-state="top"] {
  border-bottom-color: transparent;
  background: rgba(5, 7, 11, 0.12);
  color: #ffffff;
}

.sw-visual-shell-header[data-header-mode="overlay"][data-header-state="top"] nav,
.sw-visual-shell-header[data-header-mode="overlay"][data-header-state="top"] div {
  color: rgba(255, 255, 255, 0.9);
}

.sw-visual-shell-header[data-header-mode="overlay"][data-announcement-enabled="false"] {
  inset: 0 0 auto 0;
}

.sw-composition-preview__surface:has(.sw-visual-shell-header[data-header-mode="overlay"]) .sw-visual-shell-announcement {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 13;
}

.sw-composition-preview__surface:has(.sw-visual-shell-header[data-header-mode="overlay"]) .sw-composition-preview__main {
  padding-top: 0;
}

.sw-visual-shell-header[data-header-state="scrolled"] {
  position: sticky;
  top: 0;
  z-index: 14;
}

.sw-template-builder-preview-workspace[data-mode="inline-settings"] .sw-visual-shell-header[data-header-mode="overlay"] {
  position: static;
  inset: auto;
}

.sw-template-builder-preview-workspace[data-mode="inline-settings"] .sw-visual-shell-announcement {
  position: static;
  inset: auto;
}

.sw-composition-preview__nav-item {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  cursor: pointer;
}

.sw-composition-preview__nav-dropdown {
  position: absolute;
  top: calc(100% + 0.45rem);
  left: 50%;
  z-index: 20;
  display: none;
  min-width: 12rem;
  transform: translateX(-50%);
  padding: 0.45rem;
  border: 1px solid #e5e7eb;
  background: #ffffff;
  color: #111827;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18);
}

.sw-composition-preview__nav-item:hover .sw-composition-preview__nav-dropdown,
.sw-composition-preview__nav-item:focus-within .sw-composition-preview__nav-dropdown {
  display: grid;
}

.sw-composition-preview__nav-dropdown span {
  display: block;
  padding: 0.55rem 0.75rem;
  color: #111827;
  white-space: nowrap;
}

.sw-template-builder-shell-editor-dock {
  display: grid;
  gap: var(--sw-admin-shell-gap);
  margin-top: var(--sw-admin-shell-gap);
  padding-top: var(--sw-admin-shell-gap);
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.sw-template-builder-preview-workspace[data-mode="inline-settings"] .sw-template-builder-shell-editor-dock {
  border-radius: var(--sw-admin-shell-radius);
  background: #f8fafc;
}

.sw-template-builder-header-editor {
  display: grid;
  gap: var(--sw-admin-shell-gap);
  padding: var(--sw-admin-shell-gap);
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: var(--sw-admin-shell-radius);
  background: #ffffff;
  color: #111827;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12);
}

.sw-template-builder-header-editor__head {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-admin-shell-gap);
  align-items: center;
  justify-content: space-between;
}

.sw-template-builder-header-editor__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.sw-template-builder-header-editor__tabs button {
  min-height: 2.1rem;
  padding: 0.35rem 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #111827;
  font-size: 0.76rem;
  font-weight: 900;
}

.sw-template-builder-header-editor__tabs button[data-active="true"] {
  border-color: #67e8f9;
  background: #ecfeff;
}

.sw-template-builder-header-editor__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.sw-template-builder-header-editor__grid label,
.sw-template-builder-header-editor__owner-card {
  display: grid;
  gap: 0.35rem;
  padding: 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.85rem;
  background: #f8fafc;
  font-size: 0.78rem;
  font-weight: 900;
}

.sw-template-builder-header-editor__grid input,
.sw-template-builder-header-editor__grid select {
  min-height: 2.35rem;
  padding: 0.45rem 0.6rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.7rem;
  background: #ffffff;
  font-size: 0.88rem;
  font-weight: 800;
}

.sw-template-builder-navbar-editor__head-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  justify-content: flex-end;
}

.sw-template-builder-navbar-editor__body--tree {
  grid-template-columns: minmax(22rem, 1.25fr) minmax(18rem, 0.75fr);
  align-items: start;
}

.sw-navbar-tree {
  display: grid;
  gap: 0.55rem;
  padding: 0.75rem;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  background: #ffffff;
}

.sw-navbar-tree__branch,
.sw-navbar-tree__children {
  display: grid;
  gap: 0.55rem;
}

.sw-navbar-tree__children {
  padding-left: calc((var(--nav-depth, 0) + 1) * 1rem + 0.25rem);
  border-left: 1px solid #e5e7eb;
}

.sw-navbar-tree__row {
  display: grid;
  grid-template-columns: 1.3rem 1.5rem 1.35rem minmax(0, 1fr) auto auto;
  gap: 0.55rem;
  align-items: center;
  min-height: 2.85rem;
  padding: 0.5rem 0.6rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.85rem;
  background: #ffffff;
  color: #111827;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
}

.sw-navbar-tree__row[data-active="true"] {
  border-color: #22d3ee;
  background: #ecfeff;
}

.sw-navbar-tree__row[data-drag-over="true"] {
  border-color: #f59e0b;
  box-shadow: inset 0 0 0 1px #f59e0b, 0 8px 22px rgba(245, 158, 11, 0.12);
}

.sw-navbar-tree__drag,
.sw-navbar-tree__expand,
.sw-navbar-tree__icon,
.sw-navbar-tree__actions button {
  display: inline-grid;
  place-items: center;
  width: 1.55rem;
  height: 1.55rem;
  border: 0;
  border-radius: 0.45rem;
  background: transparent;
  color: #64748b;
}

.sw-navbar-tree__expand:not(:disabled):hover,
.sw-navbar-tree__actions button:hover {
  background: #ecfeff;
  color: #0891b2;
}

.sw-navbar-tree__expand:disabled {
  opacity: 0.38;
}

.sw-navbar-tree__label {
  overflow: hidden;
  color: #111827;
  font-size: 0.88rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-navbar-tree__row small {
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 900;
}

.sw-navbar-tree__actions {
  display: inline-flex;
  gap: 0.25rem;
  align-items: center;
}

.sw-navbar-tree__actions svg,
.sw-navbar-tree__drag svg,
.sw-navbar-tree__expand svg {
  width: 0.9rem;
  height: 0.9rem;
}

.sw-navbar-tree__empty {
  min-height: 3rem;
  border: 1px dashed #cbd5e1;
  border-radius: 0.85rem;
  background: #f8fafc;
  color: #111827;
  font-weight: 900;
}

.sw-template-builder-navbar-editor__form-head {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0.25rem;
}

.sw-template-builder-navbar-editor__form select {
  min-height: 2.35rem;
  padding: 0.45rem 0.6rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.7rem;
  background: #ffffff;
  font-size: 0.88rem;
  font-weight: 800;
}

.sw-template-builder-navbar-editor__form p {
  margin: 0;
  color: #64748b;
  font-size: 0.76rem;
  line-height: 1.5;
}


.sw-template-builder-product-preview-gate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(9rem, 0.45fr) auto;
  gap: var(--sw-admin-shell-gap);
  align-items: end;
  padding: var(--sw-admin-shell-gap);
  border: 1px solid #e5e7eb;
  border-radius: var(--sw-admin-shell-radius);
  background: #ffffff;
}

.sw-template-builder-product-preview-gate > div,
.sw-template-builder-product-preview-gate label {
  display: grid;
  min-width: 0;
  gap: 0.3rem;
}

.sw-template-builder-product-preview-gate > div {
  grid-column: 1 / -1;
}

.sw-template-builder-product-preview-gate > div > .sw-primitive-badge {
  justify-self: start;
}

.sw-template-builder-product-preview-gate strong {
  color: #111827;
  font-size: 0.98rem;
}

.sw-template-builder-product-preview-gate span {
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
}

.sw-template-builder-product-preview-gate select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  font: inherit;
  text-overflow: ellipsis;
}

.sw-template-builder-product-preview-gate > button {
  align-self: end;
}

.sw-template-page-editor-shell[data-page-id="product-page"] .sw-template-builder-section-editor__head > button {
  min-width: 6rem;
  min-height: 44px;
  flex-shrink: 0;
  white-space: nowrap;
}
@media (max-width: 800px) {
  .sw-template-page-editor-shell[data-page-id="product-page"] .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field select,
  .sw-template-page-editor-shell[data-page-id="product-page"] .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field input:not([type="checkbox"]),
  .sw-template-page-editor-shell[data-page-id="product-page"] .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__toggle { min-height: 44px; }
  .sw-template-builder-product-preview-gate { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
  .sw-template-builder-product-preview-gate > div,
  .sw-template-builder-product-preview-gate label { min-width: 0; }
  .sw-template-builder-product-preview-gate select,
  .sw-template-builder-product-preview-gate > button { width: 100%; min-height: 44px; }
}

.sw-composition-preview__product-page-required,
.sw-composition-preview__product-related,
.sw-composition-preview__product-review-list {
  display: grid;
  gap: var(--sw-primitive-space-stack-sm);
  min-height: 14rem;
  padding: var(--sw-primitive-space-panel-padding);
  border: 1px dashed #cbd5e1;
  border-radius: var(--sw-primitive-radius-panel);
  background: #ffffff;
}

.sw-composition-preview__product-page-required p,
.sw-composition-preview__product-related p,
.sw-composition-preview__product-review-list p {
  margin: 0;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sw-composition-preview__product-page-required h3,
.sw-composition-preview__product-related h3,
.sw-composition-preview__product-review-list h3 {
  margin: 0;
  color: #111827;
}

.sw-composition-preview__product-page-required > span,
.sw-composition-preview__product-related > span,
.sw-composition-preview__product-review-list .sw-composition-preview__customer-trust-head > span {
  color: #64748b;
  line-height: 1.55;
}

.sw-template-builder-collection-discovery {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) repeat(5, minmax(7rem, 0.7fr)) auto;
  gap: 0.75rem;
  align-items: end;
  padding: var(--sw-admin-shell-gap);
  border: 1px solid #e5e7eb;
  border-radius: var(--sw-admin-shell-radius);
  background: #ffffff;
}

.sw-template-builder-collection-discovery > div,
.sw-template-builder-collection-discovery label {
  display: grid;
  gap: 0.3rem;
}

.sw-template-builder-collection-discovery strong {
  color: #111827;
  font-size: 0.95rem;
}

.sw-template-builder-collection-discovery span {
  color: #64748b;
  font-size: 0.75rem;
  line-height: 1.4;
}

.sw-template-builder-collection-discovery input,
.sw-template-builder-collection-discovery select {
  min-height: 2.35rem;
  padding: 0.45rem 0.6rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.7rem;
  background: #ffffff;
  color: #111827;
  font-weight: 800;
}

.sw-composition-preview__collection .sw-composition-preview__grid article button {
  min-height: 2rem;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #ffffff;
  color: #111827;
  font-size: 0.72rem;
  font-weight: 900;
}

.sw-template-builder-quick-view {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  justify-items: end;
  background: rgba(15, 23, 42, 0.34);
}

.sw-template-builder-quick-view__panel {
  display: grid;
  grid-template-columns: minmax(14rem, 0.86fr) minmax(18rem, 1fr);
  gap: 1rem;
  width: min(42rem, 94vw);
  height: 100%;
  padding: 1rem;
  background: #ffffff;
  box-shadow: -18px 0 50px rgba(15, 23, 42, 0.22);
}

.sw-template-builder-quick-view__panel > button {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  width: 2rem;
  height: 2rem;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #ffffff;
  color: #111827;
  font-size: 1.2rem;
  font-weight: 900;
}

.sw-template-builder-quick-view__media {
  display: grid;
  place-items: center;
  min-height: 18rem;
  border-radius: 1rem;
  background: #f8fafc;
  overflow: hidden;
}

.sw-template-builder-quick-view__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sw-template-builder-quick-view__copy {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  padding: 2.75rem 1rem 1rem;
}

.sw-template-builder-quick-view__copy h3 {
  margin: 0;
  color: #111827;
  font-size: 1.45rem;
}

.sw-template-builder-quick-view__copy p,
.sw-template-builder-quick-view__copy span {
  color: #64748b;
  line-height: 1.55;
}

.sw-template-builder-quick-view__copy a,
.sw-template-builder-quick-view__copy button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
  border-radius: 999px;
  font-weight: 900;
}

.sw-template-builder-quick-view__copy a {
  border: 1px solid #111827;
  color: #111827;
  text-decoration: none;
}

.sw-template-builder-quick-view__copy button {
  border: 1px solid #e2e8f0;
  background: #f1f5f9;
  color: #64748b;
}

@media (max-width: 900px) {
  .sw-template-builder-collection-discovery {
    grid-template-columns: 1fr;
  }

  .sw-template-builder-quick-view__panel {
    grid-template-columns: 1fr;
    width: 100vw;
  }
}

/* DIR174E — Precision EDC Showcase golden product-page preview */
.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell__surface {
  background: #f2eee5;
  color: #172027;
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header {
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
  min-height: 4.5rem;
  padding: 0.9rem clamp(1rem, 3vw, 2.75rem);
  border-bottom: 1px solid rgba(23, 32, 39, 0.12);
  background: rgba(244, 240, 231, 0.96);
  color: #172027;
  backdrop-filter: blur(18px);
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header > b {
  min-width: 0;
  overflow: hidden;
  color: #172027;
  font-size: clamp(0.82rem, 1.4vw, 1rem);
  font-weight: 950;
  letter-spacing: 0.12em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header nav {
  justify-content: flex-end;
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-main {
  display: block;
  padding: 0;
  background: #f2eee5;
}

.sw-precision-product-page {
  --precision-graphite: #172027;
  --precision-graphite-soft: #26343d;
  --precision-ivory: #f2eee5;
  --precision-paper: #faf8f2;
  --precision-steel: #42657a;
  --precision-steel-soft: #dce5e8;
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(19rem, 0.86fr);
  gap: 1px;
  min-width: 0;
  overflow: hidden;
  background: rgba(23, 32, 39, 0.12);
  color: var(--precision-graphite);
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-gallery {
  grid-column: 1;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-summary {
  grid-column: 2;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-story,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-specifications {
  grid-column: 1 / -1;
}

.sw-precision-product-page > .sw-composition-preview__section-frame > .sw-composition-preview__section {
  height: 100%;
  border: 0;
  border-radius: 0;
}

.sw-precision-product-page > .sw-composition-preview__section-frame[data-editing="true"] {
  min-height: 30rem;
  padding: clamp(1rem, 2vw, 1.5rem);
  background: var(--precision-paper);
}

/* Both retained and current shared-renderer canvases use the same editor chrome. */
.sw-precision-product-page .sw-composition-preview__section-actions .sw-storefront-action,
.sw-product-template-canvas .sw-composition-preview__section-actions .sw-storefront-action {
  min-width: 2.75rem;
  min-height: 2.75rem;
}

.sw-precision-product-page__state {
  display: grid;
  align-content: center;
  justify-items: start;
  min-height: clamp(24rem, 58vw, 40rem);
  padding: clamp(2rem, 7vw, 6rem);
  background:
    radial-gradient(circle at 70% 35%, rgba(66, 101, 122, 0.18), transparent 30%),
    var(--precision-paper, #faf8f2);
}

.sw-precision-product-page__state > span {
  color: #42657a;
  font-size: 0.74rem;
  font-weight: 950;
  letter-spacing: 0.16em;
}

.sw-precision-product-page__state h3 {
  max-width: 18ch;
  margin: 0.8rem 0 0;
  overflow-wrap: anywhere;
  color: #172027;
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 1;
}

.sw-precision-product-page__state p {
  max-width: 34rem;
  margin: 1rem 0 0;
  color: #5d6970;
  line-height: 1.7;
}

.sw-composition-preview[data-preview-mode="mobile"] .sw-precision-product-page {
  grid-template-columns: minmax(0, 1fr);
}

.sw-composition-preview[data-preview-mode="mobile"] .sw-precision-product-page > .sw-composition-preview__section-frame {
  grid-column: 1;
}

@media (max-width: 780px) {
  .sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header {
    grid-template-columns: minmax(0, 1fr);
    min-height: 3.75rem;
    padding: 0.8rem 1rem;
  }

  .sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header nav:empty {
    display: none;
  }

  .sw-precision-product-page {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-precision-product-page > .sw-composition-preview__section-frame {
    grid-column: 1;
  }

}

/* DIR174E merchant correction — BigiDesign-like white / black product-page system */
.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell__surface,
.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-main {
  background: #ffffff;
  color: #111111;
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header {
  border-bottom-color: #e5e5e5;
  background: #ffffff;
  color: #111111;
  backdrop-filter: none;
}

.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header > b,
.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header nav,
.sw-composition-preview[data-page-id="product-page"] .sw-visual-shell-header nav span {
  color: #111111;
}

.sw-precision-product-page {
  --precision-graphite: #111111;
  --precision-graphite-soft: #2b2b2b;
  --precision-ivory: #ffffff;
  --precision-paper: #ffffff;
  --precision-steel: #111111;
  --precision-steel-soft: #f1f1f1;
  gap: 0;
  background: #ffffff;
  color: #111111;
}

.sw-precision-product-page > .sw-composition-preview__section-frame {
  border-bottom: 1px solid #e5e5e5;
  background: #ffffff;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-gallery {
  border-right: 1px solid #e5e5e5;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-story,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-specifications,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-reviews {
  grid-column: 1 / -1;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-shipping {
  grid-column: 1;
  border-right: 1px solid #e5e5e5;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-payment {
  grid-column: 2;
}

.sw-precision-product-page > .sw-composition-preview__section-frame > .sw-composition-preview__section {
  background: #ffffff;
}

.sw-precision-product-page > .sw-composition-preview__section-frame[data-editing="true"] {
  background: #ffffff;
}

.sw-precision-product-page .sw-composition-preview__section-actions,
.sw-product-template-canvas .sw-composition-preview__section-actions {
  border-color: #d8d8d8;
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 0.5rem 1.2rem rgba(0, 0, 0, 0.08);
}

.sw-precision-product-page .sw-composition-preview__section-actions .sw-storefront-action--primary,
.sw-product-template-canvas .sw-composition-preview__section-actions .sw-storefront-action--primary {
  border-color: #111111;
  background: #111111;
  color: #ffffff;
}

.sw-precision-product-page .sw-composition-preview__section-actions .sw-storefront-action:disabled,
.sw-product-template-canvas .sw-composition-preview__section-actions .sw-storefront-action:disabled {
  border-color: var(--sw-primitive-color-border);
  background: var(--sw-primitive-color-panel-muted);
  color: var(--sw-primitive-color-muted);
  box-shadow: none;
  cursor: not-allowed;
}

/* The gallery's last thumbnail is real content, not space for an editor
   overlay. Keep its original toolbar in flow at every canvas width. */
.sw-template-page-editor-shell .sw-composition-preview__section-frame--product-gallery > .sw-composition-preview__section-actions {
  position: relative;
  inset: auto;
  justify-self: end;
  margin-block: 0.5rem;
  border-radius: var(--sw-primitive-radius-panel);
  box-shadow: none;
  backdrop-filter: none;
}
.sw-template-page-editor-shell .sw-composition-preview__section-frame--product-gallery > .sw-composition-preview__section-actions button {
  min-height: 44px;
  border-radius: var(--sw-primitive-radius-control);
}

.sw-precision-product-page .sw-storefront-action:focus-visible,
.sw-product-template-canvas .sw-storefront-action:focus-visible {
  outline-color: #111111;
}

.sw-precision-product-page__placeholder p {
  color: #6a6a6a;
  letter-spacing: 0.14em;
}

.sw-precision-product-page__placeholder h3 {
  color: #111111;
}

.sw-precision-product-page__placeholder {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 2rem;
  min-height: 15rem;
  padding: clamp(2rem, 5vw, 4.5rem);
  padding-bottom: max(5rem, clamp(2rem, 5vw, 4.5rem));
  background: #ffffff;
}

.sw-precision-product-page__placeholder > div {
  display: grid;
  gap: 0.7rem;
}

.sw-precision-product-page__placeholder p,
.sw-precision-product-page__placeholder h3,
.sw-precision-product-page__placeholder span {
  margin: 0;
}

.sw-precision-product-page__placeholder h3 {
  font-size: clamp(1.4rem, 2.6vw, 2.2rem);
  font-weight: 600;
}

.sw-precision-product-page__placeholder span {
  max-width: 36rem;
  color: #666666;
  line-height: 1.65;
}

.sw-precision-product-page__placeholder > strong {
  padding: 0.55rem 0.8rem;
  border: 1px solid #bdbdbd;
  color: #555555;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  white-space: nowrap;
}

.sw-precision-product-page__state {
  background: #ffffff;
}

.sw-precision-product-page__state > span,
.sw-precision-product-page__state h3 {
  color: #111111;
}

.sw-precision-product-page__state p {
  color: #666666;
}

@media (max-width: 780px) {
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-gallery,
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-shipping {
    border-right: 0;
  }

  .sw-precision-product-page > .sw-composition-preview__section-frame--product-shipping,
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-payment,
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-reviews {
    grid-column: 1;
  }

  .sw-precision-product-page__placeholder {
    padding: 1rem;
    padding-bottom: 4.5rem;
  }

  .sw-precision-product-page__placeholder {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-precision-product-page__placeholder > strong {
    justify-self: start;
  }
}

.sw-page-template-revision {
  display: grid;
  gap: 1.25rem;
  margin: 0 1.25rem 1.25rem;
  padding: clamp(1rem, 3vw, 1.5rem);
  border: 1px solid #dcdcdc;
  background: #ffffff;
  color: #111111;
}

.sw-page-template-revision__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.sw-page-template-revision__head p,
.sw-page-template-revision__head h3,
.sw-page-template-revision__head span {
  margin: 0;
}

.sw-page-template-revision__head p {
  margin-bottom: 0.4rem;
  color: #666666;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.sw-page-template-revision__head h3 {
  margin-bottom: 0.45rem;
  font-size: 1.2rem;
}

.sw-page-template-revision__head > div:first-child > span {
  display: block;
  max-width: 56rem;
  color: #555555;
  line-height: 1.6;
}

.sw-page-template-revision__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.sw-page-template-revision__badges span {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  padding: 0.3rem 0.65rem;
  border: 1px solid #d7d7d7;
  background: #f7f7f7;
  font-size: 0.78rem;
  font-weight: 800;
}

.sw-page-template-revision__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.9fr);
  gap: clamp(1rem, 4vw, 2rem);
  align-items: start;
}

.sw-page-template-revision__grid[data-has-thumbnail="false"] {
  grid-template-columns: minmax(0, 1fr);
}

.sw-page-template-revision__preview-note,
.sw-page-template-revision__thumbnail > p[role="status"] {
  display: grid;
  gap: 0.55rem;
  min-height: 9rem;
  align-content: center;
  padding: 1rem;
  border: 1px dashed #c8c8c8;
  background: #f7f7f7;
  color: #555555;
  line-height: 1.6;
}

.sw-page-template-revision__preview-note strong,
.sw-page-template-revision__preview-note span,
.sw-page-template-revision__thumbnail > p[role="status"] {
  margin: 0;
}

.sw-page-template-revision__facts {
  display: grid;
  gap: 0;
  margin: 0;
  border-top: 1px solid #e5e5e5;
}

.sw-page-template-revision__facts > div {
  display: grid;
  grid-template-columns: minmax(7rem, 0.35fr) minmax(0, 0.65fr);
  gap: 0.75rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid #e5e5e5;
}

.sw-page-template-revision__facts dt {
  color: #666666;
  font-size: 0.78rem;
  font-weight: 800;
}

.sw-page-template-revision__facts dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
}

.sw-page-template-revision__gate {
  display: grid;
  gap: 0.35rem;
  padding: 0.9rem 1rem;
  border-left: 4px solid #b26a00;
  background: #fff7e8;
}

.sw-page-template-revision__gate strong {
  font-size: 0.78rem;
  letter-spacing: 0.04em;
}

.sw-page-template-revision__gate span {
  color: #5d4a29;
  line-height: 1.55;
}

.sw-page-template-revision__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

.sw-page-template-revision__actions > span {
  flex: 1 1 18rem;
  color: #555555;
  font-size: 0.82rem;
}

.sw-page-template-revision__actions button {
  min-height: 2.75rem;
}

@media (max-width: 780px) {
  .sw-page-template-revision {
    margin-inline: 0.75rem;
  }

  .sw-page-template-revision__grid {
    grid-template-columns: 1fr;
  }

  .sw-page-template-revision__facts > div {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  .sw-page-template-revision__actions button {
    width: 100%;
  }
}

/* DIR174E W05 remediation — merchant-grade product composition */
.sw-precision-product-page {
  grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.92fr);
  align-items: stretch;
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-gallery,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-summary {
  min-height: clamp(42rem, 72vw, 64rem);
}

.sw-precision-product-page > .sw-composition-preview__section-frame--product-shipping,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-payment,
.sw-precision-product-page > .sw-composition-preview__section-frame--product-reviews {
  grid-column: 1 / -1;
  border-right: 0;
}

.sw-precision-product-page__utility {
  display: grid;
  grid-template-columns: minmax(14rem, 0.72fr) minmax(18rem, 1fr);
  align-items: center;
  gap: clamp(1.5rem, 5vw, 5rem);
  min-height: 18rem;
  padding: clamp(2.75rem, 6vw, 6rem) clamp(1.25rem, 8vw, 8rem);
  padding-bottom: max(6rem, clamp(2.75rem, 6vw, 6rem));
  background: #ffffff;
}

.sw-precision-product-page__utility-copy,
.sw-precision-product-page__utility-method {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
}

.sw-precision-product-page__utility p,
.sw-precision-product-page__utility h3,
.sw-precision-product-page__utility span,
.sw-precision-product-page__utility small {
  margin: 0;
}

.sw-precision-product-page__utility p {
  color: #6a6a6a;
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.14em;
}

.sw-precision-product-page__utility h3 {
  color: #111111;
  font-size: clamp(1.6rem, 3vw, 2.75rem);
  font-weight: 650;
  letter-spacing: -0.03em;
}

.sw-precision-product-page__utility-copy > span,
.sw-precision-product-page__utility-method > span,
.sw-precision-product-page__utility-method > small {
  color: #666666;
  line-height: 1.65;
}

.sw-precision-product-page__utility-method > strong {
  color: #111111;
  font-size: 1rem;
}

.sw-precision-product-page__utility-method > small {
  font-size: 0.72rem;
}

@media (max-width: 980px) {
  .sw-precision-product-page {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-precision-product-page > .sw-composition-preview__section-frame,
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-gallery,
  .sw-precision-product-page > .sw-composition-preview__section-frame--product-summary {
    grid-column: 1;
    min-height: 0;
    border-right: 0;
  }

  .sw-precision-product-page__utility {
    grid-template-columns: minmax(0, 1fr);
  }

}

@media (max-width: 780px) {

  .sw-precision-product-page__utility {
    padding: 2rem 1rem 4.5rem;
  }
}

.sw-precision-product-page > .sw-composition-preview__section-frame[data-editing="true"] {
  /* A selected frame must not trap its fixed inspector below mobile chrome. */
  z-index: auto;
  display: grid;
  align-content: start;
  gap: 0;
  min-height: 0;
  padding: 0;
}

.sw-precision-product-page .sw-composition-preview__live-demo {
  min-width: 0;
  border-bottom: 1px solid #d8d8d8;
  background: #ffffff;
}

.sw-precision-product-page .sw-composition-preview__live-demo > .sw-composition-preview__section {
  min-height: 0;
  height: auto;
}

.sw-precision-product-page > .sw-composition-preview__section-frame[data-editing="true"]
  > .sw-composition-preview__section--editing {
  position: fixed;
  z-index: var(--sw-primitive-layer-overlay);
  right: var(--sw-primitive-space-page-inset);
  bottom: var(--sw-primitive-space-page-inset);
  width: min(460px, calc(100vw - 2 * var(--sw-primitive-space-page-inset)));
  max-height: 72dvh;
  min-height: 0;
  height: auto;
  overflow-y: auto;
  overscroll-behavior: contain;
  box-sizing: border-box;
  padding: var(--sw-primitive-space-panel-padding);
  border: 1px solid var(--sw-primitive-color-border);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: 0 10px 36px rgb(0 0 0 / .18);
}
.sw-precision-product-page [data-editor-section] { scroll-margin-block: 8rem 6rem; }
.sw-precision-product-page [data-editor-section]:focus-visible { outline: 2px solid var(--sw-color-focus-indicator); outline-offset: -2px; }
.sw-precision-product-page .sw-template-builder-section-editor__head > button {
  flex-shrink: 0;
  min-width: 88px;
  min-height: 44px;
  white-space: nowrap;
}

/* DIR174E merchant remediation: real product presentation controls */
@media (min-width: 781px) {
  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(.sw-product-gallery[data-desktop-media-side="right"]) {
    grid-template-columns: minmax(19rem, 0.86fr) minmax(0, 1.14fr);
  }

  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(.sw-product-gallery[data-desktop-column-ratio="50-50"]) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(.sw-product-gallery[data-desktop-column-ratio="60-40"]) {
    grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.8fr);
  }

  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(
      .sw-product-gallery[data-desktop-media-side="right"][data-desktop-column-ratio="60-40"]
    ) {
    grid-template-columns: minmax(20rem, 0.8fr) minmax(0, 1.2fr);
  }

  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(.sw-product-gallery[data-desktop-media-side="right"])
    > .sw-composition-preview__section-frame--product-gallery {
    grid-column: 2;
  }

  .sw-composition-preview:not([data-preview-mode="mobile"])
    .sw-precision-product-page:has(.sw-product-gallery[data-desktop-media-side="right"])
    > .sw-composition-preview__section-frame--product-summary {
    grid-column: 1;
  }
}

.sw-composition-preview[data-preview-mode="mobile"]
  .sw-precision-product-page:has(.sw-product-gallery[data-mobile-order="info-first"])
  > .sw-composition-preview__section-frame--product-summary {
  order: -2;
}

.sw-composition-preview[data-preview-mode="mobile"]
  .sw-precision-product-page:has(.sw-product-gallery[data-mobile-order="info-first"])
  > .sw-composition-preview__section-frame--product-gallery {
  order: -1;
}

.sw-precision-product-page__utility-method {
  padding: 1.1rem 1.25rem;
  border: 1px dashed #b8b8b8;
  background: #f7f7f7;
}

.sw-precision-product-page__utility[data-layout="stacked"] {
  grid-template-columns: minmax(0, 1fr);
}

.sw-precision-product-page__utility[data-background="soft"] {
  background: #f4f4f2;
}

.sw-precision-product-page__utility[data-background="dark"] {
  background: #111111;
  color: #ffffff;
}

.sw-precision-product-page__utility[data-background="dark"] h3,
.sw-precision-product-page__utility[data-background="dark"] p,
.sw-precision-product-page__utility[data-background="dark"] span,
.sw-precision-product-page__utility[data-background="dark"] small,
.sw-precision-product-page__utility[data-background="dark"] strong {
  color: #ffffff;
}

.sw-precision-product-page__utility[data-background="dark"] .sw-precision-product-page__utility-method {
  border-color: #666666;
  background: #202020;
}

.sw-precision-product-page__utility[data-spacing="compact"] {
  gap: 0.75rem;
  padding-block: 1.5rem;
}

.sw-precision-product-page__utility[data-spacing="generous"] {
  gap: 3rem;
  padding-block: 5rem;
}

.sw-precision-product-page__utility[data-title-style="editorial"] h3 {
  font-size: clamp(1.8rem, 3vw, 3rem);
  font-weight: 650;
  letter-spacing: -0.035em;
}

.sw-product-page-mobile-tabs {
  display: none;
}

.sw-template-builder[data-page-id="product-page"]
  .sw-template-builder-action-toolbar button,
.sw-template-builder[data-page-id="product-page"]
  .sw-template-builder-product-preview-gate button,
.sw-template-builder[data-page-id="product-page"]
  .sw-template-builder-product-preview-gate select {
  min-height: 44px;
}

.sw-product-page-structure .sw-template-builder-region {
  gap: 0.55rem;
}

.sw-product-page-structure__item {
  display: grid;
  gap: 0.35rem;
}

.sw-product-page-structure__item > button {
  width: 100%;
}

.sw-product-page-structure__item > ul {
  display: grid;
  gap: 0.25rem;
  margin: 0;
  padding: 0 0 0 1rem;
  color: #666666;
  font-size: 0.72rem;
  line-height: 1.45;
}

.sw-product-page-structure__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
}

.sw-product-page-structure__actions > button {
  display: inline-flex;
  min-width: 0;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0.45rem;
  text-align: center;
}

.sw-product-page-structure .sw-template-builder-region button[data-section-visible="false"] {
  opacity: 0.68;
}

.sw-product-template-standalone {
  min-height: 100vh;
  background: #efefed;
}

.sw-product-template-standalone__toolbar {
  position: sticky;
  z-index: 40;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 1rem;
  border-bottom: 1px solid #d8d8d8;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(16px);
}

.sw-product-template-standalone__toolbar > div {
  display: grid;
  gap: 0.15rem;
}

.sw-product-template-standalone__toolbar span {
  color: #666666;
  font-size: 0.76rem;
}

.sw-product-template-standalone .sw-template-builder-product-preview-gate {
  margin: 1rem auto;
  width: min(100% - 2rem, 86rem);
}

.sw-product-template-standalone .sw-composition-preview {
  width: min(100%, 92rem);
  margin-inline: auto;
}

.sw-product-template-standalone .sw-composition-preview__section-actions,
.sw-product-template-standalone .sw-composition-preview__shell-edit {
  display: none;
}

@media (max-width: 780px) {
  .sw-product-page-mobile-tabs {
    position: sticky;
    z-index: 35;
    top: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-block: 1px solid #d8d8d8;
    background: #ffffff;
  }

  .sw-product-page-mobile-tabs button {
    min-height: 3rem;
    border: 0;
    border-right: 1px solid #e5e5e5;
    background: #ffffff;
    color: #666666;
    font-weight: 800;
  }

  .sw-product-page-mobile-tabs button[data-active="true"] {
    background: #111111;
    color: #ffffff;
  }

  .sw-template-builder-layout[data-product-page="true"] {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-template-builder-layout[data-product-page="true"][data-mobile-pane="preview"]
    > .sw-template-builder-rail {
    display: none;
  }

  .sw-template-builder-layout[data-product-page="true"][data-mobile-pane="structure"]
    > .sw-template-builder-preview-workspace {
    display: none;
  }

  .sw-template-builder-layout[data-product-page="true"][data-mobile-pane="structure"]
    > .sw-template-builder-rail {
    width: 100%;
    max-width: none;
  }

  .sw-precision-product-page:has(.sw-product-gallery[data-mobile-order="info-first"])
    > .sw-composition-preview__section-frame--product-summary {
    order: -2;
  }

  .sw-precision-product-page:has(.sw-product-gallery[data-mobile-order="info-first"])
    > .sw-composition-preview__section-frame--product-gallery {
    order: -1;
  }

  .sw-precision-product-page > .sw-composition-preview__section-frame[data-editing="true"]
    > .sw-composition-preview__section--editing {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-height: 72dvh;
    min-height: 0;
    border-radius: var(--sw-primitive-radius-panel) var(--sw-primitive-radius-panel) 0 0;
    padding-bottom: max(var(--sw-primitive-space-panel-padding), env(safe-area-inset-bottom));
  }
  .sw-precision-product-page .sw-composition-preview__section--editing .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field {
    grid-template-columns: minmax(0, 1fr);
  }
  .sw-precision-product-page .sw-composition-preview__section--editing .sw-template-builder-inspector__group[data-compact="true"] .sw-template-builder-inspector__field > :is(label, input, select, textarea) {
    grid-column: 1;
  }
  .sw-precision-product-page .sw-composition-preview__section--editing .sw-template-builder-inspector :is(button, input:not([type="checkbox"]), select, textarea),
  .sw-precision-product-page .sw-composition-preview__section--editing .sw-template-builder-inspector__toggle {
    min-height: 44px;
    font-size: 1rem;
  }

  .sw-product-template-standalone__toolbar {
    align-items: flex-start;
  }

  .sw-product-template-standalone__toolbar span {
    display: none;
  }
}

.sw-template-publication {
  min-width: 0;
  scroll-margin-block: 6rem;
}

.sw-template-publication__page-header { min-width: 0; margin: 1rem 0; padding: .75rem; border: 1px solid var(--sw-color-border, #dce4ef); border-radius: .5rem; }
.sw-template-publication__page-header legend { max-width: 100%; overflow-wrap: anywhere; }
.sw-template-publication__page-header label { display: flex; align-items: center; gap: .75rem; min-height: 44px; cursor: pointer; }
.sw-template-publication__page-header p { margin: .5rem 0 0; font-size: .875rem; line-height: 1.5; }

.sw-template-publication__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

.sw-template-publication__actions > .sw-storefront-action {
  min-height: 44px;
  max-width: 100%;
  white-space: normal;
}

/* DIR174E shared merchant page-template editor */
.sw-template-page-editor-shell {
  min-width: 0;
  overflow-x: clip;
}

.sw-template-page-toolbar {
  display: grid;
  grid-template-columns: auto minmax(14rem, 1fr) auto minmax(22rem, auto);
  align-items: center;
  gap: 0.75rem 1rem;
  padding: 1rem;
  border-bottom: 1px solid #dedede;
  background: #ffffff;
}

.sw-template-page-toolbar > .sw-storefront-action,
.sw-template-page-toolbar__actions .sw-storefront-action,
.sw-template-page-device-switcher button,
.sw-template-page-mobile-workspace button,
.sw-template-page-structure button {
  min-height: 44px;
}

.sw-template-page-toolbar__context {
  min-width: 0;
  display: grid;
  gap: 0.15rem;
}

.sw-template-page-toolbar__context h2,
.sw-template-page-toolbar__context p,
.sw-template-page-toolbar__context span,
.sw-template-page-toolbar__duplicate p,
.sw-template-page-toolbar__duplicate-message {
  margin: 0;
}

.sw-template-page-toolbar__context h2 {
  color: #111111;
  font-size: clamp(1.15rem, 2vw, 1.65rem);
  line-height: 1.25;
}

.sw-template-page-toolbar__context span,
.sw-template-page-toolbar__status,
.sw-template-page-toolbar__apply-note,
.sw-template-page-toolbar__duplicate p,
.sw-template-page-toolbar__duplicate-message {
  color: #666666;
  font-size: 0.74rem;
  line-height: 1.5;
}

.sw-template-page-device-switcher {
  display: grid;
  gap: 0.5rem;
  min-width: min(24rem, 100%);
}

.sw-template-page-device-switcher__presets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid #d6d6d6;
  background: #ffffff;
}

.sw-template-page-device-switcher button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.55rem 0.75rem;
  border: 0;
  border-right: 1px solid #e5e5e5;
  background: #ffffff;
  color: #555555;
  font-weight: 850;
}

.sw-template-page-device-switcher__presets button:last-child {
  border-right: 0;
}

.sw-template-page-device-switcher button[data-active="true"] {
  background: #111111;
  color: #ffffff;
}

.sw-template-page-device-switcher svg,
.sw-template-page-toolbar svg {
  width: 1rem;
  height: 1rem;
}

.sw-template-page-toolbar__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.5rem;
}

.sw-template-page-toolbar__status {
  grid-column: 2 / 4;
  min-width: 0;
}

.sw-template-page-toolbar__apply-note {
  grid-column: 4;
  text-align: right;
}

.sw-template-page-toolbar__duplicate,
.sw-template-page-toolbar__duplicate-message {
  grid-column: 1 / -1;
}

.sw-template-page-toolbar__duplicate {
  display: grid;
  grid-template-columns: minmax(14rem, 1fr) auto auto;
  align-items: end;
  gap: 0.65rem;
  padding: 0.85rem;
  border: 1px solid #d7d7d7;
  background: #f8f8f8;
}

.sw-template-page-toolbar__duplicate label {
  display: grid;
  gap: 0.35rem;
  color: #333333;
  font-size: 0.76rem;
  font-weight: 850;
}

.sw-template-page-toolbar__duplicate input {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding-inline: 0.75rem;
  border: 1px solid #bdbdbd;
  background: #ffffff;
  color: #111111;
}

.sw-template-page-toolbar__duplicate p {
  grid-column: 1 / -1;
}

.sw-template-page-mobile-workspace {
  display: none;
}

.sw-template-page-editor-shell__workspace {
  min-width: 0;
  grid-template-columns: 17rem minmax(0, 1fr);
  align-items: start;
}

.sw-template-page-structure {
  min-width: 0;
  align-content: start;
}

.sw-template-page-structure__intro,
.sw-template-page-structure__sections,
.sw-template-page-structure__item {
  display: grid;
  gap: 0.55rem;
}

.sw-template-page-structure__intro h3,
.sw-template-page-structure__intro p,
.sw-template-page-structure__intro span,
.sw-template-page-structure__sections small {
  margin: 0;
}

.sw-template-page-structure__intro span,
.sw-template-page-structure__sections small,
.sw-template-page-structure .sw-template-builder-region > small {
  color: #666666;
  font-size: 0.74rem;
  line-height: 1.5;
}

.sw-template-page-structure__sections > div:first-child {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
}

.sw-template-page-structure__item > button {
  width: 100%;
}

/* A long localized label must fit its own grid track, not paint over
   the separate status badge. Keep the original control and action layout. */
.sw-template-page-structure .sw-template-builder-region--shell > button > span:first-child,
.sw-template-page-structure__item > button > span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-template-page-structure__actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(3.25rem, 1fr));
  gap: 0.35rem;
}

.sw-template-page-structure__retained { display: grid; min-width: 0; gap: 0.55rem; }
.sw-template-page-structure__retained .sw-storefront-action { white-space: normal; text-align: center; }
.sw-template-page-structure__retained button,
.sw-template-page-structure__actions button { min-height: 44px; }

.sw-template-page-structure__actions button {
  min-width: 0;
  justify-content: center;
  padding-inline: 0.35rem;
  font-size: 0.72rem;
}

.sw-template-page-structure button[data-section-visible="false"] {
  opacity: 0.7;
}

.sw-template-page-preview-workspace {
  width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.sw-template-section-inspector {
  min-width: 0;
}

.sw-template-page-standalone {
  min-width: 0;
  overflow-x: clip;
}

@media (max-width: 1320px) {
  .sw-template-page-toolbar {
    grid-template-columns: auto minmax(12rem, 1fr) auto;
  }

  .sw-template-page-toolbar__actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .sw-template-page-toolbar__status {
    grid-column: 2 / 4;
  }

  .sw-template-page-toolbar__apply-note {
    grid-column: 1 / -1;
    text-align: left;
  }
}

@media (max-width: 780px) {
  .sw-template-page-toolbar {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.5rem 0.75rem;
    padding: 0.75rem;
  }

  .sw-template-page-toolbar > .sw-storefront-action {
    grid-column: 1;
  }

  .sw-template-page-toolbar__context {
    grid-column: 2;
  }

  .sw-template-page-toolbar__context span {
    display: none;
  }

  .sw-template-page-device-switcher,
  .sw-template-page-toolbar__actions,
  .sw-template-page-toolbar__status,
  .sw-template-page-toolbar__apply-note,
  .sw-template-page-toolbar__duplicate,
  .sw-template-page-toolbar__duplicate-message {
    grid-column: 1 / -1;
  }

  .sw-template-page-toolbar__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-template-page-toolbar__actions .sw-storefront-action {
    min-width: 0;
    justify-content: center;
  }

  .sw-template-page-toolbar__duplicate {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sw-template-page-toolbar__duplicate label,
  .sw-template-page-toolbar__duplicate p {
    grid-column: 1 / -1;
  }

  .sw-template-page-mobile-workspace {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-block: 1px solid #d8d8d8;
    background: #ffffff;
  }

  .sw-template-page-mobile-workspace button {
    border: 0;
    border-right: 1px solid #e5e5e5;
    background: #ffffff;
    color: #666666;
    font-weight: 850;
  }

  .sw-template-page-mobile-workspace button:last-child {
    border-right: 0;
  }

  .sw-template-page-mobile-workspace button[data-active="true"] {
    background: #111111;
    color: #ffffff;
  }

  .sw-template-page-editor-shell__workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-template-page-editor-shell__workspace[data-mobile-pane="preview"] > .sw-template-page-structure {
    display: none;
  }

  .sw-template-page-editor-shell__workspace[data-mobile-pane="structure"] > .sw-template-page-preview-workspace {
    display: none;
  }

  .sw-template-page-structure,
  .sw-template-page-preview-workspace {
    width: 100%;
    max-width: none;
  }

  /* Put controls in the page flow rather than behind the preview's header.
     The outer Admin shell remains the only scrolling/navigation authority. */
  .sw-template-page-editor-shell .sw-composition-preview__section-actions {
    position: relative;
    inset: auto;
    margin-block: 0.5rem;
    border-radius: var(--sw-primitive-radius-panel);
    scroll-margin-block: 5rem;
  }

  .sw-template-page-editor-shell .sw-composition-preview__section-actions button {
    min-height: 44px;
  }

  .sw-template-page-editor-shell .sw-visual-shell-header[data-header-mode="overlay"],
  .sw-template-page-editor-shell .sw-visual-shell-announcement {
    position: relative;
    inset: auto;
  }

  .sw-admin-shell__main:has(.sw-template-page-editor-shell) {
    padding-block-end: calc(var(--sw-admin-mobile-chrome-height, 4rem) + 1rem);
    scroll-padding-block: 4rem calc(var(--sw-admin-mobile-chrome-height, 4rem) + 1rem);
  }
}

/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-page-manager.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
/* Original Page Manager token boundary. Retired generic draft/JSON editor
   selectors are removed; storefront content styling stays in Shared Renderer. */
.sw-page-manager-route {
  --sw-page-manager-bg-app: var(--sw-primitive-color-text);
  --sw-page-manager-bg-workspace: var(--sw-primitive-color-page);
  --sw-page-manager-surface: var(--sw-primitive-color-panel);
  --sw-page-manager-surface-muted: var(--sw-primitive-color-panel-muted);
  --sw-page-manager-text: var(--sw-primitive-color-text);
  --sw-page-manager-muted: var(--sw-primitive-color-muted);
  --sw-page-manager-border: var(--sw-primitive-color-border);
  --sw-page-manager-accent: var(--sw-primitive-color-accent);
  --sw-page-manager-success: var(--sw-primitive-color-success);
  --sw-page-manager-warning: var(--sw-primitive-color-warning);
  --sw-page-manager-danger: var(--sw-primitive-color-danger);
  --sw-page-manager-row: var(--sw-primitive-density-table-row-height);
  --sw-page-manager-control: var(--sw-primitive-density-control-height);
  --sw-page-manager-toolbar: var(--sw-primitive-density-toolbar-height);
  --sw-page-manager-gap: var(--sw-primitive-space-grid-gap);
  --sw-page-manager-space-sm: var(--sw-primitive-space-stack-sm);
  --sw-page-manager-space-md: var(--sw-primitive-space-stack-md);
  --sw-page-manager-space-lg: var(--sw-primitive-space-stack-lg);
  --sw-page-manager-inset: var(--sw-primitive-space-page-inset);
  --sw-page-manager-pad: var(--sw-primitive-space-panel-padding);
  --sw-page-manager-radius: var(--sw-primitive-radius-panel);
  --sw-page-manager-radius-control: var(--sw-primitive-radius-control);
  --sw-page-manager-shadow: var(--sw-primitive-shadow-panel);
  min-width: 0;
}
.sw-page-manager-route *, .sw-page-manager-route *::before, .sw-page-manager-route *::after { box-sizing: border-box; }
.sw-page-manager { min-width: 0; display: grid; gap: var(--sw-page-manager-gap); padding: var(--sw-page-manager-inset); }
.sw-page-manager-route :is(.sw-button, .sw-input) {
  min-height: 44px;
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-page-manager-radius-control);
  background: var(--sw-page-manager-surface);
  color: var(--sw-page-manager-text);
  font-size: var(--sw-primitive-type-control-size);
}
.sw-page-manager-route .sw-button {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--sw-page-manager-space-sm);
  padding-inline: var(--sw-primitive-space-control-padding); cursor: pointer; font-weight: 700;
}
.sw-page-manager-route .sw-button--primary { border-color: var(--sw-page-manager-accent); background: var(--sw-page-manager-accent); color: var(--sw-primitive-color-accent-contrast); }
.sw-page-manager-route .sw-button:disabled { color: var(--sw-primitive-color-disabled); cursor: not-allowed; }
.sw-page-manager-route .sw-input { width: 100%; padding-inline: var(--sw-primitive-space-control-padding); }
.sw-page-manager-route :is(button, input, select, textarea, a):focus-visible { outline: 2px solid var(--sw-page-manager-accent); outline-offset: 2px; }
.sw-page-manager__owner-workspace, .sw-page-manager__owner-panel {
  min-width: 0; display: grid; gap: var(--sw-page-manager-space-md); padding: var(--sw-page-manager-pad);
  border: var(--sw-primitive-border-subtle); border-radius: var(--sw-page-manager-radius);
  background: var(--sw-page-manager-surface); box-shadow: var(--sw-page-manager-shadow);
}
.sw-page-manager__owner-head { display: flex; gap: var(--sw-page-manager-space-md); align-items: center; justify-content: space-between; }
.sw-page-manager__owner-head > span { min-width: 0; display: grid; gap: var(--sw-page-manager-space-sm); }
.sw-page-manager__owner-head small { color: var(--sw-page-manager-muted); font-size: var(--sw-primitive-type-caption-size); }
.sw-page-manager__owner-status, .sw-page-manager__owner-note {
  margin: 0; padding: var(--sw-page-manager-space-md); border-radius: var(--sw-page-manager-radius-control);
  background: var(--sw-page-manager-surface-muted); overflow-wrap: anywhere;
}
.sw-page-manager__owner-note { border: var(--sw-primitive-border-subtle); color: var(--sw-page-manager-muted); font-size: var(--sw-primitive-type-caption-size); }
@media (max-width: 54em) {
  .sw-page-manager { padding: var(--sw-page-manager-space-md); padding-block-end: calc(var(--sw-primitive-density-mobile-action-height) + var(--sw-page-manager-space-lg)); }
  .sw-page-manager__owner-head { align-items: stretch; flex-direction: column; }
}

/*!************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-template-center.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************/
.sw-template-center-route {
  --sw-color-bg-app: var(--sw-primitive-color-text);
  --sw-color-bg-workspace: var(--sw-primitive-color-page);
  --sw-color-surface: var(--sw-primitive-color-panel);
  --sw-color-surface-muted: var(--sw-primitive-color-panel-muted);
  --sw-color-text-primary: var(--sw-primitive-color-text);
  --sw-color-text-secondary: var(--sw-primitive-color-muted);
  --sw-color-border-subtle: var(--sw-primitive-color-border);
  --sw-color-action-primary: var(--sw-primitive-color-accent);
  --sw-color-state-success: var(--sw-primitive-color-success);
  --sw-color-state-warning: var(--sw-primitive-color-warning);
  --sw-color-state-danger: var(--sw-primitive-color-danger);
  --sw-color-state-blocked: var(--sw-primitive-color-conflict);
  --sw-space-1: var(--sw-primitive-space-stack-sm);
  --sw-space-2: var(--sw-primitive-space-stack-md);
  --sw-space-3: var(--sw-primitive-space-stack-lg);
  --sw-space-4: var(--sw-primitive-space-grid-gap);
  --sw-space-5: var(--sw-primitive-space-panel-padding);
  --sw-space-6: var(--sw-primitive-space-page-inset);
  --sw-radius-control: var(--sw-primitive-radius-control);
  --sw-radius-panel: var(--sw-primitive-radius-panel);
  --sw-shadow-panel: var(--sw-primitive-shadow-panel);
  --sw-density-row-compact: var(--sw-primitive-density-table-row-height);
  --sw-density-toolbar: var(--sw-primitive-density-toolbar-height);
  min-width: 0;
  overflow-x: clip;
}

.sw-template-center-route *,
.sw-template-center-route *::before,
.sw-template-center-route *::after {
  box-sizing: border-box;
}

.sw-template-center-route .sw-button,
.sw-template-center-route .sw-input {
  min-height: var(--sw-density-toolbar);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface);
  color: var(--sw-color-text-primary);
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 700;
}

.sw-template-center-route .sw-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sw-space-1);
  padding-inline: var(--sw-primitive-space-control-padding);
  cursor: pointer;
}

.sw-template-center-route .sw-button--primary {
  border-color: var(--sw-color-action-primary);
  background: var(--sw-color-action-primary);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-template-center-route .sw-button--secondary {
  background: var(--sw-color-surface);
}

.sw-template-center-route .sw-button:disabled,
.sw-template-center-route .sw-button--disabled {
  color: var(--sw-primitive-color-disabled);
  cursor: not-allowed;
}

.sw-template-center-route .sw-input {
  width: 100%;
  padding-inline: var(--sw-primitive-space-control-padding);
}

.sw-template-center-route .sw-field {
  display: grid;
  gap: var(--sw-space-1);
}

.sw-template-center-route .sw-field__label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sw-space-1);
}

.sw-template-center-route .sw-field__label,
.sw-template-center-route .sw-field__hint {
  color: var(--sw-color-text-secondary);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 700;
}

.sw-template-center-route .sw-shop-admin-frame {
  min-height: 100vh;
  background: var(--sw-color-bg-workspace);
  color: var(--sw-color-text-primary);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.sw-template-center-route .sw-shop-admin-frame__body {
  display: grid;
  grid-template-columns: minmax(13.5rem, 15rem) minmax(0, 1fr);
  min-height: 100vh;
}

.sw-template-center-route .sw-shop-admin-frame__sidebar {
  position: sticky;
  top: 0;
  min-height: 100vh;
  align-self: start;
  background: var(--sw-color-bg-app);
  color: var(--sw-primitive-color-accent-contrast);
}

.sw-template-center-route .sw-shop-admin-frame__rail {
  display: grid;
  gap: var(--sw-space-4);
  padding: var(--sw-space-5);
}

.sw-template-center-route .sw-shop-admin-frame__brand {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-space-2);
  align-items: center;
}

.sw-template-center-route .sw-shop-admin-frame__brand-mark {
  display: grid;
  inline-size: var(--sw-primitive-density-control-height);
  block-size: var(--sw-primitive-density-control-height);
  place-items: center;
  border-radius: var(--sw-radius-control);
  background: var(--sw-primitive-color-accent-contrast);
  color: var(--sw-color-bg-app);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
  text-transform: uppercase;
}

.sw-template-center-route .sw-shop-admin-frame__brand-title,
.sw-template-center-route .sw-shop-admin-frame__rail-item-title,
.sw-template-center-route .sw-shop-admin-frame__rail-state,
.sw-template-center-route .sw-shop-admin-frame__mobile-detail-title {
  display: block;
  font-size: var(--sw-primitive-type-control-size);
  font-weight: 800;
}

.sw-template-center-route .sw-shop-admin-frame__brand-subtitle,
.sw-template-center-route .sw-shop-admin-frame__rail-status,
.sw-template-center-route .sw-shop-admin-frame__mobile-detail-subtitle,
.sw-template-center-route .sw-shop-admin-frame__mobile-tab-state {
  color: color-mix(in srgb, var(--sw-primitive-color-accent-contrast) 64%, transparent);
  font-size: var(--sw-primitive-type-caption-size);
}

.sw-template-center-route .sw-shop-admin-frame__rail-group,
.sw-template-center-route .sw-shop-admin-frame__rail-list {
  display: grid;
  gap: var(--sw-space-1);
}

.sw-template-center-route .sw-shop-admin-frame__rail-link,
.sw-template-center-route .sw-shop-admin-frame__rail-static {
  width: 100%;
  display: grid;
  gap: var(--sw-space-1);
  padding: var(--sw-space-2);
  border: 0;
  border-radius: var(--sw-radius-control);
  background: transparent;
  color: inherit;
  text-align: left;
}

.sw-template-center-route .sw-shop-admin-frame__rail-item--active .sw-shop-admin-frame__rail-link,
.sw-template-center-route .sw-shop-admin-frame__rail-item--active .sw-shop-admin-frame__rail-static {
  background: color-mix(in srgb, var(--sw-primitive-color-accent-contrast) 12%, transparent);
}

.sw-template-center-route .sw-shop-admin-frame__rail-item-description,
.sw-template-center-route .sw-shop-admin-frame__rail-dot,
.sw-template-center-route .sw-shop-admin-frame__rail-heading,
.sw-template-center-route .sw-shop-admin-frame__rail-group-title,
.sw-template-center-route .sw-shop-admin-frame__rail-footer {
  display: none;
}

.sw-template-center-route .sw-shop-admin-frame__workspace {
  min-width: 0;
}

.sw-template-center-route .sw-shop-admin-frame__stage {
  min-width: 0;
}

.sw-template-center-route .sw-shop-admin-frame__mobile-chrome {
  display: none;
}

.sw-template-center-system {
  min-width: 0;
  display: grid;
  gap: var(--sw-space-4);
  padding: var(--sw-space-6);
}

.sw-template-center-system__breadcrumb,
.sw-template-center-system__heading p,
.sw-template-center-system__panel-head span,
.sw-template-center-system__template-copy span,
.sw-template-center-system__template-summary,
.sw-template-center-system__side-panel p,
.sw-template-center-system__side-facts span,
.sw-template-center-system__state span,
.sw-template-center-system__summary-panel span,
.sw-template-center-system__mobile-continuation span,
.sw-template-center-system__step-button span {
  color: var(--sw-color-text-secondary);
  font-size: var(--sw-primitive-type-caption-size);
  line-height: var(--sw-primitive-type-line-body);
}

.sw-template-center-system__breadcrumb {
  display: flex;
  gap: var(--sw-space-1);
  align-items: center;
}

.sw-template-center-system__breadcrumb span::after {
  content: "/";
  padding-inline-start: var(--sw-space-1);
}

.sw-template-center-system__page-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sw-space-4);
  align-items: start;
}

.sw-template-center-system__heading {
  display: grid;
  gap: var(--sw-space-1);
}

.sw-template-center-system__heading .sw-type-page-title {
  font-size: var(--sw-primitive-type-page-title-size);
  font-weight: 800;
}

.sw-template-center-system__heading p {
  max-width: 42rem;
  margin: 0;
}

.sw-template-center-system__head-actions,
.sw-template-center-system__toolbar-actions,
.sw-template-center-system__row-actions,
.sw-template-center-system__detail-actions,
.sw-template-center-system__primary-action-rail {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-space-1);
  justify-content: flex-end;
}

.sw-template-center-system__account-summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-space-1);
  align-items: center;
  padding: var(--sw-space-1) var(--sw-space-2);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface);
}

.sw-template-center-system__account-avatar,
.sw-template-center-system__template-mark {
  display: grid;
  inline-size: var(--sw-primitive-density-control-height);
  block-size: var(--sw-primitive-density-control-height);
  place-items: center;
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface-muted);
  color: var(--sw-color-text-secondary);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-template-center-system__account-copy {
  display: grid;
}

.sw-template-center-system__account-copy strong,
.sw-template-center-system__side-panel strong,
.sw-template-center-system__panel-head strong,
.sw-template-center-system__state strong,
.sw-template-center-system__summary-panel strong,
.sw-template-center-system__detail-head strong,
.sw-template-center-system__callout strong {
  color: var(--sw-color-text-primary);
  font-size: var(--sw-primitive-type-section-title-size);
  font-weight: 800;
}

.sw-template-center-system__status-strip,
.sw-template-center-system__toolbar,
.sw-template-center-system__panel,
.sw-template-center-system__side-panel,
.sw-template-center-system__state {
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-radius-panel);
  background: var(--sw-color-surface);
  box-shadow: var(--sw-shadow-panel);
}

.sw-template-center-system__status-strip {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sw-space-1);
  padding: var(--sw-space-2);
}

.sw-template-center-system__pill,
.sw-template-center-system__template-status,
.sw-template-center-system__detail-head span,
.sw-template-center-system__truth-label {
  display: inline-flex;
  min-height: var(--sw-primitive-density-badge-height);
  align-items: center;
  padding-inline: var(--sw-primitive-space-badge-padding);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-primitive-radius-badge);
  background: var(--sw-color-surface-muted);
  color: var(--sw-color-text-secondary);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
  white-space: nowrap;
}

.sw-template-center-system__pill--success,
.sw-template-center-system__template-row--ready .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-success);
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-color-state-success);
}

.sw-template-center-system__pill--warning,
.sw-template-center-system__template-row--attention .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-warning);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-color-state-warning);
}

.sw-template-center-system__pill--danger,
.sw-template-center-system__template-row--blocked .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-danger);
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-color-state-danger);
}

.sw-template-center-system__toolbar {
  display: grid;
  grid-template-columns: minmax(18rem, 1fr) minmax(9rem, auto) minmax(9rem, auto) auto;
  gap: var(--sw-space-1);
  align-items: end;
  padding: var(--sw-space-1);
}

.sw-template-center-system__workspace-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 24rem);
  gap: var(--sw-space-4);
  align-items: start;
}

.sw-template-center-system__main-stack,
.sw-template-center-system__template-list,
.sw-template-center-system__side-panel,
.sw-template-center-system__editor-body,
.sw-template-center-system__step-rail {
  min-width: 0;
  display: grid;
  gap: var(--sw-space-2);
}

.sw-template-center-system__panel {
  overflow: hidden;
}

.sw-template-center-system__panel-head,
.sw-template-center-system__list-header {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto minmax(0, 0.9fr) minmax(0, 0.9fr) auto;
  gap: var(--sw-space-2);
  align-items: center;
}

.sw-template-center-system__panel-head {
  padding: var(--sw-space-2) var(--sw-space-5);
  border-bottom: var(--sw-primitive-border-subtle);
  background: var(--sw-color-surface-muted);
}

.sw-template-center-system__list-header {
  padding: var(--sw-space-1) var(--sw-space-5);
  border-bottom: var(--sw-primitive-border-subtle);
  color: var(--sw-color-text-secondary);
  font-size: var(--sw-primitive-type-caption-size);
  font-weight: 800;
}

.sw-template-center-system__template-list {
  padding: var(--sw-space-2);
}

.sw-template-center-system__template-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto minmax(0, 0.9fr) minmax(0, 0.9fr) auto;
  gap: var(--sw-space-2);
  align-items: center;
  min-height: var(--sw-density-row-compact);
  padding: var(--sw-space-2);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface);
}

.sw-template-center-system__template-row--selected {
  border-color: var(--sw-color-action-primary);
  background: var(--sw-primitive-color-accent-surface);
  box-shadow: inset 3px 0 0 var(--sw-color-action-primary);
}

.sw-template-center-system__template-row--attention {
  background: color-mix(in srgb, var(--sw-primitive-color-warning-surface) 52%, var(--sw-color-surface));
}

.sw-template-center-system__template-row--blocked {
  background: color-mix(in srgb, var(--sw-primitive-color-danger-surface) 42%, var(--sw-color-surface));
}

.sw-template-center-system__template-select {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sw-space-1);
  align-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-template-center-system__template-copy {
  min-width: 0;
  display: grid;
  gap: calc(var(--sw-space-1) / 2);
}

.sw-template-center-system__template-copy strong {
  overflow: hidden;
  color: var(--sw-color-text-primary);
  font-size: var(--sw-primitive-type-body-size);
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-template-center-system__template-summary {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-template-center-system__side-panel {
  padding: var(--sw-space-5);
}

.sw-template-center-system__detail-head {
  display: grid;
  gap: var(--sw-space-1);
}

.sw-template-center-system__side-panel p {
  margin: 0;
}

.sw-template-center-system__side-facts,
.sw-template-center-system__action-panel,
.sw-template-center-system__summary-panel,
.sw-template-center-system__state,
.sw-template-center-system__action-status,
.sw-template-center-system__ai-panel,
.sw-template-center-system__history-panel,
.sw-template-center-system__callout {
  display: grid;
  gap: var(--sw-space-1);
  padding: var(--sw-space-2);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-radius-panel);
  background: var(--sw-color-surface-muted);
}

.sw-template-center-system__side-facts span {
  display: grid;
  gap: calc(var(--sw-space-1) / 2);
}

.sw-template-center-system__side-facts strong {
  color: var(--sw-color-text-primary);
}

.sw-template-center-system__summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sw-space-2);
  padding: var(--sw-space-2);
}

.sw-template-center-system__panel-head--compact {
  grid-template-columns: minmax(0, 1fr) auto;
}

.sw-template-center-system__module-row--selected-posture .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-success);
  background: var(--sw-primitive-color-success-surface);
  color: var(--sw-color-state-success);
}

.sw-template-center-system__module-row--attention .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-warning);
  background: var(--sw-primitive-color-warning-surface);
  color: var(--sw-color-state-warning);
}

.sw-template-center-system__module-row--blocked .sw-template-center-system__template-status {
  border-color: var(--sw-color-state-danger);
  background: var(--sw-primitive-color-danger-surface);
  color: var(--sw-color-state-danger);
}

.sw-template-center-system__preview-card {
  display: grid;
  gap: var(--sw-space-1);
  padding: var(--sw-space-5);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-radius-panel);
  background:
    linear-gradient(var(--sw-color-surface-muted), var(--sw-color-surface-muted)),
    var(--sw-color-surface);
}

.sw-template-center-system__preview-card span {
  display: block;
  min-height: var(--sw-density-toolbar);
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface);
}

.sw-template-center-system__mobile-continuation {
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sw-space-1);
  padding: var(--sw-space-1);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-radius-panel);
  background: var(--sw-color-surface);
  box-shadow: var(--sw-shadow-panel);
}

.sw-template-center-system__editor-grid {
  display: grid;
  grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr) minmax(18rem, 22rem);
  gap: var(--sw-space-4);
}

.sw-template-center-system__editor-main,
.sw-template-center-system__step-rail {
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-radius-panel);
  background: var(--sw-color-surface);
  box-shadow: var(--sw-shadow-panel);
}

.sw-template-center-system__step-rail {
  padding: var(--sw-space-5);
}

.sw-template-center-system__field-grid,
.sw-template-center-system__diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sw-space-2);
}

.sw-template-center-system__diff-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sw-template-center-system__textarea {
  min-height: var(--sw-primitive-density-textarea-min-height);
  padding-block: var(--sw-space-2);
}

.sw-template-center-system__ai-panel {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.sw-template-center-system__primary-action-rail {
  padding-top: var(--sw-space-2);
  border-top: var(--sw-primitive-border-subtle);
}

.sw-template-center-system__step-button {
  display: grid;
  gap: var(--sw-space-1);
  padding: var(--sw-space-2);
  border: var(--sw-primitive-border-subtle);
  border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface);
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.sw-template-center-system__step-button--active {
  border-color: var(--sw-color-action-primary);
  background: var(--sw-primitive-color-accent-surface);
}

@media (max-width: 73.75em) {
  .sw-template-center-route .sw-input,
  .sw-template-center-route .sw-button {
    min-height: 44px;
  }

  .sw-template-center-route .sw-shop-admin-frame__body,
  .sw-template-center-system__page-head,
  .sw-template-center-system__toolbar,
  .sw-template-center-system__workspace-grid,
  .sw-template-center-system__editor-grid,
  .sw-template-center-system__field-grid,
  .sw-template-center-system__diff-grid,
  .sw-template-center-system__ai-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-template-center-route .sw-shop-admin-frame__sidebar {
    display: none;
  }

  .sw-template-center-route .sw-shop-admin-frame__mobile-chrome {
    position: static;
    display: none;
  }

  .sw-template-center-route .sw-shop-admin-frame__mobile-top-continuation,
  .sw-template-center-route .sw-shop-admin-frame__mobile-bottom-tabs {
    display: flex;
    align-items: center;
    gap: var(--sw-space-1);
    overflow-x: auto;
  }

  .sw-template-center-route .sw-shop-admin-frame__mobile-menu-button,
  .sw-template-center-route .sw-shop-admin-frame__mobile-account,
  .sw-template-center-route .sw-shop-admin-frame__mobile-tab {
    min-height: var(--sw-primitive-density-control-height);
    border: var(--sw-primitive-border-subtle);
    border-radius: var(--sw-radius-control);
    background: var(--sw-color-surface);
  }

  .sw-template-center-system {
    padding: var(--sw-space-2);
    padding-bottom: calc(var(--sw-primitive-density-mobile-action-height) + var(--sw-space-6));
  }

  .sw-template-center-system__head-actions,
  .sw-template-center-system__toolbar-actions,
  .sw-template-center-system__row-actions,
  .sw-template-center-system__detail-actions,
  .sw-template-center-system__primary-action-rail {
    justify-content: stretch;
  }

  .sw-template-center-system__head-actions .sw-button,
  .sw-template-center-system__toolbar-actions .sw-button,
  .sw-template-center-system__row-actions .sw-button,
  .sw-template-center-system__detail-actions .sw-button,
  .sw-template-center-system__primary-action-rail .sw-button {
    width: 100%;
  }

  .sw-template-center-system__list-header {
    display: none;
  }

  .sw-template-center-system__template-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-template-center-system__summary-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .sw-template-center-system__template-summary {
    white-space: normal;
  }

  .sw-template-center-system__mobile-continuation {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    z-index: auto;
  }

  .sw-template-center-system__mobile-continuation .sw-button {
    width: 100%;
  }
}

/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-auth.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************/
html,
body { margin: 0; }

.sw-auth-page {
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: var(--sw-primitive-color-page);
  color: var(--sw-primitive-color-text);
  font-family: var(--sw-primitive-font-family-sans);
  font-size: var(--sw-primitive-type-body-size);
  line-height: 1.6;
}
.sw-auth-shell {
  width: min(880px, 100%);
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1fr);
  border: var(--sw-primitive-border-default);
  border-radius: var(--sw-primitive-radius-panel);
  background: var(--sw-primitive-color-panel);
  box-shadow: var(--sw-primitive-shadow-panel);
  overflow: hidden;
}
.sw-auth-brand-panel,
.sw-auth-card { min-width: 0; padding: 32px; }
.sw-auth-brand-panel { display: flex; flex-direction: column; gap: 64px; background: #111111; color: #ffffff; }
.sw-auth-brand-panel__identity { display: flex; gap: 12px; align-items: center; font-weight: 600; }
.sw-auth-brand-panel__mark { flex: 0 0 40px; height: 40px; display: grid; place-items: center; background: var(--sw-primitive-color-panel); color: var(--sw-primitive-color-text); border-radius: var(--sw-primitive-radius-control); font-weight: 700; }
.sw-auth-brand-panel__copy { margin-top: auto; }
.sw-auth-brand-panel__copy p { margin: 12px 0 0; color: #d4d4d4; }
.sw-auth-brand-panel__copy .sw-auth-brand-panel__title { margin: 0; color: #ffffff; font-size: 24px; line-height: 1.4; font-weight: 600; letter-spacing: -.02em; }
.sw-auth-card { display: flex; flex-direction: column; gap: 24px; }
.sw-auth-language { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; color: var(--sw-primitive-color-muted); }
.sw-auth-language .sw-primitive-control { width: 160px; max-width: 100%; min-height: 44px; }
.sw-auth-card__header h1 { margin: 0; font-size: var(--sw-primitive-type-page-title-size); font-weight: 700; line-height: 1.35; letter-spacing: -.02em; }
.sw-auth-card__header p { margin: 8px 0 0; color: var(--sw-primitive-color-muted); }
.sw-auth-form { display: grid; gap: 16px; min-width: 0; }
.sw-auth-field { display: grid; min-width: 0; gap: 8px; font-weight: 500; }
.sw-auth-field .sw-primitive-control { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; }
.sw-auth-form .sw-primitive-button { min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
.sw-auth-submit { box-sizing: border-box; width: 100%; max-width: 100%; }
.sw-auth-error { margin: 0; padding: 12px; border: 1px solid var(--sw-primitive-color-danger); border-radius: var(--sw-primitive-radius-control); background: var(--sw-primitive-color-danger-surface); color: var(--sw-primitive-color-danger); overflow-wrap: anywhere; }
.sw-auth-error:focus-visible { outline: 2px solid var(--sw-primitive-color-accent); outline-offset: 2px; }
.sw-auth-status { margin: 0; color: var(--sw-primitive-color-muted); }
.sw-auth-session-notice { margin: auto 0 0; padding-top: 16px; border-top: var(--sw-primitive-border-default); color: var(--sw-primitive-color-muted); }
@media (max-width: 680px) {
  .sw-auth-page { padding: 16px; align-items: start; }
  .sw-auth-shell { grid-template-columns: minmax(0, 1fr); }
  .sw-auth-brand-panel { padding: 16px 24px; gap: 0; }
  .sw-auth-brand-panel__copy { display: none; }
  .sw-auth-card { padding: 24px; }
  .sw-auth-language { justify-content: flex-start; }
  .sw-auth-page :is(input,select) { font-size: 16px; }
}
@media (max-width: 360px) { .sw-auth-card { padding: 16px; } }

/*!***************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!./src/app/shop-admin-dir134-visual-lock.css ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************/
html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  background: var(--sw-primitive-color-page);
}

body {
  overflow: hidden;
}

.sw-admin-shell {
  --sw-admin-shell-rail-width: 5.75rem;
  --sw-admin-shell-context-width: 14.25rem;
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
  grid-template-columns: var(--sw-admin-shell-rail-width) minmax(0, 1fr);
}

.sw-admin-shell[data-drawer-open="true"] {
  grid-template-columns: var(--sw-admin-shell-rail-width) var(--sw-admin-shell-context-width) minmax(0, 1fr);
}

.sw-admin-shell__rail {
  position: sticky;
  top: 0;
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
  background: linear-gradient(180deg, #111111, #151515);
}

.sw-admin-shell__workspace {
  height: 100vh;
  min-height: 0;
  overflow: hidden;
}

.sw-admin-shell__header {
  flex: 0 0 auto;
}

.sw-admin-shell__layout {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr);
}

.sw-admin-shell__context {
  height: 100vh;
  min-height: 100vh;
  overflow: auto;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  background: linear-gradient(180deg, #151515, #0b0b0b);
  color: #d4d4d4;
  box-shadow: 14px 0 30px rgba(15, 23, 42, 0.14);
}

.sw-admin-shell__main {
  height: 100%;
  min-height: 0;
  overflow: auto;
}

.sw-admin-shell__brand {
  justify-content: center;
}

.sw-admin-shell__brand span:not(.sw-admin-shell__brand-mark),
.sw-admin-shell__rail-meta,
.sw-admin-shell__rail-badge,
.sw-admin-shell__rail-footer {
  display: none !important;
}

.sw-admin-shell__rail-item-frame {
  position: relative;
  width: 100%;
  min-height: 4.25rem;
}

.sw-admin-shell__rail-item {
  width: 100%;
  min-height: 4.25rem;
  justify-content: center;
  flex-direction: column;
  padding: 0.55rem 1.1rem 0.55rem 0.45rem;
}

.sw-admin-shell__rail-copy {
  display: block !important;
  min-width: 0;
  max-width: 3.8rem;
  flex: initial;
  text-align: center;
}

.sw-admin-shell__rail-label {
  display: block;
  overflow: hidden;
  color: currentColor;
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sw-admin-shell__rail-chevron-button {
  position: absolute;
  top: 50%;
  right: 0.18rem;
  display: grid;
  place-items: center;
  width: 1.25rem;
  height: 1.7rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #a3a3a3;
  cursor: pointer;
  transform: translateY(-50%);
}

.sw-admin-shell__rail-chevron-button:hover,
.sw-admin-shell__rail-chevron-button:focus-visible,
.sw-admin-shell__rail-chevron-button[data-active="true"] {
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

.sw-admin-shell__rail-chevron-button:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.72);
  outline-offset: 2px;
}

.sw-admin-shell__rail-chevron-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.sw-admin-shell__rail-chevron {
  position: static;
  width: 0.85rem;
  height: 0.85rem;
  transform: none;
}

.sw-admin-shell__rail-chevron-button[aria-expanded="true"] .sw-admin-shell__rail-chevron {
  transform: rotate(180deg);
}

.sw-admin-shell__context-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.sw-admin-shell__context-pin {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: #a3a3a3;
  cursor: pointer;
}

.sw-admin-shell__context-pin:hover,
.sw-admin-shell__context-pin:focus-visible,
.sw-admin-shell__context-pin[data-pinned="true"] {
  border-color: rgba(255, 255, 255, 0.38);
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

.sw-admin-shell__context-pin:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.72);
  outline-offset: 2px;
}

.sw-admin-shell__context-pin[data-pinned="true"] svg {
  transform: rotate(-28deg);
}

.sw-admin-shell__context-pin svg {
  width: 0.9rem;
  height: 0.9rem;
}

.sw-admin-shell__context .sw-admin-shell__eyebrow {
  color: #a3a3a3;
}

.sw-admin-shell__context-title {
  color: #f5f5f5;
  font-size: 1.2rem;
}

.sw-admin-shell__context-list {
  gap: 0.4rem;
}

.sw-admin-shell__context-item {
  min-height: 2.55rem;
  border-color: transparent;
  border-radius: 0.8rem;
  color: #d4d4d4;
}

.sw-admin-shell__context-item:hover,
.sw-admin-shell__context-item:focus-visible {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
}

.sw-admin-shell__context-item[data-active="true"] {
  border-color: rgba(255, 255, 255, 0.92);
  background: #ffffff;
  color: #1d4ed8;
}

.sw-admin-shell__context-item:disabled,
.sw-admin-shell__context-reason {
  color: #8f8f8f;
}

.sw-admin-shell__context-reason {
  margin-top: 0.35rem;
  font-size: 0.72rem;
}

.sw-admin-shell__context-note {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
  color: #a3a3a3;
}

.sw-admin-shell__context-note svg {
  color: #d4d4d4;
}

/*!*********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-locale-select.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-locale-navigation { box-sizing: border-box; min-width: 0; margin: 0; color: inherit; overflow-wrap: anywhere; }
.sw-locale-navigation fieldset { min-width: 0; border: 0; padding: 0; margin: 0; }
.sw-locale-navigation__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sw-locale-navigation__selector { position: relative; display: inline-grid; grid-template-columns: 20px minmax(0, 1fr) 14px; align-items: center; gap: 8px; max-width: 100%; min-height: 44px; padding-inline: 10px; background: #fff; color: #222; }
.sw-locale-navigation__selector > svg { width: 20px; height: 20px; pointer-events: none; }
.sw-locale-navigation__selector > .sw-locale-navigation__chevron { width: 14px; height: 14px; }
.sw-locale-navigation__display { font: inherit; font-size: 14px; font-weight: 400; line-height: 1.5; pointer-events: none; }
.sw-locale-navigation__selector select { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 44px; padding: 0; border: 0; border-radius: 0; opacity: 0; font: inherit; cursor: pointer; }
.sw-locale-navigation__selector:focus-within { outline: 2px solid currentColor; outline-offset: 3px; }
.sw-locale-navigation__selector select:focus { outline: 0; }
.sw-locale-navigation p { margin: 8px 0 0; max-width: 42rem; font-size: 13px; line-height: 1.5; }
.sw-locale-navigation button { min-height: 44px; font: inherit; color: inherit; background: transparent; border: 1px solid currentColor; padding: 6px 10px; }

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/buyer-form-primitives.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Buyer form presentation only. No global reset, theme replacement or rules
 * targeting historical public snapshots, Shop Admin, checkout or product pages. */
/* One typographic line survives pending/empty values. Data and validity never
   live in CSS; callers keep the matching owner value or pass null. Longer real
   text grows naturally. No animation or layout measurement affects scrolling. */
.sw-buyer-async-value { display: inline-block; position: relative; min-inline-size: min(6ch, 100%); min-block-size: 1lh; max-inline-size: 100%; overflow-wrap: anywhere; vertical-align: baseline; }
.sw-buyer-async-value__geometry { visibility: hidden; }
/* A localized message may occupy the same slot as another state. Only fixed
 * interface copy belongs in the invisible sizing layer, never private data. */
.sw-buyer-stable-label { display: grid; min-width: 0; }
.sw-buyer-stable-label > span { grid-area: 1 / 1; min-width: 0; }
.sw-buyer-stable-label > [aria-hidden="true"] { visibility: hidden; }
.sw-buyer-stable-label > [data-label]::before { content: attr(data-label); }
.sw-buyer-async-value[data-sw-async-value="pending"]::before { content: ''; position: absolute; inset-inline-start: 0; inset-block-start: .3em; inline-size: min(6ch, 100%); block-size: .65em; border-radius: 2px; background: currentColor; opacity: .12; pointer-events: none; }
.sw-buyer-forms { min-width: 0; line-height: 1.6; }
.sw-buyer-forms :is(p, h1, h2, h3) { margin: 0; }
.sw-buyer-forms :is(button, input, select, textarea) { font-family: inherit; font-size: 1rem; line-height: 1.5; }
.sw-buyer-forms :is(button, input, select, textarea, a, h1, h2, h3, [role="alert"]) {
  scroll-margin-block-start: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 1rem);
}
.sw-buyer-forms button { cursor: pointer; }
.sw-buyer-forms button:disabled { cursor: default; opacity: .6; }
.sw-buyer-form-stack, .sw-buyer-form-fieldset { display: grid; min-width: 0; gap: 1rem; }
.sw-buyer-form-field { display: grid; min-width: 0; gap: .5rem; }
/* Public and member Order facts share bounded columns. A long translated
 * value must wrap inside its own track, never consume the label's width. */
.sw-buyer-form-facts { display: grid; min-width: 0; margin: 0; grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); gap: .5rem 1rem; }
.sw-buyer-form-facts > :is(dt, dd) { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.sw-buyer-form-facts > dd { text-align: end; }
.sw-buyer-form-section { display: grid; min-width: 0; gap: 1rem; border-top: 1px solid var(--sw-color-border); padding-top: 1.5rem; }
.sw-buyer-form-fieldset { margin: 0; padding: 0; border: 0; }
.sw-buyer-form-fieldset:disabled { opacity: .6; }
.sw-buyer-form-heading { min-width: 0; overflow-wrap: anywhere; color: var(--sw-color-text); font-size: 1.25rem; line-height: 1.35; font-weight: var(--sw-theme-heading-weight, 700); }
.sw-buyer-form-input {
  box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 44px;
  padding: .5rem .75rem; border: 1px solid var(--sw-color-border); border-radius: var(--sw-radius-control);
  background: var(--sw-color-surface-panel); color: var(--sw-color-text); font: inherit;
}
.sw-buyer-form-input:focus-visible, .sw-buyer-form-link:focus-visible {
  outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px;
}
.sw-buyer-form-checkbox { margin: 0; width: 1.25rem; height: 1.25rem; flex-shrink: 0; accent-color: var(--sw-color-accent); }
.sw-buyer-form-check-row { display: flex; min-width: 0; min-height: 44px; align-items: center; gap: .75rem; line-height: 1.6; }
.sw-buyer-form-link { display: inline-flex; min-height: 44px; min-width: 0; max-width: 100%; align-items: center; overflow-wrap: anywhere; color: var(--sw-color-accent); text-decoration: underline; text-underline-offset: .25em; }
.sw-buyer-form-actions { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .75rem; }
.sw-buyer-feedback { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.sw-buyer-feedback__message { flex: 1 1 16rem; min-width: 0; overflow-wrap: anywhere; line-height: 1.6; color: var(--sw-color-text-muted); }
.sw-buyer-feedback__message[role="alert"] { color: var(--sw-color-text); }
.sw-buyer-forms button[aria-disabled="true"] { opacity: .65; cursor: not-allowed; }
.sw-buyer-owner-read { min-width: 0; }
.sw-buyer-owner-snapshot { display: grid; min-width: 0; gap: inherit; }
.sw-buyer-owner-snapshot[data-unavailable="true"] { visibility: hidden; }
.sw-buyer-owner-initial { display: grid; min-block-size: 5rem; gap: .75rem; align-content: start; padding-block: .5rem; }
.sw-buyer-owner-initial > span { inline-size: 75%; block-size: 1em; background: var(--sw-color-border); opacity: .55; }
.sw-buyer-owner-initial > span:last-child { inline-size: 50%; }
.sw-buyer-orders__read-region { min-width: 0; }
.sw-buyer-orders__read-region:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-buyer-orders__pagination { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: .75rem; align-items: start; }
.sw-buyer-orders__pagination > span { text-align: center; }
/* Long translated action labels must not squeeze the real result count into
   one letter per line. Preview and public pages use this same container. */
@container sw-buyer-account (max-width: 30rem) {
  .sw-buyer-orders__pagination { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-buyer-orders__pagination > span { grid-column: 1 / -1; grid-row: 1; }
  .sw-buyer-orders__pagination > button:first-child { grid-column: 1; grid-row: 2; }
  .sw-buyer-orders__pagination > button:last-child { grid-column: 2; grid-row: 2; }
}
.sw-buyer-feedback__message:focus { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }

/* Account console presentation. BuyerIdentity and every child controller keep
 * their original writers; this only gives the published account surface the
 * agreed desktop navigation/content hierarchy and a compact mobile rail. */
.sw-buyer-account { container: sw-buyer-account / inline-size; position: relative; padding: clamp(1rem, 4vw, 2.5rem); font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif); }
/* Account/recovery and opt-in Contact use one ink form family. The host's
 * theme tokens and shared action behavior remain authoritative. */
:is(.sw-buyer-account, .sw-buyer-forms--ink) :is(button, .sw-buyer-form-input, a[class*="rounded-"]) { border-radius: min(var(--sw-radius-control), .35rem); }
:is(.sw-buyer-account, .sw-buyer-forms--ink) .sw-buyer-form-primary-action { background: var(--sw-color-text); border-color: var(--sw-color-text); color: var(--sw-color-surface-panel); }
:is(.sw-buyer-account, .sw-buyer-forms--ink) .sw-buyer-form-link { color: var(--sw-color-text); }
:is(.sw-buyer-account, .sw-buyer-forms--ink) .sw-buyer-form-checkbox { accent-color: var(--sw-color-text); }
/* Preserve live regions and described-by targets without duplicate status rows.
 * Forms opt in with their original authority; Cart's routine read progress is
 * already visible on its disabled checking action. Errors do not opt in. */
.sw-buyer-forms .sw-buyer-feedback--quiet,
.sw-product-cart-action__purchase > .sw-buyer-feedback--quiet,
.sw-buyer-account .sw-buyer-account-feedback--quiet {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.sw-buyer-forms [data-feedback-request][aria-busy="true"] { box-shadow: inset 0 2px var(--sw-color-border, #e5e5e5); }
.sw-buyer-account > .sw-buyer-form-stack:first-child :is(h1,h2) { font-size: clamp(1.75rem, 3cqw, 2.25rem); line-height: 1.15; font-weight: 700; }
.sw-buyer-account-console { display: grid; min-width: 0; gap: 1.5rem; }
.sw-buyer-account-console__nav { display: flex; min-width: 0; gap: .25rem; overflow-x: auto; padding-block: .5rem; border-block: 1px solid var(--sw-color-border); }
.sw-buyer-account-console__nav-link { display: inline-flex; min-height: 44px; flex: 0 0 auto; align-items: center; padding: .5rem .75rem; color: var(--sw-color-text); text-decoration: none; white-space: nowrap; }
.sw-buyer-account-console__nav-link:hover { text-decoration: underline; text-underline-offset: .25em; }
.sw-buyer-account-console__nav-link:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: -3px; }
.sw-buyer-account-console__content { display: grid; min-width: 0; gap: 2rem; }
.sw-buyer-account-console__content > .sw-buyer-form-section:first-child { border-top: 0; padding-top: 0; }
.sw-buyer-account-console :is(button,a[class*="rounded-"]) { border-radius: .25rem !important; }
.sw-buyer-account-console__content :is(.sw-buyer-form-section,.sw-buyer-form-fieldset,.sw-buyer-form-stack) > button,
.sw-buyer-account-console__content .sw-buyer-form-section > a,
.sw-buyer-account-console__content form > button { width: auto; justify-self: start; }

@container sw-buyer-account (min-width: 48rem) {
  .sw-buyer-account-console { grid-template-columns: minmax(11rem, 14rem) minmax(0, 1fr); gap: clamp(2rem, 4cqw, 3.5rem); align-items: start; }
  .sw-buyer-account-console__nav { position: sticky; top: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 1rem); display: grid; gap: .15rem; overflow: visible; padding: 0 1.5rem 0 0; border-block: 0; }
  .sw-buyer-account-console__nav-link { border-bottom: 1px solid var(--sw-color-border); white-space: normal; }
  .sw-buyer-account-console__content { padding-left: clamp(1.5rem, 3cqw, 2.5rem); border-left: 1px solid var(--sw-color-border); }
}

/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-inquiry.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
/* Contact layout only; controls, ink actions and focus use buyer-form-primitives.
 * The host alone owns private fields, pending requests and receipts. */
.sw-inquiry { container-type: inline-size; box-sizing: border-box; width: 100%; max-width: 48rem; margin-inline: auto; padding: 2rem 1rem; color: var(--sw-color-text); background: var(--sw-color-surface-page); overflow-wrap: anywhere; font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif); }
.sw-inquiry h2 { font-size: 1.5rem; margin: 0 0 1rem; }
.sw-inquiry p { margin: 1rem 0; line-height: 1.8; }
.sw-inquiry fieldset { margin: 1.5rem 0; }
.sw-inquiry legend { font-weight: 600; margin-bottom: 1rem; }
.sw-inquiry__identity { display: grid; min-width: 0; gap: 1rem; }
/* A narrow editor canvas must stack even inside a desktop browser. */
@container (min-width: 36rem) {
  .sw-inquiry__identity { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.sw-inquiry textarea { resize: vertical; }
.sw-inquiry__submit { width: 100%; }
.sw-inquiry .sw-buyer-feedback__message:not(:empty) { padding: 1rem; border: 1px solid var(--sw-color-border, currentColor); line-height: 1.7; }
.sw-inquiry-preview__controls select { font: inherit; box-sizing: border-box; min-height: 44px; max-width: 100%; padding: .75rem; border: 1px solid var(--sw-color-border, currentColor); border-radius: var(--sw-radius-control, .375rem); color: inherit; background: var(--sw-color-surface-page); }
.sw-inquiry-preview__controls select:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, currentColor); outline-offset: 3px; }
.sw-inquiry .sw-inquiry__trap { display: none; }
.sw-inquiry-preview { min-width: 0; }
.sw-inquiry-preview__controls { box-sizing: border-box; max-width: 48rem; margin-inline: auto; padding: 1rem; border-top: 1px solid var(--sw-color-border, currentColor); color: var(--sw-color-text); font: inherit; }
.sw-inquiry-preview__controls p { margin: 0 0 1rem; line-height: 1.6; }
.sw-inquiry-preview__controls label { display: grid; gap: .5rem; }

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/marketing-subscription.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Only the explicit opt-in newsletter form. The existing editorial section
 * supplies its saved width, type, tone and spacing; no shell or other form reset. */
.sw-marketing-subscription { display: grid; gap: 1rem; width: 100%; max-width: 42rem; margin-top: 1.5rem; color: inherit; }
.sw-marketing-subscription form { display: grid; gap: 1rem; min-width: 0; }
.sw-marketing-subscription__entry { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .75rem; align-items: end; }
.sw-marketing-subscription .sw-buyer-form-check-row { align-items: flex-start; padding-block: .5rem; }
.sw-marketing-subscription .sw-buyer-form-checkbox { margin-top: .2rem; accent-color: var(--sw-color-text); }
.sw-marketing-subscription button { min-width: 0; max-width: 100%; min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
.sw-marketing-subscription__submit { height: auto; padding: .65rem 1rem; border: 1px solid var(--sw-color-text); background: var(--sw-color-surface-panel); color: var(--sw-color-text); border-radius: var(--sw-radius-control); }
/* The secondary actions sit directly on the saved editorial tone. Reusing a
 * light page's text token made withdrawal/recovery labels invisible on dark
 * closings. Keep the original action dimensions and transparent surface. */
.sw-marketing-subscription button[type="button"] { color: inherit; border-color: currentColor; }
.sw-marketing-subscription a { color: inherit; }
.sw-marketing-subscription .sw-marketing-subscription__notice { font-size: .875rem; line-height: 1.65; }
.sw-marketing-subscription__status:empty { height: 0; overflow: hidden; }
.sw-marketing-subscription :is(input,button,a,[role="status"],[role="alert"]):focus-visible { outline: 3px solid; outline-color: inherit; outline-offset: 3px; }
.sw-marketing-subscription > .sw-buyer-form-stack { justify-items: start; }
@container sw-editorial (max-width: 600px) {
  .sw-marketing-subscription__entry { grid-template-columns: minmax(0,1fr); }
  .sw-marketing-subscription__submit { width: 100%; }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-focus.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************/
/* Opt-in non-interactive landmarks only. Inputs, buttons, links, menus and
 * dialogs retain their own focus-visible rings in the existing theme. */
[data-sw-focus-region][tabindex="-1"]:is(h1,h2,h3,h4,h5,h6,div,p,section,main,article):focus {
  outline: none;
}

/* A native keyboard/skip-link arrival or lost-control recovery gets a narrow
 * context marker, never a rectangle around the whole page. No geometry moves. */
[data-sw-focus-region][tabindex="-1"]:is(div,p,section,main,article):focus-visible:not([data-sw-focus-indicator="quiet"]) {
  box-shadow: inset 2px 0 0 var(--sw-color-focus-indicator, currentColor);
}
[data-sw-focus-region][tabindex="-1"]:is(h1,h2,h3,h4,h5,h6):focus-visible:not([data-sw-focus-indicator="quiet"]) {
  text-decoration: underline;
  text-decoration-color: var(--sw-color-focus-indicator, currentColor);
  text-decoration-thickness: 2px;
  text-underline-offset: .2em;
}
@media (forced-colors: active) {
  [data-sw-focus-region][tabindex="-1"]:is(div,p,section,main,article):focus-visible:not([data-sw-focus-indicator="quiet"]) {
    box-shadow: none;
    outline: 2px solid Highlight;
    outline-offset: 2px;
  }
}

/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-reviews.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
/* Shared review presentation only; the app owns all data and commands. */
.sw-reviews {
  --sw-reviews-focus: var(--sw-color-text, #151515);
  container: sw-reviews / inline-size;
  scroll-margin-block-start: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 1rem);
  --sw-review-gap: 1rem;
  --sw-review-panel-space: 1.5rem;
  box-sizing: border-box; display: grid; gap: var(--sw-review-gap); min-width: 0;
  padding: var(--sw-review-panel-space);
  border: 1px solid var(--sw-color-border, #e5e5e5);
  font-size: .9375rem; line-height: 1.65;
  color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff);
  font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif);
  overflow-wrap: anywhere;
}
.sw-reviews[data-background="soft"] { background: var(--sw-color-surface-page, #f5f5f5); }
.sw-reviews[data-background="dark"] { --sw-reviews-focus: var(--sw-color-inverse-text, #fff); background: var(--sw-color-inverse-surface, #151515); color: var(--sw-color-inverse-text, #fff); }
.sw-reviews[data-spacing="compact"] { --sw-review-gap: .75rem; --sw-review-panel-space: 1rem; }
.sw-reviews[data-spacing="balanced"] { --sw-review-panel-space: 1.25rem; }
.sw-reviews[data-spacing="generous"] { --sw-review-gap: 1.5rem; --sw-review-panel-space: 1.5rem; }
.sw-reviews__header, .sw-reviews__published, .sw-reviews__request,
.sw-reviews__summary, .sw-reviews form { display: grid; min-width: 0; gap: 1rem; }
.sw-reviews__header { gap: .5rem; }
.sw-reviews .sw-reviews__header h2 { margin: 0; font-size: 1.6875rem; line-height: 1.4074; font-weight: 500; }
.sw-reviews .sw-reviews__header h2:lang(en) { font-weight: 400; }
.sw-reviews__header p, .sw-reviews__text { white-space: pre-wrap; margin: 0; }
.sw-reviews__text:lang(en) { font-size: .875rem; line-height: 1.5; }
.sw-reviews__overview { display: grid; grid-template-columns: minmax(10rem, .7fr) minmax(16rem, 1fr) minmax(12rem, 1.2fr); align-items: start; gap: 1.5rem; }
.sw-reviews__overview:empty { display: none; }
.sw-reviews__summary { gap: .5rem; align-content: start; }
.sw-reviews__summary p { margin: 0; font-size: .875rem; }
.sw-reviews__summary > strong { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; font-size: 1.125rem; font-weight: 500; }
.sw-reviews__entry-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; }
.sw-reviews__entry-actions button { font-size: .875rem; font-weight: 400; }
.sw-reviews__tools { display: flex; align-items: end; flex-wrap: wrap; gap: .75rem 1rem; }
.sw-reviews__matching { margin: 0; font-size: .875rem; align-self: center; }
.sw-review-rating { display: inline-flex; flex: 0 0 auto; gap: .1rem; line-height: 0; vertical-align: middle; color: inherit; }
.sw-review-rating svg { display: block; flex: 0 0 16px; }
.sw-reviews__rating { display: inline-flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.sw-reviews__list, .sw-reviews__distribution { list-style: none; margin: 0; padding: 0; }
.sw-reviews__list > li { display: grid; gap: .5rem; border-top: 1px solid var(--sw-color-border, currentColor); padding-block: 1rem; }
.sw-reviews__byline, .sw-reviews__pagination { display: flex; gap: .5rem 1rem; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.sw-reviews__byline { justify-content: flex-start; font-size: .8125rem; }
.sw-reviews__author { display: flex; align-items: baseline; flex-wrap: wrap; gap: .25rem .75rem; }
.sw-reviews__author strong { font-weight: 500; }
.sw-reviews .sw-reviews__review-title { margin: .25rem 0 0; font-size: 1rem; line-height: 1.5; font-weight: 600; }
.sw-reviews__source, .sw-reviews__management { margin: 0; font-size: .8125rem; }
.sw-reviews__management { max-width: 65ch; }
.sw-reviews__merchant-reply { margin:0; padding:1rem; border-inline-start:2px solid var(--sw-color-border,currentColor); display:grid; gap:.75rem; }
.sw-reviews__merchant-reply > :is(p,strong,time) { margin:0; }
.sw-reviews__merchant-reply time { font-size:.875rem; }
.sw-reviews__distribution { display: grid; gap: .25rem; font-size: .75rem; }
.sw-reviews__distribution li { display: grid; grid-template-columns: 5.5rem minmax(3rem, 1fr) 2.25rem 2.5rem; align-items: center; gap: .375rem; }
.sw-reviews__distribution .sw-review-rating svg { flex-basis: 16px; }
.sw-reviews meter { width: 100%; height: .875rem; appearance: none; color: inherit; background: transparent; }
.sw-reviews meter::-webkit-meter-bar { border: 1px solid var(--sw-color-border, #ddd); border-radius: 0; background: var(--sw-color-surface-panel, #fff); }
.sw-reviews meter::-webkit-meter-optimum-value { background: currentColor; }
.sw-reviews meter::-moz-meter-bar { background: currentColor; }
.sw-reviews__sort { display: grid; gap: .375rem; justify-self: start; max-width: 100%; font-size: .8125rem; }
.sw-reviews__sort select { min-height: 44px; font: inherit; width: auto; max-width: 100%; }
.sw-reviews__identity-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; }
.sw-reviews__write { border-top: 1px solid currentColor; padding-top: 1rem; }
.sw-reviews__write > p { margin-block: 1rem; }
.sw-reviews summary { min-height: 44px; box-sizing: border-box; padding-block: .6rem; cursor: pointer; }
.sw-reviews button { min-height: 44px; min-width: 0; max-width: 100%; padding: .65rem 1rem; border: 1px solid currentColor; border-radius: min(var(--sw-radius-control, .25rem), .35rem); color: inherit; background: transparent; white-space: normal; overflow-wrap: anywhere; }
.sw-reviews button[type="submit"] { justify-self: start; color: var(--sw-color-surface-panel, #fff); background: var(--sw-color-text, #151515); border-color: var(--sw-color-text, #151515); }
.sw-reviews[data-background="dark"] button[type="submit"] { color: var(--sw-color-inverse-surface, #151515); background: var(--sw-color-inverse-text, #fff); border-color: var(--sw-color-inverse-text, #fff); }
.sw-reviews .sw-buyer-form-input { border-radius: min(var(--sw-radius-control, .25rem), .35rem); }
.sw-reviews .sw-buyer-form-check-row { align-items: flex-start; padding-block: .5rem; }
.sw-reviews .sw-buyer-form-checkbox { margin-top: .2rem; }
.sw-reviews a { color: inherit; }
.sw-reviews [role="status"]:empty { height: 0; overflow: hidden; }
.sw-reviews :is(button, input, select, textarea, a, summary):focus-visible,
.sw-reviews :is([role="status"], [role="alert"]):focus { outline: 3px solid var(--sw-reviews-focus); outline-offset: 3px; }
.sw-product-review-summary { min-width: 0; max-width: 100%; margin: 0; font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; color: inherit; }
.sw-product-review-summary a { display: inline-flex; align-items: center; max-width: 100%; min-height: 44px; color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.sw-product-review-summary a > span { display: flex; align-items: center; flex-wrap: wrap; gap: .3rem .75rem; }
.sw-product-review-summary strong { font-size: 1rem; }
.sw-product-review-summary a:focus-visible, .sw-reviews:focus { outline: 3px solid var(--sw-reviews-focus, currentColor); outline-offset: 3px; }
/* Home changes layout only; the list/source/focus implementation is shared. */
.sw-reviews__overview[data-read-error="true"] > :is(.sw-reviews__summary,.sw-reviews__distribution) { visibility: hidden; }
.sw-reviews__summary[data-review-placeholder] { min-block-size: 40px; }
.sw-reviews__distribution[data-review-placeholder] { min-block-size: 113px; box-sizing: border-box; }
[data-review-placeholder] > span { display: block; block-size: 1em; background: var(--sw-color-border, #e5e5e5); opacity: .55; }
.sw-product-review-summary[aria-busy="true"] a, .sw-product-question-summary[aria-busy="true"] a { opacity: .65; }
.sw-home-reviews { padding: 1.5rem 0 0; border: 0; color: inherit; background: transparent; --sw-reviews-focus: currentColor; }
.sw-home-reviews .sw-reviews__overview { grid-template-columns: minmax(0, 1fr) minmax(16rem, 1fr); }
.sw-home-reviews .sw-reviews__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.sw-public-editorial[data-columns="2"] .sw-home-reviews .sw-reviews__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sw-home-reviews .sw-reviews__list > li { align-content: start; padding-block: 1.25rem; }
.sw-home-reviews .sw-reviews__list > li > a { min-height: 44px; color: inherit; }
.sw-product-module[data-product-module="reviews"] { container: sw-product-reviews-frame / inline-size; }
@container sw-product-reviews-frame (max-width: 719px) {
  .sw-reviews[data-sw-reviews-mode] { padding: 1rem; }
}
@container sw-reviews (max-width: 759px) {
  .sw-reviews__overview, .sw-home-reviews .sw-reviews__overview { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .sw-reviews__distribution { width: 100%; max-width: 24rem; }
  .sw-reviews__entry-actions { justify-content: flex-start; }
  .sw-reviews .sw-reviews__header h2 { font-size: 1.5rem; line-height: 1.4167; }
}
@container sw-reviews (max-width: 679px) {
  .sw-home-reviews .sw-reviews__list, .sw-public-editorial[data-columns="2"] .sw-home-reviews .sw-reviews__list { grid-template-columns: minmax(0, 1fr); }
}
@container sw-reviews (max-width: 600px) {
  .sw-reviews__identity-fields { grid-template-columns: minmax(0, 1fr); }
}

/*!********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-product-image-viewer.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Same qualified media, native top-layer modality, and existing theme tokens.
   Keep the enlargement independent of gallery presets and editor clipping. */
.sw-product-image-viewer__trigger { grid-column: 1 / -1; justify-self: start; min-width: 44px; min-height: 44px; margin-block: .5rem; padding: .65rem 1rem; border: 1px solid var(--sw-color-border, #aaa); border-radius: var(--sw-radius-control, 0); background: var(--sw-color-surface-panel, #fff); color: var(--sw-color-text, #151515); font: inherit; cursor: zoom-in; }
.sw-product-image-viewer__trigger[hidden] { display: none; }
.sw-product-image-viewer { box-sizing: border-box; width: min(94vw, 76rem); height: min(92dvh, 64rem); max-width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); margin: auto; padding: clamp(.75rem, 2vw, 1.5rem); border: 1px solid var(--sw-color-border, #aaa); border-radius: var(--sw-radius-card, 0); color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff); overflow: hidden; font-family: var(--sw-theme-body-font, inherit); text-align: start; }
.sw-product-image-viewer:not([open]) { display: none; }
.sw-product-image-viewer[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto auto auto; gap: .65rem; }
.sw-product-image-viewer::backdrop { background: rgb(0 0 0 / .72); }
.sw-product-image-viewer *, .sw-product-image-viewer *::before, .sw-product-image-viewer *::after { box-sizing: border-box; }
.sw-product-image-viewer__heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-width: 0; }
.sw-product-image-viewer__heading h2 { margin: 0; font-size: clamp(1.1rem, 3vw, 1.5rem); line-height: 1.35; color: inherit; }
.sw-product-image-viewer button { min-height: 44px; min-width: 44px; padding: .55rem .75rem; border: 1px solid var(--sw-color-border, #aaa); border-radius: var(--sw-radius-control, 0); background: var(--sw-color-surface-panel, #fff); color: inherit; font: inherit; line-height: 1.35; cursor: pointer; }
.sw-product-image-viewer button:disabled { opacity: .5; cursor: not-allowed; }
.sw-product-image-viewer button:focus-visible, .sw-product-image-viewer__trigger:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 2px; }
.sw-product-image-viewer__stage { min-width: 0; min-height: 0; overflow: auto; overscroll-behavior: contain; touch-action: pan-y pinch-zoom; background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-product-image-viewer__stage[data-zoomed="true"] { touch-action: pan-x pan-y pinch-zoom; }
.sw-product-image-viewer__frame { width: min(100%, calc(58dvh * var(--sw-product-viewer-ratio, 1))); aspect-ratio: var(--sw-product-viewer-ratio, 1); margin-inline: auto; }
.sw-product-image-viewer__stage[data-zoomed="true"] .sw-product-image-viewer__frame { width: min(200%, calc(116dvh * var(--sw-product-viewer-ratio, 1))); max-width: none; }
.sw-product-image-viewer .sw-product-image-viewer__frame > :is(img,figure) { width: 100%; height: 100%; max-width: none; margin: 0; aspect-ratio: var(--sw-product-viewer-ratio, 1) !important; }
.sw-product-image-viewer__caption, .sw-product-image-viewer__hint { margin: 0; overflow-wrap: anywhere; font-size: .875rem; line-height: 1.5; }
.sw-product-image-viewer__hint { color: var(--sw-color-text-muted, #555); }
.sw-product-image-viewer__controls { display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: .5rem; }
.sw-product-image-viewer__error { min-height: 100%; padding: 1rem; display: grid; place-content: center; gap: .75rem; text-align: center; }
.sw-product-image-viewer__error p { margin: 0; }
@media (max-height: 450px) {
  .sw-product-image-viewer[open] { gap: .25rem; padding: .5rem; }
  .sw-product-image-viewer__hint { display: none; }
}

/*!*************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-review-photos.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Review composition uses the existing buyer form and image-viewer families.
   Raster geometry is reserved before loading; originals never form a URL. */
.sw-review-photos, .sw-review-photo-fields { min-width: 0; max-width: 100%; font: inherit; color: inherit; }
.sw-review-photos { display: grid; gap: .5rem; }
.sw-review-photos__thumbnails { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 5px; min-width: 0; max-width: 100%; }
/* Reserve natural proportions before load. Bound exceptional panoramas/strips,
   without a group button, forced square crop or a second modal per photo. */
.sw-review-photos .sw-review-photos__thumbnail { box-sizing: border-box; display: grid; place-items: center; flex: 0 0 auto; width: min(240px, calc(120px * var(--sw-review-photo-ratio, 1))); max-width: 100%; min-width: 44px; height: 120px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; overflow: hidden; background: transparent; color: inherit; font: inherit; cursor: zoom-in; }
.sw-review-photos .sw-review-photos__thumbnail:disabled { cursor: default; }
.sw-review-photos .sw-review-photos__thumbnail:focus-visible { outline: 3px solid var(--sw-color-focus-indicator,#005fcc); outline-offset: 2px; }
.sw-review-photos__thumbnail img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sw-review-photos__thumbnail > span { padding: .25rem; font-size: .75rem; line-height: 1.4; overflow-wrap: anywhere; }
.sw-review-photos__full { display: block; object-fit: contain; }
.sw-review-photo-fields { margin: .75rem 0; padding: 1rem 0; border: 0; border-top: 1px solid var(--sw-color-border,currentColor); }
.sw-review-photo-fields legend { font: inherit; font-weight: 650; }
.sw-review-photo-fields p { margin: .5rem 0; font-size: .875rem; line-height: 1.6; overflow-wrap: anywhere; }
.sw-review-photo-fields input[type="file"][hidden] { display: none; }
.sw-review-photo-fields__item { display: grid; grid-template-columns: 5rem minmax(0,1fr); gap: .75rem; align-items: start; margin-block: 1rem; }
.sw-review-photo-fields__item > img { width: 5rem; height: 5rem; object-fit: contain; background: var(--sw-color-surface-muted,#f5f5f5); }
.sw-review-photo-fields__item > button { grid-column: 2; justify-self: start; min-height: 44px; white-space: normal; max-width: 100%; }
.sw-review-photo-fields input:focus-visible { outline: 3px solid var(--sw-color-focus-indicator,#005fcc); outline-offset: 3px; }

/*!********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-async-region.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************/
/* A shared geometric shell, not a cache or a second loading state owner.
   Both layers remain in normal grid sizing so long translated errors can grow. */
.sw-buyer-async-region { position: relative; display: grid; min-width: 0; gap: inherit; }
.sw-buyer-async-region__content, .sw-buyer-async-region__status { grid-area: 1 / 1; min-width: 0; }
.sw-buyer-async-region__content { display: grid; gap: inherit; align-content: start; }
.sw-buyer-async-region__content[data-concealed="true"] { visibility: hidden; }
.sw-buyer-async-region__status { align-self: start; justify-self: start; max-width: 100%; overflow-wrap: anywhere; }
.sw-buyer-async-region__status--quiet { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sw-buyer-async-region[data-sw-async-region="pending"]::after { content: ''; position: absolute; inset-inline: 0; inset-block-start: 0; block-size: 2px; background: var(--sw-color-border, #e5e5e5); pointer-events: none; }
.sw-buyer-async-region__placeholder { min-block-size: var(--sw-async-placeholder-height, 14rem); display: grid; align-content: start; gap: 1rem; padding-block-start: 2rem; box-sizing: border-box; }
.sw-buyer-async-region__placeholder > span { block-size: 1em; inline-size: 85%; background: var(--sw-color-border, #e5e5e5); opacity: .55; }
.sw-buyer-async-region__placeholder > span:last-child { inline-size: 60%; }

/*!*********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-questions.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Product Q&A shares the existing buyer form/theme. No private-message styles
   or rating semantics are reused as product data. */
.sw-questions { container: sw-product-questions / inline-size; display: grid; min-width: 0; width: 100%; gap: 1.5rem; padding: 1.5rem; color: var(--sw-color-text,#151515); background: var(--sw-color-surface-panel,#fff); box-sizing: border-box; scroll-margin-block-start: calc(var(--sw-site-header-height,0px) + var(--sw-site-announcement-height,0px) + 1rem); }
.sw-questions :is(p,h2,h3) { margin: 0; overflow-wrap: anywhere; }
.sw-questions__header, .sw-questions__request, .sw-questions__published, .sw-questions form { display: grid; min-width: 0; gap: 1rem; }
.sw-questions__header h2 { font-family: var(--sw-theme-heading-font,inherit); font-size: 1.6875rem; font-weight: 500; line-height: 1.4; }
.sw-questions__header > p { white-space: pre-wrap; }
.sw-questions__write { border-block: 1px solid var(--sw-color-border,#ddd); padding-block: .75rem; }
.sw-questions__write > summary { display: list-item; width: fit-content; max-width: 100%; min-height: 44px; align-content: center; cursor: pointer; }
.sw-questions__write > p { margin-block: .75rem 1rem; line-height: 1.6; }
.sw-questions__write form { max-width: 50rem; }
.sw-questions__list { margin: 0; padding: 0; list-style: none; display: grid; min-width: 0; }
.sw-questions__list > li { border-top: 1px solid var(--sw-color-border,#ddd); padding-block: 1.5rem; display: grid; gap: .75rem; min-width: 0; }
.sw-questions__byline { display: flex; flex-wrap: wrap; gap: .5rem 1rem; justify-content: space-between; align-items: baseline; }
.sw-questions__byline > strong { font-weight: 500; }
.sw-questions__text { white-space: pre-wrap; font-size: .9375rem; line-height: 1.65; }
.sw-questions__meta, .sw-questions__byline time { font-size: .8125rem; line-height: 1.6; color: var(--sw-color-text-muted,#555); }
.sw-questions__answer { border-inline-start: 2px solid var(--sw-color-border,#ddd); padding-inline-start: 1rem; display: grid; gap: .5rem; min-width: 0; }
.sw-questions__answer h3 { font-size: .9375rem; line-height: 1.5; font-weight: 500; }
.sw-questions :is(summary,a):focus-visible, .sw-questions:focus-visible { outline: 3px solid var(--sw-color-focus-indicator,#005fcc); outline-offset: 3px; }
.sw-product-question-summary { font-size: .875rem; line-height: 1.5; min-width: 0; }
.sw-product-question-summary a { color: inherit; text-underline-offset: .2em; }
@container sw-product-questions (max-width: 40rem) { .sw-questions__header h2 { font-size: 1.5rem; } }
@media (max-width: 47.99rem) { .sw-questions { padding: 1rem; } }

/*!*************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-hero-carousel.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-public-hero-carousel {
  container: sw-hero / inline-size;
  position: relative;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  isolation: isolate;
  background: #0b0b0b;
  color: #ffffff;
  border-radius: 0;
}

.sw-public-hero-carousel__stage {
  position: relative;
  min-block-size: clamp(25rem, 48cqw, 40rem);
  isolation: isolate;
  background: #0b0b0b;
}

.sw-public-hero-carousel[data-responsive-composition="r2"] .sw-public-hero-carousel__stage {
  block-size: max(
    0px,
    calc(
      var(--sw-hero-viewport-bottom, 100dvh)
      - var(--sw-hero-natural-flow-inset, var(--sw-site-announcement-height, 0px))
    )
  );
  min-block-size: 0;
}

.sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__stage {
  block-size: var(--sw-hero-viewport-bottom, 100dvh);
  min-block-size: 0;
}

[data-preview-mode="desktop"] .sw-public-hero-carousel:is([data-responsive-composition="r2"], [data-responsive-composition="r4"]) {
  --sw-hero-viewport-bottom: 900px;
}

[data-preview-mode="square"] .sw-public-hero-carousel:is([data-responsive-composition="r2"], [data-responsive-composition="r4"]) {
  --sw-hero-viewport-bottom: 1024px;
}

[data-preview-mode="mobile"] .sw-public-hero-carousel:is([data-responsive-composition="r2"], [data-responsive-composition="r4"]),
[data-preview-mode="portrait"] .sw-public-hero-carousel:is([data-responsive-composition="r2"], [data-responsive-composition="r4"]) {
  --sw-hero-viewport-bottom: 844px;
}

[data-preview-mode="landscape"] .sw-public-hero-carousel:is([data-responsive-composition="r2"], [data-responsive-composition="r4"]) {
  --sw-hero-viewport-bottom: 390px;
}

.sw-public-hero-carousel__slide {
  position: relative;
  min-width: 0;
}

.sw-public-hero-carousel__media,
.sw-public-hero-carousel__copy {
  position: absolute;
  inset: 0;
  min-width: 0;
}

.sw-public-hero-carousel__media {
  overflow: hidden;
  background: #0b0b0b;
}

.sw-public-hero-carousel__media::after {
  content: '';
  position: absolute;
  z-index: 2;
  inset: 0;
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.24) 0%, rgb(0 0 0 / 0.02) 34%, rgb(0 0 0 / 0.18) 64%, rgb(0 0 0 / 0.68) 100%),
    linear-gradient(90deg, rgb(0 0 0 / 0.34) 0%, transparent 44%, rgb(0 0 0 / 0.08) 100%);
  pointer-events: none;
}

.sw-public-hero-carousel .sw-public-hero-carousel__media img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  user-select: none;
  pointer-events: none;
}

.sw-public-hero-carousel__image {
  z-index: 1;
  object-fit: cover;
  object-position: var(--sw-hero-focal-x, 50%) var(--sw-hero-focal-y, 50%);
}

.sw-public-hero-carousel__backdrop {
  z-index: 0;
  display: none;
  object-fit: cover;
  object-position: var(--sw-hero-focal-x, 50%) var(--sw-hero-focal-y, 50%);
  filter: blur(28px) saturate(0.78) brightness(0.58);
  scale: 1.09;
  opacity: 0.84;
}

.sw-public-hero-carousel__media[data-background-policy="contain"] .sw-public-hero-carousel__image {
  object-fit: contain;
}

.sw-public-hero-carousel__media[data-background-policy="soft-extend"] .sw-public-hero-carousel__backdrop {
  display: block;
}

.sw-public-hero-carousel__media[data-background-policy="soft-extend"] .sw-public-hero-carousel__image {
  object-fit: contain;
}

/* R4 preserves the complete master image vertically. Width follows the
   intrinsic ratio, so only the left/right edges can leave the viewport. */
.sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__media {
  background: var(--sw-hero-side-fill, #0b0b0b);
}

.sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__image {
  inset-block: 0;
  inset-inline: auto;
  left: var(--sw-hero-focal-x, 50%);
  width: auto;
  max-width: none;
  height: 100%;
  transform: translateX(var(--sw-hero-focal-shift-x, -50%));
  object-fit: contain;
  object-position: 50% 50%;
}

.sw-public-hero-carousel__empty-media {
  position: absolute;
  z-index: 3;
  inset: 1rem auto auto 1rem;
  padding: 0.35rem 0.55rem;
  border: 1px solid rgb(255 255 255 / 0.38);
  background: rgb(0 0 0 / 0.56);
  color: #f2f2f2;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
}

.sw-public-hero-carousel__copy {
  z-index: 3;
  pointer-events: none;
}

.sw-public-hero-carousel__position {
  position: absolute;
  left: var(--sw-hero-x);
  top: var(--sw-hero-y);
  transform: translate(
    calc(var(--sw-hero-translate-x) + var(--sw-hero-offset-x)),
    calc(var(--sw-hero-translate-y) + var(--sw-hero-offset-y))
  );
  width: max-content;
  max-width: min(42rem, 82%);
  text-align: var(--sw-hero-text-align);
  pointer-events: auto;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__title {
  margin: 0;
  color: #ffffff;
  font-family: var(--sw-theme-heading-font, inherit);
  font-weight: var(--sw-theme-heading-weight, 680);
  font-size: clamp(1.7rem, 3.5cqw, 4.2rem);
  line-height: 1.03;
  letter-spacing: -0.035em;
  text-wrap: balance;
  overflow-wrap: anywhere;
  text-shadow: 0 2px 24px rgb(0 0 0 / 0.36);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="sm"] {
  font-size: clamp(1.2rem, 2.4cqw, 2.1rem);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="lg"] {
  font-size: clamp(2rem, 4.6cqw, 5rem);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="xl"] {
  font-size: clamp(2.35rem, 5.4cqw, 6.25rem);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__body {
  margin: 0;
  max-width: min(36rem, 72cqw);
  color: rgb(255 255 255 / 0.9);
  font-size: clamp(0.9rem, 1.05cqw, 1.08rem);
  font-weight: 420;
  line-height: 1.58;
  letter-spacing: 0.01em;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  text-shadow: 0 1px 16px rgb(0 0 0 / 0.42);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size="sm"] {
  font-size: 0.82rem;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size="lg"] {
  font-size: clamp(1rem, 1.35cqw, 1.28rem);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size="xl"] {
  font-size: clamp(1.1rem, 1.65cqw, 1.5rem);
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 8rem;
  min-height: 44px;
  padding: 0.7rem 1.2rem;
  border: 1px solid rgb(255 255 255 / 0.78);
  border-radius: 0;
  background: rgb(0 0 0 / 0.18);
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  text-decoration: none;
  overflow-wrap: anywhere;
  backdrop-filter: blur(8px);
  transition: background-color 160ms ease-out, color 160ms ease-out, border-color 160ms ease-out;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__cta:is(:hover, :focus-visible) {
  border-color: #ffffff;
  background: #ffffff;
  color: #101010;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__cta[data-size="sm"] {
  min-width: 7rem;
  font-size: 0.72rem;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__cta[data-size="lg"] {
  min-width: 9.5rem;
  padding-inline: 1.5rem;
  font-size: 0.84rem;
}

.sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__cta[data-size="xl"] {
  min-width: 10.5rem;
  padding-inline: 1.75rem;
  font-size: 0.9rem;
}

.sw-public-hero-carousel__controls {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: max(1rem, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.15rem;
  max-width: calc(100% - 2rem);
  padding: 0.15rem;
  border: 0;
  background: transparent;
  color: #ffffff;
}

.sw-public-hero-carousel__pages {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.sw-public-hero-carousel .sw-public-hero-carousel__controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0.3rem 0.55rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: rgb(255 255 255 / 0.72);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 620;
  letter-spacing: 0.08em;
  cursor: pointer;
  text-shadow: 0 1px 10px rgb(0 0 0 / 0.76);
  transition: color 140ms ease-out, background-color 140ms ease-out;
}

.sw-public-hero-carousel .sw-public-hero-carousel__controls button:is(:hover, :focus-visible),
.sw-public-hero-carousel .sw-public-hero-carousel__controls button[aria-current="true"] {
  color: #ffffff;
  background: rgb(0 0 0 / 0.24);
}

.sw-public-hero-carousel .sw-public-hero-carousel__pages button[aria-current="true"]::after {
  content: '';
  position: absolute;
  inset: auto 0.55rem 0.45rem;
  height: 1px;
  background: currentColor;
}

.sw-public-hero-carousel .sw-public-hero-carousel__pages button {
  position: relative;
}

.sw-public-hero-carousel .sw-public-hero-carousel__controls button:disabled {
  opacity: 0.38;
  cursor: default;
}

.sw-public-hero-carousel .sw-public-hero-carousel__controls button.sw-public-hero-carousel__play {
  min-width: 4.5rem;
  flex-shrink: 0;
  white-space: nowrap;
}

.sw-public-hero-carousel a:focus-visible,
.sw-public-hero-carousel button:focus-visible {
  outline: 3px solid var(--sw-color-focus-indicator, #ffffff);
  outline-offset: 2px;
}

.sw-public-hero-carousel[data-active-aspect="portrait"] .sw-public-hero-carousel__position {
  max-width: 86%;
}

.sw-public-hero-carousel[data-active-aspect="portrait"] .sw-public-hero-carousel__controls,
.sw-public-hero-carousel[data-active-aspect="landscape"] .sw-public-hero-carousel__controls {
  bottom: max(0.45rem, env(safe-area-inset-bottom));
}

.sw-public-hero-carousel[data-active-aspect="landscape"] .sw-public-hero-carousel__title[data-size="xl"] {
  font-size: clamp(1.8rem, 5cqw, 3.4rem);
}

.sw-public-hero-carousel[data-active-aspect="landscape"] .sw-public-hero-carousel__body {
  font-size: clamp(0.78rem, 1.5cqw, 1rem);
}

@container sw-hero (max-width: 480px) {
  .sw-public-hero-carousel__position {
    max-width: 88%;
  }

  .sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size] {
    font-size: clamp(1.75rem, 9cqw, 2.9rem);
  }

  /* R4 keeps the merchant's type scale on narrow canvases too. Applying the
     large mobile size to every setting can wrap a medium title back into the
     product. Only typography changes; the master and authored anchors stay put. */
  .sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="sm"] {
    font-size: clamp(1.2rem, 5.5cqw, 1.35rem);
  }

  .sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="md"] {
    font-size: clamp(1.5rem, 7cqw, 1.75rem);
  }

  .sw-public-hero-carousel[data-responsive-composition="r4"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size="xl"] {
    font-size: clamp(2rem, 10.5cqw, 3.25rem);
  }

  .sw-public-hero-carousel .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size] {
    max-width: 82cqw;
    font-size: 0.92rem;
  }

  .sw-public-hero-carousel__pages button:nth-child(n + 6) {
    display: none;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] {
    background: #111111;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__stage {
    block-size: auto;
    min-block-size: 0;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__slide {
    position: relative;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__media {
    position: relative;
    aspect-ratio: 4 / 5;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__copy {
    position: relative;
    display: grid;
    gap: 1rem;
    padding: 1.25rem 1.25rem 5.25rem;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__position {
    position: relative;
    inset: auto;
    transform: none;
    width: 100%;
    max-width: 100%;
    text-align: left;
  }

  .sw-public-hero-carousel[data-responsive-composition="legacy"][data-mobile-layout="stacked"] .sw-public-hero-carousel__controls {
    bottom: 0.55rem;
  }
}

@keyframes sw-hero-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes sw-hero-slide-up {
  from { opacity: 0; translate: 0 0.6rem; }
  to { opacity: 1; translate: 0 0; }
}

@keyframes sw-hero-slide-left {
  from { opacity: 0; translate: 0.6rem 0; }
  to { opacity: 1; translate: 0 0; }
}

@keyframes sw-hero-zoom {
  from { opacity: 0; scale: 0.985; }
  to { opacity: 1; scale: 1; }
}

.sw-public-hero-carousel[data-motion="full"] [data-animation="fade"] {
  animation: sw-hero-fade 300ms ease-out both;
}

.sw-public-hero-carousel[data-motion="full"] [data-animation="slide-up"] {
  animation: sw-hero-slide-up 300ms ease-out both;
}

.sw-public-hero-carousel[data-motion="full"] [data-animation="slide-left"] {
  animation: sw-hero-slide-left 300ms ease-out both;
}

.sw-public-hero-carousel[data-motion="full"] [data-animation="zoom"] {
  animation: sw-hero-zoom 300ms ease-out both;
}

@media (prefers-reduced-motion: reduce) {
  .sw-public-hero-carousel *,
  .sw-public-hero-carousel *::before,
  .sw-public-hero-carousel *::after {
    scroll-behavior: auto;
    animation: none !important;
    transition-duration: 0.01ms !important;
  }
}

/* Explicit v4 presentation. Immutable R4/legacy publications keep the preceding
   geometry and controls until the merchant saves and adopts the new mode. */
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__stage {
  block-size: var(--sw-hero-viewport-bottom, 100dvh);
  min-block-size: 0;
}
.sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__media {
  background: var(--sw-hero-side-fill, #0b0b0b);
}
.sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__media::after {
  background: linear-gradient(180deg, rgb(0 0 0 / .4), transparent 25%, transparent 65%, rgb(0 0 0 / .6)),
    linear-gradient(90deg, transparent 32%, rgb(0 0 0 / .6) 61%, rgb(0 0 0 / .6));
}
.sw-public-hero-carousel__image-visual {
  position: absolute;
  inset: 0;
  transform: scale(1.2);
  transform-origin: 50% 50%;
  pointer-events: none;
}
.sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__image {
  inset-block: 0;
  inset-inline: auto;
  left: var(--sw-hero-focal-x, 50%);
  width: auto;
  max-width: none;
  height: 100%;
  transform: translateX(var(--sw-hero-focal-shift-x, -50%));
  object-fit: contain;
  mask-image: linear-gradient(90deg, transparent 0%, #000 var(--sw-hero-side-fade, 0%),
    #000 calc(100% - var(--sw-hero-side-fade, 0%)), transparent 100%);
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"][data-motion="reduced"] .sw-public-hero-carousel__image-visual {
  transform: scale(1);
}
.sw-public-hero-carousel[data-sw-image-state="loading"] .sw-public-hero-carousel__image-visual,
.sw-public-hero-carousel[data-sw-image-state="failed"] .sw-public-hero-carousel__image-visual {
  visibility: hidden;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__controls {
  inset-inline: 0;
  bottom: env(safe-area-inset-bottom, 0px);
  height: 44px;
  width: 100%;
  max-width: none;
  padding: 0;
  transform: none;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__controls .sw-public-hero-carousel__arrow {
  display: none;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__pages {
  position: absolute;
  left: 50%;
  top: 0;
  height: 44px;
  transform: translateX(-50%);
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__pages button {
  display: inline-flex;
  flex: 0 0 44px;
  min-width: 44px;
  padding: 0;
  background: transparent;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"]:is([data-slide-count="5"], [data-slide-count="6"], [data-slide-count="7"], [data-slide-count="8"]) .sw-public-hero-carousel__pages button {
  flex-basis: 24px;
  min-width: 24px;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__pages button::after {
  display: none;
}
.sw-public-hero-carousel__dot {
  display: block;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: transparent;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] button[aria-current="true"] .sw-public-hero-carousel__dot {
  background: #fff;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__controls button.sw-public-hero-carousel__play {
  position: absolute;
  right: 12px;
  top: 0;
  min-width: 44px;
  width: 44px;
  color: #fff;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] button:focus-visible {
  outline-color: #fff;
  outline-offset: -3px;
}
.sw-public-hero-carousel__timeline {
  position: absolute;
  inset: auto 0 0;
  z-index: 6;
  height: var(--sw-hero-timeline-height, 1px);
  pointer-events: none;
}
.sw-public-hero-carousel__timeline > span {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  transform-origin: left center;
  transform: scaleX(var(--sw-hero-progress, 0));
}
@container sw-hero (max-width: 767px) {
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__media::after {
    background: linear-gradient(180deg, rgb(0 0 0 / .6) 0%, rgb(0 0 0 / .6) 53%, rgb(0 0 0 / .12) 70%, rgb(0 0 0 / .6) 100%);
  }
  .sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__stage {
    block-size: auto;
    aspect-ratio: 3 / 4;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__image {
    left: 50%;
    transform: translateX(-50%);
  }
  /* The shorter mobile frame has a real copy flow, not three desktop offsets
     colliding after crop. Keep the image geometry independent of copy height. */
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__copy {
    --sw-header-copy-top: calc(var(--sw-site-announcement-height, 0px) + var(--sw-site-header-height, 64px) + 12px);
    inset: var(--sw-header-copy-top) 16px 52px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__position {
    position: static;
    transform: none;
    width: auto;
    max-width: 100%;
    text-align: left;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size] {
    font-size: clamp(1.15rem, 5.8cqw, 1.55rem);
    line-height: 1.13;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size] {
    max-width: none;
    font-size: .875rem;
    line-height: 1.4;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__cta-position {
    margin-top: auto;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-position="top-right"] .sw-public-hero-carousel__copy {
    left: 50%;
    align-items: flex-end;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-position="top-right"] .sw-public-hero-carousel__position {
    text-align: right;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-position="top-right"] .sw-public-hero-carousel__cta-position {
    margin-top: 0;
  }
}

/* A collision changes text flow, never the master-image viewport. Short copy
   retains its authored overlay; long copy remains complete and keyboard
   reachable without an inner scrollbar or a second copy of the content. */
.sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__copy,
.sw-public-hero-carousel[data-responsive-composition="r6"] .sw-public-hero-carousel__position {
  /* These are measured layout boxes, not animated text. A blanket reduced-
     motion duration must not animate width between measurement candidates. */
  transition-property: none;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"] .sw-public-hero-carousel__copy {
  --sw-header-copy-top: calc(var(--sw-site-announcement-height, 0px) + var(--sw-site-header-height, 0px) + 16px);
  inset: var(--sw-header-copy-top) 5% 60px auto;
  width: min(42rem, 90%);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 12px;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"][data-copy-position^="bottom"] .sw-public-hero-carousel__copy {
  justify-content: safe flex-end;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"][data-copy-position$="left"] .sw-public-hero-carousel__copy {
  left: 5%;
  right: auto;
  align-items: flex-start;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"] .sw-public-hero-carousel__position,
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="flow"] .sw-public-hero-carousel__position {
  position: static;
  inset: auto;
  transform: none;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  margin: 0;
  text-align: right;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"][data-copy-position$="left"] .sw-public-hero-carousel__position {
  text-align: left;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="flow"] .sw-public-hero-carousel__copy {
  --sw-header-copy-top: auto;
  position: relative;
  inset: auto;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 24px max(16px, calc((100% - 52rem) / 2));
  background: #111111;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="flow"] .sw-public-hero-carousel__position {
  text-align: left;
}
.sw-public-hero-carousel[data-sw-hero-motion="timed"] .sw-public-hero-carousel__cta {
  /* Native focus scrolling must leave the focused link below the same sticky
     header in both the document and the original editor scrollport. */
  scroll-margin-block-start: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 16px);
  scroll-margin-block-end: 16px;
}
.sw-public-hero-carousel[data-responsive-composition="r6"]:is([data-copy-layout="stack"], [data-copy-layout="flow"]) .sw-public-hero-carousel__body {
  max-width: 100%;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="flow"] .sw-public-hero-carousel__controls {
  top: calc(var(--sw-hero-frame-height) - 44px - env(safe-area-inset-bottom, 0px));
  bottom: auto;
}
.sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="flow"] .sw-public-hero-carousel__timeline {
  top: calc(var(--sw-hero-frame-height) - 1px);
  bottom: auto;
}
@container sw-hero (max-width: 767px) {
  .sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"] .sw-public-hero-carousel__copy {
    left: 16px;
    right: 16px;
    width: auto;
    bottom: 52px;
    gap: 8px;
  }
  .sw-public-hero-carousel[data-responsive-composition="r6"][data-copy-layout="stack"][data-copy-position="top-right"] .sw-public-hero-carousel__copy {
    left: 50%;
  }
}

/* v5 is an explicitly adopted presentation, not an override of the historical
   height-fit branch. The master is CSS cover at every viewport and zoom frame. */
.sw-public-hero-carousel[data-responsive-composition="r8"] {
  --sw-hero-timeline-height: 3px;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__media::after {
  background: linear-gradient(180deg, rgb(0 0 0 / .28), transparent 30%, transparent 55%, rgb(0 0 0 / .62));
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__image {
  object-fit: cover;
  object-position: 50% 50%;
}
.sw-public-hero-carousel__outgoing {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  transform-origin: 50% 50%;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__slide {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__stage {
  grid-area: 1 / 1;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy,
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__position {
  transition: none;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-active="false"] {
  visibility: hidden;
  pointer-events: none;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="stack"] {
  inset: calc(var(--sw-hero-copy-inset, 0px) + 16px) 5% 60px auto;
  width: min(42rem, 90%);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 12px;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="stack"][data-copy-position^="bottom"] {
  justify-content: safe flex-end;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="stack"][data-copy-position$="left"] {
  left: 5%;
  right: auto;
  align-items: flex-start;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:is([data-copy-layout="stack"], [data-copy-layout="flow"]) .sw-public-hero-carousel__position {
  position: static;
  inset: auto;
  transform: none;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  margin: 0;
  text-align: right;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:is([data-copy-layout="stack"], [data-copy-layout="flow"]) .sw-public-hero-carousel__body {
  max-width: 100%;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="stack"][data-copy-position$="left"] .sw-public-hero-carousel__position {
  text-align: left;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="flow"] {
  position: relative;
  grid-area: 2 / 1;
  inset: auto;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 24px max(16px, calc((100% - 52rem) / 2));
  background: #111111;
}
.sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy[data-copy-layout="flow"] .sw-public-hero-carousel__position {
  text-align: left;
}
.sw-public-hero-carousel[data-responsive-composition="r8"][data-copy-layout="flow"] .sw-public-hero-carousel__controls {
  top: calc(var(--sw-hero-frame-height) - 44px - env(safe-area-inset-bottom, 0px));
  bottom: auto;
}
.sw-public-hero-carousel[data-responsive-composition="r8"][data-copy-layout="flow"] .sw-public-hero-carousel__timeline {
  top: calc(var(--sw-hero-frame-height) - var(--sw-hero-timeline-height));
  bottom: auto;
}
.sw-public-hero-carousel__reveal[data-revealing="true"] {
  overflow: hidden;
}
.sw-public-hero-carousel[data-responsive-composition="r8"][data-sw-image-state="loading"] .sw-public-hero-carousel__copy:not(:focus-within) [data-hero-copy-part] {
  visibility: hidden;
}
@container sw-hero (max-width: 767px) {
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:not([data-copy-layout="flow"]) {
    /* Keep the panel's outer box fixed while the shared Header is measured.
       Only internal clearance changes; the authored text ends at the same
       position and the transparent panel no longer shifts during hydration. */
    inset: 0 16px 52px;
    padding-top: calc(var(--sw-hero-copy-inset, 0px) + 12px);
    width: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__position {
    position: static;
    transform: none;
    width: auto;
    max-width: 100%;
    text-align: left;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__title[data-size] {
    font-size: clamp(1.15rem, 5.8cqw, 1.55rem);
    line-height: 1.13;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy .sw-public-hero-carousel__body[data-size] {
    max-width: none;
    font-size: .875rem;
    line-height: 1.4;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:not([data-copy-layout="flow"]) .sw-public-hero-carousel__cta-position {
    margin-top: auto;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:not([data-copy-layout="flow"])[data-copy-position="top-right"] {
    left: 50%;
    align-items: flex-end;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:not([data-copy-layout="flow"])[data-copy-position="top-right"] .sw-public-hero-carousel__position {
    text-align: right;
  }
  .sw-public-hero-carousel[data-responsive-composition="r8"] .sw-public-hero-carousel__copy:not([data-copy-layout="flow"])[data-copy-position="top-right"] .sw-public-hero-carousel__cta-position {
    margin-top: 0;
  }
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-catalog-grid.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-public-catalog-grid { container: sw-catalog-grid / inline-size; width: 100%; min-width: 0; color: var(--sw-color-text); background: var(--sw-color-surface-panel); overflow-wrap: anywhere; }
.sw-public-catalog-grid *, .sw-public-catalog-grid *::before, .sw-public-catalog-grid *::after { box-sizing: border-box; }
.sw-public-catalog-grid__inner { padding: 1.5rem; margin-inline: auto; }
.sw-public-catalog-grid[data-width="compact"] .sw-public-catalog-grid__inner { max-width: 48rem; }
.sw-public-catalog-grid[data-width="split"] .sw-public-catalog-grid__inner { max-width: 60rem; }
.sw-public-catalog-grid__header { display: grid; justify-items: start; gap: .75rem; margin-bottom: 1.5rem; }
.sw-public-catalog-grid h1, .sw-public-catalog-grid h2, .sw-public-catalog-grid h3, .sw-public-catalog-grid h4, .sw-public-catalog-grid h5, .sw-public-catalog-grid h6, .sw-public-catalog-grid p { margin: 0; overflow-wrap: anywhere; }
.sw-public-catalog-grid__header > :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.5rem, 3cqi, 2rem); line-height: 1.3; }
.sw-public-catalog-grid p { font-size: 1rem; line-height: 1.7; white-space: pre-wrap; }
.sw-public-catalog-grid a { color: inherit; text-decoration: none; }
.sw-public-catalog-grid a:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-public-catalog-grid__items { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.sw-public-catalog-grid:where([data-columns="2"]) .sw-public-catalog-grid__items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sw-public-catalog-grid:where([data-columns="4"]) .sw-public-catalog-grid__items { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sw-public-catalog-grid__items > li { min-width: 0; display: flex; flex-direction: column; position: relative; }
.sw-public-catalog-grid__media, .sw-public-catalog-grid__missing { display: block; width: 100%; aspect-ratio: 1; overflow: hidden; background: var(--sw-color-surface-muted); border-radius: var(--sw-radius-media); }
.sw-public-catalog-grid[data-card-ratio="4:5"] :is(.sw-public-catalog-grid__media,.sw-public-catalog-grid__missing) { aspect-ratio: 4/5; }
.sw-public-catalog-grid[data-card-ratio="3:4"] :is(.sw-public-catalog-grid__media,.sw-public-catalog-grid__missing) { aspect-ratio: 3/4; }
.sw-public-catalog-grid__media img { width: 100%; height: 100%; object-fit: contain; display: block; }
/* Category tiles are image-led navigation, not product-detail media. Preserve
 * product cards with contain, but let category artwork fill its authored frame. */
.sw-public-catalog-grid[data-catalog-kind="categories"] .sw-public-catalog-grid__media img { object-fit: cover; }
.sw-public-catalog-grid__media .sw-public-catalog-grid__mobile { display: none; }
.sw-public-catalog-grid__missing { display: grid; place-items: center; color: var(--sw-color-text-muted); font-size: .875rem; }
.sw-public-catalog-grid__copy { min-width: 0; padding-block: 1rem; display: grid; align-content: start; gap: .65rem; }
.sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { font-size: 1.125rem; line-height: 1.5; }
.sw-public-catalog-grid__price { font-weight: 650; }
.sw-public-catalog-grid__link, .sw-public-catalog-grid__header > a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline !important; text-underline-offset: .25em; }
.sw-public-catalog-grid[data-spacing="dense"] .sw-public-catalog-grid__items { gap: .75rem; }
.sw-public-catalog-grid[data-spacing="loose"] .sw-public-catalog-grid__items { gap: 2rem; }
.sw-public-catalog-grid[data-spacing="dense"] .sw-public-catalog-grid__inner { padding: 1rem; }
.sw-public-catalog-grid[data-spacing="loose"] .sw-public-catalog-grid__inner { padding: 2rem; }
.sw-public-catalog-grid[data-card-style="soft-commerce"] .sw-public-catalog-grid__items > li,
.sw-public-catalog-grid[data-card-style="text-card"] .sw-public-catalog-grid__items > li { border: 1px solid var(--sw-color-border); border-radius: var(--sw-radius-panel); padding: 1rem; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] { display: grid; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] > .sw-public-catalog-grid__media,
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] > .sw-public-catalog-grid__copy { grid-area: 1 / 1; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__media { height: 100%; min-height: 20rem; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__copy { z-index: 1; align-self: end; padding: 1rem; color: #fff; background: rgb(23 23 23 / .94); }
/* A category is one native link, including the image, label and empty-media area. */
.sw-public-catalog-grid__category { display: flex; flex-direction: column; flex: 1; min-width: 0; }
/* Keep the image square. Only a short caption band overlaps it; longer copy
 * grows below the image instead of stretching it or covering the whole photo. */
.sw-public-catalog-grid[data-catalog-kind="categories"] .sw-public-catalog-grid__items { align-items: start; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] > .sw-public-catalog-grid__category { display: grid; grid-template-columns: minmax(0,1fr); align-content: start; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__category .sw-public-catalog-grid__media { grid-area: 1 / 1; height: auto; min-height: 0; border-radius: 0; }
.sw-public-catalog-grid[data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__category .sw-public-catalog-grid__copy { grid-area: 2 / 1; margin-top: -4.5rem; min-height: 4.5rem; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .25rem .5rem; padding: .65rem; }
.sw-public-catalog-grid[data-card-style="image-overlay"] .sw-public-catalog-grid__category .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { grid-column: 1 / -1; font-size: 1rem; line-height: 1.3; }
.sw-public-catalog-grid[data-card-style="image-overlay"] .sw-public-catalog-grid__category .sw-public-catalog-grid__description { font-size: .8125rem; line-height: 1.4; }
/* Collection descriptions are prose, not short category counts. Give them the
 * full caption width and place the action below, including narrow desktop cards. */
.sw-public-catalog-grid[data-catalog-kind="collections"][data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__category .sw-public-catalog-grid__copy { grid-template-columns: minmax(0, 1fr); align-items: start; }
.sw-public-catalog-grid[data-catalog-kind="categories"][data-card-style="image-overlay"][data-width="full"] .sw-public-catalog-grid__inner { max-width: var(--sw-content-max, 1240px); }
/* Collections remain native navigation cards, with the selected storefront's
 * normal editorial weight rather than the legacy theme's heavy headings. */
[data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="collections"] :is(.sw-public-catalog-grid__header, .sw-public-catalog-grid__copy) > :is(h1,h2,h3,h4,h5,h6) { font-family: var(--sw-storefront-font-family, inherit); font-weight: 400; }
[data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="collections"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { font-size: clamp(1rem, 2cqi, 1.25rem); line-height: 1.3; }
/* Category indexes use the same normal editorial weight. The merchant intro
 * stays visible; only its presentation is tightened for the selected theme. */
[data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="categories"] .sw-public-catalog-grid__header > :is(h1,h2,h3,h4,h5,h6) {
  font-family: var(--sw-storefront-font-family, inherit); font-size: clamp(1.5rem, 2.4cqi, 1.75rem); font-weight: 400; line-height: 1.35;
}
.sw-public-catalog-grid__category .sw-public-catalog-grid__link { min-height: 0; font-size: .8125rem; }
.sw-public-catalog-grid__category .sw-public-catalog-grid__media img { transition: transform .25s ease; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .sw-public-catalog-grid__category:hover .sw-public-catalog-grid__media img { transform: scale(1.03); }
}
@media (prefers-reduced-motion: reduce) {
  .sw-public-catalog-grid__category .sw-public-catalog-grid__media img { transition: none; }
}
.sw-public-catalog-groups { min-width: 0; width: 100%; background: var(--sw-color-surface-panel); color: var(--sw-color-text); }
.sw-public-catalog-groups > .sw-public-catalog-grid__header { padding: 1.5rem; margin: 0 auto; max-width: var(--sw-content-max, 1240px); overflow-wrap: anywhere; }
.sw-public-catalog-groups > .sw-public-catalog-grid__header :is(h2,h3,h4,p) { margin: 0; white-space: pre-wrap; }
.sw-public-catalog-groups > [data-catalog-group] + [data-catalog-group] { border-top: 1px solid var(--sw-color-border); }
.sw-public-catalog-grid__rail-hint { display: none; }
.sw-public-catalog-grid__items:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
@container sw-catalog-grid (max-width: 680px) {
  .sw-public-catalog-grid[data-catalog-mobile-rail="true"] .sw-public-catalog-grid__items {
    grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 82%;
    max-width: 100%; overflow-x: auto; scroll-snap-type: x proximity; padding: .25rem;
  }
  .sw-public-catalog-grid[data-catalog-mobile-rail="true"] .sw-public-catalog-grid__items > li { scroll-snap-align: start; }
  .sw-public-catalog-grid[data-catalog-mobile-rail="true"] .sw-public-catalog-grid__rail-hint { display: block; font-size: .875rem; margin-bottom: .75rem; }
}
.sw-public-catalog-grid__empty { padding-block: 1rem; }
.sw-public-catalog-grid__browsing { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem 1rem; margin-bottom: 1.5rem; }
.sw-public-catalog-grid__browsing label { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; min-width: 0; }
.sw-public-catalog-grid__browsing select, .sw-public-catalog-grid__pagination button, .sw-public-catalog-grid__pagination a { min-height: 44px; max-width: 100%; padding: .5rem .75rem; border: 1px solid var(--sw-color-border); border-radius: var(--sw-radius-control); background: var(--sw-color-surface-panel); color: inherit; font: inherit; }
.sw-public-catalog-grid__browsing .sw-public-catalog-grid__sort-note { flex-basis: 100%; font-size: .875rem; color: var(--sw-color-text-muted); }
.sw-public-catalog-grid__pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 1rem; margin-top: 1.5rem; }
.sw-public-catalog-grid__pagination button { min-width: 88px; cursor: pointer; }
.sw-public-catalog-grid__pagination a { min-width: 88px; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; }
.sw-public-catalog-grid__browsing form { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.sw-public-catalog-grid[data-catalog-source="all_products"][data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header > :is(h1,h2,h3,h4,h5,h6,p) { justify-self: center; text-align: center; }
.sw-public-catalog-grid[data-catalog-source="all_products"] .sw-public-catalog-grid__browsing form { margin-inline-start: auto; justify-content: flex-end; }
.sw-public-catalog-grid__pagination button:disabled { opacity: .5; cursor: default; }
.sw-public-catalog-grid__browsing :focus-visible, .sw-public-catalog-grid__pagination :focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
@container sw-catalog-grid (max-width: 680px) {
  .sw-public-catalog-grid .sw-public-catalog-grid__items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
  .sw-public-catalog-grid .sw-public-catalog-grid__inner { padding: 1rem; }
  .sw-public-catalog-grid__media .sw-public-catalog-grid__desktop { display: none; }
  .sw-public-catalog-grid__media .sw-public-catalog-grid__mobile { display: block; }
  .sw-public-catalog-grid .sw-public-catalog-grid__category .sw-public-catalog-grid__copy { padding: .65rem; }
  .sw-public-catalog-grid__category .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { font-size: 1rem; }
  .sw-public-catalog-grid__category .sw-public-catalog-grid__description { font-size: .875rem; }
  /* Translated category actions must not squeeze the count into a one-character
   * column. Keep the whole native card link and let its caption grow below the image. */
  .sw-public-catalog-grid[data-catalog-kind="categories"][data-card-style="image-overlay"] li[data-has-media="true"] .sw-public-catalog-grid__category .sw-public-catalog-grid__copy {
    grid-template-columns: minmax(0, 1fr); align-items: start;
  }
}

/* Finite, shared catalog presentations; no shop-specific IDs or content edits. */
.sw-public-catalog-grid[data-catalog-kind="products"] .sw-public-catalog-grid__description { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.sw-public-catalog-grid__links { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.sw-public-catalog-grid__quick { min-height: 44px; max-width: 100%; padding: .5rem .7rem; border: 1px solid currentColor; border-radius: var(--sw-radius-control); background: transparent; color: inherit; font: inherit; font-size: .875rem; line-height: 1.4; cursor: pointer; }
.sw-public-catalog-grid__quick[hidden] { display: none; }
.sw-public-catalog-grid__quick:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__inner { max-width: var(--sw-content-max, 1240px); padding: clamp(1.5rem, 4cqi, 3.5rem) clamp(1rem, 3cqi, 2.5rem); }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header { grid-template-columns: minmax(0,1fr) minmax(0,3fr) minmax(0,1fr); align-items: start; margin-bottom: 2.5rem; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header > :is(h1,h2,h3,h4,h5,h6,p) { grid-column: 2; justify-self: center; text-align: center; font-weight: 400; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header > a { grid-column: 3; grid-row: 1; justify-self: end; font-size: .8rem; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__media { border-radius: 0; background: var(--sw-color-surface-panel); }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__media img { transition: transform .3s ease; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__copy { gap: .35rem; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { font-size: 1rem; font-weight: 500; line-height: 1.55; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__price { font-size: .875rem; font-weight: 400; }
.sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__availability { position: absolute; right: 0; top: 0; max-width: 90%; padding: .3rem .65rem; color: #fff; background: #171717; font-size: .75rem; letter-spacing: .08em; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .sw-public-catalog-grid[data-card-style="bigidesign-minimal"] li:hover .sw-public-catalog-grid__media img { transform: scale(1.04); }
}
@container sw-catalog-grid (max-width: 680px) {
  .sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header { grid-template-columns: minmax(0,1fr); gap: .75rem; margin-bottom: 1.5rem; }
  .sw-public-catalog-grid[data-card-style="bigidesign-minimal"] .sw-public-catalog-grid__header > :is(h1,h2,h3,h4,h5,h6,p,a) { grid-column: 1; grid-row: auto; justify-self: start; text-align: left; }
  .sw-public-catalog-grid[data-catalog-kind="products"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { font-size: .9rem; }
  .sw-public-catalog-grid__links { gap: .25rem; font-size: .8rem; }
  .sw-public-catalog-grid__quick { width: 100%; }
}
/* Explicit image-led navigation preset. Historical image-overlay/ratio and
 * product cards are untouched. Prose stays visible below the image, so longer
 * translations cannot stretch the photo or disappear under a caption mask. */
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__inner { display: flex; flex-direction: column; padding-block: 60px; }
.sw-public-catalog-grid[data-card-style="image-tile"][data-catalog-intro="image-first"] .sw-public-catalog-grid__header { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__browsing { order: 1; margin: 20px 0 0; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__browsing p { font-size: .875rem; color: var(--sw-color-text-muted); }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__pagination { order: 2; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__items { gap: 30px; align-items: start; }
.sw-public-catalog-grid[data-card-style="image-tile"][data-spacing="dense"] .sw-public-catalog-grid__items { gap: 16px; }
.sw-public-catalog-grid[data-card-style="image-tile"][data-spacing="loose"] .sw-public-catalog-grid__items { gap: 40px; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__category { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(300px, auto); align-content: start; }
.sw-public-catalog-grid[data-card-style="image-tile"] :is(.sw-public-catalog-grid__media, .sw-public-catalog-grid__missing) { grid-area: 1 / 1; position: relative; aspect-ratio: auto; min-height: 300px; height: 100%; border-radius: 0; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__media { container: sw-catalog-tile / inline-size; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__media img { position: absolute; inset: 0; object-fit: cover; object-position: center; }
/* Match the actual tile width against this preset's 300px desktop frame.
 * Grid queries are named so a media container cannot switch desktop/mobile
 * image sources using the tile's width instead of the enclosing list width. */
@container sw-catalog-grid (min-width: 681px) {
  @container sw-catalog-tile (max-width: 300px) {
    .sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__media img { object-fit: contain; }
  }
}
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgb(0 0 0 / .84), transparent 55%); pointer-events: none; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__copy { display: contents; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { grid-area: 1 / 1; align-self: end; z-index: 1; margin: 0; padding: 25px; font-family: var(--sw-storefront-font-family, inherit); font-size: 1.25rem; font-weight: 400; line-height: 1.3; text-transform: uppercase; }
.sw-public-catalog-grid[data-card-style="image-tile"] [data-has-media="true"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { color: #fff; text-shadow: 0 1px 2px rgb(0 0 0 / .4); }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__description { grid-column: 1; margin-top: 12px; font-size: .875rem; line-height: 1.5; }
.sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__links { grid-column: 1; margin-top: 8px; }
@container sw-catalog-grid (max-width: 680px) {
  .sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__inner { padding-block: 30px; }
  .sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__items { gap: 22px; }
  .sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__category { grid-template-rows: minmax(150px, auto); }
  .sw-public-catalog-grid[data-card-style="image-tile"] :is(.sw-public-catalog-grid__media, .sw-public-catalog-grid__missing) { min-height: 150px; }
  .sw-public-catalog-grid[data-card-style="image-tile"] .sw-public-catalog-grid__copy > :is(h2,h3,h4,h5,h6) { padding: 12px; font-size: .875rem; }
}
[data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="categories"][data-card-style="image-tile"] .sw-public-catalog-grid__inner { padding-block: 40px; }
[data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="categories"][data-card-style="image-tile"] .sw-public-catalog-grid__header { margin-bottom: 1.25rem; }
@container sw-catalog-grid (max-width: 680px) {
  [data-theme-content-layout="contained-1250"] .sw-public-catalog-grid[data-catalog-kind="categories"][data-card-style="image-tile"] .sw-public-catalog-grid__inner { padding-block: 24px; }
}

.sw-catalog-dialog { width: min(960px, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); box-sizing: border-box; margin: auto; padding: 0; border: 1px solid var(--sw-color-border, #ddd); color: var(--sw-color-text, #171717); background: var(--sw-color-surface-panel, #fff); overflow: auto; overscroll-behavior: contain; }
.sw-catalog-dialog::backdrop { background: rgb(0 0 0 / .55); }
.sw-catalog-dialog__close { display: flex; position: sticky; top: 0; z-index: 1; align-items: center; justify-content: center; gap: .75rem; min-height: 44px; min-width: 88px; margin-left: auto; border: 0; background: var(--sw-color-surface-panel, #fff); color: inherit; font: inherit; cursor: pointer; }
.sw-catalog-dialog__layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 2rem; padding: 0 2rem 2rem; }
.sw-catalog-dialog__media { display: grid; place-items: center; align-self: start; min-width: 0; aspect-ratio: 1; background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-catalog-dialog__media img { width: 100%; height: 100%; max-height: 65dvh; object-fit: contain; }
.sw-catalog-dialog__copy { display: grid; align-content: start; gap: 1rem; min-width: 0; overflow-wrap: anywhere; }
.sw-catalog-dialog__copy h2 { font-size: clamp(1.25rem, 3vw, 1.75rem); line-height: 1.4; }
.sw-catalog-dialog__body { white-space: pre-wrap; overflow-wrap: anywhere; }
.sw-catalog-dialog .sw-catalog-dialog__notice, .sw-catalog-dialog .sw-catalog-dialog__eyebrow { font-size: .8125rem; line-height: 1.6; }
.sw-catalog-dialog__eyebrow { letter-spacing: .1em; }
.sw-catalog-dialog__product { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; min-width: 0; max-width: 100%; padding: .7rem 1.35rem; border: 1px solid currentColor; border-radius: var(--sw-radius-control); line-height: 1.4; text-align: center; text-decoration: none; }
.sw-catalog-dialog button { min-height: 44px; cursor: pointer; font: inherit; }
.sw-catalog-dialog :is(a,button):focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #3054d9); outline-offset: -3px; }
@media (max-width: 680px) {
  .sw-catalog-dialog { width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); }
  .sw-catalog-dialog__layout { grid-template-columns: minmax(0,1fr); gap: 1rem; padding: 0 1rem calc(1rem + env(safe-area-inset-bottom)); }
  .sw-catalog-dialog__media { width: min(100%, 22rem); justify-self: center; }
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-quantity-control.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-quantity-control.sw-quantity-control { display: inline-flex; align-items: center; gap: .5rem; width: max-content; max-width: 100%; flex: 0 0 auto; }
.sw-quantity-control__stepper { display: inline-flex; align-items: stretch; gap: 0; }
.sw-quantity-control.sw-quantity-control :is(button,input) { box-sizing: border-box; margin: 0; min-width: 36px; width: 36px; min-height: 36px; height: 36px; padding: 0; border: 1px solid var(--sw-color-border, #aaa); border-radius: 0; background: var(--sw-color-surface-panel, #fff); color: var(--sw-color-text, #171717); font: inherit; font-size: .875rem; line-height: 1; text-align: center; box-shadow: none; }
.sw-quantity-control.sw-quantity-control button { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.sw-quantity-control.sw-quantity-control input { width: 2.5rem; border-inline: 0; font-variant-numeric: tabular-nums; appearance: textfield; }
.sw-quantity-control__stepper > button:first-child { border-inline-end: 0; }
.sw-quantity-control__stepper > button:last-child { border-inline-start: 0; }
.sw-quantity-control.sw-quantity-control .sw-quantity-control__remove { border-color: transparent; background: transparent; }
.sw-quantity-control.sw-quantity-control button > span { font-size: 16px; line-height: 1; font-weight: 400; }
.sw-quantity-control.sw-quantity-control :is(button,input):disabled { opacity: .45; cursor: not-allowed; }
.sw-quantity-control.sw-quantity-control button:hover:not(:disabled) { background: var(--sw-color-surface-subtle, #f4f4f4); }
.sw-quantity-control.sw-quantity-control :is(button,input):focus-visible { position: relative; z-index: 1; outline: 2px solid var(--sw-color-focus-indicator, #111); outline-offset: 2px; }
.sw-quantity-control.sw-quantity-control input[aria-invalid="true"] { border-block-style: dashed; }
@media (max-width: 47.99rem), (pointer: coarse) {
  .sw-quantity-control.sw-quantity-control :is(button,input) { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
}
@media (max-width: 22.5rem) {
  .sw-header-cart__line-editor:has(.sw-quantity-control) { grid-column: 1 / -1; }
}

/*!***************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-product-complements.css ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-public-product-complements { color: inherit; font: inherit; padding-block: 2rem; border-top: 1px solid currentColor; }
.sw-public-product-complements h2 { font-size: 1.5rem; margin-block: 0 1rem; }
.sw-public-product-complements ul { list-style: none; padding: 0; margin: 1rem 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.sw-public-product-complements label { display: flex; align-items: center; gap: .75rem; min-height: 80px; cursor: pointer; }
.sw-public-product-complements label > span { min-width: 0; overflow-wrap: anywhere; }
.sw-public-product-complements label span > * { display: block; }
.sw-public-product-complements img { flex: 0 0 72px; object-fit: contain; }
.sw-public-product-complements input { width: 20px; height: 20px; flex-shrink: 0; accent-color: currentColor; }
.sw-public-product-complements button { font: inherit; min-height: 44px; padding: .6rem 1rem; margin: .5rem .5rem .5rem 0; border: 1px solid currentColor; background: transparent; cursor: pointer; }
.sw-public-product-complements button:disabled { cursor: not-allowed; opacity: .55; }
.sw-public-product-complements :focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media(max-width: 640px) { .sw-public-product-complements ul { grid-template-columns: minmax(0,1fr); } }

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/product-reading-layout.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Explicit saved presentation only. Historical stacked sections and fact-only
   previews retain their original composition. Gaps are inside the fr tracks. */
.sw-product-reading { container: sw-product-reading / inline-size; min-width: 0; width: 100%; }
.sw-product-reading__columns { display: grid; grid-template-columns: minmax(0,1fr); gap: 32px; min-width: 0; align-items: start; }
.sw-product-reading__gallery, .sw-product-reading__details { min-width: 0; }
.sw-product-reading__details { display: grid; gap: 32px; }
.sw-product-reading :is(.sw-product-gallery,.sw-product-summary,.sw-product-specifications,.sw-product-service-information) { padding-inline: 0; }
.sw-product-reading .sw-product-gallery { padding-block: 0; }
.sw-product-reading .sw-product-gallery__primary { max-width: min(100%,var(--sw-reading-primary-max,100%)); margin-inline: auto !important; }
.sw-product-reading__details > .sw-product-module + .sw-product-module { border-top: 1px solid var(--sw-color-border,#ddd); padding-top: 28px; }
.sw-product-reading .sw-product-summary { padding-block: 0; max-width: none; margin-inline: 0; }
.sw-product-reading .sw-product-summary > :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.5rem,6cqw,2.25rem); line-height: 1.2; }
.sw-product-reading .sw-product-body__sections { padding: 0; gap: 28px; }
.sw-product-reading .sw-product-body__sections > [data-section-type] { padding-inline: 0; border: 0; border-radius: 0; box-shadow: none; }
.sw-product-reading .sw-product-body :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.2rem,5cqw,1.65rem); line-height: 1.3; }
.sw-product-reading .sw-product-specifications { padding-block: 0; }
.sw-product-reading .sw-product-specifications > h2 { font-size: 1.35rem; }
.sw-product-reading .sw-product-service-information { padding-block: 0; }
@container sw-product-reading (min-width: 760px) {
  .sw-product-reading__columns { grid-template-columns: minmax(0,55fr) minmax(0,45fr); column-gap: 32px; }
  .sw-product-reading[data-desktop-column-ratio="60-40"] .sw-product-reading__columns { grid-template-columns: minmax(0,60fr) minmax(0,40fr); }
  .sw-product-reading[data-desktop-column-ratio="50-50"] .sw-product-reading__columns { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .sw-product-reading[data-desktop-media-side="right"] .sw-product-reading__gallery { grid-column: 2; grid-row: 1; }
  .sw-product-reading[data-desktop-media-side="right"] .sw-product-reading__details { grid-column: 1; grid-row: 1; }
  .sw-product-reading[data-desktop-media-side="right"][data-desktop-column-ratio="60-40"] .sw-product-reading__columns { grid-template-columns: minmax(0,40fr) minmax(0,60fr); }
  .sw-product-reading[data-desktop-media-side="right"][data-desktop-column-ratio="55-45"] .sw-product-reading__columns { grid-template-columns: minmax(0,45fr) minmax(0,55fr); }
  .sw-product-reading[data-gallery-sticky="true"] .sw-product-reading__gallery { position: sticky; top: var(--sw-reading-sticky-top,16px); }
}
@container sw-product-reading (min-width: 1100px) {
  .sw-product-reading__columns { column-gap: 56px; }
}
@container sw-product-reading (max-width: 759px) {
  .sw-product-reading__gallery { position: static; }
  .sw-product-reading[data-mobile-order="info-first"] .sw-product-reading__details { order: -1; }
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-product-feedback.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Keep this storefront layout out of merchant review sheets sharing class names.
   The zero-specificity boundary preserves the existing storefront cascade. */
/* PDP-11, explicit saved presentation. Measured BIGiDESIGN reference:
   star/bar rgb(251,205,10), reply surface rgb(242,242,242). One accent owner. */
.sw-product-page-composition[data-feedback-layout="tabs-v1"] { --sw-review-accent: #fbcd0a; }
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-product-review-summary .sw-review-rating { color: var(--sw-review-accent); }
.sw-feedback:where([data-product-feedback="tabs-v1"]) { container: sw-unified-feedback / inline-size; min-width: 0; width: 100%; box-sizing: border-box; border: 1px solid #eee; background: #fff; color: var(--sw-color-text, #1c1d1d); scroll-margin-block-start: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 16px); }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__layout { display: grid; grid-template-columns: minmax(129px, max-content) minmax(290px, 318px) minmax(0, 1fr); column-gap: 16px; row-gap: 12px; padding: 24px; min-width: 0; font: 400 13px/1.4 var(--sw-storefront-font-family, sans-serif); }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"])[data-product-feedback] :is(.sw-product-module,.sw-reviews,.sw-questions,.sw-reviews__published),
.sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-composition-preview__section-frame--product-reviews,.sw-composition-preview__section-frame--product-questions) { display: contents; container-type: normal; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [hidden] { display: none !important; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__header { grid-row: 1; grid-column: 1 / -1; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__header h2 { margin: 0; font-size: 27px; line-height: 37.8px; font-weight: 500; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__header h2:lang(en) { font-weight: 400; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__overview { grid-row: 2; grid-column: 1 / 3; display: grid; grid-template-columns: subgrid; align-items: start; gap: 16px; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__preview-summary { grid-row: 2; grid-column: 1 / 3; margin: 0; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__summary { gap: 4px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__summary > strong { font-size: 13px; line-height: 18.2px; font-weight: 400; gap: 6px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__summary p { font-size: 13px; line-height: 18.2px; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-review-rating { color: var(--sw-review-accent); }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution { box-sizing: border-box; width: 100%; padding: 4px 16px; border-inline: 1px solid #f3f3f3; font-size: 12px; line-height: 16.8px; gap: 5px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution { grid-template-columns: 88px minmax(32px, 1fr) max-content max-content; column-gap: 6px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution li { grid-column: 1 / -1; grid-template-columns: subgrid; min-height: 17px; column-gap: 6px; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution li > span { white-space: nowrap; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-review-rating svg { width: 14px; height: 14px; flex-basis: 14px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution .sw-review-rating svg { width: 16px; height: 16px; flex-basis: 16px; }
/* Preserve the native value/max and accessible counts. Both native wrappers
   need an explicit track height; resetting only the bar leaves the inner
   wrapper compressed. Anchor the full-height wrappers without UA offsets. */
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) meter { color: var(--sw-review-accent); height: 16px; appearance: none; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) meter::-webkit-meter-inner-element { display: block; height: 100%; position: static; transform: none; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) meter::-webkit-meter-bar { position: static; transform: none; margin: 0; box-sizing: border-box; height: 100%; border: 1px solid #eee; border-radius: 0; background: #fff; box-shadow: none; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) meter::-webkit-meter-optimum-value { height: 100%; background: var(--sw-review-accent); }
.sw-feedback:where([data-product-feedback="tabs-v1"]) meter::-moz-meter-bar { background: var(--sw-review-accent); }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions { grid-row: 2; grid-column: 3; display: flex; flex-wrap: wrap; align-content: start; align-items: start; justify-content: end; gap: 0 8px; margin-top: -7px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button { display: inline-flex; align-items: center; min-height: 44px; min-width: 44px; max-width: 100%; padding: 7px 0; border: 0; border-radius: 0; font: 400 13px/18.2px var(--sw-storefront-font-family, sans-serif); color: inherit; background: transparent; cursor: pointer; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button > span { display: block; padding: 5px 10px; border: 1px solid currentColor; overflow-wrap: anywhere; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button:hover > span { background: #f6f6f6; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button:active > span { background: #eee; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button[aria-expanded="true"] > span { background: #1c1d1d; color: #fff; border-color: #1c1d1d; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__tabs { grid-row: 4; grid-column: 1 / -1; display: flex; gap: 16px; border-bottom: 1px solid #eee; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__tabs > button { min-height: 44px; padding: 10px 0 8px; min-width: 44px; margin: 0 0 -1px; font: 400 13px/18.2px var(--sw-storefront-font-family, sans-serif); border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent; color: inherit; cursor: pointer; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__tabs > button[aria-selected="true"] { border-bottom-color: currentColor !important; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__tabs > button:hover { color: #666; }
:where([data-product-feedback="tabs-v1"]) .sw-feedback__panel { grid-row: 5; grid-column: 1 / -1; min-width: 0; display: grid; gap: 12px; align-content: start; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] { grid-row: 3; grid-column: 1 / -1; min-width: 0; margin: 0; gap: 12px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__write,.sw-questions__write) { border: 0; padding: 0; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__write,.sw-questions__write) > p { margin-block: 8px; font-size: 13px; line-height: 1.5; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-buyer-form-fieldset { gap: 16px; }
/* The saved editorial controls otherwise override the feedback font rule.
   Scope their existing tokens to these two original requests, not Cart or
   other templates. Required guidance/consent and all owner fields stay intact. */
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] {
 --sw-product-control-size: 14px; --sw-product-control-leading: 21px;
 --sw-product-control-weight: 400; --sw-product-control-radius: 0px;
 --sw-product-control-min: 44px; --sw-product-control-block: 8px; --sw-product-control-inline: 10px;
 font-size: 13px; line-height: 1.5; font-weight: 400;
}
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request]:lang(en) { --sw-product-control-size: 13px; --sw-product-control-leading: 18.2px; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-questions__write form { width: 100%; max-width: none; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-buyer-form-field { gap: 4px; font-size: 13px; line-height: 1.5; font-weight: 400; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request]:lang(en) .sw-buyer-form-field { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(input:not([type=checkbox]),select,textarea) { border-radius: 0; font-size: 14px; font-weight: 400; line-height: 21px; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-buyer-form-input { padding: 8px 10px; border-color: #ddd; letter-spacing: normal; text-transform: none; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] textarea.sw-buyer-form-input { min-height: 108px; resize: vertical; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) button[type=submit] { min-height: 44px; font-size: 13px; line-height: 18px; font-weight: 500; padding: 10px 20px; border-radius: 0; justify-self: start; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__list,.sw-questions__list) { margin: 0; padding: 0; list-style: none; display: grid; gap: 0; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__list,.sw-questions__list) > li { display: grid; gap: 4px; padding: 16px 0; border-top: 1px solid #eee; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__list,.sw-questions__list) > li:first-child { border-top: 0; padding-top: 4px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__byline,.sw-reviews__author,.sw-questions__byline) { font-size: 13px; line-height: 18.2px; gap: 8px; justify-content: start; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__byline,.sw-reviews__author,.sw-questions__byline) strong { font-size: inherit; font-weight: 500; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__text,.sw-questions__text) { margin: 0; font-size: 14px; line-height: 23px; font-weight: 400; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__text,.sw-questions__text):lang(en) { font-size: 13px; line-height: 18.2px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__review-title,.sw-questions__answer h3,.sw-reviews__merchant-reply > strong) { margin: 0; font-size: 14px; line-height: 22px; font-weight: 500; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-reviews__source,.sw-questions__meta) { margin: 0; font-size: 12px; line-height: 18px; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) :is(.sw-questions__answer,.sw-reviews__merchant-reply) { margin: 8px 0 0; background: #f2f2f2; border: 0; border-inline-start: 2px solid #e2e2e2; padding: 12px 16px; display: grid; gap: 4px; }
/* These are the original independent server sort/filter controls. Keep them
   compact without merging their values or hiding any available choice. */
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__tools { --sw-product-control-size: 13px; --sw-product-control-leading: 18px; --sw-product-control-radius: 0px; gap: 8px 16px; align-items: center; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__sort { display: flex; gap: 6px; align-items: center; }
.sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__sort select { padding: 4px 24px 4px 8px; height: 44px; min-height: 44px; font-size: 13px; line-height: 18px; background-color: #fff; border: 1px solid #eee; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__matching { font-size: 12px; }
/* Photo selection stays with the existing Review/Media owner and native input.
   Only this saved presentation gets the same quiet, square form controls. */
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-review-photo-fields { margin: 8px 0 0; padding: 0; border: 0; gap: 8px; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-review-photo-fields legend { padding: 0; font-size: 13px; line-height: 1.5; font-weight: 400; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request]:lang(en) .sw-review-photo-fields legend { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-review-photo-fields p { margin: 0; font-size: 13px; line-height: 1.5; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] .sw-review-photo-fields__item { margin: 0; gap: 8px; }
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-review-photo-fields button { justify-self: start; width: auto; min-height: 44px; min-width: 44px; max-width: 100%; padding: 7px 10px; border: 1px solid currentColor; border-radius: 0; color: inherit; background: transparent; font: 400 13px/18px var(--sw-storefront-font-family, sans-serif); }
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-review-photo-fields button:hover:not(:disabled) { background: #f6f6f6; }
.sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-review-photo-fields button:active:not(:disabled) { background: #eee; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) :is(button,a,input,select,textarea,[role=tabpanel]):focus-visible,
.sw-feedback:where([data-product-feedback="tabs-v1"]):not([data-sw-focus-region]):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
/* Original module inspectors remain separate controls, outside reading/list UI. */
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-composition-preview__section-actions { position: relative; inset: auto; grid-row: 6; margin: 8px 0; justify-self: start; border-radius: var(--sw-primitive-radius-control); }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-composition-preview__section-frame--product-reviews > .sw-composition-preview__section-actions { grid-column: 1 / 3; }
.sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-composition-preview__section-frame--product-questions > .sw-composition-preview__section-actions { grid-column: 3; }
@container sw-unified-feedback (max-width: 759px) {
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__layout { grid-template-columns: minmax(0, 1fr); padding: 24px; gap: 12px; }
 /* The measured 390px reference places two full-width actions between the
    summary and histogram. Flatten only this presentation wrapper; original
    review data, controllers and the desktop subgrid remain unchanged. */
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__overview { display: contents; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__summary { grid-row: 2; grid-column: 1; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution { grid-row: 4; grid-column: 1; max-width: 318px; padding: 0; border: 0; gap: 10px; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution { grid-template-columns: 104px minmax(32px, 1fr) max-content max-content; column-gap: 6px; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution li { grid-template-columns: subgrid; min-height: 20px; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution .sw-review-rating { gap: 0; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__distribution .sw-review-rating svg { width: 20px; height: 20px; flex-basis: 20px; }
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__actions { grid-row: 3; grid-column: 1; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; justify-content: stretch; margin: 0; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button { width: 100%; }
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__actions > button > span { width: 100%; box-sizing: border-box; text-align: center; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request] { grid-row: 5; }
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__tabs { grid-row: 6; }
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__panel { grid-row: 7; }
 :where([data-product-feedback="tabs-v1"]) .sw-feedback__preview-summary { grid-row: 2; grid-column: 1; }
 /* Explicit rows keep editor controls out of the empty closed-form track. */
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-composition-preview__section-frame--product-reviews > .sw-composition-preview__section-actions { grid-row: 8; grid-column: 1 !important; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-composition-preview__section-frame--product-questions > .sw-composition-preview__section-actions { grid-row: 9; grid-column: 1 !important; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__identity-fields { grid-template-columns: minmax(0, 1fr); }
 /* Option text identifies each control visually; keep both original labels
    available to assistive technology and both 44px controls on one row. */
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__tools { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 8px; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__sort { position: relative; display: block; min-width: 0; width: 100%; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__sort > label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__sort select { width: 100%; min-width: 0; max-width: 100%; }
 .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-reviews__matching { grid-column: 1 / -1; margin: 0; }
 /* Preserve readable editable text and avoid focus zoom in mobile browsers;
    compact labels, square borders and 44px action targets remain unchanged. */
 .sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request],
 .sw-product-page-composition[data-feedback-layout="tabs-v1"] .sw-feedback:where([data-product-feedback="tabs-v1"]) [data-feedback-request]:lang(en) { --sw-product-control-size: 16px; --sw-product-control-leading: 24px; }
 .sw-product-page-composition .sw-feedback:where([data-product-feedback="tabs-v1"]) .sw-feedback__header h2 { font-size: 24px; line-height: 34px; }
}

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/product-thumbnail-rail.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Same original thumbnail buttons and theme; controls replace an unexplained
   scrollbar without removing touch scrolling or changing media selection. */
.sw-product-gallery__thumbnail-navigation { display: grid; grid-template-columns: minmax(0,1fr); align-items: center; gap: .5rem; min-width: 0; max-width: 100%; margin-top: .75rem; }
.sw-product-gallery__thumbnail-navigation[data-overflow="true"] { grid-template-columns: 44px minmax(0,1fr) 44px; }
.sw-product-gallery__thumbnail-window { min-width: 0; min-height: 0; }
.sw-product-gallery__thumbnail-navigation [data-product-thumbnail-rail] { scrollbar-width: none; scroll-snap-type: x proximity; overscroll-behavior-x: contain; }
.sw-product-gallery__thumbnail-navigation [data-product-thumbnail-rail]::-webkit-scrollbar { display: none; }
.sw-product-gallery__thumbnail-navigation [data-product-thumbnail-rail] > button { scroll-snap-align: start; }
.sw-product-gallery__thumbnail-navigation .sw-product-gallery__thumbnails { margin-top: 0 !important; padding: 4px; }
.sw-product-gallery__thumbnail-navigation .sw-product-gallery__thumbnail-page { display: grid; place-items: center; padding: 0; width: 44px; height: 44px; min-width: 44px; min-height: 44px; border: 1px solid var(--sw-color-border,#aaa); border-radius: var(--sw-radius-control,0); background: var(--sw-color-surface-panel,#fff); color: var(--sw-color-text,#151515); font: inherit; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.sw-product-gallery__thumbnail-navigation .sw-product-gallery__thumbnail-page[hidden] { display: none; }
.sw-product-gallery__thumbnail-page[aria-disabled="true"] { opacity: .4; cursor: default; }
.sw-product-gallery__thumbnail-page:focus-visible { outline: 3px solid var(--sw-color-focus-indicator,#005fcc); outline-offset: 2px; }
@container sw-product-gallery (min-width: 360px) {
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__thumbnail-navigation { grid-column: 1; grid-row: 1; margin-top: 0; grid-template-columns: minmax(0,1fr); }
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__thumbnail-page { justify-self: center; }
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__thumbnail-page > span { transform: rotate(90deg); }
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__thumbnail-navigation [data-product-thumbnail-rail] { scroll-snap-type: y proximity; overscroll-behavior-y: contain; }
}

/*!*********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-product-video.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-product-video { position: relative; width: 100%; height: 100%; min-width: 0; background: var(--sw-color-surface-panel, #fff); }
.sw-product-video > video { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; }
.sw-product-video > video:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #171717); outline-offset: -3px; }
.sw-product-video__error { position: absolute; inset: auto 0 0; padding: 12px; background: var(--sw-color-surface-panel, #fff); color: var(--sw-color-text, #171717); }
.sw-product-video__error p { margin: 0 0 8px; font: inherit; overflow-wrap: anywhere; }
.sw-product-video__error button { min-height: 44px; border: 1px solid var(--sw-color-border, #ddd); border-radius: 2px; background: transparent; color: inherit; font: inherit; padding: 8px 12px; cursor: pointer; }
.sw-product-video__error button:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #171717); outline-offset: 2px; }
[data-product-thumbnail-video] { position: relative; }
[data-product-thumbnail-video]::after { content: '▶'; position: absolute; inset: auto 3px 3px auto; padding: 2px 5px; font-size: 12px; line-height: 16px; background: #171717; color: #fff; border-radius: 2px; pointer-events: none; }

/*!********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-product-presentation.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-product-page-composition { display: grid; width: 100%; min-width: 0; gap: var(--sw-theme-section-gap, 2rem); grid-column: 1 / -1; }
.sw-product-module { min-width: 0; max-width: 100%; }
.sw-product-service-information { display: grid; gap: 1rem; min-width: 0; padding: var(--sw-theme-section-padding, clamp(1rem, 3vw, 2.5rem)); color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff); overflow-wrap: anywhere; }
.sw-product-service-information :is(h2,p) { margin: 0 0 .75rem; color: inherit; }
.sw-product-service-information h2 { font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.3; }
.sw-product-service-information__eyebrow { font-size: .875rem; letter-spacing: .08em; }
.sw-product-service-information__body { white-space: pre-wrap; line-height: 1.65; }
.sw-product-service-information a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.sw-product-service-information a:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #2563eb); outline-offset: 3px; }
.sw-product-service-information[data-background="soft"] { background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-product-service-information[data-background="dark"] { background: var(--sw-color-inverse-surface, #151515); color: var(--sw-color-inverse-text, #fff); }
.sw-product-service-information[data-spacing="compact"] { padding-block: 1rem; }
.sw-product-service-information[data-spacing="generous"] { padding-block: 3rem; }
.sw-product-service-information[data-title-style="editorial"] h2 { font-size: clamp(1.75rem, 4vw, 2.5rem); }
.sw-product-service-information[data-layout="split"] { grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); }
.sw-product-specifications { box-sizing: border-box; min-width: 0; padding: var(--sw-theme-section-padding, clamp(1rem, 3vw, 2.5rem)); color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff); font-size: 1rem; overflow-wrap: anywhere; }
.sw-product-specifications > h2 { margin: 0 0 1.25rem; color: inherit; font-size: clamp(1.5rem, 3vw, 2.25rem); }
.sw-product-specifications dl { margin: 0 0 1.5rem; display: grid; gap: .75rem; }
.sw-product-specifications dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: 1rem; }
.sw-product-specifications dt { font-weight: 650; }
.sw-product-specifications dd { margin: 0; }
.sw-product-specifications table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: start; font-size: 1rem; }
.sw-product-specifications caption { text-align: start; margin-bottom: .75rem; font-weight: 650; }
.sw-product-specifications th, .sw-product-specifications td { border-bottom: 1px solid var(--sw-color-border, #ddd); padding: .75rem .5rem; text-align: start; vertical-align: top; }
.sw-product-specifications td > :is(strong,s,span) { display: block; }
.sw-product-specifications ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1rem; }
.sw-product-specifications li { border: 1px solid var(--sw-color-border, #ddd); padding: 1rem; border-radius: var(--sw-radius-card, 0); }
.sw-product-specifications li h3 { margin: 0 0 .75rem; font-size: 1.1rem; }
.sw-product-specifications li > div { display: flex; flex-direction: column; gap: .4rem; }
.sw-product-specifications [data-selected="true"] { background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-product-specifications[data-spacing="dense"] { padding: 1rem; }
.sw-product-specifications[data-spacing="loose"] { padding: 2.5rem; }
.sw-product-specifications[data-width="compact"] > * { max-width: 48rem; margin-inline: auto; }
.sw-product-specifications__disclosure { margin: 0; border-top: 1px solid var(--sw-color-border, #ddd); }
.sw-product-specifications__disclosure > summary { min-height: 44px; padding-block: .65rem; align-content: center; cursor: pointer; font: inherit; line-height: 1.5; }
.sw-product-specifications__disclosure > summary:focus-visible { outline: 2px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 2px; }
.sw-product-specifications__disclosure[open] > :not(summary) { margin-top: .75rem; }
@container sw-product-presentation (min-width: 720px) {
  .sw-product-presentation > [data-product-module="gallery"] { width: 55%; grid-column: 1; grid-row: 1; }
  .sw-product-presentation > [data-product-module="summary"] { width: 45%; grid-column: 1; grid-row: 1; justify-self: end; }
  .sw-product-presentation[data-desktop-column-ratio="50-50"] > .sw-product-module { width: 50%; }
  .sw-product-presentation[data-desktop-column-ratio="60-40"] > [data-product-module="gallery"] { width: 60%; }
  .sw-product-presentation[data-desktop-column-ratio="60-40"] > [data-product-module="summary"] { width: 40%; }
  .sw-product-presentation[data-desktop-media-side="right"] > [data-product-module="gallery"] { justify-self: end; }
  .sw-product-presentation[data-desktop-media-side="right"] > [data-product-module="summary"] { justify-self: start; }
  .sw-product-presentation[data-single-panel="true"] > .sw-product-module { width: 100%; }
}
@container sw-product-presentation (max-width: 719px) {
  .sw-product-presentation[data-mobile-order="info-first"] > [data-product-module="summary"] { order: -1; }
}

/* Shared product facts presentation. The editor owns overlays, not these
   content styles. Container width, not the browser viewport, selects layout. */
.sw-product-presentation { container: sw-product-presentation / inline-size; display: grid; min-width: 0; grid-column: 1 / -1; color: var(--sw-color-text, #151515); background: var(--sw-color-surface-page, #fff); }
.sw-product-gallery, .sw-product-summary { min-width: 0; max-width: 100%; color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff); padding: var(--sw-theme-section-padding, clamp(1rem, 3vw, 2.5rem)); overflow-wrap: anywhere; }
.sw-product-presentation, .sw-product-gallery, .sw-product-summary, .sw-product-gallery *, .sw-product-summary * { box-sizing: border-box; }
.sw-product-gallery:is([data-spacing="compact"],[data-spacing="dense"]), .sw-product-summary:is([data-spacing="compact"],[data-spacing="dense"]) { padding: 1rem; }
.sw-product-gallery:is([data-spacing="generous"],[data-spacing="loose"]), .sw-product-summary:is([data-spacing="generous"],[data-spacing="loose"]) { padding: 2.5rem; }
.sw-product-summary[data-spacing="dense"] .sw-product-summary__stack { gap: .8rem; }
.sw-product-summary[data-spacing="loose"] .sw-product-summary__stack { gap: 2rem; }
.sw-product-gallery[data-width="compact"] .sw-product-gallery__media { max-width: 34rem; margin-inline: auto; }
.sw-product-summary[data-width="compact"] > * { max-width: 31rem; }
.sw-product-gallery { --sw-product-media-gap: 1rem; --sw-product-thumb: 4.5rem; container: sw-product-gallery / inline-size; }
.sw-product-gallery[data-media-gap="compact"] { --sw-product-media-gap: .5rem; }
.sw-product-gallery[data-media-gap="generous"] { --sw-product-media-gap: 1.5rem; }
.sw-product-gallery[data-thumbnail-size="small"] { --sw-product-thumb: 3.5rem; }
.sw-product-gallery[data-thumbnail-size="large"] { --sw-product-thumb: 6rem; }
.sw-product-gallery__media, .sw-product-gallery__stack { min-width: 0; }
.sw-product-gallery__primary, .sw-product-gallery__stack figure { border-radius: var(--sw-radius-media, 0); }
.sw-product-gallery__primary img, .sw-product-gallery__stack img { max-width: 100%; }
.sw-product-gallery[data-image-ratio="1:1"] :is(.sw-product-gallery__primary,.sw-product-gallery__stack figure) { aspect-ratio: 1 / 1 !important; }
.sw-product-gallery[data-image-ratio="4:5"] :is(.sw-product-gallery__primary,.sw-product-gallery__stack figure) { aspect-ratio: 4 / 5 !important; }
.sw-product-gallery[data-image-ratio="3:4"] :is(.sw-product-gallery__primary,.sw-product-gallery__stack figure) { aspect-ratio: 3 / 4 !important; }
.sw-product-gallery[data-image-ratio="16:9"] :is(.sw-product-gallery__primary,.sw-product-gallery__stack figure) { aspect-ratio: 16 / 9 !important; }
.sw-product-gallery .sw-product-gallery__stack { gap: var(--sw-product-media-gap) !important; }
.sw-product-gallery .sw-product-gallery__thumbnails { gap: var(--sw-product-media-gap) !important; }
.sw-product-gallery .sw-product-gallery__thumbnails > button { flex-basis: var(--sw-product-thumb) !important; width: var(--sw-product-thumb) !important; height: var(--sw-product-thumb) !important; min-height: 44px; min-width: 44px; border-radius: var(--sw-radius-control, 0); }
.sw-product-gallery__thumbnails > button:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 2px; }
.sw-product-gallery[data-gallery-preset="catalog"] .sw-product-gallery__stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sw-product-gallery[data-gallery-preset="catalog"] .sw-product-gallery__thumbnails { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--sw-product-thumb)), 1fr)); }
.sw-product-gallery[data-gallery-preset="catalog"] .sw-product-gallery__thumbnails > button { width: 100% !important; }
@container sw-product-gallery (min-width: 360px) {
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__media:not([data-gallery-mode="stacked"]) { display: grid; grid-template-columns: var(--sw-product-thumb) minmax(0, 1fr); gap: var(--sw-product-media-gap); align-items: start; }
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__primary { grid-column: 2; grid-row: 1; }
  .sw-product-gallery[data-thumbnail-position="left"] .sw-product-gallery__thumbnails { grid-column: 1; grid-row: 1; flex-direction: column; max-height: 32rem; overflow-y: auto; margin-top: 0 !important; }
}
.sw-product-summary { --sw-product-price-size: 18px; --sw-product-price-leading: 26px; --sw-product-price-weight: 400; display: grid; align-content: start; gap: 1.25rem; container: sw-product-summary / inline-size; }
.sw-product-summary[data-price-hierarchy="price-first"] { --sw-product-price-weight: 500; }
.sw-product-summary > :is(h1,h2,h3,h4,h5,h6) { margin: 0; color: inherit; font-family: var(--sw-theme-heading-font, inherit); font-weight: var(--sw-theme-heading-weight, 750); font-size: clamp(2rem, 7cqw, 3.5rem); line-height: 1.12; }
.sw-product-summary[data-title-size="small"] > :is(h1,h2,h3,h4,h5,h6) { font-size: 1.5rem; }
.sw-product-summary[data-title-size="medium"] > :is(h1,h2,h3,h4,h5,h6) { font-size: 2rem; }
.sw-product-summary[data-title-size="display"] > :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(2.25rem, 9cqw, 4.25rem); }
.sw-product-summary[data-summary-width="narrow"] { max-width: 28rem; margin-inline: auto; }
.sw-product-summary[data-summary-width="wide"] { width: 100%; }
.sw-product-summary[data-alignment="center"] { text-align: center; }
.sw-product-summary[data-alignment="center"] :is(.sw-product-summary__price,.sw-product-summary__availability,.sw-product-options__choices) { justify-content: center; }
.sw-product-summary[data-background="transparent"] { background: transparent; }
.sw-product-summary[data-background="soft"] { background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-product-summary[data-divider="top"], .sw-product-summary[data-divider="both"] { border-top: 1px solid var(--sw-color-border, #ddd); }
.sw-product-summary[data-divider="bottom"], .sw-product-summary[data-divider="both"] { border-bottom: 1px solid var(--sw-color-border, #ddd); }
.sw-product-summary__eyebrow { margin: 0; font-size: .875rem; letter-spacing: .12em; }
.sw-product-summary__stack { display: grid; gap: 1.25rem; min-width: 0; }
.sw-product-summary__description { margin: 0; white-space: pre-wrap; color: var(--sw-color-text-muted, #555); font-size: 1rem; line-height: 1.75; }
.sw-product-summary__more > summary { min-height: 44px; padding-block: .65rem; cursor: pointer; font-size: .9rem; text-underline-offset: .2em; text-decoration: underline; }
.sw-product-summary__more > summary:focus-visible { outline: 2px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 2px; }
.sw-product-summary__more[open] > .sw-product-summary__description { margin-block: .5rem 1rem; }
/* Frozen preview and live owner prices share typography, not commerce data. */
.sw-product-summary__price { display: flex; flex-wrap: wrap; gap: .35rem .75rem; align-items: baseline; line-height: var(--sw-product-price-leading, 26px); font-variant-numeric: tabular-nums; }
.sw-product-summary__price strong { font-size: var(--sw-product-price-size, 18px); line-height: var(--sw-product-price-leading, 26px); font-weight: var(--sw-product-price-weight, 400); color: inherit; }
.sw-product-summary__price s, .sw-product-summary__price span { color: var(--sw-color-text-muted, #555); font-size: 13px; line-height: 20px; }
.sw-product-summary__price[data-hierarchy="member-first"] span:first-child { font-size: var(--sw-product-price-size, 18px); line-height: var(--sw-product-price-leading, 26px); font-weight: 500; color: inherit; }
.sw-product-summary__availability { display: flex; align-items: center; gap: .5rem; margin-block: 1rem; font-size: .95rem; }
.sw-product-summary__availability i { width: .5rem; height: .5rem; border-radius: 100%; background: currentColor; }
.sw-product-options { display: grid; gap: 1rem; min-width: 0; }
.sw-product-options section { display: grid; gap: .65rem; min-width: 0; }
.sw-product-options h2 { margin: 0; color: inherit; font: inherit; font-weight: 650; font-size: 1rem; }
.sw-product-options__choices { display: flex; flex-wrap: wrap; gap: .6rem; min-width: 0; }
.sw-product-options label { position: relative; display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; min-width: 44px; max-width: 100%; padding: .65rem .8rem; border: 1px solid var(--sw-color-border, #aaa); border-radius: .5rem; color: inherit; background: var(--sw-color-surface-panel, #fff); font-size: .95rem; cursor: pointer; }
.sw-product-options input[type="radio"] { position: absolute; width: 1px; height: 1px; margin: 0; clip-path: inset(50%); }
.sw-product-options label:has(input:focus-visible) { outline: 3px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 3px; }
.sw-product-options label[data-selected="true"] { background: var(--sw-color-accent, #151515); color: var(--sw-color-accent-contrast, #fff); border-color: var(--sw-color-accent, #151515); }
.sw-product-options label[data-disabled="true"] { opacity: .6; cursor: not-allowed; }
.sw-product-options [data-variant-unavailable-style="strike"] label[data-disabled="true"] { text-decoration: line-through; }
.sw-product-options__unavailable { font-size: .8rem; }
.sw-product-options__image { display: block; flex: 0 0 3.5rem; width: 3.5rem; aspect-ratio: 1; overflow: hidden; border-radius: var(--sw-radius-media, 0); }
.sw-product-options__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sw-product-options [data-variant-image-ratio="4:5"] .sw-product-options__image { aspect-ratio: 4 / 5; }
.sw-product-options [data-variant-image-ratio="16:9"] .sw-product-options__image { aspect-ratio: 16 / 9; }
.sw-product-options [data-variant-label-position="below"] label[data-has-image="true"] { flex-direction: column; }
.sw-product-options [data-variant-label-position="overlay"] label[data-has-image="true"] { padding-bottom: 1.5rem; overflow: hidden; }
.sw-product-options [data-variant-label-position="overlay"] label[data-has-image="true"] .sw-product-options__label { position: absolute; inset: auto 0 0; background: var(--sw-color-surface-panel, #fff); color: var(--sw-color-text, #151515); padding: .25rem; text-align: center; }
.sw-product-options [data-variant-layout="stacked"] .sw-product-options__choices { display: grid; grid-template-columns: minmax(0,1fr); }
.sw-product-options [data-variant-layout="grid"] .sw-product-options__choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.sw-product-options [data-variant-size="small"] label { padding: .4rem .55rem; font-size: .875rem; }
.sw-product-options [data-variant-size="large"] label { padding: .85rem 1rem; font-size: 1rem; }
.sw-product-options [data-variant-radius="square"] label { border-radius: 0; }
.sw-product-options [data-variant-radius="pill"] label { border-radius: 999px; }
.sw-product-options [data-variant-border="none"] label:not([data-selected="true"]) { border-color: transparent; }
.sw-product-options [data-variant-border="strong"] label { border-width: 2px; }
.sw-product-options [data-variant-selected-style="outline"] label[data-selected="true"], .sw-product-options [data-variant-selected-style="ring"] label[data-selected="true"] { background: var(--sw-color-surface-panel, #fff); color: inherit; border-width: 2px; }
.sw-product-options [data-variant-selected-style="ring"] label[data-selected="true"] { box-shadow: 0 0 0 2px var(--sw-color-accent, #151515); }
.sw-product-options [data-variant-gap="compact"] .sw-product-options__choices { gap: .35rem; }
.sw-product-options [data-variant-gap="generous"] .sw-product-options__choices { gap: 1rem; }
.sw-product-options select { min-height: 44px; width: 100%; max-width: 100%; color: inherit; background: var(--sw-color-surface-panel, #fff); border: 1px solid var(--sw-color-border, #aaa); border-radius: var(--sw-radius-control, .25rem); font: inherit; padding: .5rem; }
.sw-product-options > p { margin: 0; color: var(--sw-color-text-muted, #555); font-size: .875rem; line-height: 1.5; }
@container sw-product-summary (min-width: 400px) {
  .sw-product-options [data-variant-columns="3"] .sw-product-options__choices { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .sw-product-options [data-variant-columns="4"] .sw-product-options__choices { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .sw-product-options [data-group-label-position="side"] { grid-template-columns: minmax(4rem,.25fr) minmax(0,1fr); align-items: start; }
}
@container sw-product-presentation (min-width: 720px) {
  .sw-product-presentation > .sw-product-gallery { width: 55%; grid-column: 1; grid-row: 1; }
  .sw-product-presentation > .sw-product-summary { width: 45%; grid-column: 1; grid-row: 1; justify-self: end; }
  .sw-product-presentation[data-desktop-column-ratio="50-50"] > :is(.sw-product-gallery,.sw-product-summary) { width: 50%; }
  .sw-product-presentation[data-desktop-column-ratio="60-40"] > .sw-product-gallery { width: 60%; }
  .sw-product-presentation[data-desktop-column-ratio="60-40"] > .sw-product-summary { width: 40%; }
  .sw-product-presentation[data-desktop-media-side="right"] > .sw-product-gallery { justify-self: end; }
  .sw-product-presentation[data-desktop-media-side="right"] > .sw-product-summary { justify-self: start; }
  .sw-product-presentation[data-single-panel="true"] > :is(.sw-product-gallery,.sw-product-summary) { width: 100%; }
}
@container sw-product-presentation (max-width: 719px) {
  .sw-product-presentation[data-mobile-order="info-first"] > .sw-product-summary { order: -1; }
}

/* Explicit saved product typography. Values follow the product content locale,
   never a UI-language toggle. Other templates and authored inline emphasis stay
   unchanged; quote/Cart typography remains owned by its existing component. */
.sw-product-page-composition[data-reading-typography="editorial-v1"] {
  --sw-product-title-size: 30px; --sw-product-title-leading: 39px;
  --sw-product-copy-weight: 400; --sw-product-heading-size: 21px;
  --sw-product-heading-leading: 27px; --sw-product-copy-size: 13px;
  --sw-product-copy-leading: 18.2px; --sw-product-section-gap: 50px;
  --sw-product-heading-gap: 21px; --sw-product-paragraph-gap: 25px;
  --sw-product-control-size: 16px; --sw-product-control-leading: 22px;
  --sw-product-control-weight: 500; --sw-product-control-min: 44px;
  --sw-product-control-radius: min(var(--sw-radius-control, 2px), 2px);
  --sw-product-control-block: 11px; --sw-product-control-inline: 20px;
  --sw-product-control-motion: 180ms;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"]:is([data-product-content-locale|="zh"],[data-product-content-locale|="ja"],[data-product-content-locale|="ko"]) {
  --sw-product-title-size: 28px; --sw-product-title-leading: 38px;
  --sw-product-copy-weight: 500; --sw-product-heading-leading: 29px;
  --sw-product-copy-size: 15px; --sw-product-copy-leading: 25px;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-summary > :is(h1,h2,h3,h4,h5,h6) {
  margin: 0; font-size: var(--sw-product-title-size); line-height: var(--sw-product-title-leading);
  font-weight: var(--sw-product-copy-weight); letter-spacing: normal;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-summary[data-title-size="small"] { --sw-product-title-size: 24px; --sw-product-title-leading: 34px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-summary[data-title-size="display"] { --sw-product-title-size: 32px; --sw-product-title-leading: 42px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-summary { gap: 16px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-reading__details { gap: var(--sw-product-section-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-reading__details > .sw-product-module + .sw-product-module { padding-top: 0; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body__sections { gap: var(--sw-product-section-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body__sections > [data-section-type] { padding-block: 0; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-body,.sw-product-specifications,.sw-product-service-information) :is(h1,h2,h3,h4,h5,h6) {
  font-size: var(--sw-product-heading-size); line-height: var(--sw-product-heading-leading);
  font-weight: var(--sw-product-copy-weight); margin: 0; letter-spacing: normal;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-summary__description,.sw-product-body p,.sw-product-body li,.sw-product-body dd,.sw-product-body blockquote,.sw-product-specifications,.sw-product-service-information__body) {
  font-size: var(--sw-product-copy-size); line-height: var(--sw-product-copy-leading); font-weight: 400;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body :is([data-sw-narrative-copy],[data-sw-safe-rich-text-contract] > div) {
  gap: 0;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body :is([data-sw-narrative-copy],[data-sw-safe-rich-text-contract] > div) > * + * { margin-top: var(--sw-product-paragraph-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body :is([data-sw-narrative-copy],[data-sw-safe-rich-text-contract] > div) > :is(h1,h2,h3,h4,h5,h6) + * { margin-top: var(--sw-product-heading-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body [data-sw-narrative-copy] > ul { gap: var(--sw-product-paragraph-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-body [data-sw-narrative-copy] > ul > li { gap: 8px; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-specifications > h2 { margin-bottom: var(--sw-product-heading-gap); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-specifications :is(table,li h3) { font-size: var(--sw-product-copy-size); line-height: var(--sw-product-copy-leading); }

/* Explicitly folded supporting copy shares the existing accessible disclosure.
   Core introduction and media remain in normal flow; no authored text is cut. */
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq {
  border-block: 1px solid var(--sw-color-border);
}
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq > summary {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  min-height: 44px; padding-block: 12px; list-style: none; font-weight: 500;
}
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq > summary::-webkit-details-marker { display: none; }
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq > summary::after { content: '+'; flex: 0 0 auto; }
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq[open] > summary::after { content: '−'; }
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq > .sw-public-faq__answer { padding-block: 8px 16px; }
.sw-product-body [data-product-supporting-details="disclosure-v1"] > .sw-public-faq > summary > :is(h1,h2,h3,h4,h5,h6) { min-width: 0; margin: 0; }

/* One opt-in control scale, consumed without replacing the Cart/UGC owners.
   Explicit square/pill variant choices and photo-viewer controls are untouched. */
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-options h2 {
  font-family: inherit; font-size: var(--sw-product-control-size);
  line-height: var(--sw-product-control-leading); font-weight: var(--sw-product-control-weight);
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-options label {
  font-size: var(--sw-product-control-size); line-height: var(--sw-product-control-leading);
  min-height: var(--sw-product-control-min); overflow-wrap: anywhere;
  transition: border-color var(--sw-product-control-motion) ease, opacity var(--sw-product-control-motion) ease;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-options [data-variant-radius="soft"] label { border-radius: var(--sw-product-control-radius); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-options select,.sw-reviews .sw-buyer-form-input,.sw-questions .sw-buyer-form-input) {
  border-radius: var(--sw-product-control-radius); min-height: var(--sw-product-control-min);
  font-size: var(--sw-product-control-size); line-height: var(--sw-product-control-leading);
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-cart-action__add,.sw-reviews__entry-actions > button,.sw-reviews__pagination > button,.sw-buyer-form-primary-action,.sw-buyer-form-actions > button,.sw-reviews form > button,.sw-questions form > button) {
  min-height: var(--sw-product-action-min, var(--sw-product-control-min)); border-radius: var(--sw-product-control-radius);
  font-family: inherit; font-size: var(--sw-product-action-size, var(--sw-product-control-size)); line-height: var(--sw-product-control-leading); font-weight: var(--sw-product-action-weight, var(--sw-product-control-weight));
  padding: var(--sw-product-control-block) var(--sw-product-control-inline);
  max-width: 100%; white-space: normal; overflow-wrap: anywhere;
  transition: opacity var(--sw-product-control-motion) ease;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-cart-action__add { --sw-product-action-min: 50px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-reviews__entry-actions > button { --sw-product-action-size: 14px; --sw-product-action-weight: 400; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews,.sw-questions) button[type="submit"] { justify-self: start; }
@media (hover: hover) {
  .sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-cart-action__add,.sw-reviews__entry-actions > button,.sw-reviews__pagination > button,.sw-buyer-form-primary-action,.sw-buyer-form-actions > button,.sw-reviews form > button,.sw-questions form > button):hover:not(:disabled):not(:active) { opacity: .85; }
  .sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-product-options label:not([data-selected="true"]):not([data-disabled="true"]):hover { border-color: currentColor; }
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-cart-action__add,.sw-buyer-form-primary-action):active:not(:disabled) { opacity: .7; }
@media (prefers-reduced-motion: reduce) {
  .sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-product-options label,.sw-product-cart-action__add,.sw-reviews__entry-actions > button,.sw-reviews__pagination > button,.sw-buyer-form-primary-action,.sw-buyer-form-actions > button,.sw-reviews form > button,.sw-questions form > button) { transition: none; }
}

/* The saved editorial choice also supplies one reading scale to the two
   feedback modules. Each original text's lang wins over the UI/product locale.
   No global Theme values, homepage reviews or historical opt-out are changed. */
.sw-product-page-composition[data-reading-typography="editorial-v1"] > .sw-product-module:is([data-product-module="reviews"],[data-product-module="questions"]) {
  container: sw-product-feedback-frame / inline-size;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews,.sw-questions) {
  --sw-feedback-title-size: 27px; --sw-feedback-title-leading: 38px;
  --sw-feedback-title-weight: 500; --sw-feedback-label-weight: 500;
  --sw-feedback-copy-size: 15px; --sw-feedback-copy-leading: 25px;
  --sw-feedback-gap-small: 8px; --sw-feedback-gap-medium: 16px;
  --sw-feedback-label-size: 15px; --sw-feedback-label-leading: 24px;
  font-size: var(--sw-feedback-copy-size); line-height: var(--sw-feedback-copy-leading);
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews,.sw-questions)[data-sw-interface-locale|="en"] {
  --sw-feedback-copy-size: 14px; --sw-feedback-copy-leading: 21px;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__header,.sw-questions__header) { gap: var(--sw-feedback-gap-small); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__header,.sw-questions__header) h2 {
  font-size: var(--sw-feedback-title-size); line-height: var(--sw-feedback-title-leading);
  font-weight: var(--sw-feedback-narrow-title-weight,var(--sw-feedback-title-weight));
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__header,.sw-questions__header) h2:lang(en) { --sw-feedback-title-weight: 400; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__text,.sw-questions__text,.sw-reviews__header > p,.sw-questions__header > p) {
  font-size: var(--sw-feedback-copy-size); line-height: var(--sw-feedback-copy-leading); font-weight: 400;
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__text,.sw-questions__text,.sw-reviews__header > p,.sw-questions__header > p):lang(en) { --sw-feedback-copy-size: 14px; --sw-feedback-copy-leading: 21px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__text,.sw-questions__text,.sw-reviews__header > p,.sw-questions__header > p):is(:lang(zh),:lang(ja),:lang(ko)) { --sw-feedback-copy-size: 15px; --sw-feedback-copy-leading: 25px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__review-title,.sw-reviews__merchant-reply > strong,.sw-questions__answer h3) {
  font-size: var(--sw-feedback-label-size); line-height: var(--sw-feedback-label-leading); font-weight: var(--sw-feedback-label-weight);
}
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-reviews__review-title { --sw-feedback-label-size: 16px; }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__merchant-reply,.sw-questions__answer) { gap: var(--sw-feedback-gap-small); }
.sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews__request,.sw-questions__request) { gap: var(--sw-feedback-gap-medium); }
/* The first published item supplies the separator below the disclosure. */
.sw-product-page-composition[data-reading-typography="editorial-v1"] .sw-questions__write { border-block-end: 0; padding-block-end: 0; }
@container sw-product-feedback-frame (max-width: 719px) {
  .sw-product-page-composition[data-reading-typography="editorial-v1"] :is(.sw-reviews,.sw-questions) {
    --sw-feedback-title-size: 24px; --sw-feedback-title-leading: 34px;
    --sw-feedback-narrow-title-weight: 500;
    padding: var(--sw-feedback-gap-medium);
  }
}

/*!****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-checkout.css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-checkout {
  box-sizing: border-box;
  container: sw-checkout / inline-size;
  width: 100%;
  max-width: 72rem;
  min-width: 0;
  margin-inline: auto;
  padding: clamp(1.25rem, 4vw, 3rem) clamp(1rem, 4vw, 2rem);
  color: var(--sw-color-text);
  font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif);
  font-size: 1rem;
  line-height: 1.5;
}
.sw-checkout[data-sw-checkout-width="standard"] { max-width: 54rem; }
.sw-checkout :is(p, h1, h2, dl, dd) { margin-block-start: 0; }
.sw-checkout :is(button, input, a, summary) { font: inherit; }
.sw-checkout :is(button, input, a, summary):focus-visible {
  outline: 3px solid var(--sw-color-focus-indicator);
  outline-offset: 3px;
}
.sw-checkout__header { display: grid; min-width: 0; gap: .65rem; margin-bottom: 1.25rem; }
.sw-checkout__header h1 { margin: 0; font-size: clamp(1.65rem, 2.4vw, 2rem); line-height: 1.15; font-weight: 700; overflow-wrap: anywhere; }
.sw-checkout__header p { margin: 0; max-width: 48rem; color: var(--sw-color-text-muted); line-height: 1.65; }
.sw-checkout__stack { display: grid; min-width: 0; gap: 1rem; }
.sw-checkout__section { display: grid; min-width: 0; gap: 1rem; padding: 1.25rem 0; border-top: 1px solid var(--sw-color-border); }
.sw-checkout__section h2 { margin: 0; font-size: 1.2rem; line-height: 1.3; font-weight: 700; }
.sw-checkout__fieldset { display: grid; min-width: 0; gap: 1rem; margin: 0; padding: 0; border: 0; }
.sw-checkout__fieldset:disabled { opacity: .65; }
.sw-checkout__fieldset > .sw-checkout__draft-status { grid-column: 1 / -1; margin: 0; font-size: .875rem; line-height: 1.5; color: var(--sw-color-text-muted); }
.sw-checkout__input {
  box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 44px;
  border: 1px solid var(--sw-color-border); border-radius: min(var(--sw-radius-control), .35rem);
  background: var(--sw-color-surface-panel); color: var(--sw-color-text); padding: .6rem .75rem;
}
.sw-checkout__link {
  display: inline-flex; min-height: 44px; min-width: 0; max-width: 100%; align-items: center;
  color: var(--sw-color-accent); text-decoration: underline; text-underline-offset: .25em; overflow-wrap: anywhere;
}
.sw-checkout__feedback,
.sw-checkout__uncertain {
  display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .75rem 1rem;
  margin: 0 0 1rem; padding: .75rem 1rem; border-left: 3px solid var(--sw-color-border);
  background: var(--sw-color-surface-muted); line-height: 1.6; overflow-wrap: anywhere;
}
.sw-checkout__feedback[data-kind="error"], .sw-checkout__uncertain { border-left-color: var(--sw-color-accent); }
.sw-checkout .sw-checkout__feedback--quiet { position: absolute; width: 1px; height: 1px; min-width: 0; padding: 0; margin: -1px; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sw-checkout button[aria-disabled="true"] { opacity: .65; cursor: not-allowed; }
.sw-checkout button[aria-busy="true"] { cursor: progress; }
.sw-checkout__uncertain p { flex: 1 1 20rem; margin: 0; }
.sw-checkout__reload { margin-bottom: 1rem; }
.sw-checkout__layout { display: grid; min-width: 0; gap: 1.5rem; align-items: start; }
.sw-checkout__main { min-width: 0; }
.sw-checkout__fulfillment { min-width: 0; border: 1px solid var(--sw-color-border); border-radius: .25rem; padding: 1rem; }
.sw-checkout__fulfillment p { margin-bottom: 0; }
.sw-checkout__member-addresses {
  display: grid; min-width: 0; gap: .75rem; padding: 1rem;
  border: 1px solid var(--sw-color-border); border-radius: .25rem;
  background: var(--sw-color-surface-muted);
}
.sw-checkout__member-addresses p { margin: 0; line-height: 1.55; overflow-wrap: anywhere; }
.sw-checkout__member-addresses select { min-width: 0; max-width: 100%; }
.sw-checkout__store-map {
  display: grid; min-width: 0; gap: .85rem; padding: 1rem;
  border: 1px solid var(--sw-color-border); border-radius: .25rem;
  background: var(--sw-color-surface-muted);
}
.sw-checkout__store-map-copy { display: grid; min-width: 0; gap: .65rem; }
.sw-checkout__store-map-copy > :is(p, dl) { margin: 0; }
.sw-checkout__store-map-copy dl {
  display: grid; grid-template-columns: minmax(5.5rem, auto) minmax(0, 1fr);
  gap: .4rem .85rem; min-width: 0;
}
.sw-checkout__store-map-copy dt { color: var(--sw-color-text-muted); }
.sw-checkout__store-map-copy dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.sw-checkout__store-map > button { justify-self: start; }
.sw-checkout__store-map > p { margin: 0; line-height: 1.55; overflow-wrap: anywhere; }
.sw-checkout__read-region { min-width: 0; }
.sw-checkout__cold-read { row-gap: .75rem; }
.sw-checkout__cold-read > .sw-buyer-async-region__status { grid-area: 1 / 1; }
.sw-checkout__cold-read > .sw-buyer-async-region__content { grid-area: 2 / 1; }
.sw-checkout__cold-read .sw-buyer-async-region__placeholder { padding-block-start: 0; }
.sw-checkout__read-region:focus-visible { outline: 2px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-checkout__payment-options { display: grid; gap: .65rem; margin: .85rem 0 0; padding: 0; border: 0; }
.sw-checkout__payment-options legend { margin-bottom: .35rem; font-weight: 650; }
.sw-checkout__payment-option { display: flex; min-height: 44px; align-items: center; gap: .65rem; cursor: pointer; }
.sw-checkout__payment-option input { inline-size: 18px; block-size: 18px; }
.sw-checkout__read-region .sw-buyer-async-region__content,
.sw-checkout__read-status { display: grid; min-width: 0; gap: 1rem; }
.sw-checkout__read-region p { margin: 0; }
/* The status occupies the same grid cell. Reserve its geometry, but never
   paint placeholder bars behind the readable status or recovery control. */
.sw-checkout__read-region .sw-buyer-async-region__placeholder { min-block-size: 1lh; padding: 0; gap: 0; visibility: hidden; }
.sw-checkout__read-region .sw-buyer-async-region__placeholder > span:not(:first-child) { display: none; }
.sw-checkout__read-region button[aria-disabled="true"] { opacity: .65; cursor: progress; }
.sw-checkout__policy-links, .sw-checkout__navigation { display: flex; min-width: 0; flex-wrap: wrap; gap: .75rem 1.25rem; }
.sw-checkout__navigation { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--sw-color-border); }
.sw-checkout__summary-column { min-width: 0; }
.sw-checkout__summary {
  min-width: 0; border: 1px solid var(--sw-color-border); border-radius: .25rem;
  background: color-mix(in srgb, var(--sw-color-surface-muted) 60%, var(--sw-color-surface-panel)); box-shadow: none; overflow: clip;
}
.sw-checkout__summary > summary {
  box-sizing: border-box; display: flex; min-height: 52px; align-items: center; justify-content: space-between;
  gap: 1rem; padding: .9rem 1rem; cursor: pointer; font-weight: 700; list-style-position: inside;
}
.sw-checkout__summary > summary strong { margin-left: auto; white-space: nowrap; }
.sw-checkout__summary-body { display: grid; min-width: 0; gap: 1rem; padding: 0 1rem 1.25rem; }
.sw-checkout__lines, .sw-checkout__cart-editor .sw-header-cart__lines { margin: 0; padding: 0; list-style: none; }
.sw-checkout__lines li { display: flex; min-width: 0; align-items: flex-start; gap: .85rem; padding-block: 1rem; border-bottom: 1px solid var(--sw-color-border); }
.sw-checkout__lines li > div { min-width: 0; }
.sw-checkout__lines img, .sw-checkout__cart-editor .sw-header-cart__lines img {
  width: 64px; height: 64px; flex: 0 0 64px; object-fit: contain; border-radius: .2rem;
}
.sw-checkout__lines p, .sw-checkout__cart-editor p { margin: .2rem 0; line-height: 1.4; overflow-wrap: anywhere; }
.sw-checkout__cart-editor .sw-header-cart__body { min-height: 0; overflow: visible; padding: 0; }
.sw-checkout__cart-editor .sw-header-cart__line { display: grid; grid-template-columns: 4rem minmax(0, 1fr) auto; gap: .35rem .75rem; min-width: 0; align-items: start; padding-block: 1rem; border-bottom: 1px solid var(--sw-color-border); }
.sw-checkout__cart-editor .sw-header-cart__line > img { grid-column: 1; grid-row: 1 / span 2; }
.sw-checkout__cart-editor .sw-header-cart__line-copy { grid-column: 2; min-width: 0; }
.sw-checkout__cart-editor .sw-header-cart__line-price { grid-column: 3; grid-row: 1; white-space: nowrap; font-size: .875rem; }
.sw-checkout__cart-editor .sw-header-cart__product-title { color: var(--sw-color-text); font-weight: 600; text-decoration: none; }
.sw-checkout__cart-editor .sw-header-cart__product-title:hover { text-decoration: underline; text-underline-offset: .2em; }
.sw-checkout__cart-editor :is(.sw-header-cart__variant,.sw-header-cart__unit-price,.sw-header-cart__line-meta,.sw-header-cart__availability) { color: var(--sw-color-text-muted); font-size: .825rem; }
.sw-checkout__cart-editor .sw-header-cart__line-editor { grid-column: 2 / -1; display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; padding-top: .25rem; }
.sw-checkout__cart-editor .sw-header-cart__line-actions { display: flex; flex-wrap: wrap; gap: .35rem; }
.sw-checkout__cart-editor .sw-header-cart__line-actions button { min-height: 44px; padding-inline: .35rem; border: 0; border-radius: 0; background: transparent; color: var(--sw-color-text); text-decoration: underline; text-underline-offset: .2em; }
.sw-checkout__totals { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .55rem 1.25rem; margin: 0; }
.sw-checkout__totals dd { text-align: right; }
.sw-checkout__totals :is(dt, dd):nth-last-child(-n+2) { padding-top: .6rem; border-top: 1px solid var(--sw-color-border); font-weight: 750; }
.sw-checkout__sync-status { margin: 0; padding: .75rem; border-left: 3px solid var(--sw-color-accent); background: var(--sw-color-surface-muted); line-height: 1.55; }

@container sw-checkout (min-width: 48rem) {
  .sw-checkout__layout { grid-template-columns: minmax(0, 1.35fr) minmax(20rem, .85fr); gap: 0; border-top: 1px solid var(--sw-color-border); }
  .sw-checkout__main { padding: 1.5rem clamp(1.25rem, 3vw, 2.5rem) 1.5rem 0; }
  .sw-checkout__summary-column { padding: 1.5rem 0 1.5rem clamp(1.25rem, 3vw, 2.5rem); border-left: 1px solid var(--sw-color-border); }
  .sw-checkout__summary-column { position: sticky; top: calc(var(--sw-site-header-height, 0px) + var(--sw-site-announcement-height, 0px) + 1rem); }
  .sw-checkout__summary > summary { cursor: default; pointer-events: none; }
  .sw-checkout__summary:not([open]) > .sw-checkout__summary-body { display: grid; }
  .sw-checkout__fieldset { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-checkout__fieldset > .sw-checkout__stack,
  .sw-checkout__fieldset > .sw-checkout__fulfillment,
  .sw-checkout__fieldset > .sw-checkout__member-addresses,
  .sw-checkout__fieldset > .sw-checkout__store-map,
  .sw-checkout__fieldset > button { grid-column: 1 / -1; }
}

@media (max-width: 30rem) {
  .sw-checkout { padding-inline: 1rem; }
  .sw-checkout__summary > summary { align-items: flex-start; }
  .sw-checkout__cart-editor .sw-header-cart__line { grid-template-columns: 3.5rem minmax(0, 1fr); }
  .sw-checkout__cart-editor .sw-header-cart__line-price { grid-column: 2; grid-row: auto; justify-self: start; }
  .sw-checkout__cart-editor .sw-header-cart__line-editor { grid-column: 1 / -1; }
  .sw-checkout__store-map-copy dl { grid-template-columns: 1fr; gap: .15rem; }
  .sw-checkout__store-map-copy dd + dt { margin-top: .5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .sw-checkout *, .sw-checkout *::before, .sw-checkout *::after { scroll-behavior: auto; transition-duration: .01ms !important; }
}

/*!********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-order-status.css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-order-status__link:focus-visible {
  outline: 3px solid var(--sw-color-focus-indicator, #005fcc);
  outline-offset: 3px;
}

@media (forced-colors: active) {
  .sw-order-status__link:focus-visible {
    outline-color: CanvasText;
  }
}

/*!******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-site-shell.css ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************/
[data-sw-site-shell] {
  --sw-site-announcement-height: 0px;
  --sw-hero-natural-flow-inset: calc(
    var(--sw-site-announcement-height)
    + var(--sw-site-header-announcement-height, 0px)
    + var(--sw-site-header-height, 0px)
  );
}
[data-sw-site-shell][data-sw-header-overlay="true"] {
  --sw-hero-natural-flow-inset: calc(
    var(--sw-site-announcement-height)
    + var(--sw-site-header-announcement-height, 0px)
  );
}
.sw-site-header-chrome { min-width: 0; align-self: start; z-index: 20; }
.sw-site-header-chrome[data-sticky="true"] { position: sticky; top: var(--sw-site-header-sticky-top, 0px); }
.sw-site-announcement { position: relative; z-index: 110; min-width: 0; background: #111; color: #fff; }
/* Match SSR and initial hydration while reading the tab-local public preference.
 * The component's noscript rule restores the notice when scripting is off. */
.sw-site-announcement[data-dismissal-pending="true"] { visibility: hidden; }
/* New promotions occupy their own natural-flow row, not the sticky header.
   Historical nested announcements retain the preceding layout rules. */
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"] { grid-template-rows: auto minmax(0, 1fr) auto; }
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"] > [data-sw-site-announcement] { grid-area: 1 / 1; }
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"] > .sw-site-header-chrome,
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"] > [data-sw-shared-renderer] { grid-area: 2 / 1; }
[data-sw-site-shell][data-sw-header-overlay="true"][data-sw-announcement-independent="true"] > [data-sw-shared-renderer] { padding-block-start: 0; }
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"] > [data-sw-site-shell-footer] { grid-area: 3 / 1; }
/* R4 is a viewport image, not a viewport remainder. The page body spans the
   announcement and Header rows so both chrome bands overlay the image while
   retaining their own natural heights and order. */
[data-sw-site-shell][data-sw-header-overlay="true"][data-sw-announcement-independent="true"][data-sw-hero-viewport-overlay="true"] {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"][data-sw-hero-viewport-overlay="true"] > [data-sw-site-announcement] {
  grid-area: 1 / 1;
  align-self: start;
  width: 100%;
}
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"][data-sw-hero-viewport-overlay="true"] > .sw-site-header-chrome {
  grid-area: 2 / 1;
}
[data-sw-site-shell][data-sw-header-overlay="true"][data-sw-announcement-independent="true"][data-sw-hero-viewport-overlay="true"] > [data-sw-shared-renderer] {
  grid-area: 1 / 1 / 4 / 2;
  padding-block-start: 0;
  padding-inline: 0;
}
[data-sw-header-overlay="true"][data-sw-announcement-independent="true"][data-sw-hero-viewport-overlay="true"] > [data-sw-site-shell-footer] {
  grid-area: 4 / 1;
}
.sw-site-announcement__inner { display: flex; align-items: center; justify-content: center; gap: .75rem; max-width: 1120px; margin-inline: auto; padding-inline: 1rem; min-height: 44px; box-sizing: border-box; }
.sw-site-announcement :is(p,a) { margin: 0; padding-block: .55rem; color: inherit; font: inherit; font-size: .875rem; line-height: 1.5; overflow-wrap: anywhere; }
.sw-site-announcement button { flex: 0 0 44px; width: 44px; min-height: 44px; border: 0; border-radius: 0; color: inherit; background: transparent; font: inherit; font-size: 1.5rem; cursor: pointer; }
.sw-site-announcement :is(a,button):focus-visible { outline: 2px solid currentColor; outline-offset: -3px; }
[data-sw-header-overlay="true"] { display: grid; grid-template-columns: minmax(0, 1fr); }
[data-sw-header-overlay="true"] > .sw-site-header-chrome,
[data-sw-header-overlay="true"] > [data-sw-shared-renderer] { grid-area: 1 / 1; }
[data-sw-site-shell][data-sw-header-overlay="true"] > [data-sw-shared-renderer] { max-width: none; padding-block-start: var(--sw-site-announcement-height, 0px); padding-inline: 0; }
[data-sw-header-overlay="true"]:has(> .sw-site-header-chrome > [data-sw-site-announcement]) > [data-sw-shared-renderer] { padding-block-start: var(--sw-site-header-announcement-height, 44px); }
[data-sw-header-overlay="true"] > [data-sw-shared-renderer] > .sw-public-hero-carousel:first-child,
[data-sw-header-overlay="true"] > [data-sw-shared-renderer] > :first-child .sw-public-hero-carousel { border-radius: 0; }
/* Versioned stable Hero panels own their measured header inset and reading
   row. Applying the legacy top offset again would move that row beyond its
   reserved height. Historical single-copy presentations retain this rule. */
[data-sw-header-overlay="true"] > [data-sw-shared-renderer] > .sw-public-hero-carousel:first-child .sw-public-hero-carousel__copy:not([data-hero-copy-slide]),
[data-sw-header-overlay="true"] > [data-sw-shared-renderer] > :first-child .sw-public-hero-carousel__copy:not([data-hero-copy-slide]) { top: var(--sw-header-copy-top, var(--sw-site-header-height, 7rem)); }
@container sw-hero (max-width: 480px) {
  .sw-public-hero-carousel[data-mobile-layout="stacked"] .sw-public-hero-carousel__copy { --sw-header-copy-top: 0px; }
}
.sw-site-header-chrome > .sw-public-site-shell-header { transition: background-color .2s ease, color .2s ease, box-shadow .2s ease; }
.sw-site-header-chrome[data-overlay="true"][data-scrolled="false"] > .sw-public-site-shell-header { --sw-color-text: #fff; --sw-color-text-muted: rgb(255 255 255 / .82); color: #fff; background: linear-gradient(180deg, rgb(0 0 0 / .58) 0%, rgb(0 0 0 / .22) 58%, transparent 100%) no-repeat; border-color: transparent; }
.sw-site-header-chrome[data-scrolled="true"] > .sw-public-site-shell-header { background: rgb(255 255 255 / .98); color: #111; --sw-color-text: #111; --sw-color-text-muted: #333; box-shadow: 0 1px 0 rgb(0 0 0 / .12), 0 8px 24px rgb(0 0 0 / .06); backdrop-filter: blur(14px); }
.sw-site-header-chrome .sw-site-nav__children { color: #111; --sw-color-text: #111; --sw-color-text-muted: #333; }
@media (prefers-reduced-motion: reduce) { .sw-site-header-chrome > .sw-public-site-shell-header { transition: none; } }
.sw-public-site-shell-header { container: sw-site-header / inline-size; }
.sw-public-site-shell-header__logo-image { display: block; width: auto; height: auto; max-width: min(12rem, 100%); max-height: 3.25rem; object-fit: contain; }
.sw-public-site-shell-header [data-sw-site-shell-logo] { max-width: 100%; min-height: 44px; padding-inline: .6rem; font-size: clamp(.9rem, 1.5vw, 1.15rem); font-weight: 760; letter-spacing: .09em; text-transform: uppercase; }
.sw-public-site-shell-header__mobile { display: block; width: 100%; min-width: 0; }
.sw-site-nav { min-width: 0; }
.sw-site-nav__items, .sw-site-nav__children { list-style: none; margin: 0; padding: 0; min-width: 0; }
.sw-site-nav__items { display: flex; flex-wrap: wrap; align-items: start; gap: .5rem; }
.sw-site-nav__item { min-width: 0; }
.sw-public-site-shell-header__inner { position: relative; display: grid; grid-template-columns: var(--sw-site-menu-width, 4.5rem) minmax(0, 1fr) 4.5rem; gap: .5rem; width: 100%; max-width: none; min-height: 4.75rem; padding: .65rem clamp(1rem, 3.25vw, 3rem); }
.sw-public-site-shell-header__inner > [data-sw-site-shell-logo] { grid-column: 2; grid-row: 1; justify-self: center; text-align: center; }
.sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile { grid-column: 1; grid-row: 1; }
.sw-site-nav__hamburger { font-size: 1.125rem; line-height: 1; }
/* Keep the finite Japanese menu label on one line without shrinking its touch target. */
.sw-public-site-shell-header[data-sw-interface-locale="ja"] { --sw-site-menu-width: 5.5rem; }
.sw-public-site-shell-header__mobile > summary { padding-inline: .25rem; font-size: .875rem; white-space: nowrap; }
.sw-site-nav__link, .sw-site-nav__trigger { display: flex; align-items: center; gap: .5rem; min-height: 44px; padding: .5rem .7rem; box-sizing: border-box; color: inherit; text-decoration: none; cursor: pointer; overflow-wrap: anywhere; font-size: .75rem; letter-spacing: .085em; text-transform: uppercase; }
.sw-site-nav__trigger { font-weight: 650; list-style: none; }
.sw-site-nav__trigger::-webkit-details-marker { display: none; }
.sw-site-nav__link:focus-visible, .sw-site-nav__trigger:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 2px; }
.sw-site-nav__group[open] > summary .sw-site-nav__chevron { transform: rotate(180deg); }
.sw-site-nav__children { padding: .85rem; border: 1px solid rgb(0 0 0 / .12); background: #fff; border-radius: 0; box-shadow: 0 18px 44px rgb(0 0 0 / .14); }
.sw-site-nav[data-sw-site-shell-navigation-mode="mobile"] .sw-site-nav__items { display: block; }
.sw-site-nav[data-sw-site-shell-navigation-mode="mobile"] .sw-site-nav__children { margin-inline-start: .75rem; }
.sw-site-nav[data-sw-site-shell-navigation-mode="desktop"] .sw-site-nav__children { position: absolute; z-index: 5; inset-inline-start: var(--sw-nav-left, auto); inset-inline-end: 0; min-width: 12rem; width: max-content; max-width: min(28rem, 100%); box-sizing: border-box; max-height: 60vh; overflow: auto; }
.sw-site-nav[data-navigation-style="mega"][data-sw-site-shell-navigation-mode="desktop"] .sw-site-nav__children { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 26rem; }
.sw-site-nav[data-navigation-animation="fade"] details[open] > ul, .sw-site-nav[data-navigation-animation="stagger"] details[open] > ul > li { animation: sw-nav-fade .15s ease-out both; }
.sw-site-nav[data-navigation-animation="stagger"] details[open] > ul > li:nth-child(2n) { animation-delay: .04s; }
.sw-site-nav[data-navigation-animation="slide_down"] details[open] > ul { animation: sw-nav-slide .15s ease-out both; }
.sw-site-nav[data-navigation-animation="scale"] details[open] > ul { animation: sw-nav-scale .15s ease-out both; transform-origin: top; }
@keyframes sw-nav-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes sw-nav-slide { from { opacity: 0; transform: translateY(-.4rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes sw-nav-scale { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .sw-site-nav[data-navigation-animation] details[open] > ul, .sw-site-nav[data-navigation-animation] details[open] > ul > li { animation: none; } }
.sw-public-site-shell-header__desktop { display: none; }
@container sw-site-header (min-width: 48rem) {
  .sw-public-site-shell-header__inner { display: flex; flex-direction: column; gap: .05rem; padding-block: .55rem .4rem; }
  .sw-public-site-shell-header__mobile { display: none; }
  .sw-public-site-shell-header__desktop { display: block; }
  .sw-public-site-shell-header__desktop .sw-site-nav__items { justify-content: center; gap: .15rem; }
}
/* A short R4 viewport keeps one original header, with its middle clear for
   the same full-height product. Navigation remains in the existing drawer. */
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0 .5rem;
  padding-block: .35rem;
  align-items: center;
}
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner:has(> .sw-header-utilities) { grid-template-columns: minmax(0, 1fr) auto; }
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner > [data-sw-site-shell-logo] {
  grid-column: 1; grid-row: 1; justify-self: start; padding-inline: 0; max-width: min(9rem, 100%); text-align: start;
}
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile {
  display: block; grid-column: 1; grid-row: 2; width: max-content; max-width: 100%; justify-self: start;
}
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__desktop { display: none; }
[data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner > .sw-header-utilities {
  position: static; grid-column: 2; grid-row: 1; justify-self: end;
}
@container sw-site-header (min-width: 40rem) {
  [data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner,
  [data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner:has(> .sw-header-utilities) { grid-template-columns: auto auto minmax(0, 1fr) auto; }
  [data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile { grid-column: 2; grid-row: 1; }
  [data-sw-hero-compact-header="true"] .sw-public-site-shell-header__inner > .sw-header-utilities { grid-column: 4; }
}
.sw-site-nav__link:hover { text-decoration: underline; text-underline-offset: .25em; }
.sw-site-nav__chevron { flex: 0 0 1rem; transition: transform .2s ease; }
.sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile[data-sw-site-shell-mobile-menu="native-details"][open] { grid-column: 1 / -1; grid-row: 2; }
.sw-site-drawer { position: fixed; inset: 0 auto 0 0; margin: 0; box-sizing: border-box; width: min(22rem, calc(100vw - 2.5rem)); max-width: none; height: 100dvh; max-height: 100dvh; border: 0; padding: 1.25rem; overflow-y: auto; overscroll-behavior: contain; background: #fff; color: #171717; font: inherit; }
.sw-site-drawer::backdrop { background: rgb(0 0 0 / .55); }
.sw-site-drawer[open] { animation: sw-site-drawer-enter .2s ease-out; }
.sw-site-drawer__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; border-bottom: 1px solid #ddd; padding-bottom: .5rem; }
.sw-site-drawer__head h2 { margin: 0; font-size: 1rem; font-weight: 600; }
.sw-site-drawer__close { display: inline-flex; align-items: center; gap: .6rem; justify-content: center; min-width: 64px; min-height: 44px; padding: .5rem; border: 0; background: transparent; color: inherit; cursor: pointer; font: inherit; }
.sw-site-drawer .sw-site-nav__item { border-bottom: 1px solid #e5e5e5; padding-block: .35rem; }
.sw-site-drawer .sw-site-nav__trigger { justify-content: space-between; font-weight: 500; }
.sw-site-drawer .sw-site-nav__children { margin: 0; padding-inline-start: 1rem; border: 0; border-radius: 0; background: #fff; }
.sw-site-drawer .sw-site-nav__link, .sw-site-drawer .sw-site-nav__trigger { color: #171717; }
.sw-site-drawer :is(a,button,summary):focus-visible { outline: 3px solid #171717; outline-offset: 2px; }
@keyframes sw-site-drawer-enter { from { transform: translateX(-100%); } to { transform: translateX(0); } }
.sw-footer-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); align-items: start; gap: clamp(1.5rem, 3vw, 4.5rem); width: 100%; max-width: 1280px; padding: clamp(3.25rem, 7vw, 6.5rem) clamp(1rem, 4vw, 3rem); }
.sw-public-site-shell-footer__locale { box-sizing: border-box; width: 100%; min-width: 0; max-width: 1280px; margin-inline: auto; padding: 1rem clamp(1rem, 4vw, 3rem) 2.25rem; border-top: 1px solid rgb(255 255 255 / .18); }
.sw-footer-column { min-width: 0; }
.sw-footer-column__heading { list-style: none; display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 44px; margin: 0 0 .8rem; font-size: .76rem; font-weight: 720; line-height: 1.5; letter-spacing: .09em; text-transform: uppercase; overflow-wrap: anywhere; }
.sw-footer-column__heading::-webkit-details-marker { display: none; }
.sw-footer-column__indicator { display: none; font-size: 1.5rem; font-weight: 400; }
.sw-footer-column__content { min-width: 0; color: rgb(255 255 255 / .72); font-size: .88rem; line-height: 1.72; }
.sw-footer-column__content p { white-space: pre-wrap; margin: 0 0 1rem; overflow-wrap: anywhere; }
.sw-footer-column__content ul { margin: 0; padding: 0; list-style: none; }
.sw-footer-column__content a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.sw-footer-column__content a:hover { text-decoration: underline; text-underline-offset: .25em; }
.sw-footer-column :is(a,summary):focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
[data-sw-site-shell-footer][data-theme-footer="editorial-footer"] { background: #0b0b0b; color: #fff; border-color: #242424; }
@media (min-width: 64rem) {
  [data-sw-site-shell-footer] > .sw-public-site-shell-footer__inner.sw-footer-groups:not([data-compact="true"]) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
[data-sw-site-shell-footer] > .sw-public-site-shell-footer__inner.sw-footer-groups[data-compact="true"] { grid-template-columns: minmax(0, 1fr); gap: 0; }
.sw-footer-groups[data-compact="true"] .sw-footer-column { border-bottom: 1px solid currentColor; padding-block: .5rem; }
.sw-footer-groups[data-compact="true"] .sw-footer-column__heading { cursor: pointer; margin: 0; }
.sw-footer-groups[data-compact="true"] .sw-footer-column__indicator { display: block; transition: transform .2s ease; }
.sw-footer-groups[data-compact="true"] details[open] .sw-footer-column__indicator { transform: rotate(45deg); }
.sw-footer-groups[data-compact="true"] .sw-footer-column__content { padding-block: .75rem; }
@media (prefers-reduced-motion: reduce) {
  .sw-site-drawer[open] { animation: none; }
  .sw-site-nav__chevron, .sw-footer-groups[data-compact="true"] .sw-footer-column__indicator { transition: none; }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-theme.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************/
/* Applies only to an explicitly materialized, validated theme. Historical
 * snapshots without this extension retain their previous rendering rules. */
.sw-public-themed-site { background: var(--sw-color-surface-page); color: var(--sw-color-text); font-family: var(--sw-storefront-font-family, ui-sans-serif, system-ui, sans-serif); }
.sw-public-themed-site [data-sw-shared-renderer] { gap: calc(var(--sw-theme-section-gap) * 2); padding: var(--sw-theme-section-padding); }
.sw-public-themed-site :is(h1,h2,h3,h4,h5,h6) { font-family: var(--sw-theme-heading-font); font-weight: var(--sw-theme-heading-weight); }
.sw-public-site-shell-header[data-theme-header="quiet-minimal"] > .sw-public-site-shell-header__inner { padding-block: .5rem; gap: .25rem; }
.sw-public-site-shell-header[data-theme-header="quiet-minimal"] [data-sw-site-shell-navigation] { color: var(--sw-color-text-muted); }
@container sw-site-header (min-width: 48rem) {
  .sw-public-site-shell-header[data-theme-header="split-utility"] > .sw-public-site-shell-header__inner { flex-direction: row; justify-content: space-between; gap: 2rem; }
  .sw-public-site-shell-header[data-theme-header="split-utility"] [data-sw-site-shell-navigation-mode="desktop"] { border-inline-start: 1px solid var(--sw-color-border); padding-inline-start: 1.5rem; }
}
[data-sw-site-shell-section="footer"][data-theme-footer] > .sw-public-site-shell-footer__inner { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: var(--sw-theme-section-gap); padding-block: var(--sw-theme-section-padding); }
[data-sw-site-shell-section="footer"][data-theme-footer="compact-policy"] > .sw-public-site-shell-footer__inner { grid-template-columns: minmax(0, 1fr); }
[data-sw-site-shell-section="footer"][data-theme-footer="newsletter-led"] [data-sw-shell-footer-column]:first-child { --sw-color-text: var(--sw-color-accent-contrast); --sw-color-text-muted: var(--sw-color-accent-contrast); background: var(--sw-color-accent); color: var(--sw-color-accent-contrast); border-radius: var(--sw-radius-panel); padding: var(--sw-theme-section-padding); }
[data-sw-site-shell-section="footer"][data-theme-footer="newsletter-led"] [data-sw-shell-footer-column]:first-child a:focus-visible { outline-color: currentColor; }

/*!**************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-content-layout.css ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Explicit saved R7 layout. No selector targets the Admin shell or an older
   saved theme. The 1250px token is foreground width, outside the gutters. */
[data-sw-site-shell][data-theme-content-layout="contained-1250"] {
  container: sw-site-layout / inline-size;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] > :is(.sw-site-header-chrome, [data-sw-shared-renderer], [data-sw-site-shell-footer]) {
  --sw-content-gutter: 16px;
}
@container sw-site-layout (min-width: 768px) {
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] > :is(.sw-site-header-chrome, [data-sw-shared-renderer], [data-sw-site-shell-footer]) { --sw-content-gutter: 24px; }
}
@container sw-site-layout (min-width: 1024px) {
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] > :is(.sw-site-header-chrome, [data-sw-shared-renderer], [data-sw-site-shell-footer]) { --sw-content-gutter: 40px; }
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] > [data-sw-shared-renderer] {
  --sw-section-gutter: 0px;
  box-sizing: border-box;
  width: min(var(--sw-content-max), calc(100% - 2 * var(--sw-content-gutter)));
  max-width: none;
  padding-inline: 0;
  margin-inline: auto;
}
/* Only an actual Hero needs a full-width page track. Other foreground content
   keeps the same token inside its original section, including editor wrappers. */
[data-sw-site-shell][data-theme-content-layout="contained-1250"] > [data-sw-shared-renderer]:has(.sw-public-hero-carousel) {
  --sw-section-gutter: var(--sw-content-gutter);
  width: 100%;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] :is(.sw-public-catalog-grid__inner, .sw-public-editorial__inner, .sw-public-brand-story__layout) {
  box-sizing: border-box;
  width: min(var(--sw-content-max), calc(100% - 2 * var(--sw-section-gutter, 0px)));
  margin-inline: auto;
}
/* The outer foreground gutter replaces white section insets, not the padding
   inside a contrasting editorial panel. Keep its authored density padding. */
[data-sw-site-shell][data-theme-content-layout="contained-1250"] :is(.sw-public-catalog-grid__inner, .sw-public-brand-story__layout),
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-editorial:not([data-tone="dark-footer"]):not([data-tone="dark-proof"]) > .sw-public-editorial__inner { padding-inline: 0; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] [data-width="full"] > :is(.sw-public-catalog-grid__inner, .sw-public-editorial__inner) { max-width: none; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] :is(.sw-product-search, .sw-cart-page[data-content-width="wide"], .sw-checkout[data-sw-checkout-width="wide"], .sw-article-list, .sw-product-page-composition) {
  width: 100%; max-width: none; padding-inline: 0;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] :is(.sw-footer-groups, .sw-public-site-shell-footer__locale) {
  box-sizing: border-box;
  width: min(var(--sw-content-max), calc(100% - 2 * var(--sw-content-gutter)));
  max-width: none; padding-inline: 0; margin-inline: auto;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner {
  box-sizing: border-box; position: relative;
  display: grid; grid-template-columns: 88px minmax(0, 1fr) 88px; grid-template-rows: auto;
  align-items: center; gap: 0;
  width: min(var(--sw-content-max), calc(100% - 2 * var(--sw-content-gutter)));
  max-width: none; margin-inline: auto; padding: 10px 0; min-height: 76px;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner > [data-sw-site-shell-logo] {
  grid-column: 2; grid-row: 1; justify-self: center; text-align: center; padding-inline: 0;
  max-width: 100%; overflow-wrap: anywhere;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner > .sw-header-utilities { display: contents; position: static; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-header-utilities__right { grid-column: 3; grid-row: 1; justify-self: end; }
.sw-header-search { display: contents; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-header-utilities__search { grid-column: 1; grid-row: 1; justify-self: end; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile {
  grid-column: 1; grid-row: 1; display: block; width: 44px; justify-self: start;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__mobile > summary { justify-content: center; padding-inline: 0; min-width: 44px; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-site-nav__menu-label {
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__desktop { display: none; }
@container sw-site-layout (min-width: 768px) {
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner { padding-block: 12px 9px; }
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-header-utilities__search { justify-self: start; }
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__inner > .sw-public-site-shell-header__mobile { display: none; }
  [data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-public-site-shell-header__desktop { display: block; grid-column: 1 / -1; grid-row: 2; justify-self: center; }
}
/* Announcement text is centered independently of its right-edge dismiss hit
   area. Keep symmetric space at both edges for long translations. */
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-site-announcement__inner {
  width: 100%; max-width: none; padding-inline: max(64px, env(safe-area-inset-left), env(safe-area-inset-right));
  min-height: 48px; gap: 0; text-align: center;
}
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-site-announcement button {
  position: absolute; inset-inline-end: max(12px, env(safe-area-inset-right)); top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px;
}
.sw-site-header-chrome[data-sw-search-open="true"] { z-index: 100; }
[data-sw-site-shell][data-theme-content-layout="contained-1250"] .sw-site-header-chrome[data-sw-search-open="true"] > .sw-public-site-shell-header {
  background: #fff; color: #171717; --sw-color-text: #171717; box-shadow: 0 1px 0 #ddd;
}
.sw-site-header-chrome[data-sw-search-open="true"] :is([data-sw-site-shell-logo], .sw-public-site-shell-header__mobile, .sw-public-site-shell-header__desktop, .sw-header-utilities__right, .sw-header-utilities__search) {
  visibility: hidden;
}
.sw-header-search__form { position: absolute; z-index: 1; inset: 0; display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-content: center; align-items: center; gap: 0; background: #fff; color: #171717; }
.sw-header-search__form :is(button,input) { box-sizing: border-box; min-width: 0; min-height: 44px; border: 0; border-radius: 0; color: inherit; background: transparent; font: inherit; }
.sw-header-search__form button { display: inline-flex; align-items: center; justify-content: center; width: 44px; padding: 0; cursor: pointer; }
.sw-header-search__form input[type="search"] { width: 100%; padding: .5rem .25rem; font-size: clamp(1rem, 2cqw, 1.35rem); outline-offset: -2px; }
.sw-header-search__form .sw-header-search__close { font-size: 1.5rem; }
.sw-header-search__form :is(button,input):focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.sw-header-search__form > p { grid-column: 2; margin: 0; font-size: .75rem; line-height: 1.4; overflow-wrap: anywhere; }
.sw-header-search-backdrop { position: fixed; z-index: 95; background: rgb(0 0 0 / .55); }

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/buyer-account-console.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Approved DIR184 six-section layout. All visual values inherit the published shop theme. */
.sw-buyer-account.sw-member-console-surface { font-family: inherit; padding: var(--sw-space-panel-padding, 1.5rem); }
.sw-buyer-account.sw-member-console-surface :is(h1,h2,h3) { font-family: var(--sw-theme-heading-font, inherit); font-weight: var(--sw-theme-heading-weight, 700); }
.sw-buyer-account.sw-member-console-surface :is(button,.sw-buyer-form-input,a[class*="rounded-"]) { border-radius: var(--sw-radius-control); }
.sw-buyer-account.sw-member-console-surface .sw-buyer-form-primary-action { background: var(--sw-theme-button-background,var(--sw-color-accent)); color: var(--sw-theme-button-color,var(--sw-color-accent-contrast)); border-color: var(--sw-theme-button-border,var(--sw-color-accent)); }
.sw-buyer-account.sw-member-console-surface .sw-buyer-form-link { color: var(--sw-color-accent); }
.sw-buyer-account.sw-member-console-surface .sw-buyer-form-checkbox { accent-color: var(--sw-color-accent); }
.sw-member-console { display:grid; min-width:0; gap:var(--sw-space-stack-md,1.5rem); grid-template-areas:"nav" "content" "logout"; }
.sw-member-console__nav { grid-area:nav; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.375rem; min-width:0; }
.sw-member-console__link { display:flex; align-items:center; justify-content:center; min-width:0; min-height:3.25rem; padding:.625rem .5rem;
 font:inherit; font-size:clamp(.75rem,3.5cqw,.875rem); line-height:1.5; text-align:center; overflow-wrap:normal; word-break:normal; hyphens:auto; color:var(--sw-color-text);
 background:var(--sw-color-surface-panel); border:1px solid var(--sw-color-border); border-radius:var(--sw-radius-control); text-decoration:none; }
.sw-member-console__link[aria-current="page"] { background:var(--sw-color-surface-muted); border-color:var(--sw-color-accent);
 box-shadow:inset 0 -2px var(--sw-color-accent); font-weight:700; }
.sw-member-console__link:hover { text-decoration:underline; text-underline-offset:.25em; }
.sw-member-console__link:focus-visible { outline:3px solid var(--sw-color-focus-indicator); outline-offset:2px; }
.sw-member-console__link[aria-disabled="true"] { opacity:.6; cursor:not-allowed; }
.sw-member-console__content { grid-area:content; min-width:0; }
.sw-member-console__panel { scroll-margin-block-start:calc(var(--sw-site-header-height,0px) + var(--sw-site-announcement-height,0px) + 1rem); display:grid; min-width:0; gap:var(--sw-space-stack-md,1.5rem); }
.sw-member-console__panel[hidden] { display:none!important; }
.sw-member-console__panel > .sw-buyer-form-section:first-child { border-top:0; padding-top:0; }
.sw-member-console__logout { grid-area:logout; padding-top:var(--sw-space-stack-md,1.5rem); border-top:1px solid var(--sw-color-border); }
.sw-member-console__logout > form { border:0; padding:0; }
.sw-member-console__shortcuts { display:flex; min-width:0; flex-wrap:wrap; justify-content:space-between; gap:var(--sw-space-stack-sm,.75rem); }
.sw-member-console__embedded { padding:0; max-width:none; font-family:inherit; }
@container sw-buyer-account (min-width:48rem) {
 .sw-member-console { grid-template-columns:minmax(11rem,14rem) minmax(0,1fr); grid-template-areas:"nav content" "logout content"; align-items:start;
  gap:var(--sw-space-stack-md,1.5rem) clamp(1.5rem,3cqw,3rem); }
 .sw-member-console__nav { grid-template-columns:minmax(0,1fr); position:sticky;
  top:calc(var(--sw-site-header-height,0px) + var(--sw-site-announcement-height,0px) + 1rem); }
 .sw-member-console__link { justify-content:flex-start; text-align:start; font-size:1rem; padding:.75rem 1rem; }
 .sw-member-console__content { padding-inline-start:clamp(1.5rem,3cqw,2.5rem); border-inline-start:1px solid var(--sw-color-border); }
}
.sw-buyer-account.sw-member-console-surface > .sw-buyer-form-stack:first-child :is(h1,h2) { font-family:var(--sw-theme-heading-font,inherit); font-weight:var(--sw-theme-heading-weight,700); }


/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/order-template-preview.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Only transient template controls. The live order and effective store theme
 * keep their existing layout, tokens and transaction authority. */
.sw-order-preview-controls { padding: 1rem; border-bottom: 1px solid var(--sw-color-border); }
.sw-order-preview-controls > legend { padding: 0; font-weight: 700; }
.sw-order-preview-controls > p { font-size: .875rem; color: var(--sw-color-text-muted); }
.sw-order-preview-controls__fields {
  display: grid; min-width: 0; gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-header-utilities.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-header-utilities { display: flex; gap: 0; align-items: center; min-width: 0; }
.sw-header-utilities__right { display: flex; align-items: center; min-width: 0; }
.sw-header-cart-portal { display: contents; }
.sw-public-site-shell-header__inner:has(> .sw-header-utilities) { grid-template-columns: var(--sw-site-menu-width, 4.5rem) minmax(0, 1fr) 5.5rem; }
.sw-public-site-shell-header__inner > .sw-header-utilities { grid-column: 3; grid-row: 1; justify-self: end; }
.sw-public-site-shell-header__inner:has(.sw-header-utilities__search) { grid-template-columns: var(--sw-site-menu-width, 4.5rem) minmax(0, 1fr) 8.25rem; }
.sw-header-utilities .sw-header-utilities__icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; min-width: 44px; min-height: 44px; padding: .35rem; border: 0; border-radius: 0; background: transparent; color: inherit; position: relative; text-decoration: none; cursor: pointer; }
.sw-header-utilities .sw-header-utilities__icon:disabled { opacity: .6; cursor: not-allowed; }
.sw-header-utilities__count { position: absolute; inset: 0 0 auto auto; min-width: 1rem; font-size: .65rem; line-height: 1.4; text-align: center; background: currentColor; border-radius: 1rem; color: inherit; }
.sw-header-utilities__count { background: #111; color: #fff; }
.sw-header-utilities__icon:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.sw-header-cart-backdrop { position: fixed; z-index: 80; inset: var(--sw-site-announcement-height, 0px) 0 0; background: rgb(0 0 0 / .55); animation: sw-header-cart-backdrop-in .5s ease; }
.sw-header-cart-backdrop[data-closing="true"] { animation: sw-header-cart-backdrop-out .5s ease forwards; pointer-events: none; }
.sw-header-cart { position: fixed; z-index: 90; inset: var(--sw-site-announcement-height, 0px) 0 0 auto; margin: 0; box-sizing: border-box; width: min(28rem, calc(100vw - 1.5rem)); max-width: none; height: calc(100dvh - var(--sw-site-announcement-height, 0px)); max-height: calc(100dvh - var(--sw-site-announcement-height, 0px)); padding: 1.25rem; border: 0; border-radius: 0; background: #fff; color: #171717; font: inherit; overflow-y: auto; overscroll-behavior: contain; }
.sw-header-cart[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; overflow: hidden; animation: sw-header-cart-enter .5s cubic-bezier(.43,.01,.44,1); }
.sw-header-cart[data-closing="true"] { animation: sw-header-cart-exit .5s cubic-bezier(.43,.01,.44,1) forwards; }
.sw-header-cart__body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding-right: .25rem; }
.sw-header-cart__body { position: relative; }
.sw-header-cart__body[data-cart-updating="true"]::before { content: ''; position: absolute; inset-inline: 0; top: 0; height: 2px; background: var(--sw-color-border, #ddd); pointer-events: none; }
.sw-header-cart__body > .sw-header-cart__status--quiet { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sw-header-cart__footer { border-top: 1px solid #ddd; padding-top: 1rem; }
.sw-header-cart__subtotal { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem; }
.sw-header-cart__quantity { display: inline-flex; align-items: stretch; gap: 0; }
.sw-header-cart__quantity > :is(button,label) { margin: 0; }
.sw-header-cart__quantity button { width: 44px; padding-inline: 0; }
.sw-header-cart__quantity input { box-sizing: border-box; width: 3.5rem; min-height: 44px; padding: .4rem; border: 1px solid #777; border-inline: 0; border-radius: 0; font: inherit; color: inherit; background: transparent; text-align: center; }
.sw-header-cart__quantity input:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #111); outline-offset: 2px; }
.sw-header-cart__quantity input[aria-invalid="true"] { border-style: dashed; }
.sw-header-cart__sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.sw-header-cart__checkout[aria-disabled="true"] { display: flex; justify-content: center; padding: .65rem 1rem; border: 1px solid currentColor; opacity: .65; }
.sw-header-cart [role="status"]:empty, .sw-product-cart-action [role="status"]:empty { margin: 0; }
.sw-header-cart p { margin: .5rem 0; line-height: 1.45; overflow-wrap: anywhere; }
.sw-header-cart__heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; border-bottom: 1px solid #ddd; padding-bottom: .75rem; }
.sw-header-cart__heading h2 { margin: 0; font-size: 1.25rem; flex: 1; }
.sw-header-cart__heading > button { order: 3; }
.sw-header-cart__page-link { order: 2; font-size: .875rem; text-underline-offset: .2em; }
.sw-header-cart :is(button,a) { min-height: 44px; color: inherit; font: inherit; }
.sw-header-cart button { padding: .5rem .75rem; border: 1px solid #777; background: #fff; border-radius: 0; cursor: pointer; }
.sw-header-cart button:disabled { opacity: .55; cursor: wait; }
.sw-header-cart :is(a,button):focus-visible { outline: 3px solid #111; outline-offset: 2px; }
.sw-header-cart__lines { margin: 1rem 0; padding: 0; list-style: none; }
.sw-header-cart__line { display: grid; grid-template-columns: 4.75rem minmax(0, 1fr) auto; align-items: start; gap: .45rem .8rem; padding-block: 1rem; border-bottom: 1px solid #ddd; min-width: 0; }
.sw-header-cart__line > img { grid-column: 1; grid-row: 1 / span 2; }
.sw-header-cart__line-copy { grid-column: 2; min-width: 0; }
.sw-header-cart__line-price { grid-column: 3; grid-row: 1; white-space: nowrap; font-size: .875rem; }
.sw-header-cart__line-editor { grid-column: 2 / -1; display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .55rem .75rem; padding-top: .25rem; }
.sw-header-cart__line-editor > [role="alert"] { flex-basis: 100%; margin: 0; }
.sw-header-cart__line-actions { display: flex; min-width: 0; flex-wrap: wrap; gap: .35rem; }
.sw-header-cart__line-actions button { border-color: transparent; background: transparent; min-height: 44px; padding-inline: .25rem; text-decoration: underline; text-underline-offset: .2em; }
.sw-header-cart__line-copy p { margin-block: .2rem; }
.sw-header-cart__variant, .sw-header-cart__unit-price, .sw-header-cart__line-meta, .sw-header-cart__availability { color: #555; font-size: .875rem; }
.sw-header-cart__availability { margin-top: .35rem; }
.sw-header-cart__lines img { width: 76px; height: 76px; object-fit: contain; flex: 0 0 76px; }
.sw-header-cart__lines a.sw-header-cart__product-title { display: inline; color: inherit; font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.sw-header-cart__lines a.sw-header-cart__product-title:hover { text-decoration: underline; text-underline-offset: .2em; }
.sw-header-cart__notice { border-left: 3px solid #555; padding-left: .75rem; }
.sw-header-cart__subtotal { font-weight: 650; }
.sw-header-cart a.sw-header-cart__checkout { display: flex; align-items: center; justify-content: center; padding: .75rem 1rem; color: #fff; background: #111; border: 1px solid #111; border-radius: 0; text-decoration: none; text-transform: uppercase; letter-spacing: .02em; }
.sw-header-cart__reload, .sw-header-cart__continue { width: 100%; margin-block: 1rem; }
/* Only a validated published Theme changes the historical drawer skin. */
.sw-public-themed-site .sw-header-cart { background: var(--sw-color-surface-panel); color: var(--sw-color-text); }
.sw-public-themed-site .sw-header-cart__heading, .sw-public-themed-site .sw-header-cart__lines li, .sw-public-themed-site .sw-header-cart__footer { border-color: var(--sw-color-border); }
.sw-public-themed-site .sw-header-cart__quantity :is(button,input) { border-color: var(--sw-color-border); border-radius: 0; background: var(--sw-color-surface-panel); }
.sw-public-themed-site .sw-header-cart button { border-color: var(--sw-color-border); background: var(--sw-color-surface-panel); }
.sw-public-themed-site .sw-header-cart :is(button, a.sw-header-cart__checkout) { line-height: 1.4; max-width: 100%; overflow-wrap: anywhere; }
.sw-public-themed-site .sw-header-cart .sw-header-cart__line-actions button { border-color: transparent; background: transparent; color: var(--sw-color-text); border-radius: 0; }
.sw-public-themed-site .sw-header-cart :is(a.sw-header-cart__checkout, button.sw-header-cart__continue) { border: 1px solid #111; border-radius: 0; background: #111; color: #fff; }
.sw-public-themed-site .sw-header-cart :is(a,button):focus-visible { outline-color: var(--sw-color-focus-indicator); }
@container sw-site-header (min-width: 48rem) {
  .sw-public-site-shell-header__inner > .sw-header-utilities { position: absolute; top: .75rem; right: 1rem; }
  .sw-public-site-shell-header__inner:has(> .sw-header-utilities) > [data-sw-site-shell-logo] { max-width: calc(100% - 12rem); }
  .sw-public-site-shell-header__inner:has(.sw-header-utilities__search) > [data-sw-site-shell-logo] { max-width: calc(100% - 18rem); }
}
.sw-product-cart-action, .sw-product-cart-action__purchase { display: grid; min-width: 0; gap: .75rem; }
.sw-product-cart-action__controls { display: flex; flex-wrap: wrap; gap: .75rem; align-items: end; }
.sw-product-cart-action__quantity-field { display: grid; gap: .5rem; }
/* Summary content retains its own option/description primitives. Purchase
   control styles must not restyle the original radio buttons or story text. */
.sw-product-cart-action__purchase :is(button,input), .sw-product-cart-action__choice-review button { box-sizing: border-box; min-height: 44px; font: inherit; line-height: 1.4; border: 1px solid var(--sw-color-border); border-radius: var(--sw-radius-control); background: var(--sw-color-surface-panel); color: var(--sw-color-text); padding: .6rem .8rem; }
.sw-product-cart-action__controls input { width: 5rem; }
.sw-product-cart-action__purchase button, .sw-product-cart-action__choice-review button { cursor: pointer; transition: background-color .2s ease, opacity .2s ease; }
.sw-product-cart-action__purchase button:disabled, .sw-product-cart-action__choice-review button:disabled { opacity: .55; cursor: not-allowed; }
.sw-product-cart-action__purchase button:active:not(:disabled), .sw-header-cart button:active:not(:disabled) { opacity: .8; }
.sw-product-cart-action__controls .sw-header-cart__quantity { width: max-content; max-width: 100%; }
.sw-product-cart-action__controls .sw-header-cart__quantity button { width: 44px; padding-inline: 0; border-radius: 0; }
.sw-product-cart-action__controls .sw-header-cart__quantity input { width: 3rem; padding-inline: .25rem; text-align: center; border-inline: 0; border-radius: 0; appearance: textfield; -moz-appearance: textfield; }
.sw-product-cart-action__controls input::-webkit-inner-spin-button, .sw-product-cart-action__controls input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.sw-product-cart-action .sw-product-cart-action__add { flex: 1; min-width: 10rem; font-weight: 650; background: var(--sw-theme-button-background, var(--sw-color-accent)); color: var(--sw-theme-button-color, var(--sw-color-accent-contrast)); border-color: var(--sw-theme-button-border, var(--sw-color-accent)); }
.sw-product-cart-action .sw-product-cart-action__review { justify-self: start; background: transparent; text-decoration: underline; text-underline-offset: .2em; }
.sw-product-cart-action > p, .sw-product-cart-action__purchase > p, .sw-product-cart-action__choice-review p { margin: 0; line-height: 1.6; color: var(--sw-color-text-muted); }
.sw-product-cart-action .sw-product-cart-action__quote { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem .75rem; color: var(--sw-color-text); font-size: 1.05rem; font-weight: 500; }
.sw-product-cart-action__availability { font-size: .875rem; font-weight: 400; }
.sw-product-cart-action__purchase :is(button,input):focus-visible, .sw-product-cart-action__choice-review button:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 2px; }
.sw-product-cart-action[data-summary-layout="true"] { gap: 1.25rem; }
.sw-product-cart-action[data-summary-layout="true"] > .sw-product-cart-action__quote { display: grid; gap: .25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--sw-color-border); font-size: 18px; line-height: 26px; font-weight: 400; }
.sw-product-cart-action[data-summary-layout="true"] .sw-product-cart-action__amount { font-variant-numeric: tabular-nums; }
.sw-product-cart-action[data-summary-layout="true"] .sw-product-cart-action__availability { font-size: 13px; line-height: 20px; }
.sw-product-cart-action[data-summary-layout="true"] .sw-product-cart-action__controls { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.sw-product-cart-action[data-summary-layout="true"] .sw-product-cart-action__quantity-field > label { font-size: 13px; line-height: 20px; }
.sw-product-cart-action[data-summary-layout="true"] .sw-product-cart-action__add { min-height: 50px; width: 100%; font-size: 16px; font-weight: 500; line-height: 22px; border-radius: min(var(--sw-radius-control, 2px), 2px); }
.sw-product-cart-action__purchase > [data-testid="guest-cart-status"]:empty { display: none; }
@media (max-width: 47.99rem) {
  .sw-product-page-composition[data-commerce-actions="guest-cart"] { padding-bottom: calc(10rem + env(safe-area-inset-bottom)); }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"] {
    position: fixed; z-index: 70; left: 0; right: 0; bottom: var(--sw-purchase-visible-bottom, 0px); max-height: min(45dvh, 14rem, var(--sw-purchase-visible-height, 100dvh)); overflow-y: auto;
    padding: .7rem max(.75rem, env(safe-area-inset-right)) calc(.7rem + env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));
    border-top: 1px solid var(--sw-color-border); background: var(--sw-color-surface-panel); color: var(--sw-color-text);
    box-shadow: 0 -.75rem 2rem rgb(0 0 0 / .14); overscroll-behavior: contain;
  }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"] .sw-product-cart-action {
    width: min(100%, 40rem); margin-inline: auto; gap: .35rem;
  }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"] .sw-product-cart-action__controls {
    display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .6rem; align-items: end;
  }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"] .sw-product-cart-action__quote {
    font-size: .875rem; line-height: 1.35;
  }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"] [data-testid="guest-cart-status"]:empty { display: none; }
  /* The composed summary keeps its sole live price above the options.
     Only the same quantity/actions move into the compact mobile bar. */
  .sw-product-cart-action__purchase[data-public-product-commerce-actions] > :not(.sw-buyer-feedback--quiet) { width: min(100%, 40rem); margin-inline: auto; }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] .sw-product-cart-action__quantity-field > label,
  .sw-product-page-composition[data-commerce-actions="guest-cart"] .sw-product-cart-action__controls label > span {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
  }
  /* An open review form owns the viewport, including consent and submit.
     Return the original purchase controls to their original summary in normal
     flow instead of hiding them or covering input/virtual-keyboard space. */
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-public-product-commerce-actions="guest-cart"][data-purchase-input-elsewhere="true"],
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-questions-mode="live"] .sw-questions__write[open]) [data-public-product-commerce-actions="guest-cart"],
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-reviews-mode="live"] .sw-reviews__write[open]) [data-public-product-commerce-actions="guest-cart"] {
    position: static; z-index: auto; max-height: none; overflow: visible; padding: 0; border: 0; box-shadow: none; background: transparent;
  }
  .sw-product-page-composition[data-commerce-actions="guest-cart"] [data-purchase-input-elsewhere="true"] .sw-product-cart-action__quantity-field > label,
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-questions-mode="live"] .sw-questions__write[open]) .sw-product-cart-action__quantity-field > label,
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-reviews-mode="live"] .sw-reviews__write[open]) .sw-product-cart-action__quantity-field > label,
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-questions-mode="live"] .sw-questions__write[open]) .sw-product-cart-action__controls label > span,
  .sw-product-page-composition[data-commerce-actions="guest-cart"]:has([data-sw-reviews-mode="live"] .sw-reviews__write[open]) .sw-product-cart-action__controls label > span {
    position: static; width: auto; height: auto; margin: 0; overflow: visible; clip-path: none; white-space: normal;
  }
}
@media (max-height: 30rem) { .sw-header-cart[open] { display: block; overflow-y: auto; } .sw-header-cart__body { overflow: visible; } }
@media (max-width: 24rem) { .sw-header-cart__line { grid-template-columns: 3.75rem minmax(0, 1fr); } .sw-header-cart__line > img { width: 60px; height: 60px; } .sw-header-cart__line-price { grid-column: 2; grid-row: auto; justify-self: start; } .sw-header-cart__line-editor { grid-column: 1 / -1; } }
@media (prefers-reduced-motion: reduce) { .sw-header-cart[open], .sw-header-cart-backdrop { animation: none; } .sw-product-cart-action button { transition: none; } }
@keyframes sw-header-cart-enter { from { transform: translateX(100%); } to { transform: translateX(0); } }
@keyframes sw-header-cart-exit { to { transform: translateX(100%); } }
@keyframes sw-header-cart-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes sw-header-cart-backdrop-out { to { opacity: 0; } }

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-cart-page.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-cart-page { box-sizing: border-box; min-width: 0; width: 100%; max-width: 72rem; margin-inline: auto; padding: clamp(1.25rem, 4vw, 3rem) clamp(1rem, 4vw, 2rem); color: var(--sw-color-text); container: sw-cart-page / inline-size; }
.sw-cart-page[data-content-width="standard"] { max-width: 54rem; }
.sw-cart-page__heading { margin-bottom: 1.5rem; }
.sw-cart-page__heading :is(h1,h2) { margin: 0 0 .65rem; font-family: inherit; font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 650; line-height: 1.25; overflow-wrap: anywhere; }
.sw-cart-page__heading p { margin: 0; line-height: 1.6; color: var(--sw-color-text-muted); }
.sw-cart-page .sw-cart-page__content { position: static; inset: auto; width: 100%; height: auto; max-width: none; max-height: none; padding: 0; overflow: visible; display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr); background: transparent; }
.sw-cart-page .sw-header-cart__body { overflow: visible; padding: 0; }
.sw-cart-page .sw-header-cart__lines { margin: 0; }
.sw-cart-page .sw-header-cart__footer { align-self: start; padding: 1rem; border: 1px solid var(--sw-color-border); border-radius: var(--sw-radius-panel); background: var(--sw-color-surface-panel); }
.sw-cart-page .sw-header-cart__footer:empty { display: none; }
.sw-cart-page__continue { display: inline-flex; align-items: center; min-height: 44px; margin-top: 1rem; color: var(--sw-color-text); text-underline-offset: .2em; }
.sw-cart-page :is(a,button,input):focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 2px; }
@container sw-cart-page (min-width: 44rem) { .sw-cart-page .sw-cart-page__content { grid-template-columns: minmax(0, 1.65fr) minmax(16rem, 1fr); gap: 2rem; } .sw-cart-page .sw-header-cart__footer { position: sticky; top: 6rem; } }

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/cart-template-preview.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
/* Editor chrome is outside the storefront theme. The actual drawer inherits
   the same saved theme from PublicSiteShellFrame as a public document. */
.sw-cart-template-preview { min-width: 0; }
.sw-cart-template-preview__controls { display: flex; flex-wrap: wrap; gap: .75rem; padding: .75rem; }
.sw-cart-template-preview__controls label { display: grid; gap: .35rem; min-width: 0; flex: 1 1 12rem; }
.sw-cart-template-preview__controls select { width: 100%; min-height: 44px; padding: .5rem .65rem; border: 1px solid var(--sw-color-border, #d1d5db); border-radius: 6px; background: var(--sw-color-surface-panel, #fff); color: inherit; font: inherit; }
.sw-cart-template-preview__controls select:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #2563eb); outline-offset: 2px; }
.sw-cart-template-preview__notice { margin: 0; padding: 0 .75rem .75rem; font-size: .875rem; line-height: 1.6; }
.sw-cart-template-preview__viewport { position: relative; isolation: isolate; transform: translateZ(0); height: 46rem; min-height: 0; overflow: auto; }
.sw-cart-template-preview__portal { position: fixed; inset: 0; z-index: 1000; pointer-events: none; }
.sw-cart-template-preview__portal[data-open]::before { content: ''; position: absolute; inset: 0; background: rgb(0 0 0 / .55); }
.sw-cart-template-preview__portal .sw-header-cart[data-sw-cart-template-example] { position: absolute; width: min(28rem, calc(100% - 1.5rem)); height: 100%; max-height: 100%; pointer-events: auto; }
.sw-header-cart__product-title { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; overflow-wrap: anywhere; }
.sw-cart-template-preview__portal .sw-header-cart__checkout[aria-disabled="true"] { border-radius: var(--sw-radius-control, 0); }
@media (max-width: 30rem) { .sw-cart-template-preview__viewport { height: 42rem; } }

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-product-body.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
/* Shared presentation over the original ProductStory section renderer. The
   template does not copy, flatten or discard any authored section content. */
.sw-product-body { container: sw-product-body / inline-size; grid-column: 1 / -1; width: 100%; min-width: 0; box-sizing: border-box; color: var(--sw-color-text, #151515); background: var(--sw-color-surface-panel, #fff); }
.sw-product-body[data-background="soft"] { background: var(--sw-color-surface-muted, #f5f5f5); }
.sw-product-body[data-background="dark"] { --sw-color-text: #fff; --sw-color-text-muted: #e5e5e5; --sw-color-surface-panel: #151515; --sw-color-border: #666; --sw-color-focus-indicator: #8fbcff; background: #151515; }
.sw-product-body__sections { display: grid; min-width: 0; gap: 2rem; padding: clamp(1rem, 4cqw, 2.5rem); }
.sw-product-body[data-content-width="reading"] .sw-product-body__sections { max-width: 65rem; margin-inline: auto; }
.sw-product-body[data-width="compact"] .sw-product-body__sections { max-width: 48rem; margin-inline: auto; }
.sw-product-body[data-spacing="dense"] .sw-product-body__sections { padding: 1rem; gap: 1rem; }
.sw-product-body[data-spacing="loose"] .sw-product-body__sections { padding: clamp(1.5rem, 6cqw, 4rem); gap: 3rem; }
.sw-product-body__sections > [data-section-type] { width: 100%; min-width: 0; margin: 0; color: inherit; background: transparent; }
.sw-product-body :is(p, li, dd, blockquote) { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 1rem; line-height: 1.75; }
.sw-product-body [data-sw-safe-rich-text-contract] > div { gap: 1.2rem; }
.sw-product-body[data-paragraph-spacing="compact"] [data-sw-safe-rich-text-contract] > div { gap: .6rem; }
.sw-product-body[data-content-width="wide"] [data-sw-safe-rich-text-contract] > div { max-width: none; }
.sw-product-body [data-sw-narrative-media] > div { aspect-ratio: auto; }
.sw-product-body [data-sw-narrative-copy] { min-width: 0; gap: 1rem; }
.sw-product-body[data-paragraph-spacing="compact"] [data-sw-narrative-copy] { gap: .6rem; }
.sw-product-body[data-title-style="minimal"] :is(h1,h2,h3,h4,h5,h6) { font-size: 1.5rem; line-height: 1.25; }
.sw-product-body[data-title-style="editorial"] :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.5rem, 4cqw, 2.25rem); line-height: 1.2; }
.sw-product-body[data-title-style="display"] :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.75rem, 5cqw, 3rem); line-height: 1.2; }
.sw-product-body [data-sw-narrative-media] { min-width: 0; align-content: start; }
.sw-product-body [data-sw-narrative-media] img { width: 100%; height: auto; max-width: 100%; object-fit: cover; }
.sw-product-body[data-image-ratio="1:1"] [data-sw-narrative-media] img { aspect-ratio: 1; }
.sw-product-body[data-image-ratio="4:5"] [data-sw-narrative-media] img { aspect-ratio: 4 / 5; }
.sw-product-body[data-image-ratio="16:9"] [data-sw-narrative-media] img { aspect-ratio: 16 / 9; }
.sw-product-body a:focus-visible, .sw-product-body summary:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #005fcc); outline-offset: 3px; }
.sw-product-body summary { min-height: 44px; align-content: center; }
@container sw-product-body (min-width: 720px) {
  .sw-product-body[data-layout-mode="two-column"] .sw-product-body__sections { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-product-body[data-layout-mode="two-column"] .sw-product-body__sections > [data-section-type] { grid-template-columns: minmax(0,1fr); }
  .sw-product-body:is([data-layout-mode="media-left"],[data-layout-mode="media-right"]) [data-section-type]:has(> [data-sw-narrative-media]) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: center; gap: 2rem; }
  .sw-product-body[data-layout-mode="media-left"] [data-section-type] > [data-sw-narrative-media] { grid-column: 1; grid-row: 1; }
  .sw-product-body[data-layout-mode="media-left"] [data-section-type] > [data-sw-narrative-copy] { grid-column: 2; grid-row: 1; }
  .sw-product-body[data-layout-mode="media-right"] [data-section-type] > [data-sw-narrative-copy] { grid-column: 1; grid-row: 1; }
  .sw-product-body[data-layout-mode="media-right"] [data-section-type] > [data-sw-narrative-media] { grid-column: 2; grid-row: 1; }
  .sw-product-body [data-section-type]:not(:has(> [data-sw-narrative-media])) > [data-sw-narrative-copy] { grid-column: 1 / -1; }
}
@container sw-product-body (max-width: 719px) {
  /* Narrative benefits and feature grids otherwise auto-fit two 210px columns
     inside the product's already narrow reading column. Use the body container,
     not the host viewport; wide standalone content keeps its authored layout. */
  .sw-product-body [data-sw-narrative-copy] > ul,
  .sw-product-body [data-section-type="feature_grid"] > div > ul { grid-template-columns: minmax(0,1fr); }
  .sw-product-body__sections > [data-section-type] { grid-template-columns: minmax(0,1fr); }
  .sw-product-body [data-sw-narrative-copy], .sw-product-body [data-sw-narrative-media] { grid-column: 1; grid-row: auto; }
}

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-brand-story.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-public-brand-story {
  --sw-story-background: #151515;
  --sw-story-foreground: #ffffff;
  --sw-story-muted: #e5e5e5;
  --sw-story-spacing: clamp(1.25rem, 4cqw, 2.5rem);
  container: sw-brand-story / inline-size;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin-inline: auto;
  color: var(--sw-story-foreground);
  background: var(--sw-story-background);
  border-radius: var(--sw-radius-panel);
  overflow-wrap: anywhere;
}
.sw-public-brand-story[data-tone="paper-minimal"] {
  --sw-story-background: var(--sw-color-surface-panel, #ffffff);
  --sw-story-foreground: var(--sw-color-text, #151515);
  --sw-story-muted: var(--sw-color-text-muted, #475569);
}
.sw-public-brand-story[data-spacing="dense"] { --sw-story-spacing: 1rem; }
.sw-public-brand-story[data-spacing="loose"] { --sw-story-spacing: clamp(2rem, 6cqw, 4rem); }
.sw-public-brand-story[data-width="compact"] { max-width: 48rem; }
.sw-public-brand-story__layout { display: grid; min-width: 0; gap: var(--sw-story-spacing); padding: var(--sw-story-spacing); }
.sw-public-brand-story__copy { display: flex; flex-direction: column; gap: 1rem; min-width: 0; align-self: center; }
.sw-public-brand-story .sw-public-brand-story__eyebrow { margin: 0; color: var(--sw-story-muted); font-size: .875rem; font-weight: 650; letter-spacing: .08em; }
.sw-public-brand-story .sw-public-brand-story__title { margin: 0; color: var(--sw-story-foreground); font-size: clamp(1.5rem, 4cqw, 2.75rem); line-height: 1.15; font-family: var(--sw-theme-heading-font, inherit); font-weight: var(--sw-theme-heading-weight, 750); }
/* The selected storefront's category introduction is editorial navigation, not
 * a campaign hero. Keep the original module and copy, but use the restrained
 * heading weight and vertical rhythm seen across its image-led catalog pages. */
[data-theme-content-layout="contained-1250"] .sw-public-brand-story:has(+ .sw-public-catalog-grid[data-catalog-kind="categories"]),
[data-theme-content-layout="contained-1250"] .sw-public-brand-story:has(.sw-public-brand-story__cta[href*="/categories"]) { --sw-story-spacing: clamp(1.5rem, 3cqw, 2rem); }
[data-theme-content-layout="contained-1250"] .sw-public-brand-story:has(+ .sw-public-catalog-grid[data-catalog-kind="categories"]) .sw-public-brand-story__title,
[data-theme-content-layout="contained-1250"] .sw-public-brand-story:has(.sw-public-brand-story__cta[href*="/categories"]) .sw-public-brand-story__title {
  font-family: var(--sw-storefront-font-family, inherit); font-size: clamp(1.75rem, 3cqw, 2.25rem); font-weight: 400; line-height: 1.25;
}
.sw-public-brand-story .sw-public-brand-story__body,
.sw-public-brand-story__highlights p { margin: 0; color: var(--sw-story-muted); font-size: 1rem; line-height: 1.7; white-space: pre-wrap; }
.sw-public-brand-story__highlights { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: 1.25rem; list-style: none; padding: 0; margin: .5rem 0; }
.sw-public-brand-story__highlights li { min-width: 0; display: grid; gap: .5rem; align-content: start; }
.sw-public-brand-story__highlights strong { font-size: 1rem; line-height: 1.5; font-weight: 650; }
.sw-public-brand-story__cta { display: inline-flex; min-height: 44px; min-width: 0; align-items: center; justify-content: center; align-self: start; max-width: 100%; padding: .7rem 1.35rem; border: 1px solid var(--sw-theme-button-border, currentColor); border-radius: var(--sw-radius-control); background: var(--sw-theme-button-background, transparent); color: var(--sw-theme-button-color, var(--sw-story-foreground)); text-decoration: none; font: inherit; font-weight: 650; line-height: 1.4; text-align: center; }
.sw-public-brand-story__cta:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-public-brand-story__media { min-width: 0; align-self: center; }
.sw-public-brand-story .sw-public-brand-story__media img { width: 100%; height: auto; max-height: 38rem; object-fit: cover; border-radius: var(--sw-radius-media); }
.sw-public-brand-story .sw-public-brand-story__desktop { display: block; }
.sw-public-brand-story .sw-public-brand-story__mobile { display: none; }
/* An explicit original media placement, never a change to saved left/right stories.
 * The copy determines row height, so long text cannot be cropped by the photograph. */
.sw-public-brand-story[data-media-side="backdrop"] .sw-public-brand-story__layout { padding: 0; gap: 0; isolation: isolate; }
.sw-public-brand-story[data-media-side="backdrop"] .sw-public-brand-story__copy {
  --sw-story-foreground: var(--sw-color-text, #151515);
  --sw-story-muted: var(--sw-color-text-muted, #475569);
  color: var(--sw-story-foreground);
  background: var(--sw-color-surface-panel, #ffffff);
  margin: var(--sw-story-spacing);
  padding: var(--sw-story-spacing);
  border-radius: var(--sw-radius-panel);
  position: relative;
  z-index: 1;
}
@container sw-brand-story (min-width: 640px) {
  .sw-public-brand-story[data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .sw-public-brand-story[data-media-side="left"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__media { grid-column: 1; grid-row: 1; }
  .sw-public-brand-story[data-media-side="left"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__copy { grid-column: 2; grid-row: 1; }
  .sw-public-brand-story[data-width="split"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__layout { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
  .sw-public-brand-story[data-width="split"][data-media-side="left"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__layout { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
  .sw-public-brand-story[data-media-side="backdrop"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__layout {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: clamp(24rem, 45cqw, 36rem);
  }
  .sw-public-brand-story[data-media-side="backdrop"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__media {
    grid-column: 1 / -1; grid-row: 1; align-self: stretch; position: relative;
  }
  .sw-public-brand-story[data-media-side="backdrop"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__media img {
    position: absolute; inset: 0; height: 100%; max-height: none; border-radius: var(--sw-radius-panel);
  }
  .sw-public-brand-story[data-media-side="backdrop"][data-has-media="true"][data-has-copy="true"] .sw-public-brand-story__copy { grid-column: 2; grid-row: 1; }
}
@container sw-brand-story (max-width: 639px) {
  .sw-public-brand-story__media { order: -1; }
  .sw-public-brand-story .sw-public-brand-story__desktop { display: none; }
  .sw-public-brand-story .sw-public-brand-story__mobile { display: block; }
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-editorial-content.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-public-editorial { container: sw-editorial / inline-size; width: 100%; min-width: 0; max-width: 100%; color: var(--sw-color-text); background: var(--sw-color-surface-panel); border-radius: var(--sw-radius-panel); overflow-wrap: anywhere; font-family: inherit; }
.sw-public-editorial *, .sw-public-editorial *::before, .sw-public-editorial *::after { box-sizing: border-box; }
.sw-public-editorial[data-tone="dark-proof"], .sw-public-editorial[data-tone="dark-footer"] { color: #fff; background: #151515; }
.sw-public-editorial__inner { padding: clamp(1.25rem, 4cqi, 2.5rem); margin-inline: auto; min-width: 0; }
.sw-public-editorial[data-width="compact"] .sw-public-editorial__inner { max-width: 48rem; }
.sw-public-editorial[data-width="split"] .sw-public-editorial__inner { max-width: 60rem; }
.sw-public-editorial[data-spacing="dense"] .sw-public-editorial__inner { padding: 1rem; }
.sw-public-editorial[data-spacing="loose"] .sw-public-editorial__inner { padding: clamp(2rem, 6cqi, 4rem); }
.sw-public-editorial :is(h1,h2,h3,h4,h5,h6,p,blockquote) { margin: 0; color: inherit; font-family: inherit; }
.sw-public-editorial p, .sw-public-editorial blockquote { font-size: 1rem; line-height: 1.7; white-space: pre-wrap; }
.sw-public-editorial__header { display: grid; gap: 1rem; }
.sw-public-editorial__header > :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.5rem, 4cqi, 2.5rem); line-height: 1.25; font-family: var(--sw-theme-heading-font, inherit); font-weight: var(--sw-theme-heading-weight, 750); }
/* The selected contained storefront uses the same restrained closing heading
 * in saved previews and public pages; legacy themes keep their own typography. */
[data-theme-content-layout="contained-1250"] .sw-public-editorial[data-editorial-kind="closing"] .sw-public-editorial__header > :is(h1,h2,h3,h4,h5,h6) { font-size: clamp(1.5rem, 2.8cqi, 1.75rem); font-family: var(--sw-storefront-font-family, inherit); font-weight: 400; line-height: 1.4; }
.sw-public-editorial .sw-public-editorial__eyebrow { font-size: .875rem; font-weight: 650; letter-spacing: .05em; }
.sw-public-editorial__proofs, .sw-public-editorial__links { list-style: none; padding: 0; margin: 1.5rem 0 0; }
.sw-public-editorial__proofs { display: grid; gap: 1.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sw-public-editorial:where([data-columns="2"]) .sw-public-editorial__proofs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sw-public-editorial__proofs > li { display: flex; flex-direction: column; gap: .75rem; min-width: 0; padding: 1.25rem; border: 1px solid currentColor; border-radius: var(--sw-radius-panel); }
.sw-public-editorial .sw-public-editorial__author { font-weight: 650; }
.sw-public-editorial .sw-public-editorial__meta, .sw-public-editorial .sw-public-editorial__note { font-size: .875rem; }
.sw-public-editorial__closing { display: grid; gap: 1.25rem; }
.sw-public-editorial__links { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; }
.sw-public-editorial__links a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; color: inherit; text-decoration: underline; text-underline-offset: .25em; }
.sw-public-editorial a:focus-visible { outline: 3px solid var(--sw-color-focus-indicator); outline-offset: 3px; }
.sw-public-editorial__note { margin-top: 1rem !important; }
@container sw-editorial (min-width: 680px) {
  .sw-public-editorial[data-arrangement="footer-compact"] .sw-public-editorial__inner { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 2rem; }
  .sw-public-editorial[data-arrangement="footer-compact"] .sw-public-editorial__links { margin-top: 0; }
}
@container sw-editorial (max-width: 679px) {
  .sw-public-editorial .sw-public-editorial__proofs { grid-template-columns: minmax(0, 1fr); }
}

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-instagram-feed.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-instagram-feed { max-width: 1250px; margin-inline: auto; padding: 40px 20px; color: inherit; }
.sw-instagram-feed header { text-align: center; margin-bottom: 24px; }
.sw-instagram-feed__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; list-style: none; padding: 0; margin: 0; }
.sw-instagram-feed__grid button { position: relative; display: block; width: 100%; border: 0; padding: 0; background: transparent; cursor: pointer; }
.sw-instagram-feed__grid img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
.sw-instagram-feed__grid span { position: absolute; bottom: 12px; right: 12px; color: white; text-shadow: 0 1px 4px black; }
.sw-instagram-feed__dialog { width: min(1000px,calc(100% - 24px)); max-height: calc(100dvh - 24px); box-sizing: border-box; overflow-y: auto; padding: 20px; border: 0; background: var(--sw-color-surface-panel,#fff); color: var(--sw-color-text,#171717); }
.sw-instagram-feed__dialog::backdrop { background: rgb(0 0 0 / 65%); }
.sw-instagram-feed__toolbar,.sw-instagram-feed__dialog nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sw-instagram-feed__toolbar { margin-bottom: 16px; }
.sw-instagram-feed__toolbar h3 { margin: 0; }
.sw-instagram-feed__detail { display: grid; grid-template-columns: minmax(0,3fr) minmax(0,2fr); gap: 24px; }
.sw-instagram-feed__media { min-width: 0; display: grid; align-items: center; background: #111; aspect-ratio: 1; }
.sw-instagram-feed__media > img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.sw-instagram-feed__copy { overflow-wrap: anywhere; white-space: pre-wrap; }
.sw-instagram-feed__dialog nav { margin-top: 16px; }
.sw-instagram-feed__dialog button { min-height: 44px; font: inherit; color: inherit; background: transparent; border: 1px solid currentColor; padding: 8px 12px; cursor: pointer; }
.sw-instagram-feed__dialog button:disabled { opacity: .4; cursor: default; }
.sw-instagram-feed button:focus-visible,.sw-instagram-feed a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media(max-width:640px) { .sw-instagram-feed__grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .sw-instagram-feed__detail { grid-template-columns: minmax(0,1fr); gap: 16px; } .sw-instagram-feed__dialog { padding: 12px; } }

/*!***********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-faq.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************/
/* Standalone FAQ uses the original accordion renderer without the generic
 * feature-card frame. Narrative/product FAQ and other grid variants retain
 * their existing layouts; all colors and fonts remain host-theme values. */
.sw-public-faq-section {
  box-sizing: border-box; width: 100%; min-width: 0; max-width: 50rem;
  margin-inline: auto; padding: 0 1rem;
  container: sw-faq / inline-size;
  color: var(--sw-color-text); overflow-wrap: anywhere;
  font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif);
}
/* The section's available width, not the editor's outer browser window,
 * controls responsive typography and rhythm in both template and public use. */
.sw-public-faq-section__content { display: grid; min-width: 0; gap: 1rem; padding-block: 1.5rem; }
.sw-public-faq-section__content > :is(h1,h2,h3,h4,h5,h6) {
  margin: 0; font-size: 1.5rem; line-height: 1.3;
  font-weight: var(--sw-theme-heading-weight, 700); font-family: inherit;
}
@container sw-faq (min-width: 40rem) {
  .sw-public-faq-section__content { padding-block: 2.5rem; }
  .sw-public-faq-section__content > :is(h1,h2,h3,h4,h5,h6) { font-size: 2rem; }
}
.sw-public-faq-section__content p { margin: 0; line-height: 1.8; }
.sw-public-faq-section__items { display: grid; min-width: 0; gap: 0; margin: 0; padding: 0; list-style: none; }
.sw-public-faq-section__item { min-width: 0; padding: .5rem 0; border-bottom: 1px solid var(--sw-color-border); }
.sw-public-faq-section__item:first-child { border-top: 1px solid var(--sw-color-border); }
.sw-public-faq-section .sw-public-faq__answer { padding-block: .25rem 1rem; }

.sw-public-faq {
  min-width: 0;
  overflow-wrap: anywhere;
}

.sw-public-faq > summary {
  box-sizing: border-box;
  min-height: 44px;
  min-width: 44px;
  padding: 0.625rem 0;
  cursor: pointer;
  color: var(--sw-color-text, #171717);
  font-weight: 750;
  line-height: 1.6;
  white-space: pre-wrap;
}

.sw-public-faq > summary:focus-visible {
  outline: 3px solid var(--sw-color-focus-indicator, #2563eb);
  outline-offset: 3px;
}

.sw-public-faq > .sw-public-faq__answer {
  min-width: 0;
  white-space: pre-wrap;
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-not-found.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************/
/* A controlled state of the original site-frame template, never a global
 * error-page skin. Theme and shared buyer action primitives remain in charge. */
.sw-public-not-found {
  container: sw-not-found / inline-size;
  box-sizing: border-box; display: grid; gap: 1.5rem; align-content: center;
  width: 100%; min-width: 0; max-width: 48rem; min-height: 22rem;
  margin-inline: auto; padding: 3rem 1rem; overflow-wrap: anywhere;
  color: var(--sw-color-text);
  font-family: var(--sw-storefront-font-family, Inter, ui-sans-serif, system-ui, sans-serif);
}
.sw-public-not-found[data-alignment="center"] { text-align: center; justify-items: center; }
.sw-public-not-found[data-alignment="start"] { text-align: start; justify-items: start; }
.sw-public-not-found h1 { font-size: 2rem; line-height: 1.2; font-weight: var(--sw-theme-heading-weight, 700); text-wrap: balance; }
.sw-public-not-found > div { display: grid; gap: 1rem; min-width: 0; max-width: 40rem; }
.sw-public-not-found > div p { line-height: 1.8; }
.sw-public-not-found__code { letter-spacing: .15em; font-weight: 600; }
.sw-public-not-found__fallback { font-size: .875rem; color: var(--sw-color-text-muted); }
@container sw-not-found (min-width: 36rem) { .sw-public-not-found h1 { font-size: 2.75rem; } }

/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-article.css ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-article-meta { width: 100%; max-width: 48rem; margin-inline: auto; padding: 1rem; display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; color: var(--sw-color-text); font-size: .875rem; line-height: 1.7; overflow-wrap: anywhere; }
.sw-article-meta ul { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.sw-article-meta li { padding: .2rem .6rem; border: 1px solid var(--sw-color-border, currentColor); border-radius: .25rem; }

/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/storefront-article-list.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-article-list { width: 100%; max-width: 75rem; margin-inline: auto; padding: 2.5rem 1.5rem; color: var(--sw-color-text); overflow-wrap: anywhere; }
.sw-article-list__items { display: grid; gap: 3rem; }
.sw-article-list a { color: inherit; }
.sw-article-list :is(h2,h3) a { text-decoration: none; }
.sw-article-list :is(h2,h3) a:hover { text-decoration: underline; text-underline-offset: .2em; }
.sw-article-list__card { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: center; gap: 2.5rem; scroll-margin-top: 9rem; }
.sw-article-list__card:nth-child(even) .sw-article-list__cover { order: 2; }
.sw-article-list__cover { display: block; min-width: 0; aspect-ratio: 1.91; overflow: hidden; border-radius: .75rem; }
.sw-article-list__cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sw-article-list__copy { min-width: 0; }
.sw-article-list h2, .sw-article-list h3 { margin: .75rem 0; font-size: 1.75rem; font-weight: 700; line-height: 1.35; }
.sw-article-list p { line-height: 1.8; margin: 1rem 0; }
.sw-article-list__tags { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; list-style: none; font-size: .875rem; }
.sw-article-list__tags li { padding: .25rem .5rem; border: 1px solid var(--sw-color-border, currentColor); border-radius: .25rem; }
.sw-article-list__read, .sw-article-list__back, .sw-article-list__pagination a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: .2em; }
.sw-article-list__back { margin: 1rem 0; }
.sw-article-list__pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 1.5rem; margin-top: 2rem; }
.sw-article-list a:focus-visible { outline: 3px solid var(--sw-color-focus-indicator, currentColor); outline-offset: 4px; }
.sw-article-list__notice { border: 1px solid var(--sw-color-border, currentColor); padding: 1rem; }
@media (max-width: 48rem) { .sw-article-list { padding: 1.5rem 1rem; } .sw-article-list__card { grid-template-columns: minmax(0, 1fr); gap: 1rem; } .sw-article-list__card:nth-child(even) .sw-article-list__cover { order: 0; } .sw-article-list h2, .sw-article-list h3 { font-size: 1.4rem; } }

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[15].oneOf[10].use[3]!../../packages/shopwavy-renderer/src/public-product-search.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************/
.sw-product-search { container: sw-product-search / inline-size; width: 100%; max-width: 1240px; min-width: 0; margin-inline: auto; color: var(--sw-color-text, #171717); }
.sw-product-search *, .sw-product-search *::before, .sw-product-search *::after { box-sizing: border-box; }
.sw-product-search__intro { display: grid; gap: 1.5rem; justify-items: center; text-align: center; padding: clamp(1rem, 4cqw, 3rem) 1rem 1rem; }
.sw-product-search h1 { margin: 0; font-weight: var(--sw-theme-heading-weight, 500); font-size: clamp(1.75rem, 4cqw, 2.5rem); }
.sw-product-search p { margin: 0; line-height: 1.7; overflow-wrap: anywhere; }
.sw-product-search a { color: inherit; text-underline-offset: .25em; }
.sw-product-search :is(a,button) { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
/* Search controls must not override the embedded catalog or its dialog. */
.sw-product-search__form :is(input,button), .sw-product-search__retry { font: inherit; border-radius: 0; line-height: 1.4; }
.sw-public-themed-site :is(.sw-product-search__form input,.sw-product-search__form button,.sw-product-search__retry,.sw-product-search__pages a) { border-radius: var(--sw-radius-control); }
.sw-product-search :is(a,input,button):focus-visible { outline: 3px solid var(--sw-color-focus-indicator, #174b7a); outline-offset: 3px; }
.sw-product-search__form { width: min(100%, 40rem); display: grid; gap: .5rem; text-align: left; }
.sw-product-search__form > div { display: flex; gap: .75rem; min-width: 0; }
.sw-product-search__form input { min-width: 0; flex: 1; width: 100%; min-height: 48px; border: 1px solid #777; padding: .7rem; color: inherit; background: var(--sw-color-surface-panel, #fff); }
.sw-product-search__form button { min-width: 5rem; padding: .7rem 1rem; border: 1px solid var(--sw-theme-button-border, #171717); background: var(--sw-theme-button-background, #171717); color: var(--sw-theme-button-color, #fff); cursor: pointer; }
.sw-product-search__status { display: grid; padding: 1rem; text-align: center; line-height: 1.7; overflow-wrap: anywhere; }
.sw-product-search__status > span { grid-area: 1 / 1; min-width: 0; }
.sw-product-search__status > [aria-hidden] { visibility: hidden; }
.sw-product-search__status > [data-label]::before { content: attr(data-label); }
.sw-product-search__results > .sw-buyer-async-region__status { justify-self: center; }
.sw-product-search__retry[aria-disabled="true"] { opacity: .65; cursor: progress; }
.sw-product-search__skeleton { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.5rem; padding: 2rem 1rem; }
.sw-product-search__skeleton > div { display: grid; align-content: start; gap: .75rem; }
.sw-product-search__skeleton span { aspect-ratio: 1; background: var(--sw-color-border, #e5e5e5); opacity: .35; }
.sw-product-search__skeleton i { display: block; height: 1em; width: 75%; background: var(--sw-color-border, #e5e5e5); opacity: .35; }
.sw-product-search__skeleton i:last-child { width: 40%; }
@container sw-product-search (max-width: 767px) { .sw-product-search__skeleton { grid-template-columns: repeat(2,minmax(0,1fr)); } }
.sw-product-search__price-note { text-align: center; font-size: .875rem; padding: 0 1rem; color: var(--sw-color-text-muted, #555); }
.sw-product-search .sw-product-search__retry { display: flex; width: fit-content; margin: 0 auto 1rem; padding: .7rem 1.25rem; border: 1px solid currentColor; background: transparent; color: inherit; cursor: pointer; }
.sw-product-search__pages, .sw-product-search__browse { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem; margin-top: 1.5rem; padding: 1rem; }
.sw-product-search__pages a { padding: .5rem 1rem; border: 1px solid currentColor; text-decoration: none; }
.sw-product-search__browse { border-top: 1px solid var(--sw-color-border, #ddd); }
.sw-product-search .sw-public-catalog-grid__header:empty { display: none; }
@container sw-product-search (max-width: 420px) { .sw-product-search__form > div { gap: .5rem; } .sw-product-search__form button { min-width: 4rem; padding-inline: .7rem; } }

