.alert-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeIn .2s ease-out}.alert-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;width:100%;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.alert-modal-header{display:flex;align-items:center;gap:1rem;padding:1.5rem 1.5rem 1rem}.alert-modal-title-section{flex:1}.alert-modal-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.alert-icon{width:48px;height:48px;flex-shrink:0}.alert-icon-error{color:#ef4444}.alert-icon-warning{color:#f59e0b}.alert-icon-success{color:#10b981}.alert-icon-info{color:#3b82f6}.alert-modal-body{padding:0 1.5rem 1.5rem}.alert-modal-message{font-size:.95rem;line-height:1.6;color:#4b5563;margin:0}.alert-modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem 1.5rem;background-color:#f9fafb;border-top:1px solid #e5e7eb}.alert-modal-footer .btn-primary,.alert-modal-footer .btn-secondary{min-width:100px;padding:.625rem 1.25rem;font-size:.95rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;border:none}.alert-modal-footer .btn-primary{background-color:#2563eb;color:#fff}.alert-modal-footer .btn-primary:hover{background-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.alert-modal-footer .btn-primary:active{transform:translateY(0)}.alert-modal-footer .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.alert-modal-footer .btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}@media (max-width: 640px){.alert-modal-content{margin:1rem}.alert-modal-header{padding:1.25rem 1.25rem .75rem}.alert-modal-body{padding:0 1.25rem 1.25rem}.alert-modal-footer{padding:1rem 1.25rem 1.25rem;flex-direction:column-reverse}.alert-modal-footer .btn-primary,.alert-modal-footer .btn-secondary{width:100%}}.alert-modal-overlay:focus{outline:none}.alert-modal-footer button:focus{outline:2px solid #2563eb;outline-offset:2px}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:confirmOverlayFadeIn .2s ease-out}@keyframes confirmOverlayFadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:420px;width:100%;padding:32px;position:relative;animation:confirmModalSlideIn .3s ease-out;display:flex;flex-direction:column;align-items:center;text-align:center}@keyframes confirmModalSlideIn{0%{transform:scale(.95) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.confirm-modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.confirm-modal-close:hover{background:#f3f4f6;color:#1f2937}.confirm-modal-close:focus{outline:2px solid #3B82F6;outline-offset:2px}.confirm-modal-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:24px;animation:iconPulse .5s ease-out}@keyframes iconPulse{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.confirm-modal-danger .confirm-modal-icon{background:#fee2e2;color:#dc2626}.confirm-modal-warning .confirm-modal-icon{background:#fed7aa;color:#ea580c}.confirm-modal-title{font-size:22px;font-weight:700;color:#111827;margin:0 0 12px;line-height:1.3}.confirm-modal-message{font-size:15px;color:#6b7280;line-height:1.6;margin:0 0 32px;max-width:340px}.confirm-modal-actions{display:flex;gap:12px;width:100%}.confirm-modal-button{flex:1;padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-width:120px}.confirm-modal-button-cancel{background:#f3f4f6;color:#374151}.confirm-modal-button-cancel:hover{background:#e5e7eb;color:#1f2937}.confirm-modal-button-cancel:focus{outline:2px solid #3B82F6;outline-offset:2px}.confirm-modal-button-danger{background:#dc2626;color:#fff}.confirm-modal-button-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.confirm-modal-button-danger:active{transform:translateY(0)}.confirm-modal-button-danger:focus{outline:2px solid #DC2626;outline-offset:2px}.confirm-modal-button-warning{background:#ea580c;color:#fff}.confirm-modal-button-warning:hover{background:#c2410c;transform:translateY(-1px);box-shadow:0 4px 12px #ea580c4d}.confirm-modal-button-warning:active{transform:translateY(0)}.confirm-modal-button-warning:focus{outline:2px solid #EA580C;outline-offset:2px}@media (max-width: 640px){.confirm-modal{max-width:90%;padding:24px}.confirm-modal-icon{width:64px;height:64px;margin-bottom:20px}.confirm-modal-icon svg{width:36px;height:36px}.confirm-modal-title{font-size:20px}.confirm-modal-message{font-size:14px;margin-bottom:24px}.confirm-modal-actions{flex-direction:column-reverse}.confirm-modal-button{width:100%}}.confirm-modal-overlay.closing{animation:confirmOverlayFadeOut .2s ease-out forwards}.confirm-modal.closing{animation:confirmModalSlideOut .2s ease-out forwards}@keyframes confirmOverlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes confirmModalSlideOut{0%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(.95) translateY(20px);opacity:0}}.notification-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.notification-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.notification-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #E5E7EB}.notification-modal-header-content{display:flex;align-items:center;gap:12px;flex:1}.notification-modal-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-modal-error .notification-modal-icon{background:#fee2e2;color:#dc2626}.notification-modal-success .notification-modal-icon{background:#d1fae5;color:#059669}.notification-modal-warning .notification-modal-icon{background:#fed7aa;color:#ea580c}.notification-modal-info .notification-modal-icon{background:#dbeafe;color:#2563eb}.notification-modal-title{font-size:18px;font-weight:600;margin:0;color:#1f2937}.notification-modal-close{width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.notification-modal-close:hover{background:#f3f4f6;color:#1f2937}.notification-modal-close:focus{outline:2px solid #3B82F6;outline-offset:2px}.notification-modal-body{padding:20px;overflow-y:auto;flex:1}.notification-modal-message{font-size:16px;color:#374151;line-height:1.6;margin:0 0 16px}.notification-modal-errors{margin-top:16px}.notification-modal-errors-title{font-size:14px;font-weight:500;color:#6b7280;margin:0 0 12px}.notification-modal-errors-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.notification-modal-error-item{padding:12px;background:#f9fafb;border-left:3px solid;border-radius:6px;display:flex;flex-direction:column;gap:4px}.notification-modal-error .notification-modal-error-item{border-left-color:#dc2626;background:#fef2f2}.notification-modal-success .notification-modal-error-item{border-left-color:#059669;background:#ecfdf5}.notification-modal-warning .notification-modal-error-item{border-left-color:#ea580c;background:#fff7ed}.notification-modal-info .notification-modal-error-item{border-left-color:#2563eb;background:#eff6ff}.notification-modal-error-field{font-weight:600;font-size:13px;color:#1f2937}.notification-modal-error-message{font-size:14px;color:#4b5563;line-height:1.5}.notification-modal-technical{margin-top:16px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.notification-modal-technical summary{cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;-webkit-user-select:none;user-select:none;padding:4px}.notification-modal-technical summary:hover{color:#1f2937}.notification-modal-technical-content{margin-top:12px;padding-top:12px;border-top:1px solid #E5E7EB;font-size:13px;color:#4b5563;display:flex;flex-direction:column;gap:8px}.notification-modal-technical-content p{margin:0}.notification-modal-technical-content strong{color:#1f2937;font-weight:600}.notification-modal-footer{padding:16px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:12px}.notification-modal-button{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;min-width:100px}.notification-modal-button-error{background:#dc2626;color:#fff}.notification-modal-button-error:hover{background:#b91c1c}.notification-modal-button-success{background:#059669;color:#fff}.notification-modal-button-success:hover{background:#047857}.notification-modal-button-warning{background:#ea580c;color:#fff}.notification-modal-button-warning:hover{background:#c2410c}.notification-modal-button-info{background:#2563eb;color:#fff}.notification-modal-button-info:hover{background:#1d4ed8}.notification-modal-button:focus{outline:2px solid;outline-offset:2px}.notification-modal-button-error:focus{outline-color:#dc2626}.notification-modal-button-success:focus{outline-color:#059669}.notification-modal-button-warning:focus{outline-color:#ea580c}.notification-modal-button-info:focus{outline-color:#2563eb}.notification-modal-body::-webkit-scrollbar{width:8px}.notification-modal-body::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.notification-modal-body::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.notification-modal-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width: 640px){.notification-modal{max-width:95%;margin:10px}.notification-modal-header,.notification-modal-body{padding:16px}.notification-modal-footer{padding:12px 16px}.notification-modal-title{font-size:16px}.notification-modal-message{font-size:14px}}.move-client-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:moveOverlayFadeIn .2s ease-out}@keyframes moveOverlayFadeIn{0%{opacity:0}to{opacity:1}}.move-client-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:520px;width:100%;animation:moveModalSlideIn .3s ease-out;display:flex;flex-direction:column;max-height:90vh}@keyframes moveModalSlideIn{0%{transform:scale(.95) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.move-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 20px;border-bottom:1px solid #E5E7EB}.move-modal-header-content{display:flex;gap:12px;align-items:flex-start;flex:1}.move-modal-icon{color:#3b82f6;flex-shrink:0;margin-top:2px}.move-modal-title{font-size:20px;font-weight:700;color:#111827;margin:0 0 4px;line-height:1.3}.move-modal-subtitle{font-size:14px;color:#6b7280;margin:0;line-height:1.4}.move-modal-close{width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.move-modal-close:hover:not(:disabled){background:#f3f4f6;color:#1f2937}.move-modal-close:disabled{opacity:.5;cursor:not-allowed}.move-modal-body{padding:24px;overflow-y:auto}.current-location{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f3f4f6;border-radius:8px;margin-bottom:24px;font-size:14px}.current-location svg{color:#6b7280;flex-shrink:0}.current-location-label{color:#6b7280;font-weight:500}.current-location-value{color:#111827;font-weight:600}.move-client-modal .form-group{margin-bottom:20px}.move-client-modal .form-label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.move-client-modal .form-label:after{content:none}.move-client-modal .form-select{width:100%;padding:10px 12px;font-size:15px;border:1px solid #D1D5DB;border-radius:8px;background:#fff;color:#111827;transition:all .2s;cursor:pointer}.move-client-modal .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.move-client-modal .form-select:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.loading-select{padding:10px 12px;font-size:15px;color:#6b7280;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;text-align:center}.warning-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef3c7;border:1px solid #FCD34D;border-radius:8px;color:#92400e;font-size:14px;line-height:1.5;margin-top:16px}.move-modal-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #E5E7EB}.move-modal-button{flex:1;padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-width:120px}.move-modal-button-cancel{background:#f3f4f6;color:#374151}.move-modal-button-cancel:hover:not(:disabled){background:#e5e7eb;color:#1f2937}.move-modal-button-confirm{background:#059669;color:#fff}.move-modal-button-confirm:hover:not(:disabled){background:#047857;transform:translateY(-1px);box-shadow:0 4px 12px #0596694d}.move-modal-button-confirm:active:not(:disabled){transform:translateY(0)}.move-modal-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.move-modal-button-confirm:disabled{background:#d1d5db;color:#9ca3af}@media (max-width: 640px){.move-client-modal{max-width:95%;margin:10px}.move-modal-header{padding:20px 20px 16px}.move-modal-body{padding:20px}.move-modal-title{font-size:18px}.move-modal-subtitle{font-size:13px}.current-location{flex-wrap:wrap;font-size:13px}.move-modal-actions{flex-direction:column}.move-modal-button{width:100%}}.move-modal-body::-webkit-scrollbar{width:8px}.move-modal-body::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.move-modal-body::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.move-modal-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}.sort-dropdown{position:relative;display:inline-block}.sort-dropdown-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f3f4f6;border:1px solid #D1D5DB;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.sort-dropdown-btn:hover{background:#e5e7eb;border-color:#9ca3af}.sort-dropdown-btn.active{background:#e5e7eb;border-color:#9ca3af;color:#374151}.sort-dropdown-btn svg{flex-shrink:0}.sort-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;background:#fff;border:1px solid #E5E7EB;border-radius:12px;box-shadow:0 10px 25px #0000001a,0 4px 10px #0000000d;z-index:1000;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sort-dropdown-header{padding:12px 16px;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.sort-dropdown-divider{height:1px;background:#e5e7eb;margin:4px 0}.sort-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s ease;gap:12px}.sort-dropdown-item:hover{background:#f9fafb}.sort-dropdown-item.selected{background:#e5e7eb;color:#374151}.sort-dropdown-item.selected .sort-option-title{color:#111827;font-weight:600}.sort-option-content{display:flex;align-items:center;gap:12px;flex:1}.sort-option-content svg{flex-shrink:0;color:#6b7280}.sort-dropdown-item.selected .sort-option-content svg{color:#374151}.sort-option-text{display:flex;flex-direction:column;gap:2px}.sort-option-title{font-size:14px;font-weight:500;color:#111827}.sort-option-description{font-size:12px;color:#6b7280}.sort-dropdown-item.clear-sort{color:#dc2626;font-weight:500}.sort-dropdown-item.clear-sort:hover{background:#fef2f2}.sort-dropdown-item.clear-sort svg{color:#dc2626}@media (max-width: 768px){.sort-dropdown-menu{right:auto;left:0;min-width:260px}.sort-dropdown-btn span{display:none}.sort-dropdown-btn.active span{display:inline}}@media (prefers-color-scheme: dark){.sort-dropdown-btn{background:#374151;border-color:#4b5563;color:#f3f4f6}.sort-dropdown-btn:hover{background:#4b5563;border-color:#6b7280}.sort-dropdown-btn.active{background:#4b5563;border-color:#6b7280;color:#f3f4f6}.sort-dropdown-menu{background:#1f2937;border-color:#374151}.sort-dropdown-item:hover{background:#374151}.sort-dropdown-item.selected{background:#4b5563;color:#f9fafb}.sort-dropdown-item.selected .sort-option-title{color:#f9fafb}.sort-dropdown-item.selected .sort-option-content svg{color:#f9fafb}.sort-option-title{color:#f3f4f6}.sort-option-description{color:#9ca3af}.sort-dropdown-divider{background:#374151}.sort-dropdown-header{color:#9ca3af}.sort-dropdown-item.clear-sort{color:#ef4444}.sort-dropdown-item.clear-sort:hover{background:#7f1d1d}.sort-dropdown-item.clear-sort svg{color:#ef4444}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:#f9fafb;color:#111827;height:100vh;overflow:hidden}.app-container{display:flex;height:100vh}.sidebar{width:250px;background:#fff;display:flex;border:1px solid #E5E7EB;border-radius:16px;margin-top:6px;margin-left:6px;margin-bottom:6px;flex-direction:column;height:100vh;transition:width .3s ease-in-out;overflow:hidden}.sidebar.collapsed{width:75px}.sidebar-header{padding:20px 15px;border-bottom:1px solid #E5E7EB;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:80px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:20px 8px}.logo{display:flex;align-items:center;justify-content:flex-start;flex:1;transition:opacity .2s ease-in-out}.sidebar.collapsed .logo{display:none}.logo-image{max-width:162px;max-height:54px;width:auto;height:auto;object-fit:contain}.toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:8px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .2s ease;flex-shrink:0}.toggle-btn:hover{background:#f3f4f6}.toggle-btn:active{background:#e5e7eb}.sidebar.collapsed .toggle-btn{margin:0 auto}.user-profile{display:flex;align-items:center;gap:12px}.user-avatar{width:32px;height:32px;border-radius:50%;background:#2563eb;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:12px}.user-info h4{font-size:13px;font-weight:600;color:#111827;margin-bottom:1px}.user-info p{font-size:11px;color:#6b7280}.sidebar-nav{flex:1;padding:24px 0}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 20px;margin:0 16px 4px;color:#6b7280;text-decoration:none;border-radius:12px;transition:all .2s ease;font-size:15px;font-weight:500;cursor:pointer;white-space:nowrap}.sidebar.collapsed .nav-item{justify-content:center;padding:12px 8px;margin:0 8px 4px;gap:0}.nav-item:hover{background:#f3f4f6;color:#374151}.nav-item.active{background:#e8f5e8;color:#00984a;border:1px solid #B8E6B8}.nav-item.active .nav-icon{color:#00984a}.nav-item:hover .nav-icon{color:#374151}.nav-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-label{transition:opacity .2s ease-in-out;overflow:hidden}.sidebar.collapsed .nav-label{opacity:0;width:0;display:none}.sidebar.collapsed .nav-item{position:relative}.sidebar.collapsed .nav-item:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:12px;padding:6px 12px;background:#1f2937;color:#fff;font-size:13px;font-weight:500;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.sidebar.collapsed .nav-item:before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:6px;border:6px solid transparent;border-right-color:#1f2937;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.sidebar.collapsed .nav-item:hover:after,.sidebar.collapsed .nav-item:hover:before{opacity:1;transition-delay:.5s}.main-content{flex:1;display:flex;flex-direction:column;border-radius:16px;height:100vh;overflow:hidden}.top-bar{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:18px 32px;margin:6px;display:flex;justify-content:space-between;align-items:center}.search-container{flex:1;max-width:300px;margin-right:20px;position:relative}.search-input{width:100%;padding:12px 16px 12px 44px;border:1px solid #D1D5DB;border-radius:12px;background:#f9fafb;font-size:14px;color:#374151;transition:all .2s ease}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#9ca3af;z-index:1;display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .2s ease}.search-container:hover .search-icon{color:#6b7280}.search-input:focus{outline:none;border-color:#00984a;background:#fff;box-shadow:0 0 0 3px #00984a1a}.content-area{flex:1;padding:32px;overflow-y:auto}.page-header{margin-bottom:32px;display:flex;justify-content:space-between;align-items:center}.page-title{font-size:28px;font-weight:700;color:#111827;margin-bottom:8px}.page-title-section{display:flex;flex-direction:column}.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;color:#6b7280}.breadcrumb-link{color:#00984a;text-decoration:none;cursor:pointer}.breadcrumb-link:hover{text-decoration:underline}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#00984a,#00c65e);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00984a33}.btn-primary:hover{background:linear-gradient(135deg,#007a3d,#00a851);box-shadow:0 4px 12px #00984a4d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 6px #00984a33}.btn-primary svg{flex-shrink:0}.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #6b72801a}.btn-secondary:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db);box-shadow:0 4px 12px #6b728026;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0);box-shadow:0 2px 6px #6b72801a}.btn-secondary svg{flex-shrink:0}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;overflow:visible}.category-card{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:24px;transition:all .2s ease;cursor:pointer;position:relative;overflow:visible}.category-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000014;border-color:#bfdbfe}.category-card:hover .card-menu{z-index:10}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.card-menu{position:relative;display:flex;align-items:center;z-index:auto}.category-menu-btn{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.category-menu-btn:hover{background:#f3f4f6;color:#111827}.category-title{font-size:18px;font-weight:600;color:#111827}.category-description{color:#6b7280;font-size:14px;line-height:1.5}.groups-container{background:#fff;border:1px solid #E5E7EB;border-radius:16px;overflow:visible}.group-item{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #F3F4F6;transition:all .2s ease;cursor:pointer;position:relative}.group-item:first-child{border-top-left-radius:16px;border-top-right-radius:16px}.group-item:last-child{border-bottom:none;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.group-item:hover{background:#f9fafb;z-index:1}.group-name{font-size:16px;font-weight:500;color:#111827}.group-actions{position:relative;display:flex;align-items:center}.group-menu-btn{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.group-menu-btn:hover{background:#f3f4f6;color:#111827}.clients-filters{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:20px 24px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.filters-left{display:flex;align-items:center;gap:16px;flex:1;position:relative}.filters-right{display:flex;align-items:center;gap:12px}.dropdown-menu{position:fixed;top:100%;right:0;margin-top:4px;z-index:1000;background:#fff;border:1px solid #D1D5DB;border-radius:8px;box-shadow:0 10px 25px #00000026;padding:4px 0;min-width:140px;display:none;max-height:300px;overflow-y:auto;transform:translateZ(0);will-change:transform}.dropdown-menu.active{display:block;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px) translateZ(0)}to{opacity:1;transform:translateY(0) translateZ(0)}}.dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:14px;color:#374151;cursor:pointer;transition:background-color .2s ease}.dropdown-item:hover{background:#f3f4f6}.dropdown-item.delete{color:#dc2626}.dropdown-item.delete:hover{background:#fef2f2}.filter-dropdown{position:relative}.filter-trigger{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f3f4f6;border:1px solid #D1D5DB;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.filter-trigger:hover{background:#e5e7eb;border-color:#9ca3af}.filter-panel{position:absolute;top:100%;right:0;z-index:10;background:#fff;border:1px solid #D1D5DB;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;padding:16px;min-width:250px;display:none}.filter-panel.active{display:block}.filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:16px}.filter-title{font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.filter-divider{height:1px;background:#e5e7eb;margin-bottom:16px}.filter-group{margin-bottom:16px}.filter-group:last-child{margin-bottom:0}.filter-group-title{font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.filter-option{display:flex;align-items:center;gap:8px;margin-bottom:6px}.filter-option:last-child{margin-bottom:0}.filter-option input[type=radio]{margin:0}.filter-option label{font-size:14px;color:#6b7280;cursor:pointer}.search-field{flex:1;max-width:400px;min-width:200px;position:relative}.search-field .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#9ca3af;display:flex;align-items:center;justify-content:center;z-index:1;pointer-events:none}.search-field .search-icon svg{width:20px;height:20px;color:#9ca3af}.search-field input{width:100%;padding:12px 90px 12px 44px;border:1px solid #D1D5DB;border-radius:8px;font-size:14px;background:#f9fafb;color:#1f2937;transition:all .2s ease}.search-field input:focus{outline:none;border-color:#00984a;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.search-field input:focus~.search-icon svg,.search-field:focus-within .search-icon svg{color:#00984a}.search-clear-btn{position:absolute;right:50px;top:50%;transform:translateY(-50%);background:none;border:none;padding:6px;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.search-clear-btn:hover{color:#ef4444;background:#fee2e2}.search-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:#00984a;border:none;padding:8px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.search-btn:hover{background:#007a3d;transform:translateY(-50%) scale(1.05)}.search-btn:active{transform:translateY(-50%) scale(.95)}.btn-export{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#00984a,#00c65e);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00984a33}.btn-export:hover{background:linear-gradient(135deg,#007a3d,#00a851);box-shadow:0 4px 12px #00984a4d;transform:translateY(-1px)}.btn-export:active{transform:translateY(0);box-shadow:0 2px 6px #00984a33}.btn-export svg{flex-shrink:0}.btn-clear-filters{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-clear-filters:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db);box-shadow:0 4px 12px #6b728026;transform:translateY(-1px)}.btn-clear-filters:active{transform:translateY(0);box-shadow:0 2px 6px #6b72801a}.btn-clear-filters.disabled{color:#9ca3af;cursor:not-allowed;opacity:.5}.btn-clear-filters.disabled:hover{background:transparent;color:#9ca3af}@media (max-width: 768px){.filter-header{gap:8px}.filter-title{font-size:13px}.btn-clear-filters{font-size:12px;padding:3px 6px}.filter-panel{min-width:220px}}.clients-table-container{background:#fff;border:1px solid #E5E7EB;border-radius:16px;overflow:hidden}.clients-table{width:100%;border-collapse:collapse}.clients-table th{background:#f9fafb;padding:16px 12px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;border-bottom:1px solid #E5E7EB}.clients-table td{padding:16px 12px;font-size:14px;color:#374151;border-bottom:1px solid #F3F4F6;position:relative}.clients-table tr:last-child td{border-bottom:none}.clients-table tr.client-row:hover{background:#f3f4f6;cursor:pointer}.row-menu{position:relative;display:flex;align-items:center;justify-content:center}.row-menu-btn{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.row-menu-btn:hover{background:#e5e7eb;color:#111827}.status-badge{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500;text-align:center;margin-right:4px;margin-bottom:4px;display:inline-block}.status-entregado{background:#d1fae5;color:#065f46}.status-no-entregado{background:#fee2e2;color:#991b1b}.status-solvente{background:#dbeafe;color:#1e40af}.status-no-solvente{background:#fef3c7;color:#92400e}.status-insolvente{background:#fee2e2;color:#991b1b}.status-inscrito{background:#e0e7ff;color:#3730a3}.status-cancelado{background:#f3f4f6;color:#374151}.status-por-entregar{background:#fef3c7;color:#92400e}.status-container{display:flex;flex-direction:column;gap:4px}.status-group{display:flex;align-items:center;gap:4px}.status-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.active{opacity:1;visibility:visible}.modal{background:#fff;border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;padding:24px;transform:translateY(-20px);transition:transform .3s ease}.modal-overlay.active .modal{transform:translateY(0)}.modal-header{margin-bottom:24px}.modal-title{font-size:24px;font-weight:700;color:#111827;margin-bottom:8px}.modal-subtitle{color:#6b7280;font-size:14px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-input,.form-textarea{width:100%;padding:12px 16px;border:1px solid #D1D5DB;border-radius:12px;font-size:14px;color:#374151;transition:all .2s ease;background:#f9fafb}.form-input:focus,.form-textarea:focus{outline:none;border-color:#00984a;background:#fff;box-shadow:0 0 0 3px #00984a1a}.form-input[readonly]{background:#f9fafb;color:#6b7280;cursor:not-allowed;border-color:#e5e7eb}.form-textarea{min-height:80px;resize:vertical}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.client-detail-actions{display:flex;align-items:center;gap:16px}.btn-download-pdf{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#00984a,#00c65e);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00984a33}.btn-download-pdf:hover{background:linear-gradient(135deg,#007a3d,#00a851);box-shadow:0 4px 12px #00984a4d;transform:translateY(-1px)}.btn-download-pdf:active{transform:translateY(0);box-shadow:0 2px 6px #00984a33}.btn-download-pdf svg{flex-shrink:0}.detail-card{background:#fff;border:1px solid #E5E7EB;border-radius:16px;margin-bottom:24px;padding:24px}.detail-section-title{font-size:20px;font-weight:600;color:#111827;border-bottom:1px solid #F3F4F6;padding-bottom:12px;margin-bottom:20px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.detail-item{display:flex;flex-direction:column}.detail-label{font-size:12px;font-weight:500;color:#6b7280;margin-bottom:4px;text-transform:uppercase}.detail-input{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:8px;font-size:15px;color:#374151;transition:all .2s ease;background:#f9fafb}.detail-input:focus{outline:none;border-color:#00984a;box-shadow:0 0 0 3px #00984a1a;background:#fff}.detail-input[readonly]{background:#f9fafb;cursor:default}.detail-input:not([readonly]){background:#fff;border-color:#00984a}.tab-group{width:100%;max-width:600px}.tab-list{display:flex;background:#00984a1a;border-radius:12px;padding:4px;gap:4px}.tab-button{flex:1;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;background:transparent;color:#007a3a;position:relative;outline:none;display:flex;align-items:center;justify-content:center;gap:8px}.tab-button:hover{background:#ffffff1f;color:#007a3a;box-shadow:0 4px 12px #00984a26;transform:translateY(-1px)}.tab-button.active{background:#fff;color:#007a3a;box-shadow:0 2px 8px #0000001a}.view-home{padding:24px}.page-subtitle{font-size:16px;color:#6b7280;margin-top:8px}.home-content{margin-top:32px}.welcome-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:40px;text-align:center;color:#fff;margin-bottom:32px}.welcome-icon{margin-bottom:24px}.welcome-card h2{font-size:28px;font-weight:700;margin-bottom:12px}.welcome-card p{font-size:18px;opacity:.9}.quick-actions h3{font-size:20px;font-weight:600;color:#374151;margin-bottom:20px}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.action-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;text-align:center;transition:all .2s ease;cursor:pointer}.action-card:hover{border-color:#2563eb;box-shadow:0 4px 12px #2563eb26;transform:translateY(-2px)}.action-icon{margin-bottom:16px}.action-card h4{font-size:16px;font-weight:600;color:#374151;margin-bottom:8px}.action-card p{font-size:14px;color:#6b7280}.payment-table-container{background:#fff;border:1px solid #E5E7EB;border-radius:16px;overflow:hidden;margin-top:24px}.payment-history-table{width:100%;border-collapse:collapse}.payment-history-table th{background:#f9fafb;padding:16px 12px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;border-bottom:1px solid #E5E7EB}.payment-history-table td{padding:16px 12px;font-size:14px;color:#374151;border-bottom:1px solid #F3F4F6}.payment-history-table tr:last-child td{border-bottom:none}.payment-history-table tr:hover{background:#f9fafb}.client-registration-page{padding:24px}.stepper-container{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:24px;margin-bottom:24px}.stepper{display:flex;justify-content:space-between;align-items:flex-start;position:relative}.stepper:before{content:"";position:absolute;top:20px;left:40px;right:40px;height:2px;background:#e5e7eb;z-index:1}.stepper-item{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;flex:1;max-width:200px}.stepper-number{width:40px;height:40px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;margin-bottom:12px;transition:all .3s ease}.stepper-item.active .stepper-number{background:#00984a;color:#fff}.stepper-content{text-align:center}.stepper-title{font-size:14px;font-weight:600;color:#374151;margin-bottom:4px}.stepper-description{font-size:12px;color:#6b7280;line-height:1.4}.registration-form{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:24px}.form-container{margin-bottom:32px}.step-content{min-height:400px}.step-title{font-size:24px;font-weight:700;color:#111827;margin-bottom:24px;border-bottom:2px solid #00984A;padding-bottom:12px}.step-description{font-size:16px;color:#6b7280;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.checkbox-group{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.checkbox-label input[type=checkbox],.checkbox-label input[type=radio]{width:16px;height:16px;accent-color:#00984A}.references-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.reference-card{background:#f9fafb;border:1px solid #E5E7EB;border-radius:12px;padding:20px}.reference-title{font-size:18px;font-weight:600;color:#111827;margin-bottom:16px;text-align:center}.form-actions{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid #E5E7EB}.form-actions .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.form-actions .btn-primary:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.sidebar{width:250px;position:absolute;z-index:100;transform:translate(-100%);transition:transform .3s ease,width .3s ease-in-out}.sidebar.collapsed{width:75px}.toggle-btn{width:36px;height:36px}.sidebar.collapsed .nav-item:after,.sidebar.collapsed .nav-item:before{display:none}.categories-grid{grid-template-columns:1fr}.top-bar{padding:16px 20px}.content-area{padding:20px}.modal-grid{grid-template-columns:1fr}.clients-filters{flex-direction:column;align-items:stretch}.filters-left{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:12px}.search-field{max-width:none}.filters-right{justify-content:space-between}.tab-list{flex-direction:column;gap:2px}.tab-button{font-size:13px;padding:8px 12px}.stepper{flex-direction:column;gap:16px}.stepper:before{display:none}.stepper-item{flex-direction:row;text-align:left;max-width:none}.stepper-number{margin-right:16px;margin-bottom:0;flex-shrink:0}.stepper-content{text-align:left}.form-grid,.references-grid{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:12px}.form-actions button{width:100%}.client-detail-actions{flex-direction:column;align-items:stretch;gap:12px}.btn-download-pdf{width:100%;justify-content:center}.tab-group{max-width:none}}.document-requirements-section{margin-top:32px;padding:24px;background:#fff;border-radius:12px;border:1px solid #E5E7EB;overflow:hidden}.section-header-with-progress{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.section-header-with-progress .section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0}.progress-indicator{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:200px}.progress-text{font-size:13px;color:#6b7280;font-weight:500}.progress-bar{width:200px;height:8px;background:#e5e7eb;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#00984a,#00c65e);transition:width .3s ease;border-radius:999px}.requirements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-bottom:24px}.requirement-item{background:#f9fafb;border:2px solid #E5E7EB;border-radius:10px;padding:14px 16px;transition:all .2s ease}.requirement-item.editable:hover{background:#f3f4f6;border-color:#d1d5db}.requirement-item.completed{background:#ecfdf5;border-color:#00984a}.requirement-label{display:flex;align-items:center;gap:12px;width:100%;position:relative}.requirement-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;margin:0;padding:0;pointer-events:none}.requirement-label input[type=checkbox]:focus{outline:none;box-shadow:none}.checkbox-label-wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none;flex:1}.checkbox-custom{width:22px;height:22px;border:2px solid #D1D5DB;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;background:#fff;transition:all .2s ease;flex-shrink:0}.requirement-item.completed .checkbox-custom{background:#00984a;border-color:#00984a}.requirement-item.editable .checkbox-label-wrapper:hover .checkbox-custom{border-color:#00984a}.requirement-item.editable:not(.completed) .checkbox-label-wrapper:hover .checkbox-custom{background:#f0fdf4}.requirement-text{font-size:14px;color:#374151;line-height:1.5;flex:1}.requirement-item.completed .requirement-text{color:#065f46;font-weight:500}.observations-section{margin-top:24px;padding-top:24px;border-top:1px solid #E5E7EB}.observations-section .detail-label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#374151}.observations-section .detail-textarea{width:100%;padding:12px 16px;border:1px solid #D1D5DB;border-radius:8px;font-size:14px;font-family:inherit;color:#374151;background:#f9fafb;resize:vertical;min-height:100px;max-height:200px;transition:all .2s ease;box-sizing:border-box}.observations-section .detail-textarea:focus{outline:none;border-color:#00984a;background:#fff;box-shadow:0 0 0 3px #00984a1a}.observations-section .detail-textarea:read-only{background:#f3f4f6;cursor:not-allowed}.observations-section .detail-textarea::placeholder{color:#9ca3af}@media (max-width: 768px){.requirements-grid{grid-template-columns:1fr}.section-header-with-progress{flex-direction:column;align-items:flex-start}.progress-indicator{align-items:flex-start;width:100%}.progress-bar{width:100%}}
