.form-container{background:var(--color-white);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-md);padding:var(--spacing-2xl)}.form-header{margin-bottom:var(--spacing-2xl)}.form-title{color:var(--color-gray-900);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-sm)}.form-subtitle{color:var(--color-gray-600);font-size:var(--font-size-base)}.form-group,.form-row{margin-bottom:var(--spacing-xl)}.form-row{display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-label{color:var(--color-gray-700);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.form-label.required:after{color:var(--color-error);content:"*";margin-left:var(--spacing-xs)}.form-hint{color:var(--color-gray-500);display:block;font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.form-input,.form-select,.form-textarea{background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--border-radius-lg);color:var(--color-gray-900);font-family:var(--font-family-base);font-size:var(--font-size-base);padding:var(--spacing-md) var(--spacing-lg);transition:all var(--transition-base);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(200,16,46,.1);outline:none}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-gray-100);cursor:not-allowed;opacity:.6}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-gray-400)}.form-input-sm{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md)}.form-input-lg{font-size:var(--font-size-lg);padding:var(--spacing-lg) var(--spacing-xl)}.form-textarea{min-height:120px;resize:vertical}.form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right var(--spacing-md) center;background-repeat:no-repeat;cursor:pointer;padding-right:var(--spacing-3xl)}.input-group{display:flex;position:relative}.input-group-text{align-items:center;background:var(--color-gray-100);border:2px solid var(--color-gray-300);border-radius:var(--border-radius-lg);color:var(--color-gray-700);display:flex;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--spacing-md) var(--spacing-lg);white-space:nowrap}.input-group .form-input{flex:1}.input-group-text:first-child{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.input-group-text:last-child{border-left:none}.input-group .form-input:not(:first-child),.input-group-text:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.input-group .form-input:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-with-icon{position:relative}.input-icon{color:var(--color-gray-500);font-size:1.125rem;left:var(--spacing-lg);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-with-icon .form-input{padding-left:calc(var(--spacing-3xl) + var(--spacing-sm))}.input-icon-right{left:auto;right:var(--spacing-lg)}.input-with-icon.has-icon-right .form-input{padding-left:var(--spacing-lg);padding-right:calc(var(--spacing-3xl) + var(--spacing-sm))}.form-input.is-valid,.form-select.is-valid,.form-textarea.is-valid{border-color:var(--color-success)}.form-input.is-valid:focus,.form-select.is-valid:focus,.form-textarea.is-valid:focus{box-shadow:0 0 0 3px rgba(16,185,129,.1)}.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid{border-color:var(--color-error)}.form-input.is-invalid:focus,.form-select.is-invalid:focus,.form-textarea.is-invalid:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.invalid-feedback,.valid-feedback{display:none;font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.valid-feedback{color:var(--color-success)}.invalid-feedback{color:var(--color-error)}.is-invalid~.invalid-feedback,.is-valid~.valid-feedback{display:block}.form-check{align-items:center;display:flex;margin-bottom:var(--spacing-md)}.form-check-input{accent-color:var(--color-primary);cursor:pointer;height:20px;margin-right:var(--spacing-sm);width:20px}.form-check-label{color:var(--color-gray-700);cursor:pointer;font-size:var(--font-size-base);user-select:none}.custom-checkbox{align-items:center;display:flex;margin-bottom:var(--spacing-md);position:relative}.custom-checkbox input[type=checkbox]{cursor:pointer;opacity:0;position:absolute}.custom-checkbox-box{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--border-radius-md);cursor:pointer;display:flex;height:24px;justify-content:center;margin-right:var(--spacing-sm);transition:all var(--transition-base);width:24px}.custom-checkbox input:checked~.custom-checkbox-box{background:var(--color-primary);border-color:var(--color-primary)}.custom-checkbox-box i{color:var(--color-white);font-size:.875rem;opacity:0;transition:opacity var(--transition-base)}.custom-checkbox input:checked~.custom-checkbox-box i{opacity:1}.custom-checkbox:hover .custom-checkbox-box{border-color:var(--color-primary)}.custom-radio{align-items:center;display:flex;margin-bottom:var(--spacing-md);position:relative}.custom-radio input[type=radio]{cursor:pointer;opacity:0;position:absolute}.custom-radio-circle{align-items:center;background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--border-radius-full);cursor:pointer;display:flex;height:24px;justify-content:center;margin-right:var(--spacing-sm);transition:all var(--transition-base);width:24px}.custom-radio input:checked~.custom-radio-circle{border-color:var(--color-primary)}.custom-radio-dot{background:var(--color-primary);border-radius:var(--border-radius-full);height:12px;opacity:0;transform:scale(0);transition:all var(--transition-base);width:12px}.custom-radio input:checked~.custom-radio-circle .custom-radio-dot{opacity:1;transform:scale(1)}.custom-radio:hover .custom-radio-circle{border-color:var(--color-primary)}.file-upload{position:relative}.file-upload-input{height:0;opacity:0;position:absolute;width:0}.file-upload-label{align-items:center;background:var(--color-gray-50);border:2px dashed var(--color-gray-300);border-radius:var(--border-radius-lg);cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl);transition:all var(--transition-base)}.file-upload-label:hover{background:var(--color-gray-100);border-color:var(--color-primary)}.file-upload-icon{color:var(--color-gray-400);font-size:3rem;margin-bottom:var(--spacing-md)}.file-upload-text{color:var(--color-gray-700);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.file-upload-hint{color:var(--color-gray-500);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-actions{border-top:2px solid var(--color-gray-200);display:flex;gap:var(--spacing-md);margin-top:var(--spacing-2xl);padding-top:var(--spacing-2xl)}.form-actions-right{justify-content:flex-end}.form-actions-center{justify-content:center}.form-actions-between{justify-content:space-between}.form-floating{position:relative}.form-floating .form-input,.form-floating .form-select,.form-floating .form-textarea{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-sm)}.form-floating label{color:var(--color-gray-500);left:0;padding:var(--spacing-lg);pointer-events:none;position:absolute;top:0;transform-origin:0 0;transition:all var(--transition-base)}.form-floating .form-input:focus~label,.form-floating .form-input:not(:placeholder-shown)~label,.form-floating .form-select:focus~label,.form-floating .form-select:not([value=""])~label,.form-floating .form-textarea:focus~label,.form-floating .form-textarea:not(:placeholder-shown)~label{color:var(--color-primary);transform:scale(.75) translateY(-.5rem) translateX(.15rem)}.form-switch{align-items:center;display:flex;margin-bottom:var(--spacing-md)}.switch-input{cursor:pointer;opacity:0;position:absolute}.switch-slider{background:var(--color-gray-300);cursor:pointer;height:26px;margin-right:var(--spacing-sm);position:relative;width:50px}.switch-slider,.switch-slider:before{border-radius:var(--border-radius-full);transition:all var(--transition-base)}.switch-slider:before{background:var(--color-white);content:"";height:20px;left:3px;position:absolute;top:3px;width:20px}.switch-input:checked~.switch-slider{background:var(--color-primary)}.switch-input:checked~.switch-slider:before{transform:translateX(24px)}.switch-label{color:var(--color-gray-700);cursor:pointer;font-size:var(--font-size-base);user-select:none}.form-section{margin-bottom:var(--spacing-3xl)}.form-section-title{border-bottom:2px solid var(--color-gray-200);color:var(--color-gray-900);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}@media (max-width:768px){.form-container{padding:var(--spacing-lg)}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}@media (max-width:576px){.form-title{font-size:var(--font-size-xl)}}