.tv-input,.tv-select,.tv-textarea{width:100%;font-family:var(--tv-font);font-size:var(--tv-text-base);color:var(--tv-text);background:var(--tv-surface);border:1px solid var(--tv-border);border-radius:var(--tv-radius-md);padding:12px 16px;transition:border-color var(--tv-transition-fast),box-shadow var(--tv-transition-fast)}.tv-input:hover,.tv-select:hover,.tv-textarea:hover{border-color:var(--tv-border-strong)}.tv-input:focus,.tv-select:focus,.tv-textarea:focus{outline:0;border-color:var(--tv-primary);box-shadow:0 0 0 3px var(--tv-primary-light)}.tv-input::placeholder,.tv-textarea::placeholder{color:var(--tv-text-muted)}.tv-textarea{resize:vertical;min-height:100px}.tv-input-error{border-color:var(--tv-error)}.tv-input-error:focus{box-shadow:0 0 0 3px var(--tv-error-bg)}.tv-input-file{cursor:pointer}.tv-input-file::file-selector-button{font-family:var(--tv-font);font-size:var(--tv-text-sm);font-weight:var(--tv-font-semibold);color:var(--tv-primary-contrast);background:linear-gradient(135deg,var(--tv-primary) 0,var(--tv-primary-dark) 100%);border:none;border-radius:var(--tv-radius-sm);padding:8px 16px;margin-right:var(--tv-space-3);cursor:pointer;transition:box-shadow var(--tv-transition-fast),transform var(--tv-transition-fast)}.tv-input-file:hover::file-selector-button{box-shadow:var(--tv-shadow-glow)}.tv-field{display:flex;flex-direction:column;gap:var(--tv-space-2)}.tv-field-label{font-size:var(--tv-text-sm);font-weight:var(--tv-font-semibold)}.tv-field-hint{font-size:var(--tv-text-xs);color:var(--tv-text-muted)}.tv-field-error{font-size:var(--tv-text-xs);color:var(--tv-error)}.tv-checkbox-group{display:flex;flex-wrap:wrap;gap:var(--tv-space-3)}.tv-checkbox-option{display:inline-flex;align-items:center;gap:var(--tv-space-2);font-size:var(--tv-text-sm);font-weight:var(--tv-font-normal);padding:8px 14px;border:1px solid var(--tv-border);border-radius:var(--tv-radius-full);cursor:pointer;transition:border-color var(--tv-transition-fast),background-color var(--tv-transition-fast),color var(--tv-transition-fast)}.tv-checkbox-option:hover{border-color:var(--tv-border-strong)}.tv-checkbox-option:has(input:focus-visible){outline:2px solid var(--tv-primary);outline-offset:2px}.tv-checkbox-option:has(input:checked){border-color:var(--tv-primary);background:var(--tv-primary-light);color:var(--tv-text-heading);font-weight:var(--tv-font-medium)}.tv-password-field{position:relative;display:flex;align-items:center}.tv-auth-field-icon-wrap:has(.tv-toggle-senha) .tv-auth-input,.tv-password-field:has(.tv-toggle-senha) .tv-input{padding-right:calc(var(--tv-space-4) * 2 + 18px)}.tv-toggle-senha{position:absolute;right:var(--tv-space-3);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:0 0;border:none;border-radius:var(--tv-radius-sm);color:var(--tv-text-muted);cursor:pointer;transition:color var(--tv-transition-fast)}.tv-toggle-senha:focus-visible,.tv-toggle-senha:hover{color:var(--tv-primary)}.tv-toggle-senha:focus-visible{outline:2px solid var(--tv-primary);outline-offset:1px}.tv-toggle-senha svg{width:18px;height:18px}.tv-toggle-senha .tv-icone-olho-fechado{display:none}.tv-toggle-senha.is-visivel .tv-icone-olho-aberto{display:none}.tv-toggle-senha.is-visivel .tv-icone-olho-fechado{display:block}