.form-group,.form-section{margin-bottom:var(--spacing-6)}.form-section-clean{border-bottom:none!important;padding-bottom:0!important}.form-label{display:flex;align-items:center;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:6px;letter-spacing:.02em}.required{color:var(--color-danger);margin-left:2px}.form-input{width:100%;padding:10px 14px;font-size:var(--text-sm);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-button);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.form-input::placeholder{color:var(--color-gray-400)}.form-input:hover:not(:focus):not(:disabled):not([readonly]){border-color:var(--color-gray-400)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-primary);background:var(--color-white)}.form-input.is-invalid{border-color:var(--color-danger)}.form-input.is-invalid:focus{box-shadow:var(--shadow-focus-danger)}.form-input:disabled,.form-input[readonly]{background-color:var(--color-gray-50);color:var(--color-text-muted);cursor:not-allowed;opacity:1}.input-group{display:flex;align-items:stretch}.input-group-text{display:flex;align-items:center;padding:10px 14px;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);background-color:var(--color-gray-100);border:1px solid var(--color-border);border-radius:var(--radius-button) 0 0 10px;border-right:none}.input-group .form-input{border-radius:0 10px 10px 0;flex:1}.form-hint{display:block;font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--spacing-2)}.error-message{display:flex;align-items:center;gap:var(--spacing-1-5);color:var(--color-danger);font-size:var(--text-sm);margin-top:var(--spacing-2)}.error-message i{font-size:.8rem}.alert{padding:var(--spacing-4) var(--spacing-5);margin-bottom:var(--spacing-6);border:1px solid transparent;border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-2-5)}.alert i{font-size:1rem}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-success{color:var(--color-success-dark);background-color:var(--color-success-light);border-color:#c3e6cb}.alert-danger{color:var(--color-danger-dark);background-color:var(--color-danger-light);border-color:#f5c6cb}.alert-warning{color:var(--color-warning-dark);background-color:var(--color-warning-badge);border-color:#ffeaa7}.form-actions{display:flex;gap:var(--spacing-4);margin-top:var(--spacing-6);padding-top:0;border-top:none!important;border:none!important;margin-bottom:calc(var(--spacing-8) * -1)}select.form-input{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='%23343a40' 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-3) center;background-size:16px 12px;padding-right:var(--spacing-8);-webkit-appearance:none;-moz-appearance:none;appearance:none}textarea.form-input{min-height:120px;resize:vertical}.form-check{display:flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-3)}.form-check-input{width:18px;height:18px;margin:0;cursor:pointer;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.form-check-label{font-size:var(--text-sm);color:var(--color-text);cursor:pointer;margin:0}.form-input-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--text-sm);border-radius:var(--radius-lg)}.form-input-lg{padding:var(--spacing-4) var(--spacing-5);font-size:var(--text-lg);border-radius:var(--radius-2xl)}.filter-select{min-width:200px;padding:10px 14px;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--font-weight-normal);transition:border-color .15s ease,box-shadow .15s ease;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;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='%23343a40' 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-3) center;background-size:16px 12px;padding-right:var(--spacing-8)}.filter-select:hover:not(:focus){border-color:var(--color-gray-400)}.filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus-primary)}@media (max-width: 576px){.form-actions{flex-direction:column}.form-actions .btn-submit,.form-actions .btn-cancel{width:100%}}.mr-2{margin-right:var(--spacing-2)}.form-checkbox{display:flex;align-items:center;gap:var(--spacing-2)}.form-checkbox-input{width:16px;height:16px;flex:none;accent-color:var(--color-primary);cursor:pointer}.form-checkbox-label{font-size:var(--text-sm);color:var(--color-text);cursor:pointer;margin:0}
