/* Estilos complementarios de diario, logros, ayuda, notificaciones y admin. */
.section-card + .section-card { margin-top: 18px; }
.cal-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.cal-head__title { font: 400 16px/1.3 var(--font-title); text-transform: capitalize; }
.calendar__day.is-selected { background: color-mix(in srgb, var(--chart-1) 12%, var(--surface)); }
.calendar__blank { aspect-ratio: 1; }
.mood-legend { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-top: 12px; font-size: 13px; color: var(--muted); }
.mood-legend span { display: inline-flex; align-items: center; gap: 6px; }
.mood-legend .mood-dot { width: 10px; height: 10px; }
.field-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; margin-top: 16px; }
@media (max-width: 420px) {
  .mood-options { gap: 4px; }
  .mood-option { padding: 12px 2px; font-size: 12px; }
  .calendar { gap: 4px; }
}

.chat-wrap { max-width: 720px; }
.bubble p + p { margin-top: 8px; }
.topic-bar { margin-top: 20px; }

.admin-tabs { overflow-x: auto; max-width: 100%; margin-bottom: 20px; }
.admin-tabs button { white-space: nowrap; }
.admin-toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.admin-chapter + .admin-chapter { margin-top: 16px; }
.admin-chapter__head { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start; justify-content: space-between; }
.admin-lessons { margin-top: 12px; }
.admin-lessons .list > li { align-items: center; flex-wrap: wrap; }
.admin-row-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.admin-errors { margin: 10px 0 0; padding-left: 20px; color: var(--danger); font-size: 14px; }
.admin-preview { border: 1px dashed var(--line); border-radius: var(--radius-sm); padding: 16px; }
.admin-preview > * + * { margin-top: 14px; }
.admin-preview .kicker { display: block; margin-bottom: 6px; }
.admin-wide { max-width: 960px; }
.table td.wrap { white-space: normal; min-width: 220px; }
.modal__card--wide { max-width: 860px; }
.list-reset { list-style: none; padding: 0; margin: 0; }
.achievement__title { font: 400 16px/1.3 var(--font-title); }
