/* Uses the approved X4GEN palette, fonts, container and buttons. */
.x4-intake-review{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:0 0 28px;min-width:0}
.x4-intake-review h4{font-family:var(--font-display);font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.4;margin:0 0 20px;text-wrap:balance}
.x4-intake-review dl{margin:0}.x4-intake-review dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:12px 0;border-top:1px solid var(--line)}
.x4-intake-review dt{font-weight:600}.x4-intake-review dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.6}.x4-intake-review .x4-note{margin-bottom:0}
@media(max-width:767px){.x4-intake-review dl>div{grid-template-columns:minmax(0,1fr);gap:6px}}
.x4-expert{scroll-margin-top:110px}
.x4-hero-focus{font-size:clamp(.84rem,1vw,1.03rem)!important;color:var(--blue)!important;margin:14px 0!important;max-width:40rem}
.x4-portal-shell{width:var(--container);margin:0 auto}
.x4-directions,.x4-faq,.x4-portal{scroll-margin-top:100px}
.x4-directions{border-top:1px solid rgba(130,151,171,.18)}
.x4-direction{display:grid;grid-template-columns:2rem minmax(0,1fr) minmax(200px,auto);gap:24px;align-items:center;border-top:1px solid rgba(130,151,171,.24);padding:32px 0}
.x4-direction-number{align-self:start;color:var(--blue);font-variant-numeric:tabular-nums;font-size:1rem;padding-top:6px}
.x4-direction h3{font-family:var(--font-display);font-size:clamp(1.4rem,2.15vw,2.3rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 14px}
.x4-direction p{max-width:70ch;line-height:1.6;margin:0 0 10px}
.x4-note{font-size:.88rem;opacity:.7;line-height:1.6!important}
.x4-portal{background:var(--white,#fff);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,4vw,56px);margin:clamp(56px,5vw,80px) auto clamp(64px,6vw,96px);min-width:0;color:var(--text,#263244)}
.content-shell>.x4-portal{padding:clamp(24px,4vw,56px);width:var(--container);margin:clamp(56px,5vw,80px) auto clamp(64px,6vw,96px)}
.content-shell>.x4-portal+section{border-top:0}
.x4-portal::before,.x4-portal::after{content:none}
.x4-portal-heading{margin-bottom:28px}
.x4-portal h2,.x4-expert h2,.x4-faq h2{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,3.4rem);letter-spacing:-.035em;line-height:1.12;margin:0 0 20px;text-wrap:balance}
.x4-portal-heading h2{margin-bottom:16px}
.x4-portal-heading p{margin-bottom:0}
.x4-portal-heading p,.x4-expert p{line-height:1.6;max-width:70ch}
.x4-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.x4-portal button,.x4-expert button,.x4-faq button,.x4-dialog button{font:inherit;cursor:pointer}
.x4-portal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px;border-bottom:1px solid rgba(130,151,171,.24);padding-bottom:16px}
.x4-portal-tabs button,.x4-portal-footer button,.x4-mini-button,.x4-privacy-link{border:1px solid rgba(130,151,171,.28);background:transparent;color:inherit;padding:12px 22px;transition:background .18s,color .18s,transform .18s;border-radius:999px;font:inherit;cursor:pointer}
.x4-portal-tabs button,.x4-portal-footer button{min-height:54px;max-width:100%;font-family:var(--font-display);font-weight:650;line-height:1.35}
.x4-mini-button{font-family:var(--font-display);font-weight:600;max-width:100%;padding:10px 16px}
.x4-portal-tabs button:active,.x4-portal-footer button:active,.x4-mini-button:active{transform:translateY(1px)}
.x4-portal-tabs button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}
.x4-portal-tabs button:hover,.x4-portal-footer button:hover,.x4-mini-button:hover{background:rgba(90,141,202,.16)}
.x4-portal :focus-visible,.x4-expert :focus-visible,.x4-faq :focus-visible,.x4-dialog :focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.x4-portal label,.x4-expert label{display:grid;gap:9px;margin:0 0 20px;min-width:0;line-height:1.4}
.x4-portal input,.x4-portal select,.x4-portal textarea,.x4-expert input,.x4-expert select{box-sizing:border-box;width:100%;min-width:0;border:1px solid rgba(130,151,171,.34);background:rgba(128,153,178,.06);color:inherit;font:inherit;padding:14px 16px;border-radius:2px;line-height:1.5}
.x4-portal option,.x4-expert option{background:var(--white,#fff);color:var(--ink,#08111f)}
.x4-directions .button.ghost,.x4-portal .button.ghost,.x4-expert .button.ghost{color:var(--ink);background:var(--white);border:1px solid var(--line-strong)}
.x4-directions .button,.x4-portal .button,.x4-expert .button{box-sizing:border-box;max-width:100%;min-height:54px;padding:14px 24px;border:1px solid var(--line-strong);border-radius:999px;background:var(--white);color:var(--ink);font:inherit;line-height:1.35;text-align:center;white-space:normal;text-decoration:none}
.x4-directions .button:hover,.x4-portal .button:hover,.x4-expert .button:hover{border-color:var(--blue);background:var(--white);color:var(--ink)}
.x4-portal input,.x4-portal select,.x4-portal textarea,.x4-expert input,.x4-expert select{border-radius:12px}
.x4-select{position:relative;min-width:0;width:100%;font:inherit}
.x4-select>select{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;border:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none}
.x4-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;box-sizing:border-box;width:100%;min-height:54px;padding:14px 16px;border:1px solid rgba(130,151,171,.34);border-radius:12px;background:rgba(128,153,178,.06);color:var(--ink);font:inherit;text-align:left;line-height:1.5;cursor:pointer;transition:border-color .18s,background-color .18s}
.x4-select-value{min-width:0;overflow-wrap:anywhere}
.x4-select-trigger svg{flex:none;transition:transform .18s}
.x4-select-trigger:hover{border-color:var(--blue);background:rgba(128,153,178,.1)}
.x4-select-trigger[aria-expanded=true]{border-color:var(--blue);background:var(--white)}
.x4-select-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.x4-select-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.x4-select-trigger[aria-invalid=true]{border-color:#b44a33}
.x4-select-trigger.is-placeholder{color:var(--muted,#677584)}
.x4-select-trigger:disabled{cursor:not-allowed!important;opacity:.55}
.x4-select-error{display:block;margin-top:8px;color:#873523;font-size:.85rem;line-height:1.5}
.x4-select-error[hidden]{display:none!important}
/* Menu sits above the site header (30) but below modal dialogs. */
.x4-select-menu{position:fixed;z-index:35;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:6px;border:1px solid var(--line-strong);border-radius:14px;background:var(--white,#fff);color:var(--ink,#08111f);box-shadow:0 12px 32px rgba(26,46,66,.12);font:inherit;line-height:1.5;animation:x4-select-enter .16s var(--ease,ease-out)}
.x4-select-option{position:relative;min-height:44px;box-sizing:border-box;display:flex;align-items:center;padding:10px 38px 10px 12px;border-radius:9px;overflow-wrap:anywhere;cursor:pointer}
.x4-select-option.is-active{background:rgba(90,141,202,.12);color:var(--blue)}
.x4-select-option[data-selected=true]::after{content:"";position:absolute;right:15px;width:6px;height:11px;border:solid var(--blue);border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-2px)}
@keyframes x4-select-enter{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.x4-select-menu{animation:none}.x4-select-trigger,.x4-select-trigger svg{transition:none}}
@media(forced-colors:active){.x4-select-menu,.x4-select-trigger{background:Canvas;color:CanvasText;border-color:CanvasText}.x4-select-option.is-active{background:Highlight;color:HighlightText}.x4-select-option[data-selected=true]::after{border-color:HighlightText}}
.x4-choice{border-radius:var(--radius-md)}
.x4-portal textarea{min-height:112px;max-height:340px;resize:vertical;overflow:auto}
.x4-portal input[type=checkbox]{width:18px;height:18px;margin-top:3px;accent-color:var(--blue);flex:none}
.x4-portal label.x4-consent{display:flex;gap:12px;align-items:start;font-size:.9rem}
.x4-portal form{max-width:900px}
.x4-form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}
.x4-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.x4-step{color:var(--blue);font-size:.8rem;margin-bottom:16px}
.x4-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.x4-choice{border:1px solid rgba(130,151,171,.28);padding:24px;text-align:left;background:transparent;color:inherit;transition:background .2s;display:flex;flex-direction:column;gap:10px}
.x4-choice strong{font-size:1.15rem}.x4-choice span{font-size:.88rem;opacity:.7;line-height:1.5}.x4-choice:hover{background:rgba(90,141,202,.1)}
.x4-portal-footer{border-top:1px solid rgba(130,151,171,.24);margin-top:32px;padding-top:24px;display:flex;gap:10px;flex-wrap:wrap}
.x4-portal-footer p{flex-basis:100%;font-size:.85rem;opacity:.75;line-height:1.6;margin:8px 0}.x4-portal-footer [data-portal-link]{flex-basis:100%;line-height:1.6}
.x4-portal-error,.x4-expert-error{border-left:3px solid #b44a33;color:#873523;background:rgba(239,146,126,.07);padding:14px 18px;line-height:1.6}
.x4-ticket{border-top:1px solid rgba(130,151,171,.25);padding:24px 0;overflow-wrap:anywhere}
.x4-ticket-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:baseline}.x4-ticket h3{margin:0;font-size:1.15rem}
.x4-ticket p,.x4-ticket li{line-height:1.6;white-space:pre-wrap}.x4-ticket time{font-size:.8rem;opacity:.65}.x4-ticket details{margin:20px 0}.x4-ticket summary{cursor:pointer}.x4-ticket ol{padding-left:22px}
.x4-success{border-left:3px solid var(--blue);padding:8px 24px;margin:24px 0}.x4-success code{display:block;overflow-wrap:anywhere;white-space:normal;background:rgba(128,153,178,.07);padding:14px;font-size:.9rem;line-height:1.6}
.x4-telegram-notice{margin:28px 0;padding:24px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);max-width:70ch}
.x4-telegram-notice h4{font-size:1.15rem;line-height:1.4;margin:0 0 12px}.x4-telegram-notice p,.x4-telegram-notice li{line-height:1.6;overflow-wrap:anywhere}.x4-telegram-notice ol{padding-left:24px}.x4-telegram-notice li+li{margin-top:8px}.x4-telegram-notice code{display:inline;padding:2px 6px;font-size:inherit;border-radius:4px}.x4-telegram-notice .x4-form-actions{margin-top:20px}
.x4-expert{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,4vw,64px);padding:48px 0;border-top:1px solid rgba(130,151,171,.24)}
.x4-expert-aside{padding:24px 0}.x4-expert-aside h2{font-size:clamp(1.4rem,2vw,2.2rem)}.x4-expert-aside h3{font-size:1.2rem}.x4-expert hr{border:0;border-top:1px solid rgba(130,151,171,.24);margin:30px 0}
.x4-expert input[type=range]{accent-color:var(--blue);padding:0;border:0;background:transparent;margin:8px 0}.x4-expert output{font-variant-numeric:tabular-nums;color:var(--blue)}
.x4-calculation{font-size:clamp(1.4rem,2vw,2rem);color:var(--blue);font-variant-numeric:tabular-nums}
.x4-faq-list{border-top:1px solid rgba(130,151,171,.24)}.x4-faq-list article{border-bottom:1px solid rgba(130,151,171,.24)}.x4-faq-list h3{margin:0}
.x4-faq-list button{display:flex;width:100%;justify-content:space-between;align-items:center;gap:24px;text-align:left;background:transparent;border:0;color:inherit;padding:24px 0;font-size:clamp(1.03rem,1.5vw,1.4rem);line-height:1.4}
.x4-faq-list button span{color:var(--blue);flex:none}.x4-faq-list button:hover{color:var(--blue)}
.x4-dialog{background:var(--paper,#f8fafc);color:var(--text,#263244);max-width:740px;width:calc(100% - 40px);max-height:85dvh;border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,5vw,48px);box-sizing:border-box;overflow:auto}
.x4-dialog::backdrop{background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}.x4-dialog h2{font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,2.2rem);margin:20px 0;line-height:1.2}.x4-dialog p{line-height:1.75}.x4-dialog-close{position:absolute;right:16px;top:12px;border:0;color:inherit;background:transparent;font-size:2rem!important;width:36px;height:36px}
.x4-privacy-link{display:block;margin:20px auto;font-size:.8rem;color:inherit}
body[data-portal-guide] .detail-card{grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
body[data-portal-guide] .detail-card h2,body[data-portal-guide] .detail-card-summary>span{font-family:var(--font-display);font-size:clamp(1.0625rem,1.35vw,1.375rem);font-weight:750;line-height:1.3;margin:0;letter-spacing:-.02em;color:var(--ink);text-wrap:pretty;min-width:0;max-width:100%;overflow-wrap:normal;word-break:normal}
body[data-portal-guide] .detail-card-summary>span{display:block;width:auto;min-height:0;padding:0;background:transparent;border-radius:0;text-align:left;white-space:normal}
body[data-portal-guide] .detail-card p{padding-top:0;min-width:0}
body[data-portal-guide] .detail-side-stack{min-width:0;margin-top:0}
body[data-portal-guide] .detail-side-stack .detail-aside{box-sizing:border-box;width:100%;min-width:0}
body[data-portal-guide] .detail-side-stack .back-link{position:static;inset:auto;z-index:auto;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:50px;height:auto;padding:12px 18px;border-radius:999px;font-size:.9375rem;line-height:1.4;white-space:normal;justify-self:stretch}
body[data-portal-guide] .detail-side-stack .back-link::before{content:none}
body[data-portal-guide] .detail-side-stack .back-link span{display:inline}
body[data-portal-guide] .detail-side-stack .back-link:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
@media(min-width:1021px) and (max-height:700px){body[data-portal-guide] .detail-side-stack{position:static;top:auto;transform:none!important;will-change:auto}}
.x4-portal [hidden],.x4-expert [hidden]{display:none!important}.x4-portal button:disabled,.x4-expert button:disabled{opacity:.55;cursor:wait}
@media(max-width:760px){.x4-direction{grid-template-columns:24px minmax(0,1fr);gap:16px;padding:26px 0}.x4-direction>.button{grid-column:2;justify-self:start;max-width:100%;white-space:normal}.x4-expert{grid-template-columns:1fr}.x4-expert-aside{border-top:1px solid rgba(130,151,171,.24)}.x4-form-grid,.x4-choices{grid-template-columns:1fr}.x4-portal,.content-shell>.x4-portal{margin:40px auto 56px;padding:24px}.x4-portal-tabs{gap:10px}.x4-portal-tabs button,.x4-portal-footer button{min-height:48px;font-size:.85rem;padding:11px 18px}.x4-portal-footer{gap:10px}.x4-portal-heading{margin-bottom:24px}.x4-dialog{width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.x4-portal *,.x4-expert *{scroll-behavior:auto!important;transition:none!important}}
