/* Звёздные фигуры: asterisms.html (список) и asterism.html (одна фигура). Страница фигуры берёт разметку
   страницы объекта из catalog.css: крошки, заголовок, «Сегодня ночью», «Что видно», карточки «ещё».
   Панель с небом тёмная во всех темах, как снимки объектов и рисунки Луны, поэтому в светлой теме
   «Daylight» у неё свои светлые подписи; всё остальное — переменные тем. */

.ast-sky {
  --sky-bg: #05060a; --sky-ink: var(--fg); --sky-dim: var(--muted); --sky-line: var(--accent-2);
  display: block; background: var(--sky-bg); border: 1px solid var(--line); border-radius: 14px; overflow: hidden;
}
[data-theme="daylight"] .ast-sky { --sky-ink: #eceef4; --sky-dim: #a7adbb; --sky-line: color-mix(in srgb, var(--accent-2) 45%, #fff); }
.ast-sky > svg { display: block; width: 100%; height: auto; }
.ast-svg .ln { stroke: var(--sky-line); stroke-opacity: .7; }
.ast-svg .cl { stroke: var(--sky-dim); stroke-opacity: .3; }
.ast-svg .fs { opacity: .85; }
.ast-svg .lb, .ast-svg .mkl, .ast-svg .cn { paint-order: stroke; stroke: var(--sky-bg); stroke-width: 3px; stroke-linejoin: round; }
.ast-svg .lb { fill: var(--sky-ink); font: 700 14px/1 var(--body); }
.ast-svg .lb.dim { fill: var(--sky-dim); font-weight: 600; }
.ast-svg .cn { fill: var(--sky-dim); font: 800 11px/1 var(--body); letter-spacing: .12em; opacity: .75; }
.ast-svg .mk { stroke: var(--accent); }
.ast-svg .mkl { fill: var(--accent); font: 700 12px/1 var(--body); }
.ast-svg .ax { stroke: var(--sky-dim); fill: var(--sky-dim); }
.ast-svg .ax text { stroke: none; font: 700 11.5px/1 var(--body); }

/* ── список ── */
.ast-grid { display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr)); }
.card.ast-card { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px; box-shadow: none; }
.card.ast-card.plain { grid-template-columns: minmax(0, 1fr); }
.ast-card .ast-sky { width: 92px; height: 92px; border-radius: 12px; }
.ast-card-body { min-width: 0; }
.ast-card h3 { margin: 0; font: 800 19px/1.2 var(--display); letter-spacing: -0.01em; }
.ast-con { color: var(--muted); font-size: 14px; margin-top: 2px; }
.ast-when { margin: 8px 0 0; font-size: 14.5px; line-height: 1.6; }
.ast-when .badge { margin-right: 4px; }
.ast-blurb { margin: 6px 0 0; color: var(--muted); font-size: 15px; line-height: 1.5; }
.ast-note { margin: -6px 0 12px; }
.ast-next { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
.ast-next a.card { padding: 16px 18px; box-shadow: none; }
.ast-next a.card b { display: block; font: 800 17.5px/1.25 var(--display); color: var(--fg); }
.ast-next a.card span { display: block; color: var(--muted); font-size: 15px; margin-top: 4px; line-height: 1.45; }

/* ── страница фигуры ── */
.ast-chart-card { padding: 12px; }
.ast-chart > .skeleton { display: block; height: 320px; border-radius: 0; opacity: .5; }
.ast-cap { margin: 10px 2px 0; line-height: 1.5; }
.ast-text { font-size: 16.5px; line-height: 1.65; margin: 0; }
.ast-inside { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.ast-inside li { font-size: 15.5px; line-height: 1.5; }
.ast-inside a { font-weight: 800; }
.ast-inside span { display: block; color: var(--muted); }
#ast-stars { margin-top: 18px; }
.ast-table td small { color: var(--muted); font-size: 13.5px; }
.ast-table tr.dim td { color: var(--muted); }
.ast-table .num { white-space: nowrap; font-family: var(--mono); font-size: 15px; }
.ast-table .swatch { display: inline-block; width: .8em; height: .8em; border-radius: 50%; vertical-align: -.05em; margin-right: 7px; box-shadow: 0 0 0 1px var(--line-strong); }
.ast-sky.mini { width: 56px; height: 56px; border-radius: 12px; }
.ast-nf .more-grid { margin-top: 6px; }
