/* Scoped blog, review and article layout. No product-page or footer overrides. */
#nth-category.nth-editorial-index,
#nth-blog.nth-editorial-index {
  width: 100%;
  max-width: 1240px;
  margin: 24px auto;
  padding: 0 24px 28px;
  min-width: 0;
}
.nth-editorial-index *, #nth-single-post * { box-sizing: border-box; }
.nth-editorial-index .nth-cat-hero,
.nth-editorial-index .nth-blog-hero {
  padding: 28px;
  text-align: left;
  margin-bottom: 24px;
  background: linear-gradient(120deg, #eff6ff, #fff 80%);
}
.nth-editorial-index .nth-cat-hero h1,
.nth-editorial-index .nth-blog-hero h1 {
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1.2;
  letter-spacing: -.025em;
}
.nth-editorial-index .desc,
.nth-editorial-index .nth-blog-hero > p { max-width: 76ch; color: #475569; }
.nth-editorial-topics { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 16px; }
.nth-editorial-topics a {
  display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px;
  border: 1px solid #cbd5e1; border-radius: 999px; color: #334155;
  background: #fff; text-decoration: none; font-size: 14px; font-weight: 700;
}
.nth-editorial-topics a[aria-current="page"] { color: #1e40af; background: #dbeafe; border-color: #93c5fd; }
.nth-editorial-filters { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.nth-editorial-filters label { display: grid; gap: 6px; margin: 0; color: #334155; font-weight: 700; font-size: 14px; }
.nth-editorial-search { flex: 1 1 260px; min-width: 0; }
.nth-editorial-sort { flex: 0 1 190px; min-width: 150px; }
.nth-editorial-filters input[type="search"], .nth-editorial-filters select {
  width: 100%; max-width: 100%; min-width: 0; height: 46px; padding: 10px 12px;
  border: 1px solid #94a3b8; border-radius: 10px; background: #fff; color: #0f172a;
  font: inherit; font-size: 16px;
}
.nth-editorial-filters button {
  min-height: 46px; padding: 10px 22px; border-radius: 10px; border: 1px solid #1d4ed8;
  background: #1d4ed8; color: #fff; font-size: 15px; font-weight: 700; cursor: pointer;
}
.nth-editorial-filters button:hover { background: #1e40af; }
.nth-editorial-reset { display: inline-flex; align-items: center; min-height: 46px; color: #1d4ed8; padding: 8px; }
.nth-editorial-index .nth-editorial-results { margin: 14px 0 0; font-size: 14px; font-weight: 600; color: #475569; }
.nth-editorial-index :focus-visible, #nth-single-post :focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
#nth-category.nth-editorial-index .nth-layout { display: block; margin-top: 24px; }
#nth-category.nth-editorial-index .nth-grid,
#nth-category.nth-editorial-index .nth-cat-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 24px;
}
.nth-editorial-index .nth-card,
.nth-editorial-index .nth-cat-card,
.nth-editorial-index .nth-post-card { min-width: 0; box-shadow: 0 4px 18px rgb(15 23 42 / 4%); }
.nth-editorial-index .nth-thumb,
.nth-editorial-index .nth-cat-thumb { aspect-ratio: 16 / 9; min-height: 0; }
.nth-editorial-index .nth-post-thumb img,
.nth-editorial-index .nth-thumb img,
.nth-editorial-index .nth-cat-thumb img { object-fit: contain; width: 100%; height: 100%; background: #f1f5f9; }
.nth-editorial-index .nth-body,
.nth-editorial-index .nth-cat-body { padding: 18px; gap: 10px; }
.nth-editorial-index .nth-title,
.nth-editorial-index .nth-cat-title {
  font-size: 20px; line-height: 1.4; letter-spacing: -.015em; overflow-wrap: anywhere;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
.nth-editorial-index .nth-meta,
.nth-editorial-index .nth-cat-date { display: flex; flex-wrap: wrap; gap: 6px 12px; color: #475569; font-size: 12px; }
.nth-editorial-index .nth-excerpt,
.nth-editorial-index .nth-cat-excerpt { font-size: 14px; line-height: 1.65; color: #475569; }
.nth-editorial-index .nth-read,
.nth-editorial-index .nth-cat-read { min-height: 44px; align-self: flex-start; margin-top: auto; }
#nth-category.nth-editorial-index .nth-sidebar {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 36px; position: static;
}
#nth-category.nth-editorial-index .nth-sidebar .nth-box { margin: 0; }
#nth-category.nth-editorial-index .nth-reviews-research { margin-top: 36px; }
#nth-single-post { width: 100%; max-width: 1160px; }
#nth-single-post .nth-post-title { font-size: clamp(28px, 3.3vw, 42px); line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; }
#nth-single-post .nth-post-meta { gap: 8px 16px; line-height: 1.65; color: #475569; }
#nth-single-post .nth-post-meta a { color: #1d4ed8; text-underline-offset: 3px; }
#nth-single-post .nth-post-thumb img { max-height: 480px; object-fit: contain; background: #f8fafc; }
#nth-single-post .nth-main { max-width: 820px; margin-inline: auto; }
#nth-single-post .nth-content { padding: clamp(18px, 3vw, 36px); font-size: 18px; line-height: 1.8; overflow-wrap: anywhere; }
#nth-single-post .nth-content p { margin: 0 0 1.25em; }
#nth-single-post .nth-content :is(h2,h3,h4) { scroll-margin-top: 160px; line-height: 1.35; margin: 1.7em 0 .7em; }
#nth-single-post .nth-content h2 { font-size: clamp(23px, 2.5vw, 29px); }
#nth-single-post .nth-content h3 { font-size: clamp(20px, 2vw, 24px); }
#nth-single-post .nth-content :first-child { margin-top: 0; }
#nth-single-post .nth-content a { text-underline-offset: 3px; }
#nth-single-post .nth-content :is(img,video,iframe,figure) { max-width: 100%; }
#nth-single-post .nth-content figure { margin-inline: 0; }
#nth-single-post .nth-content :is(pre,table) { max-width: 100%; overflow-x: auto; }
#nth-single-post .nth-content pre { white-space: pre; padding: 16px; background: #f1f5f9; border-radius: 10px; }
#nth-single-post .nth-content table { display: block; border-collapse: collapse; font-size: 15px; }
#nth-single-post .nth-content :is(th,td) { min-width: 110px; padding: 12px; text-align: left; border: 1px solid #cbd5e1; }
#nth-single-post .nth-content th { background: #eff6ff; color: #0f172a; }
#nth-single-post .nth-editorial-toc { margin-bottom: 20px; border: 1px solid #bfdbfe; border-radius: 14px; background: #eff6ff; }
#nth-single-post .nth-editorial-toc summary { min-height: 52px; padding: 14px 18px; cursor: pointer; color: #1e3a8a; font-weight: 750; }
#nth-single-post .nth-editorial-toc summary span { margin-left: 8px; font-size: 13px; font-weight: 500; }
#nth-single-post .nth-editorial-toc ol { margin: 0; padding: 0 24px 18px 40px; }
#nth-single-post .nth-editorial-toc a { display: inline-block; padding: 7px 0; color: #1e40af; line-height: 1.45; text-underline-offset: 3px; }
#nth-single-post .nth-editorial-pages { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
#nth-single-post .nth-editorial-pages .post-page-numbers { display: inline-grid; place-items: center; min-width: 44px; min-height: 44px; border: 1px solid #cbd5e1; border-radius: 8px; }
#nth-single-post .nth-editorial-pages .current { background: #1d4ed8; color: #fff; }
#nth-single-post .nth-related-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
#nth-single-post .nth-related-thumb img { object-fit: contain; background: #f1f5f9; }
@media (max-width: 980px) {
  #nth-category.nth-editorial-index .nth-grid, #nth-category.nth-editorial-index .nth-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #nth-category.nth-editorial-index .nth-sidebar { grid-template-columns: 1fr; }
  #nth-single-post .nth-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  #nth-category.nth-editorial-index, #nth-blog.nth-editorial-index { padding: 0 14px 20px; margin-top: 16px; }
  .nth-editorial-index .nth-cat-hero, .nth-editorial-index .nth-blog-hero { padding: 20px 16px; }
  .nth-editorial-search { flex-basis: 100%; }
  .nth-editorial-sort { flex: 1 1 150px; }
  #nth-category.nth-editorial-index .nth-grid, #nth-category.nth-editorial-index .nth-cat-grid { grid-template-columns: 1fr; gap: 18px; }
  #nth-single-post .nth-post-hero { padding: 20px 16px; }
  #nth-single-post .nth-post-meta { font-size: 13px; }
  #nth-single-post .nth-content { font-size: 17px; }
  #nth-single-post .nth-related-grid { grid-template-columns: 1fr; }
  #nth-single-post .nth-nav { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .nth-editorial-index :is(.nth-card,.nth-cat-card,.nth-post-card), #nth-single-post .nth-related-card { transition: none; transform: none; }
}
