.modal-backdrop{z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--spacing-lg);animation:fadeIn var(--transition-fast) ease;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{z-index:var(--z-modal);background-color:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;animation:scaleIn var(--transition-normal) ease;position:relative;overflow-y:auto}.modal--sm{width:100%;max-width:400px}.modal--md{width:100%;max-width:560px}.modal--lg{width:100%;max-width:720px}.modal--xl{width:100%;max-width:960px}.modal__header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.modal__close{width:36px;height:36px;color:var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal__close:hover{background-color:var(--color-surface-hover);color:var(--color-text)}.modal__body{padding:var(--spacing-lg)}.modal__footer{justify-content:flex-end;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-light);display:flex}
.input-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.input-group__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.input-group__wrapper{align-items:center;display:flex;position:relative}.input-group__icon{left:var(--spacing-md);color:var(--color-text-muted);pointer-events:none;transition:color var(--transition-fast);align-items:center;display:flex;position:absolute}.input-group__icon svg{width:1.125rem;height:1.125rem}.input-group__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.input-group__input--with-icon{padding-left:calc(var(--spacing-md) + 1.125rem + var(--spacing-sm))}.input-group__input::placeholder{color:var(--color-text-muted)}.input-group__input:hover:not(:disabled){border-color:var(--color-gray-400)}.input-group__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-lighter);outline:none}.input-group--error .input-group__input{border-color:var(--color-error)}.input-group--error .input-group__input:focus{box-shadow:0 0 0 3px var(--color-error-bg)}.input-group--error .input-group__icon{color:var(--color-error)}.input-group__error{font-size:var(--font-size-sm);color:var(--color-danger-text)}.input-group__helper{font-size:var(--font-size-xs);color:var(--color-text-muted)}.input-group__input:disabled{background-color:var(--color-gray-100);color:var(--color-text-muted);cursor:not-allowed}.input-group__input--textarea{min-height:7.5rem;padding:var(--spacing-sm) var(--spacing-md);resize:vertical;font-family:inherit;line-height:1.5}.input-group__meta{justify-content:space-between;align-items:baseline;gap:var(--spacing-sm);min-height:1rem;display:flex}.input-group__count{font-size:var(--font-size-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto}
