/* /admin/distributions — Stream 1 distribution tracker.
 * Design finalist: docs/mockups/2026-05-06-admin-distributions/round-2/
 * 01-rich-matrix.html — rich-row matrix with cover thumbnails. */

.adis-page { padding: 0; }
.adis { padding: 28px 28px 64px; font-family: var(--font-sans); }

.adis__crumb {
  font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--text-muted); margin-bottom: 8px;
}
.adis__title {
  font-family: var(--font-serif); font-size: 1.7rem; font-weight: 500;
  line-height: 1.18; color: var(--text-primary); margin-bottom: 4px;
}
.adis__sub {
  color: var(--text-secondary); font-size: 0.95rem; margin-bottom: 24px;
  max-width: 720px;
}

/* ── Filters ────────────────────────────────────────────────────── */
.adis__filters {
  display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 18px; align-items: center;
}
.adis__filter-group { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.adis__filter-label {
  font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--text-muted);
}
.adis__chip {
  padding: 5px 11px; border-radius: 999px; cursor: pointer;
  border: 1px solid var(--border); background: var(--bg-surface);
  color: var(--text-secondary);
  font-family: var(--font-sans); font-size: 0.85rem;
  transition: color var(--transition), border-color var(--transition), background var(--transition);
}
.adis__chip:hover { color: var(--accent); border-color: var(--accent); }
.adis__chip--active {
  color: var(--accent); border-color: var(--accent); background: var(--accent-subtle);
}

/* ── Loading / status / error ────────────────────────────────────── */
.adis__loading {
  font-family: var(--font-serif); font-style: italic; color: var(--text-muted);
  padding: 60px 0; text-align: center;
}
.adis__error {
  padding: 16px; border-radius: var(--radius-sm);
  background: rgba(232, 80, 96, 0.1); color: var(--text-primary);
  border-left: 3px solid #e85060;
}
.adis__status {
  font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--text-muted); min-height: 1.2em; margin-top: 14px;
}
.adis__status--ok  { color: var(--success, #6fbf7e); }
.adis__status--err { color: var(--error, #e85060); }

/* ── Matrix table ────────────────────────────────────────────────── */
.adis__table-wrap {
  overflow-x: auto; border: 1px solid var(--border);
  border-radius: var(--radius); background: var(--bg-elevated);
}
.adis__matrix {
  border-collapse: collapse; font-family: var(--font-sans);
  width: 100%; min-width: 1280px;
}
.adis__matrix th, .adis__matrix td {
  border-bottom: 1px solid var(--border-subtle);
  border-right: 1px solid var(--border-subtle);
}
.adis__matrix thead th {
  background: var(--bg-secondary);
  font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--text-muted);
  padding: 12px 14px; text-align: left;
  position: sticky; top: 0; z-index: 2;
}

/* Rich left column — looks like a card embedded in the table */
.adis__book {
  background: var(--bg-elevated); padding: 14px 14px;
  width: 320px; min-width: 320px;
  position: sticky; left: 0; z-index: 1;
  border-right: 2px solid var(--border);
}
.adis__book-row {
  display: grid; grid-template-columns: 56px 1fr; gap: 14px; align-items: center;
}
.adis__book-cover {
  width: 56px; aspect-ratio: 5 / 8; border-radius: 3px;
  background: linear-gradient(165deg, var(--cv-top, #2a1f10), var(--cv-bot, #4a3520));
  display: grid; place-items: center;
  color: rgba(245, 230, 200, 0.92);
  font-family: var(--font-serif); font-style: italic; font-size: 9.5px;
  text-align: center; padding: 4px;
  box-shadow: -1px 0 0 rgba(0, 0, 0, 0.32) inset;
}
.adis__book-meta { min-width: 0; }
.adis__book-rail {
  font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--accent); margin-bottom: 3px;
}
.adis__book-title {
  font-family: var(--font-serif); font-size: 0.97rem; line-height: 1.2;
  color: var(--text-primary); font-weight: 500;
}
.adis__book-progress {
  font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--text-muted); margin-top: 4px;
}

/* ── Status cells ────────────────────────────────────────────────── */
.adis__cell { cursor: pointer; min-width: 110px; padding: 10px 12px; vertical-align: middle; }
.adis__cell:hover { outline: 2px solid var(--accent); outline-offset: -2px; }

.adis__cell-status {
  font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em;
  text-transform: uppercase;
}
.adis__cell-when {
  font-family: var(--font-mono); font-size: 9.5px; color: var(--text-muted); margin-top: 2px;
}

.cell--not-started { color: var(--text-muted); }
.cell--prep        { background: rgba(125, 163, 232, 0.10); color: #7da3e8; }
.cell--uploaded    { background: rgba(201, 168, 76, 0.12); color: var(--accent); }
.cell--in-review   { background: rgba(201, 168, 76, 0.18); color: var(--accent); }
.cell--live        { background: rgba(111, 191, 126, 0.16); color: #6fbf7e; }
.cell--blocked     { background: rgba(232, 80, 96, 0.14); color: #e85060; }

/* ── Edit modal ──────────────────────────────────────────────────── */
.adis-modal__overlay {
  position: fixed; inset: 0; background: rgba(0, 0, 0, 0.55);
  display: grid; place-items: center; z-index: 50;
  font-family: var(--font-sans);
}
.adis-modal {
  background: var(--bg-elevated); border: 1px solid var(--border);
  border-radius: var(--radius); padding: 24px 26px;
  width: 460px; max-width: 92vw;
  box-shadow: var(--shadow-lg);
}
.adis-modal__head { margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--border-subtle); }
.adis-modal__platform {
  font-family: var(--font-serif); font-size: 1.1rem;
  color: var(--text-primary); font-weight: 500;
}
.adis-modal__sub {
  font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--text-muted); margin-top: 4px;
}
.adis-modal__form { display: flex; flex-direction: column; gap: 14px; }
.adis-modal__field { display: flex; flex-direction: column; gap: 5px; }
.adis-modal__field label {
  font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--text-muted);
}
.adis-modal__field input, .adis-modal__field select, .adis-modal__field textarea {
  background: var(--bg-surface); color: var(--text-primary);
  border: 1px solid var(--border); border-radius: var(--radius-sm);
  padding: 9px 12px; font-family: var(--font-sans); font-size: 0.92rem;
}
.adis-modal__field input:focus, .adis-modal__field select:focus, .adis-modal__field textarea:focus {
  outline: none; border-color: var(--accent);
}
.adis-modal__err {
  padding: 9px 12px; border-radius: var(--radius-sm);
  background: rgba(232, 80, 96, 0.1); color: var(--text-primary);
  border-left: 3px solid #e85060;
  font-size: 0.88rem;
}
.adis-modal__actions {
  display: flex; gap: 10px; justify-content: flex-end; margin-top: 6px;
}
