.btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;padding:.375rem .75rem;font-size:.875rem;font-weight:600;font-family:inherit;transition:background-color .15s ease,color .15s ease,opacity .15s ease;transition-duration:.3s;text-decoration:none;white-space:nowrap;border-radius:9999px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-ui-accent);color:#fff}.btn-primary:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-ui-accent),20% transparent)}.btn-secondary{background-color:transparent;color:var(--color-ui-accent);border:1px solid var(--color-ui-accent)}.btn-secondary:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-ui-accent),90% transparent)}.btn-tertiary{background-color:transparent;color:var(--color-ui-text);border:1px solid var(--color-ui-border)}.btn-tertiary:hover:not(:disabled){background-color:var(--color-ui-bg)}.btn-text{background-color:transparent;color:var(--color-ui-accent);padding:.375rem .5rem}.btn-text:hover:not(:disabled){color:color-mix(in srgb,var(--color-ui-accent),25% transparent);background-color:transparent}.btn-navigation{background-color:transparent;color:var(--color-ui-text);border-radius:.75rem;margin-bottom:.125rem;justify-content:flex-start;width:100%}.btn-navigation:hover:not(:disabled){color:color-mix(in srgb,var(--color-ui-text) 80%,transparent);background-color:color-mix(in srgb,var(--color-ui-accent-secondary) 15%,transparent)}.btn-navigation.btn--active{background-color:var(--color-ui-accent-active);color:var(--color-ui-text);font-weight:500}.btn-navigation.btn--active:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-ui-accent) 30%,transparent);color:var(--color-ui-text)}.btn-delete{background-color:var(--color-ui-danger);color:var(--color-ui-danger-text)}.btn-delete:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-ui-danger),65% transparent);color:var(--color-ui-danger)}.form-fields{gap:1.25rem}.form-field,.form-fields{display:flex;flex-direction:column}.form-field{gap:.4rem}.form-label{font-size:.875rem;font-weight:500;color:var(--color-ui-text);line-height:1.4}.form-label--required:after{content:" *";color:var(--color-ui-danger);font-weight:600}.form-input,.form-select,.form-textarea{width:100%;padding:.625rem .875rem;font-size:.875rem;font-family:inherit;color:var(--color-ui-text);background-color:var(--color-ui-bg);border:1.5px solid var(--color-ui-border);border-radius:.5rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;appearance:none}.form-input::placeholder,.form-textarea::placeholder{color:color-mix(in srgb,var(--color-ui-text),55% transparent);opacity:1}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-ui-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-ui-accent),82% transparent)}.form-input--error,.form-select--error,.form-textarea--error{border-color:var(--color-ui-danger)}.form-input--error:focus,.form-select--error:focus,.form-textarea--error:focus{border-color:var(--color-ui-danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-ui-danger),82% transparent)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:.45;cursor:not-allowed}.form-textarea{resize:vertical;min-height:5.5rem;line-height:1.6}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238a8a8a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;padding-right:2.5rem;cursor:pointer}.form-checkbox-wrapper{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;user-select:none}.form-checkbox-wrapper:has(.form-checkbox:disabled){cursor:not-allowed;opacity:.45}.form-checkbox{width:1.125rem;height:1.125rem;flex-shrink:0;border:1.5px solid var(--color-ui-border);border-radius:.3rem;-webkit-appearance:none;appearance:none;background-color:var(--color-ui-bg);cursor:pointer;position:relative;transition:border-color .15s ease,background-color .15s ease}.form-checkbox:checked{background-color:var(--color-ui-accent);border-color:var(--color-ui-accent)}.form-checkbox:checked:after{content:"";position:absolute;left:3.5px;top:.5px;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}.form-checkbox:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-ui-accent),82% transparent)}.form-checkbox:disabled{cursor:not-allowed}.form-checkbox-label{font-size:.875rem;color:var(--color-ui-text);line-height:1.4}.form-radio-group{display:flex;flex-direction:column;gap:.625rem}.form-radio-wrapper{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;user-select:none}.form-radio-wrapper:has(.form-radio:disabled){cursor:not-allowed;opacity:.45}.form-radio{width:1.125rem;height:1.125rem;flex-shrink:0;border:1.5px solid var(--color-ui-border);border-radius:50%;-webkit-appearance:none;appearance:none;background-color:var(--color-ui-bg);cursor:pointer;position:relative;transition:border-color .15s ease}.form-radio:checked{border-color:var(--color-ui-accent)}.form-radio:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:7px;height:7px;background-color:var(--color-ui-accent);border-radius:50%}.form-radio:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-ui-accent),82% transparent)}.form-radio:disabled{cursor:not-allowed}.form-radio-label{font-size:.875rem;color:var(--color-ui-text);line-height:1.4}.form-input-wrapper,.form-textarea-wrapper{position:relative}.form-input--with-counter,.form-textarea--with-counter{padding-right:3.75rem}.form-char-counter{position:absolute;right:.625rem;bottom:.5rem;font-size:.6875rem;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--color-ui-text),55% transparent);pointer-events:none;line-height:1;transition:color .15s ease}.form-char-counter--near{color:color-mix(in srgb,var(--color-ui-danger) 55%,var(--color-ui-text))}.form-char-counter--limit{color:var(--color-ui-danger);font-weight:600}.form-hint{color:color-mix(in srgb,var(--color-ui-text),50% transparent)}.form-error,.form-hint{font-size:.75rem;line-height:1.4}.form-error{color:var(--color-ui-danger)}