:root{--color-primary: #E1C16E;--color-primary-light: #F0E2AE;--color-primary-dark: #9E843A;--color-secondary: #B49A4F;--color-secondary-light: #E1C16E;--color-secondary-dark: #9E843A;--color-accent: #F6EDD2;--color-accent-dark: #7A6A3A;--color-background: #F8F6EF;--color-background-light: #F6EDD2;--color-surface: #FFFFFF;--color-text: #2B230F;--color-text-secondary: #7A6A3A;--color-border: #DED6C2;--color-success: #7A6A3A;--color-error: #9E843A;--color-warning: #B49A4F}.theme-yellow{--color-primary: #A39B00;--color-primary-light: #D6D38A;--color-primary-dark: #6E6900;--color-secondary: #7F7A00;--color-secondary-light: #A39B00;--color-secondary-dark: #6E6900;--color-accent: #ECE9C2;--color-accent-dark: #6B6800;--color-background: #F7F7EE;--color-background-light: #ECE9C2;--color-surface: #FFFFFF;--color-text: #2A2805;--color-text-secondary: #6B6800;--color-border: #DDDCC2;--color-success: #7F7A00;--color-error: #6E6900;--color-warning: #9C9500}.theme-company{--color-primary: #79C3F0;--color-primary-light: #A3D7F5;--color-primary-dark: #115c88ff;--color-secondary: #115c88ff;--color-secondary-light: #5AADDC;--color-secondary-dark: #115c88ff;--color-accent: #BA3C38;--color-accent-dark: #942F2C;--color-background: #A3D7F5;--color-background-light: #ffffff;--color-surface: #ffffff;--color-text: #232121;--color-text-secondary: #8695B6;--color-border: #8695B6;--color-success: #28a745;--color-error: #BA3C38;--color-warning: #f59e0b}.theme-steel{--color-primary: #6B7280;--color-primary-light: #D1D5DB;--color-primary-dark: #374151;--color-secondary: #4B5563;--color-secondary-light: #6B7280;--color-secondary-dark: #4B5563;--color-accent: #4B5563;--color-accent-dark: #1F2937;--color-background: #F3F4F6;--color-background-light: #FFFFFF;--color-surface: #FFFFFF;--color-text: #111827;--color-text-secondary: #6B7280;--color-border: #D1D5DB;--color-success: #4B5563;--color-error: #374151;--color-warning: #9CA3AF}.theme-evergreen{--color-primary: #097969;--color-primary-light: #6FB6AB;--color-primary-dark: #054C43;--color-secondary: #0F5F55;--color-secondary-light: #6FB6AB;--color-secondary-dark: #054C43;--color-accent: #CFE9E5;--color-accent-dark: #0F5F55;--color-background: #F1F7F6;--color-background-light: #FFFFFF;--color-surface: #FFFFFF;--color-text: #062821;--color-text-secondary: #4C7F78;--color-border: #C7DDD9;--color-success: #0F5F55;--color-error: #054C43;--color-warning: #5FA8A0}body{background-color:var(--color-background);color:var(--color-text);transition:background-color .3s ease,color .3s ease}.bg-primary{background-color:var(--color-primary)!important}.bg-secondary{background-color:var(--color-secondary)!important}.bg-surface{background-color:var(--color-surface)!important}.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-text-secondary)!important}.border-primary{border-color:var(--color-primary)!important}.btn-primary{background-color:var(--color-primary);color:var(--color-text);border:none}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-surface);border:none}.btn-secondary:hover{background-color:var(--color-secondary-light)}.bottom-action-buttons{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap;justify-content:flex-end}.bottom-action-btn{display:flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:#fff;color:var(--color-text);border:1px solid #e5e7eb;border-radius:.375rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 1px 2px #0000000d}.bottom-action-btn .material-icons{font-size:.875rem;color:var(--color-secondary)}.bottom-action-btn:hover{background:#f9fafb;border-color:var(--color-secondary)}.bottom-action-btn:hover .material-icons{color:var(--color-secondary-dark)}.bottom-action-btn:active{transform:translateY(1px)}@media (max-width: 768px){.bottom-action-btn .btn-text{display:none}}form,.form-section{display:flex;flex-direction:column;gap:1rem}.section-title{margin:0 0 .375rem;font-size:.875rem;font-weight:600;color:var(--color-text, #1c1c0d);padding-bottom:.375rem;border-bottom:2px solid #e9e8ce}.form-row{display:grid;gap:.75rem}.form-row.cols-2{grid-template-columns:1fr 1fr}.form-row.cols-3{grid-template-columns:1fr 1fr 1fr}.form-row.name-row{grid-template-columns:1fr 80px 1fr}.form-row.sex-trn-row{grid-template-columns:200px 1fr;gap:.5rem}.form-row.relation-share-row{grid-template-columns:180px 90px}@media (max-width: 768px){.form-row{grid-template-columns:1fr!important}}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.6875rem;font-weight:600;color:var(--color-text-secondary, #6b7280);letter-spacing:.025em;display:flex;align-items:center;gap:.25rem}.form-group label .required{color:#dc2626;font-weight:600}.form-group label .material-icons{font-size:1rem;color:var(--color-text-secondary, #6b7280)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=number],.form-group input[type=tel],.form-group input[type=date],.form-group input[type=time],.form-group input[type=datetime-local],.form-group input[type=url],.form-group select,.form-group textarea{padding:.625rem;border:1.5px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:var(--color-text, #1c1c0d);transition:all .2s ease;font-family:inherit;background:#fff}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder,.form-group input[type=password]::placeholder,.form-group input[type=number]::placeholder,.form-group input[type=tel]::placeholder,.form-group input[type=date]::placeholder,.form-group input[type=time]::placeholder,.form-group input[type=datetime-local]::placeholder,.form-group input[type=url]::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=password]:focus,.form-group input[type=number]:focus,.form-group input[type=tel]:focus,.form-group input[type=date]:focus,.form-group input[type=time]:focus,.form-group input[type=datetime-local]:focus,.form-group input[type=url]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-secondary, #9e9d47);box-shadow:0 0 0 3px #9e9d471a}.form-group input[type=text]:disabled,.form-group input[type=email]:disabled,.form-group input[type=password]:disabled,.form-group input[type=number]:disabled,.form-group input[type=tel]:disabled,.form-group input[type=date]:disabled,.form-group input[type=time]:disabled,.form-group input[type=datetime-local]:disabled,.form-group input[type=url]:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.form-group input[type=text].error,.form-group input[type=text].ng-invalid.ng-touched,.form-group input[type=email].error,.form-group input[type=email].ng-invalid.ng-touched,.form-group input[type=password].error,.form-group input[type=password].ng-invalid.ng-touched,.form-group input[type=number].error,.form-group input[type=number].ng-invalid.ng-touched,.form-group input[type=tel].error,.form-group input[type=tel].ng-invalid.ng-touched,.form-group input[type=date].error,.form-group input[type=date].ng-invalid.ng-touched,.form-group input[type=time].error,.form-group input[type=time].ng-invalid.ng-touched,.form-group input[type=datetime-local].error,.form-group input[type=datetime-local].ng-invalid.ng-touched,.form-group input[type=url].error,.form-group input[type=url].ng-invalid.ng-touched,.form-group select.error,.form-group select.ng-invalid.ng-touched,.form-group textarea.error,.form-group textarea.ng-invalid.ng-touched{border-color:#dc2626}.form-group input[type=text].error:focus,.form-group input[type=text].ng-invalid.ng-touched:focus,.form-group input[type=email].error:focus,.form-group input[type=email].ng-invalid.ng-touched:focus,.form-group input[type=password].error:focus,.form-group input[type=password].ng-invalid.ng-touched:focus,.form-group input[type=number].error:focus,.form-group input[type=number].ng-invalid.ng-touched:focus,.form-group input[type=tel].error:focus,.form-group input[type=tel].ng-invalid.ng-touched:focus,.form-group input[type=date].error:focus,.form-group input[type=date].ng-invalid.ng-touched:focus,.form-group input[type=time].error:focus,.form-group input[type=time].ng-invalid.ng-touched:focus,.form-group input[type=datetime-local].error:focus,.form-group input[type=datetime-local].ng-invalid.ng-touched:focus,.form-group input[type=url].error:focus,.form-group input[type=url].ng-invalid.ng-touched:focus,.form-group select.error:focus,.form-group select.ng-invalid.ng-touched:focus,.form-group textarea.error:focus,.form-group textarea.ng-invalid.ng-touched:focus{box-shadow:0 0 0 3px #dc26261a}.form-group input[type=text].success,.form-group input[type=text].ng-valid.ng-touched,.form-group input[type=email].success,.form-group input[type=email].ng-valid.ng-touched,.form-group input[type=password].success,.form-group input[type=password].ng-valid.ng-touched,.form-group input[type=number].success,.form-group input[type=number].ng-valid.ng-touched,.form-group input[type=tel].success,.form-group input[type=tel].ng-valid.ng-touched,.form-group input[type=date].success,.form-group input[type=date].ng-valid.ng-touched,.form-group input[type=time].success,.form-group input[type=time].ng-valid.ng-touched,.form-group input[type=datetime-local].success,.form-group input[type=datetime-local].ng-valid.ng-touched,.form-group input[type=url].success,.form-group input[type=url].ng-valid.ng-touched,.form-group select.success,.form-group select.ng-valid.ng-touched,.form-group textarea.success,.form-group textarea.ng-valid.ng-touched{border-color:#10b981}.form-group input[type=text].success:focus,.form-group input[type=text].ng-valid.ng-touched:focus,.form-group input[type=email].success:focus,.form-group input[type=email].ng-valid.ng-touched:focus,.form-group input[type=password].success:focus,.form-group input[type=password].ng-valid.ng-touched:focus,.form-group input[type=number].success:focus,.form-group input[type=number].ng-valid.ng-touched:focus,.form-group input[type=tel].success:focus,.form-group input[type=tel].ng-valid.ng-touched:focus,.form-group input[type=date].success:focus,.form-group input[type=date].ng-valid.ng-touched:focus,.form-group input[type=time].success:focus,.form-group input[type=time].ng-valid.ng-touched:focus,.form-group input[type=datetime-local].success:focus,.form-group input[type=datetime-local].ng-valid.ng-touched:focus,.form-group input[type=url].success:focus,.form-group input[type=url].ng-valid.ng-touched:focus,.form-group select.success:focus,.form-group select.ng-valid.ng-touched:focus,.form-group textarea.success:focus,.form-group textarea.ng-valid.ng-touched:focus{box-shadow:0 0 0 3px #10b9811a}.form-group select{cursor:pointer;appearance:none;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='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.form-group select:focus{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='%239e9d47' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.form-group select option{padding:.5rem}.form-group textarea{resize:vertical;min-height:65px;line-height:1.5}.form-group input[type=number]{appearance:textfield;-moz-appearance:textfield}.form-group input[type=number]::-webkit-outer-spin-button,.form-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.radio-group{display:flex;gap:1.25rem;padding:.375rem 0;flex-wrap:wrap}.radio-group.vertical{flex-direction:column;gap:.75rem}.radio-label{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-size:.875rem;color:#374151;font-weight:500;position:relative}.radio-label input[type=radio]{position:absolute;opacity:0;cursor:pointer}.radio-label input[type=radio]:checked+.radio-custom{border-color:var(--color-secondary, #9e9d47);background:var(--color-secondary, #9e9d47)}.radio-label input[type=radio]:checked+.radio-custom:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.radio-label input[type=radio]:disabled+.radio-custom{opacity:.5;cursor:not-allowed}.radio-label .radio-custom{width:18px;height:18px;border:2px solid #d1d5db;border-radius:50%;position:relative;transition:all .2s ease;background:#fff;flex-shrink:0}.radio-label .radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:7px;height:7px;border-radius:50%;background:#fff;opacity:0;transition:all .2s ease}.radio-label:hover .radio-custom{border-color:var(--color-secondary, #9e9d47)}.checkbox-group{display:flex;flex-direction:column;gap:.75rem;padding:.375rem 0}.checkbox-label{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-size:.875rem;color:#374151;font-weight:500;position:relative}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{border-color:var(--color-secondary, #9e9d47);background:var(--color-secondary, #9e9d47)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom .material-icons{opacity:1;transform:scale(1)}.checkbox-label input[type=checkbox]:disabled+.checkbox-custom{opacity:.5;cursor:not-allowed}.checkbox-label .checkbox-custom{width:18px;height:18px;border:2px solid #d1d5db;border-radius:.25rem;position:relative;transition:all .2s ease;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center}.checkbox-label .checkbox-custom .material-icons{font-size:14px;color:#fff;opacity:0;transform:scale(0);transition:all .2s ease}.checkbox-label:hover .checkbox-custom{border-color:var(--color-secondary, #9e9d47)}.error-message{display:flex;align-items:center;gap:.25rem;color:#dc2626;font-size:.75rem;margin-top:-.25rem;font-weight:500}.error-message .material-icons{font-size:1rem}.helper-text{display:flex;align-items:center;gap:.25rem;color:#6b7280;font-size:.75rem;margin-top:-.25rem}.helper-text .material-icons{font-size:1rem}.success-message{display:flex;align-items:center;gap:.25rem;color:#10b981;font-size:.75rem;margin-top:-.25rem;font-weight:500}.success-message .material-icons{font-size:1rem}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:.625rem;padding-top:1rem;margin-top:.5rem;border-top:1px solid #e9e8ce;flex-wrap:wrap}.form-actions.start{justify-content:flex-start}.form-actions.center{justify-content:center}.form-actions.space-between{justify-content:space-between}.btn-primary,.btn-secondary,.btn-cancel,.btn-outline{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:none;border-radius:.375rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-primary .material-icons,.btn-secondary .material-icons,.btn-cancel .material-icons,.btn-outline .material-icons{font-size:.9375rem}.btn-primary:disabled,.btn-secondary:disabled,.btn-cancel:disabled,.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-secondary, #9e9d47);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-secondary-dark, #8a8a3e);transform:translateY(-1px);box-shadow:0 4px 12px #9e9d474d}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.btn-cancel{background:#fff;color:#6b7280;border:1.5px solid #d1d5db}.btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;color:#374151}.btn-outline{background:transparent;color:var(--color-secondary, #9e9d47);border:1.5px solid var(--color-secondary, #9e9d47)}.btn-outline:hover:not(:disabled){background:#9e9d471a;border-color:var(--color-secondary-dark, #8a8a3e);color:var(--color-secondary-dark, #8a8a3e)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.btn-danger:active:not(:disabled){transform:translateY(0)}.input-with-icon{position:relative}.input-with-icon .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#6b7280;pointer-events:none}.input-with-icon .input-icon .material-icons{font-size:1.125rem}.input-with-icon input{padding-left:2.5rem}.input-with-icon.icon-right .input-icon{left:auto;right:.75rem}.input-with-icon.icon-right input{padding-left:.625rem;padding-right:2.5rem}.file-upload .file-input-wrapper{position:relative;display:inline-block;cursor:pointer;width:100%}.file-upload .file-input-wrapper input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.file-upload .file-input-wrapper .file-input-label{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;border:2px dashed #d1d5db;border-radius:.375rem;background:#f9fafb;color:#6b7280;font-size:.875rem;transition:all .2s ease}.file-upload .file-input-wrapper .file-input-label .material-icons{font-size:1.25rem}.file-upload .file-input-wrapper .file-input-label:hover{border-color:var(--color-secondary, #9e9d47);background:#9e9d470d;color:var(--color-secondary, #9e9d47)}.file-upload .file-name{margin-top:.5rem;font-size:.75rem;color:#6b7280}@media (max-width: 768px){.form-actions{flex-direction:column;align-items:stretch}.form-actions button{width:100%}.radio-group:not(.vertical){flex-direction:column;gap:.75rem}}.loading-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.loading-data .material-icons{font-size:3rem;margin-bottom:1rem;color:var(--color-secondary)}.loading-data .material-icons.spinning{animation:spin 1s linear infinite}.loading-data p{margin:0;font-size:.875rem}.toggle-buttons-loading{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-background-light);border-radius:.5rem;color:var(--color-text-secondary);font-size:.8125rem}.toggle-buttons-loading .material-icons{font-size:1rem}.toggle-buttons-loading .material-icons.spinning{animation:spin 1s linear infinite}select.loading,input.loading{background-image:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;color:transparent;pointer-events:none}select.loading option,input.loading option{color:var(--color-text)}select.loading{appearance:none;background-image:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%),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='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:left center,right .5rem center;background-size:200% 100%,12px 12px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.no-data .material-icons{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-data p{margin:0;font-size:.875rem}.no-data-cell{padding:0!important;border:none!important}.no-data-cell .no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.no-data-cell .no-data .material-icons{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-data-cell .no-data p{margin:0;font-size:.875rem}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}body{background-color:var(--color-background);position:fixed;top:0;left:0}app-root{display:block;height:100%;width:100%;overflow:hidden}
