.auth-container{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;background:#f9fafb;padding:1rem}.dark .auth-container{background:#111827}.auth-box{width:100%;max-width:420px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0;box-shadow:none;padding:1rem;min-height:100vh}.dark .auth-box{background:#1f2937f2}.auth-header{text-align:center;margin-bottom:2rem;padding-top:2rem}.auth-logo{width:100%;max-width:100px;height:auto;margin:0 auto 1rem;display:block}.auth-title{font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em}.dark .auth-title{color:#f9fafb}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4b5563;font-weight:500}.dark .input-label{color:#d1d5db}.input-icon{width:1rem;height:1rem;color:#6b7280}.input-field{width:100%;padding:.875rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;transition:all .2s ease;background:#fafafa;color:#1f2937}.dark .input-field{background:#374151;border-color:#4b5563;color:#f9fafb}.input-field:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.dark .input-field:focus{background:#4b5563;box-shadow:0 0 0 3px #667eea33}.error-message{color:#dc2626;font-size:.875rem;text-align:center;padding:.75rem;background-color:#fee2e2;border-radius:.5rem;margin-bottom:1rem;border:1px solid #fecaca}.success-message{color:#16a34a;font-size:.875rem;text-align:center;padding:.75rem;background-color:#dcfce7;border-radius:.5rem;margin-bottom:1rem;border:1px solid #bbf7d0}.auth-button{width:100%;padding:.875rem;background:#374151;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s ease;font-size:.9375rem}.auth-button:hover{background:#1f2937}.auth-button:disabled{background:#9ca3af;cursor:not-allowed}.remember-me{display:flex;align-items:center;margin:1rem 0;gap:.5rem}.remember-me-checkbox{width:1rem;height:1rem;border-radius:.25rem;border:1px solid #d1d5db}.remember-me-label{font-size:.875rem;color:#4b5563}.dark .remember-me-label{color:#d1d5db}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.dark .auth-footer{border-top-color:#374151}.footer-link{color:#667eea;font-size:.875rem;text-decoration:none;transition:color .2s ease}.footer-link:hover{color:#764ba2;text-decoration:underline}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;text-decoration:none;font-size:.875rem;margin-bottom:1.5rem;transition:color .2s ease}.dark .back-button{color:#9ca3af}.back-button:hover{color:#667eea}@media (min-width: 640px){.auth-box{border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;padding:2.5rem;min-height:auto;margin:2rem 0}.auth-logo{max-width:120px}.auth-header{padding-top:0}.auth-container{align-items:center}}.login-home-container{display:flex;flex-direction:column;gap:2rem}.login-home-description{text-align:center;color:#6b7280;font-size:1.125rem;margin-bottom:.5rem;line-height:1.5}.dark .login-home-description{color:#9ca3af}.login-options{display:flex;flex-direction:column;gap:1.25rem}.login-option{display:flex;align-items:center;padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;text-decoration:none;color:inherit;transition:all .3s ease;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dark .login-option{background:#1f2937cc;border-color:#374151}.login-option:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26;background:#fff}.dark .login-option:hover{background:#374151e6;box-shadow:0 8px 25px #667eea40}.login-option-icon{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;background:#e5e7eb;border-radius:.75rem;margin-right:1.25rem;flex-shrink:0}.dark .login-option-icon{background:#4b5563}.login-option-icon svg{color:#6b7280}.dark .login-option-icon svg{color:#d1d5db}.login-option-content{flex:1}.login-option-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:.5rem;letter-spacing:-.025em}.dark .login-option-title{color:#f9fafb}.login-option-description{font-size:.9375rem;color:#6b7280;line-height:1.5}.dark .login-option-description{color:#9ca3af}.login-option-arrow{width:1.5rem;height:1.5rem;color:#9ca3af;flex-shrink:0;margin-left:.75rem;transition:all .3s ease}.dark .login-option-arrow{color:#6b7280}.login-option:hover .login-option-arrow{color:#667eea;transform:translate(4px)}.login-home-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e5e7eb}.dark .login-home-footer{border-top-color:#374151}.login-home-footer p{color:#6b7280;font-size:.875rem}.dark .login-home-footer p{color:#9ca3af}@media (max-width: 640px){.login-option{padding:1.25rem}.login-option-icon{width:3rem;height:3rem;margin-right:1rem}.login-option-title{font-size:1.125rem}.login-option-description{font-size:.875rem}.login-home-description{font-size:1rem}}.sb-container{position:fixed;top:0;left:0;bottom:0;z-index:50;width:280px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid #e5e7eb;transform:translate(-100%);transition:all .3s ease;box-shadow:0 8px 25px #0000001a;display:flex;flex-direction:column;overflow:hidden}.dark .sb-container{background:#111827fa;border-right:1px solid #4b5563;box-shadow:0 8px 25px #000000b3}.sb-container.open{transform:translate(0)}.sb-overlay{position:fixed;inset:0;background-color:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;display:none}.dark .sb-overlay{background-color:#0009}.sb-container.open~.sb-overlay{display:block}.sb-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1rem;border-bottom:1px solid #e5e7eb;background:#ffffffe6;flex-shrink:0;min-height:5rem}.dark .sb-header{border-bottom:1px solid #4b5563;background:#111827f2}.sb-title{font-weight:600;font-size:1.25rem;color:#1f2937;letter-spacing:-.025em}.dark .sb-title{color:#f9fafb;text-shadow:0 1px 2px rgba(0,0,0,.3)}.sb-close-button{color:#6b7280;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .3s ease}.sb-close-button:hover{color:#414558;background-color:#667eea1a}.dark .sb-close-button{color:#9ca3af}.dark .sb-close-button:hover{color:#e5e7eb;background-color:#3b82f633}.sb-nav{flex:1;overflow-y:auto;padding:1rem 0;min-height:0;display:flex;flex-direction:column}.sb-item{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;cursor:pointer;transition:all .3s ease;border-left:3px solid transparent;margin:.25rem .5rem;border-radius:.75rem}.sb-item:hover{background-color:#667eea0d;transform:translate(2px)}.dark .sb-item:hover{background-color:#3b82f633;box-shadow:0 2px 8px #3b82f61a}.sb-item.active{background-color:#667eea1a;border-left-color:#5c5d64;color:#58595f}.dark .sb-item.active{background:linear-gradient(90deg,#3b82f640,#3b82f626);border-left-color:#60a5fa;color:#93c5fd;box-shadow:0 2px 12px #3b82f626}.sb-item-content{display:flex;align-items:center;flex:1;gap:.5rem}.sb-item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;background-color:#ef4444;color:#fff;border-radius:9999px;font-size:.75rem;font-weight:600;margin-left:auto}.dark .sb-item-badge{background-color:#dc2626;box-shadow:0 0 8px #dc262666}.sb-item-icon{color:#6b7280;margin-right:.75rem;width:20px;height:20px;flex-shrink:0;transition:all .3s ease}.sb-item:hover .sb-item-icon,.sb-item.active .sb-item-icon{color:#5b5c61}.dark .sb-item-icon{color:#d1d5db}.dark .sb-item:hover .sb-item-icon,.dark .sb-item.active .sb-item-icon{color:#60a5fa;filter:drop-shadow(0 0 4px rgba(96,165,250,.3))}.sb-item-label{font-size:.9375rem;color:#374151;font-weight:500;transition:all .3s ease}.sb-item:hover .sb-item-label,.sb-item.active .sb-item-label{color:#5b5c61}.dark .sb-item-label{color:#e5e7eb;font-weight:500}.dark .sb-item:hover .sb-item-label,.dark .sb-item.active .sb-item-label{color:#bfdbfe;font-weight:600}.sb-submenu-icon{color:#9ca3af;transition:all .3s ease;flex-shrink:0}.sb-submenu-icon.open{transform:rotate(90deg);color:#5b5c61}.dark .sb-submenu-icon{color:#6b7280}.dark .sb-submenu-icon.open{color:#93c5fd}.sb-submenu{padding-left:2.5rem;background:#f9fafbcc;border-radius:0 0 .75rem .75rem;margin:-.25rem .5rem .25rem}.dark .sb-submenu{background:#11182799;border:1px solid rgba(75,85,99,.3)}.sb-submenu .sb-item{padding:.75rem 1rem;margin:0;border-radius:.5rem}.sb-submenu .sb-item-label{font-size:.875rem}.sb-item-wrapper{position:relative}.sb-context-menu{position:absolute;left:100%;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 8px 25px #0000001a;z-index:1000;min-width:12rem;overflow:visible;margin-left:.5rem}.dark .sb-context-menu{background:#111827fa;border:1px solid #4b5563;box-shadow:0 8px 30px #000000b3,0 0 1px #60a5fa33}.sb-container.collapsed .sb-item-wrapper{position:relative}.sb-container.collapsed .sb-context-menu{position:fixed;left:5rem;top:0;margin-left:0;z-index:1000;opacity:0;transition:opacity .1s ease}.sb-container.collapsed .sb-context-menu.positioned{opacity:1}.sb-context-menu-header{display:flex;align-items:center;padding:.75rem 1rem;background:#f9fafbcc;border-bottom:1px solid #e5e7eb;font-weight:600;color:#1f2937;gap:.5rem}.dark .sb-context-menu-header{background:#1f2937e6;border-bottom:1px solid #4b5563;color:#f9fafb;font-weight:600}.sb-context-menu-items{padding:.25rem 0}.sb-context-menu-items .sb-item{margin:0;border-radius:0;border-left:none;padding:.75rem 1rem;width:100%;justify-content:flex-start}.sb-context-menu-items .sb-item .sb-item-content{justify-content:flex-start!important}.sb-context-menu-items .sb-item .sb-item-icon{margin-right:.75rem!important}.sb-context-menu-items .sb-item .sb-item-label{display:block!important}.sb-context-menu-items .sb-item:hover{background-color:#667eea0d;transform:none}.dark .sb-context-menu-items .sb-item:hover{background-color:#3b82f626}.sb-context-menu-items .sb-item.active{background-color:#667eea1a;border-left:3px solid #5c5d64}.dark .sb-context-menu-items .sb-item.active{background-color:#3b82f633;border-left:3px solid #60a5fa}.sb-context-menu-items .sb-item-content{justify-content:flex-start}.sb-context-menu-items .sb-item-icon{margin-right:.75rem}.sb-context-menu-items .sb-item-label{font-size:.875rem}.sb-context-menu-item{display:flex;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:all .3s ease;border-left:3px solid transparent;margin:0;border-radius:0;width:100%;justify-content:flex-start}.sb-context-menu-item:hover{background-color:#667eea0d}.dark .sb-context-menu-item:hover{background-color:#3b82f626}.sb-context-menu-item .sb-item-content{display:flex;align-items:center;flex:1;justify-content:flex-start}.sb-context-menu-item .sb-item-icon{margin-right:.75rem;color:#6b7280;width:20px;height:20px;flex-shrink:0}.dark .sb-context-menu-item .sb-item-icon{color:#9ca3af}.sb-context-menu-item .sb-item-label{font-size:.875rem;color:#374151;font-weight:500}.dark .sb-context-menu-item .sb-item-label{color:#d1d5db}@media (min-width: 768px){.sb-container{position:relative;height:100%;transform:translate(0);box-shadow:none;width:16rem;border-right:1px solid #e5e7eb;transition:width .3s ease;display:flex;flex-direction:column;overflow:hidden}.dark .sb-container{border-right:1px solid #374151}.sb-container.collapsed{width:5rem}.sb-overlay{display:none!important}.sb-close-button{display:none}.sb-header{background:#fffffff2;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;min-height:5rem;flex-shrink:0}.dark .sb-header{background:#1f2937f2}.sb-header-actions{display:flex;gap:.5rem}.sb-collapse-button{color:#6b7280;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .3s ease}.sb-collapse-button:hover{color:#667eea;background-color:#667eea1a}.dark .sb-collapse-button{color:#9ca3af}.dark .sb-collapse-button:hover{color:#93c5fd;background-color:#3b82f633}.sb-collapse-icon{transition:transform .3s ease}.sb-collapse-icon.collapsed{transform:rotate(180deg)}.sb-nav{flex:1;overflow-y:auto;padding:1rem 0;min-height:0;display:flex;flex-direction:column}.sb-item{margin:.25rem .75rem;transition:all .3s ease}.sb-item.collapsed{margin:.25rem .5rem;justify-content:center;padding:.875rem .5rem}.sb-item.collapsed .sb-item-content{justify-content:center}.sb-item.collapsed .sb-item-icon{margin-right:0}.sb-submenu{margin:-.25rem .75rem .25rem}.sb-container.collapsed .sb-submenu{display:none}}@media (max-width: 767px){.sb-container{width:85%;max-width:300px;height:100%;display:flex;flex-direction:column;overflow:hidden}.sb-nav{flex:1;overflow-y:auto;padding:1rem 0;min-height:0;display:flex;flex-direction:column}.sb-item{padding:1rem;margin:.25rem}.sb-item-label{font-size:1rem}.sb-submenu .sb-item{padding:.875rem 1rem}.sb-header{padding:1.25rem 1rem;flex-shrink:0;min-height:5rem}}@media (max-height: 600px){.sb-container{height:100%}.sb-nav{flex:1;overflow-y:auto}.sb-header{padding:1rem;min-height:4rem}.sb-item{padding:.75rem 1rem}.sb-submenu .sb-item{padding:.625rem 1rem}}.sb-nav::-webkit-scrollbar{width:4px}.sb-nav::-webkit-scrollbar-track{background:#f1f1f1;border-radius:2px}.dark .sb-nav::-webkit-scrollbar-track{background:#1f2937}.sb-nav::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px;-webkit-transition:all .3s ease;transition:all .3s ease}.dark .sb-nav::-webkit-scrollbar-thumb{background:#4b5563;border:1px solid #374151}.sb-nav::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.dark .sb-nav::-webkit-scrollbar-thumb:hover{background:#60a5fa;border-color:#3b82f6}.dashboard-container{width:100%;height:100%;padding:1rem;background:#f9fafb;overflow:auto}.dark .dashboard-container{background:#111827}.dashboard-header{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0;box-shadow:none}.dark .dashboard-header{background:#1f2937f2}.dashboard-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;width:100%}.dashboard-title{font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;margin:0;text-align:center}.dark .dashboard-title{color:#fff}.dashboard-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.25rem;margin-bottom:1rem}.tile-col-span-1,.tile-col-span-2,.tile-col-span-3,.tile-col-span-4{grid-column:span 1}.dashboard-tile{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;text-decoration:none;color:inherit;transition:all .3s ease;position:relative;overflow:hidden}.dark .dashboard-tile{background:#1f2937cc;border:1px solid #374151}.dashboard-tile:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26;background:#fff}.dark .dashboard-tile:hover{border-color:#60a5fa;box-shadow:0 8px 25px #3b82f640;background:#1f2937}.tile-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;letter-spacing:-.025em}.dark .tile-title{color:#fff}.tile-icon{color:#6b7280;width:18px;height:18px}.dark .tile-icon{color:#9ca3af}.tile-content{color:#6b7280;font-size:.9375rem;line-height:1.5}.dark .tile-content{color:#9ca3af}.dark .tile-content .text-gray-800{color:#f9fafb!important}.dark .tile-content .text-gray-500{color:#d1d5db!important}.stat-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1rem;margin-top:1rem}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fafafa;border-radius:.75rem;border:1px solid #e5e7eb;transition:all .2s ease}.dark .stat-item{background:#1f2937;border:1px solid #374151}.stat-item:hover{background:#fff;border-color:#667eea}.dark .stat-item:hover{background:#374151;border-color:#60a5fa}.stat-label{font-size:.875rem;color:#4b5563;font-weight:500}.dark .stat-label{color:#9ca3af}.stat-value{font-size:1rem;font-weight:600;color:#1f2937}.dark .stat-value{color:#fff}.dashboard-button{padding:.875rem;background:#374151;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s ease;font-size:.9375rem;display:inline-flex;align-items:center;gap:.5rem}.dashboard-button:hover{background:#1f2937}.dark .dashboard-button{background:#4b5563}.dark .dashboard-button:hover{background:#6b7280}.dashboard-button-secondary{padding:.75rem 1rem;background:transparent;color:#667eea;font-weight:500;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease;font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem}.dashboard-button-secondary:hover{background:#667eea;color:#fff;border-color:#667eea}.dark .dashboard-button-secondary{color:#93c5fd;border:1px solid #374151}.dark .dashboard-button-secondary:hover{background:#60a5fa;color:#fff;border-color:#60a5fa}.appointments-list{max-height:300px;overflow-y:auto}.appointment-item{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-bottom:1px solid #e5e7eb;transition:all .2s ease}.dark .appointment-item{border-bottom:1px solid #374151}.appointment-item:hover{background:#fafafa}.dark .appointment-item:hover{background:#1f2937}.appointment-info{flex:1}.appointment-client{font-weight:600;color:#1f2937;font-size:.9375rem}.dark .appointment-client{color:#fff}.appointment-address{font-size:.875rem;color:#6b7280}.dark .appointment-address{color:#9ca3af}.appointment-time{font-size:.875rem;color:#374151}.dark .appointment-time{color:#d1d5db}.progress-container{width:100%;background-color:#e5e7eb;border-radius:.5rem;height:.5rem;margin:1rem 0;overflow:hidden}.dark .progress-container{background-color:#374151}.progress-bar{height:100%;background:#667eea;border-radius:.5rem;transition:width .3s ease}.dark .progress-bar{background:#60a5fa}.birthday-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#fafafa;border-radius:.75rem;margin-bottom:.75rem;border:1px solid #e5e7eb;transition:all .2s ease}.dark .birthday-item{background:#1f2937;border:1px solid #374151}.birthday-item:hover{background:#fff;border-color:#667eea}.dark .birthday-item:hover{background:#374151;border-color:#60a5fa}.birthday-info{display:flex;align-items:center;gap:.75rem}.birthday-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:.5rem;font-weight:500}.badge-employee{background:#dbeafe;color:#1e40af}.dark .badge-employee{background:#1e3a8a;color:#93c5fd}.badge-client{background:#dcfce7;color:#166534}.dark .badge-client{background:#14532d;color:#86efac}.mobile-customize-btn{display:flex!important;align-items:center!important;gap:.5rem!important;padding:.5rem .75rem!important;font-size:.8125rem!important;background:#374151!important;color:#fff!important;border:none!important;border-radius:.5rem!important;cursor:pointer!important;transition:all .2s ease!important;white-space:nowrap!important}.mobile-customize-btn:hover{background:#1f2937!important}.dark .mobile-customize-btn{background:#4b5563!important}.dark .mobile-customize-btn:hover{background:#6b7280!important}.mobile-customize-text{display:inline!important}@media (max-width: 639px){.dashboard-container{padding:.75rem!important}.dashboard-header{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;padding:1rem!important;margin-bottom:1.5rem!important;border-radius:.75rem!important;box-shadow:0 10px 15px -3px #0000001a!important}.dashboard-title{font-size:1.25rem!important;text-align:left!important;margin-bottom:0!important;flex:1!important}.dashboard-actions{flex-direction:column!important;gap:.75rem!important;align-items:stretch!important}.dashboard-button{width:100%!important;justify-content:center!important;padding:.75rem!important;font-size:.875rem!important}.dashboard-button-secondary{width:100%!important;justify-content:center!important;padding:.625rem!important;font-size:.8125rem!important}.dashboard-grid{gap:1rem!important}.dashboard-tile{padding:1.25rem!important}.tile-title{font-size:1.125rem!important;margin-bottom:.75rem!important}.stat-grid{grid-template-columns:1fr!important;gap:.75rem!important}.appointment-item{flex-direction:column!important;align-items:flex-start!important;gap:.5rem!important}.mobile-customize-btn{padding:.25rem .5rem!important;font-size:.6875rem!important;min-width:auto!important;width:auto!important;flex-shrink:0!important;gap:.25rem!important}.mobile-customize-text{display:inline!important}}@media (max-width: 480px){.dashboard-container{padding:.5rem!important}.dashboard-header{padding:.75rem!important;margin-bottom:1rem!important;gap:.75rem!important}.dashboard-title{font-size:1.125rem!important}.dashboard-button{padding:.625rem!important;font-size:.8125rem!important}.dashboard-button-secondary{padding:.5rem!important;font-size:.75rem!important}.dashboard-grid{gap:.75rem!important}.dashboard-tile{padding:1rem!important}.tile-title{font-size:1rem!important;margin-bottom:.5rem!important}.tile-content{font-size:.8125rem!important}.stat-item{padding:.75rem!important}.stat-label{font-size:.75rem!important}.stat-value{font-size:.875rem!important}.mobile-customize-btn{padding:.25rem .5rem!important;font-size:.6875rem!important}.mobile-customize-text{display:inline!important}}@media (min-width: 640px){.dashboard-container{padding:1.5rem}.dashboard-header{flex-direction:row;justify-content:space-between;padding:1.5rem;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a}.dashboard-title{font-size:1.75rem;text-align:left}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.tile-col-span-2,.tile-col-span-3,.tile-col-span-4{grid-column:span 2}.dashboard-tile{padding:1.75rem}.stat-grid{grid-template-columns:repeat(2,1fr)}.appointment-item{flex-direction:row;align-items:center}}@media (min-width: 1024px){.dashboard-container,.dashboard-header{padding:2rem}.dashboard-title{font-size:2rem}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:2rem}.tile-col-span-3{grid-column:span 3}.tile-col-span-4{grid-column:span 4}.dashboard-tile{padding:2rem}.tile-title{font-size:1.25rem}}.dashboard-tile{animation:fadeIn .5s ease-out}.dashboard-button:focus,.dashboard-button-secondary:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.dark .dashboard-button:focus,.dark .dashboard-button-secondary:focus{box-shadow:0 0 0 3px #3b82f633}.empty-state{text-align:center;padding:2rem;color:#6b7280}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid #e2e8f0;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.dark .loading-spinner{border:2px solid #374151;border-top:2px solid #60a5fa}.dv-container{padding:1rem;background-color:#f8fafc;height:100%;overflow-x:auto;overflow-y:auto;width:100%;max-width:none;box-sizing:border-box;position:relative}.dark .dv-container{background-color:#1f2937}.dv-timeline-header{display:flex;background-color:#fff;border-bottom:2px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dark .dv-timeline-header{background-color:#111827;border-bottom-color:#374151}.dv-employee-header{width:200px;min-width:200px;padding:1rem;background-color:#f7fafc;border-right:1px solid #e2e8f0;display:flex;align-items:center;flex-shrink:0}.dark .dv-employee-header{background-color:#1f2937;border-right-color:#374151}.dv-header-title{font-weight:600;color:#4a5568}.dark .dv-header-title{color:#9ca3af}.dv-time-header{display:flex;flex:1;overflow-x:auto;width:calc(100% - 200px);position:relative}.dv-time-slot{flex:1;min-width:0;padding:.5rem .125rem;text-align:center;font-size:.65rem;font-weight:500;color:#718096;border-right:1px solid #e2e8f0;background-color:#f7fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.dark .dv-time-slot{color:#9ca3af;border-right-color:#374151;background-color:#1f2937}.dv-time-slot:last-child{border-right:none}.dv-employee-row{display:flex;min-height:80px;border-bottom:1px solid #e2e8f0;background-color:#fff;transition:all .2s}.dark .dv-employee-row{border-bottom-color:#374151;background-color:#111827}.dv-employee-row:hover{background-color:#f7fafc}.dark .dv-employee-row:hover{background-color:#1f2937}.dv-employee-row.dv-unassigned-row{background-color:#fef2f2;border:2px dashed transparent;transition:all .3s}.dv-employee-row.dv-unassigned-row:hover{background-color:#fee2e2;border-color:#ef4444}.dv-employee-row.dv-on-leave{background-color:#f7fafc;opacity:.7;pointer-events:none}.dark .dv-employee-row.dv-on-leave{background-color:#1f2937}.dv-employee-info{width:200px;min-width:200px;padding:1rem;display:flex;align-items:center;gap:.75rem;border-right:1px solid #e2e8f0;background-color:#fff;flex-shrink:0}.dark .dv-employee-info{border-right-color:#374151;background-color:#111827}.dv-employee-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:.875rem;flex-shrink:0}.dv-unassigned-avatar{background-color:#9ca3af}.dv-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.dv-avatar-initials{font-weight:600}.dv-employee-details{flex:1;min-width:0}.dv-employee-name{font-weight:600;color:#2d3748;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .dv-employee-name{color:#f3f4f6}.dv-unassigned-name{color:#dc2626}.dv-admin-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#3b82f6}.dv-admin-icon{width:14px;height:14px}.dv-leave-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#6b7280}.dv-leave-icon{width:14px;height:14px}.dv-employee-role{margin-bottom:.25rem}.dv-role-badge{display:inline-block;padding:.125rem .5rem;border-radius:.75rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;box-shadow:0 1px 2px #0000001a;border:1px solid rgba(255,255,255,.2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dark .dv-role-badge{border-color:#0003;box-shadow:0 1px 2px #0000004d}.dark .dv-employee-name{color:#f9fafb}.dark .dv-header-title,.dark .dv-time-slot{color:#d1d5db}.dark .dv-timeline-header{border-bottom-color:#4b5563}.dark .dv-employee-header,.dark .dv-employee-info,.dark .dv-time-slot{border-right-color:#4b5563}.dark .dv-employee-row{border-bottom-color:#4b5563}.dark .dv-container{background-color:#111827}.dark .dv-timeline-header,.dark .dv-employee-header,.dark .dv-time-slot,.dark .dv-employee-row,.dark .dv-employee-info{background-color:#1f2937}.dark .dv-employee-row:hover{background-color:#374151}.dark .dv-leave-indicator{color:#9ca3af}.dark .dv-admin-indicator{color:#60a5fa}.dark .dv-employee-row.dv-unassigned-row{background-color:#7f1d1d;border-color:#991b1b}.dark .dv-employee-row.dv-unassigned-row:hover{background-color:#991b1b;border-color:#dc2626}.dark .dv-unassigned-avatar{background-color:#6b7280}.dark .dv-unassigned-name{color:#f87171}.dark .dv-employee-row.dv-dragging-over{background-color:#1e3a8a!important;border-color:#3b82f6!important}.dark .dv-employee-row.dv-unassigned-row.dv-dragging-over{background-color:#991b1b!important;border-color:#ef4444!important}.dark .dv-employee-row.dv-on-leave.dv-dragging-over{background-color:#92400e!important;border-color:#f59e0b!important}.dv-timeline-container{flex:1;position:relative;min-height:80px;width:calc(100% - 200px)}.dv-timeline-background{display:flex;height:100%;position:absolute;inset:0}.dv-timeline-slot{flex:1;min-width:0;box-sizing:border-box;border-right:1px solid #f1f5f9}.dark .dv-timeline-slot{border-right-color:#374151}.dv-timeline-slot:last-child{border-right:none}.dv-timeline-slot:nth-child(2n){background-color:#f8fafc}.dark .dv-timeline-slot:nth-child(2n){background-color:#1f2937}.dv-appointments-timeline{position:absolute;inset:0;pointer-events:none;z-index:1}.dv-timeline-appointment{position:absolute;top:50%;transform:translateY(-50%);height:70%;background-color:#fff;border:2px solid #e2e8f0;border-radius:.375rem;padding:.5rem;cursor:grab;pointer-events:auto!important;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s,border-color .2s;overflow:hidden;z-index:1;box-sizing:border-box;-webkit-user-select:none;user-select:none}.dark .dv-timeline-appointment{background-color:#1f2937;border-color:#4b5563;box-shadow:0 1px 3px #0000004d}.dv-timeline-appointment:active{cursor:grabbing}.dv-timeline-appointment:hover{box-shadow:0 4px 6px #0000001a;z-index:2;border-color:#3b82f6}.dark .dv-timeline-appointment:hover{box-shadow:0 4px 6px #0006}.dv-appointment-content{height:100%;display:flex;flex-direction:column;gap:.25rem;pointer-events:none}.dv-appointment-content>*{pointer-events:none}.dv-appointment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.dv-appointment-client{display:flex;align-items:center;gap:.25rem;flex:1;min-width:0}.dv-client-icon{flex-shrink:0}.dv-client-name{font-size:.75rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.dv-appointment-time{display:flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.25rem;background-color:#f3f4f6;border-radius:.25rem;color:#1f2937}.dark .dv-appointment-time{background-color:#1f2937e6;color:#d1d5db}.dv-time-icon{flex-shrink:0}.dv-notes-indicator{position:absolute;top:4px;right:4px;font-size:.75rem}.dv-completed-indicator{display:flex;align-items:center;justify-content:center;background:#ffffffe6;border-radius:50%;width:1rem;height:1rem;flex-shrink:0}.dv-status-indicator{font-size:.65rem;font-weight:600;text-align:center;padding:.125rem .25rem;border-radius:.25rem;background:#fff3;margin-top:.125rem}.dv-timeline-appointment.dv-in-progress{background-color:#fef3c7;border-color:#f59e0b}.dark .dv-timeline-appointment.dv-in-progress{background-color:#78350f;border-color:#f59e0b}.dv-timeline-appointment.dv-completed{background-color:#d1fae5;border-color:#10b981}.dark .dv-timeline-appointment.dv-completed{background-color:#064e3b;border-color:#10b981}.dv-timeline-appointment.dv-assigned{background-color:#e0f2fe;border-color:#3b82f6}.dark .dv-timeline-appointment.dv-assigned{background-color:#1e3a8a;border-color:#3b82f6}.dv-timeline-appointment.dv-unassigned{background-color:#fee2e2;border-color:#ef4444}.dark .dv-timeline-appointment.dv-unassigned{background-color:#7f1d1d;border-color:#ef4444}.dv-timeline-appointment.dv-reserved{background-color:#fde68a;border-color:#f59e0b}.dark .dv-timeline-appointment.dv-reserved{background-color:#92400e;border-color:#f59e0b}.dv-leave-block{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#f7fafc;color:#9ca3af;font-size:.875rem;font-style:italic}.dark .dv-leave-block{background-color:#1f2937;color:#6b7280}.dv-leave-text{padding:.5rem 1rem;background-color:#fff;border:1px dashed #d1d5db;border-radius:.375rem}.dark .dv-leave-text{background-color:#111827;border-color:#4b5563}.dv-timeline-appointment.dragging{opacity:.5;box-shadow:0 8px 16px #0003}.dv-timeline-container{position:relative;transition:background-color .2s}.dv-employee-row.dv-dragging-over{background-color:#dbeafe!important;border:2px solid #3b82f6!important;box-shadow:inset 0 0 0 2px #3b82f6}.dv-employee-row.dv-unassigned-row.dv-dragging-over{background-color:#fecaca!important;border-color:#ef4444!important;box-shadow:inset 0 0 0 2px #ef4444}.dv-employee-row.dv-on-leave.dv-dragging-over{background-color:#fef3c7!important;border-color:#f59e0b!important;box-shadow:inset 0 0 0 2px #f59e0b;opacity:1;pointer-events:auto}.dv-timeline-appointment[data-rbd-drag-handle-draggable-id]{transition:none!important}.dv-timeline-appointment[style*=transform]{box-shadow:0 8px 16px #00000026!important;opacity:.9}.dv-drag-overlay{box-shadow:0 12px 30px #0006!important;transform:rotate(2deg) scale(1.05)!important;border:2px solid #3b82f6!important;z-index:9999!important;cursor:grabbing!important;transition:none!important;pointer-events:none!important}.dv-timeline-appointment.dragging{opacity:.3!important;transform:scale(.95)!important;transition:all .2s ease!important}.dv-employee-row.dv-dragging-over:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(59,130,246,.1) 25%,transparent 25%,transparent 50%,rgba(59,130,246,.1) 50%,rgba(59,130,246,.1) 75%,transparent 75%,transparent);background-size:20px 20px;animation:stripe-animation 1s linear infinite;z-index:1;pointer-events:none}.dv-employee-row.dv-unassigned-row.dv-dragging-over:before{background:linear-gradient(45deg,rgba(239,68,68,.1) 25%,transparent 25%,transparent 50%,rgba(239,68,68,.1) 50%,rgba(239,68,68,.1) 75%,transparent 75%,transparent);background-size:20px 20px}.dv-add-button{position:fixed;bottom:1rem;right:1rem;background-color:#4299e1;color:#fff;border-radius:9999px;padding:.75rem;box-shadow:0 2px 4px #0000001a;transition:background-color .2s;z-index:100;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.dark .dv-add-button{background-color:#3b82f6;box-shadow:0 2px 4px #0000004d}.dv-add-button:hover{background-color:#3182ce;transform:scale(1.05)}.dark .dv-add-button:hover{background-color:#2563eb}@media (max-width: 768px){.dv-container{padding:.5rem}.dv-employee-header,.dv-employee-info{width:120px;padding:.5rem}.dv-employee-avatar{width:36px;height:36px;font-size:.75rem}.dv-time-slot{min-width:40px;padding:.5rem .25rem;font-size:.7rem}.dv-timeline-slot{min-width:40px}.dv-appointment-time,.dv-appointment-details{font-size:.7rem}}@media (max-width: 480px){.dv-container{padding:.25rem}.dv-employee-header,.dv-employee-info{width:100px;padding:.25rem}.dv-employee-avatar{width:32px;height:32px;font-size:.7rem}.dv-time-slot{min-width:30px;padding:.25rem .125rem;font-size:.65rem}.dv-timeline-slot{min-width:30px}.dv-appointment-time,.dv-appointment-details{font-size:.65rem}.dv-timeline-appointment{padding:.25rem}}.dv-container::-webkit-scrollbar{width:8px;height:8px}.dv-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dark .dv-container::-webkit-scrollbar-track{background:#374151}.dv-container::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.dark .dv-container::-webkit-scrollbar-thumb{background:#6b7280}.dv-container::-webkit-scrollbar-thumb:hover{background:#a0aec0}.dark .dv-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.month-view-mobile{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:auto;overflow-y:visible;background-color:#fff}.dark .month-view-mobile{background-color:#111827;color:#f9fafb}.month-header-minimalist{background:#fff;border-bottom:1px solid var(--secondary-200);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;padding:16px}.dark .month-header-minimalist{background:#1f2937;border-bottom:1px solid #374151}.month-header-minimalist h2{font-weight:500;letter-spacing:-.5px;color:var(--secondary-800);margin:0;flex:1;text-align:center}.dark .month-header-minimalist h2{color:#f9fafb}.search-header-button{background:var(--gradient-primary);color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);cursor:pointer}.search-header-button:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.nav-button-minimalist{background:var(--secondary-100);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);color:var(--secondary-700)}.dark .nav-button-minimalist{background:#374151;color:#d1d5db}.nav-button-minimalist:hover{background:var(--primary-100);color:var(--primary-600);transform:scale(1.05)}.dark .nav-button-minimalist:hover{background:#4b5563;color:#60a5fa}.calendar-grid{background:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-md)}.dark .calendar-grid{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d}.calendar-day{transition:all var(--transition-fast);border-radius:var(--radius-lg);position:relative;min-height:44px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--secondary-200)}.dark .calendar-day{background:#374151;border:1px solid #4b5563;color:#f9fafb}.calendar-day:hover{transform:scale(1.05);border-color:var(--primary-300)}.dark .calendar-day:hover{border-color:#60a5fa}.calendar-day.selected{background:var(--primary-600);color:#fff;box-shadow:var(--shadow-md);border-color:var(--primary-600)}.calendar-day.today{background:var(--primary-50);color:var(--primary-700);font-weight:600;border-color:var(--primary-300)}.calendar-day.other-month{color:var(--secondary-400);opacity:.6}.dark .calendar-day.other-month{color:#6b7280;opacity:.5}.calendar-day.holiday{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:#bae6fd;position:relative}.dark .calendar-day.holiday{background:linear-gradient(135deg,#0c4a6e,#075985);border-color:#0369a1}.calendar-day.holiday:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-color:#7dd3fc}.dark .calendar-day.holiday:hover{background:linear-gradient(135deg,#075985,#0369a1);border-color:#0284c7}.calendar-day.holiday.selected{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border-color:#0ea5e9}.calendar-day.holiday.today{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-color:#38bdf8;color:#0369a1;font-weight:600}.holiday-indicator{position:absolute;bottom:2px;left:2px;color:#f59e0b;opacity:.9}.dark .holiday-indicator{color:#fbbf24}.calendar-day.holiday.selected .holiday-indicator{color:#fff;opacity:1}.calendar-day.holiday.today .holiday-indicator{color:#d97706;opacity:1}.dark .calendar-day.holiday.today .holiday-indicator{color:#f59e0b}.appointment-indicators{position:absolute;top:2px;right:2px;display:flex;gap:2px;align-items:center}.appointment-indicator{width:4px;height:4px;border-radius:50%;background:var(--primary-500);flex-shrink:0}.appointment-indicator.selected{background:#fff}.appointment-indicator-1,.appointment-indicator-2,.appointment-indicator-3{margin-right:0}.appointment-indicator-more{font-size:8px;font-weight:600;color:var(--primary-500);background:#fff;border-radius:4px;padding:1px 2px;line-height:1;margin-left:1px}.appointment-indicator-more.selected{color:#fff;background:var(--primary-600)}.day-appointments{background:var(--secondary-50);border-radius:0 0 var(--radius-xl) var(--radius-xl);flex:1;overflow-y:visible}.dark .day-appointments{background:#111827}.day-header{background:#fff;border-bottom:1px solid var(--secondary-200);padding:16px}.dark .day-header{background:#1f2937;border-bottom:1px solid #374151}.day-header h3{font-weight:500;color:var(--secondary-800);margin-bottom:4px}.dark .day-header h3{color:#f9fafb}.day-header p{color:var(--secondary-600);font-size:14px}.dark .day-header p{color:#d1d5db}.mobile-appointment-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);margin-bottom:12px;overflow:hidden;position:relative;color:#fff}.mobile-appointment-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.client-color-indicator{position:absolute;top:0;left:0;width:6px;height:100%;background-color:var(--secondary-500);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.status-libre{border-left-color:var(--error);background:linear-gradient(135deg,#ef44441a,#ef444433)}.status-reserve{border-left-color:var(--warning);background:linear-gradient(135deg,#f59e0b1a,#f59e0b33)}.status-assigne{border-left-color:var(--success);background:linear-gradient(135deg,#10b9811a,#10b98133)}.status-in_progress{border-left-color:var(--info);background:linear-gradient(135deg,#3b82f61a,#3b82f633)}.status-completed{border-left-color:var(--secondary-500);background:linear-gradient(135deg,#64748b1a,#64748b33)}.appointment-content{padding:16px}.status-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-md);font-size:12px;font-weight:500;margin-bottom:8px;background:#fff3;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 1px 3px #0003}.status-badge.libre{background:#ef44444d}.status-badge.reserve{background:#f59e0b4d}.status-badge.assigne{background:#10b9814d}.status-badge.in_progress{background:#3b82f64d}.status-badge.completed{background:#64748b4d}.client-name{font-size:16px;font-weight:700;color:#fff;margin-bottom:8px;line-height:1.3;text-shadow:0 1px 1px rgba(0,0,0,.4)}.detail-item{display:flex;align-items:center;font-size:14px;color:#fffffff2;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3)}.detail-item svg{margin-right:8px;opacity:.95;filter:none}.empty-state{text-align:center;padding:48px 24px;color:var(--secondary-500)}.dark .empty-state{color:#6b7280}.empty-state svg{margin-bottom:16px;opacity:.5}.dark .empty-state svg{opacity:.4}.empty-state p{font-size:16px;margin:0}.search-container{position:relative;margin-bottom:16px}.search-input{width:100%;padding:12px 16px 12px 44px;border:1px solid var(--secondary-300);border-radius:var(--radius-xl);background:#fff;font-size:16px;transition:all var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--secondary-400)}.nav-button{background:#fff3;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-button:hover{background:#ffffff4d;transform:scale(1.05)}.search-floating-button{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--gradient-primary);color:#fff;border:none;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);z-index:100;cursor:pointer}.search-floating-button:hover{transform:scale(1.1);box-shadow:var(--shadow-xl)}.search-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity var(--transition-normal)}.search-overlay.active{display:flex;opacity:1}.search-overlay-content{background:#fff;border-radius:var(--radius-xl);width:90%;max-width:400px;max-height:80vh;overflow:hidden;box-shadow:var(--shadow-xl);transform:translateY(20px);transition:transform var(--transition-normal)}.dark .search-overlay-content{background:#1f2937;box-shadow:0 25px 50px -12px #00000080}.search-overlay.active .search-overlay-content{transform:translateY(0)}.search-overlay-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--secondary-200)}.dark .search-overlay-header{border-bottom:1px solid #374151}.search-overlay-header h3{margin:0;color:var(--secondary-800)}.dark .search-overlay-header h3{color:#f9fafb}.close-button{background:var(--secondary-100);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--secondary-600);cursor:pointer;transition:all var(--transition-fast)}.close-button:hover{background:var(--secondary-200);color:var(--secondary-700)}.search-container-overlay{position:relative;padding:20px}.search-input-overlay{width:100%;padding:16px 20px 16px 48px;border:2px solid var(--secondary-300);border-radius:var(--radius-lg);background:#fff;font-size:16px;transition:all var(--transition-fast)}.dark .search-input-overlay{background:#374151;border:2px solid #4b5563;color:#f9fafb}.search-input-overlay:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.dark .search-input-overlay:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.search-icon-overlay{position:absolute;left:32px;top:50%;transform:translateY(-50%);color:var(--secondary-400)}.dark .search-icon-overlay{color:#9ca3af}.search-results{padding:0 20px 20px;max-height:300px;overflow-y:auto}.search-results-content{background:var(--secondary-50);border-radius:var(--radius-md);padding:16px}.dark .search-results-content{background:#374151}@media (max-width: 480px){.calendar-day{min-height:40px;font-size:14px}.mobile-appointment-card{margin-bottom:8px}.appointment-content{padding:12px}.client-name{font-size:15px}.detail-item{font-size:13px}}@keyframes daySelect{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.calendar-day.selected{animation:daySelect .3s ease}.day-appointments{scroll-behavior:smooth}.loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.wvm-appointment{position:relative;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;margin-bottom:8px}.wvm-appointment:hover{box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.wvm-appointment-title{font-weight:600;font-size:14px;padding:8px;display:flex;align-items:center;justify-content:space-between;background:#ffffff1a}.wvm-appointment-time{font-size:12px;padding:6px 8px;background:#0000000d}.dark .wvm-appointment-time{background:#ffffff0d}.wvm-appointment-employee{font-size:11px;padding:4px 8px;opacity:.8;border-top:1px solid rgba(0,0,0,.1)}.wvm-appointment-status{font-size:11px;padding:4px 8px;border-top:1px solid rgba(0,0,0,.2);text-transform:uppercase;letter-spacing:.5px}.wvm-appointment-libre{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fbbf24}.wvm-appointment-reserve{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#9a3412;border:1px solid #f97316}.wvm-appointment-assigne{background:linear-gradient(135deg,#dbeafe,#93c5fd);color:#1e40af;border:1px solid #3b82f6}.wvm-appointment-in-progress{background:linear-gradient(135deg,#bbf7d0,#86efac);color:#166534;border:1px solid #22c55e}.wvm-appointment-completed{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#374151;border:1px solid #9ca3af;opacity:.7}.dark .wvm-appointment-libre{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fef2f2;border:1px solid #b91c1c;border-width:3px;box-shadow:0 2px 12px #dc262680}.dark .wvm-appointment-reserve{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#1f2937;border:1px solid #f59e0b;border-width:3px;box-shadow:0 2px 12px #f59e0b80}.dark .wvm-appointment-assigne{background:linear-gradient(135deg,#1e3a8a,#1e40af);color:#dbeafe;border:1px solid #2563eb;border-width:3px;box-shadow:0 2px 12px #2563eb80}.dark .wvm-appointment-in-progress{background:linear-gradient(135deg,#eab308,#facc15);color:#1f2937;border:1px solid #eab308;border-width:3px;box-shadow:0 2px 12px #eab30880}.dark .wvm-appointment-completed{background:linear-gradient(135deg,#6b7280cc,#6b728099);color:#d1d5db;border:1px solid #6b7280;border-width:3px;box-shadow:0 2px 12px #6b728080}.notes-indicator{padding:4px 8px}.notes-indicator span{font-size:11px;padding:2px 6px;border-radius:12px;font-weight:500}.employee-management-container{width:100%!important;height:100%!important;padding:1rem!important;background:#f9fafb!important;overflow:auto!important}.employee-management-header{display:flex!important;flex-direction:column!important;gap:1rem!important;align-items:center!important;margin-bottom:2rem!important;padding:1rem!important;background:#fffffff2!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border-radius:0!important;box-shadow:none!important}.employee-management-title{font-size:1.5rem!important;font-weight:600!important;color:#1f2937!important;letter-spacing:-.025em!important;margin:0!important;text-align:center!important}.employee-actions-content{display:flex!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;gap:1rem!important;width:100%!important}.employee-management-button{padding:.875rem!important;background:#374151!important;color:#fff!important;font-weight:500!important;border:none!important;border-radius:.5rem!important;cursor:pointer!important;transition:background-color .2s ease!important;font-size:.9375rem!important;display:inline-flex!important;align-items:center!important;gap:.5rem!important}.employee-management-button:hover{background:#1f2937!important}.employee-management-button-secondary{padding:.75rem 1rem!important;background:transparent!important;color:#667eea!important;font-weight:500!important;border:1px solid #e5e7eb!important;border-radius:.5rem!important;cursor:pointer!important;transition:all .2s ease!important;font-size:.875rem!important;display:inline-flex!important;align-items:center!important;gap:.5rem!important}.employee-management-button-secondary:hover{background:#667eea!important;color:#fff!important;border-color:#667eea!important}.checkbox-container{display:flex!important;align-items:center!important;gap:.5rem!important;cursor:pointer!important}.checkbox-input{width:1rem!important;height:1rem!important;border-radius:.25rem!important;border:1px solid #d1d5db!important;background:#fff!important;cursor:pointer!important}.checkbox-input:checked{background:#667eea!important;border-color:#667eea!important}.checkbox-label{font-size:.875rem!important;color:#4b5563!important;font-weight:500!important}.employee-grid{display:grid!important;grid-template-columns:repeat(1,1fr)!important;gap:1.25rem!important}.employee-card{background:#fffc!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;padding:1.75rem!important;border:1px solid #e5e7eb!important;border-radius:1rem!important;transition:all .3s ease!important;position:relative!important;overflow:hidden!important}.employee-card:hover{border-color:#667eea!important;transform:translateY(-2px)!important;box-shadow:0 8px 25px #667eea26!important;background:#fff!important}.employee-card-archived{opacity:.6}.status-indicator{position:absolute;top:1rem;right:1rem;width:1rem;height:1rem;border-radius:50%;border:2px solid white;box-shadow:0 0 0 2px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.status-online{background:#10b981;box-shadow:0 0 0 2px #10b981,0 0 0 4px #10b9814d,0 0 10px #10b98180}.status-offline{background:#ef4444;box-shadow:0 0 0 2px #ef4444,0 0 0 4px #ef44444d,0 0 10px #ef444480}.employee-card-content{display:flex;align-items:flex-start;gap:1rem}.employee-photo{width:4rem;height:4rem;border-radius:50%;overflow:hidden;flex-shrink:0;background:#e5e7eb;display:flex;align-items:center;justify-content:center}.employee-photo img{width:100%;height:100%;object-fit:cover}.employee-name{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:.25rem;letter-spacing:-.025em}.employee-email{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-details{font-size:.875rem;color:#4b5563;line-height:1.4}.employee-details strong{color:#374151}.employee-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.stat-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280}.stat-item svg{width:1rem;height:1rem;color:#9ca3af}.employee-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.action-button{padding:.5rem;border-radius:.5rem;border:none;cursor:pointer;transition:all .2s ease;color:inherit;background:transparent}.action-button:hover{background:#667eea1a;color:#667eea}.action-button-group{position:relative}.action-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.5rem;padding:.5rem .75rem;background:#374151;color:#fff;font-size:.75rem;border-radius:.375rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.action-button-group:hover .action-tooltip{opacity:1}.employee-modal{position:fixed!important;inset:0!important;background:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:50!important;padding:1rem!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important}.modal-content{background:#fffffff2!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;padding:2rem!important;border-radius:1rem!important;width:90vw!important;max-width:1200px!important;min-width:300px!important;max-height:90vh!important;min-height:400px!important;overflow-y:auto!important;box-shadow:0 25px 50px -12px #00000040!important;border:1px solid rgba(255,255,255,.2)!important;animation:modalSlideIn .3s ease-out!important;margin:2rem!important}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-title{font-size:1.25rem!important;font-weight:600!important;color:#1f2937!important;margin-bottom:1.5rem!important;letter-spacing:-.025em!important}.form-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:1.5rem!important;min-height:400px!important;grid-auto-rows:-webkit-min-content!important;grid-auto-rows:min-content!important}.form-grid-full{grid-column:1 / -1}.form-section{background:#ffffff80;padding:1.5rem;border-radius:.75rem;border:1px solid rgba(229,231,235,.5);margin-bottom:1.5rem}.form-section-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.form-label{display:block;font-size:.875rem;color:#4b5563;font-weight:500;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{width:100%;padding:.875rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;transition:all .2s ease;background:#fafafa}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.form-textarea{resize:vertical;min-height:6rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(229,231,235,.5)}.modal-actions button{padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;transition:all .2s ease;font-size:.875rem}.modal-actions button:first-child{background:transparent!important;color:#6b7280!important;border:1px solid #d1d5db!important}.modal-actions button:first-child:hover{background:#f3f4f6!important;color:#374151!important}.modal-actions button:last-child{background:#374151!important;color:#fff!important;border:none!important}.modal-actions button:last-child:hover{background:#1f2937!important}.employee-form-container{width:100%!important}.color-picker-container{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.color-preview{width:2rem;height:2rem;border-radius:.375rem;border:2px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.color-preview:hover{border-color:#667eea;transform:scale(1.05)}.modal-cancel-button{padding:.75rem 1.5rem;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:.5rem;font-weight:500;transition:all .2s ease;font-size:.875rem;cursor:pointer}.modal-cancel-button:hover{background:#f3f4f6;color:#374151}.modal-save-button{padding:.75rem 1.5rem;background:#374151;color:#fff;border:none;border-radius:.5rem;font-weight:500;transition:all .2s ease;font-size:.875rem;cursor:pointer}.modal-save-button:hover{background:#1f2937}.personal-info-section{background:#ffffff80;padding:1.5rem;border-radius:.75rem;border:1px solid rgba(229,231,235,.5);margin-bottom:1.5rem}.photo-section{background:#ffffff80;padding:1.5rem;border-radius:.75rem;border:1px solid rgba(229,231,235,.5);margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center}.photo-container{display:flex;flex-direction:column;align-items:center;gap:1rem}.photo-preview{width:120px;height:120px;border-radius:50%;overflow:hidden;background:#f3f4f6;display:flex;align-items:center;justify-content:center;border:3px solid #e5e7eb;transition:all .3s ease}.photo-preview:hover{border-color:#667eea;transform:scale(1.05)}.photo-image{width:100%;height:100%;object-fit:cover}.photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#9ca3af}.photo-icon{color:#d1d5db}.photo-text{font-size:.875rem;font-weight:500}.photo-input{display:none}.photo-button{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem;text-align:center}.photo-button:hover{background:#5a67d8;transform:translateY(-1px)}.color-picker-text{font-size:.75rem;color:#6b7280;margin-left:.5rem}.color-picker-popup{position:absolute;z-index:100;margin-top:.5rem;box-shadow:0 10px 25px #00000026;border-radius:.5rem}.form-help{font-size:.75rem;color:#6b7280;margin-top:.25rem;line-height:1.4}.form-label{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:#4b5563;font-weight:500;margin-bottom:.5rem}.form-label:after{content:"*";color:#ef4444;margin-left:.125rem;opacity:0}.form-label[for*="*"]:after{opacity:1}.form-input:required,.form-select:required{border-left:3px solid #667eea}.form-input:focus:required,.form-select:focus:required{border-left-color:#4f46e5}@media (max-width: 1024px){.modal-content{width:95vw!important;max-width:95vw!important;margin:1rem!important;padding:1.5rem!important;max-height:90vh!important}.form-grid{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important;min-height:auto!important}.form-group{margin-bottom:.75rem!important}.form-input,.form-select,.form-textarea{padding:.75rem!important;font-size:.875rem!important}.modal-title{font-size:1.125rem!important;margin-bottom:1rem!important}.photo-preview{width:100px!important;height:100px!important}}@media (max-width: 768px){.modal-content{width:98vw!important;max-width:98vw!important;margin:.5rem!important;padding:1rem!important;max-height:95vh!important;border-radius:.75rem!important}.form-grid{grid-template-columns:1fr!important;gap:.75rem!important;min-height:auto!important}.form-group{margin-bottom:.5rem!important}.form-input,.form-select,.form-textarea{padding:.625rem!important;font-size:.875rem!important}.form-label{font-size:.8125rem!important;margin-bottom:.375rem!important}.modal-title{font-size:1rem!important;margin-bottom:.75rem!important}.modal-actions{flex-direction:column!important;gap:.5rem!important;margin-top:1.5rem!important;padding-top:1rem!important}.modal-actions button{width:100%!important;padding:.875rem!important;font-size:.875rem!important}.photo-preview{width:80px!important;height:80px!important}.color-preview{width:1.5rem!important;height:1.5rem!important}}@media (max-width: 480px){.modal-content{width:100vw!important;max-width:100vw!important;margin:0!important;padding:.75rem!important;max-height:100vh!important;border-radius:0!important}.form-grid{gap:.5rem!important}.form-input,.form-select,.form-textarea{padding:.5rem!important;font-size:.8125rem!important}.form-label{font-size:.75rem!important}.modal-title{font-size:.9375rem!important;margin-bottom:.5rem!important;text-align:center!important}.modal-actions{margin-top:1rem!important;padding-top:.75rem!important}.modal-actions button{padding:.75rem!important}.photo-preview{width:60px!important;height:60px!important}.employee-management-header{padding:.75rem!important}.employee-management-title{font-size:1.125rem!important}.employee-management-button{padding:.625rem!important;font-size:.8125rem!important}}@media (max-width: 639px){.employee-management-container{padding:.75rem!important}.employee-management-header{flex-direction:column!important;gap:.75rem!important;padding:1rem!important;margin-bottom:1.5rem!important;border-radius:.75rem!important;box-shadow:0 10px 15px -3px #0000001a!important}.employee-management-title{font-size:1.25rem!important;text-align:center!important;margin-bottom:.5rem!important}.employee-actions-content{flex-direction:column!important;gap:.75rem!important;align-items:stretch!important}.employee-management-button{width:100%!important;justify-content:center!important;padding:.75rem!important;font-size:.875rem!important}.checkbox-container{justify-content:center!important;margin-top:.5rem!important}.employee-grid{gap:1rem!important}.employee-card{padding:1.25rem!important}}@media (min-width: 640px){.employee-management-container{padding:1.5rem!important}.employee-management-header{flex-direction:row!important;justify-content:space-between!important;padding:1.5rem!important;border-radius:1rem!important;box-shadow:0 20px 25px -5px #0000001a!important}.employee-management-title{font-size:1.75rem!important;text-align:left!important}.employee-grid{grid-template-columns:repeat(2,1fr)!important;gap:1.5rem!important}.employee-card{padding:1.75rem!important}}@media (min-width: 1024px){.employee-management-container,.employee-management-header{padding:2rem!important}.employee-management-title{font-size:2rem!important}.employee-grid{grid-template-columns:repeat(3,1fr)!important;gap:2rem!important}.employee-card{padding:2rem!important}.modal-content{max-width:1200px!important;padding:2.5rem!important;width:85vw!important}.form-grid{grid-template-columns:repeat(4,1fr)!important;gap:1.5rem!important}}.employee-card{animation:fadeIn .5s ease-out}.empty-state{text-align:center;padding:3rem;color:#6b7280;grid-column:1 / -1}.empty-state p{font-size:.9375rem;line-height:1.5}.employee-management-button:focus,.employee-management-button-secondary:focus,.action-button:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.general-settings-container{width:100%;height:100%;padding:1rem;background:#f9fafb;overflow:auto}.dark .general-settings-container{background:#111827}.general-settings-header{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0;box-shadow:none}.dark .general-settings-header{background:#1f2937f2}.general-settings-title{font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;margin:0;text-align:center}.dark .general-settings-title{color:#fff}.settings-actions-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;width:100%}.general-settings-form{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;transition:all .3s ease}.dark .general-settings-form{background:#1f2937cc;border:1px solid #374151}.general-settings-form:hover{border-color:#667eea;background:#fff}.dark .general-settings-form:hover{border-color:#60a5fa;background:#1f2937}.settings-group{margin-bottom:2rem}.settings-group-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.dark .settings-group-title{color:#fff}.settings-field{margin-bottom:1.5rem}.settings-label{display:block;font-size:.875rem;color:#4b5563;font-weight:500;margin-bottom:.5rem}.dark .settings-label{color:#d1d5db}.settings-input,.settings-select,.settings-textarea{width:100%;padding:.875rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;transition:all .2s ease;background:#fafafa;color:#1f2937}.dark .settings-input,.dark .settings-select,.dark .settings-textarea{background:#374151;border:1px solid #4b5563;color:#fff}.settings-input:focus,.settings-select:focus,.settings-textarea:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.dark .settings-input:focus,.dark .settings-select:focus,.dark .settings-textarea:focus{border-color:#60a5fa;background:#4b5563;box-shadow:0 0 0 3px #60a5fa33}.settings-section{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-bottom:1.5rem;transition:all .3s ease}.dark .settings-section{background:#1f2937cc;border:1px solid #374151}.settings-section:hover{border-color:#667eea;background:#fff}.dark .settings-section:hover{border-color:#60a5fa;background:#1f2937}.settings-section-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.dark .settings-section-title{color:#fff}.settings-info{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);padding:1rem;border-radius:.5rem;margin-top:1rem}.dark .settings-info{background:#1d4ed833;border:1px solid rgba(59,130,246,.3)}.settings-info-title{font-size:.875rem;font-weight:600;color:#1d4ed8;margin-bottom:.5rem}.dark .settings-info-title{color:#93c5fd}.settings-info-list{font-size:.75rem;color:#374151;line-height:1.4}.dark .settings-info-list{color:#d1d5db}.settings-info-list li{margin-bottom:.25rem}.settings-button{padding:.875rem 1.5rem;background:#374151;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s ease;font-size:.9375rem;display:inline-flex;align-items:center;gap:.5rem}.settings-button:hover{background:#1f2937}.dark .settings-button{background:#4b5563}.dark .settings-button:hover{background:#6b7280}.settings-button:disabled{opacity:.6;cursor:not-allowed}.settings-success{position:fixed;top:1rem;right:1rem;background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#065f46;padding:1rem;border-radius:.5rem;display:flex;align-items:center;gap:.5rem;z-index:50;animation:slideInRight .3s ease-out}.dark .settings-success{background:#05966933;border:1px solid rgba(16,185,129,.3);color:#86efac}@media (max-width: 639px){.general-settings-container{padding:.75rem!important}.general-settings-header{flex-direction:column!important;gap:.75rem!important;padding:1rem!important;margin-bottom:1.5rem!important;border-radius:.75rem!important;box-shadow:0 10px 15px -3px #0000001a!important}.general-settings-title{font-size:1.25rem!important;text-align:center!important;margin-bottom:.5rem!important}.settings-actions-content{flex-direction:column!important;gap:.75rem!important;align-items:stretch!important}.settings-button{width:100%!important;justify-content:center!important;padding:.75rem!important;font-size:.875rem!important}.general-settings-form{padding:1.25rem!important}.settings-section{padding:1.25rem!important;margin-bottom:1rem!important}.settings-group{margin-bottom:1.5rem!important}.settings-group-title{font-size:1rem!important;margin-bottom:.75rem!important}.settings-field{margin-bottom:1rem!important}.settings-input,.settings-select,.settings-textarea{padding:.75rem!important;font-size:.875rem!important}.settings-label{font-size:.8125rem!important;margin-bottom:.375rem!important}.settings-info{padding:.75rem!important}.settings-info-title{font-size:.8125rem!important}.settings-info-list{font-size:.6875rem!important}.settings-success{padding:.75rem!important;right:.5rem!important;left:.5rem!important;top:.5rem!important}}@media (min-width: 640px){.general-settings-container{padding:1.5rem}.general-settings-header{flex-direction:row;justify-content:space-between;padding:1.5rem;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a}.general-settings-title{font-size:1.75rem;text-align:left}.general-settings-form,.settings-section{padding:1.75rem}}@media (min-width: 1024px){.general-settings-container,.general-settings-header{padding:2rem}.general-settings-title{font-size:2rem}.general-settings-form,.settings-section{padding:2rem}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.settings-grid .settings-field{margin-bottom:0}}@media (max-width: 480px){.general-settings-container{padding:.5rem!important}.general-settings-header{padding:.75rem!important;margin-bottom:1rem!important}.general-settings-title{font-size:1.125rem!important}.settings-button{padding:.625rem!important;font-size:.8125rem!important}.general-settings-form{padding:1rem!important}.settings-section{padding:1rem!important;margin-bottom:.75rem!important}.settings-group{margin-bottom:1rem!important}.settings-group-title{font-size:.9375rem!important;margin-bottom:.5rem!important}.settings-field{margin-bottom:.75rem!important}.settings-input,.settings-select,.settings-textarea{padding:.625rem!important;font-size:.8125rem!important}.settings-label{font-size:.75rem!important;margin-bottom:.25rem!important}.settings-info{padding:.5rem!important}.settings-info-title{font-size:.75rem!important}.settings-info-list{font-size:.625rem!important}.settings-success{padding:.5rem!important;right:.25rem!important;left:.25rem!important;top:.25rem!important;font-size:.8125rem!important}.section-icon{width:1rem!important;height:1rem!important}.settings-help,.settings-error{font-size:.6875rem!important}}.general-settings-form{animation:fadeIn .5s ease-out}.settings-button:focus,.settings-input:focus,.settings-select:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.dark .settings-button:focus,.dark .settings-input:focus,.dark .settings-select:focus{box-shadow:0 0 0 3px #60a5fa33}.settings-empty-state{text-align:center;padding:3rem;color:#6b7280}.dark .settings-empty-state{color:#9ca3af}.settings-empty-state p{font-size:.9375rem;line-height:1.5}.section-icon{width:1.25rem;height:1.25rem;color:#667eea}.dark .section-icon{color:#60a5fa}.settings-help{font-size:.75rem;color:#6b7280;margin-top:.25rem;line-height:1.4}.dark .settings-help{color:#9ca3af}.settings-error{font-size:.75rem;color:#ef4444;margin-top:.25rem}.dark .settings-error{color:#f87171}.settings-input.error{border-color:#ef4444}.dark .settings-input.error{border-color:#dc2626}.settings-input.success{border-color:#10b981}.dark .settings-input.success{border-color:#059669}.settings-textarea::-webkit-scrollbar{width:6px}.settings-textarea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.dark .settings-textarea::-webkit-scrollbar-track{background:#4b5563}.settings-textarea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.dark .settings-textarea::-webkit-scrollbar-thumb{background:#6b7280}.settings-textarea::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.dark .settings-textarea::-webkit-scrollbar-thumb:hover{background:#9ca3af}.settings-tabs-container{background:#fff;border-bottom:1px solid #e5e7eb;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;position:-webkit-sticky;position:sticky;top:0;z-index:10;box-shadow:0 2px 4px #0000000d;margin-bottom:1rem}.dark .settings-tabs-container{background:#1f2937;border-bottom:1px solid #374151;box-shadow:0 2px 4px #0003}.settings-tabs-container::-webkit-scrollbar{height:3px}.settings-tabs-container::-webkit-scrollbar-track{background:transparent}.dark .settings-tabs-container::-webkit-scrollbar-track{background:transparent}.settings-tabs-container::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.dark .settings-tabs-container::-webkit-scrollbar-thumb{background:#6b7280}.settings-tabs-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dark .settings-tabs-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (min-width: 1280px){.settings-tabs-container::-webkit-scrollbar{height:0px}}.settings-tabs-nav{display:flex;gap:0;padding:0;min-width:100%;width:-webkit-max-content;width:max-content}.settings-tab-button{padding:.875rem .75rem;border:none;border-bottom:3px solid transparent;font-weight:500;font-size:.875rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;color:#6b7280;background:transparent;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex:1;min-width:-webkit-fit-content;min-width:fit-content;position:relative}.dark .settings-tab-button{color:#9ca3af}.settings-tab-button:hover{color:#374151;background:#3b82f60d}.dark .settings-tab-button:hover{color:#d1d5db;background:#60a5fa1a}.settings-tab-button.active{border-bottom-color:#3b82f6;color:#3b82f6;background:#3b82f60d;font-weight:600}.dark .settings-tab-button.active{border-bottom-color:#60a5fa;color:#60a5fa;background:#60a5fa1a}.settings-tab-button.active:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,#3b82f6,transparent)}.dark .settings-tab-button.active:before{background:linear-gradient(90deg,transparent,#60a5fa,transparent)}.settings-tab-icon{width:1.25rem;height:1.25rem;flex-shrink:0;transition:transform .2s ease}.settings-tab-button.active .settings-tab-icon{transform:scale(1.1)}.settings-tab-label{font-size:.6875rem;line-height:1.2;text-align:center}@media (max-width: 479px){.settings-tabs-container{margin-bottom:.75rem}.settings-tabs-nav{justify-content:space-between;width:100%}.settings-tab-button{padding:.625rem .25rem;flex:1;min-width:auto;gap:.25rem}.settings-tab-icon{width:1.375rem;height:1.375rem}.settings-tab-label{font-size:.625rem;max-width:100%;overflow:hidden;text-overflow:ellipsis}}@media (min-width: 480px) and (max-width: 639px){.settings-tabs-container{margin-bottom:.875rem}.settings-tabs-nav{gap:0;justify-content:space-between;width:100%}.settings-tab-button{padding:.75rem .375rem;flex:1;gap:.3rem}.settings-tab-icon{width:1.5rem;height:1.5rem}.settings-tab-label{font-size:.65rem}}@media (min-width: 640px) and (max-width: 767px){.settings-tabs-container{margin-bottom:1rem}.settings-tabs-nav{gap:0;justify-content:space-around}.settings-tab-button{padding:.875rem .625rem;flex:1;gap:.375rem}.settings-tab-icon{width:1.375rem;height:1.375rem}.settings-tab-label{font-size:.7rem}}@media (min-width: 768px) and (max-width: 1023px){.settings-tabs-container{margin-bottom:1.25rem}.settings-tabs-nav{gap:.25rem;padding:0 .5rem;justify-content:space-around}.settings-tab-button{padding:.875rem;flex:1;gap:.375rem}.settings-tab-icon{width:1.25rem;height:1.25rem}.settings-tab-label{font-size:.75rem}}@media (min-width: 1024px) and (max-width: 1279px){.settings-tabs-container{margin-bottom:1.5rem}.settings-tabs-nav{gap:.5rem;padding:0 1rem;justify-content:flex-start}.settings-tab-button{padding:.875rem 1rem;flex-direction:row;gap:.5rem;flex:0 0 auto}.settings-tab-icon{width:1.125rem;height:1.125rem}.settings-tab-label{font-size:.875rem}}@media (min-width: 1280px){.settings-tabs-container{margin-bottom:1.5rem}.settings-tabs-nav{gap:.75rem;padding:0 1.5rem;justify-content:flex-start}.settings-tab-button{padding:1rem 1.5rem;flex-direction:row;gap:.625rem;flex:0 0 auto}.settings-tab-icon{width:1.25rem;height:1.25rem}.settings-tab-label{font-size:.9375rem}}.er-container{width:100%;height:100%;padding:1rem;background:#f9fafb;overflow:auto}.dark .er-container{background:#111827}.er-header{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0;box-shadow:none}.er-title{font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;margin:0;text-align:center}.dark .er-title{color:#f9fafb}.er-actions-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;width:100%}.er-alert{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-bottom:1.5rem;transition:all .3s ease}.er-alert:hover{border-color:#667eea;background:#fff}.er-alert-destructive{background:#fef2f2;border-color:#fca5a5}.dark .er-alert{background:#1f2937cc;border-color:#374151;color:#f9fafb}.dark .er-alert:hover{background:#374151cc;border-color:#667eea}.dark .er-alert-destructive{background:#7f1d1dcc;border-color:#f87171;color:#fecaca}.er-select{width:100%;padding:.875rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;transition:all .2s ease;background:#fafafa;color:#1f2937}.er-select:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.dark .er-select{background:#374151;border-color:#4b5563;color:#f9fafb}.dark .er-select:focus{background:#4b5563;border-color:#667eea}.er-month-nav{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-bottom:1.5rem;transition:all .3s ease;display:flex;align-items:center;justify-content:space-between}.er-month-nav:hover{border-color:#667eea;background:#fff}.dark .er-month-nav{background:#1f2937cc;border-color:#374151}.dark .er-month-nav:hover{background:#374151cc;border-color:#667eea}.er-month-button{padding:.875rem;background:#374151;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s ease;font-size:.9375rem;display:inline-flex;align-items:center;gap:.5rem}.er-month-button:hover{background:#1f2937}.er-month-label{font-size:1.125rem;font-weight:600;color:#1f2937}.dark .er-month-label{color:#f9fafb}.er-stats-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.25rem;margin-bottom:2rem}@media (min-width: 768px){.er-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.er-stats-grid{grid-template-columns:repeat(4,1fr)}}.er-stat-card{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;transition:all .3s ease;position:relative;overflow:hidden}.er-stat-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26;background:#fff}.dark .er-stat-card{background:#1f2937cc;border-color:#374151}.dark .er-stat-card:hover{background:#374151cc;border-color:#667eea;box-shadow:0 8px 25px #667eea26}.er-stat-title{font-size:.875rem;color:#4b5563;font-weight:500;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.er-stat-icon{width:1rem;height:1rem;color:#9ca3af}.er-stat-value{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.er-stat-subtitle{font-size:.75rem;color:#6b7280}.dark .er-stat-title{color:#d1d5db}.dark .er-stat-icon{color:#9ca3af}.dark .er-stat-value{color:#f9fafb}.dark .er-stat-subtitle{color:#9ca3af}.er-progress-bar{width:100%;height:4px;background-color:#e5e7eb;border-radius:2px;overflow:hidden;margin-top:.5rem}.er-progress-fill{height:100%;background:#667eea;border-radius:2px;transition:width .5s ease}.er-chart-container{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-top:1.5rem;transition:all .3s ease}.er-chart-container:hover{border-color:#667eea;background:#fff}.er-chart-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.dark .er-chart-container{background:#1f2937cc;border-color:#374151}.dark .er-chart-container:hover{background:#374151cc;border-color:#667eea}.dark .er-chart-title{color:#f9fafb}.er-table-container{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-top:1.5rem;overflow-x:auto;transition:all .3s ease}.er-table-container:hover{border-color:#667eea;background:#fff}.er-table{min-width:100%;border-collapse:collapse;font-size:.875rem}.er-table th{padding:.75rem;background:#f3f4f6;color:#374151;text-align:left;font-weight:500;border-bottom:1px solid #e5e7eb}.er-table td{padding:.75rem;border-bottom:1px solid #f3f4f6}.er-table tr:hover{background:#f9fafb}.dark .er-table-container{background:#1f2937cc;border-color:#374151}.dark .er-table-container:hover{background:#374151cc;border-color:#667eea}.dark .er-table th{background:#374151;color:#f9fafb;border-bottom:1px solid #4b5563}.dark .er-table td{border-bottom:1px solid #374151;color:#f9fafb}.dark .er-table tr:hover{background:#374151}.er-loading{display:flex;justify-content:center;align-items:center;height:400px}.er-loading-spinner{animation:spin 1s linear infinite;border-radius:9999px;height:4rem;width:4rem;border:3px solid #E5E7EB;border-top-color:#667eea}.er-error{color:#ef4444;background-color:#fef2f2;padding:1rem;border-radius:.5rem;border-left:4px solid #EF4444;margin:1rem 0}.er-comparison{display:flex;align-items:center;font-size:.875rem;margin-top:.25rem}.er-comparison-positive{color:#10b981}.er-comparison-negative{color:#ef4444}.er-kpi-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;margin-bottom:2rem}@media (min-width: 768px){.er-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.er-kpi-grid{grid-template-columns:repeat(3,1fr)}}.er-export-buttons{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.75rem;border:1px solid #e5e7eb;border-radius:1rem;margin-bottom:1.5rem;transition:all .3s ease;display:flex;gap:1rem;flex-wrap:wrap}.er-export-buttons:hover{border-color:#667eea;background:#fff}.dark .er-export-buttons{background:#1f2937cc;border-color:#374151}.dark .er-export-buttons:hover{background:#374151cc;border-color:#667eea}.er-export-button{padding:.875rem;background:#374151;color:#fff;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s ease;font-size:.9375rem;display:inline-flex;align-items:center;gap:.5rem}.er-export-button:hover{background:#1f2937}.er-export-button-loading{opacity:.7;cursor:not-allowed}.er-export-button-loading:after{content:"";width:16px;height:16px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.er-export-button-success{background:#10b981!important}.er-export-button-error{background:#ef4444!important}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.er-fade-in{animation:fadeIn .5s ease-out}@media (max-width: 639px){.er-container{padding:.75rem!important}.er-header{flex-direction:column!important;gap:.75rem!important;padding:1rem!important;margin-bottom:1.5rem!important;border-radius:.75rem!important;box-shadow:0 10px 15px -3px #0000001a!important}.er-title{font-size:1.25rem!important;text-align:center!important;margin-bottom:.5rem!important}.er-actions-content{flex-direction:column!important;gap:.75rem!important;align-items:stretch!important}.er-month-button,.er-export-button{width:100%!important;justify-content:center!important;padding:.75rem!important;font-size:.875rem!important}.er-month-nav{flex-direction:column!important;gap:1rem!important;padding:1.25rem!important}.er-export-buttons{flex-direction:column!important;gap:.75rem!important;padding:1.25rem!important}.er-stat-card,.er-chart-container,.er-table-container{padding:1.25rem!important}.er-stats-grid,.er-kpi-grid{gap:1rem!important}.er-stat-value{font-size:1.25rem!important}.er-stat-title,.er-table{font-size:.8125rem!important}.er-table th,.er-table td{padding:.5rem!important}}@media (min-width: 640px){.er-container{padding:1.5rem}.er-header{flex-direction:row;justify-content:space-between;padding:1.5rem;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a}.er-title{font-size:1.75rem;text-align:left}.er-stat-card,.er-chart-container,.er-table-container{padding:1.75rem}}@media (min-width: 1024px){.er-container,.er-header{padding:2rem}.er-title{font-size:2rem}.er-stat-card,.er-chart-container,.er-table-container{padding:2rem}}@media (max-width: 480px){.er-container{padding:.5rem!important}.er-header{padding:.75rem!important;margin-bottom:1rem!important}.er-title{font-size:1.125rem!important}.er-month-button,.er-export-button{padding:.625rem!important;font-size:.8125rem!important}.er-month-nav,.er-export-buttons,.er-stat-card,.er-chart-container,.er-table-container{padding:1rem!important}.er-stats-grid,.er-kpi-grid{gap:.75rem!important}.er-stat-value{font-size:1.125rem!important}.er-stat-title,.er-table{font-size:.75rem!important}.er-table th,.er-table td{padding:.375rem!important}.er-alert{padding:1rem!important}.er-month-label{font-size:1rem!important}}.er-stat-card{animation:fadeIn .5s ease-out}.er-empty-state{text-align:center;padding:3rem;color:#6b7280}.er-empty-state p{font-size:.9375rem;line-height:1.5}.dark .er-empty-state,.dark .er-empty-state p{color:#9ca3af}.er-month-button:focus,.er-export-button:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.roles-management-container{min-height:100vh;background:#f9fafb;padding:1rem}.roles-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;padding:1.5rem;margin-bottom:1.5rem}.roles-header-content{display:flex;align-items:center;justify-content:space-between}.roles-header-icon{width:4rem;height:4rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;margin-right:1rem}.roles-header-text h1{font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;margin-bottom:.25rem}.roles-header-text p{color:#6b7280;font-size:.9375rem}.roles-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 1024px){.roles-grid{grid-template-columns:1fr 3fr}}.roles-sidebar{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;padding:1.5rem}.roles-sidebar h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.roles-list{display:flex;flex-direction:column;gap:.75rem}.role-card{background:#fffc;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;cursor:pointer;transition:all .3s ease;position:relative}.role-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26;background:#fff}.role-card.selected{background:#667eea1a;border-color:#667eea;box-shadow:0 8px 25px #667eea26}.role-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.role-card-icon{width:2rem;height:2rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;margin-right:.75rem;flex-shrink:0}.role-card-icon.admin{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.role-card-icon.readonly{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff}.role-card-icon.custom{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.role-card-title{font-weight:600;color:#1f2937;font-size:.9375rem}.role-card-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.role-card.selected .role-card-badge{background:#fff3;color:#fff}.role-card:not(.selected) .role-card-badge{background:#6b72801a;color:#6b7280}.role-card-description{color:#6b7280;font-size:.875rem;line-height:1.4}.role-card-edit{position:absolute;top:.75rem;right:.75rem;padding:.5rem;border-radius:.5rem;transition:all .3s ease;color:#6b7280}.role-card-edit:hover{background:#667eea1a;color:#667eea}.roles-main{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px #0000000d;padding:1.5rem}.roles-main-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.roles-main-title h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.roles-main-title .role-name{font-size:1.125rem;color:#667eea;font-weight:600}.roles-main-actions{display:flex;gap:.5rem}.roles-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;color:#374151;font-size:.875rem;font-weight:500;transition:all .3s ease;cursor:pointer}.roles-button:hover{border-color:#667eea;color:#667eea;background:#667eea0d}.roles-button.primary{background:#667eea;border-color:#667eea;color:#fff}.roles-button.primary:hover{background:#5a67d8;border-color:#5a67d8}.roles-button:disabled{opacity:.5;cursor:not-allowed}.roles-button:disabled:hover{background:#fff;border-color:#e5e7eb;color:#374151}.permissions-table{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.permissions-header{background:#f8fafc;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.permissions-header h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.permissions-header p{color:#6b7280;font-size:.875rem}.permissions-table-content{overflow-x:auto}.permissions-table table{width:100%;border-collapse:collapse}.permissions-table th{padding:1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;background:#f9fafb}.permissions-table td{padding:1rem;border-bottom:1px solid #f3f4f6}.permissions-resource{min-width:200px}.permissions-resource-name{font-weight:600;color:#1f2937;font-size:.875rem}.permissions-resource-desc{color:#6b7280;font-size:.75rem;margin-top:.25rem}.permission-toggle{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;transition:all .3s ease;cursor:pointer}.permission-toggle:hover:not(:disabled){border-color:#667eea;background:#667eea0d}.permission-toggle.active{background:#10b9811a;border-color:#10b981;color:#10b981}.permission-toggle:disabled{background:#f9fafb;border-color:#e5e7eb;color:#d1d5db;cursor:not-allowed}.permissions-footer{background:#f8fafc;padding:1rem 1.5rem;border-top:1px solid #e5e7eb}.permissions-legend{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 768px){.permissions-legend{grid-template-columns:1fr 1fr}}.permissions-legend h4{font-size:.875rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280}.legend-color{width:.75rem;height:.75rem;border-radius:2px;border:1px solid}.legend-color.active{background:#10b9811a;border-color:#10b981}.legend-color.inactive{background:#fff;border-color:#e5e7eb}.legend-color.disabled{background:#f9fafb;border-color:#e5e7eb}.no-role-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;height:16rem;text-align:center;color:#6b7280}.no-role-icon{width:4rem;height:4rem;background:#f3f4f6;border-radius:1rem;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:#9ca3af}.no-role-title{font-size:1.125rem;font-weight:600;color:#374151;margin-bottom:.5rem}.no-role-description{font-size:.875rem;color:#6b7280}.roles-alert{padding:1rem;border-radius:.75rem;margin-bottom:1rem;font-size:.875rem}.roles-alert.error{background:#dc26261a;border:1px solid rgba(220,38,38,.2);color:#dc2626}.roles-alert.success{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#059669}@media (max-width: 768px){.roles-management-container{padding:.5rem}.roles-header-content,.roles-main-header{flex-direction:column;align-items:flex-start;gap:1rem}.roles-main-actions{width:100%;justify-content:space-between}.permissions-table{font-size:.75rem}.permissions-table th,.permissions-table td{padding:.5rem}}.permissions-group-controls{background:#f8fafc;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.group-header{background:#f9fafb}.group-header button{transition:all .3s ease}.group-header button:hover{background:#f3f4f6!important}.permissions-table-content tr{transition:all .3s ease}.permissions-table-content tr:not(.group-header){animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.client-day-view-mobile{height:100%;overflow:auto;background-color:var(--bg-color)}.client-day-view-mobile-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:1rem;border-bottom:1px solid var(--border-color);background-color:var(--bg-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.client-day-view-mobile-header h1{font-size:1.25rem;font-weight:700;margin:0;color:var(--text-primary)}.client-day-view-mobile-header p{font-size:.875rem;margin:.25rem 0 0;color:var(--text-secondary)}.client-day-view-mobile-add-button{position:fixed;bottom:2rem;right:1rem;z-index:30;width:3.5rem;height:3.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:all .2s ease-in-out}.client-day-view-mobile-add-button:hover{transform:scale(1.05);box-shadow:0 6px 16px #0003}.client-day-view-mobile-section{margin-bottom:1rem;border-radius:.75rem;border:1px solid var(--border-color);background-color:var(--bg-card);overflow:hidden}.client-day-view-mobile-section-header{padding:.75rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background-color .2s ease}.client-day-view-mobile-section-header:hover{background-color:var(--bg-hover)}.client-day-view-mobile-section-header-content{display:flex;align-items:center;gap:.75rem}.client-day-view-mobile-avatar{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;flex-shrink:0}.client-day-view-mobile-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.client-day-view-mobile-section-info h3{font-size:.875rem;font-weight:600;margin:0;color:var(--text-primary)}.client-day-view-mobile-section-info p{font-size:.75rem;margin:.125rem 0 0;color:var(--text-secondary)}.client-day-view-mobile-section-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:1rem;background-color:var(--bg-muted);color:var(--text-muted);font-weight:500}.client-day-view-mobile-section-content{padding:0 .75rem .75rem}.client-day-view-mobile-appointment-card{padding:.75rem;border-radius:.5rem;border:1px solid var(--border-color);background-color:var(--bg-card);margin-bottom:.5rem;cursor:pointer;transition:all .2s ease}.client-day-view-mobile-appointment-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.client-day-view-mobile-appointment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.client-day-view-mobile-appointment-time{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--text-primary)}.client-day-view-mobile-appointment-actions{display:flex;gap:.25rem}.client-day-view-mobile-action-button{padding:.25rem;border-radius:.25rem;border:none;background:transparent;cursor:pointer;transition:background-color .2s ease;color:var(--text-muted)}.client-day-view-mobile-action-button:hover{background-color:var(--bg-hover);color:var(--text-primary)}.client-day-view-mobile-appointment-details{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.client-day-view-mobile-appointment-employee{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-muted)}.client-day-view-mobile-employee-color{width:1rem;height:1rem;border-radius:50%;flex-shrink:0}.client-day-view-mobile-notes-indicator{font-size:.75rem;color:var(--primary-color);margin-top:.5rem}.client-day-view-mobile-leave-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--warning-color)}.client-day-view-mobile-leave-block{padding:2rem 1rem;text-align:center;background-color:var(--warning-bg);color:var(--warning-color);border-radius:.5rem;margin:.5rem 0}.client-day-view-mobile-action-menu{position:fixed;inset:0;z-index:50}.client-day-view-mobile-action-menu-content{position:absolute;min-width:8rem;border-radius:.5rem;border:1px solid var(--border-color);background-color:var(--bg-card);box-shadow:0 10px 25px #00000026;padding:.5rem}.client-day-view-mobile-action-item{width:100%;text-align:left;padding:.5rem .75rem;border-radius:.25rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;display:flex;align-items:center;gap:.5rem;transition:background-color .2s ease;color:var(--text-primary)}.client-day-view-mobile-action-item:hover{background-color:var(--bg-hover)}.client-day-view-mobile-action-item.destructive{color:var(--danger-color)}.client-day-view-mobile-action-divider{border-top:1px solid var(--border-color);margin:.25rem 0;padding-top:.25rem}.client-day-view-mobile-action-subtitle{padding:.25rem .75rem;font-size:.75rem;color:var(--text-muted)}.client-day-view-mobile-empty-state{text-align:center;padding:2rem 1rem;color:var(--text-muted)}@media (max-width: 640px){.client-day-view-mobile-header{padding:.75rem}.client-day-view-mobile-header h1{font-size:1.125rem}.client-day-view-mobile-section-header,.client-day-view-mobile-appointment-card{padding:.75rem}.client-day-view-mobile-add-button{bottom:1.5rem;right:1rem;width:3rem;height:3rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.client-day-view-mobile-appointment-card{animation:fadeIn .2s ease-out}.client-day-view-mobile-section-content{animation:fadeIn .3s ease-out}:root{--bg-color: #ffffff;--bg-card: #ffffff;--bg-hover: #f8f9fa;--bg-muted: #f1f3f4;--border-color: #e5e7eb;--text-primary: #1f2937;--text-secondary: #6b7280;--text-muted: #9ca3af;--primary-color: #3b82f6;--warning-color: #f59e0b;--warning-bg: #fef3c7;--danger-color: #ef4444}.dark{--bg-color: #111827;--bg-card: #1f2937;--bg-hover: #374151;--bg-muted: #374151;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-muted: #9ca3af;--primary-color: #60a5fa;--warning-color: #fbbf24;--warning-bg: #78350f;--danger-color: #f87171}:root{--cwv-bg-primary: #ffffff;--cwv-bg-secondary: #f9fafb;--cwv-bg-hover: #f3f4f6;--cwv-border-color: #e5e7eb;--cwv-text-primary: #1f2937;--cwv-text-secondary: #6b7280;--cwv-text-muted: #9ca3af;--cwv-unassigned-bg: #fee2e2;--cwv-unassigned-border: #ef4444;--cwv-unassigned-text: #991b1b;--cwv-assigned-bg: #dbeafe;--cwv-assigned-border: #3b82f6;--cwv-assigned-text: #1e40af;--cwv-reserved-bg: #fef3c7;--cwv-reserved-border: #f59e0b;--cwv-reserved-text: #92400e;--cwv-completed-bg: #d1fae5;--cwv-completed-border: #10b981;--cwv-completed-text: #065f46;--cwv-in-progress-bg: #fde68a;--cwv-in-progress-border: #f59e0b;--cwv-in-progress-text: #78350f;--cwv-primary: #3b82f6;--cwv-primary-hover: #2563eb;--cwv-danger: #ef4444;--cwv-success: #10b981;--cwv-warning: #f59e0b;--cwv-copy-bg: #10b981;--cwv-copy-border: #059669;--cwv-copy-badge-bg: #059669;--cwv-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--cwv-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--cwv-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--cwv-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1)}.dark{--cwv-bg-primary: #111827;--cwv-bg-secondary: #1f2937;--cwv-bg-hover: #374151;--cwv-border-color: #374151;--cwv-text-primary: #f9fafb;--cwv-text-secondary: #d1d5db;--cwv-text-muted: #9ca3af}.cwv-container{display:flex;flex-direction:column;height:100%;background-color:var(--cwv-bg-primary);overflow:hidden;position:relative}.cwv-day-view-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:var(--cwv-shadow-md)}.cwv-back-button{display:flex;align-items:center;gap:.5rem;background-color:#fff3;color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:600;font-size:.875rem;transition:all .2s ease}.cwv-back-button:hover{background-color:#ffffff4d;transform:translate(-4px)}.cwv-back-button:active{transform:translate(-2px)}.cwv-day-view-title{flex:1;font-size:1.25rem;font-weight:700;text-align:center;text-transform:capitalize}.cwv-day-view-content{flex:1;overflow:auto}.cwv-clickable{cursor:pointer;transition:all .2s ease}.cwv-clickable:hover{transform:translateY(-2px);box-shadow:var(--cwv-shadow-md)}.cwv-week-stats{display:flex;gap:1.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:.5rem;margin:1rem;box-shadow:var(--cwv-shadow-md);flex-wrap:wrap}.cwv-stat-item{display:flex;flex-direction:column;gap:.25rem;min-width:120px}.cwv-stat-label{font-size:.75rem;opacity:.9;font-weight:500}.cwv-stat-value{font-size:1.5rem;font-weight:700}.cwv-stat-assigned{color:#d1fae5}.cwv-stat-unassigned{color:#fecaca}.cwv-week-header{display:grid;grid-template-columns:200px repeat(7,1fr);background-color:var(--cwv-bg-secondary);border-bottom:2px solid var(--cwv-border-color);position:-webkit-sticky;position:sticky;top:0;z-index:10}.cwv-employee-header{padding:1rem;display:flex;align-items:center;justify-content:center;background-color:var(--cwv-bg-secondary);border-right:1px solid var(--cwv-border-color);font-weight:600;color:var(--cwv-text-secondary)}.cwv-header-title{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.cwv-day-header{padding:.75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--cwv-border-color);background-color:var(--cwv-bg-secondary);transition:all .2s ease}.cwv-day-header:hover{background-color:var(--cwv-bg-hover)}.cwv-day-header.cwv-today{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.cwv-day-name{font-size:.75rem;text-transform:uppercase;font-weight:600;letter-spacing:.05em}.cwv-day-number{font-size:1.5rem;font-weight:700;line-height:1;margin-top:.25rem}.cwv-day-month{font-size:.75rem;opacity:.8;margin-top:.25rem}.cwv-timeline-header{display:grid;grid-template-columns:200px repeat(7,1fr);background-color:var(--cwv-bg-secondary);border-bottom:1px solid var(--cwv-border-color);position:-webkit-sticky;position:sticky;top:60px;z-index:9}.cwv-time-header{display:flex;border-right:1px solid var(--cwv-border-color);background-color:var(--cwv-bg-secondary)}.cwv-time-slot{flex:1;padding:.5rem .25rem;font-size:.625rem;text-align:center;color:var(--cwv-text-muted);border-right:1px solid var(--cwv-border-color);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwv-time-slot:last-child{border-right:none}.cwv-content{flex:1;overflow-y:auto;overflow-x:hidden}.cwv-employee-row{display:grid;grid-template-columns:200px repeat(7,1fr);min-height:80px;border-bottom:1px solid var(--cwv-border-color);transition:background-color .2s ease}.cwv-employee-row:hover{background-color:var(--cwv-bg-hover)}.cwv-unassigned-row{background-color:#fef2f2;border-bottom:2px solid var(--cwv-unassigned-border)}.dark .cwv-unassigned-row{background-color:#7f1d1d}.cwv-employee-info{padding:1rem;display:flex;align-items:center;gap:.75rem;border-right:1px solid var(--cwv-border-color);background-color:var(--cwv-bg-secondary);position:-webkit-sticky;position:sticky;left:0;z-index:5}.cwv-employee-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0;overflow:hidden;box-shadow:var(--cwv-shadow-sm)}.cwv-unassigned-avatar{background-color:var(--cwv-unassigned-bg);color:var(--cwv-unassigned-text);border:2px solid var(--cwv-unassigned-border)}.cwv-avatar-image{width:100%;height:100%;object-fit:cover}.cwv-avatar-initials{-webkit-user-select:none;user-select:none}.cwv-employee-details{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.cwv-employee-name{font-weight:600;font-size:.875rem;color:var(--cwv-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwv-unassigned-name{color:var(--cwv-unassigned-text);font-weight:700}.cwv-employee-count{font-size:.75rem;color:var(--cwv-text-secondary)}.cwv-timeline-container{position:relative;border-right:1px solid var(--cwv-border-color);min-height:80px;transition:background-color .2s ease}.cwv-timeline-container.cwv-today{background-color:#667eea0d}.cwv-timeline-container:hover{background-color:#3b82f60d}.cwv-dragging-over{background-color:#3b82f626!important;border:2px dashed var(--cwv-primary)!important}.cwv-timeline-background{position:absolute;inset:0;display:flex;z-index:1}.cwv-timeline-background .cwv-timeline-slot{flex:1;border-right:1px dashed rgba(0,0,0,.05);cursor:pointer}.cwv-timeline-background .cwv-timeline-slot:hover{background-color:#3b82f61a}.cwv-appointments-timeline{position:relative;height:100%;z-index:2;pointer-events:none}.cwv-appointments-timeline>*{pointer-events:auto}.cwv-timeline-appointment{position:absolute;padding:.5rem;border-radius:.375rem;box-shadow:var(--cwv-shadow-sm);transition:all .2s ease;cursor:pointer;overflow:hidden;min-width:60px;border-left:4px solid}.cwv-timeline-appointment:hover{box-shadow:var(--cwv-shadow-md);transform:translateY(-50%) scale(1.02);z-index:10!important}.cwv-timeline-appointment.cwv-draggable{cursor:grab}.cwv-timeline-appointment.cwv-draggable:active{cursor:grabbing}.cwv-timeline-appointment.cwv-dragging{opacity:.5;cursor:grabbing}.cwv-drag-overlay{box-shadow:var(--cwv-shadow-xl);transform:rotate(-2deg)}.cwv-timeline-appointment.cwv-unassigned{background-color:var(--cwv-unassigned-bg);border-left-color:var(--cwv-unassigned-border);color:var(--cwv-unassigned-text)}.cwv-timeline-appointment.cwv-assigned{background-color:var(--cwv-assigned-bg);border-left-color:var(--cwv-assigned-border);color:var(--cwv-assigned-text)}.cwv-timeline-appointment.cwv-reserved{background-color:var(--cwv-reserved-bg);border-left-color:var(--cwv-reserved-border);color:var(--cwv-reserved-text)}.cwv-timeline-appointment.cwv-completed{background-color:var(--cwv-completed-bg);border-left-color:var(--cwv-completed-border);color:var(--cwv-completed-text);opacity:.7}.cwv-timeline-appointment.cwv-in-progress{background-color:var(--cwv-in-progress-bg);border-left-color:var(--cwv-in-progress-border);color:var(--cwv-in-progress-text)}.cwv-appointment-content{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;line-height:1.2}.cwv-appointment-time{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwv-appointment-details{font-size:.7rem;opacity:.9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwv-notes-indicator{position:absolute;top:2px;right:2px;font-size:.75rem;opacity:.8}.cwv-recurring-indicator{position:absolute;top:2px;right:18px;font-size:.75rem;opacity:.8}.cwv-leave-block{position:absolute;inset:0;background:repeating-linear-gradient(45deg,#9ca3af1a,#9ca3af1a 10px,#9ca3af33 10px 20px);display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--cwv-text-secondary);font-size:.875rem;font-weight:600;z-index:3}.cwv-leave-icon{opacity:.7}.cwv-leave-text{opacity:.9}.cwv-add-button{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:var(--cwv-shadow-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:100}.cwv-add-button:hover{transform:scale(1.1) rotate(90deg);box-shadow:var(--cwv-shadow-xl)}.cwv-add-button:active{transform:scale(.95)}.cwv-mobile-container{padding:1rem;background-color:var(--cwv-bg-primary);overflow-y:auto;height:100%}.cwv-mobile-week-view{display:flex;flex-direction:column;gap:1.5rem}.cwv-mobile-day{background-color:var(--cwv-bg-secondary);border-radius:.75rem;overflow:hidden;box-shadow:var(--cwv-shadow-md)}.cwv-mobile-day.cwv-today{border:2px solid var(--cwv-primary)}.cwv-mobile-day-header{padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;gap:.5rem}.cwv-mobile-day-name{font-weight:700;font-size:1rem;text-transform:capitalize}.cwv-mobile-view-detail{font-size:.75rem;opacity:.9;display:flex;align-items:center;gap:.25rem;font-weight:500}.cwv-today-badge{background-color:#ffffff4d;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600}.cwv-mobile-section{border-bottom:1px solid var(--cwv-border-color)}.cwv-mobile-section:last-child{border-bottom:none}.cwv-mobile-section-header{padding:.75rem 1rem;background-color:var(--cwv-bg-primary);font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem;border-left:4px solid var(--cwv-primary)}.cwv-mobile-section-header.cwv-unassigned{border-left-color:var(--cwv-unassigned-border);color:var(--cwv-unassigned-text);background-color:var(--cwv-unassigned-bg)}.cwv-mobile-employee-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;overflow:hidden}.cwv-mobile-count{margin-left:auto;color:var(--cwv-text-muted);font-size:.75rem}.cwv-mobile-appointment{padding:.75rem 1rem;background-color:var(--cwv-bg-secondary);border-left:4px solid var(--cwv-border-color);cursor:pointer;transition:all .2s ease}.cwv-mobile-appointment:hover{background-color:var(--cwv-bg-hover);transform:translate(4px)}.cwv-mobile-appointment.cwv-mobile-unassigned{border-left-color:var(--cwv-unassigned-border);background-color:var(--cwv-unassigned-bg)}.cwv-mobile-appointment.cwv-assigned{border-left-color:var(--cwv-assigned-border)}.cwv-mobile-appointment.cwv-completed{opacity:.7;border-left-color:var(--cwv-completed-border)}.cwv-mobile-appointment-time{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.875rem;color:var(--cwv-text-primary);margin-bottom:.25rem}.cwv-mobile-appointment-details{font-size:.75rem;color:var(--cwv-text-secondary);margin-bottom:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwv-mobile-appointment-footer{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.cwv-mobile-status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:.25rem;font-size:.625rem;font-weight:600}.cwv-mobile-status-badge.cwv-completed{background-color:var(--cwv-completed-bg);color:var(--cwv-completed-text)}.cwv-mobile-notes-indicator{font-size:.75rem;margin-left:auto}.cwv-mobile-recurring-indicator{font-size:.75rem}.cwv-mobile-leave{padding:1rem;background:repeating-linear-gradient(45deg,#9ca3af1a,#9ca3af1a 10px,#9ca3af33 10px 20px);display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--cwv-text-secondary);font-weight:600}.cwv-mobile-add-button{margin:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.5rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--cwv-shadow-md)}.cwv-mobile-add-button:hover{transform:translateY(-2px);box-shadow:var(--cwv-shadow-lg)}.cwv-mobile-add-button:active{transform:translateY(0)}@media (max-width: 1024px){.cwv-week-header,.cwv-timeline-header,.cwv-employee-row{grid-template-columns:150px repeat(7,1fr)}.cwv-employee-info{padding:.75rem}.cwv-employee-avatar{width:32px;height:32px;font-size:.75rem}.cwv-employee-name{font-size:.75rem}.cwv-time-slot{font-size:.55rem;padding:.25rem}.cwv-week-stats{gap:1rem}.cwv-stat-item{min-width:100px}.cwv-stat-value{font-size:1.25rem}}@media (max-width: 768px){.cwv-container{display:none}.cwv-mobile-container{display:block}}@keyframes cwv-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cwv-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes cwv-pulse{0%,to{opacity:1}50%{opacity:.7}}.cwv-loading{animation:cwv-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cwv-content::-webkit-scrollbar,.cwv-mobile-container::-webkit-scrollbar{width:8px;height:8px}.cwv-content::-webkit-scrollbar-track,.cwv-mobile-container::-webkit-scrollbar-track{background-color:var(--cwv-bg-secondary)}.cwv-content::-webkit-scrollbar-thumb,.cwv-mobile-container::-webkit-scrollbar-thumb{background-color:var(--cwv-text-muted);border-radius:4px}.cwv-content::-webkit-scrollbar-thumb:hover,.cwv-mobile-container::-webkit-scrollbar-thumb:hover{background-color:var(--cwv-text-secondary)}.cwv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.cwv-no-select{-webkit-user-select:none;user-select:none}.cwv-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwv-day-column{position:relative;border-right:1px solid var(--cwv-border-color);min-height:80px;padding:.5rem;transition:background-color .2s ease;display:flex;flex-direction:column;gap:.5rem}.cwv-day-column.cwv-today{background-color:#667eea0d}.cwv-day-column:hover{background-color:#3b82f60d}.cwv-day-column.cwv-dragging-over{background-color:#3b82f626!important;border:2px dashed var(--cwv-primary)!important}.cwv-appointments-list{display:flex;flex-direction:column;gap:.5rem;flex:1}.cwv-appointment-card{position:relative;border-radius:.375rem;padding:.5rem;cursor:grab;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s,border-color .2s;overflow:hidden;box-sizing:border-box;-webkit-user-select:none;user-select:none}.dark .cwv-appointment-card{box-shadow:0 1px 3px #0000004d}.cwv-appointment-card:active{cursor:grabbing}.cwv-appointment-card:hover{box-shadow:0 4px 6px #0000001a;z-index:2}.dark .cwv-appointment-card:hover{box-shadow:0 4px 6px #0006}.cwv-appointment-card.cwv-draggable{cursor:grab}.cwv-appointment-card.cwv-draggable:active{cursor:grabbing}.cwv-appointment-card.cwv-dragging{opacity:.5;box-shadow:0 8px 16px #0003}.cwv-appointment-content{height:100%;display:flex;flex-direction:column;gap:.25rem}.cwv-drag-overlay{box-shadow:0 12px 30px #0006!important;transform:rotate(2deg) scale(1.05)!important;border:2px solid #2563eb!important;z-index:9999!important;cursor:grabbing!important;pointer-events:none!important;position:relative}.cwv-copy-badge{position:absolute;top:-8px;right:-8px;background-color:var(--cwv-copy-badge-bg);color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:700;box-shadow:0 2px 6px #0000004d;display:flex;align-items:center;gap:4px;z-index:10000;pointer-events:none}.cwv-appointment-card.cwv-copy-mode,.cwv-appointment-card.cwv-copy-mode:active{cursor:copy!important}.cwv-empty-day{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;border:2px dashed var(--cwv-border-color);border-radius:.375rem;color:var(--cwv-text-muted);cursor:pointer;transition:all .2s ease;font-size:.75rem;font-weight:600;background-color:var(--cwv-bg-secondary)}.cwv-empty-day:hover{border-color:var(--cwv-primary);color:var(--cwv-primary);background-color:#3b82f60d;transform:scale(1.02)}.cwv-empty-day:active{transform:scale(.98)}@media print{.cwv-add-button{display:none}.cwv-week-stats{background:#fff;color:#000;border:1px solid #000}.cwv-timeline-appointment,.cwv-appointment-card{box-shadow:none;border:1px solid #000}.cwv-employee-row:hover,.cwv-timeline-container:hover,.cwv-day-column:hover{background-color:transparent}.cwv-empty-day{display:none}}.scheduler-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.scheduler-modal{background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;width:1200px;display:flex;flex-direction:column;overflow:hidden}.scheduler-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.scheduler-header h2{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.scheduler-header p{color:#6b7280;font-size:.875rem;margin:.25rem 0 0}.scheduler-close-btn{background:none;border:none;padding:.5rem;cursor:pointer;color:#6b7280;border-radius:.375rem;transition:background-color .2s,color .2s}.scheduler-close-btn:hover{background-color:#f3f4f6;color:#111827}.scheduler-body{padding:1.5rem;overflow-y:auto;flex:1}.scheduler-section{margin-bottom:2rem}.scheduler-section-title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.scheduler-global-config{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.scheduler-info-item{display:flex;flex-direction:column;gap:.25rem}.scheduler-info-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase}.scheduler-info-value{font-size:1rem;font-weight:600;color:#111827}.scheduler-employee-card{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:1rem;transition:border-color .2s}.scheduler-employee-card:hover{border-color:#3b82f6}.scheduler-employee-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.scheduler-employee-select{flex:1;max-width:300px;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}.scheduler-remove-btn{background-color:#fee2e2;color:#dc2626;border:none;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:background-color .2s}.scheduler-remove-btn:hover{background-color:#fecaca}.scheduler-days-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.4rem;margin-bottom:1rem}.scheduler-day-checkbox{display:flex;align-items:center;gap:.4rem;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;background:#fff}.scheduler-day-checkbox:hover{border-color:#3b82f6;background-color:#eff6ff}.scheduler-day-checkbox.selected{border-color:#3b82f6;background-color:#dbeafe;box-shadow:0 1px 3px #3b82f633}.scheduler-day-checkbox.is-sunday{background-color:#fef3c7;border-color:#fbbf24}.scheduler-day-checkbox.is-sunday.selected{background-color:#fde68a;border-color:#f59e0b;box-shadow:0 1px 3px #f59e0b4d}.scheduler-day-checkbox input[type=checkbox]{width:1rem;height:1rem;cursor:pointer}.scheduler-day-label{font-size:.8rem;font-weight:500;color:#374151;flex:1}.scheduler-hours-input{width:3.5rem;padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:.25rem;font-size:.875rem;text-align:center}.scheduler-alternance-section{border-top:2px dashed #e5e7eb;padding-top:1rem;margin-top:1rem}.scheduler-alternance-toggle{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem;background-color:#f3f4f6;border-radius:.375rem}.scheduler-alternance-toggle input[type=checkbox]{width:1.25rem;height:1.25rem}.scheduler-alternance-toggle label{font-size:.9375rem;font-weight:500;color:#111827;cursor:pointer}.scheduler-week-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.scheduler-week-panel{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;background-color:#f9fafb}.scheduler-week-panel.week-a{border-color:#3b82f6;background-color:#eff6ff}.scheduler-week-panel.week-b{border-color:#8b5cf6;background-color:#f5f3ff}.scheduler-week-title{font-size:.875rem;font-weight:600;color:#111827;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.scheduler-week-badge{display:inline-block;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.scheduler-week-badge.week-a{background-color:#3b82f6;color:#fff}.scheduler-week-badge.week-b{background-color:#8b5cf6;color:#fff}.scheduler-distance-input{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.scheduler-distance-input label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.scheduler-distance-input input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}.scheduler-add-employee-btn{background-color:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:background-color .2s;margin-top:1rem}.scheduler-add-employee-btn:hover{background-color:#2563eb}.scheduler-summary{background-color:#f0fdf4;border:2px solid #86efac;border-radius:.75rem;padding:1.5rem}.scheduler-summary-title{font-size:1rem;font-weight:600;color:#15803d;margin-bottom:1rem}.scheduler-summary-table{width:100%;border-collapse:collapse;font-size:.875rem}.scheduler-summary-table th,.scheduler-summary-table td{padding:.75rem;text-align:left;border-bottom:1px solid #d1fae5}.scheduler-summary-table th{font-weight:600;color:#15803d;background-color:#dcfce7}.scheduler-summary-table tr:last-child td{border-bottom:none;font-weight:600;color:#15803d}.scheduler-validation-alert{padding:1rem;border-radius:.5rem;margin-bottom:1rem;display:flex;align-items:start;gap:.75rem}.scheduler-validation-alert.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.scheduler-validation-alert.warning{background-color:#fef3c7;border:1px solid #fde68a;color:#92400e}.scheduler-validation-alert.success{background-color:#d1fae5;border:1px solid #86efac;color:#15803d}.scheduler-validation-list{list-style:disc;margin-left:1.25rem}.scheduler-footer{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;gap:1rem}.scheduler-footer-btn{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.scheduler-footer-btn.secondary{background-color:#f3f4f6;color:#374151}.scheduler-footer-btn.secondary:hover{background-color:#e5e7eb}.scheduler-footer-btn.primary{background-color:#3b82f6;color:#fff}.scheduler-footer-btn.primary:hover{background-color:#2563eb}.scheduler-footer-btn:disabled{opacity:.5;cursor:not-allowed}.scheduler-sunday-warning{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:.375rem;padding:.75rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#92400e}:root{--devis-primary: #3b82f6;--devis-secondary: #64748b;--devis-success: #10b981;--devis-warning: #f59e0b;--devis-error: #ef4444;--devis-info: #06b6d4;--devis-bg-light: #f8fafc;--devis-bg-card: #ffffff;--devis-border: #e2e8f0;--devis-text: #1e293b;--devis-text-light: #64748b;--devis-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--devis-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--devis-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--devis-radius-sm: .375rem;--devis-radius-md: .5rem;--devis-radius-lg: .75rem}.devis-modal-container{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:50;padding:.5rem}.devis-modal-content{background:var(--devis-bg-card);border-radius:var(--devis-radius-md);box-shadow:var(--devis-shadow-lg);max-width:95vw;max-height:98vh;width:100%;overflow-y:auto;position:relative}.devis-modal-header{padding:1rem;border-bottom:1px solid var(--devis-border);background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:var(--devis-radius-md) var(--devis-radius-md) 0 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.devis-modal-title{font-size:1.25rem;font-weight:700;color:var(--devis-text);margin:0;line-height:1.2}.devis-modal-subtitle{color:var(--devis-text-light);margin:.125rem 0 0;font-size:.75rem;line-height:1.3}.devis-modal-close{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;color:var(--devis-text-light);cursor:pointer;padding:.375rem;border-radius:var(--devis-radius-sm);transition:all .2s ease}.devis-modal-close:hover{background:#0000000d;color:var(--devis-text)}.devis-modal-body{padding:1rem}.devis-section{background:var(--devis-bg-light);border-radius:var(--devis-radius-sm);padding:1rem;margin-bottom:1rem;border:1px solid var(--devis-border)}.devis-section-title{font-size:1rem;font-weight:600;color:var(--devis-text);margin-bottom:.75rem;display:flex;align-items:center;gap:.375rem}.devis-section-title svg{width:1rem;height:1rem}.devis-grid{display:grid;gap:1rem}.devis-grid-2{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.devis-grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.devis-ligne-prestation{background:var(--devis-bg-card);border:1px solid var(--devis-border);border-radius:var(--devis-radius-sm);padding:.75rem;margin-bottom:.5rem;transition:all .2s ease}.devis-ligne-prestation:hover{border-color:var(--devis-primary);box-shadow:var(--devis-shadow-sm)}.devis-ligne-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));align-items:end}.devis-ligne-label{font-size:.7rem;color:var(--devis-text-light);margin-bottom:.125rem;display:block;font-weight:500}.devis-ligne-input{width:100%;padding:.375rem;border:1px solid var(--devis-border);border-radius:var(--devis-radius-sm);font-size:.8rem;transition:all .2s ease}.devis-ligne-input:focus{outline:none;border-color:var(--devis-primary);box-shadow:0 0 0 3px #3b82f61a}.devis-ligne-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.devis-btn-remove{background:transparent;border:none;color:var(--devis-error);cursor:pointer;padding:.5rem;border-radius:var(--devis-radius-sm);transition:all .2s ease}.devis-btn-remove:hover{background:#ef44441a}.devis-preview{background:linear-gradient(135deg,#fefce8,#fef9c3);border:1px solid #fbbf24;border-radius:var(--devis-radius-sm);padding:1rem}.devis-preview-loading{text-align:center;padding:2rem;color:var(--devis-text-light)}.devis-preview-spinner{width:2rem;height:2rem;border:2px solid transparent;border-top:2px solid var(--devis-primary);border-radius:50%;animation:devis-spin 1s linear infinite;margin:0 auto 1rem}@keyframes devis-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.devis-preview-detail{background:var(--devis-bg-card);border-radius:var(--devis-radius-sm);padding:1rem;margin-bottom:1rem}.devis-preview-totaux{background:var(--devis-bg-card);border-radius:var(--devis-radius-sm);padding:1rem;border-top:2px solid var(--devis-success)}.devis-total-line{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem}.devis-total-final{border-top:1px solid var(--devis-border);padding-top:.5rem;margin-top:.5rem;font-weight:600;font-size:1.125rem;color:var(--devis-success)}.devis-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--devis-border);margin-top:1.5rem}.devis-btn{padding:.75rem 1.5rem;border-radius:var(--devis-radius-md);font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.5rem}.devis-btn-primary{background:var(--devis-primary);color:#fff}.devis-btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:var(--devis-shadow-md)}.devis-btn-secondary{background:transparent;color:var(--devis-text-light);border:1px solid var(--devis-border)}.devis-btn-secondary:hover{background:var(--devis-bg-light);color:var(--devis-text)}.devis-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.devis-actions-panel{background:var(--devis-bg-card);border:1px solid var(--devis-border);border-radius:var(--devis-radius-lg);padding:1.5rem}.devis-actions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--devis-border)}.devis-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.devis-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem .5rem;border:1px solid var(--devis-border);border-radius:var(--devis-radius-md);background:var(--devis-bg-light);cursor:pointer;transition:all .2s ease;text-decoration:none;color:inherit}.devis-action-btn:hover{transform:translateY(-2px);box-shadow:var(--devis-shadow-md);border-color:var(--devis-primary)}.devis-action-btn.blue{border-color:#bfdbfe;background:#eff6ff;color:#1e40af}.devis-action-btn.green{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}.devis-action-btn.red{border-color:#fecaca;background:#fef2f2;color:#991b1b}.devis-action-btn.orange{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.devis-action-btn.yellow{border-color:#fde68a;background:#fffbeb;color:#92400e}.devis-action-icon{width:1.5rem;height:1.5rem;margin-bottom:.5rem}.devis-action-label{font-size:.75rem;font-weight:500;text-align:center;line-height:1.2}.devis-table-container{background:var(--devis-bg-card);border-radius:var(--devis-radius-lg);box-shadow:var(--devis-shadow-sm);overflow:hidden}.devis-table{width:100%;border-collapse:collapse}.devis-table th{background:var(--devis-bg-light);padding:1rem;text-align:left;font-weight:600;color:var(--devis-text);border-bottom:1px solid var(--devis-border);font-size:.875rem}.devis-table td{padding:1rem;border-bottom:1px solid var(--devis-border);font-size:.875rem}.devis-table tr:last-child td{border-bottom:none}.devis-table tr:hover{background:var(--devis-bg-light)}.devis-status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--devis-radius-md);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.devis-status-draft{background:#f3f4f6;color:#6b7280}.devis-status-sent{background:#dbeafe;color:#1e40af}.devis-status-accepted{background:#d1fae5;color:#065f46}.devis-status-refused{background:#fee2e2;color:#991b1b}.devis-status-expired{background:#fef3c7;color:#92400e}@media (max-width: 768px){.devis-modal-content{margin:.5rem;max-width:calc(100vw - 1rem)}.devis-modal-header,.devis-modal-body,.devis-section{padding:1rem}.devis-grid-2,.devis-grid-3{grid-template-columns:1fr}.devis-ligne-grid{grid-template-columns:1fr;gap:.5rem}.devis-actions-grid{grid-template-columns:repeat(2,1fr)}.devis-table{font-size:.75rem}.devis-table th,.devis-table td{padding:.75rem .5rem}}@keyframes devis-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.devis-fade-in{animation:devis-fade-in .3s ease-out}@keyframes devis-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.devis-slide-in{animation:devis-slide-in .3s ease-out}.devis-loading{opacity:.6;pointer-events:none}.devis-loading:after{content:"";position:absolute;inset:0;background:#fffc;display:flex;align-items:center;justify-content:center}.devis-text-success{color:var(--devis-success)}.devis-text-warning{color:var(--devis-warning)}.devis-text-error{color:var(--devis-error)}.devis-text-info{color:var(--devis-info)}.devis-bg-success{background:#10b9811a}.devis-bg-warning{background:#f59e0b1a}.devis-bg-error{background:#ef44441a}.devis-bg-info{background:#06b6d41a}.document-workflow-status{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.document-workflow-status .status-icon{width:14px;height:14px;flex-shrink:0}.document-workflow-status .status-label{line-height:1}.document-workflow-status.size-small{padding:4px 8px;font-size:.65rem;gap:4px}.document-workflow-status.size-small .status-icon{width:12px;height:12px}.document-workflow-status.size-large{padding:8px 16px;font-size:.875rem;gap:8px}.document-workflow-status.size-large .status-icon{width:16px;height:16px}.document-workflow-status.status-draft{background-color:#f3f4f6;color:#6b7280}.document-workflow-status.status-pending{background-color:#fef3c7;color:#92400e;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.document-workflow-status.status-signed{background-color:#d1fae5;color:#065f46}.document-workflow-status.status-archived{background-color:#e0e7ff;color:#3730a3}.document-workflow-progress{display:flex;align-items:center;padding:24px;background-color:#f9fafb;border-radius:12px}.document-workflow-progress .workflow-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.document-workflow-progress .step-indicator{width:40px;height:40px;border-radius:50%;background-color:#e5e7eb;color:#9ca3af;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;transition:all .3s;z-index:2;position:relative}.document-workflow-progress .workflow-step.completed .step-indicator{background-color:#10b981;color:#fff}.document-workflow-progress .workflow-step.current .step-indicator{background-color:#3b82f6;color:#fff;box-shadow:0 0 0 4px #3b82f633}.document-workflow-progress .step-label{font-size:.75rem;color:#6b7280;font-weight:500;text-align:center}.document-workflow-progress .workflow-step.completed .step-label,.document-workflow-progress .workflow-step.current .step-label{color:#1f2937;font-weight:600}.document-workflow-progress .workflow-connector{flex:1;height:2px;background-color:#e5e7eb;margin:0 -8px 32px;position:relative;z-index:1;transition:all .3s}.document-workflow-progress .workflow-connector.completed{background-color:#10b981}@media (max-width: 768px){.document-workflow-progress{padding:16px;overflow-x:auto}.document-workflow-progress .step-indicator{width:32px;height:32px;font-size:.875rem}.document-workflow-progress .step-label{font-size:.65rem}.document-workflow-progress .workflow-connector{margin-bottom:24px}}.beneficiary-documents-list{display:flex;flex-direction:column;height:100%;background-color:#f9fafb}.beneficiary-documents-list.loading{display:flex;align-items:center;justify-content:center}.beneficiary-documents-list .loading-spinner{display:flex;flex-direction:column;align-items:center;gap:16px}.beneficiary-documents-list .spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.beneficiary-documents-list .loading-spinner p{color:#6b7280;font-size:.875rem}.beneficiary-documents-list .list-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background-color:#fff;border-bottom:1px solid #e5e7eb}.beneficiary-documents-list .header-title{display:flex;align-items:center;gap:12px}.beneficiary-documents-list .header-title h3{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.beneficiary-documents-list .document-count{padding:4px 12px;background-color:#f3f4f6;color:#6b7280;border-radius:12px;font-size:.875rem;font-weight:500}.beneficiary-documents-list .btn-generate-new{display:flex;align-items:center;gap:8px;padding:10px 20px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.beneficiary-documents-list .btn-generate-new:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.beneficiary-documents-list .stats-bar{display:flex;gap:16px;padding:16px 24px;background-color:#fff;border-bottom:1px solid #e5e7eb;overflow-x:auto}.beneficiary-documents-list .stat-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;background-color:#f9fafb;border-radius:8px;min-width:100px;cursor:pointer;transition:all .2s}.beneficiary-documents-list .stat-item:hover{background-color:#f3f4f6;transform:translateY(-2px)}.beneficiary-documents-list .stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.beneficiary-documents-list .stat-value{font-size:1.5rem;font-weight:700;color:#1f2937}.beneficiary-documents-list .badge-draft-count{color:#6b7280}.beneficiary-documents-list .badge-pending-count{color:#f59e0b}.beneficiary-documents-list .badge-signed-count{color:#10b981}.beneficiary-documents-list .badge-archived-count{color:#6366f1}.beneficiary-documents-list .filters-bar{display:flex;gap:16px;padding:16px 24px;background-color:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.beneficiary-documents-list .search-box{position:relative;flex:1;min-width:250px}.beneficiary-documents-list .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af}.beneficiary-documents-list .search-input{width:100%;padding:10px 40px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s}.beneficiary-documents-list .search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.beneficiary-documents-list .clear-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;color:#9ca3af;transition:color .2s}.beneficiary-documents-list .clear-search:hover{color:#6b7280}.beneficiary-documents-list .filter-group{display:flex;gap:12px}.beneficiary-documents-list .filter-select{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;background-color:#fff;cursor:pointer;transition:all .2s}.beneficiary-documents-list .filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.beneficiary-documents-list .documents-container{flex:1;overflow-y:auto;padding:24px}.beneficiary-documents-list .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;color:#6b7280}.beneficiary-documents-list .empty-state svg{margin-bottom:16px}.beneficiary-documents-list .empty-state h4{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:#374151}.beneficiary-documents-list .empty-state p{margin:0 0 24px;font-size:.875rem;color:#6b7280;max-width:400px}.beneficiary-documents-list .btn-primary,.beneficiary-documents-list .btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.beneficiary-documents-list .btn-primary{background-color:#3b82f6;color:#fff}.beneficiary-documents-list .btn-primary:hover{background-color:#2563eb;transform:translateY(-1px)}.beneficiary-documents-list .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.beneficiary-documents-list .btn-secondary:hover{background-color:#f9fafb}.beneficiary-documents-list .documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.beneficiary-documents-list .document-card{display:flex;gap:16px;padding:20px;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s}.beneficiary-documents-list .document-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.beneficiary-documents-list .document-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:#eff6ff;border-radius:10px;color:#3b82f6}.beneficiary-documents-list .document-content{flex:1;min-width:0}.beneficiary-documents-list .document-header-info{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.beneficiary-documents-list .document-title{margin:0;font-size:1rem;font-weight:600;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.beneficiary-documents-list .document-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.75rem;color:#6b7280;margin-bottom:8px}.beneficiary-documents-list .document-type{padding:4px 8px;background-color:#f3f4f6;border-radius:6px;font-weight:500}.beneficiary-documents-list .document-date{display:flex;align-items:center;gap:4px}.beneficiary-documents-list .document-signed-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:#d1fae5;color:#065f46;border-radius:6px;font-size:.75rem;font-weight:500}.beneficiary-documents-list .document-actions{flex-shrink:0;display:flex;align-items:center;color:#9ca3af;transition:color .2s}.beneficiary-documents-list .document-card:hover .document-actions{color:#3b82f6}@media (max-width: 768px){.beneficiary-documents-list .list-header{flex-direction:column;gap:16px;align-items:stretch}.beneficiary-documents-list .btn-generate-new{width:100%;justify-content:center}.beneficiary-documents-list .stats-bar{gap:8px;padding:12px 16px}.beneficiary-documents-list .stat-item{min-width:80px;padding:8px 12px}.beneficiary-documents-list .stat-value{font-size:1.25rem}.beneficiary-documents-list .filters-bar{flex-direction:column;padding:16px}.beneficiary-documents-list .search-box{width:100%}.beneficiary-documents-list .filter-group{flex-direction:column}.beneficiary-documents-list .filter-select{width:100%}.beneficiary-documents-list .documents-container{padding:16px}.beneficiary-documents-list .documents-grid{grid-template-columns:1fr;gap:12px}.beneficiary-documents-list .document-card{padding:16px}.beneficiary-documents-list .document-header-info{flex-direction:column;gap:8px}}.document-signature-modal .modal-overlay{position:fixed;inset:0;background-color:#0009;z-index:9998;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.document-signature-modal .modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;z-index:9999;max-height:90vh;display:flex;flex-direction:column;width:90%;max-width:800px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translate(-50%,-45%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.document-signature-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 20px;border-bottom:1px solid #e5e7eb}.document-signature-modal .modal-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0;display:flex;align-items:center;gap:12px}.document-signature-modal .modal-header .icon{color:#10b981}.document-signature-modal .close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.document-signature-modal .close-button:hover{background-color:#f3f4f6;color:#1f2937}.document-signature-modal .document-info-banner{display:flex;align-items:center;gap:16px;padding:16px 24px;background:linear-gradient(135deg,#dbeafe,#eff6ff);border-bottom:1px solid #bfdbfe}.document-signature-modal .info-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:#fff;border-radius:50%;color:#3b82f6}.document-signature-modal .document-info-banner h3{margin:0;font-size:1rem;font-weight:600;color:#1f2937}.document-signature-modal .document-info-banner p{margin:4px 0 0;font-size:.875rem;color:#6b7280}.document-signature-modal .alert{padding:12px 24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #fee2e2}.document-signature-modal .alert-error{background-color:#fef2f2;color:#dc2626}.document-signature-modal .alert-icon{flex-shrink:0}.document-signature-modal .modal-body{flex:1;overflow-y:auto;padding:24px}.document-signature-modal .form-group{margin-bottom:24px}.document-signature-modal .form-group label{display:block;font-weight:500;color:#374151;margin-bottom:8px;font-size:.875rem}.document-signature-modal .form-control{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s}.document-signature-modal .form-control:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.document-signature-modal .signature-method-selector{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.document-signature-modal .method-button{padding:16px;border:2px solid #e5e7eb;background-color:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:500;color:#6b7280;transition:all .2s}.document-signature-modal .method-button:hover{border-color:#10b981;color:#10b981}.document-signature-modal .method-button.active{border-color:#10b981;background-color:#f0fdf4;color:#10b981}.document-signature-modal .signature-area{margin-bottom:24px}.document-signature-modal .signature-controls{display:flex;align-items:center;gap:12px;margin-bottom:12px}.document-signature-modal .signature-controls label{font-size:.875rem;color:#6b7280;margin:0}.document-signature-modal .color-picker-group{display:flex;align-items:center;gap:8px}.document-signature-modal .color-picker{width:40px;height:40px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer}.document-signature-modal .color-label{font-size:.75rem;color:#6b7280;font-family:monospace}.document-signature-modal .signature-canvas-wrapper{position:relative;border:2px dashed #d1d5db;border-radius:8px;background-color:#fff;margin-bottom:12px;overflow:hidden}.document-signature-modal .signature-canvas{display:block;width:100%;height:200px;cursor:crosshair}.document-signature-modal .signature-canvas-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:#d1d5db}.document-signature-modal .signature-canvas-overlay p{margin:8px 0 0;font-size:.875rem}.document-signature-modal .btn-clear{width:auto;display:flex;align-items:center;gap:8px}.document-signature-modal .signature-upload-area{margin-bottom:24px}.document-signature-modal .file-input{display:none}.document-signature-modal .file-upload-label{display:block;border:2px dashed #d1d5db;border-radius:8px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;background-color:#f9fafb}.document-signature-modal .file-upload-label:hover{border-color:#10b981;background-color:#f0fdf4}.document-signature-modal .upload-placeholder{display:flex;flex-direction:column;align-items:center;color:#6b7280}.document-signature-modal .upload-placeholder p{margin:12px 0 4px;font-weight:500;color:#374151}.document-signature-modal .upload-placeholder span{font-size:.75rem;color:#9ca3af}.document-signature-modal .uploaded-signature-preview{max-width:400px;margin:0 auto}.document-signature-modal .uploaded-signature-preview img{max-width:100%;height:auto;display:block;border-radius:4px}.document-signature-modal .consent-area{margin-bottom:20px;padding:16px;background-color:#fffbeb;border:1px solid #fde68a;border-radius:8px}.document-signature-modal .consent-checkbox{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin:0}.document-signature-modal .consent-checkbox input[type=checkbox]{margin-top:4px;flex-shrink:0;width:18px;height:18px;cursor:pointer}.document-signature-modal .consent-checkbox span{font-size:.875rem;color:#78350f;line-height:1.5}.document-signature-modal .legal-notice{display:flex;align-items:flex-start;gap:12px;padding:12px;background-color:#f3f4f6;border-radius:8px;margin-bottom:0}.document-signature-modal .notice-icon{flex-shrink:0;color:#6b7280}.document-signature-modal .legal-notice p{margin:0;font-size:.75rem;color:#6b7280;line-height:1.5}.document-signature-modal .modal-footer{border-top:1px solid #e5e7eb;padding:20px 24px;background-color:#f9fafb;border-radius:0 0 12px 12px}.document-signature-modal .footer-buttons{display:flex;justify-content:flex-end;gap:12px}.document-signature-modal .btn{padding:12px 24px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.document-signature-modal .btn:disabled{opacity:.5;cursor:not-allowed}.document-signature-modal .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.document-signature-modal .btn-secondary:hover:not(:disabled){background-color:#f9fafb}.document-signature-modal .btn-success{background-color:#10b981;color:#fff}.document-signature-modal .btn-success:hover:not(:disabled){background-color:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.document-signature-modal .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.document-signature-modal .modal-content{width:95%;max-height:95vh}.document-signature-modal .signature-method-selector{grid-template-columns:1fr}.document-signature-modal .method-button{padding:12px;font-size:.875rem}.document-signature-modal .signature-canvas{height:150px}.document-signature-modal .footer-buttons{flex-direction:column}.document-signature-modal .btn{width:100%;justify-content:center}}.beneficiary-document-viewer{display:flex;flex-direction:column;height:100%;background-color:#f9fafb}.beneficiary-document-viewer .no-document{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;padding:48px;text-align:center}.beneficiary-document-viewer .no-document p{margin:16px 0 0;font-size:1.125rem;color:#6b7280}.beneficiary-document-viewer .viewer-header{display:flex;justify-content:space-between;align-items:center;padding:24px;background-color:#fff;border-bottom:1px solid #e5e7eb}.beneficiary-document-viewer .header-left{display:flex;align-items:center;gap:16px}.beneficiary-document-viewer .viewer-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.beneficiary-document-viewer .close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.beneficiary-document-viewer .close-button:hover{background-color:#f3f4f6;color:#1f2937}.beneficiary-document-viewer .status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.beneficiary-document-viewer .badge-draft{background-color:#f3f4f6;color:#6b7280}.beneficiary-document-viewer .badge-pending{background-color:#fef3c7;color:#92400e}.beneficiary-document-viewer .badge-signed{background-color:#d1fae5;color:#065f46}.beneficiary-document-viewer .badge-archived{background-color:#e0e7ff;color:#3730a3}.beneficiary-document-viewer .document-info-bar{display:flex;gap:24px;padding:12px 24px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.beneficiary-document-viewer .info-item{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#6b7280}.beneficiary-document-viewer .info-item svg{flex-shrink:0}.beneficiary-document-viewer .signature-info-banner{display:flex;align-items:center;gap:16px;padding:16px 24px;background:linear-gradient(135deg,#d1fae5,#ecfdf5);border-bottom:1px solid #a7f3d0}.beneficiary-document-viewer .signature-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:#fff;border-radius:50%;color:#10b981}.beneficiary-document-viewer .signature-details{flex:1}.beneficiary-document-viewer .signature-details h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:#065f46}.beneficiary-document-viewer .signature-details p{margin:2px 0;font-size:.875rem;color:#047857}.beneficiary-document-viewer .signature-meta{font-size:.75rem!important;color:#6b7280!important}.beneficiary-document-viewer .signature-preview{flex-shrink:0;padding:8px;background-color:#fff;border-radius:8px;border:1px solid #a7f3d0}.beneficiary-document-viewer .signature-preview img{max-width:200px;max-height:80px;display:block}.beneficiary-document-viewer .action-bar{padding:16px 24px;background-color:#fff;border-bottom:1px solid #e5e7eb}.beneficiary-document-viewer .action-buttons{display:flex;gap:12px;flex-wrap:wrap}.beneficiary-document-viewer .action-button{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #d1d5db;background-color:#fff;color:#374151}.beneficiary-document-viewer .action-button:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.beneficiary-document-viewer .action-button:disabled{opacity:.5;cursor:not-allowed}.beneficiary-document-viewer .action-button.primary{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.beneficiary-document-viewer .action-button.primary:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.beneficiary-document-viewer .action-button.success{background-color:#10b981;color:#fff;border-color:#10b981}.beneficiary-document-viewer .action-button.success:hover:not(:disabled){background-color:#059669;border-color:#059669}.beneficiary-document-viewer .action-button.danger{background-color:#fff;color:#dc2626;border-color:#fecaca}.beneficiary-document-viewer .action-button.danger:hover:not(:disabled){background-color:#fef2f2;border-color:#dc2626}.beneficiary-document-viewer .document-content-viewer{flex:1;overflow-y:auto;padding:24px}.beneficiary-document-viewer .document-html-content{max-width:1200px;margin:0 auto;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:48px;font-family:Arial,sans-serif;line-height:1.6;color:#1f2937}.beneficiary-document-viewer .document-html-content h1{font-size:2rem;margin:0 0 24px;color:#111827}.beneficiary-document-viewer .document-html-content h2{font-size:1.5rem;margin:32px 0 16px;color:#111827;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.beneficiary-document-viewer .document-html-content h3{font-size:1.25rem;margin:24px 0 12px;color:#374151}.beneficiary-document-viewer .document-html-content p{margin:12px 0}.beneficiary-document-viewer .document-html-content ul,.beneficiary-document-viewer .document-html-content ol{margin:12px 0;padding-left:24px}.beneficiary-document-viewer .document-html-content li{margin:8px 0}.beneficiary-document-viewer .document-html-content table{width:100%;border-collapse:collapse;margin:16px 0}.beneficiary-document-viewer .document-html-content table th,.beneficiary-document-viewer .document-html-content table td{border:1px solid #e5e7eb;padding:12px;text-align:left}.beneficiary-document-viewer .document-html-content table th{background-color:#f9fafb;font-weight:600}.beneficiary-document-viewer .document-html-content .card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin:16px 0}.beneficiary-document-viewer .document-html-content .callout{background-color:#eff6ff;border-left:4px solid #3b82f6;padding:16px;margin:16px 0;border-radius:4px}.beneficiary-document-viewer .document-html-content .highlight{background-color:#fef3c7;border-left:4px solid #f59e0b;padding:16px;margin:16px 0;border-radius:4px}@media (max-width: 768px){.beneficiary-document-viewer .viewer-header{padding:16px}.beneficiary-document-viewer .viewer-header h2{font-size:1.25rem}.beneficiary-document-viewer .document-info-bar{flex-direction:column;gap:8px}.beneficiary-document-viewer .signature-info-banner{flex-direction:column;align-items:flex-start}.beneficiary-document-viewer .signature-preview{width:100%}.beneficiary-document-viewer .signature-preview img{max-width:100%}.beneficiary-document-viewer .action-bar{padding:12px 16px}.beneficiary-document-viewer .action-buttons{flex-direction:column}.beneficiary-document-viewer .action-button{width:100%;justify-content:center}.beneficiary-document-viewer .document-content-viewer{padding:16px}.beneficiary-document-viewer .document-html-content{padding:24px 16px}}@media print{.beneficiary-document-viewer .viewer-header,.beneficiary-document-viewer .document-info-bar,.beneficiary-document-viewer .action-bar{display:none}.beneficiary-document-viewer .document-content-viewer{padding:0}.beneficiary-document-viewer .document-html-content{box-shadow:none;padding:0}}.beneficiary-document-generator-modal .modal-overlay{position:fixed;inset:0;background-color:#00000080;z-index:9998}.beneficiary-document-generator-modal .modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;z-index:9999;max-height:90vh;display:flex;flex-direction:column;width:90%;max-width:800px}.beneficiary-document-generator-modal .modal-content.large{max-width:1200px}.beneficiary-document-generator-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.beneficiary-document-generator-modal .modal-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0;display:flex;align-items:center;gap:12px}.beneficiary-document-generator-modal .modal-header .icon{color:#3b82f6}.beneficiary-document-generator-modal .close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.beneficiary-document-generator-modal .close-button:hover{background-color:#f3f4f6;color:#1f2937}.beneficiary-document-generator-modal .stepper{display:flex;justify-content:space-between;align-items:center;padding:24px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.beneficiary-document-generator-modal .step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative}.beneficiary-document-generator-modal .step:not(:last-child):after{content:"";position:absolute;top:20px;left:60%;right:-40%;height:2px;background-color:#e5e7eb;z-index:1}.beneficiary-document-generator-modal .step.active:not(:last-child):after{background-color:#3b82f6}.beneficiary-document-generator-modal .step-number{width:40px;height:40px;border-radius:50%;background-color:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;margin-bottom:8px;position:relative;z-index:2;transition:all .3s}.beneficiary-document-generator-modal .step.active .step-number{background-color:#3b82f6;color:#fff}.beneficiary-document-generator-modal .step-label{font-size:.875rem;color:#6b7280;font-weight:500;transition:all .3s}.beneficiary-document-generator-modal .step.active .step-label{color:#3b82f6}.beneficiary-document-generator-modal .alert{padding:12px 16px;border-radius:8px;margin:16px 24px;display:flex;align-items:center;gap:12px}.beneficiary-document-generator-modal .alert-error{background-color:#fef2f2;border:1px solid #fee2e2;color:#dc2626}.beneficiary-document-generator-modal .alert-icon{flex-shrink:0}.beneficiary-document-generator-modal .modal-body{flex:1;overflow-y:auto;padding:24px}.beneficiary-document-generator-modal .step-content{max-width:100%}.beneficiary-document-generator-modal .form-group{margin-bottom:20px}.beneficiary-document-generator-modal .form-group label{display:block;font-weight:500;color:#374151;margin-bottom:8px;font-size:.875rem}.beneficiary-document-generator-modal .form-control{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.beneficiary-document-generator-modal .form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.beneficiary-document-generator-modal .beneficiary-info-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-top:16px;margin-bottom:24px}.beneficiary-document-generator-modal .beneficiary-info-card h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 12px}.beneficiary-document-generator-modal .beneficiary-info-card p{margin:8px 0;font-size:.875rem;color:#4b5563}.beneficiary-document-generator-modal .beneficiary-info-card strong{color:#1f2937;font-weight:500}.beneficiary-document-generator-modal .additional-data-form{max-width:600px}.beneficiary-document-generator-modal .additional-data-form h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 24px}.beneficiary-document-generator-modal .preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.beneficiary-document-generator-modal .preview-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.beneficiary-document-generator-modal .badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.beneficiary-document-generator-modal .badge-info{background-color:#dbeafe;color:#1e40af}.beneficiary-document-generator-modal .document-preview{border:1px solid #e5e7eb;border-radius:8px;padding:24px;background-color:#fff;max-height:500px;overflow-y:auto;font-family:Arial,sans-serif;line-height:1.6}.beneficiary-document-generator-modal .modal-footer{border-top:1px solid #e5e7eb;padding:16px 24px;background-color:#f9fafb;border-radius:0 0 12px 12px}.beneficiary-document-generator-modal .footer-buttons{display:flex;justify-content:flex-end;gap:12px}.beneficiary-document-generator-modal .btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.beneficiary-document-generator-modal .btn:disabled{opacity:.5;cursor:not-allowed}.beneficiary-document-generator-modal .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.beneficiary-document-generator-modal .btn-secondary:hover:not(:disabled){background-color:#f9fafb}.beneficiary-document-generator-modal .btn-primary{background-color:#3b82f6;color:#fff}.beneficiary-document-generator-modal .btn-primary:hover:not(:disabled){background-color:#2563eb}.beneficiary-document-generator-modal .btn-success{background-color:#10b981;color:#fff}.beneficiary-document-generator-modal .btn-success:hover:not(:disabled){background-color:#059669}.beneficiary-document-generator-embedded{display:flex;flex-direction:column;height:100%;background:#fff}.beneficiary-document-generator-embedded .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.beneficiary-document-generator-embedded .modal-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0;display:flex;align-items:center;gap:12px}.beneficiary-document-generator-embedded .modal-header .icon{color:#3b82f6}.beneficiary-document-generator-embedded .close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.beneficiary-document-generator-embedded .close-button:hover{background-color:#f3f4f6;color:#1f2937}.beneficiary-document-generator-embedded .stepper{display:flex;justify-content:space-between;align-items:center;padding:24px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.beneficiary-document-generator-embedded .step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative}.beneficiary-document-generator-embedded .step:not(:last-child):after{content:"";position:absolute;top:20px;left:60%;right:-40%;height:2px;background-color:#e5e7eb;z-index:1}.beneficiary-document-generator-embedded .step.active:not(:last-child):after{background-color:#3b82f6}.beneficiary-document-generator-embedded .step-number{width:40px;height:40px;border-radius:50%;background-color:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;margin-bottom:8px;position:relative;z-index:2;transition:all .3s}.beneficiary-document-generator-embedded .step.active .step-number{background-color:#3b82f6;color:#fff}.beneficiary-document-generator-embedded .step-label{font-size:.875rem;color:#6b7280;font-weight:500;transition:all .3s}.beneficiary-document-generator-embedded .step.active .step-label{color:#3b82f6}.beneficiary-document-generator-embedded .alert{padding:12px 16px;border-radius:8px;margin:16px 24px;display:flex;align-items:center;gap:12px}.beneficiary-document-generator-embedded .alert-error{background-color:#fef2f2;border:1px solid #fee2e2;color:#dc2626}.beneficiary-document-generator-embedded .alert-icon{flex-shrink:0}.beneficiary-document-generator-embedded .modal-body{flex:1;overflow-y:auto;padding:24px}.beneficiary-document-generator-embedded .step-content{max-width:100%}.beneficiary-document-generator-embedded .form-group{margin-bottom:20px}.beneficiary-document-generator-embedded .form-group label{display:block;font-weight:500;color:#374151;margin-bottom:8px;font-size:.875rem}.beneficiary-document-generator-embedded .form-control{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.beneficiary-document-generator-embedded .form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.beneficiary-document-generator-embedded .beneficiary-info-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-top:16px;margin-bottom:24px}.beneficiary-document-generator-embedded .beneficiary-info-card h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 12px}.beneficiary-document-generator-embedded .beneficiary-info-card p{margin:8px 0;font-size:.875rem;color:#4b5563}.beneficiary-document-generator-embedded .beneficiary-info-card strong{color:#1f2937;font-weight:500}.beneficiary-document-generator-embedded .additional-data-form{max-width:600px}.beneficiary-document-generator-embedded .additional-data-form h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 24px}.beneficiary-document-generator-embedded .preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.beneficiary-document-generator-embedded .preview-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.beneficiary-document-generator-embedded .badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.beneficiary-document-generator-embedded .badge-info{background-color:#dbeafe;color:#1e40af}.beneficiary-document-generator-embedded .document-preview{border:1px solid #e5e7eb;border-radius:8px;padding:24px;background-color:#fff;max-height:500px;overflow-y:auto;font-family:Arial,sans-serif;line-height:1.6}.beneficiary-document-generator-embedded .modal-footer{border-top:1px solid #e5e7eb;padding:16px 24px;background-color:#f9fafb}.beneficiary-document-generator-embedded .footer-buttons{display:flex;justify-content:flex-end;gap:12px}.beneficiary-document-generator-embedded .btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.beneficiary-document-generator-embedded .btn:disabled{opacity:.5;cursor:not-allowed}.beneficiary-document-generator-embedded .btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.beneficiary-document-generator-embedded .btn-secondary:hover:not(:disabled){background-color:#f9fafb}.beneficiary-document-generator-embedded .btn-primary{background-color:#3b82f6;color:#fff}.beneficiary-document-generator-embedded .btn-primary:hover:not(:disabled){background-color:#2563eb}.beneficiary-document-generator-embedded .btn-success{background-color:#10b981;color:#fff}.beneficiary-document-generator-embedded .btn-success:hover:not(:disabled){background-color:#059669}@media (max-width: 768px){.beneficiary-document-generator-modal .modal-content{width:95%;max-height:95vh}.beneficiary-document-generator-modal .stepper{padding:16px}.beneficiary-document-generator-modal .step-label{font-size:.75rem}.beneficiary-document-generator-modal .modal-body{padding:16px}.beneficiary-document-generator-modal .footer-buttons{flex-direction:column}.beneficiary-document-generator-modal .btn{width:100%}}.beneficiary-documents-manager{width:100%;height:100%;display:flex;flex-direction:column;background-color:#f9fafb}.beneficiary-documents-manager .manager-content{flex:1;display:flex;overflow:hidden}.beneficiary-documents-manager .manager-content.list-mode{flex-direction:column}.beneficiary-documents-manager .manager-content.list-mode .documents-list-panel{flex:1}.beneficiary-documents-manager .manager-content.viewer-mode{flex-direction:row}.beneficiary-documents-manager .manager-content.viewer-mode .documents-list-panel.sidebar{width:400px;flex-shrink:0;border-right:1px solid #e5e7eb}.beneficiary-documents-manager .manager-content.viewer-mode .document-viewer-panel{flex:1;overflow:hidden}.beneficiary-documents-manager .documents-list-panel,.beneficiary-documents-manager .document-viewer-panel{height:100%;overflow:hidden;display:flex;flex-direction:column}@media (max-width: 1024px){.beneficiary-documents-manager .manager-content.viewer-mode{flex-direction:column}.beneficiary-documents-manager .manager-content.viewer-mode .documents-list-panel.sidebar{width:100%;height:auto;max-height:40%;border-right:none;border-bottom:1px solid #e5e7eb}.beneficiary-documents-manager .manager-content.viewer-mode .document-viewer-panel{height:60%}}@media (max-width: 768px){.beneficiary-documents-manager .manager-content.viewer-mode .documents-list-panel.sidebar{display:none}.beneficiary-documents-manager .manager-content.viewer-mode .document-viewer-panel{height:100%}}:root{--resource-primary: #3b82f6;--resource-secondary: #64748b;--resource-success: #10b981;--resource-warning: #f59e0b;--resource-error: #ef4444;--resource-info: #06b6d4;--resource-bg-light: #f8fafc;--resource-bg-card: #ffffff;--resource-border: #e2e8f0;--resource-text: #1e293b;--resource-text-light: #64748b;--resource-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--resource-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--resource-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--resource-radius-sm: .375rem;--resource-radius-md: .5rem;--resource-radius-lg: .75rem}.resource-modal-container{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem}.resource-modal-content{background:var(--resource-bg-card);border-radius:var(--resource-radius-lg);box-shadow:var(--resource-shadow-lg);max-width:90vw;max-height:95vh;width:100%;overflow-y:auto;position:relative;animation:resource-fade-in .3s ease-out}.resource-modal-header{padding:1.5rem;border-bottom:1px solid var(--resource-border);background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:var(--resource-radius-lg) var(--resource-radius-lg) 0 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.resource-modal-title{font-size:1.5rem;font-weight:700;color:var(--resource-text);margin:0;line-height:1.2}.resource-modal-subtitle{color:var(--resource-text-light);margin:.25rem 0 0;font-size:.875rem;line-height:1.4}.resource-modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--resource-text-light);cursor:pointer;padding:.5rem;border-radius:var(--resource-radius-sm);transition:all .2s ease}.resource-modal-close:hover{background:#0000000d;color:var(--resource-text)}.resource-modal-body{padding:1.5rem}.resource-section{background:var(--resource-bg-light);border-radius:var(--resource-radius-md);padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--resource-border)}.resource-section-title{font-size:1.125rem;font-weight:600;color:var(--resource-text);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.resource-section-title svg{width:1.125rem;height:1.125rem}.resource-grid{display:grid;gap:1rem}.resource-grid-2{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.resource-grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.resource-label{font-size:.875rem;color:var(--resource-text-light);margin-bottom:.25rem;display:block;font-weight:500}.resource-field{font-size:.875rem;color:var(--resource-text);line-height:1.4}.resource-detail-card{background:var(--resource-bg-card);border-radius:var(--resource-radius-md);padding:1rem;margin-bottom:1rem;border:1px solid var(--resource-border);transition:all .2s ease}.resource-detail-card:hover{border-color:var(--resource-primary);box-shadow:var(--resource-shadow-sm)}.resource-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--resource-border);margin-top:1.5rem}.resource-btn{padding:.75rem 1.5rem;border-radius:var(--resource-radius-md);font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.5rem}.resource-btn-primary{background:var(--resource-primary);color:#fff}.resource-btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:var(--resource-shadow-md)}.resource-btn-secondary{background:transparent;color:var(--resource-text-light);border:1px solid var(--resource-border)}.resource-btn-secondary:hover{background:var(--resource-bg-light);color:var(--resource-text)}.resource-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.resource-status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:var(--resource-radius-md);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.resource-status-active{background:#d1fae5;color:#065f46}.resource-status-inactive{background:#f3f4f6;color:#6b7280}.resource-status-archived{background:#fee2e2;color:#991b1b}.resource-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.resource-stat-card{background:var(--resource-bg-card);border-radius:var(--resource-radius-md);padding:1rem;text-align:center;border:1px solid var(--resource-border)}.resource-stat-value{font-size:1.875rem;font-weight:700;line-height:1;margin-bottom:.25rem}.resource-stat-label{font-size:.75rem;color:var(--resource-text-light);text-transform:uppercase;letter-spacing:.05em}.resource-stat-blue .resource-stat-value{color:var(--resource-primary)}.resource-stat-green .resource-stat-value{color:var(--resource-success)}.resource-stat-purple .resource-stat-value{color:#8b5cf6}.resource-stat-orange .resource-stat-value{color:var(--resource-warning)}.resource-bg-info{background:#06b6d41a;border-color:#06b6d433}.resource-bg-success{background:#10b9811a;border-color:#10b98133}.resource-bg-warning{background:#f59e0b1a;border-color:#f59e0b33}.resource-avatar{width:4rem;height:4rem;border-radius:50%;background:var(--resource-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff;margin:0 auto}.resource-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}@keyframes resource-fade-in{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes resource-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.resource-fade-in{animation:resource-fade-in .3s ease-out}.resource-slide-in{animation:resource-slide-in .3s ease-out}@media (max-width: 768px){.resource-modal-container{padding:.5rem}.resource-modal-content{margin:.5rem;max-width:calc(100vw - 1rem)}.resource-modal-header,.resource-modal-body,.resource-section{padding:1rem}.resource-grid-2,.resource-grid-3{grid-template-columns:1fr}.resource-stats-grid{grid-template-columns:repeat(2,1fr)}.resource-actions{flex-direction:column}.resource-btn{width:100%;justify-content:center}}@media (max-width: 480px){.resource-stats-grid{grid-template-columns:1fr}.resource-modal-title{font-size:1.25rem}.resource-section-title{font-size:1rem}}.resource-loading{opacity:.6;pointer-events:none}.resource-loading:after{content:"";position:absolute;inset:0;background:#fffc;display:flex;align-items:center;justify-content:center}.resource-text-center{text-align:center}.resource-text-left{text-align:left}.resource-text-right{text-align:right}.resource-mt-2{margin-top:.5rem}.resource-mb-2{margin-bottom:.5rem}.resource-ml-2{margin-left:.5rem}.resource-mr-2{margin-right:.5rem}.resource-p-2{padding:.5rem}.resource-p-4{padding:1rem}.client-documents-panel{padding:20px;background:#f9fafb;border-radius:8px}.panel-header{margin-bottom:24px}.panel-header h3{font-size:20px;color:#1f2937;margin:0 0 4px}.panel-subtitle{font-size:14px;color:#6b7280;margin:0}.alert{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:14px;position:relative}.alert-close{margin-left:auto;background:none;border:none;font-size:20px;cursor:pointer;padding:0 4px;color:inherit;opacity:.7;transition:opacity .2s}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:32px}.document-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s}.document-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-color:#d1d5db}.document-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.document-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1f2937}.document-title svg{color:#10b981}.document-description{font-size:13px;color:#6b7280;margin:0 0 16px;line-height:1.5}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.status-icon{flex-shrink:0}.status-icon.success{color:#059669}.status-icon.warning{color:#f59e0b}.status-icon.info{color:#3b82f6}.document-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-action{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-generate{background:#10b981;color:#fff;flex:1}.btn-generate:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.btn-view{background:#f3f4f6;color:#374151}.btn-view:hover{background:#e5e7eb}.btn-download{background:#3b82f6;color:#fff}.btn-download:hover{background:#2563eb}.btn-email{background:#8b5cf6;color:#fff}.btn-email:hover:not(:disabled){background:#7c3aed}.document-meta{margin-top:12px;padding-top:12px;border-top:1px solid #f3f4f6}.document-meta small{color:#9ca3af;font-size:12px}.documents-list-section{margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.documents-list-section h4{font-size:16px;color:#1f2937;margin:0 0 16px}.documents-list{display:flex;flex-direction:column;gap:12px}.document-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:all .2s}.document-list-item:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000001a}.document-info{display:flex;align-items:center;gap:12px;flex:1}.document-info svg{color:#10b981;flex-shrink:0}.document-name{font-weight:500;color:#1f2937;font-size:14px}.document-date small{color:#9ca3af;font-size:12px}.document-status{margin-left:16px}.client-docs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 768px){.client-documents-panel{padding:12px}.documents-grid{grid-template-columns:1fr;gap:12px}.document-card{padding:16px}.document-actions{flex-direction:column}.btn-action{width:100%;justify-content:center}.document-list-item{flex-direction:column;align-items:flex-start;gap:12px}.document-status{margin-left:0;width:100%}}.enrichment-modal-overlay{position:fixed;inset:0;background-color:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.enrichment-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:700px;width:100%;max-height:90vh;display:flex;flex-direction:column}.dark .enrichment-modal{background:#1f2937}.enrichment-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb}.dark .enrichment-modal-header{border-bottom-color:#374151}.enrichment-modal-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 4px}.dark .enrichment-modal-header h2{color:#f9fafb}.enrichment-modal-header p{font-size:.875rem;color:#6b7280;margin:0}.dark .enrichment-modal-header p{color:#9ca3af}.enrichment-close-button{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:#6b7280;transition:all .2s}.enrichment-close-button:hover{background-color:#f3f4f6;color:#1f2937}.dark .enrichment-close-button:hover{background-color:#374151;color:#f9fafb}.enrichment-modal-body{flex:1;overflow-y:auto;padding:24px}.enrichment-info-banner{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:20px}.dark .enrichment-info-banner{background-color:#3b82f61a;border-color:#3b82f64d}.enrichment-info-banner svg{flex-shrink:0;color:#3b82f6;margin-top:2px}.enrichment-info-banner p{margin:0;font-size:.875rem;color:#1e40af;line-height:1.5}.dark .enrichment-info-banner p{color:#93c5fd}.enrichment-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.enrichment-toggle-all{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.dark .enrichment-toggle-all{background:#374151;border-color:#4b5563;color:#d1d5db}.enrichment-toggle-all:hover{background-color:#f9fafb;border-color:#3b82f6}.dark .enrichment-toggle-all:hover{background-color:#4b5563}.enrichment-selected-count{font-size:.875rem;color:#6b7280;font-weight:500}.dark .enrichment-selected-count{color:#9ca3af}.enrichment-categories{display:flex;flex-direction:column;gap:12px}.enrichment-category{padding:16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.dark .enrichment-category{background:#374151;border-color:#4b5563}.enrichment-category:hover:not(.disabled){border-color:#3b82f6;background-color:#f9fafb}.dark .enrichment-category:hover:not(.disabled){background-color:#4b5563}.enrichment-category.selected{border-color:#3b82f6;background-color:#eff6ff}.dark .enrichment-category.selected{background-color:#3b82f61a}.enrichment-category.disabled{opacity:.5;cursor:not-allowed}.enrichment-category-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.enrichment-category-header input[type=checkbox]{width:18px;height:18px;cursor:pointer}.enrichment-category-header input[type=checkbox]:disabled{cursor:not-allowed}.enrichment-category-icon{color:#3b82f6;flex-shrink:0}.enrichment-category-label{font-weight:600;color:#1f2937;font-size:.9375rem;flex:1}.dark .enrichment-category-label{color:#f9fafb}.enrichment-no-data{font-size:.75rem;color:#ef4444;background-color:#fee2e2;padding:2px 8px;border-radius:4px;font-weight:500}.dark .enrichment-no-data{background-color:#ef444433;color:#fca5a5}.enrichment-category-description{margin:0;padding-left:42px;font-size:.8125rem;color:#6b7280;line-height:1.5}.dark .enrichment-category-description{color:#9ca3af}.enrichment-modal-footer{border-top:1px solid #e5e7eb;padding:20px 24px;background-color:#f9fafb;display:flex;justify-content:flex-end;gap:12px;border-radius:0 0 12px 12px}.dark .enrichment-modal-footer{border-top-color:#374151;background-color:#111827}.enrichment-btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.enrichment-btn:disabled{opacity:.5;cursor:not-allowed}.enrichment-btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.dark .enrichment-btn-secondary{background-color:#374151;color:#d1d5db;border-color:#4b5563}.enrichment-btn-secondary:hover:not(:disabled){background-color:#f9fafb}.dark .enrichment-btn-secondary:hover:not(:disabled){background-color:#4b5563}.enrichment-btn-primary{background-color:#3b82f6;color:#fff}.enrichment-btn-primary:hover:not(:disabled){background-color:#2563eb}@media (max-width: 768px){.enrichment-modal{max-width:95%;max-height:95vh}.enrichment-modal-header,.enrichment-modal-body,.enrichment-modal-footer{padding:16px}.enrichment-actions{flex-direction:column;align-items:stretch;gap:12px}.enrichment-toggle-all{width:100%}.enrichment-selected-count{text-align:center}.enrichment-modal-footer{flex-direction:column}.enrichment-btn{width:100%;justify-content:center}}.assessment-wizard-container{display:flex;flex-direction:column;height:95vh;max-height:95vh;background:#fff;border-radius:12px;overflow:hidden}.dark .assessment-wizard-container{background:#1f2937}.assessment-wizard-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dark .assessment-wizard-header{border-bottom-color:#374151}.assessment-wizard-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0;display:flex;align-items:center;gap:12px}.dark .assessment-wizard-header h2{color:#f9fafb}.assessment-wizard-close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.assessment-wizard-close-button:hover{background-color:#f3f4f6;color:#1f2937}.dark .assessment-wizard-close-button:hover{background-color:#374151;color:#f9fafb}.assessment-stepper{padding:24px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;overflow-x:auto}.dark .assessment-stepper{background-color:#111827;border-bottom-color:#374151}.assessment-stepper-wrapper{display:flex;justify-content:space-between;align-items:center;min-width:800px}.assessment-step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;cursor:pointer;transition:all .3s}.assessment-step:not(:last-child):after{content:"";position:absolute;top:20px;left:60%;right:-40%;height:2px;background-color:#e5e7eb;z-index:1}.dark .assessment-step:not(:last-child):after{background-color:#374151}.assessment-step.completed:not(:last-child):after,.assessment-step.active:not(:last-child):after{background-color:#3b82f6}.assessment-step-number{width:40px;height:40px;border-radius:50%;background-color:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;margin-bottom:8px;position:relative;z-index:2;transition:all .3s}.dark .assessment-step-number{background-color:#374151;color:#9ca3af}.assessment-step.active .assessment-step-number{background-color:#3b82f6;color:#fff;transform:scale(1.1)}.assessment-step.completed .assessment-step-number{background-color:#10b981;color:#fff}.assessment-step-label{font-size:.75rem;color:#6b7280;font-weight:500;text-align:center;transition:all .3s;max-width:100px}.dark .assessment-step-label{color:#9ca3af}.assessment-step.active .assessment-step-label{color:#3b82f6;font-weight:600}.dark .assessment-step.active .assessment-step-label{color:#60a5fa}.assessment-step.completed .assessment-step-label{color:#10b981}.dark .assessment-step.completed .assessment-step-label{color:#34d399}.assessment-progress-info{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background-color:#eff6ff;border-bottom:1px solid #e5e7eb}.dark .assessment-progress-info{background-color:#3b82f61a;border-bottom-color:#374151}.assessment-progress-text{display:flex;align-items:center;gap:12px;color:#1e40af;font-weight:500;font-size:.875rem}.dark .assessment-progress-text{color:#93c5fd}.assessment-progress-bar{flex:1;height:8px;background-color:#dbeafe;border-radius:4px;overflow:hidden;max-width:300px;margin:0 20px}.dark .assessment-progress-bar{background-color:#3b82f633}.assessment-progress-fill{height:100%;background-color:#3b82f6;transition:width .5s ease}.assessment-auto-save-indicator{display:flex;align-items:center;gap:6px;color:#059669;font-size:.75rem}.dark .assessment-auto-save-indicator{color:#34d399}.assessment-auto-save-indicator.saving{color:#f59e0b}.dark .assessment-auto-save-indicator.saving{color:#fbbf24}.assessment-wizard-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px;min-height:0}.assessment-section-content{max-width:1000px;margin:0 auto}.assessment-section-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 8px}.dark .assessment-section-title{color:#f9fafb}.assessment-section-description{color:#6b7280;margin-bottom:24px;line-height:1.6}.dark .assessment-section-description{color:#9ca3af}.assessment-form-group{margin-bottom:24px}.assessment-form-group label{display:block;font-weight:500;color:#374151;margin-bottom:8px;font-size:.875rem}.dark .assessment-form-group label{color:#d1d5db}.assessment-form-control{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s;background-color:#fff;color:#1f2937}.dark .assessment-form-control{background-color:#374151;border-color:#4b5563;color:#f9fafb}.assessment-form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-form-control:disabled{background-color:#f3f4f6;cursor:not-allowed}.dark .assessment-form-control:disabled{background-color:#1f2937}textarea.assessment-form-control{min-height:100px;resize:vertical}.assessment-checkbox-group{display:flex;flex-direction:column;gap:12px}.assessment-checkbox-label{display:flex;align-items:center;gap:10px;padding:10px;border-radius:6px;cursor:pointer;transition:all .2s}.assessment-checkbox-label:hover{background-color:#f9fafb}.dark .assessment-checkbox-label:hover{background-color:#374151}.assessment-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.assessment-radio-group{display:flex;flex-wrap:wrap;gap:12px}.assessment-radio-label{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s}.dark .assessment-radio-label{border-color:#4b5563}.assessment-radio-label:hover{background-color:#f9fafb;border-color:#3b82f6}.dark .assessment-radio-label:hover{background-color:#374151}.assessment-radio-label input[type=radio]:checked+span{font-weight:600;color:#3b82f6}.assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.assessment-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.assessment-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.875rem}.assessment-table th,.assessment-table td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb;color:#1f2937}.dark .assessment-table th,.dark .assessment-table td{border-bottom-color:#374151;color:#f3f4f6}.assessment-table th{background-color:#f9fafb;font-weight:600;color:#374151}.dark .assessment-table th{background-color:#1f2937;color:#d1d5db}.assessment-table tbody tr:hover{background-color:#f9fafb}.dark .assessment-table tbody tr:hover{background-color:#1f2937}.assessment-table input[type=radio]{cursor:pointer}.activity-label-cell{padding:12px!important;text-align:left!important;font-weight:500!important;min-width:200px!important;max-width:300px!important;color:#1f2937!important;background-color:transparent!important}.dark .activity-label-cell{color:#f3f4f6!important}.activity-label-text{display:inline-block;color:inherit;font-size:.875rem;line-height:1.5}.assessment-info-card{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:16px;margin-bottom:24px}.dark .assessment-info-card{background-color:#3b82f61a;border-color:#3b82f64d}.assessment-info-card p{margin:8px 0;color:#1e40af;font-size:.875rem;line-height:1.6}.dark .assessment-info-card p{color:#93c5fd}.assessment-wizard-footer{border-top:1px solid #e5e7eb;padding:16px 24px;background-color:#f9fafb}.dark .assessment-wizard-footer{border-top-color:#374151;background-color:#111827}.assessment-footer-buttons{display:flex;justify-content:space-between;gap:12px}.assessment-footer-left,.assessment-footer-right{display:flex;gap:12px}.assessment-btn{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.assessment-btn:disabled{opacity:.5;cursor:not-allowed}.assessment-btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.dark .assessment-btn-secondary{background-color:#374151;color:#d1d5db;border-color:#4b5563}.assessment-btn-secondary:hover:not(:disabled){background-color:#f9fafb}.dark .assessment-btn-secondary:hover:not(:disabled){background-color:#4b5563}.assessment-btn-primary{background-color:#3b82f6;color:#fff}.assessment-btn-primary:hover:not(:disabled){background-color:#2563eb}.assessment-btn-success{background-color:#10b981;color:#fff}.assessment-btn-success:hover:not(:disabled){background-color:#059669}@media (max-width: 768px){.assessment-wizard-header,.assessment-stepper{padding:16px}.assessment-stepper-wrapper{min-width:600px}.assessment-step-label{font-size:.65rem;max-width:80px}.assessment-wizard-body{padding:16px}.assessment-grid-2{grid-template-columns:1fr}.assessment-footer-buttons{flex-direction:column}.assessment-footer-left,.assessment-footer-right{width:100%}.assessment-btn{width:100%;justify-content:center}}.assessment-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;transition:all .2s}.assessment-badge-small{padding:2px 8px;font-size:.7rem;gap:4px}.assessment-badge-medium{padding:4px 10px;font-size:.75rem;gap:6px}.assessment-badge-large{padding:6px 12px;font-size:.875rem;gap:8px}.assessment-badge-completed{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.assessment-badge-in-progress{background-color:#fef3c7;color:#92400e;border:1px solid #f59e0b}.assessment-badge-not-started{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.assessment-badge-label{white-space:nowrap}.dark .assessment-badge-completed{background-color:#10b98133;color:#6ee7b7;border-color:#10b98166}.dark .assessment-badge-in-progress{background-color:#f59e0b33;color:#fbbf24;border-color:#f59e0b66}.dark .assessment-badge-not-started{background-color:#6b728033;color:#9ca3af;border-color:#6b728066}.legal-documents-manager{min-height:100vh;background-color:#f8fafc}.dark .legal-documents-manager{background-color:#111827}.documents-header h2{font-size:1.875rem;font-weight:700;color:#1a202c;margin:0;line-height:1.2}.dark .documents-header h2{color:#f9fafb}.documents-header p{color:#718096;margin:.25rem 0 0;font-size:.875rem}.dark .documents-header p{color:#9ca3af}.client-selector{max-width:500px;margin:0 auto 2rem}.search-container{position:relative;margin-bottom:1rem}.search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .2s;background-color:#fff;color:#1a202c}.dark .search-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark .search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.search-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.client-list{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;max-height:300px;overflow-y:auto;box-shadow:0 4px 6px -1px #0000001a}.dark .client-list{background:#1f2937;border-color:#374151;box-shadow:0 4px 6px -1px #0000004d}.no-clients{padding:2rem;text-align:center;color:#6b7280}.dark .no-clients{color:#9ca3af}.clients-grid{display:grid;gap:.5rem;padding:.5rem}.client-card{display:flex;align-items:center;padding:.75rem;border-radius:.5rem;cursor:pointer;transition:all .2s;border:1px solid transparent}.dark .client-card{background-color:transparent}.client-card:hover{background-color:#f3f4f6;border-color:#d1d5db}.dark .client-card:hover{background-color:#374151;border-color:#4b5563}.client-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;margin-right:1rem;font-size:.875rem}.client-info{flex:1}.client-info strong{display:block;color:#1f2937;font-size:.875rem}.dark .client-info strong{color:#f9fafb}.client-info small{display:block;color:#6b7280;font-size:.75rem;margin-top:.125rem}.dark .client-info small{color:#9ca3af}.client-selector-overlay{position:fixed;inset:0;background:transparent;z-index:10}.documents-layout{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:300px 1fr;gap:2rem;min-height:600px}.documents-sidebar{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden}.dark .documents-sidebar{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.sidebar-section{padding:1.5rem;border-bottom:1px solid #e5e7eb}.dark .sidebar-section{border-bottom-color:#374151}.sidebar-section:last-child{border-bottom:none}.sidebar-section h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.dark .sidebar-section h3{color:#f9fafb}.document-types{display:flex;flex-direction:column;gap:.75rem}.document-type-btn{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;cursor:pointer;transition:all .2s;text-align:left}.dark .document-type-btn{background:#374151;border-color:#4b5563}.document-type-btn:hover{border-color:#d1d5db;background-color:#f9fafb}.dark .document-type-btn:hover{border-color:#6b7280;background-color:#4b5563}.document-type-btn:disabled{opacity:.6;cursor:not-allowed}.document-icon{font-size:1.25rem;margin-top:.125rem}.document-info strong{display:block;font-size:.875rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.dark .document-info strong{color:#f9fafb}.document-info small{font-size:.75rem;color:#6b7280;line-height:1.4}.dark .document-info small{color:#9ca3af}.no-documents{text-align:center;padding:2rem;color:#6b7280}.dark .no-documents{color:#9ca3af}.documents-list{display:flex;flex-direction:column;gap:.75rem}.document-item{padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#f9fafb;transition:all .2s}.dark .document-item{background:#374151;border-color:#4b5563}.document-item:hover{border-color:#d1d5db;background-color:#f3f4f6}.dark .document-item:hover{border-color:#6b7280;background-color:#4b5563}.document-item.active{background-color:#eff6ff;border-color:#3b82f6;border-left:4px solid #3b82f6}.dark .document-item.active{background-color:#1e3a5f;border-color:#60a5fa;border-left-color:#60a5fa}.document-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.document-name{font-weight:500;font-size:.875rem;color:#1f2937;cursor:pointer;flex:1}.dark .document-name{color:#f9fafb}.document-meta{font-size:.75rem;color:#6b7280}.dark .document-meta{color:#9ca3af}.status-blue{background-color:#dbeafe;color:#1e40af}.document-viewer{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;display:flex;flex-direction:column}.dark .document-viewer{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.viewer-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.dark .viewer-header{border-bottom-color:#374151;background:#111827}.document-info{display:flex;justify-content:space-between;align-items:flex-start}.document-info h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dark .document-info h3{color:#f9fafb}.document-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.document-content{flex:1;padding:0}.document-iframe{width:100%;height:100%;border:none;background:#fff}.dark .document-iframe{background:#111827}.no-document-selected{flex:1;display:flex;align-items:center;justify-content:center;padding:3rem}.btn-primary,.btn-secondary,.btn-warning,.btn-success{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-warning{background-color:#fed7aa;color:#9a3412;border:1px solid #fdba74}.btn-success{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.signature-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:90vh;overflow:hidden}.dark .signature-modal{background:#1f2937;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280}.close-btn:hover{color:#374151}.signature-instructions{margin-bottom:1.5rem}.signature-instructions p{color:#6b7280;margin:0}.dark .signature-instructions p{color:#9ca3af}.signature-canvas-container{border:2px dashed #d1d5db;border-radius:.5rem;padding:1rem;margin-bottom:1.5rem;text-align:center}.dark .signature-canvas-container{border-color:#4b5563}.signature-canvas{border:1px solid #e5e7eb;border-radius:.25rem;background:#fff;cursor:crosshair}.dark .signature-canvas{border-color:#374151;background:#111827}.clear-signature{background:none;border:1px solid #d1d5db;color:#6b7280;padding:.5rem 1rem;border-radius:.25rem;cursor:pointer;margin-top:1rem;font-size:.875rem}.clear-signature:hover{background-color:#f3f4f6}.signature-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem}@media (max-width: 768px){.documents-header{padding:1rem}.documents-layout{grid-template-columns:1fr;padding:1rem}.placeholder-features{grid-template-columns:1fr}.document-info{flex-direction:column;gap:1rem}.document-actions{justify-content:center}.signature-modal{width:95%;margin:1rem}.signature-actions{flex-direction:column}}.btn-primary:focus,.btn-secondary:focus,.btn-warning:focus,.btn-success:focus,.search-input:focus,.document-type-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.client-contracts-manager{min-height:100vh;background-color:#f8fafc}.dark .client-contracts-manager{background-color:#111827}.contracts-header{background:#fff;border-bottom:1px solid #e2e8f0;padding:1.5rem 2rem;box-shadow:0 1px 3px #0000001a}.dark .contracts-header{background:#1f2937;border-bottom-color:#374151;box-shadow:0 1px 3px #0000004d}.contracts-header h2{font-size:1.875rem;font-weight:700;color:#1a202c;margin:0;line-height:1.2}.dark .contracts-header h2{color:#f9fafb}.contracts-header p{color:#718096;margin:.25rem 0 0;font-size:.875rem}.dark .contracts-header p{color:#9ca3af}.header-actions{display:flex;align-items:center;gap:1rem}.no-client-selected{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;height:100%;display:flex;align-items:center;justify-content:center;margin:2rem}.dark .no-client-selected{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.placeholder-content{text-align:center;padding:3rem}.placeholder-content h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.dark .placeholder-content h3{color:#f9fafb}.placeholder-content p{color:#6b7280;margin-bottom:2rem}.dark .placeholder-content p{color:#9ca3af}.placeholder-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;max-width:800px;margin:0 auto}.feature{background:#f9fafb;padding:1.5rem;border-radius:.75rem;text-align:center}.dark .feature{background:#374151}.feature-icon{font-size:2rem;margin-bottom:1rem}.feature strong{display:block;color:#1f2937;margin-bottom:.5rem;font-size:1rem}.dark .feature strong{color:#f9fafb}.feature p{color:#6b7280;font-size:.875rem;margin:0}.dark .feature p{color:#9ca3af}.contracts-content{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:2fr 1fr;gap:2rem}.contracts-list{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem}.dark .contracts-list{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.contracts-list h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 1.5rem}.dark .contracts-list h3{color:#f9fafb}.loading{text-align:center;padding:2rem;color:#6b7280}.dark .loading{color:#9ca3af}.no-contracts{text-align:center;padding:3rem;color:#6b7280}.dark .no-contracts{color:#9ca3af}.contracts-grid{display:grid;gap:1rem}.contract-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;transition:all .2s}.dark .contract-card{background:#374151;border-color:#4b5563}.contract-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000000d}.dark .contract-card:hover{border-color:#6b7280;box-shadow:0 4px 6px -1px #0000004d}.contract-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.contract-header h4{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.dark .contract-header h4{color:#f9fafb}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-gray{background-color:#f3f4f6;color:#374151}.status-green{background-color:#dcfce7;color:#166534}.status-orange{background-color:#fed7aa;color:#9a3412}.status-red{background-color:#fee2e2;color:#991b1b}.status-purple{background-color:#f3e8ff;color:#7c3aed}.contract-details{margin-bottom:1rem}.detail{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.dark .detail{border-bottom-color:#4b5563}.detail:last-child{border-bottom:none}.detail strong{color:#374151;font-size:.875rem}.dark .detail strong{color:#f9fafb}.detail span{color:#6b7280;font-size:.875rem}.dark .detail span{color:#9ca3af}.contract-actions{display:flex;gap:.5rem;flex-wrap:wrap}.contracts-summary{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem}.dark .contracts-summary{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.contracts-summary h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 1.5rem}.dark .contracts-summary h3{color:#f9fafb}.summary-cards{display:grid;gap:1rem;margin-bottom:2rem}.summary-card{background:#f9fafb;border-radius:.75rem;padding:1.5rem;text-align:center}.dark .summary-card{background:#374151}.card-value{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.dark .card-value{color:#f9fafb}.card-label{font-size:.875rem;color:#6b7280}.dark .card-label{color:#9ca3af}.renewal-alerts{background:#fef3c7;border:1px solid #fbbf24;border-radius:.75rem;padding:1.5rem}.renewal-alerts h4{font-size:1rem;font-weight:600;color:#92400e;margin:0 0 1rem}.renewal-alerts p{color:#92400e;margin:0;font-size:.875rem}.renewal-alerts ul{list-style:none;padding:0;margin:0}.renewal-alerts li{color:#92400e;font-size:.875rem;padding:.5rem 0;border-bottom:1px solid #fbbf24}.renewal-alerts li:last-child{border-bottom:none}.btn-primary,.btn-secondary{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.dark .btn-secondary{background-color:#374151;color:#f9fafb;border-color:#4b5563}.btn-secondary:hover{background-color:#e5e7eb}.dark .btn-secondary:hover{background-color:#4b5563}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:90vh;overflow:hidden}.dark .modal{background:#1f2937;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}.modal-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb;display:flex;justify-content:space-between;align-items:center}.dark .modal-header{border-bottom-color:#374151;background:#111827}.modal-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dark .modal-header h3{color:#f9fafb}.modal-header button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280}.modal-header button:hover{color:#374151}.modal-content{padding:1.5rem;max-height:60vh;overflow-y:auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.dark .form-group label{color:#f9fafb}.form-group select,.form-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .2s;background-color:#fff;color:#1a202c}.dark .form-group select,.dark .form-group input{background-color:#374151;border-color:#4b5563;color:#f9fafb}.form-group select:focus,.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark .form-group select:focus,.dark .form-group input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem}@media (max-width: 768px){.contracts-header{padding:1rem}.contracts-content{grid-template-columns:1fr;padding:1rem}.placeholder-features{grid-template-columns:1fr}.contract-header{flex-direction:column;gap:.5rem}.contract-actions{justify-content:center}.modal{width:95%;margin:1rem}.modal-actions{flex-direction:column}}.btn-primary:focus,.btn-secondary:focus,.form-group select:focus,.form-group input:focus{outline:2px solid #3b82f6;outline-offset:2px}.generic-documents-manager{min-height:100vh;background-color:#f8fafc}.dark .generic-documents-manager{background-color:#111827}.documents-header{background:#fff;border-bottom:1px solid #e2e8f0;padding:1.5rem 2rem;box-shadow:0 1px 3px #0000001a}.dark .documents-header{background:#1f2937;border-bottom-color:#374151;box-shadow:0 1px 3px #0000004d}.header-content{max-width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-text{flex:1;min-width:300px}.header-text h2{font-size:1.875rem;font-weight:700;color:#1a202c;margin:0;line-height:1.2}.dark .header-text h2{color:#f9fafb}.header-text p{color:#718096;margin:.25rem 0 0;font-size:.875rem}.dark .header-text p{color:#9ca3af}.documents-layout{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:300px 1fr;gap:2rem;min-height:600px}.document-list-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.dark .document-list-container{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.document-list-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.dark .document-list-header{border-bottom-color:#374151;background:#111827}.document-list-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dark .document-list-header h3{color:#f9fafb}.document-list-content{padding:1rem}.document-list-loading{display:flex;justify-content:center;align-items:center;padding:2rem}.document-list-empty{text-align:center;padding:2rem;color:#6b7280}.dark .document-list-empty{color:#9ca3af}.document-list-items{display:flex;flex-direction:column;gap:.5rem}.document-item{padding:.75rem;border-radius:.5rem;cursor:pointer;transition:all .2s;background-color:#f9fafb}.dark .document-item{background-color:#374151}.document-item:hover{background-color:#f3f4f6}.dark .document-item:hover{background-color:#4b5563}.document-item.selected{background-color:#eff6ff;border-left:4px solid #3b82f6}.dark .document-item.selected{background-color:#1e3a5f;border-left-color:#60a5fa}.document-item-header{display:flex;justify-content:space-between;align-items:flex-start}.document-item-content{flex:1}.document-item-name{font-weight:500;font-size:.875rem;color:#1f2937}.dark .document-item-name{color:#f9fafb}.document-item-description{font-size:.75rem;color:#6b7280;margin-top:.25rem}.dark .document-item-description{color:#9ca3af}.document-item-version{font-size:.75rem;background-color:#dbeafe;color:#1e40af;padding:.25rem .5rem;border-radius:9999px}.dark .document-item-version{background-color:#1e3a5f;color:#93c5fd}.document-item-date{font-size:.75rem;color:#9ca3af;margin-top:.5rem}.dark .document-item-date{color:#6b7280}.document-viewer-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;height:100%;display:flex;flex-direction:column}.dark .document-viewer-container{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.document-viewer-header{padding:1.5rem;border-bottom:1px solid #e5e7eb}.dark .document-viewer-header{border-bottom-color:#374151}.document-viewer-title{display:flex;justify-content:space-between;align-items:flex-start}.document-viewer-info h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.dark .document-viewer-info h3{color:#f9fafb}.document-viewer-description{color:#6b7280;margin-top:.25rem}.dark .document-viewer-description{color:#9ca3af}.document-viewer-version{font-size:.875rem;color:#6b7280;background-color:#f3f4f6;padding:.5rem .75rem;border-radius:9999px}.dark .document-viewer-version{color:#9ca3af;background-color:#374151}.document-viewer-actions{padding:1.5rem;border-bottom:1px solid #e5e7eb}.dark .document-viewer-actions{border-bottom-color:#374151}.document-actions-container{display:flex;flex-wrap:wrap;gap:.5rem}.document-action-btn{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem;border:none}.document-action-btn.html{background-color:#f3f4f6;color:#374151}.dark .document-action-btn.html{background-color:#374151;color:#f9fafb}.document-action-btn.html:hover{background-color:#e5e7eb}.dark .document-action-btn.html:hover{background-color:#4b5563}.document-action-btn.pdf{background-color:#dbeafe;color:#1e40af}.dark .document-action-btn.pdf{background-color:#1e3a5f;color:#93c5fd}.document-action-btn.pdf:hover{background-color:#bfdbfe}.dark .document-action-btn.pdf:hover{background-color:#2d5a8f}.document-action-btn.print{background-color:#dcfce7;color:#166534}.dark .document-action-btn.print{background-color:#1e4620;color:#86efac}.document-action-btn.print:hover{background-color:#bbf7d0}.dark .document-action-btn.print:hover{background-color:#2d6a30}.document-action-btn.edit{background-color:#3b82f6;color:#fff}.dark .document-action-btn.edit{background-color:#2563eb;color:#fff}.document-action-btn.edit:hover{background-color:#2563eb}.dark .document-action-btn.edit:hover{background-color:#1d4ed8}.document-action-btn.reset{background-color:#fed7aa;color:#9a3412}.dark .document-action-btn.reset{background-color:#7c2d12;color:#fed7aa}.document-action-btn.reset:hover{background-color:#fdba74}.dark .document-action-btn.reset:hover{background-color:#9a3412}.document-viewer-content{flex:1;padding:1.5rem}.document-preview-container{background-color:#f9fafb;border-radius:.5rem;height:100%;overflow:hidden}.dark .document-preview-container{background-color:#111827}.document-preview-iframe{width:100%;height:100%;border:none;border-radius:.5rem}.document-viewer-empty{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;height:100%;display:flex;align-items:center;justify-content:center}.dark .document-viewer-empty{background:#1f2937;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.document-viewer-empty-content{text-align:center;padding:2rem}.document-viewer-empty-icon{font-size:4rem;margin-bottom:1rem}.document-viewer-empty-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.dark .document-viewer-empty-title{color:#f9fafb}.document-viewer-empty-description{color:#6b7280;margin-bottom:1.5rem}.dark .document-viewer-empty-description{color:#9ca3af}.document-viewer-empty-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;max-width:400px;margin:0 auto}.document-feature-card{background-color:#f9fafb;padding:1rem;border-radius:.5rem;text-align:center}.dark .document-feature-card{background-color:#374151}.document-feature-icon{font-size:1.5rem;margin-bottom:.5rem}.document-feature-title{font-size:.875rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.dark .document-feature-title{color:#f9fafb}.document-feature-description{font-size:.75rem;color:#6b7280}.dark .document-feature-description{color:#9ca3af}.loading-spinner{animation:spin 1s linear infinite}@media (max-width: 768px){.documents-header{padding:1rem}.header-content{flex-direction:column;align-items:stretch;gap:1rem}.header-text{min-width:auto;text-align:center}.header-text h2{font-size:1.5rem}.documents-layout{grid-template-columns:1fr;padding:0 1rem}.document-actions-container{justify-content:center}.document-viewer-empty-features{grid-template-columns:1fr}}.loading{opacity:.6;pointer-events:none}.document-action-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.messaging-container{display:flex;flex-direction:column;height:100%;background-color:#f8fafc;overflow:hidden;position:relative}.dark .messaging-container{background-color:#111827}.messaging-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.dark .messaging-header{background:#1f2937;border-bottom:1px solid #374151;box-shadow:0 1px 3px #0000004d}.messaging-title{display:flex;align-items:center;gap:.75rem}.dark .messaging-title svg{color:#60a5fa}.messaging-title h1{font-size:1.5rem;font-weight:600;color:#1a202c;margin:0}.dark .messaging-title h1{color:#f9fafb}.messaging-badges{display:flex;gap:.5rem}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .375rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.badge-internal{background-color:#3b82f6}.badge-client{background-color:#10b981}.badge-group{background-color:#8b5cf6}.btn-new-conversation{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-new-conversation:hover,.dark .btn-new-conversation{background-color:#2563eb}.dark .btn-new-conversation:hover{background-color:#1d4ed8}.messaging-content{display:flex;flex:1;overflow:hidden;position:relative;height:calc(100% - 80px)}.conversations-sidebar{width:350px;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden}.dark .conversations-sidebar{background:#1f2937;border-right:1px solid #374151}.tabs-section{padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0}.dark .tabs-section{border-bottom:1px solid #374151}.tabs-container{display:flex;background-color:#f8fafc;border-radius:.5rem;padding:.25rem;gap:.25rem}.dark .tabs-container{background-color:#374151}.tab-button{display:flex;align-items:center;justify-content:center;gap:.5rem;flex:1;padding:.5rem .75rem;background:none;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.tab-button:hover{background-color:#f1f5f9;color:#374151}.dark .tab-button{color:#9ca3af}.dark .tab-button:hover{background-color:#4b5563;color:#d1d5db}.tab-button.active{background-color:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.dark .tab-button.active{background-color:#1f2937;color:#60a5fa}.search-container{position:relative;padding:1rem;border-bottom:1px solid #e2e8f0}.dark .search-container{border-bottom:1px solid #374151}.search-icon{position:absolute;left:1.75rem;top:50%;transform:translateY(-50%);color:#64748b}.dark .search-icon{color:#9ca3af}.search-input{width:100%;padding:.5rem .5rem .5rem 2.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background-color:#f9fafb;color:#1a202c}.dark .search-input{background-color:#374151;border:1px solid #4b5563;color:#f9fafb}.search-input:focus{outline:none;border-color:#3b82f6;background-color:#fff}.dark .search-input:focus{border-color:#60a5fa;background-color:#4b5563}.dark .search-input::placeholder{color:#6b7280}.conversation-tabs{display:flex;border-bottom:1px solid #e2e8f0}.dark .conversation-tabs{border-bottom:1px solid #374151}.tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem .5rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.75rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s;white-space:nowrap}.tab:hover{background-color:#f8fafc;color:#374151}.dark .tab{color:#9ca3af}.dark .tab:hover{background-color:#374151;color:#d1d5db}.tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background-color:#eff6ff}.dark .tab.active{color:#60a5fa;border-bottom-color:#60a5fa;background-color:#3b82f61a}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:9999px;font-size:.75rem;font-weight:600;background-color:#ef4444;color:#fff}.group-badge{display:inline-block;margin-left:.5rem;padding:.125rem .375rem;background-color:#f3f4f6;border-radius:.75rem;font-size:.75rem;color:#6b7280;font-weight:500}.dark .group-badge{background-color:#374151;color:#9ca3af}.group-avatar{background-color:#8b5cf6!important}.dark .group-avatar{background-color:#7c3aed!important}.archive-filter{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0}.dark .archive-filter{border-bottom:1px solid #374151}.btn-archive{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem;background:none;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#64748b;cursor:pointer;transition:all .2s}.btn-archive:hover{background-color:#f9fafb;border-color:#9ca3af}.dark .btn-archive{border:1px solid #4b5563;color:#9ca3af}.dark .btn-archive:hover{background-color:#374151;border-color:#6b7280}.btn-archive.active{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.dark .btn-archive.active{background-color:#3b82f61a;border-color:#60a5fa;color:#60a5fa}.conversation-list{flex:1;overflow-y:auto}.conversation-item{display:flex;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background-color .2s}.conversation-item:hover{background-color:#f8fafc}.dark .conversation-item{border-bottom:1px solid #374151}.dark .conversation-item:hover{background-color:#374151}.conversation-item.active{background-color:#eff6ff;border-right:3px solid #3b82f6}.dark .conversation-item.active{background-color:#3b82f61a;border-right:3px solid #60a5fa}.conversation-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0;overflow:hidden;position:relative}.conversation-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.conversation-content{flex:1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.conversation-name{font-weight:600;color:#1a202c;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .conversation-name{color:#f9fafb}.conversation-time{font-size:.75rem;color:#64748b;white-space:nowrap}.dark .conversation-time{color:#9ca3af}.conversation-preview{font-size:.75rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.25rem}.dark .conversation-preview{color:#9ca3af}.message-read-status-preview{display:inline-flex;align-items:center;flex-shrink:0;margin-left:.25rem}.read-indicator-preview{color:#10b981}.sent-indicator-preview{color:#9ca3af}.dark .read-indicator-preview{color:#34d399}.dark .sent-indicator-preview{color:#6b7280}.conversation-unread{display:flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;border-radius:9999px;background-color:#ef4444;color:#fff;font-size:.75rem;font-weight:600}.chat-container{flex:1;display:flex;flex-direction:column;background:#fff}.dark .chat-container{background:#1f2937}.chat-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center;color:#64748b}.dark .chat-placeholder{color:#9ca3af}.placeholder-icon{color:#d1d5db;margin-bottom:1rem}.dark .placeholder-icon{color:#6b7280}.chat-placeholder h3{font-size:1.25rem;font-weight:600;color:#374151;margin-bottom:.5rem}.dark .chat-placeholder h3{color:#d1d5db}.chat-placeholder p{margin-bottom:1.5rem}.btn-start-conversation{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-start-conversation:hover,.dark .btn-start-conversation{background-color:#2563eb}.dark .btn-start-conversation:hover{background-color:#1d4ed8}.messaging-access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center}.messaging-icon-denied{color:#d1d5db;margin-bottom:1rem}.dark .messaging-icon-denied{color:#6b7280}.messaging-access-denied h2{font-size:1.5rem;font-weight:600;color:#374151;margin-bottom:.5rem}.dark .messaging-access-denied h2{color:#d1d5db}.messaging-access-denied p{color:#64748b}.dark .messaging-access-denied p{color:#9ca3af}.loading-container{display:flex;align-items:center;justify-content:center;padding:2rem;color:#64748b}.dark .loading-container{color:#9ca3af}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:#64748b}.dark .empty-state{color:#9ca3af}.empty-icon{color:#d1d5db;margin-bottom:1rem}.dark .empty-icon{color:#6b7280}.chat-interface{display:flex;flex-direction:column;height:100%;position:relative;min-height:0}@supports (-webkit-touch-callout: none){.chat-interface{height:-webkit-fill-available;min-height:-webkit-fill-available}.mobile-chat-view,.mobile-conversation-list{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;position:relative;overflow:hidden}.mobile-chat-container{height:100%!important;max-height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden}.mobile-chat-view .chat-interface{display:flex!important;flex-direction:column!important;height:100%!important;max-height:100%!important;min-height:0!important}.mobile-chat-view .messages-container{flex:1 1 auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;min-height:0!important;max-height:100%!important;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0))!important}.mobile-chat-view .message-input-container{flex-shrink:0!important;position:-webkit-sticky!important;position:sticky!important;bottom:0!important;left:0!important;right:0!important;z-index:1000!important;background:#fff!important;padding-bottom:env(safe-area-inset-bottom,0)!important;border-top:1px solid #e2e8f0!important}.dark .mobile-chat-view .message-input-container{background:#1f2937!important;border-top:1px solid #374151!important}.message-input{font-size:16px!important}.message-input-wrapper{position:relative;z-index:1001}}.mobile-chat-view,.mobile-conversation-list{height:100vh;height:100dvh;position:relative;overflow:hidden}.mobile-chat-container{display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden;position:relative}.mobile-chat-container .messages-container{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;max-height:100%}.mobile-chat-container .message-input-container{flex-shrink:0;position:-webkit-sticky;position:sticky;bottom:0;z-index:1000;background:#fff;border-top:1px solid #e2e8f0}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0}.dark .chat-header{background:#1f2937;border-bottom:1px solid #374151}.chat-header-info{display:flex;align-items:center;gap:.75rem}.chat-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;overflow:hidden;position:relative}.chat-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.chat-title{font-size:1rem;font-weight:600;color:#1a202c;margin:0}.dark .chat-title{color:#f9fafb}.chat-subtitle{font-size:.75rem;color:#64748b;margin:0}.dark .chat-subtitle{color:#9ca3af}.chat-actions{display:flex;gap:.5rem}.btn-archive-chat{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:none;border:1px solid #d1d5db;border-radius:.375rem;color:#64748b;cursor:pointer;transition:all .2s}.btn-archive-chat:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-group-management{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:none;border:1px solid #d1d5db;border-radius:.375rem;color:#64748b;cursor:pointer;transition:all .2s}.btn-group-management:hover{background-color:#f9fafb;border-color:#9ca3af}.dark .btn-group-management{border:1px solid #4b5563;color:#9ca3af}.dark .btn-group-management:hover{background-color:#374151;border-color:#6b7280}.dark .btn-archive-chat{border:1px solid #4b5563;color:#9ca3af}.dark .btn-archive-chat:hover{background-color:#374151;border-color:#6b7280}.messages-container{flex:1;overflow-y:auto;padding:1rem;background-color:#f8fafc}.dark .messages-container{background-color:#111827}.date-separator{display:flex;align-items:center;justify-content:center;margin:1.5rem 0}.date-separator span{background-color:#fff;padding:.5rem 1rem;border-radius:1rem;font-size:.75rem;color:#64748b;border:1px solid #e2e8f0}.dark .date-separator span{background-color:#374151;color:#9ca3af;border:1px solid #4b5563}.message{display:flex;margin-bottom:.75rem;gap:.5rem}.message-outgoing{justify-content:flex-end}.message-incoming{justify-content:flex-start}.message-avatar{width:2rem;height:2rem;border-radius:50%;background-color:#d1d5db;display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0;font-weight:600;font-size:.75rem;overflow:hidden;position:relative}.message-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.dark .message-avatar{background-color:#4b5563;color:#9ca3af}.message-avatar.current-user{background-color:#3b82f6;color:#fff}.message-content{max-width:70%;min-width:0}.message-sender{font-size:.75rem;color:#64748b;margin-bottom:.25rem;padding-left:.5rem}.dark .message-sender{color:#9ca3af}.message-bubble{padding:.75rem 1rem;border-radius:1rem;position:relative}.message-outgoing .message-bubble{background-color:#3b82f6;color:#fff;border-bottom-right-radius:.25rem}.dark .message-outgoing .message-bubble{background-color:#2563eb}.message-incoming .message-bubble{background-color:#fff;color:#1a202c;border:1px solid #e2e8f0;border-bottom-left-radius:.25rem}.dark .message-incoming .message-bubble{background-color:#374151;color:#f9fafb;border:1px solid #4b5563}.message-text{margin-bottom:.25rem;word-wrap:break-word}.message-time{display:flex;align-items:center;gap:.25rem;font-size:.75rem;opacity:.7}.message-read-status{display:inline-flex;align-items:center;margin-left:.25rem}.read-indicator{color:#10b981}.sent-indicator{color:#ffffffb3}.message-incoming .sent-indicator{color:#9ca3af}.message-input-container{padding:1rem 1.5rem;background:#fff;border-top:1px solid #e2e8f0}.dark .message-input-container{background:#1f2937;border-top:1px solid #374151}.message-input-wrapper{display:flex;align-items:flex-end;gap:.75rem;background:#f9fafb;border:1px solid #d1d5db;border-radius:1.5rem;padding:.75rem}.dark .message-input-wrapper{background:#374151;border:1px solid #4b5563}.message-input{flex:1;border:none;background:none;outline:none;resize:none;font-size:.875rem;line-height:1.5;max-height:120px;color:#1a202c}.dark .message-input{color:#f9fafb}.dark .message-input::placeholder{color:#6b7280}.message-input:focus{outline:none}.send-button{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:50%;cursor:pointer;transition:background-color .2s;flex-shrink:0}.send-button:hover:not(:disabled){background-color:#2563eb}.send-button:disabled{background-color:#9ca3af;cursor:not-allowed}.dark .send-button:disabled{background-color:#6b7280}.conversation-actions{display:flex;align-items:center;gap:.5rem}.btn-archive-small{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:none;border:none;color:#64748b;cursor:pointer;border-radius:.25rem;transition:all .2s}.btn-archive-small:hover{background-color:#f3f4f6;color:#374151}.dark .btn-archive-small{color:#9ca3af}.dark .btn-archive-small:hover{background-color:#4b5563;color:#d1d5db}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dark .modal-overlay{background-color:#000000b3}.modal-content{background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2e8f0}.dark .modal-content{background:#1f2937;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;border:1px solid #374151}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e2e8f0}.dark .modal-header{border-bottom:1px solid #374151}.modal-title{font-size:1.25rem;font-weight:600;color:#1a202c;margin:0}.dark .modal-title{color:#f9fafb}.modal-close{background:none;border:none;color:#64748b;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .2s}.modal-close:hover{background-color:#f1f5f9;color:#374151}.dark .modal-close{color:#9ca3af}.dark .modal-close:hover{background-color:#374151;color:#d1d5db}.search-section{padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f9fafb}.dark .search-section{border-bottom:1px solid #374151;background:#111827}.users-list{flex:1;overflow-y:auto;max-height:400px;background:#fff}.dark .users-list{background:#1f2937}.user-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;cursor:pointer;transition:background-color .2s;border-bottom:1px solid #f1f5f9;background:#fff}.user-item:hover{background-color:#f8fafc}.dark .user-item{border-bottom:1px solid #374151;background:#1f2937}.dark .user-item:hover{background-color:#374151}.user-item:last-child{border-bottom:none}.user-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.user-info{flex:1;min-width:0}.user-name{font-weight:600;color:#1a202c;font-size:.875rem;margin-bottom:.25rem}.dark .user-name{color:#f9fafb}.user-role{font-size:.75rem;color:#64748b}.dark .user-role{color:#9ca3af}.user-email{font-size:.7rem;color:#9ca3af;margin-top:.125rem}.dark .user-email{color:#6b7280}.start-conversation-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:none;border:1px solid #d1d5db;border-radius:.375rem;color:#64748b;cursor:pointer;transition:all .2s;flex-shrink:0}.start-conversation-btn:hover{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.dark .start-conversation-btn{border:1px solid #4b5563;color:#9ca3af}.dark .start-conversation-btn:hover{background-color:#2563eb;border-color:#2563eb;color:#fff}.modal-actions{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;background:#f9fafb}.dark .modal-actions{border-top:1px solid #374151;background:#111827}.btn-secondary{padding:.5rem 1rem;background:none;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.dark .btn-secondary{border:1px solid #4b5563;color:#d1d5db}.loading-state{display:flex;align-items:center;justify-content:center;padding:2rem;color:#64748b}.empty-state h3{font-size:1rem;font-weight:600;color:#374151;margin-bottom:.5rem}.dark .empty-state h3{color:#d1d5db}.empty-state p{font-size:.875rem}.group-creation-section{padding:1rem 1.5rem;flex:1;overflow-y:auto}.form-label.required:after{content:" *";color:#ef4444}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background-color:#fff;color:#1a202c;transition:border-color .2s}.dark .form-input,.dark .form-textarea{background-color:#374151;border:1px solid #4b5563;color:#f9fafb}.form-textarea{resize:vertical;min-height:80px}.participants-selection{margin-top:1.5rem}.section-title{font-size:1rem;font-weight:600;color:#374151;margin-bottom:1rem}.dark .section-title{color:#d1d5db}.selected-participants{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.selected-participant-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:1rem;font-size:.875rem;color:#1e40af}.dark .selected-participant-chip{background-color:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#60a5fa}.remove-participant{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0;margin-left:.25rem}.available-participants{max-height:200px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:.5rem}.dark .available-participants{border:1px solid #374151}.participant-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background-color .2s}.participant-item:last-child{border-bottom:none}.participant-item:hover{background-color:#f8fafc}.dark .participant-item{border-bottom:1px solid #374151}.dark .participant-item:hover{background-color:#374151}.participant-item.selected{background-color:#eff6ff}.dark .participant-item.selected{background-color:#3b82f61a}.participant-checkbox{width:1.25rem;height:1.25rem;border:2px solid #d1d5db;border-radius:.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.participant-item.selected .participant-checkbox{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.dark .participant-checkbox{border-color:#4b5563}.dark .participant-item.selected .participant-checkbox{background-color:#2563eb;border-color:#2563eb}.participant-avatar{width:2rem;height:2rem;border-radius:50%;background-color:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.participant-name{font-weight:500;color:#1a202c;font-size:.875rem;margin-bottom:.125rem}.participant-role{font-size:.75rem;color:#64748b}@keyframes messageHighlight{0%{background-color:#3b82f61a}to{background-color:transparent}}.message-highlight{animation:messageHighlight 2s ease-out}.group-modal-section{margin-bottom:1.5rem}.group-modal-section:last-child{margin-bottom:0}.group-info-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.dark .section-title{color:#f9fafb}.btn-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:none;border:1px solid #d1d5db;border-radius:.5rem;color:#6b7280;cursor:pointer;transition:all .2s}.btn-icon:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.dark .btn-icon{border-color:#4b5563;color:#9ca3af}.dark .btn-icon:hover{background-color:#374151;border-color:#6b7280;color:#d1d5db}.edit-group-form{background-color:#f9fafb;border-radius:.75rem;padding:1.5rem}.dark .edit-group-form{background-color:#1f2937}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.dark .form-label{color:#d1d5db}.form-input,.form-textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background-color:#fff;color:#1f2937;transition:all .2s}.dark .form-input,.dark .form-textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark .form-input:focus,.dark .form-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.form-textarea{resize:vertical;min-height:100px}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.btn-secondary{padding:.75rem 1.5rem;background:none;border:1px solid #d1d5db;border-radius:.5rem;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.dark .btn-secondary{border-color:#4b5563;color:#d1d5db}.dark .btn-secondary:hover{background-color:#374151;border-color:#6b7280}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#3b82f6;border:none;border-radius:.5rem;color:#fff;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-primary:disabled{background-color:#9ca3af;cursor:not-allowed}.dark .btn-primary:disabled{background-color:#6b7280}.group-info-display{background-color:#f9fafb;border-radius:.75rem;padding:1.5rem}.dark .group-info-display{background-color:#1f2937}.info-item{margin-bottom:.75rem}.info-item:last-child{margin-bottom:0}.info-item strong{color:#374151;font-weight:600}.dark .info-item strong{color:#d1d5db}.participants-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.btn-add-participant{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3b82f6;border:none;border-radius:.5rem;color:#fff;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-add-participant:hover:not(:disabled){background-color:#2563eb}.btn-add-participant:disabled{background-color:#9ca3af;cursor:not-allowed}.dark .btn-add-participant:disabled{background-color:#6b7280}.add-participant-section{background-color:#f9fafb;border-radius:.75rem;padding:1.5rem;margin-bottom:1rem}.dark .add-participant-section{background-color:#1f2937}.add-participant-section h4{margin-bottom:1rem;font-weight:600;color:#374151}.dark .add-participant-section h4{color:#f9fafb}.available-employees-list{max-height:200px;overflow-y:auto}.employee-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;border-radius:.5rem;transition:background-color .2s}.employee-item:hover{background-color:#f3f4f6}.dark .employee-item:hover{background-color:#374151}.employee-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.employee-info{flex:1;min-width:0}.employee-name{font-weight:500;color:#1f2937;margin-bottom:.25rem}.dark .employee-name{color:#f9fafb}.employee-role{font-size:.875rem;color:#6b7280}.dark .employee-role{color:#9ca3af}.add-icon{color:#3b82f6;flex-shrink:0}.participants-list-display{max-height:400px;overflow-y:auto}.participant-item-display{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:.75rem;transition:background-color .2s}.participant-item-display:hover{background-color:#f9fafb}.dark .participant-item-display:hover{background-color:#1f2937}.participant-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#6b7280;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.participant-info{flex:1;min-width:0}.participant-name{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#1f2937;margin-bottom:.25rem}.dark .participant-name{color:#f9fafb}.creator-badge,.you-badge{padding:.25rem .5rem;border-radius:1rem;font-size:.75rem;font-weight:500}.creator-badge{background-color:#8b5cf6;color:#fff}.you-badge{background-color:#3b82f6;color:#fff}.participant-role{font-size:.875rem;color:#6b7280}.dark .participant-role{color:#9ca3af}.btn-remove-participant{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:none;border:1px solid #ef4444;border-radius:.5rem;color:#ef4444;cursor:pointer;transition:all .2s}.btn-remove-participant:hover{background-color:#ef4444;color:#fff}.dark .btn-remove-participant{border-color:#dc2626;color:#dc2626}.dark .btn-remove-participant:hover{background-color:#dc2626;color:#fff}.loading-state{display:flex;align-items:center;justify-content:center;padding:2rem;color:#6b7280}.dark .loading-state{color:#9ca3af}.error-message{padding:1rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;font-size:.875rem}.dark .error-message{background-color:#450a0a;border-color:#7f1d1d;color:#fca5a5}.client-messaging-container{display:flex;flex-direction:column;height:100%;background-color:#f8fafc;overflow:hidden}.dark .client-messaging-container{background-color:#111827}.client-messaging-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.dark .client-messaging-header{background:#1f2937;border-bottom:1px solid #374151;box-shadow:0 1px 3px #0000004d}.client-messaging-title{display:flex;align-items:center;gap:.75rem}.client-messaging-title h1{font-size:1.5rem;font-weight:600;color:#1a202c;margin:0}.dark .client-messaging-title h1{color:#f9fafb}.client-messaging-title svg{color:#10b981}.dark .client-messaging-title svg{color:#34d399}.client-btn-new-conversation{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#10b981;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s}.client-btn-new-conversation:hover,.dark .client-btn-new-conversation{background-color:#059669}.dark .client-btn-new-conversation:hover{background-color:#047857}.client-messaging-content{display:flex;flex:1;overflow:hidden;height:calc(100% - 80px)}.client-conversations-sidebar{width:350px;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden}.dark .client-conversations-sidebar{background:#1f2937;border-right:1px solid #374151}.client-search-container{position:relative;padding:1rem;border-bottom:1px solid #e2e8f0}.dark .client-search-container{border-bottom:1px solid #374151}.client-search-icon{position:absolute;left:1.75rem;top:50%;transform:translateY(-50%);color:#64748b}.dark .client-search-icon{color:#9ca3af}.client-search-input{width:100%;padding:.5rem .5rem .5rem 2.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background-color:#f9fafb;color:#1a202c}.dark .client-search-input{background-color:#374151;border:1px solid #4b5563;color:#f9fafb}.client-search-input:focus{outline:none;border-color:#10b981;background-color:#fff}.dark .client-search-input:focus{border-color:#34d399;background-color:#4b5563}.client-chat-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center;color:#64748b}.dark .client-chat-placeholder{color:#9ca3af}.client-placeholder-icon{color:#d1d5db;margin-bottom:1rem}.dark .client-placeholder-icon{color:#6b7280}.client-chat-placeholder h3{font-size:1.25rem;font-weight:600;color:#374151;margin-bottom:.5rem}.dark .client-chat-placeholder h3{color:#d1d5db}.client-btn-start-conversation{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#10b981;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s}.client-btn-start-conversation:hover,.dark .client-btn-start-conversation{background-color:#059669}.dark .client-btn-start-conversation:hover{background-color:#047857}.mobile-conversation-list{display:flex;flex-direction:column;height:100vh;background-color:#f8fafc}.dark .mobile-conversation-list{background-color:#111827}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#fff;border-bottom:1px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dark .mobile-header{background:#1f2937;border-bottom:1px solid #374151}.mobile-header-title{display:flex;align-items:center;gap:.75rem}.mobile-header-title h1{font-size:1.25rem;font-weight:600;color:#1a202c;margin:0}.dark .mobile-header-title h1{color:#f9fafb}.mobile-header-actions{display:flex;align-items:center;gap:.75rem}.mobile-badges{display:flex;gap:.25rem}.mobile-new-conversation{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.mobile-new-conversation:hover{background-color:#2563eb}.mobile-search-container{position:relative;padding:.75rem 1rem;background:#fff;border-bottom:1px solid #e2e8f0}.dark .mobile-search-container{background:#1f2937;border-bottom:1px solid #374151}.mobile-search-icon{position:absolute;left:1.75rem;top:50%;transform:translateY(-50%);color:#64748b}.dark .mobile-search-icon{color:#9ca3af}.mobile-search-input{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:1rem;background-color:#f9fafb;color:#1a202c}.dark .mobile-search-input{background-color:#374151;border:1px solid #4b5563;color:#f9fafb}.mobile-search-input:focus{outline:none;border-color:#3b82f6;background-color:#fff}.dark .mobile-search-input:focus{border-color:#60a5fa;background-color:#4b5563}.mobile-conversation-tabs{display:flex;background:#fff;border-bottom:1px solid #e2e8f0;overflow-x:auto;-webkit-overflow-scrolling:touch}.dark .mobile-conversation-tabs{background:#1f2937;border-bottom:1px solid #374151}.mobile-tab{display:flex;align-items:center;gap:.5rem;flex:1;min-width:120px;padding:1rem .75rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s;white-space:nowrap}.mobile-tab:hover{background-color:#f8fafc;color:#374151}.dark .mobile-tab{color:#9ca3af}.dark .mobile-tab:hover{background-color:#374151;color:#d1d5db}.mobile-tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background-color:#eff6ff}.dark .mobile-tab.active{color:#60a5fa;border-bottom-color:#60a5fa;background-color:#3b82f61a}.mobile-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:9999px;font-size:.75rem;font-weight:600;background-color:#ef4444;color:#fff}.mobile-archive-filter{padding:.75rem 1rem;background:#fff;border-bottom:1px solid #e2e8f0}.dark .mobile-archive-filter{background:#1f2937;border-bottom:1px solid #374151}.mobile-btn-archive{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem;background:none;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;color:#64748b;cursor:pointer;transition:all .2s}.mobile-btn-archive:hover{background-color:#f9fafb;border-color:#9ca3af}.dark .mobile-btn-archive{border:1px solid #4b5563;color:#9ca3af}.dark .mobile-btn-archive:hover{background-color:#374151;border-color:#6b7280}.mobile-btn-archive.active{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.dark .mobile-btn-archive.active{background-color:#3b82f61a;border-color:#60a5fa;color:#60a5fa}.mobile-conversation-list-container{flex:1;overflow-y:auto;background:#fff}.dark .mobile-conversation-list-container{background:#1f2937}.mobile-chat-view{display:flex;flex-direction:column;height:100vh;background-color:#f8fafc}.dark .mobile-chat-view{background-color:#111827}.mobile-chat-header{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff;border-bottom:1px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dark .mobile-chat-header{background:#1f2937;border-bottom:1px solid #374151}.mobile-back-button{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:none;border:none;color:#64748b;cursor:pointer;border-radius:.5rem;transition:background-color .2s}.mobile-back-button:hover{background-color:#f3f4f6}.dark .mobile-back-button{color:#9ca3af}.dark .mobile-back-button:hover{background-color:#374151}.mobile-chat-title{flex:1;min-width:0}.mobile-chat-title h2{font-size:1.125rem;font-weight:600;color:#1a202c;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .mobile-chat-title h2{color:#f9fafb}.mobile-chat-subtitle{font-size:.75rem;color:#64748b;margin-top:.125rem}.dark .mobile-chat-subtitle{color:#9ca3af}.mobile-chat-actions{display:flex;gap:.5rem}.mobile-chat-container{flex:1;display:flex;flex-direction:column;background:#fff;overflow:hidden;min-height:0;position:relative}.dark .mobile-chat-container{background:#1f2937}@supports (-webkit-touch-callout: none){.mobile-chat-view,.mobile-conversation-list{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;position:relative;overflow:hidden}.mobile-chat-container{display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden}.mobile-chat-container .messages-container{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;max-height:100%;padding-bottom:calc(1rem + env(safe-area-inset-bottom,1rem))!important}.mobile-chat-container .message-input-container{flex-shrink:0;background:#fff;border-top:1px solid #e2e8f0;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,1rem))!important;position:-webkit-sticky!important;position:sticky!important;bottom:0!important;left:0!important;right:0!important;z-index:1000!important}.dark .mobile-chat-container .message-input-container{background:#1f2937;border-top:1px solid #374151}.mobile-chat-container.keyboard-open .message-input-container{position:-webkit-sticky!important;position:sticky!important;bottom:0!important}.message-input{font-size:16px!important}}.mobile-chat-container .messages-container{flex:1;padding:1rem;background-color:#f8fafc}.dark .mobile-chat-container .messages-container{background-color:#111827}.mobile-chat-container .message-content{max-width:90%}.mobile-chat-container .message-input-container{padding:1rem;background:#fff;border-top:1px solid #e2e8f0}.dark .mobile-chat-container .message-input-container{background:#1f2937;border-top:1px solid #374151}.mobile-chat-container .message-input-wrapper{border-radius:1.5rem;padding:.75rem}.mobile-chat-container .message-input{font-size:1rem;line-height:1.5}.mobile-chat-container .send-button{width:2.75rem;height:2.75rem}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.mobile-conversation-list{animation:slideInLeft .3s ease-out}.mobile-chat-view{animation:slideInRight .3s ease-out}@media (max-width: 768px){.messaging-header{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem}.messaging-title{flex:1;min-width:200px}.messaging-title h1{font-size:1.25rem}.messaging-badges{order:3;flex-basis:100%;justify-content:flex-start}.btn-new-conversation{padding:.375rem .75rem;font-size:.875rem}.btn-new-conversation span{display:none}.messaging-content{flex-direction:column}.conversations-sidebar{width:100%;max-height:40vh;border-right:none;border-bottom:1px solid #e2e8f0}.dark .conversations-sidebar{border-bottom:1px solid #374151}.chat-container{height:60vh}.search-container{padding:.75rem}.conversation-tabs{overflow-x:auto}.tab{flex:none;min-width:auto;padding:.625rem .75rem}.conversation-item{padding:.75rem}.conversation-avatar{width:2rem;height:2rem;font-size:.75rem}.chat-header{padding:.75rem 1rem}.chat-avatar{width:2rem;height:2rem}.messages-container{padding:.75rem}.message-content{max-width:85%}.message-input-container{padding:.75rem}.modal-content{max-height:90vh}}@media (min-width: 769px) and (max-width: 1024px){.conversations-sidebar{width:300px}.messaging-header{padding:1rem 1.25rem}.conversation-item{padding:.875rem}}.conversation-list::-webkit-scrollbar,.messages-container::-webkit-scrollbar,.users-list::-webkit-scrollbar{width:6px}.conversation-list::-webkit-scrollbar-track,.messages-container::-webkit-scrollbar-track,.users-list::-webkit-scrollbar-track{background:#f1f5f9}.dark .conversation-list::-webkit-scrollbar-track,.dark .messages-container::-webkit-scrollbar-track,.dark .users-list::-webkit-scrollbar-track{background:#374151}.conversation-list::-webkit-scrollbar-thumb,.messages-container::-webkit-scrollbar-thumb,.users-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.dark .conversation-list::-webkit-scrollbar-thumb,.dark .messages-container::-webkit-scrollbar-thumb,.dark .users-list::-webkit-scrollbar-thumb{background:#6b7280}.conversation-list::-webkit-scrollbar-thumb:hover,.messages-container::-webkit-scrollbar-thumb:hover,.users-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.dark .conversation-list::-webkit-scrollbar-thumb:hover,.dark .messages-container::-webkit-scrollbar-thumb:hover,.dark .users-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.ml-layout{display:flex;flex-direction:column;height:100vh;background:#f9fafb;overflow:hidden}.dark .ml-layout{background:#111827}.ml-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;z-index:10;position:relative;background:#fff}.dark .ml-header{background:#1f2937;border-bottom:1px solid #374151;box-shadow:0 1px 3px #0000004d}.ml-header-content{display:flex;justify-content:space-between;align-items:center;padding:1rem}.ml-logo-container{display:flex;align-items:center}.ml-menu-button{margin-right:1rem;color:#6b7280;transition:all .3s ease;padding:.5rem;border-radius:.5rem}.ml-menu-button:hover{color:#667eea;background-color:#667eea1a}.dark .ml-menu-button{color:#9ca3af}.dark .ml-menu-button:hover{color:#93c5fd;background-color:#3b82f633}.ml-org-name{font-size:1.25rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .ml-org-name{color:#fff}.ml-header-logo{display:flex;align-items:center}.ml-logo-image{width:auto;max-width:200px;object-fit:contain;border-radius:.25rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ml-header-actions{display:flex;align-items:center;gap:1rem}.ml-icon-button{color:#6b7280;transition:all .3s ease;padding:.5rem;border-radius:.5rem}.ml-icon-button:hover{color:#667eea;background-color:#667eea1a}.dark .ml-icon-button{color:#9ca3af}.dark .ml-icon-button:hover{color:#93c5fd;background-color:#3b82f633}.ml-profile-menu{position:relative;z-index:100000}.ml-profile-button{display:flex;align-items:center;color:#6b7280;transition:all .3s ease;padding:.5rem;border-radius:.5rem}.ml-profile-button:hover{color:#667eea;background-color:#667eea1a}.dark .ml-profile-button{color:#9ca3af}.dark .ml-profile-button:hover{color:#93c5fd;background-color:#3b82f633}.ml-profile-image{width:2rem;height:2rem;border-radius:9999px;margin-right:.5rem;border:2px solid #e5e7eb}.dark .ml-profile-image{border-color:#374151}.ml-profile-icon{margin-right:.5rem}.ml-profile-name{margin-left:.5rem;font-weight:500;color:#1f2937}.dark .ml-profile-name{color:#fff}.ml-profile-dropdown{position:fixed!important;right:1rem!important;top:4.5rem!important;width:16rem!important;background:#fffffff2!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border:1px solid #e5e7eb!important;border-radius:1rem!important;overflow:hidden!important;box-shadow:0 8px 25px #0000001a!important;z-index:2147483647!important;isolation:isolate!important}.dark .ml-profile-dropdown{background:#1f2937f2!important;border:1px solid #374151!important;box-shadow:0 8px 25px #00000080!important}.ml-dropdown-item{display:block;padding:.75rem 1rem;font-size:.875rem;color:#374151;transition:all .3s ease;border-bottom:1px solid #f3f4f6}.ml-dropdown-item:hover{background-color:#667eea0d;color:#667eea}.dark .ml-dropdown-item{color:#d1d5db;border-bottom:1px solid #374151}.dark .ml-dropdown-item:hover{background-color:#3b82f633;color:#93c5fd}.ml-logout-button{width:100%;text-align:left;border:none;background:none;cursor:pointer;font-size:.875rem;color:#dc2626;transition:all .3s ease}.ml-logout-button:hover{background-color:#dc26260d}.dark .ml-logout-button{color:#f87171}.dark .ml-logout-button:hover{background-color:#ef444433}.ml-content{display:flex;flex:1;overflow:hidden;gap:0;transition:margin-left .3s ease}.ml-main-content{flex:1;overflow:hidden;padding:0;background:#f9fafb;margin:0;border-radius:0;box-shadow:none;border:none;transition:margin-left .3s ease}.dark .ml-main-content{background:#111827}.sb-container.collapsed~.ml-main-content{margin-left:5rem}.ml-scroll-container{height:100%;overflow:auto;padding:0}.ml-notifications-dropdown{position:fixed!important;right:1rem!important;top:4.5rem!important;width:20rem!important;background:#fffffff2!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border:1px solid #e5e7eb!important;border-radius:1rem!important;overflow:hidden!important;box-shadow:0 8px 25px #0000001a!important;z-index:2147483647!important;isolation:isolate!important}.dark .ml-notifications-dropdown{background:#1f2937f2!important;border:1px solid #374151!important;box-shadow:0 8px 25px #00000080!important}.ml-notifications-header{padding:1rem;background-color:#f8fafc;border-bottom:1px solid #e5e7eb;font-weight:600;color:#1f2937}.dark .ml-notifications-header{background-color:#374151;border-bottom:1px solid #4b5563;color:#fff}.ml-notification-item{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;transition:all .3s ease;color:#374151}.ml-notification-item:hover{background-color:#667eea0d}.ml-notification-item:last-child{border-bottom:none}.dark .ml-notification-item{color:#d1d5db;border-bottom:1px solid #374151}.dark .ml-notification-item:hover{background-color:#3b82f633}.ml-notification-badges-container{position:absolute;top:-.25rem;right:-.25rem;display:flex;flex-direction:column;gap:2px}.ml-notification-badge{background-color:#dc2626;color:#fff;border-radius:9999px;width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;border:2px solid white}.dark .ml-notification-badge{border-color:#1f2937}.messaging-badge{background-color:#3b82f6}.clients-badge{background-color:#10b981}.mobile-photo-only{width:2rem;height:2rem;border-radius:9999px;border:2px solid #e5e7eb;object-fit:cover}.dark .mobile-photo-only{border-color:#374151}.mobile-initials-only{width:2rem;height:2rem;border-radius:9999px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;border:2px solid #e5e7eb}.dark .mobile-initials-only{border-color:#374151}@media (max-width: 374px){.ml-header-content{padding:.5rem .25rem}.ml-org-name{font-size:.95rem;max-width:100px}.ml-logo-image{max-width:100px}.ml-header-actions{gap:0}.ml-icon-button,.ml-menu-button{padding:.25rem}.ml-icon-button svg,.ml-menu-button svg{width:18px;height:18px}.ml-profile-name{display:none}.ml-profile-image{width:1.5rem;height:1.5rem;margin-right:0}.ml-profile-icon{margin-right:0}.ml-profile-button{padding:.25rem}.ml-profile-dropdown,.ml-notifications-dropdown{width:14rem!important}.mobile-photo-only,.mobile-initials-only{width:1.5rem;height:1.5rem;font-size:.65rem}}@media (max-width: 425px){.ml-header-content{padding:.5rem .375rem}.ml-header-actions{gap:.125rem}.ml-org-name{max-width:130px;font-size:1rem}.ml-icon-button,.ml-menu-button{padding:.25rem}.ml-icon-button svg,.ml-menu-button svg{width:20px;height:20px}.ml-profile-button{padding:.25rem}.ml-profile-image{width:1.5rem;height:1.5rem}.ml-profile-dropdown,.ml-notifications-dropdown{width:16rem!important}.mobile-photo-only,.mobile-initials-only{width:1.5rem;height:1.5rem;font-size:.7rem}}@media (max-width: 767px){.ml-header-content{padding:.625rem .5rem}.ml-header-actions{gap:.25rem}.ml-org-name{font-size:1.125rem;max-width:160px}.ml-icon-button,.ml-menu-button{padding:.3rem}.ml-icon-button svg,.ml-menu-button svg{width:20px;height:20px}.ml-profile-button{padding:.3rem}.ml-profile-image{width:1.75rem;height:1.75rem}}@media (min-width: 768px){.ml-menu-button{display:none}.ml-org-name{font-size:1.5rem}.ml-main-content{padding:0;margin:0}.ml-header-content{padding:1rem 1.5rem}}.client-dashboard-container{max-width:1280px;margin:0 auto;padding:1rem}@media (min-width: 768px){.client-dashboard-container{padding:2rem}}.client-header{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s ease}@media (min-width: 768px){.client-header{border-radius:1rem;padding:1.5rem 2rem;margin-bottom:2rem}}html.dark .client-header{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}.client-avatar{width:5rem;height:5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.5rem;color:#fff;margin-right:1.5rem}.client-welcome{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:.25rem;line-height:1.2}@media (min-width: 768px){.client-welcome{font-size:1.875rem}}html.dark .client-welcome{color:#f9fafb}.client-subtitle{color:#6b7280;font-size:.875rem}@media (min-width: 768px){.client-subtitle{font-size:1rem}}html.dark .client-subtitle{color:#d1d5db}.client-tabs{display:none;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}@media (min-width: 768px){.client-tabs{display:block}}html.dark .client-tabs{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}.tab-button{display:flex;align-items:center;padding:1rem 1.5rem;border-radius:.75rem;font-weight:500;transition:all .3s ease;border:none;background:transparent;cursor:pointer;color:#374151}html.dark .tab-button{color:#d1d5db}.tab-button.active{background:#374151;color:#fff}html.dark .tab-button.active{background:#4b5563;color:#fff}.tab-button:not(.active):hover{background:#f3f4f6;color:#374151}html.dark .tab-button:not(.active):hover{background:#374151;color:#f9fafb}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:background-color .2s ease}html.dark .stat-card{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}.stat-card:hover{background:#fafafa}html.dark .stat-card:hover{background:#374151}.stat-icon{padding:.75rem;border-radius:.75rem;margin-right:1rem}.stat-icon.blue{background:#3b82f61a;color:#3b82f6}.stat-icon.green{background:#10b9811a;color:#10b981}.stat-icon.purple{background:#8b5cf61a;color:#8b5cf6}.stat-icon.orange{background:#f973161a;color:#f97316}html.dark .stat-icon.orange{background:#f9731633;color:#fb923c}.stat-icon.red{background:#ef44441a;color:#ef4444}html.dark .stat-icon.red{background:#ef444433;color:#f87171}.stat-number{font-size:1.875rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}html.dark .stat-number{color:#f9fafb}.stat-label{color:#6b7280;font-size:.875rem}html.dark .stat-label{color:#d1d5db}.content-section{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}html.dark .content-section{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}.section-header{display:flex;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}html.dark .section-header{border-bottom-color:#374151}.section-icon{margin-right:.75rem;color:#667eea}.section-title{font-size:1.25rem;font-weight:600;color:#1f2937}html.dark .section-title{color:#f9fafb}.appointment-list{display:flex;flex-direction:column;gap:1rem}.appointment-card{background:#fff;border-radius:1rem;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #f3f4f6;position:relative;box-shadow:0 1px 3px #0000001a}html.dark .appointment-card{background:#374151;border-color:#4b5563;box-shadow:0 1px 3px #0000004d}.appointment-card:hover{background:#fff;box-shadow:0 8px 25px #0000001a,0 4px 12px #0000000d;transform:translateY(-2px);border-color:#e5e7eb}html.dark .appointment-card:hover{background:#4b5563;box-shadow:0 8px 25px #0000004d,0 4px 12px #0003;border-color:#6b7280}.appointment-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;border-radius:1rem 1rem 0 0;background:var(--employee-color, #667eea)}.appointment-time{font-weight:700;color:#111827;margin-bottom:.5rem;font-size:.95rem}html.dark .appointment-time{color:#f9fafb}.appointment-intervenant{color:#6b7280;font-size:.85rem;line-height:1.4}html.dark .appointment-intervenant{color:#d1d5db}.appointment-service{text-align:right}.service-label{font-size:.75rem;color:#6b7280;margin-bottom:.25rem}html.dark .service-label{color:#d1d5db}.service-name{font-weight:500;color:#1f2937}html.dark .service-name{color:#f9fafb}.intervenants-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.intervenant-card{background:#fafafa;border-radius:.75rem;padding:1.5rem;border:1px solid #e5e7eb;transition:all .3s ease}html.dark .intervenant-card{background:#374151;border-color:#4b5563}.intervenant-card:hover{background:#fff;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}html.dark .intervenant-card:hover{background:#4b5563;box-shadow:0 4px 12px #0000004d}.intervenant-avatar{width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;margin-right:1rem}.intervenant-name{font-weight:600;color:#1f2937;margin-bottom:.25rem}html.dark .intervenant-name{color:#f9fafb}.intervenant-position{color:#6b7280;font-size:.875rem}html.dark .intervenant-position{color:#d1d5db}.intervenant-details{margin-top:1rem}.detail-item{display:flex;align-items:center;color:#6b7280;font-size:.875rem;margin-bottom:.5rem}html.dark .detail-item{color:#d1d5db}.detail-item:last-child{margin-bottom:0}.empty-state{text-align:center;padding:3rem 2rem;color:#6b7280}html.dark .empty-state{color:#d1d5db}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}@media (max-width: 768px){.client-dashboard-container{padding:1rem}.client-header{padding:1.5rem}.client-avatar{width:4rem;height:4rem;font-size:1.25rem;margin-right:1rem}.client-welcome{font-size:1.5rem}.stats-grid{grid-template-columns:1fr}.content-section{padding:1.5rem}.intervenants-grid{grid-template-columns:1fr}.appointment-card{flex-direction:column;gap:1rem}.appointment-service{text-align:left}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-spinner{width:3rem;height:3rem;border:3px solid #e5e7eb;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.error-container{display:flex;justify-content:center;align-items:center;min-height:400px;flex-direction:column}.error-icon{font-size:3rem;color:#dc2626;margin-bottom:1rem}.error-message{color:#1f2937;margin-bottom:1.5rem;text-align:center}.retry-button{background:#374151;color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;border:none;font-weight:500;cursor:pointer;transition:background-color .2s ease}.retry-button:hover{background:#1f2937}.client-notes-view{max-width:1200px;margin:0 auto}.notes-header{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.search-container{max-width:500px}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:.95rem;transition:all .2s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-toggle-button,.reset-filters-button{display:flex;align-items:center;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.75rem;background:#fff;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-toggle-button:hover,.reset-filters-button:hover{background:#f9fafb;border-color:#9ca3af}.notes-content{display:grid;grid-template-columns:300px 1fr;gap:1.5rem}.filters-panel{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;height:-webkit-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:2rem}.filters-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f3f4f6}.filters-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.filters-title{font-weight:600;color:#1f2937;margin-bottom:.75rem;font-size:.95rem}.filters-list{display:flex;flex-direction:column;gap:.5rem}.filter-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background-color .2s ease}.filter-checkbox:hover{background:#f9fafb}.filter-checkbox input[type=checkbox]{width:1rem;height:1rem;border-radius:.25rem;border:1px solid #d1d5db}.date-filters{display:flex;flex-direction:column;gap:.75rem}.date-input-group{display:flex;flex-direction:column;gap:.25rem}.date-input-group label{font-size:.875rem;color:#6b7280;font-weight:500}.date-input-group input{padding:.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem}.notes-list-container{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.empty-notes{text-align:center;padding:3rem 2rem;color:#6b7280}.notes-grid{display:grid;gap:1rem}.note-card-large{background:#fff;border:1px solid #f3f4f6;border-radius:1rem;padding:1.5rem;cursor:pointer;transition:all .3s ease;box-shadow:0 1px 3px #0000001a}.note-card-large:hover{background:#fafafa;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px);border-color:#e5e7eb}.note-header-large{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.note-date-large{font-weight:600;color:#1f2937;font-size:.95rem}.note-intervenant-large{color:#667eea;font-weight:500;font-size:.875rem}.note-preview-large{color:#6b7280;line-height:1.5;margin-bottom:.75rem;font-size:.9rem}.note-service-large{display:flex;justify-content:flex-end}.service-badge-large{background:#f3f4f6;color:#374151;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.pagination-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.75rem;background:#fff;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{display:flex;gap:.5rem}.pagination-page{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:.5rem;background:#fff;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-page:hover{background:#f9fafb;border-color:#9ca3af}.pagination-page.active{background:#667eea;color:#fff;border-color:#667eea}.notes-indicator-compact{z-index:10}.notes-indicator-compact.clickable{cursor:pointer;transition:transform .2s ease}.notes-indicator-compact.clickable:hover{transform:scale(1.1)}@media (max-width: 768px){.notes-content{grid-template-columns:1fr}.filters-panel{position:static;margin-bottom:1rem}.notes-header,.note-card-large{padding:1rem}.note-header-large{flex-direction:column;align-items:flex-start;gap:.5rem}.pagination{flex-direction:column;gap:1rem}.pagination-pages{order:-1}}.note-modal-enhanced{background:#fff;border-radius:1rem;padding:0;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header-enhanced{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #e5e7eb}.modal-title-section{display:flex;align-items:center;gap:.75rem}.modal-title-icon{color:#667eea}.modal-header-enhanced h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.close-button-enhanced{background:none;border:none;padding:.5rem;border-radius:.5rem;cursor:pointer;color:#6b7280;transition:all .2s ease}.close-button-enhanced:hover{background:#f3f4f6;color:#374151}.appointment-details-section{padding:1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}.detail-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.detail-row:last-child{margin-bottom:0}.detail-item-enhanced{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#fff;border-radius:.75rem;border:1px solid #e5e7eb}.detail-icon{color:#667eea;margin-top:.125rem;flex-shrink:0}.detail-label{display:block;font-size:.75rem;color:#6b7280;font-weight:500;margin-bottom:.25rem}.detail-value{display:block;font-size:.95rem;color:#1f2937;font-weight:500}.note-content-section{padding:1.5rem}.section-header-enhanced{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.section-title-enhanced{font-size:1rem;font-weight:600;color:#1f2937}.note-content-enhanced{background:#f9fafb;padding:1.25rem;border-radius:.75rem;border:1px solid #e5e7eb}.note-content-enhanced p{margin:0;line-height:1.6;color:#374151;white-space:pre-wrap}.modal-actions-enhanced{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 1rem 1rem}.nav-button-enhanced{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.75rem;background:#fff;font-weight:500;cursor:pointer;transition:all .2s ease}.nav-button-enhanced:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.nav-button-enhanced:disabled{opacity:.5;cursor:not-allowed}.note-counter-enhanced{font-size:.875rem;color:#6b7280;font-weight:500}@media (max-width: 768px){.note-modal-enhanced{width:95%;margin:1rem}.detail-row{grid-template-columns:1fr;gap:.75rem}.modal-header-enhanced{padding:1rem 1rem .75rem}.appointment-details-section,.note-content-section{padding:1rem}.modal-actions-enhanced{padding:.75rem 1rem}.detail-item-enhanced{padding:.5rem}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.stat-card{animation:fadeIn .3s ease-out}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}*{transition-property:background-color,border-color,color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.beneficiary-mandate-panel{padding:20px;max-width:1400px;margin:0 auto}.panel-header{margin-bottom:30px}.panel-header h2{font-size:28px;color:#1f2937;margin-bottom:8px}.panel-description{font-size:14px;color:#6b7280;margin:0}.alert{display:flex;align-items:center;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;position:relative}.alert-icon{margin-right:12px;font-size:18px}.alert-close{margin-left:auto;background:none;border:none;font-size:24px;cursor:pointer;padding:0 8px;color:inherit;opacity:.6;transition:opacity .2s}.alert-close:hover{opacity:1}.alert-error{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.actions-bar{display:flex;gap:12px;margin-bottom:24px}.btn{display:inline-flex;align-items:center;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{margin-right:8px}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;text-align:center}.stat-value{font-size:32px;font-weight:700;color:#10b981;margin-bottom:8px}.stat-label{font-size:14px;color:#6b7280}.table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.beneficiaries-table{width:100%;border-collapse:collapse}.beneficiaries-table thead{background:#f9fafb}.beneficiaries-table th{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.beneficiaries-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;font-size:14px;color:#1f2937}.beneficiaries-table tbody tr:hover{background:#f9fafb}.beneficiary-info{display:flex;align-items:center}.beneficiary-name{font-weight:500}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-non-genere{background:#fef3c7;color:#92400e}.status-draft{background:#dbeafe;color:#1e40af}.status-pending{background:#fef3c7;color:#d97706}.status-signed{background:#d1fae5;color:#065f46}.status-archived{background:#f3f4f6;color:#6b7280}.action-buttons{display:flex;gap:8px}.btn-action{padding:6px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-generate{background:#10b981;color:#fff}.btn-generate:hover:not(:disabled){background:#059669}.btn-send{background:#3b82f6;color:#fff}.btn-send:hover:not(:disabled){background:#2563eb}.btn-download{background:#6b7280;color:#fff}.btn-download:hover:not(:disabled){background:#4b5563}.empty-state{padding:60px 20px;text-align:center;color:#6b7280}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:18px;color:#1f2937}.modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:20px}.modal-body p{margin:0 0 12px;line-height:1.6;color:#374151}.modal-info{background:#dbeafe;border:1px solid #93c5fd;border-radius:6px;padding:12px;font-size:13px;color:#1e40af}.modal-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:12px;font-size:13px;color:#92400e}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:20px;border-top:1px solid #e5e7eb}.mass-generation-result{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-top:20px}.mass-generation-result h4{margin:0 0 16px;font-size:18px;color:#1f2937}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.result-stat{text-align:center;padding:16px;border-radius:6px}.result-stat.success{background:#d1fae5;border:1px solid #6ee7b7}.result-stat.info{background:#dbeafe;border:1px solid #93c5fd}.result-stat.error{background:#fef2f2;border:1px solid #fecaca}.result-value{display:block;font-size:28px;font-weight:700;margin-bottom:4px}.result-stat.success .result-value{color:#065f46}.result-stat.info .result-value{color:#1e40af}.result-stat.error .result-value{color:#991b1b}.result-label{display:block;font-size:13px;font-weight:500;color:#374151}.result-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px;margin-bottom:16px}.result-details h5{margin:0 0 12px;font-size:14px;color:#374151}.result-details ul{list-style:none;padding:0;margin:0;max-height:300px;overflow-y:auto}.result-details li{padding:8px 12px;margin-bottom:4px;border-radius:4px;font-size:13px}.detail-genere{background:#d1fae5;color:#065f46}.detail-deja_existant{background:#dbeafe;color:#1e40af}.detail-erreur{background:#fef2f2;color:#991b1b}.detail-error{font-size:12px;font-style:italic;opacity:.8}.mandate-panel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#10b981;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@media (max-width: 768px){.beneficiary-mandate-panel{padding:12px}.panel-header h2{font-size:22px}.stats-container{grid-template-columns:repeat(2,1fr)}.table-container{overflow-x:auto}.beneficiaries-table{min-width:800px}.actions-bar{flex-direction:column}.result-stats{grid-template-columns:1fr}.modal-content{width:95%;margin:20px}}:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--secondary-50: #f8fafc;--secondary-100: #f1f5f9;--secondary-200: #e2e8f0;--secondary-300: #cbd5e1;--secondary-400: #94a3b8;--secondary-500: #64748b;--secondary-600: #475569;--secondary-700: #334155;--secondary-800: #1e293b;--secondary-900: #0f172a;--accent-green: #10b981;--accent-red: #ef4444;--accent-yellow: #f59e0b;--accent-purple: #8b5cf6;--accent-pink: #ec4899;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: #3b82f6;--gradient-primary: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-700) 100%);--gradient-secondary: linear-gradient(135deg, var(--secondary-600) 0%, var(--secondary-700) 100%);--gradient-accent: linear-gradient(135deg, var(--accent-purple) 0%, var(--accent-pink) 100%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out;--transition-slow: .5s ease-in-out}.modern-scrollbar{scrollbar-width:thin;scrollbar-color:var(--secondary-300) transparent}.modern-scrollbar::-webkit-scrollbar{width:6px}.modern-scrollbar::-webkit-scrollbar-track{background:transparent}.modern-scrollbar::-webkit-scrollbar-thumb{background-color:var(--secondary-300);border-radius:3px}.modern-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--secondary-400)}.glass-effect{background:#ffffff40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18)}.modern-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--secondary-200);transition:all var(--transition-normal)}.modern-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.modern-card-header{padding:1.5rem;border-bottom:1px solid var(--secondary-200)}.modern-card-body{padding:1.5rem}.modern-card-footer{padding:1.5rem;border-top:1px solid var(--secondary-200)}.btn-modern{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:500;font-size:.875rem;line-height:1.25rem;transition:all var(--transition-fast);border:none;cursor:pointer;gap:.5rem}.btn-modern-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-modern-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-modern-secondary{background:#fff;color:var(--secondary-700);border:1px solid var(--secondary-300)}.btn-modern-secondary:hover{background:var(--secondary-50);border-color:var(--secondary-400)}.modern-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;line-height:1}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:#10b9811a;color:var(--success)}.badge-warning{background:#f59e0b1a;color:var(--warning)}.badge-error{background:#ef44441a;color:var(--error)}.modern-input{width:100%;padding:.75rem 1rem;border:1px solid var(--secondary-300);border-radius:var(--radius-md);font-size:.875rem;transition:all var(--transition-fast);background:#fff}.modern-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.modern-table{width:100%;border-collapse:separate;border-spacing:0}.modern-table th{background:var(--secondary-50);padding:.75rem 1rem;text-align:left;font-weight:500;color:var(--secondary-700);border-bottom:1px solid var(--secondary-200)}.modern-table td{padding:.75rem 1rem;border-bottom:1px solid var(--secondary-200)}.modern-table tr:last-child td{border-bottom:none}.modern-table tr:hover td{background:var(--secondary-50)}.modern-nav-item{display:flex;align-items:center;padding:.75rem 1rem;color:var(--secondary-600);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);gap:.75rem}.modern-nav-item:hover{background:var(--primary-50);color:var(--primary-700)}.modern-nav-item.active{background:var(--primary-100);color:var(--primary-700);font-weight:500}@keyframes modern-pulse{0%,to{opacity:1}50%{opacity:.5}}.modern-pulse{animation:modern-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes modern-bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-8px,0)}70%{transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}.modern-bounce{animation:modern-bounce 1s ease infinite}@media (max-width: 768px){.modern-card{border-radius:var(--radius-md)}.btn-modern{padding:.625rem 1.25rem;font-size:.8125rem}}.dark{--primary-50: #1e3a8a;--primary-100: #1e40af;--primary-200: #1d4ed8;--primary-300: #2563eb;--primary-400: #3b82f6;--primary-500: #60a5fa;--primary-600: #93c5fd;--primary-700: #bfdbfe;--primary-800: #dbeafe;--primary-900: #eff6ff}.dark .modern-card{background:var(--secondary-900);border-color:var(--secondary-700)}.dark .modern-input{background:var(--secondary-800);border-color:var(--secondary-600);color:#fff}.pv-container{font-family:Roboto,sans-serif;background-color:#f8fafc;color:#334155;width:100%;margin:0;padding:2px}.dark .pv-container{background-color:#111827;color:#d1d5db}.pv-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#1e293b}.dark .pv-title{color:#fff}.pv-controls{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:16px;background:#fff;padding:1rem;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;gap:.75rem}.dark .pv-controls{background:#1f2937;box-shadow:0 1px 3px #0000004d}.pv-view-buttons{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.pv-date-navigation{display:flex;align-items:center;gap:.5rem;background:#f8fafc;padding:.5rem;border-radius:.5rem}.dark .pv-date-navigation{background:#374151}.pv-date-range{font-weight:500;color:#1e293b;font-size:.875rem;white-space:nowrap;min-width:180px;text-align:center}.dark .pv-date-range{color:#fff}.pv-button-action{padding:.25rem .75rem;font-size:.875rem;border-radius:.25rem;transition:background-color .15s ease-in-out;display:flex;align-items:center;justify-content:center;font-weight:500;cursor:pointer}.pv-button-action:focus{outline:none;box-shadow:0 0 0 2px #ffffff80,0 0 0 4px currentColor}.pv-button-approve{background-color:#22c55e;color:#fff}.pv-button-approve:hover,.dark .pv-button-approve{background-color:#16a34a}.dark .pv-button-approve:hover{background-color:#15803d}.pv-button-reject{background-color:#ef4444;color:#fff}.pv-button-reject:hover,.dark .pv-button-reject{background-color:#dc2626}.dark .pv-button-reject:hover{background-color:#b91c1c}.pv-button-cancel{background-color:#eab308;color:#fff}.pv-button-cancel:hover,.dark .pv-button-cancel{background-color:#ca8a04}.dark .pv-button-cancel:hover{background-color:#a16207}.pv-button-action svg{margin-right:.25rem;width:12px;height:12px}.pv-button-cancel-gray{background-color:#e5e7eb;color:#1f2937}.pv-button-cancel-gray:hover{background-color:#d1d5db}.dark .pv-button-cancel-gray{background-color:#374151;color:#d1d5db}.dark .pv-button-cancel-gray:hover{background-color:#4b5563}.pv-button-book{background-color:#3b82f6;color:#fff}.pv-button-book:hover,.dark .pv-button-book{background-color:#2563eb}.dark .pv-button-book:hover{background-color:#1d4ed8}.pv-button-gray{background-color:#e5e7eb;color:#1f2937}.pv-button-gray:hover{background-color:#d1d5db}.dark .pv-button-gray{background-color:#374151;color:#d1d5db}.dark .pv-button-gray:hover{background-color:#4b5563}.pv-button-icon{padding:6px;background-color:transparent;color:#64748b;border:none}.pv-button-icon:hover{background-color:#f1f5f9;color:#1e293b}.dark .pv-button-icon{color:#9ca3af}.dark .pv-button-icon:hover{background-color:#374151;color:#fff}.pv-today-button{display:flex;align-items:center;gap:.25rem;background-color:#3b82f6;color:#fff;border:1px solid #3b82f6;padding:.5rem .75rem;white-space:nowrap}.pv-today-button:hover{background-color:#2563eb}.pv-today-button svg{flex-shrink:0}.dark .pv-today-button{background-color:#2563eb;color:#fff;border-color:#2563eb}.dark .pv-today-button:hover{background-color:#1d4ed8}.pv-view-container{background-color:#fff;border-radius:0;overflow:visible;width:100%;max-width:none}.dark .pv-view-container{background-color:#1f2937}.pv-week-grid{display:grid;grid-template-columns:auto repeat(7,1fr);border-collapse:collapse;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 6px #0000001a}.dark .pv-week-grid{background-color:#1f2937;box-shadow:0 4px 6px #0000004d}.pv-header{font-weight:600;text-align:center;padding:12px;background-color:#e2e8f0;border-bottom:2px solid #cbd5e0;color:#1e293b}.dark .pv-header{background-color:#374151;border-bottom:2px solid #4b5563;color:#fff}.pv-employee-name{font-weight:600;padding:12px;background-color:#f1f5f9;border-right:2px solid #cbd5e0;color:#475569}.dark .pv-employee-name{background-color:#374151;border-right:2px solid #4b5563;color:#d1d5db}.pv-day-cell{border:1px solid #e2e8f0;padding:8px;min-height:120px;transition:background-color .3s ease}.pv-day-cell:hover{background-color:#f1f5f9}.pv-appointment{margin-bottom:8px;padding:8px;border-radius:6px;font-size:12px;cursor:move;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.dark .pv-appointment{box-shadow:0 2px 4px #0000004d}.pv-appointment:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.dark .pv-appointment:hover{box-shadow:0 4px 6px #0006}.pv-appointment-title{font-weight:600;margin-bottom:4px}.pv-appointment-time{display:flex;align-items:center;color:#64748b}.dark .pv-appointment-time{color:#9ca3af}.pv-modal{background-color:#fff;padding:24px;border-radius:12px;box-shadow:0 10px 15px #0000001a}.dark .pv-modal{background-color:#1f2937;box-shadow:0 10px 15px #00000080}.pv-modal-title{font-size:24px;font-weight:600;margin-bottom:24px;color:#1e293b;border-bottom:2px solid #e2e8f0;padding-bottom:12px}.dark .pv-modal-title{color:#fff;border-bottom:2px solid #374151}.pv-form-group{margin-bottom:16px}.pv-label{display:block;margin-bottom:8px;font-weight:500;color:#475569}.dark .pv-label{color:#d1d5db}.pv-input,.pv-select{width:100%;padding:10px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;transition:border-color .3s ease}.dark .pv-input,.dark .pv-select{background-color:#374151;border:1px solid #4b5563;color:#fff}.pv-input:focus,.pv-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark .pv-input:focus,.dark .pv-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.pv-button{padding:6px 12px;font-size:13px;border:1px solid #e2e8f0;border-radius:4px;background-color:#f8fafc;color:#64748b;cursor:pointer;transition:all .2s ease}.dark .pv-button{border:1px solid #374151;background-color:#374151;color:#9ca3af}.pv-button-primary{background-color:#e2e8f0;color:#1e293b;border-color:#cbd5e1}.pv-button-primary:hover{background-color:#cbd5e1}.dark .pv-button-primary{background-color:#4b5563;color:#fff;border-color:#6b7280}.dark .pv-button-primary:hover{background-color:#6b7280}.pv-button-secondary{background-color:#e2e8f0;color:#475569}.pv-button-secondary:hover{background-color:#cbd5e0}.dark .pv-button-secondary{background-color:#374151;color:#9ca3af}.dark .pv-button-secondary:hover{background-color:#4b5563}.pv-button-danger{background-color:#ef4444;color:#fff}.dark .pv-button-danger{background-color:#dc2626}.dark .pv-button-danger:hover{background-color:#b91c1c}.pv-button:hover{background-color:#f1f5f9}.dark .pv-button:hover{background-color:#4b5563}.pv-unassigned{background-color:#fee2e2}.dark .pv-unassigned{background-color:#7f1d1d}.pv-today{background-color:#e0f2fe}.dark .pv-today{background-color:#1e3a8a}@media (max-width: 768px){.pv-controls{flex-direction:column;gap:.75rem;padding:.75rem}.pv-view-buttons{width:100%;justify-content:center;order:1}.pv-date-navigation{width:100%;justify-content:center;order:2;padding:.5rem}.pv-date-range{min-width:160px;font-size:.8125rem}.pv-button,.pv-today-button{padding:.5rem .75rem;font-size:.8125rem}.pv-today-button span{display:none}.pv-today-button:after{content:"Auj.";margin-left:.25rem}.pv-week-grid{grid-template-columns:auto}.pv-header{position:-webkit-sticky;position:sticky;top:0;z-index:10}.pv-employee-name{position:-webkit-sticky;position:sticky;left:0;z-index:5}}@media (max-width: 480px){.pv-controls{padding:.5rem;gap:.5rem}.pv-view-buttons{gap:.25rem}.pv-button,.pv-today-button{padding:.375rem .625rem;font-size:.75rem}.pv-button-icon{padding:.375rem}.pv-date-range{min-width:140px;font-size:.75rem}.pv-date-navigation{padding:.375rem;gap:.375rem}}.pv-completed-toggle{display:flex;align-items:center;justify-content:center}.pv-toggle-container{display:flex;align-items:center;gap:.5rem}.pv-toggle-checkbox{position:absolute;opacity:0;width:0;height:0}.pv-toggle-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;padding:.25rem;border-radius:.5rem}.pv-toggle-label:hover{background-color:#3b82f60d}.pv-toggle-track{position:relative;width:44px;height:24px;background-color:#e5e7eb;border-radius:12px;transition:all .3s ease;box-shadow:inset 0 1px 3px #0000001a}.pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-track{background-color:#10b981}.pv-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:50%;transition:all .3s ease;box-shadow:0 1px 3px #0003}.pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-thumb{transform:translate(20px)}.pv-toggle-text{font-size:.875rem;font-weight:500;color:#374151;white-space:nowrap;transition:color .2s ease}.pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-text{color:#10b981}.dark .pv-toggle-track{background-color:#4b5563}.dark .pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-track{background-color:#34d399}.dark .pv-toggle-thumb{background-color:#f9fafb}.dark .pv-toggle-text{color:#d1d5db}.dark .pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-text{color:#34d399}.dark .pv-toggle-label:hover{background-color:#34d3991a}@media (max-width: 768px){.pv-toggle-container{gap:.375rem}.pv-toggle-track{width:40px;height:22px}.pv-toggle-thumb{width:18px;height:18px}.pv-toggle-checkbox:checked+.pv-toggle-label .pv-toggle-thumb{transform:translate(18px)}.pv-toggle-text{font-size:.8125rem}}@media (max-width: 480px){.pv-toggle-text{font-size:.75rem}}.pv-appointment{position:relative}.pv-copy-icon-wrapper{position:absolute;top:2px;right:2px;background-color:#fffc;border-radius:50%;padding:2px;display:flex;justify-content:center;align-items:center;z-index:10}.dark .pv-copy-icon-wrapper{background-color:#1f2937cc}.pv-copy-icon{color:#4a5568}.dark .pv-copy-icon{color:#9ca3af}.pv-appointment:hover .pv-copy-icon-wrapper{background-color:#fff}.dark .pv-appointment:hover .pv-copy-icon-wrapper{background-color:#1f2937}.pv-appointment:hover .pv-copy-icon{color:#2d3748}.dark .pv-appointment:hover .pv-copy-icon{color:#d1d5db}.pv-appointment{margin-bottom:4px;border-radius:3px;font-size:.75rem;transition:all .2s ease;box-shadow:0 1px 2px #0000001a}.dark .pv-appointment{box-shadow:0 1px 2px #0000004d}.pv-appointment:hover{box-shadow:0 2px 4px #00000026}.dark .pv-appointment:hover{box-shadow:0 2px 4px #0006}.pv-appointment-title{font-weight:600;margin-bottom:2px;display:flex;align-items:center}.pv-appointment-time{font-size:.7rem;opacity:.75;display:flex;align-items:center}.pv-appointment svg{flex-shrink:0}.pv-day-cell{border:1px solid #e2e8f0;padding:4px;min-height:100px;transition:background-color .2s ease}.dark .pv-day-cell{border:1px solid #374151}.pv-day-cell:hover{background-color:#f8fafc}.dark .pv-day-cell:hover{background-color:#374151}.pv-appointment{width:100%;margin-bottom:4px;border-radius:4px;overflow:hidden;transition:all .2s ease}.pv-appointment:hover{box-shadow:0 2px 5px #0003}.pv-appointment-title{font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.pv-appointment-title svg{margin-right:6px;flex-shrink:0}.pv-appointment-time{font-size:.75rem;background-color:#fff;color:#333;border-radius:4px;padding:2px 6px;display:inline-flex;align-items:center;margin-top:4px;box-shadow:0 1px 2px #0000001a}.pv-appointment-time svg{margin-right:4px}.pv-appointment-employee{font-size:.75rem;margin-top:4px;display:flex;align-items:center}.pv-appointment-employee svg{margin-right:4px}.pv-appointment-libre{background-color:#f3451080;color:#962f1d}.pv-appointment-reserve{background-color:#fde68a;color:#92400e}.pv-day-view .pv-appointment{margin-bottom:8px}.pv-week-view .pv-appointment{margin-right:6px}.pv-week-view-mobile .pv-appointment{margin-bottom:6px}.pv-week-appointment{height:100%;min-height:24px;font-size:.75rem;padding:2px 4px;width:100%;margin-bottom:8px;overflow:hidden}.pv-week-appointment .pv-appointment-content{display:flex;flex-direction:column;height:100%;justify-content:center}.pv-week-appointment .pv-appointment-title,.pv-week-appointment .pv-appointment-time{display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv-week-appointment .pv-appointment-title svg,.pv-week-appointment .pv-appointment-time svg{flex-shrink:0;margin-right:2px}.pv-week-appointment .pv-appointment-client-name{overflow:hidden;text-overflow:ellipsis}.pv-week-appointment .pv-appointment-time{font-size:.7rem;opacity:.8}.pv-appointment-status{font-size:.7rem;font-weight:700;margin-top:10px}.pv-appointment-libre .pv-appointment-status{color:#1e3a8a}.pv-appointment-reserve .pv-appointment-status{color:#92400e}.pv-appointment-assigne .pv-appointment-status{color:inherit}@media (max-width: 768px){.pv-week-appointment{font-size:.8rem}.pv-week-appointment .pv-appointment-time,.pv-week-appointment .pv-appointment-employee{font-size:.7rem}}.pv-appointment-libre{animation:pulse-red 2s infinite}.pv-appointment-libre:hover{transform:scale(1.05);transition:transform .2s ease-in-out}.pv-appointment-in-progress{background-color:#ffedd5;color:#9a3412;border-left-color:#fb923c}.pv-appointment-in-progress .bg-white{background-color:#ffffff80}.cwvm-container{font-family:Roboto,sans-serif;background-color:#f8fafc;color:#334155;padding:1rem}.cwvm-week-view{display:flex;flex-direction:column;gap:1rem}.cwvm-day-column{background:linear-gradient(to bottom,#fff,#f8fafc);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease}.cwvm-day-column:hover{box-shadow:0 4px 12px #00000026}.cwvm-day-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem;text-align:center;position:relative;overflow:hidden}.cwvm-day-header:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 3s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.cwvm-day-name{font-weight:700;color:#fff;font-size:1rem;position:relative;z-index:1}.cwvm-day-number{font-size:1.5rem;font-weight:700;color:#2d3748;margin-top:.25rem}.cwvm-appointments-list{padding:.5rem}.cwvm-appointments{padding:1rem}.cwvm-appointment{background-color:#fff;border-radius:8px;padding:1rem;margin-bottom:.75rem;box-shadow:0 2px 6px #0000001a;border-left:4px solid;transition:all .3s ease;cursor:pointer;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.cwvm-appointment:nth-child(1){animation-delay:0s}.cwvm-appointment:nth-child(2){animation-delay:.1s}.cwvm-appointment:nth-child(3){animation-delay:.2s}.cwvm-appointment:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.cwvm-appointment:active{transform:translateY(0)}.cwvm-appointment-time{font-weight:700;color:#3b82f6;display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;font-size:.95rem;gap:.5rem}.cwvm-appointment-employee{color:#1f2937;display:flex;align-items:center;font-weight:500;margin-bottom:.25rem}.cwvm-appointment-details{font-size:.875rem;color:#718096;margin-top:.25rem}.cwvm-appointment-service{font-size:.875rem;color:#718096}.cwvm-appointment-status{display:inline-block;font-size:.75rem;padding:.25rem .5rem;border-radius:9999px;font-weight:600;margin-top:.5rem}.cwvm-icon{margin-right:.5rem;flex-shrink:0}.cwvm-appointment-duration{display:inline-flex;align-items:center;font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:6px;margin-left:auto;font-weight:500}.cwvm-empty-state{text-align:center;padding:2rem 1rem;color:#9ca3af}.cwvm-empty-state-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}.cwvm-empty-state-text{font-size:.875rem;font-weight:500}.cwvm-appointments-count{display:inline-block;background:#fff3;color:#fff;font-size:.75rem;padding:.25rem .75rem;border-radius:9999px;margin-top:.5rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cwvm-today-badge{display:inline-block;background:#10b981;color:#fff;font-size:.7rem;padding:.25rem .6rem;border-radius:9999px;margin-left:.5rem;font-weight:700;animation:pulse 2s infinite;text-transform:uppercase;letter-spacing:.5px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.cwvm-appointment-libre{background-color:#fee2e2;color:#991b1b}.cwvm-appointment-reserve{background-color:#fef3c7;color:#92400e}.cwvm-appointment.non-assigned{border-left-color:#e53e3e}.cwvm-appointment.pending{border-left-color:#ed8936}@keyframes pulse-red{0%{box-shadow:0 0 #ef4444b3}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.cwvm-appointment-libre{animation:pulse-red 2s infinite}.cwvm-appointment-libre:hover{transform:scale(1.05);transition:transform .2s ease-in-out}.cwvm-appointment-in-progress{background-color:#ffedd5;color:#9a3412;border-left:4px solid #fb923c}@media (min-width: 640px){.cwvm-week-view{flex-direction:row;overflow-x:auto}.cwvm-day-column{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem}}html.dark .cwvm-container{background-color:#0f172a;color:#e2e8f0}html.dark .cwvm-day-column{background:linear-gradient(to bottom,#1e293b,#1a2332);box-shadow:0 2px 8px #0006;border-color:#334155}html.dark .cwvm-day-column:hover{box-shadow:0 4px 12px #0009}html.dark .cwvm-day-header{background:linear-gradient(135deg,#4c1d95,#5b21b6)}html.dark .cwvm-day-name{color:#fff}html.dark .cwvm-day-number{color:#f1f5f9}html.dark .cwvm-appointment{background-color:#1e293b;box-shadow:0 2px 6px #0006}html.dark .cwvm-appointment:hover{box-shadow:0 4px 12px #0009}html.dark .cwvm-appointment-time{color:#60a5fa}html.dark .cwvm-appointment-employee{color:#f3f4f6}html.dark .cwvm-appointment-details,html.dark .cwvm-appointment-service{color:#94a3b8}html.dark .cwvm-appointment-duration{background:#374151;color:#9ca3af}html.dark .cwvm-empty-state{color:#6b7280}html.dark .cwvm-appointments-count{background:#ffffff26}html.dark .cwvm-today-badge{background:#059669}html.dark .cwvm-appointment-libre{background-color:#1e3a8a;color:#93c5fd;border-left-color:#60a5fa}html.dark .cwvm-appointment-valide{background-color:#065f46;color:#6ee7b7;border-left-color:#10b981}html.dark .cwvm-appointment-reserve{background-color:#78350f;color:#fcd34d;border-left-color:#f59e0b}html.dark .cwvm-appointment.non-assigned{border-left-color:#ef4444}html.dark .cwvm-appointment.pending{border-left-color:#f59e0b}html.dark .cwvm-appointment-in-progress{background-color:#7c2d12;color:#fdba74;border-left-color:#fb923c}.cdv-container{padding:1rem;background-color:#f8fafc;height:100%;overflow-x:auto;overflow-y:auto;width:100%;max-width:none;box-sizing:border-box;position:relative}.dark .cdv-container{background-color:#1f2937}.cdv-timeline-header{display:flex;background-color:#fff;border-bottom:2px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dark .cdv-timeline-header{background-color:#111827;border-bottom-color:#374151}.cdv-employee-header{width:200px;min-width:200px;padding:1rem;background-color:#f7fafc;border-right:1px solid #e2e8f0;display:flex;align-items:center;flex-shrink:0}.dark .cdv-employee-header{background-color:#1f2937;border-right-color:#374151}.cdv-header-title{font-weight:600;color:#4a5568}.dark .cdv-header-title{color:#9ca3af}.cdv-time-header{display:flex;flex:1;overflow-x:auto;width:calc(100% - 200px);position:relative}.cdv-time-slot{flex:1;min-width:0;padding:.5rem .125rem;text-align:center;font-size:.65rem;font-weight:500;color:#718096;border-right:1px solid #e2e8f0;background-color:#f7fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.dark .cdv-time-slot{color:#9ca3af;border-right-color:#374151;background-color:#1f2937}.cdv-time-slot:last-child{border-right:none}.cdv-employee-row{display:flex;min-height:80px;border-bottom:1px solid #e2e8f0;background-color:#fff;transition:all .2s}.dark .cdv-employee-row{border-bottom-color:#374151;background-color:#111827}.cdv-employee-row:hover{background-color:#f7fafc}.dark .cdv-employee-row:hover{background-color:#1f2937}.cdv-employee-row.cdv-unassigned-row{background-color:#fef2f2;border:2px dashed transparent;transition:all .3s}.dark .cdv-employee-row.cdv-unassigned-row{background-color:#7f1d1d;border-color:#991b1b}.cdv-employee-row.cdv-unassigned-row:hover{background-color:#fee2e2;border-color:#ef4444}.dark .cdv-employee-row.cdv-unassigned-row:hover{background-color:#991b1b;border-color:#dc2626}.cdv-employee-row.cdv-on-leave{background-color:#f7fafc;opacity:.7;pointer-events:none}.dark .cdv-employee-row.cdv-on-leave{background-color:#1f2937}.cdv-employee-info{width:200px;min-width:200px;padding:1rem;display:flex;align-items:center;gap:.75rem;border-right:1px solid #e2e8f0;background-color:#fff;flex-shrink:0}.dark .cdv-employee-info{border-right-color:#374151;background-color:#111827}.cdv-employee-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:.875rem;flex-shrink:0}.cdv-unassigned-avatar{background-color:#9ca3af}.dark .cdv-unassigned-avatar{background-color:#6b7280}.cdv-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.cdv-avatar-initials{font-weight:600}.cdv-employee-details{flex:1;min-width:0}.cdv-employee-name{font-weight:600;color:#2d3748;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .cdv-employee-name{color:#f3f4f6}.cdv-unassigned-name{color:#dc2626}.dark .cdv-unassigned-name{color:#f87171}.cdv-leave-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#6b7280}.dark .cdv-leave-indicator{color:#9ca3af}.cdv-leave-icon{width:14px;height:14px}.cdv-timeline-container{flex:1;position:relative;min-height:80px;width:calc(100% - 200px)}.cdv-timeline-background{display:flex;height:100%;position:absolute;inset:0}.cdv-timeline-slot{flex:1;min-width:0;box-sizing:border-box;border-right:1px solid #f1f5f9}.dark .cdv-timeline-slot{border-right-color:#374151}.cdv-timeline-slot:last-child{border-right:none}.cdv-timeline-slot:nth-child(2n){background-color:#f8fafc}.dark .cdv-timeline-slot:nth-child(2n){background-color:#1f2937}.cdv-appointments-timeline{position:absolute;inset:0;pointer-events:none;z-index:1}.cdv-timeline-appointment{position:absolute;top:50%;transform:translateY(-50%);height:70%;background-color:#fff;border:2px solid #e2e8f0;border-radius:.375rem;padding:.5rem;cursor:grab;pointer-events:auto!important;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s,border-color .2s;overflow:hidden;z-index:1;box-sizing:border-box;-webkit-user-select:none;user-select:none}.dark .cdv-timeline-appointment{background-color:#1f2937;border-color:#4b5563;box-shadow:0 1px 3px #0000004d}.cdv-timeline-appointment:active{cursor:grabbing}.cdv-timeline-appointment:hover{box-shadow:0 4px 6px #0000001a;z-index:2;border-color:#3b82f6}.dark .cdv-timeline-appointment:hover{box-shadow:0 4px 6px #0006}.cdv-appointment-content{height:100%;display:flex;flex-direction:column;gap:.25rem;pointer-events:none}.cdv-appointment-content>*{pointer-events:none}.cdv-appointment-time{font-size:.75rem;font-weight:600;color:#4a5568;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark .cdv-appointment-time{color:#d1d5db}.cdv-appointment-details{font-size:.75rem;color:#718096;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dark .cdv-appointment-details{color:#9ca3af}.cdv-notes-indicator{position:absolute;top:4px;right:4px;font-size:.75rem}.cdv-timeline-appointment.cdv-in-progress{background-color:#fef3c7;border-color:#f59e0b}.dark .cdv-timeline-appointment.cdv-in-progress{background-color:#78350f;border-color:#f59e0b}.cdv-timeline-appointment.cdv-completed{background-color:#d1fae5;border-color:#10b981}.dark .cdv-timeline-appointment.cdv-completed{background-color:#064e3b;border-color:#10b981}.cdv-timeline-appointment.cdv-assigned{background-color:#e0f2fe;border-color:#3b82f6}.dark .cdv-timeline-appointment.cdv-assigned{background-color:#1e3a8a;border-color:#3b82f6}.cdv-timeline-appointment.cdv-unassigned{background-color:#fee2e2;border-color:#ef4444}.dark .cdv-timeline-appointment.cdv-unassigned{background-color:#7f1d1d;border-color:#ef4444}.cdv-leave-block{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#f7fafc;color:#9ca3af;font-size:.875rem;font-style:italic}.dark .cdv-leave-block{background-color:#1f2937;color:#6b7280}.cdv-leave-text{padding:.5rem 1rem;background-color:#fff;border:1px dashed #d1d5db;border-radius:.375rem}.dark .cdv-leave-text{background-color:#111827;border-color:#4b5563}.cdv-timeline-appointment.dragging{opacity:.5;box-shadow:0 8px 16px #0003}.cdv-timeline-container{position:relative;transition:background-color .2s}.cdv-employee-row.cdv-dragging-over{background-color:#dbeafe!important;border:2px solid #3b82f6!important;box-shadow:inset 0 0 0 2px #3b82f6}.cdv-employee-row.cdv-unassigned-row.cdv-dragging-over{background-color:#fecaca!important;border-color:#ef4444!important;box-shadow:inset 0 0 0 2px #ef4444}.cdv-employee-row.cdv-on-leave.cdv-dragging-over{background-color:#fef3c7!important;border-color:#f59e0b!important;box-shadow:inset 0 0 0 2px #f59e0b;opacity:1;pointer-events:auto}.cdv-timeline-appointment[data-rbd-drag-handle-draggable-id]{transition:none!important}.cdv-timeline-appointment[style*=transform]{box-shadow:0 8px 16px #00000026!important;opacity:.9}.cdv-drag-overlay{box-shadow:0 12px 30px #0006!important;transform:rotate(2deg) scale(1.05)!important;border:2px solid #3b82f6!important;z-index:9999!important;cursor:grabbing!important;transition:none!important;pointer-events:none!important}.cdv-timeline-appointment.dragging{opacity:.3!important;transform:scale(.95)!important;transition:all .2s ease!important}.cdv-employee-row.cdv-dragging-over:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(59,130,246,.1) 25%,transparent 25%,transparent 50%,rgba(59,130,246,.1) 50%,rgba(59,130,246,.1) 75%,transparent 75%,transparent);background-size:20px 20px;animation:stripe-animation 1s linear infinite;z-index:1;pointer-events:none}.cdv-employee-row.cdv-unassigned-row.cdv-dragging-over:before{background:linear-gradient(45deg,rgba(239,68,68,.1) 25%,transparent 25%,transparent 50%,rgba(239,68,68,.1) 50%,rgba(239,68,68,.1) 75%,transparent 75%,transparent);background-size:20px 20px}@keyframes stripe-animation{0%{background-position:0 0}to{background-position:20px 20px}}.cdv-add-button{position:fixed;bottom:1rem;right:1rem;background-color:#4299e1;color:#fff;border-radius:9999px;padding:.75rem;box-shadow:0 2px 4px #0000001a;transition:background-color .2s;z-index:100;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.dark .cdv-add-button{background-color:#3b82f6;box-shadow:0 2px 4px #0000004d}.cdv-add-button:hover{background-color:#3182ce;transform:scale(1.05)}.dark .cdv-add-button:hover{background-color:#2563eb}@media (max-width: 768px){.cdv-container{padding:.5rem}.cdv-employee-header,.cdv-employee-info{width:120px;padding:.5rem}.cdv-employee-avatar{width:36px;height:36px;font-size:.75rem}.cdv-time-slot{min-width:40px;padding:.5rem .25rem;font-size:.7rem}.cdv-timeline-slot{min-width:40px}.cdv-appointment-time,.cdv-appointment-details{font-size:.7rem}}@media (max-width: 480px){.cdv-container{padding:.25rem}.cdv-employee-header,.cdv-employee-info{width:100px;padding:.25rem}.cdv-employee-avatar{width:32px;height:32px;font-size:.7rem}.cdv-time-slot{min-width:30px;padding:.25rem .125rem;font-size:.65rem}.cdv-timeline-slot{min-width:30px}.cdv-appointment-time,.cdv-appointment-details{font-size:.65rem}.cdv-timeline-appointment{padding:.25rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cdv-container::-webkit-scrollbar{width:8px;height:8px}.cdv-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.dark .cdv-container::-webkit-scrollbar-track{background:#374151}.cdv-container::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.dark .cdv-container::-webkit-scrollbar-thumb{background:#6b7280}.cdv-container::-webkit-scrollbar-thumb:hover{background:#a0aec0}.dark .cdv-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.pv-container.pv-month-view{display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.pv-month-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;background-color:#fff;box-shadow:0 2px 4px #0000001a;flex-shrink:0}.pv-month-navigation{display:flex;justify-content:space-between;align-items:center;padding:1rem}.pv-day-names{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:#f3f4f6;border-bottom:1px solid #e5e7eb}.pv-day-name{padding:.5rem;text-align:center;font-weight:700;color:#4b5563;font-size:.875rem}.pv-month-grid-container{flex-grow:1;overflow-y:auto;min-height:0;max-height:calc(100vh - 140px);scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.pv-month-grid-container::-webkit-scrollbar{width:8px}.pv-month-grid-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.pv-month-grid-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.pv-month-grid-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.pv-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:#e5e7eb;min-height:-webkit-min-content;min-height:min-content}.pv-day-cell{min-height:150px;background-color:#fff;padding:.25rem;position:relative;overflow:hidden;display:flex;flex-direction:column}.pv-day-cell[data-on-leave=true]{background-color:#fafafa;position:relative;cursor:not-allowed;border:1px dashed #e5e7eb}.pv-date-number{font-weight:700;margin-bottom:.5rem}.pv-today{color:#3b82f6;background-color:#abc4e0}.pv-current-month{background-color:#fff}.pv-other-month{background-color:#f9fafb;color:#9ca3af}.pv-empty-cell{background-color:#f3f4f6}.pv-appointments-container{display:flex;flex-direction:column;gap:.125rem;flex-grow:1;overflow:hidden}.pv-appointment{padding:.125rem .25rem;border-radius:.125rem;font-size:.7rem;cursor:pointer;transition:all .2s ease-in-out;line-height:1.2;min-height:auto}.pv-appointment:hover{transform:scale(1.01);box-shadow:0 1px 3px #0000001a}.pv-dragging{opacity:.5}.pv-copy-icon-wrapper{position:absolute;top:.25rem;right:.25rem;background-color:#fff;border-radius:50%;padding:.25rem}.pv-copy-icon{color:#3b82f6}.pv-day-cell.pv-overflow{position:relative}.pv-day-cell.pv-overflow:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20px;background:linear-gradient(transparent,#ffffffe6);pointer-events:none}.pv-more-appointments{background-color:#f8fafc;border:1px dashed #d1d5db;color:#6b7280;font-size:.65rem;padding:.125rem .25rem;border-radius:.125rem;cursor:pointer;text-align:center;margin-top:.125rem}.pv-more-appointments:hover{background-color:#e5e7eb;color:#374151}.pv-appointment-count{position:absolute;top:.125rem;right:.125rem;background-color:#ef4444;color:#fff;border-radius:50%;width:16px;height:16px;font-size:.6rem;display:flex;align-items:center;justify-content:center;font-weight:700}@media (max-width: 768px){.pv-day-cell{min-height:100px;padding:.125rem}.pv-appointment{font-size:.65rem;padding:.1rem .2rem}.pv-date-number{font-size:.75rem;margin-bottom:.25rem}.pv-day-name{font-size:.75rem;padding:.25rem}}@media (max-width: 480px){.pv-day-cell{min-height:80px}.pv-appointment{font-size:.6rem}.pv-month-navigation{padding:.5rem}}@supports (-webkit-touch-callout: none){body{-webkit-overflow-scrolling:touch}input,textarea,select{font-size:16px}}@media (hover: none) and (pointer: coarse){button,.clickable,[role=button]{min-height:44px;min-width:44px}.sb-item{padding:1rem}*{-webkit-tap-highlight-color:transparent}}@media (max-width: 768px){*{animation-duration:.3s!important;transition-duration:.2s!important}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}img{max-width:100%;height:auto}body{text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased}}.mobile-loading-overlay{position:fixed;inset:0;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.mobile-loading-spinner{width:40px;height:40px;border:3px solid #f3f4f6;border-top:3px solid #2563eb;border-radius:50%;animation:mobile-spin 1s linear infinite}@keyframes mobile-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mobile-loading-text{margin-top:1rem;color:#6b7280;font-size:.875rem;text-align:center}.mobile-error-fallback{padding:2rem;text-align:center;font-family:system-ui,sans-serif;background:#fff;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.mobile-error-title{color:#dc2626;margin-bottom:1rem;font-size:1.25rem}.mobile-error-message{color:#4b5563;margin-bottom:1.5rem;line-height:1.5}.mobile-reload-button{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:.875rem;min-height:44px;min-width:120px}.mobile-reload-button:active{background:#1d4ed8;transform:scale(.98)}@media (max-width: 768px){input,textarea,select{font-size:16px}.input-field{padding:.875rem;border-radius:.5rem}.auth-form{gap:1.25rem}.input-group{gap:.5rem}}@media (max-width: 768px){.container,.page-container{max-width:100%;overflow-x:hidden}.scrollable-container{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}}@media (max-width: 768px){table{font-size:.875rem}table th,table td{padding:.5rem .75rem}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}}@supports (padding: max(0px)){.safe-area-padding{padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.mobile-loading-spinner{border-color:#000;border-top-color:#00f}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.form-input,.form-textarea,.form-select,.form-multiselect{-webkit-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}.form-input:focus,.form-textarea:focus,.form-select:focus,.form-multiselect:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}.form-input::placeholder,.form-textarea::placeholder{color:#6b7280;opacity:1}.form-input::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}.form-input::-webkit-datetime-edit{display:inline-flex}.form-input::-webkit-datetime-edit,.form-input::-webkit-datetime-edit-year-field,.form-input::-webkit-datetime-edit-month-field,.form-input::-webkit-datetime-edit-day-field,.form-input::-webkit-datetime-edit-hour-field,.form-input::-webkit-datetime-edit-minute-field,.form-input::-webkit-datetime-edit-second-field,.form-input::-webkit-datetime-edit-millisecond-field,.form-input::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}.form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}.form-checkbox,.form-radio{-webkit-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}.form-checkbox{border-radius:0}.form-checkbox:focus,.form-radio:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.form-checkbox:checked,.form-radio:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}.form-checkbox:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){.form-checkbox:checked{-webkit-appearance:auto;appearance:auto}}.form-checkbox:checked:hover,.form-checkbox:checked:focus,.form-radio:checked:hover,.form-radio:checked:focus{border-color:transparent;background-color:currentColor}.form-checkbox:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){.form-checkbox:indeterminate{-webkit-appearance:auto;appearance:auto}}.form-checkbox:indeterminate:hover,.form-checkbox:indeterminate:focus{border-color:transparent;background-color:currentColor}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-2{bottom:-.5rem}.-left-2{left:-.5rem}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-right-3{right:-.75rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-16{bottom:4rem}.bottom-4{bottom:1rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-2{top:.5rem}.top-20{top:5rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.m-4{margin:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-ml-1{margin-left:-.25rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-7{margin-left:1.75rem}.ml-auto{margin-left:auto}.mr-0\.5{margin-right:.125rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.list-item{display:list-item}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[90vh\]{height:90vh}.h-\[calc\(100vh-260px\)\]{height:calc(100vh - 260px)}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[95vh\]{max-height:95vh}.max-h-\[calc\(100vh-200px\)\]{max-height:calc(100vh - 200px)}.min-h-24{min-height:6rem}.min-h-48{min-height:12rem}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[44px\]{min-height:44px}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-96{width:24rem}.w-fit{width:-webkit-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-12{min-width:3rem}.min-w-\[100px\]{min-width:100px}.min-w-\[120px\]{min-width:120px}.min-w-\[200px\]{min-width:200px}.min-w-\[20px\]{min-width:20px}.min-w-\[44px\]{min-width:44px}.min-w-\[80px\]{min-width:80px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-6{--tw-translate-x: 1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-copy{cursor:copy}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity, 1))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-l-md{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-500\/30{border-color:#f59e0b4d}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.border-current{border-color:currentColor}.border-cyan-500{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.border-emerald-600{--tw-border-opacity: 1;border-color:rgb(5 150 105 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-200\/50{border-color:#e5e7eb80}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.border-gray-500\/30{border-color:#6b72804d}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500\/30{border-color:#22c55e4d}.border-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-indigo-400{--tw-border-opacity: 1;border-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-orange-100{--tw-border-opacity: 1;border-color:rgb(255 237 213 / var(--tw-border-opacity, 1))}.border-orange-200{--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-orange-700{--tw-border-opacity: 1;border-color:rgb(194 65 12 / var(--tw-border-opacity, 1))}.border-pink-200{--tw-border-opacity: 1;border-color:rgb(251 207 232 / var(--tw-border-opacity, 1))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.border-l-gray-300{--tw-border-opacity: 1;border-left-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-l-green-500{--tw-border-opacity: 1;border-left-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-l-orange-500{--tw-border-opacity: 1;border-left-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-l-red-500{--tw-border-opacity: 1;border-left-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-cyan-100{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity, 1))}.bg-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity, 1))}.bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-200\/50{background-color:#e5e7eb80}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-200{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-200{--tw-bg-opacity: 1;background-color:rgb(199 210 254 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-orange-500\/10{background-color:#f973161a}.bg-orange-600{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.bg-orange-800{--tw-bg-opacity: 1;background-color:rgb(154 52 18 / var(--tw-bg-opacity, 1))}.bg-orange-900{--tw-bg-opacity: 1;background-color:rgb(124 45 18 / var(--tw-bg-opacity, 1))}.bg-orange-900\/20{background-color:#7c2d1233}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 231 243 / var(--tw-bg-opacity, 1))}.bg-pink-50{--tw-bg-opacity: 1;background-color:rgb(253 242 248 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-200{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-500\/10{background-color:#a855f71a}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/20{background-color:#fff3}.bg-white\/80{background-color:#fffc}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-yellow-900{--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity, 1))}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-30{--tw-bg-opacity: .3}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-60{--tw-bg-opacity: .6}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-75{--tw-bg-opacity: .75}.bg-opacity-90{--tw-bg-opacity: .9}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-amber-600{--tw-gradient-from: #d97706 var(--tw-gradient-from-position);--tw-gradient-to: rgb(217 119 6 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-100{--tw-gradient-from: #dbeafe var(--tw-gradient-from-position);--tw-gradient-to: rgb(219 234 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-50{--tw-gradient-from: #ecfeff var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 254 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-600{--tw-gradient-from: #059669 var(--tw-gradient-from-position);--tw-gradient-to: rgb(5 150 105 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-600{--tw-gradient-from: #4b5563 var(--tw-gradient-from-position);--tw-gradient-to: rgb(75 85 99 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-600{--tw-gradient-from: #16a34a var(--tw-gradient-from-position);--tw-gradient-to: rgb(22 163 74 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from: #c084fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(192 132 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-50{--tw-gradient-from: #faf5ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-amber-700{--tw-gradient-to: #b45309 var(--tw-gradient-to-position)}.to-blue-100{--tw-gradient-to: #dbeafe var(--tw-gradient-to-position)}.to-blue-200{--tw-gradient-to: #bfdbfe var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to: #eff6ff var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to: #0891b2 var(--tw-gradient-to-position)}.to-emerald-700{--tw-gradient-to: #047857 var(--tw-gradient-to-position)}.to-gray-100{--tw-gradient-to: #f3f4f6 var(--tw-gradient-to-position)}.to-gray-50{--tw-gradient-to: #f9fafb var(--tw-gradient-to-position)}.to-gray-700{--tw-gradient-to: #374151 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-green-700{--tw-gradient-to: #15803d var(--tw-gradient-to-position)}.to-indigo-100{--tw-gradient-to: #e0e7ff var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to: #eef2ff var(--tw-gradient-to-position)}.to-indigo-700{--tw-gradient-to: #4338ca var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to: #ea580c var(--tw-gradient-to-position)}.to-pink-50{--tw-gradient-to: #fdf2f8 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pl-11{padding-left:2.75rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-current{color:currentColor}.text-cyan-500{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.text-cyan-800{--tw-text-opacity: 1;color:rgb(21 94 117 / var(--tw-text-opacity, 1))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-50{--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-indigo-800{--tw-text-opacity: 1;color:rgb(55 48 163 / var(--tw-text-opacity, 1))}.text-orange-100{--tw-text-opacity: 1;color:rgb(255 237 213 / var(--tw-text-opacity, 1))}.text-orange-200{--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.text-orange-300{--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-orange-800{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.text-orange-900{--tw-text-opacity: 1;color:rgb(124 45 18 / var(--tw-text-opacity, 1))}.text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.text-pink-700{--tw-text-opacity: 1;color:rgb(190 24 93 / var(--tw-text-opacity, 1))}.text-pink-800{--tw-text-opacity: 1;color:rgb(157 23 77 / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-purple-900{--tw-text-opacity: 1;color:rgb(88 28 135 / var(--tw-text-opacity, 1))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-teal-500{--tw-text-opacity: 1;color:rgb(20 184 166 / var(--tw-text-opacity, 1))}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/50{color:#ffffff80}.text-white\/90{color:#ffffffe6}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-blue-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity, 1))}.ring-blue-50{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 246 255 / var(--tw-ring-opacity, 1))}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1))}.ring-white\/20{--tw-ring-color: rgb(255 255 255 / .2)}.ring-offset-white{--tw-ring-offset-color: #fff}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;color:#1e293b}code{font-family:Fira Code,Monaco,Consolas,Courier New,monospace}.dashboard-container{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.dashboard-container::-webkit-scrollbar{width:6px}.dashboard-container::-webkit-scrollbar-track{background:transparent}.dashboard-container::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:3px}.dashboard-container::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.bg-white{background:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e2e8f0;transition:all .3s ease}.bg-white:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.bg-white.p-5{padding:1.5rem}button.bg-blue-500{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.875rem;line-height:1.25rem;transition:all .15s ease-in-out;border:none;cursor:pointer;gap:.5rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}button.bg-blue-500:hover{transform:translateY(-1px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}button.bg-gray-200{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.875rem;line-height:1.25rem;transition:all .15s ease-in-out;border:none;cursor:pointer;gap:.5rem;background:#fff;color:#374151;border:1px solid #d1d5db}button.bg-gray-200:hover{background:#f9fafb;border-color:#9ca3af}.bg-green-100{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:500;line-height:1;background:#10b9811a;color:#10b981}.bg-red-100{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:500;line-height:1;background:#ef44441a;color:#ef4444}.bg-yellow-100{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:500;line-height:1;background:#f59e0b1a;color:#f59e0b}.bg-blue-100{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:500;line-height:1;background:#3b82f61a;color:#3b82f6}input[type=text],input[type=email],input[type=password],select,textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .15s ease-in-out;background:#fff;color:#1e293b}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,select:focus,textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark input[type=text],.dark input[type=email],.dark input[type=password],.dark select,.dark textarea{background:#374151;border-color:#4b5563;color:#f9fafb}.dark input[type=text]:focus,.dark input[type=email]:focus,.dark input[type=password]:focus,.dark select:focus,.dark textarea:focus{border-color:#3b82f6;background:#1f2937;box-shadow:0 0 0 3px #3b82f64d}.dark input[type=text]::placeholder,.dark input[type=email]::placeholder,.dark input[type=password]::placeholder,.dark textarea::placeholder{color:#9ca3af;opacity:1}table{width:100%;border-collapse:separate;border-spacing:0}table th{background:#f9fafb;padding:.75rem 1rem;text-align:left;font-weight:500;color:#374151;border-bottom:1px solid #e5e7eb}table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}table tr:last-child td{border-bottom:none}.sb-item{display:flex;align-items:center;padding:.75rem 1rem;color:#4b5563;text-decoration:none;border-radius:.5rem;transition:all .15s ease-in-out;gap:.75rem}.sb-item:hover{background:#eff6ff;color:#1d4ed8}.sb-item.active{background:#dbeafe;color:#1d4ed8;font-weight:500}.ml-header{background:#ffffff40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.2)}*{transition:color .2s ease,background-color .2s ease,border-color .2s ease}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes fadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}.animate-fade-in-down{animation:fadeInDown .3s ease-out}.App{text-align:left}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion: no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.client-management-page{position:relative}.toggle-header-button{position:absolute;top:0;right:20px;background-color:#f0f0f0;border:none;border-radius:0 0 5px 5px;padding:5px 10px;cursor:pointer;transition:all .3s ease}.toggle-header-button:hover{background-color:#e0e0e0}.client-management-header{transition:max-height .3s ease,opacity .3s ease;max-height:200px;opacity:1;overflow:hidden}.client-management-header.hidden{max-height:0;opacity:0}.week-grid{display:grid;grid-template-columns:150px repeat(7,1fr);gap:1px;background-color:#e5e7eb}.employee-header,.day-header,.employee-name,.day-cell{background-color:#fff;padding:8px}.employee-header,.employee-name{position:-webkit-sticky;position:sticky;left:0;z-index:10;background-color:#f3f4f6}.day-header{text-align:center;font-weight:700}.day-cell{min-height:100px}.appointment{margin-bottom:4px;padding:4px;border-radius:4px;font-size:.8rem}.App-link{color:#61dafb}.dragging{opacity:.5}.drag-over{background-color:#0000001a}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.client-week-view{height:100vh}.week-grid{min-width:-webkit-max-content;min-width:max-content}.day-cell{min-width:150px}@media (max-width: 768px){.client-list{display:flex;flex-direction:column;gap:1rem}.client-item{display:flex;align-items:center;padding:.5rem}.color-circle{width:2rem;height:2rem;border-radius:50%;flex-shrink:0;margin-right:.5rem}.client-details{flex-grow:1;min-width:0}.client-details h3{font-size:1rem;margin:0}.client-details p{font-size:.875rem;margin:0}.week-grid{grid-template-columns:100px repeat(7,minmax(100px,1fr))}.day-cell{min-width:100px}}html{font-size:16px}@media (max-width: 768px){html{font-size:14px}}*{box-sizing:border-box}.client-management-page{max-width:100%;overflow-x:hidden}.day-header.today{background-color:#b3d9ff;font-weight:700}.day-cell.today{background-color:#cce6ff}.day-cell.today:hover{background-color:#9cf}.employee-name.non-assigne{background-color:#f0f0f0;font-weight:700}.day-cell.non-assigne.today{background-color:#cce6ff}.leave-indicator{position:relative;height:100%;min-height:80px;background:repeating-linear-gradient(-45deg,#f8fafc,#f8fafc 8px,#f1f5f9 8px 16px);border-radius:4px;box-shadow:inset 0 0 0 1px #0000000d}.leave-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;background-color:#fff;padding:8px 12px;border-radius:6px;box-shadow:0 1px 3px #0000001a;white-space:nowrap}.leave-content .leave-icon{color:#6366f1;margin-right:8px}.leave-content span{color:#4b5563;font-size:.875rem;font-weight:500}.leave-icon{color:#6b7280}.leave-indicator:hover .leave-content{background-color:#fffffff2}.employee-offday-indicator{background-color:#f3f4f6;border-radius:.25rem;margin:.125rem 0;font-size:.75rem;padding:.25rem;border-left:2px solid #E5E7EB}.employee-offday-content{display:flex;align-items:center;gap:.25rem}.employee-offday-icon{color:#6b7280}.employee-offday-text{color:#4b5563;font-weight:500}.total-hours{text-align:left;padding:0;margin-top:0;font-size:.755rem}.appointment{min-height:40px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.shadow-green-glow{box-shadow:0 0 0 2px #10b981,0 0 0 4px #10b9814d,0 0 10px #10b98180}.shadow-red-glow{box-shadow:0 0 0 2px #ef4444,0 0 0 4px #ef44444d,0 0 10px #ef444480}.sticky-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;background-color:#fff}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.first\:rounded-t-lg:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.last\:rounded-b-lg:last-child{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.last\:border-b-0:last-child{border-bottom-width:0px}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-300:hover{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.hover\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:bg-amber-200:hover{--tw-bg-opacity: 1;background-color:rgb(253 230 138 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-cyan-200:hover{--tw-bg-opacity: 1;background-color:rgb(165 243 252 / var(--tw-bg-opacity, 1))}.hover\:bg-cyan-50:hover{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity, 1))}.hover\:bg-cyan-700:hover{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-200:hover{--tw-bg-opacity: 1;background-color:rgb(167 243 208 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100\/80:hover{background-color:#f3f4f6cc}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-400:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-900\/90:hover{background-color:#111827e6}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-200:hover{--tw-bg-opacity: 1;background-color:rgb(199 210 254 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-600:hover{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-100:hover{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-200:hover{--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-50:hover{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-600:hover{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-700:hover{--tw-bg-opacity: 1;background-color:rgb(194 65 12 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-600:hover{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500\/90:hover{background-color:#ef4444e6}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900:hover{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-teal-200:hover{--tw-bg-opacity: 1;background-color:rgb(153 246 228 / var(--tw-bg-opacity, 1))}.hover\:bg-violet-200:hover{--tw-bg-opacity: 1;background-color:rgb(221 214 254 / var(--tw-bg-opacity, 1))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:bg-yellow-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-gradient-to-br:hover{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.hover\:from-blue-500:hover{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-gray-100:hover{--tw-gradient-from: #f3f4f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(243 244 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-cyan-500:hover{--tw-gradient-to: #06b6d4 var(--tw-gradient-to-position)}.hover\:to-gray-200:hover{--tw-gradient-to: #e5e7eb var(--tw-gradient-to-position)}.hover\:text-blue-100:hover{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.hover\:text-blue-400:hover{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-500:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-green-800:hover{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.hover\:text-orange-600:hover{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.hover\:text-orange-800:hover{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.hover\:text-purple-600:hover{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-red-800:hover{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.hover\:text-teal-800:hover{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-blue-500\/25:hover{--tw-shadow-color: rgb(59 130 246 / .25);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-cyan-500\/25:hover{--tw-shadow-color: rgb(6 182 212 / .25);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-purple-500\/25:hover{--tw-shadow-color: rgb(168 85 247 / .25);--tw-shadow: var(--tw-shadow-colored)}.focus\:border-blue-400:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-gray-500:focus{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.focus\:border-indigo-300:focus{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.focus\:border-red-500:focus{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity, 1))}.focus\:ring-gray-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity, 1))}.focus\:ring-gray-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.focus\:ring-green-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(134 239 172 / var(--tw-ring-opacity, 1))}.focus\:ring-green-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(74 222 128 / var(--tw-ring-opacity, 1))}.focus\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1))}.focus\:ring-orange-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 115 22 / var(--tw-ring-opacity, 1))}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-red-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity, 1))}.focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.focus\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus\:ring-yellow-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 204 21 / var(--tw-ring-opacity, 1))}.focus\:ring-yellow-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(234 179 8 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-gray-900:focus{--tw-ring-offset-color: #111827}.focus\:ring-offset-white:focus{--tw-ring-offset-color: #fff}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-gray-950:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(3 7 18 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-blue-300:disabled{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-300:disabled{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-800:disabled{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.disabled\:bg-green-300:disabled{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity, 1))}.disabled\:bg-orange-300:disabled{--tw-bg-opacity: 1;background-color:rgb(253 186 116 / var(--tw-bg-opacity, 1))}.disabled\:bg-purple-300:disabled{--tw-bg-opacity: 1;background-color:rgb(216 180 254 / var(--tw-bg-opacity, 1))}.disabled\:bg-red-300:disabled{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:divide-gray-600:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(75 85 99 / var(--tw-divide-opacity, 1))}.dark\:divide-gray-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.dark\:border-amber-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(146 64 14 / var(--tw-border-opacity, 1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.dark\:border-blue-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.dark\:border-blue-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-600\/50:is(.dark *){border-color:#4b556380}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.dark\:border-green-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.dark\:border-green-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.dark\:border-green-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.dark\:border-green-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.dark\:border-indigo-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.dark\:border-indigo-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 48 163 / var(--tw-border-opacity, 1))}.dark\:border-orange-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(194 65 12 / var(--tw-border-opacity, 1))}.dark\:border-orange-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(154 52 18 / var(--tw-border-opacity, 1))}.dark\:border-pink-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(157 23 77 / var(--tw-border-opacity, 1))}.dark\:border-purple-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(126 34 206 / var(--tw-border-opacity, 1))}.dark\:border-purple-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 33 168 / var(--tw-border-opacity, 1))}.dark\:border-red-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.dark\:border-red-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.dark\:border-yellow-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.dark\:border-yellow-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(202 138 4 / var(--tw-border-opacity, 1))}.dark\:border-yellow-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity, 1))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(133 77 14 / var(--tw-border-opacity, 1))}.dark\:bg-amber-900\/20:is(.dark *){background-color:#78350f33}.dark\:bg-amber-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 26 3 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-800\/30:is(.dark *){background-color:#1e40af4d}.dark\:bg-blue-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-900\/10:is(.dark *){background-color:#1e3a8a1a}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1e3a8a33}.dark\:bg-blue-900\/30:is(.dark *){background-color:#1e3a8a4d}.dark\:bg-blue-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 37 84 / var(--tw-bg-opacity, 1))}.dark\:bg-cyan-900\/20:is(.dark *){background-color:#164e6333}.dark\:bg-cyan-900\/30:is(.dark *){background-color:#164e634d}.dark\:bg-emerald-900\/20:is(.dark *){background-color:#064e3b33}.dark\:bg-gray-50:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-600\/50:is(.dark *){background-color:#4b556380}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-700\/50:is(.dark *){background-color:#37415180}.dark\:bg-gray-700\/80:is(.dark *){background-color:#374151cc}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900\/50:is(.dark *){background-color:#11182780}.dark\:bg-gray-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(3 7 18 / var(--tw-bg-opacity, 1))}.dark\:bg-green-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.dark\:bg-green-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900\/10:is(.dark *){background-color:#14532d1a}.dark\:bg-green-900\/20:is(.dark *){background-color:#14532d33}.dark\:bg-green-900\/30:is(.dark *){background-color:#14532d4d}.dark\:bg-green-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 46 22 / var(--tw-bg-opacity, 1))}.dark\:bg-indigo-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.dark\:bg-indigo-800\/30:is(.dark *){background-color:#3730a34d}.dark\:bg-indigo-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.dark\:bg-indigo-900\/10:is(.dark *){background-color:#312e811a}.dark\:bg-indigo-900\/20:is(.dark *){background-color:#312e8133}.dark\:bg-indigo-900\/30:is(.dark *){background-color:#312e814d}.dark\:bg-orange-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.dark\:bg-orange-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(154 52 18 / var(--tw-bg-opacity, 1))}.dark\:bg-orange-800\/30:is(.dark *){background-color:#9a34124d}.dark\:bg-orange-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(124 45 18 / var(--tw-bg-opacity, 1))}.dark\:bg-orange-900\/20:is(.dark *){background-color:#7c2d1233}.dark\:bg-orange-900\/30:is(.dark *){background-color:#7c2d124d}.dark\:bg-pink-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(131 24 67 / var(--tw-bg-opacity, 1))}.dark\:bg-pink-900\/20:is(.dark *){background-color:#83184333}.dark\:bg-purple-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 33 168 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-900\/20:is(.dark *){background-color:#581c8733}.dark\:bg-purple-900\/30:is(.dark *){background-color:#581c874d}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.dark\:bg-red-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.dark\:bg-red-800\/30:is(.dark *){background-color:#991b1b4d}.dark\:bg-red-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.dark\:bg-red-900\/20:is(.dark *){background-color:#7f1d1d33}.dark\:bg-red-900\/30:is(.dark *){background-color:#7f1d1d4d}.dark\:bg-red-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(69 10 10 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/20:is(.dark *){background-color:#0f172a33}.dark\:bg-teal-900\/20:is(.dark *){background-color:#134e4a33}.dark\:bg-violet-900\/20:is(.dark *){background-color:#4c1d9533}.dark\:bg-yellow-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity, 1))}.dark\:bg-yellow-800\/30:is(.dark *){background-color:#854d0e4d}.dark\:bg-yellow-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity, 1))}.dark\:bg-yellow-900\/20:is(.dark *){background-color:#713f1233}.dark\:bg-yellow-900\/30:is(.dark *){background-color:#713f124d}.dark\:bg-opacity-20:is(.dark *){--tw-bg-opacity: .2}.dark\:bg-opacity-70:is(.dark *){--tw-bg-opacity: .7}.dark\:bg-opacity-90:is(.dark *){--tw-bg-opacity: .9}.dark\:from-blue-500:is(.dark *){--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-800:is(.dark *){--tw-gradient-from: #1e40af var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 64 175 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-900:is(.dark *){--tw-gradient-from: #1e3a8a var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 58 138 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-900\/10:is(.dark *){--tw-gradient-from: rgb(30 58 138 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 58 138 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-emerald-700:is(.dark *){--tw-gradient-from: #047857 var(--tw-gradient-from-position);--tw-gradient-to: rgb(4 120 87 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-gray-800:is(.dark *){--tw-gradient-from: #1f2937 var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-gray-900:is(.dark *){--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-purple-900\/10:is(.dark *){--tw-gradient-from: rgb(88 28 135 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:to-blue-700:is(.dark *){--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.dark\:to-blue-800:is(.dark *){--tw-gradient-to: #1e40af var(--tw-gradient-to-position)}.dark\:to-emerald-800:is(.dark *){--tw-gradient-to: #065f46 var(--tw-gradient-to-position)}.dark\:to-gray-800:is(.dark *){--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.dark\:to-gray-900:is(.dark *){--tw-gradient-to: #111827 var(--tw-gradient-to-position)}.dark\:to-indigo-600:is(.dark *){--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.dark\:to-indigo-900\/10:is(.dark *){--tw-gradient-to: rgb(49 46 129 / .1) var(--tw-gradient-to-position)}.dark\:to-pink-900\/10:is(.dark *){--tw-gradient-to: rgb(131 24 67 / .1) var(--tw-gradient-to-position)}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-amber-50:is(.dark *){--tw-text-opacity: 1;color:rgb(255 251 235 / var(--tw-text-opacity, 1))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-blue-50:is(.dark *){--tw-text-opacity: 1;color:rgb(239 246 255 / var(--tw-text-opacity, 1))}.dark\:text-cyan-200:is(.dark *){--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity, 1))}.dark\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.dark\:text-emerald-300:is(.dark *){--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity, 1))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-50:is(.dark *){--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.dark\:text-gray-900:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.dark\:text-green-100:is(.dark *){--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.dark\:text-green-200:is(.dark *){--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-green-50:is(.dark *){--tw-text-opacity: 1;color:rgb(240 253 244 / var(--tw-text-opacity, 1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.dark\:text-orange-100:is(.dark *){--tw-text-opacity: 1;color:rgb(255 237 213 / var(--tw-text-opacity, 1))}.dark\:text-orange-200:is(.dark *){--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.dark\:text-pink-300:is(.dark *){--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity, 1))}.dark\:text-pink-400:is(.dark *){--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.dark\:text-purple-200:is(.dark *){--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.dark\:text-red-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:text-red-200:is(.dark *){--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-red-50:is(.dark *){--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:text-teal-300:is(.dark *){--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity, 1))}.dark\:text-violet-300:is(.dark *){--tw-text-opacity: 1;color:rgb(196 181 253 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:text-yellow-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 249 195 / var(--tw-text-opacity, 1))}.dark\:text-yellow-200:is(.dark *){--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.dark\:placeholder-gray-400:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.dark\:ring-blue-500:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.dark\:ring-blue-900\/20:is(.dark *){--tw-ring-color: rgb(30 58 138 / .2)}.dark\:ring-gray-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity, 1))}.dark\:ring-offset-gray-800:is(.dark *){--tw-ring-offset-color: #1f2937}.dark\:ring-offset-gray-950:is(.dark *){--tw-ring-offset-color: #030712}.dark\:hover\:border-blue-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.dark\:hover\:border-gray-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.dark\:hover\:border-gray-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:hover\:bg-amber-800\/30:hover:is(.dark *){background-color:#92400e4d}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-blue-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-blue-800\/30:hover:is(.dark *){background-color:#1e40af4d}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:#1e3a8a33}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:#1e3a8a4d}.dark\:hover\:bg-cyan-800\/30:hover:is(.dark *){background-color:#155e754d}.dark\:hover\:bg-cyan-900\/20:hover:is(.dark *){background-color:#164e6333}.dark\:hover\:bg-emerald-800\/30:hover:is(.dark *){background-color:#065f464d}.dark\:hover\:bg-gray-50\/90:hover:is(.dark *){background-color:#f9fafbe6}.dark\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-600\/80:hover:is(.dark *){background-color:#4b5563cc}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-700\/50:hover:is(.dark *){background-color:#37415180}.dark\:hover\:bg-gray-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800\/80:hover:is(.dark *){background-color:#1f2937cc}.dark\:hover\:bg-green-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-green-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-green-800\/30:hover:is(.dark *){background-color:#1665344d}.dark\:hover\:bg-green-900\/20:hover:is(.dark *){background-color:#14532d33}.dark\:hover\:bg-green-900\/30:hover:is(.dark *){background-color:#14532d4d}.dark\:hover\:bg-indigo-800\/30:hover:is(.dark *){background-color:#3730a34d}.dark\:hover\:bg-orange-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-orange-800\/30:hover:is(.dark *){background-color:#9a34124d}.dark\:hover\:bg-orange-900\/20:hover:is(.dark *){background-color:#7c2d1233}.dark\:hover\:bg-orange-900\/30:hover:is(.dark *){background-color:#7c2d124d}.dark\:hover\:bg-purple-800\/30:hover:is(.dark *){background-color:#6b21a84d}.dark\:hover\:bg-purple-900\/20:hover:is(.dark *){background-color:#581c8733}.dark\:hover\:bg-purple-900\/30:hover:is(.dark *){background-color:#581c874d}.dark\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-red-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-red-800\/30:hover:is(.dark *){background-color:#991b1b4d}.dark\:hover\:bg-red-900\/20:hover:is(.dark *){background-color:#7f1d1d33}.dark\:hover\:bg-red-900\/30:hover:is(.dark *){background-color:#7f1d1d4d}.dark\:hover\:bg-red-900\/90:hover:is(.dark *){background-color:#7f1d1de6}.dark\:hover\:bg-slate-800\/30:hover:is(.dark *){background-color:#1e293b4d}.dark\:hover\:bg-teal-800\/30:hover:is(.dark *){background-color:#115e594d}.dark\:hover\:bg-violet-800\/30:hover:is(.dark *){background-color:#5b21b64d}.dark\:hover\:bg-yellow-900\/20:hover:is(.dark *){background-color:#713f1233}.dark\:hover\:bg-yellow-900\/30:hover:is(.dark *){background-color:#713f124d}.dark\:hover\:from-gray-700:hover:is(.dark *){--tw-gradient-from: #374151 var(--tw-gradient-from-position);--tw-gradient-to: rgb(55 65 81 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:to-gray-600:hover:is(.dark *){--tw-gradient-to: #4b5563 var(--tw-gradient-to-position)}.dark\:hover\:text-blue-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-50:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(249 250 251 / var(--tw-text-opacity, 1))}.dark\:hover\:text-green-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.dark\:hover\:text-green-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:hover\:text-orange-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.dark\:hover\:text-purple-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:focus\:border-indigo-500:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.dark\:focus\:ring-blue-400:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.dark\:focus\:ring-blue-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity, 1))}.dark\:focus\:ring-indigo-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 48 163 / var(--tw-ring-opacity, 1))}.dark\:focus\:ring-purple-400:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(192 132 252 / var(--tw-ring-opacity, 1))}.dark\:focus-visible\:ring-gray-300:focus-visible:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity, 1))}.dark\:disabled\:bg-gray-600:disabled:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:disabled\:bg-orange-800:disabled:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(154 52 18 / var(--tw-bg-opacity, 1))}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-0{margin-bottom:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:hidden{display:none}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:p-0{padding:0}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:align-middle{vertical-align:middle}}@media (min-width: 768px){.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-3{grid-column:span 3 / span 3}.md\:mb-0{margin-bottom:0}.md\:mb-2{margin-bottom:.5rem}.md\:mb-6{margin-bottom:1.5rem}.md\:ml-0{margin-left:0}.md\:ml-6{margin-left:1.5rem}.md\:mr-2{margin-right:.5rem}.md\:mr-3{margin-right:.75rem}.md\:mt-4{margin-top:1rem}.md\:mt-6{margin-top:1.5rem}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:hidden{display:none}.md\:size-4{width:1rem;height:1rem}.md\:h-24{height:6rem}.md\:h-7{height:1.75rem}.md\:w-24{width:6rem}.md\:w-64{width:16rem}.md\:w-7{width:1.75rem}.md\:min-w-0{min-width:0px}.md\:min-w-\[200px\]{min-width:200px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-4{gap:1rem}.md\:gap-6{gap:1.5rem}.md\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.md\:space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.md\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.md\:overflow-visible{overflow:visible}.md\:p-2{padding:.5rem}.md\:p-4{padding:1rem}.md\:p-6{padding:1.5rem}.md\:px-1{padding-left:.25rem;padding-right:.25rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-2{padding-top:.5rem;padding-bottom:.5rem}.md\:py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:py-4{padding-top:1rem;padding-bottom:1rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:ml-6{margin-left:1.5rem}.lg\:inline{display:inline}.lg\:hidden{display:none}.lg\:max-w-md{max-width:28rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-8{gap:2rem}.lg\:p-8{padding:2rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width: 1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
