/**
 * WS40 Astronomical events block — [ws40_astro_events]
 *
 * Transparent background and CSS custom properties from ws40-armour.css, so the
 * block follows the light/dark Consolle themes.
 */
.ws40-astro { font-size:14px; color:var(--ws40-text-primary, #1d2327); max-width:680px; }
.ws40-astro__title { margin:0 0 12px; font-size:18px; font-weight:700; }
/* Flex, not grid: a theme or the page builder can inject an empty node between the
   wheel and the list, which would take a grid cell; in flex it takes no space. */
.ws40-astro__top { display:flex; flex-wrap:wrap; gap:16px 24px; align-items:center; }
.ws40-astro__wheel { flex:0 1 280px; width:280px; max-width:100%; margin:0 auto; display:block; }
.ws40-astro__list { flex:1 1 260px; min-width:0; }
.ws40-astro__marks circle { fill:var(--ws40-bg, #fff); stroke:var(--ws40-text-muted, #646970); }
.ws40-astro__months text,
.ws40-astro__lbl { fill:var(--ws40-text-muted, #646970); }
.ws40-astro__days { fill:var(--ws40-text-primary, #1d2327); }
.ws40-astro__today { fill:var(--ws40-text-primary, #1d2327); stroke:var(--ws40-bg, #fff); }

.ws40-astro__list { list-style:none; margin:0; padding:0; }
.ws40-astro__row {
    --ws40-astro-c:#378ADD;
    display:flex; align-items:center; gap:10px; margin:0 0 6px; padding:8px 10px;
    border:1px solid var(--ws40-border, #e3e5e8); border-radius:8px;
}
.ws40-astro__row.is-next { border:2px solid var(--ws40-astro-c); padding:7px 9px; }
.ws40-astro__dot { flex:0 0 12px; width:12px; height:12px; border-radius:50%; background:var(--ws40-astro-c); }
.ws40-astro__txt { display:flex; flex-direction:column; min-width:0; line-height:1.3; }
.ws40-astro__txt b { font-weight:700; }
.ws40-astro__txt span { font-size:12px; color:var(--ws40-text-muted, #646970); }
.ws40-astro__in {
    margin-left:auto; padding:3px 9px; border-radius:999px; white-space:nowrap;
    font-size:12px; font-weight:700;
    color:color-mix(in srgb, var(--ws40-astro-c) 55%, var(--ws40-text-primary, #1d2327));
    background:color-mix(in srgb, var(--ws40-astro-c) 15%, transparent);
}

.ws40-astro__sec { margin:16px 0 8px; font-size:12px; letter-spacing:.02em; color:var(--ws40-text-muted, #646970); }
.ws40-astro__moons { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:8px; }
.ws40-astro__moon {
    display:flex; flex-direction:column; align-items:center; gap:2px; padding:10px 4px; text-align:center;
    border:1px solid var(--ws40-border, #e3e5e8); border-radius:8px;
}
.ws40-astro__moon b { font-size:13px; font-weight:700; }
.ws40-astro__moon span { font-size:12px; color:var(--ws40-text-muted, #646970); }
.ws40-astro__shade { fill:#5F5E5A; stroke:#888780; }
.ws40-astro__light { fill:#FAC775; }
.ws40-astro__moon circle.ws40-astro__light { stroke:#BA7517; }

.ws40-astro__chips { display:flex; flex-wrap:wrap; gap:8px; }
.ws40-astro__chip {
    display:flex; align-items:center; gap:6px; padding:5px 12px; font-size:13px;
    border:1px solid var(--ws40-border, #e3e5e8); border-radius:999px;
}
.ws40-astro__chip span { font-size:12px; color:var(--ws40-text-muted, #646970); }
.ws40-astro__chip .ws40-astro__spark { color:#7F77DD; font-size:14px; }

@media (max-width:420px) {
    .ws40-astro__moons { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
