/* Publishing page (Figma page "03 · Publishing"). Page-specific pieces only; tokens come from app.css. */
.pub-actions { display: flex; align-items: center; gap: 12px; flex: none; }

.stepper { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }

/* Danger-tone chip (Figma Chip tone=Danger) */
.chip-danger { background: var(--danger-wash); color: var(--danger); }

/* Card header actions rendered as buttons */
.card-header button.link { padding: 0; border: 0; background: none; }

/* 712 / 400 split on desktop and laptop */
.pub-split { grid-template-columns: minmax(0, 712fr) minmax(0, 400fr); }

/* Check / store rows: icon, two-line text, status chip */
.status-row { display: flex; align-items: center; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.status-row > .info { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 2px; }

.file-row { display: flex; align-items: center; gap: 10px; }
.file-row > .small { white-space: nowrap; }

/* Listing form */
.pub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.pub-grid .input, .card .textarea { padding: 11px 12px; line-height: 22px; color: var(--muted); }
.card .textarea { display: block; min-height: 0; resize: vertical; field-sizing: content; }

/* Store preview */
.preview { display: flex; align-items: flex-start; gap: 16px; }
.preview-info { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 6px; white-space: nowrap; overflow: hidden; }
.cover.cover-lg { width: 105.6px; height: 158.4px; padding: 11px; border-radius: 6.6px; border-width: 1.1px; }
.cover.cover-lg::before { width: 26.4px; height: 3.3px; border-radius: 2.2px; }
.cover.cover-lg span { font-size: 15.4px; line-height: 19.8px; }

@media (max-width: 1199px) {
  .pub-split { grid-template-columns: minmax(0, 1fr); }
  .page-header.pub-header { align-items: center; flex-wrap: nowrap; }
}
@media (max-width: 767px) {
  .page-header.pub-header { flex-direction: column; align-items: stretch; gap: 20px; }
  .pub-header .h1 { font: 700 20px/28px Manrope, system-ui, sans-serif; letter-spacing: -0.1px; }
  .pub-header .titles p { font-size: 13px; line-height: 18px; }
  .pub-actions { gap: 8px; }
  .pub-split, .pub-split > .stack { gap: 20px; }
  .pub-grid { grid-template-columns: minmax(0, 1fr); }
}
/* Laptop / Chromebook frame uses 20px between header, stepper and split */
@media (min-width: 1200px) and (max-width: 1399px) { .content { gap: 20px; } }
