.mzv-root {
  --mzv-gold: #d8b45b;
  --mzv-gold-bright: #f4d77f;
  --mzv-gold-soft: rgba(216, 180, 91, .22);
  --mzv-white: #ffffff;
  --mzv-muted: rgba(255, 255, 255, .72);
  --mzv-bg: rgba(255, 255, 255, .045);
  --mzv-border: rgba(216, 180, 91, .22);
  width: 100%;
  max-width: 760px;
  font-family: inherit;
  box-sizing: border-box;
}

.mzv-root[hidden] { display: none !important; }
.mzv-root *, .mzv-root *::before, .mzv-root *::after { box-sizing: border-box; }
.mzv-root.mzv-align-left { text-align: left; margin-right: auto; }
.mzv-root.mzv-align-center { text-align: center; margin-left: auto; margin-right: auto; }
.mzv-root.mzv-align-right { text-align: right; margin-left: auto; }

.mzv-card {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0;
  padding: clamp(22px, 3vw, 30px) clamp(22px, 3vw, 34px);
  border: 1px solid var(--mzv-border);
  border-radius: 24px;
  background:
    radial-gradient(circle at 8% 0%, rgba(216, 180, 91, .12), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, .065), rgba(255, 255, 255, .025));
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, .025) inset,
    0 22px 55px rgba(0, 0, 0, .18),
    0 0 36px rgba(216, 180, 91, .06);
  color: var(--mzv-white);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 1;
  transform: translateY(0);
  transition: opacity .28s ease, transform .28s ease;
}

.mzv-card::before {
  content: "“";
  position: absolute;
  top: -26px;
  right: 18px;
  color: rgba(216, 180, 91, .09);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 150px;
  line-height: 1;
  pointer-events: none;
}

.mzv-card.mzv-is-changing { opacity: 0; transform: translateY(8px); }
.mzv-card.mzv-is-visible { opacity: 1; transform: translateY(0); }

.mzv-eyebrow {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin: 0 0 13px;
  color: var(--mzv-gold);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .16em;
  line-height: 1.2;
  text-transform: uppercase;
}
.mzv-eyebrow[hidden] { display: none !important; }

.mzv-quote {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--mzv-white);
  font-family: inherit;
  font-size: clamp(20px, 2.5vw, 30px);
  font-style: normal;
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1.38;
}

.mzv-reference {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 15px;
  color: var(--mzv-gold);
  font-size: 14px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .02em;
}

.mzv-admin-empty { position: relative; z-index: 1; margin: 10px 0 0; color: var(--mzv-muted); font-size: 13px; }
.mzv-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

.mzv-divine-aurora,
.mzv-divine-border,
.mzv-divine-flash,
.mzv-divine-sweep,
.mzv-divine-quote-mark,
.mzv-type-caret { display: none; }

.mzv-variant-minimal .mzv-card { padding: 0 0 0 20px; border: 0; border-left: 3px solid var(--mzv-gold); border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.mzv-variant-minimal .mzv-card::before { display: none; }
.mzv-variant-minimal .mzv-quote { font-size: clamp(18px, 2vw, 24px); }

/* =========================================================
   DIVINE VARIANT 1.2
========================================================= */

.mzv-variant-divine { width: 100%; max-width: 100%; margin: 24px 0 0; }

.mzv-variant-divine .mzv-card {
  isolation: isolate;
  width: 100%;
  padding: 19px 24px 19px 27px;
  border: 1px solid rgba(216, 180, 91, .17);
  border-left: 3px solid var(--mzv-gold);
  border-radius: 17px;
  background:
    radial-gradient(circle at 100% 0%, rgba(216, 180, 91, .055), transparent 38%),
    linear-gradient(145deg, rgba(255, 255, 255, .038), rgba(255, 255, 255, .011)),
    rgba(8, 10, 12, .96);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 15px 40px rgba(0,0,0,.20),
    0 0 24px rgba(216,180,91,.045);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transform-origin: center;
}

.mzv-variant-divine .mzv-card::before,
.mzv-variant-divine .mzv-card::after { display: none; }

.mzv-variant-divine .mzv-eyebrow,
.mzv-variant-divine .mzv-quote,
.mzv-variant-divine .mzv-reference,
.mzv-variant-divine .mzv-admin-empty { position: relative; z-index: 8; }

.mzv-variant-divine .mzv-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  color: var(--mzv-gold);
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .15em;
  text-transform: uppercase;
  text-shadow: 0 0 10px rgba(216,180,91,.17);
}

.mzv-variant-divine .mzv-eyebrow::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--mzv-gold);
  box-shadow: 0 0 0 4px rgba(216,180,91,.10), 0 0 13px rgba(216,180,91,.34);
}

.mzv-variant-divine .mzv-quote {
  max-width: 38em;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  color: rgba(255,255,255,.94);
  font-family: inherit;
  font-size: clamp(17px, 1.7vw, 20px);
  font-style: normal;
  font-weight: 500;
  line-height: 1.48;
  letter-spacing: -.012em;
}

.mzv-variant-divine .mzv-quote-visual { opacity: 1; transition: opacity .24s ease, transform .24s ease; }

.mzv-variant-divine .mzv-reference {
  display: block;
  margin-top: 11px;
  color: rgba(216,180,91,.96);
  font-size: 13px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.3;
  letter-spacing: .01em;
  opacity: 1;
  transform: translateY(0);
  transition: opacity .36s ease, transform .36s ease;
}

.mzv-variant-divine .mzv-divine-aurora,
.mzv-variant-divine .mzv-divine-border,
.mzv-variant-divine .mzv-divine-flash,
.mzv-variant-divine .mzv-divine-sweep,
.mzv-variant-divine .mzv-divine-quote-mark { display: block; position: absolute; pointer-events: none; user-select: none; }

/* Moving radial lights */
.mzv-variant-divine .mzv-divine-aurora { inset: 0; z-index: 1; overflow: hidden; border-radius: inherit; opacity: 1; }
.mzv-variant-divine .mzv-divine-light { position: absolute; display: block; border-radius: 50%; filter: blur(30px); mix-blend-mode: screen; will-change: transform, opacity; }
.mzv-variant-divine .mzv-divine-light-a { width: 64%; height: 185%; left: -30%; top: -58%; background: radial-gradient(ellipse at center, rgba(255,235,168,.52) 0%, rgba(216,180,91,.27) 28%, rgba(216,180,91,.06) 48%, transparent 70%); opacity: .74; }
.mzv-variant-divine .mzv-divine-light-b { width: 66%; height: 175%; right: -34%; bottom: -56%; background: radial-gradient(ellipse at center, rgba(255,220,130,.36) 0%, rgba(216,180,91,.18) 30%, rgba(216,180,91,.05) 49%, transparent 70%); opacity: .70; }
.mzv-variant-divine .mzv-divine-light-c { width: 48%; height: 125%; left: 28%; top: -32%; background: radial-gradient(ellipse at center, rgba(255,249,222,.25) 0%, rgba(255,237,180,.08) 32%, transparent 67%); opacity: .58; }
.mzv-animation-enabled.mzv-variant-divine .mzv-divine-light-a { width: 64%; height: 185%; left: -30%; top: -58%; background: radial-gradient(ellipse at center, rgba(255,235,168,.52) 0%, rgba(216,180,91,.27) 28%, rgba(216,180,91,.06) 48%, transparent 70%); opacity: .74; }
.mzv-animation-enabled.mzv-variant-divine .mzv-divine-light-b { width: 66%; height: 175%; right: -34%; bottom: -56%; background: radial-gradient(ellipse at center, rgba(255,220,130,.36) 0%, rgba(216,180,91,.18) 30%, rgba(216,180,91,.05) 49%, transparent 70%); opacity: .70; }
.mzv-animation-enabled.mzv-variant-divine .mzv-divine-light-c { width: 48%; height: 125%; left: 28%; top: -32%; background: radial-gradient(ellipse at center, rgba(255,249,222,.25) 0%, rgba(255,237,180,.08) 32%, transparent 67%); opacity: .58; }

/* Continuous moving border highlight.
   This recreates the approved first JavaScript treatment: a broad, soft
   golden reflection travels around the full contour, with no bright orb,
   no dashed line and no duplicated frame. */
.mzv-variant-divine .mzv-divine-border {
  --mzv-border-angle: 0deg;
  inset: 0;
  z-index: 5;
  padding: 1.35px;
  border-radius: inherit;
  background:
    conic-gradient(
      from var(--mzv-border-angle),
      rgba(216,180,91,.08) 0deg,
      rgba(216,180,91,.09) 34deg,
      rgba(216,180,91,.16) 52deg,
      rgba(216,180,91,.31) 70deg,
      rgba(244,213,125,.58) 88deg,
      rgba(255,244,204,.92) 104deg,
      rgba(244,213,125,.66) 121deg,
      rgba(216,180,91,.34) 143deg,
      rgba(216,180,91,.16) 168deg,
      rgba(216,180,91,.09) 205deg,
      rgba(216,180,91,.075) 270deg,
      rgba(216,180,91,.08) 360deg
    );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  mask-composite: exclude;
  opacity: .90;
  filter:
    drop-shadow(0 0 2px rgba(255,244,204,.36))
    drop-shadow(0 0 7px rgba(216,180,91,.24))
    drop-shadow(0 0 15px rgba(216,180,91,.10));
  will-change: background;
}

@supports not ((-webkit-mask-composite: xor) or (mask-composite: exclude)) {
  .mzv-variant-divine .mzv-divine-border {
    padding: 0;
    background: transparent;
    border: 1px solid rgba(216,180,91,.28);
    border-left-color: transparent;
    box-shadow:
      inset 0 0 0 1px rgba(255,238,184,.03),
      0 0 12px rgba(216,180,91,.11);
  }
}

/* One-time reveal */
.mzv-variant-divine .mzv-divine-flash {
  inset: -48%; z-index: 9;
  background: radial-gradient(ellipse at 46% 50%, rgba(255,255,255,1) 0%, rgba(255,253,235,1) 8%, rgba(255,242,194,.95) 19%, rgba(255,225,140,.72) 32%, rgba(216,180,91,.38) 47%, rgba(216,180,91,.13) 62%, transparent 79%);
  filter: blur(7px); mix-blend-mode: screen; opacity: 0;
}

.mzv-variant-divine .mzv-divine-sweep {
  top: -130%; left: -145%; z-index: 10; width: 138%; height: 410%;
  background: linear-gradient(90deg, transparent 0%, rgba(255,228,142,.10) 9%, rgba(255,236,176,.35) 22%, rgba(255,248,219,.80) 37%, rgba(255,255,255,1) 48%, rgba(255,255,255,1) 52%, rgba(255,248,219,.80) 63%, rgba(255,236,176,.35) 78%, rgba(255,228,142,.10) 91%, transparent 100%);
  filter: blur(12px); mix-blend-mode: screen; opacity: 0; transform: rotate(17deg);
}

/* Quote mark and dot */
.mzv-variant-divine .mzv-divine-quote-mark { top: 5px; right: 15px; z-index: 12; color: rgba(239,204,105,.40); font-family: Georgia,"Times New Roman",serif; font-size: 68px; font-weight: 400; line-height: 1; opacity: .86; text-shadow: 0 0 11px rgba(216,180,91,.28), 0 0 24px rgba(216,180,91,.13); transform-origin: top right; }
.mzv-animation-enabled.mzv-variant-divine .mzv-divine-quote-mark { animation: mzvQuoteGlow 3.8s ease-in-out infinite; }
.mzv-animation-enabled.mzv-variant-divine .mzv-eyebrow::before { animation: mzvDotPulse 2.8s ease-in-out infinite; }

/* Typewriter states */
.mzv-variant-divine .mzv-type-caret { width: 2px; height: 1.02em; margin-left: 3px; vertical-align: -.10em; border-radius: 2px; background: #ead079; box-shadow: 0 0 8px rgba(216,180,91,.40); }
.mzv-variant-divine.mzv-typewriter-pending .mzv-quote-visual,
.mzv-variant-divine.mzv-typewriter-pending .mzv-reference { opacity: 0; }
.mzv-variant-divine.mzv-typewriter-active .mzv-quote-visual { opacity: 1; }
.mzv-variant-divine.mzv-typewriter-active .mzv-type-caret { display: inline-block; animation: mzvCaretBlink .72s steps(1,end) infinite; }
.mzv-variant-divine.mzv-typewriter-active .mzv-reference { opacity: 0; transform: translateY(5px); }
.mzv-variant-divine.mzv-typewriter-complete .mzv-reference { opacity: 1; transform: translateY(0); }
.mzv-variant-divine.mzv-verse-transitioning .mzv-quote-visual,
.mzv-variant-divine.mzv-verse-transitioning .mzv-reference { opacity: 0; transform: translateY(5px); }

/* Intro class after four seconds */
.mzv-animation-enabled.mzv-variant-divine .mzv-card.mzv-intro-active { animation: mzvCardReveal 2.05s cubic-bezier(.16,.76,.22,1) both; }
.mzv-animation-enabled.mzv-variant-divine .mzv-card.mzv-intro-active .mzv-divine-flash { animation: mzvFlash 1.95s .08s cubic-bezier(.16,.76,.22,1) both; }
.mzv-animation-enabled.mzv-variant-divine .mzv-card.mzv-intro-active .mzv-divine-sweep { animation: mzvSweep 1.80s .12s cubic-bezier(.16,.76,.22,1) both; }
.mzv-animation-enabled.mzv-variant-divine .mzv-card.mzv-intro-active .mzv-divine-quote-mark { color: rgba(255,230,153,.72); text-shadow: 0 0 15px rgba(255,230,153,.50), 0 0 34px rgba(216,180,91,.24); }
.mzv-animation-enabled.mzv-variant-divine .mzv-card.mzv-intro-active .mzv-eyebrow::before { background: #fff0b8; box-shadow: 0 0 0 5px rgba(216,180,91,.16), 0 0 18px rgba(255,235,170,.86), 0 0 36px rgba(216,180,91,.38); }

@keyframes mzvLightA { 0%{transform:translate3d(-8%,-3%,0) scale(1);opacity:.52} 52%{transform:translate3d(82%,24%,0) scale(1.12);opacity:.82} 100%{transform:translate3d(28%,58%,0) scale(1.05);opacity:.60} }
@keyframes mzvLightB { 0%{transform:translate3d(8%,8%,0) scale(1);opacity:.48} 50%{transform:translate3d(-74%,-32%,0) scale(1.13);opacity:.76} 100%{transform:translate3d(-20%,-64%,0) scale(1.06);opacity:.56} }
@keyframes mzvLightC { 0%{transform:translate3d(-20%,-12%,0) scale(.96);opacity:.30} 55%{transform:translate3d(38%,52%,0) scale(1.16);opacity:.58} 100%{transform:translate3d(5%,18%,0) scale(1.04);opacity:.42} }
@keyframes mzvQuoteGlow { 0%,100%{color:rgba(239,204,105,.35);opacity:.76;text-shadow:0 0 9px rgba(216,180,91,.21),0 0 21px rgba(216,180,91,.10);transform:scale(1)} 50%{color:rgba(255,224,135,.62);opacity:1;text-shadow:0 0 15px rgba(255,224,135,.44),0 0 32px rgba(216,180,91,.22);transform:scale(1.045)} }
@keyframes mzvDotPulse { 0%,100%{background:var(--mzv-gold);opacity:.88;transform:scale(1);box-shadow:0 0 0 4px rgba(216,180,91,.10),0 0 13px rgba(216,180,91,.34)} 50%{background:#ffe29a;opacity:1;transform:scale(1.30);box-shadow:0 0 0 5px rgba(216,180,91,.14),0 0 16px rgba(255,226,147,.78),0 0 32px rgba(216,180,91,.34)} }
@keyframes mzvCaretBlink { 0%,48%{opacity:1} 49%,100%{opacity:0} }
@keyframes mzvCardReveal { 0%{filter:brightness(1) saturate(1);transform:translateY(0) scale(1);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 15px 40px rgba(0,0,0,.20),0 0 24px rgba(216,180,91,.045)} 40%{filter:brightness(2.30) saturate(1.14);transform:translateY(0) scale(1.014);box-shadow:0 25px 60px rgba(0,0,0,.33),0 0 180px rgba(255,241,197,.70),0 0 88px rgba(216,180,91,.42)} 66%{filter:brightness(1.38) saturate(1.05);transform:translateY(0) scale(1.005);box-shadow:0 20px 48px rgba(0,0,0,.25),0 0 66px rgba(216,180,91,.22)} 100%{filter:brightness(1) saturate(1);transform:translateY(0) scale(1);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 15px 40px rgba(0,0,0,.20),0 0 24px rgba(216,180,91,.045)} }
@keyframes mzvFlash { 0%{opacity:0;transform:scale(.58) translate3d(-11%,0,0);filter:blur(22px)} 40%{opacity:1;transform:scale(1.03) translate3d(0,0,0);filter:blur(0)} 56%{opacity:.92;transform:scale(1.10) translate3d(2%,0,0);filter:blur(4px)} 72%{opacity:.42;transform:scale(1.22) translate3d(5%,0,0);filter:blur(12px)} 100%{opacity:0;transform:scale(1.42) translate3d(10%,0,0);filter:blur(28px)} }
@keyframes mzvSweep { 0%{transform:translate3d(-190%,0,0) rotate(17deg);opacity:0} 9%{transform:translate3d(-142%,0,0) rotate(17deg);opacity:.30} 37%{transform:translate3d(-20%,0,0) rotate(17deg);opacity:1} 52%{transform:translate3d(35%,0,0) rotate(17deg);opacity:1} 82%{transform:translate3d(170%,0,0) rotate(17deg);opacity:.24} 100%{transform:translate3d(250%,0,0) rotate(17deg);opacity:0} }

@media (prefers-reduced-motion: reduce) {
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-divine-light,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-divine-quote-mark,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-eyebrow::before,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-card,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-divine-flash,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-divine-sweep,
  .mzv-animation-enabled.mzv-variant-divine:not(.mzv-force-motion) .mzv-type-caret { animation: none !important; }
  .mzv-variant-divine:not(.mzv-force-motion).mzv-typewriter-pending .mzv-quote-visual,
  .mzv-variant-divine:not(.mzv-force-motion).mzv-typewriter-pending .mzv-reference { opacity: 1 !important; transform: none !important; }
}

@media (max-width: 767px) {
  .mzv-card { padding: 20px 20px 22px; border-radius: 20px; }
  .mzv-card::before { top: -18px; right: 8px; font-size: 110px; }
  .mzv-quote { font-size: clamp(18px,5.4vw,24px); line-height: 1.42; }
  .mzv-reference { margin-top: 12px; font-size: 13px; }
  .mzv-variant-divine { margin-top: 20px; }
  .mzv-variant-divine .mzv-card { padding: 17px 18px 17px 20px; border-radius: 15px; }
  .mzv-variant-divine .mzv-divine-quote-mark { top: 6px; right: 11px; font-size: 53px; }
  .mzv-variant-divine .mzv-eyebrow { margin-bottom: 9px; font-size: 9.5px; letter-spacing: .14em; }
  .mzv-variant-divine .mzv-quote { font-size: 17px; font-weight: 500; line-height: 1.5; }
  .mzv-variant-divine .mzv-reference { margin-top: 10px; font-size: 12.5px; }
}
