:root{--form-accent:#075b9b;--form-accent-hover:#0b6cac;--form-surface:#0a1014;--form-border:#33434d;--form-error:#ff7777;--form-success:#65d28a}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--form-border);border-radius:8px;background:var(--form-surface);color:#fff;font:inherit;line-height:1.35}
textarea{min-height:112px;resize:vertical}
label{display:grid;gap:8px;color:#d5dde2;font-weight:600}
label small,.field-help{color:#96a5af;font-weight:400}
input:hover,select:hover,textarea:hover{border-color:#526774}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #075b9b66;outline-offset:2px;border-color:var(--form-accent)}
input:disabled,select:disabled,textarea:disabled{opacity:.58;cursor:not-allowed;background:#11171b}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--form-error)}
.form-error{color:var(--form-error)}.form-success{color:var(--form-success)}
fieldset{border:1px solid var(--form-border);border-radius:10px;padding:18px}legend{padding:0 8px;font-weight:800}
.button,.primary{border-radius:8px;transition:background .15s,border-color .15s,transform .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--form-accent);border-color:var(--form-accent);color:#fff}.primary:hover{background:var(--form-accent-hover);border-color:var(--form-accent-hover)}
.attachment-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;border:1px solid var(--form-border);border-radius:8px;cursor:pointer;background:#0c151b}.attachment-button:hover{border-color:var(--form-accent)}.attachment-button input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.password-control{position:relative}.password-control input{padding-right:76px}.password-toggle{position:absolute;right:8px;bottom:6px;min-height:36px;padding:6px 10px;border:0;border-radius:6px;background:#17232b;color:#d9e4ea}
@media(max-width:600px){input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea,.button{font-size:16px;min-height:50px}}
