@charset "UTF-8";
:root {
  /*******************************
   *  Baseline theme definitions
   *
   *  Colours live in `_colors.scss` (the semantic brand palette). This file holds the
   *  non-colour design tokens: typography, spacing and borders.
   *******************************/
  /* Typography */
  --font-default: Inter, Roboto, 'Helvetica Neue', 'Segoe UI', 'Nimbus Sans', sans-serif;
  --font-size-default: 1rem;
  --font-size-small: 0.875rem;
  --line-height-default: 1.6rem;
  --font-heading: Inter, Roboto, 'Helvetica Neue', 'Segoe UI', 'Nimbus Sans', sans-serif;
  /*
   * Spacing rules:
   *  - paddings are 1 level more tight than margins (i.e. padding of a section is "normal")
   *  - on mobile all spacings are 1 level more tight
   */
  --spacing-horizontal-distant: 2.00rem; /* Page margins, large block and main menu item gaps */
  --spacing-horizontal-loose: 1.00rem; /* Sections, cards, semantically unrelated blocks */
  --spacing-horizontal-relaxed: 0.75rem; /* Gaps between row elements of different types */
  --spacing-horizontal-normal: 0.50rem; /* Gaps between row elements of same type */
  --spacing-horizontal-tight: 0.25rem; /* Icon-text separator */
  --spacing-horizontal-join: 0.125rem; /* Compact icon-text separator */
  --spacing-horizontal-glue: 0.00rem; /* Reset spacing */
  --spacing-vertical-loose: 1.00rem; /* Sections, cards, semantically unrelated blocks */
  --spacing-vertical-relaxed: 0.75rem; /* Distance between non-hierarchical block (paragraph, fieldset etc) and its heading */
  --spacing-vertical-normal: 0.50rem; /* Paragraphs, fieldsets */
  --spacing-vertical-tight: 0.25rem; /* List items, form fields */
  --spacing-vertical-join: 0.125rem; /* Paddings inside buttons and tags */
  --spacing-vertical-glue: 0.00rem; /* Reset spacing */
  /* Borders and shadows */
  --border-underline: 2px;
  --border-outline: 1px;
  --border-radius-normal: 8px;
  --section-vertical-padding: 1rem;
  --section-horizontal-padding: 1rem;
}

:root {
  /* Brand identity — the page header band. */
  --color-brand-background: #256B4A; /* header background */
  --color-brand-foreground: #FFFFFF; /* text + controls on the header */
  --color-brand-outline: #E0F7F6; /* form-field outline in the header (standard form colours apply inside it) */
  /* Interactive — links, buttons, menu items, anything the user clicks. */
  --color-interactive: #003366;
  --color-interactive-hover: #0053A0;
  --color-interactive-active: #003D77;
  /* Accent — used sparingly to highlight a single element or an area of interest. */
  --color-accent-strong: #0A7D78; /* high-contrast: accent text, selected menu items */
  --color-accent: #00CFC8; /* large elements, buttons */
  --color-accent-subtle: #E0F7F6; /* accented backgrounds: selected rows, file drop zones */
  /* Text, surfaces, borders. */
  --color-surface: #FFFFFF; /* ambient background */
  --color-surface-raised: #F7F9FC; /* raised surfaces: side notes, hover rows */
  --color-border: #E2E8F0;
  --color-text-muted: #64748B;
  --color-text: #303A52;
  --color-heading: #1E263B;
  /* Statuses — info | success | warning | error, each a subtle / base / strong triad. */
  --color-info-subtle: #EAF1FA;
  --color-info: #5B8DBE;
  --color-info-strong: #1E4E79;
  --color-success-subtle: #EAF7F0;
  --color-success: #66CC99;
  --color-success-strong: #256B4A;
  --color-warning-subtle: #FAF1E6;
  --color-warning: #CC9B66;
  --color-warning-strong: #8A5A2B;
  --color-error-subtle: #FBEDED;
  --color-error: #CC6666;
  --color-error-strong: #9C4646;
  /* ---- Compatibility aliases: legacy names re-pointed to the palette by role. Prefer the tokens above
   *      in new code. ---- */
  --color-light: var(--color-surface);
  --color-dark: var(--color-text);
  --color-light-shadow: var(--color-border); /* hairlines / subtle separators */
  --color-dark-shadow: var(--color-text-muted); /* muted footer text */
  --color-primary: var(--color-interactive); /* the former single brand navy = interactive */
  --color-form-background: var(--color-surface);
  --color-form-text: var(--color-text);
  --color-form-placeholder: var(--color-text-muted);
  --color-form-border: var(--color-border);
  --color-warning-surface: var(--color-warning-subtle); /* warning-highlighted table row */
  --color-image-placeholder-bg: var(--color-surface-raised); /* listing-detail product-image slot */
  /* ---- Generic button roles (re-pointed to the palette). ---- */
  --color-bg-next: var(--color-interactive); /* primary button */
  --color-text-next: var(--color-brand-foreground);
  --color-border-next: var(--color-interactive-active);
  --color-bg-alt: var(--color-surface); /* secondary button */
  --color-text-alt: var(--color-interactive);
  --color-border-alt: var(--color-border);
  --color-bg-action: var(--color-surface); /* tertiary / action button */
  --color-text-action: var(--color-interactive);
}

* {
  box-sizing: border-box;
}

html {
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 1200px) {
  html {
    font-size: 87.5%;
  }
}
/**
 *  General style definitions
 */
body {
  margin: 0;
  padding: 0;
  font-family: var(--font-default), serif;
  font-weight: 400;
  line-height: var(--line-height-default);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  color: var(--color-dark);
  background-color: var(--color-light);
}

main {
  flex: 1;
  margin: var(--spacing-vertical-loose) var(--spacing-horizontal-distant);
  padding: 0 var(--spacing-horizontal-distant);
}

h1 {
  font-size: 1.5rem;
}

h2 {
  font-size: 1.2rem;
}

h3 {
  font-size: 1.1rem;
}

h4 {
  font-size: 1rem;
}

a {
  text-decoration: none;
  color: var(--color-text-action);
}

button {
  cursor: pointer;
  font-family: inherit;
  line-height: var(--line-height-default);
  border: var(--border-outline) solid transparent;
  border-radius: var(--border-radius-normal);
  background-color: var(--color-bg-action);
  color: var(--color-text-action);
  padding: var(--spacing-vertical-join) var(--spacing-horizontal-normal);
}

button.primary, button[type=submit] {
  background-color: var(--color-bg-next);
  color: var(--color-text-next);
  border-color: var(--color-border-next);
}

button.secondary {
  background-color: var(--color-bg-alt);
  color: var(--color-text-alt);
  border-color: var(--color-border-alt);
}

body > header {
  background-color: var(--color-brand-background);
  display: flex;
  width: 100%;
  height: 60px;
  align-content: center;
  padding: 0 var(--spacing-horizontal-distant);
  gap: var(--spacing-horizontal-distant);
}
body > header a.logo {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-normal);
  text-decoration: none;
  vertical-align: middle;
  color: var(--color-brand-foreground);
  font-size: 1.5rem;
}
body > header .navigation {
  flex: 1;
  display: flex;
  justify-content: flex-end;
  gap: var(--spacing-horizontal-distant);
}
body > header .navigation nav {
  display: flex;
  align-items: center;
  list-style-type: none;
  gap: var(--spacing-horizontal-loose);
}
body > header .navigation nav li {
  color: var(--color-brand-foreground);
  border-left: 1px solid var(--color-brand-foreground);
  padding: 0 0 0 var(--spacing-horizontal-loose);
}
body > header .navigation nav li:first-child {
  border: none;
  padding-left: 0;
}
body > header .navigation nav li a, body > header .navigation nav li button {
  color: var(--color-brand-foreground);
  text-decoration: none;
}
body > header .navigation nav li a:hover, body > header .navigation nav li button:hover {
  text-decoration: underline;
}
body > header .navigation nav li button {
  border: none;
  background: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
}

@media screen and (max-width: 800px) {
  .logo span {
    display: none;
  }
}
#search-box {
  flex: 0.8;
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
}
#search-box input, #search-box select {
  display: block;
  height: 2rem;
  margin: 0;
  border: 1px solid var(--color-brand-outline);
  border-radius: 0;
  background-color: var(--color-form-background);
  color: var(--color-form-text);
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-normal);
}
#search-box option.group {
  font-weight: bold;
  padding-left: inherit;
}
#search-box input::placeholder, #search-box select::placeholder {
  color: var(--color-form-placeholder);
  font-style: italic;
}
#search-box input[id=search] {
  flex: 1;
  border-top-left-radius: var(--border-radius-normal);
  border-bottom-left-radius: var(--border-radius-normal);
  padding-left: var(--spacing-horizontal-loose);
}
#search-box select[id=locations] {
  width: 100px;
}
#search-box select[id=owner] {
  width: 100px;
}
#search-box input[type=submit] {
  width: 44px;
  border-top-right-radius: var(--border-radius-normal);
  border-bottom-right-radius: var(--border-radius-normal);
  padding-right: var(--spacing-horizontal-relaxed);
}

@media screen and (max-width: 768px) {
  #search-box #locations {
    display: none;
  }
  #search-box #owner {
    display: none;
  }
}
@media screen and (max-width: 1200px) {
  #search-box {
    flex: 1;
  }
}
footer {
  margin: 0;
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-distant);
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: left;
  gap: var(--spacing-horizontal-distant);
  font-size: var(--font-size-small);
  line-height: 1em;
  color: var(--color-dark-shadow);
  border-top: var(--border-outline) solid var(--color-light-shadow);
}
footer > * {
  display: block;
  border-left: var(--border-outline) solid var(--color-light-shadow);
  padding-left: var(--spacing-horizontal-distant);
}
footer > *:first-child {
  border: none;
  padding-left: var(--spacing-horizontal-glue);
}
footer a {
  text-decoration: none;
  color: var(--color-primary);
}
footer a:hover {
  text-decoration: underline;
}

menu {
  display: flex;
  flex-direction: row;
  gap: var(--spacing-horizontal-distant);
  align-items: end;
  margin: 0;
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-distant) 0 var(--spacing-horizontal-distant);
  border-bottom: var(--border-outline) solid var(--color-light-shadow);
  list-style: none;
}
menu li {
  color: var(--color-form-text);
  padding-bottom: var(--spacing-vertical-normal);
}
menu li a {
  text-decoration: none;
  color: var(--color-form-text);
}
menu li.selected a {
  color: var(--color-accent-strong);
}
menu li.selected {
  border-bottom: var(--border-underline) solid var(--color-accent-strong);
}

.flash {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-normal);
  margin: var(--spacing-vertical-loose) var(--spacing-horizontal-distant) 0;
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-loose);
  border: var(--border-outline) solid transparent;
  border-left-width: 4px;
  border-radius: var(--border-radius-normal);
  color: var(--color-text);
  border-left-color: var(--color-info);
  background: var(--color-info-subtle);
}
.flash[hidden] {
  display: none;
}
.flash .message {
  flex: 1 1 auto;
}
.flash .close {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-vertical-join) var(--spacing-horizontal-tight);
  border: none;
  border-radius: var(--border-radius-normal);
  background: transparent;
  color: inherit;
  line-height: 1;
}
.flash .close:hover {
  background: color-mix(in srgb, currentColor 12%, transparent);
}
.flash.info {
  border-left-color: var(--color-info);
  background: var(--color-info-subtle);
}
.flash.success {
  border-left-color: var(--color-success);
  background: var(--color-success-subtle);
}
.flash.warning {
  border-left-color: var(--color-warning);
  background: var(--color-warning-subtle);
}
.flash.error {
  border-left-color: var(--color-error);
  background: var(--color-error-subtle);
}

/* All forms consume fixed width (later inline forms may be added with different layout) */
form {
  display: block;
  width: 100%;
  margin: var(--spacing-vertical-glue) var(--spacing-horizontal-glue);
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-normal);
}
form .field {
  display: block;
  width: 100%;
  margin-top: var(--spacing-vertical-loose);
}
form .field:first-child {
  margin-top: var(--spacing-vertical-tight);
}

input, button {
  margin: var(--spacing-vertical-tight) var(--spacing-horizontal-glue);
}

label {
  display: block;
  margin: var(--spacing-vertical-tight) var(--spacing-horizontal-glue) var(--spacing-vertical-glue);
  padding: var(--spacing-vertical-glue);
}

label:first-child {
  margin-top: var(--spacing-vertical-glue);
}

label.attached {
  display: inline-block;
  margin-left: var(--spacing-horizontal-tight);
  margin-right: var(--spacing-horizontal-tight);
}

input {
  margin-top: var(--spacing-vertical-tight);
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-normal);
  color: var(--color-dark);
  background-color: var(--color-light);
  border: 1px solid var(--color-dark);
  border-radius: var(--border-radius-normal);
}

button {
  margin-top: var(--spacing-vertical-tight);
  padding: var(--spacing-vertical-join) var(--spacing-horizontal-normal);
}

.error {
  color: var(--color-error-strong);
}

/* .next kept for backward compatibility */
.next {
  background-color: var(--color-bg-next);
  color: var(--color-text-next);
  border-color: var(--color-border-next);
}

/* Whole page forms */
main.form {
  width: 24rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
main.form h1 {
  font-size: 1.2rem;
  text-align: center;
}
main.form label, main.form input, main.form button {
  display: block;
  width: 100%;
}

.link-btn {
  display: inline-block;
  width: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  color: var(--color-interactive);
  cursor: pointer;
  text-decoration: underline;
  font-size: var(--font-size-small);
  font-family: inherit;
  line-height: var(--line-height-default);
}

.inventory-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--spacing-vertical-loose);
}
.inventory-header h1 {
  margin: 0;
}

.toolbar {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-normal);
}
.toolbar button {
  display: inline-block;
  width: auto;
  margin: 0;
}

.toggle-btn {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border: 1px solid var(--color-form-border);
  border-radius: var(--border-radius-normal);
  color: var(--color-primary);
  text-decoration: none;
  font-size: var(--font-size-small);
}
.toggle-btn.active {
  background-color: var(--color-primary);
  color: var(--color-light);
  border-color: var(--color-primary);
}
.toggle-btn:hover:not(.active) {
  background-color: var(--color-surface-raised);
}

.icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  margin: 0;
  background: none;
  border: 1px solid var(--color-form-border);
  border-radius: 50%;
  cursor: pointer;
  color: var(--color-primary);
  font-size: 1rem;
}

.inventory-table {
  width: 100%;
  border-collapse: collapse;
}
.inventory-table th, .inventory-table td {
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
  text-align: left;
  border-bottom: 1px solid var(--color-form-border);
}
.inventory-table th {
  font-weight: 600;
  white-space: nowrap;
}
.inventory-table tbody tr:hover td {
  background-color: var(--color-surface-raised);
}
.inventory-table td.ACCEPTED {
  color: var(--color-success-strong);
}
.inventory-table td.PENDING {
  color: var(--color-warning-strong);
}
.inventory-table .chevron {
  color: var(--color-interactive);
  text-decoration: none;
  font-weight: bold;
}

.listing-detail .icon {
  vertical-align: -0.15em;
}
.listing-detail > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--spacing-horizontal-loose);
  margin-bottom: var(--spacing-vertical-loose);
}
.listing-detail > header .title h1 {
  margin: 0 0 var(--spacing-vertical-tight);
}
.listing-detail > header .actions {
  display: flex;
  gap: var(--spacing-horizontal-normal);
  flex-shrink: 0;
}
.listing-detail > header .actions button {
  width: auto;
  margin: 0;
}
.listing-detail .batch-identifiers, .listing-detail .identifiers {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-horizontal-relaxed);
  margin: 0;
  font-size: var(--font-size-small);
}
.listing-detail .batch-identifiers > div, .listing-detail .identifiers > div {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-join);
}
.listing-detail .batch-identifiers > div dt, .listing-detail .identifiers > div dt {
  color: var(--color-form-placeholder);
}
.listing-detail .batch-identifiers > div dt::after, .listing-detail .identifiers > div dt::after {
  content: ":";
}
.listing-detail .batch-identifiers > div dd, .listing-detail .identifiers > div dd {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-join);
  margin: 0;
}
.listing-detail .batch-identifiers > div .value, .listing-detail .identifiers > div .value {
  color: var(--color-form-text);
  text-decoration: none;
}
.listing-detail .identifiers {
  align-items: center;
  color: var(--color-form-text);
}
.listing-detail .identifiers .identifier.reference .value {
  font-weight: 600;
}
.listing-detail .copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  width: auto;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
}
.listing-detail .copy:hover {
  color: var(--color-interactive);
}
.listing-detail .copy.copied {
  color: var(--color-success-strong);
}
.listing-detail .summary {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-horizontal-distant);
  padding-bottom: var(--spacing-vertical-loose);
  margin-bottom: var(--spacing-vertical-glue);
}
.listing-detail .summary .image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5rem;
  height: 5rem;
  flex-shrink: 0;
  border-radius: var(--border-radius-normal);
  background-color: var(--color-image-placeholder-bg);
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
  text-align: center;
}
.listing-detail .summary .image .placeholder {
  padding: var(--spacing-horizontal-tight);
}
.listing-detail .summary .image.dropzone {
  cursor: pointer;
}
.listing-detail .summary .image.dropzone:hover {
  color: var(--color-accent);
}
.listing-detail .summary .image.dropzone.uploading {
  opacity: 0.6;
}
.listing-detail .summary .facts {
  margin: 0;
}
.listing-detail .summary .facts .fact {
  display: flex;
  gap: var(--spacing-horizontal-tight);
  line-height: var(--line-height-default);
}
.listing-detail .summary .facts .fact dt {
  color: var(--color-form-placeholder);
}
.listing-detail .summary .facts .fact dt::after {
  content: ":";
}
.listing-detail .summary .facts .fact dd {
  margin: 0;
}
.listing-detail .summary .status-group {
  display: flex;
  gap: var(--spacing-horizontal-distant);
}
.listing-detail .summary .status-group .label {
  display: block;
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
}
.listing-detail .summary .status-group .value {
  display: block;
  font-size: 1.25rem;
  margin-top: var(--spacing-vertical-tight);
}
.listing-detail .tabs {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-distant);
  border-bottom: var(--border-outline) solid var(--color-form-border);
  margin-bottom: var(--spacing-vertical-loose);
}
.listing-detail .tabs .tab {
  padding-bottom: var(--spacing-vertical-normal);
  color: var(--color-form-text);
  text-decoration: none;
}
.listing-detail .tabs .tab.active {
  color: var(--color-accent-strong);
  border-bottom: var(--border-underline) solid var(--color-accent-strong);
  font-weight: 600;
}
.listing-detail .batch-selector {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  margin: 0 var(--spacing-horizontal-normal) 0 0;
  padding-bottom: var(--spacing-vertical-normal);
}
.listing-detail .batch-selector .label {
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
  white-space: nowrap;
}
.listing-detail .batch-selector .select {
  width: auto;
  margin: 0;
}
.listing-detail .batch-selector .apply {
  width: auto;
  margin: 0;
}
.listing-detail .overview {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--spacing-horizontal-loose);
  align-items: start;
}
.listing-detail .overview-main {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-vertical-normal);
  min-width: 0;
}
.listing-detail .overview-side {
  min-width: 0;
}
.listing-detail .attribute-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--spacing-horizontal-loose);
  align-items: start;
}
.listing-detail .panel {
  border: var(--border-outline) solid var(--color-form-border);
  border-radius: var(--border-radius-normal);
  padding: var(--spacing-horizontal-loose);
}
.listing-detail .panel h2 {
  font-size: 1rem;
  margin: 0 0 var(--spacing-vertical-normal);
}
.listing-detail .panel .block + .block {
  margin-top: var(--spacing-vertical-loose);
}
.listing-detail .batch-identifiers {
  margin: 0 0 var(--spacing-vertical-normal);
}
.listing-detail .line {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-horizontal-tight);
  line-height: var(--line-height-default);
}
.listing-detail .line .label {
  color: var(--color-form-placeholder);
}
.listing-detail .line .label::after {
  content: ":";
}
.listing-detail .line .warning {
  color: var(--color-warning-strong);
}
.listing-detail .attributes {
  margin: 0;
}
.listing-detail .attributes .attribute {
  display: flex;
  gap: var(--spacing-horizontal-tight);
  line-height: var(--line-height-default);
}
.listing-detail .attributes .attribute dt {
  color: var(--color-form-placeholder);
}
.listing-detail .attributes .attribute dt::after {
  content: ":";
}
.listing-detail .attributes .attribute dd {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  margin: 0;
}
.listing-detail .attributes .attribute .edit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  width: auto;
  color: var(--color-form-placeholder);
  text-decoration: none;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.1s ease-in;
}
.listing-detail .attributes .attribute .edit:hover, .listing-detail .attributes .attribute .edit:focus-visible {
  color: var(--color-interactive);
}
.listing-detail .attributes .attribute:hover .edit,
.listing-detail .attributes .attribute .edit:focus-visible {
  opacity: 1;
}
.listing-detail .attributes .attribute.editing {
  display: block;
}
.listing-detail .attribute-editor .label,
.listing-detail .choose-field .label {
  display: block;
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
  margin-bottom: var(--spacing-vertical-tight);
}
.listing-detail .attribute-editor.attribute-editor .label::after,
.listing-detail .choose-field.attribute-editor .label::after {
  content: ":";
}
.listing-detail .attribute-editor .control,
.listing-detail .choose-field .control {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
}
.listing-detail .attribute-editor .control .input,
.listing-detail .attribute-editor .control .select,
.listing-detail .choose-field .control .input,
.listing-detail .choose-field .control .select {
  width: auto;
  margin: 0;
  flex: 1;
  min-width: 0;
}
.listing-detail .attribute-editor .save,
.listing-detail .choose-field .save {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: auto;
  margin: 0;
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
  background-color: var(--color-interactive);
  color: var(--color-text-next);
  border: none;
  border-radius: var(--border-radius-normal);
  cursor: pointer;
}
.listing-detail .attribute-editor .save:hover,
.listing-detail .choose-field .save:hover {
  filter: brightness(0.92);
}
.listing-detail .attribute-editor .cancel,
.listing-detail .choose-field .cancel {
  display: inline-block;
  margin-top: var(--spacing-vertical-tight);
  color: var(--color-form-placeholder);
  text-decoration: none;
  font-size: var(--font-size-small);
  cursor: pointer;
}
.listing-detail .attribute-editor .cancel:hover, .listing-detail .attribute-editor .cancel:focus-visible,
.listing-detail .choose-field .cancel:hover,
.listing-detail .choose-field .cancel:focus-visible {
  color: var(--color-interactive);
}
.listing-detail .attribute-editor .field-error,
.listing-detail .choose-field .field-error {
  display: block;
  margin-top: var(--spacing-vertical-tight);
  color: var(--color-error-strong);
  font-size: var(--font-size-small);
}
.listing-detail .required-flag {
  font-size: var(--font-size-small);
  font-style: italic;
  color: var(--color-warning-strong);
}
.listing-detail .add-link {
  display: inline-block;
  margin-top: var(--spacing-vertical-normal);
  color: var(--color-interactive);
  text-decoration: none;
  font-size: var(--font-size-small);
  cursor: pointer;
}
.listing-detail .add-field,
.listing-detail .add-packaging {
  margin-top: var(--spacing-vertical-normal);
}
.listing-detail .packaging-set {
  margin-top: var(--spacing-vertical-normal);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-vertical-tight);
}
.listing-detail .packaging-set-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--spacing-horizontal-tight);
}
.listing-detail .packaging-set-head .label {
  font-weight: 600;
}
.listing-detail .packaging-set-head .warning {
  color: var(--color-warning-strong);
}
.listing-detail .notes {
  margin: 0;
  line-height: var(--line-height-default);
}
.listing-detail .documents {
  list-style: none;
  margin: 0 0 var(--spacing-vertical-loose);
  padding: 0;
}
.listing-detail .documents .document {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  padding: var(--spacing-vertical-tight) 0;
}
.listing-detail .documents .document .check {
  color: var(--color-success-strong);
}
.listing-detail .documents .document .type {
  flex-shrink: 0;
}
.listing-detail .documents .document .file {
  color: var(--color-interactive);
  text-decoration: none;
  flex: 1;
}
.listing-detail .documents .document .delete-form {
  display: inline;
  width: auto;
  margin: 0;
  padding: 0;
}
.listing-detail .documents .document .delete {
  width: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-form-placeholder);
}
.listing-detail .documents .document .delete:hover {
  color: var(--color-error);
}
.listing-detail .dropzone {
  display: block;
  padding: var(--spacing-vertical-normal) var(--spacing-horizontal-normal);
  border: var(--border-outline) dashed var(--color-form-border);
  border-radius: var(--border-radius-normal);
  color: var(--color-form-placeholder);
  font-style: italic;
  font-size: var(--font-size-small);
  cursor: pointer;
}
.listing-detail .dropzone:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
}
.listing-detail .dropzone.uploading {
  opacity: 0.6;
  cursor: progress;
}
.listing-detail .upload-slot {
  margin-bottom: var(--spacing-vertical-normal);
}
.listing-detail .upload-slot .label {
  display: block;
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
  margin-bottom: var(--spacing-vertical-tight);
}
.listing-detail .doc-actions {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-vertical-tight);
}
.listing-detail .add-doc summary {
  list-style: none;
}
.listing-detail .add-doc summary::-webkit-details-marker {
  display: none;
}
.listing-detail .add-doc .add-body {
  margin-top: var(--spacing-vertical-tight);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-vertical-tight);
}
.listing-detail .add-doc .add-body .label {
  color: var(--color-form-placeholder);
  font-size: var(--font-size-small);
}
.listing-detail .add-doc .add-body .select,
.listing-detail .add-doc .add-body .custom-label {
  width: auto;
  margin: 0;
}
.listing-detail .upload-error {
  display: block;
  margin-top: var(--spacing-vertical-tight);
  color: var(--color-error-strong);
  font-size: var(--font-size-small);
}
.listing-detail .skus {
  border: var(--border-outline) solid var(--color-form-border);
  border-radius: var(--border-radius-normal);
  padding: var(--spacing-horizontal-loose);
}
.listing-detail .skus .skus-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-horizontal-normal);
  margin-bottom: var(--spacing-vertical-normal);
}
.listing-detail .skus .skus-head h2 {
  font-size: 1rem;
  margin: 0;
}
.listing-detail .skus .skus-head button {
  width: auto;
  margin: 0;
}
.listing-detail .sku-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-size-small);
}
.listing-detail .sku-table th, .listing-detail .sku-table td {
  text-align: left;
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
  border-bottom: var(--border-outline) solid var(--color-form-border);
  vertical-align: middle;
}
.listing-detail .sku-table thead th {
  color: var(--color-form-placeholder);
  font-weight: 600;
  white-space: nowrap;
}
.listing-detail .sku-table thead th a {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  color: inherit;
  text-decoration: none;
}
.listing-detail .sku-table thead th a:hover {
  color: var(--color-interactive);
}
.listing-detail .sku-table thead th .sort-indicator {
  color: var(--color-interactive);
}
.listing-detail .sku-table thead th.sorted a {
  color: var(--color-interactive);
}
.listing-detail .sku-table .select {
  width: 1.5rem;
  text-align: center;
}
.listing-detail .sku-table .select input {
  margin: 0;
}
.listing-detail .sku-table tbody tr[data-href] {
  cursor: pointer;
}
.listing-detail .sku-table tbody tr[data-href]:hover {
  background-color: var(--color-image-placeholder-bg);
}
.listing-detail .sku-table tbody tr[data-href] .select {
  cursor: auto;
}
.listing-detail .sku-table .warning-row {
  background-color: var(--color-warning-surface);
}
.listing-detail .sku-table .notes-cell .warning {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  color: var(--color-warning-strong);
}
.listing-detail .sku-table .notes-cell .note {
  display: block;
}
.listing-detail .sku-table .open {
  width: 1.5rem;
  text-align: right;
}
.listing-detail .sku-table .open .open-link {
  color: var(--color-form-placeholder);
  text-decoration: none;
  font-size: 1.25rem;
  line-height: 1;
}
.listing-detail .sku-table .open .open-link:hover {
  color: var(--color-interactive);
}
.listing-detail .sku-table td.empty-state {
  text-align: center;
  padding: var(--spacing-vertical-loose) var(--spacing-horizontal-normal);
}
.listing-detail .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.listing-detail .empty-state {
  color: var(--color-form-placeholder);
  font-style: italic;
  margin: 0;
}
@media (max-width: 768px) {
  .listing-detail > header {
    flex-direction: column;
  }
  .listing-detail .summary {
    flex-direction: column;
    gap: var(--spacing-vertical-loose);
  }
  .listing-detail .status-group {
    gap: var(--spacing-horizontal-loose);
  }
  .listing-detail .overview {
    grid-template-columns: 1fr;
  }
  .listing-detail .attribute-groups {
    grid-template-columns: 1fr;
  }
  .listing-detail .tabs {
    flex-wrap: wrap;
    gap: var(--spacing-horizontal-normal);
  }
  .listing-detail .batch-selector {
    width: 100%;
  }
  .listing-detail .skus {
    overflow-x: auto;
  }
  .listing-detail .sku-table {
    min-width: 40rem;
  }
}

.upload-wizard .file-selection {
  margin-bottom: var(--spacing-vertical-loose);
}
.upload-wizard .zone {
  margin-bottom: var(--spacing-vertical-loose);
}
.upload-wizard .zone .label {
  font-weight: 600;
  margin: 0 0 var(--spacing-vertical-normal);
}
.upload-wizard .zone .items {
  list-style: none;
  margin: 0;
  padding: 0;
}
.upload-wizard .dropzone {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-relaxed);
  flex-wrap: wrap;
}
.upload-wizard .dropzone[hidden] {
  display: none;
}
.upload-wizard .dropzone .drop {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22rem;
  max-width: 100%;
  padding: var(--spacing-vertical-relaxed) var(--spacing-horizontal-loose);
  background-color: var(--color-surface-raised);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-normal);
  text-align: center;
  cursor: pointer;
}
.upload-wizard .dropzone .drop:hover {
  border-color: var(--color-accent);
  background-color: var(--color-accent-subtle);
}
.upload-wizard .dropzone .drop:focus-within {
  outline: var(--border-underline) solid var(--color-interactive);
  outline-offset: 2px;
}
.upload-wizard .dropzone .prompt {
  color: var(--color-interactive);
  font-weight: 500;
}
.upload-wizard .dropzone .input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}
.upload-wizard .dropzone .hint {
  color: var(--color-text-muted);
  margin: 0;
}
.upload-wizard .dropzone.drag-over .drop {
  border-color: var(--color-accent);
  border-style: dashed;
  background-color: var(--color-accent-subtle);
}
.upload-wizard .item {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
  max-width: 34rem;
  padding: var(--spacing-vertical-tight) 0;
}
.upload-wizard .item .filename {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.upload-wizard .item .percent {
  color: var(--color-warning-strong);
}
.upload-wizard .item .status {
  display: inline-flex;
}
.upload-wizard .item .status .icon {
  width: 1em;
}
.upload-wizard .item .status.complete {
  color: var(--color-success-strong);
}
.upload-wizard .item .status.error {
  color: var(--color-error-strong);
}
.upload-wizard .item .retry, .upload-wizard .item .cancel, .upload-wizard .item .remove {
  width: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  font-family: inherit;
  font-size: var(--font-size-small);
  color: var(--color-interactive);
  text-decoration: underline;
  cursor: pointer;
}
.upload-wizard .item .cancel, .upload-wizard .item .remove {
  margin-left: auto;
}
.upload-wizard .item.complete .filename {
  color: var(--color-success-strong);
}
.upload-wizard .item.error .filename {
  color: var(--color-error-strong);
}
.upload-wizard .tip ul {
  margin: 0 0 var(--spacing-vertical-normal);
  padding-left: 1.25rem;
}
.upload-wizard .tip li {
  margin-bottom: var(--spacing-vertical-tight);
}
.upload-wizard .icon {
  flex-shrink: 0;
  display: inline-block;
  width: 1.4em;
  text-align: center;
}
.upload-wizard .icon.csv::before {
  content: "📄";
}
.upload-wizard .icon.excel::before {
  content: "📊";
}
.upload-wizard .icon.pdf::before {
  content: "📑";
}
.upload-wizard .icon.zip::before {
  content: "📦";
}
.upload-wizard .content-panel {
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-normal);
  padding: var(--section-vertical-padding) var(--section-horizontal-padding);
  margin-bottom: var(--spacing-vertical-loose);
}
.upload-wizard .panel-subheading {
  font-weight: 600;
  margin: 0 0 var(--spacing-vertical-normal);
}
.upload-wizard .row-actions {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-relaxed);
  margin-top: var(--spacing-vertical-normal);
}
.upload-wizard .notice {
  border-radius: 8px;
  margin-bottom: var(--spacing-vertical-normal);
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
}
.upload-wizard .notice summary {
  cursor: pointer;
  font-weight: 500;
}
.upload-wizard .notice ul {
  margin: var(--spacing-vertical-tight) 0 0;
  padding-left: 1.5rem;
  font-size: var(--font-size-small);
}
.upload-wizard .notice h2 {
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
}
.upload-wizard .notice p {
  margin: var(--spacing-vertical-tight) 0 0;
  font-size: var(--font-size-small);
}
.upload-wizard .notice.warning {
  background-color: var(--color-warning-subtle);
  border: 1px solid var(--color-warning);
  color: var(--color-warning-strong);
}
.upload-wizard .notice.info {
  background-color: var(--color-info-subtle);
  border: 1px solid var(--color-info);
  color: var(--color-text);
}
.upload-wizard .inventory-review-table {
  width: 100%;
  border-collapse: collapse;
}
.upload-wizard .inventory-review-table th, .upload-wizard .inventory-review-table td {
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
  text-align: left;
  border-bottom: 1px solid var(--color-form-border);
}
.upload-wizard .inventory-review-table th {
  font-weight: 600;
  white-space: nowrap;
}
.upload-wizard .inventory-review-table tr.removed td {
  opacity: 0.4;
  text-decoration: line-through;
}
.upload-wizard .location-unresolved {
  color: var(--color-warning-strong);
}
.upload-wizard .location-unresolved::before {
  content: "⚠ ";
}
.upload-wizard .pagination {
  display: flex;
  gap: var(--spacing-horizontal-tight);
  margin-top: var(--spacing-vertical-normal);
  justify-content: center;
}
.upload-wizard .pagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--color-form-border);
  border-radius: 50%;
  text-decoration: none;
  color: var(--color-primary);
  font-size: var(--font-size-small);
}
.upload-wizard .pagination a.active {
  background-color: var(--color-primary);
  color: var(--color-light);
  border-color: var(--color-primary);
}
.upload-wizard .pagination a:hover:not(.active) {
  background-color: var(--color-surface-raised);
}
.upload-wizard .document-list {
  display: flex;
  flex-direction: column;
}
.upload-wizard .doc-row {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-relaxed);
  padding: var(--spacing-vertical-tight) 0;
  border-bottom: 1px solid var(--color-form-border);
}
.upload-wizard .doc-row .filename {
  min-width: 10rem;
  max-width: 14rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--color-interactive);
}
.upload-wizard .doc-row .identifier-input {
  width: 9rem;
  padding: 0.2rem 0.4rem;
  border: 1px solid var(--color-form-border);
  border-radius: 4px;
  font-size: var(--font-size-small);
}
.upload-wizard .doc-row .doc-type-select {
  padding: 0.2rem 0.4rem;
  border: 1px solid var(--color-form-border);
  border-radius: 4px;
  font-size: var(--font-size-small);
}
.upload-wizard .doc-row .match-status {
  font-size: var(--font-size-small);
}
.upload-wizard .doc-row .match-status.matched {
  color: var(--color-text);
}
.upload-wizard .doc-row .match-status.not-matched {
  color: var(--color-warning-strong);
}
.upload-wizard .doc-row .warning-icon {
  color: var(--color-warning);
}
.upload-wizard .doc-row.parent .filename {
  color: var(--color-dark);
  font-weight: 600;
}
.upload-wizard .doc-row.child {
  padding-left: 2rem;
}
.upload-wizard .doc-row.no-match .identifier-input {
  border-color: var(--color-warning);
}
.upload-wizard .required-banner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--spacing-horizontal-normal);
  margin: 0 0 var(--spacing-vertical-loose);
  padding: var(--spacing-vertical-tight) var(--spacing-horizontal-normal);
  border-radius: var(--border-radius-normal);
  font-size: var(--font-size-small);
}
.upload-wizard .required-banner .intro {
  font-weight: 600;
}
.upload-wizard .required-banner .requirement {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
}
.upload-wizard .required-banner .requirement:not(:last-child)::after {
  content: ",";
  color: var(--color-text-muted);
}
.upload-wizard .required-banner .requirement .marker {
  display: inline-flex;
}
.upload-wizard .required-banner .requirement .marker .icon {
  width: 1em;
}
.upload-wizard .required-banner .requirement.covered {
  color: var(--color-success-strong);
}
.upload-wizard .required-banner .requirement.covered .marker {
  color: var(--color-success);
}
.upload-wizard .required-banner .requirement.missing {
  color: var(--color-warning-strong);
}
.upload-wizard .required-banner .requirement.missing .marker {
  color: var(--color-warning);
}
.upload-wizard .required-banner.complete {
  background-color: var(--color-success-subtle);
}
.upload-wizard .required-banner.incomplete {
  background-color: var(--color-warning-subtle);
}
.upload-wizard .structure {
  margin-bottom: var(--spacing-vertical-loose);
}
.upload-wizard .structure .captions {
  display: grid;
  grid-template-columns: 2.5rem minmax(8rem, 14rem) minmax(6rem, 12rem) minmax(10rem, 16rem) 1fr;
  gap: var(--spacing-horizontal-normal);
  align-items: center;
  padding-bottom: var(--spacing-vertical-tight);
  font-weight: 600;
}
.upload-wizard .structure .row {
  display: grid;
  grid-template-columns: 2.5rem minmax(8rem, 14rem) minmax(6rem, 12rem) minmax(10rem, 16rem) 1fr;
  gap: var(--spacing-horizontal-normal);
  align-items: center;
  padding: var(--spacing-vertical-tight) 0;
}
.upload-wizard .structure .row .letter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.75rem;
  padding: var(--spacing-vertical-join) 0;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  color: var(--color-text-muted);
  font-size: var(--font-size-small);
}
.upload-wizard .structure .row .name, .upload-wizard .structure .row .example {
  min-width: 0;
  padding: var(--spacing-vertical-join) var(--spacing-horizontal-normal);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  background-color: var(--color-surface-raised);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.upload-wizard .structure .row .name.unnamed {
  color: var(--color-text-muted);
  font-style: italic;
}
.upload-wizard .structure .row .control {
  min-width: 0;
}
.upload-wizard .structure .row .chooser {
  width: 100%;
  padding: 0.3rem 0.4rem;
  border: 1px solid var(--color-form-border);
  border-radius: 4px;
  background-color: var(--color-surface);
  font-size: var(--font-size-small);
}
.upload-wizard .structure .row .outcome {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
}
.upload-wizard .structure .row .outcome .check {
  display: inline-flex;
  color: var(--color-success-strong);
}
.upload-wizard .structure .row .outcome .check .icon {
  width: 1.1em;
}
.upload-wizard .structure .row .outcome .resolved {
  color: var(--color-success-strong);
}
.upload-wizard .structure .row.skipped .letter, .upload-wizard .structure .row.skipped .name, .upload-wizard .structure .row.skipped .example {
  color: var(--color-text-muted);
  opacity: 0.7;
}
.upload-wizard .remember-layout {
  border: 0;
  margin: var(--spacing-vertical-loose) 0 0;
  padding: 0;
}

.upload-wizard {
  flex: 1;
  max-width: 1600px;
  min-width: 800px;
  margin: var(--spacing-vertical-loose) auto;
  padding: 0 var(--spacing-horizontal-distant);
}
.upload-wizard button {
  display: inline-block;
  width: auto;
  margin: 0;
  padding: 0.4rem 1rem;
  font-size: var(--font-size-small);
}
.upload-wizard .wizard-steps {
  display: flex;
  justify-content: center;
  margin-bottom: var(--spacing-vertical-loose);
}
.upload-wizard .wizard-steps .steps {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.upload-wizard .wizard-steps .step {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-tight);
}
.upload-wizard .wizard-steps .step .connector {
  width: 2.5rem;
  border-top: 2px dotted var(--color-border);
  margin: 0 var(--spacing-horizontal-tight) 0 0;
}
.upload-wizard .wizard-steps .step .marker {
  flex-shrink: 0;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  border: 2px solid var(--color-text-muted);
  background-color: transparent;
}
.upload-wizard .wizard-steps .step .label {
  color: var(--color-text-muted);
  font-size: var(--font-size-small);
  text-decoration: none;
}
.upload-wizard .wizard-steps .step.done .marker {
  background-color: var(--color-success-strong);
  border-color: var(--color-success-strong);
}
.upload-wizard .wizard-steps .step.done .label {
  color: var(--color-success-strong);
  text-decoration: underline;
}
.upload-wizard .wizard-steps .step.current .marker {
  border-color: var(--color-success-strong);
  background: linear-gradient(90deg, var(--color-success-strong) 50%, transparent 50%);
}
.upload-wizard .wizard-steps .step.current .label {
  color: var(--color-success-strong);
  font-weight: 600;
}
.upload-wizard .wizard-steps .step.pending .marker {
  border-color: var(--color-text-muted);
}
.upload-wizard .wizard-steps .step.pending .label {
  color: var(--color-text-muted);
}
.upload-wizard .columns {
  display: grid;
  grid-template-columns: minmax(0, 2fr) 1fr;
  gap: var(--spacing-horizontal-distant);
  align-items: start;
}
.upload-wizard .columns.no-aside {
  grid-template-columns: 1fr;
}
.upload-wizard .columns > main {
  margin: 0;
  padding: 0;
  min-width: 0;
}
.upload-wizard .columns > main h1 {
  margin: 0 0 var(--spacing-vertical-loose);
}
.upload-wizard .columns > aside {
  margin: 0;
  padding: 0;
  color: var(--color-text);
}
.upload-wizard .columns > aside h2 {
  font-size: var(--font-size-default);
  margin: 0 0 var(--spacing-vertical-normal);
}
.upload-wizard .columns > aside p {
  margin: 0 0 var(--spacing-vertical-normal);
}
.upload-wizard .wizard-form {
  display: block;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
}
.upload-wizard .actions {
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-relaxed);
  margin-top: var(--spacing-vertical-loose);
  padding-top: var(--spacing-vertical-normal);
  border-top: 1px solid var(--color-border);
}
.upload-wizard .actions .back {
  color: var(--color-interactive);
  text-decoration: none;
}
.upload-wizard .actions .back::before {
  content: "← ";
}
.upload-wizard .actions .primary-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: var(--spacing-horizontal-relaxed);
}
.upload-wizard .actions .cancel {
  color: var(--color-text-muted);
  text-decoration: none;
  padding: 0.4rem 1rem;
  font-size: var(--font-size-small);
}
.upload-wizard .actions .cancel:hover {
  color: var(--color-text);
  text-decoration: underline;
}
.upload-wizard .finish .finish-summary {
  color: var(--color-text-muted);
  margin: 0 0 var(--spacing-vertical-normal);
}
.upload-wizard .finish .finish-summary:last-child {
  margin-bottom: 0;
}
@media (max-width: 64rem) {
  .upload-wizard {
    margin: var(--spacing-vertical-loose) var(--spacing-horizontal-loose);
    padding: 0 var(--spacing-horizontal-loose);
  }
  .upload-wizard .columns {
    grid-template-columns: 1fr;
  }
  .upload-wizard .columns > aside {
    display: none;
  }
}

/*# sourceMappingURL=main.css.map */
