.form-group{margin-bottom:var(--space-md)}.form-group label{display:block;font-weight:var(--font-weight-bold);margin-bottom:var(--space-xs);color:var(--text-primary);font-size:var(--font-sm)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-sm) var(--space-md);background:var(--surface-input);border:2px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-sm);transition:all var(--transition-base)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:0;border-color:var(--accent-primary);background:var(--surface-card-hover);box-shadow:var(--shadow-focus)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-sm) center;background-size:16px;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:calc(var(--space-md) + 20px)}.form-select option{background:var(--surface-2);background-color:#1a1a2e;color:var(--text-primary);padding:var(--space-sm)}.stats-dropdown,.stats-dropdown option{background:var(--surface-2);background-color:#1a1a2e;color:var(--text-primary)}.checkbox,.radio{display:flex;align-items:center;gap:var(--space-xs);cursor:pointer;font-size:var(--font-sm);color:var(--text-primary)}.checkbox input[type=checkbox],.radio input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-primary)}.input-group{display:flex;gap:var(--space-sm);align-items:flex-end}.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid{border-color:var(--danger)}.form-input.is-valid,.form-select.is-valid,.form-textarea.is-valid{border-color:var(--success)}.invalid-feedback{color:var(--danger);font-size:var(--font-xs);margin-top:var(--space-xs)}.valid-feedback{color:var(--success);font-size:var(--font-xs);margin-top:var(--space-xs)}