/* Generated CSS bundle. Do not edit manually. */

/* source: storage/app/public/frontend/theme/css/vars/newswire.css */
/* Generated from Theme Manager Info tokens. Do not edit manually. */
:root {
  --theme-color-primary: #cc0000;
  --theme-primary: #cc0000;
  --theme-color-text: #0c0c0c;
  --theme-text: #0c0c0c;
  --theme-color-background: #ffffff;
  --theme-background: #ffffff;
  --theme-layout-container-max: 1440px;
  --container-max: 1440px;
  --theme-layout-section-gap: 48px;
  --section-gap: 48px;
  --theme-menu-height: 40px;
  --menu-height: 40px;
  --theme-menu-banner-height: 0px;
  --menu-banner-height: 0px;
  --theme-menu-gap: 24px;
  --menu-gap: 24px;
  --theme-menu-background: #ffffff;
  --menu-background: #ffffff;
  --theme-menu-text: #0c0c0c;
  --menu-text: #0c0c0c;
  --theme-blog-card-radius: 0px;
  --blog-card-radius: 0px;
  --theme-blog-card-border-bottom: 1px solid #e6e6e6;
  --blog-card-border-bottom: 1px solid #e6e6e6;
}

/* source: frontend/theme/css/newswire.css */
/* Theme: Newswire — news-wire layout: black on white, red accents, tight 15-16px sans, hairline rules.
   Page shell 1440px with 32px gutters; modules bring their own styling from their .css files. */
body[data-theme="newswire"] {
  --theme-primary: var(--theme-color-primary, #cc0000);
  --theme-text: var(--theme-color-text, #0c0c0c);
  --theme-background: var(--theme-color-background, #ffffff);
  --theme-container-max: var(--theme-layout-container-max, 1440px);
  --container-max: var(--theme-container-max);
  --section-gap: var(--theme-layout-section-gap, 48px);
  --menu-height: var(--theme-menu-height, 40px);
  --menu-background: var(--theme-menu-background, #ffffff);
  --menu-text: var(--theme-menu-text, #0c0c0c);
  --nw-ink: #0c0c0c;
  --nw-line: #e6e6e6;
  --nw-grey: #6e6e6e;
  --nw-red: #cc0000;
  margin: 0;
  padding: 0;
  background: #fff;
  color: var(--nw-ink);
  font-family: helveticaneue, Helvetica, Arial, Utkal, sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

body[data-theme="newswire"] *,
body[data-theme="newswire"] *::before,
body[data-theme="newswire"] *::after { box-sizing: border-box; }

body[data-theme="newswire"] a { color: inherit; }

/* Page shell: contained modules (header and footer bring their own full-width bars) */
body[data-theme="newswire"] .module-top-new--newswire-top-stories,
body[data-theme="newswire"] .module-categories--newswire-sections,
body[data-theme="newswire"] .module-taxonomy-post-list--newswire-section,
body[data-theme="newswire"] .module-article--newswire-article {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
body[data-theme="newswire"] .module-top-new--newswire-top-stories,
body[data-theme="newswire"] .module-categories--newswire-sections,
body[data-theme="newswire"] .module-taxonomy-post-list--newswire-section { padding-left: 32px; padding-right: 32px; }
body[data-theme="newswire"] .module-top-new--newswire-top-stories { padding-top: 30px; }
body[data-theme="newswire"] .module-categories--newswire-sections { padding-top: 0; }

@media (max-width: 1023px) {
  body[data-theme="newswire"] .module-top-new--newswire-top-stories,
  body[data-theme="newswire"] .module-categories--newswire-sections,
  body[data-theme="newswire"] .module-taxonomy-post-list--newswire-section { padding-left: 16px; padding-right: 16px; }
}

/* Search results / static pages inherit the same ink + rules */
body[data-theme="newswire"] h1,
body[data-theme="newswire"] h2,
body[data-theme="newswire"] h3 { font-family: inherit; }
body[data-theme="newswire"] :focus-visible { outline-color: #000; }

/* source: resources/views/frontend/blade/common/menu/newswire-nav.css */
/* Newswire header — 40px bar, 15px/500 links, black hairline underneath */
.newswire-nav { position: relative; z-index: 20; background: #fff; color: #0c0c0c; border-bottom: 1px solid #0c0c0c; font-family: helveticaneue, Helvetica, Arial, Utkal, sans-serif; }
.newswire-nav__bar { display: flex; align-items: center; justify-content: space-between; height: 40px; max-width: 1440px; margin: 0 auto; padding: 0 32px; box-sizing: border-box; }
.newswire-nav__left, .newswire-nav__right { display: flex; align-items: center; min-width: 0; }
.newswire-nav__burger, .newswire-nav__search-btn { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 32px; padding: 0; background: none; border: 0; cursor: pointer; }
.newswire-nav__burger:focus-visible, .newswire-nav__search-btn:focus-visible, .newswire-nav__link:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.newswire-nav__brand { display: inline-flex; align-items: center; height: 40px; margin: 0 12px 0 24px; color: #cc0000; text-decoration: none; flex: none; }
.newswire-nav__logo { display: block; height: 22px; width: auto; max-width: 140px; object-fit: contain; }
.newswire-nav__brand-text { font-size: 22px; line-height: 22px; font-weight: 900; letter-spacing: -1.2px; color: #cc0000; text-transform: uppercase; white-space: nowrap; }
.newswire-nav__items { display: flex; align-items: center; min-width: 0; margin-left: 4px; }
.newswire-nav__item { position: relative; flex: none; padding: 0 12px; }
.newswire-nav__link { display: inline-block; height: 40px; font-size: 15px; line-height: 40px; font-weight: 500; color: #0c0c0c; text-decoration: none; background: none; border: 0; padding: 0; cursor: pointer; font-family: inherit; white-space: nowrap; }
.newswire-nav__link:hover, .newswire-nav__link.is-active { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.newswire-nav__caret { display: inline-block; width: 7px; height: 7px; margin: 0 0 3px 6px; border-right: 1.5px solid #0c0c0c; border-bottom: 1.5px solid #0c0c0c; transform: rotate(45deg); }
.newswire-nav__more-list { position: absolute; left: 0; top: 40px; z-index: 30; min-width: 200px; margin: 0; padding: 8px 0; list-style: none; background: #fff; border: 1px solid #e6e6e6; box-shadow: 0 6px 16px rgba(0, 0, 0, .12); }
.newswire-nav__more-list a { display: block; padding: 8px 16px; font-size: 15px; line-height: 20px; font-weight: 500; color: #0c0c0c; text-decoration: none; }
.newswire-nav__more-list a:hover { background: #f2f2f2; }
.newswire-nav__latest { display: inline-flex; align-items: center; margin: 0 24px; font-size: 15px; line-height: 20px; font-weight: 500; color: #0c0c0c; text-decoration: none; }
.newswire-nav__latest:hover { text-decoration: underline; }
.newswire-nav__dot { width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #cc0000; }
.newswire-nav__search { display: flex; gap: 8px; max-width: 1376px; margin: 0 auto; padding: 12px 32px; box-sizing: border-box; border-top: 1px solid #e6e6e6; }
.newswire-nav__search[hidden] { display: none; }
.newswire-nav__search input { flex: 1; min-width: 0; height: 40px; padding: 0 12px; font: inherit; font-size: 16px; border: 1px solid #0c0c0c; border-radius: 0; }
.newswire-nav__search button { height: 40px; padding: 0 20px; font: inherit; font-size: 15px; font-weight: 700; color: #fff; background: #0c0c0c; border: 0; cursor: pointer; }
.newswire-nav__drawer { position: absolute; left: 0; right: 0; top: 100%; z-index: 25; background: #fff; border-bottom: 1px solid #0c0c0c; box-shadow: 0 8px 20px rgba(0, 0, 0, .12); }
.newswire-nav__drawer[hidden] { display: none; }
.newswire-nav__drawer-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(192px, 1fr)); gap: 0 0; max-width: 1376px; margin: 0 auto; padding: 24px 32px 32px; list-style: none; box-sizing: border-box; }
.newswire-nav__drawer-list a { display: block; padding: 8px 0; font-size: 18px; line-height: 23px; font-weight: 700; color: #0c0c0c; text-decoration: none; }
.newswire-nav__drawer-list a:hover { text-decoration: underline; }

@media (max-width: 1023px) {
    .newswire-nav__bar { padding: 0 16px; }
    .newswire-nav__items { overflow-x: auto; scrollbar-width: none; }
    .newswire-nav__items::-webkit-scrollbar { display: none; }
    .newswire-nav__latest { display: none; }
}
@media (max-width: 639px) {
    .newswire-nav__brand { margin-left: 12px; }
    .newswire-nav__item { padding: 0 8px; }
}

/* source: resources/views/frontend/blade/home/top-new/newswire-top-stories.css */
/* Newswire top stories — 3 columns: 324 / 648 / 324 with 40px gutters (1376px content) */
.nw-ts { --nw-ink: #0c0c0c; --nw-line: #e6e6e6; --nw-grey: #6e6e6e; --nw-red: #cc0000; margin: 0 0 48px; color: var(--nw-ink); }
.nw-ts a { color: inherit; text-decoration: none; }
.nw-ts__grid { display: grid; grid-template-columns: minmax(0, 324fr) minmax(0, 648fr) minmax(0, 324fr); column-gap: 40px; align-items: start; }
.nw-ts__col { min-width: 0; }
.nw-ts__link { display: block; }
.nw-ts__link:hover .nw-ts__headline,
.nw-ts__link:hover .nw-ts__sub,
.nw-ts__link:hover .nw-ts__lead-title,
.nw-ts__link:hover .nw-ts__cell-title,
.nw-ts__link:hover .nw-ts__row-title { text-decoration: underline; text-underline-offset: 2px; }
.nw-ts__link:focus-visible { outline: 2px solid #000; outline-offset: 2px; }

/* media */
.nw-ts__media { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; background: #e6e6e6; overflow: hidden; }
.nw-ts__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nw-ts__img--empty { display: block; width: 100%; height: 100%; background: #e6e6e6; }
.nw-ts__chip { position: absolute; left: 12px; top: 3px; z-index: 1; font-size: 14px; line-height: 20px; font-weight: 700; padding: 0 4px; }
.nw-ts__chip--light { background: #fff; color: #0c0c0c; }
.nw-ts__chip--red { background: var(--nw-red); color: #fff; left: 12px; top: 12px; padding: 0 8px; }

/* left + right image cards */
.nw-ts__stack { margin-bottom: 24px; }
.nw-ts__card .nw-ts__headline { display: block; margin-top: 8px; font-size: 20px; line-height: 26px; font-weight: 500; }
.nw-ts__text { margin-top: 24px; }
.nw-ts__sub { display: block; font-size: 16px; line-height: 22px; font-weight: 400; letter-spacing: .1px; }

/* center lead */
.nw-ts__lead-title { margin: 0 0 16px; text-align: center; font-size: 36px; line-height: 38px; font-weight: 700; color: #000; letter-spacing: -.2px; }
.nw-ts__headline--lead { display: block; margin-top: 24px; font-size: 20px; line-height: 26px; font-weight: 500; }
.nw-ts__text--center { margin-top: 24px; }

/* "bar" section title (black bar + uppercase) */
.nw-ts__bar { position: relative; margin: 0 0 16px; padding: 0 0 0 10px; font-size: 16px; line-height: 20px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: #000; }
.nw-ts__bar::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: #000; }
.nw-ts__tri { margin-top: 26px; }
.nw-ts__tri-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 24px; }
.nw-ts__media--cell { aspect-ratio: 16 / 9; }
.nw-ts__cell-title { display: block; margin-top: 9px; font-size: 16px; line-height: 20px; font-weight: 400; letter-spacing: .1px; }

/* right column */
.nw-ts__card--right { margin-bottom: 0; }
.nw-ts__rows { margin-top: 0; }
.nw-ts__row { padding: 12px 0; border-bottom: 1px solid var(--nw-line); }
.nw-ts__row:first-child { margin-top: 16px; border-top: 1px solid var(--nw-line); }
.nw-ts__row:last-child { border-bottom: 0; }
.nw-ts__link--row { display: grid; grid-template-columns: 130px minmax(0, 1fr); column-gap: 12px; align-items: start; }
.nw-ts__thumb { display: block; width: 130px; aspect-ratio: 16 / 9; background: #e6e6e6; overflow: hidden; }
.nw-ts__thumb .nw-ts__img { height: 100%; }
.nw-ts__row-title { display: block; font-size: 16px; line-height: 22px; font-weight: 400; letter-spacing: .1px; }

@media (max-width: 1199px) {
    .nw-ts__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); column-gap: 32px; }
    .nw-ts__col--center { grid-column: 2; grid-row: 1 / span 2; }
    .nw-ts__col--right { grid-column: 1; grid-row: 2; }
    .nw-ts__col--left { grid-column: 1; grid-row: 1; }
}
@media (max-width: 767px) {
    .nw-ts__grid { display: flex; flex-direction: column; }
    .nw-ts__col--center { order: -1; }
    .nw-ts__col--left, .nw-ts__col--right { width: 100%; }
    .nw-ts__lead-title { font-size: 28px; line-height: 32px; }
    .nw-ts__tri-grid { column-gap: 12px; }
    .nw-ts__cell-title { font-size: 14px; line-height: 18px; }
    .nw-ts__col--center { margin-bottom: 24px; }
}

/* source: resources/views/frontend/blade/common/categories/newswire-sections.css */
/* Newswire section blocks — 3 columns of 443px with 24px gutters */
.nw-sec { margin: 0 0 48px; color: #0c0c0c; }
.nw-sec a { color: inherit; text-decoration: none; }
.nw-sec__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 24px; row-gap: 48px; align-items: start; }
.nw-sec__block { min-width: 0; }
.nw-sec__bar { position: relative; margin: 0 0 16px; padding: 0 0 0 10px; font-size: 16px; line-height: 20px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: #000; }
.nw-sec__bar::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: #000; }
.nw-sec__bar a:hover { text-decoration: underline; text-underline-offset: 2px; }
.nw-sec__link { display: block; }
.nw-sec__link:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.nw-sec__link:hover .nw-sec__headline,
.nw-sec__link:hover .nw-sec__sub { text-decoration: underline; text-underline-offset: 2px; }
.nw-sec__media { display: block; width: 100%; aspect-ratio: 16 / 9; background: #e6e6e6; overflow: hidden; }
.nw-sec__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nw-sec__headline { display: block; margin-top: 12px; font-size: 20px; line-height: 26px; font-weight: 500; }
.nw-sec__text { margin-top: 24px; }
.nw-sec__sub { display: block; font-size: 16px; line-height: 22px; font-weight: 400; letter-spacing: .1px; }

@media (max-width: 1023px) {
    .nw-sec__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 639px) {
    .nw-sec__grid { grid-template-columns: minmax(0, 1fr); row-gap: 32px; }
}

/* source: resources/views/frontend/blade/common/footer/newswire-footer.css */
/* Newswire footer — #0c0c0c, 48px/24px padding, 192px section columns (7 across at 1440), 1px dividers */
.newswire-foot { background: #0c0c0c; color: #e6e6e6; padding: 48px 0 24px; font-family: helveticaneue, Helvetica, Arial, Utkal, sans-serif; }
.newswire-foot a { color: #e6e6e6; text-decoration: none; }
.newswire-foot a:hover { text-decoration: underline; color: #fff; }
.newswire-foot a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.newswire-foot__inner { max-width: 1440px; margin: 0 auto; padding: 0 48px; box-sizing: border-box; }
.newswire-foot__search { position: relative; display: block; margin: 0 0 32px; }
.newswire-foot__search input { display: block; width: 100%; height: 48px; padding: 0 56px 0 16px; box-sizing: border-box; font: inherit; font-size: 16px; color: #0c0c0c; background: #fff; border: 0; border-radius: 4px; }
.newswire-foot__search button { position: absolute; right: 8px; top: 8px; width: 42px; height: 32px; padding: 0; background: none; border: 0; cursor: pointer; }
.newswire-foot__sections { display: grid; grid-template-columns: repeat(auto-fill, minmax(192px, 1fr)); column-gap: 0; row-gap: 24px; align-items: start; }
.newswire-foot__section { min-width: 0; padding-right: 12px; }
.newswire-foot__heading { display: block; margin: 0 0 16px; font-size: 16px; line-height: 20px; font-weight: 700; color: #e6e6e6; }
.newswire-foot__list { margin: 0; padding: 0; list-style: none; }
.newswire-foot__list li { margin: 0 0 4px; }
.newswire-foot__list a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 14px; line-height: 18px; font-weight: 400; }
.newswire-foot__divider { height: 0; margin: 24px 0; border: 0; border-top: 1px solid #3a3a3a; }
.newswire-foot__row { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; }
.newswire-foot__brand { font-size: 28px; line-height: 32px; font-weight: 900; letter-spacing: -1.2px; text-transform: uppercase; color: #fff; }
.newswire-foot__quick { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 24px; }
.newswire-foot__quick a { font-size: 14px; line-height: 20px; font-weight: 400; }
.newswire-foot__legal { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 0; padding: 0; list-style: none; }
.newswire-foot__legal a { font-size: 12px; line-height: 20px; font-weight: 400; }
.newswire-foot__copy { margin: 24px 0 0; font-size: 12px; line-height: 20px; font-weight: 400; color: #e6e6e6; }

@media (max-width: 767px) {
    .newswire-foot__inner { padding: 0 16px; }
    .newswire-foot__sections { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .newswire-foot__row { flex-direction: column; align-items: flex-start; }
    .newswire-foot__quick { justify-content: flex-start; }
}

/* source: resources/views/frontend/blade/common/taxonomy-post-list/newswire-section.css */
/* Newswire section/category page — title 42/48, hero 664 / 332 / 332 (gap 24), grid-4 of 326px */
.nw-cat { color: #0c0c0c; margin: 0 0 48px; }
.nw-cat a { color: inherit; text-decoration: none; }
.nw-cat__top { padding: 32px 0 32px; }
.nw-cat__title { margin: 0; font-size: 42px; line-height: 48px; font-weight: 700; color: #0c0c0c; }
.nw-cat__link { display: block; }
.nw-cat__link:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.nw-cat__link:hover .nw-cat__headline,
.nw-cat__link:hover .nw-cat__sub { text-decoration: underline; text-underline-offset: 2px; }
.nw-cat__media { display: block; width: 100%; aspect-ratio: 16 / 9; background: #e6e6e6; overflow: hidden; }
.nw-cat__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nw-cat__headline { display: block; margin-top: 12px; font-size: 20px; line-height: 26px; font-weight: 500; }
.nw-cat__sub { display: block; font-size: 16px; line-height: 22px; font-weight: 400; letter-spacing: .1px; }
.nw-cat__hero { display: grid; grid-template-columns: minmax(0, 664fr) minmax(0, 332fr) minmax(0, 332fr); column-gap: 24px; align-items: start; }
.nw-cat__a, .nw-cat__b, .nw-cat__c { min-width: 0; }
.nw-cat__card { margin: 0 0 24px; }
.nw-cat__card--strip { margin-bottom: 24px; }
.nw-cat__text { padding: 12px 0; border-top: 1px solid #e6e6e6; }
.nw-cat__a .nw-cat__card + .nw-cat__text,
.nw-cat__b .nw-cat__card + .nw-cat__text { margin-top: -12px; }
.nw-cat__bar { position: relative; margin: 0 0 16px; padding: 0 0 0 10px; font-size: 16px; line-height: 20px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: #000; }
.nw-cat__bar::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: #000; }
.nw-cat__more { margin-top: 48px; }
.nw-cat__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 24px; row-gap: 32px; }
.nw-cat__card--grid { margin: 0; }
.nw-cat__card--grid .nw-cat__headline { margin-top: 8px; font-size: 16px; line-height: 20px; font-weight: 400; letter-spacing: .1px; }
.nw-cat__pager { display: flex; justify-content: center; gap: 12px; margin-top: 40px; }
.nw-cat__btn { display: inline-block; padding: 12px 28px; font-size: 15px; line-height: 20px; font-weight: 700; color: #0c0c0c; border: 1px solid #0c0c0c; border-radius: 2px; }
.nw-cat__btn:hover { background: #f2f2f2; }
.nw-cat__btn--dark { color: #fff; background: #0c0c0c; }
.nw-cat__btn--dark:hover { background: #333; }
.nw-cat__empty { margin: 0; font-size: 18px; color: #6e6e6e; }

@media (max-width: 1023px) {
    .nw-cat__hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .nw-cat__a { grid-column: 1 / -1; }
    .nw-cat__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 639px) {
    .nw-cat__title { font-size: 32px; line-height: 38px; }
    .nw-cat__hero { grid-template-columns: minmax(0, 1fr); }
}

/* source: resources/views/frontend/blade/detail/article/newswire-article.css */
/* Newswire article — 48px page padding, 318 / 660 / 318 grid (24px gaps), serif body 18/32 */
.nw-art { color: #0c0c0c; font-family: helveticaneue, Helvetica, Arial, Utkal, sans-serif; margin: 0 0 48px; }
.nw-art a { color: inherit; }
.nw-art__head { padding: 0 48px; }
.nw-art__crumbs { display: flex; align-items: center; padding: 24px 0 14px; font-size: 12px; line-height: 14px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase; }
.nw-art__crumb { text-decoration: none; color: #0c0c0c; }
.nw-art__crumb:hover { text-decoration: underline; }
.nw-art__sep { margin: 0 8px; color: #b1b1b1; font-size: 14px; }
.nw-art__read { color: #6e6e6e; font-weight: 500; }
.nw-art__title { position: relative; margin: 0; padding: 0 0 0 0; font-size: 56px; line-height: 67.5px; font-weight: 700; color: #0c0c0c; letter-spacing: -.3px; }
.nw-art__bar { position: absolute; left: -48px; top: 6px; bottom: 6px; width: 12px; background: #cc0000; }
.nw-art__updated { margin-top: 18px; font-size: 11.88px; line-height: 20px; font-weight: 500; letter-spacing: .3px; text-transform: uppercase; color: #0c0c0c; }
.nw-art__byline { margin-top: 12px; font-size: 14px; line-height: 20px; }
.nw-art__byline span { font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }

.nw-art__layout { display: grid; grid-template-columns: 318px minmax(0, 660px) 318px; column-gap: 24px; padding: 32px 48px 0; justify-content: center; }
.nw-art__main { grid-column: 1 / span 2; grid-row: 1; min-width: 0; }
.nw-art__rail { grid-column: 3; grid-row: 1 / span 2; }
.nw-art__hero { margin: 0 0 24px; background: #e6e6e6; }
.nw-art__hero img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.nw-art__share { grid-column: 1; grid-row: 2; display: flex; gap: 14px; align-items: flex-start; align-self: start; position: sticky; top: 24px; padding-top: 6px; }
.nw-art__share-btn { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; background: #fff; border: 1px solid #0c0c0c; border-radius: 50%; cursor: pointer; text-decoration: none; }
.nw-art__share-btn:hover { background: #f2f2f2; }
.nw-art__share-btn:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.nw-art__article { grid-column: 2; grid-row: 2; min-width: 0; }
.nw-art__body { font-family: noto_serif, Georgia, "Times New Roman", Times, serif; font-size: 18px; line-height: 32px; color: #0c0c0c; overflow-wrap: anywhere; }
.nw-art__body p { margin: 0 0 24px; }
.nw-art__body h2, .nw-art__body h3, .nw-art__body h4 { margin: 32px 0 16px; font-family: helveticaneue, Helvetica, Arial, sans-serif; font-weight: 700; line-height: 1.25; }
.nw-art__body h2 { font-size: 28px; }
.nw-art__body h3 { font-size: 22px; }
.nw-art__body a { text-decoration: underline; text-underline-offset: 3px; }
.nw-art__body img, .nw-art__body video, .nw-art__body iframe { max-width: 100%; height: auto; }
.nw-art__body figure { margin: 0 0 24px; }
.nw-art__body figcaption { margin-top: 8px; font-family: helveticaneue, Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px; color: #6e6e6e; }
.nw-art__body blockquote { margin: 0 0 24px; padding: 0 0 0 20px; border-left: 4px solid #cc0000; font-size: 20px; line-height: 32px; }
.nw-art__body ul, .nw-art__body ol { margin: 0 0 24px; padding-left: 24px; }
.nw-art__body li { margin: 0 0 8px; }

.nw-art__skeleton { padding: 24px 48px; }
.nw-art__sk { background: #eee; margin-bottom: 16px; }
.nw-art__sk--crumb { width: 160px; height: 14px; }
.nw-art__sk--title { width: 80%; height: 120px; }
.nw-art__sk--meta { width: 200px; height: 20px; }
.nw-art__sk--image { width: 70%; aspect-ratio: 16 / 9; }

@media (max-width: 1199px) {
    .nw-art__layout { grid-template-columns: minmax(0, 660px); justify-content: center; }
    .nw-art__main, .nw-art__article { grid-column: 1; }
    .nw-art__rail { display: none; }
    .nw-art__share { grid-column: 1; grid-row: 2; position: static; padding: 0 0 16px; }
    .nw-art__article { grid-row: 3; }
    .nw-art__title { font-size: 44px; line-height: 52px; }
}
@media (max-width: 767px) {
    .nw-art__head, .nw-art__layout, .nw-art__skeleton { padding-left: 16px; padding-right: 16px; }
    .nw-art__bar { left: -16px; width: 8px; }
    .nw-art__title { font-size: 32px; line-height: 38px; }
    .nw-art__body { font-size: 17px; line-height: 30px; }
}

/* source: resources/views/frontend/blade/detail/article-header/standard.css */
/* module css */
.module-article-header__title {
  margin: 0 0 12px;
  padding-top: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 52px;
  line-height: 1.08;
}

.module-article-header__meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 0 12px;
  margin-bottom: 0;
  font-size: 26px;
  font-weight: 600;
  color: #5f5f5a;
}

.module-article-header__meta-icon {
  font-size: 14px;
  line-height: 1;
}

@media (max-width: 768px) {
  .module-article-header__title {
    font-size: 38px;
  }
}



/* skeleton: modern opinion baseline */
.module-card--skeleton {
  pointer-events: none;
}

.module-card__image--skeleton,
.module-card__title--skeleton,
.module-card__meta--skeleton,
.module-card__summary--skeleton,
.module-card__image-wrap--skeleton,
.module-article-taxonomy__chip--skeleton {
  background: #eeeeee;
  border-radius: 0;
  animation: module-skeleton-pulse 1.2s ease-in-out infinite;
}

.module-card__title--skeleton {
  height: 18px;
  width: 80%;
}

.module-card__meta--skeleton {
  height: 12px;
  width: 45%;
}

.module-card__summary--skeleton {
  display: block;
  height: 12px;
  width: 90%;
  margin: 0;
}

.module-article-taxonomy__chip--skeleton {
  display: inline-block;
  width: 108px;
}

@keyframes module-skeleton-pulse {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.55;
  }

  100% {
    opacity: 1;
  }
}

/* source: resources/views/frontend/blade/detail/article-content/standard.css */
/* detail/standard.blade */
.module-article-thumbnail {
  width: 100%;
  max-width: 760px;
  margin: 28px auto;
  overflow: hidden;
  border-radius: 8px;
  background: #f2f4f7;
  text-align: center;
}

.module-article-thumbnail img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 640px;
  margin: 0 auto;
  object-fit: contain;
}

.module-article-content__body {
  color: var(--theme-text, #2f2a2a);
  font-size: 20px !important;
  line-height: 1.68;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.module-article-content__body p {
  font-size: 20px !important;
  line-height: 1.68 !important;
}

/* Editor hay chen font-size inline trong p; ep ve size paragraph cua theme. */
.module-article-content__body p :where(span, font, small, strong, b, em, i, u, s, mark, a) {
  font-size: inherit !important;
  line-height: inherit !important;
}

.module-article-content__body a {
  color: var(--theme-primary, #2e7e9e);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.module-article-content__body h2 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 38px !important;
  line-height: 1.16;
}

.module-article-content__body h3 {
  font-family: "Alegreya Sans", "Helvetica Neue", Arial, sans-serif;
  color: #242424;
}

/*
 * Keep provider-owned ad mounts and iframes out of article media sizing.
 * Ads can be nested in wrappers from imported article HTML, so exclude their
 * iframes by any .in-article-ad ancestor rather than only a direct child.
 */
.module-article-content__body > img,
.module-article-content__body > video,
.module-article-content__body > embed,
.module-article-content__body > object,
.module-article-content__body > table,
.module-article-content__body > :not(.in-article-ad) img,
.module-article-content__body > :not(.in-article-ad) video,
.module-article-content__body > :not(.in-article-ad) embed,
.module-article-content__body > :not(.in-article-ad) object,
.module-article-content__body > :not(.in-article-ad) table {
  max-width: 100%;
}

.module-article-content__body > iframe:not(.in-article-ad iframe),
.module-article-content__body > :not(.in-article-ad) iframe:not(.in-article-ad iframe) {
  max-width: 100%;
  width: 100%;
}

.module-article-content__body pre,
.module-article-content__body code {
  max-width: 100%;
  white-space: pre-wrap;
  word-break: break-word;
}

@media (max-width: 768px) {
  .module-article-content__body {
    font-size: 17px !important;
    line-height: 1.64;
  }

  .module-article-content__body p {
    font-size: 17px !important;
    line-height: 1.64 !important;
  }

  .module-article-content__body h2 {
    font-size: 32px !important;
  }
}



/* skeleton: modern opinion baseline */
.module-card--skeleton {
  pointer-events: none;
}

.module-card__image--skeleton,
.module-card__title--skeleton,
.module-card__meta--skeleton,
.module-card__summary--skeleton,
.module-card__image-wrap--skeleton,
.module-article-taxonomy__chip--skeleton {
  background: #eeeeee;
  border-radius: 0;
  animation: module-skeleton-pulse 1.2s ease-in-out infinite;
}

.module-card__title--skeleton {
  height: 18px;
  width: 80%;
}

.module-card__meta--skeleton {
  height: 12px;
  width: 45%;
}

.module-card__summary--skeleton {
  display: block;
  height: 12px;
  width: 90%;
  margin: 0;
}

.module-article-taxonomy__chip--skeleton {
  display: inline-block;
  width: 108px;
}

@keyframes module-skeleton-pulse {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.55;
  }

  100% {
    opacity: 1;
  }
}

/* source: resources/views/frontend/blade/detail/comment-box.css */
.module-comment-box { margin-top: 1.5rem; width: 100%; max-width: 100%; overflow-x: hidden; }
    .comment-box__panel {
        border: 1px solid rgba(15, 23, 42, 0.08);
        background: #fff;
        padding: 18px;
        border-radius: 8px;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    }

    .module-comment-box,
    .module-comment-box * {
        box-sizing: border-box;
        max-width: 100%;
    }

    .comment-box__header { margin-bottom: 0.9rem; }
    .comment-box__title { margin: 0; color: var(--theme-heading-title-color, var(--theme-color-title, #1a2b49)); font-size: 20px; line-height: 1.2; font-weight: 800; text-transform: uppercase; text-decoration: none; }
    .module-comment-box .comment-box__title.module__heading-title {
        font-size: 20px !important;
        line-height: 1.2 !important;
        margin: 0 !important;
        text-decoration: none !important;
    }
    .module-comment-box .comment-box__title.module__heading-title::before,
    .module-comment-box .comment-box__title.module__heading-title::after {
        display: none !important;
        content: none !important;
    }
    .comment-box__count { font-size: inherit; font-weight: inherit; color: inherit; }

    .comment-box__count::before {
        content: "(";
    }

    .comment-box__count::after {
        content: ")";
    }

    .comment-box__identity { display: flex; align-items: center; gap: 0.35rem; margin-bottom: 0.45rem; font-size: 13px; color: #6a7488; }

    .comment-box__change-name { border: 0; background: transparent; color: var(--theme-color-main, #1d4ed8); cursor: pointer; text-decoration: underline; font-size: 13px; padding: 0; }

    .comment-box__form textarea { width: 100%; display: block; min-height: 88px; border: 1px solid #d7dde7; border-radius: 8px; padding: 10px 12px; font-size: 15px; line-height: 1.45; resize: vertical; background: #fff; color: #172033; }

    .comment-box__actions { margin-top: 0.45rem; display: flex; align-items: center; gap: 0.55rem; }

    .comment-box__actions button, .comment-box__load-more { border: 0; border-radius: 7px; background: var(--theme-color-main, #1d4ed8); color: #fff; padding: 9px 14px; font-weight: 700; font-size: 13px; line-height: 1.2; cursor: pointer; }

    .comment-box__feedback { font-size: 13px; color: #6a7488; }

    .comment-box__hidden {
        display: none !important;
    }

    .comment-box__list { margin-top: 0.75rem; display: grid; gap: 12px; border-top: 1px solid #e6e9ef; padding-top: 12px; }

    .comment-item {
        padding: 14px;
        border: 1px solid #e6e9ef;
        border-radius: 8px;
        background: #fff;
    }

    .comment-item__body {
        display: flex;
        gap: 12px;
        align-items: flex-start;
    }

    .comment-item__avatar {
        width: 42px;
        height: 42px;
        flex: 0 0 42px;
        min-width: 42px;
        min-height: 42px;
        max-width: 42px;
        max-height: 42px;
        aspect-ratio: 1 / 1;
        flex-shrink: 0;
        border-radius: 50%;
        background: #eef2f7;
        background: color-mix(in srgb, var(--theme-color-main, #1d4ed8) 12%, #eef2f7);
        color: var(--theme-color-main, #1d4ed8);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 13px;
        font-weight: 800;
        line-height: 1;
        text-transform: uppercase;
    }

    .comment-item__avatar span { display: block; max-width: 34px; overflow: hidden; text-align: center; }

    .comment-item__main { min-width: 0; flex: 1; }

    .comment-item__meta { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 7px; }

    .module-comment-box .comment-item__meta .comment-item__author {
        color: #9a6b11 !important;
        font-weight: 800;
        font-size: 14px !important;
        line-height: 1.3;
        text-transform: none;
        letter-spacing: 0;
    }

    .module-comment-box .comment-item__content {
        margin: 0;
        color: #111827;
        line-height: 1.55;
        white-space: pre-wrap;
        font-size: 15px !important;
        font-weight: 400 !important;
    }

    .comment-item__footer { margin-top: 10px; display: flex; justify-content: flex-end; padding-bottom: 0; border-bottom: 0; }

    .comment-item__time { font-size: 12px; line-height: 1.35; color: #64748b; white-space: nowrap; text-align: right; }

    .comment-item__reply-btn {
        border: 1px solid #e1e6ef;
        border-radius: 999px;
        background: #fff;
        color: #9a6b11;
        font-size: 12px;
        font-weight: 700;
        padding: 4px 10px;
        cursor: pointer;
        text-decoration: none;
    }

    .comment-item__reply-link {
        color: #b88a2c;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.2;
    }

    .comment-item__reply-form { margin-top: 10px; display: grid; gap: 8px; }

    .comment-item__reply-form textarea { width: 100%; display: block; min-height: 76px; border: 1px solid #d7dde7; border-radius: 8px; padding: 9px 11px; font-size: 14px; line-height: 1.4; resize: vertical; background: #fff; color: #172033; }

    .comment-item__reply-actions { display: flex; align-items: center; gap: 8px; }

    .comment-item__reply-submit { border: 0; border-radius: 7px; background: var(--theme-color-main, #1d4ed8); color: #fff; padding: 7px 12px; font-size: 13px; font-weight: 700; cursor: pointer; }

    .comment-item__reply-cancel { border: 0; background: transparent; color: #9a6b11; text-decoration: underline; cursor: pointer; padding: 0; font-size: 13px; }

    .comment-item__reply-feedback {
        font-size: 13px;
        color: #6a7488;
    }

    .comment-item__replies { margin-top: 12px; margin-left: 54px; padding-left: 12px; border-left: 2px solid #e6e9ef; background: transparent; display: grid; gap: 10px; }

    .comment-item--reply { border: 0; padding: 10px 0 0; border-radius: 0; background: transparent; }
    .comment-item--reply .comment-item__avatar { width: 34px; height: 34px; flex-basis: 34px; min-width: 34px; min-height: 34px; font-size: 11px; }

    .comment-box__load-more-wrap { margin: 0 0 0.5rem; text-align: left; }

    .comment-box__composer { margin-top: 1rem; margin-bottom: 0; padding-top: 0.9rem; border-top: 1px solid #e6e9ef; }

    @media (max-width: 767px) {
        .comment-box__panel { padding: 14px; border-radius: 6px; }
        .comment-item { padding: 12px; }
        .comment-item__avatar {
            width: 36px;
            height: 36px;
            flex: 0 0 36px;
            min-width: 36px;
            min-height: 36px;
            max-width: 36px;
            max-height: 36px;
            aspect-ratio: 1 / 1;
            flex-shrink: 0;
        }
        .comment-item__meta { display: grid; gap: 2px; }
        .comment-item__time { text-align: left; white-space: normal; }
        .comment-item__replies { margin-left: 26px; }

        .comment-box__identity {
            flex-wrap: wrap;
        }
    }

/* source: resources/views/frontend/blade/detail/report-button.css */
.module-report-button {
            margin: 12px 0 4px;
            text-align: right
        }

        .report-btn {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 8px 16px;
            font-size: 13px;
            color: #888;
            background: transparent;
            border: 1px solid #ddd;
            border-radius: 6px;
            cursor: pointer;
            transition: color .2s, border-color .2s
        }

        .report-btn:hover {
            color: #e53e3e;
            border-color: #e53e3e
        }

        .report-modal-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, .45);
            z-index: 99999;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 16px
        }

        .report-modal-overlay[hidden] {
            display: none
        }

        .report-modal {
            background: #fff;
            border-radius: 10px;
            width: 100%;
            max-width: 460px;
            max-height: 90vh;
            display: flex;
            flex-direction: column;
            box-shadow: 0 8px 32px rgba(0, 0, 0, .18);
            overflow: hidden
        }

        .report-modal__header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 16px 20px 12px;
            border-bottom: 1px solid #f0f0f0;
            flex-shrink: 0
        }

        .report-modal__title {
            margin: 0;
            font-size: 16px;
            font-weight: 600;
            color: #1a1a1a
        }

        .report-modal__close {
            background: none;
            border: none;
            font-size: 22px;
            line-height: 1;
            color: #aaa;
            cursor: pointer;
            padding: 0 4px
        }

        .report-modal__close:hover {
            color: #333
        }

        .report-modal__body {
            padding: 16px 20px;
            overflow-y: auto;
            flex: 1
        }

        .report-modal__desc {
            margin: 0 0 10px;
            font-size: 13px;
            color: #555
        }

        .report-modal__reasons {
            display: flex;
            flex-direction: column;
            gap: 8px;
            margin-bottom: 14px
        }

        .report-reason {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 13px;
            color: #333;
            cursor: pointer
        }

        .report-reason input {
            accent-color: #e53e3e;
            width: 15px;
            height: 15px;
            cursor: pointer
        }

        .report-modal__message {
            width: 100%;
            box-sizing: border-box;
            border: 1px solid #ddd;
            border-radius: 6px;
            padding: 8px 10px;
            font-size: 13px;
            resize: vertical;
            font-family: inherit;
            color: #333;
            outline: none;
            transition: border-color .2s;
            margin-bottom: 12px
        }

        .report-modal__message:focus {
            border-color: #888
        }

        .report-modal__upload-area {
            margin-bottom: 4px
        }

        .report-modal__attach-btn {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 6px 14px;
            font-size: 12px;
            color: #555;
            background: #f7f7f7;
            border: 1px solid #ddd;
            border-radius: 6px;
            cursor: pointer;
            transition: background .15s;
            margin-bottom: 10px
        }

        .report-modal__attach-btn:hover:not(:disabled) {
            background: #eee
        }

        .report-modal__attach-btn:disabled {
            opacity: .5;
            cursor: not-allowed
        }

        .report-modal__img-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
            gap: 8px
        }

        .report-img-item {
            position: relative;
            border-radius: 6px;
            overflow: hidden;
            background: #f5f5f5;
            border: 1px solid #e5e5e5;
            aspect-ratio: 4/3
        }

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

        .report-img-item__remove {
            position: absolute;
            top: 4px;
            right: 4px;
            width: 20px;
            height: 20px;
            background: rgba(0, 0, 0, .55);
            color: #fff;
            border: none;
            border-radius: 50%;
            font-size: 14px;
            line-height: 20px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background .15s
        }

        .report-img-item__remove:hover {
            background: rgba(229, 62, 62, .85)
        }

        .report-img-item__status {
            position: absolute;
            inset: 0;
            background: rgba(0, 0, 0, .45);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 11px;
            color: #fff;
            pointer-events: none
        }

        .report-img-item__status.done {
            background: rgba(30, 130, 30, .4)
        }

        .report-img-item__status.err {
            background: rgba(200, 30, 30, .5)
        }

        .report-modal__error {
            margin-top: 8px;
            font-size: 12px;
            color: #e53e3e
        }

        .report-modal__footer {
            display: flex;
            justify-content: flex-end;
            gap: 8px;
            padding: 12px 20px 16px;
            border-top: 1px solid #f0f0f0;
            flex-shrink: 0
        }

        .report-modal__cancel {
            padding: 7px 16px;
            font-size: 13px;
            background: transparent;
            border: 1px solid #ddd;
            border-radius: 6px;
            cursor: pointer;
            color: #555
        }

        .report-modal__cancel:hover {
            background: #f7f7f7
        }

        .report-modal__submit {
            padding: 7px 16px;
            font-size: 13px;
            background: #e53e3e;
            color: #fff;
            border: none;
            border-radius: 6px;
            cursor: pointer;
            font-weight: 500;
            transition: background .2s
        }

        .report-modal__submit:hover:not(:disabled) {
            background: #c53030
        }

        .report-modal__submit:disabled {
            opacity: .6;
            cursor: not-allowed
        }

        .report-modal__success {
            padding: 24px 20px;
            text-align: center;
            font-size: 14px;
            color: #2d7a2d
        }

/* source: resources/views/frontend/blade/detail/related-posts/newswire-end-recirc.css */
/* Newswire end-of-article recirculation: "Up next" (3x2 cards) + "Most popular" (ranked, text only) */
.nw-end { color: #0c0c0c; margin: 48px 0 48px; font-family: helveticaneue, Helvetica, Arial, Utkal, sans-serif; }
.nw-end a { color: inherit; text-decoration: none; }
.nw-end__inner { display: grid; grid-template-columns: minmax(0, 778fr) minmax(0, 518fr); column-gap: 48px; align-items: start; max-width: 1440px; margin: 0 auto; padding: 0 48px; box-sizing: border-box; }
.nw-end__inner > :only-child { grid-column: 1 / -1; }
.nw-end__title { margin: 0 0 24px; font-size: 24px; line-height: 30px; font-weight: 700; color: #000; }
.nw-end__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 24px; row-gap: 32px; }
.nw-end__link { display: block; }
.nw-end__link:focus-visible, .nw-end__rank-link:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.nw-end__media { display: block; aspect-ratio: 16 / 9; background: #e6e6e6; overflow: hidden; }
.nw-end__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nw-end__headline { display: block; margin-top: 8px; font-size: 16px; line-height: 20.5px; font-weight: 400; }
.nw-end__link:hover .nw-end__headline, .nw-end__rank-link:hover .nw-end__rank-title { text-decoration: underline; text-underline-offset: 2px; }
.nw-end__read { display: block; margin-top: 6px; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase; color: #6e6e6e; }
.nw-end__ranked { margin: 0; padding: 0; list-style: none; }
.nw-end__rank { border-bottom: 1px solid #e6e6e6; }
.nw-end__rank:last-child { border-bottom: 0; }
.nw-end__rank-link { display: flex; align-items: center; padding: 16px 0 15px; }
.nw-end__rank:first-child .nw-end__rank-link { padding-top: 8px; }
.nw-end__num { flex: none; width: 38px; font-size: 18px; line-height: 21px; font-weight: 700; color: #000; }
.nw-end__rank-title { flex: 1; min-width: 0; font-size: 16px; line-height: 21px; font-weight: 400; }

@media (max-width: 1023px) {
    .nw-end__inner { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
}
@media (max-width: 639px) {
    .nw-end__inner { padding: 0 16px; }
    .nw-end__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* source: resources/views/frontend/blade/series/_standard.css */
body.theme-page-series {
    background: #dedede;
    color: #262b31;
    font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
}

.theme-render-page--series .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.sd-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 calc((100vw - min(1269px, 100vw - 40px)) / 2 + 20px);
    border-top: 1px solid #d6d6d6;
    border-bottom: 1px solid #d6d6d6;
    background: #f7f7f7;
    color: #686d73;
    font-size: 20px;
    font-weight: 700;
}

.sd-breadcrumb a {
    color: #686d73;
    text-decoration: none;
}

.sd-breadcrumb a:last-of-type {
    color: #e97108;
}

.sd-wrap {
    max-width: 1269px;
    margin: 0 auto;
    padding: 42px 28px 64px;
    font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
}

.sd-layout {
    display: grid;
    grid-template-columns: minmax(0, 790px) 330px;
    gap: 22px;
    justify-content: center;
    align-items: start;
}

.sd-panel {
    overflow: hidden;
    border: 0;
    border-radius: 10px;
    background: #fff;
}

.sd-main > * + *,
.sd-sidebar > * + * {
    margin-top: 24px;
}

.sd-panel__title {
    display: grid;
    grid-template-columns: 42px auto 1fr;
    align-items: center;
    gap: 13px;
    margin: 0;
    padding: 20px 24px 18px;
    color: #262b31;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.15;
}

.sd-panel__title::before,
.sd-panel__title::after {
    content: "";
    height: 4px;
    background: #e97108;
}

.sd-info {
    padding: 18px 24px 32px;
}

.sd-info__grid {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 34px;
}

.sd-cover {
    max-width: 300px;
}

.sd-cover__frame {
    position: relative;
    background: #fff;
    box-shadow: 12px 0 0 #000, 0 16px 30px rgba(0, 0, 0, .16);
}

.sd-cover img,
.sd-cover__placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    border: 2px solid #202020;
}

.sd-cover__placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f7d9c7, #f7f1e9 55%, #d9e6d8);
    color: #e97108;
    font-size: 28px;
    font-weight: 800;
    text-align: center;
}

.sd-rating {
    margin-top: 18px;
    text-align: center;
}

.sd-rating__stars {
    display: block;
    color: #d99a19;
    font-size: 22px;
    letter-spacing: 1px;
    line-height: 1;
}

.sd-rating__text {
    display: block;
    margin-top: 8px;
    color: #30343b;
    font-size: 16px;
    font-style: italic;
    font-weight: 800;
}

.sd-meta {
    margin-top: 58px;
    color: #30343b;
    font-size: 17px;
    font-weight: 700;
}

.sd-meta__row {
    margin-top: 10px;
}

.sd-meta__label {
    font-weight: 800;
}

.sd-meta__link {
    color: #139bd7;
    text-decoration: none;
}

.sd-price {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-left: 8px;
    padding: 0 14px;
    border-radius: 7px;
    background: #ffc400;
    color: #fff;
    font-size: 20px;
    font-weight: 900;
}

.sd-buy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin-top: 14px;
    padding: 0 17px;
    border: 0;
    border-radius: 999px;
    background: #ef3340;
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    text-decoration: none;
}

.sd-info__body {
    padding: 8px 0 0;
}

.sd-title {
    margin: 0;
    padding-bottom: 18px;
    border-bottom: 1px solid #c8c8c8;
    color: #262b31;
    font-size: clamp(34px, 2.6vw, 46px);
    font-weight: 900;
    line-height: 1.1;
    text-align: center;
}

.sd-views {
    margin: 22px 0 24px;
    color: #30343b;
    font-size: 20px;
    font-weight: 600;
}

.sd-views strong {
    font-weight: 900;
}

.sd-desc {
    --sd-desc-collapsed-height: 260px;
    position: relative;
    color: #30343b;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.55;
}

.sd-desc.is-collapsible {
    max-height: var(--sd-desc-collapsed-height);
    overflow: hidden;
}

.sd-desc p,
.sd-desc ul,
.sd-desc ol,
.sd-desc blockquote {
    margin-top: 0;
    margin-bottom: 1em;
}

.sd-desc ul,
.sd-desc ol {
    padding-left: 1.5em;
}

.sd-desc > :last-child {
    margin-bottom: 0;
}

.sd-desc img,
.sd-desc iframe {
    max-width: 100%;
}

.sd-desc.is-collapsible::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 74px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
}

.sd-read-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 12px auto 34px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #30343b;
    font-family: inherit;
    font-size: 18px;
    font-weight: 800;
    cursor: pointer;
}

.sd-read-more[hidden] {
    display: none;
}

.sd-desc.is-expanded {
    max-height: none;
    overflow: visible;
}

.sd-desc.is-expanded::after {
    display: none;
}

.sd-read-more > span[aria-hidden="true"] {
    transition: transform 180ms ease;
}

.sd-read-more[aria-expanded="true"] > span[aria-hidden="true"] {
    transform: rotate(180deg);
}

.sd-actions {
    display: grid;
    grid-template-columns: auto auto;
    gap: 12px;
    align-items: center;
    justify-content: center;
    margin: 26px 0 28px;
}

.sd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 20px;
    border: 0;
    border-radius: 999px;
    background: #e97108;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.sd-latest {
    margin-top: 20px;
}

.sd-subtitle {
    display: grid;
    grid-template-columns: 40px auto 1fr;
    align-items: center;
    gap: 14px;
    margin: 0 0 18px;
    color: #262b31;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.15;
}

.sd-subtitle::before,
.sd-subtitle::after {
    content: "";
    height: 4px;
    background: #e97108;
}

.sd-latest__list,
.sd-side-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sd-latest__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 28px;
}

.sd-latest__list a,
.sd-chapters__item a,
.sd-side-list a,
.sd-cats a {
    color: #262b31;
    text-decoration: none;
}

.sd-latest__list a,
.sd-chapters__item a {
    font-size: 18px;
    font-weight: 600;
}

.sd-latest__list a:hover,
.sd-chapters__item a:hover,
.sd-side-list a:hover,
.sd-cats a:hover {
    color: #e97108;
}

.sd-chapters {
    padding: 18px 24px 42px;
}

.sd-chapters__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 58px;
    margin: 0;
    padding: 0 0 0 24px;
}

.sd-chapters__item {
    padding-right: 10px;
    color: #262b31;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
}

.sd-vip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 20px;
    margin-left: 6px;
    padding: 0 5px;
    border-radius: 50%;
    background: #ff1e1e;
    color: #ffeb00;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sd-empty {
    padding: 20px 0;
    color: #686d73;
    font-size: 18px;
    font-weight: 600;
}

.sd-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 42px;
}

.sd-page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    min-height: 52px;
    padding: 0 16px;
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    background: #fff;
    color: #1e1e1e;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}

.sd-page--active {
    border-color: #1e1e1e;
    background: #1e1e1e;
    color: #fff;
}

.sd-page--select {
    min-width: 150px;
    border-color: #168a55;
    background: #168a55;
    color: #fff;
}

.sd-sidebar .sd-panel {
    padding: 0 14px 18px;
}

.sd-sidebar .sd-panel__title {
    display: block;
    padding: 16px 0 10px;
    border-bottom: 1px solid #7d858c;
    color: #262b31;
}

.sd-sidebar .sd-panel__title::before,
.sd-sidebar .sd-panel__title::after {
    display: none;
}

.sd-side-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    border-bottom: 1px dashed #c6c6c6;
    color: #262b31;
    font-size: 18px;
    font-weight: 700;
}

.sd-side-list li:last-child {
    border-bottom: 0;
}

.sd-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 7px;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap;
}

.sd-badge--done {
    background: #168a55;
}

.sd-badge--new {
    background: #22c3df;
}

.sd-badge--hot {
    background: #ef3340;
}

.sd-rank-tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    padding: 20px 0 12px;
}

.sd-rank-tabs button {
    min-height: 50px;
    border: 1px solid #c9c9c9;
    border-radius: 999px;
    background: #fff;
    color: #262b31;
    font-size: 18px;
    font-weight: 800;
}

.sd-rank-tabs button[aria-selected="true"] {
    border-color: #e97108;
    background: #e97108;
    color: #fff;
}

.sd-rank-panel[hidden] {
    display: none;
}

.sd-rank-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sd-rank-list li {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 6px 0;
}

.sd-rank-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #d7dde1;
    border-radius: 50%;
    background: #fff;
    color: #262b31;
    font-size: 16px;
    font-weight: 800;
}

.sd-rank-list li:nth-child(1) .sd-rank-num { border-color: #ef3340; background: #ef3340; color: #fff; }
.sd-rank-list li:nth-child(2) .sd-rank-num { border-color: #168a55; background: #168a55; color: #fff; }
.sd-rank-list li:nth-child(3) .sd-rank-num { border-color: #22c3df; background: #22c3df; color: #fff; }

.sd-rank-title {
    display: block;
    color: #262b31;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
}

.sd-rank-view {
    display: block;
    margin-top: 3px;
    color: #30343b;
    font-size: 15px;
    font-weight: 600;
}

.sd-cats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 34px;
    padding-top: 12px;
}

.sd-cats a {
    color: #262b31;
    font-size: 18px;
    font-weight: 600;
}

.sd-btn:focus-visible,
.sd-buy:focus-visible,
.sd-page:focus-visible,
.sd-side-list a:focus-visible,
.sd-rank-tabs button:focus-visible,
.sd-rank-title:focus-visible,
.sd-cats a:focus-visible,
.sd-chapters__item a:focus-visible {
    outline: 3px solid #e97108;
    outline-offset: 3px;
}

@media (max-width: 1180px) {
    .sd-layout {
        grid-template-columns: 1fr;
    }

    .sd-sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
    }

    .sd-sidebar > * + * {
        margin-top: 0;
    }
}

@media (max-width: 820px) {
    .sd-wrap {
        padding: 24px 12px 44px;
    }

    .sd-breadcrumb {
        padding: 0 12px;
        font-size: 17px;
        overflow-x: auto;
        white-space: nowrap;
    }

    .sd-info__grid {
        grid-template-columns: 1fr;
    }

    .sd-cover {
        width: min(280px, 100%);
        margin: 0 auto;
    }

    .sd-meta {
        margin-top: 32px;
    }

    .sd-actions,
    .sd-latest__list,
    .sd-chapters__grid,
    .sd-sidebar {
        grid-template-columns: 1fr;
    }

    .sd-actions {
        justify-content: stretch;
    }

    .sd-btn {
        width: 100%;
    }

    .sd-panel__title,
    .sd-subtitle {
        font-size: 28px;
    }
}

/* Modern compact pass for the series detail page. */
.sd-breadcrumb {
    min-height: 46px;
    padding: 0 calc((100vw - min(1269px, 100vw - 40px)) / 2 + 20px);
    font-size: 16px;
}

.sd-wrap {
    max-width: 1269px;
    padding: 28px 18px 46px;
}

.sd-layout {
    grid-template-columns: minmax(0, 790px) 330px;
    gap: 22px;
}

.sd-panel {
    border-radius: 8px;
}

.sd-main > * + *,
.sd-sidebar > * + * {
    margin-top: 20px;
}

.sd-panel__title {
    grid-template-columns: 34px auto 1fr;
    gap: 10px;
    padding: 18px 20px 14px;
    font-size: 24px;
    line-height: 1.12;
}

.sd-panel__title::before,
.sd-panel__title::after,
.sd-subtitle::before,
.sd-subtitle::after {
    height: 3px;
}

.sd-info {
    padding: 16px 20px 28px;
}

.sd-info__grid {
    grid-template-columns: 235px minmax(0, 1fr);
    gap: 24px;
}

.sd-cover {
    max-width: 215px;
}

.sd-cover__frame {
    box-shadow: 9px 0 0 #111, 0 14px 24px rgba(0, 0, 0, .14);
}

.sd-meta {
    margin-top: 44px;
    font-size: 15px;
    line-height: 1.5;
}

.sd-title {
    padding-bottom: 14px;
    font-size: clamp(28px, 2.3vw, 38px);
    font-weight: 900;
}

.sd-views {
    margin: 18px 0;
    font-size: 17px;
}

.sd-desc {
    --sd-desc-collapsed-height: 190px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.65;
}

.sd-read-more {
    margin: 10px auto 24px;
    font-size: 16px;
}

.sd-btn {
    min-height: 40px;
    padding: 0 18px;
    color: #fff !important;
    font-size: 15px;
    font-weight: 800;
}

.sd-subtitle {
    grid-template-columns: 34px auto 1fr;
    gap: 10px;
    margin-bottom: 14px;
    font-size: 22px;
}

.sd-latest__list {
    gap: 6px 22px;
}

.sd-latest__list a,
.sd-chapters__item a {
    color: #262b31 !important;
    font-size: 16px;
    font-weight: 400 !important;
    line-height: 1.45;
}

.sd-latest__list a:hover,
.sd-chapters__item a:hover {
    color: #262b31 !important;
}

.sd-chapters {
    padding: 16px 20px 34px;
}

.sd-chapters__grid {
    gap: 8px 38px;
    padding-left: 20px;
}

.sd-chapters__item {
    color: #1f252c;
    font-size: 15px;
    font-weight: 400 !important;
}

.sd-pagination {
    gap: 8px;
    margin-top: 34px;
}

.sd-page {
    min-width: 44px;
    min-height: 44px;
    padding: 0 14px;
    color: #202326 !important;
    font-size: 15px;
    font-weight: 700;
}

.sd-page--active,
.sd-page--select {
    color: #fff !important;
}

.sd-page--select {
    min-width: 132px;
}

.sd-page--disabled,
.sd-page--ellipsis {
    color: #8c939b !important;
    background: #f4f4f4;
    cursor: not-allowed;
}

.sd-page--ellipsis {
    min-width: 36px;
    border-color: transparent;
    background: transparent;
    cursor: default;
}

.sd-sidebar .sd-panel {
    padding: 0 14px 16px;
}

.sd-sidebar .sd-panel__title {
    padding: 14px 0 10px;
    font-size: 24px;
}

.sd-side-list li {
    min-height: 42px;
    font-size: 15px;
}

.sd-rank-tabs {
    gap: 8px;
    padding: 16px 0 10px;
}

.sd-rank-tabs button {
    min-height: 42px;
    font-size: 15px;
}

.sd-rank-list li {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    padding: 5px 0;
}

.sd-rank-num {
    width: 32px;
    height: 32px;
    font-size: 14px;
}

.sd-rank-title {
    font-size: 15px;
}

.sd-rank-view {
    font-size: 13px;
}

.sd-cats {
    gap: 10px 24px;
}

.sd-cats a {
    font-size: 15px;
}

@media (max-width: 991.98px) {
    .sd-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .sd-info__grid,
    .sd-actions,
    .sd-latest__list,
    .sd-chapters__grid {
        grid-template-columns: 1fr;
    }
}

/* Final mobile pass: use the full rail and keep the series detail readable. */
@media (max-width: 767.98px) {
    html,
    body.theme-page-series {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .theme-render-page--series *,
    .theme-render-page--series *::before,
    .theme-render-page--series *::after {
        box-sizing: border-box;
    }

    body.theme-page-series #bodyWrapper.bio-container {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden !important;
    }

    .sd-breadcrumb {
        min-height: 50px;
        padding: 0 14px;
        gap: 8px;
        font-size: 16px;
        line-height: 1.2;
        overflow-x: auto;
        white-space: nowrap;
    }

    .sd-wrap {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 16px 8px 34px;
        overflow-x: hidden;
    }

    .sd-layout,
    .sd-main,
    .sd-sidebar {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .sd-panel {
        width: 100%;
        max-width: 100%;
        border-radius: 8px;
        overflow: hidden;
    }

    .sd-main > * + *,
.sd-sidebar > * + *,
    .sd-sidebar > * + * {
        margin-top: 14px;
    }

    .sd-info {
        padding: 14px 12px 22px;
    }

    .sd-panel__title,
    .sd-subtitle {
        grid-template-columns: 28px minmax(0, auto) minmax(24px, 1fr);
        gap: 8px;
        padding: 14px 8px 12px;
        font-size: 24px;
        line-height: 1.15;
        text-align: left;
        max-width: 100%;
        min-width: 0;
    }

    .sd-panel__title > span,
    .sd-subtitle > span {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .sd-panel__title::before,
    .sd-panel__title::after,
    .sd-subtitle::before,
    .sd-subtitle::after {
        height: 3px;
    }

    .sd-info__grid {
        display: grid;
        grid-template-columns: 1fr !important;
        gap: 18px;
        min-width: 0;
    }

    .sd-cover {
        width: min(270px, 78vw);
        max-width: calc(100vw - 56px);
        margin: 0 auto;
    }

    .sd-cover img,
    .sd-cover__placeholder {
        max-width: 100%;
    }

    .sd-cover__frame {
        box-shadow: 7px 0 0 #111, 0 12px 22px rgba(0, 0, 0, .14);
    }

    .sd-meta {
        width: min(270px, 78vw);
        margin: 18px auto 0;
        font-size: 16px;
        line-height: 1.5;
    }

    .sd-info__body {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        padding-top: 2px;
        overflow-x: hidden;
    }

    .sd-title {
        padding: 0 0 14px;
        font-size: 31px;
        line-height: 1.12;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .sd-views {
        margin: 16px 0;
        font-size: 18px;
    }

    .sd-desc {
        --sd-desc-collapsed-height: 210px;
        font-size: 18px;
        line-height: 1.65;
        overflow-wrap: anywhere;
    }

    .sd-read-more {
        margin: 8px 0 20px;
        font-size: 17px;
    }

    .sd-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 22px 0 22px;
        overflow: hidden;
    }

    .sd-btn {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        min-height: 48px;
        border-radius: 999px;
        padding: 0 16px;
        font-size: 17px;
        line-height: 1.1;
        white-space: normal;
    }

    .sd-latest {
        margin-top: 8px;
    }

    .sd-latest__list {
        display: grid;
        grid-template-columns: 1fr !important;
        gap: 8px;
        min-width: 0;
    }

    .sd-latest__list a,
    .sd-chapters__item a {
        display: block;
        color: #262b31 !important;
        font-size: 18px;
        font-weight: 400 !important;
        line-height: 1.45;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .sd-chapters {
        padding: 14px 14px 28px;
        overflow-x: hidden;
    }

    .sd-chapters__grid {
        display: grid;
        grid-template-columns: 1fr !important;
        gap: 9px;
        padding-left: 20px;
        min-width: 0;
        max-width: 100%;
    }

    .sd-chapters__item {
        min-width: 0;
        max-width: 100%;
        padding-right: 0;
        font-size: 18px;
        line-height: 1.45;
    }

    .sd-pagination {
        flex-wrap: wrap;
        gap: 7px;
        margin-top: 26px;
    }

    .sd-page {
        min-width: 42px;
        min-height: 42px;
        padding: 0 12px;
    }

    .sd-page--select {
        min-width: 126px;
    }

    .sd-sidebar {
        margin-top: 14px;
    }
}

/* source: frontend/theme/css/detail-mobile-content.css */
/* Final, shared mobile article typography override for every theme. */
@media (max-width: 768px) {
  html body .theme-render-page.theme-render-page--detail[data-page-type="detail"] .module-article-content__body {
    font-size: 17px !important;
  }

  html body .theme-render-page.theme-render-page--detail[data-page-type="detail"] .module-article-content__body :where(p, li, blockquote, dd, dt, td, th, figcaption, div:not(.in-article-ad), section:not(.in-article-ad)) {
    font-size: 17px !important;
  }

  html body .theme-render-page.theme-render-page--detail[data-page-type="detail"] .module-article-content__body :where(p, li, blockquote, dd, dt, td, th, figcaption, div:not(.in-article-ad), section:not(.in-article-ad)) :where(span, font, small, strong, b, em, i, u, s, mark, a) {
    font-size: inherit !important;
  }

  html body .theme-render-page.theme-render-page--detail[data-page-type="detail"] .module-article-content__body > :where(span, font, small, strong, b, em, i, u, s, mark, a) {
    font-size: 17px !important;
  }
}
