.natal-result{margin-top:64px;border-top:1px solid var(--line);padding-top:42px}
.natal-result[hidden],.natal-detail[hidden]{display:none}
.natal-result>h2{margin:0 0 28px}
.natal-block{padding:27px 0;border-top:1px solid var(--line)}
.natal-block h3{font:1.45rem Georgia,serif;color:var(--ink);margin:0 0 19px}
.natal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 30px;margin:0}
.natal-facts div{padding:10px 0;border-bottom:1px solid var(--line)}
.natal-facts dt{font-size:.76rem;color:var(--muted);margin-bottom:5px}
.natal-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.natal-table-scroll{overflow-x:auto}
.natal-table{width:100%;border-collapse:collapse;text-align:left;font-size:.92rem}
.natal-table th,.natal-table td{padding:11px 15px 11px 0;border-bottom:1px solid var(--line);white-space:nowrap}
.natal-table th{font-size:.75rem;text-transform:uppercase;color:var(--brown)}
.natal-table td:first-child{font-weight:600;color:var(--ink)}
.natal-detail{color:var(--muted);font-size:.88rem}
.natal-closing{padding:33px 0 10px;border-top:1px solid var(--line)}
.natal-closing p{font:1.2rem/1.5 Georgia,serif;color:var(--ink)}
.natal-closing .button{margin-top:12px}
.natal-awaiting{min-height:250px;display:grid;place-items:center;border:1px solid var(--line);color:var(--muted);text-align:center;padding:24px}
.natal-wheel-section{text-align:center;padding:4px 0 40px}
.natal-wheel-section h3{font:1.5rem Georgia,serif;color:var(--ink);margin:0 0 14px}
#natal-wheel{max-width:800px;margin:auto}
.natal-wheel-svg{display:block;width:100%;height:auto;aspect-ratio:1;overflow:visible}
.wheel-paper{fill:#fcfaf6;stroke:#785d52;stroke-width:1.4}
.zodiac-band{stroke:#faf8f5;stroke-width:.6}
.element-0{fill:#e6bfbc}.element-1{fill:#c7d8c5}.element-2{fill:#e7d7aa}.element-3{fill:#c6d6dd}
.sign-glyph{font:28px 'Segoe UI Symbol','Noto Sans Symbols 2',serif;fill:#543a33}
.sign-boundary{stroke:#8b7064;stroke-width:1.1;fill:none}
.zodiac-inner,.house-outer,.aspect-ring{fill:none;stroke:#bba89b;stroke-width:1}
.degree-tick{stroke:#947e70;fill:none}.degree-tick.minor{stroke-width:.5}.degree-tick.medium{stroke-width:.8}.degree-tick.major{stroke-width:1.4}
.house-cusp{stroke:#b8a79d;stroke-width:.85;fill:none}.house-cusp.angular{stroke:#75544b;stroke-width:1.7}
.house-number{font:13px Georgia,serif;fill:#806b61}.angle-label{font:700 16px Arial,sans-serif;fill:#753b35}
.aspect path{fill:none;stroke-width:1.15}.aspect.harmonic path{stroke:#82938a;stroke-dasharray:3 3}.aspect.tense path{stroke:#9e5962}.aspect.conjunction path{stroke:#8d7567;stroke-dasharray:2 4}
.planet-degree{stroke:#723c38;stroke-width:1.8;fill:none}.planet-leader{fill:none;stroke:#9a8175;stroke-width:.8}
.planet-glyph{font:25px 'Segoe UI Symbol','Noto Sans Symbols 2',serif;fill:#2c2927;paint-order:stroke;stroke:#fcfaf6;stroke-width:2}.planet-position{font:10px Arial,sans-serif;fill:#67463d;paint-order:stroke;stroke:#fcfaf6;stroke-width:2}
.wheel-center{fill:#fcfaf6;stroke:#c3aea1;stroke-width:1}.wheel-monogram{font:19px Georgia,serif;fill:#a18678}
.place-field{position:relative}
.place-results{position:absolute;z-index:10;top:calc(100% - 15px);left:0;right:0;max-height:260px;overflow:auto;background:#fff;border:1px solid #bfae9e;box-shadow:0 8px 20px #2a1e161c}
.place-results[hidden]{display:none}
.place-option{display:block;width:100%;padding:11px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.place-option:hover,.place-option:focus{background:#f5f1ec}
.manual-place-action{margin:0 0 24px}
.manual-place-action p{font-size:.85rem;color:var(--muted);margin:0 0 8px}
.manual-place-action button{background:none;border:0;padding:4px 0;color:var(--brown);text-decoration:underline;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:600;line-height:1.5;text-align:left}
.manual-place-panel{border:0;border-top:1px solid var(--line);margin:0 0 24px;padding:20px 0 0;min-width:0}
.manual-place-panel[hidden]{display:none}
.place-field[hidden]{display:none}
.manual-place-panel legend{font-weight:600;padding:0 8px 0 0}
.manual-place-panel p{font-size:.85rem;line-height:1.5;color:var(--muted);margin:0 0 20px}
.manual-place-panel input,.manual-place-panel select{max-width:100%;min-width:0}
@media(max-width:700px){.natal-facts{grid-template-columns:1fr}.natal-result{margin-top:42px}.natal-table{font-size:.84rem}}
