:root {
  --au-bg: #0b1020;
  --au-bg-2: #131933;
  --au-card: rgba(26, 24, 52, 0.84);
  --au-card-2: rgba(40, 33, 74, 0.78);
  --au-stroke: rgba(255, 255, 255, 0.12);
  --au-text: #f5f2ff;
  --au-muted: #c7c1e7;
  --au-accent: #ffd86a;
  --au-accent-2: #a77dff;
  --au-accent-3: #77d8ff;
  --au-shadow: 0 18px 60px rgba(0, 0, 0, 0.36);
  --au-radius: 22px;
  --au-radius-sm: 16px;
}

html.anima-university-open,
body.anima-university-open {
  overflow: hidden;
}

.anima-university-launcher,
.anima-university-inline-button {
  appearance: none;
  border: 0;
  cursor: pointer;
  color: #fff;
  font: inherit;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(134, 100, 255, 0.95), rgba(255, 214, 120, 0.95));
  box-shadow: 0 12px 34px rgba(103, 59, 199, 0.35);
  padding: 11px 14px;
  z-index: 9998;
}

.anima-university-launcher {
  position: fixed;
  right: 18px;
  bottom: 22px;
}

.anima-university-launcher--left {
  right: auto;
  left: 18px;
}

.anima-university-launcher__crystal,
.anima-university-launcher__text { pointer-events: none; }

.anima-university-overlay {
  position: fixed;
  inset: 0;
  background: rgba(8, 8, 18, 0.72);
  backdrop-filter: blur(10px);
  z-index: 9997;
  padding: 18px;
}

.anima-university-panel {
  width: min(1600px, 100%);
  height: calc(100vh - 36px);
  margin: 0 auto;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--au-shadow);
  background:
    radial-gradient(circle at top left, rgba(255, 216, 106, 0.16), transparent 28%),
    radial-gradient(circle at top right, rgba(130, 98, 255, 0.18), transparent 32%),
    linear-gradient(180deg, #191733, #0d1122 56%, #0a0d19);
  border: 1px solid rgba(255,255,255,0.1);
}

.anima-university-inline-shell,
.anima-u {
  height: 100%;
  color: var(--au-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
}

.anima-university-embed {
  width: 100%;
  min-height: var(--anima-university-embed-height, 860px);
  height: var(--anima-university-embed-height, 860px);
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--au-shadow);
  background:
    radial-gradient(circle at top left, rgba(255, 216, 106, 0.16), transparent 28%),
    radial-gradient(circle at top right, rgba(130, 98, 255, 0.18), transparent 32%),
    linear-gradient(180deg, #191733, #0d1122 56%, #0a0d19);
  border: 1px solid rgba(255,255,255,0.08);
}

.anima-u {
  display: flex;
  flex-direction: column;
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 38px 38px;
}

.anima-u__workspace {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 18px;
  padding: 0 18px 18px;
  min-height: 0;
  flex: 1;
}

.anima-u__main,
.anima-u__sidebar {
  min-height: 0;
}

.anima-u__main {
  overflow: auto;
  padding-right: 2px;
}

.anima-u__sidebar {
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 16px;
  padding-bottom: 12px;
}

.anima-u__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  position: sticky;
  top: 0;
  z-index: 6;
  background: linear-gradient(180deg, rgba(15,17,32,0.85), rgba(15,17,32,0.55));
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.anima-u__brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.anima-u__brand small,
.anima-u__kicker,
.anima-u__eyebrow {
  display: block;
  color: var(--au-accent);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
}

.anima-u__brand strong {
  font-size: 22px;
  line-height: 1.1;
}

.anima-u__brand-crystal {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(121, 98, 255, 0.85), rgba(255, 216, 106, 0.86));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.25), 0 8px 25px rgba(80,50,160,0.3);
}

.anima-u__tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.anima-u__tab,
.anima-u__primary,
.anima-u__ghost,
.anima-u__menu-btn,
.anima-u__path-item,
.anima-u__path-large,
.anima-u__mini-chip,
.anima-u__toc-row,
.anima-u__preview-card,
.anima-u__related-card {
  appearance: none;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.05);
  color: var(--au-text);
  font: inherit;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.anima-u__tab:hover,
.anima-u__primary:hover,
.anima-u__ghost:hover,
.anima-u__menu-btn:hover,
.anima-u__path-item:hover,
.anima-u__path-large:hover,
.anima-u__mini-chip:hover,
.anima-u__toc-row:hover,
.anima-u__preview-card:hover,
.anima-u__related-card:hover {
  transform: translateY(-1px);
  border-color: rgba(255,216,106,0.45);
}

.anima-u__tab {
  border-radius: 999px;
  padding: 10px 13px;
  font-size: 14px;
}

.anima-u__tab.is-active,
.anima-u__primary {
  background: linear-gradient(135deg, rgba(255,216,106,0.96), rgba(255,190,97,0.9));
  color: #291f09;
  border-color: rgba(255, 216, 106, 0.6);
  font-weight: 700;
}

.anima-u__tab--close {
  background: rgba(255,255,255,0.08);
}

.anima-u__ghost {
  border-radius: 999px;
  padding: 10px 13px;
}

.anima-u__primary:disabled,
.anima-u__ghost:disabled,
.anima-u__tab:disabled,
.anima-u__menu-btn:disabled {
  opacity: 0.45;
  cursor: default;
  transform: none;
}

.anima-u__hero,
.anima-u__panel-card,
.anima-u__side-card,
.anima-u__reader-hero,
.anima-u__plates-head,
.anima-u__plate-banner,
.anima-u__plate,
.anima-u__lesson-card,
.anima-u__featured-card,
.anima-u__toc-group,
.anima-u__article-content,
.anima-u__book-nav,
.anima-u__preview-card {
  background: linear-gradient(180deg, var(--au-card), rgba(16,18,36,0.9));
  border: 1px solid var(--au-stroke);
  border-radius: var(--au-radius);
  box-shadow: var(--au-shadow);
}

.anima-u__hero,
.anima-u__panel-card,
.anima-u__side-card,
.anima-u__reader-hero,
.anima-u__plates-head,
.anima-u__plate-banner,
.anima-u__book-nav,
.anima-u__article-content {
  padding: 22px;
  margin-bottom: 18px;
}

.anima-u__two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.anima-u__hero {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.9fr);
  gap: 20px;
}

.anima-u__hero-copy h1,
.anima-u__reader-copy h2,
.anima-u__panel-card h2,
.anima-u__plates-head h2 {
  margin: 0 0 12px;
  font-size: clamp(30px, 4.2vw, 54px);
  line-height: 0.95;
}

.anima-u__reader-copy h2,
.anima-u__panel-card h2,
.anima-u__plates-head h2 {
  font-size: clamp(24px, 2.5vw, 36px);
  line-height: 1.05;
}

.anima-u__hero p,
.anima-u__panel-card p,
.anima-u__reader-copy p,
.anima-u__plate p,
.anima-u__featured-body p,
.anima-u__toc-card p,
.anima-u__muted,
.anima-u__lesson-body p {
  color: var(--au-muted);
  line-height: 1.55;
}

.anima-u__search-row {
  display: flex;
  gap: 10px;
  margin: 18px 0 12px;
}

.anima-u__search-row input,
.anima-u__voice-grid select {
  width: 100%;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(0,0,0,0.26);
  color: var(--au-text);
  border-radius: 999px;
  padding: 14px 16px;
  outline: none;
  font: inherit;
}

.anima-u__search-row--wide input {
  border-radius: 20px;
}

.anima-u__search-row--compact {
  margin: 0;
}

.anima-u__button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.anima-u__button-row--compact .anima-u__primary,
.anima-u__button-row--compact .anima-u__ghost {
  padding: 9px 12px;
  font-size: 14px;
}

.anima-u__book-3d {
  width: 140px;
  height: 180px;
  border-radius: 16px 8px 8px 16px;
  background: linear-gradient(135deg, #7d58ff, #ae65ff, #ffc966);
  position: relative;
  box-shadow: 16px 18px 40px rgba(0,0,0,.35);
  transform: perspective(900px) rotateY(-18deg);
  display: grid;
  place-items: center;
  margin-left: auto;
}

.anima-u__book-3d::after {
  content: "";
  position: absolute;
  right: -14px;
  top: 8px;
  bottom: 8px;
  width: 16px;
  border-radius: 0 8px 8px 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.75), rgba(215,215,255,0.28));
}

.anima-u__book-3d span {
  font-weight: 800;
  letter-spacing: .06em;
  text-align: center;
  color: #fff6de;
  line-height: 1.1;
}

.anima-u__hero-book {
  display: grid;
  align-content: start;
  gap: 18px;
}

.anima-u__stats-grid,
.anima-u__mini-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.anima-u__stats-grid > div,
.anima-u__mini-stats > div {
  border-radius: 18px;
  padding: 16px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
}

.anima-u__stats-grid strong,
.anima-u__mini-stats strong {
  display: block;
  font-size: 30px;
  line-height: 1;
  margin-bottom: 6px;
}

.anima-u__stats-grid span,
.anima-u__mini-stats span {
  color: var(--au-muted);
  font-size: 13px;
}

.anima-u__panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.anima-u__preview-grid,
.anima-u__lesson-grid,
.anima-u__path-grid,
.anima-u__progress-grid,
.anima-u__plate-grid,
.anima-u__toc-groups {
  display: grid;
  gap: 16px;
}

.anima-u__preview-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.anima-u__preview-grid--plates {
  margin-bottom: 18px;
}

.anima-u__lesson-grid {
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  margin-bottom: 18px;
}

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

.anima-u__plate-grid {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.anima-u__featured-card,
.anima-u__lesson-card {
  overflow: hidden;
}

.anima-u__featured-image,
.anima-u__lesson-image,
.anima-u__reader-image {
  min-height: 170px;
  background-size: cover;
  background-position: center;
  background-color: rgba(255,255,255,0.06);
}

.anima-u__reader-hero {
  display: grid;
  grid-template-columns: minmax(240px, 360px) minmax(0, 1fr);
  gap: 20px;
}

.anima-u__reader-image {
  border-radius: 18px;
}

.anima-u__reader-image--empty,
.anima-u__lesson-image--empty,
.anima-u__featured-image.is-empty {
  display: grid;
  place-items: center;
  font-size: 54px;
}

.anima-u__lesson-body,
.anima-u__featured-body {
  padding: 18px;
}

.anima-u__lesson-meta {
  margin: 0 0 8px;
  color: var(--au-accent);
  font-size: 13px;
  font-weight: 700;
}

.anima-u__lesson-body h3,
.anima-u__featured-body h3,
.anima-u__plate h4,
.anima-u__preview-card strong,
.anima-u__plate-banner h3 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.08;
}

.anima-u__featured-body h3,
.anima-u__plate h4,
.anima-u__preview-card strong,
.anima-u__plate-banner h3 {
  font-size: 20px;
}

.anima-u__chip-cloud,
.anima-u__plate-strip,
.anima-u__voice-grid,
.anima-u__button-stack,
.anima-u__path-list,
.anima-u__toc-preview,
.anima-u__toc-mini {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.anima-u__voice-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-bottom: 10px;
}

.anima-u__voice-grid label {
  display: grid;
  gap: 6px;
  color: var(--au-muted);
  font-size: 13px;
}

.anima-u__mini-chip {
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 13px;
}

.anima-u__mini-chip span {
  opacity: .7;
  margin-left: 4px;
}

.anima-u__plate-strip span {
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  padding: 8px 10px;
  font-size: 12px;
  color: var(--au-muted);
}

.anima-u__path-item,
.anima-u__path-large,
.anima-u__menu-btn,
.anima-u__preview-card,
.anima-u__toc-row {
  width: 100%;
  border-radius: 18px;
  padding: 14px;
  text-align: left;
}

.anima-u__menu-btn {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.anima-u__menu-btn span,
.anima-u__path-item span,
.anima-u__path-large span,
.anima-u__preview-card small {
  display: block;
  color: var(--au-muted);
  font-size: 13px;
  margin-top: 4px;
}

.anima-u__path-large strong,
.anima-u__path-item b,
.anima-u__preview-card strong {
  display: block;
}

.anima-u__book-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 18px;
}

.anima-u__book-main {
  min-width: 0;
}

.anima-u__toc-mini,
.anima-u__toc-preview {
  flex-direction: column;
}

.anima-u__toc-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.anima-u__toc-row.is-active,
.anima-u__preview-card.is-active,
.anima-u__plate.is-selected {
  border-color: rgba(255,216,106,0.52);
  background: linear-gradient(180deg, rgba(255,216,106,0.18), rgba(109,77,182,0.14));
}

.anima-u__toc-row span {
  color: var(--au-accent);
  min-width: 28px;
}

.anima-u__plate-banner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
}

.anima-u__plates-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
}

.anima-u__plate-orb {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, rgba(255,255,255,.96), rgba(204,173,255,.5) 28%, rgba(152,105,255,.82) 62%, rgba(89,56,158,.92));
  color: white;
  display: grid;
  place-items: center;
  text-align: center;
  box-shadow: inset 0 0 16px rgba(255,255,255,0.24), 0 18px 35px rgba(85,49,165,0.35);
}

.anima-u__plate-orb strong {
  display: block;
  font-size: 34px;
  line-height: 1;
}

.anima-u__plate-orb span {
  display: block;
  opacity: 0.85;
}

.anima-u__plate-progress {
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
  margin: 0 0 18px;
}

.anima-u__plate-progress span,
.anima-u__mastery-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ffb85f, #ffd96c, #7ce0ff);
}

.anima-u__plate {
  padding: 18px;
}

.anima-u__plate-top {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: var(--au-accent);
  margin-bottom: 10px;
}

.anima-u__plate-top em {
  margin-left: auto;
  color: var(--au-muted);
  font-style: normal;
}

.anima-u__article-content {
  line-height: 1.7;
}

.anima-u__article-content > *:first-child {
  margin-top: 0;
}

.anima-u__article-content h1,
.anima-u__article-content h2,
.anima-u__article-content h3,
.anima-u__article-content h4 {
  color: #fff7c7;
  line-height: 1.15;
  margin-top: 1.55em;
}

.anima-u__article-content a {
  color: #a7e4ff;
}

.anima-u__article-content p,
.anima-u__article-content li,
.anima-u__article-content blockquote {
  color: var(--au-text);
}

.anima-u__article-content img {
  max-width: 100%;
  height: auto;
  border-radius: 16px;
}

.anima-u__toc-card {
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
}

.anima-u__mastery-bar {
  height: 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
  margin: 14px 0 16px;
}

.anima-u__pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 4px 20px;
  color: var(--au-muted);
}

.anima-u__empty,
.anima-u__loading,
.anima-u__error {
  display: grid;
  place-items: center;
  min-height: 260px;
  text-align: center;
  border-radius: var(--au-radius);
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  padding: 24px;
  margin-bottom: 18px;
}

.anima-u__spinner {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 3px solid rgba(255,255,255,0.12);
  border-top-color: var(--au-accent);
  animation: anima-u-spin 0.9s linear infinite;
  margin-bottom: 12px;
}

@keyframes anima-u-spin {
  to { transform: rotate(360deg); }
}

.anima-u__tilt {
  transform: perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  position: relative;
  overflow: hidden;
}

.anima-u__tilt::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at var(--glow-x, 50%) var(--glow-y, 50%), rgba(255,255,255,0.12), transparent 32%);
  pointer-events: none;
}

.anima-u__main::-webkit-scrollbar,
.anima-u__sidebar::-webkit-scrollbar {
  width: 10px;
}

.anima-u__main::-webkit-scrollbar-thumb,
.anima-u__sidebar::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.18);
  border-radius: 999px;
}

@media (max-width: 1180px) {
  .anima-u__workspace,
  .anima-u__book-layout,
  .anima-u__hero,
  .anima-u__reader-hero,
  .anima-u__two-col,
  .anima-u__plates-head,
  .anima-u__plate-banner {
    grid-template-columns: 1fr;
  }

  .anima-u__workspace {
    grid-template-columns: 1fr;
  }

  .anima-u__sidebar {
    order: 2;
  }

  .anima-u__main {
    order: 1;
  }
}

@media (max-width: 780px) {
  .anima-university-overlay {
    padding: 10px;
  }

  .anima-university-panel {
    height: calc(100vh - 20px);
    border-radius: 22px;
  }

  .anima-u__topbar {
    padding: 14px;
  }

  .anima-u__workspace {
    padding: 0 12px 12px;
    gap: 12px;
  }

  .anima-u__hero,
  .anima-u__panel-card,
  .anima-u__reader-hero,
  .anima-u__plates-head,
  .anima-u__plate-banner,
  .anima-u__article-content,
  .anima-u__book-nav {
    padding: 16px;
  }

  .anima-u__tabs {
    justify-content: flex-start;
  }

  .anima-u__tab {
    font-size: 13px;
    padding: 9px 11px;
  }

  .anima-u__search-row,
  .anima-u__button-row {
    flex-direction: column;
    align-items: stretch;
  }

  .anima-u__search-row .anima-u__primary,
  .anima-u__button-row .anima-u__primary,
  .anima-u__button-row .anima-u__ghost {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  .anima-u__stats-grid,
  .anima-u__mini-stats,
  .anima-u__path-grid,
  .anima-u__progress-grid {
    grid-template-columns: 1fr;
  }

  .anima-u__lesson-grid,
  .anima-u__preview-grid,
  .anima-u__plate-grid {
    grid-template-columns: 1fr;
  }

  .anima-university-launcher {
    right: 12px;
    bottom: 12px;
    padding: 10px 12px;
  }

  .anima-university-launcher__text {
    display: none;
  }
}

/* v1.15.1 — deeper textbook / reader refinements */
.anima-u__ghost.is-active {
  border-color: rgba(255,216,106,0.58);
  background: linear-gradient(180deg, rgba(255,216,106,0.20), rgba(255,255,255,0.06));
  color: #fff7ca;
}

.anima-u__lesson-progress-strip {
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
  margin: -6px 0 18px;
  box-shadow: inset 0 1px 6px rgba(0,0,0,.25);
}

.anima-u__lesson-progress-strip span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff8bc9, #ffd86a, #79e3ff);
}

.anima-u__reader-settings {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 16px 18px;
  margin-bottom: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: var(--au-radius);
  box-shadow: 0 14px 45px rgba(0,0,0,.24);
}

.anima-u__reader-settings strong {
  display: block;
  font-size: 17px;
  color: var(--au-text);
}

.anima-u__reader-settings span {
  display: block;
  color: var(--au-muted);
  font-size: 13px;
  margin-top: 3px;
}

.anima-u__book-page {
  position: relative;
  min-height: 620px;
  padding: clamp(28px, 5vw, 60px);
  margin-bottom: 18px;
  border-radius: 28px 18px 18px 28px;
  color: #241a2e;
  background:
    linear-gradient(90deg, rgba(90,58,129,.22) 0 22px, transparent 22px),
    linear-gradient(180deg, #fff9ef, #f2e6d1 58%, #ead9bf);
  border: 1px solid rgba(255,255,255,0.34);
  box-shadow:
    inset 18px 0 35px rgba(93,66,118,.14),
    inset -12px 0 28px rgba(0,0,0,.08),
    0 28px 78px rgba(0,0,0,.34);
  overflow: hidden;
  font-size: calc(1rem * var(--au-font-scale, 1));
}

.anima-u__book-page::before {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(65,38,84,.18);
  border-radius: 22px 14px 14px 22px;
  pointer-events: none;
}

.anima-u__book-page::after {
  content: "";
  position: absolute;
  left: 26px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(96,61,124,.20);
  box-shadow: 4px 0 0 rgba(96,61,124,.08), 8px 0 0 rgba(96,61,124,.04);
}

.anima-u__page-header,
.anima-u__page-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  color: rgba(55,36,72,.62);
  font-size: .88em;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .14em;
  position: relative;
  z-index: 1;
}

.anima-u__page-body {
  position: relative;
  z-index: 1;
  padding: clamp(34px, 5vw, 64px) 0;
  max-width: 900px;
  margin: 0 auto;
}

.anima-u__page-body .anima-u__kicker {
  color: #8d6229;
}

.anima-u__page-body h1 {
  color: #201329;
  font-size: clamp(34px, 5vw, 64px);
  line-height: .98;
  margin: 0 0 22px;
  letter-spacing: -.03em;
}

.anima-u__page-body p {
  color: #35263f;
  font-size: calc(1.16rem * var(--au-font-scale, 1));
  line-height: 1.72;
  margin: 0;
}

.anima-u__page-footer {
  border-top: 1px solid rgba(55,36,72,.15);
  padding-top: 20px;
}

.anima-u__book-page .anima-u__ghost {
  color: #2a1d36;
  border-color: rgba(55,36,72,.18);
  background: rgba(255,255,255,.46);
}

.anima-u__book-page .anima-u__primary {
  color: #281b0b;
}

.anima-u__reader-dock {
  position: sticky;
  bottom: 12px;
  z-index: 4;
  width: min(680px, calc(100% - 24px));
  margin: 0 auto 6px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border-radius: 999px;
  background: rgba(12, 12, 28, .82);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 55px rgba(0,0,0,.38);
  backdrop-filter: blur(12px);
}

.anima-u__reader-dock button {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 9px 12px;
  color: var(--au-text);
  background: rgba(255,255,255,.07);
  cursor: pointer;
}

.anima-u__reader-dock button:last-child {
  color: #211709;
  background: linear-gradient(135deg, rgba(255,216,106,.96), rgba(255,190,97,.92));
}

.anima-u__reader-dock button:disabled {
  opacity: .42;
  cursor: default;
}

.anima-u__reader-dock span {
  color: var(--au-muted);
  font-weight: 700;
  white-space: nowrap;
}

.anima-u__book-shell.is-focus-mode .anima-u__reader-hero,
.anima-u__book-shell.is-focus-mode .anima-u__plate-banner,
.anima-u__book-shell.is-focus-mode .anima-u__preview-grid--plates,
.anima-u__book-shell.is-focus-mode .anima-u__book-nav,
.anima-u__book-shell.is-focus-mode .anima-u__panel-card {
  display: none;
}

.anima-u__book-shell.is-focus-mode .anima-u__book-layout {
  grid-template-columns: 1fr;
}

.anima-u__book-shell.is-focus-mode .anima-u__book-page {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.anima-u__book-shell.is-full-mode .anima-u__article-content {
  font-size: calc(1rem * var(--au-font-scale, 1));
}

@media (max-width: 780px) {
  .anima-u__reader-settings {
    align-items: stretch;
    flex-direction: column;
  }

  .anima-u__book-page {
    min-height: 520px;
    padding: 28px 22px;
    border-radius: 22px;
  }

  .anima-u__page-body {
    padding: 34px 0;
  }

  .anima-u__page-header,
  .anima-u__page-footer,
  .anima-u__reader-dock {
    flex-wrap: wrap;
  }

  .anima-u__reader-dock {
    border-radius: 22px;
    width: calc(100% - 12px);
  }

  .anima-u__reader-dock button,
  .anima-u__reader-dock span {
    flex: 1 1 auto;
    text-align: center;
  }
}

/* v1.15.2 — navigation, scroll, ToC, and ANIMA Audio repair layer */
.anima-u,
.anima-university-inline-shell,
.anima-university-panel {
  min-height: 0;
}

.anima-u {
  overflow: hidden;
}

.anima-u__workspace {
  height: calc(100% - 78px);
  overflow: hidden;
  align-items: stretch;
}

.anima-u__main,
.anima-u__sidebar {
  max-height: 100%;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.anima-u__main {
  overflow-y: auto !important;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

.anima-u__sidebar {
  overflow-y: auto !important;
  overflow-x: hidden;
}

.anima-u__toc-header {
  position: sticky;
  top: 0;
  z-index: 5;
  backdrop-filter: blur(12px);
}

.anima-u__toc-groups {
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
  align-items: start;
  align-content: start;
  padding-bottom: 80px;
}

.anima-u__toc-group {
  padding: 18px;
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
}

.anima-u__toc-group h3 {
  margin: 0 0 12px;
  color: var(--au-accent);
  font-size: 26px;
}

.anima-u__toc-preview,
.anima-u__toc-mini {
  display: grid !important;
  grid-template-columns: 1fr;
  align-content: start;
  max-height: none !important;
  overflow: visible !important;
}

.anima-u__toc-mini {
  max-height: 44vh !important;
  overflow-y: auto !important;
  padding-right: 4px;
}

.anima-u__toc-card {
  min-height: 0;
}

.anima-u__toc-row {
  min-height: 46px;
}

.anima-u__audio-control-row {
  display: grid;
  grid-template-columns: 1.2fr .8fr .8fr;
  gap: 8px;
  margin-bottom: 10px;
}

.anima-u__audio-primary,
.anima-u__audio-btn {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 10px 12px;
  cursor: pointer;
  font-weight: 800;
}

.anima-u__audio-primary {
  color: #211709;
  background: linear-gradient(135deg, rgba(255,216,106,.96), rgba(255,190,97,.92));
  box-shadow: 0 12px 28px rgba(255,198,88,.16);
}

.anima-u__audio-btn {
  color: var(--au-text);
  background: rgba(255,255,255,.07);
}

.anima-u__fallback-details {
  margin-top: 10px;
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 10px;
}

.anima-u__fallback-details summary {
  cursor: pointer;
  color: var(--au-muted);
  font-size: 13px;
  font-weight: 700;
}

.anima-u__reader-dock {
  width: min(840px, calc(100% - 24px));
}

.anima-u__reader-dock button {
  white-space: nowrap;
}

.anima-u__tab--audio,
.anima-u__ghost--audio {
  box-shadow: 0 0 0 1px rgba(255,216,106,.16), 0 8px 26px rgba(255,216,106,.08);
}

@media (max-width: 1180px) {
  .anima-u__workspace {
    height: calc(100% - 118px);
  }

  .anima-u__toc-mini {
    max-height: 260px !important;
  }
}

@media (max-width: 780px) {
  .anima-u__workspace {
    height: calc(100% - 160px);
  }

  .anima-u__panel-head {
    display: grid;
  }

  .anima-u__audio-control-row {
    grid-template-columns: 1fr;
  }

  .anima-u__reader-dock {
    position: sticky;
    bottom: 8px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-radius: 20px;
  }

  .anima-u__reader-dock span {
    grid-column: 1 / -1;
    text-align: center;
  }
}


/* v1.15.3 — stabilization: readable book pages, permanent ToC scroll, separated University audio */
.anima-u__workspace {
  min-height: 0 !important;
}

.anima-u__main {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scrollbar-gutter: stable both-edges;
}

.anima-u__sidebar {
  overflow-y: scroll !important;
  scrollbar-gutter: stable;
}

.anima-u__toc-view {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 14px;
  min-height: 0;
  height: calc(100vh - 150px);
  max-height: calc(100vh - 150px);
}

.anima-u__toc-header-card {
  margin-bottom: 0 !important;
  position: sticky;
  top: 0;
  z-index: 4;
}

.anima-u__toc-scroll {
  min-height: 420px;
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scrollbar-gutter: stable both-edges;
  padding: 0 10px 90px 0;
  border-radius: var(--au-radius);
}

.anima-u__toc-groups {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)) !important;
  align-content: start !important;
  align-items: start !important;
  gap: 16px !important;
  padding-bottom: 80px;
  transform: none !important;
}

.anima-u__toc-group {
  transform: none !important;
  overflow: visible !important;
  min-height: 180px !important;
  height: auto !important;
}

.anima-u__toc-preview {
  overflow: visible !important;
  max-height: none !important;
}

.anima-u__book-page,
.anima-u__article-content,
.anima-u__reader-hero,
.anima-u__plate-banner {
  transform: none !important;
  transform-style: flat !important;
}

.anima-u__book-page::before,
.anima-u__article-content::before,
.anima-u__reader-hero::before,
.anima-u__plate-banner::before {
  opacity: .18;
}

.anima-u__book-page {
  rotate: 0deg !important;
  margin-top: 0 !important;
}

.anima-u__article-content {
  overflow: visible !important;
}

.anima-u__control-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.anima-u__book-mini-status {
  display: grid;
  gap: 6px;
  margin-bottom: 12px;
  color: var(--au-text);
}

.anima-u__book-mini-status strong {
  line-height: 1.22;
}

.anima-u__book-mini-status span {
  color: var(--au-muted);
  font-size: 13px;
  line-height: 1.35;
}

.anima-u__audio-control-row--stacked {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.anima-u__audio-control-row--stacked + .anima-u__audio-control-row--stacked {
  grid-template-columns: 1.2fr .8fr .8fr;
  margin-top: 8px;
}

.anima-u__side-card--audio {
  border-color: rgba(119, 216, 255, .22);
}

.anima-u__tab--audio,
.anima-u__ghost--audio {
  border-color: rgba(119,216,255,.25);
  box-shadow: 0 0 0 1px rgba(119,216,255,.12), 0 8px 26px rgba(119,216,255,.06);
}

@media (max-width: 1180px) {
  .anima-u__toc-view {
    height: calc(100vh - 190px);
    max-height: calc(100vh - 190px);
  }
}

@media (max-width: 780px) {
  .anima-u__toc-view {
    height: auto;
    max-height: none;
  }

  .anima-u__toc-scroll {
    max-height: 68vh;
    min-height: 420px;
  }

  .anima-u__control-grid,
  .anima-u__audio-control-row--stacked,
  .anima-u__audio-control-row--stacked + .anima-u__audio-control-row--stacked {
    grid-template-columns: 1fr;
  }
}

/* v1.16.0 — Minimal Interactive Pass */
.anima-u--minimal .anima-u__topbar {
  padding: 10px 14px;
  min-height: 54px;
}

.anima-u--minimal .anima-u__brand-crystal {
  width: 34px;
  height: 34px;
  border-radius: 13px;
}

.anima-u--minimal .anima-u__brand strong {
  font-size: 18px;
}

.anima-u--minimal .anima-u__brand small {
  font-size: 10px;
  margin-bottom: 2px;
}

.anima-u--minimal .anima-u__tabs {
  gap: 6px;
}

.anima-u--minimal .anima-u__tab {
  min-width: 40px;
  min-height: 36px;
  padding: 8px 10px;
  display: grid;
  place-items: center;
}

.anima-u--minimal .anima-u__workspace {
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 12px;
  padding: 0 12px 72px;
}

.anima-u--minimal .anima-u__side-card,
.anima-u--minimal .anima-u__panel-card,
.anima-u--minimal .anima-u__reader-hero,
.anima-u--minimal .anima-u__plates-head,
.anima-u--minimal .anima-u__plate-banner,
.anima-u--minimal .anima-u__book-nav,
.anima-u--minimal .anima-u__article-content {
  padding: 14px;
  border-radius: 18px;
}

.anima-u--minimal .anima-u__menu-btn,
.anima-u--minimal .anima-u__path-large,
.anima-u--minimal .anima-u__path-item {
  padding: 10px 12px;
  border-radius: 14px;
}

.anima-u--minimal .anima-u__hero {
  padding: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.anima-u--minimal .anima-u__hero-copy h1 {
  font-size: clamp(30px, 3.4vw, 44px);
}

.anima-u--minimal .anima-u__hero-book {
  max-width: 250px;
}

.anima-u--minimal .anima-u__book-3d {
  width: 92px;
  height: 118px;
}

.anima-u--minimal .anima-u__stats-grid strong,
.anima-u--minimal .anima-u__mini-stats strong {
  font-size: 22px;
}

.anima-u--minimal .anima-u__lesson-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.anima-u--minimal .anima-u__lesson-image,
.anima-u--minimal .anima-u__featured-image {
  min-height: 110px;
}

.anima-u--minimal .anima-u__lesson-body,
.anima-u--minimal .anima-u__featured-body {
  padding: 12px;
}

.anima-u--minimal .anima-u__lesson-body h3,
.anima-u--minimal .anima-u__featured-body h3,
.anima-u--minimal .anima-u__plate h4 {
  font-size: 18px;
}

.anima-u__quick-rail {
  position: sticky;
  bottom: 0;
  z-index: 25;
  display: grid;
  grid-template-columns: auto auto minmax(160px, 1fr) auto auto auto auto auto auto;
  gap: 6px;
  align-items: center;
  padding: 8px 10px;
  margin: 0 12px 10px;
  border-radius: 18px;
  background: rgba(12, 14, 30, 0.88);
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(14px);
  box-shadow: 0 14px 44px rgba(0,0,0,.34);
}

.anima-u__quick-rail button {
  appearance: none;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.07);
  color: var(--au-text);
  width: 36px;
  height: 34px;
  border-radius: 999px;
  cursor: pointer;
  display: grid;
  place-items: center;
}

.anima-u__quick-rail button:hover {
  border-color: rgba(255,216,106,0.55);
  transform: translateY(-1px);
}

.anima-u__quick-rail button.is-wide {
  width: auto;
  justify-content: start;
  grid-template-columns: auto 1fr;
  padding: 0 12px;
  gap: 8px;
  overflow: hidden;
}

.anima-u__quick-rail button.is-wide span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 12px;
}

.anima-u__quick-rail small {
  grid-column: 1 / -1;
  color: var(--au-muted);
  font-size: 11px;
  padding-left: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.anima-u--sidebar-collapsed .anima-u__workspace {
  grid-template-columns: minmax(0, 1fr);
}

.anima-u--sidebar-collapsed .anima-u__sidebar {
  display: none;
}

.anima-u--sidebar-collapsed .anima-u__main {
  padding-left: 0;
}

.anima-u__main {
  scrollbar-gutter: stable both-edges;
  overflow-y: scroll !important;
}

.anima-u__toc-scroll,
.anima-u__toc-preview,
.anima-u__toc-mini,
.anima-u__sidebar {
  scrollbar-gutter: stable;
}

.anima-u--minimal .anima-u__tilt:not(.anima-u__book-3d):not(.anima-u__brand-crystal) {
  transform: none !important;
}

.anima-u--minimal .anima-u__article-content,
.anima-u--minimal .anima-u__book-page,
.anima-u--minimal .anima-u__toc-view {
  transform: none !important;
}

.anima-u--minimal .anima-u__article-content {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.anima-u--minimal .anima-u__plate-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.anima-u--minimal .anima-u__preview-card {
  padding: 12px;
}

.anima-u--minimal .anima-u__toc-header-card {
  position: sticky;
  top: 0;
  z-index: 8;
}

.anima-u--minimal .anima-u__toc-scroll {
  min-height: 460px;
  max-height: calc(100vh - 250px);
  overflow-y: scroll !important;
  padding-right: 8px;
}

.anima-u--minimal .anima-u__toc-groups {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.anima-u--minimal .anima-u__toc-card {
  padding: 8px;
}

.anima-u--minimal .anima-u__toc-card p {
  display: none;
}

.anima-u--minimal .anima-u__search-row input {
  padding: 11px 13px;
}

.anima-u--minimal .anima-u__primary,
.anima-u--minimal .anima-u__ghost {
  padding: 9px 11px;
}

.anima-u--minimal .anima-u__side-card--audio details[open] {
  max-height: 230px;
  overflow-y: auto;
}

@media (max-width: 980px) {
  .anima-u--minimal .anima-u__workspace {
    grid-template-columns: 1fr;
  }
  .anima-u--minimal .anima-u__sidebar {
    display: none;
  }
  .anima-u__quick-rail {
    grid-template-columns: repeat(8, auto);
  }
  .anima-u__quick-rail button.is-wide {
    grid-column: 1 / -1;
    order: -1;
  }
}

@media (max-width: 680px) {
  .anima-u__quick-rail {
    grid-template-columns: repeat(6, auto);
    margin: 0 8px 8px;
  }
  .anima-u__quick-rail small {
    display: none;
  }
  .anima-u--minimal .anima-u__hero {
    grid-template-columns: 1fr;
  }
  .anima-u--minimal .anima-u__hero-book {
    display: none;
  }
}

/* v1.16.1 — scroll stabilization + book-like ToC shelves */
.anima-u {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  position: relative;
}

.anima-u__topbar {
  flex: 0 0 auto;
}

.anima-u__workspace,
.anima-u--minimal .anima-u__workspace {
  flex: 1 1 auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding-bottom: 74px !important;
}

.anima-u__main,
.anima-u__sidebar {
  height: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scrollbar-gutter: stable both-edges;
}

.anima-u__quick-rail {
  position: absolute !important;
  left: 12px;
  right: 12px;
  bottom: 8px;
  margin: 0 !important;
}

.anima-u__toc-view--book,
.anima-u--minimal .anima-u__toc-view--book {
  height: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 12px;
  overflow: hidden !important;
  transform: none !important;
}

.anima-u__toc-view--book .anima-u__toc-header-card {
  position: relative !important;
  top: auto !important;
  margin-bottom: 0 !important;
  padding: 16px !important;
}

.anima-u__toc-headline {
  align-items: center;
  margin-bottom: 0;
}

.anima-u__toc-headline h2 {
  font-size: clamp(22px, 2.2vw, 34px);
  margin-bottom: 6px;
}

.anima-u__toc-search {
  min-width: min(420px, 100%);
}

.anima-u__toc-letter-rail {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 2px 4px 10px;
  scrollbar-gutter: stable;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.anima-u__toc-letter-rail button {
  appearance: none;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--au-text);
  border-radius: 14px;
  min-width: 58px;
  padding: 8px 10px;
  cursor: pointer;
  display: grid;
  gap: 2px;
  text-align: center;
}

.anima-u__toc-letter-rail button b {
  font-size: 18px;
  color: #fff7d6;
}

.anima-u__toc-letter-rail button span {
  font-size: 11px;
  color: var(--au-muted);
}

.anima-u__toc-letter-rail button.is-active {
  background: linear-gradient(135deg, rgba(255,216,106,.95), rgba(255,190,97,.86));
  border-color: rgba(255,216,106,.65);
  color: #2a210b;
  box-shadow: 0 12px 30px rgba(255, 207, 94, .18);
}

.anima-u__toc-letter-rail button.is-active b,
.anima-u__toc-letter-rail button.is-active span {
  color: #2a210b;
}

.anima-u__toc-book-spread {
  min-height: 0;
  height: 100%;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 14px;
}

.anima-u__toc-book-left,
.anima-u__toc-book-right {
  min-height: 0;
  overflow: hidden;
  border-radius: var(--au-radius);
  border: 1px solid rgba(255,255,255,.11);
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
}

.anima-u__toc-book-left {
  padding: 16px;
  display: grid;
  align-content: start;
  gap: 12px;
}

.anima-u__toc-book-left h3 {
  margin: 0;
  font-size: clamp(46px, 6vw, 86px);
  line-height: .85;
  color: var(--au-accent);
}

.anima-u__toc-book-left p {
  color: var(--au-muted);
  line-height: 1.48;
  margin: 0;
}

.anima-u__toc-turn-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  align-items: center;
}

.anima-u__toc-turn-row strong {
  text-align: center;
  color: var(--au-accent);
}

.anima-u__toc-turn-row:nth-of-type(2) {
  grid-template-columns: 1fr auto 1fr;
}

.anima-u__toc-book-right {
  padding: 12px;
}

.anima-u__toc-page-grid {
  height: 100%;
  min-height: 0;
  overflow-y: scroll;
  overflow-x: hidden;
  scrollbar-gutter: stable both-edges;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-content: start;
  gap: 10px;
  padding: 2px 8px 10px 2px;
}

.anima-u__toc-book-entry {
  appearance: none;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.055);
  color: var(--au-text);
  border-radius: 16px;
  min-height: 86px;
  padding: 12px;
  text-align: left;
  cursor: pointer;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 6px 10px;
  align-content: start;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.anima-u__toc-book-entry:hover {
  transform: translateY(-1px);
  border-color: rgba(255,216,106,.45);
  background: rgba(255,216,106,.08);
}

.anima-u__toc-book-entry span {
  width: 26px;
  height: 26px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: rgba(119,216,255,.16);
  color: #aee9ff;
  font-weight: 800;
  font-size: 12px;
}

.anima-u__toc-book-entry b {
  line-height: 1.18;
  font-size: 13px;
}

.anima-u__toc-book-entry small {
  grid-column: 2;
  color: var(--au-muted);
  line-height: 1.32;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.anima-u__toc-scroll,
.anima-u--minimal .anima-u__toc-scroll {
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
}

@media (max-width: 1100px) {
  .anima-u__toc-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .anima-u__workspace,
  .anima-u--minimal .anima-u__workspace {
    grid-template-columns: 1fr !important;
    height: auto !important;
    padding: 0 10px 82px !important;
  }

  .anima-u__sidebar {
    display: none;
  }

  .anima-u__toc-view--book,
  .anima-u--minimal .anima-u__toc-view--book {
    min-height: 0;
    grid-template-rows: auto auto minmax(0, 1fr);
  }

  .anima-u__toc-headline {
    display: grid;
  }

  .anima-u__toc-search {
    min-width: 0;
  }

  .anima-u__toc-book-spread {
    grid-template-columns: 1fr;
    overflow: hidden;
  }

  .anima-u__toc-book-left {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    align-items: center;
  }

  .anima-u__toc-book-left h3 {
    font-size: 46px;
  }

  .anima-u__toc-book-left p {
    font-size: 13px;
  }

  .anima-u__toc-turn-row {
    grid-column: 1 / -1;
  }

  .anima-u__toc-page-grid {
    grid-template-columns: 1fr;
    max-height: 52vh;
  }
}

/* v1.16.2 — permanent scroll lanes + compact book ToC + integrated University player */
.anima-university-overlay,
.anima-university-panel,
.anima-university-embed,
.anima-university-inline-shell {
  overflow: hidden !important;
}

.anima-university-panel .anima-u,
.anima-university-embed .anima-u,
.anima-u {
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.anima-u__workspace,
.anima-u--minimal .anima-u__workspace {
  height: calc(100% - 58px) !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding-bottom: 68px !important;
}

.anima-u__main,
.anima-u__sidebar,
.anima-u__view-scroll,
.anima-u__book-main,
.anima-u__plates-view,
.anima-u__index-view,
.anima-u__toc-view,
.anima-u__toc-book-right,
.anima-u__toc-page-column,
.anima-u__chip-cloud--scroll,
.anima-u__article-content,
.anima-u__toc-mini {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scrollbar-gutter: stable both-edges !important;
  min-height: 0 !important;
}

.anima-u__main,
.anima-u__sidebar {
  max-height: 100% !important;
}

.anima-u__main {
  padding-bottom: 120px !important;
}

.anima-u__sidebar {
  padding-bottom: 150px !important;
}

.anima-u__view-scroll,
.anima-u__toc-view,
.anima-u__index-view {
  height: 100% !important;
  max-height: 100% !important;
  padding-bottom: 110px !important;
}

.anima-u__article-content {
  max-height: calc(100vh - 260px) !important;
  padding-bottom: 90px !important;
}

.anima-u__index-columns {
  height: calc(100% - 140px) !important;
  min-height: 420px !important;
}

.anima-u__index-column {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  display: flex;
  flex-direction: column;
}

.anima-u__index-column .anima-u__chip-cloud--scroll {
  flex: 1 1 auto;
  max-height: none !important;
  align-content: start;
  padding-right: 8px;
}

.anima-u__mini-chip {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.anima-u__toc-view--book,
.anima-u--minimal .anima-u__toc-view--book {
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  height: 100% !important;
  max-height: 100% !important;
  padding-bottom: 90px !important;
}

.anima-u__toc-header-card {
  flex: 0 0 auto;
}

.anima-u__toc-letter-rail {
  flex: 0 0 auto;
  overflow-x: scroll !important;
  overflow-y: hidden !important;
  scrollbar-gutter: stable !important;
  padding-bottom: 10px !important;
}

.anima-u__toc-book-spread--minimal {
  grid-template-columns: minmax(150px, 220px) minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.anima-u__toc-book-left {
  padding: 12px !important;
  gap: 8px !important;
  overflow-y: scroll !important;
  scrollbar-gutter: stable;
}

.anima-u__toc-book-left h3 {
  font-size: clamp(42px, 5vw, 72px) !important;
}

.anima-u__toc-book-left p {
  font-size: 12px !important;
  line-height: 1.38 !important;
}

.anima-u__toc-book-right--spread {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  height: 100% !important;
  min-height: 0 !important;
  padding: 10px !important;
  overflow: hidden !important;
}

.anima-u__toc-page-column {
  min-height: 0 !important;
  height: 100% !important;
  padding: 8px !important;
  border-radius: 18px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
  display: grid;
  align-content: start;
  gap: 8px;
}

.anima-u__toc-page-column .anima-u__kicker {
  margin: 0 0 2px !important;
  font-size: 10px !important;
}

.anima-u__toc-book-entry {
  min-height: 0 !important;
  padding: 9px 10px !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  gap: 8px !important;
  border-radius: 13px !important;
}

.anima-u__toc-book-entry span {
  width: 22px !important;
  height: 22px !important;
  border-radius: 8px !important;
  font-size: 11px !important;
}

.anima-u__toc-book-entry b {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  font-size: 12px !important;
  line-height: 1.18 !important;
  word-break: break-word;
}

.anima-u__toc-book-entry small {
  display: none !important;
}

.anima-u__player-panel {
  border-color: rgba(119, 216, 255, .28) !important;
  background: linear-gradient(180deg, rgba(22,31,58,.92), rgba(12,16,34,.94)) !important;
}

.anima-u__player-head,
.anima-u__player-time,
.anima-u__player-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.anima-u__player-head strong {
  display: inline-flex;
  border-radius: 999px;
  padding: 5px 9px;
  color: #08223b;
  background: linear-gradient(135deg, #b5ecff, #ffe084);
  font-size: 11px;
  letter-spacing: .06em;
}

.anima-u__player-now {
  display: grid;
  gap: 3px;
  margin: 10px 0;
}

.anima-u__player-now b {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.18;
}

.anima-u__player-now span,
.anima-u__player-time {
  color: var(--au-muted);
  font-size: 12px;
}

.anima-u__player-ring {
  width: 132px;
  height: 132px;
  margin: 10px auto 12px;
  border-radius: 50%;
  position: relative;
  display: grid;
  place-items: center;
  background: radial-gradient(circle, rgba(119,216,255,.12), rgba(255,255,255,.04) 48%, rgba(119,216,255,.08) 49%, rgba(119,216,255,.04));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.anima-u__ring-play,
.anima-u__ring-btn {
  appearance: none;
  border: 1px solid rgba(255,255,255,.16);
  color: var(--au-text);
  cursor: pointer;
  display: grid;
  place-items: center;
}

.anima-u__ring-play {
  width: 50px;
  height: 58px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(93,161,255,.95), rgba(71,112,220,.95));
  box-shadow: 0 12px 30px rgba(63,118,230,.22);
}

.anima-u__ring-btn {
  width: 34px;
  height: 30px;
  border-radius: 10px;
  background: rgba(255,255,255,.06);
  position: absolute;
}

.anima-u__ring-btn:nth-child(1) { left: 10px; top: 51px; }
.anima-u__ring-btn:nth-child(3) { right: 10px; top: 51px; }
.anima-u__ring-btn:nth-child(4) { top: 10px; left: 49px; }
.anima-u__ring-btn:nth-child(5) { bottom: 10px; left: 49px; }

.anima-u__player-controls {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 6px;
}

.anima-u__player-progress {
  height: 9px;
  margin: 12px 0 6px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255,255,255,.11);
}

.anima-u__player-progress span,
.anima-u__quick-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #76dfff, #ffd96f, #ff75b7);
}

.anima-u__quick-rail--player {
  grid-template-columns: auto auto minmax(120px,1fr) auto auto auto auto auto auto auto !important;
}

.anima-u__quick-progress {
  display: inline-block;
  width: min(160px, 30vw);
  height: 5px;
  background: rgba(255,255,255,.12);
  border-radius: 999px;
  overflow: hidden;
  margin-right: 8px;
  vertical-align: middle;
}

.anima-u__book-mini-status strong,
.anima-u__book-mini-status span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.anima-u__book-mini-status strong { -webkit-line-clamp: 2; }
.anima-u__book-mini-status span { -webkit-line-clamp: 2; }

@media (max-width: 1100px) {
  .anima-u__toc-book-spread--minimal {
    grid-template-columns: 1fr !important;
  }
  .anima-u__toc-book-left {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
  }
  .anima-u__toc-book-left .anima-u__toc-turn-row {
    grid-column: 1 / -1;
  }
}

@media (max-width: 780px) {
  .anima-university-overlay { padding: 4px !important; }
  .anima-university-panel { height: calc(100vh - 8px) !important; border-radius: 16px !important; }
  .anima-u__workspace,
  .anima-u--minimal .anima-u__workspace {
    height: calc(100% - 52px) !important;
    padding: 0 8px 72px !important;
  }
  .anima-u__main { padding-bottom: 112px !important; }
  .anima-u__sidebar { display: none !important; }
  .anima-u__toc-header-card .anima-u__panel-head,
  .anima-u__panel-head { display: grid !important; }
  .anima-u__toc-search { min-width: 0 !important; width: 100% !important; }
  .anima-u__toc-book-right--spread {
    grid-template-columns: 1fr !important;
  }
  .anima-u__toc-page-column--right {
    display: none !important;
  }
  .anima-u__toc-page-column {
    max-height: 45vh !important;
  }
  .anima-u__index-columns {
    grid-template-columns: 1fr !important;
    height: auto !important;
  }
  .anima-u__index-column {
    min-height: 300px !important;
    max-height: 46vh !important;
  }
  .anima-u__article-content {
    max-height: 58vh !important;
  }
  .anima-u__quick-rail--player {
    grid-template-columns: repeat(6, auto) !important;
  }
  .anima-u__quick-rail button.is-wide {
    grid-column: 1 / -1;
  }
}

@supports (scrollbar-width: thin) {
  .anima-u__main,
  .anima-u__sidebar,
  .anima-u__view-scroll,
  .anima-u__toc-book-right,
  .anima-u__toc-page-column,
  .anima-u__chip-cloud--scroll,
  .anima-u__article-content,
  .anima-u__toc-letter-rail {
    scrollbar-width: thin;
    scrollbar-color: rgba(255,216,106,.55) rgba(255,255,255,.08);
  }
}

/* v1.16.3 — Top Audio Dock, permanent scrollbars, and horizontal flipbook plates */
.anima-u {
  height: 100% !important;
  min-height: 0 !important;
}

.anima-u__workspace,
.anima-u--minimal .anima-u__workspace {
  flex: 1 1 auto;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

.anima-u__top-player {
  position: sticky;
  top: 72px;
  z-index: 18;
  margin: 10px 18px 14px;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(420px, 2fr);
  gap: 12px 16px;
  align-items: center;
  background: linear-gradient(180deg, rgba(16, 18, 36, 0.95), rgba(22, 18, 48, 0.92));
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  box-shadow: 0 18px 38px rgba(0,0,0,0.28);
  backdrop-filter: blur(14px);
}

.anima-u__top-player-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.anima-u__top-player-copy strong,
.anima-u__top-player-copy span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.anima-u__top-player-copy strong {
  font-size: 17px;
}

.anima-u__top-player-copy span,
.anima-u__top-player-meta small {
  color: var(--au-muted);
}

.anima-u__top-player-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.anima-u__top-player-controls .anima-u__ghost,
.anima-u__top-player-controls .anima-u__primary {
  padding: 10px 14px;
}

.anima-u__top-player-meter {
  grid-column: 1 / -1;
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.07);
  overflow: hidden;
}

.anima-u__top-player-meter span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ffb85f, #ffd96c, #7ce0ff);
}

.anima-u__top-player-meta {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: 12px;
}

.anima-u__main,
.anima-u__sidebar,
.anima-u__view-scroll,
.anima-u__book-main,
.anima-u__toc-scroll,
.anima-u__toc-right,
.anima-u__toc-book-list,
.anima-u__plate-carousel,
.anima-u__plate-shelf {
  scrollbar-width: thin;
  scrollbar-color: rgba(255,216,106,0.75) rgba(255,255,255,0.08);
}

.anima-u__main,
.anima-u__sidebar,
.anima-u__view-scroll,
.anima-u__book-main,
.anima-u__toc-scroll,
.anima-u__toc-right,
.anima-u__toc-book-list {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
}

.anima-u__main::-webkit-scrollbar,
.anima-u__sidebar::-webkit-scrollbar,
.anima-u__view-scroll::-webkit-scrollbar,
.anima-u__book-main::-webkit-scrollbar,
.anima-u__toc-scroll::-webkit-scrollbar,
.anima-u__toc-right::-webkit-scrollbar,
.anima-u__toc-book-list::-webkit-scrollbar,
.anima-u__plate-carousel::-webkit-scrollbar,
.anima-u__plate-shelf::-webkit-scrollbar {
  width: 14px;
  height: 14px;
}

.anima-u__main::-webkit-scrollbar-track,
.anima-u__sidebar::-webkit-scrollbar-track,
.anima-u__view-scroll::-webkit-scrollbar-track,
.anima-u__book-main::-webkit-scrollbar-track,
.anima-u__toc-scroll::-webkit-scrollbar-track,
.anima-u__toc-right::-webkit-scrollbar-track,
.anima-u__toc-book-list::-webkit-scrollbar-track,
.anima-u__plate-carousel::-webkit-scrollbar-track,
.anima-u__plate-shelf::-webkit-scrollbar-track {
  background: rgba(255,255,255,0.06);
  border-radius: 999px;
}

.anima-u__main::-webkit-scrollbar-thumb,
.anima-u__sidebar::-webkit-scrollbar-thumb,
.anima-u__view-scroll::-webkit-scrollbar-thumb,
.anima-u__book-main::-webkit-scrollbar-thumb,
.anima-u__toc-scroll::-webkit-scrollbar-thumb,
.anima-u__toc-right::-webkit-scrollbar-thumb,
.anima-u__toc-book-list::-webkit-scrollbar-thumb,
.anima-u__plate-carousel::-webkit-scrollbar-thumb,
.anima-u__plate-shelf::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255,216,106,0.96), rgba(167,125,255,0.96));
  border-radius: 999px;
  border: 3px solid rgba(10,12,24,0.28);
}

.anima-u__preview-card--book,
.anima-u__plate-book,
.anima-u__plate--shelf {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(31, 29, 60, 0.92), rgba(16, 17, 36, 0.96));
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 18px 34px rgba(0,0,0,0.26);
}

.anima-u__preview-card--book::before,
.anima-u__plate-book::before,
.anima-u__plate--shelf::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 14px;
  background: linear-gradient(180deg, rgba(255,216,106,0.85), rgba(167,125,255,0.92));
  opacity: 0.92;
}

.anima-u__plate-carousel {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(220px, 260px);
  gap: 14px;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 6px 2px 12px;
  margin-bottom: 18px;
}

.anima-u__plate-book-stage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 20px;
  perspective: 1600px;
}

.anima-u__plate-book {
  min-height: 300px;
  border-radius: 22px;
  padding: 0;
  cursor: pointer;
  transform-style: preserve-3d;
}

.anima-u__plate-book-cover {
  padding: 22px 22px 20px 30px;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.anima-u__plate-book-spine {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 22px;
  background: linear-gradient(180deg, rgba(255,216,106,0.98), rgba(116,86,196,0.96));
  box-shadow: inset -4px 0 10px rgba(0,0,0,0.22);
}

.anima-u__plate-book h4 {
  margin: 0;
  font-size: 28px;
}

.anima-u__plate-book p {
  margin: 0;
  color: var(--au-muted);
  line-height: 1.58;
}

.anima-u__plate-book small {
  margin-top: auto;
  color: var(--au-accent);
  font-weight: 700;
}

.anima-u__plate-book.is-left {
  transform: rotateY(26deg) translateX(26px) scale(0.92);
  opacity: 0.72;
}

.anima-u__plate-book.is-right {
  transform: rotateY(-26deg) translateX(-26px) scale(0.92);
  opacity: 0.72;
}

.anima-u__plate-book.is-center {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 24px 48px rgba(0,0,0,0.34);
}

.anima-u__plate-shelf {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(220px, 260px);
  gap: 16px;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 6px 2px 12px;
}

.anima-u__plate--shelf {
  min-height: 230px;
  border-radius: 20px;
  padding: 18px 16px 18px 28px;
}

.anima-u__plate--shelf h4 {
  font-size: 18px;
}

.anima-u__book-main {
  padding-right: 8px;
}

.anima-u__book-page {
  max-width: 980px;
  margin: 0 auto 18px;
  box-shadow: 0 28px 56px rgba(0,0,0,0.24);
}

.anima-u__book-page::after {
  opacity: 0.75;
}

@media (max-width: 1200px) {
  .anima-u__top-player {
    grid-template-columns: 1fr;
    top: 66px;
  }

  .anima-u__top-player-controls {
    justify-content: flex-start;
  }

  .anima-u__plate-book-stage {
    grid-template-columns: 1fr;
  }

  .anima-u__plate-book.is-left,
  .anima-u__plate-book.is-right {
    display: none;
  }
}

@media (max-width: 780px) {
  .anima-u__top-player {
    margin: 8px 12px 10px;
    padding: 12px;
    top: 58px;
  }

  .anima-u__top-player-meta {
    flex-direction: column;
  }

  .anima-u__plate-carousel,
  .anima-u__plate-shelf {
    grid-auto-columns: minmax(200px, 82vw);
  }

  .anima-u__plate-book {
    min-height: 260px;
  }

  .anima-u__plate-book-cover {
    min-height: 260px;
    padding: 18px 18px 18px 28px;
  }

  .anima-u__plate-book h4 {
    font-size: 22px;
  }
}

/* v1.16.4 — Hard-shell scroll repair + simplified core Codex/Book/Plates layout */
html.anima-university-open,
body.anima-university-open {
  overflow: hidden !important;
}

.anima-university-overlay {
  position: fixed !important;
  inset: 0 !important;
  padding: 10px !important;
  overflow: hidden !important;
}

.anima-university-panel {
  height: calc(100dvh - 20px) !important;
  max-height: calc(100dvh - 20px) !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.admin-bar .anima-university-panel {
  height: calc(100dvh - 52px) !important;
  max-height: calc(100dvh - 52px) !important;
}

.anima-university-shell,
.anima-university-inline-shell,
.anima-u {
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.anima-u,
.anima-u--minimal {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

.anima-u__topbar {
  position: relative !important;
  top: auto !important;
  min-height: 48px !important;
  padding: 8px 12px !important;
  flex: 0 0 auto !important;
  z-index: 30 !important;
}

.anima-u__brand-crystal {
  width: 32px !important;
  height: 32px !important;
  border-radius: 12px !important;
}

.anima-u__brand strong {
  font-size: 17px !important;
}

.anima-u__brand small {
  font-size: 9px !important;
  margin-bottom: 1px !important;
}

.anima-u__tabs {
  gap: 5px !important;
}

.anima-u__tab {
  width: 34px !important;
  height: 32px !important;
  min-width: 34px !important;
  min-height: 32px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  font-size: 13px !important;
}

.anima-u__top-player {
  position: relative !important;
  top: auto !important;
  z-index: 25 !important;
  margin: 6px 10px 8px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  grid-template-columns: minmax(180px, 0.9fr) minmax(360px, 1.4fr) !important;
  gap: 8px 12px !important;
  flex: 0 0 auto !important;
}

.anima-u__top-player-copy .anima-u__kicker {
  font-size: 9px !important;
  margin-bottom: 1px !important;
}

.anima-u__top-player-copy strong {
  font-size: 14px !important;
}

.anima-u__top-player-copy span,
.anima-u__top-player-meta small {
  font-size: 11px !important;
}

.anima-u__top-player-controls {
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  justify-content: flex-end !important;
  scrollbar-width: thin !important;
}

.anima-u__top-player-controls .anima-u__ghost,
.anima-u__top-player-controls .anima-u__primary {
  white-space: nowrap !important;
  padding: 7px 10px !important;
  font-size: 12px !important;
}

.anima-u__top-player-meter {
  height: 7px !important;
}

.anima-u__top-player-meta {
  display: flex !important;
  gap: 10px !important;
}

.anima-u__workspace,
.anima-u--minimal .anima-u__workspace {
  display: grid !important;
  grid-template-columns: 230px minmax(0, 1fr) !important;
  gap: 10px !important;
  padding: 0 10px 10px !important;
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.anima-u__main,
.anima-u__sidebar {
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  padding-right: 6px !important;
  scrollbar-gutter: stable both-edges !important;
}

.anima-u__main {
  padding-bottom: 22px !important;
}

.anima-u__sidebar {
  display: grid !important;
  align-content: start !important;
  gap: 10px !important;
}

.anima-u__quick-rail,
.anima-u__reader-dock {
  display: none !important;
}

.anima-u__side-card,
.anima-u__panel-card,
.anima-u__reader-hero,
.anima-u__reader-settings,
.anima-u__plates-head,
.anima-u__plate-banner,
.anima-u__book-page,
.anima-u__article-content,
.anima-u__book-nav,
.anima-u__plate-book,
.anima-u__plate--shelf {
  transform: none !important;
}

.anima-u__tilt::before {
  opacity: 0.5 !important;
}

.anima-u__side-card,
.anima-u__panel-card,
.anima-u__reader-hero,
.anima-u__reader-settings,
.anima-u__plates-head,
.anima-u__plate-banner,
.anima-u__book-nav,
.anima-u__article-content {
  padding: 12px !important;
  margin-bottom: 10px !important;
  border-radius: 16px !important;
}

.anima-u__menu-btn {
  padding: 9px 10px !important;
  min-height: 38px !important;
  border-radius: 13px !important;
  font-size: 12px !important;
}

.anima-u__menu-btn span {
  font-size: 10px !important;
}

.anima-u__book-layout,
.anima-u--minimal .anima-u__book-layout {
  display: grid !important;
  grid-template-columns: minmax(150px, 210px) minmax(0, 1fr) !important;
  gap: 10px !important;
  min-height: 0 !important;
}

.anima-u__book-nav {
  max-height: 70vh !important;
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  position: sticky !important;
  top: 0 !important;
}

.anima-u__book-main {
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

.anima-u__reader-hero {
  grid-template-columns: minmax(130px, 230px) minmax(0, 1fr) !important;
  gap: 12px !important;
}

.anima-u__reader-image {
  min-height: 120px !important;
}

.anima-u__reader-copy h2,
.anima-u__plates-head h2,
.anima-u__panel-card h2 {
  font-size: clamp(22px, 2.4vw, 34px) !important;
  line-height: 1.05 !important;
}

.anima-u__reader-copy p,
.anima-u__plates-head p,
.anima-u__plate-banner p,
.anima-u__panel-card p {
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.anima-u__book-page {
  min-height: auto !important;
  max-width: 860px !important;
  margin: 0 auto 12px !important;
  padding: 24px !important;
}

.anima-u__book-page .anima-u__page-body h1 {
  font-size: clamp(30px, 3.5vw, 52px) !important;
}

.anima-u__book-page .anima-u__page-body p {
  font-size: calc(15px * var(--au-font-scale, 1)) !important;
  line-height: 1.62 !important;
}

.anima-u__preview-grid--plates,
.anima-u__plate-carousel,
.anima-u__plate-shelf {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: minmax(190px, 250px) !important;
  gap: 10px !important;
  overflow-x: scroll !important;
  overflow-y: hidden !important;
  padding-bottom: 12px !important;
  margin-bottom: 10px !important;
}

.anima-u__plate-book-stage {
  grid-template-columns: minmax(0, 0.8fr) minmax(260px, 420px) minmax(0, 0.8fr) !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}

.anima-u__plate-book {
  min-height: 260px !important;
  border-radius: 18px !important;
}

.anima-u__plate-book-cover {
  min-height: 260px !important;
  padding: 18px 18px 18px 30px !important;
}

.anima-u__plate-book h4 {
  font-size: clamp(20px, 2.1vw, 28px) !important;
}

.anima-u__plate-book p,
.anima-u__plate--shelf p {
  font-size: 13px !important;
  line-height: 1.42 !important;
}

.anima-u__plate--shelf {
  min-height: 190px !important;
  padding: 14px 14px 14px 26px !important;
}

.anima-u__toc-view,
.anima-u__toc-book-list,
.anima-u__toc-book-spread,
.anima-u__index-view,
.anima-u__chip-cloud,
.anima-u__toc-scroll {
  max-height: none !important;
}

.anima-u__toc-book-list,
.anima-u__toc-scroll {
  overflow-y: scroll !important;
  min-height: 360px !important;
}

.anima-u__toc-letter-rail {
  overflow-x: scroll !important;
  overflow-y: hidden !important;
}

.anima-u__chip-cloud {
  overflow-y: visible !important;
}

.anima-u__main::-webkit-scrollbar,
.anima-u__sidebar::-webkit-scrollbar,
.anima-u__book-nav::-webkit-scrollbar,
.anima-u__toc-scroll::-webkit-scrollbar,
.anima-u__toc-book-list::-webkit-scrollbar,
.anima-u__toc-letter-rail::-webkit-scrollbar,
.anima-u__preview-grid--plates::-webkit-scrollbar,
.anima-u__plate-carousel::-webkit-scrollbar,
.anima-u__plate-shelf::-webkit-scrollbar,
.anima-u__top-player-controls::-webkit-scrollbar {
  width: 14px !important;
  height: 14px !important;
}

.anima-u__main::-webkit-scrollbar-thumb,
.anima-u__sidebar::-webkit-scrollbar-thumb,
.anima-u__book-nav::-webkit-scrollbar-thumb,
.anima-u__toc-scroll::-webkit-scrollbar-thumb,
.anima-u__toc-book-list::-webkit-scrollbar-thumb,
.anima-u__toc-letter-rail::-webkit-scrollbar-thumb,
.anima-u__preview-grid--plates::-webkit-scrollbar-thumb,
.anima-u__plate-carousel::-webkit-scrollbar-thumb,
.anima-u__plate-shelf::-webkit-scrollbar-thumb,
.anima-u__top-player-controls::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255,216,106,0.98), rgba(150,111,255,0.98)) !important;
  border-radius: 999px !important;
  border: 3px solid rgba(10,12,24,0.35) !important;
}

@media (max-width: 980px) {
  .anima-university-overlay {
    padding: 4px !important;
  }

  .anima-university-panel,
  .admin-bar .anima-university-panel {
    height: calc(100dvh - 8px) !important;
    max-height: calc(100dvh - 8px) !important;
    border-radius: 16px !important;
  }

  .anima-u {
    grid-template-rows: auto auto minmax(0, 1fr) !important;
  }

  .anima-u__topbar {
    min-height: 44px !important;
  }

  .anima-u__brand strong {
    font-size: 15px !important;
  }

  .anima-u__top-player {
    grid-template-columns: 1fr !important;
    margin: 5px 6px 7px !important;
  }

  .anima-u__top-player-controls {
    justify-content: flex-start !important;
  }

  .anima-u__workspace,
  .anima-u--minimal .anima-u__workspace {
    grid-template-columns: 1fr !important;
    padding: 0 6px 6px !important;
  }

  .anima-u__sidebar {
    display: none !important;
  }

  .anima-u__book-layout,
  .anima-u--minimal .anima-u__book-layout,
  .anima-u__reader-hero {
    grid-template-columns: 1fr !important;
  }

  .anima-u__book-nav {
    position: relative !important;
    max-height: 190px !important;
  }

  .anima-u__plate-book-stage {
    grid-template-columns: 1fr !important;
  }

  .anima-u__plate-book.is-left,
  .anima-u__plate-book.is-right {
    display: none !important;
  }

  .anima-u__preview-grid--plates,
  .anima-u__plate-carousel,
  .anima-u__plate-shelf {
    grid-auto-columns: minmax(210px, 82vw) !important;
  }
}

/* v1.17.0 — seven-cycle rebuild: lighter Codex, no audio scroll capture, restored side deck, simplified 3D book */
:root {
  --au-bg: #17223e;
  --au-bg-2: #20325a;
  --au-card: rgba(35, 42, 75, 0.82);
  --au-card-2: rgba(61, 70, 110, 0.72);
  --au-stroke: rgba(255, 255, 255, 0.16);
  --au-text: #fbf8ff;
  --au-muted: #d9d7ee;
  --au-accent: #ffe082;
  --au-accent-2: #b89bff;
  --au-accent-3: #8edfff;
}

.anima-university-panel,
.anima-u {
  background:
    radial-gradient(circle at 12% 2%, rgba(255, 226, 146, .20), transparent 30%),
    radial-gradient(circle at 90% 0%, rgba(136, 216, 255, .16), transparent 30%),
    linear-gradient(160deg, #192342 0%, #263a63 45%, #15213c 100%) !important;
}

.anima-u {
  background-image:
    linear-gradient(rgba(255,255,255,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px),
    radial-gradient(circle at 12% 4%, rgba(255, 226, 146, .18), transparent 30%),
    radial-gradient(circle at 94% 3%, rgba(142, 223, 255, .14), transparent 30%),
    linear-gradient(160deg, #192342, #273c66 48%, #16233e) !important;
  background-size: 38px 38px, 38px 38px, auto, auto, auto !important;
}

.anima-u__workspace,
.anima-u--minimal .anima-u__workspace {
  grid-template-columns: 292px minmax(0, 1fr) !important;
  gap: 14px !important;
  padding: 0 14px 14px !important;
}

.anima-u__sidebar--restored {
  gap: 14px !important;
  padding-right: 8px !important;
}

.anima-u__side-card,
.anima-u__panel-card,
.anima-u__reader-hero,
.anima-u__reader-settings,
.anima-u__plates-head,
.anima-u__plate-banner,
.anima-u__book-nav,
.anima-u__article-content,
.anima-u__top-player {
  background: linear-gradient(180deg, rgba(36, 43, 79, .88), rgba(22, 30, 58, .92)) !important;
  border-color: rgba(255,255,255,.18) !important;
  box-shadow: 0 16px 36px rgba(4, 8, 26, .28) !important;
}

.anima-u__side-card--command,
.anima-u__side-card--booknav,
.anima-u__side-card--totals {
  padding: 14px !important;
}

.anima-u__menu-btn {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 11px 12px !important;
  min-height: 44px !important;
  font-size: 13px !important;
}

.anima-u__menu-btn b {
  min-width: 0 !important;
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.anima-u__menu-btn span {
  font-size: 11px !important;
  opacity: .9 !important;
}

.anima-u__top-player--codex {
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(41, 48, 88, .95), rgba(31, 42, 76, .95)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}

.anima-u__top-player--codex .anima-u__primary {
  box-shadow: 0 8px 22px rgba(255, 211, 100, .20) !important;
}

.anima-u__top-player-meter {
  background: rgba(255,255,255,.10) !important;
}

.anima-u__top-player-meter span {
  transition: width .18s linear !important;
}

.anima-u__main,
.anima-u__sidebar,
.anima-u__book-nav,
.anima-u__toc-scroll,
.anima-u__toc-book-list,
.anima-u__toc-letter-rail,
.anima-u__preview-grid--plates,
.anima-u__plate-carousel,
.anima-u__plate-shelf {
  scrollbar-color: rgba(255,224,130,.95) rgba(255,255,255,.10) !important;
}

.anima-u__main::-webkit-scrollbar-thumb,
.anima-u__sidebar::-webkit-scrollbar-thumb,
.anima-u__book-nav::-webkit-scrollbar-thumb,
.anima-u__toc-scroll::-webkit-scrollbar-thumb,
.anima-u__toc-book-list::-webkit-scrollbar-thumb,
.anima-u__toc-letter-rail::-webkit-scrollbar-thumb,
.anima-u__preview-grid--plates::-webkit-scrollbar-thumb,
.anima-u__plate-carousel::-webkit-scrollbar-thumb,
.anima-u__plate-shelf::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255,224,130,.98), rgba(142,223,255,.96)) !important;
}

.anima-u__book-spread-3d {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  max-width: 1180px;
  margin: 0 auto 18px;
  perspective: 1800px;
  filter: drop-shadow(0 28px 54px rgba(4,8,22,.34));
}

.anima-u__book-spread-3d .anima-u__book-page {
  margin: 0 !important;
  min-height: 520px !important;
  max-width: none !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #fff7e7, #f7ead2) !important;
  color: #221a12 !important;
  border: 1px solid rgba(74, 52, 22, .14) !important;
  overflow: hidden !important;
}

.anima-u__book-spread-3d .anima-u__book-page--left {
  transform: rotateY(4deg);
  transform-origin: right center;
  border-top-right-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
}

.anima-u__book-spread-3d .anima-u__book-page--right {
  transform: rotateY(-4deg);
  transform-origin: left center;
  border-top-left-radius: 6px !important;
  border-bottom-left-radius: 6px !important;
  background: linear-gradient(180deg, #fff9ed, #f4e4c6) !important;
}

.anima-u__book-spread-3d .anima-u__book-page--right::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 26px;
  background: linear-gradient(90deg, rgba(60,39,20,.22), transparent);
}

.anima-u__book-spread-3d .anima-u__book-page--left::after {
  content: '';
  position: absolute;
  inset: 0 0 0 auto;
  width: 26px;
  background: linear-gradient(270deg, rgba(60,39,20,.18), transparent);
}

.anima-u__book-spread-3d .anima-u__page-body {
  max-height: 390px;
  overflow-y: auto;
  padding-right: 8px;
}

.anima-u__book-spread-3d .anima-u__page-body h1 {
  color: #1f1a15 !important;
  font-size: clamp(32px, 3.5vw, 54px) !important;
}

.anima-u__book-spread-3d .anima-u__page-body p,
.anima-u__book-spread-3d .anima-u__page-header,
.anima-u__book-spread-3d .anima-u__page-footer {
  color: #2d251e !important;
}

.anima-u__plate-book-stage {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.anima-u__plate-book {
  background: linear-gradient(160deg, rgba(63, 72, 118, .95), rgba(31, 42, 76, .98)) !important;
  border-color: rgba(255,255,255,.20) !important;
}

.anima-u__plate-book.is-center {
  transform: translateY(-6px) scale(1.02) rotateX(2deg) !important;
}

.anima-u__plate-book.is-left {
  transform: rotateY(24deg) translateX(20px) scale(.93) !important;
}

.anima-u__plate-book.is-right {
  transform: rotateY(-24deg) translateX(-20px) scale(.93) !important;
}

.anima-u--minimal .anima-u__tilt:not(.anima-u__book-3d):not(.anima-u__brand-crystal):not(.anima-u__plate-book) {
  transform: none !important;
}

.anima-u__player-panel,
.anima-u__side-card--audio {
  display: none !important;
}

@media (max-width: 1120px) {
  .anima-u__workspace,
  .anima-u--minimal .anima-u__workspace {
    grid-template-columns: 1fr !important;
  }

  .anima-u__sidebar--restored {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    overflow-y: visible !important;
    max-height: none !important;
  }

  .anima-u__side-card--command {
    grid-column: 1 / -1;
  }

  .anima-u__side-card--command .anima-u__menu-btn {
    display: inline-grid !important;
    width: calc(50% - 6px) !important;
    margin: 3px !important;
  }

  .anima-u__book-spread-3d {
    grid-template-columns: 1fr;
  }

  .anima-u__book-spread-3d .anima-u__book-page--right {
    display: none !important;
  }

  .anima-u__book-spread-3d .anima-u__book-page--left {
    transform: none !important;
    border-radius: 22px !important;
  }
}

@media (max-width: 760px) {
  .anima-u__sidebar--restored {
    display: none !important;
  }

  .anima-u__top-player-controls {
    justify-content: flex-start !important;
  }

  .anima-u__top-player-copy strong {
    font-size: 13px !important;
  }

  .anima-u__book-spread-3d .anima-u__book-page {
    min-height: 420px !important;
    padding: 18px !important;
  }

  .anima-u__book-spread-3d .anima-u__page-body {
    max-height: 300px !important;
  }
}
