/* HOROSCOP.SPACE 1.2.7.3 — lunar observatory. Scoped to the existing
 * homepage Local Sky widget; no changes to the underlying sky service. */
.hs-lunar-observatory {
  --lunar-ink:#18243c;
  --lunar-muted:#59657a;
  --lunar-line:#e9e6e2;
  --lunar-gold:#be8948;
  min-width:0;
  padding:clamp(17px,2.4vw,24px);
  border:1px solid #e6e0d7 !important;
  border-radius:22px !important;
  background:linear-gradient(158deg,#fffefa 0%,#ffffff 57%,#fbf8f3 100%) !important;
  box-shadow:0 21px 46px rgba(30,32,55,.085) !important;
  color:var(--lunar-ink);
  overflow:hidden;
}
.hs-lunar-observatory *, .hs-lunar-observatory *::before, .hs-lunar-observatory *::after { box-sizing:border-box; }
.hs-lunar-observatory .hs-lunar-heading {
  display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap;
  gap:6px 14px; margin-bottom:16px;
}
.hs-lunar-observatory .hs-lunar-heading h2 {
  margin:4px 0 0; font:600 clamp(1.24rem,2.1vw,1.53rem)/1.18 var(--hs-serif,Georgia,serif);
  color:#19253f; letter-spacing:-.02em;
}
.hs-lunar-observatory .hs-lunar-kicker {
  font:700 .61rem/1.3 system-ui,sans-serif; color:#ae7b41;
  letter-spacing:.13em;
}
.hs-lunar-observatory .hs-lunar-live {
  max-width:100%; flex:0 1 auto; align-self:flex-end;
  padding:4px 0; font:500 .68rem/1.4 system-ui,sans-serif;
  color:#647086; text-align:end; overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-lunar-showcase {
  position:relative; overflow:hidden; isolation:isolate;
  display:flex; flex-direction:column; align-items:center;
  padding:15px 15px 20px; border-radius:19px;
  background:
    radial-gradient(ellipse at 49% 24%,rgba(193,167,128,.21) 0,rgba(83,94,143,.18) 25%,transparent 66%),
    radial-gradient(ellipse at 9% 92%,rgba(66,103,146,.22),transparent 45%),
    linear-gradient(152deg,#202c48 0%,#101a30 65%,#111b2c 100%);
  color:#fff;
}
.hs-lunar-observatory .hs-lunar-showcase::before {
  content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:.54;
  background-image:
    radial-gradient(circle,#fff7dd 0 1px,transparent 1.35px),
    radial-gradient(circle,#b7cbf5 0 .7px,transparent 1.1px),
    radial-gradient(circle,#f6d39f 0 .7px,transparent 1.1px);
  background-size:87px 97px,131px 143px,177px 189px;
  background-position:13px 7px,52px 74px,100px 24px;
}
.hs-lunar-observatory .hs-lunar-night {
  position:relative; display:grid; place-items:center;
  height:194px; width:100%; max-width:320px; isolation:isolate;
}
.hs-lunar-observatory .hs-lunar-orbit {
  position:absolute; left:50%; top:50%; border-radius:50%; pointer-events:none;
  transform:translate(-50%,-50%); border:1px solid rgba(236,222,194,.15);
}
.hs-lunar-observatory .hs-lunar-orbit--one { width:171px;height:171px; }
.hs-lunar-observatory .hs-lunar-orbit--two { width:191px;height:191px;border-color:rgba(236,222,194,.065); }
.hs-lunar-observatory .hs-moon {
  position:relative; isolation:isolate; display:block; flex:0 0 auto;
  width:156px !important; height:156px !important; aspect-ratio:1;
  margin:0 !important; border:0 !important; border-radius:50%;
  background:transparent !important;
  box-shadow:0 0 23px rgba(251,237,202,.13),0 10px 27px rgba(0,0,0,.27) !important;
}
.hs-lunar-observatory .hs-moon::before,
.hs-lunar-observatory .hs-moon::after { content:none !important; animation:none !important; }
.hs-lunar-observatory .hs-moon-art {
  position:absolute; inset:0; display:block; width:100%; height:100%; border-radius:50%;
  overflow:hidden; background:#0e172b;
}
.hs-lunar-observatory .hs-moon-surface {
  display:block; position:absolute; inset:0; border-radius:50%;
  background:#c5bcad url('../img/premium-light/moon-surface.webp') center/cover no-repeat;
  filter:contrast(1.09) brightness(1.12);
}
.hs-lunar-observatory .hs-moon-art::after {
  content:''; position:absolute; inset:0; z-index:3; border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 42% 33%,rgba(255,255,255,.14),transparent 52%),
             radial-gradient(circle at 50% 50%,transparent 64%,rgba(8,12,27,.31) 100%);
  box-shadow:inset 0 0 2px rgba(255,255,255,.4),inset -5px -4px 13px rgba(4,7,18,.24);
}
.hs-lunar-observatory .hs-moon-terminator {
  position:absolute; inset:0; z-index:2; display:block; width:100%; height:100%;
  filter:none !important;
}
.hs-lunar-observatory .hs-moon-terminator path { fill:rgba(7,12,26,.96); }
.hs-lunar-observatory .hs-moon-updated .hs-moon-art { animation:hs-lunar-refresh .55s ease-out both; }
@keyframes hs-lunar-refresh { from { opacity:.67; transform:scale(.985); } to { opacity:1; transform:scale(1); } }
.hs-lunar-observatory .hs-lunar-description {
  display:flex; flex-direction:column; align-items:center; gap:4px; text-align:center;
  width:100%; min-width:0;
}
.hs-lunar-observatory .hs-lunar-eyebrow {
  color:#e3c9a5; letter-spacing:.09em; text-transform:uppercase;
  font:700 .62rem/1.35 system-ui,sans-serif;
}
.hs-lunar-observatory .hs-lunar-current {
  max-width:100%; color:#fffdf7; font:600 clamp(1.14rem,2vw,1.42rem)/1.26 var(--hs-serif,Georgia,serif);
  text-wrap:balance; overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-lunar-illuminated {
  color:#e5d7be; font:500 .74rem/1.5 system-ui,sans-serif;
}
.hs-lunar-observatory .hs-lunar-illuminated [data-sky-illumination] {
  color:#fff7df; font-size:.88rem; font-weight:800; font-variant-numeric:tabular-nums;
}
.hs-lunar-observatory .hs-lunar-data {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 16px; margin-top:14px; min-width:0;
}
.hs-lunar-observatory .hs-lunar-reading {
  display:flex; flex-direction:column; min-width:0; gap:3px;
  padding:11px 0 12px; border-bottom:1px solid var(--lunar-line);
  background:transparent !important;
}
.hs-lunar-observatory .hs-lunar-reading--wide { grid-column:1/-1; }
.hs-lunar-observatory .hs-lunar-reading span:first-child {
  color:var(--lunar-muted); font:500 .73rem/1.38 system-ui,sans-serif;
  overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-lunar-reading strong {
  color:var(--lunar-ink); font:700 .90rem/1.43 system-ui,sans-serif;
  font-variant-numeric:tabular-nums; overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-lunar-reading--clock { flex-direction:row; align-items:baseline; justify-content:space-between; gap:8px; }
.hs-lunar-observatory .hs-lunar-reading--clock strong { white-space:nowrap; }
.hs-lunar-observatory .hs-moon-cycle {
  padding-top:17px; margin-top:6px; border-top:0;
}
.hs-lunar-observatory .hs-moon-cycle-head {
  display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between;
  gap:4px 9px; margin-bottom:14px;
}
.hs-lunar-observatory .hs-moon-cycle-head h3 {
  margin:0; color:var(--lunar-ink); font:600 1.05rem/1.24 var(--hs-serif,Georgia,serif);
}
.hs-lunar-observatory .hs-moon-cycle-current {
  max-width:100%; padding:0; border:0; border-radius:0; background:transparent;
  font:600 .72rem/1.42 system-ui,sans-serif; color:#94642c;
  overflow-wrap:normal;word-break:normal; text-align:end;
}
.hs-lunar-observatory .hs-moon-phases {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px 5px;
}
.hs-lunar-observatory .hs-moon-phase {
  position:relative; display:flex !important; flex-direction:column; justify-content:flex-start;
  align-items:center; gap:6px; min-width:0; min-height:81px;
  padding:8px 2px 5px !important; border:0 !important; border-radius:12px !important;
  background:transparent !important; color:#465168 !important;
  transform:none !important; box-shadow:none !important; text-align:center !important;
  transition:background-color .2s ease !important;
}
.hs-lunar-observatory .hs-moon-phase.is-current {
  background:#fbf0dd !important; color:#6a451e !important;
}
.hs-lunar-observatory .hs-moon-phase-disc {
  display:block; flex:0 0 auto; width:40px !important; height:40px !important;
  border-radius:50%; overflow:hidden;
  background:#bcb4a7 url('../img/premium-light/moon-surface.webp') center/cover no-repeat !important;
  box-shadow:0 2px 7px rgba(22,32,50,.15),0 0 0 1px rgba(46,54,75,.13) !important;
}
.hs-lunar-observatory .hs-moon-phase-disc svg { display:block; width:100%; height:100%; filter:none !important; }
.hs-lunar-observatory .hs-moon-svg-shadow,
.hs-lunar-observatory .hs-moon-phase.is-current .hs-moon-svg-shadow { fill:rgba(8,13,28,.97); }
.hs-lunar-observatory .hs-moon-svg-edge,
.hs-lunar-observatory .hs-moon-phase.is-current .hs-moon-svg-edge { stroke:rgba(255,255,255,.35);fill:none;stroke-width:.65; }
.hs-lunar-observatory .hs-moon-phase-label {
  display:block; min-width:0; max-width:100%; color:inherit;
  font:500 .66rem/1.25 system-ui,sans-serif;
  overflow-wrap:normal !important; word-break:normal !important;
  hyphens:none;
}
.hs-lunar-observatory .hs-moon-phase.is-current .hs-moon-phase-label { font-weight:750; }
.hs-lunar-observatory .hs-sky-foot {
  display:flex; flex-direction:column; align-items:stretch; gap:10px;
  margin-top:12px; padding-top:13px; border-top:1px solid var(--lunar-line);
}
.hs-lunar-observatory .hs-sky-location {
  min-width:0; color:#536179; font:.74rem/1.4 system-ui,sans-serif;
  overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-location-btn {
  width:100%; min-height:38px; padding:8px 12px; border:1px solid #eadcc7;
  border-radius:999px; background:#faf1e3; color:#805621;
  font:700 .76rem/1.3 system-ui,sans-serif;white-space:normal;
}
.hs-lunar-observatory .hs-location-btn:hover { background:#f3e2c8; }
.hs-lunar-observatory .hs-location-btn:focus-visible { outline:3px solid #95703c;outline-offset:2px; }
.hs-lunar-observatory .hs-sky-status {
  margin-top:11px; color:#53617a; font:.69rem/1.55 system-ui,sans-serif;
  overflow-wrap:normal; word-break:normal;
}
.hs-lunar-observatory .hs-lunar-disclaimer {
  margin:8px 0 0;color:#6d7480; font:.64rem/1.52 system-ui,sans-serif;
}
/* Works inside the narrow homepage side column as well as on full-width layouts. */
@media (max-width:480px) {
  .hs-lunar-observatory .hs-lunar-night { height:184px; }
  .hs-lunar-observatory .hs-moon { width:148px !important;height:148px !important; }
  .hs-lunar-observatory .hs-moon-phases { grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 9px; }
  .hs-lunar-observatory .hs-moon-phase {
    flex-direction:row; justify-content:flex-start;align-items:center;
    gap:9px;min-height:52px;padding:5px !important; text-align:start !important;
  }
  .hs-lunar-observatory .hs-moon-phase-disc { width:35px !important;height:35px !important; }
  .hs-lunar-observatory .hs-moon-phase-label { font-size:.71rem; line-height:1.27; }
}
@media (max-width:350px) {
  .hs-lunar-observatory { padding:13px; }
  .hs-lunar-observatory .hs-lunar-data { gap:0 10px; }
  .hs-lunar-observatory .hs-moon-phase { gap:5px; padding:3px !important; }
  .hs-lunar-observatory .hs-moon-phase-disc { width:30px !important;height:30px !important; }
  .hs-lunar-observatory .hs-moon-phase-label { font-size:.66rem; }
}
[dir="rtl"] .hs-lunar-observatory .hs-lunar-live,
[dir="rtl"] .hs-lunar-observatory .hs-moon-cycle-current { text-align:start; }
@media (prefers-reduced-motion:reduce) {
  .hs-lunar-observatory .hs-moon-updated .hs-moon-art { animation:none; }
  .hs-lunar-observatory .hs-moon-phase { transition:none !important; }
}
