/* Refinement after live visual review: restore the Moon position, soften
   divisions and improve contrast with dimensional frosted-glass controls. */
.vs-northern{
  --vs-ink:#fff9ef;
  --vs-soft:#ddd2c4;
  --vs-gold:#f0d6a1;
}

/* The former glow was a layout pseudo-element and pushed the Moon down. */
.vs-northern .sky-moon:after{content:none;display:none}

/* Let fog, colour and shadow separate sections — not a visible hard stroke. */
.vs-northern .dash-head,
.vs-northern .dash-card,
.vs-northern .vs-engagement-card,
.vs-daythread,
.nav.vs-northern-nav{
  border-color:transparent;
}
.vs-northern .dash-head{
  box-shadow:
    inset 0 1px rgba(255,250,240,.08),
    0 20px 52px rgba(0,0,0,.27),
    0 0 48px rgba(126,94,167,.11);
}
.vs-northern .dash-card{
  box-shadow:
    inset 0 1px rgba(255,249,240,.055),
    0 21px 48px rgba(0,0,0,.25),
    0 5px 33px rgba(112,92,156,.09);
}
.vs-northern .dash-card.insight-card{box-shadow:inset 0 1px rgba(225,255,235,.065),0 21px 48px rgba(0,0,0,.25),0 5px 33px rgba(89,145,122,.12)}
.vs-northern .dash-card.dream-card{box-shadow:inset 0 1px rgba(245,236,255,.065),0 21px 48px rgba(0,0,0,.25),0 5px 33px rgba(129,101,177,.12)}

/* Small labels remain warm but now read like light, not dark gold. */
.vs-northern .dash-date,
.vs-northern .dc-label,
.vs-northern .vs-eyebrow,
.vs-northern .vs-meta,
.vs-northern .dc-more,
.vs-northern .dash-card .stat .k{
  color:#f1dfbd;
  text-shadow:0 1px 10px rgba(0,0,0,.56);
}
.vs-northern .dash-msg,
.vs-northern .dash-card .stat .v,
.vs-northern .sky-phase,
.vs-northern .vs-title{color:#fffaf0}
.vs-northern .cyclecap,
.vs-northern .dash-hello,
.vs-northern .vs-copy{color:#e2d7c9}

/* Dimensional frosted glass controls. */
.vs-northern .dash-cal-btn,
.vs-northern .btn-ghost,
.vs-northern .vs-chip{
  position:relative;
  overflow:hidden;
  color:#fffaf0;
  text-shadow:0 1px 4px rgba(0,0,0,.55);
  border:1px solid rgba(255,249,236,.29);
  background:
    linear-gradient(142deg,rgba(255,255,255,.24) 0%,rgba(245,224,184,.14) 33%,rgba(129,109,156,.16) 100%),
    rgba(28,27,42,.39);
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.46),
    inset 0 -1px 1px rgba(6,6,12,.28),
    0 10px 22px rgba(0,0,0,.3),
    0 0 24px rgba(215,188,143,.13);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
}
.vs-northern .dash-cal-btn:before,
.vs-northern .btn-ghost:before,
.vs-northern .vs-chip:before{
  content:"";
  position:absolute;
  inset:0 38% 44% -22%;
  border-radius:inherit;
  background:linear-gradient(130deg,rgba(255,255,255,.34),transparent 72%);
  pointer-events:none;
}
.vs-northern .dash-cal-btn:active,
.vs-northern .btn-ghost:active,
.vs-northern .vs-chip:active{
  transform:translateY(1px) scale(.985);
  background:linear-gradient(142deg,rgba(255,255,255,.3),rgba(245,224,184,.19),rgba(129,109,156,.2));
  box-shadow:inset 0 2px 5px rgba(0,0,0,.22),0 5px 13px rgba(0,0,0,.23);
}
.nav.vs-northern-nav{
  background:linear-gradient(140deg,rgba(54,52,73,.58),rgba(16,17,29,.64));
  box-shadow:inset 0 1px rgba(255,249,240,.09),0 17px 40px rgba(0,0,0,.45),0 0 38px rgba(105,89,145,.14);
}
.nav.vs-northern-nav button.on:before{
  border:1px solid rgba(255,248,233,.12);
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(213,183,114,.12));
  box-shadow:inset 0 1px rgba(255,255,255,.17),0 4px 10px rgba(0,0,0,.13);
}
