/* [project]/src/app/(frontend)/globals.css [app-client] (css) */
:root {
  --bg-canvas: #f3f3f3;
  --bg-surface: #fff;
  --bg-subtle: #eaeaf0;
  --bg-charcoal: #1f1f1f;
  --bg-graphite: #2d2d32;
  --bg-slate-grey: #3a3a40;
  --text-primary: #1f1f1f;
  --text-secondary: #4a4a52;
  --text-muted: #71717a;
  --text-on-dark: #f8f8fa;
  --text-on-dark-muted: #c4c4cc;
  --purple-primary: #482c70;
  --purple-hover: #5b378d;
  --purple-bright: #834bd4;
  --purple-light: #e9dff8;
  --purple-tint: #f4f0fb;
  --purple-border: #d2bff0;
  --rubric-red: #c0402a;
  --rubric-red-bright: #ee2e24;
  --rubric-tint: #fdf2f0;
  --vol-1-plum: #6d5675;
  --vol-2-ochre: #9c7144;
  --vol-3-teal: #1d686e;
  --vol-4-steel: #5b7c99;
  --vol-5-pewter: #6e7065;
  --vol-6-violet: #482c70;
  --vol-7-burgundy: #8f5860;
  --border-subtle: #ddd;
  --border-strong: #c4c4c8;
  --green-bg: #f0fdf4;
  --green-text: #166534;
  --green-border: #bbf7d0;
  --amber-bg: var(--purple-tint);
  --amber-text: var(--purple-primary);
  --amber-border: var(--purple-border);
  --red-bg: #fef2f2;
  --red-text: #991b1b;
  --red-border: #fecaca;
  --bg-parchment: var(--bg-canvas);
  --bg-parchment-alt: var(--bg-subtle);
  --bg-card: var(--bg-surface);
  --bg-navy: var(--bg-charcoal);
  --bg-navy-elevated: var(--bg-graphite);
  --bg-navy-subtle: var(--bg-slate-grey);
  --gold-primary: var(--purple-primary);
  --gold-hover: var(--purple-hover);
  --gold-bright: var(--purple-bright);
  --gold-accent: var(--purple-bright);
  --gold-light: var(--purple-tint);
  --gold-border: var(--purple-border);
  --font-serif: Georgia, "Times New Roman", Times, serif;
  --font-sans: -apple-system, BlinkMacSystemFont, "Lucida Grande", "Lucida Sans Unicode",
    "Segoe UI", Roboto, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --shadow-sm: 0 1px 3px #0000000f;
  --shadow-md: 0 3px 10px #00000017;
  --shadow-lg: 0 8px 24px #00000024;
}

*, :before, :after {
  box-sizing: border-box;
}

html, body {
  background-color: var(--bg-canvas);
  color: var(--text-primary);
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

a {
  color: var(--purple-primary);
  text-decoration: none;
  transition: color .15s, background-color .15s, border-color .15s;
}

a:hover {
  color: var(--purple-bright);
}

h1, h2, h3, h4, .serif {
  font-family: var(--font-serif);
  color: var(--text-primary);
  margin-top: 0;
  line-height: 1.25;
}

.wl-container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.wl-container-narrow {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.wl-statusbar {
  color: var(--text-on-dark);
  background: #141416;
  border-bottom: 1px solid #2d2d32;
  font-size: .78rem;
}

.wl-statusbar-inner {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  max-width: 1240px;
  margin: 0 auto;
  padding: .45rem 1.5rem;
  display: flex;
}

.wl-statusbar-left, .wl-statusbar-right {
  flex-wrap: wrap;
  align-items: center;
  gap: .65rem;
  display: flex;
}

.wl-sites-nav {
  align-items: center;
  gap: .25rem;
  display: inline-flex;
}

.wl-sites-nav-item {
  color: #b4b4be;
  border: 1px solid #0000;
  border-radius: 3px;
  align-items: center;
  gap: .28rem;
  padding: .16rem .55rem;
  font-size: .74rem;
  font-weight: 600;
  text-decoration: none;
  transition: color .15s, background .15s, border-color .15s;
  display: inline-flex;
}

.wl-sites-nav-item:hover {
  color: #fff;
  background: #222228;
}

.wl-sites-nav-item.current {
  color: #f4f0fb;
  background: #834bd438;
  border-color: #834bd473;
}

.wl-statusbar-tagline {
  color: #a8a8b3;
  align-items: center;
  gap: .45rem;
  font-size: .75rem;
  display: inline-flex;
}

.wl-pill {
  letter-spacing: .01em;
  border-radius: 3px;
  align-items: center;
  gap: .35rem;
  padding: .18rem .55rem;
  font-size: .73rem;
  font-weight: 600;
  display: inline-flex;
}

.wl-pill-host {
  color: #f4f4f5;
  background: #27272a;
  border: 1px solid #3f3f46;
}

.wl-pill-portal {
  color: #e9dff8;
  background: #834bd440;
  border: 1px solid #834bd480;
}

.wl-pill-green {
  color: #bbf7d0;
  background: #16a34a33;
  border: 1px solid #bbf7d04d;
}

.wl-pill-yellow {
  color: #fecaca;
  background: #c0402a3d;
  border: 1px solid #ee2e2473;
}

.wl-pill-neutral {
  color: #c4c4cc;
  background: #222226;
  border: 1px solid #333338;
}

.wl-status-link {
  color: #d8b4fe;
  text-underline-offset: 2px;
  font-size: .76rem;
  font-weight: 500;
  text-decoration: underline;
}

.wl-status-link:hover {
  color: #fff;
}

.wl-header {
  border-top: 3px solid var(--purple-primary);
  border-bottom: 1px solid var(--border-subtle);
  z-index: 50;
  background: #fff;
  position: sticky;
  top: 0;
  box-shadow: 0 1px 3px #0000000a;
}

.wl-header-inner {
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  max-width: 1240px;
  margin: 0 auto;
  padding: .8rem 1.5rem;
  display: flex;
}

.wl-brand {
  color: var(--text-primary);
  flex-shrink: 0;
  align-items: center;
  gap: .75rem;
  text-decoration: none;
  display: flex;
}

.wl-brand-mark {
  color: #fff;
  width: 38px;
  height: 38px;
  font-family: var(--font-serif);
  background: linear-gradient(#482c70 0%, #2b1944 100%);
  border: 1px solid #834bd4;
  border-radius: 4px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 1.15rem;
  font-weight: 700;
  display: flex;
  box-shadow: inset 0 1px #fff3;
}

.wl-brand-text {
  flex-direction: column;
  display: flex;
}

.wl-brand-title {
  font-family: var(--font-serif);
  color: #1f1f1f;
  letter-spacing: -.02em;
  white-space: nowrap;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.15;
}

.wl-brand-subtitle {
  color: var(--text-muted);
  letter-spacing: .01em;
  white-space: nowrap;
  font-size: .7rem;
}

.wl-header-search {
  border-radius: var(--radius-sm);
  background: #f4f4f7;
  border: 1px solid #d4d4dc;
  flex: 220px;
  align-items: center;
  gap: .45rem;
  max-width: 310px;
  padding: .35rem .7rem;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
  display: flex;
}

.wl-header-search:focus-within {
  border-color: var(--purple-bright);
  background: #fff;
  box-shadow: 0 0 0 3px #834bd424;
}

.wl-header-search-icon {
  color: var(--text-muted);
  flex-shrink: 0;
}

.wl-header-search-input {
  width: 100%;
  color: var(--text-primary);
  font-size: .85rem;
  font-family: var(--font-sans);
  background: none;
  border: none;
  outline: none;
}

.wl-nav-desktop {
  flex-wrap: nowrap;
  align-items: center;
  gap: .15rem;
  display: flex;
}

.wl-nav-link {
  border-radius: var(--radius-sm);
  color: #323236;
  white-space: nowrap;
  align-items: center;
  gap: .35rem;
  padding: .42rem .68rem;
  font-size: .86rem;
  font-weight: 600;
  display: inline-flex;
}

.wl-nav-link:hover, .wl-nav-link.active {
  background: var(--purple-tint);
  color: var(--purple-primary);
}

.wl-header-actions {
  flex-wrap: nowrap;
  flex-shrink: 0;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.wl-mobile-checkbox {
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
  margin: 0;
  position: absolute;
}

.wl-mobile-toggle {
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-sm);
  color: #1f1f1f;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  background: #fff;
  flex-shrink: 0;
  min-width: 42px;
  min-height: 42px;
  padding: .45rem .6rem;
  display: none;
}

.wl-mobile-toggle:hover, .wl-mobile-toggle:active {
  background: var(--purple-tint);
  border-color: var(--purple-bright);
  color: var(--purple-primary);
}

.wl-mobile-toggle .wl-icon-menu {
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.wl-mobile-toggle .wl-icon-close {
  justify-content: center;
  align-items: center;
  display: none;
}

.wl-mobile-checkbox:checked ~ .wl-header-inner .wl-mobile-toggle .wl-icon-menu {
  display: none;
}

.wl-mobile-checkbox:checked ~ .wl-header-inner .wl-mobile-toggle .wl-icon-close {
  display: inline-flex;
}

.wl-mobile-drawer {
  border-top: 1px solid var(--border-subtle);
  background: #fff;
  padding: 1rem 1.25rem 1.25rem;
  display: none;
  box-shadow: 0 8px 20px #00000014;
}

.wl-mobile-checkbox:checked ~ .wl-mobile-drawer, .wl-mobile-drawer.open {
  display: block;
}

.wl-mobile-search {
  gap: .5rem;
  margin-bottom: .85rem;
  display: flex;
}

.wl-mobile-nav-list {
  flex-direction: column;
  gap: .3rem;
  display: flex;
}

.wl-mobile-auth-badge {
  background: var(--green-bg);
  color: var(--green-text);
  border: 1px solid var(--green-border);
  border-radius: var(--radius-sm);
  align-items: center;
  gap: .45rem;
  margin-bottom: .5rem;
  padding: .55rem .75rem;
  font-size: .82rem;
  font-weight: 600;
  display: flex;
}

.wl-btn {
  border-radius: var(--radius-sm);
  cursor: pointer;
  white-space: nowrap;
  border: 1px solid #0000;
  justify-content: center;
  align-items: center;
  gap: .42rem;
  padding: .52rem 1rem;
  font-size: .86rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  transition: all .15s;
  display: inline-flex;
}

.wl-btn-primary {
  color: #fff;
  background-color: #482c70;
  background-image: linear-gradient(#7442be 0%, #482c70 100%);
  border-color: #3b235c;
  box-shadow: inset 0 1px #ffffff2e;
}

.wl-btn-primary:hover {
  color: #fff;
  background-color: #5c3790;
  background-image: linear-gradient(#834bd4 0%, #563487 100%);
}

.wl-btn-navy {
  color: #fff;
  background: #232326;
  border-color: #141416;
}

.wl-btn-navy:hover {
  color: #fff;
  background: #323236;
}

.wl-btn-outline {
  color: #232326;
  background: #fff linear-gradient(#fff 0%, #f4f4f6 100%);
  border-color: #bcbcc2;
}

.wl-btn-outline:hover {
  color: var(--purple-primary);
  background: #ededf2;
  border-color: #834bd4;
}

.wl-btn-ghost-light {
  color: #fff;
  background: #ffffff1a;
  border-color: #ffffff47;
}

.wl-btn-ghost-light:hover {
  color: #fff;
  background: #ffffff2e;
}

.wl-btn-sm {
  padding: .35rem .75rem;
  font-size: .8rem;
}

.wl-btn-lg {
  padding: .75rem 1.35rem;
  font-size: .95rem;
}

.wl-hero {
  color: var(--text-on-dark);
  border-bottom: 4px solid var(--purple-bright);
  background: #1b1b1e;
  position: relative;
  overflow: hidden;
}

.wl-hero-bg {
  opacity: .16;
  filter: grayscale(40%) contrast(1.1);
  background-position: center;
  background-size: cover;
  position: absolute;
  inset: 0;
}

.wl-hero-overlay {
  background: linear-gradient(120deg, #18181cf7 0%, #231834ed 60%, #301d4ce0 100%);
  position: absolute;
  inset: 0;
}

.wl-hero-content {
  z-index: 2;
  grid-template-columns: 1.2fr .8fr;
  align-items: center;
  gap: 2.5rem;
  max-width: 1240px;
  margin: 0 auto;
  padding: 3.75rem 1.5rem;
  display: grid;
  position: relative;
}

.wl-eyebrow {
  text-transform: uppercase;
  letter-spacing: .09em;
  color: var(--rubric-red);
  align-items: center;
  gap: .4rem;
  margin-bottom: .6rem;
  font-size: .74rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-hero .wl-eyebrow {
  color: #d8b4fe;
}

.wl-hero-title {
  color: #fff;
  letter-spacing: -.02em;
  margin-bottom: 1rem;
  font-size: clamp(2rem, 3.6vw, 3.1rem);
  font-weight: 700;
}

.wl-hero-subtitle {
  color: #d4d4dc;
  max-width: 650px;
  margin-bottom: 1.6rem;
  font-size: 1.06rem;
  line-height: 1.65;
}

.wl-search-bar {
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  background: #fff;
  border: 1px solid #d4d4d8;
  gap: .45rem;
  max-width: 640px;
  margin-bottom: 1.4rem;
  padding: .35rem;
  display: flex;
}

.wl-search-input {
  color: var(--text-primary);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: .6rem .85rem;
  font-size: .95rem;
}

.wl-hero-showcase {
  color: #1f1f1f;
  border: 1px solid #d4d4d8;
  border-top: 4px solid var(--purple-bright);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  background: #fff;
  padding: 1.25rem;
}

.wl-hero-books-frame {
  text-align: center;
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: .9rem;
  padding: .5rem .5rem .85rem;
}

.wl-hero-books-frame img {
  object-fit: contain;
  max-width: 100%;
  height: 210px;
  margin: 0 auto;
  display: block;
}

.wl-hero-stats {
  text-align: center;
  grid-template-columns: repeat(4, 1fr);
  gap: .5rem;
  display: grid;
}

.wl-stat-card {
  border-radius: var(--radius-sm);
  background: #f7f7f9;
  border: 1px solid #e4e4e7;
  padding: .45rem .25rem;
}

.wl-stat-num {
  font-family: var(--font-serif);
  color: var(--purple-primary);
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.15;
}

.wl-stat-label {
  color: var(--text-secondary);
  margin-top: .15rem;
  font-size: .7rem;
}

.wl-section {
  padding: 3.5rem 0;
}

.wl-section-alt {
  border-top: 1px solid var(--border-subtle);
  border-bottom: 1px solid var(--border-subtle);
  background: #e8e8ee;
  padding: 3.5rem 0;
}

.wl-section-header {
  border-bottom: 2px solid #dcdce2;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 2rem;
  padding-bottom: .85rem;
  display: flex;
}

.wl-section-title {
  letter-spacing: -.02em;
  margin-bottom: .3rem;
  font-size: clamp(1.6rem, 2.5vw, 2.15rem);
}

.wl-section-desc {
  color: var(--text-secondary);
  max-width: 700px;
  margin: 0;
  font-size: .98rem;
}

.wl-volumes-grid {
  grid-template-columns: repeat(auto-fill, minmax(335px, 1fr));
  gap: 1.5rem;
  display: grid;
}

.wl-volume-card {
  border: 1px solid var(--border-subtle);
  border-top: 5px solid var(--purple-primary);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #fff;
  flex-direction: column;
  transition: transform .18s, box-shadow .18s, border-color .18s;
  display: flex;
  overflow: hidden;
}

.wl-volume-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

.wl-volume-cover {
  border-bottom: 1px solid var(--border-subtle);
  background: #1f1f1f;
  height: 195px;
  position: relative;
  overflow: hidden;
}

.wl-volume-cover img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .35s;
}

.wl-volume-card:hover .wl-volume-cover img {
  transform: scale(1.03);
}

.wl-volume-badge {
  color: #e6d3a3;
  font-family: var(--font-serif);
  letter-spacing: .08em;
  text-transform: uppercase;
  background: #141416;
  border: 1px solid #8a7346;
  border-radius: 2px;
  padding: .22rem .65rem;
  font-size: .76rem;
  font-weight: 700;
  position: absolute;
  top: .75rem;
  left: .75rem;
  box-shadow: 0 2px 6px #00000073;
}

.wl-volume-body {
  flex-direction: column;
  flex: 1;
  padding: 1.35rem;
  display: flex;
}

.wl-volume-title {
  font-family: var(--font-serif);
  color: #1f1f1f;
  margin-bottom: .55rem;
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.3;
}

.wl-volume-excerpt {
  color: var(--text-secondary);
  flex: 1;
  margin-bottom: 1.15rem;
  font-size: .9rem;
  line-height: 1.55;
}

.wl-volume-footer {
  color: var(--purple-primary);
  border-top: 1px dotted #ccc;
  justify-content: space-between;
  align-items: center;
  padding-top: .85rem;
  font-size: .84rem;
  font-weight: 600;
  display: flex;
}

.wl-card {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #fff;
  padding: 1.5rem;
}

.wl-grid-2 {
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  display: grid;
}

.wl-grid-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  display: grid;
}

.wl-grid-4 {
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  display: grid;
}

.wl-reader-shell {
  --wl-reader-font-size: 1.1rem;
}

.wl-reader-layout {
  grid-template-columns: 315px 1fr;
  align-items: start;
  gap: 2rem;
  padding: 2rem 0 4rem;
  display: grid;
}

.wl-reader-layout.focus-mode {
  grid-template-columns: 1fr;
  max-width: 920px;
  margin: 0 auto;
}

.wl-reader-sidebar {
  border: 1px solid var(--border-subtle);
  border-top: 3px solid var(--purple-primary);
  border-radius: var(--radius-md);
  max-height: calc(100vh - 5.75rem);
  box-shadow: var(--shadow-sm);
  background: #fff;
  padding: .95rem;
  position: sticky;
  top: 4.75rem;
  overflow-y: auto;
}

.wl-reader-main {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #fff;
  min-width: 0;
  padding: 2.35rem 2.65rem;
}

.wl-reader-prose {
  font-size: var(--wl-reader-font-size, 1.1rem) !important;
}

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

.wl-toc-panel {
  flex-direction: column;
  gap: .65rem;
  display: flex;
}

.wl-toc-header {
  border-bottom: 1px solid var(--border-subtle);
  flex-direction: column;
  gap: .45rem;
  padding-bottom: .6rem;
  display: flex;
}

.wl-toc-all-volumes {
  color: var(--purple-primary);
  text-transform: uppercase;
  letter-spacing: .04em;
  align-items: center;
  gap: .35rem;
  font-size: .78rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-toc-volume-select {
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-sm);
  color: #1f1f1f;
  width: 100%;
  font-family: var(--font-serif);
  cursor: pointer;
  background: #f8f7fb;
  padding: .45rem .6rem;
  font-size: .85rem;
  font-weight: 700;
}

.wl-toc-search {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  background: #f4f4f7;
  align-items: center;
  gap: .35rem;
  padding: .32rem .55rem;
  display: flex;
  position: relative;
}

.wl-toc-search:focus-within {
  border-color: var(--purple-bright);
  background: #fff;
}

.wl-toc-search-icon {
  color: var(--text-muted);
  flex-shrink: 0;
}

.wl-toc-search-input {
  width: 100%;
  color: var(--text-primary);
  background: none;
  border: none;
  outline: none;
  font-size: .8rem;
}

.wl-toc-search-clear {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  padding: 2px;
  display: inline-flex;
}

.wl-toc-tree-controls {
  color: var(--text-muted);
  justify-content: space-between;
  align-items: center;
  padding: 0 .2rem;
  font-size: .73rem;
  display: flex;
}

.wl-toc-tiny-btn {
  color: var(--purple-primary);
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  font-size: .73rem;
  font-weight: 600;
}

.wl-toc-tiny-btn:hover {
  text-decoration: underline;
}

.wl-toc-root-list, .wl-toc-children {
  flex-direction: column;
  gap: 1px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.wl-toc-row {
  border-radius: var(--radius-sm);
  border-left: 3px solid #0000;
  align-items: flex-start;
  gap: .25rem;
  padding: .32rem .45rem;
  transition: background .12s;
  display: flex;
}

.wl-toc-row:hover {
  background: #f4f4f8;
}

.wl-toc-row.in-lineage {
  background: #f9f7fd;
}

.wl-toc-row.active {
  background: var(--purple-tint);
  border-left-color: var(--purple-primary);
}

.wl-toc-expand-btn {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 3px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-top: 1px;
  padding: 2px;
  display: inline-flex;
}

.wl-toc-expand-btn:hover {
  color: #1f1f1f;
  background: #e4e4ec;
}

.wl-toc-bullet {
  background: #c4c4cc;
  border-radius: 50%;
  flex-shrink: 0;
  width: 5px;
  height: 5px;
  margin: 7px 6px 0;
}

.wl-toc-row.active .wl-toc-bullet {
  background: var(--purple-primary);
}

.wl-toc-link {
  color: var(--text-secondary);
  flex: 1;
  justify-content: space-between;
  align-items: baseline;
  gap: .35rem;
  font-size: .82rem;
  line-height: 1.35;
  text-decoration: none;
  display: flex;
}

.wl-toc-link.is-section {
  color: #27272a;
  font-weight: 600;
}

.wl-toc-row.active .wl-toc-link {
  color: var(--purple-primary);
  font-weight: 700;
}

.wl-toc-count {
  color: var(--text-muted);
  background: #ececf2;
  border-radius: 10px;
  flex-shrink: 0;
  padding: .05rem .38rem;
  font-size: .68rem;
  font-weight: 600;
}

.wl-mobile-reader-bar {
  display: none;
}

.wl-mobile-toc-backdrop {
  z-index: 90;
  background: #14141694;
  justify-content: flex-start;
  animation: .15s ease-out wlFadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.wl-mobile-toc-sheet {
  border-right: 1px solid var(--border-strong);
  background: #fff;
  flex-direction: column;
  gap: .75rem;
  width: min(360px, 90vw);
  height: 100%;
  padding: 1rem;
  display: flex;
  overflow-y: auto;
  box-shadow: 0 12px 32px #00000047;
}

.wl-mobile-toc-sheet-top {
  border-bottom: 2px solid var(--purple-primary);
  justify-content: space-between;
  align-items: center;
  padding-bottom: .65rem;
  display: flex;
}

.wl-mobile-toc-close {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  cursor: pointer;
  color: #1f1f1f;
  background: #f4f4f7;
  padding: .3rem;
  display: inline-flex;
}

.wl-scholar-toolbar {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  background: #f7f7fa;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .6rem;
  margin-bottom: 1.25rem;
  padding: .55rem .85rem;
  display: flex;
}

.wl-scholar-toolbar-left, .wl-scholar-toolbar-right {
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  display: flex;
}

.wl-font-controls {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  background: #fff;
  align-items: center;
  gap: .15rem;
  padding: .15rem .35rem;
  display: inline-flex;
}

.wl-font-btn {
  color: var(--text-secondary);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 3px;
  padding: .2rem .42rem;
  font-size: .75rem;
  font-weight: 700;
}

.wl-font-btn:hover {
  background: #f0f0f5;
}

.wl-font-btn.active {
  background: var(--purple-primary);
  color: #fff;
}

.wl-toolbar-btn {
  border-radius: var(--radius-sm);
  border: 1px solid var(--border-subtle);
  color: #27272a;
  cursor: pointer;
  background: #fff;
  align-items: center;
  gap: .32rem;
  padding: .3rem .65rem;
  font-size: .78rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
}

.wl-toolbar-btn:hover, .wl-toolbar-btn.active {
  background: var(--purple-tint);
  border-color: var(--purple-border);
  color: var(--purple-primary);
}

.wl-citation-box {
  border: 1px solid var(--purple-border);
  border-left: 4px solid var(--purple-primary);
  border-radius: var(--radius-sm);
  background: #f8f7fb;
  margin-bottom: 1.35rem;
  padding: 1rem 1.15rem;
}

.wl-citation-header {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  margin-bottom: .65rem;
  font-size: .85rem;
  display: flex;
}

.wl-citation-tabs {
  gap: .3rem;
  display: inline-flex;
}

.wl-citation-tab {
  border: 1px solid var(--border-subtle);
  color: var(--text-secondary);
  cursor: pointer;
  background: #fff;
  border-radius: 3px;
  padding: .2rem .55rem;
  font-size: .74rem;
  font-weight: 600;
}

.wl-citation-tab.active {
  background: var(--purple-primary);
  border-color: var(--purple-primary);
  color: #fff;
}

.wl-citation-body {
  font-family: var(--font-serif);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  color: #1f1f1f;
  word-break: break-word;
  background: #fff;
  margin-bottom: .65rem;
  padding: .75rem .9rem;
  font-size: .9rem;
  line-height: 1.55;
}

.wl-citation-footer {
  justify-content: flex-end;
  display: flex;
}

.wl-seq-nav {
  border-top: 2px solid var(--border-subtle);
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 2.5rem;
  padding-top: 1.75rem;
  display: grid;
}

.wl-seq-card {
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-md);
  background: #f8f7fb;
  flex-direction: column;
  justify-content: center;
  padding: 1rem 1.2rem;
  text-decoration: none;
  transition: border-color .15s, background .15s, transform .15s;
  display: flex;
}

.wl-seq-card:hover {
  background: var(--purple-tint);
  border-color: var(--purple-bright);
  transform: translateY(-1px);
}

.wl-seq-card.next {
  text-align: right;
  align-items: flex-end;
}

.wl-seq-direction {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--purple-primary);
  align-items: center;
  gap: .35rem;
  margin-bottom: .3rem;
  font-size: .74rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-seq-title {
  font-family: var(--font-serif);
  color: #1f1f1f;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}

.wl-recent-bar {
  border: 1px solid var(--border-strong);
  border-top: 3px solid var(--purple-primary);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #fff;
  margin-bottom: 2rem;
  padding: 1.15rem 1.35rem;
}

.wl-recent-bar-header {
  border-bottom: 1px solid var(--border-subtle);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  margin-bottom: .85rem;
  padding-bottom: .55rem;
  display: flex;
}

.wl-recent-tabs {
  align-items: center;
  gap: .45rem;
  display: flex;
}

.wl-recent-tab {
  border-radius: var(--radius-sm);
  color: var(--text-secondary);
  cursor: pointer;
  background: #f4f4f7;
  border: 1px solid #0000;
  align-items: center;
  gap: .38rem;
  padding: .32rem .7rem;
  font-size: .8rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-recent-tab.active {
  background: var(--purple-tint);
  border-color: var(--purple-border);
  color: var(--purple-primary);
}

.wl-recent-clear {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  gap: .3rem;
  font-size: .76rem;
  display: inline-flex;
}

.wl-recent-clear:hover {
  color: var(--rubric-red);
}

.wl-recent-grid {
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: .65rem;
  display: grid;
}

.wl-recent-item {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm);
  background: #f8f7fb;
  justify-content: space-between;
  align-items: center;
  gap: .6rem;
  padding: .65rem .85rem;
  text-decoration: none;
  display: flex;
}

.wl-recent-item:hover {
  background: var(--purple-tint);
  border-color: var(--purple-border);
}

.wl-recent-item-book {
  color: var(--purple-primary);
  align-items: center;
  gap: .3rem;
  margin-bottom: .15rem;
  font-size: .7rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-recent-item-title {
  font-family: var(--font-serif);
  color: #1f1f1f;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .9rem;
  font-weight: 700;
  overflow: hidden;
}

.wl-recent-remove-btn {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  padding: 3px;
  display: inline-flex;
}

.wl-recent-remove-btn:hover {
  color: var(--rubric-red);
}

.wl-breadcrumbs {
  color: var(--text-muted);
  border-bottom: 1px dotted #ccc;
  flex-wrap: wrap;
  align-items: center;
  gap: .35rem;
  margin-bottom: 1.15rem;
  padding-bottom: .75rem;
  font-size: .82rem;
  display: flex;
}

.wl-breadcrumbs a {
  color: var(--purple-primary);
}

.wl-breadcrumbs a:hover {
  color: var(--purple-bright);
  text-decoration: underline;
}

.wl-prose {
  font-family: var(--font-serif);
  color: #1f1f1f;
  max-width: 74ch;
  font-size: 1.1rem;
  line-height: 1.78;
}

.wl-prose p {
  margin: 0 0 1.3rem;
}

.wl-prose h2, .wl-prose h3, .wl-prose h4 {
  font-family: var(--font-sans);
  color: #1f1f1f;
  letter-spacing: -.01em;
  margin-top: 1.85rem;
  margin-bottom: .65rem;
}

.wl-prose blockquote {
  border-left: 3px solid var(--purple-primary);
  color: #333338;
  background: #f8f7fb;
  margin: 1.4rem 0;
  padding: .95rem 1.35rem;
  font-style: italic;
}

.wl-prose ul, .wl-prose ol {
  margin: 0 0 1.3rem;
  padding-left: 1.5rem;
}

.wl-prose li {
  margin-bottom: .38rem;
}

.wl-prose table {
  border-collapse: collapse;
  width: 100%;
  font-family: var(--font-sans);
  margin: 1.5rem 0;
  font-size: .9rem;
}

.wl-prose th, .wl-prose td {
  border: 1px solid var(--border-strong);
  text-align: left;
  padding: .55rem .8rem;
}

.wl-prose th {
  background: #f3f3f6;
  font-weight: 600;
}

.wl-preview-container {
  padding-bottom: 2rem;
  position: relative;
  overflow: hidden;
}

.wl-preview-fade {
  pointer-events: none;
  background: linear-gradient(#fff0, #fffffffa 85%);
  height: 120px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.wl-gate-card {
  color: #1f1f1f;
  border: 1px solid #d2bff0;
  border-top: 4px solid var(--purple-primary);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #f8f7fb;
  margin-top: 1rem;
  padding: 1.5rem;
}

.wl-field {
  margin-bottom: 1.1rem;
}

.wl-label {
  color: #333338;
  margin-bottom: .35rem;
  font-size: .84rem;
  font-weight: 600;
  display: block;
}

.wl-input, .wl-select, .wl-textarea {
  border-radius: var(--radius-sm);
  color: #1f1f1f;
  width: 100%;
  font-size: .94rem;
  font-family: var(--font-sans);
  background: #fff;
  border: 1px solid #aaa;
  padding: .6rem .85rem;
  transition: border-color .15s, box-shadow .15s;
}

.wl-input:focus, .wl-select:focus, .wl-textarea:focus {
  border-color: var(--purple-bright);
  outline: none;
  box-shadow: 0 0 0 3px #834bd426;
}

.wl-login-box {
  color: var(--text-primary);
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  background: #fff;
  padding: 1.75rem;
}

.wl-login-box.compact {
  padding: 1.25rem;
}

.wl-login-segmented {
  border-radius: var(--radius-sm);
  background: #f1f1f5;
  grid-template-columns: 1fr 1fr;
  gap: .35rem;
  margin-bottom: 1.25rem;
  padding: .28rem;
  display: grid;
}

.wl-login-seg-btn {
  color: var(--text-secondary);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-radius: 3px;
  justify-content: center;
  align-items: center;
  gap: .4rem;
  padding: .5rem .65rem;
  font-size: .85rem;
  font-weight: 600;
  transition: background .15s, color .15s, box-shadow .15s;
  display: inline-flex;
}

.wl-login-seg-btn.active {
  color: var(--purple-primary);
  background: #fff;
  box-shadow: 0 1px 3px #0000001a;
}

.wl-login-footer-row {
  border-top: 1px solid var(--border-subtle);
  color: var(--text-secondary);
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  margin-top: 1.1rem;
  padding-top: .9rem;
  font-size: .85rem;
  display: flex;
}

.wl-login-switch-btn {
  color: var(--purple-primary);
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  gap: .35rem;
  padding: 0;
  font-size: .85rem;
  font-weight: 600;
  display: inline-flex;
}

.wl-login-switch-btn:hover {
  text-decoration: underline;
}

.wl-login-signup-link {
  color: var(--purple-primary);
  text-underline-offset: 2px;
  font-weight: 700;
  text-decoration: underline;
}

.wl-tabs {
  border-bottom: 1px solid var(--border-subtle);
  gap: .4rem;
  margin-bottom: 1.4rem;
  display: flex;
}

.wl-tab {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  align-items: center;
  gap: .45rem;
  padding: .65rem 1rem;
  font-size: .9rem;
  font-weight: 600;
  display: inline-flex;
}

.wl-tab:hover {
  color: #1f1f1f;
}

.wl-tab.active {
  color: var(--purple-primary);
  border-bottom-color: var(--purple-bright);
}

.wl-alert {
  border-radius: var(--radius-sm);
  align-items: flex-start;
  gap: .65rem;
  margin-bottom: 1.1rem;
  padding: .85rem 1.1rem;
  font-size: .88rem;
  display: flex;
}

.wl-alert-success {
  background: var(--green-bg);
  color: var(--green-text);
  border: 1px solid var(--green-border);
}

.wl-alert-warning {
  background: var(--purple-tint);
  color: var(--purple-primary);
  border: 1px solid var(--purple-border);
}

.wl-alert-error {
  background: var(--red-bg);
  color: var(--red-text);
  border: 1px solid var(--red-border);
}

.wl-date-badge {
  text-align: center;
  border-radius: 3px;
  flex-direction: column;
  flex-shrink: 0;
  width: 44px;
  display: inline-flex;
  overflow: hidden;
  box-shadow: 0 1px 2px #0000001f;
}

.wl-date-badge-day {
  background: var(--purple-bright);
  color: #fff;
  padding: 2px 0;
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.35;
}

.wl-date-badge-month {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06em;
  background: #323232;
  padding: 2px 0;
  font-size: .65rem;
}

.wl-footer {
  color: #a6a6b0;
  border-top: 3px solid var(--purple-primary);
  background: #1b1b1e;
  padding: 3.5rem 0 2.25rem;
  font-size: .88rem;
}

.wl-footer-grid {
  grid-template-columns: 1.4fr 1.2fr 1fr 1fr;
  gap: 2.25rem;
  margin-bottom: 2.75rem;
  display: grid;
}

.wl-footer-heading {
  font-family: var(--font-sans);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: .9rem;
  font-size: .95rem;
  font-weight: 700;
}

.wl-footer-links {
  flex-direction: column;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.wl-footer-links a {
  color: #c4c4cc;
  font-size: .85rem;
}

.wl-footer-links a:hover {
  color: #d8b4fe;
  text-decoration: underline;
}

.wl-footer-bottom {
  border-top: 1px solid #2d2d32;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding-top: 1.5rem;
  font-size: .8rem;
  display: flex;
}

.wl-library-book-row {
  border-bottom: 1px solid var(--border-subtle);
  grid-template-columns: 280px 1fr;
  display: grid;
}

.wl-search-filters-grid {
  border-radius: var(--radius-md);
  background: #fff;
  grid-template-columns: 1fr 210px 170px auto;
  align-items: center;
  gap: .6rem;
  max-width: 980px;
  margin-top: 1.25rem;
  padding: .75rem;
  display: grid;
}

.wl-article-sheet {
  padding: 2.5rem;
}

@media (max-width: 1120px) {
  .wl-brand-subtitle {
    display: none;
  }

  .wl-header-search {
    max-width: 220px;
  }
}

@media (max-width: 1024px) {
  .wl-hero-content {
    grid-template-columns: 1fr;
    padding: 2.75rem 1.5rem;
  }

  .wl-reader-layout {
    grid-template-columns: 1fr;
    padding-top: 1rem;
  }

  .wl-reader-sidebar, .wl-desktop-only {
    display: none !important;
  }

  .wl-mobile-reader-bar {
    border: 1px solid var(--border-strong);
    border-left: 4px solid var(--purple-primary);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-sm);
    background: #fff;
    justify-content: space-between;
    align-items: center;
    gap: .5rem;
    margin-top: .85rem;
    padding: .5rem .65rem;
    display: flex;
  }

  .wl-mobile-toc-trigger {
    border: 1px solid var(--purple-border);
    background: var(--purple-tint);
    color: var(--purple-primary);
    border-radius: var(--radius-sm);
    cursor: pointer;
    white-space: nowrap;
    align-items: center;
    gap: .45rem;
    padding: .42rem .75rem;
    font-size: .84rem;
    font-weight: 700;
    display: inline-flex;
  }

  .wl-mobile-toc-trigger-text {
    white-space: nowrap;
    align-items: center;
    gap: .4rem;
    display: inline-flex;
  }

  .wl-mobile-toc-position {
    background: var(--purple-primary);
    color: #fff;
    border-radius: 10px;
    padding: .08rem .38rem;
    font-size: .68rem;
    font-weight: 700;
  }

  .wl-mobile-reader-quick-nav {
    flex-shrink: 0;
    align-items: center;
    gap: .35rem;
    display: inline-flex;
  }

  .wl-mobile-icon-btn {
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-subtle);
    width: 34px;
    height: 34px;
    color: var(--text-secondary);
    cursor: pointer;
    background: #f7f7fa;
    justify-content: center;
    align-items: center;
    display: inline-flex;
  }

  .wl-mobile-icon-btn.active {
    background: var(--purple-tint);
    border-color: var(--purple-border);
    color: var(--purple-primary);
  }

  .wl-mobile-step-btn {
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-strong);
    color: #1f1f1f;
    background: #fff;
    align-items: center;
    gap: .2rem;
    padding: .35rem .55rem;
    font-size: .76rem;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
  }

  .wl-mobile-step-btn:hover {
    background: var(--purple-tint);
    border-color: var(--purple-bright);
    color: var(--purple-primary);
  }

  .wl-mobile-step-btn.disabled {
    opacity: .38;
    pointer-events: none;
  }

  .wl-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 960px) {
  .wl-nav-desktop, .wl-header-actions, .wl-header-search {
    display: none;
  }

  .wl-mobile-toggle {
    justify-content: center;
    align-items: center;
    display: inline-flex;
  }

  .wl-grid-2, .wl-grid-3, .wl-grid-4, .wl-library-book-row {
    grid-template-columns: 1fr;
  }

  .wl-search-filters-grid {
    grid-template-columns: 1fr 1fr;
  }

  .wl-volumes-grid {
    grid-template-columns: 1fr;
  }

  .wl-reader-main, .wl-article-sheet {
    padding: 1.5rem;
  }
}

@media (max-width: 640px) {
  .wl-statusbar-inner {
    padding: .45rem 1rem;
    font-size: .72rem;
  }

  .wl-statusbar-tagline {
    display: none;
  }

  .wl-header-inner {
    padding: .65rem 1rem;
  }

  .wl-container, .wl-container-narrow {
    padding: 0 1rem;
  }

  .wl-hero-content {
    gap: 1.75rem;
    padding: 2rem 1rem;
  }

  .wl-search-bar, .wl-search-filters-grid {
    flex-direction: column;
    grid-template-columns: 1fr;
  }

  .wl-search-bar .wl-btn {
    width: 100%;
  }

  .wl-hero-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .wl-section, .wl-section-alt {
    padding: 2.5rem 0;
  }

  .wl-reader-main, .wl-article-sheet, .wl-card, .wl-gate-card {
    padding: 1.15rem;
  }

  .wl-login-box, .wl-login-box.compact {
    padding: 1rem;
  }

  .wl-input, .wl-select, .wl-textarea, .wl-toc-volume-select, .wl-toc-search-input, .wl-search-input {
    font-size: 16px;
  }

  .wl-seq-nav {
    grid-template-columns: 1fr;
  }

  .wl-seq-card.next {
    text-align: left;
    align-items: flex-start;
  }

  .wl-footer-grid {
    grid-template-columns: 1fr;
    gap: 1.75rem;
  }
}

@media print {
  .wl-statusbar, .wl-header, .wl-footer, .wl-reader-sidebar, .no-print {
    display: none !important;
  }

  body {
    color: #000 !important;
    background: #fff !important;
  }

  .wl-reader-main, .wl-card {
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
  }
}

.wl-bible-hover {
  background: var(--purple-tint);
  border-bottom: 1px dotted var(--purple-bright);
  font-family: var(--font-sans);
  cursor: pointer;
  border-radius: 3px;
  align-items: center;
  gap: .2rem;
  margin: 0 .08rem;
  padding: .05rem .42rem;
  font-size: .86em;
  font-weight: 600;
  transition: background .15s, color .15s;
  display: inline-flex;
  color: var(--purple-primary) !important;
  text-decoration: none !important;
}

.wl-bible-hover:hover {
  background: var(--purple-primary);
  border-bottom-color: var(--purple-primary);
  color: #fff !important;
}

.wl-bible-popover {
  color: #1f1f1f;
  border: 1px solid #bcbcc4;
  border-top: 3px solid var(--purple-bright);
  border-radius: var(--radius-md);
  width: 380px;
  max-width: calc(100vw - 24px);
  font-family: var(--font-sans);
  background: #fff;
  animation: .12s ease-out wlFadeIn;
  overflow: hidden;
  box-shadow: 0 8px 28px #00000038;
}

@keyframes wlFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.wl-bible-popover-header {
  background: #f4f0fb;
  border-bottom: 1px solid #e2d6f5;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  padding: .6rem .9rem;
  display: flex;
}

.wl-bible-popover-title {
  font-family: var(--font-serif);
  color: var(--purple-primary);
  align-items: center;
  gap: .4rem;
  font-size: .95rem;
  font-weight: 700;
  display: inline-flex;
}

.wl-bible-popover-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  background: var(--purple-primary);
  color: #fff;
  border-radius: 3px;
  padding: .14rem .45rem;
  font-size: .66rem;
  font-weight: 600;
}

.wl-bible-popover-body {
  font-family: var(--font-serif);
  color: #1f1f1f;
  background: #fff;
  max-height: 220px;
  padding: .85rem .95rem;
  font-size: .92rem;
  line-height: 1.65;
  overflow-y: auto;
}

.wl-bible-popover-footer {
  background: #f7f7f9;
  border-top: 1px solid #e5e5ea;
  justify-content: flex-end;
  padding: .45rem .9rem;
  display: flex;
}

.wl-bible-popover-link {
  align-items: center;
  gap: .35rem;
  font-size: .75rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  color: var(--purple-primary) !important;
}

.wl-bible-popover-link:hover {
  text-decoration: underline;
}

.wl-bible-inline-passage {
  border-left: 3px solid var(--purple-primary);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  font-family: var(--font-serif);
  background: #f8f7fb;
  margin: 1rem 0 1.35rem;
  padding: 1rem 1.25rem;
}

.wl-bible-inline-passage p {
  color: #1f1f1f;
  font-style: italic;
  margin: 0 0 .5rem !important;
}

.wl-bible-inline-passage footer {
  font-family: var(--font-sans);
  font-size: .8rem;
  font-weight: 600;
}

.wl-bible-inline-passage footer a {
  color: var(--purple-primary);
  text-decoration: none;
}

/*# sourceMappingURL=src_app_%28frontend%29_globals_0ffxo4f.css.map*/