/* Создание дневника (create-diary.html, T-010). Префикс .cd-. Только токены. */
@layer screens {
  .cd-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
    max-width: 32rem;
    margin-inline: auto;
  }
  @media (min-width: 900px) {
    .cd-layout {
      grid-template-columns: minmax(0, 32rem) minmax(0, 1fr);
      grid-template-areas: "form preview";
      gap: var(--space-8);
      align-items: start;
      max-width: 64rem;
    }
    .cd-card { grid-area: form; }
    .cd-preview { grid-area: preview; position: sticky; top: calc(var(--topbar-h) + var(--space-5)); }
  }

  /* ---------- Превью обложки ---------- */
  .cd-preview { display: grid; gap: var(--space-2); }
  .cd-preview__label { display: none; }
  .cd-cover {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: var(--space-4);
    align-items: center;
    padding: var(--space-3) var(--space-4) var(--space-3) var(--space-3);
    background: var(--texture-page), var(--color-page);
    border: var(--border-width) var(--border-style) var(--color-line);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-md);
  }
  .cd-cover__photo { width: 100%; }
  .cd-cover__photo::before { width: 44px; height: 14px; top: -6px; }
  :root[data-theme="scrapbook"] .cd-cover__photo { padding: 4px 4px 6px; }
  :root[data-theme="minimal"] .cd-cover__photo { padding: 4px; }
  .cd-cover__img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--radius-photo); }
  .cd-cover__text { display: grid; gap: 2px; min-width: 0; }
  .cd-cover__kicker { font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--color-secondary-ink); }
  .cd-cover__name {
    font-family: var(--font-display);
    font-weight: var(--font-display-weight);
    letter-spacing: var(--letter-display);
    font-size: calc(var(--fs-xl) * var(--font-display-scale));
    line-height: 1.1;
    overflow-wrap: anywhere;
  }
  .cd-cover__name.is-placeholder { color: var(--color-ink-muted); }
  .cd-cover__date { font-size: var(--fs-sm); color: var(--color-ink-muted); }
  .cd-cover__desc { display: none; }

  @media (min-width: 900px) {
    .cd-preview__label { display: block; text-align: center; }
    .cd-cover {
      position: relative;
      grid-template-columns: minmax(0, 1fr);
      justify-items: center;
      gap: var(--space-5);
      padding: var(--space-7) var(--space-6);
      text-align: center;
      border-radius: var(--radius-page);
      box-shadow: var(--shadow-page);
      isolation: isolate;
    }
    .cd-cover::before {
      content: "";
      position: absolute;
      z-index: -1;
      top: 0; right: 0;
      width: var(--decor-corner-size); height: var(--decor-corner-size);
      background: var(--decor-corner) no-repeat top right / contain;
      opacity: var(--decor-corner-opacity);
    }
    .cd-cover__photo { width: min(62%, 280px); }
    .cd-cover__photo::before { width: 104px; height: 28px; top: -12px; }
    :root[data-theme="scrapbook"] .cd-cover__photo { padding: 10px 10px 12px; }
    :root[data-theme="minimal"] .cd-cover__photo { padding: 12px; }
    .cd-cover__text { gap: var(--space-2); justify-items: center; }
    .cd-cover__name { font-size: calc(var(--fs-3xl) * var(--font-display-scale) * 0.8); }
    .cd-cover__desc:not([hidden]) {
      display: block;
      max-width: 24rem;
      font-family: var(--font-hand);
      font-style: var(--font-hand-style);
      font-size: calc(var(--fs-lg) * var(--font-display-scale));
      line-height: 1.35;
      color: var(--color-ink);
    }
  }

  /* ---------- Карточка формы ---------- */
  .cd-card {
    display: grid;
    gap: var(--space-5);
    padding: var(--space-5) var(--space-4) var(--space-6);
    background: var(--texture-page), var(--color-page);
    border: var(--border-width) var(--border-style) var(--color-line);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-page);
  }
  @media (min-width: 480px) { .cd-card { padding: var(--space-6); } }
  .cd-step { display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; }
  .cd-step__head { display: grid; gap: var(--space-2); }
  .cd-step__title { font-size: calc(var(--fs-xl) * var(--font-display-scale) * 1.1); }
  .cd-step__title:focus { outline: none; }
  .cd-name { min-height: 56px; font-size: var(--fs-lg); }
  .choices > legend .t-muted { font-weight: 400; }

  .cd-step__actions { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-top: var(--space-2); }
  .cd-step__actions .btn--primary { flex: 1; }
  @media (min-width: 480px) { .cd-step__actions .btn--primary { flex: 0 1 auto; margin-left: auto; min-width: 12rem; } }

  /* Даты: показываем ПДР или дату рождения */
  .cd-birth { display: none; }
  .cd-card:has([data-cd-born]:checked) .cd-birth { display: flex; }
  .cd-card:has([data-cd-born]:checked) .cd-due { display: none; }

  .cd-pick.is-picked { border-style: solid; border-color: var(--color-accent); }
  .cd-count { text-align: right; font-variant-numeric: tabular-nums; }
  .cd-skip { text-align: center; }
  .cd-skip a { display: inline-flex; align-items: center; min-height: var(--tap); }
}
