main.page > h1{margin:0;font-size:clamp(28px,8vw,36px);font-weight:700;letter-spacing:-.02em}
.intro{margin:0;font-size:16px;line-height:1.5;color:var(--ink-2)}
main.page form.panel{display:flex;flex-direction:column;gap:16px}
.help{margin:0;font-size:15px;line-height:1.5;color:var(--ink-2)}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field > label,.field .legend{font-size:15px;font-weight:500;overflow-wrap:anywhere}
.fields-2{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.input{display:flex;align-items:center;height:44px;max-width:100%;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-well);padding:0 12px;gap:8px;min-width:0}
.input:focus-within{border-color:var(--buy);box-shadow:0 0 0 2px var(--buy)}
.input .affix{font-size:15px;color:var(--ink-3);flex:none}
.input input{flex:1;min-width:0;height:100%;background:transparent;border:0;color:var(--ink);font:400 17px/1.4 var(--font);font-variant-numeric:tabular-nums;outline:none}
.input input::placeholder{color:var(--ink-3)}
.hint{font-size:14px;color:var(--ink-3)}
.error{font-size:14px;color:var(--caution-ink)}
.seg{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;background:var(--neutral-tint);border-radius:var(--r-well);width:100%;max-width:280px}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg label{min-width:0;height:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1.5px solid transparent;border-radius:8px;font-size:15px;color:var(--ink-2);cursor:pointer;overflow-wrap:anywhere}
.seg input:checked + label{background:var(--card);color:var(--ink);font-weight:600;border:1.5px solid var(--ink)}
.seg input:focus-visible + label{outline:2px solid var(--buy);outline-offset:2px}
.radios{display:flex;gap:8px;flex-wrap:wrap;border:0;padding:0;margin:0;min-width:0}
.radio{position:relative;max-width:100%}
.radio input{position:absolute;opacity:0;pointer-events:none}
.radio label{min-height:44px;height:auto;display:flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid var(--line-strong);border-radius:var(--r-well);font-size:16px;cursor:pointer;background:var(--card);max-width:100%;overflow-wrap:anywhere}
.radio label::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid var(--ink-3);flex:none}
.radio input:checked + label{border-color:var(--buy)}
.radio input:checked + label::before{border-color:var(--buy);background:radial-gradient(circle,var(--buy) 45%,transparent 50%)}
.radio input:focus-visible + label{outline:2px solid var(--buy);outline-offset:2px}
.switch-row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-width:0}
.switch{position:relative;width:52px;height:30px;border-radius:999px;background:var(--neutral-tint);border:1px solid var(--line-strong);cursor:pointer;padding:0;flex:none}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--ink-3)}
.switch[aria-checked="true"]{background:var(--buy);border-color:var(--buy)}
.switch[aria-checked="true"]::after{transform:translateX(22px);background:#fff}
.state{font-size:15px;color:var(--ink-2)}
.actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px;min-width:0}
main.page .actions a.btn{display:inline-flex;align-items:center;justify-content:center}
main.page .btn{height:44px;padding:0 20px;border-radius:var(--r-well);font:600 16px var(--font);cursor:pointer;max-width:100%}
main.page .btn--primary{background:var(--buy);color:#fff;border:1px solid var(--buy)}
main.page .btn--primary:hover{background:var(--buy-hover)}
main.page .btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-strong);text-decoration:none}
@media (min-width:600px){
  .fields-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:599px){
  .actions{flex-direction:column-reverse;align-items:center}
  main.page .actions .btn--primary{width:100%}
  main.page .actions a.btn--ghost{width:auto;height:auto;padding:8px 4px;border:0;background:transparent;color:var(--buy-ink);text-decoration:underline;text-underline-offset:3px}
}
