.transit-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.transit-date{font-family:var(--font-display);font-size:1.1rem;font-weight:300;font-variation-settings:"SOFT" 70;color:var(--accent)}.planet-grid{display:grid;gap:1px;background:var(--border);border:none;box-shadow:0 0 0 1px var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:2rem}.planet-row{background:var(--bg-card);padding:.8rem 1.25rem;display:block}.planet-row .planet-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem .9rem;row-gap:.5rem}.planet-row .planet-interp{font-size:.72rem;color:var(--text-muted);line-height:1.6;width:100%;margin-top:.6rem;padding:.55rem .8rem;border-left:2px solid var(--accent-dim);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg);box-sizing:border-box}.planet-row .icon{font-size:1.4rem;width:2rem;text-align:center;flex-shrink:0}.planet-row .name{font-size:.85rem;color:var(--text);width:6rem;flex-shrink:0}.planet-row .sign-info{flex:1;min-width:0}.planet-row .sign-info .sign-name{font-family:var(--font-display);font-size:1.05rem;font-weight:300;font-variation-settings:"SOFT" 70;color:var(--accent)}.planet-row .sign-info .degree{font-size:.72rem;color:var(--text-muted)}.planet-row .status{font-size:.65rem;white-space:nowrap;padding:.15rem .5rem;border-radius:2px;border:1px solid var(--border)}.planet-row .status.retro{color:#c87a7a;border-color:#c87a7a4d}.planet-row .status.direct{color:#8bba7a;border-color:#8bba7a4d}.planet-row .status.station{color:var(--accent);border-color:#c9955a4d}.planet-section{margin-bottom:2rem}.planet-section:last-child{margin-bottom:0}.planet-section-title{font-family:var(--font-display);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-weight:400;margin-bottom:.75rem;opacity:.7}.planet-row .elem-tag,.planet-row .duration-tag{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;padding:.15rem .45rem;border-radius:2px;background:var(--bg);color:var(--text-muted)}.planet-row .duration-tag{color:var(--accent-dim)}.aspect-grid{display:grid;gap:1px;background:var(--border);border:none;box-shadow:0 0 0 1px var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:2rem}.aspect-item{background:var(--bg-card);padding:.7rem 1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .6rem;row-gap:.45rem;font-size:.78rem}.aspect-item .asp-interp{flex-basis:100%;width:100%;font-size:.72rem;color:var(--text-muted);line-height:1.6;margin-top:.35rem;padding:.55rem .8rem .5rem;border-left:2px solid var(--accent-dim);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg);opacity:.95;box-sizing:border-box}.aspect-item .asp-interp:empty{display:none}.aspect-item .p-icon{font-size:1rem;width:1.4rem;text-align:center;flex-shrink:0}.aspect-item .asp-name{display:inline-block;padding:.1rem .45rem;font-size:.6rem;letter-spacing:.05em;border-radius:2px;text-transform:uppercase;white-space:nowrap}.aspect-item .asp-name.conjunction{background:#8bba7a26;color:#8bba7a}.aspect-item .asp-name.sextile{background:#7ab5c926;color:#7ab5c9}.aspect-item .asp-name.square{background:#c87a7a26;color:#c87a7a}.aspect-item .asp-name.trine{background:#c9955a26;color:var(--accent)}.aspect-item .asp-name.opposition{background:#c87a7a26;color:#c87a7a}.aspect-orb{font-size:.62rem;color:var(--text-muted)}.aspect-angle{font-size:.65rem;color:var(--text-muted)}.ingress-section{margin-bottom:2rem}.ingress-item{display:block;padding:.6rem 0;border-bottom:1px solid var(--border)}.ingress-item:first-child{padding-top:0}.ingress-item:last-child{border-bottom:none;padding-bottom:0}.ingress-item .ingress-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;row-gap:.3rem;font-size:.78rem;color:var(--text-muted);margin-bottom:.25rem}.ingress-item .ingress-date{font-family:var(--font-display);font-size:.82rem;color:var(--accent);white-space:nowrap}.ingress-item .ingress-interp{font-size:.72rem;color:var(--text-muted);line-height:1.6;width:100%;margin-top:.4rem;padding:.55rem .8rem;border-left:2px solid var(--accent-dim);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg);box-sizing:border-box}.loading{display:flex;justify-content:center;align-items:center;padding:3rem;color:var(--text-muted);font-size:.85rem;gap:.75rem}.loading .spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:2rem;color:var(--text-muted);font-size:.85rem}.copy-block-btn{float:right;cursor:pointer;font-size:.85rem;color:var(--text-muted);transition:color .3s;line-height:1;padding:.3rem .5rem}.copy-block-btn:hover{color:var(--accent)}.copy-block-btn:active{transform:scale(.92)}@media(max-width:700px){.planet-row{padding:.7rem .9rem}.planet-row .name{width:auto}.aspect-item{padding:.6rem .8rem}}.sky-map-wrap{display:block;padding:.5rem 0 .25rem}.sm-svg{display:block;width:100%;max-width:420px;margin:0 auto;aspect-ratio:1}.sm-ring{fill:none;stroke:var(--border);stroke-width:.8}.sm-sign{fill:var(--text);font-size:19px;text-anchor:middle;dominant-baseline:central;opacity:.9}.sm-asp{stroke-width:1;fill:none;opacity:.4}.sm-asp-opposition{stroke:#e5484d;stroke-width:1.3}.sm-asp-square{stroke:#ff9d66;stroke-width:1.1}.sm-asp-trine{stroke:#5ab0ec;stroke-width:1}.sm-asp-sextile{stroke:#5ac98a;stroke-width:.9}.sm-dot{fill:var(--accent);opacity:.9}.sm-retro-planet .sm-dot{fill:var(--text-muted);opacity:.55}.sm-glyph{fill:var(--text);font-size:15px;text-anchor:middle;dominant-baseline:central;font-weight:500}.sm-retro-planet .sm-glyph{opacity:.6}.sm-retro{fill:var(--accent);font-size:8px}.sm-center{fill:var(--text);font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-anchor:middle;dominant-baseline:central;opacity:.75}.sm-center-date{font-size:12px;letter-spacing:.02em;opacity:.95}.sm-core{fill:var(--accent);opacity:.8}.sm-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.1rem;margin-top:.5rem;font-size:.68rem;color:var(--text-muted)}.sm-leg{display:inline-flex;align-items:center;gap:5px}.sm-leg-chip{width:14px;height:3px;border-radius:2px;display:inline-block;background:var(--accent)}.sm-leg-chip.sm-asp-opposition{background:#e5484d}.sm-leg-chip.sm-asp-square{background:#ff9d66}.sm-leg-chip.sm-asp-trine{background:#5ab0ec}.sm-leg-chip.sm-asp-sextile{background:#5ac98a}
