.psgf{--a:var(--global-palette1,#0B5CD5);--a-hover:var(--global-palette10,#0A47A6);--ink:var(--global-palette3,#0A1F3D);--mute:var(--global-palette5,#5E7088);--line:var(--global-palette7,#DDE7F1);--surface:var(--global-palette9,#FFFFFF);--surface-soft:var(--global-palette8,#F4F8FC);--bad:#C63B3B;--ok:#1F8F5F;
  box-sizing:border-box;width:100%;max-width:560px;background:var(--surface);color:var(--ink);border-radius:20px;
  padding:clamp(20px,4.2vw,34px);box-shadow:0 8px 20px rgba(8, 18, 31, 0.11);text-align:left;
  font-family:var(--global-body-font-family,system-ui,-apple-system,"Segoe UI",sans-serif);
  font-size:clamp(15px,.35vw + 14px,17px);line-height:1.5}
.psgf *,.psgf *::before,.psgf *::after{box-sizing:border-box}
.psgf [hidden]{display:none!important}
.psgf .psgf-title{font-family:var(--global-heading-font-family,inherit);font-size:clamp(22px,2.7vw,28px);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0 0 6px;color:var(--ink)}
.psgf-sub{color:var(--mute);margin:0 0 18px;font-size:clamp(.95rem,.3vw + .9rem,1.05rem)}
.psgf-meta{display:flex;justify-content:space-between;font-size:.82rem;font-weight:500;color:var(--mute);margin-bottom:8px;letter-spacing:.02em}
.psgf-prog{height:8px;margin-bottom:18px;background:var(--line);border-radius:99px;overflow:hidden}
.psgf-bar{display:block;height:100%;width:20%;background:var(--a);border-radius:99px;transition:width .35s ease}
.psgf fieldset{border:0;margin:0;padding:0;min-width:0}
.psgf legend,.psgf-q{font-family:var(--global-heading-font-family,inherit);font-size:clamp(16px,.3vw + 15px,18px);font-weight:500;line-height:1.35;color:var(--ink);margin:18px 0 14px;padding:0;display:block}
.psgf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.psgf-opt{position:relative;display:block;margin:0;cursor:pointer}
.psgf-opt input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:1}
.psgf-opt .c{display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:96px;padding:14px;border:2px solid var(--line);border-radius:14px;background:var(--surface);
  font-weight:500;font-size:clamp(13px,.25vw + 12px,14px);line-height:1.3;color:var(--ink);transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}
.psgf-opt .e{font-size:1.55rem;line-height:1}
.psgf-opt:hover .c{border-color:var(--global-palette6,#8C9AAD);transform:translateY(-1px)}
.psgf-opt input:checked+.c{border-color:var(--a);background:var(--surface-soft);box-shadow:0 0 0 3px rgba(11,92,213,.16)}
.psgf-opt input:focus-visible+.c{outline:3px solid var(--ink);outline-offset:2px}
.psgf-f{display:grid;gap:6px;margin:14px 0 0;color:var(--mute);font-size:.92rem}
.psgf-fields .psgf-f{margin-top:0}
.psgf-opthead{font-weight:500}
.psgf-input{display:block;width:100%;min-height:52px;padding:13px 15px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:max(16px,1rem);line-height:1.3;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.psgf textarea.psgf-input{min-height:84px;resize:vertical}
.psgf-input::placeholder{color:var(--global-palette6,#8C9AAD)}
.psgf-input:focus{outline:none;border-color:var(--a);box-shadow:0 0 0 3px rgba(11,92,213,.16)}
.psgf-hint{margin:8px 0 0;font-size:.85rem;color:var(--mute)}
.psgf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.psgf-step{display:none}.psgf-step.is-on{display:block;animation:psgf-in .25s ease}
@keyframes psgf-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.psgf-err{min-height:1.4em;margin:12px 0 0;color:var(--bad);font-size:.9rem;font-weight:500}
.psgf-nav{display:flex;gap:10px;margin-top:6px}
.psgf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 clamp(16px,2.5vw,24px);border:0px solid transparent;border-radius:6px;cursor:pointer;
  font-family:var(--global-heading-font-family,inherit);font-weight:550;font-size:clamp(.82rem,.18vw + .78rem,.9rem);line-height:1.2;text-decoration:none;letter-spacing:.01em;
  transition:transform .18s,box-shadow .18s,filter .18s,border-color .18s,background .18s}
.psgf-btn svg{width:20px;height:20px;flex:none;transition:transform .2s}
.psgf-btn.primary{flex:1;background:var(--a);color:#fff;box-shadow:0 8px 18px -6px rgba(11,92,213,.38)}
.psgf-btn.primary:hover{transform:translateY(-2px);background:var(--a-hover);box-shadow:0 13px 24px -7px rgba(11,92,213,.45)}
.psgf-btn.primary:hover svg{transform:translateX(3px)}
.psgf-btn.primary:active{transform:translateY(0);box-shadow:0 6px 14px -6px rgba(11,92,213,.4)}
.psgf-btn.ghost{background:var(--surface);color:var(--ink);border:2px solid var(--line);border-radius:8px;box-shadow:0 3px 10px rgba(10,31,61,.06)}
.psgf-btn.ghost:hover{border-color:var(--global-palette6,#8C9AAD);background:var(--surface-soft);box-shadow:0 5px 14px rgba(10,31,61,.1);transform:translateY(-1px)}
.psgf-btn.ghost:hover svg{transform:translateX(-3px)}
.psgf-btn:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.psgf-btn:disabled{opacity:.75;cursor:progress;transform:none}
.psgf-btn.is-busy svg{display:none}
.psgf-btn.is-busy::after{content:"";width:18px;height:18px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:psgf-spin .7s linear infinite}
@keyframes psgf-spin{to{transform:rotate(360deg)}}
.psgf-fine{margin:24px 0 0;text-align:center;font-size:.82rem;color:var(--mute)}
.psgf .psgf-nav + .psgf-fine{margin-top:16px!important}
.psgf-done{text-align:center;padding:16px 0}
.psgf-done .psgf-title{margin-top:14px}
.psgf-tick{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:50%;background:var(--ok);color:#fff}
.psgf-tick svg{width:32px;height:32px}
@media(max-width:520px){.psgf-fields{grid-template-columns:1fr}.psgf-opt .c{min-height:88px;padding:12px}.psgf-btn{min-height:46px;padding:0 16px}}
@media(max-width:340px){.psgf-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.psgf *{transition:none!important;animation:none!important}}
