.form-modern{width:100%}.form-group-modern{margin-bottom:var(--spacing-6)}.form-group-modern:last-child{margin-bottom:0}.form-label-modern{display:block;font-family:var(--font-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-2);line-height:var(--line-height-normal)}.form-label-modern.required::after{content:' *';color:var(--color-error)}.form-label-modern .optional{font-weight:var(--font-weight-normal);color:var(--color-text-tertiary);font-size:var(--font-size-xs);margin-left:var(--spacing-1)}.form-control-modern{display:block;width:100%;padding:var(--spacing-3) var(--spacing-4);font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-white);background-clip:padding-box;border:2px solid var(--color-secondary-300);border-radius:var(--radius-base);transition:var(--transition-base);appearance:none}.form-control-modern::placeholder{color:var(--color-text-tertiary);opacity:1}.form-control-modern:hover{border-color:var(--color-secondary-400)}.form-control-modern:focus{border-color:var(--color-primary-500);outline:0;box-shadow:0 0 0 3px rgba(62,205,255,.1)}.form-control-modern:disabled,.form-control-modern[readonly]{background-color:var(--color-secondary-100);opacity:.7;cursor:not-allowed}textarea.form-control-modern{min-height:120px;resize:vertical}.form-control-modern[type=file]{padding:var(--spacing-2) var(--spacing-4)}.form-control-modern[type=file]::file-selector-button{padding:var(--spacing-2) var(--spacing-4);margin-right:var(--spacing-3);background-color:var(--color-secondary-100);color:var(--color-text-primary);border:1px solid var(--color-secondary-300);border-radius:var(--radius-sm);font-family:var(--font-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-base)}.form-control-modern[type=file]::file-selector-button:hover{background-color:var(--color-secondary-200)}.form-select-modern{display:block;width:100%;padding:var(--spacing-3) var(--spacing-4);padding-right:var(--spacing-10);font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-white);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2364748b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--spacing-4) center;background-size:16px 12px;border:2px solid var(--color-secondary-300);border-radius:var(--radius-base);transition:var(--transition-base);appearance:none}.form-select-modern:hover{border-color:var(--color-secondary-400)}.form-select-modern:focus{border-color:var(--color-primary-500);outline:0;box-shadow:0 0 0 3px rgba(62,205,255,.1)}.form-select-modern:disabled{background-color:var(--color-secondary-100);opacity:.7;cursor:not-allowed}.form-check-modern{display:flex;align-items:flex-start;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.form-check-modern:last-child{margin-bottom:0}.form-check-input-modern{flex-shrink:0;width:20px;height:20px;margin-top:2px;background-color:var(--color-white);border:2px solid var(--color-secondary-300);border-radius:var(--radius-sm);appearance:none;cursor:pointer;transition:var(--transition-base)}.form-check-input-modern[type=radio]{border-radius:var(--radius-full)}.form-check-input-modern:hover{border-color:var(--color-primary-500)}.form-check-input-modern:checked{background-color:var(--color-primary-500);border-color:var(--color-primary-500);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:100% 100%}.form-check-input-modern[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input-modern:focus{outline:0;box-shadow:0 0 0 3px rgba(62,205,255,.1)}.form-check-input-modern:disabled{opacity:.5;cursor:not-allowed}.form-check-label-modern{font-family:var(--font-primary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);cursor:pointer;user-select:none}.form-check-input-modern:disabled~.form-check-label-modern{opacity:.5;cursor:not-allowed}.form-control-modern.is-valid,.form-select-modern.is-valid{border-color:var(--color-success);padding-right:calc(1.5em + var(--spacing-4));background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2310b981' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + var(--spacing-3)) center;background-size:calc(.75em + var(--spacing-2)) calc(.75em + var(--spacing-2))}.form-control-modern.is-valid:focus,.form-select-modern.is-valid:focus{border-color:var(--color-success);box-shadow:0 0 0 3px rgba(16,185,129,.1)}.form-check-input-modern.is-valid{border-color:var(--color-success)}.form-check-input-modern.is-valid:checked{background-color:var(--color-success);border-color:var(--color-success)}.form-control-modern.is-invalid,.form-select-modern.is-invalid{border-color:var(--color-error);padding-right:calc(1.5em + var(--spacing-4));background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23ef4444'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ef4444' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + var(--spacing-3)) center;background-size:calc(.75em + var(--spacing-2)) calc(.75em + var(--spacing-2))}.form-control-modern.is-invalid:focus,.form-select-modern.is-invalid:focus{border-color:var(--color-error);box-shadow:0 0 0 3px rgba(239,68,68,.1)}.form-check-input-modern.is-invalid{border-color:var(--color-error)}.form-check-input-modern.is-invalid:checked{background-color:var(--color-error);border-color:var(--color-error)}.form-feedback{display:block;margin-top:var(--spacing-2);font-family:var(--font-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.form-feedback.valid-feedback{color:var(--color-success)}.form-feedback.invalid-feedback{color:var(--color-error)}.form-text-modern{display:block;margin-top:var(--spacing-2);font-family:var(--font-primary);font-size:var(--font-size-xs);color:var(--color-text-tertiary);line-height:var(--line-height-normal)}.input-group-modern{display:flex;width:100%}.input-group-modern>.form-control-modern,.input-group-modern>.form-select-modern{flex:1 1 auto;width:1%;min-width:0}.input-group-modern>.form-control-modern:not(:last-child),.input-group-modern>.form-select-modern:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-modern>.form-control-modern:not(:first-child),.input-group-modern>.form-select-modern:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group-text-modern{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-4);font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);color:var(--color-text-primary);text-align:center;white-space:nowrap;background-color:var(--color-secondary-100);border:2px solid var(--color-secondary-300);border-radius:var(--radius-base)}.input-group-text-modern:not(:last-child){border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.input-group-text-modern:not(:first-child){border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.form-row-modern{display:grid;gap:var(--spacing-6)}.form-row-modern.cols-2{grid-template-columns:repeat(2,1fr)}.form-row-modern.cols-3{grid-template-columns:repeat(3,1fr)}.form-search-modern{position:relative}.form-search-modern .form-control-modern{padding-left:var(--spacing-10)}.form-search-modern::before{content:'';position:absolute;left:var(--spacing-4);top:50%;transform:translateY(-50%);width:18px;height:18px;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='%2364748b' d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none}.form-floating-modern{position:relative}.form-floating-modern>.form-control-modern{padding:var(--spacing-4) var(--spacing-4) var(--spacing-2) var(--spacing-4)}.form-floating-modern>label{position:absolute;top:0;left:0;height:100%;padding:var(--spacing-4);pointer-events:none;border:2px solid transparent;transform-origin:0 0;transition:var(--transition-base);color:var(--color-text-tertiary)}.form-floating-modern>.form-control-modern:focus~label,.form-floating-modern>.form-control-modern:not(:placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}@media (max-width:768px){.form-row-modern.cols-2,.form-row-modern.cols-3{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.form-control-modern,.form-select-modern{background-color:var(--color-bg-secondary);border-color:var(--color-border-primary);color:var(--color-text-primary)}.form-control-modern:focus,.form-select-modern:focus{border-color:var(--color-primary-300)}.form-check-input-modern{background-color:var(--color-bg-secondary);border-color:var(--color-border-primary)}.input-group-text-modern{background-color:var(--color-bg-secondary);border-color:var(--color-border-primary);color:var(--color-text-primary)}}