:root {
  --sky-ink: #f2eee4;
  --sky-muted: #a9b8bc;
  --sky-line: rgba(211, 226, 220, .18);
  --sky-accent: #e7a36c;
  --sky-bg: #07151d;
  --sky-panel: rgba(10, 31, 38, .86);
}

.my-sky-page { background: #f7f6f2; color: var(--sky-ink); }
.my-sky-main { max-width: var(--page-max, 1200px); margin-inline: auto; padding: 0; }
.my-sky-shell { min-height: 0; padding: clamp(1.2rem, 3vw, 3rem) clamp(1rem, 4vw, 4.5rem) .75rem; background: radial-gradient(circle at 50% 42%, #17343b 0, #0a2028 34%, #07151d 72%); }
.my-sky-heading, .my-sky-controls { max-width: 72rem; margin-inline: auto; }
.my-sky-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.my-sky-kicker { margin: 0; color: var(--sky-accent); font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; }
.my-sky-heading h1 { margin: 0; border: 1px solid rgba(231, 163, 108, .38); border-radius: 999px; background: rgba(23, 52, 59, .62); color: var(--sky-ink); padding: .35rem .75rem; font-family: Georgia, serif; font-size: clamp(.85rem, 1.5vw, 1.05rem); font-weight: 600; line-height: 1.2; white-space: nowrap; }
.my-sky-heading__context { display: flex; align-items: center; gap: .7rem; }
.my-sky-mode { display: flex; gap: .2rem; margin: 0; border: 1px solid rgba(211, 226, 220, .26); padding: .2rem; color: var(--sky-muted); }
.my-sky-mode legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.my-sky-mode label { padding: .3rem .45rem; font-size: .68rem; cursor: pointer; }
.my-sky-mode input { position: absolute; opacity: 0; }
.my-sky-mode label:has(input:checked) { background: rgba(231, 163, 108, .2); color: var(--sky-ink); }
.my-sky-mode label:has(input:focus-visible) { outline: 2px solid var(--sky-accent); outline-offset: 2px; }
.sky-stage { max-width: 76rem; margin: 1rem auto 0; }
.sky-field { position: relative; width: min(100%, 76rem); height: min(74vh, 52rem); min-height: 28rem; overflow: hidden; border: 1px solid rgba(214, 233, 225, .14); background: linear-gradient(145deg, rgba(15, 45, 52, .75), rgba(4, 17, 24, .82)); box-shadow: inset 0 0 8rem rgba(123, 178, 164, .08); }
.sky-rays, .sky-rasi-layer, .sky-graha-layer, .sky-natal-graha-layer, .sky-label-layer, .sky-lagna, .sky-lagna-label, .sky-ambient { position: absolute; inset: 0; }
.sky-ambient { z-index: 0; overflow: hidden; pointer-events: none; background: radial-gradient(ellipse at 24% 35%, rgba(80, 142, 168, .08), transparent 42%), radial-gradient(ellipse at 76% 64%, rgba(111, 79, 145, .06), transparent 38%); animation: sky-ambient-drift 60s ease-in-out infinite alternate; }
.sky-ambient::before, .sky-ambient::after { position: absolute; inset: -8%; content: ""; pointer-events: none; }
.sky-ambient::before { background: radial-gradient(circle at 18% 22%, rgba(226, 239, 232, .22) 0 1px, transparent 1.5px), radial-gradient(circle at 71% 18%, rgba(226, 239, 232, .16) 0 1px, transparent 1.5px), radial-gradient(circle at 43% 78%, rgba(226, 239, 232, .14) 0 1px, transparent 1.5px), radial-gradient(circle at 87% 72%, rgba(226, 239, 232, .18) 0 1px, transparent 1.5px); background-size: 29% 37%, 41% 53%, 47% 61%, 67% 43%; opacity: .42; animation: sky-star-drift 82s ease-in-out infinite alternate; }
.sky-ambient::after { background: radial-gradient(ellipse at 55% 45%, rgba(48, 106, 131, .09), transparent 44%); transform: scale(1.04); animation: sky-haze-drift 72s ease-in-out infinite alternate-reverse; }
.sky-sparkle { position: absolute; width: 2px; height: 2px; border-radius: 50%; pointer-events: none; transform: translate3d(0, 0, 0) scale(.9); }
.sky-sparkle--warm { left: 15%; top: 27%; background: rgba(255, 231, 176, .8); box-shadow: 0 0 5px rgba(255, 220, 148, .28); animation: sky-sparkle-warm 7s ease-in-out -2s infinite; }
.sky-sparkle--cool { left: 82%; top: 23%; background: rgba(185, 220, 236, .72); box-shadow: 0 0 5px rgba(142, 199, 224, .24); animation: sky-sparkle-cool 9s ease-in-out -5s infinite; }
.sky-sparkle--violet { left: 27%; top: 74%; background: rgba(211, 199, 238, .7); box-shadow: 0 0 5px rgba(184, 161, 225, .22); animation: sky-sparkle-violet 11s ease-in-out -7s infinite; }
.sky-sparkle--neutral { left: 74%; top: 78%; background: rgba(231, 235, 224, .68); box-shadow: 0 0 5px rgba(225, 231, 220, .2); animation: sky-sparkle-neutral 13s ease-in-out -10s infinite; }
.sky-rays { z-index: 1; }
.sky-graha-layer { z-index: 3; }
.sky-natal-graha-layer { z-index: 2; }
.sky-ray, .sky-lagna { position: absolute; left: 50%; top: 50%; width: 1px; height: 100%; transform-origin: 0 0; background: var(--sky-line); }
.sky-lagna { z-index: 2; width: 2px; background: var(--sky-accent); box-shadow: 0 0 7px rgba(231, 163, 108, .72), 0 0 17px rgba(184, 57, 48, .28), 0 0 28px rgba(184, 57, 48, .14); }
.sky-lagna-label { z-index: 5; inset: auto; transform: translate(-50%, -50%); color: var(--sky-accent); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.sky-marker, .sky-graha { position: absolute; transform: translate(-50%, -50%); }
.sky-marker { width: clamp(2.5rem, 6vw, 4rem); height: clamp(2.5rem, 6vw, 4rem); object-fit: contain; opacity: .85; }
.sky-graha { display: block; width: clamp(3.4rem, 8vw, 6rem); pointer-events: none; }
.sky-graha img { width: 100%; height: auto; object-fit: contain; }
.sky-graha-artwork { transform-origin: center; animation: sky-graha-breathe 14s ease-in-out infinite; }
.sky-graha--natal .sky-graha-artwork { animation: none; opacity: .62; filter: grayscale(.15) sepia(.2) hue-rotate(205deg) saturate(2.2) drop-shadow(0 0 4px rgba(171, 135, 226, .45)); }
.sky-graha--natal .sky-graha-artwork::after { content: ""; }
.sky-graha--overlap .sky-graha-artwork { transform: translate3d(-3px, 2px, 0); }
.sky-graha-artwork--moon { animation-duration: 12s; animation-delay: -1s; }
.sky-graha-artwork--mercury { animation-duration: 10s; animation-delay: -2.25s; }
.sky-graha-artwork--venus { animation-duration: 12s; animation-delay: -4.5s; }
.sky-graha-artwork--sun { animation-duration: 14s; animation-delay: -6s; }
.sky-graha-artwork--mars { animation-duration: 15s; animation-delay: -7.5s; }
.sky-graha-artwork--jupiter { animation-duration: 16s; animation-delay: -9s; }
.sky-graha-artwork--saturn { animation-duration: 16s; animation-delay: -10.5s; }
.sky-graha-artwork--rahu { animation-duration: 13s; animation-delay: -5.75s; }
.sky-graha-artwork--ketu { animation-duration: 13.5s; animation-delay: -8.25s; }
@keyframes sky-ambient-drift { from { transform: translate3d(-.35%, -.2%, 0) scale(1); } to { transform: translate3d(.35%, .2%, 0) scale(1.025); } }
@keyframes sky-star-drift { from { transform: translate3d(-.25%, .15%, 0); opacity: .34; } to { transform: translate3d(.25%, -.15%, 0); opacity: .48; } }
@keyframes sky-haze-drift { from { transform: translate3d(-.4%, .25%, 0) scale(1.04); } to { transform: translate3d(.4%, -.25%, 0) scale(1.08); } }
@keyframes sky-graha-breathe { 0%, 100% { transform: translate3d(-1.5px, .5px, 0) scale(.99); } 50% { transform: translate3d(1.5px, -.5px, 0) scale(1.01); } }
@keyframes sky-sparkle-warm { 0%, 100% { opacity: .18; transform: translate3d(-1px, .5px, 0) scale(.85); } 62% { opacity: .55; transform: translate3d(1px, -.5px, 0) scale(1.1); } 78% { opacity: .25; } }
@keyframes sky-sparkle-cool { 0%, 100% { opacity: .18; transform: translate3d(1px, 0, 0) scale(.88); } 64% { opacity: .5; transform: translate3d(-1px, 1px, 0) scale(1.08); } 80% { opacity: .24; } }
@keyframes sky-sparkle-violet { 0%, 100% { opacity: .16; transform: translate3d(0, -1px, 0) scale(.86); } 60% { opacity: .48; transform: translate3d(1px, 1px, 0) scale(1.08); } 76% { opacity: .23; } }
@keyframes sky-sparkle-neutral { 0%, 100% { opacity: .17; transform: translate3d(-1px, 0, 0) scale(.87); } 66% { opacity: .46; transform: translate3d(1px, -1px, 0) scale(1.06); } 82% { opacity: .22; } }
.sky-label-layer { z-index: 4; pointer-events: none; }
.sky-graha-label { position: absolute; max-width: 8rem; color: var(--sky-ink); font-size: .78rem; font-weight: 500; line-height: 1.2; text-align: center; text-shadow: 0 1px 3px rgba(0, 0, 0, .75); white-space: nowrap; }
.sky-graha-label--natal { color: #cdb9ef; }
.sky-observer { --observer-mark-size: 2.75rem; position: absolute; left: 50%; top: 50%; z-index: 3; width: 0; height: 0; transform: translate(-50%, -50%); color: var(--sky-ink); }
.sky-observer-mark { position: absolute; left: 0; top: 0; width: var(--observer-mark-size); height: var(--observer-mark-size); border: 1px solid rgba(231, 163, 108, .85); border-radius: 50%; background: radial-gradient(circle, rgba(231, 163, 108, .3), transparent 68%); transform: translate(-50%, -50%); }
.sky-observer-label { position: absolute; left: 0; top: calc(var(--observer-mark-size) / 2 + .35rem); transform: translateX(-50%); color: var(--sky-accent); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.sky-state { position: absolute; inset: auto 1rem 1rem; color: var(--sky-muted); text-align: center; }
.sky-birth-lagna-ray { position: absolute; inset: 0; pointer-events: none; color: #d9c8ff; }
.sky-birth-lagna-ray-line { position: absolute; left: 50%; top: 50%; z-index: 2; width: 1px; transform-origin: 0 0; background: #c8a9ff; box-shadow: 0 0 6px rgba(200, 169, 255, .68), 0 0 16px rgba(184, 161, 225, .24); }
.sky-birth-lagna-ray-label { position: absolute; z-index: 5; transform: translate(-50%, -50%); color: #d9c8ff; font-size: .68rem; font-weight: 600; letter-spacing: .06em; white-space: nowrap; text-shadow: 0 1px 3px rgba(0, 0, 0, .8); }
.sky-birth-lagna { position: absolute; z-index: 5; transform: translate(-50%, -50%); color: #d9c8ff; text-align: center; }
.sky-birth-lagna--together { opacity: .8; }
.sky-birth-lagna-marker { display: block; width: 1.35rem; height: 1.35rem; margin: auto; border: 2px solid #d9c8ff; border-radius: 50%; background: rgba(171, 135, 226, .25); box-shadow: 0 0 8px rgba(184, 161, 225, .6); }
.sky-birth-lagna-label { display: block; margin-top: .25rem; font-size: .7rem; font-weight: 600; white-space: nowrap; text-shadow: 0 1px 3px rgba(0, 0, 0, .8); }
.sky-layer-legend { display: flex; justify-content: center; gap: .8rem; margin-top: .45rem; color: var(--sky-muted); font-size: .62rem; }
.sky-layer-legend span { display: inline-flex; align-items: center; gap: .25rem; }
.sky-layer-marker { display: inline-block; width: .48rem; height: .48rem; border-radius: 50%; background: var(--sky-accent); }
.sky-layer-marker--natal { background: transparent; border: 1px solid #cdb9ef; }
.my-sky-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding: 1rem 0; }
.my-sky-personal-time { max-width: 72rem; margin: 1.25rem auto 0; border-top: 1px solid rgba(190, 177, 255, .24); padding: 1.25rem 0 2rem; }
.my-sky-personal-time > h2 { margin: 0 0 1rem; color: #d9c8ff; font-family: Georgia, serif; font-size: 1.15rem; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
.my-sky-personal-time__unavailable { margin: 0; color: var(--sky-muted); font-size: .9rem; }
.my-sky-period-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.my-sky-period { border: 1px solid rgba(190, 177, 255, .24); background: rgba(12, 27, 38, .62); padding: 1rem; }
.my-sky-period--dasha { border-color: rgba(190, 177, 255, .42); }
.my-sky-period__head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.my-sky-period h3 { margin: 0; color: var(--sky-muted); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.my-sky-period__head strong { color: var(--sky-ink); font-family: Georgia, serif; font-size: 1.35rem; font-weight: 500; }
.my-sky-period__timeline { position: relative; min-height: 2.25rem; margin: .8rem 0 .35rem; padding-top: .9rem; }
.my-sky-period__track { position: relative; display: block; height: .35rem; border-radius: 999px; background: linear-gradient(to right, #8d78cf var(--personal-time-progress), rgba(141, 120, 207, .22) var(--personal-time-progress)); }
.my-sky-period__track::before, .my-sky-period__track::after { position: absolute; top: 50%; width: .7rem; height: .7rem; border: 2px solid #b9a9ed; border-radius: 50%; background: var(--sky-bg); content: ""; transform: translateY(-50%); }
.my-sky-period__track::before { left: 0; } .my-sky-period__track::after { right: 0; }
.my-sky-period__today-marker { position: absolute; left: var(--personal-time-progress); top: calc(.9rem + .175rem); width: .75rem; height: .75rem; border: 2px solid #f7d98b; border-radius: 50%; background: #e7b95e; box-shadow: 0 0 0 .2rem rgba(231, 185, 94, .14), 0 0 .7rem rgba(231, 185, 94, .5); transform: translate(-50%, -50%); }
.my-sky-period__today { position: absolute; left: clamp(1.35rem, var(--personal-time-progress), calc(100% - 1.35rem)); top: 0; color: #e7c477; font-size: .62rem; transform: translateX(-50%); white-space: nowrap; }
.my-sky-period__dates { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .75rem; color: var(--sky-muted); font-size: .76rem; line-height: 1.4; font-variant-numeric: tabular-nums; }
.my-sky-period__dates time { min-width: 0; color: var(--sky-ink); }
.my-sky-period__dates time:last-child { text-align: right; }
.my-sky-period__facts { display: block; color: var(--sky-muted); font-size: .76rem; line-height: 1.4; }
.my-sky-period__facts b { color: var(--sky-ink); font-weight: 500; }
.my-sky-period__facts { margin: .45rem 0 0; display: block; }
.my-sky-next-periods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin-top: .8rem; }
.my-sky-next-period { display: flex; align-items: baseline; flex-wrap: wrap; gap: .35rem .6rem; border-bottom: 1px solid rgba(211, 226, 220, .14); padding: .55rem 0; color: var(--sky-muted); font-size: .78rem; }
.my-sky-next-period span { flex-basis: 100%; color: #c9c1ec; font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.my-sky-next-period strong { color: var(--sky-ink); font-weight: 500; }
.my-sky-next-period time { color: var(--sky-muted); }
.my-sky-personal-entry { display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 72rem; margin: .8rem auto 0; border: 1px solid rgba(231, 163, 108, .26); background: rgba(10, 31, 38, .58); padding: .8rem 1rem; animation: my-sky-entry-breathe 8s ease-in-out infinite; }
.my-sky-personal-entry h2 { margin: 0; color: var(--sky-ink); font-family: Georgia, serif; font-size: 1rem; font-weight: 500; }
.my-sky-personal-entry p { margin: .2rem 0 0; color: var(--sky-muted); font-size: .82rem; line-height: 1.35; }
.my-sky-personal-entry__link { flex: 0 0 auto; text-decoration: none; }
@keyframes my-sky-entry-breathe { 0%, 100% { border-color: rgba(231, 163, 108, .26); box-shadow: 0 0 0 rgba(184, 161, 225, 0); } 50% { border-color: rgba(231, 163, 108, .44); box-shadow: 0 0 14px rgba(184, 161, 225, .12); } }
.sky-button, .sky-icon-button { min-height: 2.75rem; border: 1px solid rgba(231, 163, 108, .72); border-radius: .45rem; background: rgba(4, 17, 24, .68); color: var(--sky-ink); padding: .65rem .9rem; cursor: pointer; }
.sky-button:hover, .sky-button:focus-visible, .sky-icon-button:focus-visible { background: rgba(231, 163, 108, .12); outline: 2px solid var(--sky-accent); outline-offset: 2px; }
.sky-button:disabled { cursor: not-allowed; opacity: .45; }
.graha-sheet { width: min(48rem, calc(100% - 2rem)); border: 1px solid var(--sky-line); border-radius: 0; background: #0a2028; color: var(--sky-ink); }
.graha-sheet::backdrop { background: rgba(0, 8, 12, .72); }
.graha-sheet__head { position: relative; display: flex; justify-content: center; align-items: center; border-bottom: 1px solid var(--sky-line); }
.graha-sheet__head form { position: absolute; right: 0; margin: 0; }
.graha-sheet__head h2 { margin: .75rem auto; font-family: Georgia, serif; font-weight: 400; text-align: center; }
.graha-list { display: grid; gap: .5rem; padding-top: 1rem; }
.lagna-summary, .lagna-comparison, .graha-details { display: grid; gap: .35rem; border-bottom: 1px solid var(--sky-line); padding: .75rem 0; }
.lagna-summary h3, .lagna-comparison h3, .graha-details h3 { margin: 0; color: var(--sky-muted); font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.lagna-summary p { margin: 0; color: var(--sky-ink); }
.lagna-summary__unavailable { color: var(--sky-muted); }
.lagna-comparison__head, .lagna-comparison__row { display: grid; grid-template-columns: minmax(6rem, .7fr) minmax(0, 1fr) minmax(0, 1fr); gap: .75rem; }
.lagna-comparison__head { color: var(--sky-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.lagna-comparison__row { align-items: start; color: var(--sky-ink); }
.lagna-comparison__side-label { display: none; color: var(--sky-muted); font-size: .7rem; text-transform: uppercase; }
.graha-row { display: grid; gap: .25rem; border-bottom: 1px solid var(--sky-line); padding: .5rem 0; }
.graha-row__primary { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; }
.graha-row__rasi { color: var(--sky-ink); text-align: right; }
.graha-retrograde { color: #ef7068; font-weight: 700; }
.graha-row small { color: var(--sky-muted); }
.graha-comparison { display: grid; gap: .5rem; padding-top: 1rem; }
.graha-comparison__head, .graha-comparison__row { display: grid; grid-template-columns: minmax(6rem, .7fr) minmax(0, 1fr) minmax(0, 1fr); gap: .75rem; }
.graha-comparison__head { color: var(--sky-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.graha-comparison__row { border-bottom: 1px solid var(--sky-line); padding: .55rem 0; }
.graha-comparison__name { color: var(--sky-ink); font-weight: 600; }
.graha-comparison__side { display: grid; gap: .15rem; }
.graha-comparison__side-label { display: none; color: var(--sky-muted); font-size: .7rem; text-transform: uppercase; }
.graha-comparison__facts { color: var(--sky-ink); line-height: 1.35; }
@media (max-width: 49.99rem) {
  body.my-sky-page > footer { display: none; }
  .my-sky-shell { min-height: 100vh; padding-inline: 0; padding-bottom: 0; }
  .my-sky-heading, .my-sky-controls { padding-inline: 1rem; }
  .my-sky-personal-entry { align-items: flex-start; margin-inline: 1rem; flex-direction: column; }
  .my-sky-personal-time { margin-inline: 1rem; }
  .my-sky-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: .65rem; row-gap: .45rem; align-items: start; }
  .my-sky-kicker { grid-column: 1; grid-row: 1; min-width: 0; }
  .my-sky-heading__context { display: contents; }
  .my-sky-heading h1 { grid-column: 2; grid-row: 1; justify-self: end; width: fit-content; max-width: 100%; padding: .3rem .55rem; font-size: .8rem; white-space: nowrap; text-align: right; }
  .my-sky-mode { display: grid; grid-column: 1 / -1; grid-row: 2; width: 100%; max-width: 100%; min-width: 0; min-inline-size: 0; box-sizing: border-box; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr); gap: .15rem; border-color: rgba(211, 226, 220, .42); background: rgba(4, 17, 24, .42); }
  .my-sky-mode label { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid rgba(211, 226, 220, .2); padding: .28rem .32rem; color: var(--sky-muted); font-size: clamp(.52rem, 2vw, .6rem); line-height: 1.1; text-align: center; white-space: nowrap; }
  .my-sky-mode label:has(input:checked) { border-color: rgba(231, 163, 108, .72); background: rgba(231, 163, 108, .28); color: var(--sky-ink); font-weight: 600; }
  .sky-stage { width: 100%; margin-inline: 0; }
  .sky-field { width: 100vw; min-height: 24rem; border: 0; }
  .sky-observer { --observer-mark-size: 2.5rem; }
  .sky-graha { width: 44px; }
  .sky-graha-artwork { animation-name: sky-graha-breathe-mobile; }
  .sky-graha-label { max-width: 6.5rem; font-size: .7rem; }
  .sky-graha--overlap .sky-graha-artwork { transform: translate3d(-1.5px, 1px, 0); }
  .sky-button--location, .sky-button--details { min-height: 2.5rem; font-size: .82rem; padding: .5rem .72rem; }
  .graha-sheet { width: calc(100% - 2rem); }
  .lagna-comparison__head { display: none; }
  .lagna-comparison__row { grid-template-columns: 1fr; gap: .6rem; }
  .lagna-comparison__side-label { display: block; }
  .graha-comparison__head { display: none; }
  .graha-comparison__row { display: grid; grid-template-columns: 1fr; gap: .6rem; padding: .7rem 0; }
  .graha-comparison__side-label { display: block; }
  .my-sky-period-grid, .my-sky-next-periods { grid-template-columns: 1fr; }
  .my-sky-period { border-color: rgba(211, 226, 220, .42); background: rgba(8, 25, 34, .82); padding: .9rem; }
  .my-sky-period--dasha { border-color: rgba(231, 163, 108, .56); }
  .my-sky-period__head { align-items: flex-start; flex-direction: column; gap: .35rem; }
  .my-sky-period__head strong { font-size: 1.2rem; }
  .my-sky-period__dates { gap: .3rem; }
  .my-sky-period__timeline { margin-top: 1rem; }
  .my-sky-period__facts { margin-top: .65rem; }
  .my-sky-next-period { margin-top: .75rem; border-top: 1px solid rgba(211, 226, 220, .24); border-bottom: 0; padding-top: .75rem; line-height: 1.45; }
  .my-sky-next-period span { color: #e7c477; }
}
@keyframes sky-graha-breathe-mobile { 0%, 100% { transform: translate3d(-1px, .35px, 0) scale(.995); } 50% { transform: translate3d(1px, -.35px, 0) scale(1.005); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } .my-sky-personal-entry, .sky-ambient, .sky-ambient::before, .sky-ambient::after, .sky-graha-artwork, .sky-sparkle { animation: none !important; transform: none !important; } .sky-sparkle { opacity: .2 !important; } }

.sky-rasi-layer { z-index: 1; pointer-events: none; }
.sky-rasi-marker { --rasi-shift-x: 0px; --rasi-shift-y: 0px; --rasi-marker-size: clamp(2.5rem, 6vw, 4rem); position: absolute; width: 0; height: 0; transform: translate(calc(-50% + var(--rasi-shift-x)), calc(-50% + var(--rasi-shift-y))); }
.sky-marker { display: block; width: var(--rasi-marker-size); height: var(--rasi-marker-size); transform: translate(-50%, -50%); object-fit: contain; opacity: .98; filter: brightness(1.2) contrast(1.1) saturate(1.15) drop-shadow(0 0 6px rgba(190, 177, 255, .32)); }
.sky-rasi-name { position: absolute; top: calc(var(--rasi-marker-size) / 2 + .35rem); left: 0; max-width: 7rem; color: #c9c1ec; font-size: .58rem; line-height: 1.1; text-align: center; text-shadow: 0 1px 3px rgba(0, 0, 0, .85); white-space: normal; transform: translateX(-50%); }
.sky-rasi-marker--6 .sky-rasi-name, .sky-rasi-marker--7 .sky-rasi-name, .sky-rasi-marker--8 .sky-rasi-name, .sky-rasi-marker--9 .sky-rasi-name { top: auto; bottom: calc(var(--rasi-marker-size) / 2 + .15rem); }
.sky-lagna-education { margin: .6rem 1rem .1rem; color: var(--sky-muted); font-size: .62rem; line-height: 1.25; text-align: center; }
@media (max-width: 49.99rem) { .sky-rasi-marker { --rasi-marker-size: 2.5rem; --rasi-shift-x: 0px; --rasi-shift-y: 0px; } .sky-rasi-name { max-width: 5.5rem; font-size: clamp(.48rem, 1.8vw, .58rem); } .sky-lagna-education { margin: .5rem .5rem .1rem; font-size: .55rem; } }
