.vf-rel-page{max-width:1240px;margin:0 auto;padding:48px 24px 80px;color:#292433}
.vf-rel-page>h1{font:400 clamp(34px,4vw,52px)/1.16 Georgia,serif;text-align:center;margin:0 0 34px;color:#262031}
.vf-rel,.vf-rel *{box-sizing:border-box}
.vf-rel{font-family:'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.6}
.vf-rel-intro{max-width:830px;margin:0 auto 32px;text-align:center}
.vf-rel-intro h2{font:400 clamp(26px,3vw,36px)/1.25 Georgia,serif;color:#533a55;margin:0 0 18px}
.vf-rel-intro p{color:#5f5966;margin:0 0 12px}
.vf-rel-form{max-width:820px;margin:0 auto 36px;padding:22px 26px;border:1px solid #e6dce7;border-radius:18px;background:#fff;box-shadow:0 8px 30px #533a550a}
.vf-rel-form>label{display:block;font-size:14px;font-weight:600;margin-bottom:9px;color:#533a55}
.vf-rel-form-row{display:flex;gap:14px}
.vf-rel-form-row input.vf-date-field{flex:1;min-width:0;height:50px;border:1px solid #d8cbd9;border-radius:9px;background:#fff;padding:10px 13px;color:#292433;font:16px 'Segoe UI',Arial,sans-serif}
.vf-rel-form button,.vf-rel-next a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border:1px solid #633d61;border-radius:9px;background:#633d61;color:#fff;padding:10px 25px;font:600 16px 'Segoe UI',Arial,sans-serif;text-decoration:none;cursor:pointer}
.vf-rel-form button:disabled{opacity:.6;cursor:wait}
.vf-rel-error{color:#9c2844;margin:10px 0 0;font-size:14px}
.vf-rel-result-date{text-align:center;color:#625869;margin:0 0 15px}
.vf-rel-tabs{display:flex;gap:4px;max-width:570px;margin:0 auto 26px;padding:5px;border-radius:11px;background:#eee7ef}
.vf-rel-tabs button{flex:1;min-height:48px;border:0;border-radius:8px;background:transparent;color:#6d5b70;padding:10px 8px;font:600 15px 'Segoe UI',Arial,sans-serif;cursor:pointer}
.vf-rel-tabs button[aria-selected=true]{background:#fff;color:#533a55;box-shadow:0 2px 6px #533a551b}
.vf-rel-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:22px;align-items:start}
.vf-rel-matrix-card,.vf-rel-point-column{min-width:0;border:1px solid #e6dce7;border-radius:20px;background:#fff;padding:24px;box-shadow:0 6px 25px #533a5508}
.vf-rel-matrix-card h2,.vf-rel-point-column h2{font:400 29px/1.25 Georgia,serif;color:#533a55;margin:0 0 9px}
.vf-rel-matrix-caption{font-size:14px;color:#706674;margin:0 0 12px}
.vf-rel-matrix{width:100%;max-width:700px;margin:0 auto}
.vf-rel-svg{display:block;width:100%;height:auto;overflow:visible}
.vf-rel-svg .guide{fill:none;stroke:#d7cddc;stroke-width:1.5}
.vf-rel-svg .skeleton{fill:none;stroke:#917e93;stroke-width:2.2}
.vf-rel-svg .axis{fill:none;stroke:#a590a5;stroke-width:2}
.vf-rel-svg .diagonal{fill:none;stroke:#b5a4b7;stroke-width:2}
.vf-rel-svg .channel{fill:none;stroke:#a48ba9;stroke-width:2;stroke-dasharray:5 8}
.vf-rel-svg text{text-anchor:middle;dominant-baseline:middle;user-select:none}
.vf-rel-svg .family-label{font:600 11px 'Segoe UI',Arial,sans-serif;letter-spacing:2px;fill:#a18da6}
.vf-rel-svg .symbol{font:30px Georgia,serif;fill:#9b759c}
.vf-rel-svg .tick{stroke:#bdafc0;stroke-width:1.4}
.vf-rel-svg .cycle-energy{font:15px 'Segoe UI',Arial,sans-serif;fill:#816f87}
.vf-rel-svg .age-label{font:600 17px 'Segoe UI',Arial,sans-serif;fill:#6e5d73}
.vf-rel-svg .age-small{font-size:13px}
.vf-rel-svg .node circle{fill:#fff;stroke:#9c8b9e;stroke-width:2.2}
.vf-rel-svg .node.main circle{fill:#f7f0f7;stroke:#735b79;stroke-width:3}
.vf-rel-svg .node.center circle{fill:#e9ddec;stroke:#694b70;stroke-width:3.5}
.vf-rel-svg .node text{font:600 25px 'Segoe UI',Arial,sans-serif;fill:#473a4d}
.vf-rel-svg .node.small text{font-size:20px}
.vf-rel-svg .node.main text{font-size:28px}
.vf-rel-svg .node.center text{font-size:34px}
.vf-rel-svg .node.scenario-point circle{fill:#faefd5;stroke:#a37935;stroke-width:4}
.vf-rel-svg .node.scenario-point text{fill:#714e1c}
.vf-rel-svg .node.active-point circle{fill:#e5cfe9;stroke:#603563;stroke-width:6}
.vf-rel-svg .node.active-point text{fill:#4c2450}
.vf-rel-svg .node.scenario-point{cursor:pointer}
.vf-rel-cards{list-style:none;display:grid;gap:11px;padding:0;margin:18px 0 0}
.vf-rel-cards li{margin:0;padding:0}
.vf-rel-cards button{display:flex;align-items:center;gap:12px;width:100%;min-height:94px;padding:13px 14px;border:1px solid #e4d9e5;border-radius:12px;background:#fcfafc;color:#292433;text-align:left;cursor:pointer}
.vf-rel-cards button[aria-pressed=true]{border-color:#79507d;background:#f6edf7;box-shadow:inset 4px 0 #79507d}
.vf-rel-card-number{flex:none;font:400 25px Georgia,serif;color:#9b809f}
.vf-rel-card-copy{display:block;flex:1;min-width:0}
.vf-rel-card-copy strong,.vf-rel-card-copy span,.vf-rel-card-copy small{display:block;overflow-wrap:anywhere}
.vf-rel-card-copy strong{font-size:16px;line-height:1.35;color:#4d3451}
.vf-rel-card-copy span{font-size:13px;line-height:1.42;margin-top:4px}
.vf-rel-card-copy small{font-size:11px;color:#837387;margin-top:3px}
.vf-rel-energy{flex:none;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#f3e9d5;color:#785421;font:600 22px Georgia,serif}
.vf-rel-next{margin-top:27px;padding:27px;border:1px solid #e6dce7;border-radius:18px;background:#f8f4f8;text-align:center}
.vf-rel-next h2{max-width:800px;margin:0 auto 18px;font:400 24px/1.35 Georgia,serif;color:#533a55}
.vf-rel-seo-note{max-width:820px;margin:32px auto 0;text-align:center;color:#6f6573;font-size:14px}
.vf-rel-seo-note a{color:#633d61;text-decoration:underline}
.vf-rel button:focus-visible,.vf-rel a:focus-visible,.vf-rel input:focus-visible{outline:3px solid #9b6daa;outline-offset:2px}
.vf-rel [hidden]{display:none!important}
@media(max-width:900px){.vf-rel-workspace{grid-template-columns:1fr}.vf-rel-matrix-card,.vf-rel-point-column{padding:20px}.vf-rel-matrix{max-width:620px}}
@media(max-width:600px){.vf-rel-page{padding:28px 12px 55px}.vf-rel-page>h1{font-size:clamp(30px,8vw,38px);margin-bottom:25px}.vf-rel-intro{text-align:left}.vf-rel-intro h2{font-size:26px}.vf-rel-intro p{font-size:15px}.vf-rel-form{padding:17px;margin-bottom:27px}.vf-rel-form-row{flex-direction:column;gap:11px}.vf-rel-form button{width:100%}.vf-rel-tabs{margin-bottom:17px}.vf-rel-tabs button{font-size:14px;line-height:1.25;min-height:54px}.vf-rel-matrix-card,.vf-rel-point-column{padding:16px 10px}.vf-rel-matrix-card h2,.vf-rel-point-column h2{font-size:25px;padding:0 5px}.vf-rel-matrix-caption{padding:0 5px}.vf-rel-svg .minor-cycle{display:none}.vf-rel-svg .node circle{r:26px}.vf-rel-svg .node text{font-size:36px}.vf-rel-svg .node.small text{font-size:30px}.vf-rel-svg .node.small circle{r:23px}.vf-rel-svg .node.main text{font-size:38px}.vf-rel-svg .node.main circle{r:32px}.vf-rel-svg .node.center text{font-size:42px}.vf-rel-svg .node.center circle{r:39px}.vf-rel-svg .cycle-energy{font-size:20px}.vf-rel-svg .age-label{font-size:20px}.vf-rel-cards button{padding:12px 10px;min-height:88px}.vf-rel-card-number{font-size:21px}.vf-rel-card-copy strong{font-size:15px}.vf-rel-card-copy span{font-size:13px}.vf-rel-energy{width:40px;height:40px;font-size:20px}.vf-rel-next{padding:21px 14px}.vf-rel-next h2{font-size:21px}.vf-rel-next a{width:100%;font-size:14px}}
