/* Kalendorius365 daily horoscope module. Lato and brand tokens come from the shared design system. */
.homepage-app .horoscope-teaser {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr) auto;
  align-items: center;
  gap: 15px;
  margin: 0 0 14px;
  padding: 13px 17px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--border) 76%, #006a44);
  border-radius: 17px;
  color: var(--ink);
  background: linear-gradient(112deg, color-mix(in srgb, #e9f1e9 76%, var(--panel)), var(--panel) 66%);
  box-shadow: 0 5px 18px #152f220d;
}
.horoscope-teaser__art { display: grid; width: 70px; height: 70px; place-items: center; border-radius: 50%; background: #0c624c; box-shadow: inset 0 0 0 1px #ffffff38; }
.horoscope-teaser__art img { display: block; width: 64px; height: 64px; }
.horoscope-teaser__copy { min-width: 0; }
.horoscope-teaser__copy .horoscope-kicker { margin: 0 0 2px; }
.horoscope-teaser__copy h2 { margin: 0; font-size: 1.02rem; letter-spacing: -.025em; line-height: 1.2; }
.horoscope-teaser__copy > p:last-child { margin: 4px 0 0; color: var(--muted); font-size: .75rem; line-height: 1.4; }
.horoscope-teaser__copy time { color: var(--ink); font-weight: 700; }
.horoscope-teaser__link { display: inline-flex; min-height: 43px; align-items: center; justify-content: center; gap: 10px; padding: 0 15px; border: 1px solid #006a44; border-radius: 11px; color: #fff; background: #006a44; font-size: .78rem; font-weight: 750; text-decoration: none; transition: background-color 150ms ease, transform 150ms ease; }
.horoscope-teaser__link:hover { transform: translateY(-1px); background: #07583f; }
.horoscope-teaser__link:focus-visible,.horoscope-card__link:focus-visible,.horoscope-sign-link:focus-visible { outline: 3px solid #bf8c2c; outline-offset: 3px; }
[data-theme="dark"] .homepage-app .horoscope-teaser { background: linear-gradient(112deg, color-mix(in srgb, #214c39 35%, var(--panel)), var(--panel) 68%); }

.horoscope-app .content-main { max-width: 1320px; }
.horoscope-hub,.horoscope-detail { --horoscope-ink: var(--ink, #172236); --horoscope-muted: var(--muted, #5b6880); --horoscope-panel: var(--panel, #fff); --horoscope-border: var(--border, #dce4ec); color: var(--horoscope-ink); font-family: var(--font-ui, Lato, Arial, sans-serif); }
.horoscope-hub { display: grid; gap: 20px; max-width: 1220px; margin-inline: auto; padding-bottom: 26px; }
.horoscope-hub-hero { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 26px; align-items: center; min-height: 250px; position: relative; overflow: hidden; padding: clamp(23px, 4vw, 45px); border: 1px solid #214a4238; border-radius: 24px; color: #fff; background: radial-gradient(circle at 75% 45%, #d1aa5630, transparent 34%), linear-gradient(112deg, #093e36, #10283a 71%, #172c37); box-shadow: 0 12px 32px #10283a1c; }
.horoscope-hub-hero::after { position: absolute; right: 11%; bottom: -94px; width: 245px; height: 245px; border: 1px solid #edddb037; border-radius: 50%; content: ""; pointer-events: none; }
.horoscope-hub-hero__copy { position: relative; z-index: 1; max-width: 760px; }
.horoscope-kicker { margin: 0 0 8px; color: var(--green, #006a44); font-size: .68rem; font-weight: 800; letter-spacing: .11em; line-height: 1.35; text-transform: uppercase; }
.horoscope-hub-hero .horoscope-kicker,.horoscope-sign-hero .horoscope-kicker { color: #eed18b; }
.horoscope-hub-hero h1 { margin: 0; color: #fff; font-size: clamp(2rem, 4.5vw, 3.6rem); font-weight: 800; letter-spacing: -.055em; line-height: 1.02; }
.horoscope-hub-hero .horoscope-hub-hero__intro { max-width: 660px; margin: 13px 0 16px; color: #edf3ef; font-size: clamp(.94rem, 1.5vw, 1.04rem); line-height: 1.6; }
.horoscope-hub-hero__date { display: inline-grid; gap: 2px; margin: 0; padding: 9px 13px; border: 1px solid #e6dcc534; border-radius: 11px; background: #fff1; }
.horoscope-hub-hero__date span { color: #ead7a9; font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.horoscope-hub-hero__date time { color: #fff; font-size: .84rem; font-weight: 750; }
.horoscope-hub-hero__art { position: relative; z-index: 1; display: grid; justify-items: center; gap: 8px; }
.horoscope-hub-hero__art img { width: 180px; height: 180px; filter: drop-shadow(0 10px 18px #0003); }
.horoscope-hub-hero__art div { display: grid; gap: 2px; justify-items: center; text-align: center; }
.horoscope-hub-hero__art strong { color: #f8e8bc; font-size: .9rem; }
.horoscope-hub-hero__art span { color: #e6eeeb; font-size: .68rem; }
.horoscope-hub-intro { padding: 14px 18px; border: 1px solid var(--horoscope-border); border-left: 3px solid #b88a39; border-radius: 12px; color: var(--horoscope-muted); background: var(--horoscope-panel); font-size: .86rem; line-height: 1.6; }
.horoscope-hub-intro p { margin: 0; }
.horoscope-hub-intro strong { color: var(--horoscope-ink); }
.horoscope-editorial-note { display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: start; gap: 11px; margin: 0; padding: 13px 16px; border: 1px solid #e7d7ae; border-radius: 13px; color: #596276; background: color-mix(in srgb, #fff7e5 82%, var(--horoscope-panel)); font-size: .78rem; line-height: 1.55; }
.horoscope-editorial-note__icon { display: grid; width: 27px; height: 27px; place-items: center; border: 1px solid #d2b775; border-radius: 50%; color: #805d19; background: #fffdf8; font-size: .82rem; font-weight: 800; }
.horoscope-app .horoscope-editorial-note p { margin: 0; color: #4f5350; }
.horoscope-editorial-note strong,.horoscope-editorial-note time { color: var(--horoscope-ink); }
[data-theme="dark"] .horoscope-app .horoscope-editorial-note { border-color: #596347; color: #d8e1dc; background: #26322d; }
[data-theme="dark"] .horoscope-app .horoscope-editorial-note p { color: #d8e1dc; }
[data-theme="dark"] .horoscope-app .horoscope-editorial-note strong,
[data-theme="dark"] .horoscope-app .horoscope-editorial-note time { color: #f5e4b4; }
[data-theme="dark"] .horoscope-app .horoscope-editorial-note__icon { border-color: #7b6b42; color: #f5e4b4; background: #34362d; }
.horoscope-card__heading,.horoscope-lead .horoscope-kicker { color: color-mix(in srgb, var(--sign-accent) 90%, #000); }
[data-theme="dark"] .horoscope-app .horoscope-card__heading,
[data-theme="dark"] .horoscope-app .horoscope-lead .horoscope-kicker { color: color-mix(in srgb, var(--sign-accent) 42%, #fff); }
.horoscope-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 11px; }
.horoscope-section-heading .horoscope-kicker { margin-bottom: 3px; }
.horoscope-section-heading h2 { margin: 0; color: var(--horoscope-ink); font-size: clamp(1.15rem, 2vw, 1.45rem); letter-spacing: -.035em; line-height: 1.2; }
.horoscope-section-heading > time,.horoscope-directory__count { color: var(--horoscope-muted); font-size: .75rem; }
.horoscope-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.horoscope-card { min-width: 0; border: 1px solid var(--horoscope-border); border-radius: 16px; background: var(--horoscope-panel); box-shadow: 0 3px 12px #152c1f08; transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.horoscope-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--sign-accent) 50%, var(--horoscope-border)); box-shadow: 0 9px 22px #152c1f14; }
.horoscope-card__link { display: grid; min-height: 172px; grid-template-columns: 61px minmax(0, 1fr); align-items: start; gap: 12px; padding: 15px; border-radius: inherit; color: inherit; text-decoration: none; }
.horoscope-card__mark { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 15px; background: color-mix(in srgb, var(--sign-accent) 9%, var(--horoscope-panel)); }
.zodiac-mark { display: block; width: 56px; height: 56px; flex: none; }
.horoscope-card__content { display: grid; min-width: 0; gap: 5px; }
.horoscope-card__eyebrow { color: var(--horoscope-muted); font-size: .63rem; font-weight: 650; line-height: 1.35; }
.horoscope-card__title { color: var(--horoscope-ink); font-size: 1.04rem; font-weight: 800; letter-spacing: -.025em; line-height: 1.2; }
.horoscope-card__heading { font-size: .75rem; font-weight: 750; line-height: 1.35; }
.horoscope-card__excerpt { color: var(--horoscope-muted); font-size: .74rem; line-height: 1.5; }
.horoscope-card__cta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 3px; padding-top: 8px; border-top: 1px solid color-mix(in srgb, var(--horoscope-border) 70%, transparent); color: var(--green, #006a44); font-size: .68rem; font-weight: 750; }
.horoscope-about { padding: clamp(17px, 2.6vw, 25px); border: 1px solid var(--horoscope-border); border-radius: 17px; background: color-mix(in srgb, #edf3ef 58%, var(--horoscope-panel)); }
.horoscope-about h2 { margin: 0 0 9px; font-size: 1.16rem; letter-spacing: -.03em; }
.horoscope-about p:not(.horoscope-kicker) { max-width: 950px; margin: 8px 0 0; color: var(--horoscope-muted); font-size: .83rem; line-height: 1.65; }
[data-theme="dark"] .horoscope-app .horoscope-about { background: var(--horoscope-panel); }
.horoscope-related { display: flex; flex-wrap: wrap; gap: 8px; }
.horoscope-related a { display: inline-flex; min-height: 36px; align-items: center; padding: 0 12px; border: 1px solid var(--horoscope-border); border-radius: 999px; color: var(--horoscope-ink); background: var(--horoscope-panel); font-size: .72rem; font-weight: 650; text-decoration: none; }
.horoscope-related a:hover { border-color: var(--green, #006a44); color: var(--green, #006a44); }
.horoscope-disclaimer { margin: 0; padding: 11px 13px; border-top: 1px solid var(--horoscope-border); color: var(--horoscope-muted); font-size: .72rem; line-height: 1.55; }

.horoscope-detail { display: grid; gap: 20px; max-width: 1040px; margin-inline: auto; padding-bottom: 28px; }
.horoscope-sign-hero { display: grid; grid-template-columns: 124px minmax(0, 1fr); gap: 23px; align-items: center; min-height: 205px; position: relative; overflow: hidden; padding: clamp(22px, 4vw, 39px); border: 1px solid #214a4238; border-radius: 23px; color: #fff; background: radial-gradient(circle at 79% 42%, color-mix(in srgb, var(--sign-accent) 28%, transparent), transparent 35%), linear-gradient(112deg, #0b4339, #142b3b 74%, #172e39); box-shadow: 0 11px 30px #10283a18; }
.horoscope-sign-hero::after { position: absolute; right: 4%; bottom: -105px; width: 230px; height: 230px; border: 1px solid #edddb033; border-radius: 50%; content: ""; pointer-events: none; }
.horoscope-sign-hero__art { display: grid; width: 116px; height: 116px; position: relative; place-items: center; border: 1px solid #f3e8d14a; border-radius: 50%; background: #fff1; }
.horoscope-sign-hero__art .zodiac-mark { width: 96px; height: 96px; }
.horoscope-sign-hero__copy { position: relative; z-index: 1; min-width: 0; }
.horoscope-sign-hero h1 { margin: 0; color: #fff; font-size: clamp(1.65rem, 3.7vw, 2.7rem); font-weight: 800; letter-spacing: -.05em; line-height: 1.08; }
.horoscope-sign-hero__copy .horoscope-sign-hero__date { margin: 8px 0 0; color: #e7edea; font-size: .81rem; font-weight: 650; }
.horoscope-sign-hero__copy .horoscope-sign-hero__heading { margin: 13px 0 0; color: #f8e5ae; font-size: clamp(.91rem, 1.5vw, 1.08rem); font-weight: 700; line-height: 1.45; }
.horoscope-body-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.horoscope-lead { grid-column: 1 / -1; padding: clamp(17px, 3vw, 25px); border: 1px solid color-mix(in srgb, var(--sign-accent) 34%, var(--horoscope-border)); border-radius: 17px; background: color-mix(in srgb, var(--sign-accent) 6%, var(--horoscope-panel)); }
.horoscope-lead h2 { max-width: 880px; margin: 0; color: var(--horoscope-ink); font-size: clamp(1.22rem, 2.35vw, 1.75rem); font-weight: 750; letter-spacing: -.035em; line-height: 1.38; }
.horoscope-reading { min-width: 0; position: relative; padding: 18px 19px 19px; border: 1px solid var(--horoscope-border); border-radius: 15px; background: var(--horoscope-panel); }
.horoscope-reading h2 { margin: 0 0 8px; color: var(--horoscope-ink); font-size: .98rem; letter-spacing: -.02em; }
.horoscope-reading p { margin: 0; color: var(--horoscope-muted); font-size: .85rem; line-height: 1.68; }
.horoscope-reading__index { position: absolute; top: 15px; right: 17px; color: color-mix(in srgb, var(--sign-accent) 45%, var(--horoscope-border)); font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.horoscope-tip { display: grid; grid-template-columns: 145px minmax(0, 1fr); align-items: center; gap: 12px; grid-column: 1 / -1; padding: 15px 18px; border-radius: 14px; color: #fff; background: #075a43; }
.horoscope-tip__label { color: #f4d78e; font-size: .7rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.horoscope-tip p { margin: 0; color: #fff; font-size: .85rem; font-weight: 650; line-height: 1.55; }
.horoscope-profile { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 14px; padding: 17px 19px; border: 1px solid var(--horoscope-border); border-radius: 16px; background: var(--horoscope-panel); }
.horoscope-profile__symbol { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 14px; background: color-mix(in srgb, var(--sign-accent) 9%, var(--horoscope-panel)); }
.horoscope-profile__symbol .zodiac-mark { width: 54px; height: 54px; }
.horoscope-profile h2 { margin: 0 0 4px; font-size: 1.02rem; }
.horoscope-profile p:not(.horoscope-kicker) { max-width: 780px; margin: 0; color: var(--horoscope-muted); font-size: .78rem; line-height: 1.55; }
.horoscope-profile .horoscope-kicker { margin-bottom: 3px; }
.horoscope-sign-selector { padding-top: 3px; }
.horoscope-sign-links { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 7px; }
.horoscope-sign-link { display: flex; min-width: 0; min-height: 47px; align-items: center; gap: 7px; padding: 5px 8px; border: 1px solid var(--horoscope-border); border-radius: 11px; color: var(--horoscope-ink); background: var(--horoscope-panel); font-size: .7rem; font-weight: 700; text-decoration: none; }
.horoscope-sign-link:hover,.horoscope-sign-link[aria-current="page"] { border-color: color-mix(in srgb, var(--sign-accent) 50%, var(--horoscope-border)); background: color-mix(in srgb, var(--sign-accent) 7%, var(--horoscope-panel)); }
.horoscope-sign-link__mark { display: grid; width: 30px; height: 30px; flex: none; place-items: center; border-radius: 8px; background: color-mix(in srgb, var(--sign-accent, #006a44) 8%, var(--horoscope-panel)); }
.horoscope-sign-link .zodiac-mark { width: 29px; height: 29px; }

@media (max-width: 1050px) {
  .horoscope-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .horoscope-sign-links { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .horoscope-hub-hero { grid-template-columns: minmax(0, 1fr) 220px; }
  .horoscope-hub-hero__art img { width: 150px; height: 150px; }
}
@media (max-width: 760px) {
  .homepage-app .horoscope-teaser { grid-template-columns: 60px minmax(0, 1fr); gap: 10px; padding: 11px; }
  .horoscope-teaser__art { width: 58px; height: 58px; }
  .horoscope-teaser__art img { width: 54px; height: 54px; }
  .horoscope-teaser__link { grid-column: 2; justify-self: start; min-height: 38px; }
  .horoscope-hub-hero { grid-template-columns: minmax(0, 1fr) 155px; gap: 10px; }
  .horoscope-hub-hero__art img { width: 124px; height: 124px; }
  .horoscope-sign-hero { grid-template-columns: 93px minmax(0, 1fr); gap: 15px; min-height: 170px; }
  .horoscope-sign-hero__art { width: 90px; height: 90px; }
  .horoscope-sign-hero__art .zodiac-mark { width: 75px; height: 75px; }
  .horoscope-sign-links { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .homepage-app .horoscope-teaser { margin-bottom: 10px; border-radius: 14px; }
  .horoscope-teaser__copy h2 { font-size: .96rem; }
  .horoscope-teaser__copy > p:last-child { font-size: .68rem; }
  .horoscope-teaser__link { min-height: 36px; padding-inline: 11px; font-size: .72rem; }
  .horoscope-hub-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 20px; border-radius: 18px; }
  .horoscope-hub-hero__art { grid-template-columns: 66px minmax(0, 1fr); justify-items: start; gap: 9px; }
  .horoscope-hub-hero__art img { width: 64px; height: 64px; }
  .horoscope-hub-hero__art div { justify-items: start; text-align: left; }
  .horoscope-hub-hero__art span { max-width: 190px; }
  .horoscope-hub-intro { padding: 12px 13px; font-size: .78rem; }
  .horoscope-editorial-note { grid-template-columns: 26px minmax(0, 1fr); gap: 8px; padding: 10px; font-size: .71rem; }
  .horoscope-editorial-note__icon { width: 24px; height: 24px; }
  .horoscope-section-heading { align-items: start; }
  .horoscope-card-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .horoscope-card__link { min-height: 0; grid-template-columns: 50px minmax(0, 1fr); gap: 10px; padding: 11px; }
  .horoscope-card__mark { width: 49px; height: 49px; border-radius: 13px; }
  .horoscope-card__mark .zodiac-mark { width: 47px; height: 47px; }
  .horoscope-card__eyebrow { font-size: .61rem; }
  .horoscope-card__title { font-size: .98rem; }
  .horoscope-card__excerpt { font-size: .72rem; }
  .horoscope-about { padding: 14px; }
  .horoscope-about p:not(.horoscope-kicker) { font-size: .77rem; }
  .horoscope-related { gap: 6px; }
  .horoscope-related a { min-height: 33px; font-size: .67rem; }
  .horoscope-sign-hero { grid-template-columns: 70px minmax(0, 1fr); gap: 11px; min-height: 145px; padding: 15px; border-radius: 17px; }
  .horoscope-sign-hero__art { width: 68px; height: 68px; }
  .horoscope-sign-hero__art .zodiac-mark { width: 59px; height: 59px; }
  .horoscope-sign-hero h1 { font-size: clamp(1.3rem, 6vw, 1.72rem); overflow-wrap: anywhere; }
  .horoscope-sign-hero__copy .horoscope-kicker { font-size: .56rem; letter-spacing: .08em; }
  .horoscope-sign-hero__date { margin-top: 5px; font-size: .71rem; }
  .horoscope-sign-hero__heading { margin-top: 7px; font-size: .78rem; }
  .horoscope-body-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .horoscope-lead { grid-column: 1; padding: 15px; }
  .horoscope-lead h2 { font-size: 1.13rem; }
  .horoscope-reading { padding: 15px; }
  .horoscope-reading h2 { font-size: .93rem; }
  .horoscope-reading p { font-size: .8rem; }
  .horoscope-tip { grid-template-columns: minmax(0, 1fr); grid-column: 1; gap: 5px; padding: 13px 15px; }
  .horoscope-tip p { font-size: .81rem; }
  .horoscope-profile { grid-template-columns: 50px minmax(0, 1fr); gap: 10px; padding: 12px; }
  .horoscope-profile__symbol { width: 48px; height: 48px; border-radius: 12px; }
  .horoscope-profile__symbol .zodiac-mark { width: 44px; height: 44px; }
  .horoscope-profile p:not(.horoscope-kicker) { font-size: .72rem; }
  .horoscope-sign-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .horoscope-sign-link { min-height: 43px; padding: 4px 6px; font-size: .67rem; }
  .horoscope-sign-link__mark { width: 29px; height: 29px; }
  .horoscope-disclaimer { font-size: .68rem; }
}
@media (max-width: 355px) {
  .homepage-app .horoscope-teaser { grid-template-columns: 48px minmax(0, 1fr); gap: 8px; padding: 9px; }
  .horoscope-teaser__art { width: 47px; height: 47px; }
  .horoscope-teaser__art img { width: 44px; height: 44px; }
  .horoscope-teaser__link { max-width: 100%; font-size: .67rem; }
  .horoscope-sign-hero { grid-template-columns: 58px minmax(0, 1fr); gap: 9px; padding: 12px; }
  .horoscope-sign-hero__art { width: 56px; height: 56px; }
  .horoscope-sign-hero__art .zodiac-mark { width: 50px; height: 50px; }
  .horoscope-sign-hero h1 { font-size: 1.2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .horoscope-teaser__link,.horoscope-card { transition: none; }
  .horoscope-teaser__link:hover,.horoscope-card:hover { transform: none; }
}
@media print {
  .horoscope-teaser,.horoscope-related,.horoscope-sign-selector,.horoscope-editorial-note { display: none !important; }
  .horoscope-hub-hero,.horoscope-sign-hero,.horoscope-tip { color: #111; background: #fff; box-shadow: none; }
  .horoscope-hub-hero h1,.horoscope-sign-hero h1 { color: #111; }
  .horoscope-hub-hero__art { display: none; }
  .horoscope-card,.horoscope-reading,.horoscope-profile,.horoscope-lead { break-inside: avoid; box-shadow: none; }
}
