@formhaus/core 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/style.css CHANGED
@@ -44,7 +44,7 @@
44
44
  :where([data-fh-theme="dark"] .fh-form, .fh-form[data-fh-theme="dark"]) { --fh-color-primary-hover: color-mix(in srgb, var(--fh-color-primary) 85%, #ffffff); }
45
45
  }
46
46
 
47
- .fh-form, .fh-form__fields { display: flex; flex-direction: column; gap: var(--fh-gap); }
47
+ .fh-form, .fh-form__fields { display: grid; grid-template-columns: 100%; gap: var(--fh-gap); }
48
48
 
49
49
  .fh-form { color: var(--fh-color-text); font-size: var(--fh-font-size); line-height: 1.5; }
50
50
 
@@ -87,11 +87,9 @@ legend.fh-field__label { padding: 0; margin-bottom: 8px; }
87
87
  }
88
88
 
89
89
  .fh-field__error, .fh-form__top-error { margin: 0; color: var(--fh-color-error); font-size: var(--fh-font-size-small); font-weight: 500; }
90
-
91
90
  .fh-form__top-errors { display: flex; flex-direction: column; gap: 4px; }
92
91
 
93
92
  .fh-field__radio-group, .fh-field__multiselect-group { display: flex; flex-direction: column; gap: 8px; }
94
-
95
93
  .fh-field__radio-group--inline, .fh-field__multiselect-group--inline { flex-flow: row wrap; }
96
94
 
97
95
  .fh-field__radio-option,
@@ -113,9 +111,9 @@ legend.fh-field__label { padding: 0; margin-bottom: 8px; }
113
111
  :is(.fh-field__radio-option, .fh-field__multiselect-option):has(:focus-visible) { outline: 2px solid var(--fh-color-border-focus); outline-offset: 2px; }
114
112
  @supports selector(:has(*)) { :is(.fh-field__radio-option, .fh-field__multiselect-option) input:focus-visible { outline: none; } }
115
113
  :is(.fh-field__radio-label, .fh-field__multiselect-label) { flex: 1 1 auto; cursor: pointer; }
116
- :is(.fh-field__radio-label, .fh-field__multiselect-label)::before { content: ""; position: absolute; inset: 0; border-radius: inherit; }
114
+ :is(.fh-field__radio-label, .fh-field__multiselect-label, .fh-field__checkbox-wrapper .fh-field__label, .fh-field__switch-wrapper .fh-field__label)::before { content: ""; position: absolute; inset: 0; border-radius: inherit; }
117
115
 
118
- .fh-field__checkbox-wrapper, .fh-field__switch-wrapper { display: flex; align-items: flex-start; gap: 12px; }
116
+ .fh-field__checkbox-wrapper, .fh-field__switch-wrapper { position: relative; display: flex; align-items: flex-start; gap: 12px; }
119
117
 
120
118
  :is(.fh-field__checkbox-wrapper, .fh-field__switch-wrapper) .fh-field__label { font-weight: 400; line-height: 1.5; cursor: pointer; }
121
119
 
@@ -164,7 +162,6 @@ legend.fh-field__label { padding: 0; margin-bottom: 8px; }
164
162
  }
165
163
 
166
164
  .fh-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 4px; }
167
-
168
165
  .fh-form-actions__secondary { display: flex; gap: 8px; margin-right: auto; }
169
166
  .fh-form-actions__secondary:empty { display: none; }
170
167
 
@@ -192,8 +189,15 @@ legend.fh-field__label { padding: 0; margin-bottom: 8px; }
192
189
  .fh-form-actions__button--text:hover:not(:disabled) { color: var(--fh-color-text); }
193
190
 
194
191
  @media (max-width: 480px) {
195
- .fh-form-actions__button--primary { flex: 1 0 100%; }
196
- .fh-form-actions__secondary { flex: 1 0 100%; justify-content: space-between; }
192
+ .fh-form-actions__button--primary, .fh-form-actions__secondary { flex: 1 0 100%; }
193
+ .fh-form-actions__secondary { justify-content: space-between; }
194
+ }
195
+
196
+ @media (pointer: coarse) {
197
+ :where(.fh-form) { --fh-font-size: 17px; --fh-font-size-small: 15px; }
198
+ .fh-field__input { font-size: max(16px, var(--fh-font-size)); }
199
+ :is(.fh-field__checkbox-wrapper, .fh-field__switch-wrapper) { padding-block: 10px; }
200
+ .fh-field__radio, .fh-field__checkbox { margin-top: 4px; }
197
201
  }
198
202
 
199
203
  .fh-step-progress { display: flex; flex-direction: column; gap: 6px; }