/* Натална карта – form, wheel, reading, placement pages. Uses the theme's colour tokens. */
.natal [hidden]{display:none!important}
.natal{--natal-fire:#e4572e;--natal-earth:#5f9a3f;--natal-air:#d9a400;--natal-water:#2f7fd8;--natal-soft:#2f7fd8;--natal-hard:#d64545;--natal-paper:var(--panel-bg,#fff);margin:0 0 1.5rem}
.natal-form,.natal-saved{padding:1rem 1.1rem;border:1px solid var(--border,#ddd);border-radius:14px;background:var(--panel-bg,#fff)}
.natal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem}
.natal-wide{grid-column:1/-1}
.natal-form label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.95rem}
.natal-form input[type=text],.natal-form input[type=date],.natal-form input[type=time],.natal-form input[type=number]{width:100%;box-sizing:border-box;padding:.6rem .75rem;border:1px solid var(--border,#ccc);border-radius:10px;background:var(--panel-bg,#fff);color:inherit;font-size:1rem;min-height:44px}
.natal-form input:disabled{opacity:.5}
.natal-form .natal-check{flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:400;cursor:pointer}
.natal-check input[type=checkbox]{-webkit-appearance:checkbox;appearance:auto;z-index:auto;margin-top:.15rem!important;opacity:1;float:none;margin:0;display:inline-block;width:18px;height:18px;position:static;flex:0 0 auto}
.natal-opt{font-weight:400;color:var(--text-muted,#666);font-size:.85rem}
.natal-place{position:relative}
.natal-suggest{position:absolute;top:100%;left:0;right:0;z-index:20;display:flex;flex-direction:column;margin-top:.2rem;border:1px solid var(--border,#ccc);border-radius:10px;background:var(--panel-bg,#fff);box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden}
.natal .natal-suggest button{all:unset;box-sizing:border-box;width:100%;cursor:pointer;padding:.6rem .8rem;font-weight:400;border-bottom:1px solid var(--border,#eee)}
.natal-suggest button:hover,.natal-suggest button:focus{background:color-mix(in srgb,var(--accent,#a42e88) 10%,transparent)}
.natal-manual summary{cursor:pointer;font-weight:400;color:var(--text-muted,#666)}
.natal-manual p{font-weight:400;font-size:.9rem}
.natal-actions{margin:1rem 0 .4rem}
.natal .natal-form button[type=submit],.natal-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:auto;line-height:1.2;padding:.7rem 1.4rem;border:0;border-radius:999px;background:var(--accent,#a42e88);box-shadow:none;color:#fff!important;font-weight:600;font-size:1rem;cursor:pointer;text-decoration:none}
.natal .natal-form button[type=submit]:hover,.natal-button:hover{color:#fff!important;filter:brightness(1.1)}
.natal button:disabled{opacity:.6;cursor:progress}
.natal button.natal-link{background:none;box-shadow:none;color:var(--accent-text,var(--accent,#a42e88))!important;text-decoration:underline;padding:0 .4rem}
.natal-g,.natal-sym,.natal-card-glyph,.natal-tglyph,.natal-asp-g{font-family:"Apple Symbols","Segoe UI Symbol","Noto Sans Symbols 2","Noto Sans Symbols","DejaVu Sans",sans-serif;font-style:normal}
.natal-privacy{font-size:.85rem;color:var(--text-muted,#666);margin:.3rem 0 0}
.natal-saved{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem}
.natal-saved span{flex:1 1 14rem}
.natal-error{margin:1rem 0;padding:.8rem 1rem;border-radius:10px;background:color-mix(in srgb,var(--natal-hard) 12%,transparent)}
.natal-result{margin-top:1.5rem}
.natal-head h2{margin:0 0 .3rem}
.natal-meta{color:var(--text-muted,#666);margin:0 0 .6rem}
.natal-warn{padding:.6rem .9rem;border-left:4px solid var(--natal-air);border-radius:8px;background:var(--bg-alt,#f6f6f6);font-size:.95rem}
.natal-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0 1.2rem}
.natal-tools button{font-size:.88rem}
.natal-big{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.8rem;margin:0 0 1.4rem}
.natal .natal-card,.natal .natal-card:hover{color:var(--text,inherit)}
.natal-card{display:flex;flex-direction:column;gap:.15rem;padding:.9rem 1rem;border:1px solid var(--border,#ddd);border-radius:14px;text-decoration:none;color:inherit;background:linear-gradient(160deg,color-mix(in srgb,var(--accent,#a42e88) 9%,transparent),transparent 60%)}
.natal-card-sum,.natal-card strong{color:var(--text,inherit)}
.natal-card-glyph{font-size:2rem;line-height:1;color:var(--accent,#a42e88)}
.natal-card-label{font-size:.8rem;color:var(--text-muted,#666);text-transform:uppercase;letter-spacing:.04em}
.natal-card strong{font-size:1.25rem}
.natal-card-sum{font-size:.9rem}
.natal-figure{margin:0 auto 1rem;max-width:600px}
.natal-figure figcaption{font-size:.85rem;color:var(--text-muted,#666);text-align:center;margin-top:.4rem}
.nw-key i{display:inline-block;width:1.4em;height:3px;vertical-align:middle;margin:0 .2em 0 .6em}
.nw-key .nw-soft{background:var(--natal-soft)}.nw-key .nw-hard{background:var(--natal-hard)}
.natal-wheel{display:block;width:100%;height:auto;color:var(--text,#222);font-family:"Apple Symbols","Segoe UI Symbol","Noto Sans Symbols 2","Noto Sans Symbols","DejaVu Sans",system-ui,sans-serif}
.natal-wheel text{text-anchor:middle;dominant-baseline:central;fill:currentColor}
.nw-bg{fill:var(--panel-bg,#fff);stroke:var(--border,#ccc)}
.nw-sign{stroke:var(--border,#ccc);stroke-width:1}
.nw-fire{fill:color-mix(in srgb,var(--natal-fire) 16%,transparent)}
.nw-earth{fill:color-mix(in srgb,var(--natal-earth) 16%,transparent)}
.nw-air{fill:color-mix(in srgb,var(--natal-air) 18%,transparent)}
.nw-water{fill:color-mix(in srgb,var(--natal-water) 16%,transparent)}
.nw-sign-glyph{font-size:24px}
.nw-tick{stroke:currentColor;stroke-width:.6;opacity:.45}
.nw-ring{fill:none;stroke:var(--border,#bbb);stroke-width:1}
.nw-cusp{stroke:currentColor;stroke-width:.7;opacity:.4}
.nw-axis{stroke:currentColor;stroke-width:1.8;opacity:.85}
.nw-axis-label{font-size:13px;font-weight:700}
.nw-house{font-size:13px;opacity:.6}
.nw-asp{stroke-width:1.4}
.nw-asp.nw-soft{stroke:var(--natal-soft)}
.nw-asp.nw-hard{stroke:var(--natal-hard)}
.nw-planet{cursor:pointer;outline:none}
.nw-hit{fill:transparent}
.nw-planet:hover .nw-hit,.nw-planet:focus .nw-hit,.nw-planet.is-on .nw-hit{fill:color-mix(in srgb,var(--accent,#a42e88) 18%,transparent)}
.nw-glyph{font-size:26px}
.nw-deg{font-size:12px;opacity:.75}
.nw-pointer{stroke:currentColor;stroke-width:1.2}
.nw-moon-dark{fill:color-mix(in srgb,currentColor 14%,transparent);stroke:var(--border,#ccc)}
.nw-moon-lit{fill:#f2d77a}
.natal-wheel.is-focus .nw-asp{opacity:.08!important}
.natal-wheel.is-focus .nw-asp.is-on{opacity:1!important;stroke-width:2.4}
.natal-table-wrap{overflow-x:auto;margin:0 0 1.5rem}
.natal-table{width:100%;border-collapse:collapse;font-size:.95rem}
.natal-table th,.natal-table td{padding:.4rem .5rem;border-bottom:1px solid var(--border,#eee);text-align:left;white-space:nowrap}
.natal-table thead th{font-size:.8rem;color:var(--text-muted,#666);font-weight:600}
.natal-g{display:inline-block;min-width:1.4em;text-align:center;color:var(--accent,#a42e88)}
.natal-sec{margin:1.8rem 0}
.natal-sec h3{font-size:1.2rem;margin:0 0 .5rem}
.natal-sub{color:var(--text-muted,#666);font-size:.92rem}
.natal-date{font-weight:400;font-size:.9rem;color:var(--text-muted,#666)}
.natal-today{padding:1rem 1.1rem;border-radius:14px;background:var(--bg-alt,#f6f6f6)}
.natal-transits,.natal-aspects{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.natal-transits li,.natal-aspects li{display:flex;gap:.8rem;align-items:flex-start}
.natal-transits p,.natal-aspects p{margin:.2rem 0 0}
.natal-tglyph,.natal-asp-g{flex:0 0 5.2rem;font-size:1.15rem;white-space:nowrap;color:var(--accent,#a42e88)}
.natal-asp-g.natal-soft{color:var(--natal-soft)}.natal-asp-g.natal-hard{color:var(--natal-hard)}
.natal-aspects li.is-on{background:color-mix(in srgb,var(--accent,#a42e88) 8%,transparent);border-radius:10px}
.natal-orb{font-size:.8rem;color:var(--text-muted,#666)}
.natal-bars{display:grid;gap:.35rem;margin:.6rem 0}
.natal-bar{display:grid;grid-template-columns:7rem 1fr 3rem;align-items:center;gap:.6rem;font-size:.9rem}
.natal-bar-track{height:10px;border-radius:999px;background:var(--bg-alt,#eee);overflow:hidden}
.natal-bar-track span{display:block;height:100%;border-radius:999px;background:var(--accent,#a42e88)}
.natal-fire .natal-bar-track span{background:var(--natal-fire)}.natal-earth .natal-bar-track span{background:var(--natal-earth)}
.natal-air .natal-bar-track span{background:var(--natal-air)}.natal-water .natal-bar-track span{background:var(--natal-water)}
.natal-planet{padding:1rem 0;border-top:1px solid var(--border,#eee)}
.natal-planet h4{font-size:1.1rem;margin:0 0 .4rem}
.natal-house{display:inline-block;margin-left:.3rem;padding:.05rem .5rem;border-radius:999px;font-size:.78rem;font-weight:600;background:color-mix(in srgb,var(--accent,#a42e88) 12%,transparent)}
.natal-inhouse{padding:.6rem .8rem;border-radius:10px;background:var(--bg-alt,#f6f6f6)}
.natal-years{font-size:.9rem;color:var(--text-muted,#666)}
.natal-more a{font-weight:600}
.natal-note{font-size:.85rem;color:var(--text-muted,#666);margin-top:1.4rem}
.natal-index{margin:1.5rem 0 2rem}
.natal-index details{border-top:1px solid var(--border,#eee);padding:.5rem 0}
.natal-index summary{cursor:pointer;font-weight:600}
.natal-index ul,.natal-page-links ul{columns:2 12rem;column-gap:1.5rem;margin:.5rem 0;padding-left:1.2rem}
.natal-page-lead{font-size:1.08rem}
.natal-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin:1.4rem 0;padding:1rem 1.1rem;border-radius:14px;background:color-mix(in srgb,var(--accent,#a42e88) 9%,transparent)}
.natal-cta span{font-size:.9rem}
.natal-page-about h2,.natal-page-links h2{font-size:1.15rem;margin:1.4rem 0 .4rem}
.natal-page-links ul{list-style:none;padding:0}
.natal-page-links [aria-current]{font-weight:700}
@media (max-width:560px){
	.natal-grid{grid-template-columns:1fr}
	.natal-tglyph,.natal-asp-g{flex-basis:4.4rem;font-size:1rem}
	.natal-bar{grid-template-columns:5.5rem 1fr 2.6rem}
	.natal-table{font-size:.85rem}
	.natal-table th,.natal-table td{padding:.35rem .3rem}
}
/* Synastry */
.natal-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.natal-pair fieldset{margin:0;padding:.8rem 1rem;border:1px solid var(--border,#ddd);border-radius:12px;min-width:0}
.natal-pair legend{font-weight:700;padding:0 .4rem}
.natal-pair .natal-grid{grid-template-columns:1fr}
.natal-score{display:grid;grid-template-columns:9rem 1fr;gap:1.2rem;align-items:center;margin:0 0 1rem}
.natal-score-total{display:flex;flex-direction:column;align-items:center;justify-content:center;width:9rem;height:9rem;border-radius:50%;background:radial-gradient(closest-side,var(--panel-bg,#fff) 78%,transparent 80%),conic-gradient(var(--accent,#a42e88) calc(var(--p)*1%),var(--bg-alt,#eee) 0)}
.natal-score-total strong{font-size:2rem;line-height:1}
.natal-score-total span{font-size:.8rem;color:var(--text-muted,#666)}
.nw-b .nw-glyph{fill:#1f9e89}
.nw-b .nw-pointer{stroke:#1f9e89}
/* Related pages */
.natal-related{margin:2rem 0 1rem}
.natal-related h2{font-size:1.2rem;margin:0 0 .7rem}
.natal-related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.6rem}
.natal-related a{display:grid;grid-template-columns:2rem 1fr;grid-template-rows:auto auto;column-gap:.6rem;padding:.7rem .8rem;border:1px solid var(--border,#ddd);border-radius:12px;text-decoration:none;color:inherit;height:100%;box-sizing:border-box}
.natal-related a:hover{border-color:var(--accent,#a42e88)}
.natal-related .natal-sym{grid-row:1/3;font-size:1.5rem;line-height:1.2;color:var(--accent,#a42e88);text-align:center}
.natal-related strong{color:var(--text,inherit)}
.natal-related span:last-child{font-size:.85rem;color:var(--text-muted,#666)}
@media (max-width:640px){
	.natal-pair{grid-template-columns:1fr}
	.natal-score{grid-template-columns:1fr;justify-items:center}
	.natal-score .natal-bars{width:100%}
	.natal-score .natal-bar{grid-template-columns:9.5rem 1fr 2.6rem}
}
