/* Schema patch 39.17: /bodh, the day's Bodh Vani (includes/views/bodh.php). A calm contemplation canvas on the site's tokens:
   Temple Dark by default, Temple Dawn parchment in light. Built on pages.css (.pg-hero, .pg-crumbs). */
.bv-wrap { max-width: 46rem; }
.bv-hero { text-align: left; }
.bv-title { margin: 0 0 .25rem; font-family: var(--serif); font-weight: 500; font-size: clamp(2.3rem, 1.6rem + 3vw, 3.6rem); line-height: 1.05; color: var(--ink); }
.bv-date { margin: 0 0 1.5rem; color: var(--muted); font-variant-numeric: lining-nums tabular-nums; }
.bv-card {
  position: relative; margin: 0; padding: clamp(1.25rem, 4vw, 2.25rem); border: 1px solid var(--champagne, rgba(217, 119, 6, .2));
  border-radius: 1.5rem; background: var(--surface); box-shadow: 0 24px 60px -36px rgba(217, 119, 6, .55);
}
.bv-card::before {
  content: ""; position: absolute; inset: -1px; border-radius: inherit; pointer-events: none;
  background: radial-gradient(120% 80% at 0% 0%, rgba(245, 158, 11, .12), transparent 60%);
}
.bv-fest { position: relative; display: inline-block; margin: 0 0 .75rem; padding: .2rem .8rem; border-radius: 999px; background: rgba(136, 19, 55, .1); color: var(--accent); font-size: .9rem; font-weight: 600; }
.bv-quote { position: relative; margin: 0; }
.bv-quote p { margin: 0; font-family: var(--serif); font-size: clamp(1.45rem, 1.15rem + 1.4vw, 2.1rem); line-height: 1.4; color: var(--ink); overflow-wrap: anywhere; }
.bv-by { position: relative; margin: 1rem 0 0; color: var(--muted); font-size: .95rem; }
.bv-pause { margin: 1.25rem 0 0; color: var(--muted); font-family: var(--serif); font-size: 1.15rem; font-style: italic; }
.bv-actions { margin: 1.25rem 0 0; }
.bv-card--empty p { margin: 0; color: var(--muted); }
.bv-invite { padding-block: clamp(2rem, 5vw, 3.5rem); border-top: 1px solid var(--champagne, rgba(217, 119, 6, .2)); }
.bv-invite__h { margin: 0 0 .75rem; font-family: var(--serif); font-weight: 500; font-size: clamp(1.6rem, 1.3rem + 1.2vw, 2.2rem); color: var(--ink); }
.bv-invite__lead { margin: 0 0 1.25rem; color: var(--ink); line-height: 1.65; max-width: 40rem; }
.bv-links { display: grid; gap: .75rem; margin: 0; padding: 0; list-style: none; }
@media (min-width: 48rem) { .bv-links { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.bv-link {
  display: grid; gap: .25rem; min-height: 44px; height: 100%; box-sizing: border-box; padding: 1rem 1.1rem; border: 1px solid var(--champagne, rgba(217, 119, 6, .2));
  border-radius: 1rem; background: var(--surface); color: var(--ink); text-decoration: none; transition: border-color .2s, background-color .2s;
}
.bv-link__t { font-weight: 600; color: var(--accent); }
.bv-link__d { font-size: .9rem; color: var(--muted); }
@media (hover: hover) and (pointer: fine) { .bv-link:hover { border-color: var(--amber); } }
.bv-link:focus-visible { outline: 2px solid var(--focus, #FCD34D); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .bv-link { transition: none; } }
