/* 14.10.2026: доработки страницы «Натальная карта» (подключается после natal.css) */

/* карточки «шаг за шагом» одной высоты, кнопки по низу */
.nc-cards{align-items:stretch}
.nc-card{display:flex;flex-direction:column;align-items:center;height:100%}
.nc-card p:not(.eyebrow){flex:1 1 auto}
.nc-card .secondary{margin-top:auto}

/* форма — крупнее, легче, свободный ввод города */
#birth-form small{font-size:13px;line-height:1.55;color:#cfc6e2}
#birth-form label{font-size:14px}
#birth-form .demo{font-size:14px;line-height:1.6}
#birth-form .form-step{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#e6d9fb;margin:30px 0 10px}
#birth-form .form-step b{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(120deg,#dfd0ff,#baa0f2);color:#17122a;font-size:13px;letter-spacing:0}
#birth-form .notice{font-size:13px;line-height:1.6}
.form-layout .precision label{font-size:14px}
.nc-city{position:relative}
.nc-suggest{position:relative;z-index:2;margin-top:6px;max-height:280px;overflow:auto;background:#151236;border:1px solid #bba2e6;border-radius:12px;box-shadow:0 12px 30px #0009;padding:6px}
.nc-suggest[hidden]{display:none}
.nc-suggest-item{display:block;width:100%;text-align:left;background:none;border:0;color:#efe8ff;font:15px Manrope,system-ui,sans-serif;padding:10px 12px;border-radius:8px;cursor:pointer}
.nc-suggest-item:hover,.nc-suggest-item:focus{background:#d0bcfa22;outline:none}
#city.nc-invalid{border-color:#ff9db0;box-shadow:0 0 0 3px #ff9db033}
.nc-field-error{margin:8px 0 0;font-size:14px;font-weight:600;color:#ffb3c1}
.nc-field-error[hidden]{display:none}
.nc-adv{margin-top:16px;border:1px solid #bca6da44;border-radius:12px;padding:10px 14px}
.nc-adv summary{cursor:pointer;font-size:14px;color:#d8c8f5}
#birth-form .nc-adv label{display:block;border:0;padding:0;margin:12px 0 6px}
#birth-form .nc-submit{display:block;width:100%;margin-top:28px;font-size:16px;padding:16px 20px;text-align:center;cursor:pointer}
.nc-next{font-size:13.5px;line-height:1.55;color:#cfc6e2;text-align:center;margin:10px 0 0}
#form-status{font-size:14px;color:#e8dcff;margin:10px 0 0;text-align:center}
.form-layout aside p{font-size:14px;line-height:1.65}

/* SVG-колесо (natal-wheel.js) — 20.10.2026: крупнее, кольцо градусов, стихии на градиентах, «камни»-планеты */
.lw-wheel{display:block;width:100%;height:auto;max-width:700px;margin:0 auto;overflow:visible;filter:drop-shadow(0 0 30px #9c7cf02e)}
.lw-ring{fill:none;stroke:#d3c2ff;stroke-width:1;opacity:.6}
.lw-outer{stroke-width:1.4;opacity:.75}
.lw-inner{stroke:#e6dbff;stroke-width:1.2;opacity:.7}
.lw-core{stroke:#cdb8f5;opacity:.45}
.lw-sector{stroke:none}
.lw-sep{stroke:#e3d6ff;stroke-width:.9;opacity:.35}
.lw-sign{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.lw-sign.lw-fire{stroke:#ffc08a}.lw-sign.lw-earth{stroke:#c6e8a6}.lw-sign.lw-air{stroke:#e4d8ff}.lw-sign.lw-water{stroke:#a6d8ff}
.lw-tick{stroke:#dccdff;stroke-width:.7;opacity:.55}
.lw-dlab{fill:#a99bd2;font:600 7.5px Manrope,system-ui,sans-serif;letter-spacing:.02em}
.lw-house{stroke:#cdb8f5;stroke-width:.8;opacity:.32;stroke-dasharray:2 3}
.lw-axis{stroke:#f2d6a2;stroke-width:1.1;opacity:.55}
.lw-axis-main{stroke-width:1.7;opacity:.95}
.lw-arrow{fill:#f6dcae}
.lw-hnum{fill:#b9abdd;font:600 10px Manrope,system-ui,sans-serif}
.lw-axis-l{fill:#f6dcae;font:800 15px Manrope,system-ui,sans-serif;letter-spacing:.06em}
.lw-axis-s{fill:#d9c49e;font:700 10px Manrope,system-ui,sans-serif;letter-spacing:.06em;opacity:.8}
.lw-asp{stroke-width:1.25;fill:none;stroke-linecap:round}
.lw-asp.lw-dash{stroke-dasharray:5 4}
.lw-stars{fill:#fff}
.lw-ptick{fill:none;stroke:#efe6ff;stroke-width:.9;opacity:.6}
.lw-pdot{fill:#efe6ff;opacity:.85}
.lw-phalo{fill:#a98bff;opacity:.35}
.lw-pbg{stroke:#e1d3ff;stroke-width:1.1}
.lw-pshine{fill:none;stroke:#fff;stroke-width:1.4;stroke-linecap:round;opacity:.35}
.lw-planet>g{fill:none;stroke:#fbf8ff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lw-planet .lw-fill{fill:#fbf8ff}
.lw-p-sun .lw-phalo{fill:#ffcf7a}.lw-p-moon .lw-phalo{fill:#cfe1ff}.lw-p-mars .lw-phalo{fill:#ff8f8f}.lw-p-venus .lw-phalo{fill:#ffb3d9}
.lw-deg{fill:#ddd2f5;font:700 10.5px Manrope,system-ui,sans-serif}
.lw-deg .lw-r{fill:#ffb489;font-size:8.5px}
.lw-anim .lw-spin{transform-box:view-box;transform-origin:50% 50%}
@media (prefers-reduced-motion:no-preference){
  .lw-anim:not(.lw-in) .lw-spin{opacity:0;transform:rotate(-28deg) scale(.94)}
  .lw-anim.lw-in .lw-spin{animation:lw-spin-in 1.6s cubic-bezier(.2,.75,.2,1) both}
}
@keyframes lw-spin-in{from{opacity:0;transform:rotate(-28deg) scale(.94)}to{opacity:1;transform:none}}
@media (max-width:600px){
  .lw-dlab{display:none}
  .lw-deg{font-size:14px}
  .lw-hnum{font-size:13px}
  .lw-axis-l{font-size:20px}
  .lw-axis-s{font-size:14px}
}
.lw-glyph{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em}
.lw-glyph .lw-fill{fill:currentColor}
.lw-glyph .lw-txt{fill:currentColor;stroke:none;font:800 10px Manrope,system-ui,sans-serif}
.lw-legend{margin-top:14px;font-size:13px;color:#cfc6e2}
.lw-legend-planets{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px}
.lw-legend-planets span{display:inline-flex;align-items:center;gap:5px}
.lw-legend-planets .lw-glyph{color:#e8dcff;font-size:16px}
.lw-legend-lines{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:8px}
.lw-legend-lines span{display:inline-flex;align-items:center;gap:6px}
.lw-line{display:inline-block;width:22px;height:0;border-top:2px solid}
.lw-line.lw-harm{border-color:#8fd3c4}.lw-line.lw-tense{border-color:#ee9aab}.lw-line.lw-axisline{border-color:#f2d6a2}

/* значки-бейджи (пример и результат) */
.nc-badge{flex:none;display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid #d0bcfa88;background:radial-gradient(circle at 35% 30%,#3b2d78,#120e30);box-shadow:0 0 18px #b99ef240;color:#f3ecff;font-size:24px}
.nc-badge-sm{width:32px;height:32px;font-size:17px;color:#f2d6a2;border-color:#f2d6a266;box-shadow:0 0 12px #f2d6a222}
.nc-house{font:700 14px Manrope,system-ui,sans-serif;color:#f2d6a2}

/* учебный пример */
.example .chart .fine{font-size:13px;color:#bfb3d8;margin-top:10px}
.nc-demo-wheel .lw-wheel{max-width:660px;margin:0}
.section.container.example{width:min(1180px,92%);max-width:none}
.example .example-layout{grid-template-columns:1.5fr 1fr;align-items:center;gap:clamp(24px,3vw,48px)}
@media(min-width:901px){.example .chart{margin-left:clamp(-56px,-3.5vw,0px)}.nc-demo-wheel .lw-wheel{max-width:none;width:calc(100% + 24px)}}
@media(max-width:900px){.example .example-layout{grid-template-columns:1fr}}
.nc-demo .example-badge{font-size:11px;letter-spacing:.14em;padding-bottom:12px;margin-bottom:14px}
.nc-demo-who{font-family:Lora,Georgia,serif;font-size:19px;color:#efe6ff;margin:0 0 16px}
.nc-demo .reading-tabs{margin-bottom:16px}
.nc-demo .reading-tabs button{font-size:14px;cursor:pointer}
.reading-panel>p.nc-demo-explain{font-size:14px;line-height:1.6;color:#cfc6e2;margin:0 0 14px}
.nc-demo-blocks{display:grid;gap:12px}
.nc-demo-block{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:16px;border-radius:14px;background:#d0bcfa0d;border:1px solid #d0bcfa26}
.nc-demo-block .nc-badge-sm{position:absolute;left:46px;top:46px;width:26px;height:26px;font-size:14px;background:#120e30}
.nc-demo-block h4{font-family:Lora,Georgia,serif;font-size:18px;color:#f4eeff;margin:2px 0 4px;font-weight:600}
.nc-demo-block p{font-size:14px;line-height:1.65;color:#e0d8ef;margin:0}
.reading-panel>p.nc-demo-honest{font-size:13px;color:#bfb3d8;margin:16px 0 4px}
.nc-demo .button{margin-top:10px}

/* результат — широкий блок под формой */
.nc-result{scroll-margin-top:70px}
.section.container.nc-result,.section.container.pc-section{width:min(1180px,92%);max-width:none;margin-left:auto;margin-right:auto;box-sizing:border-box}
.nc-res-head .eyebrow{font-style:normal;letter-spacing:.14em;text-transform:uppercase;font-size:12px}
.nc-result[hidden]{display:none}
.nc-res-head{text-align:center;max-width:820px;margin:0 auto 18px}
.nc-res-title{font-size:clamp(28px,3.4vw,44px);line-height:1.15;margin:10px 0}
.nc-res-meta{font-size:14px;color:#cfc6e2}
.nc-res-meta a{color:#d0bcfa;border-bottom:1px solid #d0bcfa66}
.nc-res-note{max-width:760px;margin:0 auto 18px;text-align:center;font-size:14px;color:#f2d6a2}
.nc-res-top{display:grid;grid-template-columns:1.55fr 1fr;gap:28px;align-items:center;margin-bottom:30px}
.nc-wheel-card,.nc-res-side,.nc-cta,.nc-res-pane{border:1px solid #d0bcfa38;border-radius:18px;background:linear-gradient(140deg,#261c4eb8,#080a22d9)}
.nc-wheel-card{padding:14px 14px 18px;min-width:0}
.nc-res-side{padding:22px;display:grid;gap:14px;min-width:0}
.nc-trio{display:grid;gap:12px}
.nc-trio-item{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:12px;border-radius:14px;background:#d0bcfa0d}
.nc-trio-item b{display:block;font-family:Lora,Georgia,serif;font-size:19px;color:#f4eeff;font-weight:600}
.nc-trio-item span:not(.nc-badge){font-size:14px;color:#cfc6e2}
.nc-jump{justify-self:start;font-size:14px}
.nc-res-h{font-size:28px;text-align:center;margin:0 0 14px}
.nc-res-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.nc-res-tabs button{font:600 15px Manrope,system-ui,sans-serif;color:#d0bcfa;background:#b9a2f214;border:1px solid #d0bcfa4d;border-radius:999px;padding:10px 22px;cursor:pointer}
.nc-res-tabs button[aria-selected=true]{background:linear-gradient(120deg,#dfd0ff,#baa0f2);color:#17122a;border-color:transparent}
.nc-res-pane{padding:20px}
.nc-res-pane[hidden]{display:none}
.nc-res-pane .category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nc-res-pane .category-card{padding:14px 16px;border-radius:12px;background:#d0bcfa0d;border:1px solid #d0bcfa22;min-width:0}
.nc-res-pane .category-card h3{font-family:Lora,Georgia,serif;font-size:18px;line-height:1.3;margin:0 0 6px;color:#f4eeff}
.nc-res-pane .category-score{display:block;font:600 13px Manrope,system-ui,sans-serif;color:#d0bcfa;margin-top:3px}
.nc-res-pane .category-card p{font-size:14px;line-height:1.6;color:#e0d8ef;margin:0}
.nc-res-pane .section-label{font-size:20px!important;text-align:center;margin:6px 0 12px!important}
.nc-res-pane .section-hint{font-size:13px;color:#bfb3d8}
.nc-res-pane p.nc-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nc-more{margin-top:6px;background:none;border:0;padding:0;color:#d0bcfa;font:600 13px Manrope,system-ui,sans-serif;cursor:pointer;border-bottom:1px dashed #d0bcfa88}
.nc-pane-hint{font-size:14px;color:#cfc6e2;text-align:center;margin:0 0 12px}
.nc-cta{margin-top:26px;padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:12px 24px;align-items:center;border-color:#f2d6a266;box-shadow:0 0 36px #d0bcfa1f}
.nc-cta h3{font-size:30px;margin:6px 0}
.nc-cta p{font-size:15px;line-height:1.6;color:#e0d8ef;margin:0}
.nc-cta .button{font-size:16px;padding:15px 24px;cursor:pointer}
.nc-ai-result{grid-column:1/-1;font-size:15px;line-height:1.75;color:#ece5fa}
.nc-ai-result:empty{display:none}
@media(max-width:1000px){.nc-res-top{grid-template-columns:1fr}.nc-res-pane .category-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
  .nc-res-pane .category-grid{grid-template-columns:1fr}
  .nc-res-pane,.nc-wheel-card,.nc-res-side{padding:12px}
  .nc-cta{grid-template-columns:1fr;padding:18px}
  .nc-cta .button{width:100%;text-align:center}
  .nc-trio-item{gap:10px}
  .nc-res-tabs button{padding:9px 16px}
}
/* 19.10.2026: третья карточка «Совместимость пары» в «С чего начать»; при готовой карте пример чужой карты прячем */
.nc-cards{max-width:1050px}
@media(min-width:901px){.nc-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px) and (min-width:601px){.nc-card-compat{grid-column:1/-1}}
.nc-card-compat{border-color:rgba(226,190,214,.55);background:linear-gradient(135deg,rgba(120,90,220,.22),rgba(10,10,30,.55))}
#example[hidden]{display:none!important}
@media(max-width:600px){.nc-wheel-card{padding:8px 2px 14px}}

/* 20.10.2026 (Павел: «на других разделах тоже»): объёмный язык как в карточке дня лунного календаря — токены --lx-* в site-session.css */
.nc-cards .nc-card{background:radial-gradient(ellipse 90% 55% at 50% -10%,rgba(127,111,255,.22),transparent 65%),var(--lx-glass-violet),var(--lx-base);border:1px solid var(--lx-border);border-radius:18px;box-shadow:var(--lx-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.nc-cards .nc-card:hover{transform:translateY(-3px);border-color:var(--lx-border-hi);box-shadow:var(--lx-shadow-hover)}
.nc-cards .nc-card .secondary{font-size:13px}
.nc-card-icon,.nc-note-icon{border-color:rgba(208,188,250,.45);background:radial-gradient(circle at 50% 35%,rgba(185,162,242,.24),rgba(185,162,242,.04) 70%);box-shadow:0 0 22px rgba(185,162,242,.3),inset 0 1px 0 rgba(255,255,255,.12)}
.nc-note-card{background:var(--lx-glass-violet),var(--lx-base);border:1px solid var(--lx-border);box-shadow:var(--lx-shadow)}
.nc-wheel-card,.nc-res-side,.nc-res-pane{background:var(--lx-glass),linear-gradient(140deg,rgba(38,28,78,.6),rgba(8,10,34,.82));border:1px solid var(--lx-border);box-shadow:var(--lx-shadow)}
.nc-res-pane .category-card{background:var(--lx-glass-violet),rgba(19,16,42,.5);border:1px solid rgba(208,188,250,.18);border-left:3px solid rgba(185,162,242,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 6px 16px rgba(0,0,0,.22);transition:transform .2s ease,box-shadow .2s ease}
.nc-res-pane .category-card:hover{transform:translateY(-2px);box-shadow:var(--lx-shadow-hover)}
.nc-trio-item{background:var(--lx-glass-violet),rgba(19,16,42,.45);border:1px solid rgba(208,188,250,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.nc-badge{background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.55),#9d82f0 52%,#3b2d78 100%);border-color:rgba(230,220,255,.6);box-shadow:0 0 18px rgba(185,162,242,.5),inset 0 -2px 4px rgba(0,0,0,.3);color:#160f33}
.nc-badge.nc-badge-sm{background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.6),#f5c26b 55%,#7a5520 100%);border-color:rgba(255,226,168,.6);box-shadow:0 0 14px rgba(245,194,107,.42),inset 0 -2px 4px rgba(0,0,0,.3);color:#2e1c03}
.nc-res-tabs button,.pc-tabs button{background:var(--lx-chip);border-color:rgba(208,188,250,.35);box-shadow:var(--lx-chip-shadow);color:#e6dcff}
.nc-res-tabs button[aria-selected=true],.pc-tabs button[aria-selected=true]{background:var(--lx-pill-neutral);color:var(--lx-pill-neutral-c);border-color:transparent;box-shadow:var(--lx-pill-gloss),0 4px 14px var(--lx-pill-neutral-g)}
.nc-cta{background:var(--lx-glass-gold),linear-gradient(140deg,rgba(38,28,78,.6),rgba(8,10,34,.82));border:1px solid rgba(245,194,107,.3);border-left:3px solid var(--lx-gold);box-shadow:var(--lx-shadow),-3px 0 18px rgba(245,194,107,.22)}
.nc-compat-card{background:radial-gradient(ellipse 70% 80% at 0% 0%,rgba(255,122,160,.14),transparent 60%),var(--lx-glass-violet),var(--lx-base);border:1px solid var(--lx-border);border-left:3px solid var(--lx-warn);box-shadow:var(--lx-shadow),-3px 0 18px rgba(255,122,160,.2)}
@media(prefers-reduced-motion:reduce){.nc-cards .nc-card,.nc-res-pane .category-card{transition:none}.nc-cards .nc-card:hover,.nc-res-pane .category-card:hover{transform:none}}
