/* Гороскопы: публичная страница и блок в кабинете */
.horo-hero{padding-bottom:30px}.horo-hero h1{margin-bottom:10px}
.sign-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:30px}
.sign-tile{display:grid;justify-items:center;gap:2px;padding:16px 8px;border-radius:16px;border:1px solid var(--line);background:var(--glass);color:#ece6ff;transition:all .25s var(--ease)}
.sign-tile:hover{border-color:#bba8ff77;transform:translateY(-3px)}
.sign-tile[aria-pressed=true]{border-color:var(--moon);background:linear-gradient(160deg,#f3d79e22,#f3d79e06);box-shadow:0 0 40px -12px var(--moon)}
.sign-g{font-size:30px;line-height:1.2;font-family:'Apple Symbols','Segoe UI Symbol',sans-serif}
.el-fire .sign-g{color:#ffb08f}.el-earth .sign-g{color:#bdf0b0}.el-air .sign-g{color:#bfe2ff}.el-water .sign-g{color:#c2b6ff}
.sign-tile b{font:500 17px var(--display)}.sign-tile small{font-size:11px;color:var(--faint);text-align:center}
.horo-day{display:grid;grid-template-columns:1.3fr .9fr;gap:20px;align-items:start;padding-top:20px}
.horo-card{padding:30px;scroll-margin-top:20px}
.horo-head{display:flex;gap:18px;align-items:center;margin-bottom:10px}
.horo-glyph{font-size:58px;line-height:1;color:var(--moon);font-family:'Apple Symbols','Segoe UI Symbol',sans-serif;text-shadow:0 0 24px #f3d79e88}
.horo-head .eyebrow{margin:0 0 4px}.horo-head h2{margin:0;font-size:clamp(24px,3vw,34px)}
.horo-text{font:400 19px/1.65 var(--display);color:#f2ead8}
.horo-phase{color:var(--muted);font-size:15px}
.horo-scores,.horo-mini-scores{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}
.horo-scores>div{padding:10px 12px;border-radius:12px;background:#0003;border:1px solid var(--line)}.horo-scores span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.horo-scores .dots{display:inline-flex;gap:4px}.dots i{width:9px;height:9px;border-radius:50%;background:#ffffff1c;display:inline-block}.dots i.on{background:var(--moon);box-shadow:0 0 8px #f3d79e99}
.horo-tips p{margin:8px 0;color:#ddd5f5}.horo-tips b{color:var(--moon);font-weight:600}
.horo-lock{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;padding:14px 16px;border-radius:14px;border:1px dashed #f3d79e55;background:#f3d79e0a}
.horo-lock{color:inherit;text-decoration:none}.horo-lock:hover{border-color:var(--moon)}.horo-lock b{font:500 16px var(--display)}.horo-lock span{color:var(--muted);font-size:13px}
.horo-upsell{padding:28px;position:sticky;top:20px}.horo-upsell h2{font-size:26px;margin:0 0 14px}
.upsell-list{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:12px}.upsell-list b{display:block;font:500 17px var(--display);color:#fff}.upsell-list span{color:var(--muted);font-size:14px}
.horo-upsell .primary{width:100%}
@media(max-width:1000px){.sign-grid{grid-template-columns:repeat(4,1fr)}.horo-day{grid-template-columns:1fr}.horo-upsell{position:static}}
@media(max-width:560px){.sign-grid{grid-template-columns:repeat(3,1fr)}.horo-scores{grid-template-columns:1fr 1fr}.horo-card,.horo-upsell{padding:20px 16px}.horo-glyph{font-size:44px}}
.horo-block .horo-head h3{margin:0;font-size:clamp(20px,2.4vw,26px)}.horo-block .horo-glyph{font-size:46px}.c-card .horo-text{font-size:17px}
/* Гороскоп v2: грани дня, талисманы, сюжет недели, ключевые даты */
.horo-power{font:italic 16px/1.5 var(--display);color:#d9cff7;margin:6px 0 16px}
.horo-facets{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.facet{padding:14px 16px;border-radius:14px;background:#0003;border:1px solid var(--line)}
.facet span{display:block;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--moon);margin-bottom:6px}
.facet p{margin:0;font-size:15px;line-height:1.5;color:#ece6ff}
.facet.love{border-color:#ff9fc044}.facet.love span{color:#ffb3c4}.facet.work span{color:#bfe2ff}.facet.avoid{border-style:dashed}.facet.avoid span{color:var(--muted)}
.horo-lucky{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 16px}
.horo-lucky>div{padding:10px 12px;border-radius:12px;background:linear-gradient(160deg,#f3d79e14,#0002);border:1px solid #f3d79e33}
.horo-lucky small{display:block;font-size:11px;color:var(--muted)}.horo-lucky b{font:500 16px var(--display);color:var(--moon)}
.horo-ahead{display:grid;grid-template-columns:1fr 1fr;gap:10px}.horo-ahead .horo-lock{display:grid;gap:4px;margin-top:8px}.horo-ahead small{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--moon)}
.week-story h3,.month-story h3{margin:0 0 6px}.week-story>p{color:#ddd5f5}
.week-acts{list-style:none;padding:0;margin:16px 0;display:grid;gap:12px}
.week-acts li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.week-acts .node{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--moon);color:var(--moon);font:500 14px var(--display)}
.week-acts small{display:block;font-size:12px;color:var(--muted);text-transform:capitalize}.week-acts strong{font:500 18px var(--display)}.week-acts p{margin:4px 0 0;font-size:14.5px}
.week-picks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
.week-picks>div{padding:12px;border-radius:14px;background:#0003;border:1px solid var(--line);display:grid;gap:3px}
.week-picks small{font-size:11px;color:var(--moon);letter-spacing:1px;text-transform:uppercase}.week-picks b{font:500 15px var(--display)}.week-picks span{font-size:12px;color:var(--muted)}
.key-dates{list-style:none;padding:0;margin:10px 0;display:grid;gap:10px}
.key-dates li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line)}
.key-dates .g{font-size:22px;color:var(--moon);font-family:'Apple Symbols','Segoe UI Symbol',sans-serif}
.key-dates small{display:block;font-size:12px;color:var(--muted)}.key-dates b{font:500 17px var(--display)}.key-dates p{margin:4px 0 0;font-size:14px}
@media(max-width:700px){.horo-facets,.horo-ahead{grid-template-columns:1fr}.horo-lucky,.week-picks{grid-template-columns:1fr 1fr}}

/* Без сдвигов вёрстки: плитки знаков в разметке, карточка дня держит место до отрисовки скриптом. */
ul.sign-grid{list-style:none;padding:0;margin:30px 0 0}.sign-grid>li{display:grid}.sign-grid .sign-tile{width:100%;height:100%}
.horo-card[aria-busy=true]{min-height:960px}
@media(max-width:1000px){.horo-card[aria-busy=true]{min-height:890px}}
@media(max-width:560px){.horo-card[aria-busy=true]{min-height:1560px}}
