/* Луна сегодня и лунный календарь (SEO). Базовые стили — seo.css (Дизайнер, 10.10).
   Язык раздела как у «Совместимости»: акцидентные блоки без карточек — центрированный eyebrow со звёздами, курсив Playfair
   с градиентом, орнамент divider-840, растровая Луна и медальоны лунных дней, числа Playfair lining-nums. Декор на телефоне скрыт. */
.mn-page{--mn-gold:linear-gradient(90deg,#f3d79e,#ffe9c2 45%,#e3b465);--mn-night:#1b1540;overflow-x:clip}
.mn-page main{overflow-x:visible}

/* ---------- Луна нужной фазы: .mo (разметка — MoonToday.orb в luna-core.js) ----------
   Диск — текстура moon.webp. :before — ночная сторона (та же текстура под синим светофильтром, «пепельный свет»).
   .mo-l — освещённая половина (справа у растущей, слева у убывающей: маска по --dir).
   Терминатор — полуэллипс с полуосью r·|1−2k|, k = освещённость: у горбатой Луны он светлый (.mo-g) и добавляет свет
   на тёмной половине, у серпа тёмный (.mo-c) и съедает свет на светлой. Текстура не отражается — отражается только маска. */
.mo{--k:calc(var(--illum,50) / 100);--rx:calc(50% * max(1 - 2 * var(--k), 2 * var(--k) - 1));--s:132px;position:relative;display:inline-block;flex:none;width:var(--s);height:var(--s);border-radius:50%;isolation:isolate;vertical-align:middle;box-shadow:0 0 calc(var(--s) * var(--k) * .35) calc(var(--s) * var(--k) * .02) #f3d79e3d}
.mo:before,.mo i{content:'';position:absolute;inset:0;border-radius:50%;background:url(/assets/img/moon-160.webp) center/100% 100% no-repeat}
.mo:before{background:linear-gradient(#16113acc,#0d0a26de),url(/assets/img/moon-160.webp) center/100% 100% no-repeat}
.mo:after{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 50%,transparent 58%,#0a061c55 100%);box-shadow:inset 0 0 0 1px #f3d79e1f;pointer-events:none}
.mo .mo-l{opacity:clamp(0,var(--illum,50),1);-webkit-mask:linear-gradient(calc(90deg * var(--dir,1)),transparent calc(50% - .7px),#000 calc(50% + .7px));mask:linear-gradient(calc(90deg * var(--dir,1)),transparent calc(50% - .7px),#000 calc(50% + .7px))}
.mo .mo-g,.mo .mo-c{-webkit-mask:radial-gradient(max(var(--rx),.4%) 50% at 50% 50%,#000 calc(100% - 1.4px),transparent 100%);mask:radial-gradient(max(var(--rx),.4%) 50% at 50% 50%,#000 calc(100% - 1.4px),transparent 100%)}
.mo .mo-g{opacity:clamp(0,(var(--illum,50) - 50) * 100,1)}
.mo .mo-c{background:linear-gradient(#16113acc,#0d0a26de),url(/assets/img/moon-160.webp) center/100% 100% no-repeat;opacity:clamp(0,(50 - var(--illum,50)) * 100,1)}
.mo.mt-orb,.mo.lg{--s:230px}
.mo.mt-orb:before,.mo.mt-orb i,.mo.lg:before,.mo.lg i{background-image:url(/assets/img/moon.webp)}
.mo.mt-orb:before,.mo.mt-orb .mo-c,.mo.lg:before,.mo.lg .mo-c{background:linear-gradient(#16113acc,#0d0a26de),url(/assets/img/moon.webp) center/100% 100% no-repeat}
.mo.md{--s:76px}.mo.sm{--s:42px}.mo.xs{--s:22px}
.mo.xs:after{box-shadow:inset 0 0 0 1px #f3d79e33}
/* затмения: лунное — полная Луна в красной тени Земли, солнечное — тёмный диск с золотой короной */
.mo-ecl{display:inline-flex;flex:none;border-radius:50%}
.mo-ecl.is-lunar .mo{filter:sepia(.6) saturate(2.4) hue-rotate(-28deg) brightness(.8)}
.mo-ecl.is-solar .mo{box-shadow:0 0 0 2px #ffe6a8,0 0 14px 4px #f3d79ecc,0 0 34px 10px #e3b46566}
.mo-ecl.is-solar .mo.xs{box-shadow:0 0 0 1px #ffe6a8,0 0 6px 2px #f3d79ecc}

/* ---------- заголовки: eyebrow со звёздами, курсив с градиентом ---------- */
.mn-page main>h1{text-align:center;max-width:820px;margin:10px auto 8px;text-wrap:balance}
.mn-page main>h1 em,main h2.mn-h em{font-style:italic;background:var(--mn-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;padding-right:.06em}
.mn-page main>h1 em{background:linear-gradient(90deg,#f3d79e,#ffe9c2 45%,#bba8ff);-webkit-background-clip:text;background-clip:text}
.mn-eyebrow{display:flex;justify-content:center;align-items:center;gap:12px;margin:0 0 14px;font:600 12px/1.35 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--moon);text-align:center}
.mn-eyebrow:before,.mn-eyebrow:after{content:'';flex:none;width:18px;height:18px;background:url(/assets/img/star-gold.webp) center/contain no-repeat;filter:drop-shadow(0 0 6px #f3d79e88)}
main h2.mn-h{text-align:center;max-width:780px;margin:0 auto 34px;padding-top:0;font-size:clamp(28px,3.8vw,44px);line-height:1.12;text-wrap:balance}
main h2.mn-h:before,main h2.mn-h:after{content:none}
.mn-block{margin-top:92px}
.mn-block>.mn-eyebrow+h2.mn-h{margin-top:0}
.mn-divider{display:block;width:min(340px,70%);height:auto;margin:64px auto;opacity:.85}
.mn-cta,.mn-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:34px 0 0;text-align:center}
.mn-nav{margin-top:44px}.mn-nav .btn{margin-top:0}
.mn-note{text-align:center;max-width:640px;margin:18px auto 0}

/* лид без карточки: Playfair, по центру */
.mn-lead{max-width:720px;margin:26px auto 0;text-align:center;font:400 clamp(18.5px,2vw,21px)/1.62 var(--display);color:#f4ecdb}
.mn-lead p{margin:0 0 14px;color:inherit}
.mn-lead a{color:var(--moon)}
.mn-lead p:not(:only-child){text-align:left}

/* разделы с гравюрой у заголовка */
.mn-sec{margin-top:72px}
main h2.mn-sec-h{position:relative;display:flex;align-items:center;min-height:76px;margin:0 0 18px;padding:0 0 0 94px}
main h2.mn-sec-h:before,main h2.mn-sec-h:after{content:none}
main h2.mn-sec-h img{position:absolute;left:0;top:50%;width:76px;height:76px;transform:translateY(-50%);object-fit:contain;filter:drop-shadow(0 10px 22px #040210aa) drop-shadow(0 0 18px #7b62ff40)}

/* ---------- «Луна сегодня»: живой блок ---------- */
.mt-live{margin:18px 0 0}
.mt-now{text-align:center}
.mt-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;max-width:800px;margin:30px auto 0}
.mt-hero:before{content:'';position:absolute;z-index:-1;left:50%;top:50%;width:min(620px,110%);aspect-ratio:1;transform:translate(-50%,-50%);background:radial-gradient(closest-side,#7b62ff2e,#f3d79e0d 55%,transparent);pointer-events:none}
.mt-hero .mt-orb{justify-self:center;box-shadow:0 0 calc(var(--k) * 90px) calc(var(--k) * 6px) #f3d79e40,0 30px 60px -20px #040210}
.mt-mid{display:grid;justify-items:center;gap:8px;min-width:200px}
.mt-day{margin:0;font:italic 400 21px/1.2 var(--display);color:#e9e1f7}
.mt-day b{display:block;margin-bottom:2px;font:500 clamp(84px,10vw,112px)/.95 var(--display);font-style:normal;font-variant-numeric:lining-nums;background:var(--mn-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 0 22px #f3d79e40)}
.mt-sym{margin:4px 0 0;font:600 12px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--moon)}
.mt-medal{justify-self:center;display:block;border-radius:50%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.mt-medal img{display:block;width:230px;height:auto;border-radius:50%;filter:drop-shadow(0 18px 34px #04021099) drop-shadow(0 0 26px #7b62ff55)}
.mt-medal:hover{transform:translateY(-4px) rotate(-3deg)}
.mt-since{margin:26px auto 0;max-width:600px;color:var(--muted);font-size:15.5px;line-height:1.5}
.mt-since span:before{content:' · '}
.mt-facts{list-style:none;padding:0;margin:40px auto 0;display:grid;grid-template-columns:repeat(3,1fr);max-width:760px}
.mt-facts li{display:grid;justify-items:center;align-content:start;gap:6px;padding:4px 14px;text-align:center;background:linear-gradient(#f3d79e00,#f3d79e40,#f3d79e00) right/1px 100% no-repeat}
.mt-facts li:last-child{background:none}
.mt-facts span,.mt-next span,.m-phases span{font:600 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.mt-facts b{font:italic 400 clamp(22px,2.6vw,28px)/1.15 var(--display);color:#fff2d8;text-wrap:balance}
.mt-facts b.mt-num{font:500 clamp(40px,5vw,54px)/1 var(--display);font-style:normal;font-variant-numeric:lining-nums;background:var(--mn-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.mt-facts small{font-size:13.5px;color:var(--faint)}
main .mt-essence{max-width:640px;margin:46px auto 0;font:italic 400 clamp(21px,2.5vw,27px)/1.42 var(--display);color:#fff6e4;text-wrap:balance}
main .mt-essence:before{content:'';display:block;width:min(260px,60%);aspect-ratio:840/173;margin:0 auto 22px;background:url(/assets/img/divider-840.webp) center/contain no-repeat;opacity:.9}
.mt-cta{margin:26px 0 0}
.mt-now h2.mn-h{margin-top:88px}

/* ближайшие фазы и фазы месяца: Луна над датой, без рамок */
.mt-next,.m-phases{list-style:none;padding:0;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:30px 16px;max-width:760px}
.mt-next li,.m-phases li{display:grid;justify-items:center;align-content:start;gap:6px;text-align:center}
.mt-next .mo,.m-phases .mo,.m-phases .mo-ecl{margin-bottom:10px}
.mt-next .mo.sm{--s:64px}
.mt-next b,.m-phases b{font:500 26px/1.1 var(--display);font-variant-numeric:lining-nums;color:#fff2d8}
.mt-next small,.m-phases small{color:var(--faint);font-size:14px;font-variant-numeric:lining-nums}
.m-phases.is-ecl{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}

/* ---------- 30 лунных дней: медальон, номер Playfair, символ и суть ---------- */
.m-days{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 34px}
.m-days a{display:grid;grid-template-columns:38px 62px 1fr;align-items:center;gap:14px;padding:12px 2px;text-decoration:none;color:var(--ink);background:linear-gradient(90deg,#ffffff1c,#ffffff05) bottom/100% 1px no-repeat}
.m-days img{width:62px;height:62px;border-radius:50%;filter:drop-shadow(0 8px 16px #040210aa);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.m-days b{font:500 30px/1 var(--display);font-variant-numeric:lining-nums;color:var(--moon);text-align:right}
.m-days span{display:grid;gap:3px}
.m-days strong{font:500 18px/1.2 var(--display);color:#fff2d8}
.m-days small{font-size:14px;line-height:1.4;color:var(--muted)}
.m-days a:hover strong{color:var(--moon)}.m-days a:hover img{transform:rotate(-8deg) scale(1.06)}
.m-days li.is-now a{background:radial-gradient(60% 120% at 0% 50%,#f3d79e1f,transparent 70%),linear-gradient(90deg,#f3d79e66,#ffffff05) bottom/100% 1px no-repeat}
.m-days li.is-now img{filter:drop-shadow(0 0 16px #f3d79eaa)}
.m-days li.is-now strong:after{content:'сегодня';margin-left:10px;padding:2px 8px;border-radius:9px;font:700 10px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#231a0a;background:var(--moon);vertical-align:3px}

/* ---------- хаб: лента фаз, месяцы, год по новолуниям и полнолуниям ---------- */
.mn-cycle{display:flex;justify-content:center;align-items:center;gap:clamp(8px,2vw,22px);margin:22px auto 6px}
.mn-cycle .mo{--s:clamp(30px,6vw,58px)}
.mn-cycle .c4{--s:clamp(46px,9vw,92px)}
.mn-cycle .c3,.mn-cycle .c5{--s:clamp(38px,7.4vw,74px)}
h3.mn-year,h3.mn-sub{margin:34px 0 14px;text-align:center;font:500 30px/1 var(--display);font-variant-numeric:lining-nums;color:var(--moon)}
h3.mn-sub{font-size:24px;font-style:italic;margin-top:46px}
.m-months{list-style:none;padding:0;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:22px 8px;max-width:780px}
.m-months li{width:122px}
.m-months a{display:grid;justify-items:center;gap:4px;padding:6px 4px;text-decoration:none;color:var(--ink);text-align:center;border-radius:14px;transition:background .3s}
.m-months .mo{margin-bottom:8px;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.m-months b{font:500 21px/1.15 var(--display)}
.m-months small{font-size:13px;color:var(--faint);font-variant-numeric:lining-nums}
.m-months a:hover{background:#f3d79e0d}.m-months a:hover b{color:var(--moon)}.m-months a:hover .mo{transform:rotate(-14deg) scale(1.08)}
.m-year{list-style:none;padding:0;margin:0 auto;max-width:620px}
.m-year li{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;align-items:baseline;padding:10px 4px;background:linear-gradient(90deg,#ffffff05,#ffffff1c,#ffffff05) bottom/100% 1px no-repeat}
.m-year li>span:not(.m-y-m){text-align:center}
.m-year .m-y-m{font:500 19px var(--display)}
.m-year .m-y-m a{color:var(--ink);text-decoration:none}.m-year .m-y-m a:hover{color:var(--moon)}
.m-year b{font:500 22px/1 var(--display);font-variant-numeric:lining-nums;color:#fff2d8}
.m-year small{color:var(--faint);font-size:13px;font-variant-numeric:lining-nums}
.m-year .m-y-head{align-items:center;padding-bottom:14px}
.m-year .m-y-head span{display:flex;flex-direction:column;align-items:center;gap:8px;font:600 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.m-year .m-y-head .mo{--s:34px}

/* ---------- таблица месяца: настоящая таблица, а не карточки seo.css (main table) ---------- */
.m-table-wrap{margin:0 0 10px}
main table.m-table{display:table;width:100%;margin:0;border-collapse:collapse;font-size:15px}
main table.m-table thead{position:static;width:auto;height:auto;overflow:visible;clip-path:none;display:table-header-group}
main table.m-table tbody{display:table-row-group}
main table.m-table tr{display:table-row;padding:0;border-radius:0;background:none;box-shadow:none;transition:background .2s}
main table.m-table tr:hover{transform:none;box-shadow:none;background:rgba(255,255,255,.03)}
main table.m-table th,main table.m-table td{display:table-cell;padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font:inherit;color:var(--ink);white-space:normal}
main table.m-table th:before{content:none}
main table.m-table thead th{padding-bottom:12px;color:var(--muted);font:600 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;border-bottom-color:#f3d79e40}
main table.m-table tbody th{width:64px;white-space:nowrap}
main table.m-table tbody th b{font:500 24px/1 var(--display);font-variant-numeric:lining-nums;color:#fff2d8}
main table.m-table tbody th small{display:inline-block;margin-left:6px;font:600 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}
main table.m-table tr.m-we th small{color:var(--moon)}
main table.m-table small{color:var(--muted);font-size:12.5px;font-variant-numeric:lining-nums}
main table.m-table td>small{margin-left:-2px}
/* номер лунного дня — круглая кнопка в золотом кольце, ведёт на сны этого дня */
main table.m-table .m-dn{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 6px;margin:2px 6px 2px 0;border-radius:17px;font:500 17px/1 var(--display);font-variant-numeric:lining-nums;color:var(--moon);text-decoration:none;background:#f3d79e0f;box-shadow:inset 0 0 0 1px #f3d79e55;transition:background .2s,color .2s,box-shadow .2s}
main table.m-table .m-dn:hover{color:#231a0a;background:var(--moon);box-shadow:0 0 16px #f3d79e77}
.m-ph,.m-sg{display:flex;align-items:center;gap:10px}
.m-ph+.m-ph{margin-top:8px}
.m-ph b{font-weight:600;color:#fff2d8}
.m-z{flex:none;width:26px;height:26px;border-radius:50%;filter:drop-shadow(0 3px 8px #040210aa)}
main table.m-table tr.m-ev{background:linear-gradient(90deg,#f3d79e14,#f3d79e05)}
main table.m-table tr.m-ev .mo.xs{--s:30px}
main table.m-table tr.m-today{background:linear-gradient(90deg,#f3d79e2e,#f3d79e0a);box-shadow:inset 3px 0 0 var(--moon)}
main table.m-table tr.m-today th b{color:var(--moon)}
main table.m-table tr.m-today th:after{content:'сегодня';display:block;width:max-content;margin-top:5px;padding:2px 7px;border-radius:8px;font:700 9.5px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#231a0a;background:var(--moon)}

/* ---------- телефон ---------- */
@media (max-width:760px){
 .mt-hero{grid-template-columns:1fr 1fr;grid-template-areas:'orb medal' 'mid mid';gap:12px 10px}
 .mt-hero .mt-orb{grid-area:orb;--s:min(150px,40vw)}
 .mt-medal{grid-area:medal}.mt-medal img{width:min(150px,40vw)}
 .mt-mid{grid-area:mid;min-width:0;margin-top:6px}
}
@media (max-width:640px){
 .mn-block{margin-top:68px}.mn-sec{margin-top:56px}.mn-divider{margin:48px auto}
 main h2.mn-h{margin-bottom:26px}
 main h2.mn-sec-h{min-height:56px;padding-left:68px}main h2.mn-sec-h img{width:54px;height:54px}
 .mt-day b{font-size:80px}
 .mt-facts{margin-top:28px}
 .mt-facts li{padding:2px 6px;gap:4px}
 .mt-facts span{font-size:9.5px;letter-spacing:.12em}
 .mt-facts b{font-size:18px}.mt-facts b.mt-num{font-size:34px}
 .mt-facts small{font-size:12px;line-height:1.3}
 .mn-eyebrow{gap:8px;font-size:10.5px;letter-spacing:.14em;text-wrap:balance}.mn-eyebrow:before,.mn-eyebrow:after{width:14px;height:14px}
 .mt-since{font-size:14.5px}
 .mt-next,.m-phases{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 10px}
 .m-phases.is-ecl{grid-template-columns:1fr}
 .mt-next .mo.sm{--s:54px}.m-phases .mo.md{--s:64px}
 .m-days{grid-template-columns:1fr}
 .m-days a{grid-template-columns:30px 52px 1fr;gap:10px}.m-days img{width:52px;height:52px}.m-days b{font-size:26px}
 .mn-cycle .c1,.mn-cycle .c7{display:none}
 .m-months{gap:16px 4px}.m-months li{width:calc((100% - 8px) / 3)}.m-months small span{display:block;white-space:nowrap}.m-months b{font-size:18px}.m-months .mo.sm{--s:34px}
 .m-year li{grid-template-columns:1fr 1fr 1fr;gap:6px}.m-year .m-y-m{font-size:17px}.m-year b{font-size:19px}
 .mn-nav .btn{flex:1 1 100%;justify-content:center}
 /* таблица: четыре колонки в ширину телефона — мелкий декор (знак, Луна у обычных дней, время событий отдельно) прячем */
 main table.m-table{font-size:13.5px}
 main table.m-table th,main table.m-table td{padding:9px 4px}
 main table.m-table thead th{font-size:9.5px;letter-spacing:.08em}
 main table.m-table tbody th{width:auto}
 main table.m-table tbody th b{font-size:20px}
 main table.m-table tbody th small{display:block;margin:3px 0 0}
 main table.m-table td.m-ld{white-space:nowrap}
 main table.m-table .m-dn{min-width:27px;height:27px;padding:0 4px;font-size:14px;margin:1px 2px 1px 0}
 main table.m-table td>small{display:block;margin:2px 0 0}
 .m-z,main table.m-table tr:not(.m-ev) .m-ph .mo{display:none}
 .m-ph,.m-sg{gap:6px}
 main table.m-table tr.m-ev .mo.xs{--s:22px}
}
