/* Vital's one-question workspace, informed by the Galaxy builder structure. */
:root{color-scheme:light;--vg-ink:#302040;--vg-muted:#655a70;--vg-purple:#69448c;--vg-teal:#177a77;--vg-line:#ddd3e5;--vg-soft:#f4eff9}
*{box-sizing:border-box}
html{background:#f4f1f7;scroll-padding-top:20px}
body.vg-studio{margin:0;padding:28px 24px;min-height:100vh;background:radial-gradient(ellipse at 6% 0%,#e8e0f155,transparent 55%),#f4f1f7;color:var(--vg-ink);font-family:'Open Sans','Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
.vg-studio :is(button,input,select,textarea){font:inherit}
.vg-studio [hidden]{display:none!important}
.vg-studio a{color:var(--vg-purple);text-underline-offset:4px}
.vg-studio button{cursor:pointer}
.vg-studio button:disabled{cursor:default}
.vg-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.vg-fieldset{border:0;padding:0;margin:0;min-width:0}
.vg-trust{font-size:11px;line-height:1.8;color:var(--vg-muted);margin:16px 0 0}
.vg-skip{position:fixed;top:-90px;left:16px;z-index:99;padding:13px 20px;background:#fff;border:2px solid var(--vg-teal)}
.vg-skip:focus{top:12px}
.vg-shell{display:grid;grid-template-columns:270px minmax(0,1fr);width:min(100%,1120px);min-height:730px;margin:0 auto;border:1px solid var(--vg-line);border-radius:8px;background:#fff;box-shadow:0 18px 52px #30173d14;overflow:clip}
.vg-brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 28px;border-bottom:1px solid var(--vg-line);background:#fff}
.vg-brand a{display:inline-flex;align-items:center}
.vg-brand-logo{display:block;width:210px;max-width:100%;height:auto;object-fit:contain}
.vg-exit{min-height:44px;font-size:13px;font-weight:650;text-decoration:none;border:1px solid var(--vg-line);padding:9px 14px;border-radius:5px;background:#faf8fc}
.vg-context{padding:32px 25px;border-right:1px solid var(--vg-line);background:linear-gradient(155deg,#f2ebf8,#fcfbfd 75%);min-width:0}
.vg-eyebrow{color:var(--vg-purple);font-size:10px;font-weight:800;letter-spacing:1.8px;line-height:1.6;text-transform:uppercase;margin:0 0 12px}
.vg-context h2{font-size:27px;line-height:1.3;letter-spacing:-.5px;font-weight:750;margin:0 0 16px}
.vg-intro{font-size:13px;line-height:1.8;color:var(--vg-muted);margin:0 0 30px}
.vg-stages{list-style:none;margin:0 0 25px;padding:0;display:grid;gap:0}
.vg-stages li{position:relative;min-height:76px}
.vg-stages li:not(:last-child)::after{content:'';position:absolute;left:14px;top:38px;bottom:4px;width:1px;background:var(--vg-line)}
.vg-stages button{display:flex;align-items:flex-start;gap:12px;padding:4px 0 10px;border:0;background:none;color:var(--vg-muted);text-align:left;width:100%;min-height:44px}
.vg-stage-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #c7b7d4;border-radius:50%;font-size:11px;font-weight:750;background:#fff}
.vg-stages strong{display:block;font-size:12px;line-height:1.5;margin:4px 0}
.vg-stages small{display:block;font-size:11px;line-height:1.5}
.vg-stages [aria-current="step"] .vg-stage-number,.vg-stages button[aria-current="step"] .vg-stage-number{background:var(--vg-purple);border-color:var(--vg-purple);color:#fff;box-shadow:0 0 0 4px #e8dff0}
.vg-stages [aria-current="step"] strong{color:var(--vg-ink)}
.vg-cost-note{border-top:1px solid var(--vg-line);padding-top:20px;font-size:12px;line-height:1.8;color:var(--vg-muted)}
.vg-cost-note strong,.vg-cost-note b{color:var(--vg-ink)}
.vg-cost-note p{margin:0 0 12px}
.vg-cost-note a{display:inline-flex;min-height:36px;align-items:center}
.vg-promo{margin-top:12px;border-top:1px solid var(--vg-line);padding-top:8px;font-size:12px;line-height:1.6}
.vg-promo summary{display:list-item;cursor:pointer;min-height:44px;padding:12px 0;font-weight:700;color:var(--vg-purple)}
.vg-promo label{display:block;font-weight:650;margin-bottom:7px}
.vg-promo-controls{display:flex;flex-wrap:wrap;gap:6px}
.vg-promo input{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid #b6a5c7;background:#fff;border-radius:4px;font-size:14px;color:var(--vg-ink)}
.vg-promo button{min-height:44px;border:1px solid #b6a5c7;background:#fff;border-radius:4px;padding:8px 12px;color:var(--vg-purple);font-size:12px;font-weight:750}
.vg-promo button:disabled{color:#6d6076;background:#eee8f3}
.vg-promo [data-vital-coupon-message],.vg-promo [data-vital-referral-summary]{display:block;color:var(--vg-muted);font-size:11px;margin-top:8px;line-height:1.7}
.vg-promo .sale-terms-fineprint{font-size:11px;line-height:1.75;color:var(--vg-muted);margin:12px 0 0}
.vg-workspace{padding:24px 36px 0;min-width:0;display:flex;flex-direction:column}
.vg-mode-switch{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--vg-line)}
.vg-mode-switch>span{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;font-weight:750;color:var(--vg-muted)}
.vg-mode-options{display:flex;gap:3px;border:1px solid #cfbfdc;padding:4px;border-radius:5px;min-width:0;background:#fff}
.vg-mode-options :is(a,span,strong){display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;line-height:1.5;font-weight:700;padding:9px 13px;text-decoration:none;border-radius:3px;text-align:center}
.vg-mode-options [aria-current="page"]{background:var(--vg-purple);color:#fff}
.vg-mode-options a:hover{background:var(--vg-soft)}
.vg-form{display:flex;flex-direction:column;flex:1;min-width:0;margin:0}
.vg-nav{display:flex;align-items:center;gap:15px;margin:20px 0 0;min-width:0}
.vg-back{flex:0 0 auto;min-width:44px;min-height:44px;border:1px solid var(--vg-line);border-radius:5px;color:var(--vg-purple);background:#fff;padding:7px 12px;font-size:16px}
.vg-back:disabled{opacity:.4}
.vg-progress-meta{flex:1;min-width:0;display:grid;gap:8px;font-size:11px;color:var(--vg-muted);line-height:1.5}
.vg-progress-meta progress{display:block;width:100%;height:4px;border:0;background:#e8dff0;border-radius:3px;overflow:hidden;appearance:none}
.vg-progress-meta progress::-webkit-progress-bar{background:#e8dff0}
.vg-progress-meta progress::-webkit-progress-value{background:var(--vg-teal)}
.vg-progress-meta progress::-moz-progress-bar{background:var(--vg-teal)}
.vg-screen{padding:26px 0 24px;outline:none;scroll-margin-top:20px}
.vg-screen-heading h1,.vg-screen-heading h2{font-size:clamp(26px,2.5vw,33px);font-weight:750;line-height:1.3;letter-spacing:-.6px;color:var(--vg-ink);margin:0;text-wrap:pretty}
.vg-screen-heading :is(h1,h2):focus{outline:none}
.vg-hint{font-size:14px;line-height:1.8;color:var(--vg-muted);margin:13px 0 0;max-width:620px}
.vg-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;margin:24px 0 0;border:0;min-width:0}
.vg-choice{position:relative;display:flex;align-items:flex-start;gap:12px;min-width:0;min-height:88px;padding:18px 16px;border:1px solid #d5c9df;border-radius:5px;background:#fff;box-shadow:0 3px 10px #2f174308;cursor:pointer;transition:border-color .16s,box-shadow .16s}
.vg-choice:hover{border-color:#8964a8;box-shadow:0 5px 14px #3a20580c}
.vg-choice:has(input:checked){border-color:var(--vg-purple);box-shadow:inset 0 0 0 1px var(--vg-purple);background:#fff}
.vg-choice input{appearance:auto;flex:0 0 19px;width:19px;height:19px;margin:3px 0 0;accent-color:var(--vg-purple)}
.vg-choice-copy{display:block;min-width:0;flex:1}
.vg-choice-copy strong{display:block;font-size:14px;font-weight:750;line-height:1.5;color:var(--vg-ink)}
.vg-choice-copy small{display:block;font-size:12px;line-height:1.7;color:var(--vg-muted);margin-top:6px}
.vg-choice-copy svg{width:20px;height:20px;stroke:var(--vg-purple)}
.vg-package-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:12px}
.vg-package-price strong{font-size:21px;font-weight:800;color:var(--vg-purple)}
.vg-package-price del{color:var(--vg-muted);font-size:12px}
.vg-package-price small{margin:0;font-size:11px}
.vg-choice-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.vg-choice-top .vg-package-price{margin:0}
.vg-price-caption{display:block;margin-top:4px;font-size:10px;line-height:1.6;color:var(--vg-muted)}
.vg-selection-status,.vg-small-note{font-size:12px;line-height:1.8;color:var(--vg-muted);margin:16px 0 0}
.vg-choice-grid:has(input[name="package_choice"]){grid-template-columns:1fr}
.vg-choice:has(input[name="package_choice"]){min-height:98px}
.vg-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin-top:24px}
.vg-field{display:grid;gap:8px;min-width:0}
.vg-field label,.vg-field>span{font-size:13px;font-weight:700;color:var(--vg-ink);line-height:1.6}
.vg-field :is(input,select,textarea){width:100%;min-width:0;min-height:46px;border:1px solid #bca8cb;border-radius:5px;padding:11px 12px;background:#fff;color:var(--vg-ink);font-size:16px;line-height:1.6}
.vg-field textarea{min-height:106px;resize:vertical}
.vg-field small{font-size:12px;line-height:1.7;color:var(--vg-muted)}
.vg-field-wide,.vg-fields>details,.vg-fields>.vg-hint{grid-column:1/-1}
.vg-field:has(textarea){grid-column:1/-1}
.vg-screen>details{margin-top:22px;border-top:1px solid var(--vg-line);padding-top:8px}
.vg-screen details summary{cursor:pointer;min-height:44px;padding:12px 0;color:var(--vg-purple);font-size:13px;font-weight:700}
.vg-review{display:grid;margin-top:20px;gap:0}
.vg-review-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px;padding:18px 0;border-bottom:1px solid var(--vg-line);min-width:0}
.vg-review-row dt{font-size:11px;font-weight:750;letter-spacing:.7px;text-transform:uppercase;color:var(--vg-muted)}
.vg-review-row dd{grid-column:1;margin:0;font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.vg-review-row .vg-review-edit{grid-column:2;grid-row:1/3;align-self:center;padding:0}
.vg-review-edit button{min-height:44px;padding:8px 12px;border:1px solid var(--vg-line);border-radius:4px;background:#fff;color:var(--vg-purple);font-size:12px;font-weight:700}
.vg-review-note{padding:16px 18px;background:var(--vg-soft);border-left:3px solid var(--vg-teal);font-size:13px;line-height:1.8;color:var(--vg-muted);margin-top:20px}
.vg-review-note strong{color:var(--vg-ink)}
.vg-review-note p{margin:0 0 8px}
.vg-review-note p:last-child{margin-bottom:0}
.vg-support{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px;padding:8px 0 16px;font-size:11px;line-height:1.6}
.vg-support a{display:inline-flex;align-items:center;min-height:44px}
.vg-error{color:#802c3d;background:#fff0f3;font-size:13px;line-height:1.7;border-radius:4px;scroll-margin-bottom:120px}
.vg-error:not(:empty){padding:12px 14px;border:1px solid #e8bdc8;margin-bottom:16px}
.vg-action{position:relative;display:flex;flex-direction:column;gap:10px;margin:auto -36px 0;padding:17px 36px 22px;border-top:1px solid var(--vg-line);background:#fff}
.vg-action-note{font-size:11px;color:var(--vg-muted);line-height:1.6;margin:0;text-align:center}
.vg-primary{width:100%;min-height:52px;padding:13px 22px;border:1px solid #5b377a;border-radius:5px;background:linear-gradient(110deg,#593679,#765094);color:#fff;font-size:14px;font-weight:750;line-height:1.5;box-shadow:0 4px 10px #4d2c6b14}
.vg-primary:hover{background:#593779}
.vg-primary:disabled{background:#eee8f4;border-color:#d9cbe3;color:#73617f;box-shadow:none}
.vg-studio :is(input,textarea,select){scroll-margin-block:30px 145px}
.vg-studio :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--vg-teal);outline-offset:4px}
.vg-choice:focus-within{outline:3px solid var(--vg-teal);outline-offset:3px}
.vg-choice input:focus-visible{outline:none}
@media(max-width:1000px){.vg-shell{grid-template-columns:230px minmax(0,1fr)}.vg-context{padding:28px 20px}.vg-workspace{padding-inline:24px}.vg-action{margin-inline:-24px;padding-inline:24px}.vg-mode-switch>span{display:none}.vg-mode-options{width:100%}.vg-mode-options>*{flex:1}.vg-choice-grid{grid-template-columns:1fr}}
@media(max-width:700px){body.vg-studio{padding:0;background:#fff}.vg-shell{display:block;min-height:100dvh;border:0;border-radius:0;box-shadow:none;overflow:visible}.vg-brand{padding:13px 18px;gap:14px}.vg-brand-logo{width:170px}.vg-exit{font-size:11px;padding:8px 10px}.vg-context{padding:17px 20px 0;border:0;background:#fff}.vg-context>.vg-eyebrow,.vg-context>h2,.vg-context>.vg-intro{display:none}.vg-stages{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding-bottom:15px;border-bottom:1px solid var(--vg-line)}.vg-stages li{min-height:0}.vg-stages li::after{display:none}.vg-stages button{display:grid;gap:5px;padding:0}.vg-stage-number{width:25px;height:25px;font-size:10px}.vg-stages strong{font-size:10px;line-height:1.6}.vg-stages small{display:none}.vg-cost-note{font-size:11px;padding-top:12px;border:0;line-height:1.6}.vg-cost-note p{margin-bottom:3px}.vg-promo{margin:0;border:0;padding:0}.vg-promo summary{font-size:11px;padding:9px 0;min-height:36px}.vg-promo-controls{max-width:420px}.vg-promo input{flex:1;min-width:120px}.vg-workspace{padding:10px 20px 0}.vg-mode-switch{padding-bottom:16px}.vg-mode-options :is(a,span,strong){font-size:11px;padding:9px;min-height:44px}.vg-nav{margin-top:16px}.vg-screen{padding-top:21px}.vg-screen-heading :is(h1,h2){font-size:26px;line-height:1.3}.vg-hint{font-size:13px}.vg-choice-grid{margin-top:20px}.vg-choice{padding:15px 14px;min-height:76px}.vg-choice-copy strong{font-size:14px}.vg-choice-copy small{font-size:12px}.vg-fields{grid-template-columns:1fr;gap:16px}.vg-action{margin-inline:-20px;padding:14px 20px max(16px,env(safe-area-inset-bottom))}.vg-action-note{font-size:10px}.vg-review-row{gap:6px 8px}.vg-review-row dd{font-size:13px}.vg-review-edit{padding:8px}}
@media(prefers-reduced-motion:reduce){.vg-studio *,.vg-studio *::before,.vg-studio *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.vg-choice:has(input:checked){outline:2px solid Highlight}.vg-mode-options [aria-current="page"]{outline:2px solid Highlight}.vg-stages [aria-current="step"] .vg-stage-number{outline:2px solid Highlight}}

/* R83: package-aware optional-help states. */
.vg-choice.is-included{padding-right:150px;border-color:#9fcfc8;background:#f4fbfa;cursor:default;box-shadow:none}
.vg-choice.is-included:hover{border-color:#9fcfc8;box-shadow:none}
.vg-choice.is-included input{opacity:.55}
.vg-included-badge{position:absolute;right:12px;top:12px;max-width:126px;padding:5px 8px;border-radius:999px;background:#dff3ef;color:#226f68;font-size:10px;font-weight:800;line-height:1.35;text-align:center}
@media(max-width:700px){.vg-choice.is-included{padding:48px 14px 15px}.vg-included-badge{left:14px;right:auto}}
@media(forced-colors:active){.vg-choice.is-included{border:2px solid GrayText}.vg-included-badge{border:1px solid GrayText}}
