/* Посадка «Ты и близкий» (/sovmestimost, Продакт 08.10) — поверх goroskop.css */
.sv-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:end}
.sv-and{align-self:center;margin-top:22px;font-size:18px;color:#ffe6a8;text-shadow:0 0 12px #f3d79e}
.sv-rel>div{flex-wrap:wrap}
.sv-result{max-width:1080px;margin:0 auto;padding:70px 24px 0;display:grid;gap:22px;scroll-margin-top:80px}
.sv-head{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;padding:0 8px}
.sv-coins{position:relative;display:flex;align-items:center}.sv-coins img{width:120px;height:120px;border-radius:50%;filter:drop-shadow(0 0 22px #f3d79e66)}.sv-coins img.them{margin-left:-24px}
.sv-star{position:absolute;left:50%;top:-8px;transform:translateX(-50%);font-style:normal;color:#ffe6a8;font-size:18px;text-shadow:0 0 10px #f3d79e}
.sv-head-t .g-eyebrow{margin:0 0 6px}.sv-head h2{margin:0;font:500 clamp(30px,3.6vw,46px)/1.1 var(--display,'Playfair Display',serif);color:#fff2d8}
.sv-label{margin:8px 0 0;font:italic 400 21px/1.35 var(--display,'Playfair Display',serif);color:#ffe6a8}
.sv-gauge{position:relative;width:260px;height:238px;flex:none}.sv-gauge-svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 22px #a08cff40)}
.sv-g-num{position:absolute;left:0;right:0;top:87px;text-align:center}.sv-g-num b{display:block;font:500 72px/1 var(--display,'Playfair Display',serif);color:#f3d88a;font-variant-numeric:lining-nums tabular-nums;text-shadow:0 0 30px #f3d88a59}
.sv-g-num span{display:block;margin-top:6px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#f5f0e6b3}
.sv-g-star{transition:opacity .3s}
.sv-spheres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sv-sp{position:relative;display:grid;gap:14px;padding:18px 20px 20px;border-radius:22px;background:linear-gradient(160deg,#ffffff0b,#ffffff03);box-shadow:inset 0 1px 0 #ffffff17,inset 0 0 0 1px #ffffff12,0 24px 50px -36px #000}
.sv-sp-top{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center}
.sv-sp-ic{width:64px;height:64px;border-radius:50%;filter:drop-shadow(0 6px 16px #a08cff59)}
.sv-sp-top div{display:grid;gap:3px;min-width:0}.sv-sp-top span{font:500 19px/1.2 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-sp-top small{font-size:13px;line-height:1.35;color:#cfc7ea}
.sv-sp-top>b{font:500 34px/1 var(--display,'Playfair Display',serif);color:#fff2d8}
.sv-bar{height:7px;border-radius:99px;background:#ffffff12;overflow:hidden}.sv-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7b62ff,#bba8ff);box-shadow:0 0 12px #7b62ff80}
.sv-tag{position:absolute;top:-10px;right:18px;padding:4px 10px;border-radius:99px;font:600 10px/1 var(--sans,system-ui);letter-spacing:.12em;text-transform:uppercase;font-style:normal}
.sv-sp.easy{background:linear-gradient(150deg,#f3d79e1f,#ffffff04 60%);box-shadow:inset 0 0 0 1px #f3d79e59,0 26px 50px -30px #f3d79e55}.sv-sp.easy .sv-bar i{background:linear-gradient(90deg,#e3b465,#ffe6a8);box-shadow:0 0 12px #f3d79e99}.sv-sp.easy .sv-tag{background:linear-gradient(135deg,#ffeec8,#f3d79e);color:#231a0a}
.sv-sp.spark{background:linear-gradient(150deg,#f0a3ad1f,#ffffff04 60%);box-shadow:inset 0 0 0 1px #f0a3ad59,0 26px 50px -30px #f0a3ad55}.sv-sp.spark .sv-bar i{background:linear-gradient(90deg,#f0a3ad,#ffd0d6);box-shadow:0 0 12px #f0a3ad99}.sv-sp.spark .sv-tag{background:#f0a3ad;color:#2a0f16}
.sv-sp.locked .sv-sp-ic{filter:blur(2px) saturate(.6);opacity:.7}.sv-sp.locked .sv-sp-top>b{color:#f5f0e680}.sv-sp.locked .sv-bar i{background:repeating-linear-gradient(45deg,#f3d79e66 0 4px,transparent 4px 8px);box-shadow:none}.sv-sp.locked .sv-tag{background:#ffffff14;color:#ffe6a8;box-shadow:inset 0 0 0 1px #f3d79e55}
.sv-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sv-tile{display:grid;grid-template-columns:96px 1fr;gap:20px;align-items:center;padding:22px 24px;border-radius:24px}
.sv-tile-ic{width:96px;height:96px;filter:drop-shadow(0 8px 22px #a08cff66)}
.sv-tile div{display:grid;gap:6px}.sv-tile span{font:600 10.5px/1 var(--sans,system-ui);letter-spacing:.14em;text-transform:uppercase}
.sv-tile b{font:500 26px/1.15 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-tile p{margin:0;font-size:15.5px;line-height:1.55;color:#e4dcf6}
.sv-tile.easy{background:radial-gradient(80% 120% at 0% 0%,#f3d79e24,transparent 60%),linear-gradient(160deg,#241b62cc,#120e33e6);box-shadow:inset 0 0 0 1px #f3d79e4d,0 30px 60px -40px #f3d79e66}.sv-tile.easy span{color:#ffe6a8}
.sv-tile.spark{background:radial-gradient(80% 120% at 0% 0%,#f0a3ad24,transparent 60%),linear-gradient(160deg,#241b62cc,#120e33e6);box-shadow:inset 0 0 0 1px #f0a3ad4d,0 30px 60px -40px #f0a3ad66}.sv-tile.spark span{color:#ffc3cb}
.sv-gate{display:grid;gap:14px;justify-items:center;text-align:center;padding:34px 32px;border-radius:28px;background:radial-gradient(90% 100% at 50% 0%,#f3d79e24,transparent 60%),linear-gradient(160deg,#2c2170f0,#120e33f2);box-shadow:inset 0 0 0 1px #f3d79e55,0 0 90px -40px #f3d79e}
.sv-gate h3{margin:0;max-width:30ch;font:500 clamp(24px,2.6vw,32px)/1.2 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-gate .g-eyebrow{margin:0}
.sv-perks{list-style:none;margin:4px 0;padding:0;display:grid;gap:8px;text-align:left;max-width:560px}.sv-perks li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.5;color:#e4dcf6}
.sv-perks li:before{content:'✦';position:absolute;left:0;color:#ffe6a8}
.sv-mail{display:grid;grid-template-columns:1fr auto;gap:10px;width:min(520px,100%)}
.sv-mail input{min-height:54px;padding:0 18px;border-radius:16px;border:1px solid #bba8ff40;background:#0c0926cc;color:#fff;font:16px var(--sans,system-ui)}
.sv-mail input:focus{outline:2px solid #f3d79e88;outline-offset:1px}
.sv-note{margin:0;max-width:520px;font-size:12.5px;line-height:1.5;color:#f5f0e699}
.sv-final{text-align:center;justify-items:center}
@media(max-width:760px){
 .sv-pair{grid-template-columns:1fr;gap:6px}.sv-and{display:none}
 .sv-result{padding:48px 16px 0}
 .sv-head{grid-template-columns:1fr;justify-items:center;text-align:center;gap:10px;padding:0}.sv-gauge{width:220px;height:200px;order:3}.sv-g-num{top:72px}.sv-g-num b{font-size:60px}
 .sv-coins img{width:80px;height:80px}.sv-coins img.them{margin-left:-16px}.sv-label{font-size:18px}
 .sv-spheres{grid-template-columns:1fr;gap:16px}.sv-sp{padding:16px}.sv-sp-top{grid-template-columns:52px 1fr auto;gap:12px}.sv-sp-ic{width:52px;height:52px}.sv-sp-top>b{font-size:28px}
 .sv-two{grid-template-columns:1fr}.sv-tile{grid-template-columns:72px 1fr;gap:14px;padding:18px}.sv-tile-ic{width:72px;height:72px}.sv-tile b{font-size:22px}
 .sv-gate{padding:26px 18px}.sv-mail{grid-template-columns:1fr}
}

/* «Ваша общая карта» — стили из cab-compat.js (тот же рисунок, что в кабинете) */
.cp-v-row{display:grid;grid-template-columns:1fr 1.7fr 1fr;align-items:center;gap:10px}
.cp-v-row figure{margin:0}.cp-v-row figcaption{margin-top:8px;font-size:14px;opacity:.85}
.cp-v-side svg{width:100%;aspect-ratio:1;display:block;opacity:.95;filter:drop-shadow(0 0 18px #7b62ff40)}.cp-v-side{position:relative}
.cp-v-side.a::after,.cp-v-side.b::after{content:'';position:absolute;top:50%;width:26%;height:1px;background:linear-gradient(90deg,#f3d88a00,#f3d88a99,#f3d88a00)}.cp-v-side.a::after{right:-16%}.cp-v-side.b::after{left:-16%}
.cp-syn{position:relative}.cp-syn-svg{width:100%;aspect-ratio:1;display:block;overflow:visible}
.cp-syn-svg .pl{cursor:pointer;outline:none;transition:opacity .2s}.cp-syn-svg .pl .hit{fill:transparent;stroke:none}
.cp-syn-svg .pl:hover circle:not(.hit),.cp-syn-svg .pl.on circle:not(.hit),.cp-syn-svg .pl:focus-visible circle:not(.hit){stroke-width:2.4;filter:drop-shadow(0 0 6px #f3d88a)}
.cp-syn-svg.focus .pl:not(.on){opacity:.45}.cp-syn-svg.focus .cp-syn-links path{opacity:.12;transition:opacity .2s}.cp-syn-svg.focus .cp-syn-links path.on{opacity:1}.cp-syn-svg.focus .cp-syn-links path.gl.on{opacity:.45}
.cp-tip-pop{position:absolute;z-index:3;width:250px;padding:12px 14px;border-radius:14px;background:#120e33f2;border:1px solid #d9c8ff55;box-shadow:0 18px 40px -12px #000;text-align:left;font-size:13px;pointer-events:none}
.cp-tip-pop .t-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.cp-tip-pop b{font-size:15px;color:#fff6d8}
.cp-tip-pop .t-who{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.cp-tip-pop .t-who.a{background:#7b62ff44}.cp-tip-pop .t-who.b{background:#f3d88a33;color:#f3d88a}
.cp-tip-pop .t-sign{margin:4px 0 2px;color:#f3d88a}.cp-tip-pop .t-mean{margin:2px 0 6px;opacity:.8}
.cp-tip-pop ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.cp-tip-pop li{display:flex;gap:8px;align-items:center}
.cp-tip-pop li i{flex:none;width:14px;height:3px;border-radius:2px}.cp-tip-pop li i.soft{background:#f3d88a}.cp-tip-pop li i.hard{background:#ff8fb3}.cp-tip-pop li i.conj{background:#c79bff}
.cp-v-wheel{position:relative}.cp-coin{position:absolute;left:50%;top:50%;width:34%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;padding:2px;background:linear-gradient(140deg,#f3d88a,#9f8cff 60%,#f3d88a);box-shadow:0 0 0 6px #120e33cc,0 0 28px -4px #f3d88a99}
.cp-syn-ring circle{fill:none;stroke:#bba8ff33}.cp-syn-ring circle.in{stroke:#bba8ff1a;stroke-dasharray:2 5}.cp-syn-ring line{stroke:#bba8ff33}.cp-syn-ring .sg{fill:#d9c8ffaa;font-size:13px;font-family:'Apple Symbols','Segoe UI Symbol',sans-serif}
.cp-syn-links .ln{stroke-dasharray:600;stroke-dashoffset:600;animation:cpLn 1.6s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i)*70ms + .2s)}
@keyframes cpLn{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.cp-syn-links .ln{animation:none;stroke-dashoffset:0}}
.cp-syn-svg .pl circle{stroke-width:1.4}.cp-syn-svg .pl text{font-size:11px;font-family:'Apple Symbols','Segoe UI Symbol',sans-serif}
.cp-syn-svg .pl.a circle{fill:#2a1f6e;stroke:#c79bff}.cp-syn-svg .pl.a text{fill:#e6dbff}.cp-syn-svg .pl.b circle{fill:#2a2150;stroke:#f3d88a}.cp-syn-svg .pl.b text{fill:#f3d88a}
.cp-syn-core circle{fill:#1a1442;stroke:#f3d88a66}.cp-syn-core .star{filter:drop-shadow(0 0 8px #f3d88aaa);transform-box:fill-box;transform-origin:center;animation:cpStar 4s ease-in-out infinite}
@keyframes cpStar{50%{transform:scale(1.08) rotate(8deg);filter:drop-shadow(0 0 14px #f3d88a)}}@media (prefers-reduced-motion:reduce){.cp-syn-core .star{animation:none}}
.cp-v-legend{display:flex;justify-content:center;gap:16px;margin-top:6px;font-size:13px;opacity:.85}.cp-v-legend span{display:inline-flex;align-items:center;gap:6px}
.cp-v-legend i{display:inline-block;width:18px;height:3px;border-radius:2px}.cp-v-legend i.soft{background:#f3d88a}.cp-v-legend i.hard{background:#ff8fb3}.cp-v-legend i.conj{background:#c79bff}
@media (max-width:760px){.cp-verdict{padding:26px 16px 24px}.cp-v-row{grid-template-columns:1fr;gap:14px}.cp-v-side{display:none} /* на телефоне только общая карта: личные круги мелкие и без подсказок (решение владельца 08.10) */}
.cp-tip-pop{position:absolute;z-index:3;width:250px;padding:12px 14px;border-radius:14px;background:#120e33f2;border:1px solid #d9c8ff55;box-shadow:0 18px 40px -12px #000;text-align:left;font-size:13px;pointer-events:none}
.cp-tip-pop .t-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.cp-tip-pop b{font-size:15px;color:#fff6d8}
.cp-tip-pop .t-who{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.cp-tip-pop .t-who.a{background:#7b62ff44}.cp-tip-pop .t-who.b{background:#f3d88a33;color:#f3d88a}
.sv-syn{padding:10px 0 0;text-align:center}.sv-syn .g-eyebrow{margin:0 0 6px}.sv-syn-sub{max-width:640px;margin:0 auto 18px}
.sv-syn .cp-v-title{font-family:var(--display,'Playfair Display',serif);font-weight:500;font-size:clamp(26px,3.4vw,40px);line-height:1.15;max-width:860px;margin:6px auto 10px;color:#fff2d8}
@keyframes cpLn{to{stroke-dashoffset:0}}
/* «Ваша общая карта» — заголовок как у разделов страницы, больше воздуха (владелец, 08.10) */
.sv-syn{padding:90px 0 20px}.sv-syn .g-eyebrow{margin:0 0 14px}
.sv-syn h2.cp-v-title{font:500 clamp(30px,3.8vw,50px)/1.1 var(--display,'Playfair Display',serif);max-width:900px;margin:0 auto 18px;color:#fff2d8}
.sv-syn-sub{margin:0 auto 44px}
@media(max-width:760px){.sv-syn{padding:64px 0 10px}.sv-syn-sub{margin-bottom:28px}}

/* блок почты: стекло, бенефиты с гравюрами, свечение за курсором (владелец, 08.10) */
.sv-gate{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(160deg,#ffffff12,#ffffff05 55%,#ffffff0a);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);box-shadow:inset 0 1px 0 #ffffff26,inset 0 0 0 1px #ffffff1a,0 40px 90px -50px #000,0 0 90px -50px #f3d79e}
.sv-gate:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(460px circle at var(--mx,50%) var(--my,50%),#f3d79e47,#a08cff29 40%,transparent 70%)}
.sv-gate:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;padding:1px;opacity:0;transition:opacity .35s;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),#f3d79ecc,transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.sv-gate.lit:before,.sv-gate.lit:after{opacity:1}
.sv-perks{list-style:none;margin:8px 0 6px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:none;width:100%;text-align:left}
.sv-perks li{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:#ffffff08;box-shadow:inset 0 1px 0 #ffffff14,inset 0 0 0 1px #ffffff12}
.sv-perks li:before{content:none}
.sv-perk-ic{width:64px;height:64px;filter:drop-shadow(0 6px 16px #a08cff66)}
.sv-perks li div{display:grid;gap:3px}.sv-perks b{font:500 17px/1.25 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-perks span{font-size:13.5px;line-height:1.45;color:#cfc7ea}
@media(max-width:900px){.sv-perks{grid-template-columns:1fr}}
@media(hover:none){.sv-gate:before,.sv-gate:after{display:none}}
.sv-slot{display:grid;gap:10px;justify-items:center;width:min(560px,100%);margin:28px auto 0;padding:22px 22px 18px;border-radius:24px;text-align:center;background:linear-gradient(160deg,#ffffff12,#ffffff05 55%,#ffffff0a);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #ffffff26,inset 0 0 0 1px #f3d79e40,0 0 70px -40px #f3d79e}
.sv-slot-t{margin:0;font:500 22px/1.25 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-slot .sv-mail{width:100%}.sv-slot .g-error{margin:0;min-height:0}
.sv-gate-wrap{max-width:1080px;margin:0 auto;padding:80px 24px 10px}.sv-pre-cta{width:min(420px,100%);justify-content:space-between}
@media(max-width:760px){.sv-gate-wrap{padding:56px 16px 6px}}
.sv-perks li{background:none;box-shadow:none;padding:6px 4px}
.g-page .accent-quote.gp-quote{grid-column:1/-1;order:2;margin:26px auto 30px;padding:46px 40px;width:100%}
@media(max-width:760px){.g-page .accent-quote.gp-quote{padding:34px 18px;margin:16px auto 20px}}
.g-page .accent-quote.gp-quote:before{content:none}
/* узкие телефоны (≤420): сферы компактнее — без подсказки, иконка меньше */
@media(max-width:420px){
 .sv-sp{padding:14px 14px 16px;gap:10px}.sv-sp-top{grid-template-columns:44px 1fr auto;gap:10px}.sv-sp-ic{width:44px;height:44px}
 .sv-sp-top small{display:none}.sv-sp-top span{font-size:17px}.sv-sp-top>b{font-size:26px}
 .sv-spheres{gap:14px}
}
.sv-mail .g-go{gap:12px;justify-content:space-between}
/* результат подстраивается под ширину своей колонки, а не экрана: на SEO-страницах калькулятор стоит в колонке ~820px (Продакт, 08.10) */
.sv-result{container-type:inline-size}
@container (max-width:940px){
 .sv-spheres{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sv-head{gap:22px}.sv-coins img{width:96px;height:96px}.sv-gauge{width:220px;height:200px}.sv-g-num{top:72px}.sv-g-num b{font-size:60px}
 .sv-perks{grid-template-columns:1fr}
}
@container (max-width:640px){
 .sv-spheres{grid-template-columns:1fr}
 .sv-head{grid-template-columns:1fr;justify-items:center;text-align:center}
}

/* «Как это работает»: расчёт по картам — разбор от ИИ (владелец, 08.10) */
.sv-how{max-width:1080px;margin:0 auto;padding:70px 24px 0}.sv-how h2{margin:6px 0 30px;font-size:clamp(28px,3.4vw,44px);line-height:1.1}
.sv-how-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:st}
.sv-how-steps li{position:relative;display:grid;justify-items:center;gap:10px;text-align:center;padding:26px 22px 24px;border-radius:24px;background:linear-gradient(160deg,#ffffff0d,#ffffff04);box-shadow:inset 0 1px 0 #ffffff1a,inset 0 0 0 1px #ffffff12;counter-increment:st}
.sv-how-steps li:before{content:counter(st);position:absolute;top:14px;left:16px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font:600 12px/1 var(--sans,system-ui);color:#1b1440;background:linear-gradient(135deg,#ffeec8,#f3d79e)}
.sv-how-ic{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,#7b62ff40,#120e3300 70%);box-shadow:inset 0 0 0 1px #f3d79e33,0 0 30px -8px #f3d79e66}.sv-how-ic img{width:72px;height:72px;object-fit:contain}
.sv-how-steps b{font:500 21px/1.2 var(--display,'Playfair Display',serif);color:#fff2d8}.sv-how-steps p{margin:0;font-size:15px;line-height:1.55;color:#cfc7ea}
.sv-how-steps li.ai{background:radial-gradient(120% 120% at 50% 0%,#50b4ff2e,transparent 60%),linear-gradient(160deg,#28468ccc,#14285099);box-shadow:inset 0 0 0 1px #78dcff55,0 0 60px -30px #6ed2ff}
.sv-how-steps li.ai .sv-how-ic{background:radial-gradient(circle,#96e6ff47,#14285033 70%);box-shadow:0 0 0 2px #96e6ff8c,0 0 30px #6ed2ff8c}
.sv-how-steps li.ai:before{background:#9ff5dc;color:#0b2a3a}
@media(max-width:760px){.sv-how{padding:52px 16px 0}.sv-how-steps{grid-template-columns:1fr}.sv-how-steps li{grid-template-columns:72px 1fr;justify-items:start;text-align:left;column-gap:14px;padding:18px 16px}.sv-how-ic{grid-row:1/3;width:72px;height:72px}.sv-how-ic img{width:56px;height:56px}.sv-how-steps b{font-size:18px;align-self:end}.sv-how-steps p{font-size:14px}.sv-how-steps li:before{top:10px;left:10px;width:22px;height:22px}}
