.form-panel{width:100%;max-width:var(--content-narrow);border-radius:var(--radius-panel);background:var(--color-surface);margin-inline:auto;padding:40px;position:relative}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;display:grid}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field[hidden]{display:none}.field--full{grid-column:1/-1}.field label{font:500 14px/1.3 var(--font-body);letter-spacing:.01em}.field__head{flex-wrap:wrap;align-items:baseline;gap:0 6px;display:flex}.field__optional{font:400 14px/1.3 var(--font-body);letter-spacing:.01em;color:var(--color-text-soft)}.field__optional[hidden]{display:none}.field__hint{font:400 13px/1.4 var(--font-body);color:var(--color-text-soft)}.field input:not([type=checkbox],[type=radio]),.field select,.field textarea{border:1px solid var(--color-border);background:var(--color-white);width:100%;min-height:52px;color:var(--color-black);font:400 16px/1.4 var(--font-body);border-radius:12px;padding:14px 16px}.field input[type=date]{-webkit-appearance:none;appearance:none;min-width:0;max-width:100%;display:block}.field input[type=date]::-webkit-date-and-time-value{text-align:left}.field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 22px),calc(100% - 16px);background-repeat:no-repeat;background-size:6px 6px;padding-right:44px}.field textarea{resize:vertical;min-height:140px}.field input::placeholder,.field textarea::placeholder{color:var(--color-text-soft)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:2px}.field--check{flex-direction:row;align-items:flex-start;gap:12px}.field--check input{width:20px;height:20px;accent-color:var(--color-primary);flex:none;margin:2px 0 0}.field--check label{font:400 16px/1.5 var(--font-body);letter-spacing:0}.field--check a,.form-note a{color:var(--color-primary);text-decoration:underline}.form-note{font:400 16px/1.5 var(--font-body);grid-column:1/-1}.form-group{border:0;min-width:0;margin:0;padding:0}.form-group+.form-group{margin-top:36px}.form-group__title{font:700 20px/1.3 var(--font-body);letter-spacing:-.02em;margin-bottom:16px;padding:0}.form-group__intro{font:400 16px/1.5 var(--font-body);color:var(--color-text-muted);margin-bottom:16px}.field--choices{border:0;margin:0;padding:0}.field--choices legend{font:500 14px/1.3 var(--font-body);letter-spacing:.01em;margin-bottom:8px;padding:0}.choices{gap:10px;display:grid}.choices--inline{flex-wrap:wrap;display:flex}.choice{border:1px solid var(--color-border);background:var(--color-white);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;min-height:52px;padding:14px 16px;display:flex}.choices--inline .choice{min-width:120px}.choice:has(input:checked){border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.choice input{width:20px;height:20px;accent-color:var(--color-primary);flex:none;margin:1px 0 0}.choice input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.choice__text{font:500 16px/1.4 var(--font-body);flex-direction:column;gap:2px;display:flex}.choice__note{font:400 14px/1.4 var(--font-body);color:var(--color-text-soft)}.form-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-actions{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:28px;display:flex}.form-status{font:500 15px/1.4 var(--font-body);border-radius:12px;flex:280px;padding:12px 16px}.form-status[hidden]{display:none}.form-status[data-kind=success]{color:var(--color-green-dark);background:#04cf5b1f}.form-status[data-kind=error]{color:var(--color-red-dark);background:#dc01031a}.form-status[data-kind=info]{color:var(--color-primary);background:#723c881a}@media (width<=809.98px){.form-panel{padding:24px}.form-grid{grid-template-columns:1fr}}.field__error{font:500 14px/1.4 var(--font-body);color:var(--color-red-dark)}.field__error[hidden]{display:none}.field [aria-invalid=true]:not([type=checkbox],[type=radio]){border-color:var(--color-red-dark)}.choice:has(input[aria-invalid=true]),.field--check:has(input[aria-invalid=true]) input{outline:1px solid var(--color-red-dark)}
