:root {
  --bg: #f5f1e8;
  --paper: #fffdf8;
  --paper-soft: #fbf8ef;
  --ink: #151515;
  --ink-soft: #313131;
  --muted: #767066;
  --muted-2: #9b9285;
  --border: #ded4c3;
  --border-soft: #eee5d8;
  --navy: #161b33;
  --navy-2: #222a51;
  --blue: #3447ff;
  --blue-soft: #e7eaff;
  --gold: #c9963a;
  --gold-soft: #fff3ce;
  --green: #15803d;
  --green-soft: #e8f7ee;
  --amber: #b7791f;
  --amber-soft: #fff4db;
  --purple: #6d28d9;
  --purple-soft: #f0e7ff;
  --red: #b91c1c;
  --red-soft: #fee8e8;
  --gray: #71717a;
  --gray-soft: #eeeeef;
  --highlight: #fff1a8;
  --shadow: 0 24px 70px rgba(45, 35, 20, 0.12);
  --shadow-soft: 0 10px 40px rgba(45, 35, 20, 0.08);
  --project-sidebar: 320px;
  --topbar: 96px;
  --reader-toolbar-top: var(--topbar);
  --radius-xl: 28px;
  --radius-lg: 20px;
  --radius-md: 14px;
  --radius-sm: 10px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body.theorytrace-body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% 0%, rgba(201, 150, 58, 0.16), transparent 32%),
    radial-gradient(circle at 88% 10%, rgba(52, 71, 255, 0.10), transparent 34%),
    linear-gradient(135deg, var(--bg), #faf7ef);
  color: var(--ink);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

button,
input,
textarea,
select {
  font: inherit;
}

.app-shell {
  display: grid;
  grid-template-columns: minmax(620px, 1fr) var(--project-sidebar);
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
}

.app-shell.app-shell-full {
  grid-template-columns: minmax(0, 1fr);
}

.main-area {
  min-width: 0;
  height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 20px 28px 56px;
  scrollbar-width: thin;
  scrollbar-color: rgba(118, 112, 102, 0.54) transparent;
}

@media (min-width: 901px) {
  .main-area {
    overflow-y: scroll;
    scrollbar-gutter: stable;
  }

  .main-area::-webkit-scrollbar {
    width: 11px;
    height: 11px;
  }

  .main-area::-webkit-scrollbar-track {
    background: transparent;
  }

  .main-area::-webkit-scrollbar-thumb {
    min-height: 48px;
    border: 3px solid transparent;
    border-radius: 999px;
    background: rgba(118, 112, 102, 0.48);
    background-clip: padding-box;
  }

  .main-area::-webkit-scrollbar-thumb:hover {
    background: rgba(22, 27, 51, 0.45);
    background-clip: padding-box;
  }
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: var(--topbar);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin: -20px -28px 24px;
  padding: 12px 28px;
  background: rgba(245, 241, 232, 0.78);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(222, 212, 195, 0.6);
}

.topbar-compact {
  min-height: 72px;
}

.main-area:has(> .topbar-reader),
.main-area:has(> .topbar-compact) {
  padding-top: 0;
}

.main-area:has(> .topbar-reader) > .topbar-reader,
.main-area:has(> .topbar-compact) > .topbar-compact {
  margin-top: 0;
}

.top-actions,
.tt-actions,
.tt-form-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.tt-hidden-status-form {
  display: none;
}

.btn,
.tt-btn {
  border: 0;
  border-radius: 11px;
  min-height: 42px;
  padding: 0 16px;
  cursor: pointer;
  font-weight: 700;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: inherit;
  transition: 180ms ease;
}

.btn:hover,
.tt-btn:hover {
  transform: translateY(-1px);
}

.btn.primary,
.tt-btn-primary {
  background: var(--navy);
  color: white;
  box-shadow: 0 14px 28px rgba(22, 27, 51, 0.18);
}

.btn.soft,
.tt-btn {
  background: var(--paper);
  color: var(--ink-soft);
  border: 1px solid var(--border);
}

.tt-btn-danger {
  color: var(--red);
  border-color: #efbcbc;
}

.tt-error-page-body {
  min-height: 100vh;
  background: radial-gradient(circle at top left, rgba(33, 78, 168, 0.08), transparent 34%),
    linear-gradient(180deg, #f8f9fd 0%, #eef2f8 100%);
}

.tt-error-page {
  min-height: calc(100vh - 88px);
  display: grid;
  place-items: center;
  padding: clamp(24px, 6vw, 56px);
}

.tt-error-panel {
  width: min(100%, 680px);
  border: 1px solid rgba(31, 42, 68, 0.12);
  border-radius: 18px;
  padding: clamp(24px, 5vw, 44px);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 60px rgba(31, 42, 68, 0.12);
}

.tt-error-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  margin-bottom: 22px;
  color: white;
  background: var(--navy);
  font-size: 22px;
  font-weight: 800;
}

.tt-error-kicker {
  margin: 0 0 8px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tt-error-panel h1 {
  margin: 0 0 14px;
  color: var(--ink);
  font-size: clamp(30px, 6vw, 48px);
  line-height: 1.02;
  letter-spacing: 0;
}

.tt-error-panel p {
  margin: 0 0 16px;
  color: var(--ink-soft);
  font-size: 16px;
  line-height: 1.68;
}

.tt-error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.tt-error-panel small {
  display: block;
  margin-top: 20px;
  color: var(--muted);
  line-height: 1.5;
}

.reader-frame {
  max-width: 940px;
  margin: 0 auto;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 0;
}

.breadcrumb strong {
  display: block;
  max-width: 34vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink-soft);
  font-weight: 700;
}

.tt-quiz-breadcrumb {
  flex-wrap: nowrap;
  overflow: hidden;
  width: 100%;
}

.tt-quiz-breadcrumb .tt-breadcrumb-crumb {
  display: block;
  min-width: 0;
  max-width: 14ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-quiz-breadcrumb .tt-breadcrumb-document {
  max-width: 18ch;
}

.tt-quiz-breadcrumb strong {
  flex: 0 0 auto;
  max-width: none;
}

.tt-math-title {
  line-height: 1.35;
}

.tt-math-title .katex {
  max-width: 100%;
  font-size: 1em;
  line-height: 1;
  vertical-align: -0.08em;
}

.tt-math-title .katex-html {
  white-space: nowrap;
}

.tt-math-title .katex-display {
  display: inline-block;
  margin: 0;
  text-align: inherit;
}

.breadcrumb strong.tt-math-title,
.project-title-text.tt-math-title,
.doc-name strong.tt-math-title {
  min-height: 1.35em;
}

.project-title-text.tt-math-title {
  display: inline-block;
  vertical-align: middle;
}

.project-tree .doc-name strong.tt-math-title,
.project-tree .project-title-text.tt-math-title {
  display: inline-flex;
  align-items: baseline;
  gap: 0.18em;
  width: max-content;
  min-width: max-content;
  max-width: none;
  white-space: nowrap;
}

.project-tree .doc-name strong.tt-math-title .katex,
.project-tree .project-title-text.tt-math-title .katex {
  flex: 0 0 auto;
  max-width: none;
  overflow: visible;
}

.reader-label-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.reader-label-main .breadcrumb {
  flex: 1 1 auto;
}

.reader-labels {
  width: min(940px, 100%);
  margin: 0;
  padding: 0;
  color: var(--ink-soft);
}

.reader-label-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}

.inline-add-project-form,
.inline-publish-project-form {
  display: inline-flex;
  margin: 0;
}

.reader-label-actions .btn {
  min-height: 34px;
  padding: 0 12px;
  font-size: 12px;
}

.publish-project-button {
  border-color: rgba(21, 128, 61, 0.28);
  color: var(--green);
}

.reader-label-toggle {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--paper);
  color: var(--muted);
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease, transform 140ms ease;
}

.reader-label-toggle:hover {
  background: var(--paper-soft);
  color: var(--navy);
}

.reader-label-toggle span {
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-135deg) translate(-1px, -1px);
  transition: transform 140ms ease;
}

.reader-labels.is-collapsed .reader-label-actions,
.reader-labels.is-collapsed .reader-document-meta,
.reader-labels.is-collapsed .reader-extra-crumb {
  display: none;
}

.reader-labels.is-collapsed .reader-label-main {
  align-items: center;
}

.reader-labels.is-collapsed .reader-label-toggle span {
  transform: rotate(45deg) translate(-1px, -1px);
}

.topbar.reader-labels-collapsed {
  min-height: 58px;
}

.reader-document-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.reader-document-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 7px;
  border: 1px solid rgba(222, 212, 195, 0.64);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.42);
}

.reader-collaboration {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: max-content;
}

.member-stack {
  display: inline-flex;
  align-items: center;
  padding-left: 8px;
}

.member-avatar {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  margin-left: -8px;
  overflow: hidden;
  border: 2px solid rgba(255, 253, 248, 0.94);
  border-radius: 999px;
  background: var(--navy);
  color: #ffffff;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(45, 35, 20, 0.10);
}

.member-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tt-header-menu {
  position: relative;
}

.tt-header-menu summary {
  list-style: none;
}

.tt-header-menu summary::-webkit-details-marker {
  display: none;
}

.header-icon-button {
  position: relative;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(118, 112, 102, 0.18);
  border-radius: 999px;
  background: transparent;
  color: var(--ink-soft);
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.header-icon-button:hover,
.tt-header-menu[open] .header-icon-button {
  border-color: rgba(22, 27, 51, 0.24);
  background: rgba(255, 253, 248, 0.76);
  color: var(--navy);
  box-shadow: 0 10px 26px rgba(45, 35, 20, 0.08);
}

.tt-invite-icon,
.tt-bell-icon {
  position: relative;
  display: block;
}

.tt-invite-icon {
  width: 19px;
  height: 19px;
}

.tt-invite-icon svg,
.tt-bell-icon svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tt-bell-icon {
  width: 19px;
  height: 19px;
}

.notification-count {
  position: absolute;
  right: -3px;
  top: -4px;
  min-width: 16px;
  height: 16px;
  display: grid;
  place-items: center;
  padding: 0 4px;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: var(--red);
  color: #ffffff;
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}

.header-menu-panel {
  position: absolute;
  top: calc(100% + 9px);
  right: 0;
  z-index: 80;
  width: min(330px, calc(100vw - 32px));
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--paper);
  box-shadow: var(--shadow-soft);
}

.header-menu-panel > strong {
  display: block;
  margin-bottom: 9px;
  color: var(--ink);
  font-size: 12px;
}

.invite-panel form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.invite-panel input {
  min-width: 0;
  height: 34px;
  border: 1px solid var(--border-soft);
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--ink);
  padding: 0 11px;
  outline: none;
  font-size: 13px;
}

.invite-panel input:focus {
  border-color: rgba(52, 71, 255, 0.34);
  box-shadow: 0 0 0 3px rgba(52, 71, 255, 0.10);
}

.invite-panel button,
.invitation-item button {
  min-height: 34px;
  border: 0;
  border-radius: 999px;
  background: var(--navy);
  color: #ffffff;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.invitation-item .invitation-reject-button {
  border: 1px solid rgba(118, 112, 102, 0.2);
  background: transparent;
  color: var(--muted);
}

.invitation-item .invitation-reject-button:hover,
.invitation-item .invitation-reject-button:focus-visible {
  border-color: rgba(165, 28, 48, 0.22);
  background: rgba(165, 28, 48, 0.08);
  color: var(--red);
}

.invitation-list {
  display: grid;
  gap: 7px;
}

.tt-invitation-list-page {
  max-width: 520px;
  margin-top: 16px;
}

.invitation-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 8px;
  border-radius: 10px;
  background: var(--paper-soft);
}

.invitation-item form {
  margin: 0;
}

.invitation-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.invitation-item span {
  min-width: 0;
}

.invitation-item b,
.invitation-item small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.invitation-item b {
  color: var(--ink);
  font-size: 12px;
}

.invitation-item small,
.notification-panel p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 11px;
}

.reader-paper {
  position: relative;
  padding: 42px 48px 56px;
  border-radius: var(--radius-xl);
  background: var(--paper);
  border: 1px solid rgba(222, 212, 195, 0.9);
  box-shadow: var(--shadow);
}

.tt-profile-paper {
  max-width: 1060px;
  margin: 0 auto;
}

.tt-version-paper {
  max-width: 1060px;
  margin: 0 auto;
}

.tt-version-head,
.tt-version-snapshot-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.tt-version-snapshot-head {
  display: block;
}

.tt-version-head h1,
.tt-version-snapshot-head h1 {
  margin: 0 0 8px;
  font-size: clamp(28px, 4vw, 44px);
  letter-spacing: 0;
}

.tt-version-head p,
.tt-version-snapshot-head p {
  margin: 0;
  color: var(--muted);
}

.tt-version-list {
  display: grid;
  gap: 10px;
}

.tt-version-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 13px 0;
  color: var(--ink);
  text-decoration: none;
  border-bottom: 1px solid rgba(222, 212, 195, 0.8);
}

.tt-version-row:hover,
.tt-version-row:focus-visible {
  color: var(--accent);
}

.tt-version-row-index {
  min-width: 44px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 850;
}

.tt-version-row-main {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.tt-version-row-main strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-version-row-main small {
  color: var(--muted);
  font-size: 12px;
}

.tt-version-article {
  padding-top: 8px;
}

.tt-version-head h1.tt-math-title,
.tt-version-snapshot-head h1.tt-math-title,
.tt-version-row-main strong.tt-math-title {
  min-height: 1.35em;
}

.tt-version-row-main strong.tt-math-title {
  display: inline-flex;
  align-items: baseline;
  gap: 0.18em;
  max-width: 100%;
}

.tt-version-row-main strong.tt-math-title .katex {
  flex: 0 0 auto;
}

.tt-profile-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
}

.tt-profile-head > div {
  min-width: 0;
}

.tt-profile-avatar {
  width: 54px;
  height: 54px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--navy);
  color: white;
  font-weight: 800;
}

.tt-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tt-profile-head h1 {
  margin: 0;
  font-size: 24px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.tt-profile-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
}

.tt-profile-head-copy {
  display: grid;
  gap: 5px;
}

.tt-profile-role-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.tt-profile-role-strip span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  padding: 0 9px;
  font-size: 11px;
  font-weight: 850;
}

.tt-profile-role-strip span.admin {
  background: var(--gold-soft);
  color: #6d4b00;
}

.tt-profile-head-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 3px;
}

.tt-profile-head-actions .tt-profile-zone-primary {
  min-height: 30px;
  border-radius: 7px;
  padding: 0 10px;
  font-size: 11px;
}

.tt-profile-zone {
  display: grid;
  gap: 18px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid var(--border-soft);
}

.tt-profile-zone:first-of-type {
  margin-top: 0;
}

.tt-profile-zone-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.tt-profile-zone-head > div {
  min-width: 0;
}

.tt-profile-zone-head span {
  color: var(--gold-deep);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tt-profile-zone-head h2 {
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 22px;
  line-height: 1.15;
}

.tt-profile-zone-head p {
  max-width: 680px;
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.tt-profile-zone-primary {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border-radius: 999px;
  background: var(--gold);
  color: #211600;
  padding: 0 14px;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.tt-profile-zone-primary:hover,
.tt-profile-zone-primary:focus-visible {
  background: #d6a641;
  color: #171008;
  text-decoration: none;
}

.tt-profile-overview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tt-profile-overview-panel {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: rgba(251, 248, 239, 0.62);
}

.tt-profile-overview-panel span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.tt-profile-overview-panel strong {
  color: var(--ink);
  font-size: 17px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.tt-profile-overview-panel p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-profile-subsection {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid rgba(222, 212, 195, 0.56);
}

.tt-profile-subsection:first-of-type {
  padding-top: 0;
  border-top: 0;
}

.tt-profile-admin-zone {
  margin-top: 30px;
  padding: 22px 18px 18px;
  border: 1px solid rgba(161, 118, 32, 0.22);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255, 248, 231, 0.72), rgba(255, 253, 248, 0.38));
}

.tt-admin-dashboard-frame {
  align-items: stretch;
}

.tt-admin-dashboard {
  width: min(100%, 1120px);
  margin: 0 auto;
  padding: 28px 28px 40px;
}

.tt-admin-dashboard .tt-profile-admin-zone {
  display: grid;
  gap: 18px;
  margin-top: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.tt-admin-dashboard .tt-profile-admin-api-form {
  padding: 18px 0 0;
}

.tt-admin-dashboard .tt-admin-control-section {
  display: grid;
  gap: 12px;
  margin-top: 8px;
  padding-top: 18px;
  border-top: 1px solid rgba(161, 118, 32, 0.18);
}

.tt-admin-dashboard .tt-profile-action-card {
  border-radius: 8px;
}

.tt-admin-open-books-form {
  display: grid;
  gap: 10px;
}

.tt-admin-open-books-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.tt-admin-open-books-head h3 {
  margin: 0 0 4px;
  color: var(--ink);
  font-size: 15px;
}

.tt-admin-open-books-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-admin-open-books-head button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: var(--accent);
  color: white;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.tt-admin-open-books-list {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--border-soft);
}

.tt-admin-open-book-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-admin-open-book-row input {
  width: 16px;
  height: 16px;
}

.tt-admin-open-book-row span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tt-admin-open-book-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--ink);
  font-size: 13px;
}

.tt-admin-open-book-row small {
  color: var(--muted);
  font-size: 11px;
}

.tt-admin-open-book-row em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-profile-system-zone {
  padding: 16px 0 0;
}

.tt-profile-admin-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tt-profile-admin-grid .tt-profile-action-card-admin {
  grid-column: auto;
}

.tt-profile-action-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-profile-role-strip span.editor {
  background: rgba(93, 202, 165, 0.14);
  color: #1f6f68;
}

.tt-profile-role-strip span.business-operations {
  background: rgba(22, 122, 142, 0.12);
  color: #126779;
}

.tt-profile-admin-api-form {
  margin-top: 2px;
  padding-top: 16px;
  border-top: 1px solid rgba(161, 118, 32, 0.18);
}

.tt-profile-admin-api-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tt-worker-settings-grid {
  align-items: stretch;
}

.tt-worker-settings-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tt-worker-settings-summary span {
  border: 1px solid rgba(97, 76, 45, 0.12);
  border-radius: 8px;
  padding: 12px;
  background: rgba(255, 251, 242, 0.68);
}

.tt-worker-settings-summary strong,
.tt-worker-settings-summary small {
  display: block;
}

.tt-worker-settings-summary strong {
  color: #3d2d1d;
  font-size: 22px;
  line-height: 1.1;
}

.tt-worker-settings-summary small {
  margin-top: 5px;
  color: #856b4c;
  font-size: 12px;
}

.tt-worker-settings-note {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-worker-audit-log {
  display: grid;
  gap: 8px;
  margin-top: 4px;
}

.tt-worker-audit-log h3 {
  margin: 0;
  color: var(--ink);
  font-size: 14px;
}

.tt-worker-audit-row {
  display: grid;
  gap: 3px;
  padding: 10px 0;
  border-top: 1px solid rgba(97, 76, 45, 0.1);
}

.tt-worker-audit-row strong,
.tt-worker-audit-row span,
.tt-worker-audit-row small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.tt-worker-audit-row strong {
  color: var(--ink);
  font-size: 12px;
  text-transform: uppercase;
}

.tt-worker-audit-row span {
  color: var(--ink-soft);
  font-size: 13px;
}

.tt-worker-audit-row small {
  color: var(--muted);
  font-size: 12px;
}

.tt-profile-form {
  display: grid;
  gap: 14px;
}

.tt-profile-section h2 {
  margin: 0;
  font-size: 16px;
}

.tt-profile-section p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.tt-profile-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-profile-form input,
.tt-profile-form select,
.tt-profile-form textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  color: var(--ink);
  padding: 10px 11px;
  font: inherit;
}

.tt-profile-form textarea {
  min-height: 92px;
  resize: vertical;
}

.tt-profile-form .errorlist,
.tt-profile-errors {
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
}

.tt-profile-status {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  color: var(--muted);
  font-size: 12px;
}

.tt-profile-status span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--gray-soft);
  color: var(--gray);
  font-weight: 800;
}

.tt-profile-status span.ready {
  background: var(--green-soft);
  color: var(--green);
}

.tt-profile-status em {
  font-style: normal;
}

.tt-profile-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
  flex-wrap: wrap;
}

.tt-profile-actions a,
.tt-profile-actions button {
  min-width: 0;
  border: 0;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
  text-decoration: none;
  text-align: center;
  white-space: normal;
}

.tt-profile-actions a {
  background: var(--paper-soft);
  color: var(--muted);
}

.tt-profile-actions a.tt-payment-cta {
  border: 1px solid rgba(177, 111, 10, 0.2);
  background: linear-gradient(135deg, #f2cf75, #c9902f);
  color: #211600;
  box-shadow: 0 8px 20px rgba(155, 99, 10, 0.16);
}

.tt-profile-actions a.tt-payment-cta:hover,
.tt-profile-actions a.tt-payment-cta:focus-visible {
  background: linear-gradient(135deg, #f7dc94, #d8a23d);
  color: #171008;
  box-shadow: 0 10px 24px rgba(155, 99, 10, 0.2);
  text-decoration: none;
}

.tt-profile-actions button {
  background: var(--gold);
  color: #211600;
  cursor: pointer;
}

.tt-profile-actions-inline {
  justify-content: flex-start;
  margin-top: 0;
}

.tt-profile-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}

.tt-profile-action-card {
  min-width: 0;
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: rgba(251, 248, 239, 0.72);
}

.tt-profile-action-card-admin {
  grid-column: 1 / -1;
}

.tt-profile-action-card h3 {
  margin: 0;
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.tt-ai-access-paper {
  max-width: 920px;
}

.tt-ai-access-summary {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.tt-ai-access-bulk {
  flex-wrap: wrap;
}

.tt-ai-access-bulk form,
.tt-ai-access-controls form {
  margin: 0;
}

.tt-ai-access-bulk button,
.tt-ai-access-controls button {
  border: 0;
  border-radius: 999px;
  padding: 10px 14px;
  background: var(--gold);
  color: #211600;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}

.tt-ai-access-bulk button.muted,
.tt-ai-access-controls button.muted {
  background: var(--paper-soft);
  color: var(--muted);
}

.tt-ai-access-row {
  align-items: center;
}

.tt-ai-access-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.tt-subscription-paper .tt-profile-section h1 {
  margin: 0;
  font-size: 24px;
}

.tt-subscription-lock-note {
  display: grid;
  gap: 5px;
  border-radius: 8px;
  background: var(--gold-soft);
  color: var(--ink);
  padding: 11px 12px;
  font-size: 12px;
  line-height: 1.45;
}

.tt-subscription-lock-note strong {
  font-size: 13px;
}

.tt-subscription-lock-note span {
  color: var(--muted);
}

.tt-subscription-lock-note a {
  color: var(--navy);
  font-weight: 800;
}

.tt-organization-plan-note {
  margin: 8px 0 0;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.45;
}

.tt-organization-plan-note strong {
  color: var(--gold-deep);
}

.tt-organization-plan-total {
  display: grid;
  gap: 9px;
  max-width: 560px;
  margin: 16px 0 6px;
  padding: 0;
  color: var(--ink);
}

.tt-organization-plan-total-title {
  font-size: 13px;
  font-weight: 800;
  color: var(--muted);
}

.tt-organization-plan-total-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.tt-organization-plan-total-table th,
.tt-organization-plan-total-table td {
  padding: 7px 0;
  border-bottom: 1px solid rgba(22, 31, 48, 0.1);
  vertical-align: top;
}

.tt-organization-plan-total-table th {
  width: 42%;
  color: var(--muted);
  font-weight: 700;
  text-align: left;
}

.tt-organization-plan-total-table td {
  color: var(--ink);
  font-weight: 800;
  text-align: right;
}

.tt-organization-plan-grand-total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  padding-top: 2px;
}

.tt-organization-plan-grand-total span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.tt-organization-plan-grand-total strong {
  color: var(--gold-deep);
  font-size: clamp(26px, 3.4vw, 42px);
  line-height: 1.05;
  text-align: right;
}

.tt-organization-plan-total > small {
  color: var(--muted);
  font-size: 12px;
}

.tt-organization-total-line {
  display: grid;
  gap: 2px;
  margin-top: 6px;
}

.tt-organization-total-line small {
  color: var(--muted);
  font-size: 11px;
}

.tt-organization-total-line strong {
  color: var(--gold-deep);
  font-size: 18px;
  line-height: 1.15;
}

.tt-organization-plan-current {
  outline: 2px solid rgba(201, 146, 49, 0.34);
  outline-offset: 2px;
}

.tt-subscription-list {
  display: grid;
  gap: 8px;
}

.tt-subscription-list.compact {
  margin-top: 4px;
}

.tt-subscription-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 11px;
  border-radius: 8px;
  background: var(--paper-soft);
  font-size: 12px;
}

.tt-subscription-row-link {
  color: var(--ink-soft);
  text-decoration: none;
}

.tt-subscription-row-link:hover {
  background: var(--gold-soft);
}

.tt-subscription-row div {
  display: grid;
  gap: 3px;
}

.tt-subscription-row span,
.tt-muted {
  color: var(--muted);
}

.tt-subscription-status {
  font-style: normal;
  white-space: nowrap;
  border-radius: 999px;
  padding: 4px 9px;
  background: var(--gray-soft);
  color: var(--gray);
  font-weight: 800;
}

.tt-subscription-status-pending {
  background: var(--gold-soft);
  color: #6d4b00;
}

.tt-subscription-status-accepted {
  background: var(--green-soft);
  color: var(--green);
}

.tt-subscription-status-rejected {
  background: var(--red-soft);
  color: var(--red);
}

.tt-plan-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 8px 11px;
  background: var(--gray-soft);
  color: var(--gray);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.tt-plan-pill-explorer,
.tt-plan-pill-learner,
.tt-plan-pill-scholar,
.tt-plan-pill-pro {
  background: var(--green-soft);
  color: var(--green);
}

.tt-plan-pill-researcher,
.tt-plan-pill-master {
  background: var(--gold-soft);
  color: #6d4b00;
}

.tt-plan-pill-pending {
  background: var(--gold-soft);
  color: #6d4b00;
}

.tt-plan-pill-rejected {
  background: var(--red-soft);
  color: var(--red);
}

.tt-plan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.tt-plan-card {
  display: grid;
  gap: 7px;
  border-radius: 8px;
  background: var(--paper-soft);
  padding: 14px;
}

.tt-plan-card-link {
  color: inherit;
  text-decoration: none;
  transition: transform 140ms ease, box-shadow 140ms ease, background 140ms ease;
}

.tt-plan-card-link:hover,
.tt-plan-card-link:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(22, 27, 51, 0.12);
  text-decoration: none;
}

.tt-plan-card-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.tt-plan-card strong {
  font-size: 15px;
}

.tt-plan-card em {
  color: var(--ink);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}

.tt-plan-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.tt-plan-card-cta {
  margin-top: 4px;
  color: var(--gold);
  font-size: 12px;
  font-weight: 850;
}

.tt-plan-card-learner,
.tt-plan-card-scholar,
.tt-plan-card-pro {
  background: var(--green-soft);
}

.tt-plan-card-researcher,
.tt-plan-card-master {
  background: var(--gold-soft);
}

.tt-plan-payment-text {
  white-space: normal;
}

.tt-plan-detail-head {
  display: grid;
  gap: 12px;
  max-width: 780px;
}

.tt-plan-detail-head h1 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(38px, 7vw, 76px);
  line-height: 0.95;
  letter-spacing: 0;
}

.tt-plan-detail-head p:not(.tt-kicker) {
  max-width: 640px;
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.tt-plan-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tt-plan-detail-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border-radius: 999px;
  background: var(--gold-soft);
  color: #6d4b00;
  padding: 0 11px;
  font-size: 12px;
  font-weight: 850;
}

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

.tt-plan-detail-block h2 {
  margin: 0 0 10px;
  color: var(--navy);
  font-size: 18px;
}

.tt-plan-step-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 20px;
  color: var(--ink-soft);
  line-height: 1.55;
}

.tt-plan-payment-panel,
.tt-plan-admin-summary {
  display: grid;
  gap: 9px;
  border-radius: 8px;
  background: var(--gold-soft);
  color: var(--ink);
  padding: 13px 14px;
  margin: 12px 0 16px;
  font-size: 13px;
  line-height: 1.45;
}

.tt-plan-payment-panel div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: baseline;
}

.tt-plan-payment-panel strong,
.tt-plan-admin-summary strong {
  font-weight: 850;
}

.tt-plan-payment-panel span,
.tt-plan-admin-summary span {
  color: var(--muted);
}

.tt-plan-payment-panel p {
  margin: 0;
  color: var(--ink-soft);
}

.tt-school-report-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(43, 31, 20, 0.12);
}

.tt-school-report-head h1 {
  margin: 3px 0;
}

.tt-school-report-head p {
  margin: 0;
  color: var(--muted);
}

.tt-school-report-meta {
  display: grid;
  gap: 4px;
  min-width: 150px;
  padding: 10px 12px;
  border-radius: 8px;
  background: var(--gold-soft);
  text-align: right;
}

.tt-school-report-meta span,
.tt-school-report-summary span {
  color: var(--muted);
  font-size: 12px;
}

.tt-school-report-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.tt-school-report-summary div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(43, 31, 20, 0.1);
  border-radius: 8px;
  background: var(--paper-soft);
}

.tt-school-report-summary strong {
  font-size: 16px;
}

.tt-school-payment-table {
  display: grid;
  gap: 7px;
}

.tt-school-payment-table-head,
.tt-school-payment-table-row {
  display: grid;
  grid-template-columns: 0.9fr 0.8fr 0.7fr 1.6fr 0.9fr 0.8fr;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border-radius: 8px;
}

.tt-school-payment-table-head {
  background: var(--gold-soft);
  color: var(--ink);
  font-size: 12px;
  font-weight: 850;
}

.tt-school-payment-table-row {
  background: var(--paper-soft);
  color: var(--ink-soft);
  text-decoration: none;
  font-size: 12px;
}

.tt-school-payment-table-row:hover,
.tt-school-payment-table-row:focus-visible {
  background: var(--gold-soft);
}

.tt-section-head-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.tt-section-head-row > a {
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.tt-payment-calendar-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 14px;
}

.tt-payment-calendar-month {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.tt-payment-calendar-month h3 {
  margin: 0;
  font-size: 13px;
  color: var(--ink-soft);
}

.tt-payment-calendar-weekdays,
.tt-payment-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

.tt-payment-calendar-weekdays span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}

.tt-payment-calendar-day {
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  min-width: 0;
  border-radius: 7px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.tt-payment-calendar-day.outside {
  opacity: 0.35;
}

.tt-payment-calendar-day.covered {
  background: var(--green-soft);
  color: var(--green);
  box-shadow: inset 0 0 0 1px rgba(20, 116, 58, 0.18);
}

.tt-payment-calendar-day.today {
  box-shadow: inset 0 0 0 2px var(--gold);
}

.tt-payment-calendar-day.covered.today {
  box-shadow:
    inset 0 0 0 1px rgba(20, 116, 58, 0.18),
    0 0 0 2px var(--gold-soft);
}

.tt-review-list {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.tt-review-card {
  display: grid;
  gap: 14px;
  padding-top: 18px;
  border-top: 1px solid var(--border-soft);
}

.tt-review-head,
.tt-review-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.tt-review-head div {
  display: grid;
  gap: 3px;
}

.tt-review-head span {
  color: var(--muted);
  font-size: 12px;
}

.tt-review-head h1 {
  margin: 0;
  font-size: 24px;
}

.tt-review-head a {
  color: var(--navy);
  font-weight: 800;
}

.tt-review-grid {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.tt-review-receipt {
  display: block;
  width: 100%;
  max-height: 320px;
  object-fit: contain;
  border-radius: 8px;
  background: var(--paper-soft);
}

.tt-review-detail {
  display: grid;
  gap: 10px;
  font-size: 12px;
  color: var(--muted);
}

.tt-review-detail p {
  margin: 0;
}

.tt-review-detail label {
  display: grid;
  gap: 6px;
  font-weight: 800;
}

.tt-review-detail textarea,
.tt-review-actions textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  color: var(--ink);
  padding: 9px 10px;
  font: inherit;
  resize: vertical;
}

.tt-review-actions textarea {
  flex: 1 1 260px;
}

.tt-review-actions button {
  border: 0;
  border-radius: 999px;
  padding: 9px 13px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.tt-review-actions button[value="accepted"] {
  background: var(--green-soft);
  color: var(--green);
}

.tt-review-actions button[value="rejected"] {
  background: var(--red-soft);
  color: var(--red);
}

@media (max-width: 760px) {
  .tt-review-grid {
    grid-template-columns: 1fr;
  }

  .tt-subscription-row,
  .tt-review-head,
  .tt-review-actions {
    align-items: flex-start;
  }

  .tt-subscription-row {
    flex-direction: column;
  }

  .tt-section-head-row {
    flex-direction: column;
  }

  .tt-ai-access-controls {
    margin-left: 0;
    flex-wrap: wrap;
  }

  .tt-plan-grid {
    grid-template-columns: 1fr;
  }

  .tt-plan-detail-grid {
    grid-template-columns: 1fr;
  }

  .tt-school-report-head,
  .tt-school-report-summary {
    grid-template-columns: 1fr;
  }

  .tt-school-report-head {
    display: grid;
  }

  .tt-school-report-meta {
    text-align: left;
  }

  .tt-school-payment-table-head {
    display: none;
  }

  .tt-school-payment-table-row {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

.tt-profile-contributions {
  display: grid;
  gap: 12px;
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid var(--border-soft);
}

.tt-profile-project-list {
  display: grid;
  gap: 6px;
}

.tt-profile-project-list a {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 9px 10px;
  border-radius: 8px;
  background: var(--paper-soft);
  color: var(--ink-soft);
  font-size: 12px;
}

.tt-profile-project-list strong {
  min-width: 0;
  overflow-wrap: anywhere;
}

.tt-profile-project-list span {
  color: var(--muted);
  flex: 0 0 auto;
  text-align: right;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .tt-profile-paper {
    padding-left: 22px;
    padding-right: 22px;
  }

  .tt-admin-dashboard {
    padding: 20px 14px 32px;
  }

  .tt-profile-head {
    align-items: flex-start;
  }

  .tt-profile-zone-head,
  .tt-profile-overview-grid,
  .tt-profile-admin-grid,
  .tt-profile-admin-api-grid {
    grid-template-columns: 1fr;
  }

  .tt-worker-settings-summary {
    grid-template-columns: 1fr;
  }

  .tt-profile-zone-head {
    display: grid;
  }

  .tt-profile-zone-primary {
    width: 100%;
  }

  .tt-profile-action-grid {
    grid-template-columns: 1fr;
  }

  .tt-profile-actions a,
  .tt-profile-actions button {
    flex: 1 1 150px;
  }

  .tt-profile-project-list a {
    flex-direction: column;
    gap: 4px;
  }

  .tt-profile-project-list span {
    flex: 1 1 auto;
    text-align: left;
    white-space: normal;
  }
}

.tt-text-report-paper {
  display: grid;
  gap: 18px;
}

.tt-text-report-list {
  display: grid;
  gap: 10px;
}

.tt-text-report-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-text-report-row:last-child {
  border-bottom: 0;
}

.tt-text-report-head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.tt-text-report-head strong {
  color: var(--navy);
  font-size: 14px;
}

.tt-text-report-title-link {
  color: inherit;
  text-decoration: none;
}

.tt-text-report-title-link:hover,
.tt-text-report-title-link:focus-visible {
  text-decoration: underline;
}

.tt-text-report-head span {
  border-radius: 999px;
  padding: 3px 8px;
  background: #fee2e2;
  color: #991b1b;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.tt-text-report-row-resolved .tt-text-report-head span {
  background: #dcfce7;
  color: #166534;
}

.tt-text-report-row-dismissed .tt-text-report-head span {
  background: #f1f5f9;
  color: #475569;
}

.tt-text-report-selection {
  margin: 7px 0 4px;
  color: var(--ink);
  font-family: "Source Serif 4", serif;
  font-size: 15px;
  line-height: 1.5;
}

.tt-text-report-message,
.tt-text-report-review-note {
  margin: 4px 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.45;
}

.tt-text-report-main small {
  color: var(--muted);
  font-size: 11px;
}

.tt-text-report-actions {
  display: grid;
  gap: 8px;
  justify-items: end;
  min-width: 210px;
}

.tt-text-report-actions a,
.tt-text-report-actions button {
  border: 0;
  border-radius: 999px;
  padding: 7px 10px;
  background: var(--navy);
  color: white;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.tt-text-report-actions form {
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) auto;
  gap: 6px;
  align-items: center;
}

.tt-text-report-actions select,
.tt-text-report-actions input {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 7px 9px;
  background: var(--paper-soft);
  color: var(--ink);
  font-size: 12px;
}

.tt-text-report-detail {
  display: grid;
  gap: 16px;
}

.tt-text-report-detail-grid {
  display: grid;
  gap: 12px;
}

.tt-text-report-detail-card {
  display: grid;
  gap: 7px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-text-report-detail-card:last-child {
  border-bottom: 0;
}

.tt-text-report-detail-label {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.tt-text-report-context {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.tt-text-report-review-card form {
  display: grid;
  grid-template-columns: minmax(140px, auto) minmax(180px, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.tt-text-report-review-card select,
.tt-text-report-review-card input {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 8px 10px;
  background: var(--paper-soft);
  color: var(--ink);
  font-size: 12px;
}

.tt-text-report-review-card button {
  border: 0;
  border-radius: 999px;
  padding: 8px 12px;
  background: var(--navy);
  color: white;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.tt-empty-state {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.tt-profile-logout {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}

.tt-profile-logout button {
  border: 0;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--red);
  padding: 9px 13px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.tt-activity-topbar .reader-labels {
  width: min(980px, 100%);
  line-height: 1;
}

.tt-activity-topbar {
  min-height: 44px;
  margin: 0 -28px 14px;
  padding: 6px 28px;
}

.tt-activity-label-main {
  min-height: 24px;
}

.tt-compact-label-page .topbar-reader {
  min-height: 42px;
  margin-bottom: 12px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.tt-compact-label-page .reader-labels {
  line-height: 1;
}

.tt-compact-label-page .reader-label-main {
  min-height: 24px;
}

.tt-compact-label-page .breadcrumb {
  gap: 6px;
  min-height: 24px;
  font-size: 12px;
  line-height: 1.1;
}

.tt-activity-breadcrumb {
  gap: 6px;
  flex-wrap: nowrap;
  overflow: hidden;
  font-size: 12px;
  white-space: nowrap;
}

.tt-activity-breadcrumb a,
.tt-activity-breadcrumb span {
  flex: 0 0 auto;
}

.tt-activity-breadcrumb strong {
  flex: 0 1 auto;
  max-width: none;
}

.tt-activity-frame {
  width: min(980px, 100%);
}

.tt-activity-monitor-frame {
  width: min(1180px, 100%);
}

.tt-activity-page {
  display: grid;
  gap: 10px;
}

.tt-activity-page-detail {
  width: min(780px, 100%);
}

.tt-activity-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 4px;
}

.tt-activity-head small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.tt-activity-back {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 850;
  text-decoration: none;
}

.tt-activity-monitor-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.tt-activity-monitor-hero {
  align-items: flex-start;
  padding: 18px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background:
    radial-gradient(circle at 12% 0%, rgba(225, 183, 95, 0.16), transparent 32%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 253, 248, 0.86));
}

.tt-activity-monitor-title {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.tt-activity-monitor-kicker {
  color: var(--gold-strong);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tt-activity-monitor-title h1 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.02;
  letter-spacing: 0;
}

.tt-activity-monitor-health {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: white;
}

.tt-activity-monitor-health div {
  min-width: 0;
}

.tt-activity-monitor-health strong {
  display: block;
  color: var(--ink);
  font-size: 14px;
}

.tt-activity-monitor-health p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-activity-monitor-health > span {
  flex: 0 0 auto;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--ink-soft);
  font-size: 11px;
  font-weight: 900;
}

.tt-activity-monitor-health-green {
  border-color: rgba(44, 151, 92, 0.24);
  background: linear-gradient(180deg, rgba(230, 248, 238, 0.92), rgba(255, 255, 255, 0.94));
}

.tt-activity-monitor-health-gold {
  border-color: rgba(201, 146, 34, 0.28);
  background: linear-gradient(180deg, rgba(255, 245, 218, 0.96), rgba(255, 255, 255, 0.94));
}

.tt-activity-monitor-health-red {
  border-color: rgba(220, 38, 38, 0.24);
  background: linear-gradient(180deg, rgba(255, 238, 238, 0.94), rgba(255, 255, 255, 0.94));
}

.tt-activity-monitor-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.tt-activity-monitor-card {
  display: grid;
  gap: 6px;
  min-height: 112px;
  align-content: center;
  padding: 16px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: white;
}

.tt-activity-monitor-card span,
.tt-activity-monitor-card small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
}

.tt-activity-monitor-card strong {
  color: var(--ink);
  font-size: 30px;
  line-height: 1;
}

.tt-activity-monitor-card-green {
  border-color: rgba(44, 151, 92, 0.18);
}

.tt-activity-monitor-card-gold {
  border-color: rgba(201, 146, 34, 0.24);
}

.tt-activity-monitor-card-red {
  border-color: rgba(220, 38, 38, 0.22);
}

.tt-activity-monitor-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
  gap: 8px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-activity-monitor-summary span {
  display: grid;
  gap: 2px;
  min-height: 54px;
  align-content: center;
  padding: 10px 12px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: white;
}

.tt-activity-monitor-summary strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1;
}

.tt-activity-monitor-summary small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.tt-worker-status-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: white;
}

.tt-worker-status-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.tt-worker-status-head h2 {
  margin: 0;
  font-size: 18px;
}

.tt-worker-status-head p,
.tt-worker-status-error {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-worker-status-head > span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.tt-worker-status-head > span.ready {
  background: var(--green-soft);
  color: var(--green);
}

.tt-worker-total-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 8px;
}

.tt-worker-total-grid span,
.tt-worker-list span {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: var(--paper-soft);
}

.tt-worker-total-grid strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1;
}

.tt-worker-total-grid small,
.tt-worker-list small {
  color: var(--muted);
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.3;
}

.tt-worker-retry-form {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(185, 28, 28, 0.22);
  border-radius: 8px;
  background: rgba(254, 226, 226, 0.6);
}

.tt-worker-retry-form div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tt-worker-retry-form strong {
  color: #991b1b;
  font-size: 12px;
}

.tt-worker-retry-form small {
  color: #7f1d1d;
  font-size: 11px;
  line-height: 1.35;
}

.tt-worker-retry-form button {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: #b91c1c;
  color: white;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.tt-worker-jobs {
  display: grid;
  gap: 8px;
}

.tt-worker-jobs-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.tt-worker-jobs-head h3,
.tt-worker-jobs-head p {
  margin: 0;
}

.tt-worker-jobs-head h3 {
  color: var(--ink);
  font-size: 13px;
}

.tt-worker-jobs-head p,
.tt-worker-jobs-head > span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10.5px;
  line-height: 1.35;
}

.tt-worker-jobs-head > span {
  flex: 0 0 auto;
  font-weight: 800;
}

.tt-worker-job-list {
  display: grid;
}

.tt-worker-job-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 9px 0;
  border-top: 1px solid var(--border-soft);
  background: transparent;
}

.tt-worker-job-main,
.tt-worker-job-title {
  min-width: 0;
}

.tt-worker-job-main {
  display: grid;
  gap: 4px;
}

.tt-worker-job-title {
  display: flex;
  align-items: center;
  gap: 7px;
}

.tt-worker-job-title strong {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 11.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-worker-job-main > small {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.35;
}

.tt-worker-job-state {
  flex: 0 0 auto;
  padding: 3px 6px;
  border: 1px solid var(--border);
  border-radius: 5px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.tt-worker-job-state-failed {
  border-color: rgba(185, 28, 28, 0.28);
  color: var(--red);
}

.tt-worker-job-state-running {
  border-color: rgba(21, 128, 61, 0.26);
  color: var(--green);
}

.tt-worker-job-state-scheduled {
  border-color: rgba(183, 121, 31, 0.28);
  color: var(--amber);
}

.tt-worker-job-actions,
.tt-worker-job-actions form {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
}

.tt-worker-job-actions button,
.tt-worker-job-cancel summary {
  min-height: 29px;
  padding: 0 9px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: transparent;
  color: var(--ink-soft);
  cursor: pointer;
  font: inherit;
  font-size: 10px;
  font-weight: 850;
  line-height: 27px;
  white-space: nowrap;
}

.tt-worker-job-actions button:hover,
.tt-worker-job-actions button:focus-visible,
.tt-worker-job-cancel summary:hover,
.tt-worker-job-cancel summary:focus-visible {
  border-color: var(--gold);
  background: var(--gold-soft);
  color: var(--ink);
  outline: none;
}

.tt-worker-job-actions .tt-worker-job-retry {
  border-color: rgba(21, 128, 61, 0.28);
  color: var(--green);
}

.tt-worker-job-cancel {
  position: relative;
}

.tt-worker-job-cancel summary {
  list-style: none;
}

.tt-worker-job-cancel summary::-webkit-details-marker {
  display: none;
}

.tt-worker-job-cancel[open] form {
  position: absolute;
  right: 0;
  bottom: calc(100% + 6px);
  z-index: 30;
  width: max-content;
  max-width: min(260px, calc(100vw - 28px));
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--paper);
  box-shadow: var(--shadow-soft);
}

.tt-worker-job-cancel form span {
  color: var(--ink-soft);
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}

.tt-worker-job-cancel form button {
  border-color: rgba(185, 28, 28, 0.32);
  background: var(--red-soft);
  color: var(--red);
}

@media (max-width: 720px) {
  .tt-worker-job-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
  }

  .tt-worker-job-actions {
    justify-content: flex-end;
  }
}

.tt-worker-queue-table {
  display: grid;
  gap: 0;
  overflow-x: auto;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
}

.tt-worker-queue-row {
  display: grid;
  grid-template-columns: minmax(190px, 1fr) repeat(4, minmax(70px, 0.35fr));
  gap: 8px;
  min-width: 520px;
  padding: 9px 10px;
  border-top: 1px solid var(--border-soft);
  align-items: center;
}

.tt-worker-queue-row:first-child {
  border-top: 0;
}

.tt-worker-queue-head {
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.tt-worker-queue-row strong,
.tt-worker-queue-row span {
  min-width: 0;
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-worker-list {
  display: grid;
  gap: 8px;
}

.tt-worker-list strong {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-activity-user-list,
.tt-activity-day-list,
.tt-activity-event-list {
  display: grid;
  gap: 4px;
}

.tt-activity-user-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 4px;
  border-bottom: 1px solid var(--border-soft);
  color: inherit;
  text-decoration: none;
}

.tt-activity-user-row:hover {
  background: rgba(255, 248, 231, 0.46);
}

.tt-activity-user-avatar {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 999px;
  background: var(--navy);
  color: white;
  font-size: 11px;
  font-weight: 900;
}

.tt-activity-user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tt-activity-user-main {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tt-activity-user-main strong {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-activity-user-main small {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-activity-user-latest.tt-math-title {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.tt-activity-user-row > em {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  height: 24px;
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-activity-day-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  scroll-margin-top: 70px;
  gap: 5px 10px;
  padding: 9px 4px;
  border-bottom: 1px solid var(--border-soft);
  border-radius: 0;
  color: inherit;
  text-decoration: none;
}

.tt-activity-day-row:hover {
  background: rgba(255, 248, 231, 0.46);
}

.tt-activity-day-row.active {
  background: rgba(255, 248, 231, 0.56);
  box-shadow: inset 3px 0 0 var(--gold);
}

.tt-activity-day-row strong {
  display: block;
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.32;
  text-overflow: ellipsis;
}

.tt-activity-event-body strong {
  display: block;
  min-width: 0;
  overflow: visible;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.tt-activity-day-row small,
.tt-activity-event-body small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.tt-activity-event-body .tt-math-title {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.tt-activity-day-row em {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  height: 24px;
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-activity-chips {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.tt-activity-chips b {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 9.5px;
  font-weight: 900;
}

.tt-activity-detail {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.tt-activity-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-activity-detail-head h2 {
  margin: 0;
  font-size: 18px;
}

.tt-activity-detail-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.tt-activity-detail-head > strong {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--ink-soft);
  font-size: 12px;
}

.tt-activity-event {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--border-soft);
  color: inherit;
  text-decoration: none;
  scroll-margin-top: 72px;
}

.tt-activity-monitor-event {
  grid-template-columns: 64px 34px minmax(0, 1fr);
  align-items: center;
  padding: 12px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
}

.tt-activity-monitor-event time span {
  display: block;
}

.tt-activity-monitor-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  padding-top: 4px;
}

.tt-activity-monitor-section-head h2 {
  margin: 0;
  color: var(--ink);
  font-size: 20px;
}

.tt-activity-monitor-section-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-activity-monitor-section-head > span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.tt-activity-monitor-list {
  gap: 6px;
}

.tt-activity-monitor-event-line {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.tt-activity-monitor-event-line .tt-activity-event-badge {
  flex: 0 0 auto;
}

@media (max-width: 820px) {
  .tt-activity-monitor-hero,
  .tt-activity-monitor-health,
  .tt-activity-monitor-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .tt-activity-monitor-actions {
    justify-content: flex-start;
  }

  .tt-activity-monitor-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tt-activity-monitor-event {
    grid-template-columns: 52px 30px minmax(0, 1fr);
    padding: 10px 8px;
  }
}

@media (max-width: 560px) {
  .tt-activity-monitor-card-grid,
  .tt-activity-monitor-summary {
    grid-template-columns: 1fr;
  }

  .tt-activity-monitor-event {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .tt-activity-monitor-event time {
    display: flex;
    gap: 6px;
  }

  .tt-activity-monitor-event .tt-activity-user-avatar {
    display: none;
  }
}

.tt-activity-event:hover {
  background: rgba(255, 248, 231, 0.46);
}

.tt-activity-event:target {
  background: rgba(255, 248, 231, 0.72);
  box-shadow: inset 3px 0 0 var(--gold);
}

.tt-activity-event time {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.tt-activity-event-body {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.tt-activity-event-badge {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 9.5px;
  font-weight: 900;
  text-transform: uppercase;
}

.tt-activity-event-green .tt-activity-event-badge {
  background: var(--green-soft);
  color: var(--green);
}

.tt-activity-event-gold .tt-activity-event-badge {
  background: var(--gold-soft);
  color: var(--gold);
}

.tt-activity-event-navy .tt-activity-event-badge {
  background: rgba(222, 226, 233, 0.72);
  color: var(--navy);
}

.tt-activity-event-red .tt-activity-event-badge {
  background: rgba(254, 242, 242, 0.92);
  color: var(--red);
}

.tt-aksbel-report-page {
  width: min(980px, 100%);
}

.tt-aksbel-report-head {
  margin-bottom: 12px;
}

.tt-aksbel-user-report-page {
  padding-top: 18px;
}

.tt-aksbel-user-hero {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-aksbel-user-hero .tt-activity-user-avatar {
  width: 42px;
  height: 42px;
}

.tt-aksbel-user-hero h1 {
  margin: 1px 0 2px;
  color: var(--navy);
  font-size: clamp(24px, 4vw, 38px);
  line-height: 1;
}

.tt-aksbel-user-hero p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.tt-aksbel-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 18px;
}

.tt-aksbel-summary div {
  display: grid;
  gap: 2px;
  min-height: 70px;
  align-content: center;
  padding: 12px;
  border-radius: 10px;
  background: rgba(255, 253, 248, 0.78);
  border: 1px solid var(--border-soft);
}

.tt-aksbel-summary strong {
  color: var(--navy);
  font-size: 28px;
  line-height: 1;
}

.tt-aksbel-summary span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.tt-aksbel-report-section {
  display: grid;
  gap: 8px;
  margin-top: 18px;
}

.tt-aksbel-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-aksbel-section-head h2 {
  margin: 0;
  color: var(--navy);
  font-size: 18px;
}

.tt-aksbel-section-head p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.tt-aksbel-learner-list,
.tt-aksbel-history-list,
.tt-aksbel-day-list {
  display: grid;
  gap: 4px;
}

.tt-aksbel-learner-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 4px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-aksbel-learner-row.active {
  background: rgba(232, 247, 238, 0.36);
}

.tt-aksbel-learner-main {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-aksbel-learner-main strong,
.tt-aksbel-history-row header strong,
.tt-aksbel-day-row strong {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.3;
}

.tt-aksbel-learner-main small,
.tt-aksbel-history-row header small,
.tt-aksbel-day-row small {
  color: var(--muted);
  font-size: 11px;
}

.tt-aksbel-learner-row > em,
.tt-aksbel-day-row > em {
  display: inline-grid;
  place-items: center;
  min-width: 26px;
  height: 26px;
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-aksbel-history-row {
  display: grid;
  gap: 8px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-aksbel-history-row header {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.tt-aksbel-history-row header span:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tt-aksbel-history-title {
  color: inherit;
  text-decoration: none;
}

.tt-aksbel-project-report-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 32px;
  align-items: center;
  gap: 10px;
  padding: 10px 4px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-aksbel-project-report-row.active {
  background: rgba(232, 247, 238, 0.36);
}

.tt-aksbel-project-report-main {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-aksbel-project-report-main strong {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.3;
}

.tt-aksbel-project-report-main small {
  color: var(--muted);
  font-size: 11px;
}

.tt-aksbel-project-report-row > em {
  display: inline-grid;
  place-items: center;
  min-width: 26px;
  height: 26px;
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-progress-page {
  gap: 18px;
}

.tt-progress-page-head,
.tt-progress-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
}

.tt-progress-page-head {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-progress-page-head h1 {
  margin: 2px 0 5px;
  color: var(--navy);
  font-size: 30px;
  line-height: 1.05;
}

.tt-progress-page-head p,
.tt-progress-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-progress-page-head > a {
  color: var(--gold-deep);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.tt-progress-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 18px;
}

.tt-progress-summary article {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-progress-summary span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.tt-progress-summary strong {
  color: var(--ink);
  font-size: 26px;
  line-height: 1;
}

.tt-progress-summary small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.tt-progress-section,
.tt-progress-daily,
.tt-progress-overview {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--border-soft);
  scroll-margin-top: 70px;
}

.tt-progress-head h2 {
  margin: 0 0 3px;
  color: var(--navy);
  font-size: 16px;
  line-height: 1.2;
}

.tt-progress-range,
.tt-progress-metrics,
.tt-progress-scope-links {
  display: flex;
  align-items: center;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.tt-progress-range a,
.tt-progress-metrics a,
.tt-progress-scope-links a {
  flex: 0 0 auto;
  padding: 6px 9px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}

.tt-progress-range a:hover,
.tt-progress-metrics a:hover,
.tt-progress-scope-links a:hover {
  color: var(--ink);
  background: rgba(201, 168, 76, 0.08);
}

.tt-progress-range a.active,
.tt-progress-metrics a.active {
  border-color: rgba(181, 138, 42, 0.34);
  background: rgba(201, 168, 76, 0.13);
  color: #77570f;
}

.tt-progress-chart-wrap {
  min-width: 0;
  overflow-x: auto;
  padding: 8px 0 2px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-progress-chart-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-width: 720px;
  padding: 0 8px;
}

.tt-progress-chart-title strong {
  color: var(--ink);
  font-size: 13px;
}

.tt-progress-chart-title span {
  color: var(--muted);
  font-size: 10px;
}

.tt-progress-chart {
  display: block;
  width: 100%;
  min-width: 720px;
  height: auto;
  overflow: visible;
}

.tt-progress-grid-line {
  stroke: rgba(18, 24, 38, 0.1);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}

.tt-progress-axis-label {
  fill: #667085;
  font-size: 10px;
  text-anchor: middle;
}

.tt-progress-axis-label-y {
  text-anchor: end;
}

.tt-progress-series-line {
  fill: none;
  stroke: var(--series-color-light);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.tt-progress-series-point {
  fill: var(--series-color-light);
  stroke: #ffffff;
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}

.tt-progress-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
}

.tt-progress-legend > span {
  display: grid;
  grid-template-columns: 9px auto;
  align-items: center;
  gap: 1px 6px;
  min-width: 0;
}

.tt-progress-legend i {
  grid-row: 1 / 3;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--series-color-light);
}

.tt-progress-legend b {
  color: var(--ink);
  font-size: 11px;
  line-height: 1.15;
}

.tt-progress-legend small,
.tt-progress-note {
  color: var(--muted);
  font-size: 10px;
}

.tt-progress-note {
  margin: 0;
}

.tt-progress-ranking,
.tt-progress-daily-table {
  display: grid;
  min-width: 680px;
  overflow: hidden;
  border-top: 1px solid var(--border-soft);
}

.tt-progress-section:has(.tt-progress-ranking),
.tt-progress-daily {
  overflow-x: auto;
}

.tt-progress-ranking-head,
.tt-progress-ranking-row,
.tt-progress-daily-head,
.tt-progress-daily-row {
  display: grid;
  grid-template-columns: minmax(170px, 1.4fr) repeat(5, minmax(86px, 0.7fr));
  gap: 10px;
  align-items: center;
  min-height: 40px;
  padding: 7px 4px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-progress-ranking-head,
.tt-progress-daily-head {
  color: var(--muted);
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.tt-progress-ranking-row,
.tt-progress-daily-row {
  color: var(--ink-soft);
  font-size: 12px;
}

.tt-progress-ranking-row > span:first-child {
  display: grid;
  gap: 2px;
}

.tt-progress-ranking-row a {
  color: inherit;
  text-decoration: none;
}

.tt-progress-ranking-row a:hover strong {
  color: var(--gold-deep);
}

.tt-progress-ranking-row strong,
.tt-progress-daily-row strong {
  color: var(--ink);
  font-size: 12px;
}

.tt-progress-ranking-row small {
  color: var(--muted);
  font-size: 10px;
}

.tt-progress-ranking-row > b {
  color: var(--gold-deep);
}

.tt-progress-daily-head,
.tt-progress-daily-row {
  grid-template-columns: minmax(120px, 1.1fr) repeat(6, minmax(82px, 0.7fr));
}

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

.tt-progress-mini-chart {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.42);
}

.tt-progress-mini-chart header,
.tt-progress-mini-chart footer {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.tt-progress-mini-chart header span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 850;
}

.tt-progress-mini-chart header strong {
  color: var(--gold-deep);
  font-size: 20px;
  line-height: 1;
}

.tt-progress-mini-chart svg {
  display: block;
  width: 100%;
  height: 118px;
  margin: 2px 0 -4px;
}

.tt-progress-mini-chart footer span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
}

.tt-school-class-progress-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.tt-school-class-progress-row > a:first-child {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.tt-progress-inline-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 9px;
  border: 1px solid rgba(161, 118, 32, 0.24);
  border-radius: 6px;
  color: #765312 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  text-decoration: none;
  white-space: nowrap;
}

.tt-progress-inline-link:hover {
  background: rgba(225, 183, 95, 0.13);
}

.tt-learning-report-page {
  width: min(980px, 100%);
  display: grid;
  gap: 16px;
}

@media (min-width: 901px) {
  .tt-page.tt-learning-report-page {
    width: min(980px, calc(100% - 72px));
    margin-left: 0;
    margin-right: 72px;
  }
}

.tt-learning-report-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-learning-report-head h1 {
  margin: 2px 0;
  color: var(--navy);
  font-size: clamp(24px, 4vw, 38px);
  line-height: 1;
}

.tt-learning-report-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.tt-learning-score {
  display: grid;
  justify-items: end;
  gap: 2px;
  min-width: 116px;
}

.tt-learning-score strong {
  color: var(--green);
  font-size: clamp(38px, 8vw, 68px);
  line-height: 0.9;
}

.tt-learning-score span,
.tt-learning-stat-grid span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.tt-learning-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.tt-learning-stat-grid article {
  display: grid;
  gap: 3px;
  min-height: 82px;
  align-content: center;
  padding: 12px;
  border-radius: 10px;
  background: rgba(255, 253, 248, 0.74);
  border: 1px solid var(--border-soft);
}

.tt-learning-stat-grid strong {
  color: var(--ink);
  font-size: 30px;
  line-height: 1;
}

.tt-learning-stat-grid small {
  color: var(--muted);
  font-size: 11px;
}

.tt-learning-chart-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.tt-learning-donut-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 14px;
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.68);
  border: 1px solid var(--border-soft);
}

.tt-learning-donut {
  --value: 0;
  width: 84px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background:
    radial-gradient(circle at center, var(--paper) 0 54%, transparent 55%),
    conic-gradient(var(--green) calc(var(--value) * 1%), rgba(34, 197, 94, 0.12) 0);
}

.tt-learning-donut.read {
  background:
    radial-gradient(circle at center, var(--paper) 0 54%, transparent 55%),
    conic-gradient(var(--gold) calc(var(--value) * 1%), rgba(212, 175, 55, 0.14) 0);
}

.tt-learning-donut strong {
  color: var(--ink);
  font-size: 20px;
  line-height: 1;
}

.tt-learning-donut-card h2,
.tt-learning-section-head h2 {
  margin: 0;
  color: var(--navy);
  font-size: 15px;
  line-height: 1.2;
}

.tt-learning-donut-card p,
.tt-learning-section-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-learning-trend {
  display: grid;
  gap: 10px;
}

.tt-learning-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
}

.tt-learning-section-head > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.tt-learning-bars {
  display: grid;
  gap: 6px;
}

.tt-learning-bar-row {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) 30px;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-learning-bar-row span {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.tt-learning-bar-row strong {
  color: var(--ink);
  font-size: 12px;
  line-height: 1.2;
}

.tt-learning-bar-row small {
  color: var(--muted);
  font-size: 10px;
}

.tt-learning-bar-row em {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 24px;
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-learning-bar-track {
  position: relative;
  height: 18px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(27, 47, 74, 0.08);
}

.tt-learning-bar-track i {
  position: absolute;
  inset: 0 auto 0 0;
  border-radius: inherit;
}

.tt-learning-bar-track .total {
  background: rgba(27, 47, 74, 0.18);
}

.tt-learning-bar-track .questions {
  height: 10px;
  top: 4px;
  background: rgba(212, 175, 55, 0.55);
}

.tt-learning-bar-track .correct {
  height: 5px;
  top: 6.5px;
  background: var(--green);
}

.tt-aksbel-day-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 8px;
  padding: 7px 4px;
  border-radius: 7px;
}

.tt-aksbel-day-row.active {
  background: rgba(255, 248, 231, 0.54);
}

.tt-aksbel-day-row .tt-activity-chips {
  grid-column: 1 / -1;
}

.tt-auth-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 28px;
}

.tt-auth-panel {
  width: min(430px, 100%);
  display: grid;
  gap: 22px;
  padding: 28px;
  border: 1px solid rgba(222, 212, 195, 0.86);
  border-radius: var(--radius-lg);
  background: rgba(255, 253, 248, 0.9);
  box-shadow: var(--shadow-soft);
}

.tt-auth-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--navy);
  font-weight: 850;
}

.tt-auth-brand span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: var(--navy);
  color: #fff;
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 30px;
  line-height: 1;
}

.tt-auth-head {
  display: grid;
  gap: 6px;
}

.tt-auth-head h1,
.tt-auth-head p {
  margin: 0;
}

.tt-auth-head h1 {
  color: var(--ink);
  font-size: 28px;
  line-height: 1.1;
}

.tt-auth-head p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.tt-auth-form {
  display: grid;
  gap: 14px;
}

.tt-auth-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.tt-auth-form label > span {
  text-transform: uppercase;
}

.tt-auth-form input {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 11px 12px;
}

.tt-auth-form small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.45;
}

.tt-auth-form .errorlist {
  margin: 0;
  padding-left: 18px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
}

.tt-auth-switch {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.tt-auth-switch a {
  color: var(--navy);
  font-weight: 850;
}

.tt-profile-check {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(21, 128, 61, 0.22);
  border-radius: 10px;
  background: rgba(232, 247, 238, 0.48);
}

.tt-profile-check input {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  accent-color: var(--green);
}

.tt-profile-check strong,
.tt-profile-check small {
  display: block;
}

.tt-profile-check strong {
  color: var(--ink);
  font-size: 13px;
}

.tt-profile-check small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-public-library {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.tt-library-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0;
  padding: 4px 0 10px;
  border-bottom: 0;
}

.tt-library-section-head h2 {
  margin: 0;
  color: var(--navy);
  font-size: 30px;
  line-height: 1.04;
  letter-spacing: 0;
}

.tt-public-graph-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  text-align: left;
  gap: 8px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-public-graph-meta span {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
  min-height: 28px;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.72);
  border: 1px solid rgba(222, 212, 195, 0.78);
}

.tt-public-invitations {
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.72);
}

.tt-public-invitations > strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
  font-size: 13px;
}

.tt-aksbel-library-main {
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.94), rgba(245, 241, 232, 0.88)),
    var(--bg);
}

.tt-library-sidebar-drawer .mobile-theorytrace-bar {
  display: none;
}

.tt-library-sidebar-drawer .sidebar-backdrop {
  position: fixed;
  inset: 0;
  z-index: 110;
  display: block;
  background: rgba(22, 27, 51, 0.36);
  backdrop-filter: blur(3px);
}

.tt-library-sidebar-drawer .sidebar-backdrop[hidden] {
  display: none;
}

.tt-library-sidebar-drawer .project-sidebar {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 120;
  width: min(var(--project-sidebar), 92vw);
  max-width: 420px;
  height: 100dvh;
  padding-top: 18px;
  border-left: 1px solid rgba(214, 203, 184, 0.92);
  transform: translateX(100%);
  transition: transform 180ms ease;
  box-shadow: -24px 0 70px rgba(22, 27, 51, 0.18);
}

.tt-library-sidebar-drawer .project-sidebar.open {
  transform: translateX(0);
}

body.sidebar-open:has(.tt-library-sidebar-drawer) {
  overflow: hidden;
}

.tt-library-sidebar-drawer .sidebar-close-button {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(222, 212, 195, 0.9);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.92);
  color: var(--ink);
  cursor: pointer;
}

.tt-library-sidebar-drawer .project-sidebar .brand {
  padding-right: 42px;
}

.tt-library-sidebar-drawer .sidebar-resize-handle {
  display: none;
}

.tt-library-tree-fab {
  position: relative;
  width: 34px;
  height: 34px;
  min-height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(184, 121, 13, 0.22);
  border-radius: 999px;
  background: #fffaf0;
  color: #9f690b;
  padding: 0;
  cursor: pointer;
  box-shadow: 0 5px 15px rgba(92, 61, 8, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  transition: background 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.tt-library-tree-fab:hover,
.tt-library-tree-fab:focus-visible {
  border-color: rgba(164, 103, 4, 0.42);
  background: #fff2c4;
  transform: translateY(-1px);
  box-shadow: 0 7px 18px rgba(92, 61, 8, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.tt-library-tree-fab[aria-expanded="true"] {
  border-color: #b8790d;
  background: #9f690b;
  color: #fff6d8;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(112, 68, 5, 0.22);
}

.tt-library-tree-fab .mobile-tree-icon {
  width: 20px;
  height: 20px;
}

.tt-library-tree-profile-fab {
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  max-width: 34px;
  max-height: 34px;
  overflow: hidden;
  border-color: rgba(22, 31, 48, 0.1);
  border-radius: 999px;
  background: transparent;
  color: #fffaf0;
  line-height: 1;
  box-shadow: 0 5px 16px rgba(22, 27, 51, 0.14);
}

.tt-library-top-actions .tt-library-tree-profile-fab {
  inline-size: 34px;
  block-size: 34px;
  flex: 0 0 34px;
}

.tt-library-tree-profile-avatar {
  box-sizing: border-box;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  max-width: 32px;
  max-height: 32px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 999px;
  background:
    radial-gradient(circle at 30% 24%, rgba(255, 255, 255, 0.38), transparent 36%),
    linear-gradient(135deg, #1f6f68, #d7a84e);
  color: #fffaf0;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.tt-library-top-actions .tt-library-tree-profile-fab > .tt-library-tree-profile-avatar,
.tt-library-top-actions .header-icon-button.tt-library-tree-profile-fab > .tt-library-tree-profile-avatar {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.tt-library-tree-profile-avatar img {
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  max-width: 32px;
  max-height: 32px;
  display: block;
  border-radius: 999px;
  object-fit: cover;
  aspect-ratio: 1 / 1;
}

.tt-library-top-actions .tt-library-tree-profile-fab > .tt-library-tree-profile-avatar > img,
.tt-library-top-actions .header-icon-button.tt-library-tree-profile-fab > .tt-library-tree-profile-avatar > img {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
}

.tt-aksbel-brand-label {
  justify-content: flex-start;
  min-height: 38px;
}

.tt-library-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-library-brand-mark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 1px solid rgba(161, 118, 32, 0.28);
  border-radius: 10px;
  background:
    radial-gradient(circle at 35% 26%, rgba(255, 255, 255, 0.72), transparent 34%),
    linear-gradient(135deg, var(--gold), #f4d47c);
  color: #31220a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 29px;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 8px 22px rgba(161, 118, 32, 0.18);
}

.tt-library-brand-mark-organization {
  background:
    radial-gradient(circle at 28% 24%, rgba(255, 255, 255, 0.74), transparent 34%),
    linear-gradient(135deg, #1f6f68, #e1b75f);
  color: #fffaf0;
  font-family: Inter, system-ui, sans-serif;
  font-size: 17px;
  font-weight: 900;
}

.tt-library-brand-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.tt-library-brand-copy strong {
  color: var(--navy);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.05;
}

.tt-library-brand-copy small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
}

.tt-library-top-actions {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

.tt-library-theme-toggle {
  gap: 0;
}

.tt-library-search {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 8;
  width: min(320px, calc(100vw - 36px));
  padding: 8px;
  border: 1px solid var(--border-soft);
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.96);
  box-shadow: var(--shadow-soft);
}

.tt-library-search[hidden] {
  display: none;
}

.tt-library-search input {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 9px 12px;
  background: white;
  color: var(--ink);
  font-size: 13px;
}

.tt-aksbel-library-page,
.tt-aksbel-book-form-page {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 28px 0 60px;
}

.tt-aksbel-library-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(222, 212, 195, 0.68);
}

.tt-aksbel-library-head h1 {
  margin: 2px 0;
  color: var(--navy);
  font-size: clamp(34px, 7vw, 74px);
  line-height: 0.95;
}

.tt-aksbel-library-head p {
  max-width: 620px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.tt-aksbel-library-head small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.tt-aksbel-library-side {
  display: grid;
  justify-items: end;
  gap: 10px;
  flex: 0 0 auto;
}

.tt-aksbel-field-strip {
  display: flex;
  gap: 8px;
  margin: -4px 0 18px;
  padding: 2px 0 8px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.tt-aksbel-field-strip button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  border: 1px solid rgba(118, 112, 102, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.66);
  color: var(--ink-soft);
  padding: 0 12px;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.tt-aksbel-field-action {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  border: 1px solid rgba(161, 118, 32, 0.34);
  border-radius: 999px;
  background: rgba(255, 248, 231, 0.96);
  color: #6f4b0e;
  padding: 0 13px;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.tt-aksbel-field-action:hover,
.tt-aksbel-field-action:focus-visible {
  border-color: rgba(161, 118, 32, 0.52);
  background: rgba(246, 219, 139, 0.58);
  color: #4f3407;
  text-decoration: none;
}

.tt-aksbel-field-strip button.active {
  border-color: rgba(161, 118, 32, 0.42);
  background: rgba(255, 248, 231, 0.96);
  color: #6f4b0e;
}

.tt-aksbel-field-strip span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
}

.tt-aksbel-book-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 22px;
  align-items: start;
}

.tt-aksbel-library-more {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: center;
  margin-top: 26px;
}

.tt-aksbel-library-more-note {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.tt-aksbel-library-search-status {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
  text-align: center;
}

.tt-aksbel-library-more .tt-btn:disabled {
  cursor: wait;
  opacity: 0.68;
  transform: none;
}

.tt-aksbel-book-card {
  position: relative;
  contain-intrinsic-size: 330px 500px;
  content-visibility: auto;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-aksbel-library-empty {
  margin-top: 28px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.tt-aksbel-library-empty h2 {
  font-size: 20px;
  line-height: 1.2;
}

.tt-aksbel-library-empty p {
  max-width: 520px;
  margin: 8px 0 0;
}

.tt-organization-books-paper {
  max-width: 900px;
}

.tt-organization-books-actions {
  margin: 14px 0 22px;
}

.tt-organization-book-list {
  display: grid;
  gap: 4px;
}

.tt-organization-book-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(22, 31, 48, 0.08);
}

.tt-organization-book-title {
  display: grid;
  gap: 3px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-organization-book-title strong {
  color: var(--ink);
  font-size: 14px;
  font-weight: 850;
  line-height: 1.25;
}

.tt-organization-book-title span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.tt-book-toggle-button {
  min-height: 34px;
  border: 1px solid rgba(161, 118, 32, 0.28);
  border-radius: 999px;
  background: rgba(255, 248, 231, 0.96);
  color: #6f4b0e;
  padding: 0 16px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.tt-book-toggle-button.is-added {
  border-color: rgba(33, 126, 87, 0.24);
  background: rgba(226, 246, 236, 0.92);
  color: #1c6a49;
}

@media (max-width: 720px) {
  .tt-organization-book-row {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .tt-organization-book-row form,
  .tt-book-toggle-button {
    width: 100%;
  }
}

.tt-aksbel-cover-canvas {
  width: 100%;
  aspect-ratio: 2 / 3;
  display: block;
  border-radius: 8px;
  background: #060810;
  box-shadow: 0 18px 36px rgba(22, 27, 51, 0.22), 0 0 0 1px rgba(22, 27, 51, 0.08);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.tt-aksbel-book-card:hover .tt-aksbel-cover-canvas {
  transform: translateY(-4px);
  box-shadow: 0 24px 48px rgba(22, 27, 51, 0.28), 0 0 0 1px rgba(22, 27, 51, 0.1);
}

.tt-aksbel-open-book-badge {
  position: absolute;
  top: 7px;
  right: 7px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 16px;
  max-width: calc(100% - 14px);
  padding: 0 5px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 999px;
  background: rgba(21, 128, 61, 0.9);
  color: #ffffff;
  font-size: 7px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
  box-shadow: 0 5px 11px rgba(0, 0, 0, 0.2);
  pointer-events: none;
}

.tt-aksbel-book-meta {
  display: grid;
  gap: 5px;
  margin-top: 10px;
}

.tt-aksbel-book-meta strong {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.25;
}

.tt-aksbel-book-meta small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.tt-aksbel-new-book-card {
  aspect-ratio: 2 / 3;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 10px;
  padding: 22px;
  border: 1px dashed rgba(161, 118, 32, 0.45);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.7);
  text-align: center;
  transition: transform 180ms ease, background 180ms ease;
}

.tt-aksbel-new-book-card:hover {
  transform: translateY(-3px);
  background: rgba(255, 248, 231, 0.9);
}

.tt-aksbel-new-book-plus {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--gold), #f6d97b);
  color: #33230a;
  font-size: 34px;
  line-height: 1;
  font-weight: 500;
}

.tt-aksbel-new-book-card strong {
  color: var(--navy);
  font-size: 18px;
}

.tt-aksbel-new-book-card small {
  max-width: 220px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.tt-aksbel-grid-create-card {
  grid-column: -2 / -1;
  grid-row: 1;
  width: 100%;
  box-sizing: border-box;
}

.tt-aksbel-book-form {
  display: grid;
  gap: 14px;
  width: min(720px, 100%);
  padding: 20px;
  border: 1px solid var(--border-soft);
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.74);
}

.tt-aksbel-book-form label {
  display: grid;
  gap: 6px;
}

.tt-aksbel-book-form label > span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
}

.tt-aksbel-book-form input,
.tt-aksbel-book-form textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  color: var(--ink);
  padding: 10px 12px;
}

.tt-aksbel-book-form .error,
.tt-form-errors {
  color: var(--red);
  font-size: 12px;
}

.tt-aksbel-generation-overlay {
  position: fixed;
  inset: 0;
  z-index: 240;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(8, 8, 16, 0.54);
  backdrop-filter: blur(14px);
}

.tt-aksbel-generation-overlay[hidden] {
  display: none;
}

.tt-aksbel-generation-panel {
  width: min(420px, calc(100vw - 28px));
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 24px;
  border-radius: 14px;
  background: var(--paper);
  box-shadow: 0 30px 90px rgba(22, 27, 51, 0.28);
  text-align: center;
}

.tt-aksbel-generation-panel h2 {
  margin: 0;
  color: var(--navy);
  font-size: 24px;
}

.tt-aksbel-generation-panel p {
  margin: 0;
  color: var(--ink);
  font-size: 14px;
  font-weight: 800;
}

.tt-aksbel-generation-panel small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

html.tt-reader-dark .tt-aksbel-generation-overlay,
body.tt-reader-dark .tt-aksbel-generation-overlay {
  background: rgba(5, 6, 5, 0.62);
}

html.tt-reader-dark .tt-aksbel-generation-panel,
body.tt-reader-dark .tt-aksbel-generation-panel {
  border: 1px solid rgba(215, 168, 78, 0.18);
  background:
    linear-gradient(180deg, rgba(27, 28, 24, 0.98), rgba(18, 19, 16, 0.98));
  color: var(--ink);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.54);
}

html.tt-reader-dark .tt-aksbel-generation-panel h2,
body.tt-reader-dark .tt-aksbel-generation-panel h2 {
  color: var(--gold);
}

html.tt-reader-dark .tt-aksbel-generation-panel p,
body.tt-reader-dark .tt-aksbel-generation-panel p {
  color: var(--ink);
}

html.tt-reader-dark .tt-aksbel-generation-panel small,
body.tt-reader-dark .tt-aksbel-generation-panel small {
  color: rgba(222, 212, 194, 0.72);
}

.tt-aksbel-similar-list {
  display: grid;
  gap: 10px;
  width: min(820px, 100%);
  margin-bottom: 18px;
}

.tt-aksbel-request-review {
  width: min(820px, 100%);
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}

.tt-aksbel-request-review section,
.tt-aksbel-quota-note {
  border: 1px solid rgba(222, 212, 195, 0.82);
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.72);
  padding: 14px;
  box-shadow: 0 10px 28px rgba(45, 35, 20, 0.06);
}

.tt-aksbel-request-review h2 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 15px;
}

.tt-aksbel-request-review dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.tt-aksbel-request-review dl div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.tt-aksbel-request-review dl div.wide {
  grid-column: 1 / -1;
}

.tt-aksbel-request-review dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.tt-aksbel-request-review dd {
  margin: 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.tt-aksbel-quota-note {
  display: grid;
  gap: 4px;
  border-color: rgba(201, 150, 58, 0.34);
  background: rgba(255, 243, 206, 0.52);
}

.tt-aksbel-quota-note strong {
  color: #5f4108;
  font-size: 13px;
}

.tt-aksbel-quota-note span {
  color: #7a5b1d;
  font-size: 12px;
  line-height: 1.45;
}

.tt-aksbel-similar-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border: 1px solid rgba(222, 212, 195, 0.86);
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.78);
  box-shadow: 0 10px 30px rgba(45, 35, 20, 0.06);
}

.tt-aksbel-similar-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.tt-aksbel-similar-head em {
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--green-soft);
  color: var(--green);
  padding: 4px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.tt-aksbel-similar-row strong,
.tt-aksbel-confirm-summary strong {
  display: block;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.25;
}

.tt-aksbel-similar-row span,
.tt-aksbel-confirm-summary span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.tt-aksbel-similar-row p {
  margin: 5px 0 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.35;
}

.tt-aksbel-similar-row a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--navy);
  color: white;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.tt-aksbel-confirm-form {
  width: min(820px, 100%);
  border: 1px solid rgba(222, 212, 195, 0.86);
  border-radius: 12px;
  background: rgba(255, 253, 248, 0.72);
  padding: 14px;
}

.tt-aksbel-confirm-summary {
  display: grid;
  gap: 2px;
  padding-bottom: 4px;
}

.tt-aksbel-confirm-actions,
.tt-aksbel-status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

@media (max-width: 640px) {
  .tt-aksbel-request-review dl {
    grid-template-columns: 1fr;
  }

  .tt-aksbel-similar-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .tt-aksbel-similar-head {
    flex-direction: column;
    gap: 6px;
  }

  .tt-aksbel-similar-head em {
    justify-self: start;
    width: fit-content;
  }

  .tt-aksbel-similar-row a {
    width: 100%;
  }
}

.tt-aksbel-status-card {
  width: min(620px, 100%);
  min-height: min(520px, calc(100dvh - 170px));
  margin: 0 auto;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 14px;
  padding: 26px 16px;
  border: 0;
  background: transparent;
  text-align: center;
}

.tt-aksbel-status-card h1 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(28px, 5vw, 46px);
  line-height: 1;
}

.tt-aksbel-status-card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.5;
}

.tt-aksbel-status-card small {
  color: var(--muted);
  font-size: 12px;
}

.tt-aksbel-status-steps {
  display: grid;
  gap: 9px;
  margin: 4px auto 0;
  padding: 0;
  list-style: none;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
  text-align: left;
}

.tt-aksbel-status-steps li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tt-aksbel-status-steps span {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 999px;
  background: var(--gold);
  box-shadow: 0 0 0 0 rgba(201, 168, 76, 0.34);
  animation: tt-status-step-pulse 1.8s ease-in-out infinite;
}

.tt-aksbel-status-steps li:nth-child(2) span {
  animation-delay: 0.18s;
}

.tt-aksbel-status-steps li:nth-child(3) span {
  animation-delay: 0.36s;
}

.tt-aksbel-status-steps li:nth-child(4) span {
  animation-delay: 0.54s;
}

.tt-aksbel-status-steps li:nth-child(5) span {
  animation-delay: 0.72s;
}

@keyframes tt-status-step-pulse {
  0%,
  100% {
    opacity: 0.45;
    transform: scale(0.82);
    box-shadow: 0 0 0 0 rgba(201, 168, 76, 0.22);
  }

  45% {
    opacity: 1;
    transform: scale(1);
    box-shadow: 0 0 0 8px rgba(201, 168, 76, 0);
  }
}

.tt-aksbel-doc-cover {
  display: grid;
  align-content: end;
  min-height: 560px;
  margin: -8px 0 28px;
  padding: 36px;
  border-radius: 8px;
  background:
    radial-gradient(circle at 42% 28%, color-mix(in srgb, var(--aksbel-cover-color, #5dcaa5) 32%, transparent), transparent 38%),
    linear-gradient(180deg, #060810, #0f111b);
  color: #f2ece2;
  box-shadow: inset 5px 0 0 var(--aksbel-cover-color, #5dcaa5);
}

.tt-aksbel-doc-cover.cover-color-0 {
  --aksbel-cover-color: #5dcaa5;
}

.tt-aksbel-doc-cover.cover-color-1 {
  --aksbel-cover-color: #7f77dd;
}

.tt-aksbel-doc-cover.cover-color-2 {
  --aksbel-cover-color: #d85a30;
}

.tt-aksbel-doc-cover.cover-color-3 {
  --aksbel-cover-color: #378add;
}

.tt-aksbel-doc-cover.cover-color-4 {
  --aksbel-cover-color: #ef9f27;
}

.tt-aksbel-doc-cover.cover-color-5 {
  --aksbel-cover-color: #c9a84c;
}

.tt-aksbel-doc-cover.cover-color-6 {
  --aksbel-cover-color: #a51c30;
}

.tt-aksbel-doc-cover.cover-color-7 {
  --aksbel-cover-color: #2f9d7e;
}

.tt-aksbel-doc-cover.cover-color-8 {
  --aksbel-cover-color: #5b8def;
}

.tt-aksbel-doc-cover.cover-color-9 {
  --aksbel-cover-color: #b85aa1;
}

.tt-aksbel-doc-cover span {
  color: var(--aksbel-cover-color, #5dcaa5);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.tt-aksbel-doc-cover h1 {
  max-width: 760px;
  margin: 8px 0 10px;
  color: #f2ece2;
  font-size: clamp(42px, 9vw, 88px);
  line-height: 0.95;
}

.tt-aksbel-doc-cover p {
  max-width: 640px;
  margin: 0;
  color: rgba(210, 225, 235, 0.78);
  font-size: 20px;
  line-height: 1.25;
}

.tt-aksbel-doc-cover small {
  margin-top: 34px;
  color: rgba(210, 225, 235, 0.48);
  font-size: 12px;
}

.tt-aksbel-cover-shell {
  grid-template-columns: minmax(0, 1fr);
  background: #060810;
}

.tt-aksbel-cover-shell + .tt-site-rights {
  display: none;
}

.main-area-aksbel-cover,
.main-area.main-area-aksbel-cover {
  min-height: 100vh;
  padding: 0;
  overflow: auto;
  background: #060810;
}

.tt-aksbel-cover-page {
  position: relative;
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 20px;
  background: #060810;
}

.tt-aksbel-doc-cover-wrap {
  position: relative;
  width: min(66.666vh, calc(100vw - 40px));
}

.tt-aksbel-doc-cover-canvas {
  width: 100%;
  height: auto;
  max-height: calc(100vh - 40px);
  border-radius: 0;
  background: #161b33;
  box-shadow:
    0 50px 120px rgba(0, 0, 0, 0.55),
    0 0 0 1px rgba(255, 255, 255, 0.08);
}

.tt-aksbel-cover-open-book-badge {
  top: 13px;
  right: 13px;
  min-height: 25px;
  padding: 0 9px;
  font-size: 10px;
  box-shadow: 0 9px 22px rgba(0, 0, 0, 0.24);
}

.tt-aksbel-cover-page .tt-aksbel-doc-cover {
  min-height: 100vh;
  margin: 0;
  padding: clamp(72px, 8vw, 110px) clamp(32px, 8vw, 120px) clamp(52px, 7vw, 96px);
  border-radius: 0;
  box-shadow:
    inset 8px 0 0 var(--aksbel-cover-color, #5dcaa5),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.tt-aksbel-cover-page .tt-aksbel-doc-cover h1 {
  max-width: min(980px, 92vw);
  font-size: clamp(48px, 10vw, 128px);
}

.tt-aksbel-cover-page .tt-aksbel-doc-cover p {
  max-width: min(760px, 86vw);
  font-size: clamp(18px, 2.2vw, 28px);
}

.tt-aksbel-cover-shell .tt-reader-back-shortcut {
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(8, 10, 18, 0.72);
  color: rgba(242, 236, 226, 0.9);
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.28);
}

.tt-aksbel-cover-shell .tt-reader-back-shortcut:hover,
.tt-aksbel-cover-shell .tt-reader-back-shortcut:focus-visible {
  background: rgba(18, 22, 34, 0.86);
  color: #ffffff;
}

@media (max-width: 720px) {
  .tt-aksbel-cover-page {
    padding: 54px 0 0;
    align-items: start;
  }

  .tt-aksbel-doc-cover-canvas {
    width: min(62dvh, 100vw);
    max-height: calc(100dvh - 54px);
  }

  .tt-aksbel-cover-page .tt-aksbel-doc-cover {
    min-height: 100dvh;
    padding: 82px 22px 38px;
  }

  .tt-aksbel-cover-page .tt-aksbel-doc-cover h1 {
    font-size: clamp(42px, 16vw, 74px);
  }

  .tt-aksbel-cover-page .tt-aksbel-doc-cover p {
    font-size: 17px;
  }

}

.tt-contributors-page,
.tt-project-overview {
  width: min(1040px, 100%);
}

.tt-contributor-list {
  display: grid;
  gap: 8px;
}

.tt-contributor-list-large {
  gap: 10px;
}

.tt-contributor-row {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 11px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: rgba(255, 253, 248, 0.78);
}

.tt-contributor-row strong {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: var(--ink);
  font-size: 13px;
}

.tt-contributor-row strong small {
  color: var(--green);
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.tt-contributor-row p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.tt-editor-directory-page {
  width: min(1080px, 100%);
}

.tt-public-profile-page {
  width: min(980px, 100%);
}

.tt-public-profile-hero {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding: 16px 0 20px;
  border-bottom: 1px solid var(--border-soft);
}

.tt-public-profile-avatar {
  width: 76px;
  height: 76px;
  font-size: 24px;
}

.tt-public-profile-main {
  min-width: 0;
}

.tt-public-profile-main h1 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: 0;
}

.tt-public-profile-username {
  margin: 5px 0 10px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.tt-public-profile-bio {
  max-width: 760px;
  margin: 12px 0 0;
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.65;
}

.tt-public-profile-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 18px 0;
}

.tt-public-profile-stats span {
  display: grid;
  gap: 4px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(225, 183, 95, 0.22);
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-public-profile-stats strong {
  color: var(--gold-deep);
  font-size: 24px;
  line-height: 1;
}

.tt-public-profile-section {
  padding: 4px 0 28px;
}

.tt-public-profile-section-head {
  margin-bottom: 12px;
}

.tt-public-profile-section-head h2 {
  margin: 0;
  color: var(--ink);
  font-size: 17px;
}

.tt-public-profile-section-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
}

.tt-public-profile-project-list {
  display: grid;
  gap: 8px;
}

.tt-public-profile-project-row {
  display: grid;
  gap: 4px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-soft);
  color: inherit;
  text-decoration: none;
}

.tt-public-profile-project-row strong {
  color: var(--ink);
  font-size: 14px;
}

.tt-public-profile-project-row span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.tt-public-profile-project-row:hover strong,
.tt-public-profile-project-row:focus-visible strong {
  color: var(--gold-deep);
}

.tt-editor-directory-head {
  margin-bottom: 14px;
}

.tt-editor-directory-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.tt-editor-directory-stats span {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(225, 183, 95, 0.12);
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 800;
}

.tt-editor-directory-stats strong {
  color: var(--gold-deep);
  font-size: 14px;
}

.tt-editor-directory-list {
  display: grid;
  gap: 10px;
}

.tt-editor-directory-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) minmax(210px, 0.55fr);
  align-items: start;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-editor-directory-main {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.tt-editor-directory-title {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
}

.tt-editor-directory-title strong {
  color: var(--ink);
  font-size: 15px;
}

.tt-editor-directory-title strong a {
  color: inherit;
  text-decoration: none;
}

.tt-editor-directory-title strong a:hover,
.tt-editor-directory-title strong a:focus-visible {
  color: var(--gold-deep);
}

.tt-editor-directory-title span {
  color: var(--muted);
  font-size: 12px;
}

.tt-editor-directory-roles {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.tt-editor-directory-roles span {
  border-radius: 999px;
  padding: 4px 8px;
  background: rgba(18, 24, 38, 0.06);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
}

.tt-editor-directory-roles .admin {
  background: rgba(225, 183, 95, 0.18);
  color: #7a5310;
}

.tt-editor-directory-roles .editor {
  background: rgba(93, 202, 165, 0.14);
  color: #1f6f68;
}

.tt-editor-directory-roles .verifier {
  background: rgba(55, 138, 221, 0.12);
  color: #2869a9;
}

.tt-editor-directory-bio {
  margin: 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.55;
}

.tt-editor-directory-summary {
  display: grid;
  gap: 6px;
}

.tt-editor-directory-summary span {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
}

.tt-editor-directory-summary strong {
  color: var(--ink);
}

@media (max-width: 720px) {
  .tt-public-profile-hero {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
  }

  .tt-public-profile-avatar {
    width: 54px;
    height: 54px;
    font-size: 18px;
  }

  .tt-public-profile-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tt-editor-directory-row {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .tt-editor-directory-summary {
    grid-column: 2;
  }
}

.reader-toolbar {
  position: sticky;
  top: var(--reader-toolbar-top);
  z-index: 23;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 12px 0 16px;
  margin-bottom: 30px;
  border-bottom: 1px solid var(--border-soft);
  background: rgba(255, 253, 248, 0.92);
  backdrop-filter: blur(18px);
}

.tt-reader-plan-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 16px;
  padding: 10px 12px;
  border: 1px solid rgba(201, 150, 58, 0.24);
  border-radius: 12px;
  background: rgba(255, 243, 206, 0.42);
  color: #5d400b;
}

.tt-reader-plan-notice-inline {
  position: relative;
  margin: -12px 0 18px;
  padding-right: 42px;
}

.tt-reader-plan-notice div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.tt-reader-plan-notice strong {
  font-size: 12px;
  line-height: 1.25;
}

.tt-reader-plan-notice span {
  color: #72551b;
  font-size: 11px;
  line-height: 1.35;
}

.tt-reader-plan-notice a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--navy);
  color: white;
  font-size: 11px;
  font-weight: 850;
}

.tt-reader-plan-notice-inline a {
  min-height: 28px;
}

.tt-reader-plan-notice-dismiss {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 3;
  width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgba(93, 64, 11, 0.08);
  color: currentColor;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  opacity: 0.74;
}

.tt-reader-plan-notice-dismiss:hover,
.tt-reader-plan-notice-dismiss:focus-visible {
  background: rgba(93, 64, 11, 0.14);
  opacity: 1;
  outline: none;
}

.tt-reader-plan-notice-explorer {
  border-color: rgba(52, 71, 255, 0.18);
  background: rgba(231, 234, 255, 0.54);
  color: #202c8c;
}

.tt-reader-plan-notice-explorer span {
  color: #424b91;
}

.reader-toolbar-left {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  width: 100%;
}

.tool-chip {
  border: 1px solid var(--border);
  background: var(--paper-soft);
  color: var(--ink-soft);
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.tool-chip.active {
  border-color: rgba(21, 128, 61, 0.24);
  background: var(--green-soft);
  color: var(--green);
}

.tool-chip.locked {
  cursor: default;
  color: var(--muted);
  background: var(--gray-soft);
}

.tool-chip.locked.locked-feedback {
  border-color: rgba(161, 118, 32, 0.34);
  background: rgba(255, 243, 206, 0.72);
  color: #8b5a08;
}

.tool-chip.copied {
  border-color: rgba(21, 128, 61, 0.24);
  background: var(--green-soft);
  color: var(--green);
}

.tool-chip.debunk-pass {
  border-color: rgba(21, 128, 61, 0.34);
  background: var(--green-soft);
  color: var(--green);
}

.tt-quiz-paper {
  display: grid;
  gap: 16px;
}

.tt-quiz-paper-complete {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  min-height: min(680px, calc(100svh - 32px));
  max-height: calc(100svh - 32px);
  padding-top: clamp(22px, 4svh, 36px);
  padding-bottom: clamp(22px, 4svh, 36px);
}

.tt-quiz-paper-complete .tt-quiz-score {
  flex: 0 0 auto;
}

.tt-quiz-page .reader-frame {
  padding-top: 20px;
}

.tt-quiz-page .reader-frame:has(.tt-quiz-paper-complete) {
  padding-top: 0;
}

body.tt-debunk-loading-active {
  overflow: hidden;
}

body.tt-debunk-loading-active .app-shell {
  filter: blur(1.5px);
  pointer-events: none;
  user-select: none;
}

.tt-debunk-loading-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  min-height: 100svh;
  padding:
    max(16px, env(safe-area-inset-top))
    max(16px, env(safe-area-inset-right))
    max(16px, env(safe-area-inset-bottom))
    max(16px, env(safe-area-inset-left));
  overflow-y: auto;
  overscroll-behavior: contain;
  background: rgba(21, 21, 21, 0.2);
  backdrop-filter: blur(10px);
}

.tt-debunk-loading-overlay[hidden] {
  display: none;
}

.tt-debunk-loading-panel {
  position: fixed;
  top: 50%;
  left: 50%;
  width: min(420px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  margin: 0;
  transform: translate(-50%, -50%);
  overflow-y: auto;
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 28px;
  border-radius: 20px;
  border: 1px solid rgba(222, 212, 195, 0.95);
  background: rgba(255, 253, 248, 0.96);
  box-shadow: var(--shadow);
  text-align: center;
}

.tt-debunk-loading-panel h2 {
  margin: 4px 0 0;
  font-size: 20px;
  line-height: 1.2;
}

.tt-debunk-loading-panel p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.tt-debunk-loading-panel small {
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.45;
}

html.tt-reader-dark .tt-debunk-loading-overlay,
body.tt-reader-dark .tt-debunk-loading-overlay {
  background: rgba(5, 6, 5, 0.58);
}

html.tt-reader-dark .tt-debunk-loading-panel,
body.tt-reader-dark .tt-debunk-loading-panel {
  border-color: rgba(215, 168, 78, 0.18);
  background:
    linear-gradient(180deg, rgba(27, 28, 24, 0.98), rgba(18, 19, 16, 0.98));
  color: var(--ink);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.54);
}

html.tt-reader-dark .tt-debunk-loading-panel h2,
body.tt-reader-dark .tt-debunk-loading-panel h2 {
  color: var(--gold);
}

html.tt-reader-dark .tt-debunk-loading-panel p,
body.tt-reader-dark .tt-debunk-loading-panel p {
  color: var(--muted);
}

html.tt-reader-dark .tt-debunk-loading-panel small,
body.tt-reader-dark .tt-debunk-loading-panel small {
  color: rgba(222, 212, 194, 0.72);
}

html.tt-reader-dark .tt-debunk-loading-orbit,
body.tt-reader-dark .tt-debunk-loading-orbit {
  border-color: rgba(215, 168, 78, 0.28);
}

.tt-aksbel-section-waiting {
  min-height: min(56vh, 520px);
  display: grid;
  place-items: center;
  align-content: center;
  justify-items: center;
  gap: 14px;
  padding: clamp(34px, 7vw, 78px) 18px;
  color: var(--navy);
  text-align: center;
}

.tt-aksbel-section-waiting h2 {
  margin: 2px 0 0;
  font-size: clamp(22px, 3.2vw, 34px);
  line-height: 1.12;
}

.tt-aksbel-section-waiting p {
  width: min(520px, 100%);
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.55;
}

.tt-aksbel-section-waiting small {
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.4;
}

.tt-aksbel-section-waiting .tt-aksbel-waiting-reminder {
  width: min(560px, 100%);
  color: var(--gold);
  font-size: clamp(17px, 2.4vw, 22px);
  font-weight: 850;
  line-height: 1.35;
}

.tt-aksbel-section-waiting .tt-debunk-loading-bars {
  width: min(260px, 72vw);
}

.tt-aksbel-page-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  width: fit-content;
  max-width: 100%;
  margin: 24px auto 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: none;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.tt-aksbel-page-nav-button {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid rgba(201, 150, 58, 0.42);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.78);
  color: #8b5a08;
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
  transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

.tt-aksbel-page-nav-button:hover,
.tt-aksbel-page-nav-button:focus-visible {
  border-color: rgba(201, 150, 58, 0.58);
  background: var(--gold-soft);
  color: #5a3905;
  outline: none;
}

.tt-aksbel-page-nav-button span {
  font-size: 17px;
  line-height: 1;
}

.tt-aksbel-page-nav-spacer {
  width: clamp(18px, 4vw, 44px);
  height: 1px;
  flex: 0 0 auto;
}

.tt-aksbel-page-nav-next {
  border-color: rgba(201, 150, 58, 0.54);
  background: rgba(255, 243, 206, 0.9);
  color: var(--gold);
}

.tt-aksbel-cover-page .tt-aksbel-page-nav {
  position: absolute;
  left: 50%;
  right: auto;
  bottom: 18px;
  margin: 0;
  transform: translateX(-50%);
  border: 0;
  outline: 0;
  background: none;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.tt-aksbel-cover-page .tt-aksbel-page-nav-button {
  border-color: rgba(255, 231, 166, 0.58);
  background: rgba(255, 243, 206, 0.95);
  color: #6b4306;
}

.tt-aksbel-cover-page .tt-aksbel-page-nav-next {
  border-color: rgba(255, 213, 104, 0.86);
  background: var(--gold);
  color: #ffffff;
}

.tt-debunk-loading-orbit {
  position: relative;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  border: 1px solid rgba(201, 150, 58, 0.26);
  animation: ttDebunkOrbit 1.8s linear infinite;
}

.tt-debunk-loading-orbit span {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--gold);
}

.tt-debunk-loading-orbit span:nth-child(1) {
  top: -5px;
  left: 24px;
}

.tt-debunk-loading-orbit span:nth-child(2) {
  right: 2px;
  bottom: 7px;
  background: var(--green);
}

.tt-debunk-loading-orbit span:nth-child(3) {
  left: 2px;
  bottom: 7px;
  background: var(--navy);
}

.tt-debunk-loading-bars {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin-top: 2px;
}

.tt-debunk-loading-bars span {
  height: 5px;
  border-radius: 999px;
  background: var(--gold-soft);
  overflow: hidden;
}

.tt-debunk-loading-bars span::before {
  content: "";
  display: block;
  width: 55%;
  height: 100%;
  border-radius: inherit;
  background: var(--gold);
  animation: ttDebunkPulse 1.35s ease-in-out infinite;
}

.tt-debunk-loading-bars span:nth-child(2)::before {
  animation-delay: 0.18s;
}

.tt-debunk-loading-bars span:nth-child(3)::before {
  animation-delay: 0.36s;
}

@keyframes ttDebunkOrbit {
  to {
    transform: rotate(360deg);
  }
}

@keyframes ttDebunkPulse {
  0%,
  100% {
    transform: translateX(-65%);
    opacity: 0.45;
  }
  50% {
    transform: translateX(115%);
    opacity: 1;
  }
}

.tt-quiz-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.tt-quiz-head h1 {
  margin: 0;
  font-size: 19px;
  line-height: 1.2;
  display: -webkit-box;
  max-width: 680px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.tt-quiz-page .topbar-reader,
.tt-quiz-page .reader-labels,
.tt-quiz-page .reader-label-toggle,
.tt-quiz-page .tt-search-icon {
  display: none;
}

.tt-quiz-actions,
.tt-quiz-next {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.tt-quiz-score {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  flex-wrap: wrap;
}

.tt-quiz-back-link {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  color: var(--ink-soft);
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
}

.tt-quiz-back-link:hover {
  background: var(--paper-soft);
}

.tt-quiz-score-stats {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  min-width: 0;
}

.tt-quiz-score span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-quiz-question {
  display: grid;
  gap: 10px;
  padding-top: 4px;
}

.tt-quiz-question-text {
  margin: 0;
  font-size: 17px;
  line-height: 1.35;
}

.tt-quiz-question-text [data-block-id="block-1"] {
  font-size: 0.94em;
}

.tt-quiz-markdown :is(p, ul, ol, blockquote) {
  margin: 0;
  line-height: 1.55;
}

.tt-quiz-markdown :is(p, ul, ol, blockquote) + :is(p, ul, ol, blockquote, table) {
  margin-top: 8px;
}

.tt-quiz-markdown :is(ul, ol) {
  padding-left: 22px;
}

.tt-quiz-markdown .tt-raw-math {
  white-space: normal;
}

.tt-quiz-markdown .katex-display {
  margin: 8px 0;
  overflow-x: auto;
  overflow-y: hidden;
}

.tt-quiz-form {
  display: grid;
  gap: 10px;
}

.tt-quiz-choice {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: rgba(255, 253, 248, 0.88);
  color: var(--ink);
  padding: 13px 14px;
  text-align: left;
  cursor: pointer;
}

.tt-quiz-choice:hover {
  border-color: rgba(179, 129, 39, 0.45);
  background: rgba(255, 248, 231, 0.9);
}

.tt-quiz-choice:disabled {
  cursor: default;
}

.tt-quiz-choice-index {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--paper-soft);
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.tt-quiz-choice-text {
  font-size: 14px;
  line-height: 1.45;
  min-width: 0;
}

.tt-quiz-choice.correct {
  border-color: rgba(21, 128, 61, 0.35);
  background: var(--green-soft);
}

.tt-quiz-choice.correct .tt-quiz-choice-index {
  background: var(--green);
  color: white;
}

.tt-quiz-choice.incorrect {
  border-color: rgba(185, 28, 28, 0.3);
  background: rgba(254, 242, 242, 0.92);
}

.tt-quiz-choice.incorrect .tt-quiz-choice-index {
  background: var(--red);
  color: white;
}

.tt-quiz-choice.selected {
  box-shadow: inset 0 0 0 2px rgba(39, 39, 42, 0.08);
}

.tt-quiz-result,
.tt-quiz-empty {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-radius: 12px;
  background: var(--paper-soft);
  color: var(--ink-soft);
}

.tt-quiz-result.correct {
  background: var(--green-soft);
}

.tt-quiz-result.correct {
  font-size: 13px;
}

.tt-quiz-result.correct strong {
  font-size: 14px;
}

.tt-quiz-result.incorrect {
  background: rgba(254, 242, 242, 0.92);
}

.tt-quiz-result.incorrect {
  font-size: 13px;
}

.tt-quiz-result.incorrect strong {
  font-size: 14px;
}

.tt-quiz-result strong,
.tt-quiz-empty h2 {
  margin: 0;
  font-size: 15px;
}

.tt-quiz-result-label,
.tt-quiz-result .tt-quiz-markdown,
.tt-quiz-empty p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.tt-quiz-result-answer {
  color: var(--ink);
  font-weight: 800;
}

.tt-quiz-complete {
  justify-items: center;
  gap: 12px;
  margin-top: auto;
  min-height: min(50svh, 496px);
  padding: 32px 18px;
  text-align: center;
  align-content: center;
}

.tt-quiz-result.tt-quiz-complete > strong {
  font-size: 18px;
}

.tt-quiz-complete-score {
  display: grid;
  justify-items: center;
  gap: 4px;
  color: var(--ink);
}

.tt-quiz-result.tt-quiz-complete .tt-quiz-complete-score strong {
  font-size: clamp(92px, 20vw, 220px);
  line-height: 0.95;
  letter-spacing: 0;
}

.tt-quiz-complete-score span {
  color: var(--ink-soft);
  font-size: clamp(16px, 2.4vw, 24px);
  font-weight: 800;
}

.tt-quiz-paper-complete .tt-quiz-next {
  justify-content: center;
  margin-top: 8px;
  margin-bottom: auto;
}

.tt-quiz-history,
.tt-quiz-document-list {
  display: grid;
  gap: 10px;
}

.tt-quiz-history.compact {
  margin-top: 8px;
}

.tt-quiz-history.compact > h2 {
  margin: 0 0 4px;
  font-size: 16px;
}

.tt-quiz-history-row,
.tt-quiz-document-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid var(--border-soft);
}

.tt-quiz-history-row {
  color: inherit;
  text-decoration: none;
}

.tt-quiz-history-row:hover {
  background: rgba(255, 248, 231, 0.56);
}

.tt-quiz-history-row:target,
.tt-quiz-history-row.tt-quiz-history-return-focus {
  background: rgba(255, 243, 206, 0.86);
  box-shadow: inset 3px 0 0 var(--gold);
}

.tt-quiz-document-row {
  color: inherit;
  text-decoration: none;
}

.tt-quiz-history-question,
.tt-quiz-history-row h3 {
  margin: 6px 0 4px;
  font-size: 15px;
  line-height: 1.35;
}

.tt-quiz-history-answer,
.tt-quiz-document-row span {
  display: block;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.tt-quiz-history-answer strong {
  display: block;
  margin: 7px 0 3px;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.tt-quiz-history-row time,
.tt-quiz-document-row em {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.tt-quiz-history-row span.correct,
.tt-quiz-history-row span.incorrect {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
}

.tt-quiz-history-row span.correct {
  background: var(--green-soft);
  color: var(--green);
}

.tt-quiz-history-row span.incorrect {
  background: rgba(254, 242, 242, 0.92);
  color: var(--red);
}

.status-toggle-form {
  display: inline-flex;
  margin: 0;
}

.tt-status-confirmation[hidden] {
  display: none;
}

.tt-status-confirmation {
  position: fixed;
  z-index: 180;
  width: min(320px, calc(100vw - 24px));
  padding: 13px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--paper);
  color: var(--ink);
  box-shadow: 0 16px 42px rgba(45, 35, 20, 0.2);
}

.tt-status-confirmation strong {
  display: block;
  font-size: 13px;
  line-height: 1.3;
}

.tt-status-confirmation p {
  margin: 5px 0 0;
  color: var(--ink-soft);
  font-size: 12px;
  line-height: 1.45;
}

.tt-status-confirmation-actions {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  margin-top: 11px;
}

.tt-status-confirmation-button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: transparent;
  color: var(--ink-soft);
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
}

.tt-status-confirmation-button:hover,
.tt-status-confirmation-button:focus-visible {
  border-color: var(--gold);
  background: var(--gold-soft);
  color: var(--ink);
  outline: none;
}

.tt-status-confirmation-button.primary {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--paper);
}

.tt-status-confirmation-button.primary:hover,
.tt-status-confirmation-button.primary:focus-visible {
  border-color: var(--navy-2);
  background: var(--navy-2);
  color: var(--paper);
}

body.tt-reader-dark .tt-status-confirmation {
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.46);
}

.document-search {
  position: relative;
  display: inline-flex;
  margin-left: auto;
}

.reader-label-main > .document-search,
.reader-label-actions .document-search {
  flex: 0 0 auto;
  margin-left: 0;
}

.topbar-document-search .search-trigger {
  min-height: 34px;
  padding: 0 11px;
}

.search-trigger {
  min-width: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.search-trigger span {
  font-size: 18px;
  line-height: 1;
}

.document-search.open .search-trigger {
  border-color: rgba(52, 71, 255, 0.24);
  background: var(--blue-soft);
  color: var(--blue);
}

.document-search-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 60;
  display: grid;
  width: min(430px, calc(100vw - 36px));
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: var(--paper);
  box-shadow: var(--shadow-soft);
}

.document-search-panel[hidden] {
  display: none;
}

.tt-search-icon {
  position: relative;
  display: block;
  width: 14px;
  height: 14px;
}

.tt-search-icon::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 1px;
  width: 8px;
  height: 8px;
  border: 1.8px solid currentColor;
  border-radius: 999px;
}

.tt-search-icon::after {
  content: "";
  position: absolute;
  right: 1px;
  bottom: 1px;
  width: 6px;
  height: 1.8px;
  border-radius: 999px;
  background: currentColor;
  transform: rotate(45deg);
  transform-origin: center;
}

.document-search-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 6px;
  padding: 4px;
  border: 1px solid var(--border-soft);
  border-radius: 999px;
  background: var(--paper-soft);
}

.document-search-field input {
  width: 100%;
  min-height: 32px;
  border: 0;
  border-radius: 999px;
  padding: 6px 8px;
  background: transparent;
  color: var(--ink);
  font-size: 13px;
  outline: none;
}

.document-search-field:focus-within {
  border-color: rgba(52, 71, 255, 0.34);
  box-shadow: 0 0 0 3px rgba(52, 71, 255, 0.10);
}

.document-search-field button {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: var(--navy);
  color: white;
  cursor: pointer;
  font-size: 16px;
  line-height: 1;
}

.document-search-results {
  display: grid;
  gap: 4px;
  max-height: 320px;
  margin-top: 8px;
  overflow-y: auto;
}

.search-result {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr);
  gap: 4px;
  column-gap: 8px;
  padding: 9px 8px;
  border-radius: 10px;
}

.search-result:hover {
  background: var(--paper-soft);
}

.search-result-head {
  display: flex;
  align-items: center;
  gap: 7px;
  grid-column: 2;
  min-width: 0;
  color: var(--ink);
  font-size: 12px;
}

.search-result-dot {
  grid-row: 1 / span 2;
  width: 6px;
  height: 6px;
  margin-top: 7px;
  border-radius: 999px;
  background: var(--gold);
}

.search-result-head strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-result-number {
  flex: 0 0 auto;
  min-width: 24px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-align: right;
}

.search-result-snippet,
.search-result-project,
.document-search-empty {
  display: block;
  grid-column: 2;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.search-result-project {
  font-size: 11px;
  line-height: 1.3;
}

.tt-search-result-hit {
  padding: 0 2px;
  border-radius: 4px;
  background: rgba(255, 215, 107, 0.55);
  color: inherit;
}

.document-search-empty {
  padding: 10px 8px;
}

.parent-back-chip {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  font-size: 12px;
  line-height: 1;
}

.parent-back-arrow {
  font-size: 21px;
  line-height: 0.8;
  transform: translateY(-1px);
}

.article {
  --tt-line-number-gap: 12px;
  counter-reset: block;
  font-family: "Source Serif 4", Georgia, serif;
  color: var(--tt-reader-text-color, var(--ink));
  font-size: var(--tt-reader-text-size, 19px);
  line-height: var(--tt-reader-line-height, 1.82);
}

.article h1,
.article h2,
.article h3,
.article h4 {
  font-family: Inter, system-ui, sans-serif;
  margin: 44px 0 14px;
  color: var(--tt-reader-heading-color, var(--navy));
  line-height: 1.18;
  letter-spacing: 0;
}

.article h1 { font-size: var(--tt-reader-h1-size, 30px); }
.article h2 { font-size: var(--tt-reader-h2-size, 26px); }
.article h3 { font-size: var(--tt-reader-h3-size, 24px); }
.article h4 { font-size: var(--tt-reader-h4-size, 20px); }

.article p,
.article li,
.article [data-block-id],
.equation-block {
  position: relative;
}

.article [data-block-id]::before {
  counter-increment: block;
  content: counter(block);
  position: absolute;
  left: auto;
  right: calc(100% + var(--tt-line-number-gap));
  top: 3px;
  width: 24px;
  font-family: Inter, sans-serif;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  text-align: right;
  color: var(--muted-2);
  opacity: 0.65;
  pointer-events: none;
}

.article :is(ul, ol) [data-block-id]::before {
  right: calc(100% + var(--tt-line-number-gap) + 28px);
}

.article :is(ul, ol) :is(ul, ol) [data-block-id]::before {
  right: calc(100% + var(--tt-line-number-gap) + 56px);
}

.article :is(ul, ol) :is(ul, ol) :is(ul, ol) [data-block-id]::before {
  right: calc(100% + var(--tt-line-number-gap) + 84px);
}

.article :is(ul, ol) :is(ul, ol) :is(ul, ol) :is(ul, ol) [data-block-id]::before {
  right: calc(100% + var(--tt-line-number-gap) + 112px);
}

.article li[data-block-id]:has(> p)::before,
.article blockquote[data-block-id]::before,
.article [data-block-equation="true"]::before,
.article [data-block-empty="true"]::before,
.article [data-block-id]:empty::before,
.article [data-block-id]:has(> br:only-child)::before {
  counter-increment: none;
  content: none;
}

.article,
.article * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: text;
  user-select: text;
}

body.tt-document-right-dragging .main-area,
body.tt-document-right-dragging .main-area .reader-paper,
body.tt-document-right-dragging .main-area .article,
body.tt-document-right-dragging .main-area .article * {
  cursor: grabbing !important;
}

body.tt-document-right-dragging .main-area .reader-paper,
body.tt-document-right-dragging .main-area .article,
body.tt-document-right-dragging .main-area .article * {
  -webkit-user-select: none;
  user-select: none;
}

.article::selection,
.article *::selection {
  background: rgba(255, 216, 105, 0.5);
  color: var(--ink);
  text-shadow: none;
}

.article mark:not(.tt-read-mark):not(.tt-text-report-mark) {
  border-radius: 4px;
  background: rgba(255, 216, 105, 0.42);
  color: inherit;
  padding: 0 0.12em;
}

.article p {
  margin: 0 0 22px;
}

.article ul,
.article ol {
  padding-left: 24px;
  margin: 10px 0 18px;
}

.article li {
  margin-bottom: 4px;
  padding-left: 3px;
}

.article li > p {
  margin: 0 0 6px;
}

.article li > p:last-child {
  margin-bottom: 0;
}

.article li > :is(ul, ol) {
  margin-top: 6px;
  margin-bottom: 8px;
}

.article blockquote {
  margin: 34px 0;
  padding: 18px 20px;
  border-left: 4px solid var(--gold);
  border-radius: 0 18px 18px 0;
  background: var(--gold-soft);
  font-family: Inter, sans-serif;
  font-size: 14px;
  line-height: 1.65;
  color: #4d3711;
}

.article pre {
  margin: 28px 0;
  border-radius: 18px;
  background: #161b33;
  color: #f7f4ee;
  overflow: auto;
  box-shadow: 0 18px 44px rgba(22, 27, 51, 0.16);
  font-family: "JetBrains Mono", monospace;
  font-size: 13px;
  line-height: 1.75;
  padding: 18px 20px 22px;
}

.article code {
  font-family: "JetBrains Mono", monospace;
}

.article :not(pre) > code {
  padding: 2px 5px;
  border-radius: 6px;
  background: #f2eadb;
}

.article table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--border);
  border-radius: 8px;
  border-spacing: 0;
  border-collapse: separate;
  margin: 24px 0;
  background: rgba(255, 253, 248, 0.92);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.55;
}

.article thead {
  background: rgba(245, 241, 232, 0.9);
}

.article th,
.article td {
  min-width: 128px;
  padding: 10px 12px;
  border: 0;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.article th {
  color: var(--ink);
  font-weight: 700;
}

.article tr:last-child td {
  border-bottom: 0;
}

.article th:last-child,
.article td:last-child {
  border-right: 0;
}

.equation-block,
.katex-display {
  margin: 30px 0;
  padding: 20px 24px;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(245, 241, 232, 0.68), rgba(255, 253, 248, 0.8));
  border: 1px solid var(--border-soft);
  overflow-x: auto;
  text-align: center;
  font-size: 18px;
}

.katex-display {
  position: relative;
  overflow: hidden;
}

.article .katex-display .tt-equation-scroll {
  display: block;
  min-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding-left: 3em;
  padding-right: 5em;
  box-sizing: border-box;
  scrollbar-width: thin;
}

.article .katex-display .tt-equation-scroll > .katex,
.article .katex-display > .katex {
  display: inline-block;
  width: max-content;
  min-width: 100%;
  max-width: none;
  white-space: nowrap;
}

.article .katex-display .tt-equation-scroll > .katex > .katex-html,
.article .katex-display > .katex > .katex-html {
  display: block;
  position: relative;
  box-sizing: border-box;
  width: max-content;
  min-width: 100%;
  max-width: none;
  white-space: nowrap;
}

.article .katex-display .tt-equation-scroll > .katex > .katex-html > .base,
.article .katex-display > .katex > .katex-html > .base {
  white-space: nowrap;
}

.article .katex-display .tag {
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.1em;
  min-height: 2.1em;
  margin-left: 1.5em;
  padding: 0.12em 0.55em;
  border: 1px solid rgba(197, 185, 159, 0.78);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 6px 18px rgba(22, 27, 51, 0.1);
  box-sizing: border-box;
  color: var(--ink);
  white-space: nowrap;
}

.article .katex-display > .tt-equation-page-tag {
  position: absolute !important;
  top: 50%;
  right: 24px;
  transform: translateY(-50%) !important;
}

.anchor-highlight,
.tt-anchor-highlight {
  --tt-anchor-highlight-bg: var(--highlight);
  --tt-anchor-highlight-ring: rgba(255, 241, 168, 0.42);
  --tt-anchor-badge-bg: var(--navy);
  --tt-anchor-badge-fg: #ffffff;
  --tt-anchor-badge-border: transparent;
  --tt-anchor-badge-shadow: rgba(22, 27, 51, 0.2);
  position: relative;
  background: linear-gradient(to bottom, transparent 46%, var(--tt-anchor-highlight-bg) 46%);
  border-radius: 4px;
  cursor: pointer;
  padding: 0 2px;
  color: inherit;
  text-decoration: none;
  scroll-margin-top: 96px;
  transition: 160ms ease;
}

.tt-anchor-highlight.tt-status-edge-read {
  --tt-anchor-highlight-bg: var(--tt-reader-read-anchor-bg, rgba(187, 247, 208, 0.72));
  --tt-anchor-highlight-ring: var(--tt-reader-read-anchor-ring, rgba(187, 247, 208, 0.32));
  background: linear-gradient(to bottom, transparent 46%, var(--tt-anchor-highlight-bg) 46%);
}

.tt-anchor-highlight.tt-status-edge-verified {
  --tt-anchor-highlight-bg: rgba(187, 247, 208, 0.9);
  --tt-anchor-highlight-ring: rgba(187, 247, 208, 0.42);
  --tt-anchor-badge-bg: var(--green);
  --tt-anchor-badge-shadow: rgba(21, 128, 61, 0.22);
  background: linear-gradient(to bottom, transparent 46%, var(--tt-anchor-highlight-bg) 46%);
}

.tt-anchor-highlight.tt-anchor-linked-document {
  --tt-anchor-link-border: rgba(37, 99, 235, 0.72);
  --tt-anchor-badge-border: var(--tt-anchor-link-border);
  border-bottom: 2px solid var(--tt-anchor-link-border);
}

.tt-anchor-highlight.tt-anchor-math {
  background: var(--tt-anchor-highlight-bg);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  box-shadow: 0 0 0 3px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-anchor-math.tt-anchor-contains-display-math:not(.tt-anchor-display-math) {
  background: linear-gradient(to bottom, transparent 46%, var(--tt-anchor-highlight-bg) 46%);
  box-shadow: none;
}

.tt-anchor-highlight.tt-anchor-linked-document.tt-anchor-math {
  box-shadow:
    0 0 0 3px var(--tt-anchor-highlight-ring),
    inset 0 0 0 1px var(--tt-anchor-link-border);
}

.tt-anchor-highlight.tt-anchor-linked-document.tt-anchor-math.tt-anchor-contains-display-math:not(.tt-anchor-display-math) {
  box-shadow: inset 0 -2px 0 var(--tt-anchor-link-border);
}

.tt-anchor-highlight.tt-anchor-math .katex,
.tt-anchor-highlight.tt-anchor-math .tt-raw-math {
  border-radius: 5px;
  background: var(--tt-anchor-highlight-bg);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.tt-anchor-highlight.tt-anchor-display-math {
  display: block;
  padding: 7px 9px;
  margin: 8px 0;
  border-radius: 18px;
  background: var(--tt-anchor-highlight-bg);
  box-shadow: 0 0 0 2px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-anchor-linked-document.tt-anchor-display-math {
  border: 1px solid var(--tt-anchor-link-border);
}

.tt-anchor-highlight.tt-anchor-display-math .tt-raw-math {
  display: block;
  background: transparent;
}

.tt-anchor-highlight.tt-anchor-display-math .katex-display {
  margin: 0;
  background: transparent;
  border-color: transparent;
}

.anchor-highlight:hover,
.tt-anchor-highlight:hover {
  background: var(--tt-anchor-highlight-bg);
  box-shadow: 0 0 0 4px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-status-edge-verified:hover {
  background: var(--tt-anchor-highlight-bg);
  box-shadow: 0 0 0 4px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-anchor-math.tt-anchor-contains-display-math:not(.tt-anchor-display-math):hover {
  background: linear-gradient(to bottom, transparent 46%, var(--tt-anchor-highlight-bg) 46%);
  box-shadow: 0 0 0 2px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-return-focus {
  box-shadow: 0 0 0 5px var(--tt-anchor-highlight-ring);
}

.tt-anchor-highlight.tt-anchor-multi {
  cursor: default;
}

.tt-anchor-badge-list {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-left: 4px;
  vertical-align: baseline;
}

.tt-anchor-badge-list .tt-anchor-badge {
  margin-left: 0;
  text-decoration: none;
  cursor: pointer;
}

.tt-anchor-badge.tt-return-focus {
  box-shadow: 0 0 0 5px var(--tt-anchor-highlight-ring), 0 8px 18px var(--tt-anchor-badge-shadow, rgba(22, 27, 51, 0.2));
}

.tt-read-mark {
  border-radius: 3px;
  background: var(--tt-reader-read-mark-bg, rgba(187, 247, 208, 0.46));
  color: inherit;
  padding: 0 1px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  scroll-margin-top: 96px;
}

@media (min-width: 901px) {
  .article .tt-read-mark:not(.tt-read-mark-display-math) {
    display: inline;
    font: inherit;
    line-height: inherit;
    vertical-align: baseline;
  }
}

.article pre .tt-read-mark {
  background: var(--tt-reader-read-mark-pre-bg, rgba(187, 247, 208, 0.24));
  color: inherit;
}

.tt-read-mark .katex,
.tt-read-mark .tt-raw-math {
  border-radius: 3px;
  background: var(--tt-reader-read-mark-math-bg, rgba(187, 247, 208, 0.12));
}

.tt-read-mark > .tt-raw-math,
.tt-read-mark .katex-display,
.tt-read-mark .tt-equation-scroll {
  background: var(--tt-reader-read-mark-soft-bg, rgba(187, 247, 208, 0.16));
}

.tt-read-mark .katex-display {
  border-color: var(--tt-reader-read-mark-border, rgba(74, 222, 128, 0.14));
}

.tt-read-mark.tt-read-mark-display-math {
  display: block;
  margin: 0;
  padding: 0;
  background: transparent;
}

.tt-read-mark + .tt-read-mark.tt-read-mark-display-math {
  margin-top: 2px;
}

.tt-read-mark.tt-read-mark-display-math > .tt-raw-math {
  display: block;
}

.tt-read-mark.tt-read-mark-display-math .katex-display {
  margin: 4px 0;
}

.article p:has(+ p > .tt-read-mark-display-math) {
  margin-bottom: 4px;
}

.article p:has(> .tt-read-mark-display-math:only-child) {
  margin: 0 0 6px;
}

@media (min-width: 901px) {
  .article .tt-read-mark + .tt-read-mark.tt-read-mark-display-math {
    margin-top: 0;
  }

  .article .tt-read-mark.tt-read-mark-display-math .katex-display {
    margin: 30px 0;
  }

  .article p:has(+ p > .tt-read-mark-display-math),
  .article p:has(> .tt-read-mark-display-math:only-child) {
    margin-bottom: 22px;
  }
}

.tt-read-mark.tt-return-focus {
  box-shadow: 0 0 0 4px var(--tt-reader-read-mark-ring, rgba(74, 222, 128, 0.18));
}

.tt-text-report-mark {
  border-radius: 4px;
  background: rgba(254, 202, 202, 0.72);
  color: inherit;
  padding: 0 2px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  scroll-margin-top: 96px;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.12);
}

.tt-text-report-mark .katex,
.tt-text-report-mark .tt-raw-math {
  border-radius: 4px;
  background: rgba(254, 202, 202, 0.66);
}

.tt-text-report-mark > .tt-raw-math,
.tt-text-report-mark .katex-display,
.tt-text-report-mark .tt-equation-scroll {
  background: rgba(254, 202, 202, 0.66);
}

.tt-text-report-mark.tt-text-report-display-math {
  display: block;
  margin: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.tt-text-report-mark.tt-text-report-display-math .katex-display {
  margin: 4px 0;
  border-color: rgba(220, 38, 38, 0.18);
}

.article pre .tt-text-report-mark {
  background: rgba(248, 113, 113, 0.24);
  color: inherit;
}

.tt-document-search-hit {
  padding: 0 2px;
  border-radius: 5px;
  background: rgba(255, 215, 107, 0.68);
  color: inherit;
  box-shadow: 0 0 0 2px rgba(255, 215, 107, 0.20);
}

.tt-document-search-hit.tt-document-search-focus {
  box-shadow: 0 0 0 5px rgba(255, 215, 107, 0.36);
}

.article [data-block-id].tt-document-search-block-hit {
  border-radius: 8px;
  box-shadow: inset 4px 0 0 rgba(201, 150, 58, 0.42);
}

.article [data-block-id].tt-document-search-block-hit.tt-document-search-focus {
  box-shadow: inset 4px 0 0 rgba(201, 150, 58, 0.62), 0 0 0 5px rgba(255, 215, 107, 0.20);
}

.article pre .tt-anchor-highlight {
  --tt-anchor-highlight-bg: rgba(255, 241, 168, 0.18);
  --tt-anchor-highlight-ring: rgba(255, 241, 168, 0.18);
  --tt-anchor-badge-bg: var(--navy);
  --tt-anchor-badge-fg: #ffffff;
  --tt-anchor-badge-shadow: rgba(0, 0, 0, 0.26);
  background: var(--tt-anchor-highlight-bg);
  color: #fff6bf;
  border-bottom: 1px solid rgba(255, 241, 168, 0.46);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.article pre .tt-anchor-highlight.tt-status-edge-read {
  --tt-anchor-highlight-bg: rgba(74, 222, 128, 0.18);
  --tt-anchor-highlight-ring: rgba(74, 222, 128, 0.14);
  color: #dcfce7;
  border-bottom-color: rgba(134, 239, 172, 0.42);
}

.article pre .tt-anchor-highlight.tt-status-edge-verified {
  --tt-anchor-highlight-bg: rgba(74, 222, 128, 0.24);
  --tt-anchor-highlight-ring: rgba(74, 222, 128, 0.18);
  --tt-anchor-badge-bg: var(--green);
  color: #dcfce7;
  border-bottom-color: rgba(134, 239, 172, 0.54);
}

.article pre .tt-anchor-highlight.tt-anchor-linked-document {
  border-bottom-color: var(--tt-anchor-link-border);
}

.article pre .tt-anchor-highlight:hover,
.article pre .tt-anchor-highlight.tt-status-edge-verified:hover {
  background: var(--tt-anchor-highlight-bg);
  box-shadow: 0 0 0 3px var(--tt-anchor-highlight-ring);
}

.anchor-badge,
.tt-anchor-badge {
  position: relative;
  z-index: 4;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 22px;
  height: 22px;
  margin-left: 4px;
  padding: 0 6px;
  transform: translateY(-2px);
  border: 1px solid var(--tt-anchor-badge-border, transparent);
  border-radius: 999px;
  background: var(--tt-anchor-badge-bg, var(--navy)) !important;
  background-color: var(--tt-anchor-badge-bg, var(--navy)) !important;
  background-image: none !important;
  background-clip: padding-box;
  color: var(--tt-anchor-badge-fg, #ffffff) !important;
  font-family: Inter, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  opacity: 1 !important;
  isolation: isolate;
  mix-blend-mode: normal;
  text-shadow: none;
  vertical-align: baseline;
  white-space: nowrap;
  box-shadow: 0 8px 18px var(--tt-anchor-badge-shadow, rgba(22, 27, 51, 0.2));
}

.article pre .tt-anchor-badge {
  border-color: rgba(255, 255, 255, 0.32);
}

.project-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 18px 16px 22px;
  border-left: 1px solid rgba(214, 203, 184, 0.92);
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.96), rgba(245, 239, 226, 0.92));
  backdrop-filter: blur(18px);
  overflow: visible;
}

.project-tree-scroll {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding-bottom: 10px;
  padding-right: 2px;
  scrollbar-width: thin;
  scrollbar-color: rgba(118, 112, 102, 0.54) transparent;
}

@media (min-width: 901px) {
  .project-tree-scroll {
    overflow-x: auto;
    overflow-y: scroll;
    scrollbar-gutter: stable;
  }

  .project-tree-scroll::-webkit-scrollbar {
    width: 11px;
    height: 11px;
  }

  .project-tree-scroll::-webkit-scrollbar-track {
    background: transparent;
  }

  .project-tree-scroll::-webkit-scrollbar-thumb {
    min-height: 42px;
    border: 3px solid transparent;
    border-radius: 999px;
    background: rgba(118, 112, 102, 0.48);
    background-clip: padding-box;
  }

  .project-tree-scroll::-webkit-scrollbar-thumb:hover {
    background: rgba(22, 27, 51, 0.45);
    background-clip: padding-box;
  }
}

.sidebar-resize-handle {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: 12;
  width: 14px;
  cursor: col-resize;
  touch-action: none;
}

.sidebar-resize-handle::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 18px;
  bottom: 18px;
  width: 2px;
  border-radius: 999px;
  background: rgba(22, 27, 51, 0.12);
  opacity: 0.34;
  transition: opacity 140ms ease, background 140ms ease, width 140ms ease;
}

.sidebar-resize-handle:hover::before,
.sidebar-resize-handle:focus-visible::before,
body.sidebar-resizing .sidebar-resize-handle::before {
  background: rgba(22, 27, 51, 0.34);
  width: 3px;
  opacity: 1;
}

body.sidebar-resizing {
  cursor: col-resize;
  user-select: none;
}

.mobile-theorytrace-bar,
.mobile-tree-button,
.tt-mobile-reader-controls,
.sidebar-backdrop,
.sidebar-close-button {
  display: none;
}

.tt-reader-back-shortcut {
  position: fixed;
  top: 14px;
  left: 14px;
  z-index: 108;
  min-height: 38px;
  display: none;
  align-items: center;
  gap: 7px;
  max-width: min(220px, calc(100vw - 28px));
  padding: 0 12px 0 10px;
  border: 1px solid rgba(222, 212, 195, 0.78);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.92);
  color: var(--ink-soft);
  box-shadow: 0 12px 30px rgba(22, 27, 51, 0.12);
  backdrop-filter: blur(16px);
  transition: transform 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.tt-reader-back-shortcut span {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
}

.tt-reader-back-shortcut strong {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-reader-back-shortcut:hover,
.tt-reader-back-shortcut:focus-visible {
  background: rgba(255, 248, 231, 0.97);
  color: var(--navy);
  box-shadow: 0 16px 36px rgba(22, 27, 51, 0.16);
  outline: none;
  transform: translateY(-1px);
}

@media (max-width: 900px) {
  .tt-reader-back-shortcut {
    display: inline-flex;
  }
}

.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 2px 16px;
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(222, 212, 195, 0.72);
}

.brand-mark {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--navy), var(--navy-2));
  color: white;
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 12px 28px rgba(22, 27, 51, 0.18);
}

.brand-text strong {
  display: block;
  font-size: 15px;
  letter-spacing: 0;
}

.brand-text span {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
}

.sidebar-profile-link {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 7px 8px;
  margin: -2px 0 16px;
  border-radius: 8px;
  color: var(--ink);
  text-decoration: none;
}

.sidebar-profile-link:hover {
  background: rgba(22, 27, 51, 0.05);
  text-decoration: none;
}

.sidebar-profile-link.sidebar-environment-menu {
  display: flex;
  align-items: center;
  gap: 4px;
  position: relative;
  padding: 0;
}

.sidebar-profile-link.sidebar-environment-menu:hover {
  background: transparent;
}

.sidebar-profile-main {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  flex: 1 1 auto;
  padding: 7px 8px;
  border-radius: 8px;
  color: var(--ink);
  text-decoration: none;
}

.sidebar-profile-main:hover {
  background: rgba(22, 27, 51, 0.05);
  text-decoration: none;
}

.sidebar-environment-toggle {
  flex: 0 0 auto;
  position: static;
}

.sidebar-profile-avatar {
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--navy);
  color: white;
  font-size: 12px;
  font-weight: 800;
  flex: 0 0 auto;
}

.sidebar-profile-avatar-organization {
  background: linear-gradient(135deg, var(--gold), #5dcaa5);
  color: #17130b;
}

.sidebar-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-profile-text {
  display: grid;
  min-width: 0;
  line-height: 1.15;
}

.sidebar-profile-text strong,
.sidebar-profile-text small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sidebar-profile-text strong {
  font-size: 12px;
}

.sidebar-profile-text small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}

.sidebar-environment-caret {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  list-style: none;
  transition: transform 0.16s ease;
}

.sidebar-environment-caret:hover {
  background: rgba(225, 183, 95, 0.14);
  color: var(--ink);
}

.sidebar-environment-caret::-webkit-details-marker {
  display: none;
}

.sidebar-environment-toggle[open] .sidebar-environment-caret span {
  display: inline-block;
  transform: rotate(180deg);
}

.sidebar-environment-panel {
  position: absolute;
  z-index: 30;
  top: calc(100% + 4px);
  left: 39px;
  right: 6px;
  display: grid;
  gap: 5px;
  margin: 0;
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--paper-soft);
  box-shadow: 0 18px 34px rgba(22, 31, 48, 0.14);
}

.sidebar-environment-panel form {
  margin: 0;
}

.sidebar-environment-group-label {
  margin: 3px 3px 1px;
  color: #6f4b0e;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.sidebar-environment-option,
.sidebar-environment-link {
  width: 100%;
  display: grid;
  gap: 1px;
  padding: 7px 8px;
  border: 1px solid var(--border-soft);
  border-radius: 7px;
  background: var(--bg);
  color: #111827;
  cursor: pointer;
  font: inherit;
  text-align: left;
  text-decoration: none;
}

.sidebar-environment-option:hover,
.sidebar-environment-option:focus-visible,
.sidebar-environment-link:hover,
.sidebar-environment-link:focus-visible {
  border-color: rgba(161, 118, 32, 0.3);
  background: #f4ead5;
  color: #111827;
  text-decoration: none;
}

.sidebar-environment-option span,
.sidebar-environment-link {
  color: #111827;
  font-size: 12px;
  font-weight: 700;
}

.sidebar-environment-option small {
  color: #4b5563;
  font-size: 10px;
}

.sidebar-environment-option.is-active {
  position: relative;
  border-color: rgba(161, 118, 32, 0.3);
  background: #f4ead5;
  color: #111827;
  padding-right: 20px;
  cursor: default;
}

.sidebar-environment-option.is-active::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--gold);
  transform: translateY(-50%);
}

.sidebar-plan-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 32px;
  border-radius: 999px;
  background: var(--gold);
  color: #211600;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}

.sidebar-plan-cta {
  width: calc(100% - 16px);
  margin: -8px 8px 16px;
  box-shadow: 0 8px 18px rgba(180, 132, 20, 0.16);
}

.sidebar-plan-button:hover {
  background: #f1bf37;
  text-decoration: none;
}

.sidebar-plan-rejected.sidebar-plan-button {
  background: var(--red-soft);
  color: var(--red);
}

.project-card {
  padding: 18px;
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, rgba(22, 27, 51, 0.97), rgba(34, 42, 81, 0.96));
  color: white;
  box-shadow: var(--shadow-soft);
  margin-bottom: 18px;
}

.project-card .eyebrow {
  color: rgba(255,255,255,0.58);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
}

.project-card h1 {
  margin: 0;
  font-size: 20px;
  line-height: 1.18;
  letter-spacing: 0;
}

.project-card p {
  margin: 10px 0 0;
  color: rgba(255,255,255,0.66);
  font-size: 13px;
  line-height: 1.5;
}

.nav-section {
  margin-top: 14px;
  overflow: visible;
}

.nav-section-public {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(222, 212, 195, 0.72);
}

.nav-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  padding: 0 4px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.tree-project,
.tree-doc-row {
  position: relative;
}

.tree-project {
  display: grid;
  gap: 3px;
}

.tree-row {
  position: relative;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 34px;
  gap: 3px;
  align-items: center;
  min-height: 36px;
}

.tree-toggle,
.tree-toggle-spacer,
.tree-menu-button {
  width: 26px;
  height: 30px;
  border: 0;
  background: transparent;
}

.tree-toggle,
.tree-menu-button {
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: var(--muted);
  cursor: pointer;
}

.tree-toggle:hover,
.tree-menu-button:hover {
  background: rgba(255, 255, 255, 0.62);
  color: var(--navy);
}

.tree-toggle span {
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid currentColor;
  transform: rotate(90deg);
  transition: transform 120ms ease;
}

.tree-project.collapsed > .tree-row .tree-toggle span,
.tree-doc-row.collapsed > .tree-row .tree-toggle span {
  transform: rotate(0deg);
}

.tree-menu-button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 120ms ease, background 140ms ease, color 140ms ease;
}

.tree-project:hover > .tree-row > .tree-menu-button,
.tree-doc-row:hover > .tree-row > .tree-menu-button,
.tree-row:hover > .tree-menu-button,
.tree-row:focus-within > .tree-menu-button,
.tree-menu-button[aria-expanded="true"] {
  opacity: 1;
  pointer-events: auto;
}

.tree-row > .tree-menu-button {
  grid-column: 3;
  position: sticky;
  right: 4px;
  z-index: 22;
  justify-self: end;
  background: rgba(255, 253, 248, 0.98);
  box-shadow: 0 0 0 5px rgba(255, 253, 248, 0.92);
}

.tree-menu-button span {
  width: 3px;
  height: 3px;
  border-radius: 999px;
  background: currentColor;
}

.tree-menu {
  position: absolute;
  top: 32px;
  right: 0;
  z-index: 180;
  min-width: 132px;
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(45, 35, 20, 0.16);
}

.tree-menu-floating {
  position: fixed;
  z-index: 500;
}

.tree-menu button,
.tree-menu a {
  width: 100%;
  min-height: 30px;
  display: flex;
  align-items: center;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--ink-soft);
  padding: 0 8px;
  font-size: 12px;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
}

.tree-menu button:hover,
.tree-menu a:hover {
  background: var(--paper-soft);
  color: var(--navy);
}

.sidebar-add-project-form {
  display: inline-flex;
  justify-content: flex-end;
  margin: 0;
}

.tree-add-button {
  min-height: 28px;
  border: 0;
  border-radius: 999px;
  background: rgba(22, 27, 51, 0.08);
  color: var(--navy);
  padding: 0 9px;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.tree-add-button:hover {
  background: var(--navy);
  color: #ffffff;
}

.sidebar-empty-state {
  padding: 7px 30px 10px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.sidebar-tree-limit-row {
  min-height: 28px;
}

.sidebar-tree-limit-note {
  display: block;
  padding: 3px 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 750;
  line-height: 1.3;
}

.tree-rename-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin: 4px 0 7px 30px;
}

.tree-rename-form[hidden] {
  display: none;
}

.tree-rename-form input {
  min-width: 0;
  height: 32px;
  border: 1px solid rgba(180, 166, 141, 0.68);
  border-radius: 8px;
  background: #ffffff;
  color: var(--ink);
  padding: 0 8px;
  font-size: 12px;
  font-weight: 650;
}

.tree-rename-form input:focus {
  border-color: rgba(22, 27, 51, 0.42);
  outline: 3px solid rgba(22, 27, 51, 0.08);
}

@media (hover: none) {
  .tree-menu-button {
    opacity: 1;
    pointer-events: auto;
  }
}

.sidebar-create-form {
  display: grid;
  margin: 4px 0 7px 28px;
}

.sidebar-create-form input {
  min-width: 0;
  height: 30px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.58);
  padding: 0 9px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 600;
}

.sidebar-create-form input::placeholder {
  color: var(--muted);
  font-weight: 500;
}

.sidebar-create-button,
.sidebar-create-wide,
.sidebar-create-form .sidebar-create-wide {
  width: 100%;
  min-height: 32px;
  padding: 6px 8px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink-soft);
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease;
}

.sidebar-create-wide,
.sidebar-create-form .sidebar-create-wide {
  display: grid;
  grid-template-columns: 28px 15px minmax(0, 1fr);
  gap: 7px;
  justify-items: start;
  text-align: left;
}

.sidebar-create-button {
  margin-bottom: 4px;
}

.sidebar-create-button:hover,
.sidebar-create-wide:hover,
.sidebar-create-form .sidebar-create-wide:hover {
  background: rgba(255, 255, 255, 0.56);
  color: var(--navy);
}

.create-tree-row {
  margin-bottom: 4px;
}

.create-icon {
  position: relative;
  flex: 0 0 auto;
}

.create-icon::after {
  content: "+";
  position: absolute;
  right: -6px;
  bottom: -5px;
  width: 12px;
  height: 12px;
  display: grid;
  place-items: center;
  border: 1px solid #c99222;
  border-radius: 999px;
  background: #fff4cf;
  color: #7a4f05;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 1px 0 rgba(111, 77, 7, 0.12);
}

.create-icon-project {
  width: 18px;
  height: 13px;
  border-radius: 4px;
  background: linear-gradient(180deg, #f6cf70, #d89c24);
  box-shadow: inset 0 -1px 0 rgba(111, 77, 7, 0.16);
}

.create-icon-project::before {
  content: "";
  position: absolute;
  left: 2px;
  top: -5px;
  width: 9px;
  height: 6px;
  border-radius: 3px 3px 0 0;
  background: #f8dc94;
}

.create-icon-document {
  width: 15px;
  height: 18px;
  border: 1.5px solid currentColor;
  border-radius: 4px;
  background: #ffffff;
}

.create-icon-document::before {
  content: "";
  position: absolute;
  top: -1.5px;
  right: -1.5px;
  width: 6px;
  height: 6px;
  border-left: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  border-radius: 0 4px 0 2px;
  background: var(--paper);
}

.doc-list {
  display: grid;
  gap: 4px;
}

.doc-item,
.project-item {
  position: relative;
  display: grid;
  grid-template-columns: 28px 15px minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  min-height: 32px;
  padding: 6px 8px;
  border-radius: 8px;
  color: var(--ink-soft);
  background: transparent;
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease;
}

.project-tree,
.project-document-list {
  display: grid;
  gap: 3px;
  min-width: 100%;
  width: max-content;
}

.project-item {
  grid-template-columns: 22px 1fr;
}

.project-item .doc-name strong {
  display: flex;
  align-items: center;
  gap: 8px;
}

.project-title-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.project-public-dot {
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  margin-left: 0;
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 0 0 3px var(--green-soft);
}

.project-public-dot-row {
  position: absolute;
  right: -4px;
  bottom: -4px;
  z-index: 2;
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px var(--green-soft);
}

.project-aksbel-dot {
  background: #A51C30;
  box-shadow: 0 0 0 3px rgba(165, 28, 48, 0.16);
}

.project-public-dot-row.project-aksbel-dot {
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px rgba(165, 28, 48, 0.16);
}

.doc-number {
  min-width: 0;
  align-self: center;
  color: var(--muted);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  line-height: 1;
  opacity: 0.72;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-item.active .doc-number {
  color: var(--navy);
  opacity: 1;
}

.create-doc-number {
  opacity: 0;
}

.doc-item:hover,
.project-item:hover {
  background: rgba(255, 255, 255, 0.56);
}

.doc-item.active,
.project-item.active {
  background: rgba(22, 27, 51, 0.08);
  color: var(--navy);
}

.project-document-list {
  position: relative;
  margin: 3px 0 10px 0;
}

.tree-doc-row {
  min-height: 36px;
  margin-left: var(--tree-indent, 28px);
}

.tree-doc-row.doc-tree-depth-0 { margin-left: 28px; }
.tree-doc-row.doc-tree-depth-1 { margin-left: 56px; }
.tree-doc-row.doc-tree-depth-2 { margin-left: 84px; }
.tree-doc-row.doc-tree-depth-3 { margin-left: 112px; }
.tree-doc-row.doc-tree-depth-4 { margin-left: 140px; }
.tree-doc-row.doc-tree-depth-5 { margin-left: 168px; }
.tree-doc-row.doc-tree-depth-6 { margin-left: 196px; }
.tree-doc-row.doc-tree-depth-7 { margin-left: 224px; }
.tree-doc-row.doc-tree-depth-8 { margin-left: 252px; }
.tree-doc-row.doc-tree-depth-9 { margin-left: 280px; }
.tree-doc-row.doc-tree-depth-10 { margin-left: 308px; }
.tree-doc-row.doc-tree-depth-11 { margin-left: 336px; }
.tree-doc-row.doc-tree-depth-12 { margin-left: 364px; }

.tree-doc-row.doc-tree-root {
  margin-top: 0;
}

.tree-doc-row.doc-tree-child::before,
.tree-doc-row.doc-tree-child::after {
  content: "";
  position: absolute;
  background: rgba(118, 112, 102, 0.18);
}

.tree-doc-row.doc-tree-child::before {
  left: -18px;
  top: 16px;
  width: 16px;
  height: 1px;
}

.tree-doc-row.doc-tree-child::after {
  left: -18px;
  top: -4px;
  width: 1px;
  height: 21px;
}

.tree-doc-row[data-has-children="true"] > .tree-row .doc-name strong {
  font-weight: 760;
}

.tree-doc-row[data-has-children="true"] > .tree-row .doc-icon {
  background: rgba(255, 253, 248, 0.86);
  opacity: 0.86;
}

.project-icon {
  position: relative;
  width: 18px;
  height: 13px;
  border-radius: 4px;
  background: linear-gradient(180deg, #f6cf70, #d89c24);
  box-shadow: inset 0 -1px 0 rgba(111, 77, 7, 0.16);
}

.project-icon::before {
  content: "";
  position: absolute;
  left: 2px;
  top: -5px;
  width: 9px;
  height: 6px;
  border-radius: 3px 3px 0 0;
  background: #f8dc94;
}

.project-item.active .project-icon {
  background: linear-gradient(180deg, #ffd978, #de9c1b);
}

.doc-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--amber);
}

.doc-dot.verified { background: var(--green); }
.doc-dot.needs,
.doc-dot.needs_verification { background: var(--purple); }
.doc-dot.rejected { background: var(--red); }
.doc-dot.obsolete { background: var(--gray); }

.doc-icon {
  position: relative;
  width: 14px;
  height: 17px;
  border: 1.4px solid currentColor;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.56);
  color: var(--muted);
  opacity: 0.72;
}

.doc-icon::before {
  content: "";
  position: absolute;
  top: -1.4px;
  right: -1.4px;
  width: 5px;
  height: 5px;
  border-left: 1.4px solid currentColor;
  border-bottom: 1.4px solid currentColor;
  border-radius: 0 4px 0 2px;
  background: var(--paper);
}

.doc-item.active .doc-icon {
  color: var(--navy);
  opacity: 1;
}

.doc-item.active .doc-icon.verified,
.doc-icon.verified {
  color: var(--green);
  background: var(--green-soft);
}

.doc-icon.debunk-pass {
  opacity: 1;
  box-shadow: 0 0 0 2px #22c55e, 0 0 0 4px rgba(34, 197, 94, 0.18);
}

.tree-doc-row[data-has-children="true"] > .tree-row .doc-icon.verified {
  background: var(--green-soft);
}

.tree-doc-row[data-has-children="true"] > .tree-row .doc-icon.debunk-pass {
  opacity: 1;
}

.doc-icon.needs,
.doc-icon.needs_verification { color: var(--purple); }
.doc-icon.rejected { color: var(--red); }
.doc-icon.obsolete { color: var(--gray); }

.doc-item.active::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 7px;
  bottom: 7px;
  width: 2px;
  border-radius: 999px;
  background: var(--navy);
}

.doc-name {
  min-width: 0;
}

.doc-name strong {
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.project-tree .doc-name strong,
.project-tree .doc-name > span,
.project-tree .project-title-text {
  overflow: visible;
  text-overflow: clip;
}

.project-tree .doc-item,
.project-tree .project-item,
.project-tree .sidebar-create-wide {
  min-width: max-content;
}

.project-tree .doc-name {
  min-width: max-content;
}

.doc-name > span {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.side-panel {
  border-radius: var(--radius-xl);
  background: rgba(255,255,255,0.52);
  border: 1px solid var(--border-soft);
  box-shadow: 0 14px 38px rgba(45, 35, 20, 0.06);
  padding: 16px;
  margin-bottom: 16px;
}

.side-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}

.side-title h3 {
  margin: 0;
  font-size: 14px;
  letter-spacing: 0;
}

.side-title span,
.side-title a {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.verification-stack {
  display: grid;
  gap: 10px;
}

.verification-card {
  position: relative;
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  background: var(--paper);
  border: 1px solid var(--border-soft);
  cursor: pointer;
  transition: 180ms ease;
}

.verification-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(45, 35, 20, 0.10);
}

.verification-card.active {
  outline: 2px solid rgba(52, 71, 255, 0.16);
  background: #ffffff;
}

.number-token {
  width: 32px;
  height: 32px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: white;
  font-weight: 800;
  font-size: 12px;
  background: var(--navy);
}

.verification-body {
  min-width: 0;
}

.verification-body strong {
  display: block;
  font-size: 13px;
  line-height: 1.28;
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.verification-body p {
  margin: 6px 0 8px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.status-chip,
.tt-status {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  border-radius: 999px;
  padding: 4px 8px;
  font-style: normal;
}

.status-chip::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: currentColor;
}

.status-chip.verified,
.tt-status-verified {
  color: var(--green);
  background: var(--green-soft);
}

.status-chip.working,
.tt-status-working {
  color: var(--amber);
  background: var(--amber-soft);
}

.status-chip.needs,
.status-chip.needs_verification,
.tt-status-needs_verification {
  color: var(--purple);
  background: var(--purple-soft);
}

.status-chip.rejected,
.tt-status-rejected {
  color: var(--red);
  background: var(--red-soft);
}

.status-chip.obsolete,
.tt-status-obsolete {
  color: var(--gray);
  background: var(--gray-soft);
}

.tt-status-bg-working { background: var(--amber); }
.tt-status-bg-needs_verification { background: var(--purple); }
.tt-status-bg-verified { background: var(--green); }
.tt-status-bg-rejected { background: var(--red); }
.tt-status-bg-obsolete { background: var(--gray); }

.graph-preview {
  height: 230px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 20% 20%, rgba(52, 71, 255, 0.08), transparent 35%),
    linear-gradient(145deg, #fffdf8, #f7f1e5);
  border: 1px solid var(--border-soft);
  overflow: hidden;
}

.graph-preview svg {
  display: block;
  width: 100%;
  height: 100%;
}

.legend {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 12px;
}

.legend-item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
  color: var(--muted);
}

.legend-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--amber);
}

.legend-dot.green { background: var(--green); }
.legend-dot.purple { background: var(--purple); }
.legend-dot.red { background: var(--red); }

.note-box {
  padding: 14px;
  border-radius: 18px;
  background: var(--blue-soft);
  border: 1px solid #d8ddff;
  color: #222a6a;
  font-size: 12px;
  line-height: 1.55;
}

.note-box strong {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
}

.selection-menu {
  position: fixed;
  z-index: 1500;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  padding: 8px;
  border-radius: 999px;
  background: rgba(22, 27, 51, 0.96);
  color: white;
  box-shadow: 0 18px 50px rgba(22, 27, 51, 0.30);
  backdrop-filter: blur(18px);
  max-width: calc(100vw - 20px);
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px) scale(0.98);
  transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
  visibility: hidden;
}

.selection-menu.expanded {
  border-radius: 999px;
}

.selection-menu:has(.selection-existing-link-form:not([hidden])),
.selection-menu:has(.selection-custom-ai-form:not([hidden])),
.selection-menu:has(.selection-citation-form:not([hidden])),
.selection-menu:has(.selection-report-form:not([hidden])) {
  border-radius: 18px;
}

.selection-menu.open {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
  visibility: visible;
}

.selection-menu-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.selection-menu button {
  border: 0;
  background: rgba(255,255,255,0.08);
  color: white;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
}

.selection-expand-button {
  width: 34px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 15px;
  line-height: 1;
}

.selection-chevron {
  width: 8px;
  height: 8px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 140ms ease;
}

.selection-expand-button.is-expanded .selection-chevron {
  transform: rotate(-135deg);
}

.selection-extra-panel {
  flex: 1 0 100%;
  min-width: min(320px, calc(100vw - 36px));
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 7px;
  align-items: stretch;
  padding: 4px 2px 2px;
}

.selection-extra-panel[hidden] {
  display: none;
}

.selection-existing-link-form,
.selection-custom-ai-form,
.selection-citation-form,
.selection-report-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: end;
}

.selection-custom-ai-form,
.selection-citation-form,
.selection-report-form {
  align-items: stretch;
}

.selection-custom-ai-form label,
.selection-citation-form label,
.selection-report-form label {
  grid-column: 1 / -1;
}

.selection-existing-link-form[hidden],
.selection-custom-ai-form[hidden],
.selection-citation-form[hidden],
.selection-report-form[hidden] {
  display: none;
}

.selection-extra-panel label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.selection-extra-panel label span,
.selection-extra-message {
  color: rgba(255, 255, 255, 0.74);
  font-size: 10px;
  font-weight: 750;
}

.selection-extra-panel input,
.selection-extra-panel textarea,
.selection-report-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
  font-size: 12px;
  outline: none;
}

.selection-extra-panel input {
  height: 32px;
  border-radius: 999px;
  padding: 0 11px;
}

.selection-extra-panel textarea,
.selection-report-form textarea {
  min-height: 74px;
  max-height: 150px;
  border-radius: 14px;
  padding: 9px 11px;
  line-height: 1.42;
  resize: vertical;
}

.selection-extra-panel input:focus,
.selection-extra-panel textarea:focus,
.selection-report-form textarea:focus {
  border-color: rgba(255, 255, 255, 0.42);
  background: rgba(255, 255, 255, 0.16);
}

.selection-report-form {
  flex: 1 0 100%;
  min-width: min(320px, calc(100vw - 36px));
  padding: 4px 2px 2px;
}

.selection-report-form label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.selection-report-form label span {
  color: rgba(255, 255, 255, 0.74);
  font-size: 10px;
  font-weight: 750;
}

.selection-menu button.selection-report-button {
  background: rgba(220, 38, 38, 0.18);
  color: #fecaca;
}

.selection-menu button.selection-report-button:hover,
.selection-menu button.selection-report-button:focus-visible {
  background: rgba(220, 38, 38, 0.28);
  color: #fff1f2;
}

.selection-custom-ai-form.is-locked textarea,
.selection-citation-form.is-locked textarea {
  cursor: wait;
  opacity: 0.68;
}

.selection-extra-message {
  grid-column: 1 / -1;
  min-height: 12px;
}

.selection-extra-message:empty {
  display: none;
}

.selection-menu button.primary-pop,
.selection-menu button[data-action="run-ai"] {
  background: var(--gold);
  color: #211600;
}

.selection-menu button.primary-pop:hover,
.selection-menu button.primary-pop:focus-visible,
.selection-menu button[data-action="run-ai"]:hover,
.selection-menu button[data-action="run-ai"]:focus-visible {
  background: #e0b457;
  color: #17130b;
}

.selection-menu button.selection-read-mark-button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: #dcfce7;
  color: #166534;
}

.selection-read-mark-button svg {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
}

.selection-menu button.selection-read-mark-button.is-marked {
  background: #bbf7d0;
  color: #14532d;
}

.selection-menu button.selection-read-mark-button:hover,
.selection-menu button.selection-read-mark-button:focus-visible {
  background: #c9f7d8;
  color: #14532d;
}

.selection-menu button.selection-read-mark-button.is-overlap {
  cursor: not-allowed;
  opacity: 0.58;
}

.selection-menu button.copied {
  background: var(--green);
  color: white;
}

.selection-menu button:disabled {
  cursor: wait;
  opacity: 0.72;
}

.selection-menu.is-read-mark-busy,
.selection-menu.is-read-mark-busy button {
  cursor: wait;
}

.selection-menu button.selection-action-busy {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  opacity: 1;
}

.selection-menu button.selection-action-busy::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.28), transparent);
  transform: translateX(-115%);
  animation: ttSelectionBusySweep 0.95s ease-in-out infinite;
  pointer-events: none;
}

.selection-menu button.selection-action-busy[data-action="create"] {
  background: var(--gold);
  color: #211600;
  box-shadow: 0 0 0 2px rgba(224, 180, 87, 0.28);
}

.selection-menu button.selection-action-busy[data-action="toggle-read-mark"] {
  background: #bbf7d0;
  color: #14532d;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.20);
}

@keyframes ttSelectionBusySweep {
  to {
    transform: translateX(115%);
  }
}

.selection-menu-message {
  display: none;
  padding: 8px 11px;
  color: white;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.selection-menu.blocked button[data-action="create"],
.selection-menu.blocked button[data-action="ask-ai"],
.selection-menu.blocked button[data-action="verify-ai"],
.selection-menu.blocked button[data-action="show-citation-verification-form"],
.selection-menu.blocked button[data-action="run-ai"],
.selection-menu.blocked button[data-action="verify-citation"],
.selection-menu.blocked button[data-action="more"],
.selection-menu.blocked .selection-extra-panel {
  display: none;
}

.selection-menu.blocked .selection-menu-message {
  display: inline-flex;
}

.ai-settings-panel {
  position: fixed;
  inset: 0;
  z-index: 130;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(22, 27, 51, 0.34);
  backdrop-filter: blur(10px);
}

.ai-settings-panel[hidden] {
  display: none;
}

.ai-settings-form {
  width: min(440px, 100%);
  display: grid;
  gap: 12px;
  padding: 18px;
  border-radius: 8px;
  background: #fffdf8;
  border: 1px solid var(--border-soft);
  box-shadow: 0 24px 70px rgba(22, 27, 51, 0.24);
  color: var(--ink);
}

.ai-settings-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.ai-settings-head h2 {
  margin: 0;
  font-size: 16px;
  line-height: 1.2;
}

.ai-settings-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.ai-settings-close {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.ai-settings-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.ai-settings-form input,
.ai-settings-form select {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: white;
  color: var(--ink);
  padding: 10px 11px;
  font: inherit;
}

.ai-settings-message {
  min-height: 18px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.ai-settings-message.error {
  color: var(--red);
  font-weight: 800;
}

.ai-settings-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.ai-settings-actions button {
  border: 0;
  border-radius: 999px;
  padding: 9px 13px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.ai-settings-actions button:not(.primary-pop) {
  background: var(--paper-soft);
  color: var(--muted);
}

.ai-settings-actions .primary-pop {
  background: var(--gold);
  color: #211600;
}

.ai-settings-actions button:disabled {
  cursor: wait;
  opacity: 0.72;
}

.ai-generation-status {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 125;
  width: min(360px, calc(100vw - 32px));
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  background: rgba(22, 27, 51, 0.96);
  color: #ffffff;
  box-shadow: 0 20px 60px rgba(22, 27, 51, 0.28);
  font-size: 13px;
  line-height: 1.45;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity 150ms ease, transform 150ms ease;
}

.ai-generation-status.open {
  opacity: 1;
  transform: translateY(0);
}

.ai-generation-status::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 15px;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--gold);
  box-shadow: 0 0 0 0 rgba(201, 150, 58, 0.38);
  animation: tt-pulse 1.2s ease-out infinite;
}

.ai-generation-status strong,
.ai-generation-status span {
  display: block;
  padding-left: 18px;
}

.ai-generation-status strong {
  font-size: 13px;
}

.ai-generation-status[data-state="done"] {
  background: rgba(21, 128, 61, 0.96);
}

.ai-generation-status[data-state="done"]::before {
  background: #bbf7d0;
  animation: none;
}

.ai-generation-status[data-state="error"] {
  background: rgba(185, 28, 28, 0.96);
}

.ai-generation-status[data-state="error"]::before {
  background: #fecaca;
  animation: none;
}

@keyframes tt-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(201, 150, 58, 0.42);
  }
  100% {
    box-shadow: 0 0 0 12px rgba(201, 150, 58, 0);
  }
}

.toast {
  position: relative;
  max-width: 360px;
  padding: 14px 44px 14px 16px;
  border-radius: 18px;
  background: var(--navy);
  color: white;
  box-shadow: 0 20px 60px rgba(22, 27, 51, 0.28);
  font-size: 13px;
  line-height: 1.5;
}

.toast strong {
  display: block;
  margin-bottom: 3px;
}

.tt-toast-dismiss {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.10);
  color: currentColor;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  opacity: 0.8;
}

.tt-toast-dismiss:hover,
.tt-toast-dismiss:focus-visible {
  background: rgba(255, 255, 255, 0.18);
  opacity: 1;
  outline: none;
}

.tt-toast-stack {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 120;
  display: grid;
  gap: 10px;
}

.tt-site-rights {
  padding: 12px 18px 16px;
  color: rgba(118, 112, 102, 0.72);
  font-size: 10px;
  font-weight: 700;
  text-align: center;
}

.tt-page {
  width: min(1180px, calc(100vw - 32px));
  margin: 0 auto;
  padding: 32px 0 56px;
}

.tt-split-page {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 0;
}

.tt-split-main {
  min-width: 0;
  padding: 32px clamp(24px, 5vw, 76px) 56px;
}

.tt-split-main > .tt-page-head,
.tt-split-main > .tt-focus-panel,
.tt-split-main > .tt-section-label,
.tt-split-main > .tt-project-grid,
.tt-split-main > .tt-document-list,
.tt-split-main > .tt-empty {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.tt-chat-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  border-left: 1px solid rgba(222, 212, 195, 0.88);
  background: rgba(255, 253, 248, 0.78);
  backdrop-filter: blur(24px);
  overflow: hidden;
}

.tt-sidebar-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 0 0 auto;
  min-width: 0;
}

.tt-sidebar-brand .brand-text {
  min-width: 0;
}

.tt-sidebar-brand .brand-text strong {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tt-sidebar-actions {
  flex: 0 0 auto;
}

.tt-sidebar-actions .tt-btn {
  width: 100%;
}

.tt-rail-search {
  flex: 0 0 auto;
}

.tt-rail-search input {
  width: 100%;
  height: 40px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.88);
  color: var(--ink);
  outline: none;
  padding: 0 13px;
  box-shadow: 0 8px 24px rgba(45, 35, 20, 0.04);
}

.tt-chat-sidebar .doc-list {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding-right: 2px;
}

.tt-sidebar-footer {
  flex: 0 0 auto;
  display: grid;
  gap: 8px;
  padding-top: 12px;
  border-top: 1px solid var(--border-soft);
}

.tt-sidebar-footer a {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-narrow {
  width: min(820px, calc(100vw - 32px));
}

.tt-editor {
  width: min(1160px, calc(100vw - 32px));
}

.tt-editor-workspace {
  width: min(1040px, 100%);
}

.tt-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.tt-page-head h1,
.tt-danger-panel h1,
.tt-empty h2,
.tt-project-card h2 {
  margin: 0;
  color: var(--navy);
  font-size: 38px;
  line-height: 1;
  letter-spacing: 0;
}

.tt-kicker {
  margin: 0 0 8px;
  color: var(--gold);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tt-page-subtitle {
  max-width: 760px;
  margin: 10px 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.tt-focus-panel {
  margin-bottom: 18px;
  padding: 24px;
  border: 1px solid rgba(222, 212, 195, 0.86);
  border-radius: var(--radius-xl);
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.96), rgba(251, 248, 239, 0.96));
  box-shadow: var(--shadow);
}

.tt-focus-kicker,
.tt-section-label {
  color: var(--gold);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tt-focus-kicker {
  margin-bottom: 12px;
}

.tt-section-label {
  margin-top: 24px;
  margin-bottom: 10px;
}

.tt-focus-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.tt-focus-head h2 {
  margin: 0;
  color: var(--navy);
  font-size: 34px;
  line-height: 1.05;
  letter-spacing: 0;
}

.tt-focus-head p {
  max-width: 700px;
  margin: 12px 0 0;
  color: var(--muted);
  line-height: 1.65;
}

.tt-project-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px;
}

.tt-project-grid-compact {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.tt-project-card,
.tt-document-row,
.tt-empty,
.tt-danger-panel,
.tt-form {
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  background: rgba(255, 253, 248, .86);
  box-shadow: var(--shadow-soft);
}

.tt-project-card {
  min-height: 146px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 18px;
}

.tt-project-card p,
.tt-document-row p,
.tt-empty p,
.tt-danger-panel p {
  color: var(--muted);
  line-height: 1.55;
}

.tt-card-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.tt-empty,
.tt-danger-panel {
  padding: 26px;
}

.tt-danger-panel.tt-danger-panel-plain {
  width: min(720px, 100%);
  margin: 0 auto;
  padding: clamp(34px, 8vw, 78px) 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.tt-danger-panel.tt-danger-panel-plain .tt-kicker {
  color: #b91c1c;
}

.tt-danger-panel.tt-danger-panel-plain h1 {
  max-width: 680px;
  margin-inline: auto;
  font-size: clamp(30px, 5vw, 56px);
  line-height: 0.98;
}

.tt-danger-panel.tt-danger-panel-plain p:not(.tt-kicker) {
  max-width: 520px;
  margin: 16px auto 0;
  font-size: 15px;
}

.tt-danger-panel.tt-danger-panel-plain .tt-form-actions {
  justify-content: center;
  margin-top: 24px;
}

.tt-document-list {
  display: grid;
  gap: 10px;
}

.tt-document-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 16px;
}

.tt-row-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-weight: 850;
}

.tt-document-row p {
  margin: 5px 0 0;
  font-size: 13px;
}

.tt-icon-link {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--paper);
}

.tt-form {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.tt-form-note {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(201, 150, 58, 0.32);
  border-radius: 10px;
  background: rgba(255, 243, 206, 0.42);
  color: var(--ink-soft);
}

.tt-form-note strong {
  color: var(--navy);
  font-size: 13px;
}

.tt-form-note span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.tt-form label {
  display: grid;
  gap: 7px;
}

.tt-form label > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.tt-form input,
.tt-form textarea,
.tt-form select {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  padding: 12px;
}

.tt-document-form textarea[name="raw_text"] {
  min-height: 520px;
  font-family: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;
  line-height: 1.6;
}

.tt-document-form textarea[name="raw_text"]::placeholder {
  color: var(--muted-2);
  opacity: 1;
}

.tt-form-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(180px, .8fr) minmax(150px, .5fr);
  gap: 12px;
}

.errorlist {
  margin: 0;
  padding-left: 18px;
  color: var(--red);
}

.tt-graph {
  position: relative;
  min-height: calc(100vh - 176px);
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: url("../icons/graph-grab.a21338ee2117.svg") 9 9, grab;
}

.tt-graph canvas {
  cursor: inherit !important;
}

.tt-graph.tt-graph-grabbing,
.tt-graph.tt-graph-grabbing canvas {
  cursor: url("../icons/graph-grabbing.beb219c75524.svg") 9 9, grabbing !important;
}

.tt-graph-label-layer {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}

.tt-graph-node-label {
  position: absolute;
  max-width: 190px;
  transform: translate(-50%, var(--tt-label-shift-y, 0px));
  color: #171d32;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.22;
  text-align: center;
  overflow-wrap: anywhere;
}

.tt-graph-node-label[data-node-type="project"] {
  font-size: 12px;
  font-weight: 400;
}

.tt-graph-node-label.tt-graph-focus-label {
  color: var(--navy);
  font-weight: 750;
  text-shadow: 0 1px 0 rgba(255, 253, 248, 0.96), 0 0 14px rgba(242, 199, 103, 0.46);
}

.tt-graph-node-label.tt-graph-debunk-pass-label {
  color: var(--green);
}

.tt-public-graph .tt-graph-node-label {
  max-width: 156px;
  font-size: 10px;
}

.tt-public-graph .tt-graph-node-label[data-node-type="project"] {
  font-size: 11px;
}

.tt-graph-node-label .katex {
  font-size: 1em;
}

.tt-graph-node-label.tt-math-title {
  overflow-wrap: normal;
  word-break: normal;
}

.tt-graph-node-label.tt-math-title .katex {
  white-space: nowrap;
}

body.tt-reader-dark .tt-graph-node-label {
  color: #f7f0df;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.7), 0 0 16px rgba(0, 0, 0, 0.34);
}

body.tt-reader-dark .tt-graph-node-label[data-node-type="project"] {
  color: #f0d18a;
}

body.tt-reader-dark .tt-graph-node-label.tt-graph-focus-label {
  color: #fff2cf;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.78), 0 0 18px rgba(215, 168, 78, 0.44);
}

body.tt-reader-dark .tt-graph-node-label.tt-graph-debunk-pass-label {
  color: #82dea4;
}

.tt-graph-controls {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 8;
  display: inline-flex;
  gap: 6px;
  padding: 5px;
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.86);
  box-shadow: 0 10px 26px rgba(45, 35, 20, 0.12);
  backdrop-filter: blur(12px);
}

.tt-graph-controls button {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: var(--paper-soft);
  color: var(--ink-soft);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}

.tt-graph-controls button:hover {
  background: var(--gold-soft);
  color: var(--navy);
}

.tt-graph-controls button.tt-graph-layout-toggle {
  width: auto;
  min-width: 58px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 700;
}

.tt-graph-controls button.tt-graph-grow-toggle {
  width: auto;
  min-width: 62px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 800;
}

.tt-graph-controls button.tt-graph-grow-toggle.is-running,
.tt-graph-controls button.tt-graph-grow-toggle:disabled {
  opacity: 0.72;
  cursor: progress;
}

.tt-graph-controls button.tt-graph-layout-toggle[aria-pressed="true"] {
  background: var(--gold-soft);
  color: var(--navy);
}

body.tt-reader-dark .tt-graph-controls {
  border: 1px solid rgba(242, 199, 103, 0.18);
  background: rgba(16, 13, 8, 0.8);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.34);
}

body.tt-reader-dark .tt-graph-controls button {
  border: 1px solid rgba(242, 199, 103, 0.18);
  background: rgba(242, 199, 103, 0.12);
  color: #f6d887;
}

body.tt-reader-dark .tt-graph-controls button:hover,
body.tt-reader-dark .tt-graph-controls button:focus-visible {
  border-color: rgba(242, 199, 103, 0.46);
  background: rgba(242, 199, 103, 0.22);
  color: #fff4d2;
}

body.tt-reader-dark .tt-graph-controls button.tt-graph-layout-toggle[aria-pressed="true"] {
  border-color: rgba(130, 222, 164, 0.38);
  background: rgba(34, 197, 94, 0.18);
  color: #9af0ba;
}

body.tt-reader-dark .tt-graph-controls button.tt-graph-grow-toggle {
  color: #ffe3a0;
}

body.tt-reader-dark .tt-graph-controls button.tt-graph-grow-toggle.is-running,
body.tt-reader-dark .tt-graph-controls button.tt-graph-grow-toggle:disabled {
  border-color: rgba(242, 199, 103, 0.3);
  background: rgba(242, 199, 103, 0.18);
  color: #fff4d2;
}

.tt-public-graph {
  min-height: 760px;
  height: calc(100vh - 150px);
}

.tt-project-graph {
  min-height: 720px;
  height: calc(100vh - 150px);
}

.tt-public-graph-frame,
.graph-frame {
  width: min(1180px, 100%);
  max-width: 100%;
  margin: 0 auto;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.main-area.graph-main-area,
.main-area.graph-main-area:has(> .topbar-reader),
.main-area.graph-main-area:has(> .topbar-compact) {
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: 100dvh;
  min-height: 0;
  padding: 0;
  margin: 0;
  overflow: hidden;
}

.main-area.graph-main-area > .topbar,
.main-area.graph-main-area:has(> .topbar-reader) > .topbar-reader,
.main-area.graph-main-area:has(> .topbar-compact) > .topbar-compact {
  flex: 0 0 auto;
  margin: 0;
}

.graph-main-area .graph-frame,
.graph-main-area .tt-public-library,
.graph-main-area .tt-public-graph-frame {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.graph-main-area .graph-frame,
.graph-main-area .tt-public-library,
.graph-main-area .tt-public-graph-frame {
  flex: 1 1 auto;
  min-height: 0;
}

.graph-main-area .tt-public-library {
  position: relative;
  display: flex;
  flex-direction: column;
}

.graph-main-area .tt-library-section-head {
  position: absolute;
  top: 14px;
  left: 24px;
  z-index: 9;
  max-width: min(520px, calc(100% - 48px));
  margin: 0;
  padding: 10px 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
  pointer-events: none;
}

.graph-main-area .tt-library-section-head a {
  pointer-events: auto;
}

.graph-main-area .tt-graph,
.graph-main-area .tt-project-graph,
.graph-main-area .tt-public-graph {
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
}

@media (max-width: 1280px) {
  .app-shell {
    grid-template-columns: minmax(0, 1fr) var(--project-sidebar);
  }
}

@media (max-width: 900px) {
  :root {
    --topbar: 74px;
    --mobile-header: 56px;
  }

  input,
  textarea,
  select,
  .document-search-field input,
  .tt-library-search input,
  .selection-extra-panel input,
  .selection-extra-panel textarea,
  .selection-report-form textarea,
  .ai-settings-form input,
  .ai-settings-form select,
  .tt-profile-form input,
  .tt-profile-form textarea,
  .tt-profile-form select {
    font-size: 16px;
  }

  .app-shell,
  .tt-split-page {
    grid-template-columns: 1fr;
  }

  .app-shell {
    height: auto;
    min-height: 100dvh;
    overflow: visible;
  }

  .tt-split-main {
    padding: 24px 16px 32px;
  }

  .tt-chat-sidebar {
    position: static;
    height: auto;
    max-height: none;
    border-left: 0;
    border-top: 1px solid var(--border);
    overflow: visible;
  }

  .tt-chat-sidebar .doc-list {
    overflow: visible;
  }

  .tt-text-report-row,
  .tt-text-report-actions form,
  .tt-text-report-review-card form {
    grid-template-columns: 1fr;
  }

  .tt-text-report-actions {
    justify-items: stretch;
    min-width: 0;
  }

  .mobile-theorytrace-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 95;
    min-height: var(--mobile-header);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 14px;
    border-bottom: 1px solid rgba(222, 212, 195, 0.8);
    background: rgba(255, 253, 248, 0.94);
    backdrop-filter: blur(18px);
  }

  .mobile-theorytrace-bar-organization {
    justify-content: space-between;
    min-height: 44px;
    padding: 6px 12px;
    border-bottom-color: rgba(222, 212, 195, 0.6);
    background: rgba(245, 241, 232, 0.78);
    backdrop-filter: blur(20px);
  }

  .mobile-theorytrace-bar-organization .mobile-organization-library-brand {
    flex: 1 1 auto;
    min-width: 0;
    max-width: calc(100vw - 86px);
  }

  .mobile-theorytrace-bar-organization .tt-library-brand-mark {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-radius: 10px;
  }

  .mobile-theorytrace-bar-organization .tt-library-brand-copy {
    min-width: 0;
  }

  .mobile-theorytrace-bar-organization .tt-library-brand-copy strong,
  .mobile-theorytrace-bar-organization .tt-library-brand-copy small {
    max-width: calc(100vw - 128px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mobile-brand {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 9px;
    color: var(--navy);
  }

  .mobile-brand span {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: var(--navy);
    color: #ffffff;
    font-family: "Source Serif 4", Georgia, serif;
    font-size: 26px;
    font-weight: 850;
    line-height: 1;
  }

  .mobile-brand span.mobile-brand-organization {
    background:
      radial-gradient(circle at 35% 26%, rgba(255, 255, 255, 0.65), transparent 34%),
      linear-gradient(135deg, #1f6f68, #e1b75f);
    color: #fffaf0;
    font-family: Inter, system-ui, sans-serif;
    font-size: 17px;
    font-weight: 900;
  }

  .mobile-brand strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 15px;
  }

  .mobile-tree-button {
    position: fixed;
    right: max(14px, env(safe-area-inset-right));
    bottom: max(14px, env(safe-area-inset-bottom));
    z-index: 100;
    width: 42px;
    height: 42px;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    border: 1px solid rgba(184, 121, 13, 0.22);
    border-radius: 11px;
    background: #fffaf0;
    color: #9f690b;
    padding: 0;
    box-shadow: 0 5px 15px rgba(92, 61, 8, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    cursor: pointer;
    transition: background 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
  }

  .mobile-tree-button:hover,
  .mobile-tree-button:focus-visible {
    border-color: rgba(164, 103, 4, 0.42);
    background: #fff2c4;
    box-shadow: 0 7px 18px rgba(92, 61, 8, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  }

  .mobile-tree-button[aria-expanded="true"] {
    border-color: #b8790d;
    background: #9f690b;
    color: #fff6d8;
    box-shadow: 0 6px 16px rgba(112, 68, 5, 0.22);
  }

  .mobile-tree-button:active {
    transform: scale(0.96);
  }

  .mobile-tree-button:focus-visible {
    outline: 3px solid rgba(194, 138, 30, 0.2);
    outline-offset: 2px;
  }

  .tt-organization-shell .main-area {
    padding-top: 44px;
  }

  .tt-organization-shell .main-area:has(> .topbar-reader),
  .tt-organization-shell .main-area:has(> .topbar-compact) {
    padding-top: 44px;
  }

  .tt-library-tree-fab {
    width: 34px;
    height: 34px;
    min-height: 34px;
    flex-basis: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(184, 121, 13, 0.22);
    border-radius: 999px;
    background: #fffaf0;
    color: #9f690b;
    padding: 0;
    box-shadow: 0 5px 15px rgba(92, 61, 8, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: background 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
  }

  .tt-library-tree-profile-fab {
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    max-width: 34px;
    max-height: 34px;
    flex: 0 0 34px;
  }

  .tt-library-tree-profile-avatar,
  .tt-library-tree-profile-avatar img {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    max-width: 32px;
    max-height: 32px;
    border-radius: 999px;
  }

  .tt-library-tree-fab:hover,
  .tt-library-tree-fab:focus-visible {
    border-color: rgba(164, 103, 4, 0.42);
    background: #fff2c4;
    box-shadow: 0 7px 18px rgba(92, 61, 8, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transform: none;
  }

  .tt-library-tree-fab[aria-expanded="true"] {
    border-color: #b8790d;
    background: #9f690b;
    color: #fff6d8;
    box-shadow: 0 6px 16px rgba(112, 68, 5, 0.22);
    transform: none;
  }

  .tt-library-tree-fab:active {
    transform: scale(0.96);
  }

  .tt-library-tree-fab:focus-visible {
    outline: 3px solid rgba(194, 138, 30, 0.2);
    outline-offset: 2px;
  }

  .tt-library-tree-fab .mobile-tree-icon {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    overflow: visible;
    stroke-width: 1.8;
    filter: drop-shadow(0 1px 1px rgba(112, 68, 5, 0.13));
  }

  .tt-library-tree-fab[aria-expanded="true"] .mobile-tree-folder {
    fill: #f8d978;
    stroke: #fff6d8;
  }

  .tt-library-tree-fab[aria-expanded="true"] .mobile-tree-branch {
    stroke: #fff6d8;
  }

  .mobile-tree-icon {
    width: 25px;
    height: 25px;
    flex: 0 0 auto;
    overflow: visible;
    stroke-width: 1.8;
    filter: drop-shadow(0 1px 1px rgba(112, 68, 5, 0.13));
  }

  .mobile-tree-folder {
    fill: #f7d46f;
    stroke: #a66c09;
  }

  .mobile-tree-branch {
    stroke: #8b5a08;
  }

  .mobile-tree-button[aria-expanded="true"] .mobile-tree-folder {
    fill: #f8d978;
    stroke: #fff6d8;
  }

  .mobile-tree-button[aria-expanded="true"] .mobile-tree-branch {
    stroke: #fff6d8;
  }

  .sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 110;
    display: block;
    background: rgba(22, 27, 51, 0.36);
    backdrop-filter: blur(3px);
  }

  .sidebar-backdrop[hidden] {
    display: none;
  }

  .project-sidebar {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 120;
    width: min(340px, 88vw);
    height: 100dvh;
    padding-top: 18px;
    border-left: 1px solid rgba(214, 203, 184, 0.92);
    border-top: 0;
    transform: translateX(100%);
    transition: transform 180ms ease;
    box-shadow: -24px 0 70px rgba(22, 27, 51, 0.18);
  }

  .sidebar-resize-handle {
    display: none;
  }

  .project-sidebar.open {
    transform: translateX(0);
  }

  body.sidebar-open {
    overflow: hidden;
  }

  .sidebar-close-button {
    position: absolute;
    top: 14px;
    right: 12px;
    z-index: 2;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 999px;
    background: rgba(22, 27, 51, 0.06);
    color: var(--ink-soft);
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
  }

  .project-sidebar .brand {
    padding-right: 42px;
  }

  .main-area {
    height: auto;
    overflow: visible;
    order: 1;
    padding-top: calc(var(--mobile-header) + 16px);
  }

  .main-area:has(> .topbar-reader),
  .main-area:has(> .topbar-compact) {
    padding-top: var(--mobile-header);
  }

  .topbar {
    position: sticky;
    top: var(--mobile-header);
    margin-top: 0;
    min-height: var(--topbar);
    z-index: 50;
  }

  .tt-compact-label-page .main-area:has(> .topbar-reader),
  .tt-compact-label-page .main-area:has(> .topbar-compact) {
    padding-top: 0;
  }

  .tt-compact-label-page .topbar {
    top: 0;
  }

  .main-area:has(> .topbar-reader) > .topbar-reader,
  .main-area:has(> .topbar-compact) > .topbar-compact {
    margin-top: 0;
  }

  .reader-toolbar {
    top: var(--reader-toolbar-top);
    margin: 0 -8px 22px;
    padding: 8px 8px 10px;
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .reader-toolbar-left {
    flex-wrap: nowrap;
    min-width: max-content;
    width: 100%;
  }

  .tool-chip {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .tt-reader-plan-notice {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 12px;
  }

  .document-search {
    flex: 0 0 auto;
    margin-left: 0;
  }

  .document-search-panel {
    position: fixed;
    top: calc(var(--mobile-header) + var(--topbar) + 52px);
    left: 14px;
    right: 14px;
    width: auto;
  }

  .reader-label-main {
    align-items: flex-start;
  }

  .reader-label-actions {
    gap: 8px;
  }

  .reader-collaboration {
    gap: 6px;
  }

  .member-stack {
    max-width: 94px;
    overflow: hidden;
  }

  .header-menu-panel {
    right: -2px;
  }

  .reader-paper {
    padding: 28px 28px 44px;
  }

  .reader-frame {
    max-width: 100%;
  }

  .article [data-block-id]::before {
    display: none;
  }

  .tt-page-head,
  .tt-focus-head {
    flex-direction: column;
  }

  .tt-form-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .main-area {
    padding: calc(var(--mobile-header) + 10px) 12px 28px;
  }

  .main-area:has(> .topbar-reader),
  .main-area:has(> .topbar-compact) {
    padding: var(--mobile-header) 12px 28px;
  }

  .topbar {
    margin: -10px -12px 16px;
    padding: 10px 12px;
    align-items: stretch;
  }

  .main-area:has(> .topbar-reader) > .topbar-reader,
  .main-area:has(> .topbar-compact) > .topbar-compact {
    margin: 0 -12px 16px;
  }

  .main-area:has(> .tt-activity-topbar) > .tt-activity-topbar {
    min-height: 38px;
    margin: 0 -12px 10px;
    padding: 6px 12px;
  }

  .top-actions,
  .tt-actions,
  .reader-label-actions {
    justify-content: space-between;
  }

  .reader-paper {
    border-radius: 16px;
    padding: 18px;
  }

  .tt-activity-head {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }

  .tt-activity-label-main {
    min-height: 22px;
  }

  .tt-activity-day-list {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }

  .tt-activity-detail-head {
    align-items: stretch;
    flex-direction: column;
  }

  .tt-activity-detail-head > strong {
    align-self: flex-start;
  }

  .tt-activity-event {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
  }

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

  .tt-aksbel-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .tt-aksbel-learner-row {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .tt-aksbel-learner-row > em {
    grid-column: 2;
    justify-self: start;
  }

  .tt-aksbel-project-report-row {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .tt-aksbel-project-report-row > em {
    justify-self: start;
  }

  .tt-learning-report-head,
  .tt-learning-section-head,
  .tt-progress-page-head,
  .tt-progress-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .tt-progress-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 12px;
  }

  .tt-progress-range {
    width: 100%;
  }

  .tt-progress-chart-wrap {
    margin-right: -6px;
  }

  .tt-progress-overview-grid {
    grid-template-columns: 1fr;
  }

  .tt-school-class-progress-row > a:first-child {
    grid-template-columns: minmax(0, 1fr);
  }

  .tt-learning-score {
    justify-items: start;
  }

  .tt-learning-stat-grid,
  .tt-learning-chart-row {
    grid-template-columns: 1fr;
  }

  .tt-learning-donut-card {
    grid-template-columns: 78px minmax(0, 1fr);
  }

  .tt-learning-donut {
    width: 72px;
  }

  .tt-learning-bar-row {
    grid-template-columns: 84px minmax(0, 1fr) 28px;
  }

  .reader-label-main {
    gap: 10px;
    flex-wrap: wrap;
  }

  .tt-quiz-breadcrumb {
    gap: 5px;
    font-size: 12px;
  }

  .tt-quiz-breadcrumb .tt-breadcrumb-crumb {
    max-width: 8ch;
  }

  .tt-quiz-breadcrumb .tt-breadcrumb-document {
    max-width: 10ch;
  }

  .tt-quiz-actions {
    gap: 6px;
  }

  .tt-debunk-loading-overlay {
    padding:
      max(10px, env(safe-area-inset-top))
      max(10px, env(safe-area-inset-right))
      max(10px, env(safe-area-inset-bottom))
      max(10px, env(safe-area-inset-left));
    align-items: center;
    justify-content: center;
  }

  .tt-debunk-loading-panel {
    top: 52%;
    width: min(330px, calc(100vw - 20px));
    max-height: calc(100dvh - 20px);
    gap: 8px;
    padding: 18px 14px;
    border-radius: 16px;
  }

  .tt-debunk-loading-panel h2 {
    font-size: 17px;
  }

  .tt-debunk-loading-panel p {
    font-size: 13px;
    line-height: 1.45;
  }

  .tt-debunk-loading-panel small {
    font-size: 11px;
  }

  .tt-debunk-loading-orbit {
    width: 44px;
    height: 44px;
  }

  .tt-debunk-loading-orbit span {
    width: 8px;
    height: 8px;
  }

  .tt-debunk-loading-orbit span:nth-child(1) {
    top: -4px;
    left: 18px;
  }

  .tt-debunk-loading-orbit span:nth-child(2) {
    right: 1px;
    bottom: 5px;
  }

  .tt-debunk-loading-orbit span:nth-child(3) {
    left: 1px;
    bottom: 5px;
  }

  .tt-debunk-loading-bars {
    gap: 5px;
  }

  .tt-debunk-loading-bars span {
    height: 4px;
  }

  .tt-library-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .tt-public-graph-meta {
    justify-content: flex-start;
  }

  .tt-public-graph {
    min-height: 540px;
    height: 72vh;
  }

  .tt-aksbel-library-page,
  .tt-aksbel-book-form-page {
    width: 100%;
    padding: 18px 0 36px;
  }

  .tt-library-brand-copy small {
    white-space: normal;
  }

  .tt-aksbel-library-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 12px;
  }

  .tt-aksbel-library-head small {
    white-space: normal;
  }

  .tt-aksbel-library-side {
    justify-items: start;
    max-width: none;
    width: 100%;
  }

  .tt-aksbel-book-grid {
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
    gap: 16px;
  }

  .tt-aksbel-book-form {
    padding: 14px;
  }

  .tt-aksbel-doc-cover {
    min-height: 420px;
    padding: 24px;
  }

  .member-avatar {
    width: 25px;
    height: 25px;
    font-size: 10px;
  }

  .header-icon-button {
    width: 30px;
    height: 30px;
  }

  .document-search {
    flex: 0 0 auto;
    justify-content: flex-end;
  }

  .document-search-panel {
    left: 10px;
    right: 10px;
    width: auto;
  }

  .selection-menu {
    border-radius: 12px;
    overflow-x: auto;
  }

  .selection-menu.expanded,
  .selection-menu:has(.selection-existing-link-form:not([hidden])),
  .selection-menu:has(.selection-custom-ai-form:not([hidden])),
  .selection-menu:has(.selection-citation-form:not([hidden])) {
    border-radius: 12px;
  }

  .selection-menu-actions {
    align-items: stretch;
  }

  .selection-menu button {
    border-radius: 10px;
  }

  .selection-expand-button {
    border-radius: 10px;
  }

  .ai-generation-status {
    left: 12px;
    right: 12px;
    bottom: 14px;
    width: auto;
  }

  .tt-document-form textarea[name="raw_text"] {
    min-height: calc(100dvh - 240px);
  }

  .tt-page-head h1,
  .tt-danger-panel h1,
  .tt-empty h2,
  .tt-project-card h2 {
    font-size: 28px;
  }

  .article {
    font-size: var(--tt-reader-text-size, 17px);
  }
}

@media (max-width: 900px) {
  .tt-document-reader-shell {
    min-height: 100dvh;
  }

  .tt-document-reader-shell .mobile-theorytrace-bar {
    display: none;
  }

  .tt-document-reader-shell .main-area,
  .tt-document-reader-shell .main-area:has(> .topbar-reader),
  .tt-document-reader-shell .main-area:has(> .topbar-compact) {
    padding: 6px 6px 30px;
  }

  .tt-document-reader-shell .topbar-reader,
  .tt-document-reader-shell .reader-toolbar {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .topbar-reader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 104;
    display: flex;
    min-height: 44px;
    max-height: min(36dvh, 180px);
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0;
    padding: 6px 10px;
    overflow: auto;
    border-bottom: 1px solid rgba(222, 212, 195, 0.74);
    background: rgba(255, 253, 248, 0.96);
    box-shadow: 0 10px 28px rgba(45, 35, 20, 0.1);
    scrollbar-width: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .topbar-reader::-webkit-scrollbar {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .tt-reader-back-shortcut {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-labels {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-main {
    width: 100%;
    min-width: 0;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-main > .breadcrumb {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-actions {
    flex: 0 1 auto;
    max-width: 42vw;
    min-width: 0;
    gap: 6px;
    justify-content: flex-end;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-actions::-webkit-scrollbar {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-labels.is-collapsed .reader-label-actions {
    display: flex;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-actions .btn {
    min-height: 30px;
    padding: 0 9px;
    font-size: 11px;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-label-toggle {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    display: grid;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .topbar-document-search {
    flex: 0 0 auto;
    margin-left: 0;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .topbar-document-search .search-trigger {
    min-width: 30px;
    min-height: 30px;
    padding: 0;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-document-meta {
    display: flex;
    max-width: 100%;
    margin-top: 7px;
    padding-bottom: 2px;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-labels.is-collapsed .reader-document-meta {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .breadcrumb {
    flex-wrap: nowrap;
    gap: 6px;
    white-space: nowrap;
    font-size: 12px;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .breadcrumb strong {
    max-width: 18ch;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-toolbar {
    position: fixed;
    top: var(--reader-toolbar-top, 48px);
    left: 6px;
    right: 6px;
    z-index: 103;
    display: flex;
    min-height: 42px;
    max-height: 46px;
    align-items: center;
    margin: 0;
    padding: 5px;
    overflow-x: auto;
    border: 1px solid rgba(222, 212, 195, 0.74);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.97);
    box-shadow: 0 12px 34px rgba(45, 35, 20, 0.13);
    scrollbar-width: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-toolbar::-webkit-scrollbar {
    display: none;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .reader-toolbar-left {
    flex-wrap: nowrap;
    width: auto;
    min-width: max-content;
    gap: 5px;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .tool-chip {
    padding: 6px 9px;
    font-size: 11px;
  }

  .reader-preferences-panel {
    max-height: min(72dvh, 430px);
    overflow-y: auto;
  }

  .tt-document-reader-shell .reader-frame {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .tt-document-reader-shell .reader-paper {
    min-height: calc(100dvh - 12px);
    padding: 14px 12px 36px;
    border: 0;
    border-radius: 14px;
    box-shadow: none;
  }

  .tt-document-reader-shell .article {
    font-size: var(--tt-reader-text-size, 18px);
    line-height: var(--tt-reader-line-height, 1.78);
  }

  .tt-document-reader-shell .tt-reader-plan-notice-inline {
    margin-top: 48px;
  }

  .tt-document-reader-shell.mobile-reader-tools-open .tt-reader-plan-notice-inline {
    margin-top: calc(var(--reader-toolbar-top, 48px) + 58px);
  }

  .tt-mobile-reader-controls {
    position: fixed;
    right: 10px;
    bottom: max(10px, env(safe-area-inset-bottom));
    z-index: 106;
    display: inline-flex;
    gap: 7px;
    padding: 5px;
    border: 1px solid rgba(222, 212, 195, 0.72);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.9);
    box-shadow: 0 14px 36px rgba(22, 27, 51, 0.14);
    backdrop-filter: blur(16px);
  }

  .tt-mobile-reader-control {
    width: 39px;
    height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #8b5a08;
    padding: 0;
    cursor: pointer;
  }

  .tt-mobile-reader-control svg {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
  }

  .tt-mobile-reader-control:hover,
  .tt-mobile-reader-control:focus-visible,
  .tt-mobile-reader-control[aria-expanded="true"] {
    background: rgba(201, 150, 58, 0.16);
    color: #5d400b;
    outline: none;
  }
}

@media (max-width: 640px) {
  .tt-document-reader-shell .main-area,
  .tt-document-reader-shell .main-area:has(> .topbar-reader),
  .tt-document-reader-shell .main-area:has(> .topbar-compact) {
    padding: 4px 4px 28px;
  }

  .tt-document-reader-shell .reader-paper {
    min-height: calc(100dvh - 8px);
    padding: 12px 9px 34px;
    border-radius: 12px;
  }

  .tt-document-reader-shell .article {
    font-size: var(--tt-reader-text-size, 17.5px);
  }

  .tt-document-reader-shell .article .katex-display {
    margin: 22px 0;
    padding: 14px 10px;
    font-size: 16px;
  }

  .tt-document-reader-shell .article .katex-display .tt-equation-scroll {
    padding-left: 0.75em;
    padding-right: 4.25em;
    -webkit-overflow-scrolling: touch;
  }

  .tt-reader-plan-notice-inline {
    margin: 46px 0 14px;
    padding: 8px 38px 8px 9px;
  }

  .tt-reader-plan-notice-inline strong {
    font-size: 11.5px;
  }

  .tt-reader-plan-notice-inline span {
    font-size: 10.5px;
  }

  .tt-reader-plan-notice-inline a {
    min-height: 26px;
    padding: 0 9px;
  }

  .tt-reader-back-shortcut {
    top: 8px;
    left: 8px;
    min-height: 36px;
    max-width: min(150px, calc(100vw - 96px));
    padding: 0 10px;
  }

  .tt-reader-back-shortcut strong {
    max-width: 12ch;
  }
}

@media (max-width: 420px), (max-height: 560px) {
  .tt-debunk-loading-panel {
    top: 52%;
    width: min(300px, calc(100vw - 20px));
    gap: 7px;
    padding: 14px 12px;
  }

  .tt-debunk-loading-panel h2 {
    font-size: 15px;
  }

  .tt-debunk-loading-panel p {
    font-size: 12px;
    line-height: 1.35;
  }

  .tt-debunk-loading-panel small {
    font-size: 10px;
    line-height: 1.3;
  }

  .tt-debunk-loading-orbit {
    width: 34px;
    height: 34px;
  }

  .tt-debunk-loading-orbit span {
    width: 6px;
    height: 6px;
  }

  .tt-debunk-loading-orbit span:nth-child(1) {
    top: -3px;
    left: 14px;
  }

  .tt-debunk-loading-orbit span:nth-child(2) {
    right: 0;
    bottom: 4px;
  }

  .tt-debunk-loading-orbit span:nth-child(3) {
    left: 0;
    bottom: 4px;
  }
}

.main-area.main-area-flush-top {
  padding-top: 0;
}

.main-area.main-area-flush-top > .tt-activity-topbar {
  top: 0;
  margin-top: 0;
}

.tt-token-paper {
  gap: 14px;
}

.tt-token-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.tt-token-summary-card {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(18, 24, 38, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
}

.tt-token-summary-card span,
.tt-token-row small,
.tt-token-summary-card small {
  color: #667085;
  font-size: 12px;
}

.tt-token-summary-card strong {
  color: #121826;
  font-size: 22px;
  line-height: 1.1;
}

.tt-token-quota-bar {
  height: 8px;
  width: 100%;
  overflow: hidden;
  border-radius: 999px;
  background: #edf1f5;
}

.tt-token-quota-bar.compact {
  grid-column: 1 / -1;
  height: 6px;
}

.tt-token-quota-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a84c, #5dcaa5);
}

.tt-token-table {
  display: grid;
  gap: 6px;
  overflow-x: auto;
}

.tt-token-row {
  display: grid;
  grid-template-columns: minmax(150px, 1.4fr) minmax(120px, 1fr) minmax(110px, 0.7fr) minmax(110px, 0.7fr);
  gap: 10px;
  align-items: center;
  min-width: 640px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(18, 24, 38, 0.07);
}

.tt-token-row strong,
.tt-token-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 13px;
}

.tt-token-row small {
  grid-column: 1 / -1;
}

.tt-token-row small a {
  color: #8a5a0a;
  font-weight: 850;
}

.tt-token-row small a:hover {
  text-decoration: underline;
}

.tt-token-inline-form {
  display: inline-flex;
  margin: 0;
}

.tt-token-inline-form button {
  border: 0;
  background: transparent;
  color: #b42318;
  font: inherit;
  font-weight: 850;
  padding: 0;
  cursor: pointer;
}

.tt-token-inline-form button:hover {
  text-decoration: underline;
}

.tt-token-user-row {
  grid-template-columns: minmax(140px, 1.1fr) minmax(160px, 1fr) minmax(80px, 0.5fr) minmax(110px, 0.7fr);
}

.tt-token-grant-form {
  display: grid;
  grid-template-columns: minmax(120px, 0.55fr) minmax(220px, 1.2fr) minmax(130px, 0.65fr) minmax(220px, 1.3fr) auto;
  gap: 10px;
  align-items: end;
}

.tt-token-grant-form label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: #344054;
  font-size: 12px;
  font-weight: 800;
}

.tt-token-grant-form input,
.tt-token-grant-form select {
  width: 100%;
  min-width: 0;
  height: 38px;
  padding: 7px 9px;
  border: 1px solid rgba(18, 24, 38, 0.16);
  border-radius: 6px;
  background: #ffffff;
  color: #121826;
  font: inherit;
  font-weight: 600;
}

.tt-token-grant-form label small {
  color: #667085;
  font-size: 11px;
  font-weight: 500;
}

.tt-token-grant-form .errorlist,
.tt-token-grant-errors {
  margin: 0;
  padding: 0;
  color: #b42318;
  font-size: 11px;
  font-weight: 700;
  list-style: none;
}

.tt-token-grant-form button {
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid #9b741d;
  border-radius: 6px;
  background: #c9a84c;
  color: #17130b;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.tt-token-grant-form button:hover {
  background: #dab95c;
}

.tt-token-grant-row {
  grid-template-columns: minmax(150px, 1.2fr) minmax(130px, 0.8fr) minmax(145px, 0.85fr) minmax(130px, 0.8fr);
}

.tt-user-plan-admin-paper {
  max-width: 1120px;
}

.tt-user-plan-admin-hero {
  display: grid;
  gap: 16px;
}

.tt-user-plan-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.tt-user-plan-overview {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.tt-user-plan-search {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: end;
  gap: 12px;
  margin-top: 0;
}

.tt-user-plan-table {
  display: grid;
  overflow-x: auto;
  border-top: 1px solid rgba(18, 24, 38, 0.08);
  scrollbar-color: rgba(184, 121, 33, 0.38) transparent;
}

.tt-user-plan-table::-webkit-scrollbar {
  height: 10px;
}

.tt-user-plan-table::-webkit-scrollbar-track {
  background: transparent;
}

.tt-user-plan-table::-webkit-scrollbar-thumb {
  border: 3px solid transparent;
  border-radius: 999px;
  background: rgba(184, 121, 33, 0.34);
  background-clip: padding-box;
}

.tt-user-plan-head,
.tt-user-plan-card {
  display: grid;
  grid-template-columns:
    minmax(220px, 1.12fr)
    minmax(150px, 0.72fr)
    minmax(150px, 0.68fr)
    minmax(220px, 1fr)
    minmax(145px, 0.68fr)
    minmax(260px, 1.18fr)
    auto;
  align-items: center;
  gap: 14px;
  min-width: 1280px;
}

.tt-user-plan-head {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 10px 0;
  background: var(--paper);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(18, 24, 38, 0.08);
}

.tt-user-plan-card {
  padding: 12px 0;
  border-bottom: 1px solid rgba(18, 24, 38, 0.08);
}

.tt-user-plan-card:target {
  padding-inline: 12px;
  border-radius: 8px;
  background: rgba(255, 248, 231, 0.78);
}

.tt-user-plan-card.has-manual-plan .tt-user-plan-avatar {
  background: linear-gradient(135deg, #e1b75f, #b87921);
  color: #17130b;
}

.tt-user-plan-identity,
.tt-user-plan-state,
.tt-user-plan-usage,
.tt-user-plan-meta {
  min-width: 0;
}

.tt-user-plan-identity {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tt-user-plan-avatar {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: var(--paper-soft);
  color: var(--gold-deep);
  font-size: 14px;
  font-weight: 900;
}

.tt-user-plan-identity div,
.tt-user-plan-state,
.tt-user-plan-usage,
.tt-user-plan-meta {
  display: grid;
  gap: 4px;
}

.tt-user-plan-editor-control {
  margin: 0;
  min-height: 44px;
  padding: 8px 9px;
  border: 1px solid rgba(18, 24, 38, 0.08);
  border-radius: 8px;
  background: rgba(18, 24, 38, 0.025);
}

.tt-user-plan-editor-control span {
  gap: 1px;
}

.tt-user-plan-editor-control small {
  font-size: 10px;
  line-height: 1.2;
}

.tt-user-role-table {
  display: grid;
  overflow-x: auto;
  border-top: 1px solid rgba(18, 24, 38, 0.08);
}

.tt-user-role-head,
.tt-user-role-card {
  display: grid;
  grid-template-columns: minmax(145px, 0.72fr) minmax(76px, 0.34fr) minmax(380px, 1.75fr) minmax(104px, 0.42fr);
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.tt-user-role-card > *,
.tt-user-role-head > * {
  min-width: 0;
}

.tt-user-role-head {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 10px 0;
  background: var(--paper);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(18, 24, 38, 0.08);
}

.tt-user-role-card {
  padding: 12px 0;
  border-bottom: 1px solid rgba(18, 24, 38, 0.08);
}

.tt-user-role-card:target {
  padding-inline: 12px;
  border-radius: 8px;
  background: rgba(255, 248, 231, 0.78);
}

.tt-user-role-card.is-admin .tt-user-plan-avatar {
  background: linear-gradient(135deg, #e1b75f, #b87921);
  color: #17130b;
}

.tt-user-role-card.is-editor:not(.is-admin) .tt-user-plan-avatar {
  background: rgba(93, 202, 165, 0.16);
  color: #1f6f68;
}

.tt-user-role-card.is-business-operations:not(.is-admin):not(.is-editor) .tt-user-plan-avatar {
  background: rgba(22, 122, 142, 0.12);
  color: #126779;
}

.tt-user-role-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  min-width: 0;
}

.tt-user-role-badges span {
  max-width: 100%;
  border-radius: 999px;
  background: rgba(18, 24, 38, 0.06);
  color: var(--muted);
  padding: 3px 6px;
  font-size: 9px;
  font-weight: 900;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.tt-user-role-badges .superuser,
.tt-user-role-badges .admin {
  background: rgba(225, 183, 95, 0.18);
  color: #7a5310;
}

.tt-user-role-badges .editor {
  background: rgba(93, 202, 165, 0.14);
  color: #1f6f68;
}

.tt-user-role-badges .business-operations {
  background: rgba(22, 122, 142, 0.12);
  color: #126779;
}

.tt-user-role-badges .inactive {
  background: rgba(220, 38, 38, 0.10);
  color: #b91c1c;
}

.tt-user-role-check {
  margin: 0;
  min-width: 0;
  min-height: 40px;
  padding: 7px 8px;
  border: 1px solid rgba(18, 24, 38, 0.08);
  border-radius: 8px;
  background: rgba(18, 24, 38, 0.025);
}

.tt-user-role-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
  gap: 6px;
  min-width: 0;
}

.tt-user-role-check span {
  gap: 1px;
  min-width: 0;
}

.tt-user-role-check strong,
.tt-user-role-check small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.tt-user-role-check small {
  font-size: 9.5px;
  line-height: 1.2;
}

.tt-user-role-check input:disabled + span {
  opacity: 0.55;
}

.tt-user-role-card .tt-user-plan-identity {
  gap: 8px;
}

.tt-user-role-card .tt-user-plan-avatar {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  font-size: 12px;
}

.tt-user-role-save {
  min-width: 0;
}

.tt-user-role-save button {
  min-height: 32px;
  border-radius: 7px;
  padding-inline: 9px;
  font-size: 11px;
  line-height: 1;
  white-space: nowrap;
}

.tt-user-plan-identity strong {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.tt-user-plan-identity span,
.tt-user-plan-state small,
.tt-user-plan-usage small,
.tt-user-plan-meta span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.tt-user-plan-control,
.tt-user-plan-note-control {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.tt-user-plan-control span,
.tt-user-plan-note-control span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.tt-user-plan-control select,
.tt-user-plan-note-control input {
  width: 100%;
  min-height: 38px;
  border: 1px solid rgba(18, 24, 38, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
  color: var(--ink);
  padding: 0 10px;
  font: inherit;
}

.tt-user-plan-usage div:first-child {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 800;
}

.tt-user-plan-usage div:first-child strong {
  color: var(--gold-deep);
  font-size: 12px;
}

.tt-user-plan-save {
  justify-content: flex-end;
}

.tt-user-plan-save button {
  white-space: nowrap;
}

.tt-token-settings-form {
  margin-top: 0;
}

.tt-plan-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tt-plan-settings-grid .wide {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .tt-token-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tt-token-grant-form {
    grid-template-columns: 1fr;
  }

  .tt-token-row {
    min-width: 560px;
  }

  .tt-user-plan-search,
  .tt-user-plan-card {
    grid-template-columns: 1fr;
  }

  .tt-user-plan-table {
    overflow-x: visible;
    border-top: 0;
  }

  .tt-user-plan-head {
    display: none;
  }

  .tt-user-plan-card {
    min-width: 0;
    gap: 10px;
    padding: 14px 0;
  }

  .tt-user-role-table {
    overflow-x: visible;
    border-top: 0;
  }

  .tt-user-role-head {
    display: none;
  }

  .tt-user-role-card {
    grid-template-columns: 1fr;
    min-width: 0;
    gap: 11px;
    padding: 14px 0;
  }

  .tt-user-role-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tt-user-plan-save,
  .tt-user-role-save {
    justify-content: flex-start;
  }

  .tt-plan-settings-grid {
    grid-template-columns: 1fr;
  }

  .tt-plan-payment-panel div {
    display: grid;
    gap: 3px;
  }
}

@media (min-width: 761px) and (max-width: 1060px) {
  .tt-user-role-head,
  .tt-user-role-card {
    grid-template-columns: minmax(135px, 0.72fr) minmax(70px, 0.32fr) minmax(250px, 1.35fr) minmax(96px, 0.4fr);
    gap: 8px;
  }

  .tt-user-role-control-grid {
    grid-template-columns: repeat(2, minmax(98px, 1fr));
  }
}

@media (max-width: 480px) {
  .tt-token-summary-grid {
    grid-template-columns: 1fr;
  }

  .tt-user-plan-overview {
    display: grid;
  }
}

.reader-theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.reader-theme-toggle-icon {
  position: relative;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
}

.reader-theme-icon {
  grid-area: 1 / 1;
  width: 18px;
  height: 18px;
  display: block;
  opacity: 1;
  transform: scale(1) rotate(0deg);
  transition: opacity 140ms ease, transform 140ms ease;
}

.reader-theme-icon-sun {
  opacity: 0;
  transform: scale(0.72) rotate(-28deg);
}

body.tt-reader-dark .reader-theme-icon-moon {
  opacity: 0;
  transform: scale(0.72) rotate(28deg);
}

body.tt-reader-dark .reader-theme-icon-sun {
  opacity: 1;
  transform: scale(1) rotate(0deg);
}

.reader-preferences-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.reader-preferences-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.reader-preferences-toggle-mark {
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.reader-preferences-panel {
  position: fixed;
  z-index: 180;
  display: grid;
  width: min(372px, calc(100vw - 24px));
  gap: 0;
  box-sizing: border-box;
  padding: 0;
  max-height: min(82vh, 560px);
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid rgba(197, 185, 159, 0.82);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.99), rgba(250, 246, 238, 0.99));
  box-shadow:
    0 26px 72px rgba(45, 35, 20, 0.20),
    0 2px 0 rgba(255, 255, 255, 0.72) inset;
  color: var(--ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  line-height: 1.35;
  text-align: left;
  white-space: normal;
}

.reader-preferences-panel[hidden] {
  display: none;
}

.reader-preferences-head,
.reader-preferences-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.reader-preferences-head {
  padding: 14px 14px 12px;
  border-bottom: 1px solid rgba(222, 212, 195, 0.78);
  background:
    linear-gradient(180deg, rgba(255, 249, 235, 0.92), rgba(255, 253, 248, 0.72));
}

.reader-preferences-title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.reader-preferences-head strong {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.2;
}

.reader-preferences-head small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
}

.reader-preferences-close,
.reader-preferences-mini-button,
.reader-preferences-reset {
  border: 1px solid rgba(197, 185, 159, 0.76);
  background: rgba(245, 241, 232, 0.82);
  color: var(--ink-soft);
  cursor: pointer;
  font-family: Inter, system-ui, sans-serif;
  font-weight: 800;
}

.reader-preferences-close {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 8px;
  padding: 0;
  font-size: 18px;
  line-height: 1;
}

.reader-preferences-preview {
  display: grid;
  gap: 4px;
  margin: 12px 14px 0;
  padding: 10px 12px;
  border: 1px solid rgba(222, 212, 195, 0.74);
  border-radius: 10px;
  background: rgba(255, 253, 248, 0.78);
}

.reader-preferences-preview-heading {
  color: var(--tt-reader-heading-color, var(--navy));
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.22;
}

.reader-preferences-preview-line {
  color: var(--tt-reader-text-color, var(--ink-soft));
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 15px;
  line-height: 1.55;
}

.reader-preferences-preview-mark {
  border-radius: 4px;
  background: var(--tt-reader-read-mark-bg, rgba(187, 247, 208, 0.46));
  padding: 0 2px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.reader-preferences-field {
  display: grid;
  min-width: 0;
  gap: 8px;
  margin: 0;
  padding: 13px 14px;
  border-top: 1px solid rgba(222, 212, 195, 0.58);
}

.reader-preferences-preview + .reader-preferences-field {
  border-top: 0;
}

.reader-preferences-label span,
.reader-preferences-fieldset legend,
.reader-preferences-color-row > span:first-child,
.reader-preferences-color-row > label:first-child {
  color: var(--ink-soft);
  font-weight: 800;
}

.reader-preferences-field output {
  color: var(--muted);
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}

.reader-preferences-field input[type="range"] {
  width: 100%;
  accent-color: var(--gold);
  cursor: pointer;
}

.reader-preferences-fieldset {
  border: 0;
  margin: 0;
  min-width: 0;
}

.reader-preferences-fieldset legend {
  margin-bottom: 8px;
  padding: 0;
}

.reader-preferences-color-row {
  display: grid;
  grid-template-columns: minmax(58px, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.reader-preferences-color-row input[type="color"] {
  width: 40px;
  height: 32px;
  border: 1px solid rgba(197, 185, 159, 0.76);
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  padding: 2px;
}

.reader-preferences-swatches {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}

.reader-preferences-swatch {
  width: 26px;
  height: 26px;
  border: 1px solid rgba(93, 64, 11, 0.18);
  border-radius: 999px;
  background: var(--reader-swatch);
  box-shadow: inset 0 0 0 2px rgba(255, 253, 248, 0.86);
  cursor: pointer;
  padding: 0;
}

.reader-preferences-swatch[aria-pressed="true"],
.reader-preferences-swatch[aria-pressed="true"]:hover,
.reader-preferences-swatch[aria-pressed="true"]:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.reader-preferences-mini-button,
.reader-preferences-reset {
  min-height: 32px;
  border-radius: 8px;
  padding: 0 9px;
  font-size: 11px;
  white-space: nowrap;
}

.reader-preferences-reset {
  width: calc(100% - 28px);
  margin: 0 14px 14px;
  background: rgba(255, 249, 235, 0.96);
  color: #7a4f06;
}

.reader-preferences-close:hover,
.reader-preferences-close:focus-visible,
.reader-preferences-mini-button:hover,
.reader-preferences-mini-button:focus-visible,
.reader-preferences-reset:hover,
.reader-preferences-reset:focus-visible {
  border-color: rgba(201, 150, 58, 0.48);
  background-color: rgba(255, 243, 206, 0.82);
  outline: none;
}

.reader-preferences-swatch:hover,
.reader-preferences-swatch:focus-visible {
  border-color: rgba(201, 150, 58, 0.58);
  outline: 2px solid rgba(201, 150, 58, 0.28);
  outline-offset: 2px;
}

html.tt-reader-dark,
body.theorytrace-body.tt-reader-dark {
  --bg: #080908;
  --paper: #15140f;
  --paper-soft: #1e1b13;
  --ink: #f5ecd8;
  --ink-soft: #e4d2a8;
  --muted: #b5a98f;
  --muted-2: #8f856f;
  --border: #433a28;
  --border-soft: #2d281d;
  --navy: #f0d18a;
  --navy-2: #c58f32;
  --blue: #8fb4ff;
  --blue-soft: rgba(99, 134, 226, 0.18);
  --gold: #e1b75f;
  --gold-soft: rgba(225, 183, 95, 0.16);
  --green: #82dea4;
  --green-soft: rgba(74, 222, 128, 0.16);
  --amber: #f0bb64;
  --amber-soft: rgba(240, 187, 100, 0.15);
  --purple: #c4a5ff;
  --purple-soft: rgba(196, 165, 255, 0.16);
  --red: #ff9b9b;
  --red-soft: rgba(248, 113, 113, 0.16);
  --gray: #a9a9aa;
  --gray-soft: rgba(169, 169, 170, 0.14);
  --highlight: rgba(225, 183, 95, 0.54);
  --shadow: 0 28px 90px rgba(0, 0, 0, 0.58);
  --shadow-soft: 0 16px 52px rgba(0, 0, 0, 0.42);
}

html.tt-reader-dark {
  background: #080908;
  color-scheme: dark;
}

html.tt-reader-dark body.theorytrace-body,
body.theorytrace-body.tt-reader-dark {
  background:
    radial-gradient(circle at 16% -8%, rgba(225, 183, 95, 0.18), transparent 32%),
    radial-gradient(circle at 100% 4%, rgba(130, 222, 164, 0.07), transparent 28%),
    radial-gradient(circle at 54% 116%, rgba(225, 183, 95, 0.10), transparent 40%),
    linear-gradient(145deg, #070806 0%, #10100c 48%, #18140c 100%);
  color: var(--ink);
}

body.tt-reader-dark .tt-site-rights {
  color: rgba(170, 160, 141, 0.72);
}

body.tt-reader-dark .tt-auth-page {
  background:
    radial-gradient(circle at 18% 12%, rgba(225, 183, 95, 0.16), transparent 30%),
    radial-gradient(circle at 88% 20%, rgba(130, 222, 164, 0.07), transparent 26%),
    linear-gradient(145deg, #070806 0%, #10100c 52%, #18140c 100%);
}

body.tt-reader-dark .tt-auth-panel {
  border-color: rgba(225, 183, 95, 0.18);
  background:
    linear-gradient(180deg, rgba(24, 22, 16, 0.94), rgba(14, 14, 11, 0.96));
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.5);
}

body.tt-reader-dark .tt-auth-brand {
  color: #f3d995;
}

body.tt-reader-dark .tt-auth-brand span {
  background: linear-gradient(135deg, #f0d18a, #a86c1b);
  color: #141109;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.32);
}

body.tt-reader-dark .tt-auth-head h1 {
  color: #f8edd5;
}

body.tt-reader-dark .tt-auth-head p,
body.tt-reader-dark .tt-auth-switch,
body.tt-reader-dark .tt-auth-form small {
  color: var(--muted);
}

body.tt-reader-dark .tt-auth-form label {
  color: #d9c79e;
}

body.tt-reader-dark .tt-auth-form input {
  border-color: rgba(225, 183, 95, 0.24);
  background: rgba(255, 255, 255, 0.06);
  color: #f8edd5;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-auth-form input:focus {
  border-color: rgba(225, 183, 95, 0.62);
  background: rgba(255, 255, 255, 0.085);
  outline: 3px solid rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-auth-form .errorlist {
  color: #ffb4a8;
}

body.tt-reader-dark .tt-auth-switch a {
  color: #f3d995;
}

body.tt-reader-dark .tt-auth-switch a:hover,
body.tt-reader-dark .tt-auth-switch a:focus-visible {
  color: #ffffff;
}

body.tt-reader-dark .tt-aksbel-library-main {
  background:
    radial-gradient(circle at 14% 4%, rgba(225, 183, 95, 0.14), transparent 30%),
    radial-gradient(circle at 88% 8%, rgba(130, 222, 164, 0.06), transparent 28%),
    linear-gradient(180deg, rgba(8, 9, 8, 0.98), rgba(18, 15, 10, 0.98)),
    var(--bg);
}

body.tt-reader-dark .tt-library-sidebar-drawer .sidebar-close-button {
  border-color: rgba(225, 183, 95, 0.28);
  background: rgba(18, 17, 13, 0.92);
  color: #f6e7bf;
}

body.tt-reader-dark .tt-library-tree-fab {
  border-color: rgba(215, 168, 78, 0.26);
  background: rgba(215, 168, 78, 0.12);
  color: #f0d18a;
  box-shadow: none;
}

body.tt-reader-dark .tt-library-tree-fab:hover,
body.tt-reader-dark .tt-library-tree-fab:focus-visible,
body.tt-reader-dark .tt-library-tree-fab[aria-expanded="true"] {
  border-color: rgba(215, 168, 78, 0.44);
  background: rgba(215, 168, 78, 0.22);
  color: #fff2cf;
}

body.tt-reader-dark .tt-aksbel-library-head {
  border-bottom-color: rgba(215, 168, 78, 0.16);
}

body.tt-reader-dark .tt-empty.tt-aksbel-library-empty {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--ink);
}

body.tt-reader-dark .tt-aksbel-library-empty h2 {
  color: #f0d18a;
}

body.tt-reader-dark .tt-aksbel-library-empty p {
  color: #bfb49b;
}

body.tt-reader-dark .tt-library-section-head h2,
body.tt-reader-dark .tt-aksbel-library-head h1,
body.tt-reader-dark .tt-library-brand-copy strong,
body.tt-reader-dark .tt-aksbel-new-book-card strong {
  color: #f0d18a;
}

body.tt-reader-dark .tt-public-graph-meta span,
body.tt-reader-dark .tt-public-invitations,
body.tt-reader-dark .tt-library-search,
body.tt-reader-dark .tt-profile-action-card,
body.tt-reader-dark .tt-plan-card,
body.tt-reader-dark .tt-review-card,
body.tt-reader-dark .tt-text-report-actions form,
body.tt-reader-dark .tt-text-report-review-card form,
body.tt-reader-dark .tt-learning-donut-card,
body.tt-reader-dark .tt-aksbel-book-form,
body.tt-reader-dark .tt-aksbel-confirm-form,
body.tt-reader-dark .tt-project-card,
body.tt-reader-dark .tt-form {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink);
}

body.tt-reader-dark .tt-profile-role-strip span {
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-profile-role-strip span.admin {
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

body.tt-reader-dark .tt-profile-role-strip span.editor {
  background: rgba(93, 202, 165, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-profile-zone,
body.tt-reader-dark .tt-profile-subsection,
body.tt-reader-dark .tt-profile-admin-api-form {
  border-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-profile-zone-head span {
  color: #f0d18a;
}

body.tt-reader-dark .tt-profile-zone-head h2,
body.tt-reader-dark .tt-profile-zone-head h1,
body.tt-reader-dark .tt-profile-overview-panel strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-editor-directory-row {
  border-bottom-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-public-profile-hero,
body.tt-reader-dark .tt-public-profile-project-row {
  border-bottom-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-public-profile-main h1,
body.tt-reader-dark .tt-public-profile-section-head h2,
body.tt-reader-dark .tt-public-profile-project-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-public-profile-username,
body.tt-reader-dark .tt-public-profile-bio,
body.tt-reader-dark .tt-public-profile-section-head p,
body.tt-reader-dark .tt-public-profile-project-row span {
  color: var(--muted);
}

body.tt-reader-dark .tt-public-profile-stats span {
  border-bottom-color: rgba(225, 183, 95, 0.18);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-public-profile-stats strong,
body.tt-reader-dark .tt-public-profile-project-row:hover strong,
body.tt-reader-dark .tt-public-profile-project-row:focus-visible strong {
  color: #f0d18a;
}

body.tt-reader-dark .tt-editor-directory-title strong,
body.tt-reader-dark .tt-editor-directory-summary strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-editor-directory-title span,
body.tt-reader-dark .tt-editor-directory-bio,
body.tt-reader-dark .tt-editor-directory-summary span {
  color: var(--muted);
}

body.tt-reader-dark .tt-editor-directory-stats span {
  background: rgba(215, 168, 78, 0.14);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-editor-directory-stats strong {
  color: #f0d18a;
}

body.tt-reader-dark .tt-editor-directory-roles span {
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-editor-directory-roles .admin {
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

body.tt-reader-dark .tt-editor-directory-roles .editor {
  background: rgba(93, 202, 165, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-editor-directory-roles .verifier {
  background: rgba(91, 141, 239, 0.16);
  color: #a9c5ff;
}

body.tt-reader-dark .tt-profile-zone-head p,
body.tt-reader-dark .tt-profile-overview-panel span,
body.tt-reader-dark .tt-profile-overview-panel p,
body.tt-reader-dark .tt-profile-action-card p {
  color: var(--muted);
}

body.tt-reader-dark .tt-profile-zone-primary {
  background: linear-gradient(135deg, #f0d18a, #b87921);
  color: #17130b;
}

body.tt-reader-dark .tt-profile-overview-panel {
  border-color: rgba(225, 183, 95, 0.14);
  background: rgba(255, 255, 255, 0.04);
}

body.tt-reader-dark .tt-inline-form.tt-organization-admin-tool-form,
body.tt-reader-dark .tt-organization-admin-tools,
body.tt-reader-dark .tt-organization-admin-tools.tt-school-managed-account-panel,
body.tt-reader-dark .tt-organization-admin-tools.tt-organization-admin-plan {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-profile-admin-zone {
  border-color: rgba(225, 183, 95, 0.24);
  background:
    radial-gradient(circle at 10% 8%, rgba(225, 183, 95, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(225, 183, 95, 0.07), rgba(255, 255, 255, 0.025));
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-admin-zone {
  border-color: transparent;
  background: transparent;
}

body.tt-reader-dark .tt-activity-monitor-summary {
  border-bottom-color: rgba(215, 168, 78, 0.14);
}

body.tt-reader-dark .tt-activity-monitor-hero,
body.tt-reader-dark .tt-activity-monitor-card,
body.tt-reader-dark .tt-activity-monitor-health {
  border-color: rgba(225, 183, 95, 0.16);
  background:
    radial-gradient(circle at 14% 0%, rgba(225, 183, 95, 0.10), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.026));
  color: var(--ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.024);
}

body.tt-reader-dark .tt-activity-monitor-kicker,
body.tt-reader-dark .tt-activity-monitor-card-gold strong {
  color: #f0d18a;
}

body.tt-reader-dark .tt-activity-monitor-title h1,
body.tt-reader-dark .tt-activity-monitor-section-head h2,
body.tt-reader-dark .tt-activity-monitor-health strong,
body.tt-reader-dark .tt-activity-monitor-card strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-activity-monitor-title small,
body.tt-reader-dark .tt-activity-monitor-section-head p,
body.tt-reader-dark .tt-activity-monitor-card span,
body.tt-reader-dark .tt-activity-monitor-card small,
body.tt-reader-dark .tt-activity-monitor-health p {
  color: rgba(226, 215, 193, 0.78);
}

body.tt-reader-dark .tt-activity-monitor-health > span,
body.tt-reader-dark .tt-activity-monitor-section-head > span {
  background: rgba(255, 255, 255, 0.07);
  color: rgba(226, 215, 193, 0.86);
}

body.tt-reader-dark .tt-activity-monitor-health-green,
body.tt-reader-dark .tt-activity-monitor-card-green {
  border-color: rgba(74, 222, 128, 0.20);
}

body.tt-reader-dark .tt-activity-monitor-health-green strong,
body.tt-reader-dark .tt-activity-monitor-card-green strong {
  color: #9ee4bd;
}

body.tt-reader-dark .tt-activity-monitor-health-red,
body.tt-reader-dark .tt-activity-monitor-card-red {
  border-color: rgba(248, 113, 113, 0.22);
}

body.tt-reader-dark .tt-activity-monitor-health-red strong,
body.tt-reader-dark .tt-activity-monitor-card-red strong {
  color: #ffc6c6;
}

body.tt-reader-dark .tt-activity-monitor-summary span,
body.tt-reader-dark .tt-worker-status-panel {
  border-color: rgba(215, 168, 78, 0.18);
  background: rgba(255, 255, 255, 0.045);
}

body.tt-reader-dark .tt-activity-monitor-summary strong,
body.tt-reader-dark .tt-worker-status-head h2,
body.tt-reader-dark .tt-worker-total-grid strong,
body.tt-reader-dark .tt-worker-list strong,
body.tt-reader-dark .tt-worker-queue-row strong {
  color: var(--ink);
}

body.tt-reader-dark .tt-activity-monitor-summary small,
body.tt-reader-dark .tt-worker-status-head p,
body.tt-reader-dark .tt-worker-status-error,
body.tt-reader-dark .tt-worker-total-grid small,
body.tt-reader-dark .tt-worker-list small,
body.tt-reader-dark .tt-worker-queue-row span {
  color: var(--muted);
}

body.tt-reader-dark .tt-worker-status-head > span {
  background: rgba(255, 255, 255, 0.06);
  color: var(--muted);
}

body.tt-reader-dark .tt-worker-status-head > span.ready {
  background: rgba(74, 222, 128, 0.14);
  color: var(--green);
}

body.tt-reader-dark .tt-worker-total-grid span,
body.tt-reader-dark .tt-worker-list span {
  border-color: rgba(215, 168, 78, 0.14);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-worker-retry-form {
  border-color: rgba(248, 113, 113, 0.28);
  background: rgba(127, 29, 29, 0.18);
}

body.tt-reader-dark .tt-worker-retry-form strong {
  color: #fecaca;
}

body.tt-reader-dark .tt-worker-retry-form small {
  color: #fca5a5;
}

body.tt-reader-dark .tt-worker-retry-form button {
  background: #ef4444;
  color: #190606;
}

body.tt-reader-dark .tt-worker-job-row {
  border-top-color: rgba(215, 168, 78, 0.14);
  background: transparent;
}

body.tt-reader-dark .tt-worker-job-row:hover,
body.tt-reader-dark .tt-worker-job-row:focus-within {
  background: rgba(215, 168, 78, 0.07);
}

body.tt-reader-dark .tt-worker-job-cancel[open] form {
  border-color: rgba(215, 168, 78, 0.22);
  background: var(--paper);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.38);
}

body.tt-reader-dark .tt-worker-queue-table {
  border-color: rgba(215, 168, 78, 0.16);
  background: rgba(255, 255, 255, 0.025);
}

body.tt-reader-dark .tt-worker-queue-row {
  border-top-color: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-worker-queue-head {
  background: rgba(215, 168, 78, 0.08);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-plan-card-link:hover,
body.tt-reader-dark .tt-plan-card-link:focus-visible {
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34);
}

body.tt-reader-dark .tt-plan-card em,
body.tt-reader-dark .tt-plan-detail-head h1,
body.tt-reader-dark .tt-plan-detail-block h2 {
  color: #f3d995;
}

body.tt-reader-dark .tt-plan-detail-meta span {
  background: rgba(225, 183, 95, 0.14);
  color: #f3d995;
}

body.tt-reader-dark .tt-plan-step-list {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-token-paper .tt-profile-contributions {
  border-top-color: rgba(225, 183, 95, 0.16);
}

body.tt-reader-dark .tt-token-summary-card {
  border-color: rgba(225, 183, 95, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.032));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-token-summary-card span,
body.tt-reader-dark .tt-token-summary-card small,
body.tt-reader-dark .tt-token-row small {
  color: var(--muted);
}

body.tt-reader-dark .tt-token-summary-card strong {
  color: #f3d995;
}

body.tt-reader-dark .tt-token-quota-bar {
  background: rgba(255, 255, 255, 0.075);
  box-shadow: inset 0 0 0 1px rgba(225, 183, 95, 0.08);
}

body.tt-reader-dark .tt-token-quota-bar i {
  background: linear-gradient(90deg, #e1b75f, #82dea4);
  box-shadow: 0 0 18px rgba(225, 183, 95, 0.18);
}

body.tt-reader-dark .tt-token-table {
  scrollbar-color: rgba(225, 183, 95, 0.46) transparent;
}

body.tt-reader-dark .tt-token-table::-webkit-scrollbar {
  height: 10px;
}

body.tt-reader-dark .tt-token-table::-webkit-scrollbar-track {
  background: transparent;
}

body.tt-reader-dark .tt-token-table::-webkit-scrollbar-thumb {
  border: 3px solid transparent;
  border-radius: 999px;
  background: rgba(225, 183, 95, 0.42);
  background-clip: padding-box;
}

body.tt-reader-dark .tt-token-row {
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-plan-card {
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-plan-table {
  border-top-color: rgba(225, 183, 95, 0.12);
  scrollbar-color: rgba(225, 183, 95, 0.46) transparent;
}

body.tt-reader-dark .tt-user-plan-table::-webkit-scrollbar-thumb {
  background: rgba(225, 183, 95, 0.42);
  background-clip: padding-box;
}

body.tt-reader-dark .tt-user-plan-head {
  background: var(--paper);
  color: var(--muted);
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-role-card {
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-role-table {
  border-top-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-role-head {
  background: var(--paper);
  color: var(--muted);
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-user-plan-card:target {
  background: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-user-role-card:target {
  background: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-token-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-user-plan-identity strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-user-plan-avatar {
  background: rgba(215, 168, 78, 0.14);
  color: #f0d18a;
}

body.tt-reader-dark .tt-user-plan-card.has-manual-plan .tt-user-plan-avatar {
  background: linear-gradient(135deg, #f0d18a, #a97923);
  color: #17130b;
}

body.tt-reader-dark .tt-user-plan-editor-control {
  border-color: rgba(225, 183, 95, 0.12);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-user-role-card.is-admin .tt-user-plan-avatar {
  background: linear-gradient(135deg, #f0d18a, #a97923);
  color: #17130b;
}

body.tt-reader-dark .tt-user-role-card.is-editor:not(.is-admin) .tt-user-plan-avatar {
  background: rgba(93, 202, 165, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-user-role-card.is-business-operations:not(.is-admin):not(.is-editor) .tt-user-plan-avatar {
  background: rgba(72, 189, 211, 0.14);
  color: #9adce8;
}

body.tt-reader-dark .tt-user-role-badges span {
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-user-role-badges .superuser,
body.tt-reader-dark .tt-user-role-badges .admin {
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

body.tt-reader-dark .tt-user-role-badges .editor {
  background: rgba(93, 202, 165, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-user-role-badges .business-operations {
  background: rgba(72, 189, 211, 0.14);
  color: #9adce8;
}

body.tt-reader-dark .tt-user-role-badges .inactive {
  background: rgba(220, 38, 38, 0.18);
  color: #ffb4aa;
}

body.tt-reader-dark .tt-user-role-check {
  border-color: rgba(225, 183, 95, 0.12);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-token-row span {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-token-grant-form label {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-token-grant-form input,
body.tt-reader-dark .tt-token-grant-form select {
  border-color: rgba(225, 183, 95, 0.22);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .tt-token-grant-form label small {
  color: var(--muted);
}

body.tt-reader-dark .tt-token-grant-form .errorlist,
body.tt-reader-dark .tt-token-grant-errors {
  color: #ffb4a8;
}

body.tt-reader-dark .tt-token-grant-form button {
  border-color: #e1b75f;
  background: #d7a84e;
  color: #17130b;
}

body.tt-reader-dark .tt-user-plan-identity span,
body.tt-reader-dark .tt-user-plan-state small,
body.tt-reader-dark .tt-user-plan-usage small,
body.tt-reader-dark .tt-user-plan-meta span,
body.tt-reader-dark .tt-user-plan-control span,
body.tt-reader-dark .tt-user-plan-note-control span {
  color: var(--muted);
}

body.tt-reader-dark .tt-user-plan-usage div:first-child {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-user-plan-usage div:first-child strong {
  color: #f0d18a;
}

body.tt-reader-dark .tt-user-plan-control select,
body.tt-reader-dark .tt-user-plan-note-control input {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .tt-token-row small a {
  color: #f3d995;
}

body.tt-reader-dark .tt-token-inline-form button {
  color: #ffb4a8;
}

body.tt-reader-dark .tt-token-inline-form button:hover,
body.tt-reader-dark .tt-token-row small a:hover {
  color: #ffffff;
}

body.tt-reader-dark .tt-report-main-area {
  background:
    radial-gradient(circle at 8% 2%, rgba(225, 183, 95, 0.11), transparent 28%),
    radial-gradient(circle at 90% 10%, rgba(130, 222, 164, 0.055), transparent 26%);
}

body.tt-reader-dark .tt-learning-report-head {
  border-bottom-color: rgba(225, 183, 95, 0.16);
}

body.tt-reader-dark .tt-progress-page-head,
body.tt-reader-dark .tt-progress-section,
body.tt-reader-dark .tt-progress-daily,
body.tt-reader-dark .tt-progress-summary article,
body.tt-reader-dark .tt-progress-chart-wrap,
body.tt-reader-dark .tt-progress-ranking,
body.tt-reader-dark .tt-progress-ranking-head,
body.tt-reader-dark .tt-progress-ranking-row,
body.tt-reader-dark .tt-progress-daily-table,
body.tt-reader-dark .tt-progress-daily-head,
body.tt-reader-dark .tt-progress-daily-row,
body.tt-reader-dark .tt-progress-overview,
body.tt-reader-dark .tt-progress-mini-chart {
  border-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-progress-mini-chart {
  background: rgba(255, 255, 255, 0.025);
}

body.tt-reader-dark .tt-progress-page-head h1,
body.tt-reader-dark .tt-progress-head h2 {
  color: #f3d995;
}

body.tt-reader-dark .tt-progress-page-head p,
body.tt-reader-dark .tt-progress-head p,
body.tt-reader-dark .tt-progress-summary span,
body.tt-reader-dark .tt-progress-summary small,
body.tt-reader-dark .tt-progress-chart-title span,
body.tt-reader-dark .tt-progress-legend small,
body.tt-reader-dark .tt-progress-note,
body.tt-reader-dark .tt-progress-ranking-head,
body.tt-reader-dark .tt-progress-daily-head,
body.tt-reader-dark .tt-progress-ranking-row small {
  color: var(--muted);
}

body.tt-reader-dark .tt-progress-page-head > a,
body.tt-reader-dark .tt-progress-ranking-row > b {
  color: #f0d18a;
}

body.tt-reader-dark .tt-progress-summary strong,
body.tt-reader-dark .tt-progress-chart-title strong,
body.tt-reader-dark .tt-progress-legend b,
body.tt-reader-dark .tt-progress-ranking-row strong,
body.tt-reader-dark .tt-progress-daily-row strong,
body.tt-reader-dark .tt-progress-mini-chart header span {
  color: #f8edd5;
}

body.tt-reader-dark .tt-progress-mini-chart header strong {
  color: #f0ca72;
}

body.tt-reader-dark .tt-progress-mini-chart footer span {
  color: #a99f8e;
}

body.tt-reader-dark .tt-progress-ranking-row,
body.tt-reader-dark .tt-progress-daily-row {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-progress-range a,
body.tt-reader-dark .tt-progress-metrics a,
body.tt-reader-dark .tt-progress-scope-links a {
  color: var(--muted);
}

body.tt-reader-dark .tt-progress-range a:hover,
body.tt-reader-dark .tt-progress-metrics a:hover,
body.tt-reader-dark .tt-progress-scope-links a:hover {
  background: rgba(225, 183, 95, 0.08);
  color: #fff8e7;
}

body.tt-reader-dark .tt-progress-range a.active,
body.tt-reader-dark .tt-progress-metrics a.active {
  border-color: rgba(225, 183, 95, 0.34);
  background: rgba(225, 183, 95, 0.14);
  color: #f3d995;
}

body.tt-reader-dark .tt-progress-grid-line {
  stroke: rgba(248, 237, 213, 0.12);
}

body.tt-reader-dark .tt-progress-axis-label {
  fill: #b9ad98;
}

body.tt-reader-dark .tt-progress-series-line {
  stroke: var(--series-color-dark);
}

body.tt-reader-dark .tt-progress-series-point {
  fill: var(--series-color-dark);
  stroke: #171a20;
}

body.tt-reader-dark .tt-progress-legend i {
  background: var(--series-color-dark);
}

body.tt-reader-dark .tt-progress-ranking-row a:hover strong {
  color: #f0ca72;
}

body.tt-reader-dark .tt-progress-inline-link {
  border-color: rgba(225, 183, 95, 0.28);
  color: #f0ca72 !important;
}

body.tt-reader-dark .tt-progress-inline-link:hover {
  background: rgba(225, 183, 95, 0.1);
}

body.tt-reader-dark .tt-learning-report-head h1,
body.tt-reader-dark .tt-learning-donut-card h2,
body.tt-reader-dark .tt-learning-section-head h2 {
  color: #f3d995;
}

body.tt-reader-dark .tt-learning-report-head p,
body.tt-reader-dark .tt-learning-score span,
body.tt-reader-dark .tt-learning-stat-grid span,
body.tt-reader-dark .tt-learning-stat-grid small,
body.tt-reader-dark .tt-learning-donut-card p,
body.tt-reader-dark .tt-learning-section-head p,
body.tt-reader-dark .tt-learning-section-head > span,
body.tt-reader-dark .tt-learning-bar-row small {
  color: var(--muted);
}

body.tt-reader-dark .tt-learning-score strong {
  color: #82dea4;
  text-shadow: 0 0 22px rgba(130, 222, 164, 0.12);
}

body.tt-reader-dark .tt-learning-stat-grid article,
body.tt-reader-dark .tt-learning-donut-card {
  border-color: rgba(225, 183, 95, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.032));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-learning-stat-grid strong,
body.tt-reader-dark .tt-learning-donut strong,
body.tt-reader-dark .tt-learning-bar-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-learning-donut {
  background:
    radial-gradient(circle at center, var(--paper) 0 54%, transparent 55%),
    conic-gradient(#82dea4 calc(var(--value) * 1%), rgba(130, 222, 164, 0.13) 0);
  box-shadow: inset 0 0 0 1px rgba(130, 222, 164, 0.12);
}

body.tt-reader-dark .tt-learning-donut.read {
  background:
    radial-gradient(circle at center, var(--paper) 0 54%, transparent 55%),
    conic-gradient(#e1b75f calc(var(--value) * 1%), rgba(225, 183, 95, 0.14) 0);
  box-shadow: inset 0 0 0 1px rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-learning-bar-row {
  border-bottom-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-learning-bar-row em {
  background: rgba(225, 183, 95, 0.12);
  color: #f3d995;
}

body.tt-reader-dark .tt-learning-bar-track {
  background: rgba(255, 255, 255, 0.07);
}

body.tt-reader-dark .tt-learning-bar-track .total {
  background: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-learning-bar-track .questions {
  background: rgba(225, 183, 95, 0.62);
}

body.tt-reader-dark .tt-learning-bar-track .correct {
  background: #82dea4;
}

body.tt-reader-dark .tt-aksbel-status-card {
  border: 0;
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-aksbel-new-book-card {
  border-color: rgba(215, 168, 78, 0.34);
  background: rgba(255, 255, 255, 0.045);
}

body.tt-reader-dark .tt-aksbel-new-book-card:hover {
  background: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-aksbel-field-strip button {
  border-color: rgba(215, 168, 78, 0.18);
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-aksbel-field-action {
  border-color: rgba(215, 168, 78, 0.36);
  background: rgba(215, 168, 78, 0.15);
  color: #f0d18a;
}

body.tt-reader-dark .tt-aksbel-field-action:hover,
body.tt-reader-dark .tt-aksbel-field-action:focus-visible {
  border-color: rgba(215, 168, 78, 0.52);
  background: rgba(215, 168, 78, 0.24);
  color: #fff2cf;
}

body.tt-reader-dark .tt-aksbel-field-strip button.active {
  border-color: rgba(215, 168, 78, 0.42);
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

body.tt-reader-dark .tt-organization-book-row {
  border-bottom-color: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-organization-book-title strong {
  color: var(--ink);
}

body.tt-reader-dark .tt-book-toggle-button {
  border-color: rgba(215, 168, 78, 0.34);
  background: rgba(215, 168, 78, 0.14);
  color: #f0d18a;
}

body.tt-reader-dark .tt-book-toggle-button.is-added {
  border-color: rgba(103, 202, 154, 0.28);
  background: rgba(55, 134, 96, 0.16);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-profile-form input,
body.tt-reader-dark .tt-profile-form select,
body.tt-reader-dark .tt-profile-form textarea,
body.tt-reader-dark .tt-auth-form input,
body.tt-reader-dark .tt-aksbel-book-form input,
body.tt-reader-dark .tt-aksbel-book-form textarea,
body.tt-reader-dark .tt-library-search input,
body.tt-reader-dark .tt-form input,
body.tt-reader-dark .tt-form textarea,
body.tt-reader-dark .tt-form select,
body.tt-reader-dark .tt-text-report-actions input,
body.tt-reader-dark .tt-text-report-review-card select,
body.tt-reader-dark .tt-text-report-review-card input {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .tt-profile-form input::placeholder,
body.tt-reader-dark .tt-profile-form textarea::placeholder,
body.tt-reader-dark .tt-auth-form input::placeholder,
body.tt-reader-dark .tt-aksbel-book-form input::placeholder,
body.tt-reader-dark .tt-aksbel-book-form textarea::placeholder,
body.tt-reader-dark .tt-library-search input::placeholder,
body.tt-reader-dark .tt-form input::placeholder,
body.tt-reader-dark .tt-form textarea::placeholder {
  color: rgba(170, 160, 141, 0.78);
}

body.tt-reader-dark .main-area {
  scrollbar-color: rgba(170, 160, 141, 0.48) transparent;
}

body.tt-reader-dark .main-area::-webkit-scrollbar-thumb,
body.tt-reader-dark .project-tree-scroll::-webkit-scrollbar-thumb {
  background: rgba(170, 160, 141, 0.42);
  background-clip: padding-box;
}

body.tt-reader-dark .main-area::-webkit-scrollbar-thumb:hover,
body.tt-reader-dark .project-tree-scroll::-webkit-scrollbar-thumb:hover {
  background: rgba(228, 189, 104, 0.5);
  background-clip: padding-box;
}

body.tt-reader-dark .topbar {
  background: rgba(12, 12, 9, 0.88);
  border-bottom-color: rgba(225, 183, 95, 0.18);
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.34);
}

body.tt-reader-dark .reader-labels,
body.tt-reader-dark .breadcrumb,
body.tt-reader-dark .reader-document-meta {
  color: var(--muted);
}

body.tt-reader-dark .breadcrumb strong,
body.tt-reader-dark .breadcrumb a:hover {
  color: var(--ink);
}

body.tt-reader-dark .reader-document-meta span {
  border-color: rgba(215, 168, 78, 0.16);
  background: rgba(255, 255, 255, 0.04);
}

body.tt-reader-dark .member-avatar {
  border-color: rgba(20, 17, 9, 0.92);
  background: linear-gradient(135deg, #f0d18a, #b87921);
  color: #141109;
  box-shadow:
    0 0 0 1px rgba(225, 183, 95, 0.22),
    0 10px 24px rgba(0, 0, 0, 0.36);
}

body.tt-reader-dark .member-avatar:hover,
body.tt-reader-dark .member-avatar:focus-visible {
  border-color: rgba(225, 183, 95, 0.78);
  box-shadow:
    0 0 0 2px rgba(225, 183, 95, 0.20),
    0 12px 28px rgba(0, 0, 0, 0.42);
}

body.tt-reader-dark .member-avatar img {
  background: #141109;
  filter: saturate(0.96) brightness(0.94);
}

body.tt-reader-dark .reader-label-toggle,
body.tt-reader-dark .btn.soft,
body.tt-reader-dark .tt-btn {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--ink-soft);
}

body.tt-reader-dark .reader-label-toggle:hover,
body.tt-reader-dark .btn.soft:hover,
body.tt-reader-dark .tt-btn:hover {
  background: rgba(215, 168, 78, 0.12);
  color: var(--ink);
}

body.tt-reader-dark .tt-contributors-page .tt-page-head h1 {
  color: #f8edd5;
}

body.tt-reader-dark .tt-contributors-page .tt-page-subtitle {
  color: rgba(207, 196, 174, 0.86);
}

body.tt-reader-dark .tt-contributors-page .tt-kicker {
  color: #f0d18a;
}

body.tt-reader-dark .tt-contributor-row {
  border-color: rgba(225, 183, 95, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.026));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

body.tt-reader-dark .tt-contributor-row:hover,
body.tt-reader-dark .tt-contributor-row:focus-within {
  border-color: rgba(225, 183, 95, 0.30);
  background:
    linear-gradient(180deg, rgba(215, 168, 78, 0.10), rgba(255, 255, 255, 0.035));
}

body.tt-reader-dark .tt-contributor-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-contributor-row strong small {
  border: 1px solid rgba(103, 202, 154, 0.28);
  border-radius: 999px;
  padding: 2px 7px;
  background: rgba(55, 134, 96, 0.16);
  color: #9ee4bd;
  line-height: 1.2;
}

body.tt-reader-dark .tt-contributor-row p {
  color: rgba(207, 196, 174, 0.78);
}

body.tt-reader-dark .tt-contributors-page .tt-empty h2 {
  color: #f8edd5;
}

body.tt-reader-dark .tt-contributors-page .tt-empty p {
  color: rgba(207, 196, 174, 0.78);
}

body.tt-reader-dark .btn.primary,
body.tt-reader-dark .tt-btn-primary {
  background: var(--gold);
  color: #17130b;
}

body.tt-reader-dark .tt-profile-actions a.tt-payment-cta {
  border-color: rgba(240, 209, 138, 0.38);
  background: linear-gradient(135deg, #f0d18a, #b97f25);
  color: #17130b;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}

body.tt-reader-dark .tt-profile-actions a.tt-payment-cta:hover,
body.tt-reader-dark .tt-profile-actions a.tt-payment-cta:focus-visible {
  background: linear-gradient(135deg, #f7df9e, #c99231);
  color: #111111;
}

body.tt-reader-dark .tt-danger-panel {
  border-color: rgba(248, 113, 113, 0.34);
  background:
    linear-gradient(180deg, rgba(72, 20, 20, 0.72), rgba(28, 14, 12, 0.94));
  color: var(--ink);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.52);
}

body.tt-reader-dark .tt-danger-panel .tt-kicker {
  color: #ffb4a8;
}

body.tt-reader-dark .tt-danger-panel h1 {
  color: #ffd6d0;
}

body.tt-reader-dark .tt-danger-panel p {
  color: #f1c8bf;
}

body.tt-reader-dark .tt-danger-panel .tt-btn-danger {
  border-color: rgba(248, 113, 113, 0.48);
  background: rgba(185, 28, 28, 0.24);
  color: #ffd6d0;
}

body.tt-reader-dark .tt-danger-panel .tt-btn-danger:hover,
body.tt-reader-dark .tt-danger-panel .tt-btn-danger:focus-visible {
  background: rgba(220, 38, 38, 0.34);
  color: #fff1ef;
}

body.tt-reader-dark .reader-paper {
  border-color: rgba(225, 183, 95, 0.20);
  background:
    linear-gradient(180deg, rgba(22, 20, 15, 0.985), rgba(14, 15, 12, 0.985));
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.56);
}

body.tt-reader-dark .tt-version-head p,
body.tt-reader-dark .tt-version-snapshot-head p,
body.tt-reader-dark .tt-version-row-main small {
  color: #bfb49b;
}

body.tt-reader-dark .tt-version-row {
  border-bottom-color: rgba(225, 183, 95, 0.16);
  color: var(--ink);
}

body.tt-reader-dark .tt-version-row:hover,
body.tt-reader-dark .tt-version-row:focus-visible,
body.tt-reader-dark .tt-version-row-index {
  color: #f0d18a;
}

body.tt-reader-dark .reader-toolbar {
  border-bottom-color: rgba(225, 183, 95, 0.18);
  background: rgba(16, 15, 11, 0.92);
}

body.tt-reader-dark .tt-reader-back-shortcut {
  border-color: rgba(215, 168, 78, 0.24);
  background: rgba(18, 19, 16, 0.92);
  color: #f0d18a;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.3);
}

body.tt-reader-dark .tt-reader-back-shortcut:hover,
body.tt-reader-dark .tt-reader-back-shortcut:focus-visible {
  background: rgba(215, 168, 78, 0.16);
  color: #fff2cf;
}

body.tt-reader-dark .tt-reader-plan-notice {
  border-color: rgba(215, 168, 78, 0.24);
  background: rgba(215, 168, 78, 0.10);
  color: #f1d79a;
}

body.tt-reader-dark .tt-reader-plan-notice span {
  color: #c9ba9c;
}

body.tt-reader-dark .tt-reader-plan-notice a {
  background: var(--gold);
  color: #17130b;
}

body.tt-reader-dark .tt-reader-plan-notice-dismiss {
  background: rgba(255, 255, 255, 0.07);
}

body.tt-reader-dark .tt-reader-plan-notice-dismiss:hover,
body.tt-reader-dark .tt-reader-plan-notice-dismiss:focus-visible {
  background: rgba(215, 168, 78, 0.16);
}

body.tt-reader-dark .tt-reader-plan-notice-explorer {
  border-color: rgba(116, 139, 255, 0.24);
  background: rgba(116, 139, 255, 0.10);
  color: #d6dcff;
}

body.tt-reader-dark .tt-reader-plan-notice-explorer span {
  color: #b9c1eb;
}

body.tt-reader-dark .tool-chip {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink-soft);
}

body.tt-reader-dark .tool-chip:hover {
  border-color: rgba(215, 168, 78, 0.34);
  background: rgba(215, 168, 78, 0.10);
  color: var(--ink);
}

body.tt-reader-dark .tool-chip.active,
body.tt-reader-dark .tool-chip.copied,
body.tt-reader-dark .tool-chip.debunk-pass {
  border-color: rgba(130, 222, 164, 0.28);
  background: rgba(74, 222, 128, 0.14);
  color: var(--green);
}

body.tt-reader-dark .tool-chip.locked {
  background: rgba(255, 255, 255, 0.055);
  color: var(--muted);
}

body.tt-reader-dark .tool-chip.locked.locked-feedback {
  border-color: rgba(215, 168, 78, 0.36);
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

body.tt-reader-dark .tt-aksbel-page-nav {
  border: 0;
  outline: 0;
  background: none;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.tt-reader-dark .tt-aksbel-page-nav-button {
  border-color: rgba(215, 168, 78, 0.24);
  background: rgba(255, 255, 255, 0.045);
  color: #f0d18a;
}

body.tt-reader-dark .tt-aksbel-page-nav-button:hover,
body.tt-reader-dark .tt-aksbel-page-nav-button:focus-visible {
  border-color: rgba(215, 168, 78, 0.42);
  background: rgba(215, 168, 78, 0.16);
  color: #fff2cf;
}

body.tt-reader-dark .tt-aksbel-page-nav-next {
  border-color: rgba(215, 168, 78, 0.36);
  background: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .reader-theme-toggle[aria-pressed="true"] {
  border-color: rgba(215, 168, 78, 0.42);
  background: rgba(215, 168, 78, 0.14);
  color: #f4d58a;
}

body.tt-reader-dark .reader-preferences-panel {
  border-color: rgba(215, 168, 78, 0.22);
  background:
    linear-gradient(180deg, rgba(24, 22, 16, 0.99), rgba(15, 15, 12, 0.99));
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.48),
    0 1px 0 rgba(255, 255, 255, 0.045) inset;
  color: var(--ink);
}

body.tt-reader-dark .reader-preferences-head {
  border-bottom-color: rgba(215, 168, 78, 0.18);
  background:
    linear-gradient(180deg, rgba(215, 168, 78, 0.11), rgba(255, 255, 255, 0.025));
}

body.tt-reader-dark .reader-preferences-head strong,
body.tt-reader-dark .reader-preferences-label span,
body.tt-reader-dark .reader-preferences-fieldset legend,
body.tt-reader-dark .reader-preferences-color-row > span:first-child,
body.tt-reader-dark .reader-preferences-color-row > label:first-child {
  color: #ead9b5;
}

body.tt-reader-dark .reader-preferences-head small,
body.tt-reader-dark .reader-preferences-field output {
  color: #b5a98f;
}

body.tt-reader-dark .reader-preferences-preview {
  border-color: rgba(215, 168, 78, 0.17);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .reader-preferences-preview-heading {
  color: var(--tt-reader-heading-color, #f0d18a);
}

body.tt-reader-dark .reader-preferences-preview-line {
  color: var(--tt-reader-text-color, #ead9b5);
}

body.tt-reader-dark .reader-preferences-field {
  border-top-color: rgba(215, 168, 78, 0.14);
}

body.tt-reader-dark .reader-preferences-close,
body.tt-reader-dark .reader-preferences-mini-button,
body.tt-reader-dark .reader-preferences-reset {
  border-color: rgba(215, 168, 78, 0.22);
  background: rgba(255, 255, 255, 0.055);
  color: #f0d18a;
}

body.tt-reader-dark .reader-preferences-color-row input[type="color"] {
  border-color: rgba(215, 168, 78, 0.26);
}

body.tt-reader-dark .reader-preferences-swatch {
  border-color: rgba(215, 168, 78, 0.22);
  box-shadow: inset 0 0 0 2px rgba(21, 20, 15, 0.74);
}

body.tt-reader-dark .reader-preferences-close:hover,
body.tt-reader-dark .reader-preferences-close:focus-visible,
body.tt-reader-dark .reader-preferences-mini-button:hover,
body.tt-reader-dark .reader-preferences-mini-button:focus-visible,
body.tt-reader-dark .reader-preferences-reset:hover,
body.tt-reader-dark .reader-preferences-reset:focus-visible {
  border-color: rgba(215, 168, 78, 0.42);
  background-color: rgba(215, 168, 78, 0.14);
}

body.tt-reader-dark .reader-preferences-swatch:hover,
body.tt-reader-dark .reader-preferences-swatch:focus-visible {
  border-color: rgba(215, 168, 78, 0.48);
  outline: 2px solid rgba(215, 168, 78, 0.24);
  outline-offset: 2px;
}

body.tt-reader-dark .article {
  color: var(--tt-reader-text-color, var(--ink));
}

body.tt-reader-dark .article h1,
body.tt-reader-dark .article h2,
body.tt-reader-dark .article h3,
body.tt-reader-dark .article h4 {
  color: var(--tt-reader-heading-color, #f0d18a);
}

body.tt-reader-dark .article [data-block-id]::before {
  color: rgba(170, 160, 141, 0.7);
}

body.tt-reader-dark .article::selection,
body.tt-reader-dark .article *::selection {
  background: rgba(215, 168, 78, 0.46);
  color: #fff5dc;
}

body.tt-reader-dark .article mark:not(.tt-read-mark):not(.tt-text-report-mark),
body.tt-reader-dark .tt-document-search-hit,
body.tt-reader-dark .tt-search-result-hit {
  background: rgba(215, 168, 78, 0.42);
  color: inherit;
}

body.tt-reader-dark .article blockquote {
  border-left-color: rgba(215, 168, 78, 0.72);
  background: rgba(215, 168, 78, 0.12);
  color: #ead9b5;
}

body.tt-reader-dark .article pre {
  background: #10130f;
  color: #f5efe2;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.32);
}

body.tt-reader-dark .article :not(pre) > code {
  background: rgba(255, 255, 255, 0.08);
  color: #f4d58a;
}

body.tt-reader-dark .article table {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .article thead {
  background: rgba(215, 168, 78, 0.10);
}

body.tt-reader-dark .article th,
body.tt-reader-dark .article td {
  border-color: var(--border);
}

body.tt-reader-dark .article th {
  color: var(--ink);
}

body.tt-reader-dark .equation-block,
body.tt-reader-dark .katex-display {
  border-color: rgba(215, 168, 78, 0.14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.025));
}

body.tt-reader-dark .article .katex-display .tag {
  border-color: rgba(215, 168, 78, 0.34);
  background: rgba(17, 17, 15, 0.94);
  color: var(--ink);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
}

body.tt-reader-dark .anchor-highlight,
body.tt-reader-dark .tt-anchor-highlight {
  --tt-anchor-highlight-bg: rgba(215, 168, 78, 0.42);
  --tt-anchor-highlight-ring: rgba(215, 168, 78, 0.24);
  --tt-anchor-badge-bg: #f0d18a;
  --tt-anchor-badge-fg: #17130b;
  --tt-anchor-badge-shadow: rgba(0, 0, 0, 0.28);
}

body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-read {
  --tt-anchor-highlight-bg: var(--tt-reader-read-anchor-bg, rgba(74, 222, 128, 0.23));
  --tt-anchor-highlight-ring: var(--tt-reader-read-anchor-ring, rgba(74, 222, 128, 0.14));
}

body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-verified {
  --tt-anchor-highlight-bg: rgba(74, 222, 128, 0.27);
  --tt-anchor-highlight-ring: rgba(74, 222, 128, 0.16);
  --tt-anchor-badge-bg: #82dea4;
  --tt-anchor-badge-fg: #092315;
}

body.tt-reader-dark .tt-anchor-highlight.tt-anchor-linked-document {
  --tt-anchor-link-border: rgba(143, 180, 255, 0.84);
}

body.tt-reader-dark .tt-anchor-highlight.tt-anchor-math,
body.tt-reader-dark .tt-anchor-highlight.tt-anchor-display-math {
  --tt-anchor-highlight-bg: rgba(215, 168, 78, 0.22);
  --tt-anchor-highlight-ring: rgba(215, 168, 78, 0.12);
}

body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-read.tt-anchor-math,
body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-read.tt-anchor-display-math {
  --tt-anchor-highlight-bg: var(--tt-reader-read-mark-soft-bg, rgba(74, 222, 128, 0.09));
  --tt-anchor-highlight-ring: var(--tt-reader-read-mark-ring, rgba(74, 222, 128, 0.08));
}

body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-verified.tt-anchor-math,
body.tt-reader-dark .tt-anchor-highlight.tt-status-edge-verified.tt-anchor-display-math {
  --tt-anchor-highlight-bg: rgba(74, 222, 128, 0.12);
  --tt-anchor-highlight-ring: rgba(74, 222, 128, 0.09);
}

body.tt-reader-dark .tt-anchor-highlight.tt-anchor-math .katex,
body.tt-reader-dark .tt-anchor-highlight.tt-anchor-math .tt-raw-math {
  background: transparent;
}

body.tt-reader-dark .tt-read-mark {
  background: var(--tt-reader-read-mark-bg, rgba(74, 222, 128, 0.10));
}

body.tt-reader-dark .tt-read-mark .katex,
body.tt-reader-dark .tt-read-mark .tt-raw-math {
  background: var(--tt-reader-read-mark-math-bg, transparent);
}

body.tt-reader-dark .tt-read-mark > .tt-raw-math,
body.tt-reader-dark .tt-read-mark .katex-display,
body.tt-reader-dark .tt-read-mark .tt-equation-scroll {
  background: var(--tt-reader-read-mark-soft-bg, rgba(74, 222, 128, 0.018));
}

body.tt-reader-dark .tt-text-report-mark,
body.tt-reader-dark .tt-text-report-mark .katex,
body.tt-reader-dark .tt-text-report-mark .tt-raw-math,
body.tt-reader-dark .tt-text-report-mark > .tt-raw-math,
body.tt-reader-dark .tt-text-report-mark .katex-display,
body.tt-reader-dark .tt-text-report-mark .tt-equation-scroll {
  background: rgba(248, 113, 113, 0.22);
}

body.tt-reader-dark .article [data-block-id].tt-document-search-block-hit {
  box-shadow: inset 4px 0 0 rgba(215, 168, 78, 0.54);
}

body.tt-reader-dark .project-sidebar {
  border-left-color: rgba(225, 183, 95, 0.18);
  background:
    radial-gradient(circle at 50% -12%, rgba(225, 183, 95, 0.12), transparent 32%),
    linear-gradient(180deg, rgba(18, 17, 12, 0.985), rgba(10, 11, 9, 0.985));
  box-shadow: -28px 0 80px rgba(0, 0, 0, 0.38);
}

body.tt-reader-dark .brand {
  border-bottom-color: rgba(225, 183, 95, 0.18);
}

body.tt-reader-dark .brand-mark {
  background: linear-gradient(135deg, #f0d18a, #a86c1b);
  color: #141109;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);
}

body.tt-reader-dark .brand-text span,
body.tt-reader-dark .sidebar-profile-text small,
body.tt-reader-dark .nav-heading,
body.tt-reader-dark .doc-name > span {
  color: var(--muted);
}

body.tt-reader-dark .brand-text strong,
body.tt-reader-dark .project-title-text,
body.tt-reader-dark .reader-label-main strong {
  color: #f3d995;
}

body.tt-reader-dark .sidebar-profile-link {
  color: var(--ink);
}

body.tt-reader-dark .sidebar-profile-link:hover {
  background: rgba(255, 255, 255, 0.055);
}

body.tt-reader-dark .sidebar-profile-main:hover {
  background: rgba(255, 255, 255, 0.055);
}

body.tt-reader-dark .sidebar-environment-caret:hover,
body.tt-reader-dark .sidebar-environment-toggle[open] .sidebar-environment-caret {
  background: rgba(225, 183, 95, 0.16);
  color: #f6e7bf;
}

body.tt-reader-dark .sidebar-profile-avatar {
  background: #e1b75f;
  color: #17130b;
}

body.tt-reader-dark .sidebar-profile-avatar-organization {
  background: linear-gradient(135deg, #f0d18a, #5dcaa5);
  color: #17130b;
}

body.tt-reader-dark .sidebar-environment-panel {
  border-color: rgba(225, 183, 95, 0.18);
  background: rgba(18, 17, 13, 0.96);
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.38);
}

body.tt-reader-dark .sidebar-environment-panel form {
  background: transparent;
}

body.tt-reader-dark .sidebar-environment-option,
body.tt-reader-dark .sidebar-environment-link {
  border-color: rgba(225, 183, 95, 0.14);
  background: rgba(35, 34, 28, 0.96);
  color: var(--ink);
}

body.tt-reader-dark .sidebar-environment-option span,
body.tt-reader-dark .sidebar-environment-link {
  color: var(--ink);
}

body.tt-reader-dark .sidebar-environment-option small {
  color: rgba(245, 230, 199, 0.68);
}

body.tt-reader-dark .sidebar-environment-group-label {
  color: rgba(240, 209, 138, 0.7);
}

body.tt-reader-dark .sidebar-environment-option:hover,
body.tt-reader-dark .sidebar-environment-option:focus-visible,
body.tt-reader-dark .sidebar-environment-link:hover,
body.tt-reader-dark .sidebar-environment-link:focus-visible {
  background: rgba(225, 183, 95, 0.16);
}

body.tt-reader-dark .sidebar-environment-option.is-active {
  background: transparent;
}

body.tt-reader-dark .nav-section-public {
  border-top-color: rgba(225, 183, 95, 0.18);
}

body.tt-reader-dark .tree-toggle,
body.tt-reader-dark .tree-menu-button {
  color: var(--muted);
}

body.tt-reader-dark .tree-toggle:hover,
body.tt-reader-dark .tree-menu-button:hover {
  background: rgba(255, 255, 255, 0.075);
  color: var(--ink);
}

body.tt-reader-dark .tree-row > .tree-menu-button {
  background: rgba(23, 24, 21, 0.98);
  box-shadow: 0 0 0 5px rgba(23, 24, 21, 0.92);
}

body.tt-reader-dark .tree-menu {
  border-color: var(--border);
  background: #20211d;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.38);
}

body.tt-reader-dark .tree-menu button,
body.tt-reader-dark .tree-menu a {
  color: var(--ink-soft);
}

body.tt-reader-dark .tree-menu button:hover,
body.tt-reader-dark .tree-menu a:hover {
  background: rgba(215, 168, 78, 0.12);
  color: var(--ink);
}

body.tt-reader-dark .tree-rename-form input,
body.tt-reader-dark .sidebar-create-form input {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .tree-rename-form input:focus,
body.tt-reader-dark .sidebar-create-form input:focus {
  border-color: rgba(215, 168, 78, 0.46);
  outline-color: rgba(215, 168, 78, 0.16);
}

body.tt-reader-dark .doc-item,
body.tt-reader-dark .project-item,
body.tt-reader-dark .sidebar-create-button,
body.tt-reader-dark .sidebar-create-wide,
body.tt-reader-dark .sidebar-create-form .sidebar-create-wide {
  color: var(--ink-soft);
}

body.tt-reader-dark .doc-item:hover,
body.tt-reader-dark .project-item:hover,
body.tt-reader-dark .sidebar-create-button:hover,
body.tt-reader-dark .sidebar-create-wide:hover,
body.tt-reader-dark .sidebar-create-form .sidebar-create-wide:hover {
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .doc-item.active,
body.tt-reader-dark .project-item.active {
  background: rgba(215, 168, 78, 0.14);
  color: var(--ink);
}

body.tt-reader-dark .doc-item.active::before {
  background: #f0d18a;
}

body.tt-reader-dark .doc-number,
body.tt-reader-dark .doc-item.active .doc-number {
  color: var(--muted);
}

body.tt-reader-dark .tree-doc-row.doc-tree-child::before,
body.tt-reader-dark .tree-doc-row.doc-tree-child::after {
  background: rgba(170, 160, 141, 0.22);
}

body.tt-reader-dark .project-icon,
body.tt-reader-dark .create-icon-project {
  background: linear-gradient(180deg, #f0ca72, #b57f21);
}

body.tt-reader-dark .project-icon::before,
body.tt-reader-dark .create-icon-project::before {
  background: #f5d993;
}

body.tt-reader-dark .create-icon::after {
  border-color: #111111;
  background: #e1b75f;
  color: #111111;
}

body.tt-reader-dark .doc-icon,
body.tt-reader-dark .create-icon-document {
  background: rgba(255, 255, 255, 0.055);
  color: var(--muted);
}

body.tt-reader-dark .doc-icon::before,
body.tt-reader-dark .create-icon-document::before {
  background: var(--paper);
}

body.tt-reader-dark .doc-item.active .doc-icon {
  color: #f0d18a;
}

body.tt-reader-dark .doc-item.active .doc-icon.verified,
body.tt-reader-dark .doc-icon.verified,
body.tt-reader-dark .tree-doc-row[data-has-children="true"] > .tree-row .doc-icon.verified {
  color: var(--green);
  background: rgba(74, 222, 128, 0.14);
}

body.tt-reader-dark .tree-doc-row[data-has-children="true"] > .tree-row .doc-icon {
  background: rgba(255, 255, 255, 0.06);
}

body.tt-reader-dark .project-public-dot-row {
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px rgba(74, 222, 128, 0.20);
}

body.tt-reader-dark .project-public-dot-row.project-aksbel-dot {
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px rgba(165, 28, 48, 0.28);
}

body.tt-reader-dark .sidebar-resize-handle::before {
  background: rgba(215, 168, 78, 0.2);
}

body.tt-reader-dark .sidebar-resize-handle:hover::before,
body.tt-reader-dark .sidebar-resize-handle:focus-visible::before,
body.tt-reader-dark.sidebar-resizing .sidebar-resize-handle::before {
  background: rgba(215, 168, 78, 0.48);
}

body.tt-reader-dark .mobile-theorytrace-bar {
  background: rgba(17, 17, 15, 0.94);
  border-bottom-color: rgba(215, 168, 78, 0.16);
}

body.tt-reader-dark .mobile-theorytrace-bar-organization {
  background: rgba(18, 17, 13, 0.88);
  border-bottom-color: rgba(215, 168, 78, 0.16);
}

body.tt-reader-dark .mobile-brand {
  color: var(--ink);
}

body.tt-reader-dark .mobile-theorytrace-bar-organization .tt-library-brand-copy strong {
  color: var(--ink);
}

body.tt-reader-dark .mobile-theorytrace-bar-organization .tt-library-brand-copy small {
  color: rgba(245, 230, 199, 0.72);
}

body.tt-reader-dark .mobile-tree-button {
  border-color: rgba(215, 168, 78, 0.26);
  background: rgba(215, 168, 78, 0.12);
  color: #f0d18a;
  box-shadow: none;
}

body.tt-reader-dark .mobile-tree-button:hover,
body.tt-reader-dark .mobile-tree-button:focus-visible,
body.tt-reader-dark .mobile-tree-button[aria-expanded="true"] {
  border-color: rgba(215, 168, 78, 0.44);
  background: rgba(215, 168, 78, 0.22);
  color: #fff2cf;
}

body.tt-reader-dark .mobile-tree-folder {
  fill: #d7a84e;
  stroke: #f4d58a;
}

body.tt-reader-dark .mobile-tree-branch {
  stroke: #f4d58a;
}

@media (max-width: 900px) {
  body.tt-reader-dark .tt-library-tree-fab {
    border-color: rgba(215, 168, 78, 0.26);
    background: rgba(215, 168, 78, 0.12);
    color: #f0d18a;
    box-shadow: none;
  }

  body.tt-reader-dark .tt-library-tree-fab:hover,
  body.tt-reader-dark .tt-library-tree-fab:focus-visible,
  body.tt-reader-dark .tt-library-tree-fab[aria-expanded="true"] {
    border-color: rgba(215, 168, 78, 0.44);
    background: rgba(215, 168, 78, 0.22);
    color: #fff2cf;
  }

  body.tt-reader-dark .tt-document-reader-shell.mobile-reader-tools-open .topbar-reader,
  body.tt-reader-dark .tt-document-reader-shell.mobile-reader-tools-open .reader-toolbar,
  body.tt-reader-dark .tt-mobile-reader-controls {
    border-color: rgba(215, 168, 78, 0.2);
    background: rgba(18, 19, 16, 0.93);
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.32);
  }

  body.tt-reader-dark .tt-mobile-reader-control {
    color: #f0d18a;
  }

  body.tt-reader-dark .tt-mobile-reader-control:hover,
  body.tt-reader-dark .tt-mobile-reader-control:focus-visible,
  body.tt-reader-dark .tt-mobile-reader-control[aria-expanded="true"] {
    background: rgba(215, 168, 78, 0.18);
    color: #fff2cf;
  }
}

body.tt-reader-dark .sidebar-close-button,
body.tt-reader-dark .header-icon-button {
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink-soft);
  border-color: rgba(215, 168, 78, 0.14);
}

body.tt-reader-dark .header-icon-button:hover,
body.tt-reader-dark .tt-header-menu[open] .header-icon-button {
  border-color: rgba(215, 168, 78, 0.34);
  background: rgba(215, 168, 78, 0.12);
  color: var(--ink);
}

body.tt-reader-dark .header-menu-panel,
body.tt-reader-dark .document-search-panel,
body.tt-reader-dark .ai-settings-form {
  border-color: var(--border);
  background: #20211d;
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.38);
  color: var(--ink);
}

body.tt-reader-dark .header-menu-panel > strong,
body.tt-reader-dark .search-result-head,
body.tt-reader-dark .tt-profile-head h1 {
  color: var(--ink);
}

body.tt-reader-dark .invite-panel input,
body.tt-reader-dark .document-search-field,
body.tt-reader-dark .ai-settings-form input,
body.tt-reader-dark .ai-settings-form select {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink);
}

body.tt-reader-dark .document-search.open .search-trigger {
  border-color: rgba(143, 180, 255, 0.34);
  background: rgba(143, 180, 255, 0.14);
  color: var(--blue);
}

body.tt-reader-dark .document-search-field:focus-within {
  border-color: rgba(143, 180, 255, 0.42);
  box-shadow: 0 0 0 3px rgba(143, 180, 255, 0.12);
}

body.tt-reader-dark .document-search-field button {
  background: #f0d18a;
  color: #17130b;
}

body.tt-reader-dark .search-result:hover {
  background: rgba(255, 255, 255, 0.055);
}

body.tt-reader-dark .search-result-snippet,
body.tt-reader-dark .search-result-project,
body.tt-reader-dark .document-search-empty,
body.tt-reader-dark .notification-panel p,
body.tt-reader-dark .invitation-item small {
  color: var(--muted);
}

body.tt-reader-dark .invitation-item {
  background: rgba(255, 255, 255, 0.055);
}

body.tt-reader-dark .invitation-item .invitation-reject-button {
  border-color: rgba(245, 230, 199, 0.16);
  color: var(--ink-soft);
}

body.tt-reader-dark .invitation-item .invitation-reject-button:hover,
body.tt-reader-dark .invitation-item .invitation-reject-button:focus-visible {
  border-color: rgba(255, 148, 148, 0.28);
  background: rgba(255, 148, 148, 0.1);
  color: #ffc6c6;
}

body.tt-reader-dark .ai-settings-actions button:not(.primary-pop) {
  background: rgba(255, 255, 255, 0.065);
  color: var(--ink-soft);
}

body.tt-reader-dark .ai-settings-actions .primary-pop {
  background: var(--gold);
  color: #17130b;
}

body.tt-reader-dark .selection-menu {
  border: 1px solid rgba(215, 168, 78, 0.16);
  background: rgba(18, 19, 16, 0.97);
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.42);
}

html.tt-reader-dark .tt-danger-panel,
body.tt-reader-dark .tt-danger-panel {
  border-color: rgba(248, 113, 113, 0.46);
  background:
    radial-gradient(circle at 16% 0%, rgba(248, 113, 113, 0.18), transparent 34%),
    linear-gradient(180deg, rgba(82, 20, 20, 0.96), rgba(23, 12, 10, 0.98));
  color: #fff3ee;
  box-shadow: 0 32px 96px rgba(0, 0, 0, 0.6);
}

html.tt-reader-dark .tt-danger-panel .tt-kicker,
body.tt-reader-dark .tt-danger-panel .tt-kicker {
  color: #ffb4a8;
}

html.tt-reader-dark .tt-danger-panel h1,
body.tt-reader-dark .tt-danger-panel h1 {
  color: #fff7f3;
}

html.tt-reader-dark .tt-danger-panel p,
body.tt-reader-dark .tt-danger-panel p {
  color: #ffd7cf;
}

html.tt-reader-dark .tt-danger-panel .tt-btn,
body.tt-reader-dark .tt-danger-panel .tt-btn {
  border-color: rgba(255, 215, 207, 0.34);
  background: rgba(255, 255, 255, 0.07);
  color: #fff3ee;
}

html.tt-reader-dark .tt-danger-panel .tt-btn:hover,
html.tt-reader-dark .tt-danger-panel .tt-btn:focus-visible,
body.tt-reader-dark .tt-danger-panel .tt-btn:hover,
body.tt-reader-dark .tt-danger-panel .tt-btn:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

html.tt-reader-dark .tt-danger-panel .tt-btn-danger,
body.tt-reader-dark .tt-danger-panel .tt-btn-danger {
  border-color: rgba(255, 180, 168, 0.72);
  background: #dc2626;
  color: #ffffff;
  box-shadow: 0 16px 34px rgba(127, 29, 29, 0.4);
}

html.tt-reader-dark .tt-danger-panel .tt-btn-danger:hover,
html.tt-reader-dark .tt-danger-panel .tt-btn-danger:focus-visible,
body.tt-reader-dark .tt-danger-panel .tt-btn-danger:hover,
body.tt-reader-dark .tt-danger-panel .tt-btn-danger:focus-visible {
  background: #ef4444;
  color: #ffffff;
}

html.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain,
body.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--ink);
}

html.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain .tt-kicker,
body.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain .tt-kicker {
  color: #ffb4a8;
}

html.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain p,
body.tt-reader-dark .tt-danger-panel.tt-danger-panel-plain p {
  color: var(--muted);
}

html.tt-reader-dark .toast,
body.tt-reader-dark .toast {
  border: 1px solid rgba(225, 183, 95, 0.28);
  background:
    linear-gradient(180deg, rgba(26, 24, 18, 0.98), rgba(13, 13, 10, 0.98));
  color: #f8edd5;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.52);
}

html.tt-reader-dark .toast::before,
body.tt-reader-dark .toast::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 12px;
  width: 4px;
  border-radius: 0 999px 999px 0;
  background: var(--gold);
}

html.tt-reader-dark .toast strong,
body.tt-reader-dark .toast strong {
  color: #f3d995;
}

html.tt-reader-dark .toast.success::before,
body.tt-reader-dark .toast.success::before {
  background: var(--green);
}

html.tt-reader-dark .toast.error,
body.tt-reader-dark .toast.error {
  border-color: rgba(248, 113, 113, 0.38);
}

html.tt-reader-dark .toast.error::before,
body.tt-reader-dark .toast.error::before {
  background: #ef4444;
}

html.tt-reader-dark .toast.warning::before,
body.tt-reader-dark .toast.warning::before {
  background: #f0bb64;
}

html.tt-reader-dark .tt-toast-dismiss,
body.tt-reader-dark .tt-toast-dismiss {
  background: rgba(255, 255, 255, 0.08);
  color: #f8edd5;
}

html.tt-reader-dark .tt-toast-dismiss:hover,
html.tt-reader-dark .tt-toast-dismiss:focus-visible,
body.tt-reader-dark .tt-toast-dismiss:hover,
body.tt-reader-dark .tt-toast-dismiss:focus-visible {
  background: rgba(225, 183, 95, 0.18);
  color: #ffffff;
}

@media (max-width: 640px) {
  .tt-aksbel-page-nav {
    max-width: calc(100vw - 24px);
    margin-top: 18px;
    padding: 0;
    gap: 9px;
    border-radius: 0;
    background: none;
    background-color: transparent;
    background-image: none;
    box-shadow: none;
  }

  .tt-aksbel-page-nav-button {
    min-height: 34px;
    padding: 0 11px;
    font-size: 11px;
  }

  .tt-aksbel-page-nav-button span {
    font-size: 16px;
  }

  .tt-aksbel-page-nav-spacer {
    width: 12px;
  }
}

.tt-organization-paper .tt-profile-actions form,
.tt-profile-contributions .tt-profile-actions form {
  margin: 0;
}

.tt-organization-dashboard {
  width: min(1040px, calc(100% - 28px));
  margin: 0 auto;
  padding: 18px 0 64px;
}

.tt-school-detail-page .tt-organization-dashboard {
  width: min(1120px, calc(100% - 32px));
  padding-top: 10px;
}

.tt-organization-dashboard-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(22, 31, 48, 0.08);
}

.tt-school-detail-page .tt-organization-dashboard-head {
  padding-bottom: 16px;
}

.tt-organization-identity {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.tt-organization-avatar {
  background: linear-gradient(135deg, rgba(225, 183, 95, 0.95), rgba(93, 202, 165, 0.72));
  color: #16130d;
}

.tt-school-detail-page .tt-organization-avatar-large {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  font-size: 18px;
  background: rgba(225, 183, 95, 0.22);
  color: #76530f;
}

.tt-organization-avatar-large,
.tt-organization-member-avatar {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(225, 183, 95, 0.95), rgba(93, 202, 165, 0.72));
  color: #16130d;
  font-weight: 900;
}

.tt-organization-avatar-large {
  width: 58px;
  height: 58px;
  font-size: 24px;
}

.tt-organization-member-avatar {
  width: 38px;
  height: 38px;
  border-radius: 11px;
  font-size: 14px;
}

.tt-organization-member-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tt-organization-avatar-large img,
.tt-library-brand-mark-organization img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tt-organization-identity h1 {
  margin: 1px 0 3px;
  color: var(--navy);
  font-size: clamp(30px, 5vw, 54px);
  line-height: 0.98;
}

.tt-organization-identity p:last-child {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.tt-organization-dashboard-actions,
.tt-organization-member-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.tt-organization-dashboard-actions form,
.tt-organization-member-actions form {
  margin: 0;
}

.tt-organization-dashboard-actions a,
.tt-organization-dashboard-actions button,
.tt-organization-member-actions a,
.tt-organization-member-actions button {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(161, 118, 32, 0.2);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.8);
  color: var(--ink-soft);
  padding: 0 12px;
  font: inherit;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
  cursor: pointer;
}

.tt-organization-dashboard-actions button:first-child {
  background: rgba(255, 248, 231, 0.96);
  color: #6f4b0e;
}

.tt-school-detail-page .tt-organization-dashboard-actions a,
.tt-school-detail-page .tt-organization-dashboard-actions button,
.tt-school-detail-page .tt-organization-member-actions a,
.tt-school-detail-page .tt-organization-member-actions button {
  border-radius: 7px;
  background: transparent;
  box-shadow: none;
}

.tt-school-detail-page .tt-organization-dashboard-actions a:hover,
.tt-school-detail-page .tt-organization-dashboard-actions button:hover,
.tt-school-detail-page .tt-organization-member-actions a:hover,
.tt-school-detail-page .tt-organization-member-actions button:hover {
  background: rgba(225, 183, 95, 0.11);
}

.tt-organization-admin-tools {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  padding: 18px 0 6px;
  background: transparent;
  box-shadow: none;
}

.tt-school-detail-page .tt-organization-admin-tools {
  gap: 10px;
  padding: 14px 0 0;
}

.tt-school-detail-page .tt-organization-admin-tools + .tt-organization-admin-tools {
  padding-top: 8px;
}

.tt-organization-admin-plan {
  grid-template-columns: 1fr;
  padding-top: 10px;
}

.tt-school-managed-account-panel {
  grid-template-columns: 1fr;
  padding-top: 6px;
}

.tt-organization-admin-tool-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 8px;
  min-width: 0;
  background: transparent;
  box-shadow: none;
}

.tt-inline-form.tt-organization-admin-tool-form,
.tt-organization-admin-tools.tt-school-managed-account-panel,
.tt-organization-admin-tools.tt-organization-admin-plan {
  background: transparent;
  box-shadow: none;
}

.tt-organization-admin-tools:has(.tt-organization-invite-result) {
  grid-template-columns: 1fr;
}

.tt-inline-form.tt-organization-admin-tool-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
}

.tt-inline-form.tt-organization-admin-tool-form:has(select[name="role"]) {
  grid-template-columns: minmax(150px, 1fr) minmax(130px, 0.7fr) auto;
}

.tt-organization-admin-tool-form label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.tt-organization-admin-tool-form label > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.01em;
}

.tt-school-managed-account-form {
  grid-template-columns: repeat(3, minmax(120px, 1fr)) auto;
}

.tt-school-managed-account-form:has(select[name="role"]) {
  grid-template-columns: repeat(4, minmax(112px, 1fr)) auto;
}

.tt-organization-plan-form {
  grid-template-columns: minmax(150px, 0.75fr) minmax(180px, 1fr) auto;
}

.tt-school-managed-account-form button,
.tt-organization-plan-form button {
  align-self: end;
  white-space: nowrap;
}

.tt-organization-admin-tool-form input,
.tt-organization-admin-tool-form select {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  border: 1px solid rgba(22, 31, 48, 0.12);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.82);
  color: var(--ink);
  padding: 0 12px;
  outline: none;
  font-size: 13px;
  line-height: 1.25;
  color-scheme: light;
}

.tt-school-detail-page .tt-organization-admin-tool-form input,
.tt-school-detail-page .tt-organization-admin-tool-form select {
  border-radius: 7px;
  background: transparent;
}

.tt-organization-admin-tool-form input:focus,
.tt-organization-admin-tool-form select:focus {
  border-color: rgba(161, 118, 32, 0.38);
  box-shadow: 0 0 0 3px rgba(201, 146, 49, 0.12);
}

.tt-organization-admin-tool-form input::placeholder {
  color: rgba(118, 112, 102, 0.7);
}

.tt-organization-admin-tool-form select {
  cursor: pointer;
}

.tt-organization-admin-tool-form select option {
  background: #fffdf8;
  color: #17130b;
}

.tt-organization-admin-tool-form button {
  min-height: 36px;
  border: 1px solid rgba(161, 118, 32, 0.24);
  border-radius: 999px;
  background: linear-gradient(135deg, #f2cf75, #c9902f);
  color: #211600;
  padding: 0 14px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(155, 99, 10, 0.14);
}

.tt-school-detail-page .tt-organization-admin-tool-form button {
  border-radius: 7px;
  background: transparent;
  color: #735113;
  box-shadow: none;
}

.tt-organization-admin-tool-form button:hover,
.tt-organization-admin-tool-form button:focus-visible {
  background: linear-gradient(135deg, #f7dc94, #d8a23d);
}

.tt-organization-invite-result {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 10px;
  min-width: 0;
  padding: 4px 0 0;
}

.tt-organization-invite-result > span:not(.tt-organization-member-avatar):not(.tt-organization-invite-actions) {
  min-width: 0;
}

.tt-organization-invite-actions {
  display: inline-flex;
  align-items: center;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 8px;
  flex: 0 0 auto;
  margin-left: auto;
  white-space: nowrap;
}

.tt-organization-invite-result form {
  display: inline-flex;
  flex: 0 0 auto;
  margin: 0;
}

.tt-organization-invite-result button {
  min-height: 34px;
  border: 1px solid rgba(161, 118, 32, 0.24);
  border-radius: 999px;
  background: linear-gradient(135deg, #f2cf75, #c9902f);
  color: #211600;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
}

.tt-school-detail-page .tt-organization-admin-tool-form button:hover,
.tt-school-detail-page .tt-organization-admin-tool-form button:focus-visible {
  background: rgba(225, 183, 95, 0.13);
}

.tt-organization-dashboard-section {
  padding-top: 28px;
}

.tt-school-detail-page .tt-organization-dashboard-section {
  padding-top: 24px;
}

.tt-organization-learning-section {
  padding-top: 24px;
}

.tt-organization-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 14px;
}

.tt-organization-metric {
  min-width: 0;
  padding: 10px 0;
  border-bottom: 1px solid rgba(22, 31, 48, 0.08);
}

.tt-organization-metric span,
.tt-organization-metric small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
}

.tt-organization-metric strong {
  display: block;
  margin: 2px 0;
  color: var(--ink);
  font-size: clamp(24px, 4vw, 38px);
  line-height: 0.98;
}

.tt-organization-progress-list {
  display: grid;
  gap: 8px;
  margin-top: 6px;
}

.tt-organization-progress-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.8fr) minmax(160px, 1fr) minmax(210px, 1.05fr);
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 7px 0;
  border-bottom: 1px solid rgba(22, 31, 48, 0.07);
}

.tt-organization-progress-person {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.tt-organization-progress-person b {
  color: #94670f;
  font-size: 11px;
  font-weight: 950;
}

.tt-organization-progress-person span {
  min-width: 0;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tt-organization-progress-track,
.tt-organization-member-progress {
  position: relative;
  height: 8px;
  min-width: 0;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(22, 31, 48, 0.08);
}

.tt-organization-progress-track i,
.tt-organization-member-progress i {
  display: block;
  width: var(--value, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #5dcaa5, #e1b75f);
}

.tt-organization-progress-numbers {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
  text-align: right;
}

.tt-organization-progress-numbers strong {
  color: var(--ink);
  font-size: 15px;
  font-weight: 950;
}

.tt-organization-progress-numbers span {
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 780;
  overflow-wrap: anywhere;
}

.tt-organization-empty-note {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 760;
}

.tt-organization-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 8px;
}

.tt-organization-section-head h2 {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  font-weight: 900;
}

.tt-organization-section-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.tt-organization-member-list,
.tt-organization-simple-list {
  display: grid;
  gap: 0;
}

.tt-organization-member-row,
.tt-organization-simple-list > a,
.tt-organization-simple-list > div {
  border-bottom: 1px solid rgba(22, 31, 48, 0.08);
}

.tt-organization-member-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-width: 0;
  padding: 10px 0;
  background: transparent;
}

.tt-organization-member-row:hover,
.tt-organization-member-row:focus-within {
  background: rgba(225, 183, 95, 0.08);
}

.tt-school-detail-page .tt-organization-member-row,
.tt-school-detail-page .tt-organization-simple-list > a,
.tt-school-detail-page .tt-organization-simple-list > div,
.tt-school-detail-page .tt-organization-progress-row {
  padding-top: 9px;
  padding-bottom: 9px;
}

.tt-school-detail-page .tt-organization-member-row:hover,
.tt-school-detail-page .tt-organization-simple-list > a:hover,
.tt-school-detail-page .tt-organization-simple-list > a:focus-visible,
.tt-school-detail-page .tt-organization-simple-list > div:hover,
.tt-school-detail-page .tt-organization-simple-list > div:focus-within {
  background: rgba(225, 183, 95, 0.08);
}

.tt-organization-member-main {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

.tt-organization-member-main:hover {
  text-decoration: none;
}

.tt-organization-member-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tt-organization-member-copy strong {
  color: var(--ink);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.tt-organization-member-copy small,
.tt-organization-member-copy em {
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.tt-organization-activity-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 3px;
}

.tt-organization-activity-chips b {
  border-radius: 999px;
  background: rgba(93, 202, 165, 0.13);
  color: #1f6f68;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 900;
}

.tt-organization-member-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 4px;
}

.tt-organization-member-stats span {
  border-radius: 999px;
  background: rgba(225, 183, 95, 0.13);
  color: #72500f;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 850;
}

.tt-school-detail-page .tt-organization-member-stats span,
.tt-school-detail-page .tt-organization-activity-chips b {
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.tt-organization-member-stats b {
  font-weight: 950;
}

.tt-organization-member-progress {
  width: min(100%, 280px);
  margin-top: 5px;
}

.tt-organization-simple-list > a,
.tt-organization-simple-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin-inline: -8px;
  padding: 11px 8px;
  border-radius: 7px;
  background: transparent;
  color: inherit;
  text-decoration: none;
}

.tt-organization-simple-list > a:hover,
.tt-organization-simple-list > a:focus-visible,
.tt-organization-simple-list > div:hover,
.tt-organization-simple-list > div:focus-within {
  background: rgba(225, 183, 95, 0.08);
  text-decoration: none;
}

.tt-organization-simple-list > .tt-organization-pending-invitation-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
}

.tt-organization-invitation-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  border: 1px solid rgba(161, 118, 32, 0.18);
  border-radius: 999px;
  background: rgba(225, 183, 95, 0.1);
  color: #765312;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.tt-organization-simple-list > div > a {
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.tt-class-book-main {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tt-class-book-cover {
  flex: 0 0 auto;
  width: 84px;
  aspect-ratio: 2 / 3;
  height: auto;
  border: 1px solid rgba(22, 31, 48, 0.12);
  border-radius: 4px;
  background: #171a16;
  box-shadow: 0 8px 18px rgba(22, 31, 48, 0.12);
}

.tt-class-project-cover {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 84px;
  aspect-ratio: 2 / 3;
  border: 1px solid rgba(22, 31, 48, 0.12);
  border-radius: 4px;
  background: #e8efe9;
  color: #28534b;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 800;
}

html.tt-reader-dark .tt-class-project-cover,
body.tt-reader-dark .tt-class-project-cover {
  border-color: rgba(225, 183, 95, 0.26);
  background: #233833;
  color: #f0d991;
}

.tt-class-book-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.tt-class-book-copy strong {
  overflow-wrap: anywhere;
}

.tt-class-task-search-results {
  display: grid;
  gap: 2px;
  margin-top: 8px;
}

.tt-class-task-result-mark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(22, 31, 48, 0.12);
  border-radius: 4px;
  background: #e8efe9;
  color: #28534b;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  font-weight: 800;
}

html.tt-reader-dark .tt-class-task-result-mark,
body.tt-reader-dark .tt-class-task-result-mark {
  border-color: rgba(225, 183, 95, 0.26);
  background: #233833;
  color: #f0d991;
}

.tt-organization-simple-list > div form {
  justify-self: end;
  margin: 0;
  min-width: max-content;
}

.tt-organization-simple-list > div button {
  min-height: 30px;
  border: 1px solid rgba(161, 118, 32, 0.22);
  border-radius: 7px;
  background: rgba(255, 248, 231, 0.92);
  color: #6f4b0e;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.tt-organization-simple-list strong {
  min-width: 0;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.tt-organization-simple-list span {
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  text-align: left;
  overflow-wrap: anywhere;
}

.tt-organization-simple-list .tt-organization-member-main span,
.tt-organization-simple-list .tt-organization-member-copy {
  text-align: left;
}

.tt-school-detail-page .tt-organization-section-head {
  margin-bottom: 4px;
}

.tt-organization-action-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.tt-inline-form {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.tt-inline-form input,
.tt-inline-form select {
  min-width: 0;
  flex: 1;
}

.tt-organization-plan-form {
  max-width: 860px;
  grid-template-columns: minmax(150px, 220px) minmax(180px, 260px) auto;
}

.tt-organization-list {
  display: grid;
  gap: 8px;
}

.tt-organization-list.compact {
  margin-top: 12px;
}

.tt-organization-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(22, 31, 48, 0.08);
}

.tt-organization-row:last-child {
  border-bottom: 0;
}

.tt-organization-row > div:first-child {
  min-width: 0;
}

.tt-organization-row strong,
.tt-organization-row span {
  display: block;
}

.tt-organization-row strong {
  color: var(--ink);
  font-size: 14px;
}

.tt-organization-row span {
  color: var(--muted);
  font-size: 12px;
}

.tt-organization-invitations h3 {
  margin: 14px 0 4px;
  font-size: 14px;
}

html.tt-reader-dark .tt-organization-row strong,
body.tt-reader-dark .tt-organization-row strong {
  color: var(--ink);
}

html.tt-reader-dark .tt-organization-dashboard-head,
body.tt-reader-dark .tt-organization-dashboard-head,
html.tt-reader-dark .tt-organization-member-row,
body.tt-reader-dark .tt-organization-member-row,
html.tt-reader-dark .tt-organization-simple-list > a,
body.tt-reader-dark .tt-organization-simple-list > a,
html.tt-reader-dark .tt-organization-simple-list > div,
body.tt-reader-dark .tt-organization-simple-list > div {
  border-bottom-color: rgba(246, 231, 191, 0.12);
}

html.tt-reader-dark .tt-organization-identity h1,
body.tt-reader-dark .tt-organization-identity h1,
html.tt-reader-dark .tt-organization-section-head h2,
body.tt-reader-dark .tt-organization-section-head h2,
html.tt-reader-dark .tt-organization-member-copy strong,
body.tt-reader-dark .tt-organization-member-copy strong,
html.tt-reader-dark .tt-organization-simple-list strong,
body.tt-reader-dark .tt-organization-simple-list strong {
  color: var(--ink);
}

html.tt-reader-dark .tt-organization-dashboard-actions a,
html.tt-reader-dark .tt-organization-dashboard-actions button,
html.tt-reader-dark .tt-organization-member-actions a,
html.tt-reader-dark .tt-organization-member-actions button,
body.tt-reader-dark .tt-organization-dashboard-actions a,
body.tt-reader-dark .tt-organization-dashboard-actions button,
body.tt-reader-dark .tt-organization-member-actions a,
body.tt-reader-dark .tt-organization-member-actions button {
  border-color: rgba(215, 168, 78, 0.24);
  background: rgba(255, 255, 255, 0.045);
  color: var(--ink);
}

html.tt-reader-dark .tt-organization-dashboard-actions button:first-child,
body.tt-reader-dark .tt-organization-dashboard-actions button:first-child {
  background: rgba(215, 168, 78, 0.16);
  color: #f0d18a;
}

html.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions a,
html.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions button,
html.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions a,
html.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions button,
body.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions a,
body.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions button,
body.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions a,
body.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions button {
  background: transparent;
}

html.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions a:hover,
html.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions button:hover,
html.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions a:hover,
html.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions button:hover,
body.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions a:hover,
body.tt-reader-dark .tt-school-detail-page .tt-organization-dashboard-actions button:hover,
body.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions a:hover,
body.tt-reader-dark .tt-school-detail-page .tt-organization-member-actions button:hover {
  background: rgba(225, 183, 95, 0.1);
}

html.tt-reader-dark .tt-organization-admin-tool-form input,
html.tt-reader-dark .tt-organization-admin-tool-form select,
body.tt-reader-dark .tt-organization-admin-tool-form input,
body.tt-reader-dark .tt-organization-admin-tool-form select {
  border-color: rgba(215, 168, 78, 0.2);
  background: rgba(18, 17, 13, 0.86);
  color: var(--ink);
  color-scheme: dark;
}

html.tt-reader-dark .tt-school-detail-page .tt-organization-admin-tool-form input,
html.tt-reader-dark .tt-school-detail-page .tt-organization-admin-tool-form select,
body.tt-reader-dark .tt-school-detail-page .tt-organization-admin-tool-form input,
body.tt-reader-dark .tt-school-detail-page .tt-organization-admin-tool-form select {
  background: transparent;
}

html.tt-reader-dark .tt-organization-admin-tool-form input::placeholder,
body.tt-reader-dark .tt-organization-admin-tool-form input::placeholder {
  color: rgba(245, 230, 199, 0.56);
}

html.tt-reader-dark .tt-organization-admin-tool-form select option,
body.tt-reader-dark .tt-organization-admin-tool-form select option {
  background: #181711;
  color: #f5e6c7;
}

html.tt-reader-dark .tt-organization-admin-tool-form select option:checked,
body.tt-reader-dark .tt-organization-admin-tool-form select option:checked {
  background: #3a2d12;
  color: #ffe7a5;
}

html.tt-reader-dark .tt-organization-admin-tool-form label > span,
body.tt-reader-dark .tt-organization-admin-tool-form label > span {
  color: var(--muted);
}

html.tt-reader-dark .tt-organization-admin-tool-form button,
body.tt-reader-dark .tt-organization-admin-tool-form button {
  border-color: rgba(215, 168, 78, 0.32);
  background: linear-gradient(135deg, #e4bd67, #a97923);
  color: #17130b;
}

html.tt-reader-dark .tt-organization-activity-chips b,
body.tt-reader-dark .tt-organization-activity-chips b {
  background: rgba(93, 202, 165, 0.14);
  color: #9ee4bd;
}

html.tt-reader-dark .tt-organization-plan-note,
body.tt-reader-dark .tt-organization-plan-note {
  color: var(--muted);
}

html.tt-reader-dark .tt-organization-plan-note strong,
body.tt-reader-dark .tt-organization-plan-note strong {
  color: var(--gold);
}

html.tt-reader-dark .tt-organization-plan-grand-total strong,
body.tt-reader-dark .tt-organization-plan-grand-total strong,
html.tt-reader-dark .tt-organization-total-line strong,
body.tt-reader-dark .tt-organization-total-line strong {
  color: var(--gold);
}

html.tt-reader-dark .tt-organization-plan-total-title,
body.tt-reader-dark .tt-organization-plan-total-title,
html.tt-reader-dark .tt-organization-plan-total-table th,
body.tt-reader-dark .tt-organization-plan-total-table th,
html.tt-reader-dark .tt-organization-plan-grand-total span,
body.tt-reader-dark .tt-organization-plan-grand-total span,
html.tt-reader-dark .tt-organization-plan-total > small,
body.tt-reader-dark .tt-organization-plan-total > small,
html.tt-reader-dark .tt-organization-total-line small,
body.tt-reader-dark .tt-organization-total-line small {
  color: var(--muted);
}

html.tt-reader-dark .tt-organization-plan-total-table td,
body.tt-reader-dark .tt-organization-plan-total-table td {
  color: var(--ink);
}

html.tt-reader-dark .tt-organization-plan-total-table th,
html.tt-reader-dark .tt-organization-plan-total-table td,
body.tt-reader-dark .tt-organization-plan-total-table th,
body.tt-reader-dark .tt-organization-plan-total-table td {
  border-bottom-color: rgba(246, 231, 191, 0.12);
}

html.tt-reader-dark .tt-organization-plan-current,
body.tt-reader-dark .tt-organization-plan-current {
  outline-color: rgba(240, 209, 138, 0.42);
}

html.tt-reader-dark .tt-organization-row,
body.tt-reader-dark .tt-organization-row {
  border-bottom-color: rgba(246, 231, 191, 0.12);
}

html.tt-reader-dark .tt-organization-metric,
html.tt-reader-dark .tt-organization-progress-row,
body.tt-reader-dark .tt-organization-metric,
body.tt-reader-dark .tt-organization-progress-row {
  border-bottom-color: rgba(246, 231, 191, 0.12);
}

html.tt-reader-dark .tt-organization-metric strong,
html.tt-reader-dark .tt-organization-progress-person span,
html.tt-reader-dark .tt-organization-progress-numbers strong,
body.tt-reader-dark .tt-organization-metric strong,
body.tt-reader-dark .tt-organization-progress-person span,
body.tt-reader-dark .tt-organization-progress-numbers strong {
  color: var(--ink);
}

html.tt-reader-dark .tt-organization-progress-person b,
body.tt-reader-dark .tt-organization-progress-person b {
  color: #f0d18a;
}

html.tt-reader-dark .tt-organization-progress-track,
html.tt-reader-dark .tt-organization-member-progress,
body.tt-reader-dark .tt-organization-progress-track,
body.tt-reader-dark .tt-organization-member-progress {
  background: rgba(246, 231, 191, 0.12);
}

html.tt-reader-dark .tt-organization-member-stats span,
body.tt-reader-dark .tt-organization-member-stats span {
  background: rgba(215, 168, 78, 0.14);
  color: #f0d18a;
}

@media (max-width: 720px) {
  .tt-admin-open-books-head {
    display: grid;
  }

  .tt-admin-open-book-row {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .tt-admin-open-book-row em {
    grid-column: 2;
  }

  .tt-compact-label-page .main-area:has(> .topbar-reader),
  .tt-compact-label-page .main-area:has(> .topbar-compact) {
    padding-top: 0;
  }

  .tt-compact-label-page .main-area:has(> .topbar-reader) > .topbar-reader,
  .tt-compact-label-page .main-area:has(> .topbar-compact) > .topbar-compact {
    min-height: 38px;
    margin: 0 -12px 8px;
    padding: 5px 12px;
  }

  .tt-compact-label-page .reader-labels,
  .tt-compact-label-page .reader-label-main {
    width: 100%;
    min-height: 24px;
  }

  .tt-compact-label-page .reader-label-main {
    align-items: center;
  }

  .tt-compact-label-page .breadcrumb {
    min-height: 22px;
    overflow: hidden;
    white-space: nowrap;
  }

  .tt-inline-form,
  .tt-organization-row {
    align-items: stretch;
    flex-direction: column;
  }

  .tt-organization-dashboard {
    width: min(100%, calc(100% - 20px));
    padding-top: 14px;
  }

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

  .tt-school-managed-account-form {
    grid-template-columns: 1fr;
  }

  .tt-organization-progress-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .tt-organization-progress-numbers {
    justify-content: flex-start;
    text-align: left;
  }

  .tt-organization-dashboard-head,
  .tt-organization-member-row {
    grid-template-columns: 1fr;
  }

  .tt-organization-dashboard-head {
    display: grid;
    gap: 14px;
  }

  .tt-organization-dashboard-actions,
  .tt-organization-member-actions {
    justify-content: flex-start;
  }

  .tt-organization-admin-tools,
  .tt-organization-admin-plan {
    grid-template-columns: 1fr;
  }

  .tt-organization-admin-tool-form,
  .tt-organization-plan-form {
    grid-template-columns: 1fr;
  }

  .tt-inline-form.tt-organization-admin-tool-form:has(select[name="role"]),
  .tt-school-managed-account-form:has(select[name="role"]) {
    grid-template-columns: 1fr;
  }

  .tt-organization-invite-result {
    gap: 8px;
  }

  .tt-organization-invite-result button {
    padding: 0 10px;
    font-size: 11px;
  }

  .tt-organization-simple-list > a,
  .tt-organization-simple-list > div {
    grid-template-columns: 1fr;
    align-items: flex-start;
    gap: 6px;
  }

  .tt-organization-simple-list > .tt-organization-pending-invitation-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .tt-organization-simple-list span {
    text-align: left;
    white-space: normal;
  }

  .tt-organization-invitation-status {
    white-space: normal;
  }

  .tt-organization-row .tt-profile-actions-inline {
    justify-content: flex-start;
  }

  .tt-organization-plan-grand-total {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .tt-organization-plan-grand-total strong {
    text-align: left;
  }
}

body.tt-reader-dark .tt-profile-zone,
body.tt-reader-dark .tt-profile-subsection,
body.tt-reader-dark .tt-profile-contributions,
body.tt-reader-dark .tt-review-card,
body.tt-reader-dark .tt-text-report-row,
body.tt-reader-dark .tt-text-report-detail-card,
body.tt-reader-dark .tt-profile-admin-api-form {
  border-color: rgba(225, 183, 95, 0.16);
}

body.tt-reader-dark .tt-worker-settings-summary span {
  border-color: rgba(225, 183, 95, 0.16);
  background: rgba(25, 22, 19, 0.52);
}

body.tt-reader-dark .tt-worker-settings-summary strong {
  color: #fff3d7;
}

body.tt-reader-dark .tt-worker-settings-summary small {
  color: rgba(255, 244, 214, 0.72);
}

body.tt-reader-dark .tt-worker-settings-note,
body.tt-reader-dark .tt-worker-audit-row small {
  color: rgba(255, 244, 214, 0.68);
}

body.tt-reader-dark .tt-worker-audit-log h3,
body.tt-reader-dark .tt-worker-audit-row strong {
  color: #fff3d7;
}

body.tt-reader-dark .tt-worker-audit-row {
  border-top-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-worker-audit-row span {
  color: rgba(255, 248, 230, 0.86);
}

body.tt-reader-dark .tt-profile-overview-panel,
body.tt-reader-dark .tt-profile-action-card,
body.tt-reader-dark .tt-profile-admin-zone,
body.tt-reader-dark .tt-subscription-row,
body.tt-reader-dark .tt-plan-card,
body.tt-reader-dark .tt-plan-payment-panel,
body.tt-reader-dark .tt-plan-admin-summary,
body.tt-reader-dark .tt-school-report-meta,
body.tt-reader-dark .tt-school-report-summary div,
body.tt-reader-dark .tt-school-payment-table-head,
body.tt-reader-dark .tt-school-payment-table-row,
body.tt-reader-dark .tt-organization-plan-note,
body.tt-reader-dark .tt-organization-plan-total,
body.tt-reader-dark .tt-organization-plan-grand-total,
body.tt-reader-dark .tt-text-report-detail-card,
body.tt-reader-dark .tt-worker-status-panel,
body.tt-reader-dark .tt-activity-monitor-summary,
body.tt-reader-dark .tt-activity-detail,
body.tt-reader-dark .tt-activity-event,
body.tt-reader-dark .tt-activity-user-row,
body.tt-reader-dark .tt-activity-day-row,
body.tt-reader-dark .tt-organization-row,
body.tt-reader-dark .tt-organization-book-row,
body.tt-reader-dark .tt-organization-member-row,
body.tt-reader-dark .tt-organization-admin-tools,
body.tt-reader-dark .tt-organization-admin-tool,
body.tt-reader-dark .tt-organization-admin-plan,
body.tt-reader-dark .tt-public-invitation-card,
body.tt-reader-dark .tt-public-profile-card,
body.tt-reader-dark .tt-token-settings-card,
body.tt-reader-dark .tt-user-plan-row,
body.tt-reader-dark .tt-user-role-row {
  border-color: rgba(225, 183, 95, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.026));
  color: var(--ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.024);
}

body.tt-reader-dark .tt-organization-member-row {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-organization-plan-total {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-organization-admin-tools {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-organization-member-row:hover,
body.tt-reader-dark .tt-organization-member-row:focus-within {
  background: rgba(225, 183, 95, 0.095);
}

body.tt-reader-dark .tt-profile-admin-zone {
  background:
    radial-gradient(circle at 18% 0%, rgba(225, 183, 95, 0.13), transparent 34%),
    linear-gradient(180deg, rgba(31, 27, 18, 0.96), rgba(18, 17, 13, 0.96));
}

body.tt-reader-dark .tt-admin-dashboard {
  background: transparent;
  color: var(--ink);
}

body.tt-reader-dark .tt-school-report-head {
  border-bottom-color: rgba(225, 183, 95, 0.18);
}

body.tt-reader-dark .tt-school-report-head p,
body.tt-reader-dark .tt-school-report-meta span,
body.tt-reader-dark .tt-school-report-summary span {
  color: rgba(255, 248, 230, 0.74);
}

body.tt-reader-dark .tt-school-payment-table-row {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-school-payment-table-row:hover,
body.tt-reader-dark .tt-school-payment-table-row:focus-visible {
  background: rgba(225, 183, 95, 0.13);
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-admin-zone {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-admin-api-form,
body.tt-reader-dark .tt-admin-dashboard .tt-admin-control-section {
  border-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-admin-dashboard .tt-worker-status-panel,
body.tt-reader-dark .tt-admin-dashboard .tt-profile-action-card {
  border-color: rgba(225, 183, 95, 0.16);
  background: rgba(16, 15, 12, 0.72);
  color: var(--ink);
  box-shadow: none;
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-check {
  border-color: rgba(225, 183, 95, 0.24);
  background: rgba(18, 17, 13, 0.86);
  color: #fff7e6;
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-check strong {
  color: #fff7e6;
}

body.tt-reader-dark .tt-admin-dashboard .tt-profile-check small {
  color: #e1b75f;
}

body.tt-reader-dark .tt-admin-dashboard .tt-worker-total-grid span,
body.tt-reader-dark .tt-admin-dashboard .tt-worker-list span,
body.tt-reader-dark .tt-admin-dashboard .tt-worker-settings-summary span {
  border-color: rgba(225, 183, 95, 0.13);
  background: rgba(255, 255, 255, 0.035);
}

body.tt-reader-dark .tt-admin-dashboard .tt-worker-queue-table {
  border-color: rgba(225, 183, 95, 0.14);
  background: rgba(255, 255, 255, 0.025);
}

body.tt-reader-dark .tt-admin-dashboard .tt-worker-queue-head {
  background: rgba(225, 183, 95, 0.09);
}

body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-books-list,
body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-book-row {
  border-color: rgba(225, 183, 95, 0.14);
}

body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-books-head h3,
body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-book-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-books-head p,
body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-book-row small,
body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-book-row em {
  color: rgba(255, 244, 214, 0.7);
}

body.tt-reader-dark .tt-admin-dashboard .tt-admin-open-books-head button {
  background: #d7a84e;
  color: #17130b;
}

body.tt-reader-dark .tt-profile-overview-panel strong,
body.tt-reader-dark .tt-profile-zone-head h2,
body.tt-reader-dark .tt-profile-section h1,
body.tt-reader-dark .tt-profile-section h2,
body.tt-reader-dark .tt-profile-action-card h3,
body.tt-reader-dark .tt-plan-detail-head h1,
body.tt-reader-dark .tt-plan-detail-block h2,
body.tt-reader-dark .tt-payment-calendar-month h3,
body.tt-reader-dark .tt-review-head strong,
body.tt-reader-dark .tt-text-report-head strong,
body.tt-reader-dark .tt-text-report-selection,
body.tt-reader-dark .tt-worker-status-panel h2,
body.tt-reader-dark .tt-activity-head h1,
body.tt-reader-dark .tt-activity-detail-head h2,
body.tt-reader-dark .tt-organization-row strong,
body.tt-reader-dark .tt-organization-book-row strong,
body.tt-reader-dark .tt-organization-member-row strong,
body.tt-reader-dark .tt-public-profile-card strong,
body.tt-reader-dark .tt-token-settings-card strong,
body.tt-reader-dark .tt-user-plan-row strong,
body.tt-reader-dark .tt-user-role-row strong {
  color: #f8edd5;
}

body.tt-reader-dark .tt-profile-head p,
body.tt-reader-dark .tt-profile-zone-head p,
body.tt-reader-dark .tt-profile-overview-panel p,
body.tt-reader-dark .tt-profile-action-card p,
body.tt-reader-dark .tt-profile-section p,
body.tt-reader-dark .tt-subscription-row span,
body.tt-reader-dark .tt-muted,
body.tt-reader-dark .tt-plan-card p,
body.tt-reader-dark .tt-plan-detail-head p:not(.tt-kicker),
body.tt-reader-dark .tt-plan-payment-panel span,
body.tt-reader-dark .tt-plan-admin-summary span,
body.tt-reader-dark .tt-plan-payment-panel p,
body.tt-reader-dark .tt-review-head span,
body.tt-reader-dark .tt-text-report-message,
body.tt-reader-dark .tt-text-report-review-note,
body.tt-reader-dark .tt-text-report-main small,
body.tt-reader-dark .tt-text-report-context,
body.tt-reader-dark .tt-empty-state,
body.tt-reader-dark .tt-activity-head small,
body.tt-reader-dark .tt-activity-detail-head p,
body.tt-reader-dark .tt-activity-user-main small,
body.tt-reader-dark .tt-activity-day-row small,
body.tt-reader-dark .tt-activity-event-body small,
body.tt-reader-dark .tt-organization-row span,
body.tt-reader-dark .tt-organization-book-row span,
body.tt-reader-dark .tt-organization-member-row span,
body.tt-reader-dark .tt-public-profile-card span,
body.tt-reader-dark .tt-token-settings-card span,
body.tt-reader-dark .tt-user-plan-row span,
body.tt-reader-dark .tt-user-role-row span,
body.tt-reader-dark .tt-aksbel-library-search-status,
body.tt-reader-dark .tt-aksbel-library-more-note,
body.tt-reader-dark .sidebar-tree-limit-note {
  color: rgba(226, 215, 193, 0.78);
}

body.tt-reader-dark .tt-profile-role-strip span,
body.tt-reader-dark .tt-profile-actions a,
body.tt-reader-dark .tt-profile-logout button,
body.tt-reader-dark .tt-section-head-row > a,
body.tt-reader-dark .tt-plan-pill,
body.tt-reader-dark .tt-payment-calendar-day,
body.tt-reader-dark .tt-text-report-actions select,
body.tt-reader-dark .tt-text-report-actions input,
body.tt-reader-dark .tt-text-report-review-card select,
body.tt-reader-dark .tt-text-report-review-card input,
body.tt-reader-dark .tt-profile-project-list a {
  border-color: rgba(225, 183, 95, 0.14);
  background: rgba(255, 255, 255, 0.055);
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-profile-actions a:hover,
body.tt-reader-dark .tt-profile-actions a:focus-visible,
body.tt-reader-dark .tt-profile-logout button:hover,
body.tt-reader-dark .tt-profile-logout button:focus-visible,
body.tt-reader-dark .tt-section-head-row > a:hover,
body.tt-reader-dark .tt-section-head-row > a:focus-visible,
body.tt-reader-dark .tt-profile-project-list a:hover,
body.tt-reader-dark .tt-profile-project-list a:focus-visible {
  background: rgba(215, 168, 78, 0.14);
  color: #fff2cf;
  text-decoration: none;
}

body.tt-reader-dark .tt-profile-actions button,
body.tt-reader-dark .tt-text-report-actions a,
body.tt-reader-dark .tt-text-report-actions button,
body.tt-reader-dark .tt-text-report-review-card button {
  background: #f0d18a;
  color: #17130b;
}

body.tt-reader-dark .tt-profile-form input,
body.tt-reader-dark .tt-profile-form select,
body.tt-reader-dark .tt-profile-form textarea,
body.tt-reader-dark .tt-inline-form input,
body.tt-reader-dark .tt-inline-form select,
body.tt-reader-dark .tt-inline-form textarea,
body.tt-reader-dark .tt-user-plan-search input,
body.tt-reader-dark .tt-token-settings-form input,
body.tt-reader-dark .tt-token-settings-form select,
body.tt-reader-dark .tt-token-settings-form textarea,
body.tt-reader-dark .tt-library-search input {
  border-color: rgba(225, 183, 95, 0.18);
  background: rgba(255, 255, 255, 0.065);
  color: #f8edd5;
}

body.tt-reader-dark select option {
  background: #20211d;
  color: #f8edd5;
}

body.tt-reader-dark .tt-profile-form input::placeholder,
body.tt-reader-dark .tt-profile-form textarea::placeholder,
body.tt-reader-dark .tt-inline-form input::placeholder,
body.tt-reader-dark .tt-inline-form textarea::placeholder,
body.tt-reader-dark .tt-user-plan-search input::placeholder,
body.tt-reader-dark .tt-token-settings-form input::placeholder,
body.tt-reader-dark .tt-token-settings-form textarea::placeholder,
body.tt-reader-dark .tt-library-search input::placeholder {
  color: rgba(226, 215, 193, 0.52);
}

body.tt-reader-dark .tt-profile-form input:focus,
body.tt-reader-dark .tt-profile-form select:focus,
body.tt-reader-dark .tt-profile-form textarea:focus,
body.tt-reader-dark .tt-inline-form input:focus,
body.tt-reader-dark .tt-inline-form select:focus,
body.tt-reader-dark .tt-inline-form textarea:focus,
body.tt-reader-dark .tt-user-plan-search input:focus,
body.tt-reader-dark .tt-token-settings-form input:focus,
body.tt-reader-dark .tt-token-settings-form select:focus,
body.tt-reader-dark .tt-token-settings-form textarea:focus,
body.tt-reader-dark .tt-library-search input:focus {
  border-color: rgba(240, 209, 138, 0.48);
  outline: 3px solid rgba(240, 209, 138, 0.12);
}

body.tt-reader-dark .tt-subscription-row-link,
body.tt-reader-dark .tt-plan-card-link,
body.tt-reader-dark .tt-profile-project-list a {
  color: var(--ink-soft);
}

body.tt-reader-dark .tt-subscription-row-link:hover,
body.tt-reader-dark .tt-plan-card-link:hover,
body.tt-reader-dark .tt-plan-card-link:focus-visible {
  background: rgba(215, 168, 78, 0.12);
  color: #fff2cf;
}

body.tt-reader-dark .tt-subscription-status,
body.tt-reader-dark .tt-plan-pill {
  background: rgba(255, 255, 255, 0.07);
  color: rgba(226, 215, 193, 0.84);
}

body.tt-reader-dark .tt-subscription-status-pending,
body.tt-reader-dark .tt-plan-pill-pending,
body.tt-reader-dark .tt-plan-pill-researcher,
body.tt-reader-dark .tt-plan-pill-master,
body.tt-reader-dark .tt-profile-role-strip span.admin {
  background: rgba(215, 168, 78, 0.18);
  color: #f6dd9f;
}

body.tt-reader-dark .tt-subscription-status-accepted,
body.tt-reader-dark .tt-plan-pill-learner,
body.tt-reader-dark .tt-plan-pill-scholar,
body.tt-reader-dark .tt-plan-pill-pro,
body.tt-reader-dark .tt-profile-role-strip span.editor,
body.tt-reader-dark .tt-profile-status span.ready,
body.tt-reader-dark .tt-payment-calendar-day.covered {
  background: rgba(74, 222, 128, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-profile-role-strip span.business-operations {
  background: rgba(72, 189, 211, 0.14);
  color: #9adce8;
}

body.tt-reader-dark .tt-subscription-status-rejected,
body.tt-reader-dark .tt-plan-pill-rejected,
body.tt-reader-dark .tt-profile-form .errorlist,
body.tt-reader-dark .tt-profile-errors {
  background: rgba(248, 113, 113, 0.12);
  color: #ffc6c6;
}

body.tt-reader-dark .tt-profile-status span,
body.tt-reader-dark .tt-text-report-row-dismissed .tt-text-report-head span {
  background: rgba(255, 255, 255, 0.07);
  color: rgba(226, 215, 193, 0.82);
}

body.tt-reader-dark.tt-error-page-body {
  background: radial-gradient(circle at top left, rgba(109, 152, 255, 0.12), transparent 34%),
    linear-gradient(180deg, #101522 0%, #151b2a 100%);
}

body.tt-reader-dark .tt-error-panel {
  border-color: rgba(225, 183, 95, 0.16);
  background: rgba(18, 25, 40, 0.96);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.35);
}

body.tt-reader-dark .tt-error-panel h1 {
  color: #f6efe3;
}

body.tt-reader-dark .tt-error-panel p {
  color: rgba(226, 215, 193, 0.78);
}

body.tt-reader-dark .tt-error-panel small {
  color: rgba(226, 215, 193, 0.58);
}

body.tt-reader-dark .tt-text-report-head span,
body.tt-reader-dark .tt-activity-event-red .tt-activity-event-badge {
  background: rgba(248, 113, 113, 0.14);
  color: #ffc6c6;
}

body.tt-reader-dark .tt-text-report-row-resolved .tt-text-report-head span,
body.tt-reader-dark .tt-activity-event-green .tt-activity-event-badge {
  background: rgba(74, 222, 128, 0.14);
  color: #9ee4bd;
}

body.tt-reader-dark .tt-activity-event-badge,
body.tt-reader-dark .tt-activity-event-gold .tt-activity-event-badge,
body.tt-reader-dark .tt-activity-event-navy .tt-activity-event-badge,
body.tt-reader-dark .tt-plan-card-cta,
body.tt-reader-dark .tt-profile-zone-head span,
body.tt-reader-dark .tt-kicker {
  color: #f0d18a;
}

body.tt-reader-dark .tt-payment-calendar-day.today {
  box-shadow: inset 0 0 0 2px #f0d18a;
}

body.tt-reader-dark .tt-payment-calendar-day.outside {
  opacity: 0.45;
}

body.tt-reader-dark .tt-organization-plan-total-table th,
body.tt-reader-dark .tt-organization-plan-total-table td,
body.tt-reader-dark .tt-worker-queue-row {
  border-color: rgba(225, 183, 95, 0.16);
}

body.tt-reader-dark .tt-organization-plan-total-table th,
body.tt-reader-dark .tt-worker-queue-row:first-child {
  background: rgba(215, 168, 78, 0.10);
  color: #f6dd9f;
}

body.tt-reader-dark .tt-organization-plan-total-table,
body.tt-reader-dark .tt-organization-plan-total-table th,
body.tt-reader-dark .tt-organization-plan-total-table td {
  background: transparent;
}

body.tt-reader-dark .reader-paper a:not(.tt-btn):not(.btn):not(.tt-profile-zone-primary):not(.tt-profile-actions a):not(.tt-profile-project-list a):not(.tt-subscription-row-link):not(.tt-plan-card-link):not(.tt-text-report-actions a) {
  color: #f0d18a;
}

body.tt-reader-dark .reader-paper a:not(.tt-btn):not(.btn):hover,
body.tt-reader-dark .reader-paper a:not(.tt-btn):not(.btn):focus-visible {
  color: #fff2cf;
}

/* Final dark-mode contrast pass for dense rows and hover states. */
body.tt-reader-dark .tt-activity-user-row:hover,
body.tt-reader-dark .tt-activity-user-row:focus-visible,
body.tt-reader-dark .tt-activity-day-row:hover,
body.tt-reader-dark .tt-activity-day-row:focus-visible,
body.tt-reader-dark .tt-activity-day-row.active,
body.tt-reader-dark .tt-activity-event:hover,
body.tt-reader-dark .tt-activity-event:focus-visible,
body.tt-reader-dark .tt-activity-event:target,
body.tt-reader-dark .tt-aksbel-learner-row:hover,
body.tt-reader-dark .tt-aksbel-learner-row:focus-visible,
body.tt-reader-dark .tt-aksbel-learner-row.active,
body.tt-reader-dark .tt-aksbel-day-row:hover,
body.tt-reader-dark .tt-aksbel-day-row:focus-visible,
body.tt-reader-dark .tt-aksbel-day-row.active,
body.tt-reader-dark .tt-aksbel-project-report-row:hover,
body.tt-reader-dark .tt-aksbel-project-report-row:focus-visible,
body.tt-reader-dark .tt-aksbel-project-report-row.active,
body.tt-reader-dark .tt-aksbel-history-row:hover,
body.tt-reader-dark .tt-aksbel-history-row:focus-visible,
body.tt-reader-dark .tt-quiz-history-row:hover,
body.tt-reader-dark .tt-quiz-history-row:focus-visible,
body.tt-reader-dark .tt-quiz-history-row:target,
body.tt-reader-dark .tt-quiz-history-row.tt-quiz-history-return-focus,
body.tt-reader-dark .tt-quiz-document-row:hover,
body.tt-reader-dark .tt-quiz-document-row:focus-visible,
body.tt-reader-dark .tt-document-row:hover,
body.tt-reader-dark .tt-document-row:focus-visible,
body.tt-reader-dark .tt-profile-project-list a:hover,
body.tt-reader-dark .tt-profile-project-list a:focus-visible,
body.tt-reader-dark .tt-subscription-row-link:hover,
body.tt-reader-dark .tt-subscription-row-link:focus-visible,
body.tt-reader-dark .tt-plan-card-link:hover,
body.tt-reader-dark .tt-plan-card-link:focus-visible,
body.tt-reader-dark .tt-public-profile-project-row:hover,
body.tt-reader-dark .tt-public-profile-project-row:focus-visible,
body.tt-reader-dark .tt-editor-directory-row:hover,
body.tt-reader-dark .tt-editor-directory-row:focus-within,
body.tt-reader-dark .tt-contributor-row:hover,
body.tt-reader-dark .tt-contributor-row:focus-within,
body.tt-reader-dark .tt-organization-row:hover,
body.tt-reader-dark .tt-organization-row:focus-within,
body.tt-reader-dark .tt-organization-book-row:hover,
body.tt-reader-dark .tt-organization-book-row:focus-within,
body.tt-reader-dark .tt-organization-member-row:hover,
body.tt-reader-dark .tt-organization-member-row:focus-within,
body.tt-reader-dark .tt-organization-simple-list > a:hover,
body.tt-reader-dark .tt-organization-simple-list > a:focus-visible,
body.tt-reader-dark .tt-organization-simple-list > div:hover,
body.tt-reader-dark .tt-organization-simple-list > div:focus-within,
body.tt-reader-dark .tt-organization-member-main:hover,
body.tt-reader-dark .tt-user-plan-row:hover,
body.tt-reader-dark .tt-user-plan-row:focus-within,
body.tt-reader-dark .tt-user-role-row:hover,
body.tt-reader-dark .tt-user-role-row:focus-within,
body.tt-reader-dark .tt-token-row:hover,
body.tt-reader-dark .tt-token-row:focus-within,
body.tt-reader-dark .tt-worker-queue-row:hover,
body.tt-reader-dark .tt-worker-queue-row:focus-within,
body.tt-reader-dark .search-result:hover,
body.tt-reader-dark .search-result:focus-visible,
body.tt-reader-dark .invitation-item:hover,
body.tt-reader-dark .invitation-item:focus-within {
  border-color: rgba(240, 209, 138, 0.24);
  background:
    linear-gradient(180deg, rgba(240, 209, 138, 0.135), rgba(240, 209, 138, 0.075)),
    rgba(16, 17, 14, 0.96);
  color: #f8edd5;
  text-decoration: none;
}

body.tt-reader-dark .doc-item:hover,
body.tt-reader-dark .doc-item:focus-visible,
body.tt-reader-dark .project-item:hover,
body.tt-reader-dark .project-item:focus-visible,
body.tt-reader-dark .doc-item.active,
body.tt-reader-dark .project-item.active,
body.tt-reader-dark .sidebar-create-button:hover,
body.tt-reader-dark .sidebar-create-button:focus-visible,
body.tt-reader-dark .sidebar-create-wide:hover,
body.tt-reader-dark .sidebar-create-wide:focus-visible,
body.tt-reader-dark .sidebar-create-form .sidebar-create-wide:hover,
body.tt-reader-dark .sidebar-create-form .sidebar-create-wide:focus-visible,
body.tt-reader-dark .sidebar-profile-link:hover,
body.tt-reader-dark .sidebar-profile-link:focus-visible,
body.tt-reader-dark .sidebar-profile-main:hover,
body.tt-reader-dark .sidebar-profile-main:focus-visible,
body.tt-reader-dark .sidebar-environment-option:hover,
body.tt-reader-dark .sidebar-environment-option:focus-visible,
body.tt-reader-dark .sidebar-environment-link:hover,
body.tt-reader-dark .sidebar-environment-link:focus-visible,
body.tt-reader-dark .tree-toggle:hover,
body.tt-reader-dark .tree-toggle:focus-visible,
body.tt-reader-dark .tree-menu-button:hover,
body.tt-reader-dark .tree-menu-button:focus-visible,
body.tt-reader-dark .tree-menu button:hover,
body.tt-reader-dark .tree-menu button:focus-visible,
body.tt-reader-dark .tree-menu a:hover,
body.tt-reader-dark .tree-menu a:focus-visible {
  background: rgba(240, 209, 138, 0.15);
  color: #fff2cf;
  text-decoration: none;
}

body.tt-reader-dark .tt-activity-user-row:hover strong,
body.tt-reader-dark .tt-activity-user-row:focus-visible strong,
body.tt-reader-dark .tt-activity-day-row:hover strong,
body.tt-reader-dark .tt-activity-day-row:focus-visible strong,
body.tt-reader-dark .tt-activity-day-row.active strong,
body.tt-reader-dark .tt-activity-event:hover strong,
body.tt-reader-dark .tt-activity-event:focus-visible strong,
body.tt-reader-dark .tt-activity-event:target strong,
body.tt-reader-dark .tt-aksbel-learner-row:hover strong,
body.tt-reader-dark .tt-aksbel-learner-row:focus-visible strong,
body.tt-reader-dark .tt-aksbel-learner-row.active strong,
body.tt-reader-dark .tt-aksbel-day-row:hover strong,
body.tt-reader-dark .tt-aksbel-day-row:focus-visible strong,
body.tt-reader-dark .tt-aksbel-day-row.active strong,
body.tt-reader-dark .tt-aksbel-history-row:hover strong,
body.tt-reader-dark .tt-aksbel-history-row:focus-visible strong,
body.tt-reader-dark .tt-aksbel-project-report-row:hover strong,
body.tt-reader-dark .tt-aksbel-project-report-row:focus-visible strong,
body.tt-reader-dark .tt-aksbel-project-report-row.active strong,
body.tt-reader-dark .tt-quiz-history-row:hover h3,
body.tt-reader-dark .tt-quiz-history-row:focus-visible h3,
body.tt-reader-dark .tt-quiz-document-row:hover strong,
body.tt-reader-dark .tt-quiz-document-row:focus-visible strong,
body.tt-reader-dark .tt-document-row:hover .tt-row-title,
body.tt-reader-dark .tt-document-row:focus-visible .tt-row-title,
body.tt-reader-dark .tt-profile-project-list a:hover strong,
body.tt-reader-dark .tt-profile-project-list a:focus-visible strong,
body.tt-reader-dark .tt-public-profile-project-row:hover strong,
body.tt-reader-dark .tt-public-profile-project-row:focus-visible strong,
body.tt-reader-dark .tt-editor-directory-row:hover strong,
body.tt-reader-dark .tt-editor-directory-row:focus-within strong,
body.tt-reader-dark .tt-contributor-row:hover strong,
body.tt-reader-dark .tt-contributor-row:focus-within strong,
body.tt-reader-dark .tt-organization-row:hover strong,
body.tt-reader-dark .tt-organization-row:focus-within strong,
body.tt-reader-dark .tt-organization-book-row:hover strong,
body.tt-reader-dark .tt-organization-book-row:focus-within strong,
body.tt-reader-dark .tt-organization-member-row:hover strong,
body.tt-reader-dark .tt-organization-member-row:focus-within strong,
body.tt-reader-dark .tt-organization-simple-list > a:hover strong,
body.tt-reader-dark .tt-organization-simple-list > a:focus-visible strong,
body.tt-reader-dark .tt-organization-simple-list > div:hover strong,
body.tt-reader-dark .tt-organization-simple-list > div:focus-within strong,
body.tt-reader-dark .tt-user-plan-row:hover strong,
body.tt-reader-dark .tt-user-plan-row:focus-within strong,
body.tt-reader-dark .tt-user-role-row:hover strong,
body.tt-reader-dark .tt-user-role-row:focus-within strong,
body.tt-reader-dark .tt-token-row:hover strong,
body.tt-reader-dark .tt-token-row:focus-within strong,
body.tt-reader-dark .tt-worker-queue-row:hover strong,
body.tt-reader-dark .tt-worker-queue-row:focus-within strong,
body.tt-reader-dark .search-result:hover .search-result-head,
body.tt-reader-dark .search-result:focus-visible .search-result-head,
body.tt-reader-dark .invitation-item:hover b,
body.tt-reader-dark .invitation-item:focus-within b {
  color: #fff4d6;
}

body.tt-reader-dark .tt-activity-user-row:hover small,
body.tt-reader-dark .tt-activity-user-row:focus-visible small,
body.tt-reader-dark .tt-activity-day-row:hover small,
body.tt-reader-dark .tt-activity-day-row:focus-visible small,
body.tt-reader-dark .tt-activity-day-row.active small,
body.tt-reader-dark .tt-activity-event:hover small,
body.tt-reader-dark .tt-activity-event:focus-visible small,
body.tt-reader-dark .tt-activity-event:target small,
body.tt-reader-dark .tt-aksbel-learner-row:hover small,
body.tt-reader-dark .tt-aksbel-learner-row:focus-visible small,
body.tt-reader-dark .tt-aksbel-day-row:hover small,
body.tt-reader-dark .tt-aksbel-day-row:focus-visible small,
body.tt-reader-dark .tt-aksbel-history-row:hover small,
body.tt-reader-dark .tt-aksbel-history-row:focus-visible small,
body.tt-reader-dark .tt-aksbel-project-report-row:hover span,
body.tt-reader-dark .tt-aksbel-project-report-row:focus-visible span,
body.tt-reader-dark .tt-quiz-history-row:hover time,
body.tt-reader-dark .tt-quiz-history-row:focus-visible time,
body.tt-reader-dark .tt-quiz-document-row:hover em,
body.tt-reader-dark .tt-quiz-document-row:focus-visible em,
body.tt-reader-dark .tt-document-row:hover p,
body.tt-reader-dark .tt-document-row:focus-visible p,
body.tt-reader-dark .tt-profile-project-list a:hover span,
body.tt-reader-dark .tt-profile-project-list a:focus-visible span,
body.tt-reader-dark .tt-public-profile-project-row:hover span,
body.tt-reader-dark .tt-public-profile-project-row:focus-visible span,
body.tt-reader-dark .tt-editor-directory-row:hover span,
body.tt-reader-dark .tt-editor-directory-row:focus-within span,
body.tt-reader-dark .tt-editor-directory-row:hover p,
body.tt-reader-dark .tt-editor-directory-row:focus-within p,
body.tt-reader-dark .tt-contributor-row:hover p,
body.tt-reader-dark .tt-contributor-row:focus-within p,
body.tt-reader-dark .tt-organization-row:hover span,
body.tt-reader-dark .tt-organization-row:focus-within span,
body.tt-reader-dark .tt-organization-book-row:hover span,
body.tt-reader-dark .tt-organization-book-row:focus-within span,
body.tt-reader-dark .tt-organization-member-row:hover span,
body.tt-reader-dark .tt-organization-member-row:focus-within span,
body.tt-reader-dark .tt-organization-simple-list > a:hover span,
body.tt-reader-dark .tt-organization-simple-list > a:focus-visible span,
body.tt-reader-dark .tt-organization-simple-list > div:hover span,
body.tt-reader-dark .tt-organization-simple-list > div:focus-within span,
body.tt-reader-dark .tt-user-plan-row:hover span,
body.tt-reader-dark .tt-user-plan-row:focus-within span,
body.tt-reader-dark .tt-user-role-row:hover span,
body.tt-reader-dark .tt-user-role-row:focus-within span,
body.tt-reader-dark .tt-token-row:hover span,
body.tt-reader-dark .tt-token-row:focus-within span,
body.tt-reader-dark .tt-token-row:hover small,
body.tt-reader-dark .tt-token-row:focus-within small,
body.tt-reader-dark .tt-worker-queue-row:hover span,
body.tt-reader-dark .tt-worker-queue-row:focus-within span,
body.tt-reader-dark .search-result:hover .search-result-snippet,
body.tt-reader-dark .search-result:hover .search-result-project,
body.tt-reader-dark .search-result:focus-visible .search-result-snippet,
body.tt-reader-dark .search-result:focus-visible .search-result-project,
body.tt-reader-dark .invitation-item:hover small,
body.tt-reader-dark .invitation-item:focus-within small {
  color: rgba(255, 244, 214, 0.78);
}

body.tt-reader-dark .doc-item:hover .doc-name > span,
body.tt-reader-dark .doc-item:focus-visible .doc-name > span,
body.tt-reader-dark .doc-item.active .doc-name > span,
body.tt-reader-dark .project-item:hover .doc-name > span,
body.tt-reader-dark .project-item:focus-visible .doc-name > span,
body.tt-reader-dark .project-item.active .doc-name > span,
body.tt-reader-dark .sidebar-profile-link:hover small,
body.tt-reader-dark .sidebar-profile-link:focus-visible small,
body.tt-reader-dark .sidebar-profile-main:hover small,
body.tt-reader-dark .sidebar-profile-main:focus-visible small,
body.tt-reader-dark .sidebar-environment-option:hover small,
body.tt-reader-dark .sidebar-environment-option:focus-visible small {
  color: rgba(255, 244, 214, 0.72);
}

body.tt-reader-dark .doc-item:hover .doc-number,
body.tt-reader-dark .doc-item:focus-visible .doc-number,
body.tt-reader-dark .doc-item.active .doc-number,
body.tt-reader-dark .project-item:hover .doc-number,
body.tt-reader-dark .project-item:focus-visible .doc-number,
body.tt-reader-dark .project-item.active .doc-number,
body.tt-reader-dark .tt-activity-user-row:hover > em,
body.tt-reader-dark .tt-activity-user-row:focus-visible > em,
body.tt-reader-dark .tt-activity-day-row:hover em,
body.tt-reader-dark .tt-activity-day-row:focus-visible em,
body.tt-reader-dark .tt-activity-day-row.active em,
body.tt-reader-dark .tt-aksbel-learner-row:hover > em,
body.tt-reader-dark .tt-aksbel-learner-row:focus-visible > em,
body.tt-reader-dark .tt-aksbel-day-row:hover > em,
body.tt-reader-dark .tt-aksbel-day-row:focus-visible > em,
body.tt-reader-dark .tt-aksbel-project-report-row:hover > em,
body.tt-reader-dark .tt-aksbel-project-report-row:focus-visible > em {
  background: rgba(255, 244, 214, 0.12);
  color: #fff2cf;
}

body.tt-reader-dark .tt-activity-chips b,
body.tt-reader-dark .tt-aksbel-day-row .tt-activity-chips b,
body.tt-reader-dark .tt-activity-user-row:hover .tt-activity-chips b,
body.tt-reader-dark .tt-activity-day-row:hover .tt-activity-chips b,
body.tt-reader-dark .tt-activity-event:hover .tt-activity-chips b {
  background: rgba(255, 244, 214, 0.10);
  color: rgba(255, 244, 214, 0.80);
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-detail,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:target {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-event {
  border-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:hover,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:focus-visible {
  border-color: rgba(240, 209, 138, 0.22);
  background: rgba(240, 209, 138, 0.075);
  box-shadow: none;
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:hover strong,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:focus-visible strong {
  color: #fff4d6;
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:hover small,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:focus-visible small,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:hover time,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event:focus-visible time {
  color: rgba(255, 244, 214, 0.78);
}

body.tt-reader-dark .tt-activity-page-detail .tt-activity-event-green:hover .tt-activity-event-badge,
body.tt-reader-dark .tt-activity-page-detail .tt-activity-event-green:focus-visible .tt-activity-event-badge {
  background: rgba(74, 222, 128, 0.16);
  color: #b8f0cc;
}

/* Dark mode: timeline/list rows should stay quiet, not card-like. */
body.tt-reader-dark .tt-activity-event-list .tt-activity-event,
body.tt-reader-dark .tt-activity-event-list .tt-activity-event:hover,
body.tt-reader-dark .tt-activity-event-list .tt-activity-event:focus-visible,
body.tt-reader-dark .tt-activity-event-list .tt-activity-event:target,
body.tt-reader-dark .tt-activity-day-list .tt-activity-day-row,
body.tt-reader-dark .tt-activity-day-list .tt-activity-day-row:hover,
body.tt-reader-dark .tt-activity-day-list .tt-activity-day-row:focus-visible,
body.tt-reader-dark .tt-activity-day-list .tt-activity-day-row.active,
body.tt-reader-dark .tt-activity-user-list .tt-activity-user-row,
body.tt-reader-dark .tt-activity-user-list .tt-activity-user-row:hover,
body.tt-reader-dark .tt-activity-user-list .tt-activity-user-row:focus-visible,
body.tt-reader-dark .tt-aksbel-learner-list .tt-aksbel-learner-row,
body.tt-reader-dark .tt-aksbel-learner-list .tt-aksbel-learner-row:hover,
body.tt-reader-dark .tt-aksbel-learner-list .tt-aksbel-learner-row:focus-visible,
body.tt-reader-dark .tt-aksbel-learner-list .tt-aksbel-learner-row.active,
body.tt-reader-dark .tt-aksbel-day-list .tt-aksbel-day-row,
body.tt-reader-dark .tt-aksbel-day-list .tt-aksbel-day-row:hover,
body.tt-reader-dark .tt-aksbel-day-list .tt-aksbel-day-row:focus-visible,
body.tt-reader-dark .tt-aksbel-day-list .tt-aksbel-day-row.active,
body.tt-reader-dark .tt-aksbel-history-list .tt-aksbel-history-row,
body.tt-reader-dark .tt-aksbel-history-list .tt-aksbel-history-row:hover,
body.tt-reader-dark .tt-aksbel-history-list .tt-aksbel-history-row:focus-visible,
body.tt-reader-dark .tt-aksbel-project-report-row,
body.tt-reader-dark .tt-aksbel-project-report-row:hover,
body.tt-reader-dark .tt-aksbel-project-report-row:focus-visible,
body.tt-reader-dark .tt-aksbel-project-report-row.active,
body.tt-reader-dark .tt-quiz-document-list .tt-quiz-document-row,
body.tt-reader-dark .tt-quiz-document-list .tt-quiz-document-row:hover,
body.tt-reader-dark .tt-quiz-document-list .tt-quiz-document-row:focus-visible,
body.tt-reader-dark .tt-quiz-history-row,
body.tt-reader-dark .tt-quiz-history-row:hover,
body.tt-reader-dark .tt-quiz-history-row:focus-visible,
body.tt-reader-dark .tt-quiz-history-row:target,
body.tt-reader-dark .tt-quiz-history-row.tt-quiz-history-return-focus,
body.tt-reader-dark .tt-document-list .tt-document-row,
body.tt-reader-dark .tt-document-list .tt-document-row:hover,
body.tt-reader-dark .tt-document-list .tt-document-row:focus-visible,
body.tt-reader-dark .search-result,
body.tt-reader-dark .search-result:hover,
body.tt-reader-dark .search-result:focus-visible {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-activity-event-list .tt-activity-event,
body.tt-reader-dark .tt-activity-day-list .tt-activity-day-row,
body.tt-reader-dark .tt-activity-user-list .tt-activity-user-row,
body.tt-reader-dark .tt-aksbel-learner-list .tt-aksbel-learner-row,
body.tt-reader-dark .tt-aksbel-day-list .tt-aksbel-day-row,
body.tt-reader-dark .tt-aksbel-history-list .tt-aksbel-history-row,
body.tt-reader-dark .tt-aksbel-project-report-row,
body.tt-reader-dark .tt-quiz-document-list .tt-quiz-document-row,
body.tt-reader-dark .tt-quiz-history-row,
body.tt-reader-dark .tt-document-list .tt-document-row,
body.tt-reader-dark .search-result {
  border-color: rgba(225, 183, 95, 0.12);
}

body.tt-reader-dark .tt-activity-monitor-list .tt-activity-monitor-event {
  background: transparent;
  box-shadow: none;
}

body.tt-reader-dark .tt-activity-monitor-list .tt-activity-monitor-event:hover,
body.tt-reader-dark .tt-activity-monitor-list .tt-activity-monitor-event:focus-visible {
  border-color: rgba(240, 209, 138, 0.24);
  background: rgba(240, 209, 138, 0.095);
}

/* About TheoryTrace */
.tt-about-body {
  background: #f5f1e8;
  color: #151515;
}

.tt-about-page {
  min-height: 100vh;
  overflow-x: clip;
  background: #f5f1e8;
}

.tt-about-nav {
  position: relative;
  z-index: 20;
  min-height: 68px;
  display: grid;
  grid-template-columns: minmax(190px, 1fr) auto minmax(190px, 1fr);
  align-items: center;
  gap: 24px;
  padding: 10px max(24px, calc((100% - 1180px) / 2));
  border-bottom: 1px solid rgba(22, 27, 51, 0.10);
  background: rgba(255, 253, 248, 0.96);
  backdrop-filter: blur(14px);
}

.tt-about-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  color: #161b33;
  text-decoration: none;
}

.tt-about-brand-mark {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  border-radius: 8px;
  background: #161b33;
  color: #fffdf8;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
  line-height: 1;
}

.tt-about-brand > span:last-child {
  display: grid;
  gap: 1px;
}

.tt-about-brand strong {
  font-size: 15px;
  line-height: 1.1;
}

.tt-about-brand small {
  color: #767066;
  font-size: 10px;
  font-weight: 750;
}

.tt-about-nav-links,
.tt-about-nav-actions,
.tt-about-hero-actions,
.tt-about-closing-actions {
  display: flex;
  align-items: center;
}

.tt-about-nav-links {
  gap: 24px;
}

.tt-about-nav-links a {
  color: #313131;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.tt-about-nav-links a:hover,
.tt-about-nav-links a:focus-visible {
  color: #1f6f68;
}

.tt-about-nav-actions {
  justify-content: flex-end;
  gap: 8px;
}

.tt-about-theme-toggle {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border-radius: 8px;
}

.tt-about-nav-cta,
.tt-about-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 0 16px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
  text-decoration: none;
}

.tt-about-nav-cta {
  min-height: 36px;
  background: #161b33;
  color: #fffdf8;
}

.tt-about-nav-cta:hover,
.tt-about-nav-cta:focus-visible {
  background: #222a51;
  color: #fffdf8;
}

.tt-about-hero {
  position: relative;
  height: clamp(560px, 76svh, 720px);
  isolation: isolate;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #10162b;
  color: #fffdf8;
}

.tt-about-hero-image,
.tt-about-hero-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.tt-about-hero-image {
  z-index: -2;
  display: block;
  object-fit: cover;
  object-position: center;
}

.tt-about-hero-shade {
  z-index: -1;
  background: rgba(7, 12, 28, 0.22);
}

.tt-about-hero-inner {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 44px 0 72px;
}

.tt-about-eyebrow,
.tt-about-kicker {
  margin: 0;
  color: #a16111;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}

.tt-about-eyebrow {
  color: #f0d18a;
}

.tt-about-hero h1 {
  max-width: 720px;
  margin: 12px 0 16px;
  color: #fffdf8;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 88px;
  font-weight: 700;
  line-height: 0.92;
  overflow-wrap: anywhere;
}

.tt-about-hero-lead {
  max-width: 610px;
  margin: 0;
  color: rgba(255, 253, 248, 0.90);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.tt-about-hero-actions,
.tt-about-closing-actions {
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 28px;
}

.tt-about-button-primary {
  border-color: #e1b75f;
  background: #e1b75f;
  color: #17130b;
}

.tt-about-button-primary:hover,
.tt-about-button-primary:focus-visible {
  border-color: #f0d18a;
  background: #f0d18a;
  color: #17130b;
}

.tt-about-button-secondary {
  border-color: rgba(255, 253, 248, 0.52);
  background: rgba(13, 18, 36, 0.26);
  color: #fffdf8;
  backdrop-filter: blur(10px);
}

.tt-about-button-secondary:hover,
.tt-about-button-secondary:focus-visible {
  border-color: #fffdf8;
  background: rgba(255, 253, 248, 0.12);
  color: #fffdf8;
}

.tt-about-scroll-cue {
  position: absolute;
  left: max(24px, calc((100% - 1180px) / 2));
  bottom: 22px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(255, 253, 248, 0.82);
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
}

.tt-about-scroll-cue span {
  color: #f0d18a;
  font-size: 17px;
}

.tt-about-problems,
.tt-about-loop {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 94px 0;
}

.tt-about-section-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.65fr);
  align-items: end;
  gap: 72px;
  padding-bottom: 38px;
  min-width: 0;
}

.tt-about-section-intro > * {
  min-width: 0;
}

.tt-about-section-intro h2,
.tt-about-schools h2,
.tt-about-closing h2 {
  margin: 10px 0 0;
  color: #161b33;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 46px;
  font-weight: 700;
  line-height: 1.08;
}

.tt-about-section-lead,
.tt-about-schools-copy > p,
.tt-about-closing > p {
  margin: 0;
  color: #5c574f;
  font-size: 16px;
  line-height: 1.72;
}

.tt-about-problems-header {
  align-items: start;
  grid-template-columns: minmax(160px, 0.28fr) minmax(0, 1fr);
}

.tt-about-problems-title {
  max-width: 220px;
  color: #a16111;
  font-family: inherit;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tt-about-problems-intro {
  margin: 0;
}

.tt-about-problems-intro strong {
  display: block;
  max-width: 900px;
  color: #161b33;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 4.15vw, 59px);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.tt-about-problems-intro span,
.tt-about-problems-opening {
  display: block;
  max-width: 640px;
  margin: 18px 0 0;
  color: #5c574f;
  font-size: 16px;
  line-height: 1.72;
}

.tt-about-problems-list {
  counter-reset: tt-about-problem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  border-top: 1px solid #d8cebd;
  list-style: none;
}

.tt-about-problems-list li {
  counter-increment: tt-about-problem;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  margin: 0;
  padding: 18px 0;
  border-bottom: 1px solid #d8cebd;
  color: #5c574f;
  font-size: 16px;
  line-height: 1.66;
}

.tt-about-problems-list li:nth-child(odd) {
  padding-right: 30px;
  border-right: 1px solid #d8cebd;
}

.tt-about-problems-list li:nth-child(even) {
  padding-left: 30px;
}

.tt-about-problems-list li::before {
  content: "0" counter(tt-about-problem);
  color: #a16111;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.8;
}

.tt-about-problems-resolution {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.65fr);
  align-items: start;
  gap: clamp(32px, 6vw, 72px);
  margin-top: 34px;
  padding-top: 34px;
  border-top: 1px solid #d8cebd;
}

.tt-about-problems-copy {
  display: grid;
  gap: 26px;
}

.tt-about-problems-copy p {
  margin: 0;
  color: #5c574f;
  font-size: 16px;
  line-height: 1.72;
}

.tt-about-problems-copy .tt-about-problems-solution {
  color: #161b33;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(20px, 1.75vw, 25px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.025em;
  text-wrap: pretty;
}

.tt-about-problems-copy .tt-about-problems-summary {
  color: #1f6f68;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.6;
}

.tt-about-problem-list {
  border-top: 1px solid #d8cebd;
}

.tt-about-problem-row {
  display: grid;
  grid-template-columns: 52px minmax(190px, 0.6fr) minmax(280px, 1fr);
  align-items: start;
  gap: 28px;
  padding: 26px 0;
  border-bottom: 1px solid #d8cebd;
}

.tt-about-problem-row > span,
.tt-about-steps > li > span {
  color: #a16111;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 700;
}

.tt-about-problem-row h3,
.tt-about-steps h3 {
  margin: 0;
  color: #161b33;
  font-size: 17px;
  line-height: 1.35;
}

.tt-about-problem-row p,
.tt-about-steps p {
  margin: 0;
  color: #5c574f;
  font-size: 14px;
  line-height: 1.65;
}

.tt-about-thesis {
  padding: 82px max(24px, calc((100% - 1180px) / 2));
  background: #161b33;
  color: #fffdf8;
}

.tt-about-thesis > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.65fr);
  align-items: end;
  gap: 72px;
}

.tt-about-thesis p,
.tt-about-thesis strong {
  margin: 0;
}

.tt-about-thesis p {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 42px;
  line-height: 1.15;
}

.tt-about-thesis strong {
  color: #f0d18a;
  font-size: 15px;
  line-height: 1.6;
}

.tt-about-loop-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.78fr);
  align-items: start;
  gap: 72px;
}

.tt-about-steps {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #d8cebd;
}

.tt-about-steps li {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 18px;
  padding: 22px 0;
  border-bottom: 1px solid #d8cebd;
}

.tt-about-steps li > div {
  display: grid;
  gap: 6px;
}

.tt-about-progress-demo {
  position: sticky;
  top: 24px;
  overflow: hidden;
  border: 1px solid rgba(22, 27, 51, 0.16);
  border-radius: 8px;
  background: #fffdf8;
  box-shadow: 0 28px 70px rgba(22, 27, 51, 0.12);
}

.tt-about-progress-head {
  display: grid;
  gap: 4px;
  padding: 24px 24px 18px;
  border-bottom: 1px solid #eee5d8;
}

.tt-about-progress-head span,
.tt-about-class-head span {
  color: #1f6f68;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.tt-about-progress-head strong,
.tt-about-class-head strong {
  color: #161b33;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
}

.tt-about-progress-head small {
  color: #767066;
  font-size: 11px;
}

.tt-about-progress-total {
  height: 4px;
  background: #eee5d8;
}

.tt-about-progress-total span,
.tt-about-class-row i b {
  display: block;
  width: var(--tt-about-progress);
  height: 100%;
  background: #1f6f68;
}

.tt-about-progress-rows {
  padding: 8px 24px;
}

.tt-about-progress-rows > div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  border-bottom: 1px solid #eee5d8;
}

.tt-about-progress-rows > div:last-child {
  border-bottom: 0;
}

.tt-about-progress-rows span {
  color: #9b9285;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 12px;
}

.tt-about-progress-rows strong {
  min-width: 0;
  color: #313131;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.tt-about-progress-rows em {
  color: #767066;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.tt-about-progress-rows .is-complete span,
.tt-about-progress-rows .is-complete em {
  color: #15803d;
}

.tt-about-progress-rows .is-current {
  box-shadow: inset 3px 0 #c9963a;
}

.tt-about-progress-rows .is-current em {
  color: #a16111;
}

.tt-about-progress-demo > p {
  margin: 0;
  padding: 18px 24px 22px;
  border-top: 1px solid #eee5d8;
  color: #5c574f;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  line-height: 1.55;
}

.tt-about-schools {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(380px, 0.72fr);
  align-items: center;
  gap: 88px;
  padding: 88px max(24px, calc((100% - 1180px) / 2));
  background: #e4efe9;
}

.tt-about-schools-copy {
  display: grid;
  justify-items: start;
  gap: 22px;
}

.tt-about-schools-copy h2 {
  margin-top: -6px;
}

.tt-about-schools-copy > a {
  color: #1f6f68;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}

.tt-about-schools-copy > a:hover,
.tt-about-schools-copy > a:focus-visible {
  color: #161b33;
}

.tt-about-class-progress {
  border-top: 2px solid #161b33;
  border-bottom: 1px solid rgba(22, 27, 51, 0.22);
}

.tt-about-class-head {
  display: grid;
  gap: 4px;
  padding: 18px 0 22px;
  border-bottom: 1px solid rgba(22, 27, 51, 0.16);
}

.tt-about-class-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px 20px;
  padding: 17px 0;
  border-bottom: 1px solid rgba(22, 27, 51, 0.13);
}

.tt-about-class-row:last-child {
  border-bottom: 0;
}

.tt-about-class-row > span {
  color: #313131;
  font-size: 12px;
  font-weight: 800;
}

.tt-about-class-row > strong {
  color: #161b33;
  font-size: 12px;
}

.tt-about-class-row i {
  grid-column: 1 / -1;
  height: 3px;
  overflow: hidden;
  background: rgba(22, 27, 51, 0.12);
}

.tt-about-closing {
  display: grid;
  justify-items: center;
  padding: 98px max(24px, calc((100% - 900px) / 2));
  background: #fffdf8;
  text-align: center;
}

.tt-about-closing h2 {
  max-width: 780px;
  margin-top: 12px;
  font-size: 52px;
}

.tt-about-closing > p {
  max-width: 650px;
  margin-top: 18px;
}

.tt-about-closing .tt-about-button-secondary {
  border-color: #c9bdac;
  background: transparent;
  color: #161b33;
  backdrop-filter: none;
}

.tt-about-closing .tt-about-button-secondary:hover,
.tt-about-closing .tt-about-button-secondary:focus-visible {
  border-color: #161b33;
  background: #f5f1e8;
  color: #161b33;
}

.tt-about-body .tt-site-rights {
  border-top: 1px solid rgba(22, 27, 51, 0.12);
  background: #fffdf8;
}

body.tt-reader-dark.tt-about-body,
body.tt-reader-dark .tt-about-page {
  background: #101524;
  color: #f3ecdf;
}

body.tt-reader-dark .tt-about-nav {
  border-color: rgba(240, 209, 138, 0.12);
  background: rgba(14, 19, 34, 0.96);
}

body.tt-reader-dark .tt-about-brand,
body.tt-reader-dark .tt-about-nav-links a {
  color: #f3ecdf;
}

body.tt-reader-dark .tt-about-brand-mark,
body.tt-reader-dark .tt-about-nav-cta {
  background: #f0d18a;
  color: #17130b;
}

body.tt-reader-dark .tt-about-brand small {
  color: #afa696;
}

body.tt-reader-dark .tt-about-section-intro h2,
body.tt-reader-dark .tt-about-problem-row h3,
body.tt-reader-dark .tt-about-steps h3,
body.tt-reader-dark .tt-about-schools h2,
body.tt-reader-dark .tt-about-closing h2 {
  color: #f7f0e4;
}

body.tt-reader-dark .tt-about-section-lead,
body.tt-reader-dark .tt-about-problem-row p,
body.tt-reader-dark .tt-about-steps p,
body.tt-reader-dark .tt-about-schools-copy > p,
body.tt-reader-dark .tt-about-closing > p {
  color: #c9c0b2;
}

body.tt-reader-dark .tt-about-problems-copy p {
  color: #c9c0b2;
}

body.tt-reader-dark .tt-about-problems-opening {
  color: #c9c0b2;
}

body.tt-reader-dark .tt-about-problems-title {
  color: #f0d18a;
}

body.tt-reader-dark .tt-about-problems-intro strong {
  color: #f7f0e4;
}

body.tt-reader-dark .tt-about-problems-intro span {
  color: #c9c0b2;
}

body.tt-reader-dark .tt-about-problems-list,
body.tt-reader-dark .tt-about-problems-list li,
body.tt-reader-dark .tt-about-problems-list li:nth-child(odd),
body.tt-reader-dark .tt-about-problems-resolution {
  border-color: rgba(240, 209, 138, 0.16);
}

body.tt-reader-dark .tt-about-problems-list li {
  color: #c9c0b2;
}

body.tt-reader-dark .tt-about-problems-list li::before {
  color: #f0d18a;
}

body.tt-reader-dark .tt-about-problems-copy .tt-about-problems-solution {
  color: #f7f0e4;
}

body.tt-reader-dark .tt-about-problems-copy .tt-about-problems-summary {
  color: #8dd7c5;
}

body.tt-reader-dark .tt-about-kicker,
body.tt-reader-dark .tt-about-problem-row > span,
body.tt-reader-dark .tt-about-steps > li > span {
  color: #f0d18a;
}

body.tt-reader-dark .tt-about-problem-list,
body.tt-reader-dark .tt-about-problem-row,
body.tt-reader-dark .tt-about-steps,
body.tt-reader-dark .tt-about-steps li {
  border-color: rgba(240, 209, 138, 0.16);
}

body.tt-reader-dark .tt-about-thesis {
  background: #080d1a;
}

body.tt-reader-dark .tt-about-progress-demo {
  border-color: rgba(240, 209, 138, 0.18);
  background: #171d2e;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.26);
}

body.tt-reader-dark .tt-about-progress-head,
body.tt-reader-dark .tt-about-progress-rows > div,
body.tt-reader-dark .tt-about-progress-demo > p {
  border-color: rgba(240, 209, 138, 0.12);
}

body.tt-reader-dark .tt-about-progress-head strong,
body.tt-reader-dark .tt-about-progress-rows strong,
body.tt-reader-dark .tt-about-class-head strong,
body.tt-reader-dark .tt-about-class-row > strong {
  color: #f7f0e4;
}

body.tt-reader-dark .tt-about-progress-head small,
body.tt-reader-dark .tt-about-progress-rows em,
body.tt-reader-dark .tt-about-progress-demo > p {
  color: #afa696;
}

body.tt-reader-dark .tt-about-progress-total {
  background: rgba(255, 255, 255, 0.08);
}

body.tt-reader-dark .tt-about-schools {
  background: #17252a;
}

body.tt-reader-dark .tt-about-schools-copy > a,
body.tt-reader-dark .tt-about-progress-head span,
body.tt-reader-dark .tt-about-class-head span {
  color: #8dd7c5;
}

body.tt-reader-dark .tt-about-class-progress,
body.tt-reader-dark .tt-about-class-head,
body.tt-reader-dark .tt-about-class-row {
  border-color: rgba(141, 215, 197, 0.20);
}

body.tt-reader-dark .tt-about-class-row > span {
  color: #d8d0c4;
}

body.tt-reader-dark .tt-about-class-row i {
  background: rgba(255, 255, 255, 0.10);
}

body.tt-reader-dark .tt-about-closing,
body.tt-reader-dark.tt-about-body .tt-site-rights {
  border-color: rgba(240, 209, 138, 0.12);
  background: #0c111f;
}

body.tt-reader-dark .tt-about-closing .tt-about-button-secondary {
  border-color: rgba(240, 209, 138, 0.34);
  color: #f7f0e4;
}

body.tt-reader-dark .tt-about-closing .tt-about-button-secondary:hover,
body.tt-reader-dark .tt-about-closing .tt-about-button-secondary:focus-visible {
  border-color: #f0d18a;
  background: rgba(240, 209, 138, 0.08);
  color: #f7f0e4;
}

@media (max-width: 900px) {
  .tt-about-nav {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .tt-about-nav-links {
    display: none;
  }

  .tt-about-section-intro,
  .tt-about-thesis > div,
  .tt-about-loop-layout,
  .tt-about-problems-list,
  .tt-about-problems-resolution,
  .tt-about-schools {
    grid-template-columns: minmax(0, 1fr);
  }

  .tt-about-section-intro,
  .tt-about-thesis > div,
  .tt-about-loop-layout,
  .tt-about-schools {
    gap: 38px;
  }

  .tt-about-problems-list li:nth-child(odd) {
    padding-right: 0;
    border-right: 0;
  }

  .tt-about-problems-list li:nth-child(even) {
    padding-left: 0;
  }

  .tt-about-problems-resolution {
    gap: 20px;
  }

  .tt-about-progress-demo {
    position: static;
    width: min(100%, 560px);
  }

  .tt-about-class-progress {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .tt-about-nav {
    min-height: 64px;
    gap: 10px;
    padding: 10px 14px;
  }

  .tt-about-brand small {
    display: none;
  }

  .tt-about-brand-mark {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }

  .tt-about-nav-cta {
    min-height: 34px;
    padding-inline: 11px;
    font-size: 11px;
  }

  .tt-about-theme-toggle {
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
  }

  .tt-about-hero {
    height: calc(100svh - 88px);
    min-height: 480px;
    max-height: 620px;
  }

  .tt-about-hero-image {
    object-position: 64% center;
  }

  .tt-about-hero-shade {
    background: rgba(7, 12, 28, 0.50);
  }

  .tt-about-hero-inner,
  .tt-about-problems,
  .tt-about-loop {
    width: calc(100% - 32px);
  }

  .tt-about-hero-inner {
    padding: 34px 0 58px;
  }

  .tt-about-hero h1 {
    margin: 9px 0 13px;
    font-size: clamp(48px, 13vw, 54px);
    line-height: 0.96;
  }

  .tt-about-hero-lead {
    max-width: 100%;
    font-size: 17px;
    line-height: 1.42;
    text-wrap: auto;
  }

  .tt-about-hero-actions {
    align-items: stretch;
    flex-direction: column;
    width: min(100%, 280px);
    margin-top: 22px;
  }

  .tt-about-scroll-cue {
    left: 16px;
    bottom: 13px;
  }

  .tt-about-problems,
  .tt-about-loop {
    padding: 68px 0;
  }

  .tt-about-section-intro {
    gap: 22px;
    padding-bottom: 30px;
  }

  .tt-about-section-intro h2,
  .tt-about-schools h2,
  .tt-about-closing h2 {
    font-size: 34px;
    line-height: 1.12;
  }

  .tt-about-problems-title {
    font-size: 12px;
    line-height: 1.35;
  }

  .tt-about-problems-intro strong {
    font-size: clamp(27.5px, 7.2vw, 36px);
    line-height: 1.1;
    text-wrap: auto;
  }

  .tt-about-section-lead,
  .tt-about-problems-intro span,
  .tt-about-problems-opening,
  .tt-about-problems-copy p,
  .tt-about-schools-copy > p,
  .tt-about-closing > p {
    font-size: 14px;
    line-height: 1.65;
  }

  .tt-about-problems-list li {
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 10px;
    padding: 15px 0;
    font-size: 14px;
    line-height: 1.58;
  }

  .tt-about-problem-row {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 8px 12px;
    padding: 21px 0;
  }

  .tt-about-problem-row p {
    grid-column: 2;
  }

  .tt-about-thesis {
    padding: 64px 16px;
  }

  .tt-about-thesis p {
    font-size: 30px;
  }

  .tt-about-loop-layout {
    gap: 42px;
  }

  .tt-about-progress-head,
  .tt-about-progress-rows,
  .tt-about-progress-demo > p {
    padding-left: 17px;
    padding-right: 17px;
  }

  .tt-about-progress-rows > div {
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 7px;
  }

  .tt-about-progress-head strong,
  .tt-about-class-head strong {
    font-size: 21px;
  }

  .tt-about-schools {
    padding: 68px 16px;
  }

  .tt-about-closing {
    padding: 76px 16px;
  }

  .tt-about-closing-actions {
    align-items: stretch;
    flex-direction: column;
    width: min(100%, 280px);
  }
}

@media print {
  body,
  body.tt-reader-dark {
    background: #fff !important;
    color: #1f1a14 !important;
  }

  .tt-print-hide,
  .project-sidebar,
  .mobile-theorytrace-bar,
  .reader-theme-toggle,
  .reader-preferences-menu,
  .reader-preferences-panel,
  .tt-profile-actions,
  .notification-stack {
    display: none !important;
  }

  .app-shell,
  .main-area,
  .reader-frame,
  .reader-paper,
  .tt-school-payment-report {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #1f1a14 !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .tt-profile-contributions,
  .tt-school-report-summary div,
  .tt-school-payment-table-head,
  .tt-school-payment-table-row,
  .tt-payment-calendar-month {
    background: #fff !important;
    color: #1f1a14 !important;
    border-color: #d8d0c5 !important;
    box-shadow: none !important;
  }

  .tt-school-payment-table-row {
    break-inside: avoid;
    text-decoration: none;
  }

  .tt-school-payment-table-row[href]::after {
    content: "";
  }
}
