/* TheCinemaPost — Main CSS */

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #111118; }
::-webkit-scrollbar-thumb { background: #2A2A3E; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #E50914; }
.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

/* Shimmer skeleton loader */
@keyframes shimmer {
  0% { background-position: -200% center; }
  100% { background-position: 200% center; }
}
.shimmer {
  background: linear-gradient(90deg, #1A1A2E 25%, #2A2A3E 50%, #1A1A2E 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

/* Line clamp */
.line-clamp-1 { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.line-clamp-3 { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }

/* Article body typography enhancements */
.article-body h2 { font-size: 1.5rem; margin-top: 2rem; margin-bottom: 0.75rem; }
.article-body h3 { font-size: 1.25rem; margin-top: 1.5rem; margin-bottom: 0.5rem; }
.article-body p { margin-bottom: 1.25rem; }
.article-body ul, .article-body ol { padding-left: 1.5rem; margin-bottom: 1.25rem; }
.article-body li { margin-bottom: 0.4rem; }
.article-body blockquote {
  border-left: 4px solid #E50914;
  padding-left: 1rem;
  margin: 1.5rem 0;
  color: #9090A8;
  font-style: italic;
}
.article-body img { border-radius: 12px; max-width: 100%; height: auto; }
.article-body .release-table,
.article-body .release-table-embed {
  margin: 1.5rem 0;
}
.article-body .release-table {
  border: 1px solid #2A2A3E;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(26,26,46,0.96), rgba(17,17,24,0.98));
  box-shadow: 0 12px 28px rgba(0,0,0,.24);
}
.article-body .release-table__scroll { overflow-x: auto; }
.article-body .release-table table {
  width: 100%;
  min-width: 320px;
  border-collapse: collapse;
}
.article-body .release-table th,
.article-body .release-table td {
  padding: 13px 16px;
  vertical-align: top;
  text-align: left;
  white-space: normal;
}
.article-body .release-table th {
  width: 34%;
  min-width: 170px;
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #9BDFFF;
  background: rgba(0, 212, 255, 0.08);
}
.article-body .release-table td {
  color: #E8E8F0;
  line-height: 1.7;
}
.article-body .release-table tr + tr th,
.article-body .release-table tr + tr td {
  border-top: 1px solid rgba(144, 144, 168, 0.16);
}
.article-body .release-table--accent {
  border-color: rgba(229, 9, 20, 0.35);
  background: linear-gradient(135deg, rgba(229,9,20,0.12), rgba(0,212,255,0.07) 42%, rgba(17,17,24,0.98));
}
.article-body .release-table--accent th {
  color: #FFFFFF;
  background: rgba(229, 9, 20, 0.18);
}
.article-body .release-table--minimal {
  border-radius: 12px;
  background: #111118;
  box-shadow: none;
}
.article-body .release-table--minimal th {
  color: #B5B5C8;
  background: transparent;
}
.article-body .release-table--minimal tr:nth-child(odd) th,
.article-body .release-table--minimal tr:nth-child(odd) td {
  background: rgba(255,255,255,0.02);
}

/* Star ratings */
.star-rating { color: #FFD700; }
.star-empty { color: #2A2A3E; }

/* Post card hover shadow */
.post-card:hover { box-shadow: 0 8px 32px rgba(229, 9, 20, 0.1); }

/* Category color tags */
[data-cat="bollywood"] { color: #E50914; }
[data-cat="hollywood"] { color: #00D4FF; }
[data-cat="south-cinema"] { color: #FFD700; }
[data-cat="ott"] { color: #7B2FBE; }
[data-cat="reviews"] { color: #FF7A00; }

/* Ticker animation */
@keyframes ticker {
  0%   { transform: translateX(100vw); }
  100% { transform: translateX(-100%); }
}

/* Smooth scroll */
html { scroll-behavior: smooth; }

/* Focus styles */
:focus-visible { outline: 2px solid #00D4FF; outline-offset: 2px; border-radius: 4px; }

/* Toast styles */
.toast {
  padding: 12px 18px;
  border-radius: 10px;
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 600;
  animation: toast-in 0.3s ease;
  border: 1px solid;
}
.toast-success { background: #064e3b; border-color: #10b981; color: #6ee7b7; }
.toast-error   { background: #450a0a; border-color: #ef4444; color: #fca5a5; }
.toast-info    { background: #0c1a2e; border-color: #00D4FF; color: #7dd3fc; }
@keyframes toast-in { from { opacity:0; transform: translateY(10px); } to { opacity:1; transform: translateY(0); } }

/* Aspect ratios */
.aspect-video { aspect-ratio: 16/9; }
.aspect-poster { aspect-ratio: 2/3; }

/* Admin table */
table th, table td { white-space: nowrap; }
.article-body .release-table th,
.article-body .release-table td { white-space: normal; }
.article-body figure { margin: 1.5rem 0; }
.article-body figcaption { text-align: center; font-size: 0.8rem; color: #9090A8; margin-top: 0.5rem; font-style: italic; }
