/* Aktuality — krátké statusové zprávy; vždy menší písmo než hlavní obsah */

.aktualita-ui {
  font-size: 0.8125rem;
  line-height: 1.45;
}

.aktualita-ui .post-body,
.aktualita-ui .aktualita-detail-body {
  font-size: 0.8125rem;
  line-height: 1.5;
}

.aktualita-ui .hint {
  font-size: 0.75rem;
}

/* Detail — stejné pořadí jako příspěvek: fotka, metadata, text */
.aktualita-detail.post-detail {
  padding: var(--space-4);
}

.aktualita-detail-media.post-detail-media {
  margin: calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-2);
}

.aktualita-detail .post-detail-title,
.aktualita-detail-title {
  margin: 0 0 0.35rem;
  font-size: 1.05rem;
  line-height: 1.25;
  font-weight: 700;
}

.aktualita-detail-header.post-detail-header {
  margin-bottom: 0.65rem;
  padding-bottom: 0.55rem;
}

.aktualita-detail-header .post-author,
.aktualita-detail-header .post-author-detail {
  margin-bottom: 0;
}

.aktualita-detail-header .post-type-badge {
  font-size: 0.68rem;
}

.aktualita-detail-header .post-meta,
.aktualita-meta-expires {
  font-size: 0.72rem;
}

.aktualita-detail-body {
  margin: 0.5rem 0 0;
}

.aktualita-detail-footer.post-actions-bar {
  margin-top: 0.75rem;
  padding-top: 0.65rem;
  border-top: 1px solid var(--color-border, #e5e7eb);
}

.aktualita-expired-hint,
.aktualita-archived-hint,
.aktualita-scheduled-hint {
  margin: 0.35rem 0 0;
  font-size: 0.75rem;
}

.aktualita-form-page .aktualita-images-grid {
  display: grid;
  gap: var(--space-3);
}

@media (min-width: 720px) {
  .aktualita-form-page .aktualita-images-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.aktualita-media-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: var(--space-3) 0;
}

.aktualita-media-cell {
  flex: 1 1 12rem;
  min-width: 0;
  max-width: 100%;
}

.aktualita-media-img {
  width: 100%;
  height: auto;
  border-radius: var(--radius-md, 8px);
  border: 1px solid var(--color-border, #e5e7eb);
  display: block;
}

.aktualita-card--compact .aktualita-media-row {
  margin: var(--space-2) 0;
}

.aktualita-expired-hint {
  margin: var(--space-2) 0 0;
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-md, 8px);
  background: rgba(254, 243, 199, 0.85);
  border: 1px solid #fcd34d;
  color: #78350f;
  line-height: 1.45;
}

.aktualita-detail-body {
  margin: var(--space-3) 0;
  line-height: 1.6;
}

.aktualita-detail-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border, #e5e7eb);
}

.aktualita-aside-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.aktualita-aside-item-title {
  margin: 0 0 0.15rem;
  font-size: 0.95rem;
  font-weight: 600;
}

.aktualita-aside-item-meta {
  margin: 0;
  font-size: 0.8rem;
}

.entity-aktuality-preview--mobile {
  margin-bottom: var(--space-3);
}

@media (min-width: 900px) {
  .entity-aktuality-preview--mobile {
    display: none;
  }
}

@media (max-width: 899px) {
  .entity-aktuality-preview--aside {
    display: none;
  }
}

.aktualita-list-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.aktualita-list-item {
  display: flex;
  align-items: stretch;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  text-decoration: none;
  color: inherit;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease;
}

.aktualita-list-item:hover {
  background: rgba(255, 255, 255, 0.95);
  border-color: var(--color-primary-soft, #cbd5e1);
}

.aktualita-list-item-thumb {
  flex: 0 0 5.5rem;
  width: 5.5rem;
  height: 5.5rem;
  border-radius: var(--radius-md, 8px);
  overflow: hidden;
  background: var(--color-surface-muted, #f1f5f9);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-border, #e5e7eb);
}

.aktualita-list-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.aktualita-list-item-thumb--empty {
  font-size: 1.5rem;
  opacity: 0.55;
}

.aktualita-list-item-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.aktualita-list-item-title {
  font-weight: 600;
  font-size: 0.82rem;
  line-height: 1.3;
  color: var(--color-text, #0f172a);
}

.aktualita-list-item-author {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--color-text-muted, #64748b);
  line-height: 1.3;
}

.aktualita-list-item-excerpt {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--color-text-muted, #64748b);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.aktualita-list-item-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.65rem;
  margin-top: 0.15rem;
}

.aktualita-list-item-meta {
  font-size: 0.68rem;
  color: var(--color-muted, #94a3b8);
}

.aktualita-list-item-expires,
.aktualita-meta-expires {
  font-size: 0.68rem;
  color: var(--color-muted, #94a3b8);
}

.aktualita-preview-more {
  margin: var(--space-2) 0 0;
}

.aktualita-portal-layout {
  display: grid;
  gap: var(--space-3);
}

@media (min-width: 880px) {
  .aktualita-portal-layout {
    grid-template-columns: minmax(0, 1fr) min(280px, 28%);
    align-items: start;
  }
}

.aktualita-portal-aside .entity-aside-card {
  margin: 0;
}

/* Hlavní stránka — sloupec aktualit vedle feedu (jen desktop, ~20 % šířky) */
.home-feed-layout {
  width: 100%;
}

@media (min-width: 880px) {
  .home-feed-layout--with-aktuality {
    display: grid;
    /* ~80 % feed, ~20 % aktuality */
    grid-template-columns: minmax(0, 4fr) minmax(10.5rem, 1fr);
    gap: var(--space-3);
    align-items: start;
  }

  .home-feed-main {
    min-width: 0;
    max-width: 100%;
  }

  .home-feed-aside {
    min-width: 0;
    max-width: 100%;
    font-size: 0.8rem;
  }

  .home-feed-aside .entity-aside-card {
    padding: 0.55rem 0.65rem;
  }

  .home-feed-aside .entity-aside-title {
    font-size: 0.8rem;
    font-weight: 700;
    margin: 0 0 0.45rem;
    letter-spacing: 0.02em;
  }

  .home-feed-aside .aktualita-aside-list {
    gap: 0.35rem;
  }

  .home-feed-aside .aktualita-list-item {
    flex-direction: column;
    align-items: stretch;
    padding: 0.35rem 0.45rem;
    gap: 0.35rem;
  }

  .home-feed-aside .aktualita-list-item-thumb {
    flex: none;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    max-height: none;
  }

  .home-feed-aside .aktualita-list-item-thumb--empty {
    aspect-ratio: auto;
    height: 2.25rem;
    width: 100%;
  }

  .home-feed-aside .aktualita-list-item-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home-feed-aside .aktualita-list-item-title {
    font-size: 0.76rem;
    line-height: 1.25;
  }

  .home-feed-aside .aktualita-list-item-author {
    font-size: 0.65rem;
  }

  .home-feed-aside .aktualita-list-item-excerpt {
    font-size: 0.68rem;
    line-height: 1.35;
    -webkit-line-clamp: 2;
  }

  .home-feed-aside .aktualita-list-item-meta {
    font-size: 0.62rem;
  }

  .home-feed-aside .aktualita-preview-more {
    margin-top: 0.35rem;
  }

  .home-feed-aside .btn-sm {
    font-size: 0.68rem;
    padding: 0.2rem 0.45rem;
  }

  /* Feed — poměrové zmenšení karet (ne jen zúžení sloupce) */
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid {
    --home-feed-compact-ratio: 0.8;
  }

  .home-feed-layout--with-aktuality .home-feed-main .feed-grid > .post-card.panel,
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid > .post-card-compact.panel,
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid > .poll-card.panel,
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid > .guest-cta-card.panel {
    min-width: 0;
    overflow: hidden;
  }

  .home-feed-layout--with-aktuality .home-feed-main .feed-grid .post-card.panel:hover,
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid .poll-card.panel:hover {
    transform: none;
  }
}

@media (min-width: 880px) and (max-width: 1099.98px) {
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid {
    --feed-card-scale: calc(var(--home-feed-compact-ratio) * 1);
  }
}

@media (min-width: 1100px) {
  .home-feed-layout--with-aktuality .home-feed-main .feed-grid {
    --feed-card-scale: calc(var(--home-feed-compact-ratio) * min(1, calc(3 / var(--feed-columns, 2))));
  }
}

.entity-aktuality-preview .entity-feed-title {
  font-size: 0.85rem;
}

.entity-profile-aside .aktualita-ui .entity-aside-title {
  font-size: 0.78rem;
}

.entity-aktuality-preview--aside .aktualita-list-item {
  padding: 0.4rem 0.5rem;
}

.entity-aktuality-preview--mobile .aktualita-list-item {
  padding: var(--space-2);
}

@media (max-width: 480px) {
  .aktualita-list-item-thumb {
    flex: 0 0 4.25rem;
    width: 4.25rem;
    height: 4.25rem;
  }
}

/* Účet — Moje aktuality */
.account-aktuality-table .account-aktualita-context-cell {
  min-width: 10rem;
}

.account-aktualita-context .post-badge {
  display: inline-block;
  font-size: 0.78rem;
  line-height: 1.35;
  white-space: normal;
}

.account-aktualita-expires {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.75rem;
}

@media (max-width: 640px) {
  .account-aktuality-table th:nth-child(3),
  .account-aktuality-table td:nth-child(3) {
    display: none;
  }
}
