.universal-form{width:100%}.universal-form-form{display:flex;flex-direction:column;width:100%}.universal-form-spacing-sm>*+*{margin-top:.5rem}.universal-form-spacing-md>*+*{margin-top:1rem}.universal-form-spacing-lg>*+*{margin-top:1.5rem}.universal-form-base{width:100%}.universal-form-vertical{display:flex;flex-direction:column}.universal-form-vertical>*+*{margin-top:1rem}.universal-form-horizontal{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start}.universal-form-horizontal>*{flex:1;min-width:0}.universal-form-grid{display:grid;gap:1rem;width:100%}.universal-form-grid-1,.universal-form-grid-2,.universal-form-grid-3,.universal-form-grid-4{grid-template-columns:1fr}@media (min-width:768px){.universal-form-grid-2,.universal-form-grid-3,.universal-form-grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.universal-form-grid-3{grid-template-columns:repeat(3,1fr)}.universal-form-grid-4{grid-template-columns:repeat(4,1fr)}}.universal-form-buttons{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #e5e7eb;margin-top:1rem}@media (prefers-color-scheme:dark){.universal-form-buttons{border-top-color:#374151}}.universal-form-item{margin-bottom:1rem}.universal-form-item:last-child{margin-bottom:0}.universal-form-error{color:#ef4444;font-size:.875rem;margin-top:.25rem}.universal-form-help{color:#6b7280;font-size:.875rem;margin-top:.25rem}.universal-form-disabled{opacity:.6;pointer-events:none}.universal-form-loading{position:relative}.universal-form-loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;z-index:10}.universal-form-input-sm{font-size:.875rem;padding:.375rem .75rem;height:2rem}.universal-form-input-md{font-size:1rem;padding:.5rem 1rem;height:2.5rem}.universal-form-input-lg{font-size:1.125rem;padding:.75rem 1.25rem;height:3rem}.universal-form-gap-xs{gap:.25rem}.universal-form-gap-sm{gap:.5rem}.universal-form-gap-md{gap:1rem}.universal-form-gap-lg{gap:1.5rem}.universal-form-gap-xl{gap:2rem}.universal-form-mt-xs{margin-top:.25rem}.universal-form-mt-sm{margin-top:.5rem}.universal-form-mt-md{margin-top:1rem}.universal-form-mt-lg{margin-top:1.5rem}.universal-form-mt-xl{margin-top:2rem}.universal-form-p-xs{padding:.25rem}.universal-form-p-sm{padding:.5rem}.universal-form-p-md{padding:1rem}.universal-form-p-lg{padding:1.5rem}.universal-form-p-xl{padding:2rem}