/* Content System Elementor Blocks */

:root {
  --csb-bg: #050816;
  --csb-surface: #0b1020;
  --csb-surface-soft: #111827;
  --csb-border: rgba(255, 255, 255, 0.12);
  --csb-border-soft: rgba(148, 163, 184, 0.22);
  --csb-text: #f8fafc;
  --csb-text-soft: #cbd5e1;
  --csb-text-muted: #94a3b8;
  --csb-cyan: #22d3ee;
  --csb-violet: #8b5cf6;
  --csb-gold: #fbbf24;
  --csb-pink: #fb7185;
  --csb-green: #22c55e;
  --csb-radius: 24px;
  --csb-radius-lg: 32px;
  --csb-shadow: 0 24px 80px rgba(0, 0, 0, 0.36);
  --csb-max: 1180px;
}

body {
  background:
    radial-gradient(circle at top right, rgba(34, 211, 238, 0.14), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.15), transparent 36rem),
    var(--csb-bg);
  color: var(--csb-text);
}

.csb-header,
.csb-footer,
.csb-home,
.csb-single,
.csb-archive {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--csb-text);
}

.csb-header a,
.csb-footer a,
.csb-home a,
.csb-single a,
.csb-archive a {
  text-decoration: none;
}

.csb-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(5, 8, 22, 0.78);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.csb-header__inner {
  width: min(var(--csb-max), calc(100% - 36px));
  margin: 0 auto;
  min-height: 78px;
  display: flex;
  align-items: center;
  gap: 26px;
}

.csb-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--csb-text);
  min-width: max-content;
}

.csb-brand__mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background:
    linear-gradient(135deg, rgba(34, 211, 238, 0.24), rgba(139, 92, 246, 0.22));
  border: 1px solid rgba(34, 211, 238, 0.36);
  box-shadow: 0 16px 44px rgba(34, 211, 238, 0.12);
  color: var(--csb-cyan);
  font-weight: 900;
  letter-spacing: -0.04em;
}

.csb-brand__text {
  display: grid;
  gap: 1px;
}

.csb-brand__text strong {
  color: var(--csb-text);
  font-size: 18px;
  line-height: 1;
  letter-spacing: -0.04em;
}

.csb-brand__text small {
  color: var(--csb-text-muted);
  font-size: 12px;
}

.csb-nav {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-left: auto;
}

.csb-nav a {
  color: var(--csb-text-soft);
  font-size: 14px;
  font-weight: 650;
}

.csb-nav a:hover {
  color: var(--csb-cyan);
}

.csb-header__actions {
  display: flex;
  align-items: center;
  gap: 14px;
}

.csb-lang-switcher ul {
  display: flex;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.csb-lang-switcher a,
.csb-lang-switcher span {
  color: var(--csb-text-muted);
  font-size: 13px;
  font-weight: 700;
}

.csb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--csb-cyan), var(--csb-violet));
  color: #020617 !important;
  font-weight: 850;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 18px 52px rgba(34, 211, 238, 0.16);
}

.csb-btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.07);
}

.csb-btn--small {
  min-height: 38px;
  padding: 0 14px;
  font-size: 13px;
}

.csb-btn--ghost {
  background: rgba(255,255,255,0.06);
  color: var(--csb-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: none;
}

.csb-single-hero,
.csb-home-hero,
.csb-archive-hero {
  position: relative;
  overflow: hidden;
}

.csb-single-hero::before,
.csb-home-hero::before,
.csb-archive-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 85% 10%, rgba(34, 211, 238, 0.18), transparent 30rem),
    radial-gradient(circle at 20% 80%, rgba(139, 92, 246, 0.18), transparent 34rem);
  pointer-events: none;
}

.csb-single-hero__inner,
.csb-home-hero__inner,
.csb-archive-hero__inner {
  position: relative;
  width: min(var(--csb-max), calc(100% - 36px));
  margin: 0 auto;
}

.csb-single-hero__inner {
  display: grid;
  grid-template-columns: 1.18fr 0.82fr;
  gap: 38px;
  align-items: center;
  padding: 74px 0 52px;
}

.csb-single-hero h1,
.csb-home-hero h1,
.csb-archive-hero h1 {
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  color: var(--csb-text);
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1.03;
  letter-spacing: -0.055em;
  margin: 18px 0 22px;
}

.csb-single-hero__excerpt,
.csb-home-hero p,
.csb-archive-hero p {
  color: var(--csb-text-soft);
  font-size: clamp(16px, 1.8vw, 19px);
  line-height: 1.75;
  max-width: 760px;
}

.csb-single-hero__meta,
.csb-card__meta {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--csb-text-muted);
  font-size: 14px;
  font-weight: 600;
}

.csb-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.csb-badge,
.csb-kicker {
  display: inline-flex;
  align-items: center;
  width: max-content;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(34, 211, 238, 0.11);
  border: 1px solid rgba(34, 211, 238, 0.36);
  color: var(--csb-cyan) !important;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.csb-single-hero__image {
  margin: 0;
  padding: 0;
  border-radius: var(--csb-radius-lg);
  overflow: hidden;
  border: 1px solid var(--csb-border);
  box-shadow: var(--csb-shadow);
  background: rgba(255,255,255,0.04);
}

.csb-single-hero__image img {
  width: 100%;
  display: block;
}

.csb-content-shell {
  width: min(890px, calc(100% - 36px));
  margin: 0 auto;
  padding: 46px 0 88px;
}

.csb-post-content {
  color: var(--csb-text-soft);
  font-size: 18px;
  line-height: 1.85;
}

.csb-post-content p {
  margin: 0 0 1.45em;
}

.csb-post-content h2,
.csb-post-content h3,
.csb-post-content h4 {
  color: var(--csb-text);
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  line-height: 1.15;
  margin-top: 2.1em;
  margin-bottom: 0.75em;
  letter-spacing: -0.035em;
}

.csb-post-content h2 {
  font-size: clamp(28px, 3vw, 40px);
}

.csb-post-content h3 {
  font-size: clamp(23px, 2.3vw, 30px);
}

.csb-post-content a {
  color: var(--csb-cyan);
  text-decoration: none;
  border-bottom: 1px solid rgba(34, 211, 238, 0.35);
  overflow-wrap: anywhere;
}

.csb-post-content a:hover {
  color: var(--csb-gold);
  border-bottom-color: rgba(251, 191, 36, 0.55);
}

.csb-post-content ul,
.csb-post-content ol {
  margin: 0 0 1.6em 1.3em;
  padding-left: 1em;
}

.csb-post-content li {
  margin-bottom: 0.65em;
}

.csb-post-content .wp-block-separator {
  border: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.24);
  margin: 2.5em 0;
}

.csb-post-content blockquote {
  margin: 2em 0;
  padding: 22px 26px;
  border-left: 3px solid var(--csb-cyan);
  background: rgba(15, 23, 42, 0.72);
  border-radius: 18px;
  color: #e2e8f0;
}

.csb-post-content code {
  background: rgba(34, 211, 238, 0.10);
  color: #67e8f9;
  border: 1px solid rgba(34, 211, 238, 0.16);
  border-radius: 7px;
  padding: 0.12em 0.35em;
}

.csb-editorial-box {
  margin-top: 52px;
  padding: 28px;
  border-radius: var(--csb-radius);
  border: 1px solid var(--csb-border);
  background:
    linear-gradient(135deg, rgba(34,211,238,0.10), transparent),
    rgba(11, 16, 32, 0.76);
  color: var(--csb-text-soft);
}

.csb-editorial-box strong {
  display: block;
  color: var(--csb-text);
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  font-size: 21px;
  margin-bottom: 8px;
}

.csb-editorial-box p {
  margin: 0;
  color: var(--csb-text-muted);
  line-height: 1.7;
}

.csb-home-hero__inner {
  display: grid;
  grid-template-columns: 1fr 0.78fr;
  gap: 42px;
  align-items: center;
  padding: 92px 0 64px;
}

.csb-home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.csb-home-hero__panel {
  min-height: 340px;
  border-radius: var(--csb-radius-lg);
  border: 1px solid var(--csb-border);
  background:
    linear-gradient(135deg, rgba(34,211,238,0.13), rgba(139,92,246,0.12)),
    rgba(11, 16, 32, 0.76);
  box-shadow: var(--csb-shadow);
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  position: relative;
}

.csb-home-hero__panel::before {
  content: "";
  position: absolute;
  inset: 24px;
  background:
    linear-gradient(rgba(255,255,255,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: 0.9;
  mask-image: radial-gradient(circle at center, #000, transparent 75%);
}

.csb-home-hero__panel span,
.csb-home-hero__panel strong,
.csb-signal-lines {
  position: relative;
}

.csb-home-hero__panel span {
  color: var(--csb-cyan);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 850;
  font-size: 12px;
}

.csb-home-hero__panel strong {
  color: var(--csb-text);
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -0.04em;
  margin-top: 12px;
}

.csb-signal-lines {
  display: grid;
  gap: 9px;
  margin-top: 24px;
}

.csb-signal-lines i {
  display: block;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--csb-cyan), transparent);
  opacity: 0.78;
}

.csb-signal-lines i:nth-child(2) { width: 78%; }
.csb-signal-lines i:nth-child(3) { width: 58%; }
.csb-signal-lines i:nth-child(4) { width: 86%; }

.csb-section {
  width: min(var(--csb-max), calc(100% - 36px));
  margin: 0 auto;
  padding: 42px 0 92px;
}

.csb-section__head {
  margin-bottom: 24px;
}

.csb-section__head h2 {
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  color: var(--csb-text);
  font-size: clamp(30px, 4vw, 44px);
  letter-spacing: -0.05em;
  margin: 12px 0 0;
}

.csb-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.csb-card {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--csb-radius);
  border: 1px solid var(--csb-border);
  background: rgba(11, 16, 32, 0.74);
  box-shadow: 0 18px 60px rgba(0,0,0,0.20);
}

.csb-card__image {
  display: block;
  aspect-ratio: 16 / 9;
  background:
    radial-gradient(circle at 70% 20%, rgba(34,211,238,0.22), transparent 55%),
    linear-gradient(135deg, rgba(139,92,246,0.20), rgba(11,16,32,0.95));
  overflow: hidden;
}

.csb-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.csb-card:hover .csb-card__image img {
  transform: scale(1.035);
}

.csb-card__body {
  padding: 20px;
}

.csb-card__title {
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.04em;
  margin: 14px 0 10px;
}

.csb-card__title a {
  color: var(--csb-text);
}

.csb-card__title a:hover {
  color: var(--csb-cyan);
}

.csb-card__excerpt {
  color: var(--csb-text-muted);
  line-height: 1.6;
  font-size: 15px;
  margin: 0 0 16px;
}

.csb-archive-hero__inner {
  padding: 72px 0 36px;
}

.csb-empty {
  color: var(--csb-text-muted);
}

.csb-footer {
  border-top: 1px solid rgba(255,255,255,0.08);
  background: rgba(5, 8, 22, 0.86);
}

.csb-footer__inner {
  width: min(var(--csb-max), calc(100% - 36px));
  margin: 0 auto;
  padding: 54px 0 34px;
}

.csb-footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 22px;
  margin: 30px 0;
}

.csb-footer__links a {
  color: var(--csb-text-soft);
  font-weight: 650;
}

.csb-footer__links a:hover {
  color: var(--csb-cyan);
}

.csb-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  color: var(--csb-text-muted);
  font-size: 14px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.08);
}

@media (max-width: 1024px) {
  .csb-nav {
    display: none;
  }

  .csb-single-hero__inner,
  .csb-home-hero__inner {
    grid-template-columns: 1fr;
  }

  .csb-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .csb-header__inner {
    min-height: 70px;
  }

  .csb-brand__text small,
  .csb-header__actions .csb-btn {
    display: none;
  }

  .csb-single-hero__inner,
  .csb-home-hero__inner {
    padding: 42px 0 32px;
  }

  .csb-content-shell {
    width: min(100% - 32px, 890px);
    padding: 28px 0 58px;
  }

  .csb-post-content {
    font-size: 16.5px;
    line-height: 1.78;
  }

  .csb-grid {
    grid-template-columns: 1fr;
  }

  .csb-footer__bottom {
    flex-direction: column;
  }
}


/* v0.2.1 — harden Elementor/Hello page canvas backgrounds.
   Elementor pages can render inside a white Hello/theme canvas even when body is dark.
   These rules make shortcode pages own their background and hide the default Hello page title. */

body.page .page-header,
body.page .entry-header,
body.page .entry-title,
body.page h1.entry-title,
body.elementor-page .page-header,
body.elementor-page .entry-header,
body.elementor-page .entry-title {
  display: none !important;
}

body.elementor-page,
body.elementor-page #content,
body.elementor-page .site-main,
body.elementor-page .page-content,
body.elementor-page .elementor,
body.elementor-page .elementor-section-wrap {
  background:
    radial-gradient(circle at top right, rgba(34, 211, 238, 0.14), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.15), transparent 36rem),
    var(--csb-bg) !important;
}

.csb-home,
.csb-single,
.csb-archive {
  min-height: 100vh;
  background:
    radial-gradient(circle at top right, rgba(34, 211, 238, 0.14), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.15), transparent 36rem),
    var(--csb-bg) !important;
}

.csb-home-hero,
.csb-single-hero,
.csb-archive-hero,
.csb-section,
.csb-content-shell {
  background: transparent !important;
}

.csb-home-hero__inner {
  min-height: 560px;
}


/* v0.2.2 — normalize all public template canvases.
   This covers archives, categories, tags, search results, posts, pages and 404-like templates
   so Hello/Elementor cannot leak white backgrounds or default title/header blocks. */

html,
body {
  background: var(--csb-bg) !important;
}

body.archive,
body.category,
body.tag,
body.search,
body.blog,
body.single,
body.page,
body.error404 {
  background:
    radial-gradient(circle at top right, rgba(34, 211, 238, 0.14), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.15), transparent 36rem),
    var(--csb-bg) !important;
}

#page,
.site,
.site-content,
#content,
.site-main,
.content-area,
body.archive main,
body.category main,
body.tag main,
body.search main,
body.blog main,
body.single main,
body.page main,
body.error404 main {
  background: transparent !important;
}

/* Hide default theme titles/headers only when a CSB shortcode template is expected to own layout. */
body.archive .page-header,
body.archive .entry-header,
body.archive .entry-title,
body.category .page-header,
body.category .entry-header,
body.category .entry-title,
body.tag .page-header,
body.tag .entry-header,
body.tag .entry-title,
body.search .page-header,
body.search .entry-header,
body.search .entry-title,
body.blog .page-header,
body.blog .entry-header,
body.blog .entry-title,
body.error404 .page-header,
body.error404 .entry-header,
body.error404 .entry-title,
body.single-post .entry-header,
body.single-post .entry-title,
body.single-post .post-thumbnail {
  display: none !important;
}

/* Elementor wrapper hardening for archive/search templates. */
body.archive .elementor,
body.category .elementor,
body.tag .elementor,
body.search .elementor,
body.blog .elementor,
body.single-post .elementor,
body.error404 .elementor,
body.archive .elementor-location-archive,
body.search .elementor-location-archive,
body.category .elementor-location-archive,
body.tag .elementor-location-archive,
body.single-post .elementor-location-single,
body.error404 .elementor-location-single {
  background:
    radial-gradient(circle at top right, rgba(34, 211, 238, 0.14), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.15), transparent 36rem),
    var(--csb-bg) !important;
}

.csb-archive,
.csb-search,
.csb-not-found,
.csb-home,
.csb-single {
  display: block;
  width: 100%;
  overflow: hidden;
}

.csb-archive-hero {
  min-height: 280px;
}

.csb-search .csb-archive-hero,
.csb-not-found .csb-archive-hero {
  min-height: 420px;
}

.csb-not-found .csb-archive-hero__inner {
  padding: 96px 0;
}


/* v0.2.3 — archive fallback and flag language switcher polish */

.csb-lang-switcher--flags ul {
  display: flex;
  align-items: center;
  gap: 7px;
}

.csb-lang-switcher--flags li {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  line-height: 1;
}

.csb-lang-switcher--flags a,
.csb-lang-switcher--flags span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 30px;
  border-radius: 999px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.10);
}

.csb-lang-switcher--flags img {
  width: 22px !important;
  height: auto !important;
  display: block;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.10);
}

.csb-lang-switcher--flags .current-lang a,
.csb-lang-switcher--flags .current-lang span {
  background: rgba(34, 211, 238, 0.12);
  border-color: rgba(34, 211, 238, 0.36);
}

/* Make plugin-owned archives visually distinct and not like raw Hello archive loops. */
.csb-archive .csb-archive-hero__inner {
  padding: 78px 0 38px;
}

.csb-archive .csb-archive-hero h1 {
  max-width: 920px;
}

.csb-archive .csb-section {
  padding-top: 18px;
}

.csb-archive .csb-grid {
  align-items: stretch;
}

.csb-archive .csb-card {
  height: 100%;
}

/* Defensive styling for any remaining Hello archive loop if auto template is disabled. */
body.archive .site-main > article,
body.category .site-main > article,
body.tag .site-main > article,
body.search .site-main > article,
body.blog .site-main > article {
  width: min(1180px, calc(100% - 36px));
  margin: 28px auto;
  border-radius: var(--csb-radius);
  border: 1px solid var(--csb-border);
  background: rgba(11, 16, 32, 0.76);
  overflow: hidden;
  color: var(--csb-text-soft);
}

body.archive .site-main > article .post-thumbnail,
body.category .site-main > article .post-thumbnail,
body.tag .site-main > article .post-thumbnail,
body.search .site-main > article .post-thumbnail,
body.blog .site-main > article .post-thumbnail {
  max-height: 360px;
  overflow: hidden;
}

body.archive .site-main > article .post-thumbnail img,
body.category .site-main > article .post-thumbnail img,
body.tag .site-main > article .post-thumbnail img,
body.search .site-main > article .post-thumbnail img,
body.blog .site-main > article .post-thumbnail img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  display: block;
  opacity: 0.82;
}

body.archive .site-main > article .entry-summary,
body.category .site-main > article .entry-summary,
body.tag .site-main > article .entry-summary,
body.search .site-main > article .entry-summary,
body.blog .site-main > article .entry-summary {
  padding: 22px 26px 28px;
  color: var(--csb-text-soft);
}

body.archive .site-main > article .entry-summary p,
body.category .site-main > article .entry-summary p,
body.tag .site-main > article .entry-summary p,
body.search .site-main > article .entry-summary p,
body.blog .site-main > article .entry-summary p {
  color: var(--csb-text-soft);
  font-size: 17px;
  line-height: 1.72;
}


/* v0.2.4 — motion system, glass depth and animated atmosphere.
   Portable by design: all effects live under csb-* classes and CSS variables,
   so Rising Brief / future sites can reuse the same engine with different variables. */

:root {
  --csb-motion-fast: 160ms;
  --csb-motion-med: 360ms;
  --csb-motion-slow: 900ms;
  --csb-ease-out: cubic-bezier(.16, 1, .3, 1);
  --csb-glass: rgba(11, 16, 32, 0.68);
  --csb-glass-strong: rgba(11, 16, 32, 0.84);
  --csb-glow-cyan: rgba(34, 211, 238, 0.24);
  --csb-glow-violet: rgba(139, 92, 246, 0.22);
}

/* Animated global atmosphere */
.csb-home,
.csb-single,
.csb-archive,
body.archive,
body.category,
body.tag,
body.search,
body.blog,
body.single,
body.page,
body.error404,
body.elementor-page {
  background-size: 140% 140%, 150% 150%, auto !important;
  animation: csb-bg-drift 18s ease-in-out infinite alternate;
}

@keyframes csb-bg-drift {
  0% {
    background-position: 0% 0%, 100% 100%, center;
  }
  50% {
    background-position: 70% 26%, 30% 74%, center;
  }
  100% {
    background-position: 100% 8%, 0% 100%, center;
  }
}

/* Soft animated aura inside hero sections */
.csb-home-hero,
.csb-single-hero,
.csb-archive-hero {
  isolation: isolate;
}

.csb-home-hero::after,
.csb-single-hero::after,
.csb-archive-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(62vw, 820px);
  height: min(62vw, 820px);
  right: -18vw;
  top: -22vw;
  border-radius: 999px;
  background:
    radial-gradient(circle, rgba(34, 211, 238, 0.28), rgba(139, 92, 246, 0.14) 42%, transparent 70%);
  filter: blur(42px);
  opacity: 0.72;
  animation: csb-orb-float 13s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes csb-orb-float {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: .54;
  }
  50% {
    transform: translate3d(-6vw, 5vh, 0) scale(1.08);
    opacity: .84;
  }
  100% {
    transform: translate3d(-11vw, -2vh, 0) scale(.96);
    opacity: .66;
  }
}

/* Header: richer glass and subtle live glow */
.csb-header {
  background:
    linear-gradient(90deg, rgba(5, 8, 22, 0.88), rgba(9, 14, 32, 0.78)),
    rgba(5, 8, 22, 0.78);
  backdrop-filter: blur(22px) saturate(1.25);
  -webkit-backdrop-filter: blur(22px) saturate(1.25);
  box-shadow: 0 18px 60px rgba(0,0,0,.24);
}

.csb-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34,211,238,.42), rgba(139,92,246,.32), transparent);
  opacity: .88;
}

/* Brand and nav interactions */
.csb-brand__mark,
.csb-btn,
.csb-badge,
.csb-kicker,
.csb-card,
.csb-single-hero__image,
.csb-home-hero__panel,
.csb-editorial-box {
  transition:
    transform var(--csb-motion-med) var(--csb-ease-out),
    border-color var(--csb-motion-med) var(--csb-ease-out),
    box-shadow var(--csb-motion-med) var(--csb-ease-out),
    background var(--csb-motion-med) var(--csb-ease-out),
    filter var(--csb-motion-med) var(--csb-ease-out);
}

.csb-brand:hover .csb-brand__mark {
  transform: translateY(-2px) rotate(-4deg);
  box-shadow:
    0 18px 52px rgba(34,211,238,.22),
    inset 0 0 18px rgba(34,211,238,.16);
}

.csb-nav a {
  position: relative;
  transition: color var(--csb-motion-fast) var(--csb-ease-out);
}

.csb-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -8px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--csb-cyan), var(--csb-violet));
  transition: right var(--csb-motion-med) var(--csb-ease-out);
}

.csb-nav a:hover::after {
  right: 0;
}

.csb-btn {
  position: relative;
  overflow: hidden;
}

.csb-btn::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.45) 42%, transparent 70%);
  transform: translateX(-130%) skewX(-18deg);
  transition: transform 680ms var(--csb-ease-out);
  pointer-events: none;
}

.csb-btn:hover::before {
  transform: translateX(130%) skewX(-18deg);
}

/* Language switcher: flag pills, active state and micro motion */
.csb-lang-switcher--flags {
  padding: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,0.045);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.csb-lang-switcher--flags a,
.csb-lang-switcher--flags span {
  transform: translateZ(0);
  transition:
    transform var(--csb-motion-med) var(--csb-ease-out),
    background var(--csb-motion-med) var(--csb-ease-out),
    box-shadow var(--csb-motion-med) var(--csb-ease-out),
    border-color var(--csb-motion-med) var(--csb-ease-out),
    opacity var(--csb-motion-med) var(--csb-ease-out);
  opacity: .58;
}

.csb-lang-switcher--flags a:hover,
.csb-lang-switcher--flags span:hover {
  transform: translateY(-2px) scale(1.05);
  opacity: .95;
  background: rgba(255,255,255,.09);
}

.csb-lang-switcher--flags .current-lang a,
.csb-lang-switcher--flags .current-lang span {
  opacity: 1;
  transform: scale(1.08);
  background:
    radial-gradient(circle at 35% 20%, rgba(34,211,238,.38), transparent 55%),
    rgba(34, 211, 238, 0.16);
  border-color: rgba(34, 211, 238, 0.60);
  box-shadow:
    0 0 0 1px rgba(34,211,238,.12),
    0 8px 30px rgba(34,211,238,.22);
}

.csb-lang-switcher--flags .current-lang img {
  box-shadow:
    0 0 0 1px rgba(255,255,255,.22),
    0 0 18px rgba(34,211,238,.24);
}

/* Hero entrance and premium depth */
.csb-single-hero__copy,
.csb-home-hero__copy,
.csb-archive-hero__inner,
.csb-home-hero__panel,
.csb-single-hero__image,
.csb-section__head,
.csb-editorial-box {
  will-change: transform, opacity;
}

body.csb-ready .csb-single-hero__copy,
body.csb-ready .csb-home-hero__copy,
body.csb-ready .csb-archive-hero__inner {
  animation: csb-reveal-up 760ms var(--csb-ease-out) both;
}

body.csb-ready .csb-single-hero__image,
body.csb-ready .csb-home-hero__panel {
  animation: csb-reveal-card 880ms var(--csb-ease-out) 90ms both;
}

@keyframes csb-reveal-up {
  from {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
    filter: blur(8px);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
  }
}

@keyframes csb-reveal-card {
  from {
    opacity: 0;
    transform: translate3d(0, 30px, 0) scale(.985);
    filter: blur(10px);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
}

.csb-single-hero__image,
.csb-home-hero__panel,
.csb-card,
.csb-editorial-box {
  backdrop-filter: blur(18px) saturate(1.18);
  -webkit-backdrop-filter: blur(18px) saturate(1.18);
}

.csb-single-hero__image:hover,
.csb-home-hero__panel:hover,
.csb-card:hover,
.csb-editorial-box:hover {
  border-color: rgba(34,211,238,.30);
  box-shadow:
    var(--csb-shadow),
    0 0 80px rgba(34,211,238,.08);
}

/* Animated signal panel lines */
.csb-signal-lines i {
  position: relative;
  overflow: hidden;
}

.csb-signal-lines i::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 45%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.62), transparent);
  transform: translateX(-120%);
  animation: csb-line-scan 2.6s ease-in-out infinite;
}

.csb-signal-lines i:nth-child(2)::after { animation-delay: .25s; }
.csb-signal-lines i:nth-child(3)::after { animation-delay: .5s; }
.csb-signal-lines i:nth-child(4)::after { animation-delay: .75s; }

@keyframes csb-line-scan {
  0%, 35% { transform: translateX(-125%); }
  78%, 100% { transform: translateX(230%); }
}

/* Cards: reveal on scroll + subtle hover */
.csb-reveal {
  opacity: 0;
  transform: translate3d(0, 22px, 0);
  filter: blur(8px);
}

.csb-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  filter: blur(0);
  transition:
    opacity 720ms var(--csb-ease-out),
    transform 720ms var(--csb-ease-out),
    filter 720ms var(--csb-ease-out);
}

.csb-card {
  background:
    linear-gradient(145deg, rgba(255,255,255,.045), transparent 38%),
    rgba(11, 16, 32, 0.74);
}

.csb-card:hover {
  transform: translateY(-6px);
}

.csb-card__image {
  position: relative;
}

.csb-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,.14) 42%, transparent 70%);
  transform: translateX(-130%) skewX(-16deg);
  transition: transform 840ms var(--csb-ease-out);
  pointer-events: none;
}

.csb-card:hover .csb-card__image::after {
  transform: translateX(130%) skewX(-16deg);
}

/* Post content link polish */
.csb-post-content a {
  transition:
    color var(--csb-motion-fast) var(--csb-ease-out),
    border-color var(--csb-motion-fast) var(--csb-ease-out),
    text-shadow var(--csb-motion-fast) var(--csb-ease-out);
}

.csb-post-content a:hover {
  text-shadow: 0 0 18px rgba(251,191,36,.22);
}

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }

  .csb-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}


/* v0.2.5 — liquid glass hero shell.
   Fixes the homepage top block looking like a hard-edged rectangle.
   The hero now sits inside a rounded translucent glass container with animated light blobs.
   Kept under generic csb-* selectors for reuse on Rising Brief / future sites. */

.csb-home {
  background: transparent !important;
}

.csb-home-hero {
  padding: clamp(22px, 3vw, 42px) 0 clamp(34px, 4vw, 58px);
}

.csb-home-hero__inner {
  width: min(var(--csb-max), calc(100% - 36px));
  min-height: clamp(520px, 58vw, 680px);
  padding: clamp(34px, 5vw, 72px);
  border-radius: clamp(28px, 3vw, 44px);
  border: 1px solid rgba(255, 255, 255, 0.13);
  background:
    radial-gradient(circle at 18% 18%, rgba(139, 92, 246, 0.22), transparent 34%),
    radial-gradient(circle at 88% 16%, rgba(34, 211, 238, 0.22), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.026) 42%, rgba(255,255,255,0.045)),
    rgba(8, 13, 30, 0.70);
  box-shadow:
    0 34px 110px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255,255,255,0.13),
    inset 0 -1px 0 rgba(255,255,255,0.045),
    0 0 90px rgba(34, 211, 238, 0.055);
  backdrop-filter: blur(26px) saturate(1.22);
  -webkit-backdrop-filter: blur(26px) saturate(1.22);
  overflow: hidden;
  position: relative;
}

.csb-home-hero__inner::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  background:
    linear-gradient(120deg, rgba(255,255,255,0.16), transparent 28%, transparent 72%, rgba(34,211,238,0.10)),
    linear-gradient(180deg, rgba(255,255,255,0.055), transparent 48%);
  pointer-events: none;
  opacity: 0.68;
}

.csb-home-hero__inner::after {
  content: "";
  position: absolute;
  width: min(70vw, 920px);
  height: min(70vw, 920px);
  right: -24%;
  top: -42%;
  border-radius: 999px;
  background:
    radial-gradient(circle, rgba(34,211,238,0.26), rgba(139,92,246,0.12) 44%, transparent 70%);
  filter: blur(46px);
  opacity: 0.66;
  animation: csb-liquid-glass-orb 14s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes csb-liquid-glass-orb {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: .48;
  }
  50% {
    transform: translate3d(-8%, 12%, 0) scale(1.12);
    opacity: .78;
  }
  100% {
    transform: translate3d(-18%, 4%, 0) scale(.98);
    opacity: .58;
  }
}

.csb-home-hero__copy,
.csb-home-hero__panel {
  position: relative;
  z-index: 2;
}

.csb-home-hero__panel {
  background:
    radial-gradient(circle at 12% 6%, rgba(34, 211, 238, 0.16), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035)),
    rgba(15, 23, 42, 0.56);
  border-color: rgba(255,255,255,0.16);
  box-shadow:
    0 26px 86px rgba(0,0,0,0.32),
    inset 0 1px 0 rgba(255,255,255,0.12);
}

.csb-home-hero__panel:hover {
  transform: translateY(-4px);
}

/* Make the archive and single hero tops feel like the same liquid system,
   but keep them less boxed than the homepage. */
.csb-archive-hero__inner,
.csb-single-hero__inner {
  border-radius: clamp(24px, 2.4vw, 38px);
}

.csb-archive-hero__inner {
  margin-top: clamp(20px, 3vw, 36px);
  padding: clamp(42px, 5vw, 76px);
  border: 1px solid rgba(255,255,255,0.10);
  background:
    radial-gradient(circle at 88% 12%, rgba(34,211,238,0.15), transparent 34%),
    radial-gradient(circle at 12% 90%, rgba(139,92,246,0.15), transparent 38%),
    rgba(8, 13, 30, 0.48);
  backdrop-filter: blur(20px) saturate(1.16);
  -webkit-backdrop-filter: blur(20px) saturate(1.16);
  box-shadow:
    0 24px 90px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.08);
  overflow: hidden;
}

/* Remove the previous archive padding duplication after boxing it. */
.csb-archive .csb-archive-hero__inner {
  padding: clamp(42px, 5vw, 76px);
}

@media (max-width: 680px) {
  .csb-home-hero {
    padding: 16px 0 32px;
  }

  .csb-home-hero__inner {
    width: min(100% - 24px, var(--csb-max));
    padding: 28px 20px;
    border-radius: 28px;
    min-height: auto;
  }

  .csb-home-hero__panel {
    min-height: 260px;
    padding: 24px;
  }

  .csb-archive-hero__inner {
    width: min(100% - 24px, var(--csb-max));
    padding: 34px 22px;
    border-radius: 26px;
  }
}


/* v0.2.6 — rounded outer atmosphere + mobile category menu.
   Fixes the visible hard-corner outer hero background and adds a mobile menu
   with all categories, without duplicating Elementor templates. */

.csb-home-hero {
  width: min(calc(var(--csb-max) + 96px), calc(100% - 24px));
  margin: clamp(14px, 2vw, 28px) auto clamp(28px, 4vw, 58px);
  padding: clamp(20px, 2.8vw, 42px);
  border-radius: clamp(36px, 4vw, 64px);
  overflow: hidden;
  background:
    radial-gradient(circle at 92% 4%, rgba(34, 211, 238, 0.18), transparent 28rem),
    radial-gradient(circle at 4% 96%, rgba(139, 92, 246, 0.18), transparent 30rem),
    rgba(5, 8, 22, 0.42);
  backdrop-filter: blur(20px) saturate(1.16);
  -webkit-backdrop-filter: blur(20px) saturate(1.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.055),
    0 30px 120px rgba(0,0,0,0.18);
  isolation: isolate;
}

.csb-home-hero::before {
  border-radius: inherit;
  inset: 0;
  opacity: .82;
  filter: blur(0.2px);
}

.csb-home-hero::after {
  border-radius: 999px;
}

/* Soft edge mask for modern browsers: it subtly fades the outer atmosphere
   so the bottom-left/top-right never feel like a hard rectangle. */
@supports (mask-image: radial-gradient(circle, #000, transparent)) {
  .csb-home-hero {
    mask-image:
      radial-gradient(circle at top right, #000 0, #000 64%, rgba(0,0,0,.72) 82%, transparent 102%),
      linear-gradient(#000, #000);
    mask-composite: intersect;
  }
}

/* Keep the actual inner liquid glass card perfectly rounded and detached. */
.csb-home-hero__inner {
  width: 100%;
  border-radius: clamp(34px, 4vw, 56px);
}

.csb-home-hero__inner::before,
.csb-home-hero__inner::after {
  border-radius: inherit;
}

/* Mobile menu */
.csb-mobile-menu {
  display: none;
  position: relative;
  margin-left: auto;
}

.csb-mobile-menu summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 14px;
  border-radius: 999px;
  color: var(--csb-text);
  font-weight: 850;
  font-size: 14px;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.10), rgba(255,255,255,0.045)),
    rgba(11,16,32,0.72);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.09),
    0 16px 42px rgba(0,0,0,0.22);
  transition:
    transform var(--csb-motion-med) var(--csb-ease-out),
    border-color var(--csb-motion-med) var(--csb-ease-out),
    background var(--csb-motion-med) var(--csb-ease-out);
}

.csb-mobile-menu summary::-webkit-details-marker {
  display: none;
}

.csb-mobile-menu[open] summary,
.csb-mobile-menu summary:hover {
  transform: translateY(-1px);
  border-color: rgba(34,211,238,.44);
  background:
    radial-gradient(circle at 20% 10%, rgba(34,211,238,.22), transparent 55%),
    rgba(11,16,32,.78);
}

.csb-mobile-menu__icon,
.csb-mobile-menu__icon::before,
.csb-mobile-menu__icon::after {
  display: block;
  width: 17px;
  height: 2px;
  border-radius: 999px;
  background: var(--csb-cyan);
  transition:
    transform var(--csb-motion-med) var(--csb-ease-out),
    opacity var(--csb-motion-med) var(--csb-ease-out);
}

.csb-mobile-menu__icon {
  position: relative;
}

.csb-mobile-menu__icon::before,
.csb-mobile-menu__icon::after {
  content: "";
  position: absolute;
  left: 0;
}

.csb-mobile-menu__icon::before {
  top: -6px;
}

.csb-mobile-menu__icon::after {
  top: 6px;
}

.csb-mobile-menu[open] .csb-mobile-menu__icon {
  transform: rotate(45deg);
}

.csb-mobile-menu[open] .csb-mobile-menu__icon::before {
  transform: translateY(6px) rotate(90deg);
}

.csb-mobile-menu[open] .csb-mobile-menu__icon::after {
  opacity: 0;
}

.csb-mobile-menu__panel {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  width: min(88vw, 380px);
  padding: 16px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,0.14);
  background:
    radial-gradient(circle at 85% 8%, rgba(34,211,238,.18), transparent 38%),
    radial-gradient(circle at 0% 100%, rgba(139,92,246,.18), transparent 42%),
    rgba(7, 11, 26, 0.94);
  backdrop-filter: blur(28px) saturate(1.25);
  -webkit-backdrop-filter: blur(28px) saturate(1.25);
  box-shadow:
    0 28px 90px rgba(0,0,0,.48),
    inset 0 1px 0 rgba(255,255,255,.08);
  z-index: 80;
  transform-origin: top right;
  animation: csb-mobile-menu-pop 260ms var(--csb-ease-out) both;
}

@keyframes csb-mobile-menu-pop {
  from {
    opacity: 0;
    transform: translate3d(0, -10px, 0) scale(.975);
    filter: blur(8px);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
}

.csb-mobile-menu__langs {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 12px;
}

.csb-mobile-menu__nav {
  display: grid;
  gap: 8px;
}

.csb-mobile-menu__nav a {
  color: var(--csb-text-soft);
  font-weight: 780;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px solid rgba(255,255,255,0.07);
  transition:
    color var(--csb-motion-fast) var(--csb-ease-out),
    transform var(--csb-motion-med) var(--csb-ease-out),
    border-color var(--csb-motion-med) var(--csb-ease-out),
    background var(--csb-motion-med) var(--csb-ease-out);
}

.csb-mobile-menu__nav a:hover {
  color: var(--csb-cyan);
  transform: translateX(3px);
  border-color: rgba(34,211,238,.26);
  background: rgba(34,211,238,.08);
}

.csb-mobile-menu__cta {
  width: 100%;
  margin-top: 12px;
}

@media (max-width: 1024px) {
  .csb-header__actions {
    display: none;
  }

  .csb-mobile-menu {
    display: block;
  }
}

@media (max-width: 680px) {
  .csb-home-hero {
    width: min(100% - 12px, calc(var(--csb-max) + 96px));
    padding: 10px;
    border-radius: 34px;
  }

  .csb-home-hero__inner {
    border-radius: 30px;
  }

  .csb-mobile-menu summary span:last-child {
    display: none;
  }

  .csb-mobile-menu summary {
    width: 44px;
    justify-content: center;
    padding: 0;
  }

  .csb-mobile-menu__panel {
    right: -4px;
    width: min(92vw, 360px);
  }
}


/* v0.2.7 — remove hard outer hero rectangle + force mobile menu visibility.
   The outer atmosphere is now made from blurred pseudo-orbs only, so it cannot
   create sharp rectangular edges. */

.csb-home-hero {
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: visible !important;
  border-radius: 0 !important;
  width: 100% !important;
  margin: 0 auto clamp(28px, 4vw, 58px) !important;
  padding: clamp(26px, 3vw, 44px) 0 !important;
  position: relative;
}

.csb-home-hero::before,
.csb-home-hero::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px !important;
  filter: blur(58px) saturate(1.16);
  -webkit-filter: blur(58px) saturate(1.16);
  opacity: .62;
  transform: translateZ(0);
}

.csb-home-hero::before {
  width: min(54vw, 760px);
  height: min(54vw, 760px);
  left: -12vw;
  bottom: -16vw;
  background: radial-gradient(circle, rgba(139,92,246,.30), rgba(34,211,238,.08) 42%, transparent 72%);
  animation: csb-soft-edge-left 15s ease-in-out infinite alternate;
}

.csb-home-hero::after {
  width: min(58vw, 820px);
  height: min(58vw, 820px);
  right: -14vw;
  top: -18vw;
  background: radial-gradient(circle, rgba(34,211,238,.28), rgba(139,92,246,.10) 46%, transparent 74%);
  animation: csb-soft-edge-right 17s ease-in-out infinite alternate;
}

@keyframes csb-soft-edge-left {
  from { transform: translate3d(0, 0, 0) scale(1); opacity: .46; }
  to { transform: translate3d(6vw, -4vh, 0) scale(1.12); opacity: .72; }
}

@keyframes csb-soft-edge-right {
  from { transform: translate3d(0, 0, 0) scale(1); opacity: .50; }
  to { transform: translate3d(-7vw, 5vh, 0) scale(1.08); opacity: .76; }
}

/* Cancel the previous mask trick because it could make a visible rectangular
   clip edge in some browser/theme combinations. */
@supports (mask-image: radial-gradient(circle, #000, transparent)) {
  .csb-home-hero {
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }
}

.csb-home-hero__inner {
  position: relative;
  z-index: 2;
  width: min(var(--csb-max), calc(100% - 36px)) !important;
  margin: 0 auto !important;
}

/* Mobile menu must win against earlier header/action rules and Elementor CSS. */
.csb-header .csb-mobile-menu {
  display: none !important;
}

@media (max-width: 1100px) {
  .csb-header .csb-nav,
  .csb-header .csb-header__actions {
    display: none !important;
    visibility: hidden !important;
  }

  .csb-header .csb-mobile-menu {
    display: block !important;
    visibility: visible !important;
  }
}

@media (max-width: 680px) {
  .csb-home-hero {
    padding: 12px 0 30px !important;
    margin-bottom: 34px !important;
  }

  .csb-home-hero__inner {
    width: min(100% - 22px, var(--csb-max)) !important;
  }

  .csb-home-hero::before {
    left: -45vw;
    bottom: -34vw;
    width: 120vw;
    height: 120vw;
    opacity: .42;
  }

  .csb-home-hero::after {
    right: -48vw;
    top: -44vw;
    width: 124vw;
    height: 124vw;
    opacity: .48;
  }
}


/* v0.2.8 — final glass shell restoration + stronger mobile menu.
   This intentionally overrides earlier experimental ambient layers:
   - no rectangular outer gradient panels,
   - hero content sits inside a rounded liquid-glass card,
   - mobile menu is near full-width and much more opaque/blurred,
   - gradient motion is restored on real glass cards, not on rectangular clips. */

/* Kill any remaining rectangular hero slabs from earlier versions or Elementor wrappers. */
.csb-home-hero,
.csb-single-hero,
.csb-archive-hero {
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Blurred ambient orbs only — these cannot create hard rectangular corners. */
.csb-home-hero::before,
.csb-home-hero::after,
.csb-single-hero::before,
.csb-single-hero::after,
.csb-archive-hero::before,
.csb-archive-hero::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px !important;
  filter: blur(72px) saturate(1.2);
  -webkit-filter: blur(72px) saturate(1.2);
  opacity: .54;
  background: transparent;
}

.csb-home-hero::before,
.csb-single-hero::before,
.csb-archive-hero::before {
  width: min(56vw, 780px);
  height: min(56vw, 780px);
  left: -16vw;
  bottom: -18vw;
  background: radial-gradient(circle, rgba(139,92,246,.30), rgba(34,211,238,.08) 42%, transparent 72%);
  animation: csb-soft-edge-left 16s ease-in-out infinite alternate;
}

.csb-home-hero::after,
.csb-single-hero::after,
.csb-archive-hero::after {
  width: min(60vw, 840px);
  height: min(60vw, 840px);
  right: -16vw;
  top: -18vw;
  background: radial-gradient(circle, rgba(34,211,238,.28), rgba(139,92,246,.10) 46%, transparent 74%);
  animation: csb-soft-edge-right 18s ease-in-out infinite alternate;
}

/* Restore the real rounded glass container. */
.csb-home-hero__inner,
.csb-single-hero__inner,
.csb-archive-hero__inner {
  position: relative !important;
  z-index: 2;
  width: min(var(--csb-max), calc(100% - 36px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: clamp(34px, 4vw, 58px) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(139, 92, 246, 0.25), transparent 35%),
    radial-gradient(circle at 88% 16%, rgba(34, 211, 238, 0.24), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,0.082), rgba(255,255,255,0.030) 44%, rgba(255,255,255,0.052)),
    rgba(8, 13, 30, 0.72) !important;
  background-size: 145% 145%, 155% 155%, auto, auto !important;
  animation:
    csb-glass-gradient-drift 16s ease-in-out infinite alternate,
    csb-reveal-card 880ms var(--csb-ease-out) 70ms both;
  box-shadow:
    0 34px 115px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -1px 0 rgba(255,255,255,.045),
    0 0 100px rgba(34,211,238,.06) !important;
  backdrop-filter: blur(30px) saturate(1.25) !important;
  -webkit-backdrop-filter: blur(30px) saturate(1.25) !important;
  overflow: hidden !important;
}

/* Home is a taller showcase card. Single/archive keep content-friendly spacing. */
.csb-home-hero__inner {
  min-height: clamp(520px, 58vw, 690px) !important;
  padding: clamp(34px, 5vw, 72px) !important;
}

.csb-single-hero__inner {
  padding: clamp(38px, 5vw, 76px) !important;
}

.csb-archive-hero__inner {
  padding: clamp(42px, 5vw, 76px) !important;
}

@keyframes csb-glass-gradient-drift {
  0% {
    background-position: 0% 18%, 100% 0%, center, center;
  }
  50% {
    background-position: 60% 45%, 40% 55%, center, center;
  }
  100% {
    background-position: 100% 8%, 0% 92%, center, center;
  }
}

/* Gloss layer on the actual glass card. */
.csb-home-hero__inner::before,
.csb-single-hero__inner::before,
.csb-archive-hero__inner::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: 0;
  border-radius: inherit;
  background:
    linear-gradient(120deg, rgba(255,255,255,.16), transparent 28%, transparent 72%, rgba(34,211,238,.10)),
    linear-gradient(180deg, rgba(255,255,255,.055), transparent 50%);
  pointer-events: none;
  opacity: .72;
}

.csb-home-hero__inner::after,
.csb-single-hero__inner::after,
.csb-archive-hero__inner::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: min(70vw, 920px);
  height: min(70vw, 920px);
  right: -24%;
  top: -42%;
  border-radius: 999px;
  background:
    radial-gradient(circle, rgba(34,211,238,.26), rgba(139,92,246,.12) 44%, transparent 70%);
  filter: blur(52px);
  opacity: .62;
  animation: csb-liquid-glass-orb 14s ease-in-out infinite alternate;
  pointer-events: none;
}

/* Keep actual hero content above the gloss/orb layers. */
.csb-home-hero__copy,
.csb-home-hero__panel,
.csb-single-hero__copy,
.csb-single-hero__image,
.csb-archive-hero__inner > * {
  position: relative;
  z-index: 2;
}

/* Stronger, cleaner glass panel inside hero. */
.csb-home-hero__panel,
.csb-single-hero__image {
  background:
    radial-gradient(circle at 12% 6%, rgba(34,211,238,.17), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.035)),
    rgba(15, 23, 42, .62) !important;
  border-color: rgba(255,255,255,.17) !important;
  backdrop-filter: blur(26px) saturate(1.22) !important;
  -webkit-backdrop-filter: blur(26px) saturate(1.22) !important;
}

/* Stronger mobile menu: full-width-ish, less transparent, more blur. */
@media (max-width: 1100px) {
  .csb-mobile-menu__panel {
    position: fixed !important;
    top: 78px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    padding: 18px !important;
    border-radius: 30px !important;
    background:
      radial-gradient(circle at 85% 8%, rgba(34,211,238,.24), transparent 38%),
      radial-gradient(circle at 0% 100%, rgba(139,92,246,.24), transparent 42%),
      linear-gradient(135deg, rgba(255,255,255,.095), rgba(255,255,255,.035)),
      rgba(6, 10, 24, .965) !important;
    backdrop-filter: blur(42px) saturate(1.35) !important;
    -webkit-backdrop-filter: blur(42px) saturate(1.35) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    box-shadow:
      0 32px 120px rgba(0,0,0,.62),
      inset 0 1px 0 rgba(255,255,255,.12),
      0 0 70px rgba(34,211,238,.10) !important;
  }

  .csb-mobile-menu__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }

  .csb-mobile-menu__nav a {
    min-height: 58px;
    display: flex;
    align-items: center;
    background:
      linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
      rgba(15,23,42,.72) !important;
    border-color: rgba(255,255,255,.12) !important;
    color: var(--csb-text) !important;
  }

  .csb-mobile-menu__langs {
    justify-content: flex-start !important;
    margin-bottom: 14px !important;
  }
}

@media (max-width: 680px) {
  .csb-home-hero,
  .csb-single-hero,
  .csb-archive-hero {
    padding: 14px 0 34px !important;
  }

  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(100% - 22px, var(--csb-max)) !important;
    border-radius: 30px !important;
    padding: 28px 20px !important;
  }

  .csb-home-hero__inner {
    min-height: auto !important;
  }

  .csb-mobile-menu__panel {
    top: 72px !important;
    left: 8px !important;
    right: 8px !important;
    border-radius: 26px !important;
  }

  .csb-mobile-menu__nav {
    grid-template-columns: 1fr;
  }

  .csb-mobile-menu__nav a {
    min-height: 52px;
  }
}


/* v0.2.9 — wider hero, meta chips and smoother mobile menu.
   This keeps the same CSB profile system, so Rising Brief and future sites can
   reuse the fixes without duplicate templates. */

:root {
  --csb-hero-max: 1460px;
}

/* Wider hero cards: more cinematic horizontal layout, less square. */
.csb-home-hero__inner,
.csb-single-hero__inner,
.csb-archive-hero__inner {
  width: min(var(--csb-hero-max), calc(100% - 48px)) !important;
}

.csb-home-hero__inner {
  min-height: clamp(500px, 42vw, 620px) !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(420px, 0.78fr) !important;
  gap: clamp(44px, 5vw, 82px) !important;
}

.csb-home-hero__copy {
  max-width: 760px;
}

.csb-home-hero__panel {
  justify-self: stretch;
  min-height: clamp(300px, 28vw, 420px) !important;
}

/* Single post hero should also feel wide, not like a boxed square. */
.csb-single-hero__inner {
  grid-template-columns: minmax(0, 1.12fr) minmax(380px, 0.78fr) !important;
  gap: clamp(42px, 5vw, 86px) !important;
}

.csb-single-hero__copy {
  max-width: 820px;
}

/* Date/read-time chips: nicer framed meta instead of loose text. */
.csb-single-hero__meta,
.csb-card__meta {
  flex-wrap: wrap;
  gap: 8px !important;
}

.csb-single-hero__meta span,
.csb-card__meta span {
  display: inline-flex;
  align-items: center;
}

.csb-single-hero__meta span:nth-child(1),
.csb-single-hero__meta span:nth-child(3),
.csb-card__meta span:nth-child(1),
.csb-card__meta span:nth-child(3) {
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.105);
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.028)),
    rgba(15, 23, 42, .54);
  color: var(--csb-text-soft);
  backdrop-filter: blur(14px) saturate(1.12);
  -webkit-backdrop-filter: blur(14px) saturate(1.12);
}

.csb-single-hero__meta span:nth-child(3),
.csb-card__meta span:nth-child(3) {
  border-color: rgba(139,92,246,.24);
  background:
    radial-gradient(circle at 20% 15%, rgba(139,92,246,.19), transparent 48%),
    linear-gradient(135deg, rgba(34,211,238,.06), rgba(255,255,255,.025)),
    rgba(15, 23, 42, .56);
  color: #dbeafe;
}

.csb-single-hero__meta span:nth-child(2),
.csb-card__meta span:nth-child(2) {
  color: rgba(148, 163, 184, .45);
}

/* Make category badges and meta chips feel like one design family. */
.csb-badge,
.csb-kicker,
.csb-single-hero__meta span:nth-child(1),
.csb-single-hero__meta span:nth-child(3),
.csb-card__meta span:nth-child(1),
.csb-card__meta span:nth-child(3) {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 10px 30px rgba(0,0,0,.12);
}

/* Mobile menu close/open animation.
   JS adds .csb-menu-opening and .csb-menu-closing, keeping the panel in DOM long
   enough for closing animation. */
.csb-mobile-menu__panel {
  transform-origin: top right;
  transition:
    opacity 260ms var(--csb-ease-out),
    transform 260ms var(--csb-ease-out),
    filter 260ms var(--csb-ease-out);
}

.csb-mobile-menu:not([open]) .csb-mobile-menu__panel {
  opacity: 0;
  transform: translate3d(0, -10px, 0) scale(.975);
  filter: blur(8px);
  pointer-events: none;
}

.csb-mobile-menu[open] .csb-mobile-menu__panel,
.csb-mobile-menu.csb-menu-opening .csb-mobile-menu__panel {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
}

.csb-mobile-menu.csb-menu-closing .csb-mobile-menu__panel {
  opacity: 0;
  transform: translate3d(0, -10px, 0) scale(.975);
  filter: blur(8px);
  pointer-events: none;
}

/* Make the whole mobile menu more intentional and content readable. */
@media (max-width: 1100px) {
  .csb-mobile-menu__panel {
    top: 82px !important;
    left: 14px !important;
    right: 14px !important;
    padding: 20px !important;
    background:
      radial-gradient(circle at 85% 8%, rgba(34,211,238,.26), transparent 38%),
      radial-gradient(circle at 0% 100%, rgba(139,92,246,.28), transparent 42%),
      linear-gradient(135deg, rgba(255,255,255,.11), rgba(255,255,255,.04)),
      rgba(6, 10, 24, .982) !important;
    backdrop-filter: blur(52px) saturate(1.38) !important;
    -webkit-backdrop-filter: blur(52px) saturate(1.38) !important;
  }
}

/* Keep hero wide but responsive. */
@media (max-width: 1024px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner {
    grid-template-columns: 1fr !important;
  }

  .csb-home-hero__copy,
  .csb-single-hero__copy {
    max-width: none;
  }

  .csb-home-hero__panel {
    min-height: 320px !important;
  }
}

@media (max-width: 680px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(100% - 22px, var(--csb-hero-max)) !important;
  }

  .csb-home-hero__panel {
    min-height: 280px !important;
  }

  .csb-single-hero__meta span:nth-child(1),
  .csb-single-hero__meta span:nth-child(3),
  .csb-card__meta span:nth-child(1),
  .csb-card__meta span:nth-child(3) {
    min-height: 28px;
    padding: 0 10px;
  }
}


/* v0.3.0 — real JS-driven mobile menu + wider responsive hero.
   Replaces native <details> behavior with a controlled menu so open/close
   animations run every time. Hero width is capped for ultrawide screens. */

:root {
  --csb-hero-width-normal: 70vw;
  --csb-hero-max-ultrawide: 1680px;
  --csb-hero-min-readable: 1180px;
}

/* Wider, but capped: normal desktop gets ~70vw; ultrawide never becomes absurdly wide. */
@media (min-width: 1180px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(
      max(var(--csb-hero-width-normal), var(--csb-hero-min-readable)),
      var(--csb-hero-max-ultrawide),
      calc(100vw - 96px)
    ) !important;
  }

  .csb-home-hero__inner {
    min-height: clamp(460px, 34vw, 590px) !important;
    grid-template-columns: minmax(0, 1.16fr) minmax(420px, 0.72fr) !important;
    gap: clamp(48px, 5vw, 96px) !important;
  }

  .csb-single-hero__inner {
    grid-template-columns: minmax(0, 1.2fr) minmax(380px, 0.68fr) !important;
  }
}

@media (min-width: 2200px) {
  :root {
    --csb-hero-width-normal: 64vw;
    --csb-hero-max-ultrawide: 1760px;
  }
}

/* Controlled mobile menu: no native details, no one-shot animation. */
.csb-header .csb-mobile-menu {
  display: none !important;
  position: relative;
  margin-left: auto;
}

.csb-mobile-menu__toggle {
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid rgba(255,255,255,.14);
  cursor: pointer;
  user-select: none;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 14px;
  border-radius: 999px;
  color: var(--csb-text);
  font-weight: 850;
  font-size: 14px;
  background:
    radial-gradient(circle at 20% 10%, rgba(34,211,238,.14), transparent 52%),
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.045)),
    rgba(11,16,32,.78);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 16px 42px rgba(0,0,0,.22);
  transition:
    transform 240ms var(--csb-ease-out),
    border-color 240ms var(--csb-ease-out),
    background 240ms var(--csb-ease-out),
    box-shadow 240ms var(--csb-ease-out);
}

.csb-mobile-menu__toggle:hover,
.csb-mobile-menu.is-open .csb-mobile-menu__toggle {
  transform: translateY(-1px);
  border-color: rgba(34,211,238,.48);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 18px 56px rgba(34,211,238,.14);
}

/* New button-based open state. */
.csb-mobile-menu.is-open .csb-mobile-menu__icon {
  transform: rotate(45deg);
}

.csb-mobile-menu.is-open .csb-mobile-menu__icon::before {
  transform: translateY(6px) rotate(90deg);
}

.csb-mobile-menu.is-open .csb-mobile-menu__icon::after {
  opacity: 0;
}

.csb-mobile-menu__panel {
  display: block !important;
  visibility: visible !important;
  opacity: 0;
  transform: translate3d(0, -12px, 0) scale(.975);
  filter: blur(10px);
  pointer-events: none;
  transition:
    opacity 280ms var(--csb-ease-out),
    transform 280ms var(--csb-ease-out),
    filter 280ms var(--csb-ease-out);
  will-change: opacity, transform, filter;
}

.csb-mobile-menu.is-open .csb-mobile-menu__panel {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
  pointer-events: auto;
}

.csb-mobile-menu.is-closing .csb-mobile-menu__panel {
  opacity: 0;
  transform: translate3d(0, -12px, 0) scale(.975);
  filter: blur(10px);
  pointer-events: none;
}

/* Override all older details/open selectors that may exist earlier in the file. */
.csb-mobile-menu[open] .csb-mobile-menu__panel,
.csb-mobile-menu.csb-menu-opening .csb-mobile-menu__panel {
  opacity: inherit;
}

/* Richer mobile overlay. */
@media (max-width: 1100px) {
  .csb-header .csb-nav,
  .csb-header .csb-header__actions {
    display: none !important;
    visibility: hidden !important;
  }

  .csb-header .csb-mobile-menu {
    display: block !important;
    visibility: visible !important;
  }

  .csb-mobile-menu__panel {
    position: fixed !important;
    top: 82px !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-width: none !important;
    padding: 20px !important;
    border-radius: 30px !important;
    background:
      radial-gradient(circle at 85% 8%, rgba(34,211,238,.28), transparent 38%),
      radial-gradient(circle at 0% 100%, rgba(139,92,246,.30), transparent 42%),
      linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.045)),
      rgba(6, 10, 24, .986) !important;
    backdrop-filter: blur(56px) saturate(1.42) !important;
    -webkit-backdrop-filter: blur(56px) saturate(1.42) !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    box-shadow:
      0 32px 128px rgba(0,0,0,.66),
      inset 0 1px 0 rgba(255,255,255,.13),
      0 0 78px rgba(34,211,238,.12) !important;
    z-index: 9999 !important;
  }

  .csb-mobile-menu__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }
}

@media (max-width: 680px) {
  .csb-mobile-menu__toggle span:last-child {
    display: none;
  }

  .csb-mobile-menu__toggle {
    width: 44px;
    justify-content: center;
    padding: 0;
  }

  .csb-mobile-menu__panel {
    top: 72px !important;
    left: 8px !important;
    right: 8px !important;
    padding: 16px !important;
    border-radius: 26px !important;
  }

  .csb-mobile-menu__nav {
    grid-template-columns: 1fr !important;
  }
}


/* v0.3.1 — stable mobile menu visibility + cinematic bounded hero.
   This patch deliberately uses stronger selectors/!important because Elementor
   and previous experimental CSB rules may still be cached/ordered before it. */

:root {
  --csb-hero-target: 70vw;
  --csb-hero-min-desktop: 1180px;
  --csb-hero-max-from-height: calc(100vh * 16 / 9);
  --csb-hero-hard-max: 1680px;
}

/* Home hero: wide rectangle, not square, with ultrawide cap. */
@media (min-width: 1180px) {
  .csb-home-hero__inner {
    width: min(
      max(var(--csb-hero-target), var(--csb-hero-min-desktop)),
      var(--csb-hero-max-from-height),
      var(--csb-hero-hard-max),
      calc(100vw - 96px)
    ) !important;
    aspect-ratio: 16 / 7.2 !important;
    min-height: 0 !important;
    max-height: 70vh !important;
    padding: clamp(38px, 4.2vw, 68px) !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.72fr) !important;
    gap: clamp(44px, 4.6vw, 82px) !important;
    align-items: center !important;
  }

  .csb-home-hero__copy {
    max-width: 720px !important;
  }

  .csb-home-hero h1 {
    font-size: clamp(46px, 4.15vw, 74px) !important;
  }

  .csb-home-hero__panel {
    min-height: 0 !important;
    height: min(34vw, 380px) !important;
    max-height: 390px !important;
    align-self: center !important;
  }

  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(
      max(var(--csb-hero-target), var(--csb-hero-min-desktop)),
      var(--csb-hero-max-from-height),
      var(--csb-hero-hard-max),
      calc(100vw - 96px)
    ) !important;
  }
}

@media (min-width: 2200px) {
  :root {
    --csb-hero-target: 62vw;
    --csb-hero-hard-max: 1760px;
  }
}

/* Mobile/tablet remains fluid and stacked. */
@media (max-width: 1179px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(100% - 28px, var(--csb-hero-hard-max)) !important;
    aspect-ratio: auto !important;
    max-height: none !important;
  }
}

/* Controlled menu: CLOSED by default, always. */
.csb-header .csb-mobile-menu .csb-mobile-menu__panel {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translate3d(0, -12px, 0) scale(.975) !important;
  filter: blur(10px) !important;
  pointer-events: none !important;
  transition:
    opacity 280ms var(--csb-ease-out),
    visibility 0s linear 280ms,
    transform 280ms var(--csb-ease-out),
    filter 280ms var(--csb-ease-out) !important;
}

/* OPEN state. */
.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__panel {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
  filter: blur(0) !important;
  pointer-events: auto !important;
  transition:
    opacity 280ms var(--csb-ease-out),
    visibility 0s linear 0s,
    transform 280ms var(--csb-ease-out),
    filter 280ms var(--csb-ease-out) !important;
}

/* CLOSING state: visible while fading out, then JS removes class. */
.csb-header .csb-mobile-menu.is-closing .csb-mobile-menu__panel {
  opacity: 0 !important;
  visibility: visible !important;
  transform: translate3d(0, -12px, 0) scale(.975) !important;
  filter: blur(10px) !important;
  pointer-events: none !important;
  transition:
    opacity 280ms var(--csb-ease-out),
    visibility 0s linear 280ms,
    transform 280ms var(--csb-ease-out),
    filter 280ms var(--csb-ease-out) !important;
}

/* Make the mobile toggle look like the same liquid-glass family, not a debug/red outline. */
.csb-header .csb-mobile-menu__toggle,
.csb-header .csb-mobile-menu summary {
  color: var(--csb-text) !important;
  border-color: rgba(34,211,238,.34) !important;
  background:
    radial-gradient(circle at 22% 10%, rgba(34,211,238,.24), transparent 56%),
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.045)),
    rgba(11,16,32,.84) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 16px 48px rgba(0,0,0,.30),
    0 0 32px rgba(34,211,238,.08) !important;
  outline: none !important;
}

.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__toggle,
.csb-header .csb-mobile-menu__toggle:hover,
.csb-header .csb-mobile-menu summary:hover {
  border-color: rgba(34,211,238,.58) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 18px 58px rgba(34,211,238,.16),
    0 0 46px rgba(34,211,238,.12) !important;
}

/* Mobile menu panel: strong readable glass, not transparent over hero text. */
@media (max-width: 1100px) {
  .csb-header .csb-mobile-menu__panel {
    position: fixed !important;
    top: 82px !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-width: none !important;
    padding: 20px !important;
    border-radius: 30px !important;
    background:
      radial-gradient(circle at 85% 8%, rgba(34,211,238,.30), transparent 38%),
      radial-gradient(circle at 0% 100%, rgba(139,92,246,.32), transparent 42%),
      linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.045)),
      rgba(6, 10, 24, .992) !important;
    backdrop-filter: blur(64px) saturate(1.46) !important;
    -webkit-backdrop-filter: blur(64px) saturate(1.46) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow:
      0 36px 136px rgba(0,0,0,.72),
      inset 0 1px 0 rgba(255,255,255,.14),
      0 0 86px rgba(34,211,238,.13) !important;
    z-index: 99999 !important;
  }

  .csb-header .csb-mobile-menu__nav a {
    background:
      linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.035)),
      rgba(15,23,42,.82) !important;
    border-color: rgba(255,255,255,.14) !important;
  }
}

@media (max-width: 680px) {
  .csb-header .csb-mobile-menu__panel {
    top: 72px !important;
    left: 8px !important;
    right: 8px !important;
    border-radius: 26px !important;
  }
}


/* v0.3.2 — restore pleasant mobile menu + full-width breakout hero.
   - Mobile toggle returns to a clean rounded glass capsule.
   - Menu panel remains controlled by JS, but visually like the nicer earlier glass menu.
   - Hero sections break out of Elementor boxed containers, so the card is not clipped on the right.
   - The card itself is capped for ultrawide screens. */

:root {
  --csb-hero-target: 70vw;
  --csb-hero-cap-by-height: calc(100vh * 16 / 9);
  --csb-hero-hard-cap: 1680px;
}

/* Break out from Elementor/Hello boxed containers. This is the important fix for
   the cut-off right edge shown in the screenshot. */
.csb-home-hero,
.csb-single-hero,
.csb-archive-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Rounded liquid glass card: wide on normal desktop, capped on ultrawide. */
@media (min-width: 1180px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(
      var(--csb-hero-target),
      var(--csb-hero-cap-by-height),
      var(--csb-hero-hard-cap),
      calc(100vw - 96px)
    ) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .csb-home-hero__inner {
    aspect-ratio: 16 / 7.4 !important;
    min-height: 0 !important;
    max-height: 72vh !important;
    padding: clamp(38px, 4.2vw, 68px) !important;
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.72fr) !important;
    gap: clamp(44px, 4.8vw, 86px) !important;
    align-items: center !important;
  }

  .csb-single-hero__inner {
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.72fr) !important;
    gap: clamp(42px, 4.8vw, 86px) !important;
  }

  .csb-home-hero__panel {
    min-height: 0 !important;
    height: min(32vw, 370px) !important;
    max-height: 380px !important;
    align-self: center !important;
  }
}

/* On ultrawide: do not let 70vw become absurdly large. */
@media (min-width: 2200px) {
  :root {
    --csb-hero-target: 64vw;
    --csb-hero-hard-cap: 1760px;
  }
}

/* Tablet/mobile: full available width, stacked. */
@media (max-width: 1179px) {
  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(100% - 24px, 980px) !important;
    aspect-ratio: auto !important;
    max-height: none !important;
  }
}

/* Restore nicer mobile toggle: rounded glass capsule, icon-only on phone,
   no red/pink debug-looking border. */
.csb-header .csb-mobile-menu__toggle {
  width: auto !important;
  min-width: 58px !important;
  min-height: 46px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  color: var(--csb-text) !important;
  border: 1px solid rgba(34, 211, 238, .34) !important;
  background:
    radial-gradient(circle at 28% 14%, rgba(34, 211, 238, .30), transparent 58%),
    radial-gradient(circle at 88% 88%, rgba(139, 92, 246, .22), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.105), rgba(255,255,255,.040)),
    rgba(11, 16, 32, .88) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 16px 48px rgba(0,0,0,.28),
    0 0 34px rgba(34,211,238,.10) !important;
  outline: none !important;
}

.csb-header .csb-mobile-menu__toggle span:last-child {
  color: var(--csb-text-soft) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.csb-header .csb-mobile-menu__toggle:hover,
.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__toggle {
  border-color: rgba(34, 211, 238, .62) !important;
  transform: translateY(-1px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 18px 58px rgba(34,211,238,.16),
    0 0 46px rgba(34,211,238,.14) !important;
}

/* Icon color/animation: keep previous nice cyan hamburger. */
.csb-header .csb-mobile-menu__icon,
.csb-header .csb-mobile-menu__icon::before,
.csb-header .csb-mobile-menu__icon::after {
  background: var(--csb-cyan) !important;
  box-shadow: 0 0 14px rgba(34,211,238,.35);
}

/* Menu panel: near full width, stronger glass/blur, but closed by default. */
.csb-header .csb-mobile-menu .csb-mobile-menu__panel {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translate3d(0, -14px, 0) scale(.975) !important;
  filter: blur(12px) !important;
  pointer-events: none !important;
  transition:
    opacity 300ms var(--csb-ease-out),
    visibility 0s linear 300ms,
    transform 300ms var(--csb-ease-out),
    filter 300ms var(--csb-ease-out) !important;
}

.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__panel {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
  filter: blur(0) !important;
  pointer-events: auto !important;
  transition:
    opacity 300ms var(--csb-ease-out),
    visibility 0s linear 0s,
    transform 300ms var(--csb-ease-out),
    filter 300ms var(--csb-ease-out) !important;
}

.csb-header .csb-mobile-menu.is-closing .csb-mobile-menu__panel {
  opacity: 0 !important;
  visibility: visible !important;
  transform: translate3d(0, -14px, 0) scale(.975) !important;
  filter: blur(12px) !important;
  pointer-events: none !important;
}

@media (max-width: 1100px) {
  .csb-header .csb-nav,
  .csb-header .csb-header__actions {
    display: none !important;
    visibility: hidden !important;
  }

  .csb-header .csb-mobile-menu {
    display: block !important;
    visibility: visible !important;
  }

  .csb-header .csb-mobile-menu__panel {
    position: fixed !important;
    top: 82px !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-width: none !important;
    padding: 20px !important;
    border-radius: 30px !important;
    background:
      radial-gradient(circle at 84% 8%, rgba(34,211,238,.30), transparent 38%),
      radial-gradient(circle at 0% 100%, rgba(139,92,246,.34), transparent 42%),
      linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.045)),
      rgba(6, 10, 24, .985) !important;
    backdrop-filter: blur(56px) saturate(1.42) !important;
    -webkit-backdrop-filter: blur(56px) saturate(1.42) !important;
    border: 1px solid rgba(255,255,255,.21) !important;
    box-shadow:
      0 34px 128px rgba(0,0,0,.68),
      inset 0 1px 0 rgba(255,255,255,.14),
      0 0 82px rgba(34,211,238,.12) !important;
    z-index: 99999 !important;
  }
}

@media (max-width: 680px) {
  .csb-header .csb-mobile-menu__toggle {
    width: 58px !important;
    min-width: 58px !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .csb-header .csb-mobile-menu__toggle span:last-child {
    display: none !important;
  }

  .csb-header .csb-mobile-menu__panel {
    top: 72px !important;
    left: 8px !important;
    right: 8px !important;
    border-radius: 26px !important;
    padding: 16px !important;
  }
}


/* v0.3.3 — restore the premium pill-glass mobile menu button.
   This layer intentionally overrides all older square/debug-looking mobile toggle styles.
   It keeps the stable JS-controlled open/close logic from v0.3.x. */

/* Header mobile toggle: premium pill, not square. */
.csb-header .csb-mobile-menu {
  align-items: center !important;
}

.csb-header .csb-mobile-menu__toggle,
.csb-header .csb-mobile-menu summary {
  width: auto !important;
  min-width: 92px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 11px !important;
  color: var(--csb-text) !important;
  border: 1px solid rgba(34, 211, 238, .44) !important;
  background:
    radial-gradient(circle at 24% 16%, rgba(34,211,238,.42), transparent 48%),
    radial-gradient(circle at 92% 92%, rgba(139,92,246,.34), transparent 52%),
    linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.045)),
    rgba(10, 16, 36, .86) !important;
  backdrop-filter: blur(24px) saturate(1.32) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.32) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(255,255,255,.04),
    0 16px 48px rgba(0,0,0,.30),
    0 0 30px rgba(34,211,238,.13) !important;
  outline: none !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Subtle moving sheen on the pill. */
.csb-header .csb-mobile-menu__toggle::before,
.csb-header .csb-mobile-menu summary::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.38) 42%, transparent 70%);
  transform: translateX(-135%) skewX(-18deg);
  transition: transform 720ms var(--csb-ease-out);
  pointer-events: none;
}

.csb-header .csb-mobile-menu__toggle:hover::before,
.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__toggle::before,
.csb-header .csb-mobile-menu summary:hover::before,
.csb-header .csb-mobile-menu.is-open summary::before {
  transform: translateX(135%) skewX(-18deg);
}

.csb-header .csb-mobile-menu__toggle:hover,
.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__toggle,
.csb-header .csb-mobile-menu summary:hover,
.csb-header .csb-mobile-menu.is-open summary {
  transform: translateY(-1px) !important;
  border-color: rgba(34, 211, 238, .72) !important;
  background:
    radial-gradient(circle at 24% 16%, rgba(34,211,238,.54), transparent 50%),
    radial-gradient(circle at 92% 92%, rgba(139,92,246,.45), transparent 54%),
    linear-gradient(135deg, rgba(255,255,255,.17), rgba(255,255,255,.055)),
    rgba(10, 16, 36, .92) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 18px 58px rgba(34,211,238,.16),
    0 0 46px rgba(34,211,238,.16) !important;
}

.csb-header .csb-mobile-menu__toggle span:last-child,
.csb-header .csb-mobile-menu summary span:last-child {
  display: inline-flex !important;
  position: relative !important;
  z-index: 2 !important;
  color: var(--csb-text) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  letter-spacing: .01em !important;
  line-height: 1 !important;
}

/* Hamburger icon: clean cyan, no debug square feel. */
.csb-header .csb-mobile-menu__icon,
.csb-header .csb-mobile-menu__icon::before,
.csb-header .csb-mobile-menu__icon::after {
  width: 19px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: var(--csb-cyan) !important;
  box-shadow: 0 0 14px rgba(34,211,238,.46) !important;
  position: relative !important;
  z-index: 2 !important;
}

/* Preserve X animation with JS open state. */
.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__icon {
  transform: rotate(45deg) !important;
}

.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__icon::before {
  transform: translateY(6px) rotate(90deg) !important;
}

.csb-header .csb-mobile-menu.is-open .csb-mobile-menu__icon::after {
  opacity: 0 !important;
}

/* Panel stays from v0.3.x, but make it visually match the pill glass better. */
.csb-header .csb-mobile-menu__panel {
  border-radius: 34px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  background:
    radial-gradient(circle at 84% 8%, rgba(34,211,238,.32), transparent 38%),
    radial-gradient(circle at 0% 100%, rgba(139,92,246,.34), transparent 42%),
    linear-gradient(135deg, rgba(255,255,255,.135), rgba(255,255,255,.045)),
    rgba(6, 10, 24, .988) !important;
  backdrop-filter: blur(60px) saturate(1.44) !important;
  -webkit-backdrop-filter: blur(60px) saturate(1.44) !important;
}

/* Mobile phone: still pill-like, icon-only, not square. */
@media (max-width: 680px) {
  .csb-header .csb-mobile-menu__toggle,
  .csb-header .csb-mobile-menu summary {
    width: 62px !important;
    min-width: 62px !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    border-radius: 999px !important;
  }

  .csb-header .csb-mobile-menu__toggle span:last-child,
  .csb-header .csb-mobile-menu summary span:last-child {
    display: none !important;
  }

  .csb-header .csb-mobile-menu__panel {
    border-radius: 28px !important;
  }
}

/* v0.3.4 — homepage pagination + safer responsive hero scaling.
   Adds numeric page switcher to CSB loops and removes rigid hero height/aspect locks
   that could clip the main banner while resizing browser width. */

.csb-pagination {
  width: 100%;
  margin: clamp(26px, 4vw, 46px) auto 0;
  display: flex;
  justify-content: center;
}

.csb-pagination__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background:
    radial-gradient(circle at 20% 0%, rgba(34, 211, 238, 0.15), transparent 45%),
    linear-gradient(135deg, rgba(255,255,255,0.09), rgba(255,255,255,0.032)),
    rgba(8, 13, 30, 0.78);
  box-shadow:
    0 20px 70px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255,255,255,0.10);
  backdrop-filter: blur(22px) saturate(1.2);
  -webkit-backdrop-filter: blur(22px) saturate(1.2);
}

.csb-pagination .page-numbers {
  position: relative;
  isolation: isolate;
  min-width: 42px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--csb-text-soft) !important;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: -0.01em;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.045);
  overflow: hidden;
  transition:
    transform var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1)),
    color var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1)),
    border-color var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1)),
    box-shadow var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1)),
    background var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1));
}

.csb-pagination a.page-numbers::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(34,211,238,0.28), rgba(139,92,246,0.20));
  opacity: 0;
  transform: scale(.74);
  transition:
    opacity var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1)),
    transform var(--csb-motion-med, 280ms) var(--csb-ease-out, cubic-bezier(.16,1,.3,1));
}

.csb-pagination a.page-numbers:hover,
.csb-pagination a.page-numbers:focus-visible {
  transform: translateY(-3px);
  color: var(--csb-text) !important;
  border-color: rgba(34, 211, 238, 0.48);
  box-shadow:
    0 14px 38px rgba(34,211,238,0.13),
    0 0 34px rgba(139,92,246,0.10);
  outline: none;
}

.csb-pagination a.page-numbers:hover::before,
.csb-pagination a.page-numbers:focus-visible::before {
  opacity: 1;
  transform: scale(1);
}

.csb-pagination .page-numbers.current {
  color: #020617 !important;
  background: linear-gradient(135deg, var(--csb-cyan), var(--csb-violet));
  border-color: rgba(255,255,255,0.18);
  box-shadow:
    0 16px 44px rgba(34,211,238,0.20),
    inset 0 1px 0 rgba(255,255,255,0.22);
}

.csb-pagination .page-numbers.dots {
  min-width: 30px;
  padding: 0 4px;
  color: var(--csb-text-muted) !important;
  border-color: transparent;
  background: transparent;
}

.csb-pagination .prev,
.csb-pagination .next {
  min-width: 88px;
  padding-inline: 16px;
}

/* Final responsive hero override: keep the cinematic card, but let content define height.
   This prevents clipping when the viewport is narrowed between desktop and tablet widths. */
.csb-home-hero,
.csb-single-hero,
.csb-archive-hero {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

.csb-home-hero__inner {
  box-sizing: border-box !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

@media (min-width: 1180px) {
  .csb-home-hero__inner {
    min-height: clamp(500px, 44vw, 680px) !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.70fr) !important;
    gap: clamp(34px, 4vw, 78px) !important;
  }

  .csb-home-hero__panel {
    height: auto !important;
    min-height: clamp(280px, 26vw, 390px) !important;
    max-height: none !important;
  }
}

@media (max-width: 1179px) {
  .csb-home-hero,
  .csb-single-hero,
  .csb-archive-hero {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .csb-home-hero__inner,
  .csb-single-hero__inner,
  .csb-archive-hero__inner {
    width: min(100% - 24px, 980px) !important;
    max-width: calc(100% - 24px) !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
  }
}

@media (max-width: 680px) {
  .csb-pagination__inner {
    width: min(100%, 420px);
    gap: 8px;
    border-radius: 28px;
  }

  .csb-pagination .page-numbers {
    min-width: 38px;
    min-height: 38px;
    padding: 0 12px;
    font-size: 13px;
  }

  .csb-pagination .prev,
  .csb-pagination .next {
    flex: 1 1 120px;
  }
}

/* -------------------------------------------------------------------------
   AnimeWorld.info profile — colorful minimalist magazine shell
   ------------------------------------------------------------------------- */

body.csb-profile-animeworld {
  --csb-bg: #fff9fb;
  --csb-surface: rgba(255, 255, 255, 0.88);
  --csb-surface-soft: rgba(255, 255, 255, 0.72);
  --csb-border: rgba(15, 23, 42, 0.09);
  --csb-border-soft: rgba(15, 23, 42, 0.08);
  --csb-text: #17121f;
  --csb-text-soft: #3f364a;
  --csb-text-muted: #7d7487;
  --csb-active-accent: #ff2d55;
  --csb-active-accent-rgb: 255, 45, 85;
  --csb-radius: 22px;
  --csb-radius-lg: 34px;
  --csb-max: 1280px;
  background:
    radial-gradient(circle at 10% 0%, rgba(255, 45, 85, 0.11), transparent 34rem),
    radial-gradient(circle at 88% 8%, rgba(6, 182, 212, 0.15), transparent 32rem),
    radial-gradient(circle at 50% 90%, rgba(245, 158, 11, 0.11), transparent 42rem),
    linear-gradient(180deg, #ffffff 0%, #fff9fb 50%, #f8fbff 100%);
  color: var(--csb-text);
}

body.csb-aw-tone-news { --csb-active-accent: #ff2d55; --csb-active-accent-rgb: 255, 45, 85; }
body.csb-aw-tone-anime_reviews { --csb-active-accent: #8b5cf6; --csb-active-accent-rgb: 139, 92, 246; }
body.csb-aw-tone-seasonal_episode_reviews { --csb-active-accent: #06b6d4; --csb-active-accent-rgb: 6, 182, 212; }
body.csb-aw-tone-figures { --csb-active-accent: #f59e0b; --csb-active-accent-rgb: 245, 158, 11; }
body.csb-aw-tone-merch_info { --csb-active-accent: #10b981; --csb-active-accent-rgb: 16, 185, 129; }

.csb-profile-animeworld .csb-header,
.csb-profile-animeworld .csb-footer,
.csb-profile-animeworld .csb-home,
.csb-profile-animeworld .csb-single,
.csb-profile-animeworld .csb-archive {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--csb-text);
}

.csb-profile-animeworld .csb-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255, 255, 255, 0.76);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 18px 54px rgba(15, 23, 42, 0.08);
  backdrop-filter: blur(22px) saturate(1.35);
  overflow: clip;
  transition: box-shadow 280ms ease, background 280ms ease, border-color 280ms ease;
}

.csb-header--animeworld::before {
  content: "";
  position: absolute;
  inset: -80px -10% auto;
  height: 160px;
  background:
    radial-gradient(circle at 25% 48%, rgba(255, 45, 85, 0.20), transparent 22rem),
    radial-gradient(circle at 70% 44%, rgba(6, 182, 212, 0.18), transparent 24rem);
  pointer-events: none;
  filter: blur(10px);
  opacity: 0.95;
}

.csb-header--animeworld.is-collapsed {
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 44px rgba(15, 23, 42, 0.10);
}

.csb-aw-logo-row {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  max-height: 146px;
  padding: 28px 18px 20px;
  opacity: 1;
  transform: translateY(0) scale(1);
  transition: max-height 420ms cubic-bezier(.2,.9,.2,1), padding 420ms cubic-bezier(.2,.9,.2,1), opacity 260ms ease, transform 420ms cubic-bezier(.2,.9,.2,1);
}

.csb-header--animeworld.is-collapsed .csb-aw-logo-row {
  max-height: 0;
  padding-top: 0;
  padding-bottom: 0;
  opacity: 0;
  transform: translateY(-22px) scale(0.92);
  pointer-events: none;
}

.csb-aw-logo-link,
.csb-aw-logo,
.csb-aw-footer__logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--csb-text);
}

.csb-aw-logo__image {
  display: block;
  width: auto;
  max-width: min(360px, 78vw);
  max-height: 86px;
  object-fit: contain;
  filter: drop-shadow(0 12px 18px rgba(255, 45, 85, 0.12));
}

.csb-aw-logo--fallback,
.csb-aw-mini-logo__logo--fallback,
.csb-aw-footer-logo--fallback {
  gap: 10px;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.csb-aw-logo--fallback > span,
.csb-aw-mini-logo__logo--fallback > span,
.csb-aw-footer-logo--fallback > span {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: linear-gradient(135deg, #ff2d55, #ffb703 48%, #06b6d4);
  color: #fff;
  box-shadow: 0 18px 40px rgba(255, 45, 85, 0.22);
}

.csb-aw-flash {
  position: relative;
  z-index: 2;
  width: min(var(--csb-max), calc(100% - 44px));
  max-height: 58px;
  margin: 0 auto 14px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  border-radius: 999px;
  background:
    linear-gradient(90deg, #17121f 0 9rem, var(--csb-active-accent) 9rem 100%);
  border: 1px solid rgba(255, 255, 255, 0.82);
  box-shadow: 0 20px 42px rgba(var(--csb-active-accent-rgb), 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.45);
  overflow: hidden;
  transition: max-height 380ms cubic-bezier(.2,.9,.2,1), margin 380ms cubic-bezier(.2,.9,.2,1), opacity 260ms ease, transform 380ms cubic-bezier(.2,.9,.2,1);
}

.csb-header--animeworld.is-collapsed .csb-aw-flash {
  max-height: 0;
  margin-bottom: 0;
  opacity: 0;
  transform: translateY(-12px);
  pointer-events: none;
}

.csb-aw-flash__label {
  position: relative;
  z-index: 2;
  height: 48px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #fff;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.csb-aw-flash__label i {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--csb-active-accent);
  box-shadow: 0 0 0 7px rgba(var(--csb-active-accent-rgb), 0.16), 0 0 18px rgba(var(--csb-active-accent-rgb), 0.72);
  animation: csbAwPulse 1.4s ease-in-out infinite;
}

.csb-aw-flash__track {
  overflow: hidden;
  min-width: 0;
}

.csb-aw-flash__items {
  display: inline-flex;
  align-items: center;
  gap: 28px;
  min-width: max-content;
  animation: csbAwMarquee 34s linear infinite;
}

.csb-aw-flash:hover .csb-aw-flash__items {
  animation-play-state: paused;
}

.csb-aw-flash__item,
.csb-aw-flash__empty {
  height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff !important;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: -0.025em;
  white-space: nowrap;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.18);
}

.csb-aw-flash__item img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(255, 255, 255, 0.85);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18);
}

.csb-aw-menu-row {
  position: relative;
  z-index: 3;
  min-height: 66px;
  width: min(var(--csb-max), calc(100% - 44px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  transition: min-height 320ms ease, width 320ms ease;
}

.csb-header--animeworld.is-collapsed .csb-aw-menu-row {
  min-height: 58px;
}

.csb-aw-mini-logo {
  display: inline-flex;
  align-items: center;
  max-width: 0;
  opacity: 0;
  transform: translateX(-18px) scale(0.9);
  pointer-events: none;
  overflow: hidden;
  transition: max-width 380ms cubic-bezier(.2,.9,.2,1), opacity 220ms ease, transform 380ms cubic-bezier(.2,.9,.2,1);
}

.csb-header--animeworld.is-collapsed .csb-aw-mini-logo {
  max-width: 190px;
  opacity: 1;
  transform: translateX(0) scale(1);
  pointer-events: auto;
}

.csb-aw-mini-logo__logo__image {
  width: auto;
  max-width: 154px;
  max-height: 34px;
  object-fit: contain;
}

.csb-aw-mini-logo__logo--fallback > span {
  width: 36px;
  height: 36px;
  border-radius: 13px;
  font-size: 13px;
}

.csb-aw-mini-logo__logo--fallback strong {
  display: none;
}

.csb-aw-menu {
  min-width: 0;
  justify-self: center;
}

.csb-aw-menu__list,
.csb-aw-menu .menu,
.csb-aw-menu__fallback {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 2.8vw, 34px);
}

.csb-aw-menu__list li,
.csb-aw-menu .menu li {
  position: relative;
  margin: 0;
}

.csb-aw-menu a,
.csb-aw-menu__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #221a2d !important;
  font-size: clamp(13px, 1.2vw, 15px);
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color 180ms ease, transform 180ms ease;
}

.csb-aw-menu a::after,
.csb-aw-menu__link::after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 5px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--csb-active-accent), #06b6d4);
  transition: left 220ms ease, right 220ms ease, opacity 220ms ease;
  opacity: 0;
}

.csb-aw-menu a:hover,
.csb-aw-menu__link:hover {
  color: var(--csb-active-accent) !important;
  transform: translateY(-1px);
}

.csb-aw-menu a:hover::after,
.csb-aw-menu__link:hover::after,
.csb-aw-menu .current-menu-item > a::after {
  left: 0;
  right: 0;
  opacity: 1;
}

.csb-aw-search {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #221a2d !important;
  font-size: 26px;
  line-height: 1;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.07);
  transition: transform 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.csb-aw-search:hover {
  color: var(--csb-active-accent) !important;
  transform: translateY(-1px) rotate(-8deg);
  box-shadow: 0 16px 34px rgba(var(--csb-active-accent-rgb), 0.18);
}

.csb-home--animeworld {
  position: relative;
  overflow: hidden;
  color: var(--csb-text);
}

.csb-home--animeworld::before,
.csb-home--animeworld::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px;
  filter: blur(28px);
  opacity: 0.64;
  animation: csbAwFloat 11s ease-in-out infinite alternate;
}

.csb-home--animeworld::before {
  width: 340px;
  height: 340px;
  top: 90px;
  left: -120px;
  background: rgba(255, 45, 85, 0.16);
}

.csb-home--animeworld::after {
  width: 420px;
  height: 420px;
  right: -160px;
  top: 460px;
  background: rgba(6, 182, 212, 0.15);
  animation-delay: -3s;
}

.csb-aw-latest-hero {
  position: relative;
  z-index: 1;
  width: min(var(--csb-max), calc(100% - 44px));
  margin: 0 auto;
  padding: clamp(36px, 5vw, 74px) 0 clamp(58px, 6vw, 94px);
}

.csb-aw-latest-hero__head {
  max-width: 880px;
  margin: 0 auto clamp(24px, 4vw, 42px);
  text-align: center;
}

.csb-profile-animeworld .csb-kicker {
  min-height: 30px;
  background: rgba(var(--csb-active-accent-rgb), 0.10);
  border-color: rgba(var(--csb-active-accent-rgb), 0.28);
  color: var(--csb-active-accent) !important;
}

.csb-aw-latest-hero__head .csb-kicker {
  margin: 0 auto 14px;
}

.csb-aw-latest-hero__head h1 {
  margin: 0;
  color: var(--csb-text);
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  font-size: clamp(42px, 7vw, 92px);
  line-height: 0.92;
  letter-spacing: -0.075em;
  text-wrap: balance;
}

.csb-aw-latest-hero__head p {
  max-width: 720px;
  margin: 18px auto 0;
  color: var(--csb-text-soft);
  font-size: clamp(16px, 1.8vw, 20px);
  line-height: 1.72;
}

.csb-aw-category-rail {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin: 0 auto clamp(24px, 4vw, 42px);
}

.csb-aw-category-pill {
  --pill-rgb: var(--csb-active-accent-rgb);
  position: relative;
  isolation: isolate;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 0 16px;
  border-radius: 999px;
  color: #17121f !important;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(var(--csb-active-accent-rgb), 0.24);
  box-shadow: 0 14px 34px rgba(var(--csb-active-accent-rgb), 0.10), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  overflow: hidden;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.03em;
  transition: transform 180ms ease, box-shadow 180ms ease, color 180ms ease;
}

.csb-aw-category-pill::before {
  content: "";
  position: absolute;
  inset: 5px auto 5px 5px;
  width: 30px;
  border-radius: inherit;
  background: var(--csb-active-accent);
  opacity: 0.18;
  z-index: -1;
  transition: width 220ms ease, opacity 220ms ease;
}

.csb-aw-category-pill:hover {
  transform: translateY(-2px);
  color: var(--csb-active-accent) !important;
  box-shadow: 0 20px 44px rgba(var(--csb-active-accent-rgb), 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.csb-aw-category-pill:hover::before {
  width: calc(100% - 10px);
  opacity: 0.12;
}

.csb-aw-mosaic {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: clamp(190px, 19vw, 260px);
  gap: 14px;
}

.csb-aw-tile {
  position: relative;
  min-width: 0;
  border-radius: clamp(22px, 2.4vw, 34px);
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.12);
  overflow: hidden;
  transform: translateZ(0);
}

.csb-aw-tile--feature {
  grid-column: span 2;
  grid-row: span 2;
}

.csb-aw-tile--wide {
  grid-column: span 2;
}

.csb-aw-tile > a,
.csb-aw-tile__media {
  position: absolute;
  inset: 0;
  display: block;
  color: #fff !important;
}

.csb-aw-tile__media::before,
.csb-aw-tile__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.csb-aw-tile__media::before {
  background: linear-gradient(180deg, rgba(7, 9, 18, 0.04), rgba(7, 9, 18, 0.18) 35%, rgba(7, 9, 18, 0.82));
}

.csb-aw-tile__media::after {
  background:
    radial-gradient(circle at 18% 14%, rgba(var(--csb-active-accent-rgb), 0.42), transparent 23rem),
    linear-gradient(135deg, rgba(var(--csb-active-accent-rgb), 0.30), transparent 42%);
  mix-blend-mode: screen;
  opacity: 0.58;
  transition: opacity 240ms ease;
}

.csb-aw-tile img,
.csb-aw-tile__fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.015);
  transition: transform 520ms cubic-bezier(.2,.9,.2,1), filter 520ms ease;
}

.csb-aw-tile__fallback {
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,0.52), transparent 24rem),
    linear-gradient(135deg, var(--csb-active-accent), #06b6d4);
}

.csb-aw-tile__overlay {
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  display: grid;
  gap: 10px;
  padding: clamp(18px, 2vw, 28px);
}

.csb-aw-tile__overlay strong {
  max-width: 980px;
  color: #fff;
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  font-size: clamp(20px, 2.2vw, 34px);
  line-height: 1.04;
  letter-spacing: -0.045em;
  text-shadow: 0 10px 30px rgba(0, 0, 0, 0.38);
  text-wrap: balance;
}

.csb-aw-tile:not(.csb-aw-tile--feature) .csb-aw-tile__overlay strong {
  font-size: clamp(18px, 1.55vw, 25px);
}

.csb-aw-tile__overlay small {
  color: rgba(255, 255, 255, 0.84);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0.02em;
}

.csb-profile-animeworld .csb-badges {
  gap: 7px;
}

.csb-profile-animeworld .csb-badge {
  min-height: 27px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(var(--csb-active-accent-rgb), 0.96);
  border: 1px solid rgba(255, 255, 255, 0.42);
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(var(--csb-active-accent-rgb), 0.24);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.csb-aw-tile::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 4;
  background: linear-gradient(110deg, transparent 0 38%, rgba(255,255,255,0.55) 48%, transparent 58% 100%);
  transform: translateX(-120%);
  pointer-events: none;
}

.csb-aw-tile:hover {
  box-shadow: 0 30px 84px rgba(var(--csb-active-accent-rgb), 0.18), 0 22px 70px rgba(15, 23, 42, 0.13);
}

.csb-aw-tile:hover::before {
  animation: csbAwShine 900ms ease;
}

.csb-aw-tile:hover img,
.csb-aw-tile:hover .csb-aw-tile__fallback {
  transform: scale(1.075);
  filter: saturate(1.12) contrast(1.04);
}

.csb-aw-tile:hover .csb-aw-tile__media::after {
  opacity: 0.82;
}

.csb-profile-animeworld .csb-archive-hero__inner,
.csb-profile-animeworld .csb-single-hero__inner,
.csb-profile-animeworld .csb-content-shell,
.csb-profile-animeworld .csb-section {
  width: min(var(--csb-max), calc(100% - 44px));
}

.csb-profile-animeworld .csb-archive-hero,
.csb-profile-animeworld .csb-single-hero {
  background:
    radial-gradient(circle at 70% 16%, rgba(var(--csb-active-accent-rgb), 0.20), transparent 30rem),
    radial-gradient(circle at 18% 80%, rgba(6, 182, 212, 0.13), transparent 32rem);
}

.csb-profile-animeworld .csb-archive-hero__inner,
.csb-profile-animeworld .csb-single-hero__inner {
  border-radius: clamp(28px, 3.5vw, 48px);
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid rgba(255, 255, 255, 0.72);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.10);
  backdrop-filter: blur(16px) saturate(1.22);
}

.csb-profile-animeworld .csb-single-hero h1,
.csb-profile-animeworld .csb-archive-hero h1 {
  color: var(--csb-text);
}

.csb-profile-animeworld .csb-single-hero__excerpt,
.csb-profile-animeworld .csb-archive-hero p,
.csb-profile-animeworld .csb-card__excerpt,
.csb-profile-animeworld .csb-card__meta,
.csb-profile-animeworld .csb-single-hero__meta {
  color: var(--csb-text-muted);
}

.csb-profile-animeworld .csb-card {
  background: rgba(255, 255, 255, 0.78);
  border-color: rgba(15, 23, 42, 0.08);
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.09);
}

.csb-profile-animeworld .csb-card__title a,
.csb-profile-animeworld .csb-post-content,
.csb-profile-animeworld .csb-post-content h2,
.csb-profile-animeworld .csb-post-content h3,
.csb-profile-animeworld .csb-editorial-box strong {
  color: var(--csb-text) !important;
}

.csb-profile-animeworld .csb-card__image-fallback {
  background: linear-gradient(135deg, var(--csb-active-accent), #06b6d4);
}

.csb-profile-animeworld .csb-editorial-box,
.csb-profile-animeworld .csb-post-content {
  background: rgba(255, 255, 255, 0.82);
  border-color: rgba(15, 23, 42, 0.08);
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.08);
}

.csb-footer--animeworld {
  margin-top: 0;
  color: var(--csb-text);
  background:
    radial-gradient(circle at 16% 0%, rgba(255, 45, 85, 0.12), transparent 28rem),
    radial-gradient(circle at 84% 0%, rgba(6, 182, 212, 0.15), transparent 30rem),
    rgba(255, 255, 255, 0.66);
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.csb-aw-footer__inner {
  width: min(var(--csb-max), calc(100% - 44px));
  margin: 0 auto;
  padding: 50px 0;
  display: grid;
  gap: 20px;
  place-items: center;
  text-align: center;
}

.csb-aw-footer-logo__image {
  max-height: 60px;
  width: auto;
}

.csb-aw-footer__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 18px;
}

.csb-aw-footer__links a {
  color: var(--csb-text-soft) !important;
  font-weight: 850;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.csb-aw-footer__links a:hover {
  color: var(--csb-active-accent) !important;
}

.csb-aw-footer__inner p {
  max-width: 680px;
  margin: 0;
  color: var(--csb-text-muted);
}

.csb-aw-footer__inner small {
  color: var(--csb-text-muted);
  font-weight: 750;
}

@keyframes csbAwMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@keyframes csbAwPulse {
  0%, 100% { transform: scale(1); opacity: 0.92; }
  50% { transform: scale(0.72); opacity: 0.62; }
}

@keyframes csbAwFloat {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(26px, 34px, 0) scale(1.08); }
}

@keyframes csbAwShine {
  from { transform: translateX(-120%); }
  to { transform: translateX(120%); }
}

@media (max-width: 1100px) {
  .csb-aw-flash,
  .csb-aw-menu-row,
  .csb-aw-latest-hero,
  .csb-aw-footer__inner,
  .csb-profile-animeworld .csb-archive-hero__inner,
  .csb-profile-animeworld .csb-single-hero__inner,
  .csb-profile-animeworld .csb-content-shell,
  .csb-profile-animeworld .csb-section {
    width: min(100% - 26px, 980px) !important;
  }

  .csb-aw-menu-row {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .csb-aw-menu {
    overflow-x: auto;
    scrollbar-width: none;
  }

  .csb-aw-menu::-webkit-scrollbar {
    display: none;
  }

  .csb-aw-menu__list,
  .csb-aw-menu .menu,
  .csb-aw-menu__fallback {
    width: max-content;
    min-width: 100%;
    justify-content: flex-start;
    gap: 18px;
  }

  .csb-aw-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: clamp(190px, 32vw, 250px);
  }
}

@media (max-width: 720px) {
  .csb-aw-logo-row {
    padding: 20px 12px 14px;
  }

  .csb-aw-logo__image {
    max-height: 66px;
  }

  .csb-aw-flash {
    grid-template-columns: 112px minmax(0, 1fr);
    border-radius: 22px;
  }

  .csb-aw-flash__label {
    padding-inline: 14px;
    font-size: 12px;
  }

  .csb-aw-menu-row {
    gap: 10px;
    min-height: 58px;
  }

  .csb-aw-mini-logo__logo__image {
    max-width: 110px;
    max-height: 30px;
  }

  .csb-aw-search {
    width: 38px;
    height: 38px;
  }

  .csb-aw-latest-hero {
    padding-top: 32px;
  }

  .csb-aw-latest-hero__head {
    text-align: left;
  }

  .csb-aw-latest-hero__head .csb-kicker {
    margin-left: 0;
  }

  .csb-aw-category-rail {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .csb-aw-category-rail::-webkit-scrollbar {
    display: none;
  }

  .csb-aw-category-pill {
    flex: 0 0 auto;
  }

  .csb-aw-mosaic {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: 265px;
  }

  .csb-aw-tile--feature,
  .csb-aw-tile--wide {
    grid-column: span 1;
    grid-row: span 1;
  }

  .csb-aw-tile__overlay strong,
  .csb-aw-tile:not(.csb-aw-tile--feature) .csb-aw-tile__overlay strong {
    font-size: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .csb-aw-flash__items,
  .csb-aw-flash__label i,
  .csb-home--animeworld::before,
  .csb-home--animeworld::after {
    animation: none !important;
  }

  .csb-header--animeworld,
  .csb-aw-logo-row,
  .csb-aw-flash,
  .csb-aw-mini-logo,
  .csb-aw-tile img,
  .csb-aw-tile__fallback {
    transition: none !important;
  }
}

/* ===== AnimeWorld 0.4.1 polish overrides ===== */
body.csb-profile-animeworld {
  --csb-text: #1f2432;
  --csb-text-soft: #50576a;
  --csb-text-muted: #6b7280;
  --csb-surface-page: #f8f5fb;
  --csb-surface-card: rgba(255,255,255,.84);
  --csb-shadow-soft: 0 22px 60px rgba(31,36,50,.10);
  background:
    radial-gradient(circle at top left, rgba(255, 45, 85, 0.10), transparent 26rem),
    radial-gradient(circle at top right, rgba(6, 182, 212, 0.10), transparent 26rem),
    linear-gradient(180deg, #fcfafe 0%, #f8f6fb 52%, #f8f7fc 100%);
  color: var(--csb-text);
}

.csb-profile-animeworld .csb-header,
.csb-profile-animeworld .csb-footer,
.csb-profile-animeworld .csb-home,
.csb-profile-animeworld .csb-single,
.csb-profile-animeworld .csb-archive {
  font-family: "Manrope", Inter, system-ui, sans-serif;
}

.csb-profile-animeworld h1,
.csb-profile-animeworld h2,
.csb-profile-animeworld h3,
.csb-profile-animeworld h4,
.csb-profile-animeworld .csb-aw-tile__overlay strong,
.csb-profile-animeworld .csb-card__title,
.csb-profile-animeworld .csb-single-hero h1,
.csb-profile-animeworld .csb-archive-hero h1 {
  font-family: "Outfit", "Space Grotesk", Inter, system-ui, sans-serif;
}

.csb-profile-animeworld .csb-header {
  overflow: visible;
}

.csb-header--animeworld .csb-aw-menu-row {
  position: relative;
  overflow: visible;
}

.csb-aw-search-panel {
  position: absolute;
  top: calc(100% + 14px);
  right: 0;
  width: min(420px, calc(100vw - 30px));
  padding: 16px;
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.09);
  box-shadow: 0 26px 70px rgba(15,23,42,.16);
  backdrop-filter: blur(20px) saturate(1.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px) scale(.98);
  transform-origin: top right;
  transition: opacity 220ms ease, transform 280ms cubic-bezier(.16,1,.3,1), visibility 220ms ease;
  z-index: 30;
}

.csb-aw-search-panel.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

.csb-aw-search-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}

.csb-aw-search-form input {
  min-height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(248,250,252,.9);
  padding: 0 18px;
  color: var(--csb-text);
  font: inherit;
}

.csb-aw-search-form button {
  min-height: 48px;
  padding: 0 18px;
  border-radius: 999px;
  border: 0;
  font: inherit;
  font-weight: 800;
  color: #fff;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed);
  box-shadow: 0 12px 28px rgba(var(--csb-active-accent-rgb), .22);
  cursor: pointer;
}

.csb-aw-home-shell {
  width: min(var(--csb-max), calc(100% - 44px));
  margin: 0 auto;
  padding: 18px 0 80px;
}

.csb-aw-home-section {
  margin-top: clamp(34px, 5vw, 56px);
}

.csb-section__head--left {
  text-align: left;
  margin-bottom: 20px;
}

.csb-section__head--left .csb-kicker {
  margin-inline: 0;
}

.csb-aw-feature {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(320px,.92fr);
  gap: clamp(26px, 3vw, 38px);
  align-items: center;
  padding: clamp(28px, 4vw, 42px);
  margin: 0 0 clamp(28px, 4vw, 42px);
  border-radius: clamp(30px, 4vw, 42px);
  background:
    radial-gradient(circle at 12% 16%, rgba(var(--csb-active-accent-rgb), .18), transparent 20rem),
    radial-gradient(circle at 88% 84%, rgba(6,182,212,.14), transparent 24rem),
    rgba(255,255,255,.82);
  border: 1px solid rgba(255,255,255,.9);
  box-shadow: 0 34px 90px rgba(31,36,50,.12);
  overflow: hidden;
}

.csb-aw-feature::before {
  content: "";
  position: absolute;
  inset: -1px;
  background: linear-gradient(130deg, rgba(255,255,255,.55), transparent 24%, transparent 70%, rgba(var(--csb-active-accent-rgb), .14));
  pointer-events: none;
}

.csb-aw-feature__copy { position: relative; z-index: 1; }
.csb-aw-feature__copy h1 {
  margin: 12px 0 14px;
  font-size: clamp(34px, 5.2vw, 64px);
  line-height: .95;
  letter-spacing: -.06em;
  color: var(--csb-text);
}
.csb-aw-feature__copy h1 a { color: inherit !important; }
.csb-aw-feature__copy p {
  max-width: 62ch;
  margin: 0;
  color: var(--csb-text-soft);
  font-size: clamp(16px, 1.5vw, 20px);
  line-height: 1.75;
}
.csb-aw-feature__meta,
.csb-aw-tile__overlay small {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.csb-aw-meta-chip {
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(15,23,42,.08);
  color: #50576a;
  font-size: 13px;
  font-weight: 800;
  box-shadow: 0 10px 22px rgba(15,23,42,.06);
  animation: csbChipFloat 4.4s ease-in-out infinite;
}
.csb-aw-meta-chip--read {
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--csb-active-accent-rgb), .94), rgba(124,58,237,.92));
  border-color: transparent;
  box-shadow: 0 12px 28px rgba(var(--csb-active-accent-rgb), .22);
  animation-delay: -.8s;
}
.csb-aw-feature__actions { margin-top: 18px; }
.csb-aw-feature__media {
  position: relative;
  display: block;
  min-height: clamp(280px, 33vw, 430px);
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 26px 60px rgba(15,23,42,.18);
}
.csb-aw-feature__media::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 18%, rgba(255,255,255,.18), transparent 18rem), linear-gradient(180deg, rgba(9,12,23,0) 0%, rgba(9,12,23,.08) 100%);
  z-index: 1;
  pointer-events: none;
}
.csb-aw-feature__media img,
.csb-aw-feature__media .csb-aw-tile__fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform 900ms cubic-bezier(.16,1,.3,1), filter 900ms ease;
  animation: csbHeroImageDrift 9.5s ease-in-out infinite alternate;
}
.csb-aw-feature:hover .csb-aw-feature__media img,
.csb-aw-feature:hover .csb-aw-feature__media .csb-aw-tile__fallback {
  transform: scale(1.07);
  filter: saturate(1.08) contrast(1.03);
}

.csb-aw-mosaic { margin-top: 10px; }
.csb-aw-tile__overlay {
  gap: 12px;
}
.csb-aw-tile__overlay em {
  font-style: normal;
  display: block;
  max-width: 62ch;
  color: rgba(255,255,255,.88);
  font-size: 14px;
  line-height: 1.55;
}
.csb-aw-tile:not(.csb-aw-tile--feature) .csb-aw-tile__overlay em {
  display: none;
}
.csb-aw-tile__overlay strong {
  max-width: 16ch;
}
.csb-aw-tile--feature .csb-aw-tile__overlay strong,
.csb-aw-tile--wide .csb-aw-tile__overlay strong {
  max-width: 25ch;
}
.csb-aw-tile img,
.csb-aw-tile__fallback,
.csb-card__image img,
.csb-single-hero__image img,
.csb-post-content img {
  object-fit: cover;
}
.csb-card__image {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}
.csb-card__image img {
  width: 100%;
  height: 100%;
  display: block;
}

.csb-profile-animeworld .csb-card {
  border-radius: 28px;
  overflow: hidden;
  background: rgba(255,255,255,.82);
}
.csb-profile-animeworld .csb-card__body {
  padding: 22px 22px 24px;
}
.csb-profile-animeworld .csb-card__title a {
  font-size: clamp(22px, 2vw, 32px);
  line-height: 1.08;
  letter-spacing: -.04em;
}
.csb-profile-animeworld .csb-card__excerpt {
  color: var(--csb-text-soft);
  font-size: 15px;
  line-height: 1.72;
}
.csb-profile-animeworld .csb-card__meta span:nth-child(1),
.csb-profile-animeworld .csb-card__meta span:nth-child(3),
.csb-profile-animeworld .csb-single-hero__meta span:nth-child(1),
.csb-profile-animeworld .csb-single-hero__meta span:nth-child(3) {
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--csb-active-accent-rgb), .95), rgba(124,58,237,.85));
  border: 0;
  box-shadow: 0 10px 24px rgba(var(--csb-active-accent-rgb), .18);
}
.csb-profile-animeworld .csb-card__meta span:nth-child(2),
.csb-profile-animeworld .csb-single-hero__meta span:nth-child(2) {
  display: none;
}

.csb-profile-animeworld .csb-single {
  padding-top: 10px;
}
.csb-profile-animeworld .csb-single-hero,
.csb-profile-animeworld .csb-archive-hero {
  padding-top: 4px;
}
.csb-profile-animeworld .csb-single-hero__inner,
.csb-profile-animeworld .csb-archive-hero__inner {
  padding: clamp(28px, 4vw, 42px);
  gap: clamp(24px, 4vw, 42px);
}
.csb-profile-animeworld .csb-single-hero__copy,
.csb-profile-animeworld .csb-archive-hero__inner > * {
  position: relative;
  z-index: 1;
}
.csb-profile-animeworld .csb-single-hero h1,
.csb-profile-animeworld .csb-archive-hero h1 {
  margin: 12px 0 14px;
  font-size: clamp(38px, 5vw, 74px);
  line-height: .95;
  letter-spacing: -.06em;
}
.csb-profile-animeworld .csb-single-hero__excerpt,
.csb-profile-animeworld .csb-archive-hero p {
  color: var(--csb-text-soft);
  font-size: clamp(16px, 1.4vw, 19px);
  line-height: 1.8;
}
.csb-profile-animeworld .csb-single-hero__image {
  position: relative;
  min-height: clamp(300px, 32vw, 440px);
  border-radius: 30px;
  overflow: hidden;
  background: rgba(255,255,255,.78);
  box-shadow: 0 30px 80px rgba(15,23,42,.16);
}
.csb-profile-animeworld .csb-single-hero__image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.14), transparent 35%, rgba(10,12,22,.08));
  z-index: 1;
  pointer-events: none;
}
.csb-profile-animeworld .csb-single-hero__image img {
  width: 100%;
  height: 100%;
  animation: csbHeroImageDrift 10s ease-in-out infinite alternate;
}

.csb-profile-animeworld .csb-content-shell {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 22px;
  margin-top: 24px;
  margin-bottom: 30px;
}
.csb-profile-animeworld .csb-post-content,
.csb-profile-animeworld .csb-editorial-box {
  border-radius: 30px;
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(255,255,255,.9);
  box-shadow: var(--csb-shadow-soft);
  padding: clamp(24px, 4vw, 38px);
}
.csb-profile-animeworld .csb-post-content {
  font-size: 17px;
  line-height: 1.9;
  color: #2d3447;
}
.csb-profile-animeworld .csb-post-content p { margin: 0 0 1.2em; }
.csb-profile-animeworld .csb-post-content h2,
.csb-profile-animeworld .csb-post-content h3,
.csb-profile-animeworld .csb-post-content h4 {
  position: relative;
  margin: 1.7em 0 .7em;
  padding-left: 18px;
  line-height: 1.04;
}
.csb-profile-animeworld .csb-post-content h2::before,
.csb-profile-animeworld .csb-post-content h3::before,
.csb-profile-animeworld .csb-post-content h4::before {
  content: "";
  position: absolute;
  inset: .12em auto .12em 0;
  width: 6px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--csb-active-accent), #7c3aed);
  box-shadow: 0 0 16px rgba(var(--csb-active-accent-rgb), .25);
}
.csb-profile-animeworld .csb-post-content h2 { font-size: clamp(34px, 3.6vw, 50px); letter-spacing: -.045em; }
.csb-profile-animeworld .csb-post-content h3 { font-size: clamp(26px, 2.7vw, 34px); letter-spacing: -.04em; }
.csb-profile-animeworld .csb-post-content h4 { font-size: clamp(22px, 2.2vw, 28px); letter-spacing: -.03em; }
.csb-profile-animeworld .csb-post-content a {
  color: var(--csb-active-accent) !important;
  text-decoration-thickness: 2px;
  text-decoration-color: rgba(var(--csb-active-accent-rgb), .34);
  text-underline-offset: 3px;
}
.csb-profile-animeworld .csb-post-content blockquote {
  padding: 20px 22px;
  border-left: 4px solid var(--csb-active-accent);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(var(--csb-active-accent-rgb), .09), rgba(124,58,237,.06));
  color: var(--csb-text);
}
.csb-profile-animeworld .csb-post-content .wp-block-image img,
.csb-profile-animeworld .csb-post-content .wp-block-gallery img {
  border-radius: 22px;
  box-shadow: 0 18px 40px rgba(15,23,42,.12);
  transition: transform 320ms cubic-bezier(.16,1,.3,1), box-shadow 320ms ease;
}
.csb-profile-animeworld .csb-post-content .wp-block-image img:hover,
.csb-profile-animeworld .csb-post-content .wp-block-gallery img:hover {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 26px 54px rgba(15,23,42,.16);
}
.csb-profile-animeworld .csb-post-content .wp-block-gallery,
.csb-profile-animeworld .csb-post-content .blocks-gallery-grid {
  gap: 14px;
}
.csb-profile-animeworld .csb-post-content .wp-block-gallery figure,
.csb-profile-animeworld .csb-post-content .blocks-gallery-item {
  overflow: hidden;
  border-radius: 22px;
}

.csb-profile-animeworld .csb-editorial-box {
  color: var(--csb-text-soft);
}
.csb-profile-animeworld .csb-editorial-box strong {
  display: inline-flex;
  margin-bottom: 10px;
  font-size: 19px;
}

.csb-profile-animeworld .csb-pagination__inner {
  background: rgba(62, 72, 95, 0.82);
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 20px 46px rgba(31,36,50,.14);
}
.csb-profile-animeworld .csb-pagination .page-numbers {
  color: rgba(255,255,255,.86) !important;
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.08);
}
.csb-profile-animeworld .csb-pagination .page-numbers.current {
  color: #fff !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed);
}
.csb-profile-animeworld .csb-pagination .page-numbers.dots {
  color: rgba(255,255,255,.55) !important;
}

.csb-profile-animeworld .csb-aw-footer__inner {
  padding: 62px 0;
}

@keyframes csbHeroImageDrift {
  from { transform: scale(1.02) translate3d(0,0,0); }
  to { transform: scale(1.08) translate3d(0,-8px,0); }
}
@keyframes csbChipFloat {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}

@media (max-width: 1024px) {
  .csb-aw-feature,
  .csb-profile-animeworld .csb-single-hero__inner {
    grid-template-columns: 1fr;
  }
  .csb-aw-feature__media,
  .csb-profile-animeworld .csb-single-hero__image {
    order: -1;
  }
}

@media (max-width: 767px) {
  .csb-aw-home-shell,
  .csb-profile-animeworld .csb-archive-hero__inner,
  .csb-profile-animeworld .csb-single-hero__inner,
  .csb-profile-animeworld .csb-content-shell,
  .csb-profile-animeworld .csb-section,
  .csb-aw-flash,
  .csb-aw-menu-row,
  .csb-aw-footer__inner {
    width: min(var(--csb-max), calc(100% - 24px));
  }
  .csb-aw-search-panel {
    right: -4px;
    left: -4px;
    width: auto;
  }
  .csb-aw-search-form {
    grid-template-columns: 1fr;
  }
  .csb-profile-animeworld .csb-post-content,
  .csb-profile-animeworld .csb-editorial-box,
  .csb-aw-feature {
    border-radius: 24px;
  }
  .csb-aw-feature__copy h1,
  .csb-profile-animeworld .csb-single-hero h1,
  .csb-profile-animeworld .csb-archive-hero h1 {
    font-size: clamp(30px, 9vw, 46px);
  }
}

/* ===== AnimeWorld 0.4.3 emergency layout/color/comments hotfix ===== */
body.csb-profile-animeworld,
body.csb-profile-animeworld #page,
body.csb-profile-animeworld .site,
body.csb-profile-animeworld .elementor,
body.csb-profile-animeworld .elementor-location-single,
body.csb-profile-animeworld .elementor-location-archive {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

body.csb-profile-animeworld .csb-home--animeworld,
body.csb-profile-animeworld .csb-single,
body.csb-profile-animeworld .csb-archive,
body.csb-profile-animeworld .csb-footer--animeworld,
body.csb-profile-animeworld .csb-header--animeworld {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: clip !important;
}

/* Disable the old 100vw breakout for AnimeWorld. It was useful for boxed Elementor,
   but on AnimeWorld it can create the huge dark horizontal overflow visible on the right. */
body.csb-profile-animeworld .csb-home-hero,
body.csb-profile-animeworld .csb-single-hero,
body.csb-profile-animeworld .csb-archive-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: hidden !important;
}

body.csb-profile-animeworld .csb-aw-home-shell,
body.csb-profile-animeworld .csb-aw-latest-hero,
body.csb-profile-animeworld .csb-aw-feature,
body.csb-profile-animeworld .csb-aw-mosaic,
body.csb-profile-animeworld .csb-grid,
body.csb-profile-animeworld .csb-content-shell,
body.csb-profile-animeworld .csb-section,
body.csb-profile-animeworld .csb-single-hero__inner,
body.csb-profile-animeworld .csb-archive-hero__inner {
  box-sizing: border-box !important;
  max-width: calc(100vw - 24px) !important;
}

body.csb-profile-animeworld .csb-single-hero__inner,
body.csb-profile-animeworld .csb-archive-hero__inner {
  width: min(var(--csb-max), calc(100% - 44px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background:
    radial-gradient(circle at 12% 16%, rgba(var(--csb-active-accent-rgb), .18), transparent 22rem),
    radial-gradient(circle at 88% 12%, rgba(6,182,212,.13), transparent 24rem),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.72)) !important;
  border: 1px solid rgba(var(--csb-active-accent-rgb), .16) !important;
  box-shadow:
    0 34px 92px rgba(31,36,50,.12),
    0 22px 70px rgba(var(--csb-active-accent-rgb), .08),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
  color: var(--csb-text) !important;
  backdrop-filter: blur(18px) saturate(1.16) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.16) !important;
}

body.csb-profile-animeworld .csb-single-hero__inner::before,
body.csb-profile-animeworld .csb-archive-hero__inner::before {
  background:
    linear-gradient(120deg, rgba(255,255,255,.55), transparent 28%, transparent 72%, rgba(var(--csb-active-accent-rgb), .12)),
    linear-gradient(180deg, rgba(255,255,255,.18), transparent 55%) !important;
  opacity: .82 !important;
}

body.csb-profile-animeworld .csb-single-hero__inner::after,
body.csb-profile-animeworld .csb-archive-hero__inner::after {
  background:
    radial-gradient(circle, rgba(var(--csb-active-accent-rgb), .22), rgba(6,182,212,.09) 46%, transparent 72%) !important;
  opacity: .62 !important;
}

body.csb-profile-animeworld .csb-single-hero__image {
  background:
    radial-gradient(circle at 12% 6%, rgba(var(--csb-active-accent-rgb),.13), transparent 38%),
    rgba(255,255,255,.72) !important;
  border: 1px solid rgba(var(--csb-active-accent-rgb), .14) !important;
  box-shadow:
    0 28px 68px rgba(31,36,50,.16),
    0 16px 42px rgba(var(--csb-active-accent-rgb), .10) !important;
}

body.csb-profile-animeworld .csb-single-hero__copy,
body.csb-profile-animeworld .csb-single-hero__image,
body.csb-profile-animeworld .csb-archive-hero__inner > * {
  position: relative !important;
  z-index: 2 !important;
}

/* wpDiscuz / WordPress comments under post content */
body.csb-profile-animeworld .csb-comments-shell {
  border-radius: 30px;
  background:
    radial-gradient(circle at 10% 0%, rgba(var(--csb-active-accent-rgb), .08), transparent 18rem),
    rgba(255,255,255,.86);
  border: 1px solid rgba(var(--csb-active-accent-rgb), .12);
  box-shadow: 0 22px 70px rgba(31,36,50,.08);
  padding: clamp(24px, 4vw, 38px);
  color: var(--csb-text);
}

body.csb-profile-animeworld .csb-comments-shell :is(h2,h3,.wpd-thread-head,.wpd-form-head) {
  font-family: "Outfit", "Space Grotesk", Inter, system-ui, sans-serif !important;
  color: var(--csb-text) !important;
}

body.csb-profile-animeworld .csb-comments-shell :is(input,textarea,select) {
  border-radius: 18px !important;
  border-color: rgba(var(--csb-active-accent-rgb), .18) !important;
}

body.csb-profile-animeworld .csb-comments-shell :is(button,input[type="submit"],.wpd_comm_form .wc-field-submit input[type="submit"],.wpd-prim-button) {
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  border: 0 !important;
  color: #fff !important;
  font-weight: 800 !important;
  box-shadow: 0 12px 28px rgba(var(--csb-active-accent-rgb), .18) !important;
}

@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-archive-hero__inner,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-aw-home-shell {
    width: calc(100% - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }
}

/* ===== AnimeWorld 0.4.4 visual polish: adaptive media, readable cards, modal search, wpDiscuz ===== */
body.csb-profile-animeworld.csb-aw-search-open {
  overflow: hidden !important;
}

/* Search is a real modal now, not a header dropdown. */
body.csb-profile-animeworld .csb-aw-search-panel {
  position: fixed !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  padding: clamp(18px, 4vw, 42px) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 20% 18%, rgba(var(--csb-active-accent-rgb), .22), transparent 28rem),
    radial-gradient(circle at 78% 80%, rgba(124, 58, 237, .18), transparent 30rem),
    rgba(14, 18, 32, .48) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(1.14) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.14) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
  pointer-events: none !important;
  z-index: 99999 !important;
  transition: opacity 260ms ease, visibility 260ms ease !important;
}

body.csb-profile-animeworld .csb-aw-search-panel.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.csb-profile-animeworld .csb-aw-search-modal {
  position: relative;
  width: min(780px, calc(100vw - 32px));
  padding: clamp(24px, 4vw, 42px);
  border-radius: clamp(28px, 4vw, 42px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,255,255,.82)),
    radial-gradient(circle at 12% 0%, rgba(var(--csb-active-accent-rgb), .16), transparent 22rem);
  border: 1px solid rgba(255,255,255,.86);
  box-shadow:
    0 38px 120px rgba(0,0,0,.24),
    0 22px 70px rgba(var(--csb-active-accent-rgb), .14),
    inset 0 1px 0 rgba(255,255,255,.95);
  transform: translateY(18px) scale(.96);
  opacity: 0;
  transition: transform 360ms cubic-bezier(.16,1,.3,1), opacity 260ms ease;
}

body.csb-profile-animeworld .csb-aw-search-panel.is-open .csb-aw-search-modal {
  transform: translateY(0) scale(1);
  opacity: 1;
}

body.csb-profile-animeworld .csb-aw-search-modal h2 {
  margin: 12px 0 24px;
  color: var(--csb-text);
  font-size: clamp(34px, 5vw, 64px);
  line-height: .95;
  letter-spacing: -.055em;
}

body.csb-profile-animeworld .csb-aw-search-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.78);
  color: var(--csb-text);
  font-size: 28px;
  line-height: 1;
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 12px 26px rgba(15,23,42,.08);
  transition: transform 200ms ease, background 200ms ease, color 200ms ease;
}
body.csb-profile-animeworld .csb-aw-search-close:hover {
  transform: rotate(10deg) scale(1.06);
  background: var(--csb-active-accent);
  color: #fff;
}

body.csb-profile-animeworld .csb-aw-search-form {
  grid-template-columns: 1fr auto !important;
  gap: 12px !important;
  padding: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(var(--csb-active-accent-rgb), .16);
  box-shadow: 0 16px 44px rgba(15,23,42,.08);
}
body.csb-profile-animeworld .csb-aw-search-form input {
  min-height: 58px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 16px !important;
  color: var(--csb-text) !important;
  font-size: clamp(18px, 2vw, 24px) !important;
  outline: none !important;
}
body.csb-profile-animeworld .csb-aw-search-form button {
  min-height: 58px !important;
  padding: 0 26px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(var(--csb-active-accent-rgb), .26) !important;
}

/* Featured/home hero: media keeps the thumbnail's own aspect ratio instead of being forced into a fake crop. */
body.csb-profile-animeworld .csb-aw-feature {
  overflow: visible !important;
  align-items: center !important;
}
body.csb-profile-animeworld .csb-aw-feature__media {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: var(--csb-media-ar, 16 / 9) !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-aw-feature__media img,
body.csb-profile-animeworld .csb-aw-feature__media .csb-aw-tile__fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Single hero: also respects real featured-image ratio, so no random half-empty crop block. */
body.csb-profile-animeworld .csb-single-hero {
  padding: 10px 0 0 !important;
  overflow: visible !important;
}
body.csb-profile-animeworld .csb-single-hero__inner {
  align-items: center !important;
  overflow: visible !important;
}
body.csb-profile-animeworld .csb-single-hero__image {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: var(--csb-media-ar, 16 / 9) !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-single-hero__image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
body.csb-profile-animeworld .csb-content-shell {
  margin-top: clamp(20px, 3vw, 34px) !important;
}

/* Latest mosaic cards: titles and post info are now real visible content, not hidden in a dark blur. */
body.csb-profile-animeworld .csb-aw-tile {
  isolation: isolate;
}
body.csb-profile-animeworld .csb-aw-tile__media::before {
  background:
    linear-gradient(180deg, rgba(7, 9, 18, 0.03), rgba(7, 9, 18, 0.15) 38%, rgba(7, 9, 18, 0.56) 100%) !important;
}
body.csb-profile-animeworld .csb-aw-tile__media::after {
  opacity: .34 !important;
}
body.csb-profile-animeworld .csb-aw-tile:hover .csb-aw-tile__media::after {
  opacity: .62 !important;
}
body.csb-profile-animeworld .csb-aw-tile img,
body.csb-profile-animeworld .csb-aw-tile__fallback {
  object-fit: cover !important;
  object-position: center center !important;
}
body.csb-profile-animeworld .csb-aw-tile__overlay {
  inset: auto 14px 14px 14px !important;
  padding: clamp(14px, 1.7vw, 20px) !important;
  border-radius: 22px !important;
  background:
    linear-gradient(135deg, rgba(14,18,32,.78), rgba(14,18,32,.48)),
    radial-gradient(circle at 8% 0%, rgba(var(--csb-active-accent-rgb), .28), transparent 14rem) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(16px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.18) !important;
  display: grid !important;
  gap: 9px !important;
}
body.csb-profile-animeworld .csb-aw-tile__overlay strong {
  display: block !important;
  max-width: 100% !important;
  color: #fff !important;
  text-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
  font-size: clamp(18px, 1.55vw, 26px) !important;
  line-height: 1.06 !important;
}
body.csb-profile-animeworld .csb-aw-tile--feature .csb-aw-tile__overlay strong,
body.csb-profile-animeworld .csb-aw-tile--wide .csb-aw-tile__overlay strong {
  font-size: clamp(24px, 2.35vw, 38px) !important;
}
body.csb-profile-animeworld .csb-aw-tile__overlay em {
  color: rgba(255,255,255,.82) !important;
}
body.csb-profile-animeworld .csb-aw-tile__overlay small {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin-top: 2px !important;
}
body.csb-profile-animeworld .csb-aw-tile .csb-aw-meta-chip {
  min-height: 28px !important;
  padding: 0 10px !important;
  font-size: 11px !important;
  box-shadow: none !important;
}
body.csb-profile-animeworld .csb-aw-tile:not(.csb-aw-tile--feature):not(.csb-aw-tile--wide) .csb-aw-meta-chip--author {
  display: inline-flex !important;
}
body.csb-profile-animeworld .csb-aw-tile:not(.csb-aw-tile--feature):not(.csb-aw-tile--wide) .csb-aw-tile__overlay em {
  display: none !important;
}
body.csb-profile-animeworld .csb-aw-tile .csb-badge {
  filter: none !important;
  opacity: 1 !important;
  background: linear-gradient(135deg, var(--csb-active-accent), rgba(124,58,237,.95)) !important;
}

/* Avoid the ugly clipped glow/gap between hero and content. */
body.csb-profile-animeworld .csb-single-hero::before,
body.csb-profile-animeworld .csb-single-hero::after,
body.csb-profile-animeworld .csb-archive-hero::before,
body.csb-profile-animeworld .csb-archive-hero::after {
  filter: blur(18px) !important;
  opacity: .35 !important;
}
body.csb-profile-animeworld .csb-single-hero__inner::after,
body.csb-profile-animeworld .csb-archive-hero__inner::after {
  display: none !important;
}

/* wpDiscuz: use the same readable content width and make editor buttons match the site. */
body.csb-profile-animeworld .csb-comments-shell {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
body.csb-profile-animeworld .csb-comments-shell #wpdcom,
body.csb-profile-animeworld .csb-comments-shell .wpdiscuz_top_clearing,
body.csb-profile-animeworld .csb-comments-shell .wpd-form-wrap,
body.csb-profile-animeworld .csb-comments-shell .wpd-thread-wrapper {
  width: 100% !important;
  max-width: none !important;
}
body.csb-profile-animeworld .csb-comments-shell #wpdcom {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Manrope", Inter, system-ui, sans-serif !important;
}
body.csb-profile-animeworld .csb-comments-shell .wpd-form-col-right,
body.csb-profile-animeworld .csb-comments-shell .wpd-form-row,
body.csb-profile-animeworld .csb-comments-shell .wc-field-textarea,
body.csb-profile-animeworld .csb-comments-shell .wpd-form-textarea {
  width: 100% !important;
  max-width: none !important;
}
body.csb-profile-animeworld .csb-comments-shell .ql-toolbar,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-toolbar,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-right,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-left {
  border: 0 !important;
  background: transparent !important;
}
body.csb-profile-animeworld .csb-comments-shell .ql-toolbar button,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-toolbar button,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-right button,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-left button,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-button {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(var(--csb-active-accent-rgb), .16) !important;
  background: rgba(255,255,255,.82) !important;
  color: var(--csb-text-soft) !important;
  box-shadow: 0 8px 18px rgba(31,36,50,.07) !important;
  transition: transform 160ms ease, background 160ms ease, color 160ms ease !important;
}
body.csb-profile-animeworld .csb-comments-shell .ql-toolbar button:hover,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-toolbar button:hover,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-right button:hover,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-buttons-left button:hover,
body.csb-profile-animeworld .csb-comments-shell .wpd-editor-button:hover {
  transform: translateY(-1px) !important;
  background: var(--csb-active-accent) !important;
  color: #fff !important;
}
body.csb-profile-animeworld .csb-comments-shell :is(input[type="submit"],button[type="submit"],.wpd-prim-button,.wc_comm_submit) {
  min-height: 44px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 30px rgba(var(--csb-active-accent-rgb), .20) !important;
}

@media (max-width: 900px) {
  body.csb-profile-animeworld .csb-aw-search-form {
    grid-template-columns: 1fr !important;
    border-radius: 28px !important;
  }
  body.csb-profile-animeworld .csb-aw-feature,
  body.csb-profile-animeworld .csb-single-hero__inner {
    grid-template-columns: 1fr !important;
  }
  body.csb-profile-animeworld .csb-aw-feature__media,
  body.csb-profile-animeworld .csb-single-hero__image {
    order: -1 !important;
  }
}

/* ===== AnimeWorld 0.4.5 layout rescue / real magazine cards ===== */
html,
body.csb-profile-animeworld {
  max-width: 100%;
  overflow-x: clip !important;
}

body.csb-profile-animeworld .csb-header--animeworld {
  position: sticky !important;
  top: 0 !important;
  z-index: 99990 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  border-bottom: 1px solid rgba(15,23,42,.08) !important;
  background: rgba(255,255,255,.88) !important;
  backdrop-filter: blur(22px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.18) !important;
}

body.csb-profile-animeworld .csb-header--animeworld::before {
  display: none !important;
}

body.csb-profile-animeworld .csb-aw-flash {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  min-height: 42px !important;
  max-height: 42px !important;
  display: grid !important;
  grid-template-columns: 170px minmax(0, 1fr) !important;
  background: transparent !important;
  box-shadow: 0 10px 34px rgba(var(--csb-active-accent-rgb), .12) !important;
  overflow: hidden !important;
}

body.csb-profile-animeworld .csb-aw-flash__label {
  width: 170px !important;
  height: 42px !important;
  padding: 0 18px !important;
  justify-content: center !important;
  background: #17121f !important;
  color: #fff !important;
  z-index: 3 !important;
}

body.csb-profile-animeworld .csb-aw-flash__track {
  height: 42px !important;
  min-width: 0 !important;
  background: linear-gradient(90deg, var(--csb-active-accent), #7c3aed) !important;
  overflow: hidden !important;
}

body.csb-profile-animeworld .csb-aw-flash__items {
  height: 42px !important;
  padding-left: 24px !important;
  gap: 34px !important;
}

body.csb-profile-animeworld .csb-aw-flash__item,
body.csb-profile-animeworld .csb-aw-flash__empty {
  height: 42px !important;
  color: #fff !important;
  font-size: 13px !important;
  text-shadow: none !important;
}

body.csb-profile-animeworld .csb-aw-flash__item img {
  width: 28px !important;
  height: 28px !important;
}

body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-flash {
  max-height: 42px !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

body.csb-profile-animeworld .csb-aw-logo-row {
  max-height: 96px !important;
  padding: 16px 18px 12px !important;
}

body.csb-profile-animeworld .csb-aw-logo__image {
  max-height: 64px !important;
}

body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-logo-row {
  max-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 0 !important;
  transform: translateY(-8px) scale(.96) !important;
}

body.csb-profile-animeworld .csb-aw-menu-row {
  width: min(var(--csb-max), calc(100% - 44px)) !important;
  min-height: 60px !important;
  margin: 0 auto !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-menu-row {
  min-height: 58px !important;
}

/* Search must be a viewport modal, never trapped inside the header/Elementor wrapper. */
body.csb-profile-animeworld .csb-aw-search-panel {
  position: fixed !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  z-index: 2147483000 !important;
  display: grid !important;
  place-items: center !important;
  padding: clamp(18px, 5vw, 64px) !important;
  background:
    radial-gradient(circle at 14% 10%, rgba(var(--csb-active-accent-rgb), .25), transparent 34rem),
    radial-gradient(circle at 86% 85%, rgba(6,182,212,.18), transparent 34rem),
    rgba(8, 10, 20, .54) !important;
  backdrop-filter: blur(18px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.18) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: none !important;
  pointer-events: none !important;
  transition: opacity 260ms ease, visibility 260ms ease !important;
}

body.csb-profile-animeworld .csb-aw-search-panel.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.csb-profile-animeworld .csb-aw-search-modal {
  width: min(860px, calc(100vw - 34px)) !important;
  padding: clamp(24px, 4vw, 44px) !important;
  border-radius: clamp(28px, 5vw, 44px) !important;
  background: rgba(255,255,255,.93) !important;
  border: 1px solid rgba(255,255,255,.9) !important;
  box-shadow: 0 38px 120px rgba(8,10,20,.32) !important;
  transform: translateY(24px) scale(.96) !important;
  opacity: 0 !important;
  transition: transform 360ms cubic-bezier(.16,1,.3,1), opacity 260ms ease !important;
}

body.csb-profile-animeworld .csb-aw-search-panel.is-open .csb-aw-search-modal {
  transform: translateY(0) scale(1) !important;
  opacity: 1 !important;
}

body.csb-profile-animeworld .csb-aw-search-modal h2 {
  margin: 10px 0 24px !important;
  font-family: "Outfit", system-ui, sans-serif !important;
  font-size: clamp(42px, 7vw, 76px) !important;
  line-height: .92 !important;
  letter-spacing: -.065em !important;
  color: #1f2432 !important;
}

body.csb-profile-animeworld .csb-aw-search-close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  background: rgba(255,255,255,.82) !important;
  color: #1f2432 !important;
  font-size: 26px !important;
  line-height: 1 !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.10) !important;
  cursor: pointer !important;
}

body.csb-profile-animeworld .csb-aw-search-form {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 12px !important;
  padding: 10px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.75) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 18px 46px rgba(15,23,42,.08) !important;
}

body.csb-profile-animeworld .csb-aw-search-form input {
  min-height: 64px !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 22px !important;
  font-size: clamp(20px, 3vw, 28px) !important;
  color: #1f2432 !important;
  outline: none !important;
}

body.csb-profile-animeworld .csb-aw-search-form button {
  min-height: 64px !important;
  padding: 0 32px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  box-shadow: 0 16px 38px rgba(var(--csb-active-accent-rgb), .24) !important;
  cursor: pointer !important;
}

/* Home/archive post list: stop hiding information in dark bars. Use real magazine cards. */
body.csb-profile-animeworld .csb-aw-mosaic {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: clamp(18px, 2vw, 26px) !important;
  align-items: stretch !important;
}

body.csb-profile-animeworld .csb-aw-tile,
body.csb-profile-animeworld .csb-aw-tile--feature,
body.csb-profile-animeworld .csb-aw-tile--wide {
  grid-column: auto !important;
  grid-row: auto !important;
  min-height: 0 !important;
  border-radius: 30px !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(255,255,255,.92) !important;
  box-shadow: 0 22px 58px rgba(31,36,50,.10) !important;
  overflow: hidden !important;
}

body.csb-profile-animeworld .csb-aw-tile > a {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  height: 100% !important;
  color: #1f2432 !important;
}

body.csb-profile-animeworld .csb-aw-tile__media {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  aspect-ratio: var(--csb-media-ar, 16 / 9) !important;
  min-height: 0 !important;
  max-height: 360px !important;
  overflow: hidden !important;
  border-radius: 30px 30px 18px 18px !important;
  background: #e9eef5 !important;
}

body.csb-profile-animeworld .csb-aw-tile__media::before {
  background: linear-gradient(180deg, rgba(8,10,20,.02), rgba(8,10,20,.18)) !important;
}
body.csb-profile-animeworld .csb-aw-tile__media::after {
  opacity: .18 !important;
}

body.csb-profile-animeworld .csb-aw-tile img,
body.csb-profile-animeworld .csb-aw-tile__fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: none !important;
  opacity: 1 !important;
}

body.csb-profile-animeworld .csb-aw-tile__overlay {
  position: relative !important;
  inset: auto !important;
  z-index: 2 !important;
  display: grid !important;
  align-content: start !important;
  gap: 12px !important;
  min-height: 210px !important;
  padding: 20px 22px 22px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(var(--csb-active-accent-rgb), .08), transparent 15rem),
    rgba(255,255,255,.90) !important;
  color: #1f2432 !important;
}

body.csb-profile-animeworld .csb-aw-tile__overlay strong {
  max-width: none !important;
  color: #1f2432 !important;
  font-size: clamp(22px, 2.2vw, 34px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.045em !important;
  text-shadow: none !important;
}

body.csb-profile-animeworld .csb-aw-tile:not(.csb-aw-tile--feature) .csb-aw-tile__overlay strong {
  font-size: clamp(21px, 1.55vw, 26px) !important;
}

body.csb-profile-animeworld .csb-aw-tile__overlay em {
  display: block !important;
  color: #5f687a !important;
  font-size: 14px !important;
  line-height: 1.62 !important;
  max-width: none !important;
}

body.csb-profile-animeworld .csb-aw-tile__overlay small {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: auto !important;
  color: #5f687a !important;
}

body.csb-profile-animeworld .csb-aw-tile .csb-badges {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  z-index: 5 !important;
}

body.csb-profile-animeworld .csb-aw-tile .csb-badge {
  background: rgba(255,255,255,.92) !important;
  color: var(--csb-active-accent) !important;
  border: 1px solid rgba(var(--csb-active-accent-rgb), .24) !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.10) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

body.csb-profile-animeworld .csb-aw-tile .csb-aw-meta-chip {
  min-height: 30px !important;
  padding: 0 11px !important;
  background: rgba(244,247,251,.92) !important;
  color: #4d5567 !important;
  border: 1px solid rgba(15,23,42,.06) !important;
  box-shadow: none !important;
  font-size: 12px !important;
  animation: none !important;
}

body.csb-profile-animeworld .csb-aw-tile .csb-aw-meta-chip--read {
  color: #fff !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
}

/* Hero/content transition should be seamless, not a chopped blur rectangle. */
body.csb-profile-animeworld .csb-single-hero,
body.csb-profile-animeworld .csb-archive-hero {
  position: relative !important;
  overflow: visible !important;
  padding-bottom: clamp(28px, 4vw, 56px) !important;
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}

body.csb-profile-animeworld .csb-single-hero::after,
body.csb-profile-animeworld .csb-archive-hero::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -80px !important;
  height: 180px !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 24% 0%, rgba(var(--csb-active-accent-rgb), .10), transparent 30rem),
    linear-gradient(180deg, rgba(248,246,251,0), rgba(248,246,251,.98) 70%) !important;
  z-index: 0 !important;
}

body.csb-profile-animeworld .csb-archive .csb-section {
  position: relative !important;
  z-index: 2 !important;
  margin-top: -8px !important;
  padding-top: 0 !important;
}

body.csb-profile-animeworld .csb-content-shell {
  position: relative !important;
  z-index: 2 !important;
  margin-top: 0 !important;
}

/* wpDiscuz: stop styling editor toolbar as giant gradient buttons. */
body.csb-profile-animeworld .csb-comments-shell {
  width: min(var(--csb-max), calc(100% - 44px)) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  color: #283044 !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-form-wrap,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-thread-wrapper,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-form-foot,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpdiscuz-item {
  max-width: none !important;
  width: 100% !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-toolbar,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  padding: 8px !important;
  border-radius: 0 0 16px 16px !important;
  background: rgba(246,248,252,.86) !important;
  border: 1px solid rgba(15,23,42,.06) !important;
  box-shadow: none !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-toolbar button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-button {
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  border: 0 !important;
  background: transparent !important;
  color: #647084 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  line-height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar button:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-toolbar button:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-button:hover {
  background: rgba(var(--csb-active-accent-rgb), .10) !important;
  color: var(--csb-active-accent) !important;
}

body.csb-profile-animeworld .csb-comments-shell #wpdcom input[type="submit"],
body.csb-profile-animeworld .csb-comments-shell #wpdcom button[type="submit"],
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-prim-button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wc_comm_submit {
  min-height: 42px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(var(--csb-active-accent-rgb), .22) !important;
  font-weight: 900 !important;
}

@media (max-width: 1100px) {
  body.csb-profile-animeworld .csb-aw-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  body.csb-profile-animeworld .csb-aw-flash {
    grid-template-columns: 130px minmax(0, 1fr) !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label {
    width: 130px !important;
    font-size: 12px !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row,
  body.csb-profile-animeworld .csb-comments-shell {
    width: min(var(--csb-max), calc(100% - 24px)) !important;
  }
  body.csb-profile-animeworld .csb-aw-mosaic {
    grid-template-columns: 1fr !important;
  }
  body.csb-profile-animeworld .csb-aw-search-form {
    grid-template-columns: 1fr !important;
    border-radius: 28px !important;
  }
  body.csb-profile-animeworld .csb-aw-search-form button {
    width: 100% !important;
  }
}

/* ===== AnimeWorld 0.4.6 mobile width + fixed flash + real visible story cards ===== */
body.csb-profile-animeworld {
  overflow-x: hidden !important;
}

/* News ticker stays available even if the Elementor/header wrapper breaks sticky. */
body.csb-profile-animeworld .csb-aw-flash {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 2147482000 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-height: 42px !important;
  max-height: 42px !important;
  transform: translateZ(0) !important;
}
body.admin-bar.csb-profile-animeworld .csb-aw-flash { top: 32px !important; }
body.csb-profile-animeworld .csb-aw-logo-row { margin-top: 42px !important; }
body.admin-bar.csb-profile-animeworld .csb-aw-logo-row { margin-top: 42px !important; }

body.csb-profile-animeworld .csb-aw-flash__label {
  justify-content: flex-start !important;
  padding-left: clamp(14px, 3vw, 28px) !important;
  white-space: nowrap !important;
}
body.csb-profile-animeworld .csb-aw-flash__track {
  min-width: 0 !important;
}
body.csb-profile-animeworld .csb-aw-flash__items {
  padding-left: 18px !important;
  will-change: transform !important;
}
body.csb-profile-animeworld .csb-aw-flash__item,
body.csb-profile-animeworld .csb-aw-flash__empty {
  max-width: 62vw !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* New card class avoids old overlay rules. */
body.csb-profile-animeworld .csb-aw-mosaic {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2.1vw, 28px) !important;
  align-items: stretch !important;
}
body.csb-profile-animeworld .csb-aw-story-card {
  position: relative !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(var(--csb-active-accent-rgb), .08), transparent 16rem),
    rgba(255,255,255,.92) !important;
  border: 1px solid rgba(255,255,255,.95) !important;
  box-shadow: 0 22px 62px rgba(31,36,50,.11) !important;
  transition: transform 260ms cubic-bezier(.16,1,.3,1), box-shadow 260ms ease !important;
}
body.csb-profile-animeworld .csb-aw-story-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 32px 82px rgba(var(--csb-active-accent-rgb), .14), 0 22px 62px rgba(31,36,50,.12) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media {
  position: relative !important;
  display: block !important;
  aspect-ratio: 16 / 9 !important;
  width: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: 30px 30px 18px 18px !important;
  background: #edf2f7 !important;
  color: inherit !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(8,10,20,0) 45%, rgba(8,10,20,.24) 100%) !important;
  pointer-events: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  opacity: 1 !important;
  filter: none !important;
  transform: scale(1.01) !important;
  transition: transform 520ms cubic-bezier(.16,1,.3,1), filter 520ms ease !important;
}
body.csb-profile-animeworld .csb-aw-story-card:hover .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card:hover .csb-aw-story-card__fallback {
  transform: scale(1.065) !important;
  filter: saturate(1.06) contrast(1.03) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges {
  position: absolute !important;
  z-index: 3 !important;
  left: 16px !important;
  top: 16px !important;
  display: block !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges .csb-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges .csb-badge {
  min-height: 28px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(var(--csb-active-accent-rgb), .28) !important;
  color: var(--csb-active-accent) !important;
  box-shadow: 0 12px 26px rgba(15,23,42,.12) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body {
  display: grid !important;
  grid-template-rows: auto auto 1fr !important;
  gap: 12px !important;
  padding: 20px 22px 22px !important;
  color: #1f2432 !important;
  min-height: 210px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body h3 {
  margin: 0 !important;
  font-family: "Outfit", system-ui, sans-serif !important;
  font-size: clamp(22px, 2vw, 31px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.045em !important;
  color: #1f2432 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body h3 a {
  color: #1f2432 !important;
  text-decoration: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body p {
  margin: 0 !important;
  color: #596275 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__meta {
  align-self: end !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 4px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__meta .csb-aw-meta-chip {
  min-height: 30px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: rgba(244,247,251,.94) !important;
  border: 1px solid rgba(15,23,42,.06) !important;
  color: #4e586a !important;
  box-shadow: none !important;
  animation: none !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__meta .csb-aw-meta-chip--read {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  box-shadow: 0 10px 22px rgba(var(--csb-active-accent-rgb), .18) !important;
}

/* Hide old tile visuals if some stale tile markup is still cached, but keep it readable. */
body.csb-profile-animeworld .csb-aw-tile__overlay strong,
body.csb-profile-animeworld .csb-aw-tile__overlay em,
body.csb-profile-animeworld .csb-aw-tile__overlay small {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Mobile: use almost full viewport width, centered, no asymmetric gutters. */
@media (max-width: 782px) {
  body.admin-bar.csb-profile-animeworld .csb-aw-flash { top: 46px !important; }
}

@media (max-width: 720px) {
  body.csb-profile-animeworld .csb-aw-flash {
    grid-template-columns: 116px minmax(0, 1fr) !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label {
    width: 116px !important;
    height: 44px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    justify-content: center !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label i {
    width: 10px !important;
    height: 10px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__track,
  body.csb-profile-animeworld .csb-aw-flash__items,
  body.csb-profile-animeworld .csb-aw-flash__item,
  body.csb-profile-animeworld .csb-aw-flash__empty {
    height: 44px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__item,
  body.csb-profile-animeworld .csb-aw-flash__empty {
    max-width: 72vw !important;
    font-size: 12px !important;
  }
  body.csb-profile-animeworld .csb-aw-logo-row {
    margin-top: 44px !important;
    padding: 14px 6px 10px !important;
  }
  body.csb-profile-animeworld .csb-aw-logo__image {
    max-width: 72vw !important;
    max-height: 62px !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row,
  body.csb-profile-animeworld .csb-aw-home-shell,
  body.csb-profile-animeworld .csb-archive-hero__inner,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-section,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-aw-footer__inner {
    width: 97vw !important;
    max-width: 97vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.csb-profile-animeworld .csb-aw-home-shell {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.csb-profile-animeworld .csb-aw-feature,
  body.csb-profile-animeworld .csb-post-content,
  body.csb-profile-animeworld .csb-editorial-box,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-archive-hero__inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
    border-radius: 22px !important;
  }
  body.csb-profile-animeworld .csb-aw-mosaic {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card {
    border-radius: 22px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__media {
    border-radius: 22px 22px 14px 14px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__body {
    min-height: 0 !important;
    padding: 16px 16px 18px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__body h3 {
    font-size: clamp(23px, 7vw, 30px) !important;
  }
  body.csb-profile-animeworld .csb-aw-menu {
    max-width: calc(97vw - 54px) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  body.csb-profile-animeworld .csb-aw-menu::-webkit-scrollbar { display: none !important; }
}

/* wpDiscuz toolbar: target icon anchors/spans too, not only buttons. */
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left *,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right *,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar * {
  box-shadow: none !important;
}
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left a,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right a,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left span,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right span,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar button,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar .ql-picker-label {
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  margin: 0 2px 2px 0 !important;
  padding: 0 !important;
  border-radius: 7px !important;
  border: 0 !important;
  background: transparent !important;
  color: #5f687a !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 28px !important;
}
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left a:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right a:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-left button:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .wpd-editor-buttons-right button:hover,
body.csb-profile-animeworld .csb-comments-shell #wpdcom .ql-toolbar button:hover {
  background: rgba(var(--csb-active-accent-rgb), .10) !important;
  color: var(--csb-active-accent) !important;
}


/* ===== AnimeWorld 0.4.7 final layout fixes: no blank media panels, working home pagination, mobile gutters ===== */
body.csb-profile-animeworld,
body.csb-profile-animeworld * {
  box-sizing: border-box;
}

body.csb-profile-animeworld .csb-aw-latest-hero__head {
  max-width: 760px !important;
  margin-bottom: clamp(18px, 3vw, 30px) !important;
}
body.csb-profile-animeworld .csb-aw-latest-hero__head h1 {
  font-size: clamp(38px, 4.6vw, 68px) !important;
  line-height: .95 !important;
}
body.csb-profile-animeworld .csb-aw-latest-hero__head p {
  font-size: clamp(15px, 1.25vw, 18px) !important;
  line-height: 1.65 !important;
}

body.csb-profile-animeworld .csb-aw-feature {
  margin-top: clamp(18px, 3vw, 30px) !important;
  padding: clamp(24px, 3vw, 34px) !important;
}
body.csb-profile-animeworld .csb-aw-feature__eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  min-height: 30px !important;
  padding: 0 13px !important;
  margin-bottom: 10px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  box-shadow: 0 13px 28px rgba(var(--csb-active-accent-rgb), .22) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}
body.csb-profile-animeworld .csb-aw-feature__copy h1 {
  font-size: clamp(34px, 4.1vw, 56px) !important;
  line-height: .98 !important;
}
body.csb-profile-animeworld .csb-aw-feature__media {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: var(--csb-media-ar, 16 / 9) !important;
  max-height: clamp(260px, 30vw, 430px) !important;
  background: transparent !important;
}
body.csb-profile-animeworld .csb-aw-feature__media img,
body.csb-profile-animeworld .csb-aw-feature__media .csb-aw-tile__fallback {
  object-fit: cover !important;
  object-position: center center !important;
}

/* The pale rectangle was the media overlay area. Remove it completely. */
body.csb-profile-animeworld .csb-aw-story-card__media {
  background: transparent !important;
  aspect-ratio: var(--csb-media-ar, 16 / 9) !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  border-radius: 30px 30px 0 0 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media::after,
body.csb-profile-animeworld .csb-aw-story-card__media::before {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body {
  min-height: 0 !important;
  padding-top: 18px !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(var(--csb-active-accent-rgb), .07), transparent 15rem),
    #fff !important;
  border-top: 1px solid rgba(15,23,42,.045) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges {
  left: 14px !important;
  top: 14px !important;
}

body.csb-profile-animeworld .csb-aw-home-section--more {
  display: none !important;
}

/* Cleaner pagination colors for AnimeWorld. */
body.csb-profile-animeworld .csb-pagination {
  margin-top: clamp(28px, 4vw, 44px) !important;
}
body.csb-profile-animeworld .csb-pagination__inner {
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 18px 48px rgba(31,36,50,.10) !important;
  backdrop-filter: blur(18px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.2) !important;
}
body.csb-profile-animeworld .csb-pagination .page-numbers {
  color: #4d5668 !important;
  background: rgba(244,247,251,.92) !important;
  border: 1px solid rgba(15,23,42,.06) !important;
  box-shadow: none !important;
}
body.csb-profile-animeworld .csb-pagination a.page-numbers:hover,
body.csb-profile-animeworld .csb-pagination a.page-numbers:focus-visible {
  color: var(--csb-active-accent) !important;
  border-color: rgba(var(--csb-active-accent-rgb), .28) !important;
  background: rgba(var(--csb-active-accent-rgb), .08) !important;
  box-shadow: 0 12px 26px rgba(var(--csb-active-accent-rgb), .10) !important;
}
body.csb-profile-animeworld .csb-pagination .page-numbers.current {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  box-shadow: 0 14px 30px rgba(var(--csb-active-accent-rgb), .20) !important;
}
body.csb-profile-animeworld .csb-pagination .page-numbers.dots {
  color: #7b8495 !important;
  background: transparent !important;
  border-color: transparent !important;
}

@media (max-width: 720px) {
  body.csb-profile-animeworld .csb-aw-menu-row,
  body.csb-profile-animeworld .csb-aw-home-shell,
  body.csb-profile-animeworld .csb-archive-hero__inner,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-section,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-aw-footer__inner {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }
  body.csb-profile-animeworld .csb-aw-home-shell {
    padding-top: 14px !important;
  }
  body.csb-profile-animeworld .csb-aw-latest-hero__head {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  body.csb-profile-animeworld .csb-aw-latest-hero__head h1 {
    font-size: clamp(31px, 10vw, 44px) !important;
  }
  body.csb-profile-animeworld .csb-aw-feature {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__media {
    border-radius: 22px 22px 0 0 !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__body {
    padding: 16px 15px 18px !important;
  }
  body.csb-profile-animeworld .csb-pagination__inner {
    border-radius: 24px !important;
    gap: 7px !important;
  }
  body.csb-profile-animeworld .csb-pagination .page-numbers {
    min-width: 38px !important;
    min-height: 38px !important;
  }
}


/* ===== AnimeWorld 0.4.8 hard reset: real fixed header, no Elementor/iframe clipping, compact cards, 2x2 galleries ===== */

/* Global safety: no horizontal page scrollbars from full-bleed experiments. */
html:has(body.csb-profile-animeworld),
body.csb-profile-animeworld {
  overflow-x: clip !important;
}

/* The header is moved to body by JS. It is not an iframe; this removes Elementor wrapper clipping. */
body.csb-profile-animeworld.csb-aw-header-detached .csb-header--animeworld {
  position: fixed !important;
  top: var(--csb-adminbar-offset, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  z-index: 99990 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  max-height: none !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 10px 28px rgba(31,36,50,.10) !important;
  backdrop-filter: blur(18px) saturate(1.15) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.15) !important;
}

.csb-aw-header-placeholder {
  display: block !important;
  width: 100% !important;
  min-height: var(--csb-aw-header-height, 0px) !important;
  pointer-events: none !important;
}

/* Flash news: full viewport row, hard separated label and ticker, no text sliding over black label. */
body.csb-profile-animeworld .csb-header--animeworld .csb-aw-flash {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 38px !important;
  max-height: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  display: grid !important;
  grid-template-columns: clamp(118px, 10.5vw, 176px) minmax(0, 1fr) !important;
  background: linear-gradient(90deg, #12101b 0 clamp(118px, 10.5vw, 176px), var(--csb-active-accent) clamp(118px, 10.5vw, 176px), #7c3aed 100%) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transform: none !important;
  opacity: 1 !important;
}

body.csb-profile-animeworld .csb-aw-flash__label {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  height: 38px !important;
  padding: 0 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  background: #12101b !important;
  color: #fff !important;
  white-space: nowrap !important;
}

body.csb-profile-animeworld .csb-aw-flash__track {
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
  height: 38px !important;
  overflow: hidden !important;
  mask-image: linear-gradient(90deg, transparent 0, black 28px, black calc(100% - 30px), transparent 100%) !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, black 28px, black calc(100% - 30px), transparent 100%) !important;
}

body.csb-profile-animeworld .csb-aw-flash__items {
  height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: clamp(26px, 4vw, 58px) !important;
  padding-left: 36px !important;
  will-change: transform !important;
}

body.csb-profile-animeworld .csb-aw-flash__item,
body.csb-profile-animeworld .csb-aw-flash__empty {
  height: 38px !important;
  min-width: max-content !important;
  max-width: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
}

/* Header internals: make them simple and predictable. */
body.csb-profile-animeworld .csb-aw-logo-row {
  width: 100% !important;
  max-width: none !important;
  max-height: 84px !important;
  padding: 14px 12px 10px !important;
  margin: 0 !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-aw-logo__image {
  max-height: 62px !important;
  width: auto !important;
  max-width: min(300px, 64vw) !important;
}
body.csb-profile-animeworld .csb-aw-menu-row {
  width: 100% !important;
  max-width: none !important;
  min-height: 50px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: rgba(255,255,255,.84) !important;
  border-top: 1px solid rgba(15,23,42,.06) !important;
  border-bottom: 1px solid rgba(15,23,42,.08) !important;
  overflow: visible !important;
}
body.csb-profile-animeworld .csb-aw-menu {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: calc(100vw - 110px) !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}
body.csb-profile-animeworld .csb-aw-menu::-webkit-scrollbar { display: none !important; }
body.csb-profile-animeworld .csb-aw-menu__list,
body.csb-profile-animeworld .csb-aw-menu .menu,
body.csb-profile-animeworld .csb-aw-menu__fallback {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(14px, 2.2vw, 30px) !important;
  width: max-content !important;
  min-width: min-content !important;
  white-space: nowrap !important;
}
body.csb-profile-animeworld .csb-aw-search {
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  position: relative !important;
  right: auto !important;
  top: auto !important;
  margin-left: 4px !important;
}

/* Mobile header: small and stable. */
@media (max-width: 720px) {
  body.csb-profile-animeworld .csb-header--animeworld .csb-aw-flash {
    grid-template-columns: 112px minmax(0,1fr) !important;
    min-height: 40px !important;
    height: 40px !important;
    max-height: 40px !important;
    background: linear-gradient(90deg, #12101b 0 112px, var(--csb-active-accent) 112px, #7c3aed 100%) !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label {
    height: 40px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__track,
  body.csb-profile-animeworld .csb-aw-flash__items,
  body.csb-profile-animeworld .csb-aw-flash__item {
    height: 40px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__items {
    gap: 28px !important;
    padding-left: 22px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__item {
    font-size: 12px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__item img {
    width: 26px !important;
    height: 26px !important;
  }
  body.csb-profile-animeworld .csb-aw-logo-row {
    max-height: 68px !important;
    padding: 9px 8px 7px !important;
  }
  body.csb-profile-animeworld .csb-aw-logo__image {
    max-height: 52px !important;
    max-width: 58vw !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row {
    min-height: 46px !important;
    padding: 0 8px !important;
    gap: 8px !important;
    justify-content: flex-start !important;
  }
  body.csb-profile-animeworld .csb-aw-menu {
    max-width: calc(100vw - 60px) !important;
  }
  body.csb-profile-animeworld .csb-aw-menu__list,
  body.csb-profile-animeworld .csb-aw-menu .menu,
  body.csb-profile-animeworld .csb-aw-menu__fallback {
    justify-content: flex-start !important;
    gap: 20px !important;
  }
  body.csb-profile-animeworld .csb-aw-menu a,
  body.csb-profile-animeworld .csb-aw-menu__link {
    font-size: 13px !important;
    letter-spacing: .09em !important;
  }
  body.csb-profile-animeworld .csb-aw-search {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }
}

/* Homepage cards: reset to compact magazine cards. No old overlay bars, no huge blank panels. */
body.csb-profile-animeworld .csb-aw-mosaic {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: start !important;
  grid-auto-rows: auto !important;
}
body.csb-profile-animeworld .csb-aw-story-card,
body.csb-profile-animeworld .csb-aw-story-card--feature,
body.csb-profile-animeworld .csb-aw-story-card--wide {
  display: flex !important;
  flex-direction: column !important;
  align-self: start !important;
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  border-radius: 26px !important;
  background: #fff !important;
  border: 1px solid rgba(15,23,42,.06) !important;
  box-shadow: 0 20px 52px rgba(31,36,50,.10) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border-radius: 26px 26px 0 0 !important;
  background: #eef4f8 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  animation: none !important;
  opacity: 1 !important;
  filter: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media::before,
body.csb-profile-animeworld .csb-aw-story-card__media::after {
  display: none !important;
  content: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges {
  position: absolute !important;
  z-index: 2 !important;
  left: 14px !important;
  top: 14px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 20px 22px 22px !important;
  margin: 0 !important;
  background: #fff !important;
  border: 0 !important;
  transform: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body h3 {
  margin: 0 0 10px !important;
  font-size: clamp(22px, 2vw, 29px) !important;
  line-height: 1.08 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body p {
  display: block !important;
  margin: 0 0 14px !important;
  color: #5b6577 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  margin-top: 0 !important;
}

/* Archive cards built with the generic card helper get the same compact rules. */
body.csb-profile-animeworld .csb-grid {
  align-items: start !important;
}
body.csb-profile-animeworld .csb-card {
  display: flex !important;
  flex-direction: column !important;
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-card__image {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-card__image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
body.csb-profile-animeworld .csb-card__body {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 20px 22px 22px !important;
  transform: none !important;
}

/* WordPress galleries: exactly/four-image galleries become clean 2x2 on desktop. */
@media (min-width: 900px) {
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.has-nested-images.columns-4,
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.columns-4,
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.has-nested-images:has(> figure.wp-block-image:nth-child(4):last-child) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
  }
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.has-nested-images.columns-4 > figure.wp-block-image,
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.has-nested-images:has(> figure.wp-block-image:nth-child(4):last-child) > figure.wp-block-image {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.columns-4 .blocks-gallery-grid,
  body.csb-profile-animeworld .csb-post-content .blocks-gallery-grid.columns-4 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }
  body.csb-profile-animeworld .csb-post-content .wp-block-gallery.columns-4 .blocks-gallery-item,
  body.csb-profile-animeworld .csb-post-content .blocks-gallery-grid.columns-4 .blocks-gallery-item {
    width: 100% !important;
    margin: 0 !important;
  }
}

/* Mobile gutters: centered, equal, but still almost full width. */
@media (max-width: 720px) {
  body.csb-profile-animeworld .csb-aw-home-shell,
  body.csb-profile-animeworld .csb-archive-hero__inner,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-section,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-aw-footer__inner {
    width: calc(100vw - 14px) !important;
    max-width: calc(100vw - 14px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.csb-profile-animeworld .csb-aw-mosaic {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card,
  body.csb-profile-animeworld .csb-card {
    border-radius: 22px !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__media,
  body.csb-profile-animeworld .csb-card__image {
    border-radius: 22px 22px 0 0 !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__body,
  body.csb-profile-animeworld .csb-card__body {
    padding: 17px 16px 19px !important;
  }
}

@media (min-width: 721px) and (max-width: 1100px) {
  body.csb-profile-animeworld .csb-aw-mosaic {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}



/* wpDiscuz emergency neutral toolbar: no gradient pills on formatting controls. */
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-left,
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-right {
  box-shadow: none !important;
  background: transparent !important;
}
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-left > *,
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-right > * {
  background: transparent !important;
  color: #647084 !important;
  box-shadow: none !important;
  border-radius: 6px !important;
  filter: none !important;
}
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-left > *:hover,
body.csb-profile-animeworld #wpdcom .wpd-form .wpd-editor-buttons-right > *:hover {
  background: rgba(100,116,139,.10) !important;
  color: var(--csb-active-accent) !important;
}


/* ===== AnimeWorld 0.4.9 header/menu/cards alignment fix ===== */

/* The detached fixed header now reserves space with body padding, not with an in-flow placeholder.
   This avoids the weird remaining strip/gap after the header collapses. */
body.csb-profile-animeworld.csb-aw-header-uses-body-padding {
  padding-top: var(--csb-aw-body-offset, var(--csb-aw-header-height, 0px)) !important;
}
body.csb-profile-animeworld .csb-aw-header-placeholder {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-header--animeworld::before {
  opacity: .38 !important;
  max-height: 72px !important;
}
body.csb-profile-animeworld .csb-header--animeworld.is-collapsed::before {
  opacity: 0 !important;
}
body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-logo-row {
  display: block !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  transform: translateY(-10px) scale(.96) !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-menu-row {
  min-height: 54px !important;
}

/* Header menu: same soft-pill language as the homepage category rail, with smooth hover motion. */
body.csb-profile-animeworld .csb-aw-menu__list,
body.csb-profile-animeworld .csb-aw-menu .menu,
body.csb-profile-animeworld .csb-aw-menu__fallback {
  gap: 10px !important;
}
body.csb-profile-animeworld .csb-aw-menu a,
body.csb-profile-animeworld .csb-aw-menu__link {
  position: relative !important;
  isolation: isolate !important;
  min-height: 38px !important;
  padding: 0 17px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #262b3a !important;
  background: rgba(255,255,255,.76) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 10px 24px rgba(31,36,50,.055), inset 0 1px 0 rgba(255,255,255,.85) !important;
  overflow: hidden !important;
  transition: transform 220ms cubic-bezier(.16,1,.3,1), box-shadow 220ms ease, border-color 220ms ease, color 220ms ease !important;
}
body.csb-profile-animeworld .csb-aw-menu a::before,
body.csb-profile-animeworld .csb-aw-menu__link::before {
  content: "" !important;
  position: absolute !important;
  inset: 6px auto 6px 7px !important;
  width: 27px !important;
  border-radius: 999px !important;
  z-index: -1 !important;
  opacity: .18 !important;
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed) !important;
  transition: width 240ms cubic-bezier(.16,1,.3,1), opacity 240ms ease !important;
}
body.csb-profile-animeworld .csb-aw-menu a::after,
body.csb-profile-animeworld .csb-aw-menu__link::after {
  content: "" !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 3px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--csb-active-accent), #22d3ee) !important;
  opacity: 0 !important;
  transform: scaleX(.35) !important;
  transform-origin: center !important;
  transition: opacity 220ms ease, transform 240ms cubic-bezier(.16,1,.3,1) !important;
}
body.csb-profile-animeworld .csb-aw-menu a:hover,
body.csb-profile-animeworld .csb-aw-menu a:focus-visible,
body.csb-profile-animeworld .csb-aw-menu .current-menu-item > a,
body.csb-profile-animeworld .csb-aw-menu__link:hover,
body.csb-profile-animeworld .csb-aw-menu__link:focus-visible {
  transform: translateY(-2px) !important;
  color: #121625 !important;
  border-color: rgba(var(--csb-active-accent-rgb), .22) !important;
  box-shadow: 0 14px 30px rgba(var(--csb-active-accent-rgb), .13), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body.csb-profile-animeworld .csb-aw-menu a:hover::before,
body.csb-profile-animeworld .csb-aw-menu a:focus-visible::before,
body.csb-profile-animeworld .csb-aw-menu .current-menu-item > a::before,
body.csb-profile-animeworld .csb-aw-menu__link:hover::before,
body.csb-profile-animeworld .csb-aw-menu__link:focus-visible::before {
  width: calc(100% - 14px) !important;
  opacity: .12 !important;
}
body.csb-profile-animeworld .csb-aw-menu a:hover::after,
body.csb-profile-animeworld .csb-aw-menu a:focus-visible::after,
body.csb-profile-animeworld .csb-aw-menu .current-menu-item > a::after,
body.csb-profile-animeworld .csb-aw-menu__link:hover::after,
body.csb-profile-animeworld .csb-aw-menu__link:focus-visible::after {
  opacity: 1 !important;
  transform: scaleX(1) !important;
}

/* Small color variation for header menu pills, without needing menu-item classes. */
body.csb-profile-animeworld .csb-aw-menu li:nth-child(1) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(1)::before { background: #ff2d55 !important; }
body.csb-profile-animeworld .csb-aw-menu li:nth-child(2) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(2)::before { background: #ff2d55 !important; }
body.csb-profile-animeworld .csb-aw-menu li:nth-child(3) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(3)::before { background: #8b5cf6 !important; }
body.csb-profile-animeworld .csb-aw-menu li:nth-child(4) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(4)::before { background: #06b6d4 !important; }
body.csb-profile-animeworld .csb-aw-menu li:nth-child(5) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(5)::before { background: #f59e0b !important; }
body.csb-profile-animeworld .csb-aw-menu li:nth-child(6) > a::before,
body.csb-profile-animeworld .csb-aw-menu__fallback > a:nth-child(6)::before { background: #10b981 !important; }

/* Search button matches the new pill/chip system. */
body.csb-profile-animeworld .csb-aw-search {
  border-radius: 18px !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  box-shadow: 0 12px 24px rgba(31,36,50,.07), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
body.csb-profile-animeworld .csb-aw-search:hover,
body.csb-profile-animeworld .csb-aw-search:focus-visible {
  background: linear-gradient(135deg, rgba(var(--csb-active-accent-rgb), .13), rgba(34,211,238,.10)) !important;
  border-color: rgba(var(--csb-active-accent-rgb), .28) !important;
}

/* Card seam fix: image and content must touch; no phantom strip/gap. */
body.csb-profile-animeworld .csb-aw-story-card,
body.csb-profile-animeworld .csb-card {
  gap: 0 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media,
body.csb-profile-animeworld .csb-card__image {
  display: block !important;
  margin: 0 !important;
  border-bottom: 0 !important;
  line-height: 0 !important;
  vertical-align: top !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-card__image img {
  display: block !important;
  margin: 0 !important;
  vertical-align: top !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body,
body.csb-profile-animeworld .csb-card__body {
  margin-top: 0 !important;
  border-top: 0 !important;
}

/* Archive listing: equal cards per row, meta chips pinned to card bottom. */
body.csb-profile-animeworld .csb-archive .csb-grid,
body.csb-profile-animeworld.archive .csb-grid,
body.csb-profile-animeworld.category .csb-grid,
body.csb-profile-animeworld.search .csb-grid {
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}
body.csb-profile-animeworld .csb-archive .csb-grid .csb-card,
body.csb-profile-animeworld.archive .csb-grid .csb-card,
body.csb-profile-animeworld.category .csb-grid .csb-card,
body.csb-profile-animeworld.search .csb-grid .csb-card {
  height: 100% !important;
  min-height: 0 !important;
  align-self: stretch !important;
}
body.csb-profile-animeworld .csb-archive .csb-grid .csb-card__body,
body.csb-profile-animeworld.archive .csb-grid .csb-card__body,
body.csb-profile-animeworld.category .csb-grid .csb-card__body,
body.csb-profile-animeworld.search .csb-grid .csb-card__body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
body.csb-profile-animeworld .csb-archive .csb-grid .csb-card__excerpt,
body.csb-profile-animeworld.archive .csb-grid .csb-card__excerpt,
body.csb-profile-animeworld.category .csb-grid .csb-card__excerpt,
body.csb-profile-animeworld.search .csb-grid .csb-card__excerpt {
  margin-bottom: 18px !important;
}
body.csb-profile-animeworld .csb-archive .csb-grid .csb-card__meta,
body.csb-profile-animeworld.archive .csb-grid .csb-card__meta,
body.csb-profile-animeworld.category .csb-grid .csb-card__meta,
body.csb-profile-animeworld.search .csb-grid .csb-card__meta {
  margin-top: auto !important;
}

/* Mobile header: compact, no overlaying the hero, no phantom logo row. */
@media (max-width: 720px) {
  body.csb-profile-animeworld.csb-aw-header-uses-body-padding {
    padding-top: var(--csb-aw-body-offset, 88px) !important;
  }
  body.csb-profile-animeworld .csb-header--animeworld::before {
    display: none !important;
  }
  body.csb-profile-animeworld .csb-aw-logo-row {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.csb-profile-animeworld .csb-header--animeworld .csb-aw-flash {
    grid-template-columns: 128px minmax(0,1fr) !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    background: linear-gradient(90deg, #12101b 0 128px, var(--csb-active-accent) 128px, #7c3aed 100%) !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label {
    height: 48px !important;
    justify-content: flex-start !important;
    padding-left: 14px !important;
    font-size: 13px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__label i {
    width: 14px !important;
    height: 14px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__track,
  body.csb-profile-animeworld .csb-aw-flash__items,
  body.csb-profile-animeworld .csb-aw-flash__item {
    height: 48px !important;
  }
  body.csb-profile-animeworld .csb-aw-flash__item {
    font-size: 13px !important;
    font-weight: 900 !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row {
    min-height: 64px !important;
    padding: 0 10px !important;
    gap: 10px !important;
    background: rgba(255,255,255,.94) !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
  }
  body.csb-profile-animeworld .csb-aw-mini-logo {
    display: inline-flex !important;
    opacity: 1 !important;
    width: 52px !important;
    min-width: 52px !important;
    transform: none !important;
    pointer-events: auto !important;
  }
  body.csb-profile-animeworld .csb-aw-mini-logo__logo__image {
    max-width: 44px !important;
    max-height: 44px !important;
  }
  body.csb-profile-animeworld .csb-aw-menu {
    max-width: calc(100vw - 126px) !important;
    overflow-x: auto !important;
  }
  body.csb-profile-animeworld .csb-aw-menu a,
  body.csb-profile-animeworld .csb-aw-menu__link {
    min-height: 42px !important;
    padding: 0 17px !important;
    font-size: 14px !important;
    letter-spacing: .13em !important;
  }
  body.csb-profile-animeworld .csb-aw-search {
    flex: 0 0 48px !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border-radius: 13px !important;
  }
  body.csb-profile-animeworld .csb-aw-category-rail {
    justify-content: flex-start !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    padding: 0 8px 8px !important;
    scroll-padding-inline: 8px !important;
  }
}

/* ===== AnimeWorld 0.5.0 spacing/menu/SEO-safe image polish ===== */

/* 1) Menu already has pill motion; remove every underline/bar from old and new rules. */
body.csb-profile-animeworld .csb-aw-menu a::after,
body.csb-profile-animeworld .csb-aw-menu__link::after,
body.csb-profile-animeworld .csb-aw-menu a:hover::after,
body.csb-profile-animeworld .csb-aw-menu a:focus-visible::after,
body.csb-profile-animeworld .csb-aw-menu .current-menu-item > a::after,
body.csb-profile-animeworld .csb-aw-menu__link:hover::after,
body.csb-profile-animeworld .csb-aw-menu__link:focus-visible::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  transform: none !important;
  background: transparent !important;
}

/* 2) Compact desktop header: no ugly empty band between ticker/logo/menu. */
@media (min-width: 721px) {
  body.csb-profile-animeworld .csb-header--animeworld {
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(18px) saturate(1.16) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.16) !important;
  }
  body.csb-profile-animeworld .csb-header--animeworld .csb-aw-flash {
    margin: 0 !important;
    border-radius: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }
  body.csb-profile-animeworld .csb-aw-logo-row {
    max-height: 54px !important;
    height: 54px !important;
    min-height: 0 !important;
    padding: 4px 16px 0 !important;
    margin: 0 !important;
    place-items: center !important;
  }
  body.csb-profile-animeworld .csb-aw-logo__image {
    max-height: 48px !important;
    width: auto !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row {
    min-height: 54px !important;
    height: 54px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
  }
  body.csb-profile-animeworld .csb-header--animeworld.is-collapsed .csb-aw-logo-row {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}

/* 3) Give content breathing room under the fixed header. */
body.csb-profile-animeworld .csb-home--animeworld .csb-aw-home-shell,
body.csb-profile-animeworld .csb-single,
body.csb-profile-animeworld .csb-archive {
  padding-top: clamp(26px, 3vw, 46px) !important;
}
body.csb-profile-animeworld .csb-aw-latest-hero__head {
  margin-top: 0 !important;
}

/* 4) Final seam fix: media and card body must touch with no pale spacer. */
body.csb-profile-animeworld .csb-aw-story-card {
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 26px 26px 0 0 !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card__media .csb-aw-story-card__img,
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  vertical-align: top !important;
  line-height: 0 !important;
  transform: none !important;
  animation: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding-top: 20px !important;
  border-top: 0 !important;
  background: #fff !important;
  transform: translateY(0) !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges {
  top: auto !important;
  bottom: -17px !important;
  left: 20px !important;
  z-index: 5 !important;
}

/* Equal-height archive cards with bottom meta. */
body.csb-profile-animeworld .csb-archive .csb-grid,
body.csb-profile-animeworld.category .csb-grid,
body.csb-profile-animeworld.archive .csb-grid,
body.csb-profile-animeworld.search .csb-grid {
  align-items: stretch !important;
}
body.csb-profile-animeworld .csb-archive .csb-card,
body.csb-profile-animeworld.category .csb-card,
body.csb-profile-animeworld.archive .csb-card,
body.csb-profile-animeworld.search .csb-card {
  height: 100% !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
body.csb-profile-animeworld .csb-archive .csb-card__body,
body.csb-profile-animeworld.category .csb-card__body,
body.csb-profile-animeworld.archive .csb-card__body,
body.csb-profile-animeworld.search .csb-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}
body.csb-profile-animeworld .csb-archive .csb-card__meta,
body.csb-profile-animeworld.category .csb-card__meta,
body.csb-profile-animeworld.archive .csb-card__meta,
body.csb-profile-animeworld.search .csb-card__meta {
  margin-top: auto !important;
  padding-top: 16px !important;
}

/* Mobile header sanity: logo row hidden, ticker/menu compact, content not clipped behind fixed header. */
@media (max-width: 720px) {
  body.csb-profile-animeworld.csb-aw-header-uses-body-padding {
    padding-top: var(--csb-aw-body-offset, 144px) !important;
  }
  body.csb-profile-animeworld .csb-aw-logo-row {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.csb-profile-animeworld .csb-header--animeworld .csb-aw-flash {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    overflow: hidden !important;
  }
  body.csb-profile-animeworld .csb-aw-menu-row {
    min-height: 62px !important;
    height: 62px !important;
    padding: 0 10px !important;
    overflow: hidden !important;
  }
  body.csb-profile-animeworld .csb-aw-menu {
    max-width: calc(100vw - 74px) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
  body.csb-profile-animeworld .csb-aw-menu__list,
  body.csb-profile-animeworld .csb-aw-menu .menu,
  body.csb-profile-animeworld .csb-aw-menu__fallback {
    justify-content: flex-start !important;
    gap: 10px !important;
  }
  body.csb-profile-animeworld .csb-aw-menu a,
  body.csb-profile-animeworld .csb-aw-menu__link {
    min-height: 44px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    letter-spacing: .11em !important;
  }
  body.csb-profile-animeworld .csb-aw-home-shell,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-section,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-archive-hero__inner {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ===== AnimeWorld 0.5.1 legacy content image enhancement ===== */
.csb-profile-animeworld .csb-post-content .csb-auto-gallery {
  --csb-gallery-gap: clamp(10px, 1.6vw, 18px);
  width: min(100%, 1120px);
  margin: clamp(24px, 4vw, 42px) auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--csb-gallery-gap);
  padding: clamp(10px, 1.4vw, 16px);
  border-radius: clamp(22px, 3vw, 34px);
  background:
    radial-gradient(circle at 18% 12%, rgba(var(--csb-active-accent-rgb), .12), transparent 18rem),
    rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.92);
  box-shadow: 0 22px 64px rgba(31,36,50,.10);
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-3,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-5,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-6 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-4 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item {
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0;
  border-radius: clamp(16px, 2vw, 24px);
  overflow: hidden;
  background: rgba(255,255,255,.72);
  box-shadow: 0 14px 34px rgba(31,36,50,.10);
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item a,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item figure,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item p,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item div {
  margin: 0 !important;
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery__img,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: clamp(220px, 22vw, 340px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: inherit !important;
  box-shadow: none !important;
  transform: translateZ(0);
  transition: transform 420ms cubic-bezier(.16,1,.3,1), filter 420ms ease;
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item:hover .csb-auto-gallery__img,
.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item:hover img {
  transform: scale(1.035);
  filter: saturate(1.08) contrast(1.03);
}

.csb-profile-animeworld .csb-post-content .csb-standalone-image {
  width: 100%;
  margin: clamp(24px, 4vw, 42px) auto !important;
  display: flex;
  justify-content: center;
  text-align: center;
}

.csb-profile-animeworld .csb-post-content .csb-standalone-image > a,
.csb-profile-animeworld .csb-post-content .csb-standalone-image > img,
.csb-profile-animeworld .csb-post-content .csb-standalone-image__img {
  display: block;
  margin-inline: auto;
}

.csb-profile-animeworld .csb-post-content .csb-standalone-image__img,
.csb-profile-animeworld .csb-post-content .csb-standalone-image img {
  max-width: min(100%, 980px);
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: clamp(18px, 2.5vw, 28px);
}

@media (max-width: 767px) {
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-3,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-4,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-5,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--count-6 {
    grid-template-columns: 1fr;
    padding: 8px;
    border-radius: 22px;
  }

  .csb-profile-animeworld .csb-post-content .csb-auto-gallery__img,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery__item img {
    min-height: 0;
    aspect-ratio: auto;
    height: auto !important;
  }
}


/* ===== AnimeWorld 0.5.2 legacy gallery columns + mobile width fix ===== */
.csb-profile-animeworld,
.csb-profile-animeworld * {
  box-sizing: border-box;
}

html:has(body.csb-profile-animeworld),
body.csb-profile-animeworld {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

body.csb-profile-animeworld .csb-home,
body.csb-profile-animeworld .csb-single,
body.csb-profile-animeworld .csb-archive,
body.csb-profile-animeworld .csb-footer {
  overflow-x: clip !important;
  max-width: 100% !important;
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery {
  --csb-auto-gallery-columns: 2;
  grid-template-columns: repeat(var(--csb-auto-gallery-columns), minmax(0, 1fr)) !important;
}

.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 { --csb-auto-gallery-columns: 1; }
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 { --csb-auto-gallery-columns: 2; }
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 { --csb-auto-gallery-columns: 3; }
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 { --csb-auto-gallery-columns: 4; }
.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 { --csb-auto-gallery-columns: 5; }

@media (max-width: 767px) {
  html:has(body.csb-profile-animeworld),
  body.csb-profile-animeworld {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.csb-profile-animeworld .csb-aw-home-shell,
  body.csb-profile-animeworld .csb-content-shell,
  body.csb-profile-animeworld .csb-section,
  body.csb-profile-animeworld .csb-comments-shell,
  body.csb-profile-animeworld .csb-single-hero__inner,
  body.csb-profile-animeworld .csb-archive-hero__inner {
    width: auto !important;
    max-width: none !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  body.csb-profile-animeworld .csb-aw-flash,
  body.csb-profile-animeworld .csb-aw-menu-row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.csb-profile-animeworld .csb-aw-category-rail {
    max-width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: auto !important;
    scroll-padding-left: 8px;
  }

  .csb-profile-animeworld .csb-post-content .csb-auto-gallery,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4,
  .csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 {
    --csb-auto-gallery-columns: 1 !important;
    grid-template-columns: 1fr !important;
  }
}

/* ===== AnimeWorld 0.5.3 final gallery-row + homepage card layout fix ===== */
/* Legacy builder sometimes stored many images inside one <p>/<div>, not as separate blocks.
   This final layer makes those promoted containers obey the admin max-columns value. */
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery {
  display: grid !important;
  grid-template-columns: repeat(var(--csb-auto-gallery-columns, 5), minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  max-width: 100% !important;
}
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 { --csb-auto-gallery-columns: 1 !important; }
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 { --csb-auto-gallery-columns: 2 !important; }
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 { --csb-auto-gallery-columns: 3 !important; }
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 { --csb-auto-gallery-columns: 4 !important; }
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 { --csb-auto-gallery-columns: 5 !important; }
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__break,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > br {
  display: none !important;
}
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: clamp(16px, 2vw, 24px) !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 14px 34px rgba(31,36,50,.10) !important;
}
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: clamp(180px, 15vw, 260px) !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: inherit !important;
}

/* Homepage cards: hard reset to a simple equal-height magazine card. No phantom media spacer. */
body.csb-profile-animeworld .csb-aw-mosaic {
  align-items: stretch !important;
  grid-auto-rows: auto !important;
}
body.csb-profile-animeworld .csb-aw-story-card,
body.csb-profile-animeworld .csb-aw-story-card--feature,
body.csb-profile-animeworld .csb-aw-story-card--wide {
  height: 100% !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  align-self: stretch !important;
  background: #fff !important;
  overflow: hidden !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: clamp(210px, 15vw, 270px) !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 26px 26px 0 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  line-height: 0 !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media img,
body.csb-profile-animeworld .csb-aw-story-card__media .csb-aw-story-card__img,
body.csb-profile-animeworld .csb-aw-story-card__fallback {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  animation: none !important;
  filter: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__media::before,
body.csb-profile-animeworld .csb-aw-story-card__media::after {
  display: none !important;
  content: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 22px 24px 24px !important;
  background: #fff !important;
  border-radius: 0 0 26px 26px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__badges {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  margin: 0 0 14px !important;
  transform: none !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body h3 {
  margin: 0 0 12px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__body p {
  margin: 0 0 18px !important;
}
body.csb-profile-animeworld .csb-aw-story-card__meta {
  margin-top: auto !important;
  padding-top: 6px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

@media (min-width: 768px) {
  body.csb-profile-animeworld .csb-aw-story-card--feature .csb-aw-story-card__media,
  body.csb-profile-animeworld .csb-aw-story-card--wide .csb-aw-story-card__media {
    height: clamp(210px, 15vw, 270px) !important;
  }
}

@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 {
    --csb-auto-gallery-columns: 1 !important;
    grid-template-columns: 1fr !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__media {
    height: clamp(190px, 58vw, 310px) !important;
  }
  body.csb-profile-animeworld .csb-aw-story-card__body {
    padding: 18px 18px 20px !important;
  }
}


/* ===== AnimeWorld 0.5.4 legacy gallery natural-ratio row fill ===== */
/* Final override: behave like WP galleries — no forced crop, max columns, last row fills width. */
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery {
  --csb-gallery-gap: clamp(10px, 1.4vw, 18px);
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: var(--csb-gallery-gap) !important;
  grid-template-columns: none !important;
  grid-auto-flow: initial !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item {
  flex-grow: 1 !important;
  flex-shrink: 1 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  display: block !important;
  overflow: hidden !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-1 > .csb-auto-gallery__item {
  flex-basis: 100% !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-2 > .csb-auto-gallery__item {
  flex-basis: calc((100% - var(--csb-gallery-gap)) / 2) !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-3 > .csb-auto-gallery__item {
  flex-basis: calc((100% - (var(--csb-gallery-gap) * 2)) / 3) !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-4 > .csb-auto-gallery__item {
  flex-basis: calc((100% - (var(--csb-gallery-gap) * 3)) / 4) !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > div,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery--cols-5 > .csb-auto-gallery__item {
  flex-basis: calc((100% - (var(--csb-gallery-gap) * 4)) / 5) !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery a,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery figure,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery p,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery div {
  height: auto !important;
  min-height: 0 !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: clamp(14px, 1.8vw, 22px) !important;
}

body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item:hover .csb-auto-gallery__img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item:hover img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > a:hover img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > figure:hover img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > div:hover img,
body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > p:hover img {
  transform: none !important;
  filter: saturate(1.04) contrast(1.02);
}

@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > a,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > img,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > figure,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > div,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery > p,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery__item {
    flex-basis: 100% !important;
  }
}

/* ===== AnimeWorld 0.5.5 legacy gallery per-row crop fit ===== */
@media (min-width: 768px) {
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery.csb-auto-gallery--row-fitted {
    align-items: flex-start !important;
  }

  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item {
    height: var(--csb-auto-row-height) !important;
    min-height: var(--csb-auto-row-height) !important;
    max-height: var(--csb-auto-row-height) !important;
    display: block !important;
    overflow: hidden !important;
    align-self: flex-start !important;
  }

  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > a,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > figure,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > div,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > p,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > span {
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: inherit !important;
  }

  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item > img,
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item img {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    aspect-ratio: auto !important;
    border-radius: inherit !important;
  }
}

@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-post-content .csb-auto-gallery .csb-auto-gallery__row-fitted-item {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}

/* ===== AnimeWorld 0.5.6 related category posts ===== */
body.csb-profile-animeworld .csb-related-posts {
  grid-column: 1 / -1;
  width: min(var(--csb-max), calc(100vw - 44px));
  max-width: 100%;
  margin: clamp(22px, 4vw, 38px) auto 0;
  padding: clamp(18px, 3vw, 28px);
  border-radius: clamp(26px, 3vw, 36px);
  background:
    radial-gradient(circle at 10% 12%, rgba(var(--csb-active-accent-rgb), .10), transparent 24rem),
    radial-gradient(circle at 90% 86%, rgba(6,182,212,.10), transparent 26rem),
    rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.86);
  box-shadow: 0 24px 70px rgba(31,36,50,.08);
}

body.csb-profile-animeworld .csb-related-posts__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: clamp(16px, 2.5vw, 24px);
}

body.csb-profile-animeworld .csb-related-posts__head .csb-kicker {
  margin: 0;
}

body.csb-profile-animeworld .csb-related-posts__head h2 {
  margin: 0;
  font-size: clamp(30px, 3.2vw, 48px);
  line-height: .98;
  letter-spacing: -.05em;
  color: var(--csb-text);
}

body.csb-profile-animeworld .csb-related-posts__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 2vw, 22px);
  align-items: stretch;
}

body.csb-profile-animeworld .csb-related-card {
  min-width: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(15,23,42,.06);
  box-shadow: 0 18px 42px rgba(31,36,50,.08);
  transition: transform 260ms cubic-bezier(.16,1,.3,1), box-shadow 260ms ease;
}

body.csb-profile-animeworld .csb-related-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 58px rgba(var(--csb-active-accent-rgb), .14), 0 18px 42px rgba(31,36,50,.10);
}

body.csb-profile-animeworld .csb-related-card__media {
  display: block;
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: rgba(var(--csb-active-accent-rgb), .09);
}

body.csb-profile-animeworld .csb-related-card__media img,
body.csb-profile-animeworld .csb-related-card__fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 520ms cubic-bezier(.16,1,.3,1), filter 520ms ease;
}

body.csb-profile-animeworld .csb-related-card:hover .csb-related-card__media img,
body.csb-profile-animeworld .csb-related-card:hover .csb-related-card__fallback {
  transform: scale(1.055);
  filter: saturate(1.06) contrast(1.03);
}

body.csb-profile-animeworld .csb-related-card__fallback {
  background: linear-gradient(135deg, var(--csb-active-accent), #7c3aed);
}

body.csb-profile-animeworld .csb-related-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 16px 18px;
}

body.csb-profile-animeworld .csb-related-card__body .csb-badges {
  margin: 0;
}

body.csb-profile-animeworld .csb-related-card__body .csb-badge {
  min-height: 26px;
  padding: 0 10px;
  font-size: 10px;
}

body.csb-profile-animeworld .csb-related-card__body h3 {
  margin: 0;
  font-size: clamp(18px, 1.55vw, 24px);
  line-height: 1.07;
  letter-spacing: -.035em;
}

body.csb-profile-animeworld .csb-related-card__body h3 a {
  color: var(--csb-text) !important;
}

body.csb-profile-animeworld .csb-related-card__body p {
  margin: 0;
  color: var(--csb-text-soft);
  font-size: 14px;
  line-height: 1.55;
}

body.csb-profile-animeworld .csb-related-card__meta {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 6px;
}

body.csb-profile-animeworld .csb-related-card__meta .csb-aw-meta-chip {
  min-height: 30px;
  padding: 0 11px;
  font-size: 12px;
}

@media (max-width: 1024px) {
  body.csb-profile-animeworld .csb-related-posts__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-related-posts {
    width: calc(100% - 16px);
    max-width: calc(100% - 16px);
    padding: 14px;
    border-radius: 22px;
  }

  body.csb-profile-animeworld .csb-related-posts__head {
    display: grid;
    align-items: start;
    gap: 8px;
  }

  body.csb-profile-animeworld .csb-related-posts__head h2 {
    font-size: clamp(26px, 8vw, 34px);
  }

  body.csb-profile-animeworld .csb-related-posts__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.csb-profile-animeworld .csb-related-card {
    border-radius: 18px;
  }

  body.csb-profile-animeworld .csb-related-card__body {
    padding: 12px;
    gap: 8px;
  }

  body.csb-profile-animeworld .csb-related-card__body p {
    display: none;
  }

  body.csb-profile-animeworld .csb-related-card__body h3 {
    font-size: clamp(15px, 4.2vw, 18px);
  }

  body.csb-profile-animeworld .csb-related-card__meta .csb-aw-meta-chip--read {
    display: none;
  }
}


/* ===== AnimeWorld 0.5.7 related posts mobile badge/padding polish ===== */
@media (max-width: 767px) {
  body.csb-profile-animeworld .csb-related-posts {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.csb-profile-animeworld .csb-related-posts__grid {
    gap: 8px !important;
  }

  body.csb-profile-animeworld .csb-related-card__body {
    padding: 10px 8px 12px !important;
    gap: 7px !important;
  }

  body.csb-profile-animeworld .csb-related-card__body .csb-badges {
    width: 100% !important;
    display: block !important;
  }

  body.csb-profile-animeworld .csb-related-card__body .csb-badge {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
    font-size: clamp(7px, 2.05vw, 10px) !important;
    letter-spacing: clamp(.012em, .45vw, .045em) !important;
    line-height: 1 !important;
  }

  body.csb-profile-animeworld .csb-related-card__body h3 {
    font-size: clamp(14px, 4vw, 18px) !important;
  }

  body.csb-profile-animeworld .csb-related-card__meta {
    gap: 5px !important;
  }

  body.csb-profile-animeworld .csb-related-card__meta .csb-aw-meta-chip {
    min-height: 26px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 11px !important;
  }
}
