*,:after,:before{box-sizing:border-box}body,html{background:#e5f3fc;margin:0;min-height:100vh;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#root{min-height:100vh}.app{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;min-height:100vh}.app,.left-nav{background:#e5f3fc;display:flex}.left-nav{bottom:0;flex-direction:column;left:0;overflow:visible;padding:16px;position:fixed;top:0;transition:width .3s ease;width:200px;z-index:1031}.left-nav.collapsed{align-items:center;padding:16px 0;width:64px}.left-nav.collapsed .nav-header{justify-content:center;padding-right:0;width:100%}.left-nav.collapsed .logo{justify-content:center;margin-bottom:1rem;padding-left:0}.left-nav.collapsed .logo .logo-full{display:none}.left-nav.collapsed .logo .logo-small{display:block;height:32px;width:32px}.left-nav.collapsed .nav-toggle{font-size:1rem;height:32px;margin-left:0;width:32px}.left-nav.collapsed .nav-user{align-items:center;width:100%}.left-nav.collapsed nav{width:100%}.left-nav.collapsed nav .nav-section .nav-section-title{display:none}.left-nav.collapsed nav .nav-section .nav-section-items li{display:flex;justify-content:center}.left-nav.collapsed nav .nav-section .nav-section-items li a,.left-nav.collapsed nav .nav-section .nav-section-items li button{gap:0;justify-content:center;padding:.5rem;width:40px}.left-nav.collapsed nav .nav-section .nav-section-items li a svg,.left-nav.collapsed nav .nav-section .nav-section-items li button svg{height:20px;width:20px}.left-nav.collapsed nav .nav-section .nav-section-items li a span,.left-nav.collapsed nav .nav-section .nav-section-items li button span{display:none}.left-nav.collapsed nav .nav-section .nav-section-items li a.active,.left-nav.collapsed nav .nav-section .nav-section-items li button.active{border-bottom:2px solid #007bff;border-left:none;padding-left:.5rem}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu{display:flex;justify-content:center}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .nav-parent-button{background:#0000!important;gap:0;height:40px;justify-content:center;padding:.5rem;width:40px}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .nav-parent-button svg{height:20px;width:20px}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .nav-parent-button .chevron,.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .nav-parent-button span{display:none}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .nav-parent-button:hover{background:#007bff14!important}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu.active-parent .nav-parent-button{background:#0000!important;border-bottom:2px solid #007bff}.left-nav.collapsed nav .nav-section .nav-section-items li.has-submenu .submenu{display:none}.left-nav .nav-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem;padding-right:1rem;padding-top:24px;position:relative}.left-nav .logo{align-items:center;display:flex;height:40px;padding-left:1rem;transition:all .3s ease}.left-nav .logo img{height:100%;object-fit:contain;transition:all .3s ease;width:auto}.left-nav .logo .logo-full{display:block;max-width:180px}.left-nav .logo .logo-small{display:none;height:32px;width:32px}.left-nav .nav-toggle{align-items:center;background:#fff;border:1px solid #ddd;border-radius:50%;box-shadow:0 1px 3px #0000001a;box-shadow:0 1px 2px 0 #0000000d;color:#6b7280;cursor:pointer;display:flex;font-size:1.2rem;font-weight:500;height:40px;justify-content:center;margin-bottom:1rem;margin-left:1rem;transition:all .2s ease;width:40px;z-index:1032}.left-nav .nav-toggle:hover{background:#f9fafb;background:#f3f4f6;border-color:#007bff;box-shadow:0 2px 6px #00000026;color:#007bff}.left-nav nav{flex:1 1;overflow-y:auto}.left-nav nav .nav-section{margin-bottom:2rem}.left-nav nav .nav-section:last-child{margin-bottom:0}.left-nav nav .nav-section .nav-section-title{color:#6b7280;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.05em;margin:0 0 .5rem;padding:0 1rem;text-transform:uppercase}.left-nav nav .nav-section .nav-section-items{list-style:none;margin:0;padding:0}.left-nav nav .nav-section .nav-section-items li{margin-bottom:2px}.left-nav nav .nav-section .nav-section-items li a{align-items:center;border-radius:6px;color:#374151;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500;gap:1rem;line-height:1.5;padding:.5rem 1rem;text-decoration:none;transition:all .15s ease}.left-nav nav .nav-section .nav-section-items li a svg{color:#6b7280;flex-shrink:0;height:16px;width:16px}.left-nav nav .nav-section .nav-section-items li a span{flex:1 1}.left-nav nav .nav-section .nav-section-items li a:hover{background:#007bff14;color:#007bff}.left-nav nav .nav-section .nav-section-items li a:hover svg{color:#007bff}.left-nav nav .nav-section .nav-section-items li a.active{background:#007bff1f;color:#007bff;font-weight:600}.left-nav nav .nav-section .nav-section-items li a.active svg{color:#007bff}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button{align-items:center;background:none;border:none;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500;gap:1rem;line-height:1.5;padding:.5rem 1rem;text-align:left;transition:all .15s ease;width:100%}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button svg{color:#6b7280;flex-shrink:0;height:16px;width:16px}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button svg.chevron{height:12px;margin-left:auto;transition:transform .2s ease;width:12px}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button svg.chevron.expanded{transform:rotate(180deg)}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button span{flex:1 1}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button:hover{background:#007bff14;color:#007bff}.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button.active,.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button.active svg,.left-nav nav .nav-section .nav-section-items li.has-submenu .nav-parent-button:hover svg,.left-nav nav .nav-section .nav-section-items li.has-submenu.active-parent .nav-parent-button,.left-nav nav .nav-section .nav-section-items li.has-submenu.active-parent .nav-parent-button svg{color:#007bff}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu{list-style:none;margin:0;max-height:0;overflow:hidden;padding:0 0 0 2rem;transition:max-height .2s ease-out}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu.expanded{max-height:200px}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li{margin-bottom:0}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;padding:.25rem 1rem}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a span{flex:1 1}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a .star-button{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;opacity:0;padding:2px;transition:opacity .15s ease,color .15s ease,transform .15s ease}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a .star-button:hover{color:#ffc107;transform:scale(1.1)}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a .star-button:disabled{cursor:not-allowed;opacity:.5}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a .star-button.starred{color:#007bff;opacity:1}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a .star-button svg{height:14px;width:14px}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a:hover .star-button{opacity:1}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a.active{background:#007bff14}.left-nav nav .nav-section .nav-section-items li.has-submenu .submenu li a.active .star-button{opacity:1}.left-nav .nav-user{border-top:1px solid #d1d5db80;margin-top:auto;padding:1rem}.left-nav.collapsed .nav-user{padding:.5rem}.left-nav.collapsed .nav-user .user-avatar-name{display:none}.layout{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;margin-left:200px;max-width:calc(100% - 200px);min-height:100vh;overflow-x:hidden;padding:16px;transition:margin-left .3s ease,width .3s ease;width:calc(100% - 200px)}.layout.nav-collapsed{margin-left:64px;max-width:calc(100% - 64px);width:calc(100% - 64px)}.content{background:#fff;border-radius:16px;box-shadow:0 1px 2px 0 #0000000d;display:flex;flex:1 1;flex-direction:column}.content.full-width .page-header{padding:2rem 24px .25rem}.content.full-width .page-body{padding:0}.content.full-width.internal-scroll{height:calc(100vh - 32px);max-height:calc(100vh - 32px);max-width:100%;overflow:hidden;width:100%}.content.full-width.internal-scroll .page-body{flex:1 1;max-width:100%;min-height:0;min-width:0;overflow:hidden;width:100%}.page-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;min-height:56px;padding:2rem 24px .25rem}.page-header .page-title h1{color:#111827;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.25rem;font-weight:600;line-height:1.2;margin:0}.page-header .user-info{align-items:center;color:#343a40;display:flex;font-weight:500}.page-body{flex:1 1;padding:24px}@media(max-width:992px){.left-nav.collapsed{padding:16px .25rem;width:56px}.left-nav.collapsed .nav-toggle{font-size:1rem;height:36px;width:36px}.layout.nav-collapsed{margin-left:56px}.page-header{padding:1rem 2rem}.page-body{padding:2rem}}@media(max-width:576px){.left-nav{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:1050}.left-nav.collapsed{padding:.5rem .25rem;width:48px}.left-nav.collapsed .nav-toggle{font-size:.9rem;height:32px;width:32px}.left-nav.collapsed .logo .logo-small{height:24px;width:24px}.left-nav:not(.collapsed):before{background:#00000080;bottom:0;content:"";left:0;position:fixed;right:0;top:0;z-index:-1}.layout{margin-left:0;padding:.5rem}.layout.nav-collapsed{margin-left:48px}.content{border-radius:4px}.page-header{min-height:48px;padding:.5rem 1rem}.page-header .page-title h1{font-size:1rem}.page-body{padding:1rem}}.home{padding:3rem 0;text-align:center}.home h1{color:#343a40;margin-bottom:1rem}.home p{color:#6c757d;font-size:1.1rem}.not-found{padding:3rem 0;text-align:center}.not-found h1{color:#dc3545;margin-bottom:1rem}.not-found p{color:#6c757d}.dropdown-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;position:relative;width:100%}.dropdown-container.status-filter{max-width:200px;min-width:150px}.dropdown-container.types-filter{max-width:180px;min-width:120px}.dropdown-container.client-filter{max-width:300px;min-width:200px}.dropdown-container.table-cell-dropdown{height:auto;min-width:auto;overflow:visible;width:100%}.dropdown-container.table-cell-dropdown .dropdown-trigger{border-radius:4px;font-size:1rem;line-height:1.2;max-height:32px;min-height:32px;padding:4px 8px}.dropdown-container.table-cell-dropdown .dropdown-trigger .selected-value{font-size:1rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-container.table-cell-dropdown .dropdown-menu{font-size:1rem;max-width:300px;position:absolute;right:auto;width:max-content;z-index:1000}.modal .dropdown-container.table-cell-dropdown .dropdown-menu{z-index:1055}.dropdown-container.table-cell-dropdown .dropdown-menu.align-right{left:auto;right:0}.dropdown-container.table-cell-dropdown .dropdown-item{font-size:.875rem;padding:8px 12px;white-space:nowrap}.dropdown-container.table-cell-dropdown .dropdown-item.selected:after{display:none}.dropdown-container.error .dropdown-trigger,.dropdown-container.error .dropdown-trigger:hover{border-color:#dc3545}.dropdown-container.error .dropdown-trigger:focus-within{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.dropdown-container.disabled{opacity:.6;pointer-events:none}.dropdown-container.disabled .dropdown-trigger{background-color:#f8f9fa;cursor:not-allowed}.dropdown-label{color:#343a40;display:block;font-size:.875rem;font-weight:500;line-height:1.2;margin-bottom:.5rem}.dropdown-label .required{color:#dc3545;margin-left:2px}.dropdown-trigger{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;min-height:44px;padding:0 1rem;transition:all .2s ease}.dropdown-trigger:hover{border-color:#007bff}.dropdown-trigger.open{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.dropdown-trigger .selected-value{color:#343a40;flex:1 1;font-size:.875rem;line-height:1.4}.dropdown-trigger .selected-value:empty:before{color:#6c757d;content:attr(data-placeholder)}.dropdown-arrow{align-items:center;color:#6c757d;display:flex;margin-left:.5rem}.dropdown-arrow,.dropdown-arrow svg{transition:transform .2s ease}.dropdown-arrow svg.rotated{transform:rotate(180deg)}.dropdown-menu{animation:dropdownFadeIn .15s ease-out;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 8px 16px #0000001a;left:0;margin-top:4px;max-height:300px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.modal .dropdown-menu{z-index:1055}.search-container{background:#f8f9fa;border-bottom:1px solid #ddd;padding:.5rem}.search-container .search-input{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:1rem;transition:all .2s ease;width:100%}.search-container .search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.search-container .search-input::placeholder{color:#6c757d}.search-container .search-input.dropdown-search-input{border:none;border-radius:0;margin:0;padding:.5rem 1rem;width:100%}.search-container .search-input.dropdown-search-input:focus{background:#fff;border:none;box-shadow:none;outline:none}.items-container{max-height:250px;overflow-y:auto}.items-container::-webkit-scrollbar{width:6px}.items-container::-webkit-scrollbar-track{background:#f8f9fa}.items-container::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}.items-container::-webkit-scrollbar-thumb:hover{background:#6c757d}.dropdown-item{border-bottom:1px solid #dddddd80;cursor:pointer;font-size:.875rem;line-height:1.4;padding:1rem;position:relative;transition:background-color .15s ease}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#007bff0d}.dropdown-item.selected{background-color:#007bff1a;color:#007bff;font-weight:500}.dropdown-item.selected:hover{background-color:#007bff26}.dropdown-item.selected:after{color:#007bff;content:"✓";font-weight:600;position:absolute;right:1rem}.dropdown-item.disabled{color:#6c757d;cursor:not-allowed;opacity:.5}.dropdown-item.disabled:hover{background-color:#0000}.no-results{color:#6c757d;font-size:.875rem;font-style:italic;padding:2rem 1rem;text-align:center}.error-message{color:#dc3545;font-size:.75rem;line-height:1.3;margin-top:.5rem}@media(max-width:768px){.dropdown-trigger{min-height:40px;padding:.5rem}.dropdown-item,.search-container,.search-container .search-input{padding:.5rem}.search-container .search-input.dropdown-search-input{padding:.5rem;width:calc(100% - 1rem)}}.pagination-container{align-items:center;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;gap:1rem;margin-top:2rem}.pagination-container .pagination-info{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;width:100%}.pagination-container .pagination-info .page-size-selector,.pagination-container .pagination-info>span{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem}.pagination-container .pagination-info .page-size-selector{align-items:center;display:flex;gap:.5rem}.pagination-container .pagination-info .page-size-selector label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.pagination-container .pagination-info .page-size-selector select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;padding:4px 8px;transition:border-color .2s ease}.pagination-container .pagination-info .page-size-selector select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.pagination-container .pagination-info .page-size-selector select:disabled{background-color:#f7f7f7;cursor:not-allowed;opacity:.6}.pagination-container .pagination-info .page-size-selector span{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.pagination-container .pagination-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.pagination-container .pagination-controls .pagination-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;min-width:40px;padding:8px 12px;text-align:center;transition:all .2s ease}.pagination-container .pagination-controls .pagination-btn:hover:not(:disabled){background-color:#e6f2ff;border-color:#007bff;color:#007bff}.pagination-container .pagination-controls .pagination-btn:disabled{background-color:#fff;border-color:#f7f7f7;color:#7a8693;cursor:not-allowed;opacity:.5}.pagination-container .pagination-controls .pagination-btn.active{background-color:#343a40;border-color:#343a40;color:#fff;font-weight:500}.pagination-container .pagination-controls .pagination-btn.active:hover{background-color:#1d2124;border-color:#1d2124}.pagination-container .pagination-controls .pagination-btn.pagination-next,.pagination-container .pagination-controls .pagination-btn.pagination-prev{font-weight:500}.pagination-container .pagination-controls .pagination-btn.pagination-next:not(:disabled):hover,.pagination-container .pagination-controls .pagination-btn.pagination-prev:not(:disabled):hover{background-color:#007bff;border-color:#007bff;color:#fff}.pagination-container .pagination-controls .pagination-ellipsis{color:#7a8693;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;padding:8px 4px;-webkit-user-select:none;user-select:none}.pagination-container .pagination-controls .pagination-jump{align-items:center;border-left:1px solid #ddd;display:flex;gap:.5rem;margin-left:1rem;padding-left:1rem}.pagination-container .pagination-controls .pagination-jump label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;white-space:nowrap}.pagination-container .pagination-controls .pagination-jump input{border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;padding:4px 8px;text-align:center;width:80px}.pagination-container .pagination-controls .pagination-jump input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.pagination-container .pagination-controls .pagination-jump input:disabled{background-color:#fff;cursor:not-allowed;opacity:.6}.pagination-container .pagination-controls .pagination-jump input::placeholder{color:#96a0aa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}@media(max-width:768px){.pagination-container .pagination-info{flex-direction:column;gap:.5rem;text-align:center}.pagination-container .pagination-info .page-size-selector{justify-content:center}.pagination-container .pagination-controls{gap:4px}.pagination-container .pagination-controls .pagination-btn{font-size:.8rem;min-width:36px;padding:6px 8px}.pagination-container .pagination-controls .pagination-jump{margin-left:.5rem;padding-left:.5rem}.pagination-container .pagination-controls .pagination-jump input{width:60px}}@media(max-width:576px){.pagination-container .pagination-controls .pagination-ellipsis,.pagination-container .pagination-controls .pagination-jump{display:none}}.searchable-client-dropdown{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;position:relative;width:100%}.searchable-client-dropdown.disabled{opacity:.6;pointer-events:none}.searchable-client-dropdown .dropdown-input-container{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;position:relative;transition:border-color .2s ease,box-shadow .2s ease}.searchable-client-dropdown .dropdown-input-container:focus-within{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.searchable-client-dropdown .dropdown-input-container .dropdown-input{background:#0000;border:none;color:#343a40;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;outline:none;padding:.5rem 1rem}.searchable-client-dropdown .dropdown-input-container .dropdown-input::placeholder{color:#96a0aa;font-style:italic}.searchable-client-dropdown .dropdown-input-container .dropdown-input:disabled{background-color:#f8f9fa;color:#7a8693}.searchable-client-dropdown .dropdown-input-container .dropdown-arrow{align-items:center;color:#7a8693;display:flex;justify-content:center;padding:0 .5rem;pointer-events:none}.searchable-client-dropdown .dropdown-input-container .dropdown-arrow .loading-spinner{animation:spin 1s linear infinite;border:2px solid #99caff;border-radius:50%;border-top-color:#007bff;height:16px;width:16px}.searchable-client-dropdown .dropdown-menu{background:#fff;border:1px solid #ddd;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;margin-top:-1px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:9999}.modal .searchable-client-dropdown .dropdown-menu{z-index:1055}.searchable-client-dropdown .dropdown-menu .dropdown-hint{border-bottom:1px solid #f7f7f7;color:#7a8693;font-size:.9rem;font-style:italic;padding:1rem;text-align:center}.searchable-client-dropdown .dropdown-menu .dropdown-loading{align-items:center;color:#626d78;display:flex;font-size:.9rem;gap:.5rem;padding:1rem}.searchable-client-dropdown .dropdown-menu .dropdown-loading .loading-spinner{animation:spin 1s linear infinite;border:2px solid #99caff;border-radius:50%;border-top-color:#007bff;height:16px;width:16px}.searchable-client-dropdown .dropdown-menu .dropdown-no-results{color:#7a8693;font-style:italic;padding:1rem;text-align:center}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option{border-bottom:1px solid #f7f7f7;cursor:pointer;padding:.5rem 1rem;transition:background-color .2s ease}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option:last-child{border-bottom:none}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option.focused,.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option:hover{background-color:#e6f2ff}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option.selected{background-color:#007bff1a;color:#007bff;font-weight:500}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option.selected.focused,.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option.selected:hover{background-color:#007bff26}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option .option-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:500}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option .option-subtitle{color:#626d78;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.85rem;margin-top:2px}.searchable-client-dropdown .dropdown-menu .dropdown-options .dropdown-option.selected .option-label{color:#007bff}.searchable-client-dropdown .dropdown-menu::-webkit-scrollbar{width:6px}.searchable-client-dropdown .dropdown-menu::-webkit-scrollbar-track{background:#f8f9fa}.searchable-client-dropdown .dropdown-menu::-webkit-scrollbar-thumb{background:#96a0aa;border-radius:3px}.searchable-client-dropdown .dropdown-menu::-webkit-scrollbar-thumb:hover{background:#626d78}@media(max-width:576px){.searchable-client-dropdown .dropdown-menu{max-height:250px}}.table-container{background:#fff;border-radius:0;box-shadow:none;overflow-x:auto;overflow-y:visible;width:100%}@media(min-width:992px){.table-container{overflow-x:visible}}.table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;min-width:100%;table-layout:auto;width:100%}@media(min-width:992px){.table{min-width:0;table-layout:fixed}}.table-header{background:#f8f9fa;border-bottom:1px solid #ddd;color:#343a40;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:600;overflow:hidden;padding:.5rem 1rem;text-align:left;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap}.table-header:hover{background:#f2f4f6}.table-header .sort-indicator{color:#007bff;margin-left:.5rem}.table-row:nth-child(2n){background:#f8f9fa80}.table-row:hover{background:#007bff0d}.table-cell{border-bottom:1px solid #ddd;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;height:36px;line-height:1.3;overflow:hidden;padding:.25rem 1rem;position:relative;text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}@media(max-width:768px){.table-container{margin:.5rem 0}.table-cell,.table-header{padding:.25rem .5rem}.table-cell{height:32px}}body.login-page{margin:0;overflow:hidden;padding:0}body.login-page .login-form-section .login-form .form-group input{background:#fff!important;border:1px solid #ddd!important;border-radius:4px!important;box-sizing:border-box!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;font-size:1rem!important;height:auto!important;line-height:1.5!important;max-height:none!important;min-height:auto!important;padding:.5rem 1rem!important;transition:all .2s ease!important;width:100%!important}body.login-page .login-form-section .login-form .form-group label{color:#343a40!important;display:block!important;font-size:.875rem!important;font-weight:600!important;line-height:1.2!important;margin-bottom:.5rem!important}.login-container{overflow:hidden}.login-container,.login-left-panel{background:#fff;display:flex;min-height:100vh}.login-left-panel{flex:0 0 30%;flex-direction:column;padding:3rem 2rem;position:relative}.login-right-panel{background:#fff;flex:0 0 70%;overflow:hidden;position:relative}.login-right-panel .jobs-grid-container{bottom:0;left:0;padding:0;position:absolute;right:0;top:0}.login-right-panel .jobs-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(5,1fr);height:100vh}.login-right-panel .jobs-grid .job-card{cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.login-right-panel .jobs-grid .job-card .job-image{background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;position:relative;width:100%}.login-logo{left:3rem;position:absolute;top:3rem}.login-logo img{height:40px;width:auto}.login-card{align-items:stretch;display:flex;flex:1 1;flex-direction:column;justify-content:center;margin:0;max-width:100%;padding:3rem 1rem}.login-header{margin-bottom:3rem;text-align:center}.login-header h1{color:#343a40;font-size:2rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.5rem}.login-header p{display:none}.login-form-section{width:100%}.login-form-section .login-form{margin-top:1rem;width:100%}.login-form-section .login-form .form-group{margin-bottom:2rem}.login-form-section .login-form .error-message{background:#dc35451a;border-left:3px solid #dc3545;border-radius:4px;color:#dc3545;font-size:.9rem;margin-bottom:2rem;padding:1rem}.login-form-section .login-form .login-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:500;margin-top:1rem;min-height:48px;padding:1rem 2rem;transition:all .2s ease;width:100%}.login-form-section .login-form .login-btn:hover:not(:disabled){background:#1a2e5b}.login-form-section .login-form .login-btn:disabled{background:#6c757d;cursor:not-allowed}.login-form-section .test-credentials{border-top:1px solid #ddd;display:none;margin-top:2rem;padding-top:2rem}.login-form-section .test-credentials h3{color:#343a40;font-size:1rem;margin-bottom:1rem;text-align:center}.login-form-section .test-credentials .credentials-group{background:#17a2b80d;border:1px solid #17a2b833;border-radius:4px;margin-bottom:1rem;padding:1rem}.login-form-section .test-credentials .credentials-group h4{color:#17a2b8;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.login-form-section .test-credentials .credentials-group p{color:#6c757d;font-size:.8rem;margin:2px 0}.login-form-section .test-credentials .credentials-group p strong{color:#343a40;font-weight:500}.signed-in-section{text-align:center;width:100%}.signed-in-section .user-info{margin-bottom:2rem;padding:2rem}.signed-in-section .user-info h2{color:#343a40;font-size:1.25rem;font-weight:500;margin-bottom:1rem}.signed-in-section .user-info p{color:#6c757d;font-size:.9rem;margin-bottom:.5rem}.signed-in-section .user-info p:last-child{margin-bottom:0}.signed-in-section .user-info p strong{color:#343a40;font-weight:500}.signed-in-section .btn-secondary{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;min-height:50px;padding:1rem 2rem;transition:all .2s ease}.signed-in-section .btn-secondary:hover:not(:disabled){background:#bd2130}.signed-in-section .btn-secondary:disabled{cursor:not-allowed;opacity:.7}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(2deg)}}@media(max-width:768px){.login-container{flex-direction:column}.login-left-panel{flex:none;min-height:auto;padding:1rem}.login-right-panel{flex:none;min-height:300px;order:-1}.login-right-panel .jobs-grid-container{padding:0}.login-right-panel .jobs-grid{gap:.5rem;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);height:300px}.login-right-panel .jobs-grid .job-card:nth-child(n+7){display:none}.login-logo{left:1rem;top:1rem}.login-logo img{height:32px}.login-card{max-width:100%;padding:0}}body.signup-page{margin:0;overflow:hidden;padding:0}.signup-container{overflow:hidden}.signup-container,.signup-left-panel{background:#fff;display:flex;min-height:100vh}.signup-left-panel{flex:0 0 30%;flex-direction:column;padding:3rem 2rem;position:relative}.signup-right-panel{background:#fff;flex:0 0 70%;overflow:hidden;position:relative}.signup-right-panel .jobs-grid-container{bottom:0;left:0;padding:0;position:absolute;right:0;top:0}.signup-right-panel .jobs-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(5,1fr);height:100vh}.signup-right-panel .jobs-grid .job-card{cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.signup-right-panel .jobs-grid .job-card .job-image{background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;position:relative;width:100%}.signup-logo{left:3rem;position:absolute;top:3rem}.signup-logo img{height:40px;width:auto}.signup-card{align-items:stretch;display:flex;flex:1 1;flex-direction:column;justify-content:center;margin:0;max-width:100%;padding:3rem 1rem}.signup-header{margin-bottom:3rem;text-align:center}.signup-header h1{color:#343a40;font-size:2rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.5rem}.signup-header p{color:#6c757d;font-size:.9rem;margin-bottom:0}.signup-form{margin-top:1rem;width:100%}.signup-form .form-row{display:flex;gap:1rem;margin-bottom:2rem}.signup-form .form-row .form-group{flex:1 1;margin-bottom:0}@media(max-width:768px){.signup-form .form-row{flex-direction:column;gap:0}.signup-form .form-row .form-group{margin-bottom:2rem}}.signup-form .form-group{margin-bottom:2rem}.signup-form .form-group label{color:#343a40;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.signup-form .form-group input,.signup-form .form-group select{background:#fff;border:2px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;min-height:auto;padding:.5rem 1rem;transition:all .2s ease;width:100%}.signup-form .form-group input:focus,.signup-form .form-group select:focus{border-color:#007bff;outline:none}.signup-form .form-group input:disabled,.signup-form .form-group select:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.7}.signup-form .form-group input::placeholder,.signup-form .form-group select::placeholder{color:#a1a8ae}.signup-form .form-group select{appearance:none;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTQgNiA0IDQgNC00IiBzdHJva2U9IiM5OTkiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+);background-position:right 1rem center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding-right:calc(2rem + 24px)}.signup-form .form-group select:focus{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTQgNiA0IDQgNC00IiBzdHJva2U9IiMwMDdmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+)}.signup-form .form-group .password-requirements{margin-top:.5rem}.signup-form .form-group .password-requirements small{color:#6c757d;font-size:.8rem;line-height:1.3}.signup-form .error-message{background:#dc35451a;border-left:3px solid #dc3545;border-radius:4px;color:#dc3545;font-size:.9rem;margin-bottom:2rem;padding:1rem}.signup-form .signup-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:500;margin-top:1rem;min-height:48px;padding:1rem 2rem;transition:all .2s ease;width:100%}.signup-form .signup-btn:hover:not(:disabled){background:#1a2e5b}.signup-form .signup-btn:disabled{background:#6c757d;cursor:not-allowed}.signup-footer{border-top:1px solid #ddd;margin-top:3rem;padding-top:2rem;text-align:center}.signup-footer p{color:#6c757d;font-size:.9rem;margin:0}.signup-footer .link-button{background:none;border:none;color:#007bff;cursor:pointer;font-family:inherit;font-size:inherit;margin:0;padding:0;text-decoration:underline}.signup-footer .link-button:hover:not(:disabled){color:#1a2e5b}.signup-footer .link-button:disabled{color:#6c757d;cursor:not-allowed}.signup-actions{display:flex;justify-content:center;margin-top:2rem}.signup-actions .btn{min-width:120px;padding:1rem 2rem}.signup-actions .btn.btn-secondary{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.signup-actions .btn.btn-secondary:hover:not(:disabled){background:#545b62}.signup-actions .btn.btn-secondary:disabled{cursor:not-allowed;opacity:.7}.loading-spinner{align-items:center;display:flex;justify-content:center;padding:3rem}.loading-spinner .spinner{animation:spin 1s linear infinite;border:3px solid #ddd;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}.success-message{padding:3rem;text-align:center}.success-message .success-icon{align-items:center;background:#28a745;border-radius:50%;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;margin:0 auto 2rem;width:80px}.success-message h3{color:#28a745;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.success-message p{color:#6c757d;font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.success-message p.redirect-message{color:#007bff;font-style:italic;font-weight:500}@media(max-width:992px){.signup-left-panel{flex:0 0 40%;padding:2rem 1rem}.signup-right-panel{flex:0 0 60%}.signup-right-panel .jobs-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(6,1fr)}}@media(max-width:768px){.signup-container{flex-direction:column}.signup-left-panel{flex:none;min-height:100vh;padding:1rem .5rem}.signup-right-panel{display:none}.signup-logo{margin-bottom:2rem;position:static;text-align:center}.signup-card{padding:2rem 1rem}.signup-header h1{font-size:1.75rem}.signup-form .form-group input,.signup-form .form-group select{min-height:auto;padding:.5rem 1rem}.signup-form .signup-btn{min-height:48px}}@media(max-width:576px){.signup-left-panel{padding:.5rem}.signup-header{margin-bottom:2rem}.signup-header h1{font-size:1.5rem}.signup-form .form-group{margin-bottom:1rem}.signup-form .form-group input,.signup-form .form-group select{font-size:.9rem;min-height:auto}}.project-register{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-width:100%}.project-register .filters{overflow:visible!important}.project-register .results-section{padding-bottom:2rem;padding-left:1rem;padding-right:1rem}.project-register .filters{flex-direction:column;overflow:visible;padding:2rem 1rem;position:relative}.project-register .filters .filters-left{align-items:flex-start;flex-direction:column;overflow:visible;width:100%}.project-register .filters .filters-left .search-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:100%}.project-register .filters .filters-left .search-row .action-buttons{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.project-register .filters .filters-left .search-row .add-stage-btn{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;color:#343a40;cursor:pointer;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.project-register .filters .filters-left .search-row .add-stage-btn:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.project-register .filters .filters-left .search-row .add-stage-btn:disabled{cursor:not-allowed;opacity:.6}.project-register .filters .filters-left .search-row .add-job-btn{background-color:#000;border:1px solid #000;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;padding:10px 20px;transition:background-color .2s ease,border-color .2s ease;white-space:nowrap}.project-register .filters .filters-left .search-row .add-job-btn:hover:not(:disabled){background-color:#333;border-color:#333}.project-register .filters .filters-left .search-row .add-job-btn:disabled{cursor:not-allowed;opacity:.6}.project-register .filters .filters-left .filter-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem;width:100%}.project-register .filters .filters-left .client-filter,.project-register .filters .filters-left .project-lead-filter,.project-register .filters .filters-left .roof-type-filter,.project-register .filters .filters-left .site-classification-filter,.project-register .filters .filters-left .status-filter,.project-register .filters .filters-left .types-filter,.project-register .filters .filters-left .wall-type-filter,.project-register .filters .filters-left .wind-region-filter{flex:1 1;max-width:180px;min-width:140px;overflow:visible;position:relative;z-index:auto}.project-register .filters .filters-left .search-input{outline:none}.project-register .filters .filters-left .search-input.focused,.project-register .filters .filters-left .search-input:focus{border-bottom-color:#1a2e5b}.project-register .filters .filters-left .search-input::placeholder{color:#96a0aa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}@media(max-width:992px)and (min-width:769px){.project-register .filters .filters-left .filter-row{gap:.25rem}.project-register .filters .filters-left .filter-row .client-filter,.project-register .filters .filters-left .filter-row .project-lead-filter,.project-register .filters .filters-left .filter-row .roof-type-filter,.project-register .filters .filters-left .filter-row .site-classification-filter,.project-register .filters .filters-left .filter-row .status-filter,.project-register .filters .filters-left .filter-row .types-filter,.project-register .filters .filters-left .filter-row .wall-type-filter,.project-register .filters .filters-left .filter-row .wind-region-filter{max-width:150px;min-width:120px}}@media(max-width:768px)and (min-width:650px){.project-register .filters .filters-left .filter-row{flex-wrap:wrap;gap:.5rem}.project-register .filters .filters-left .filter-row .client-filter,.project-register .filters .filters-left .filter-row .project-lead-filter,.project-register .filters .filters-left .filter-row .roof-type-filter,.project-register .filters .filters-left .filter-row .site-classification-filter,.project-register .filters .filters-left .filter-row .status-filter,.project-register .filters .filters-left .filter-row .types-filter,.project-register .filters .filters-left .filter-row .wall-type-filter,.project-register .filters .filters-left .filter-row .wind-region-filter{flex-basis:calc(25% - 0.375rem);flex-grow:1;flex-shrink:1;max-width:none;min-width:120px}}@media(max-width:649px){.project-register .filters .filters-left .filter-row{flex-direction:column;gap:.5rem}.project-register .filters .filters-left .filter-row .client-filter,.project-register .filters .filters-left .filter-row .project-lead-filter,.project-register .filters .filters-left .filter-row .roof-type-filter,.project-register .filters .filters-left .filter-row .site-classification-filter,.project-register .filters .filters-left .filter-row .status-filter,.project-register .filters .filters-left .filter-row .types-filter,.project-register .filters .filters-left .filter-row .wall-type-filter,.project-register .filters .filters-left .filter-row .wind-region-filter{flex:none;max-width:100%;min-width:100%;width:100%}}@media(max-width:768px){.project-register .filters{gap:.5rem;padding:1rem}}@media(max-width:576px){.project-register .filters{padding:.5rem}}.project-register .results-section{width:100%}.project-register .results-section .results-header{margin-bottom:.25rem;padding-left:1rem}.project-register .results-section .results-header .results-info{color:#343a40;font-size:.9rem}.project-register .results-section .results-header .results-info,.project-register .results-section .results-header .results-info span{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.project-register .results-section .table-wrapper{background:#fff;border-radius:0;border-top:1px solid #ddd;margin-bottom:2rem;overflow-x:auto;width:100%}.project-register .results-section .no-results{background:#fff;border:1px solid #ddd;border-radius:4px;color:#626d78;padding:3rem;text-align:center}.project-register .results-section .loading-container,.project-register .results-section .no-results{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.1rem}.project-register .results-section .loading-container{align-items:center;color:#343a40;display:flex;height:200px;justify-content:center}.project-register .results-section .error-container{background:#dc35451a;border:1px solid #dc35454d;border-radius:4px;color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:3rem;text-align:center}.project-register .results-section .error-container h3{color:#dc3545}.project-register .results-section .error-container h3,.project-register .results-section .error-container p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 0 1rem}.project-register .results-section .error-container button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:.5rem 1rem;transition:background-color .2s ease}.project-register .results-section .error-container button:hover{background-color:#bd2130}@media(max-width:768px){.project-register .results-section .results-section .table-wrapper{margin-bottom:1rem}}@media(max-width:576px){.project-register .results-section .filters{margin-bottom:1rem;padding:1rem}}.project-register .type-badge{border-radius:16px;display:inline-block;font-size:.875rem;font-weight:400;padding:4px 12px;text-transform:capitalize}.project-register .type-badge.type-design{background-color:#3b82f61a;color:#3b82f6}.project-register .type-badge.type-advisory{background-color:#10b9811a;color:#10b981}.project-register .type-badge.type-rwc{background-color:#f59e0b1a;color:#f59e0b}.project-register .type-badge.type-rwd{background-color:#8b5cf61a;color:#8b5cf6}.project-register .status-badge{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:400;padding:4px 8px;text-transform:capitalize}.project-register .status-badge.status-probable{background-color:#eab3081a;color:#eab308}.project-register .status-badge.status-design{background-color:#06b6d41a;color:#06b6d4}.project-register .status-badge.status-construction{background-color:#f973161a;color:#f97316}.project-register .status-badge.status-complete{background-color:#22c55e1a;color:#22c55e}.project-register .status-badge.status-archived{background-color:#64748b1a;color:#64748b}.project-register .status-badge.status-unsuccessful{background-color:#ef44441a;color:#ef4444}.project-register .standard-badge{border-radius:12px;display:inline-block;font-size:1rem;font-weight:400;padding:4px 8px;text-transform:uppercase}.project-register .standard-badge:not(.standard-te):not(.standard-cams){background-color:#6b72801a;color:#6b7280;text-transform:none}.project-register .standard-badge.standard-te{background-color:#ef44441a;color:#ef4444}.project-register .standard-badge.standard-cams{background-color:#06b6d41a;color:#06b6d4}.project-register .wall-type-badge{border-radius:12px;display:inline-block;font-size:1rem;font-weight:400;padding:4px 8px}.project-register .wall-type-badge:not([class*=wall-type-]){background-color:#6b72801a;color:#6b7280}.project-register .wall-type-badge.wall-type-full-masonry{background-color:#92400e1a;color:#92400e}.project-register .wall-type-badge.wall-type-masonry-veneer{background-color:#be185d1a;color:#be185d}.project-register .wall-type-badge.wall-type-reverse-masonry-veneer{background-color:#3730a31a;color:#3730a3}.project-register .wall-type-badge.wall-type-timber-stud{background-color:#0596691a;color:#059669}.project-register .wall-type-badge.wall-type-steel-stud{background-color:#3741511a;color:#374151}.project-register .roof-type-badge{border-radius:12px;display:inline-block;font-size:1rem;font-weight:400;padding:4px 8px}.project-register .roof-type-badge:not([class*=roof-type-]){background-color:#6b72801a;color:#6b7280}.project-register .roof-type-badge.roof-type-timber-truss{background-color:#92400e1a;color:#92400e}.project-register .roof-type-badge.roof-type-steel-truss{background-color:#3741511a;color:#374151}.project-register .roof-type-badge.roof-type-stick-roof{background-color:#065f461a;color:#065f46}.project-register .wind-region-badge{border-radius:12px;display:inline-block;font-size:1rem;font-weight:400;padding:4px 8px}.project-register .wind-region-badge:not([class*=wind-region-]){background-color:#6b72801a;color:#6b7280}.project-register .wind-region-badge.wind-region-a0{background-color:#dbeafecc;color:#1e40af}.project-register .wind-region-badge.wind-region-a1{background-color:#bfdbfecc;color:#1d4ed8}.project-register .wind-region-badge.wind-region-a2{background-color:#93c5fdcc;color:#1e3a8a}.project-register .wind-region-badge.wind-region-a3{background-color:#60a5facc;color:#1e3a8a}.project-register .wind-region-badge.wind-region-a4{background-color:#3b82f6cc;color:#fff}.project-register .wind-region-badge.wind-region-a5{background-color:#2563ebcc;color:#fff}.project-register .wind-region-badge.wind-region-b1{background-color:#fef3c7cc;color:#92400e}.project-register .wind-region-badge.wind-region-b2{background-color:#fbbf24cc;color:#92400e}.project-register .wind-region-badge.wind-region-c{background-color:#fca5a5cc;color:#991b1b}.project-register .wind-region-badge.wind-region-d{background-color:#dc2626cc;color:#fff}.project-register .site-classification-badge{border-radius:12px;display:inline-block;font-size:1rem;font-weight:400;padding:4px 8px}.project-register .site-classification-badge:not([class*=site-classification-]){background-color:#6b72801a;color:#6b7280}.project-register .site-classification-badge.site-classification-a{background-color:#16a34acc;color:#fff}.project-register .site-classification-badge.site-classification-s{background-color:#22c55ecc;color:#fff}.project-register .site-classification-badge.site-classification-m{background-color:#eab308cc;color:#000}.project-register .site-classification-badge.site-classification-md{background-color:#f97316cc;color:#fff}.project-register .site-classification-badge.site-classification-h1{background-color:#f87171cc;color:#991b1b}.project-register .site-classification-badge.site-classification-h1d{background-color:#ef4444cc;color:#fff}.project-register .site-classification-badge.site-classification-h2{background-color:#dc2626cc;color:#fff}.project-register .site-classification-badge.site-classification-h2d{background-color:#991b1bcc;color:#fff}.project-register .site-classification-badge.site-classification-e{background-color:#8b5cf6cc;color:#fff}.project-register .project-register .table-wrapper table tbody tr{cursor:pointer;height:28px;transition:background-color .2s ease}.project-register .project-register .table-wrapper table tbody tr:hover{background-color:#007bff0d}.project-register .project-register .table-wrapper table tbody tr:active{background-color:#007bff1a}.project-register .project-register .table-wrapper table tbody tr td{font-size:.875rem;height:20px;line-height:1.2;padding:2px 16px}.project-register .project-register .table-wrapper table thead tr{height:auto}.project-register .project-register .table-wrapper table thead tr th{font-size:.875rem;height:auto;padding:8px 16px}.project-register .project-column-display{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.3}.project-register .project-column-display .status-badge{border-radius:3px;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.025em;padding:2px 6px;text-transform:uppercase}.project-register .project-column-display .type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.025em;padding:2px 8px;text-transform:uppercase}.project-register .project-column-display .status-badge.status-probable{background:#eab30826!important;border:1px solid #eab3084d!important;color:#ca8a04!important}.project-register .project-column-display .status-badge.status-design{background:#06b6d426!important;border:1px solid #06b6d44d!important;color:#0891b2!important}.project-register .project-column-display .status-badge.status-construction{background:#f9731626!important;border:1px solid #f973164d!important;color:#ea580c!important}.project-register .project-column-display .status-badge.status-complete{background:#22c55e26!important;border:1px solid #22c55e4d!important;color:#16a34a!important}.project-register .project-column-display .status-badge.status-archived{background:#64748b26!important;border:1px solid #64748b4d!important;color:#475569!important}.project-register .project-column-display .status-badge.status-unsuccessful{background:#ef444426!important;border:1px solid #ef44444d!important;color:#dc2626!important}.project-register .project-column-display .status-badge.status-unknown{background:#6c757d1a!important;border:1px solid #6c757d33!important;color:#6c757d!important}.project-register .project-column-display .type-badge.type-design{background:#3b82f626!important;border:1px solid #3b82f64d!important;color:#2563eb!important}.project-register .project-column-display .type-badge.type-advisory{background:#10b98126!important;border:1px solid #10b9814d!important;color:#059669!important}.project-register .project-column-display .type-badge.type-rwc{background:#f59e0b26!important;border:1px solid #f59e0b4d!important;color:#d97706!important}.project-register .project-column-display .type-badge.type-rwd{background:#8b5cf626!important;border:1px solid #8b5cf64d!important;color:#7c3aed!important}.project-register .project-column-display .type-badge.type-unknown{background:#6c757d1a!important;border:1px solid #6c757d33!important;color:#6c757d!important}.project-register .project-detail-modal{display:flex;flex-direction:column;height:100%;min-height:0}.project-register .project-detail-modal .modal-tabs{border-bottom:1px solid #ddd;box-sizing:border-box;display:flex;flex-shrink:0;margin:0;padding:0 1rem;width:100%}.project-register .project-detail-modal .modal-tabs .tab-button{background:#0000;border:none;border-bottom:2px solid #0000;color:#4b5563;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-align:center;transition:all .2s ease;width:50%}.project-register .project-detail-modal .modal-tabs .tab-button:hover{background:#007bff0d;color:#007bff}.project-register .project-detail-modal .modal-tabs .tab-button.active{background:#007bff0d;border-bottom-color:#007bff;color:#007bff}.project-register .project-detail-modal .modal-body{flex:1 1;margin-top:.25rem;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 2rem 2rem}.project-register .project-detail-modal .job-info-tab{box-sizing:border-box;min-height:0;padding:0;width:100%}.project-register .project-detail-modal .job-info-tab .form-fields-vertical{display:flex;flex-direction:column;gap:1rem}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:200px 1fr;padding:.5rem 0}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500;padding-top:.25rem}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label .required{color:#dc3545;margin-left:2px}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input{display:flex;flex-direction:column;width:100%}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger,.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.5;padding:.25rem .5rem;transition:all .2s ease;width:100%}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger:focus,.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger.error,.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger:disabled,.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input:disabled{background-color:#f8f9fa;color:#6b7280;cursor:not-allowed}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .field-error{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}@media(max-width:576px){.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row{gap:.25rem;grid-template-columns:1fr}.project-register .project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label{padding-top:0}}.project-register .project-detail-modal .technical-info-tab{box-sizing:border-box;min-height:0;padding:0;width:100%}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical{display:flex;flex-direction:column;gap:1rem}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:200px 1fr;padding:.5rem 0}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500;padding-top:.25rem}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-label .required{color:#dc3545;margin-left:2px}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input{display:flex;flex-direction:column;width:100%}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger,.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.5;padding:.25rem .5rem;transition:all .2s ease;width:100%}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger:focus,.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger.error,.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input .dropdown-trigger:disabled,.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input input:disabled{background-color:#f8f9fa;color:#6b7280;cursor:not-allowed}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-input .field-error{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}@media(max-width:576px){.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row{gap:.25rem;grid-template-columns:1fr}.project-register .project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-label{padding-top:0}}.project-register .project-detail-modal .project-detail-form{max-height:none}.project-register .project-detail-modal .loading-message{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:3rem;text-align:center}.project-register .project-detail-modal .project-detail-form{padding:2rem 1.2rem}.project-register .project-detail-modal .project-detail-form .general-error{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin-bottom:2rem;padding:.5rem 1rem}.project-register .project-detail-modal .project-detail-form .form-section{margin-bottom:3rem}.project-register .project-detail-modal .project-detail-form .form-section .section-title{border-bottom:1px solid #ddd;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.project-register .project-detail-modal .project-detail-form .form-section .form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group{display:flex;flex-direction:column}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group label .required{color:#dc3545;margin-left:2px}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group input,.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group select{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group input:focus,.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff33;outline:none}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group input:disabled,.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group select:disabled{background-color:#f8f9fa;color:#666;cursor:not-allowed}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group .readonly-field{background-color:#f8f9fa;color:#666;cursor:not-allowed;font-weight:500}.project-register .project-detail-modal .project-detail-form .form-section .form-grid .form-group .error-message{color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;margin-top:.5rem}.project-register .project-detail-modal .project-detail-form .delete-actions-section{border-top:1px solid #ddd;margin-top:3rem;padding-top:2rem}.project-register .project-detail-modal .project-detail-form .delete-actions-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 .5rem}.project-register .project-detail-modal .project-detail-form .delete-actions-section .action-description{color:#4b5563;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.project-register .project-detail-modal .project-detail-form .delete-actions-section .action-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;min-width:120px;padding:.5rem 1rem;transition:all .2s ease}.project-register .project-detail-modal .project-detail-form .delete-actions-section .action-button:hover{background-color:#bd2130}.project-register .project-detail-modal .project-detail-form .delete-actions-section .action-button:disabled{cursor:not-allowed;opacity:.6}@media(max-width:480px){.project-register .table-wrapper table tbody tr{height:24px}.project-register .table-wrapper table tbody tr td{height:24px;padding:1px 8px}.project-register .table-wrapper table thead tr th{padding:6px 8px}}.delete-confirm-overlay{z-index:1051}.delete-confirm-overlay .delete-confirm-modal{box-shadow:0 8px 16px #0000001a}.delete-confirm-overlay .delete-confirm-modal h3,.delete-confirm-overlay .delete-confirm-modal p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.delete-confirm-overlay .delete-confirm-modal p{color:#343a40}.delete-confirm-overlay .delete-confirm-modal p.project-name{background:#dc35451a;border-radius:4px;color:#dc3545;padding:.5rem}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-danger:disabled,.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-secondary:disabled{cursor:not-allowed;opacity:.6}@media(max-width:768px){.project-detail-modal .project-detail-form .project-detail-form .form-section .form-grid{grid-template-columns:1fr}.project-detail-modal .project-detail-form .project-detail-form .delete-actions-section .action-button{width:100%}.project-detail-modal .project-detail-form .project-detail-form .modal-tabs{padding:0 .5rem}.project-detail-modal .project-detail-form .project-detail-form .modal-tabs .tab-button{font-size:.875rem;padding:.5rem 1rem;width:50%}.project-detail-modal .project-detail-form .project-detail-form .job-info-tab,.project-detail-modal .project-detail-form .project-detail-form .stages-tab,.project-detail-modal .project-detail-form .project-detail-form .technical-info-tab{padding:0}}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn{font-size:.8rem;line-height:1.2;min-width:auto}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-sm{font-size:.8rem;padding:2px 6px}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-secondary{background:#f8f9fa;border:1px solid #ddd;color:#343a40}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-secondary:hover{background:#e9ecef;border-color:#c4c4c4}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-danger{background:#dc3545;border:1px solid #dc3545;color:#fff}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-danger:hover{background:#bd2130;border-color:#bd2130}.stages-tab .stage-form{background:#fff;border:1px solid #ddd;border-radius:8px;padding:2rem}.stages-tab .stage-form .form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.stages-tab .stage-form .form-header h4{color:#343a40;font-size:1.1rem;font-weight:600;margin:0}.stages-tab .stage-form .form-header .btn{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s ease}.stages-tab .stage-form .form-header .btn:hover{background-color:#545b62}.stages-tab .stage-form .error-message{background-color:#dc35451a;border-radius:4px;color:#dc3545;font-size:.875rem;margin-bottom:2rem;padding:1rem}.stages-tab .stage-form .form-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stages-tab .stage-form .form-grid .form-group{display:flex;flex-direction:column;gap:.5rem}.stages-tab .stage-form .form-grid .form-group label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:500}.stages-tab .stage-form .form-grid .form-group label .required{color:#dc3545;margin-left:4px}.stages-tab .stage-form .form-grid .form-group input,.stages-tab .stage-form .form-grid .form-group select{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;min-height:44px;padding:.5rem;transition:border-color .2s ease}.stages-tab .stage-form .form-grid .form-group input:focus,.stages-tab .stage-form .form-grid .form-group select:focus{border-color:#1a2e5b;outline:none}.stages-tab .stage-form .form-grid .form-group input.error,.stages-tab .stage-form .form-grid .form-group select.error{border-color:#dc3545}.stages-tab .stage-form .form-grid .form-group input:disabled,.stages-tab .stage-form .form-grid .form-group select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.stages-tab .stage-form .form-grid .form-group .field-error{color:#dc3545;font-size:.875rem;margin-top:4px}.stages-tab .stage-form .stage-form-input{align-items:center!important;box-sizing:border-box!important;display:flex!important;min-height:44px!important;padding:10px 12px!important}.stages-tab .stage-form .form-actions{display:flex;justify-content:flex-end}.stages-tab .stage-form .form-actions .btn{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:1rem 2rem;transition:background-color .2s ease}.stages-tab .stage-form .form-actions .btn.btn-primary{background-color:#007bff;color:#fff}.stages-tab .stage-form .form-actions .btn.btn-primary:hover:not(:disabled){background-color:#1a2e5b}.stages-tab .stage-form .form-actions .btn.btn-primary:disabled{cursor:not-allowed;opacity:.6}.stages-tab .delete-confirm-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1070}.stages-tab .delete-confirm-overlay .delete-confirm-modal{background:#fff;border-radius:8px;box-shadow:0 8px 16px #0000001a;max-width:400px;padding:2rem;width:90%}.stages-tab .delete-confirm-overlay .delete-confirm-modal h3{color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal p{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;margin:0 0 1rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal .stage-info{background-color:#dc35451a;border-radius:4px;margin:1rem 0;padding:1rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal .error-message,.stages-tab .delete-confirm-overlay .delete-confirm-modal .stage-info strong{color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.stages-tab .delete-confirm-overlay .delete-confirm-modal .error-message{background-color:#dc35451a;border-radius:4px;font-size:.875rem;margin:1rem 0;padding:1rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn.btn-secondary{background-color:#6c757d;color:#fff}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn.btn-secondary:hover{background-color:#545b62}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn.btn-danger{background-color:#dc3545;color:#fff}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn.btn-danger:hover{background-color:#bd2130}@media(max-width:768px){.stages-tab .stages-header{align-items:stretch;flex-direction:column;gap:1rem}.stages-tab .stages-header .btn{text-align:center;width:100%}.stages-tab .stage-form .form-header{align-items:stretch;flex-direction:column;gap:1rem}.stages-tab .stage-form .form-header .btn{text-align:center;width:100%}.stages-tab .stage-form .form-grid{grid-template-columns:1fr}.stages-tab .stage-form .form-actions{justify-content:stretch}.stages-tab .stage-form .form-actions .btn{width:100%}.stages-tab .stages-table .stages-table-header{display:none}.stages-tab .stages-table .stages-table-body .stage-row{display:flex;flex-direction:column;gap:.5rem;padding:1rem}.stages-tab .stages-table .stages-table-body .stage-row .col-project-number{order:1}.stages-tab .stages-table .stages-table-body .stage-row .col-project-number .stage-job-number{font-size:1.1rem;font-weight:700}.stages-tab .stages-table .stages-table-body .stage-row .col-stage-name{order:2}.stages-tab .stages-table .stages-table-body .stage-row .col-stage-name .stage-description{font-size:1rem;font-weight:500}.stages-tab .stages-table .stages-table-body .stage-row .col-status{order:3}.stages-tab .stages-table .stages-table-body .stage-row .col-project-lead{order:4}.stages-tab .stages-table .stages-table-body .stage-row .col-project-lead:before{color:#6c757d;content:"Lead: ";font-weight:500}.stages-tab .stages-table .stages-table-body .stage-row .col-created{order:5}.stages-tab .stages-table .stages-table-body .stage-row .col-created:before{color:#6c757d;content:"Created: ";font-weight:500}.stages-tab .stages-table .stages-table-body .stage-row .col-actions{order:6}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions{justify-content:center;margin-top:.5rem}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn{flex:1 1;font-size:.875rem;padding:.5rem 1rem}.stages-tab .delete-confirm-overlay .delete-confirm-modal{margin:1rem;width:calc(100% - 2rem)}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions{flex-direction:column}.stages-tab .delete-confirm-overlay .delete-confirm-modal .confirm-actions .btn{text-align:center;width:100%}}.timesheets .timesheet-header{justify-content:space-between;margin-bottom:2rem}.timesheets .timesheet-header .header-left{align-items:center;display:flex;gap:1rem}.timesheets .timesheet-header .header-left h1{color:#343a40;font-size:1.25rem;font-weight:600;margin:0}.timesheets .timesheet-header .header-right{align-items:center;display:flex;gap:1rem}.timesheets .timesheet-header .header-right .status-badge{border-radius:4px;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-transform:capitalize}.timesheets .timesheet-header .header-right .status-badge.status-draft{background-color:#f8f9fa;color:#6c757d}.timesheets .timesheet-header .header-right .status-badge.status-submitted{background-color:#007bff1a;color:#007bff}.timesheets .timesheet-header .header-right .status-badge.status-approved{background-color:#28a7451a;color:#28a745}.timesheets .timesheet-header .header-right .status-badge.status-rejected{background-color:#dc35451a;color:#dc3545}.timesheets .timesheet-header .header-right .submit-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.timesheets .timesheet-header .header-right .submit-button:hover:not(:disabled){background-color:#0062cc;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.timesheets .timesheet-header .header-right .submit-button:disabled{background-color:#66b0ff;box-shadow:none;cursor:not-allowed;transform:none}.timesheets .leave-balance-section{margin-bottom:2rem}.timesheets .leave-balance-section .timesheet-leave-balance .balance-cards{gap:.5rem}.timesheets .leave-balance-section .timesheet-leave-balance .balance-card{min-width:200px}@media(max-width:768px){.timesheets .leave-balance-section .timesheet-leave-balance .balance-card{min-width:auto}}.timesheets .entry-form-section{margin-bottom:2rem}.timesheets .entry-form-section,.timesheets .timesheet-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;padding:2rem}.timesheets .timesheet-content .tabs{border-bottom:1px solid #ddd;display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.timesheets .timesheet-content .tabs button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.timesheets .timesheet-content .tabs button:hover{color:#343a40}.timesheets .timesheet-content .tabs button.active{border-bottom:2px solid #007bff;color:#007bff}.timesheets .error-container{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;margin:2rem 0;padding:2rem;text-align:center}.timesheets .error-container h3{color:#dc3545;margin:0 0 .5rem}.timesheets .error-container p{color:#bd2130;margin:0 0 1rem}.timesheets .error-container button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.timesheets .error-container button:hover{background-color:#bd2130;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.leave-entry-row:hover,.leave-group-row:hover,.project-entry-row:hover,.project-group-row:hover{background-color:#dddddd1a}.leave-entry{display:flex;flex-direction:column;gap:4px}.leave-entry,.leave-entry .leave-type{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.leave-entry .leave-type{color:#343a40;font-weight:500}.leave-entry .leave-badge{color:#6c757d;font-size:.9rem}.leave-entry .leave-badge,.project-entry{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.project-entry{display:flex;flex-direction:column;gap:4px}.project-entry .project-name{color:#343a40;font-weight:500}.project-entry .job-number,.project-entry .project-name{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.project-entry .job-number{color:#6c757d;font-size:.9rem}@media(max-width:768px){.timesheets .timesheet-header{align-items:flex-start;flex-direction:column;gap:1rem}.timesheets .timesheet-header h1{font-size:1rem}.timesheets .timesheet-status{align-items:flex-start;flex-direction:column}.timesheets .timesheet-content .tabs{overflow-x:auto;padding-bottom:.5rem;white-space:nowrap}.timesheets .timesheet-content .tabs .tab{padding:.5rem 1rem}}.job-cards{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-width:100%;overflow-x:hidden;width:100%}.job-cards .filters{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding:2rem 0}.job-cards .filters .filters-left{align-items:center;display:flex;flex:1 1;gap:1rem;min-width:0}.job-cards .filters .filters-left .search-input{background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;max-width:320px;min-height:44px;min-width:200px;outline:none;padding:0 0 2px;transition:border-color .2s ease;width:100%}.job-cards .filters .filters-left .search-input.focused,.job-cards .filters .filters-left .search-input:focus{border-bottom-color:#1a2e5b}.job-cards .filters .filters-left .search-input::placeholder{color:#96a0aa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.job-cards .filters .filters-left .date-range-filter,.job-cards .filters .filters-left .project-lead-filter{flex-shrink:0;max-width:200px;min-width:150px}.job-cards .filters .filters-left .date-range-filter{flex-shrink:0;max-width:225px;min-width:175px}.job-cards .filters .filters-right{margin-right:0}.job-cards .filters .filters-right .add-job-btn{background-color:#000;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.job-cards .filters .filters-right .add-job-btn:hover{background-color:#333;transform:translateY(-1px)}.job-cards .filters .filters-right .add-job-btn:disabled{background-color:#4d4d4d;cursor:not-allowed;transform:none}.job-cards .table-wrapper{overflow-x:auto;overflow-y:visible;width:100%}.job-cards table{border-collapse:collapse;width:100%}.job-cards table td,.job-cards table th{border-bottom:1px solid #ddd;padding:1rem;text-align:left}.job-cards table th{background-color:#fff;color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.job-cards table td{color:#111827;font-size:.875rem;height:20px;vertical-align:middle}.job-cards table tr{transition:background-color .2s ease}.job-cards table tr:hover{background-color:#007bff0d}.job-cards table .expand-button{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;padding:.25rem;transition:color .2s ease;width:32px}.job-cards table .expand-button:hover{background-color:#007bff0d;color:#007bff}.job-cards table .expand-button svg{height:16px;width:16px}.job-cards .error-container{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#b91c1c;padding:2rem;text-align:center}.job-cards .table-wrapper{position:relative}.job-cards .table-wrapper .filtering-indicator{align-items:center;animation:slideDown .2s ease-out;background:#007bfff2;color:#fff;display:flex;font-size:.875rem;font-weight:500;justify-content:center;left:0;padding:.5rem 1rem;position:absolute;right:0;top:0;z-index:10}.job-cards .table-wrapper .filtering-indicator span{align-items:center;display:flex;gap:.5rem}.job-cards .table-wrapper .filtering-indicator span:after{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:12px;width:12px}.job-cards .table-cell-with-change{align-items:center;display:flex;flex-wrap:nowrap;gap:.25rem;justify-content:flex-start}.job-cards .table-cell-with-change .total-value{flex-shrink:0;font-weight:500}.job-cards .table-cell-with-change .filtered-change{background:#28a7451a;border:1px solid #28a74533;border-radius:.25rem;color:#28a745;flex-shrink:0;font-size:.7rem;font-weight:600;padding:.1rem .3rem;white-space:nowrap}.job-cards .table-cell-with-change .filtered-change.positive{background:#28a7451a;border-color:#28a74533;color:#28a745}.job-cards .table-cell-with-change .filtered-change.negative{background:#dc35451a;border-color:#dc354533;color:#dc3545}.job-cards .table-cell-with-change .filtered-change.zero{background:#6c757d1a;border-color:#6c757d33;color:#6c757d}.job-card-modal .summary-panel{background-color:#f9fafb;border-radius:4px;margin-bottom:2rem;padding:1rem}.job-card-modal .summary-panel .summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.job-card-modal .summary-panel .summary-grid .summary-item .label{color:#4b5563;font-size:.875rem;margin-bottom:.25rem}.job-card-modal .summary-panel .summary-grid .summary-item .value{color:#111827;font-size:1.25rem;font-weight:600}@media(max-width:768px){.job-cards .filters{gap:.5rem}.job-cards .filters,.job-cards .filters .filters-left{align-items:stretch;flex-direction:column}.job-cards .filters .filters-left .search-input{max-width:none}.job-cards .filters .filters-left .date-range-filter,.job-cards .filters .filters-left .project-lead-filter{width:100%}}.project-register{background:#fff;width:100%}.project-register .filters{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:2rem}.project-register .filters .filters-left{align-items:center;display:flex;flex:1 1;gap:1rem}.project-register .filters .filters-left .search-input{align-items:flex-end;background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;box-sizing:border-box;display:flex;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;max-width:400px;min-height:44px;padding:0 0 2px;transition:border-color .2s ease}.project-register .filters .filters-left .search-input::placeholder{color:#6c757d}.project-register .filters .filters-left .search-input:focus{border-bottom-color:#007bff;outline:none}.project-register .filters .filters-left .date-range-filter{min-width:250px}.project-register .filters .filters-left .date-range-filter .dropdown-button{align-items:flex-end;background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;color:#6c757d;display:flex;font-size:1rem;min-height:44px;padding:0 0 2px;transition:border-color .2s ease}.project-register .filters .filters-left .date-range-filter .dropdown-button:hover{border-bottom-color:#007bff}.project-register .filters .filters-left .date-range-filter .dropdown-button:focus{border-bottom-color:#007bff;outline:none}.project-register .filters .filters-left .date-range-filter .dropdown-menu{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-top:.25rem}.project-register .filters .filters-left .date-range-filter .dropdown-menu .dropdown-item{color:#374151;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s ease}.project-register .filters .filters-left .date-range-filter .dropdown-menu .dropdown-item:hover{background-color:#f9fafb}.project-register .filters .filters-left .date-range-filter .dropdown-menu .dropdown-item.active{background-color:#007bff1a;color:#007bff}.project-register .filters .filters-left .project-lead-filter{min-width:250px}.project-register .filters .filters-left .project-lead-filter .dropdown-button{align-items:flex-end;background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;color:#6c757d;display:flex;font-size:1rem;min-height:44px;padding:0 0 2px;transition:border-color .2s ease}.project-register .filters .filters-left .project-lead-filter .dropdown-button:hover{border-bottom-color:#007bff}.project-register .filters .filters-left .project-lead-filter .dropdown-button:focus{border-bottom-color:#007bff;outline:none}.project-register .filters .filters-left .project-lead-filter .dropdown-menu{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-top:.25rem}.project-register .filters .filters-left .project-lead-filter .dropdown-menu .dropdown-item{color:#374151;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s ease}.project-register .filters .filters-left .project-lead-filter .dropdown-menu .dropdown-item:hover{background-color:#f9fafb}.project-register .filters .filters-left .project-lead-filter .dropdown-menu .dropdown-item.active{background-color:#007bff1a;color:#007bff}.project-register .table-wrapper{overflow-x:auto;overflow-y:visible;width:100%}.project-register table{border-collapse:collapse;width:100%}.project-register table td,.project-register table th{border-bottom:1px solid #ddd;padding:1rem;text-align:left}.project-register table th{background-color:#fff;color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.project-register table td{color:#111827;font-size:.875rem;height:20px;vertical-align:middle}.project-register table tr{transition:background-color .2s ease}.project-register table tr:hover{background-color:#007bff0d}.project-register table .expand-button{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;padding:.25rem;transition:color .2s ease;width:32px}.project-register table .expand-button:hover{background-color:#007bff0d;color:#007bff}.project-register table .expand-button svg{height:16px;width:16px}.project-register .error-container{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#b91c1c;padding:2rem;text-align:center}@media(max-width:768px){.project-register{padding-left:1rem}.project-register .filters{flex-direction:column;gap:1rem}.project-register .filters .filters-left{flex-direction:column;width:100%}.project-register .filters .filters-left input{min-width:0;min-width:auto;width:100%}.project-register .job-card-modal .modal-content{margin:1rem;max-height:calc(100vh - 40px);width:calc(100% - 2rem)}.project-register .job-card-modal .modal-content .modal-body{padding:1rem}.project-register .job-card-modal .modal-content .modal-body .summary-panel .summary-grid{grid-template-columns:1fr}.project-register .job-card-modal .modal-content .modal-body .job-card-table{border-radius:0;margin:0 -1rem}.job-cards .table-wrapper table tbody tr{height:20px!important}.job-cards .table-wrapper table tbody tr td{font-size:.875rem!important;height:20px!important;line-height:1.2!important;padding:2px 16px!important}.job-cards .table-wrapper table thead tr th{font-size:.875rem!important;height:auto!important;padding:8px 16px!important}}@media(max-width:768px)and (max-width:768px){.job-cards .table-wrapper table tbody tr{height:16px!important}.job-cards .table-wrapper table tbody tr td{height:16px!important;padding:1px 8px!important}.job-cards .table-wrapper table thead tr th{padding:6px 8px!important}}.timesheet-approvals{background:#fff;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-width:100%;min-height:calc(100vh - 64px);overflow-x:hidden;padding:0 2rem;width:100%}.timesheet-approvals .timesheet-approvals-content{box-sizing:border-box;display:flex;flex-direction:column;gap:2rem;margin-top:1rem;max-width:100%;min-height:600px;overflow-x:hidden;width:100%}.timesheet-approvals .timesheet-approvals-error,.timesheet-approvals .timesheet-approvals-loading{align-items:center;display:flex;flex-direction:column;height:50vh;justify-content:center;text-align:center}.timesheet-approvals .timesheet-approvals-error h3,.timesheet-approvals .timesheet-approvals-loading h3{color:#343a40;margin-bottom:1rem}.timesheet-approvals .timesheet-approvals-error p,.timesheet-approvals .timesheet-approvals-loading p{color:#666;margin-bottom:1rem}.timesheet-approvals .timesheet-approvals-error button,.timesheet-approvals .timesheet-approvals-loading button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem 1rem}.timesheet-approvals .timesheet-approvals-error button:hover,.timesheet-approvals .timesheet-approvals-loading button:hover{background:#1a2e5b}@media(max-width:992px){.timesheet-approvals .timesheet-approvals-content{flex-direction:column;gap:1rem}.timesheet-approvals .timesheet-approvals-content .job-selector-panel{width:100%}}.filter-bar{background:#0000;margin-bottom:1rem;padding:.5rem 0}.filter-bar .filter-row{align-items:end;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:1rem;width:100%}.filter-bar .filter-group{display:flex;flex:1 1;flex-direction:column;flex-shrink:0;max-width:220px;min-width:160px}.filter-bar .filter-group label{color:#343a40;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.filter-bar .filter-group .date-input{background:#fff;border:1px solid #ddd;border-radius:4px;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.4;min-height:44px;padding:0 1rem;transition:all .2s ease}.filter-bar .filter-group .date-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.filter-bar .filter-group .date-input:hover{border-color:#007bff}.filter-bar .filter-group input[type=date]{background:#fff;border:1px solid #ddd;border-radius:4px;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.4;min-height:44px;padding:0 1rem;transition:all .2s ease}.filter-bar .filter-group input[type=date]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.filter-bar .filter-group input[type=date]:hover{border-color:#007bff}.filter-bar .filter-actions{align-items:end;display:flex}.filter-bar .filter-actions .clear-filters-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:.9rem;min-height:44px;padding:.5rem 1rem;transition:all .2s ease}.filter-bar .filter-actions .clear-filters-btn:hover{background:#e9ecef;border-color:#adb5bd}@media(max-width:992px){.filter-bar .filter-row{flex-wrap:wrap;gap:.5rem}.filter-bar .filter-group{flex:1 1 140px;max-width:180px;min-width:140px}}@media(max-width:768px){.filter-bar .filter-row{align-items:stretch;flex-direction:column;gap:.5rem}.filter-bar .filter-group{flex:1 1;max-width:none;min-width:100%}}@media(max-width:576px){.filter-bar{padding:1rem 0}.filter-bar .filter-group{min-width:100%}}.entry-grid .entry-grid-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.entry-grid .entry-grid-header h2{color:#343a40;font-size:1.5rem;font-weight:600;margin:0}.entry-grid .entry-grid-header .entry-count{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#666;font-size:1rem;padding:.5rem 1rem}.entry-grid .entry-grid-content .entry-cards-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.entry-grid .entry-grid-content .entry-status-section{margin-bottom:3rem}.entry-grid .entry-grid-content .entry-status-section .section-header{align-items:center;border-bottom:2px solid #ddd;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.entry-grid .entry-grid-content .entry-status-section .section-header .section-title{color:#343a40;font-size:1.2rem;font-weight:600;margin:0}.entry-grid .entry-grid-content .entry-status-section .section-header .section-count{background:#007bff;border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 8px}.entry-grid .entry-grid-content .entry-status-section .entry-cards-list{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.entry-grid .entry-grid-empty{align-items:center;display:flex;height:400px;justify-content:center}.entry-grid .entry-grid-empty .empty-state{color:#666;text-align:center}.entry-grid .entry-grid-empty .empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.entry-grid .entry-grid-empty .empty-state h3{color:#343a40;margin-bottom:.5rem}.entry-grid .entry-grid-empty .empty-state p{font-size:1.1rem;margin:0}.entry-card-row{align-items:stretch;background:#fff;border:1px solid #ddd;border-radius:8px;display:flex;gap:2rem;padding:2rem;position:relative;transition:all .2s ease}.entry-card-row:hover{border-color:#007bff;box-shadow:0 4px 8px #0000001a}.entry-card-row .entry-card-left{flex:1 1;min-width:0}.entry-card-row .entry-card-left .employee-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.entry-card-row .entry-card-left .employee-header .employee-name{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.1rem;font-weight:600;margin:0}.entry-card-row .entry-card-left .employee-header .status-badge{border-radius:12px;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:600;padding:4px 8px}.entry-card-row .entry-card-left .employee-header .status-badge.status-submitted{background-color:#ffc1071a;color:#ffc107}.entry-card-row .entry-card-left .employee-header .status-badge.status-allocated{background-color:#28a7451a;color:#28a745}.entry-card-row .entry-card-left .employee-header .status-badge.status-hidden{background-color:#9e9e9e1a;color:#9e9e9e}.entry-card-row .entry-card-left .employee-header .status-pills-container{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.entry-card-row .entry-card-left .entry-details{display:flex;flex-direction:column;gap:.5rem}.entry-card-row .entry-card-left .entry-details .detail-item{align-items:center;display:flex;gap:.5rem}.entry-card-row .entry-card-left .entry-details .detail-item .detail-label{color:#666;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;min-width:80px}.entry-card-row .entry-card-left .entry-details .detail-item .detail-value{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.4}.entry-card-row .entry-card-left .entry-details .detail-item .detail-value em{color:#999;font-style:italic}.entry-card-row .entry-card-right{border-left:1px solid #ddd;flex:0 0 550px;padding-left:2rem}.entry-card-row .entry-card-right,.entry-card-row .entry-card-right .edit-controls{display:flex;flex-direction:column;gap:1rem}.entry-card-row .entry-card-right .edit-controls .control-row{display:flex;gap:1rem}@media(max-width:576px){.entry-card-row .entry-card-right .edit-controls .control-row{flex-direction:column}}.entry-card-row .entry-card-right .edit-controls .control-group{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.entry-card-row .entry-card-right .edit-controls .control-group.hours-group{flex:0 0 128px}@media(max-width:576px){.entry-card-row .entry-card-right .edit-controls .control-group.hours-group{flex:1 1}}.entry-card-row .entry-card-right .edit-controls .control-group label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600}.entry-card-row .entry-card-right .edit-controls .control-group .project-dropdown{min-height:44px}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;min-height:44px}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group .hours-btn{align-items:center;background:none;border:none;border-radius:3px;color:#343a40;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:600;height:24px;justify-content:center;margin:0 6px;min-width:24px;padding:0;transition:all .2s ease;width:24px}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group .hours-btn:hover{background:#343a401a}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group .hours-btn:disabled{color:#ccc;cursor:not-allowed}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group .hours-input{background:none;border:none;color:#343a40;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:500;outline:none;padding:4px 2px;text-align:center;width:24px}.entry-card-row .entry-card-right .edit-controls .control-group .hours-input-group .hours-input:focus{background:#343a400d}.entry-card-row .entry-card-right .action-controls{align-items:center;display:flex;gap:.5rem;justify-content:flex-end;margin-top:auto}.entry-card-row .entry-card-right .action-controls .update-btn{background:#007bff1a;border:1px solid #007bff33;border-radius:4px;color:#007bff;cursor:pointer;flex:0 0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;min-height:44px;min-width:70px;padding:.5rem;transition:all .2s ease}.entry-card-row .entry-card-right .action-controls .update-btn:hover{background:#007bff33}.entry-card-row .entry-card-right .action-controls .allocate-hide-group{display:flex;flex:0 0 auto;gap:2px}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .allocate-btn{background:#28a7451a;border:1px solid #28a74533;border-radius:4px 0 0 4px;border-right:none;color:#28a745;cursor:pointer;flex:0 0 80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;padding:.5rem;transition:all .2s ease}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .allocate-btn:hover{background:#28a74533}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .allocate-btn:disabled{background:#28a7450d;color:#28a74580;cursor:not-allowed}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow{flex:0 0 30px;min-height:44px}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-trigger{align-items:center;background:#9e9e9e1a;border:1px solid #9e9e9e33;border-left:none;border-radius:0 4px 4px 0;color:#9e9e9e;display:flex;justify-content:center;margin:0!important;min-width:30px;padding:0!important;width:30px}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-trigger.open,.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-trigger:hover{background:#9e9e9e33}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-trigger .selected-value{display:none}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-trigger .dropdown-arrow{align-items:center;display:flex;justify-content:center;margin:0!important;padding:0!important}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow.disabled .dropdown-trigger{background:#9e9e9e0d;color:#9e9e9e80;cursor:not-allowed}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-menu{left:auto;max-width:none;min-width:max-content;overflow:visible;right:0;white-space:nowrap;width:auto;z-index:1000}.entry-card-row .entry-card-right .action-controls .allocate-hide-group .hide-dropdown-arrow .dropdown-item{overflow:visible;white-space:nowrap}@media(max-width:992px){.entry-card-row{flex-direction:column}.entry-card-row .entry-card-right{border-left:none;border-top:1px solid #ddd;flex:1 1;padding-left:0;padding-top:2rem}}.job-selector{background:#fff;border:1px solid #ddd;border-radius:8px;height:fit-content;min-height:400px}.job-selector .job-selector-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;padding:2rem}.job-selector .job-selector-header h3{color:#343a40;font-size:1.2rem;font-weight:600;margin:0}.job-selector .job-selector-header .close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;width:24px}.job-selector .job-selector-header .close-btn:hover{color:#dc3545}.job-selector .job-selector-content{padding:2rem}.job-selector .job-selector-content .current-entry{margin-bottom:2rem}.job-selector .job-selector-content .current-entry h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.job-selector .job-selector-content .current-entry .entry-summary{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;padding:1rem}.job-selector .job-selector-content .current-entry .entry-summary .entry-detail{display:flex;justify-content:space-between;margin-bottom:.5rem}.job-selector .job-selector-content .current-entry .entry-summary .entry-detail:last-child{margin-bottom:0}.job-selector .job-selector-content .current-entry .entry-summary .entry-detail .label{color:#666;font-size:.9rem;font-weight:500}.job-selector .job-selector-content .current-entry .entry-summary .entry-detail .value{color:#343a40;font-size:.9rem;font-weight:600;text-align:right}.job-selector .job-selector-content .job-assignment{margin-bottom:2rem}.job-selector .job-selector-content .job-assignment h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.job-selector .job-selector-content .job-assignment .form-group{margin-bottom:1rem}.job-selector .job-selector-content .job-assignment .form-group label{color:#343a40;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.job-selector .job-selector-content .job-assignment .selected-project-info{background:#f0f8ff;border:1px solid #007bff;border-radius:4px;margin-top:1rem;padding:1rem}.job-selector .job-selector-content .job-assignment .selected-project-info .project-details h5{color:#007bff;font-size:1rem;font-weight:600;margin:0 0 .5rem}.job-selector .job-selector-content .job-assignment .selected-project-info .project-details p{color:#666;font-size:.9rem;margin:0 0 .5rem}.job-selector .job-selector-content .job-assignment .selected-project-info .project-details p:last-child{margin-bottom:0}.job-selector .job-selector-content .hours-adjustment{margin-bottom:2rem}.job-selector .job-selector-content .hours-adjustment h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.job-selector .job-selector-content .hours-adjustment .hours-input-group{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.job-selector .job-selector-content .hours-adjustment .hours-input-group .hours-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;height:40px;transition:background-color .2s ease;width:40px}.job-selector .job-selector-content .hours-adjustment .hours-input-group .hours-btn:hover:not(:disabled){background:#1a2e5b}.job-selector .job-selector-content .hours-adjustment .hours-input-group .hours-btn:disabled{cursor:not-allowed;opacity:.5}.job-selector .job-selector-content .hours-adjustment .hours-input-group .hours-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:1rem;min-height:40px;padding:.5rem;text-align:center}.job-selector .job-selector-content .hours-adjustment .hours-input-group .hours-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.job-selector .job-selector-content .hours-adjustment .hours-note{color:#666;font-size:.8rem;font-style:italic;margin:0}.job-selector .job-selector-content .job-selector-actions{display:flex;gap:.5rem}.job-selector .job-selector-content .job-selector-actions .save-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.5rem 1rem;transition:background-color .2s ease}.job-selector .job-selector-content .job-selector-actions .save-btn:hover:not(:disabled){background:#1e7e34}.job-selector .job-selector-content .job-selector-actions .save-btn:disabled{cursor:not-allowed;opacity:.5}.job-selector .job-selector-content .job-selector-actions .cancel-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.job-selector .job-selector-content .job-selector-actions .cancel-btn:hover{background:#e9ecef;border-color:#adb5bd}.job-selector .job-selector-empty{align-items:center;display:flex;height:300px;justify-content:center}.job-selector .job-selector-empty .empty-state{color:#666;text-align:center}.job-selector .job-selector-empty .empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.job-selector .job-selector-empty .empty-state h4{color:#343a40;margin-bottom:.5rem}.job-selector .job-selector-empty .empty-state p{font-size:1rem;line-height:1.4;margin:0}.entry-grid .entry-grid-header .header-info{display:flex;flex-direction:column;gap:.5rem}.entry-grid .entry-grid-header .header-info .summary-stats{display:flex;flex-wrap:wrap;gap:2rem}.entry-grid .entry-grid-header .header-info .summary-stats .stat{align-items:center;color:#666;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem}.entry-grid .entry-grid-header .header-info .summary-stats .stat strong{color:#343a40;margin-right:4px}.entry-grid .entry-grid-header .grid-controls{align-items:center;display:flex;gap:1rem}.entry-grid .entry-grid-header .grid-controls .expand-controls{display:flex;gap:.5rem}.entry-grid .entry-grid-header .grid-controls .expand-controls .collapse-all-btn,.entry-grid .entry-grid-header .grid-controls .expand-controls .expand-all-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;min-height:44px;padding:.5rem 1rem;transition:all .2s ease}.entry-grid .entry-grid-header .grid-controls .expand-controls .collapse-all-btn:hover:not(:disabled),.entry-grid .entry-grid-header .grid-controls .expand-controls .expand-all-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.entry-grid .entry-grid-header .grid-controls .expand-controls .collapse-all-btn:disabled,.entry-grid .entry-grid-header .grid-controls .expand-controls .expand-all-btn:disabled{cursor:not-allowed;opacity:.5}@media(max-width:768px){.entry-grid .entry-grid-header{align-items:stretch;flex-direction:column;gap:1rem}.entry-grid .entry-grid-header .grid-controls,.entry-grid .entry-grid-header .header-info .summary-stats{justify-content:center}}.entry-grid .grouped-entry-cards-list{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.entry-grid .entry-grid-footer .status-distribution{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;padding:2rem}.entry-grid .entry-grid-footer .status-distribution h4{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.entry-grid .entry-grid-footer .status-distribution .status-stats{display:flex;flex-wrap:wrap;gap:2rem}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat{align-items:center;display:flex;flex-direction:column;min-width:80px;text-align:center}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat .count{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat .label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:500;text-transform:uppercase}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-submitted .count,.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-submitted .label{color:#ffc107}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-allocated .count,.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-allocated .label{color:#28a745}.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-hidden .count,.entry-grid .entry-grid-footer .status-distribution .status-stats .status-stat.status-hidden .label{color:#9e9e9e}@media(max-width:768px){.entry-grid .entry-grid-footer .status-distribution .status-stats{justify-content:center}}.grouped-entry-card{background:#fff;border:2px solid #ddd;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden;transition:all .3s ease}.grouped-entry-card:hover{border-color:#007bff;box-shadow:0 8px 16px #0000001a}.grouped-entry-card.status-submitted{border-left:4px solid #ffc107}.grouped-entry-card.status-allocated{border-left:4px solid #28a745}.grouped-entry-card.status-hidden{border-left:4px solid #9e9e9e}.grouped-entry-card .grouped-entry-header{padding:2rem}.grouped-entry-card .grouped-entry-header .card-main-content{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.grouped-entry-card .grouped-entry-header .card-main-content .project-info{flex:1 1}.grouped-entry-card .grouped-entry-header .card-main-content .project-info .project-name-job{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.grouped-entry-card .grouped-entry-header .card-main-content .project-info .project-name-job .project-name{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.2rem;font-weight:600;margin:0}.grouped-entry-card .grouped-entry-header .card-main-content .project-info .project-name-job .job-number{color:#007bff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500}.grouped-entry-card .grouped-entry-header .card-main-content .project-info .employee-info .employee-name{color:#343a40;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:500;margin-bottom:2px}.grouped-entry-card .grouped-entry-header .card-main-content .project-info .employee-info .week-ending{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem;text-align:right}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:first-child{order:2}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:first-child .count{color:#343a40;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.3rem;font-weight:600}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:first-child .label{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:first-child .label .hours-adjusted-indicator{color:#ffc107;cursor:help;font-weight:700;margin-left:.25rem}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:last-child{order:1}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:last-child .count{border-radius:12px;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.7rem;font-weight:600;padding:2px 8px}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:last-child .count.status-submitted{background-color:#ffc1071a;color:#ffc107}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:last-child .count.status-allocated{background-color:#28a7451a;color:#28a745}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric:last-child .count.status-hidden{background-color:#9e9e9e1a;color:#9e9e9e}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric.status-pills-container{align-items:center;display:flex;flex-wrap:wrap;gap:4px;order:1}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric .status-badge{border-radius:12px;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:600;padding:4px 8px}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric .status-badge.status-submitted{background-color:#ffc1071a;color:#ffc107}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric .status-badge.status-allocated{background-color:#28a7451a;color:#28a745}.grouped-entry-card .grouped-entry-header .card-main-content .summary-metrics .metric .status-badge.status-hidden{background-color:#9e9e9e1a;color:#9e9e9e}.grouped-entry-card .grouped-entry-header .card-actions{align-items:center;display:flex;justify-content:space-between}.grouped-entry-card .grouped-entry-header .card-actions .toggle-button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.grouped-entry-card .grouped-entry-header .card-actions .toggle-button:hover{background:#007bff0d;border-color:#007bff;color:#007bff}.grouped-entry-card .grouped-entry-header .card-actions .toggle-button .arrow{font-size:.8rem;transition:transform .2s ease}.grouped-entry-card .grouped-entry-header .card-actions .toggle-button .arrow.expanded{transform:rotate(180deg)}.grouped-entry-card .grouped-entry-header .card-actions .allocate-group-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;padding:.5rem 2rem;transition:background-color .2s ease}.grouped-entry-card .grouped-entry-header .card-actions .allocate-group-button:hover{background:#1e7e34}.grouped-entry-card .grouped-entry-header .card-actions .allocate-group-button:disabled{background:#ccc;cursor:not-allowed}@media(max-width:768px){.grouped-entry-card .grouped-entry-header .card-main-content{flex-direction:column;gap:1rem}.grouped-entry-card .grouped-entry-header .card-actions{justify-content:space-between}}.grouped-entry-card .entry-detail{background:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:.5rem;padding:1rem;transition:all .2s ease}.grouped-entry-card .entry-detail:hover{box-shadow:0 2px 4px #0000001a}.grouped-entry-card .entry-detail.status-submitted{border-left:3px solid #ffc107}.grouped-entry-card .entry-detail.status-allocated{border-left:3px solid #28a745}.grouped-entry-card .entry-detail.status-hidden{border-left:3px solid #9e9e9e;opacity:.7}.grouped-entry-card .entry-detail .entry-basic-info{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.grouped-entry-card .entry-detail .entry-basic-info .entry-date-desc{flex:1 1}.grouped-entry-card .entry-detail .entry-basic-info .entry-date-desc .entry-date{color:#343a40;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;margin-bottom:2px}.grouped-entry-card .entry-detail .entry-basic-info .entry-date-desc .entry-description{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-style:italic}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours{flex:2 1;text-align:right}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .project-display{color:#343a40;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;margin-bottom:2px}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .hours-display{color:#007bff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .project-select{border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;margin-bottom:.5rem;padding:.5rem;width:100%}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .project-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .hours-input{border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;padding:.5rem;text-align:center;width:80px}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours .hours-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.grouped-entry-card .entry-detail .entry-actions{align-items:center;display:flex;justify-content:space-between}.grouped-entry-card .entry-detail .entry-actions .status-badge{border-radius:8px;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.7rem;font-weight:600;padding:2px 6px}.grouped-entry-card .entry-detail .entry-actions .status-badge.status-submitted{background-color:#ffc1071a;color:#ffc107}.grouped-entry-card .entry-detail .entry-actions .status-badge.status-allocated{background-color:#28a7451a;color:#28a745}.grouped-entry-card .entry-detail .entry-actions .status-badge.status-hidden{background-color:#9e9e9e1a;color:#9e9e9e}.grouped-entry-card .entry-detail .entry-actions .edit-actions,.grouped-entry-card .entry-detail .entry-actions .view-actions{display:flex;gap:.5rem}.grouped-entry-card .entry-detail .entry-actions .edit-actions button,.grouped-entry-card .entry-detail .entry-actions .view-actions button{border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;padding:4px 8px;transition:all .2s ease}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.save-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.save-button{background:#28a745;border:none;color:#fff}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.save-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.save-button:hover{background:#1e7e34}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.cancel-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.cancel-button{background:#f8f9fa;border:1px solid #ddd;color:#343a40}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.cancel-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.cancel-button:hover{background:#e9ecef}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.edit-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.edit-button{background:#007bff1a;border:1px solid #007bff33;color:#007bff}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.edit-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.edit-button:hover{background:#007bff33}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.hide-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.hide-button{background:#9e9e9e1a;border:1px solid #9e9e9e33;color:#9e9e9e}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.hide-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.hide-button:hover{background:#9e9e9e33}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.allocate-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.allocate-button{background:#28a7451a;border:1px solid #28a74533;color:#28a745}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.allocate-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.allocate-button:hover{background:#28a74533}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.undo-hide-button,.grouped-entry-card .entry-detail .entry-actions .view-actions button.undo-hide-button{background:#ffc1071a;border:1px solid #ffc10733;color:#ffc107}.grouped-entry-card .entry-detail .entry-actions .edit-actions button.undo-hide-button:hover,.grouped-entry-card .entry-detail .entry-actions .view-actions button.undo-hide-button:hover{background:#ffc10733}@media(max-width:768px){.grouped-entry-card .entry-detail .entry-basic-info{flex-direction:column;gap:.5rem}.grouped-entry-card .entry-detail .entry-basic-info .entry-project-hours{text-align:left}.grouped-entry-card .entry-detail .entry-actions{align-items:stretch;flex-direction:column;gap:.5rem}.grouped-entry-card .entry-detail .entry-actions .edit-actions,.grouped-entry-card .entry-detail .entry-actions .view-actions{justify-content:center}}.grouped-entry-card .entry-details-section{animation:slideDown .3s ease-out;background:#f8f9fa80;border-top:1px solid #ddd;padding:1rem}.grouped-entry-card .entry-details-section .loading-details{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:2rem;text-align:center}.grouped-entry-card .entry-details-section .loading-details .spinner{display:inline-block;margin:0 .5rem}.grouped-entry-card .entry-details-section .error-details{color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:2rem;text-align:center}.grouped-entry-card .entry-details-section .error-details button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin-top:1rem;padding:.5rem 1rem}.grouped-entry-card .entry-details-section .error-details button:hover{background:#bd2130}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:800px;opacity:1}}.employee-management{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-width:100%;overflow-x:hidden;width:100%}.employee-management .employee-management-content{box-sizing:border-box;display:flex;flex-direction:column;gap:2rem;max-width:100%;min-height:600px;overflow-x:hidden;width:100%}.employee-management .employee-management-error,.employee-management .employee-management-loading{align-items:center;display:flex;flex-direction:column;height:50vh;justify-content:center;text-align:center}.employee-management .employee-management-error h3,.employee-management .employee-management-loading h3{color:#343a40;margin-bottom:1rem}.employee-management .employee-management-error p,.employee-management .employee-management-loading p{color:#666;margin-bottom:1rem}.employee-management .employee-management-error button,.employee-management .employee-management-loading button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem 1rem}.employee-management .employee-management-error button:hover,.employee-management .employee-management-loading button:hover{background:#1a2e5b}.employee-filter{background:#fff;display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem;overflow:visible;padding:2rem 1rem;position:relative}.employee-filter .filter-row{align-items:flex-start;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:.5rem;width:100%}.employee-filter .filter-group{display:flex;flex:1 1;flex-direction:column;flex-shrink:0;max-width:180px;min-width:140px;overflow:visible;position:relative}.employee-filter .filter-group label{display:none}.employee-filter .filter-group .search-input{background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;min-height:44px;outline:none;padding:0 0 2px;transition:border-color .2s ease}.employee-filter .filter-group .search-input:focus{border-bottom-color:#1a2e5b}.employee-filter .filter-group .search-input::placeholder{color:#96a0aa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.employee-filter .filter-group.search-group{flex:2 1;max-width:none;min-width:200px}.employee-filter .filter-actions{align-items:flex-end;display:flex}.employee-filter .filter-actions .clear-filters-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:.9rem;min-height:44px;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.employee-filter .filter-actions .clear-filters-btn:hover{background:#e9ecef;border-color:#adb5bd}@media(max-width:992px){.employee-filter .filter-row{flex-wrap:wrap;gap:.25rem}.employee-filter .filter-group{flex:1 1 120px;max-width:160px;min-width:120px}}@media(max-width:768px){.employee-filter .filter-row{align-items:stretch;flex-direction:column;gap:.5rem}.employee-filter .filter-group{flex:1 1;max-width:none;min-width:100%}.employee-filter .filter-group.search-group{flex:1 1}}@media(max-width:576px){.employee-filter{padding:1rem}.employee-filter .filter-group{min-width:100%}}.employee-table-container{background:#fff;border:none;border-radius:0;margin-bottom:2rem;overflow-x:auto;padding-bottom:2rem;padding-left:1rem;padding-right:1rem;width:100%}.employee-table .employee-type{border-radius:16px;display:inline-block;font-size:.875rem;font-weight:500;letter-spacing:.3px;padding:4px 12px;text-transform:uppercase;white-space:nowrap}.employee-table .employee-type.employee-type-engineer{background:#007bff1a;color:#007bff}.employee-table .employee-type.employee-type-draftsperson{background:#17a2b81a;color:#17a2b8}.employee-table .employee-type.employee-type-accounts{background:#ffc1071a;color:#a07800}.employee-table .employee-role{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:500;padding:4px 8px;white-space:nowrap}.employee-table .employee-role.role-manager{background:#28a7451a;color:#28a745}.employee-table .employee-role.role-basic{background:#6c757d1a;color:#6c757d}.employee-table .employee-status{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:500;padding:4px 8px;white-space:nowrap}.employee-table .employee-status.status-active{background:#28a7451a;color:#28a745}.employee-table .employee-status.status-inactive{background:#dc35451a;color:#dc3545}.employee-table .no-rate{color:#999;font-style:italic}.employee-table-empty{align-items:center;background:#fff;border:2px dashed #ddd;border-radius:4px;display:flex;justify-content:center;min-height:300px}.employee-table-empty .empty-state{max-width:400px;text-align:center}.employee-table-empty .empty-state h3{color:#343a40;margin-bottom:.5rem}.employee-table-empty .empty-state p{color:#666;line-height:1.5}.add-employee-form .form-error-general,.edit-employee-form .form-error-general,.invite-employee-form .form-error-general{background:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-size:.9rem;margin-bottom:1rem;padding:.5rem}.add-employee-form .form-row,.edit-employee-form .form-row,.invite-employee-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}@media(max-width:576px){.add-employee-form .form-row,.edit-employee-form .form-row,.invite-employee-form .form-row{grid-template-columns:1fr}}.add-employee-form .form-group,.edit-employee-form .form-group,.invite-employee-form .form-group{display:flex;flex-direction:column}.add-employee-form .form-group label,.edit-employee-form .form-group label,.invite-employee-form .form-group label{color:#343a40;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.add-employee-form .form-group label .required,.edit-employee-form .form-group label .required,.invite-employee-form .form-group label .required{color:#dc3545}.add-employee-form .form-group input[type=email],.add-employee-form .form-group input[type=text],.edit-employee-form .form-group input[type=email],.edit-employee-form .form-group input[type=text],.invite-employee-form .form-group input[type=email],.invite-employee-form .form-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem;transition:all .2s ease}.add-employee-form .form-group input[type=email]:focus,.add-employee-form .form-group input[type=text]:focus,.edit-employee-form .form-group input[type=email]:focus,.edit-employee-form .form-group input[type=text]:focus,.invite-employee-form .form-group input[type=email]:focus,.invite-employee-form .form-group input[type=text]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.add-employee-form .form-group input[type=email].error,.add-employee-form .form-group input[type=text].error,.edit-employee-form .form-group input[type=email].error,.edit-employee-form .form-group input[type=text].error,.invite-employee-form .form-group input[type=email].error,.invite-employee-form .form-group input[type=text].error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.add-employee-form .form-group input[type=email]:disabled,.add-employee-form .form-group input[type=text]:disabled,.edit-employee-form .form-group input[type=email]:disabled,.edit-employee-form .form-group input[type=text]:disabled,.invite-employee-form .form-group input[type=email]:disabled,.invite-employee-form .form-group input[type=text]:disabled{background:#f8f9fa;color:#666;cursor:not-allowed}.add-employee-form .form-group .field-error,.edit-employee-form .form-group .field-error,.invite-employee-form .form-group .field-error{color:#dc3545;font-size:.8rem;margin-top:4px}.add-employee-form .checkbox-group .checkbox-label,.edit-employee-form .checkbox-group .checkbox-label,.invite-employee-form .checkbox-group .checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:400}.add-employee-form .checkbox-group .checkbox-label input[type=checkbox],.edit-employee-form .checkbox-group .checkbox-label input[type=checkbox],.invite-employee-form .checkbox-group .checkbox-label input[type=checkbox]{margin-right:.5rem;transform:scale(1.1)}.add-employee-form .checkbox-group .checkbox-label .checkbox-text,.edit-employee-form .checkbox-group .checkbox-label .checkbox-text,.invite-employee-form .checkbox-group .checkbox-label .checkbox-text{font-weight:500}.add-employee-form .checkbox-group .field-help,.edit-employee-form .checkbox-group .field-help,.invite-employee-form .checkbox-group .field-help{color:#666;font-size:.8rem;line-height:1.4;margin-top:4px}.add-employee-form .employee-info,.edit-employee-form .employee-info,.invite-employee-form .employee-info{background:#f8f9fa;border-radius:4px;margin:1rem 0;padding:1rem}.add-employee-form .employee-info h4,.edit-employee-form .employee-info h4,.invite-employee-form .employee-info h4{color:#343a40;margin:0 0 .5rem}.add-employee-form .employee-info .info-grid,.edit-employee-form .employee-info .info-grid,.invite-employee-form .employee-info .info-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}@media(max-width:576px){.add-employee-form .employee-info .info-grid,.edit-employee-form .employee-info .info-grid,.invite-employee-form .employee-info .info-grid{grid-template-columns:1fr}}.add-employee-form .employee-info .info-grid .info-item label,.edit-employee-form .employee-info .info-grid .info-item label,.invite-employee-form .employee-info .info-grid .info-item label{color:#666;font-size:.8rem;margin-bottom:2px}.add-employee-form .employee-info .info-grid .info-item span,.edit-employee-form .employee-info .info-grid .info-item span,.invite-employee-form .employee-info .info-grid .info-item span{color:#343a40;font-weight:500}.add-employee-form .form-actions,.edit-employee-form .form-actions,.invite-employee-form .form-actions{border-top:1px solid #ddd;display:flex;gap:.5rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.add-employee-form .form-actions .btn-secondary,.edit-employee-form .form-actions .btn-secondary,.invite-employee-form .form-actions .btn-secondary{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.add-employee-form .form-actions .btn-secondary:hover,.edit-employee-form .form-actions .btn-secondary:hover,.invite-employee-form .form-actions .btn-secondary:hover{background:#e9ecef;border-color:#adb5bd}.add-employee-form .form-actions .btn-secondary:disabled,.edit-employee-form .form-actions .btn-secondary:disabled,.invite-employee-form .form-actions .btn-secondary:disabled{cursor:not-allowed;opacity:.6}.add-employee-form .form-actions .btn-primary,.edit-employee-form .form-actions .btn-primary,.invite-employee-form .form-actions .btn-primary{background:#007bff;border:1px solid #007bff;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.add-employee-form .form-actions .btn-primary:hover,.edit-employee-form .form-actions .btn-primary:hover,.invite-employee-form .form-actions .btn-primary:hover{background:#1a2e5b;border-color:#1a2e5b}.add-employee-form .form-actions .btn-primary:disabled,.edit-employee-form .form-actions .btn-primary:disabled,.invite-employee-form .form-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.invite-employee-form .form-description{background:#007bff0d;border:1px solid #007bff1a;border-radius:4px;margin-bottom:2rem;padding:1rem}.invite-employee-form .form-description p{color:#666;font-size:.9rem;line-height:1.5;margin:0}.invite-employee-form .form-success{padding:3rem 1rem;text-align:center}.invite-employee-form .form-success .success-icon{background:#28a745;border-radius:50%;color:#fff;display:inline-block;font-size:24px;font-weight:700;height:60px;line-height:60px;margin-bottom:1rem;width:60px}.invite-employee-form .form-success h3{color:#343a40;font-size:1.2rem;margin:0 0 .5rem}.invite-employee-form .form-success p{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 .5rem}.invite-employee-form .form-success p:last-child{margin-bottom:0}.invite-employee-form .form-success p strong{color:#007bff;font-weight:600}.charge-rate-modal .current-rate-summary{background:#f8f9fa;border-radius:4px;margin-bottom:2rem;padding:1rem}.charge-rate-modal .current-rate-summary h3{color:#343a40;font-size:1.2rem;margin:0 0 .5rem}.charge-rate-modal .current-rate-summary .current-rate-info{display:flex;flex-direction:column}.charge-rate-modal .current-rate-summary .current-rate-info .rate-amount{color:#007bff;font-size:1.5rem;font-weight:600}.charge-rate-modal .current-rate-summary .current-rate-info .rate-details{color:#666;font-size:.9rem;margin-top:4px}.charge-rate-modal .current-rate-summary .no-current-rate span{color:#999;font-style:italic}.charge-rate-modal .add-rate-section{border:1px solid #ddd;border-radius:4px;margin-bottom:2rem;padding:1rem}.charge-rate-modal .add-rate-section .add-rate-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:all .2s ease}.charge-rate-modal .add-rate-section .add-rate-btn:hover{background:#1a2e5b}.charge-rate-modal .add-rate-section .add-rate-btn:disabled{cursor:not-allowed;opacity:.6}.charge-rate-modal .add-rate-section .add-rate-form h4{color:#343a40;margin:0 0 1rem}.charge-rate-modal .add-rate-section .add-rate-form .input-with-prefix{align-items:center;display:flex;position:relative}.charge-rate-modal .add-rate-section .add-rate-form .input-with-prefix .input-prefix{color:#666;font-weight:500;left:.5rem;position:absolute;z-index:1}.charge-rate-modal .add-rate-section .add-rate-form .input-with-prefix input{padding-left:calc(.5rem + 12px)}.charge-rate-modal .add-rate-section .add-rate-form .rate-change-notice{background:#ffc1071a;border:1px solid #ffc1074d;border-radius:4px;margin:1rem 0;padding:.5rem}.charge-rate-modal .add-rate-section .add-rate-form .rate-change-notice p{color:#a07800;font-size:.9rem;line-height:1.4;margin:0}.charge-rate-modal .rate-history-section{margin-bottom:2rem}.charge-rate-modal .rate-history-section h3{color:#343a40;font-size:1.2rem;margin:0 0 1rem}.charge-rate-modal .rate-history-section .loading-history,.charge-rate-modal .rate-history-section .no-history{color:#666;padding:2rem;text-align:center}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item{align-items:center;border:1px solid #ddd;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:1rem}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item.current{background:#28a7450d;border-color:#28a7454d}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item.historical{background:#f8f9fa}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-info{display:flex;flex-direction:column}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-info .rate-amount{color:#343a40;font-size:1.1rem;font-weight:600}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-info .rate-period{color:#666;font-size:.9rem;margin-top:2px}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:4px 8px}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge.current{background:#28a7451a;color:#28a745}.charge-rate-modal .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge.historical{background:#6c757d1a;color:#6c757d}.charge-rate-modal .modal-actions{border-top:1px solid #ddd;display:flex;justify-content:flex-end;padding-top:1rem}.charge-rate-modal .modal-actions .btn-secondary{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.charge-rate-modal .modal-actions .btn-secondary:hover{background:#e9ecef;border-color:#adb5bd}@media(max-width:992px){.employee-management .employee-management-content{gap:1rem}}.employee-management-content .results-section{padding-left:1rem;width:100%}.employee-management-content .results-section .results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.employee-management-content .results-section .results-header .results-info{color:#343a40;font-size:.9rem}.employee-management-content .results-section .results-header .results-info,.employee-management-content .results-section .results-header .results-info span{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.employee-table-container{border-top:1px solid #ddd}.employee-management .employee-management-content .employee-table-container .table-container.employee-table table thead tr th.table-header{background:#fff!important}.employee-management .employee-management-content .employee-table-container .table-container.employee-table table tbody tr.table-row td.table-cell{height:auto;padding:1rem}.status-badge.status-draft{background:#eab30826!important;border:1px solid #eab3084d!important;color:#ca8a04!important}.status-badge.status-sent{background:#22c55e26!important;border:1px solid #22c55e4d!important;color:#16a34a!important}.project-register .filters .filters-left .filter-row{align-items:center!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:1rem!important;min-height:3rem!important}@media(max-width:649px){.project-register .filters .filters-left .filter-row{align-items:center!important;flex-direction:row!important;gap:.75rem!important}.project-register .filters .filters-left .filter-row .clear-filters-btn,.project-register .filters .filters-left .filter-row .client-filter,.project-register .filters .filters-left .filter-row .date-filter,.project-register .filters .filters-left .filter-row .status-filter{flex:1 1!important;min-width:100px!important}.project-register .filters .filters-left .filter-row .date-range-filter{flex:1 1!important;max-width:150px!important;min-width:120px!important}}.project-register .filters .filters-left .filter-row .date-filter{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#343a40;font-family:inherit;font-size:.875rem;min-height:44px;padding:.5rem .75rem}.project-register .filters .filters-left .filter-row .date-filter:focus{border-color:#1a2e5b;outline:none}.project-register .filters .filters-left .filter-row .date-filter::-webkit-calendar-picker-indicator{cursor:pointer}.project-register .filters .filters-left .filter-row .date-range-filter{flex:0 1 auto!important;max-width:160px!important;min-width:140px!important}.project-register .filters .filters-left .filter-row .client-filter,.project-register .filters .filters-left .filter-row .project-lead-filter,.project-register .filters .filters-left .filter-row .project-status-filter,.project-register .filters .filters-left .filter-row .types-filter{flex:0 1 auto!important;max-width:180px!important;min-width:140px!important}.project-register .filters .filters-left .filter-row .clear-filters-btn{background:#0000;border:1px solid #6c757d;border-radius:4px;box-sizing:border-box;color:#6c757d;cursor:pointer;font-family:inherit;font-size:.875rem;min-height:44px;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.project-register .filters .filters-left .filter-row .clear-filters-btn:hover{background:#6c757d;color:#fff}.project-register .filters .filters-left .filter-row .clear-filters-btn:focus{border-color:#1a2e5b;outline:none}.project-register .filters .filter-row .status-radio-filter{align-items:center;display:flex;flex-shrink:0;gap:.5rem;margin-right:1rem;padding-right:1rem;position:relative}.project-register .filters .filter-row .status-radio-filter:after{background:#e5e7eb;content:"";height:2rem;position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px}.project-register .filters .filter-row .status-radio-filter .status-radio-option{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:24px;cursor:pointer;display:flex;padding:.5rem .875rem;transition:all .2s ease}.project-register .filters .filter-row .status-radio-filter .status-radio-option:hover{background:#f8fafc;border-color:#1a2e5b;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.project-register .filters .filter-row .status-radio-filter .status-radio-option input[type=radio]{display:none}.project-register .filters .filter-row .status-radio-filter .status-radio-option .radio-label{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;white-space:nowrap}.project-register .filters .filter-row .status-radio-filter .status-radio-option .count-badge{background:#1a2e5b;border-radius:16px;color:#fff;font-size:.75rem;font-weight:600;min-width:1.5rem;padding:.125rem .5rem;text-align:center}.project-register .filters .filter-row .status-radio-filter .status-radio-option input:checked+.radio-label{color:#fff}.project-register .filters .filter-row .status-radio-filter .status-radio-option:has(input:checked){background:#1a2e5b;border-color:#1a2e5b;box-shadow:0 2px 8px #1a2e5b4d;transform:translateY(-1px)}.project-register .filters .filter-row .status-radio-filter .status-radio-option:has(input:checked) .count-badge{background:#fff;color:#1a2e5b}@media(max-width:649px){.project-register .filters .filter-row .status-radio-filter{align-items:stretch;border-bottom:1px solid #e5e7eb;flex-direction:column;gap:.5rem;margin-bottom:1rem;margin-right:0;padding-bottom:1rem;padding-right:0}.project-register .filters .filter-row .status-radio-filter:after{display:none}.project-register .filters .filter-row .status-radio-filter .status-radio-option{justify-content:center}}.project-register .results-section .results-header{align-items:center;display:flex;gap:2rem;justify-content:space-between;padding:.75rem 0}.project-register .results-section .results-header .results-info{color:#6c757d;flex-shrink:0;font-size:.875rem}.project-register .results-section .results-header .summary-totals{display:flex;flex-shrink:0;gap:1.5rem}.project-register .results-section .results-header .summary-totals .summary-item{align-items:center;display:flex;gap:.25rem;white-space:nowrap}.project-register .results-section .results-header .summary-totals .summary-item .summary-label{color:#6c757d;font-size:.875rem;font-weight:500}.project-register .results-section .results-header .summary-totals .summary-item .summary-value{color:#1a2e5b;font-size:.875rem;font-weight:600}@media(max-width:768px){.project-register .results-section .results-header{align-items:flex-start;flex-direction:column;gap:.75rem}.project-register .results-section .results-header .results-info{width:100%}.project-register .results-section .results-header .summary-totals{flex-wrap:wrap;gap:1rem;justify-content:space-between;width:100%}.project-register .results-section .results-header .summary-totals .summary-item{flex:1 1;min-width:fit-content}}@media(max-width:480px){.project-register .results-section .results-header .summary-totals{flex-direction:column;gap:.75rem}.project-register .results-section .results-header .summary-totals .summary-item{flex:none;justify-content:space-between}}.workflows{background:#fff;display:flex;flex:1 1;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:100%;max-width:100%;min-height:0;min-width:0;overflow:hidden;width:100%}.workflows .workflow-filters{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;flex-direction:row;flex-shrink:0;gap:1rem;justify-content:space-between;padding:2rem}.workflows .workflow-filters .filters-left{align-items:center;display:flex;flex:1 1;flex-direction:row;gap:1rem}.workflows .workflow-filters .filters-left .search-input{background:#0000;border:none;border-bottom:1px solid #ddd;border-radius:0;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;max-width:400px;min-height:44px;min-width:200px;outline:none;padding:0 0 2px;transition:border-color .2s ease}.workflows .workflow-filters .filters-left .search-input:focus{border-bottom-color:#1a2e5b}.workflows .workflow-filters .filters-left .search-input::placeholder{color:#9ca3af}.workflows .workflow-filters .filters-left>.dropdown-container{flex-shrink:0;max-width:250px;min-width:180px;width:auto!important}.workflows .workflow-filters .filters-right{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.workflows .workflow-filters .filters-right .add-job-btn,.workflows .workflow-filters .filters-right .add-stage-btn{border:1px solid;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.workflows .workflow-filters .filters-right .add-stage-btn{background-color:#fff;border-color:#d1d5db;color:#343a40}.workflows .workflow-filters .filters-right .add-stage-btn:hover{background-color:#f3f4f6;border-color:#9ca3af}.workflows .workflow-filters .filters-right .add-job-btn{background-color:#000;border-color:#000;color:#fff}.workflows .workflow-filters .filters-right .add-job-btn:hover{background-color:#333;border-color:#333}.workflows .kanban-board{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;flex:1 1;gap:2rem;max-width:100%;min-height:0;min-width:0;overflow-x:auto;overflow-y:hidden;padding:2rem 2rem 0;scroll-behavior:smooth;transition:opacity .2s ease}.workflows .kanban-board.is-filtering{opacity:.6;pointer-events:none}.workflows .kanban-board::-webkit-scrollbar{height:8px}.workflows .kanban-board::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.workflows .kanban-board::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.workflows .kanban-board::-webkit-scrollbar-thumb:hover{background:#9ca3af}.workflows .kanban-column{background:#0000;display:flex;flex:0 0 300px;flex-direction:column;height:100%;min-width:300px;overflow:visible;padding:0 .25rem}.workflows .kanban-column.is-over{background:#007bff08}.workflows .kanban-column .column-header{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:.5rem 0 1rem;position:sticky;top:0;z-index:1}.workflows .kanban-column .column-header .column-title{align-items:center;display:flex;gap:.5rem}.workflows .kanban-column .column-header .column-title .status-indicator{border-radius:2px;height:20px;width:4px}.workflows .kanban-column .column-header .column-title h3{color:#374151;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:600;margin:0}.workflows .kanban-column .column-header .column-count{align-items:center;background:#f3f4f6;border-radius:12px;color:#4b5563;display:flex;font-size:.875rem;font-weight:500;height:24px;justify-content:center;min-width:24px;padding:0 .5rem}.workflows .kanban-column .column-content{-ms-overflow-style:none;flex:1 1;margin:0 -.25rem;min-height:0;overflow-x:visible;overflow-y:auto;padding:.5rem .25rem .25rem;scrollbar-width:none}.workflows .kanban-column .column-content::-webkit-scrollbar{display:none}.workflows .kanban-column .column-content .empty-column{align-items:center;color:#9ca3af;display:flex;font-size:.875rem;font-style:italic;height:80px;justify-content:center}.workflows .kanban-card{-webkit-user-drag:element;-webkit-touch-callout:none;background:#fff;border:none;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;cursor:grab;margin-bottom:.25rem;padding:1rem;touch-action:none;transition:box-shadow .2s ease,transform .2s ease;-webkit-user-select:none;user-select:none}.workflows .kanban-card *{pointer-events:none;-webkit-user-select:none;user-select:none}.workflows .kanban-card:hover{box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b;transform:translateY(-2px)}.workflows .kanban-card:active{cursor:grabbing}.workflows .kanban-card.drag-overlay{border-color:#007bff;box-shadow:0 8px 20px #0003;cursor:grabbing;margin-bottom:0}.workflows .kanban-card .card-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:1rem}.workflows .kanban-card .card-header .job-number{color:#1a2e5b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.875rem;font-weight:600}.workflows .kanban-card .card-header .header-tags{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.workflows .kanban-card .card-header .item-tag,.workflows .kanban-card .card-header .region-tag{border-radius:3px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:500;padding:2px 6px;white-space:nowrap}.workflows .kanban-card .card-header .region-tag.region-tag--south{background-color:#3b82f626;color:#2563eb}.workflows .kanban-card .card-header .region-tag.region-tag--north{background-color:#22c55e26;color:#16a34a}.workflows .kanban-card .card-header .region-tag.region-tag--north-east{background-color:#f9731626;color:#ea580c}.workflows .kanban-card .card-header .region-tag.region-tag--south-east{background-color:#a855f726;color:#9333ea}.workflows .kanban-card .card-header .item-tag{background-color:#6b728026;color:#374151}.workflows .kanban-card .card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#374151;display:-webkit-box;font-size:.875rem;line-height:1.4;margin-bottom:1rem;overflow:hidden}.workflows .kanban-card .rwc-checklist{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}.workflows .kanban-card .rwc-checklist .checklist-item{align-items:center;display:flex;font-size:.7rem;gap:8px}.workflows .kanban-card .rwc-checklist .checklist-item .check-box{align-items:center;background:#fff;border:2px solid #ddd;border-radius:50%;display:flex;flex-shrink:0;height:14px;justify-content:center;transition:all .15s ease;width:14px}.workflows .kanban-card .rwc-checklist .checklist-item .check-label{color:#6b7280;font-weight:400;transition:color .15s ease}.workflows .kanban-card .rwc-checklist .checklist-item.completed .check-box{background:#007bff;border-color:#007bff;color:#fff}.workflows .kanban-card .rwc-checklist .checklist-item.completed .check-label{color:#343a40;font-weight:500}.workflows .kanban-card .card-last-message{align-items:flex-start;background:#f9fafb;border-left:3px solid #007bff;border-radius:0 0 8px 8px;display:flex;gap:6px;margin:.5rem -1rem -1rem;padding:8px 1rem}.workflows .kanban-card .card-last-message svg{color:#007bff;flex-shrink:0;height:12px;margin-top:1px;width:12px}.workflows .kanban-card .card-last-message .last-message-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;font-size:.7rem;line-height:1.4;overflow:hidden;word-break:break-word}.workflows .kanban-card .card-meta{align-items:center;color:#6b7280;display:flex;font-size:.75rem;gap:.5rem;justify-content:space-between}.workflows .kanban-card .card-meta .meta-item{align-items:center;display:flex;flex:1 1;gap:4px;min-width:0}.workflows .kanban-card .card-meta .meta-item svg{flex-shrink:0;height:12px;width:12px}.workflows .kanban-card .card-meta .meta-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflows .kanban-card .card-meta .meta-avatar{align-items:center;background-color:#1a2e5b;border-radius:50%;color:#fff;cursor:default;display:flex;flex-shrink:0;font-size:.6rem;font-weight:600;height:24px;justify-content:center;letter-spacing:.5px;text-transform:uppercase;width:24px}.workflows .kanban-loading{display:flex;gap:1rem;padding:2rem}.workflows .kanban-loading .column-skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f3f4f6 25%,#f9fafb 50%,#f3f4f6 75%);background-size:200% 100%;border-radius:8px;flex:0 0 300px;height:400px;min-width:300px}.workflows .kanban-error{align-items:center;color:#dc3545;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.workflows .kanban-error h3{font-size:1.25rem;margin:0 0 .5rem}.workflows .kanban-error p{color:#4b5563;margin:0 0 1rem}.workflows .kanban-error button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:.5rem 1rem}.workflows .kanban-error button:hover{background:#0062cc}.workflows .kanban-empty{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.workflows .kanban-empty h3{color:#374151;font-size:1.25rem;margin:0 0 .5rem}.workflows .kanban-empty p{margin:0}@media(max-width:992px){.workflows .kanban-column{flex:0 0 280px;min-width:280px}}@media(max-width:768px){.workflows .workflow-filters{align-items:stretch;flex-direction:column;gap:1rem}.workflows .workflow-filters .filters-left{flex-direction:column;width:100%}.workflows .workflow-filters .filters-left .search-input{max-width:none;width:100%}.workflows .workflow-filters .filters-left>.dropdown-container{flex:1 1;max-width:none!important;min-width:150px;width:100%}.workflows .workflow-filters .filters-right,.workflows .workflow-filters .filters-right .add-job-btn{width:100%}.workflows .kanban-column{flex:0 0 260px;min-width:260px}.filter-skeleton{gap:.5rem}.filter-skeleton,.filter-skeleton .filter-skeleton-left{align-items:stretch;flex-direction:column}.filter-skeleton .filter-skeleton-left .filter-skeleton-search{max-width:none;min-width:0;min-width:auto}.filter-skeleton .filter-skeleton-left .filter-skeleton-dropdown{width:100%}.filter-skeleton .filter-skeleton-left .filter-skeleton-dropdown .skeleton{width:100%!important}.filter-skeleton .filter-skeleton-right{align-self:flex-end}}.date-range-filter-skeleton{align-items:center;display:flex;gap:1rem}.date-range-filter-skeleton .date-range-dropdown-skeleton{flex-shrink:0}.date-range-filter-skeleton .custom-dates-skeleton{align-items:center;display:flex;gap:.5rem}@media(max-width:768px){.date-range-filter-skeleton{align-items:stretch;flex-direction:column;gap:.5rem}.date-range-filter-skeleton .custom-dates-skeleton .skeleton,.date-range-filter-skeleton .date-range-dropdown-skeleton .skeleton{width:100%!important}}@media(max-width:576px){.date-range-filter-skeleton .custom-dates-skeleton{flex-direction:column;gap:.25rem}}* .modal-overlay .modal{max-width:none!important;min-width:0!important;min-width:auto!important;width:auto!important}.modal-overlay .modal.sm,body .modal-overlay .modal.sm,html body .modal-overlay .modal.sm{max-width:min(95vw,800px)!important;min-width:600px!important;width:auto!important}.modal-overlay .modal.lg,.modal-overlay .modal.md,body .modal-overlay .modal.lg,body .modal-overlay .modal.md,html body .modal-overlay .modal.lg,html body .modal-overlay .modal.md{max-width:min(95vw,1200px)!important;min-width:min(95vw,1200px)!important;width:auto!important}.modal-overlay .modal.xl,body .modal-overlay .modal.xl,html body .modal-overlay .modal.xl{max-width:min(95vw,1200px)!important;width:auto!important}@media(max-width:1200px){.modal-overlay .modal.lg,.modal-overlay .modal.md,.modal-overlay .modal.sm,.modal-overlay .modal.xl,body .modal-overlay .modal.lg,body .modal-overlay .modal.md,body .modal-overlay .modal.sm,body .modal-overlay .modal.xl,html body .modal-overlay .modal.lg,html body .modal-overlay .modal.md,html body .modal-overlay .modal.sm,html body .modal-overlay .modal.xl{border-radius:0!important;height:100vh!important;margin:0!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;width:100vw!important}}.modal-overlay{animation:fadeIn .12s ease-out;background:#00000080;bottom:0;padding:1rem;right:0;will-change:opacity}.modal,.modal-overlay{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.modal{animation:slideIn .12s ease-out;background:#fff;border-radius:4px;box-shadow:0 8px 16px #0000001a;display:flex;flex-direction:column;max-height:90vh;width:100%;will-change:transform,opacity}.modal.sm{max-width:min(95vw,800px)!important;min-width:600px!important;width:auto!important}.modal.lg,.modal.md{min-width:min(95vw,1200px)!important}.modal.lg,.modal.md,.modal.xl{max-width:min(95vw,1200px)!important;width:auto!important}.modal-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;padding:1rem}.modal-header h2{color:#343a40;font-size:1.25rem;margin:0}.modal-header__right{align-items:center;display:flex;gap:1rem}.modal-header__status{align-items:center;color:#6c757d;display:flex;font-size:.875rem;gap:.25rem}.modal-close{padding:.5rem}.modal-close:hover{background:#6c757d1a;color:#343a40}.modal-close svg{height:20px;width:20px}.modal-content{box-sizing:border-box;flex:1 1;max-height:calc(100vh - 200px);overflow-x:visible;overflow-y:scroll;padding:1rem;position:relative;width:100%!important}.modal-content.no-padding{padding:0}.modal-content.no-scroll{overflow:hidden}.modal.has-tabs .modal-header{border-bottom:none;padding-bottom:0}.modal.has-tabs .modal-content{padding-top:0}.modal.has-footer{display:flex;flex-direction:column;max-height:90vh}.modal.has-footer .modal-content{flex:1 1;max-height:calc(100vh - 260px);min-height:0;overflow:visible;position:relative}.modal.has-tabs.has-footer{display:flex;flex-direction:column;max-height:90vh}.modal.has-tabs.has-footer .modal-content{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 260px);min-height:0;overflow:visible;position:relative}.modal.no-padding .modal-content{padding:0}.modal-footer{background:#fff;border-top:1px solid #ddd;display:flex;gap:.5rem;justify-content:space-between;padding:1rem;position:relative;z-index:1}.modal-footer .btn{min-width:80px}.modal-footer .btn:only-child,.modal-footer button:only-child,.modal-footer>:only-child{margin-left:auto}.modal-footer>:only-child .btn,.modal-footer>:only-child button{margin-left:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate3d(0,-12px,0)}to{opacity:1;transform:translateZ(0)}}@media(max-width:1320px){.modal.md{max-width:calc(100vw - 2rem)!important;min-width:auto!important;width:auto!important}}@media(max-width:1200px){.modal-overlay{padding:0!important}.modal.lg,.modal.md,.modal.sm,.modal.xl{border-radius:0!important;height:100vh!important;margin:0!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;overflow:hidden!important;width:100vw!important}.modal.has-footer .modal-content,.modal.has-tabs.has-footer .modal-content{flex:1 1;max-height:calc(100vh - 140px);max-width:100%!important;overflow-x:hidden;overflow-y:auto;width:100%!important}.modal .modal-body{box-sizing:border-box;max-width:100%!important;overflow-x:hidden!important;overflow-y:auto;width:100%!important}.modal-header{border-radius:0;box-sizing:border-box;max-width:100%;padding:1rem!important;width:100%}.modal-header .modal-close{flex-shrink:0;margin-right:0}.modal-footer{border-radius:0;box-sizing:border-box;max-width:100%;padding:1rem!important;width:100%}}@media(max-width:768px){.modal-footer{flex-direction:column-reverse;justify-content:flex-start;padding:1rem}.modal-footer .btn{min-width:auto;width:100%}.modal-footer .btn:only-child{margin-left:0}}.modal .dropdown-menu{position:absolute!important;z-index:1055!important}.modal,.modal-overlay{overflow:visible!important}.modal .dropdown-container .dropdown-menu,.modal .dropdown-menu,.modal .form-group .dropdown-menu,.modal .searchable-dropdown .dropdown-menu,.modal [class*=dropdown] .dropdown-menu{position:absolute!important;z-index:1055!important}.modal .dropdown-container,.modal .form-group,.modal .searchable-dropdown,.modal [class*=dropdown]{overflow:visible!important;position:relative;z-index:auto}.modal .form-content,.modal .modal-body,.modal form{overflow:visible!important;z-index:auto}.modal .Select-menu-outer,.modal .react-select__menu{position:absolute!important;z-index:1055!important}.modal .form-group{overflow:visible!important;position:relative;z-index:auto}.form-content{padding:0}.form-content .form-group{margin-bottom:2rem}.form-content .form-group .form-group-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.form-content .form-group .form-group-header label{margin-bottom:0}.form-content .form-group label{color:#343a40;display:block;font-size:.875rem;font-weight:600;line-height:1.2;margin-bottom:.5rem}.form-content .form-group input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5;padding:.5rem 1rem;transition:all .2s ease;width:100%}.form-content .form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.form-content .form-group input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.form-content .form-group input:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-content .error-message{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}.form-content .error-message.general-error{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;font-size:.875rem;margin-bottom:1rem;padding:.5rem}.form-content .required{color:#dc3545}.form-content .btn-add-client{background:none;border:none;border-radius:4px;color:#007bff;cursor:pointer;font-size:.875rem;font-weight:500;padding:2px 6px;transition:all .2s ease}.form-content .btn-add-client:hover{background-color:#007bff1a;color:#0062cc}.form-content .btn-add-client:focus{box-shadow:0 0 0 2px #007bff33;outline:none}.form-content .add-client-form .add-client-input-group{align-items:flex-start;display:flex;gap:.5rem}.form-content .add-client-form .add-client-actions{display:flex;flex-shrink:0;gap:.25rem}.form-content .add-client-form input[type=text]{flex:1 1;min-width:0}.modal-footer-actions{display:flex;gap:.5rem}.modal-footer-actions .btn-secondary{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.modal-footer-actions .btn-secondary:hover{background:#e5e7eb}.modal-footer-actions .btn-primary{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.modal-footer-actions .btn-primary:hover:not(:disabled){background:#1a2e5b}.modal-footer-actions .btn-primary:disabled{background:#6c757d;cursor:not-allowed}.modal-footer-actions .btn-small{font-size:.875rem;line-height:1.4;min-height:32px;padding:.25rem .5rem;white-space:nowrap}.team-members-pills{background:#0000;display:flex;flex-wrap:wrap;gap:.5rem;padding:0}.team-members-pills .team-member-pill{align-items:center;background:#fff;border:1px solid #ddd;border-radius:20px;color:#343a40;cursor:pointer;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;gap:.25rem;padding:.25rem .5rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.team-members-pills .team-member-pill:hover{background:#007bff0d;border-color:#007bff}.team-members-pills .team-member-pill.selected{background:#007bff;border-color:#007bff;color:#fff}.team-members-pills .team-member-pill.selected:hover{background:#1a2e5b;border-color:#1a2e5b}.team-members-pills .team-member-pill.selected .member-name{color:#fff}.team-members-pills .team-member-pill .member-name{line-height:1.4;white-space:nowrap}.team-members-summary{color:#6c757d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;margin-top:.5rem}.add-stage-modal .team-members-pills{background:#0000;display:flex;flex-wrap:wrap;gap:.5rem;padding:0}.add-stage-modal .team-members-pills .team-member-pill{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:20px;color:#343a40;cursor:pointer;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;gap:.25rem;padding:.25rem .5rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.add-stage-modal .team-members-pills .team-member-pill:hover{background:#007bff0d;border-color:#007bff}.add-stage-modal .team-members-pills .team-member-pill.selected{background:#007bff;border-color:#007bff;color:#fff}.add-stage-modal .team-members-pills .team-member-pill.selected:hover{background:#0062cc;border-color:#0062cc}.add-stage-modal .team-members-pills .team-member-pill.selected .member-name{color:#fff}.add-stage-modal .team-members-pills .team-member-pill .member-name{line-height:1.4;white-space:nowrap}.add-stage-modal .team-members-summary{color:#4b5563;font-size:.875rem;margin-top:.5rem}.add-stage-modal .project-search-dropdown,.add-stage-modal .team-members-summary{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.add-stage-modal .project-search-dropdown{position:relative}.add-stage-modal .project-search-dropdown.error .dropdown-trigger{border-color:#dc3545}.add-stage-modal .project-search-dropdown .dropdown-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;min-height:38px;padding:.5rem 1rem;transition:border-color .2s,box-shadow .2s}.add-stage-modal .project-search-dropdown .dropdown-trigger:hover{border-color:#9ca3af}.add-stage-modal .project-search-dropdown .dropdown-trigger.open{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.add-stage-modal .project-search-dropdown .dropdown-trigger .selected-value{color:#343a40;flex:1 1;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-stage-modal .project-search-dropdown .dropdown-trigger .selected-value:empty:before{color:#6b7280;content:attr(data-placeholder)}.add-stage-modal .project-search-dropdown .dropdown-trigger .dropdown-arrow{align-items:center;color:#6b7280;display:flex;margin-left:.5rem}.add-stage-modal .project-search-dropdown .dropdown-trigger .dropdown-arrow svg{transition:transform .2s}.add-stage-modal .project-search-dropdown .dropdown-trigger .dropdown-arrow svg.rotated{transform:rotate(180deg)}.add-stage-modal .project-search-dropdown .dropdown-menu{background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;left:0;margin-top:4px;max-height:300px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.add-stage-modal .project-search-dropdown .dropdown-menu .search-container{border-bottom:1px solid #e5e7eb;padding:.5rem}.add-stage-modal .project-search-dropdown .dropdown-menu .search-container .dropdown-search-input{border:1px solid #d1d5db;border-radius:2px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;padding:.25rem .5rem;width:100%}.add-stage-modal .project-search-dropdown .dropdown-menu .search-container .dropdown-search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.add-stage-modal .project-search-dropdown .dropdown-menu .items-container{max-height:220px;overflow-y:auto}.add-stage-modal .project-search-dropdown .dropdown-menu .items-container .dropdown-item{color:#343a40;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .15s}.add-stage-modal .project-search-dropdown .dropdown-menu .items-container .dropdown-item:hover{background-color:#f3f4f6}.add-stage-modal .project-search-dropdown .dropdown-menu .items-container .dropdown-item.selected{background-color:#007bff1a;color:#007bff;font-weight:500}.add-stage-modal .project-search-dropdown .dropdown-menu .items-container .no-results{color:#6b7280;font-size:.875rem;padding:1rem;text-align:center}.tag-selector{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;position:relative;width:100%}.tag-selector.disabled{opacity:.6;pointer-events:none}.tag-selector__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tag-selector__input-container{cursor:text;width:100%}.tag-selector__tag{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#343a40;display:inline-flex;font-size:.85rem;gap:4px;padding:3px 8px;white-space:nowrap}.tag-selector__tag-remove{align-items:center;background:#0000;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:inline-flex;font-size:14px;height:16px;justify-content:center;line-height:1;margin-left:2px;padding:0;transition:all .15s ease;width:16px}.tag-selector__tag-remove:hover{background-color:#d1d5db;color:#343a40}.tag-selector__input{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;outline:none;padding:8px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.tag-selector__input::placeholder{color:#9ca3af}.tag-selector__input:hover{border-color:#9ca3af}.tag-selector__input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.tag-selector__dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001a;left:0;max-height:250px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.tag-selector__results{padding:4px 0}.tag-selector__option{color:#343a40;cursor:pointer;font-size:.9rem;padding:8px 12px;transition:background-color .15s ease}.tag-selector__option:hover{background-color:#f9fafb}.tag-selector__option--create{border-top:1px solid #e5e7eb;color:#007bff}.tag-selector__option--create strong{font-weight:600}.tag-selector__option--create:hover{background-color:#007bff0d}.tag-selector__hint{color:#6b7280;font-size:.85rem;padding:10px 12px;text-align:center}.thread-panel{background:#fff;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:100%;max-height:100%;min-height:0;overflow:hidden}.thread-panel__header{background:#fff;border-bottom:1px solid #ddd;flex-shrink:0;padding:1rem}.thread-panel__title{color:#343a40;font-size:1rem;font-weight:600;margin:0}.thread-panel__messages{background:#fff;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:.5rem 1rem}.thread-panel__loading{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.thread-panel__loading .message-skeleton{align-items:flex-start;display:flex;gap:.5rem}.thread-panel__loading .message-skeleton:before{border-radius:50%;flex-shrink:0;height:32px;width:32px}.thread-panel__loading .message-skeleton:after,.thread-panel__loading .message-skeleton:before{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 50%,#e5e7eb 75%);background-size:200% 100%;content:""}.thread-panel__loading .message-skeleton:after{border-radius:4px;flex:1 1;height:48px}.thread-panel__empty{color:#6c757d;flex:1 1;flex-direction:column;padding:3rem;text-align:center}.thread-panel__empty,.thread-panel__empty-icon{align-items:center;display:flex;justify-content:center}.thread-panel__empty-icon{background:#f3f4f6;border-radius:50%;color:#9ca3af;height:48px;margin-bottom:1rem;width:48px}.thread-panel__empty p{color:#6b7280;font-size:.875rem;font-weight:500;margin:0 0 .25rem}.thread-panel__empty span{color:#9ca3af;font-size:.875rem}.thread-panel__error{background:#dc35451a;border-radius:4px;color:#dc3545;flex-shrink:0;font-size:.875rem;margin:0 1rem .5rem;padding:.5rem 1rem}.thread-panel__date-group{margin-bottom:.5rem}.thread-panel__date-group:last-child{margin-bottom:0}.thread-panel__date-separator{align-items:center;display:flex;justify-content:center;margin-bottom:.25rem;padding:.5rem 0;position:relative}.thread-panel__date-separator:after,.thread-panel__date-separator:before{background:#ddd;content:"";flex:1 1;height:1px}.thread-panel__date-separator span{color:#9ca3af;font-size:.7rem;font-weight:500;letter-spacing:.5px;padding:0 1rem;text-transform:uppercase;white-space:nowrap}.thread-panel__input{align-items:flex-end;background:#fff;border-top:1px solid #ddd;display:flex;flex-shrink:0;gap:.5rem;padding:1rem}.thread-panel__input textarea{background:#f9fafb;border:1px solid #ddd;border-radius:18px;box-sizing:border-box;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;height:36px;line-height:20px;max-height:120px;min-height:36px;overflow-y:hidden;padding:8px 14px;resize:none}.thread-panel__input textarea:focus{background:#fff;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.thread-panel__input textarea:disabled{background:#f3f4f6;cursor:not-allowed}.thread-panel__input textarea::placeholder{color:#9ca3af}.thread-panel__send-btn{align-items:center;background:#007bff;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.thread-panel__send-btn:hover:not(:disabled){background:#1a2e5b;transform:scale(1.05)}.thread-panel__send-btn:active:not(:disabled){transform:scale(.95)}.thread-panel__send-btn:disabled{background:#d1d5db;cursor:not-allowed}.thread-panel__send-btn .sending-indicator{font-size:.875rem}.thread-panel__send-btn svg{height:16px;width:16px}.chat-message{align-items:flex-start;display:flex;gap:.5rem;padding:.5rem 0}.chat-message__avatar{align-items:center;background-color:#1a2e5b;border-radius:50%;color:#fff;cursor:default;display:flex;flex-shrink:0;font-size:.6rem;font-weight:600;height:24px;justify-content:center;letter-spacing:.3px;margin-top:-2px;text-transform:uppercase;-webkit-user-select:none;user-select:none;width:24px}.chat-message__body{flex:1 1;min-width:0}.chat-message__header{align-items:baseline;display:flex;gap:.5rem;margin-bottom:2px}.chat-message__name{color:#343a40;font-size:.75rem;font-weight:600}.chat-message__time{color:#9ca3af;font-size:.65rem}.chat-message__delete-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;margin-left:auto;opacity:0;padding:2px;transition:all .15s ease;visibility:hidden}.chat-message__delete-btn:hover:not(:disabled){background:#dc35451a;color:#dc3545}.chat-message__delete-btn:disabled{cursor:not-allowed;opacity:.5}.chat-message__delete-btn svg{height:12px;width:12px}.chat-message__delete-spinner{animation:spin .6s linear infinite;border:2px solid #d1d5db;border-radius:50%;border-top-color:#6b7280;height:10px;width:10px}.chat-message:hover .chat-message__delete-btn{opacity:1;visibility:visible}.chat-message--deleting{opacity:.5;pointer-events:none}.chat-message__content{color:#374151;font-size:.8rem;line-height:1.4;white-space:pre-wrap;word-break:break-word}.chat-message--own .chat-message__avatar{box-shadow:0 0 0 2px #fff,0 0 0 4px #1a2e5b}.chat-message--consecutive .chat-message__avatar{visibility:hidden}.chat-message--consecutive .chat-message__header{display:none}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal.has-tabs .modal-content:has(.project-detail-modal){display:flex!important;flex-direction:column!important;height:calc(90vh - 80px)!important;max-height:calc(90vh - 80px)!important;min-height:calc(90vh - 80px)!important;overflow:hidden!important;padding:0!important}.modal.has-tabs .modal-content>.project-detail-modal{display:flex;flex:1 1 auto;flex-direction:column;height:100%;min-height:0;overflow:hidden}.modal.has-tabs .modal-content .project-detail-modal__content-wrapper{display:flex!important;flex:1 1 auto!important;height:100%!important;min-height:0!important;overflow:hidden!important}.modal.has-tabs .modal-content .project-detail-modal__main{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important;min-width:0!important;overflow:hidden!important}.modal.has-tabs .modal-content .project-detail-modal__thread{border-left:1px solid #ddd;display:flex;flex:0 0 320px;flex-direction:column;max-height:100%;min-height:0;overflow:hidden;width:320px}.modal.has-tabs .modal-content .project-detail-modal__main>.modal-body{flex:1 1 auto!important;max-height:none!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important}.modal.has-tabs .modal-content:has(.project-detail-modal) .modal-body{max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important}@media(max-width:1200px){.modal.has-tabs .modal-content:has(.project-detail-modal){background:#fff!important;height:calc(100vh - 60px)!important;max-height:calc(100vh - 60px)!important;min-height:calc(100vh - 60px)!important}.modal.has-tabs .modal-content .project-detail-modal__content-wrapper,.modal.has-tabs .modal-content .project-detail-modal__main{background:#fff!important}.modal.has-tabs .modal-content>.project-detail-modal{max-width:100%;width:100%}.modal.has-tabs .modal-content .project-detail-modal__thread{flex:0 0 280px;width:280px}.modal-header{padding:1rem!important}.modal-header h2{margin:0;padding:0}.modal-header .modal-close{margin-right:0;padding:.5rem}.project-detail-modal__main .modal-tabs{box-sizing:border-box!important;margin-left:0!important;margin-top:.5rem!important;padding:0 1rem!important;width:100%!important}.modal.has-tabs .modal-content .project-detail-modal__main>.modal-body{box-sizing:border-box!important;flex:1 1 auto!important;margin-left:0!important;margin-right:0!important;max-height:none!important;max-width:100%!important;min-height:0!important;padding:1rem!important;width:100%!important}.project-detail-modal .project-detail-form{padding:0 1rem 1rem!important}}@media(max-width:768px){.modal.has-tabs .modal-content .project-detail-modal__thread{display:none}}.project-detail-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.project-detail-modal .save-status{font-size:.875rem;font-weight:500;transition:opacity .2s ease}.project-detail-modal .save-status--saving{color:#6c757d}.project-detail-modal .save-status--saved{color:#28a745}.project-detail-modal .save-status--error{color:#dc3545}.project-detail-modal .modal-tabs{box-sizing:border-box;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0 1rem;width:100%}.project-detail-modal .modal-tabs .tab-button{background:#fff;border:1px solid #d1d5db;border-radius:24px;color:#374151;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500;padding:.5rem .875rem;transition:all .2s ease;white-space:nowrap}.project-detail-modal .modal-tabs .tab-button:hover{background:#f8fafc;border-color:#1a2e5b;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.project-detail-modal .modal-tabs .tab-button.active{background:#1a2e5b;border-color:#1a2e5b;box-shadow:0 2px 8px #1a2e5b4d;color:#fff;transform:translateY(-1px)}.project-detail-modal .modal-body{background-color:#fff;display:flex;flex:1 1!important;flex-direction:column;margin-left:0;margin-top:.25rem;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0 1rem 1rem}.project-detail-modal .loading-message{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;padding:3rem;text-align:center}.project-detail-modal .project-detail-form{max-height:none;padding:2rem 1.2rem}.project-detail-modal .project-detail-form .general-error{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin-bottom:2rem;padding:.5rem 1rem}.project-detail-modal .job-info-tab,.project-detail-modal .stage-info-tab{box-sizing:border-box;min-height:0;padding:0;width:100%}.project-detail-modal .job-info-tab .form-section,.project-detail-modal .stage-info-tab .form-section{border-bottom:1px solid #ddd;margin-bottom:2rem;padding-bottom:2rem}.project-detail-modal .job-info-tab .form-section:last-child,.project-detail-modal .stage-info-tab .form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.project-detail-modal .job-info-tab .form-section .section-heading,.project-detail-modal .stage-info-tab .form-section .section-heading{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:600;margin:0 0 1rem}.project-detail-modal .job-info-tab .form-fields-inline,.project-detail-modal .stage-info-tab .form-fields-inline{grid-gap:1rem;display:grid;gap:1rem;margin-bottom:1rem}.project-detail-modal .job-info-tab .form-fields-inline.two-col,.project-detail-modal .stage-info-tab .form-fields-inline.two-col{grid-template-columns:1fr 1fr}.project-detail-modal .job-info-tab .form-fields-inline.three-col,.project-detail-modal .stage-info-tab .form-fields-inline.three-col{grid-template-columns:1fr 1fr 1fr}.project-detail-modal .job-info-tab .form-fields-inline.four-col,.project-detail-modal .stage-info-tab .form-fields-inline.four-col{grid-template-columns:repeat(4,1fr)}.project-detail-modal .job-info-tab .form-fields-inline.five-col,.project-detail-modal .stage-info-tab .form-fields-inline.five-col{grid-template-columns:repeat(5,1fr)}.project-detail-modal .job-info-tab .form-fields-inline .form-field,.project-detail-modal .stage-info-tab .form-fields-inline .form-field{display:flex;flex-direction:column;gap:.25rem}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-label,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-label .required,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-label .required{color:#dc3545;margin-left:2px}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input{display:flex;flex-direction:column;width:100%}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input input,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input input{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.5;min-height:44px;padding:.25rem .5rem;transition:all .2s ease;width:100%}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input input:focus,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input input.error,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input .field-error,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input .field-error{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field{align-items:center;background:#0000;border:none;box-shadow:none;display:flex;flex-direction:row;gap:.5rem;min-height:44px;padding:0}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field:active,.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field:focus,.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field:focus-within,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field:active,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field:focus,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field:focus-within{border:none;box-shadow:none;outline:none}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field input[type=checkbox],.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field input[type=checkbox]{accent-color:#007bff;cursor:pointer;flex-shrink:0;height:18px;margin:0;min-height:auto;width:18px}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field input[type=checkbox]:focus,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field input[type=checkbox]:focus{box-shadow:none;outline:2px solid #007bff;outline-offset:2px}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-input.checkbox-field .checkbox-label,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-input.checkbox-field .checkbox-label{color:#343a40;cursor:pointer;font-size:.875rem;line-height:1}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-value,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-value{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-value.tags-display,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-value.tags-display{display:flex;flex-wrap:wrap;gap:6px}.project-detail-modal .job-info-tab .form-fields-inline .form-field .field-value.tags-display .tag-badge,.project-detail-modal .stage-info-tab .form-fields-inline .form-field .field-value.tags-display .tag-badge{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#343a40;display:inline-flex;font-size:.85rem;padding:3px 10px;white-space:nowrap}@media(max-width:768px){.project-detail-modal .job-info-tab .form-fields-inline.four-col,.project-detail-modal .job-info-tab .form-fields-inline.three-col,.project-detail-modal .job-info-tab .form-fields-inline.two-col,.project-detail-modal .stage-info-tab .form-fields-inline.four-col,.project-detail-modal .stage-info-tab .form-fields-inline.three-col,.project-detail-modal .stage-info-tab .form-fields-inline.two-col{grid-template-columns:1fr 1fr}}@media(max-width:576px){.project-detail-modal .job-info-tab .form-fields-inline.four-col,.project-detail-modal .job-info-tab .form-fields-inline.three-col,.project-detail-modal .job-info-tab .form-fields-inline.two-col,.project-detail-modal .stage-info-tab .form-fields-inline.four-col,.project-detail-modal .stage-info-tab .form-fields-inline.three-col,.project-detail-modal .stage-info-tab .form-fields-inline.two-col{grid-template-columns:1fr}}.project-detail-modal .job-info-tab .form-fields-vertical,.project-detail-modal .stage-info-tab .form-fields-vertical{display:flex;flex-direction:column;gap:1rem}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row{display:flex;flex-direction:column;gap:.25rem}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row.full-width,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row.full-width{width:100%}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:500}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label .required,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-label .required{color:#dc3545;margin-left:2px}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input{display:flex;flex-direction:column;width:100%}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input input{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.5;min-height:44px;padding:.25rem .5rem;transition:all .2s ease;width:100%}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input:focus,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input.error,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input input:disabled,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input input:disabled{background-color:#f8f9fa;color:#6b7280;cursor:not-allowed}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .readonly-field,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input .readonly-field{background-color:#f8f9fa;color:#666;cursor:not-allowed;font-weight:500;min-height:44px}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-input .field-error,.project-detail-modal .stage-info-tab .form-fields-vertical .form-field-row .field-input .field-error{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}.project-detail-modal .job-info-tab .placeholder-message,.project-detail-modal .stage-info-tab .placeholder-message{background:#f8f9fa;border:1px dashed #ddd;border-radius:4px;padding:2rem;text-align:center}.project-detail-modal .job-info-tab .placeholder-message p,.project-detail-modal .stage-info-tab .placeholder-message p{color:#6c757d;font-size:.875rem;font-style:italic;margin:0}.project-detail-modal .job-info-tab .form-actions,.project-detail-modal .stage-info-tab .form-actions{border-top:1px solid #ddd;display:flex;justify-content:flex-end;margin-top:2rem;padding-top:2rem}.project-detail-modal .job-info-tab .form-actions .btn-primary,.project-detail-modal .stage-info-tab .form-actions .btn-primary{font-size:1rem;padding:.5rem 2rem}.project-detail-modal .tab-save-action{border-top:1px solid #ddd;display:flex;justify-content:flex-end;margin-top:2rem;padding-top:2rem}.project-detail-modal .tab-save-action .btn-primary{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:500;padding:.5rem 2rem;transition:all .2s ease}.project-detail-modal .tab-save-action .btn-primary:hover:not(:disabled){background-color:#1a2e5b}.project-detail-modal .tab-save-action .btn-primary:disabled{cursor:not-allowed;opacity:.6}.project-detail-modal .delete-actions-section{border-top:1px solid #ddd;margin-top:3rem;padding-top:2rem}.project-detail-modal .delete-actions-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 .5rem}.project-detail-modal .delete-actions-section .action-description{color:#4b5563;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.project-detail-modal .delete-actions-section .action-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;min-width:120px;padding:.5rem 1rem;transition:all .2s ease}.project-detail-modal .delete-actions-section .action-button:hover{background-color:#bd2130}.project-detail-modal .delete-actions-section .action-button:disabled{cursor:not-allowed;opacity:.6}.delete-confirm-overlay{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1060}.delete-confirm-overlay .delete-confirm-modal{background:#fff;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:1rem;max-width:400px;padding:2rem}.delete-confirm-overlay .delete-confirm-modal h3{color:#dc3545;margin:0 0 1rem}.delete-confirm-overlay .delete-confirm-modal p{margin:0 0 1rem}.delete-confirm-overlay .delete-confirm-modal p.project-name{color:#343a40;font-weight:600}.delete-confirm-overlay .delete-confirm-modal .confirm-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-secondary{background-color:#6c757d;color:#fff}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-secondary:hover:not(:disabled){background-color:#545b62}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-danger{background-color:#dc3545;color:#fff}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button.btn-danger:hover:not(:disabled){background-color:#bd2130}.delete-confirm-overlay .delete-confirm-modal .confirm-actions button:disabled{cursor:not-allowed;opacity:.6}.stages-tab{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.stages-tab .stages-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.stages-tab .stages-header h3{color:#343a40;font-size:1.25rem;font-weight:600;margin:0}.stages-tab .stages-header .btn{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.stages-tab .stages-header .btn.btn-primary{background-color:#007bff;color:#fff}.stages-tab .stages-header .btn.btn-primary:hover{background-color:#1a2e5b}.stages-tab .stages-loading{align-items:center;display:flex;justify-content:center;padding:3rem}.stages-tab .stages-loading .loading-spinner{color:#6c757d;font-style:italic}.stages-tab .no-stages{color:#6c757d;padding:3rem;text-align:center}.stages-tab .no-stages p{font-size:1.1rem;margin-bottom:2rem}.stages-tab .no-stages .btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:1rem 2rem;transition:background-color .2s ease}.stages-tab .no-stages .btn:hover{background-color:#1a2e5b}.stages-tab .stages-table{background:#fff;border:1px solid #ddd;border-radius:4px;overflow:hidden}.stages-tab .stages-table .stages-table-header{background:#f8f9fa;color:#343a40;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stages-tab .stages-table .stages-table-body .stage-row,.stages-tab .stages-table .stages-table-header{grid-gap:1rem;border-bottom:1px solid #ddd;display:grid;gap:1rem;grid-template-columns:120px 1fr 100px 150px 100px 120px;padding:1rem}.stages-tab .stages-table .stages-table-body .stage-row{align-items:center;transition:background-color .2s ease}.stages-tab .stages-table .stages-table-body .stage-row:hover{background-color:#007bff05}.stages-tab .stages-table .stages-table-body .stage-row:last-child{border-bottom:none}.stages-tab .stages-table .stages-table-body .stage-row .col-project-number .stage-job-number{color:#1a2e5b;font-size:1rem;font-weight:600}.stages-tab .stages-table .stages-table-body .stage-row .col-stage-name .stage-description{color:#343a40;font-size:1rem}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:400;padding:4px 8px;text-transform:capitalize;width:fit-content}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-probable{background-color:#eab3081a;color:#eab308}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-design{background-color:#06b6d41a;color:#06b6d4}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-construction{background-color:#f973161a;color:#f97316}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-complete{background-color:#22c55e1a;color:#22c55e}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-archived{background-color:#64748b1a;color:#64748b}.stages-tab .stages-table .stages-table-body .stage-row .col-status .status-badge.status-unsuccessful{background-color:#ef44441a;color:#ef4444}.stages-tab .stages-table .stages-table-body .stage-row .col-project-lead .project-lead-name{color:#343a40;font-size:.875rem}.stages-tab .stages-table .stages-table-body .stage-row .col-created .created-date{color:#6c757d;font-size:.875rem}.stages-tab .stages-table .stages-table-body .stage-row .col-actions{padding:.25rem .5rem}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions{display:flex;gap:.25rem;justify-content:flex-start}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;gap:4px;padding:2px 6px;transition:all .2s ease}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-edit{background-color:#007bff1a;color:#007bff}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-edit:hover{background-color:#007bff33}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-delete{background-color:#dc35451a;color:#dc3545}.stages-tab .stages-table .stages-table-body .stage-row .col-actions .stage-actions .btn.btn-delete:hover{background-color:#dc354533}.stages-tab .stage-form-modal{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1055}.stages-tab .stage-form-modal .stage-form-content{background:#fff;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:1rem;max-width:500px;padding:2rem;width:100%}.stages-tab .stage-form-modal .stage-form-content h3{color:#343a40;margin:0 0 2rem}.stages-tab .stage-form-modal .stage-form-content .form-group{margin-bottom:1rem}.stages-tab .stage-form-modal .stage-form-content .form-group label{color:#343a40;display:block;font-weight:500;margin-bottom:.5rem}.stages-tab .stage-form-modal .stage-form-content .form-group label .required{color:#dc3545;margin-left:2px}.stages-tab .stage-form-modal .stage-form-content .form-group input,.stages-tab .stage-form-modal .stage-form-content .form-group select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem;width:100%}.stages-tab .stage-form-modal .stage-form-content .form-group input:focus,.stages-tab .stage-form-modal .stage-form-content .form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.stages-tab .stage-form-modal .stage-form-content .form-group .field-error{color:#dc3545;font-size:.875rem;margin-top:.25rem}.stages-tab .stage-form-modal .stage-form-content .form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn.btn-secondary{background-color:#6c757d;color:#fff}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn.btn-secondary:hover{background-color:#545b62}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn.btn-primary{background-color:#007bff;color:#fff}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn.btn-primary:hover{background-color:#1a2e5b}.stages-tab .stage-form-modal .stage-form-content .form-actions .btn:disabled{cursor:not-allowed;opacity:.6}.stages-tab .stage-delete-confirm{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1055}.stages-tab .stage-delete-confirm .delete-confirm-content{background:#fff;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:1rem;max-width:400px;padding:2rem}.stages-tab .stage-delete-confirm .delete-confirm-content h3{color:#dc3545;margin:0 0 1rem}.stages-tab .stage-delete-confirm .delete-confirm-content p{margin:0 0 1rem}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn.btn-secondary{background-color:#6c757d;color:#fff}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn.btn-secondary:hover:not(:disabled){background-color:#545b62}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn.btn-danger{background-color:#dc3545;color:#fff}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn.btn-danger:hover:not(:disabled){background-color:#bd2130}.stages-tab .stage-delete-confirm .delete-confirm-content .confirm-actions .btn:disabled{cursor:not-allowed;opacity:.6}.team-members-tab{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.team-members-tab .project-lead-section{border-bottom:1px solid #ddd;margin-bottom:2rem;padding-bottom:2rem}.team-members-tab .project-lead-section .form-field-row{display:flex;flex-direction:column;gap:.5rem}.team-members-tab .project-lead-section .form-field-row .field-label{color:#343a40;font-size:1.25rem;font-weight:600;margin:0}.team-members-tab .project-lead-section .form-field-row .field-input{max-width:400px;width:100%}.team-members-tab .project-lead-section .form-field-row .field-input .updating-indicator{color:#6c757d;display:inline-block;font-size:.875rem;font-style:italic;margin-top:.25rem}.team-members-tab .team-members-header{margin-bottom:2rem}.team-members-tab .team-members-header h3{color:#343a40;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.team-members-tab .team-members-header .team-description{color:#6c757d;font-size:.875rem;line-height:1.5;margin:0}.team-members-tab .error-message{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-size:.875rem;margin-bottom:1rem;padding:.5rem 1rem}.team-members-tab .add-team-member-section{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-bottom:2rem;padding:1rem}.team-members-tab .add-team-member-section .add-team-member-form{align-items:flex-start;display:flex;gap:1rem}.team-members-tab .add-team-member-section .add-team-member-form .team-member-select{flex:1 1;min-width:200px}.team-members-tab .add-team-member-section .add-team-member-form .add-member-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s ease;white-space:nowrap}.team-members-tab .add-team-member-section .add-team-member-form .add-member-btn:hover:not(:disabled){background-color:#1a2e5b}.team-members-tab .add-team-member-section .add-team-member-form .add-member-btn:disabled{cursor:not-allowed;opacity:.6}.team-members-tab .team-members-list .no-team-members{background:#f8f9fa;border:1px dashed #ddd;border-radius:4px;color:#6c757d;padding:3rem;text-align:center}.team-members-tab .team-members-list .no-team-members p{font-size:1rem;margin:0}.team-members-tab .team-members-list .team-members-table{background:#fff;border:1px solid #ddd;border-radius:4px;overflow:hidden}.team-members-tab .team-members-list .team-members-table .team-members-table-header{grid-gap:1rem;background:#f8f9fa;border-bottom:1px solid #ddd;color:#343a40;display:grid;font-size:.875rem;font-weight:600;gap:1rem;grid-template-columns:1fr 120px 120px 100px;letter-spacing:.5px;padding:1rem;text-transform:uppercase}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row{grid-gap:1rem;align-items:center;border-bottom:1px solid #ddd;display:grid;gap:1rem;grid-template-columns:1fr 120px 120px 100px;padding:1rem;transition:background-color .2s ease}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row:hover{background-color:#007bff05}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row:last-child{border-bottom:none}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-name .member-name{color:#343a40;font-size:1rem;font-weight:500}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-type .member-type{color:#6c757d;font-size:.875rem}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-role .role-badge{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:500;padding:4px 8px}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-role .role-badge.project-lead{background-color:#007bff1a;color:#007bff}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-actions .remove-btn{background-color:#dc35451a;border:none;border-radius:4px;color:#dc3545;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;padding:4px 8px;transition:all .2s ease}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-actions .remove-btn:hover:not(:disabled){background-color:#dc354533}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-actions .remove-btn:disabled{cursor:not-allowed;opacity:.6}.settings-tab{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.settings-tab .settings-section{border-bottom:1px solid #ddd;margin-bottom:2rem;padding-bottom:2rem}.settings-tab .settings-section h3{color:#343a40;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.settings-tab .settings-section .form-fields-vertical .form-field-row{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:200px 1fr;margin-bottom:1rem}.settings-tab .settings-section .form-fields-vertical .form-field-row:last-child{margin-bottom:0}.settings-tab .settings-section .form-fields-vertical .form-field-row .field-label{color:#343a40;font-size:.875rem;font-weight:500}.settings-tab .settings-section .form-fields-vertical .form-field-row .field-value{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem}.settings-tab .settings-section .form-fields-vertical .form-field-row .field-input .readonly-field{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#6c757d;font-size:.875rem;padding:.5rem 1rem}.settings-tab .danger-zone-section{background-color:#dc35450d;border:1px solid #dc354533;border-radius:4px;padding:2rem}.settings-tab .danger-zone-section h3{color:#dc3545;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.settings-tab .danger-zone-section .action-description{color:#6c757d;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.settings-tab .danger-zone-section .action-button{border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.settings-tab .danger-zone-section .action-button:disabled{cursor:not-allowed;opacity:.6}.construction-tab{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.construction-tab .rwc-completion-section{margin-top:3rem}.construction-tab .rwc-completion-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.construction-tab .rwc-completion-section .completion-items-list{display:flex;flex-direction:column;gap:1rem}.construction-tab .rwc-completion-section .completion-items-list .completion-item{align-items:center;display:flex;gap:1rem;padding:.5rem 0}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-label{color:#343a40;flex:0 0 200px;font-size:.875rem;font-weight:500}@media(max-width:576px){.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-label{flex:0 0 140px}}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-input{align-items:center;display:flex;gap:.5rem}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-input input[type=date]{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;min-height:36px;padding:.25rem .5rem}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-input input[type=date]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-input input[type=date]:disabled{background-color:#f8f9fa;cursor:not-allowed}.construction-tab .rwc-completion-section .completion-items-list .completion-item .item-input .updating-indicator{color:#6c757d;font-size:.875rem;font-style:italic}.construction-tab .rwc-completion-section .completion-items-list .no-completion-items{background:#f8f9fa;border-radius:4px;color:#6c757d;font-size:.875rem;margin:0;padding:1rem;text-align:center}.construction-tab .construction-header{margin-bottom:2rem}.construction-tab .construction-header h3{color:#343a40;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.construction-tab .construction-header .construction-description{color:#6c757d;font-size:.875rem;line-height:1.5;margin:0}.construction-tab .error-message{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-size:.875rem;margin-bottom:1rem;padding:.5rem 1rem}.construction-tab .add-inspection-section{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-bottom:3rem;padding:2rem}.construction-tab .add-inspection-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.construction-tab .add-inspection-section .add-inspection-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:200px 1fr;margin-bottom:1rem}@media(max-width:768px){.construction-tab .add-inspection-section .add-inspection-form .form-row{grid-template-columns:1fr}}.construction-tab .add-inspection-section .add-inspection-form .form-field{display:flex;flex-direction:column;gap:.25rem}.construction-tab .add-inspection-section .add-inspection-form .form-field.full-width{width:100%}.construction-tab .add-inspection-section .add-inspection-form .form-field .field-label{color:#343a40;font-size:.875rem;font-weight:500}.construction-tab .add-inspection-section .add-inspection-form .form-field .field-label .required{color:#dc3545;margin-left:2px}.construction-tab .add-inspection-section .add-inspection-form .form-field input[type=date]{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;min-height:44px;padding:.25rem .5rem;width:100%}.construction-tab .add-inspection-section .add-inspection-form .form-field input[type=date]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.construction-tab .add-inspection-section .add-inspection-form .form-field textarea{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;min-height:80px;padding:.5rem;resize:vertical;width:100%}.construction-tab .add-inspection-section .add-inspection-form .form-field textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.construction-tab .add-inspection-section .add-inspection-form .form-actions{display:flex;justify-content:flex-end;margin-top:1rem}.construction-tab .inspections-list-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 1rem}.construction-tab .inspections-list-section .loading-message{color:#6c757d;font-style:italic;padding:3rem;text-align:center}.construction-tab .inspections-list-section .no-inspections{background:#f8f9fa;border:1px dashed #ddd;border-radius:4px;color:#6c757d;padding:3rem;text-align:center}.construction-tab .inspections-list-section .no-inspections p{font-size:1rem;margin:0}.construction-tab .inspections-list-section .inspections-table{background:#fff;border:1px solid #ddd;border-radius:4px}.construction-tab .inspections-list-section .inspections-table .inspections-table-header{grid-gap:1rem;background:#f8f9fa;border-bottom:1px solid #ddd;color:#343a40;display:grid;font-size:.875rem;font-weight:600;gap:1rem;grid-template-columns:100px 140px 200px 1fr 140px;letter-spacing:.5px;padding:1rem;text-transform:uppercase}.construction-tab .inspections-list-section .inspections-table .inspections-table-body{overflow:visible}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row{grid-gap:1rem;align-items:flex-start;border-bottom:1px solid #ddd;display:grid;gap:1rem;grid-template-columns:100px 140px 200px 1fr 140px;overflow:visible;padding:1rem;transition:background-color .2s ease}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row:hover{background-color:#007bff05}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row:last-child{border-bottom:none}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-number .inspection-number{color:#1a2e5b;font-size:.875rem;font-weight:600}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-date .inspection-date{color:#343a40;font-size:.875rem;font-weight:500}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-date input[type=date]{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;min-height:44px;padding:.25rem .5rem;width:100%}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-date input[type=date]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-engineer{overflow:visible;position:relative}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-engineer .engineer-name{color:#343a40;font-size:.875rem}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-engineer .dropdown{position:relative}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-engineer .dropdown .dropdown-menu{position:absolute;z-index:1000}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-description .inspection-description{color:#343a40;font-size:.875rem;line-height:1.5;word-break:break-word}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-description textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;padding:.25rem;resize:vertical;width:100%}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-description textarea:focus{border-color:#007bff;outline:none}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions{display:flex;flex-wrap:wrap;gap:.25rem}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;padding:4px 8px;transition:all .2s ease;white-space:nowrap}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-primary{background-color:#007bff;color:#fff}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-primary:hover:not(:disabled){background-color:#1a2e5b}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-secondary{background-color:#6c757d;color:#fff}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-secondary:hover:not(:disabled){background-color:#545b62}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-edit{background-color:#007bff1a;color:#007bff}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-edit:hover:not(:disabled){background-color:#007bff33}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-danger{background-color:#dc35451a;color:#dc3545}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm.btn-danger:hover:not(:disabled){background-color:#dc354533}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-actions .btn-sm:disabled{cursor:not-allowed;opacity:.6}@media(max-width:1200px){.modal.has-tabs .modal-content:has(.project-detail-modal){height:calc(100vh - 80px);max-height:calc(100vh - 80px);min-height:auto}.project-detail-modal{max-width:100%;overflow-x:hidden;width:100%}.project-detail-modal .modal-tabs{flex-wrap:wrap;gap:.25rem;margin-left:0;padding:0 1rem;width:100%}.project-detail-modal .modal-tabs .tab-button{font-size:.875rem;padding:.4rem .75rem}.project-detail-modal .modal-body{box-sizing:border-box;flex:1 1 auto!important;margin-left:0;max-height:none!important;max-width:100%;min-height:0!important;padding:1rem;width:100%}.project-detail-modal .project-detail-form{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:1rem}.project-detail-modal .form-fields-inline{max-width:100%;width:100%}.project-detail-modal .form-fields-inline.four-col,.project-detail-modal .form-fields-inline.three-col,.project-detail-modal .form-fields-inline.two-col{grid-template-columns:1fr 1fr}.project-detail-modal .form-fields-vertical{max-width:100%;width:100%}.project-detail-modal .form-fields-vertical .form-field-row{gap:.5rem;grid-template-columns:100px 1fr!important;max-width:100%;width:100%}.project-detail-modal .job-info-tab,.project-detail-modal .technical-info-tab{max-width:100%;width:100%}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row,.project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row{gap:.5rem;grid-template-columns:100px 1fr!important}.project-detail-modal .settings-section .form-fields-vertical .form-field-row{grid-template-columns:100px 1fr!important}.project-detail-modal .key-metrics-section .metrics-grid{grid-template-columns:repeat(2,1fr)}.project-detail-modal .form-section{box-sizing:border-box;max-width:100%;padding:0;width:100%}.project-detail-modal .inspections-section{max-width:100%;overflow-x:auto;width:100%}.project-detail-modal .inspections-section .inspections-table{min-width:600px}.project-detail-modal .dropdown-container,.project-detail-modal .searchable-dropdown{max-width:100%;width:100%}}@media(max-width:768px){.modal.has-tabs .modal-content .project-detail-modal__content-wrapper,.modal.has-tabs .modal-content .project-detail-modal__main{flex:1 1 auto!important;height:100%!important}.modal.has-tabs .modal-content .project-detail-modal__main>.modal-body{flex:1 1 auto!important;max-height:none!important;min-height:0!important}.project-detail-modal .modal-tabs{flex-wrap:wrap;gap:.25rem}.project-detail-modal .modal-tabs .tab-button{font-size:.75rem;padding:.35rem .5rem}.project-detail-modal .project-detail-form{padding:.5rem}.project-detail-modal .form-fields-inline.four-col,.project-detail-modal .form-fields-inline.three-col,.project-detail-modal .form-fields-inline.two-col{grid-template-columns:1fr!important}.project-detail-modal .form-fields-vertical .form-field-row{gap:.25rem;grid-template-columns:1fr!important}.project-detail-modal .form-fields-vertical .form-field-row .field-label{padding-top:0}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row,.project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row{gap:.25rem;grid-template-columns:1fr!important}.project-detail-modal .job-info-tab .form-fields-vertical .form-field-row .field-label,.project-detail-modal .technical-info-tab .form-fields-vertical .form-field-row .field-label{padding-top:0}.project-detail-modal .settings-section .form-fields-vertical .form-field-row{grid-template-columns:1fr!important}.project-detail-modal .key-metrics-section .metrics-grid{grid-template-columns:1fr}.project-detail-modal .form-section{margin-bottom:1rem;padding:0}.construction-tab .inspections-list-section .inspections-table .inspections-table-header{grid-template-columns:90px 90px 1fr 100px}.construction-tab .inspections-list-section .inspections-table .inspections-table-header>:nth-child(3){display:none}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row{grid-template-columns:90px 90px 1fr 100px}.construction-tab .inspections-list-section .inspections-table .inspections-table-body .inspection-row .col-engineer{display:none}.stages-tab .stages-table .stages-table-header{grid-template-columns:1fr 1fr 80px}.stages-tab .stages-table .stages-table-header>:nth-child(4),.stages-tab .stages-table .stages-table-header>:nth-child(5){display:none}.stages-tab .stages-table .stages-table-body .stage-row{grid-template-columns:1fr 1fr 80px}.stages-tab .stages-table .stages-table-body .stage-row .col-created,.stages-tab .stages-table .stages-table-body .stage-row .col-project-lead{display:none}.team-members-tab .add-team-member-section .add-team-member-form{flex-direction:column}.team-members-tab .add-team-member-section .add-team-member-form .add-member-btn,.team-members-tab .add-team-member-section .add-team-member-form .team-member-select{width:100%}.team-members-tab .team-members-list .team-members-table .team-members-table-header{grid-template-columns:1fr 80px}.team-members-tab .team-members-list .team-members-table .team-members-table-header>:nth-child(2),.team-members-tab .team-members-list .team-members-table .team-members-table-header>:nth-child(3){display:none}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row{grid-template-columns:1fr 80px}.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-role,.team-members-tab .team-members-list .team-members-table .team-members-table-body .team-member-row .col-type{display:none}}.skeleton{background:#f0f0f0!important;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%)!important;background-size:200% 100%!important;border-radius:4px!important;color:#0000!important;display:inline-block!important;min-height:1em!important;overflow:hidden!important;position:relative!important}.skeleton-pulse{animation:skeleton-pulse 1.5s ease-in-out infinite!important}.skeleton-wave{animation:skeleton-wave 1.5s ease-in-out infinite!important;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 37%,#f0f0f0 63%)!important;background-size:400% 100%!important}.skeleton-none{animation:none!important;background:#f0f0f0!important}.skeleton-text{border-radius:4px;transform:scaleY(.6)}.skeleton-circular{border-radius:50%}.skeleton-text-container{width:100%}@keyframes skeleton-pulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes skeleton-wave{0%{background-position:-200% 0}to{background-position:200% 0}}@media(prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a 50%,#2a2a2a 75%);background-size:200% 100%}.skeleton-none{background:#2a2a2a}}.filter-skeleton{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding:1rem}.filter-skeleton .filter-skeleton-left{align-items:center;display:flex;flex:1 1;gap:1rem}.filter-skeleton .filter-skeleton-left .filter-skeleton-search{flex:1 1;max-width:400px;min-width:300px}.filter-skeleton .filter-skeleton-left .filter-skeleton-dropdown,.filter-skeleton .filter-skeleton-right{flex-shrink:0}@media(max-width:768px){.filter-skeleton{gap:.5rem}.filter-skeleton,.filter-skeleton .filter-skeleton-left{align-items:stretch;flex-direction:column}.filter-skeleton .filter-skeleton-left .filter-skeleton-search{max-width:none;min-width:0;min-width:auto}.filter-skeleton .filter-skeleton-left .filter-skeleton-dropdown{width:100%}.filter-skeleton .filter-skeleton-left .filter-skeleton-dropdown .skeleton{width:100%!important}.filter-skeleton .filter-skeleton-right{align-self:flex-end}}@media(max-width:576px){.filter-skeleton .filter-skeleton-right{align-self:stretch}.filter-skeleton .filter-skeleton-right .skeleton{width:100%!important}}.table-skeleton{background:#fff!important;border-radius:4px;overflow:hidden;width:100%}.table-skeleton .skeleton{background:#f0f0f0!important;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%)!important;display:block!important;min-height:16px!important}.table-skeleton .table-skeleton-wrapper{overflow-x:auto;width:100%}.table-skeleton .table-skeleton-table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;width:100%}.table-skeleton .table-skeleton-table .table-skeleton-header-row{background-color:#f8f9fa;border-bottom:1px solid #ddd}.table-skeleton .table-skeleton-table .table-skeleton-header-row .table-skeleton-header-cell{color:#343a40;font-weight:600;height:48px;padding:12px 16px;text-align:left;vertical-align:middle}.table-skeleton .table-skeleton-table .table-skeleton-body-row{border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.table-skeleton .table-skeleton-table .table-skeleton-body-row:nth-child(2n){background-color:#f8f9fa4d}.table-skeleton .table-skeleton-table .table-skeleton-body-row .table-skeleton-body-cell{height:56px;padding:12px 16px;vertical-align:middle}.table-skeleton .table-skeleton-table .table-skeleton-body-row:last-child{border-bottom:none}.table-skeleton:before{animation:table-skeleton-shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;width:100%}@keyframes table-skeleton-shimmer{0%{left:-100%}to{left:100%}}@media(max-width:768px){.table-skeleton .table-skeleton-table .table-skeleton-body-cell,.table-skeleton .table-skeleton-table .table-skeleton-header-cell{padding:8px 12px}.table-skeleton .table-skeleton-table .table-skeleton-header-cell{height:40px}.table-skeleton .table-skeleton-table .table-skeleton-body-cell{height:48px}}@media(max-width:576px){.table-skeleton .table-skeleton-table .table-skeleton-body-cell,.table-skeleton .table-skeleton-table .table-skeleton-header-cell{padding:6px 8px}.table-skeleton .table-skeleton-table .table-skeleton-header-cell{height:36px}.table-skeleton .table-skeleton-table .table-skeleton-body-cell{height:44px}}.pagination-skeleton{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.pagination-skeleton .pagination-skeleton-info{align-items:center;display:flex;justify-content:center}.pagination-skeleton .pagination-skeleton-controls{align-items:center;display:flex;gap:1rem;justify-content:space-between}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-page-size{align-items:center;display:flex;gap:.5rem}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav{align-items:center;display:flex;gap:.25rem}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav .pagination-skeleton-pages{align-items:center;display:flex;gap:.25rem;margin:0 .5rem}@media(max-width:768px){.pagination-skeleton .pagination-skeleton-controls{align-items:center;flex-direction:column;gap:.5rem}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav .pagination-skeleton-pages{margin:0 .25rem}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav .pagination-skeleton-pages .skeleton,.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav>.skeleton{height:32px!important;width:32px!important}}@media(max-width:576px){.pagination-skeleton .pagination-skeleton-info .skeleton{width:150px!important}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav .pagination-skeleton-pages{gap:2px}.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav .pagination-skeleton-pages .skeleton,.pagination-skeleton .pagination-skeleton-controls .pagination-skeleton-nav>.skeleton{height:28px!important;width:28px!important}}.results-info-skeleton{align-items:center;display:flex;margin-bottom:1rem;padding:.5rem 0}@media(max-width:576px){.results-info-skeleton{justify-content:center}.results-info-skeleton .skeleton{width:200px!important}}.summary-panel{background:#f8f9fa;border-radius:4px;box-shadow:0 2px 4px #0000001a;padding:1rem}.summary-tiles{display:flex;flex-wrap:wrap;gap:1rem}.summary-tile{background:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a;flex:1 1;min-width:200px;transition:transform .2s ease,box-shadow .2s ease}.summary-tile:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.tile-content{display:flex;flex-direction:column;gap:.25rem;padding:1rem}.tile-label{color:#6c757d;font-size:.875rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.tile-value{color:#343a40;font-size:1.25rem;font-weight:600}.summary-tile.full-width{flex-basis:100%}.summary-tile.comparison{background:#007bff0d;border:1px solid #007bff33}.tile-comparison{display:flex;flex-direction:column;gap:8px;margin-top:.5rem}.tile-comparison .comparison-item{align-items:center;display:flex;justify-content:space-between}.tile-comparison .comparison-item.variance{border-top:1px solid #007bff4d;font-weight:600;margin-top:4px;padding-top:8px}.tile-comparison .comparison-item .comparison-label{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem}.tile-comparison .comparison-item .comparison-value{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600}.tile-comparison .comparison-item .comparison-value.cost{color:#17a2b8}.tile-comparison .comparison-item .comparison-value.invoiced,.tile-comparison .comparison-item .comparison-value.positive{color:#28a745}.tile-comparison .comparison-item .comparison-value.negative{color:#dc3545}@media(max-width:768px){.summary-tiles{flex-direction:column}.summary-tile{min-width:100%}.tile-comparison .comparison-item{align-items:flex-start;flex-direction:column;gap:4px}}.filtered-amount{color:#6c757d;font-size:.75rem;font-weight:400;margin-left:.5rem;opacity:.8}.filtered-change{background:#28a7451a;border:1px solid #28a74533;border-radius:.25rem;color:#28a745;display:inline-block;font-size:.85rem;font-weight:600;margin-left:.5rem;padding:.2rem .5rem;vertical-align:middle}.filtered-change.positive{background:#28a7451a;border-color:#28a74533;color:#28a745}.filtered-change.negative{background:#dc35451a;border-color:#dc354533;color:#dc3545}.filtered-change.zero{background:#6c757d1a;border-color:#6c757d33;color:#6c757d}.job-card-modal{display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:100%;min-height:0}.job-card-modal .tab-navigation{border-bottom:1px solid #ddd;display:flex;flex-shrink:0}.job-card-modal .tab-navigation .tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:1rem 2rem;transition:all .2s ease}.job-card-modal .tab-navigation .tab-button:hover{background:#007bff0d;color:#007bff}.job-card-modal .tab-navigation .tab-button.active{border-bottom-color:#007bff;color:#007bff;font-weight:600}.job-card-modal .modal-body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:2rem 0}.job-card-modal .modal-body .invoice-section,.job-card-modal .modal-body .overview-section,.job-card-modal .modal-body .timesheet-section{min-height:0;width:100%}.job-card-modal .modal-body .invoice-section .table-container,.job-card-modal .modal-body .timesheet-section .table-container{border:1px solid #ddd;border-radius:4px;display:block;overflow:visible;width:100%}.job-card-modal .modal-body .invoice-section .table-container .invoice-table,.job-card-modal .modal-body .invoice-section .table-container table,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table,.job-card-modal .modal-body .timesheet-section .table-container table{border-collapse:collapse;width:100%}.job-card-modal .modal-body .invoice-section .table-container .invoice-table thead,.job-card-modal .modal-body .invoice-section .table-container table thead,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table thead,.job-card-modal .modal-body .timesheet-section .table-container table thead{background:#f8f9fa}.job-card-modal .modal-body .invoice-section .table-container .invoice-table thead th,.job-card-modal .modal-body .invoice-section .table-container table thead th,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table thead th,.job-card-modal .modal-body .timesheet-section .table-container table thead th{border-bottom:1px solid #ddd;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:600;padding:1rem;text-align:left}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr:not(:last-child),.job-card-modal .modal-body .invoice-section .table-container table tbody tr:not(:last-child),.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr:not(:last-child),.job-card-modal .modal-body .timesheet-section .table-container table tbody tr:not(:last-child){border-bottom:1px solid #ddd}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr:hover,.job-card-modal .modal-body .invoice-section .table-container table tbody tr:hover,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr:hover,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr:hover{background:#007bff0d}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr td,.job-card-modal .modal-body .invoice-section .table-container table tbody tr td,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr td,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr td{word-wrap:break-word;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9rem;overflow-wrap:break-word;padding:1rem;vertical-align:middle}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr td.column-invoice_number,.job-card-modal .modal-body .invoice-section .table-container table tbody tr td.column-invoice_number,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr td.column-invoice_number,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr td.column-invoice_number{color:#1a2e5b;font-family:monospace;font-weight:600}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr td .status-badge,.job-card-modal .modal-body .invoice-section .table-container table tbody tr td .status-badge,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr td .status-badge,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr td .status-badge{border-radius:12px;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:600;padding:4px 8px;text-transform:capitalize}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr td .status-badge.status-draft,.job-card-modal .modal-body .invoice-section .table-container table tbody tr td .status-badge.status-draft,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr td .status-badge.status-draft,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr td .status-badge.status-draft{background-color:#ffc1071a;color:#ffc107}.job-card-modal .modal-body .invoice-section .table-container .invoice-table tbody tr td .status-badge.status-sent,.job-card-modal .modal-body .invoice-section .table-container table tbody tr td .status-badge.status-sent,.job-card-modal .modal-body .timesheet-section .table-container .invoice-table tbody tr td .status-badge.status-sent,.job-card-modal .modal-body .timesheet-section .table-container table tbody tr td .status-badge.status-sent{background-color:#28a7451a;color:#28a745}.job-card-modal .modal-body .invoice-section .no-data,.job-card-modal .modal-body .timesheet-section .no-data{background:#f8f9fa;color:#6c757d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-style:italic;padding:3rem;text-align:center}@media(max-width:768px){.job-card-modal .tab-navigation .tab-button{font-size:.9rem;padding:.5rem 1rem}.job-card-modal .tab-content .table-container table tbody td,.job-card-modal .tab-content .table-container table thead th{font-size:.8rem;padding:.5rem}}.base-timesheet-grid{background:#fff;border-radius:0;box-shadow:none;overflow-x:auto;width:100%}@media(min-width:992px){.base-timesheet-grid{overflow-x:visible}}.base-timesheet-grid.readonly{border:1px solid #dee2e6;border-left:none;border-right:none;max-width:100%;min-width:0}.base-timesheet-grid .no-data,.base-timesheet-grid .no-entries{background:#f8f9fa;border-radius:4px;color:#6c757d;margin:20px 0;padding:40px 20px;text-align:center}.base-timesheet-grid .no-data p,.base-timesheet-grid .no-entries p{font-size:16px;margin:0}.base-timesheet-grid .timesheet-grid-table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;overflow:visible;table-layout:auto;width:100%}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table{min-width:0;table-layout:fixed}}.readonly .base-timesheet-grid .timesheet-grid-table{font-size:.875rem}@media(max-width:991px){.readonly .base-timesheet-grid .timesheet-grid-table{min-width:800px}}.base-timesheet-grid .timesheet-grid-table thead th{background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#343a40;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600;padding:12px 16px;text-align:left;-webkit-user-select:none;user-select:none;white-space:nowrap}.base-timesheet-grid .timesheet-grid-table thead th:hover{background:#e9ecef}.base-timesheet-grid .timesheet-grid-table thead th.job-number-header{min-width:70px;text-align:left;width:70px}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table thead th.job-number-header{width:80px}}.base-timesheet-grid .timesheet-grid-table thead th.project-header{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table thead th.project-header{max-width:400px;width:auto}}.base-timesheet-grid .timesheet-grid-table thead th.day-header{text-align:center}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table thead th.day-header{width:60px}}.base-timesheet-grid .timesheet-grid-table thead th.day-header .day-name{font-size:.9rem;font-weight:600}.base-timesheet-grid .timesheet-grid-table thead th.day-header .day-date{color:#666;font-size:.8rem;font-weight:400;margin-top:2px}.base-timesheet-grid .timesheet-grid-table thead th.total-header{text-align:right}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table thead th.total-header{width:100px}}.readonly .base-timesheet-grid .timesheet-grid-table thead th{padding:4px 16px}.base-timesheet-grid .timesheet-grid-table tbody tr:nth-child(2n){background:#f8f9fa80}.base-timesheet-grid .timesheet-grid-table tbody tr:hover{background:#007bff0d}.base-timesheet-grid .timesheet-grid-table tbody tr td{border-bottom:1px solid #dee2e6;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:48px;line-height:1.2;overflow:visible;padding:8px 16px;position:relative;text-align:left;vertical-align:middle;white-space:nowrap}.readonly .base-timesheet-grid .timesheet-grid-table tbody tr td{height:28px;padding:2px 16px}.base-timesheet-grid .timesheet-grid-table tbody tr td.job-number-cell{min-width:70px;text-align:left;width:70px}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table tbody tr td.job-number-cell{width:80px}}.base-timesheet-grid .timesheet-grid-table tbody tr td.job-number-cell .job-number{color:#343a40;font-family:monospace;font-size:14px;font-weight:600}.base-timesheet-grid .timesheet-grid-table tbody tr td.job-number-cell .leave-badge{background:#ffc107;border-radius:3px;color:#000;display:inline-block;font-size:.7rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.base-timesheet-grid .timesheet-grid-table tbody tr td.project-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table tbody tr td.project-cell{max-width:400px;width:auto}}.base-timesheet-grid .timesheet-grid-table tbody tr td.project-cell .project-name{line-height:1.2}.base-timesheet-grid .timesheet-grid-table tbody tr td.project-cell .leave-type,.base-timesheet-grid .timesheet-grid-table tbody tr td.project-cell .project-name{color:#343a40;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-timesheet-grid .timesheet-grid-table tbody tr td.hours-cell{color:#343a40;font-family:monospace;font-weight:500;text-align:center}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table tbody tr td.hours-cell{width:60px}}.base-timesheet-grid .timesheet-grid-table tbody tr td.hours-cell.clickable{cursor:pointer;transition:background-color .2s ease}.base-timesheet-grid .timesheet-grid-table tbody tr td.hours-cell.clickable:hover{background-color:#007bff1a}.base-timesheet-grid .timesheet-grid-table tbody tr td.total-cell{color:#343a40;font-family:monospace;font-weight:500;text-align:right}@media(min-width:992px){.base-timesheet-grid .timesheet-grid-table tbody tr td.total-cell{width:100px}}.base-timesheet-grid .timesheet-grid-table tfoot tr{background:#f8f9fa;border-top:2px solid #dee2e6}.base-timesheet-grid .timesheet-grid-table tfoot tr td{color:#343a40;font-weight:600;padding:12px 16px;text-align:left}.base-timesheet-grid .timesheet-grid-table tfoot tr td.total-cell{font-family:monospace;text-align:center}.base-timesheet-grid .timesheet-grid-table tfoot tr td.grand-total{background:#007bff1a;color:#007bff;font-family:monospace;font-weight:700;text-align:right}.readonly .base-timesheet-grid .timesheet-grid-table tfoot tr td{padding:4px 16px}.base-timesheet-grid.readonly .timesheet-grid-table tbody tr:hover{background:#007bff0d}.base-timesheet-grid.readonly .timesheet-grid-table .hours-cell{cursor:default}.base-timesheet-grid.editable .hours-cell.clickable{cursor:pointer}@media(max-width:992px){.base-timesheet-grid.readonly .timesheet-grid-table{font-size:12px}.base-timesheet-grid.readonly .timesheet-grid-table td,.base-timesheet-grid.readonly .timesheet-grid-table th{height:24px;padding:2px 8px}.base-timesheet-grid.readonly .timesheet-grid-table th .day-name{font-size:.8rem}.base-timesheet-grid.readonly .timesheet-grid-table th .day-date{font-size:.7rem}.base-timesheet-grid.readonly .timesheet-grid-table .job-number-cell .job-number,.base-timesheet-grid.readonly .timesheet-grid-table .project-cell .project-name{font-size:12px}}@media(max-width:768px){.base-timesheet-grid.readonly .timesheet-grid-table{font-size:12px}.base-timesheet-grid.readonly .timesheet-grid-table td,.base-timesheet-grid.readonly .timesheet-grid-table th{padding:4px 6px}.base-timesheet-grid.readonly .timesheet-grid-table .job-number-cell .job-number{font-size:11px}.base-timesheet-grid.readonly .timesheet-grid-table .project-cell .project-name{font-size:11px;line-height:1.1}.base-timesheet-grid.readonly .timesheet-grid-table th .day-name{font-size:.7rem}.base-timesheet-grid.readonly .timesheet-grid-table th .day-date{font-size:.6rem}}@media(max-width:576px){.base-timesheet-grid.readonly .timesheet-grid-table{font-size:11px}.base-timesheet-grid.readonly .timesheet-grid-table td,.base-timesheet-grid.readonly .timesheet-grid-table th{padding:3px 4px}.base-timesheet-grid.readonly .timesheet-grid-table .job-number-cell .job-number{font-size:10px}.base-timesheet-grid.readonly .timesheet-grid-table .project-cell .project-name{display:none}.base-timesheet-grid.readonly .timesheet-grid-table th .day-name{font-size:.6rem}.base-timesheet-grid.readonly .timesheet-grid-table th .day-date{font-size:.5rem}}.base-timesheet-list{background:#fff;border-radius:0;box-shadow:none;overflow-x:auto;width:100%}@media(min-width:992px){.base-timesheet-list{overflow-x:visible}}.base-timesheet-list.readonly{border-radius:4px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.base-timesheet-list .no-entries{color:#666;padding:3rem;text-align:center}.base-timesheet-list .no-entries h3{color:#343a40;margin:0 0 1rem}.base-timesheet-list .no-entries p{font-size:1.1rem;margin:0}.base-timesheet-list .summary-stats{background:#f8f9fa;border-bottom:1px solid #ddd;display:flex;gap:2rem;padding:1rem}.base-timesheet-list .summary-stats .stat-item{display:flex;flex-direction:column;gap:.25rem}.base-timesheet-list .summary-stats .stat-item .stat-label{color:#666;font-size:.8rem;font-weight:500}.base-timesheet-list .summary-stats .stat-item .stat-value{color:#007bff;font-size:1.2rem;font-weight:600}@media(max-width:768px){.base-timesheet-list .summary-stats{flex-wrap:wrap;gap:1rem}.base-timesheet-list .summary-stats .stat-item{flex:1 1;min-width:100px}}.readonly .base-timesheet-list .entries-container .entries-header{grid-gap:.5rem;background:#e9ecef;border-bottom:2px solid #ddd;color:#343a40;display:grid;font-size:.9rem;font-weight:600;gap:.5rem;grid-template-columns:120px 70px 2fr 80px 2fr 100px;padding:4px 1rem}.readonly .base-timesheet-list .entries-container .entries-header .header-date,.readonly .base-timesheet-list .entries-container .entries-header .header-description,.readonly .base-timesheet-list .entries-container .entries-header .header-hours,.readonly .base-timesheet-list .entries-container .entries-header .header-job-number,.readonly .base-timesheet-list .entries-container .entries-header .header-project,.readonly .base-timesheet-list .entries-container .entries-header .header-total{align-items:center;display:flex}.readonly .base-timesheet-list .entries-container .entries-header .header-hours,.readonly .base-timesheet-list .entries-container .entries-header .header-total{justify-content:center}.readonly .base-timesheet-list .entries-container .entries-body .entry-row{grid-gap:.5rem;align-items:center;border-bottom:1px solid #ddd;display:grid;gap:.5rem;grid-template-columns:120px 70px 2fr 80px 2fr 100px;min-height:28px;padding:2px 1rem;transition:background .2s ease}.readonly .base-timesheet-list .entries-container .entries-body .entry-row:hover{background:#007bff05}.readonly .base-timesheet-list .entries-container .entries-body .entry-row:last-child{border-bottom:none}.base-timesheet-list .entries-container .timesheet-list-table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;overflow:visible;table-layout:auto;width:100%}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table{min-width:0;table-layout:fixed}}.base-timesheet-list .entries-container .timesheet-list-table thead th{background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#343a40;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600;padding:12px 16px;text-align:left;-webkit-user-select:none;user-select:none;white-space:nowrap}.base-timesheet-list .entries-container .timesheet-list-table thead th:hover{background:#e9ecef}.base-timesheet-list .entries-container .timesheet-list-table thead th.date-column{text-align:left}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table thead th.date-column{width:120px}}.base-timesheet-list .entries-container .timesheet-list-table thead th.job-number-column{max-width:70px;min-width:70px;text-align:left;width:70px}.base-timesheet-list .entries-container .timesheet-list-table thead th.project-column{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table thead th.project-column{max-width:300px;width:auto}}.base-timesheet-list .entries-container .timesheet-list-table thead th.hours-column{text-align:right}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table thead th.hours-column{width:80px}}.base-timesheet-list .entries-container .timesheet-list-table thead th.total-column{text-align:right}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table thead th.total-column{width:100px}}.base-timesheet-list .entries-container .timesheet-list-table thead th.description-column{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table thead th.description-column{max-width:300px;width:auto}}.base-timesheet-list .entries-container .timesheet-list-table thead th.actions-column{max-width:120px;min-width:120px;text-align:left;width:120px}.base-timesheet-list .entries-container .timesheet-list-table tbody tr:nth-child(2n){background:#f8f9fa80}.base-timesheet-list .entries-container .timesheet-list-table tbody tr:hover{background:#007bff0d}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td{border-bottom:1px solid #dee2e6;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:48px;line-height:1.2;overflow:visible;padding:8px 16px;position:relative;text-align:left;vertical-align:middle;white-space:nowrap}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.date-cell{text-align:left}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.date-cell{width:120px}}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.job-number-cell{max-width:70px;min-width:70px;text-align:left;width:70px}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.job-number-cell .job-number{color:#343a40;font-family:monospace;font-size:14px;font-weight:600}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.job-number-cell .leave-badge{background:#ffc107;border-radius:3px;color:#000;display:inline-block;font-size:.7rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.project-cell{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.project-cell{max-width:300px;width:auto}}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.project-cell .project-name{color:#343a40;font-weight:500;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.project-cell .leave-type{color:#343a40;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.hours-cell{color:#343a40;font-family:monospace;font-size:14px;font-weight:500;text-align:right}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.hours-cell{width:80px}}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.total-cell{color:#343a40;font-family:monospace;font-size:14px;font-weight:500;text-align:right}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.total-cell{width:100px}}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.description-cell{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(min-width:992px){.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.description-cell{max-width:300px;width:auto}}.base-timesheet-list .entries-container .timesheet-list-table tbody tr td.actions-cell{max-width:120px;min-width:120px;padding:8px 8px 8px 16px;text-align:left;width:120px}.base-timesheet-list .actions{align-items:center;display:flex;gap:8px;justify-content:flex-start}.base-timesheet-list .delete-btn,.base-timesheet-list .edit-btn{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;justify-content:center;min-height:32px;padding:4px 8px;transition:all .2s ease}.base-timesheet-list .edit-btn{color:#007bff}.base-timesheet-list .edit-btn:hover{background-color:#007bff1a}.base-timesheet-list .delete-btn{color:#dc3545}.base-timesheet-list .delete-btn:hover{background-color:#dc35451a}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-date{display:flex;flex-direction:column;gap:.25rem}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-date .date-main{color:#343a40;font-size:.9rem;font-weight:500}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-date .date-year{color:#666;font-size:.8rem}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-job-number{align-items:center;display:flex}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-job-number .job-number{color:#343a40;font-family:monospace;font-size:.9rem;font-weight:600}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-job-number .leave-badge{background:#ffc107;border-radius:3px;color:#000;display:inline-block;font-size:.6rem;font-weight:600;padding:2px 4px;text-transform:uppercase}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-project{align-items:center;display:flex;overflow:hidden}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-project .project-name{color:#343a40;font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-hours{align-items:center;display:flex;gap:.25rem;justify-content:center}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-hours .hours-value{color:#007bff;font-size:1.1rem;font-weight:600}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-hours .hours-unit{color:#666;font-size:.9rem}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-description{align-items:center;display:flex}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-description .description-text{color:#343a40;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-description .no-description{color:#999;font-size:.9rem;font-style:italic}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-total{align-items:center;display:flex;justify-content:center}.readonly .base-timesheet-list .entries-container .entries-body .entry-row .entry-total .total-value{background:#f8f9fa;border-radius:4px;color:#343a40;font-size:.9rem;font-weight:600;padding:.25rem .5rem}.base-timesheet-list .timesheet-list-table tfoot tr{background:#f8f9fa;border-top:2px solid #dee2e6}.base-timesheet-list .timesheet-list-table tfoot tr td{color:#343a40;font-weight:600;padding:12px 16px;text-align:left}.base-timesheet-list .timesheet-list-table tfoot tr td.footer-label{color:#343a40;font-weight:600;text-align:left}.base-timesheet-list .timesheet-list-table tfoot tr td.footer-hours{background-color:#007bff1a;color:#007bff;font-family:monospace;font-size:14px;font-weight:600;text-align:right}@media(max-width:992px){.base-timesheet-list.readonly .entries-container .entries-body .entry-row,.base-timesheet-list.readonly .entries-container .entries-header{font-size:.85rem;grid-template-columns:100px 60px 1.5fr 70px 1.5fr 80px}}@media(max-width:768px){.base-timesheet-list.readonly .summary-stats{align-items:stretch;flex-direction:column;gap:.5rem}.base-timesheet-list.readonly .summary-stats .stat-item{align-items:center;flex-direction:row;justify-content:space-between}.base-timesheet-list.readonly .entries-container .entries-header{display:none}.base-timesheet-list.readonly .entries-container .entries-body .entry-row{border-bottom:2px solid #ddd;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-date .date-main{font-size:1rem;font-weight:600}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-project .project-name{font-size:1rem}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-hours{justify-content:flex-start}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-hours .hours-value{font-size:1.2rem}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-description .description-text{overflow:visible;text-overflow:clip;white-space:normal}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-total{justify-content:flex-start}.base-timesheet-list.readonly .entries-container .entries-body .entry-row .entry-total .total-value{font-size:1rem}}.timesheet-entry-form{background:#0000;margin-bottom:0;padding:0}.timesheet-entry-form .form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.timesheet-entry-form .form-header h3{color:#333;font-size:16px;margin:0}.timesheet-entry-form .form-header .entry-type-selector{display:flex;gap:16px}.timesheet-entry-form .form-header .entry-type-selector .radio-option{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;gap:6px}.timesheet-entry-form .form-header .entry-type-selector .radio-option input[type=radio]{margin:0}.timesheet-entry-form .form-header .entry-type-selector .radio-option span{-webkit-user-select:none;user-select:none}.timesheet-entry-form .form-header .entry-type-selector .radio-option:hover{color:#333}.timesheet-entry-form .error-message{background-color:#dc35451a;border:1px solid #dc354533;border-radius:4px;color:#dc3545;font-size:14px;margin-bottom:12px;padding:8px 12px}.timesheet-entry-form .form-main-row{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:2fr 1fr 100px 2fr 120px;margin-bottom:0}.timesheet-entry-form .form-main-row .form-group label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:4px}.timesheet-entry-form .form-main-row .form-group input[type=number],.timesheet-entry-form .form-main-row .form-group input[type=text]{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;height:32px;padding:6px 8px;width:100%}.timesheet-entry-form .form-main-row .form-group input[type=number]:focus,.timesheet-entry-form .form-main-row .form-group input[type=text]:focus{border-color:#007bff;outline:none}.timesheet-entry-form .form-main-row .form-group input[type=number]:disabled,.timesheet-entry-form .form-main-row .form-group input[type=text]:disabled{background-color:#f5f5f5;cursor:not-allowed}.timesheet-entry-form .form-main-row .form-group input[type=number].is-large,.timesheet-entry-form .form-main-row .form-group input[type=text].is-large{font-size:16px;height:44px;padding:10px 12px}.timesheet-entry-form .form-main-row .submit-field .submit-button{background-color:#333;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;height:44px;padding:6px 8px;transition:background-color .2s;width:100%}.timesheet-entry-form .form-main-row .submit-field .submit-button:hover:not(:disabled){background-color:#222}.timesheet-entry-form .form-main-row .submit-field .submit-button:disabled{background-color:#ccc;cursor:not-allowed}@media(max-width:768px){.timesheet-entry-form .form-main-row{gap:16px;grid-template-columns:1fr}.timesheet-entry-form .form-main-row .submit-field .submit-button{margin-top:0}}.week-selection-skeleton{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.week-selection-skeleton .week-selection-skeleton-arrow{flex-shrink:0}.week-selection-skeleton .week-selection-skeleton-container{flex:1 1;overflow:hidden}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list{display:flex;gap:8px;min-width:max-content;padding:4px 0}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list .week-selection-skeleton-badge{flex-shrink:0}@media(max-width:768px){.week-selection-skeleton{gap:8px;padding:12px 16px}.week-selection-skeleton .week-selection-skeleton-arrow .skeleton{height:36px!important;width:36px!important}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list{gap:6px}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list .week-selection-skeleton-badge .skeleton{height:32px!important;width:120px!important}}@media(max-width:576px){.week-selection-skeleton{padding:8px 12px}.week-selection-skeleton .week-selection-skeleton-arrow .skeleton{height:32px!important;width:32px!important}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list{gap:4px}.week-selection-skeleton .week-selection-skeleton-container .week-selection-skeleton-list .week-selection-skeleton-badge .skeleton{height:28px!important;width:100px!important}}.timesheet-entry-form-skeleton{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:20px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-title{margin-bottom:16px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row{align-items:end;display:flex;flex-wrap:wrap;gap:16px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field{display:flex;flex-direction:column;gap:4px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field .label-skeleton{margin-bottom:4px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.project{flex:1 1;min-width:200px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.day{min-width:160px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.hours{min-width:100px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.description{flex:1 1;min-width:200px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.button{justify-content:flex-end;min-width:120px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.button .skeleton{margin-top:22px}@media(max-width:768px){.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row{flex-direction:column;gap:12px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field{min-width:auto;width:100%}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field.button .skeleton{margin-top:0;width:100%!important}}@media(max-width:576px){.timesheet-entry-form-skeleton{padding:16px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row{gap:8px}.timesheet-entry-form-skeleton .timesheet-entry-form-skeleton-row .timesheet-entry-form-skeleton-field .skeleton{height:38px!important}}.tabs-skeleton{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin-bottom:20px;padding:0 20px 8px}.tabs-skeleton .tabs-skeleton-buttons{display:flex;gap:8px}@media(max-width:768px){.tabs-skeleton{padding:0 16px 6px}.tabs-skeleton .tabs-skeleton-buttons{gap:6px}.tabs-skeleton .tabs-skeleton-buttons .skeleton{height:28px!important;width:80px!important}}@media(max-width:576px){.tabs-skeleton{padding:0 12px 4px}.tabs-skeleton .tabs-skeleton-buttons{gap:4px}.tabs-skeleton .tabs-skeleton-buttons .skeleton{height:24px!important;width:70px!important}}.timesheets{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:0 2rem;width:100%}.timesheets .timesheet-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:flex-end;margin-bottom:1rem;padding-bottom:.5rem}.timesheets .timesheet-header .header-actions{align-items:center;display:flex;gap:20px}.timesheets .timesheet-header .status-badge{border-radius:12px;font-family:inherit;font-size:14px;font-weight:500;padding:4px 12px}.timesheets .timesheet-header .status-badge.draft{background-color:#e9ecef;color:#495057}.timesheets .timesheet-header .status-badge.submitted{background-color:#cff4fc;color:#055160}.timesheets .timesheet-header .status-badge.approved{background-color:#d1e7dd;color:#0f5132}.timesheets .timesheet-header .status-badge.rejected{background-color:#f8d7da;color:#842029}.timesheets .timesheet-header .submit-button{background-color:#333;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;padding:8px 16px;transition:background-color .2s}.timesheets .timesheet-header .submit-button:hover{background-color:#555}.timesheets .timesheet-header .submit-button:disabled{background-color:#ccc;cursor:not-allowed}.timesheets .tabs{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin-bottom:20px;padding:0 20px 8px}.timesheets .tabs .tab-buttons{display:flex;gap:8px}.timesheets .tabs .tab-buttons button{background:none;border:none;border-radius:4px 4px 0 0;color:#666;cursor:pointer;font-family:inherit;font-size:14px;padding:8px 16px;position:relative;transition:all .2s}.timesheets .tabs .tab-buttons button:hover{color:#007bff}.timesheets .tabs .tab-buttons button.active{background:none;border-bottom:2px solid #007bff;color:#007bff;margin-bottom:-9px}.timesheets .tabs .add-button{align-items:center;background-color:#007bff!important;border:none!important;border-radius:4px;color:#fff!important;cursor:pointer;display:flex;font-family:inherit;font-size:14px;gap:8px;padding:8px 16px;transition:background-color .2s}.timesheets .tabs .add-button:hover{background-color:#0056b3!important}.timesheets .tabs .add-button:before{content:"+";font-size:18px;font-weight:700}.timesheets .no-batches-message{color:#666;padding:60px 40px;text-align:center}.timesheets .no-batches-message h2{color:#333;margin-bottom:16px}.timesheets .no-batches-message p{line-height:1.4;margin-bottom:8px}.timesheets .no-batches-message button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:inherit;margin-top:20px;padding:8px 16px}.timesheets .no-batches-message button:hover{background-color:#0056b3}.timesheets .entry-form-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:20px}.timesheets .entry-form-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.timesheets .entry-form-section .error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:14px;margin-bottom:16px;padding:8px 12px}.timesheets .entry-form-section .inline-entry-form .form-row{align-items:end;display:flex;flex-wrap:wrap;gap:16px}@media(max-width:768px){.timesheets .entry-form-section .inline-entry-form .form-row{flex-direction:column;gap:12px}}.timesheets .entry-form-section .inline-entry-form .form-row .form-group{display:flex;flex-direction:column;gap:4px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group label{color:#333;font-size:14px;font-weight:500;margin-bottom:4px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group label .required{color:#dc3545;margin-left:2px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group input{background:#fff;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;min-width:120px;padding:8px 12px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.timesheets .entry-form-section .inline-entry-form .form-row .form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.timesheets .entry-form-section .inline-entry-form .form-row .form-group input[type=number]{max-width:100px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group:first-child{flex:1 1;min-width:200px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group:nth-child(2){min-width:160px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group:nth-child(3){min-width:100px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group:nth-child(4){flex:1 1;min-width:200px}.timesheets .entry-form-section .inline-entry-form .form-row .form-group:nth-child(5){justify-content:flex-end;min-width:120px}.timesheets .entry-form-section .inline-entry-form .form-row .add-entry-button{align-items:center;background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:14px;height:42px;justify-content:center;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.timesheets .entry-form-section .inline-entry-form .form-row .add-entry-button:hover:not(:disabled){background-color:#0056b3}.timesheets .entry-form-section .inline-entry-form .form-row .add-entry-button:disabled{background-color:#6c757d;cursor:not-allowed}.timesheets .modal-form .form-group{margin-bottom:1rem}.timesheets .modal-form .form-group label{color:#333;display:block;font-family:inherit;font-size:14px;font-weight:500;margin-bottom:6px}.timesheets .modal-form .form-group input,.timesheets .modal-form .form-group textarea{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.timesheets .modal-form .form-group input:focus,.timesheets .modal-form .form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.timesheets .modal-form .form-group input:disabled,.timesheets .modal-form .form-group textarea:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.6}.timesheets .modal-form .form-group input.error,.timesheets .modal-form .form-group textarea.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc354540}.timesheets .modal-form .form-group textarea{min-height:80px;resize:vertical}.timesheets .modal-form .form-group input[type=number]{-moz-appearance:textfield}.timesheets .modal-form .form-group input[type=number]::-webkit-inner-spin-button,.timesheets .modal-form .form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.timesheets .modal-form .form-group .error-message{color:#dc3545;display:block;font-family:inherit;font-size:13px;margin-top:4px}.timesheets .modal-form .form-group .general-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:14px;margin-bottom:16px;padding:8px 12px}.horizontal-week-selection{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.horizontal-week-selection .scroll-arrow{background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;flex-shrink:0;font-size:16px;padding:8px 12px;transition:all .2s ease}.horizontal-week-selection .scroll-arrow:hover:not(:disabled){background:#f5f5f5;border-color:#007bff;color:#007bff}.horizontal-week-selection .scroll-arrow.disabled,.horizontal-week-selection .scroll-arrow:disabled{background:#f8f9fa;border-color:#e9ecef;color:#adb5bd;cursor:not-allowed;opacity:.5}.horizontal-week-selection .week-list-container{flex:1 1;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}.horizontal-week-selection .week-list-container::-webkit-scrollbar{display:none}.horizontal-week-selection .week-list{display:flex;gap:8px;min-width:max-content;padding:4px 0}.horizontal-week-selection .week-badge{background:#fff;border:1px solid #ddd;border-radius:20px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:8px 16px;position:relative;transition:all .2s ease;white-space:nowrap}.horizontal-week-selection .week-badge:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.horizontal-week-selection .week-badge.current{background:#333;border-color:#333;color:#fff}.horizontal-week-selection .week-badge.default{background:#fff;border-color:#ddd;color:#333}.horizontal-week-selection .week-badge .warning-indicator{align-items:center;background:#dc3545;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;color:#fff;display:flex;font-size:11px;font-weight:700;height:16px;justify-content:center;position:absolute;right:-4px;top:-4px;width:16px}.week-selection{display:inline-block;position:relative}.week-selection .week-selector{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;gap:8px;justify-content:space-between;min-width:200px;padding:8px 12px;transition:border-color .2s ease}.week-selection .week-selector:hover{border-color:#007bff}.week-selection .week-selector.loading{cursor:not-allowed;opacity:.6}.week-selection .week-selector.error{background-color:#f8d7da;border-color:#dc3545}.week-selection .week-selector .selected-week{color:#333;font-size:14px;font-weight:500}.week-selection .week-selector .dropdown-arrow{color:#666;font-size:12px;transition:transform .2s ease}.week-selection .week-selector:hover .dropdown-arrow{transform:rotate(180deg)}.week-selection .week-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001a;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.week-selection .week-dropdown .week-option{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;justify-content:space-between;padding:8px 12px;transition:background-color .2s ease}.week-selection .week-dropdown .week-option:hover{background-color:#f8f9fa}.week-selection .week-dropdown .week-option.selected{background-color:#007bff;color:#fff}.week-selection .week-dropdown .week-option.selected .status-badge{background-color:#fff3;color:#fff}.week-selection .week-dropdown .week-option:last-child{border-bottom:none}.week-selection .week-dropdown .week-option .week-date{font-size:14px;font-weight:500}.week-selection .week-dropdown .week-option .status-badge{border-radius:8px;display:inline-block;font-size:11px;font-weight:500;padding:2px 6px;text-transform:uppercase}.week-selection .week-dropdown .week-option .status-badge.draft{background-color:#e9ecef;color:#495057}.week-selection .week-dropdown .week-option .status-badge.submitted{background-color:#cff4fc;color:#055160}.week-selection .week-dropdown .week-option .status-badge.approved{background-color:#d1e7dd;color:#0f5132}.week-selection .week-dropdown .week-option .status-badge.rejected{background-color:#f8d7da;color:#842029}.error-container{color:#666;padding:60px 40px;text-align:center}.error-container h3{color:#dc3545;font-size:24px;margin-bottom:20px}.error-container p{color:#333;font-size:16px;line-height:1.5;margin:0 0 20px}.error-container .error-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.error-container .error-actions button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.error-container .error-actions button:hover{background-color:#0056b3}.error-container .error-actions button:first-child{background-color:#28a745}.error-container .error-actions button:first-child:hover{background-color:#218838}.modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1050}.timesheets .modal-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin:0 1.5rem;padding:1.5rem 0 1rem 1rem}.timesheets .modal-header h2{color:#343a40;font-size:1.5rem;font-weight:500;line-height:1.5;margin:0}.modal-close,.timesheets .modal-header h2{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background-color:#007bff0d;color:#007bff}.modal-form{padding:1.5rem}.modal-form .form-group{margin-bottom:1rem}.modal-form .form-group label{color:#333;display:block;font-weight:500;margin-bottom:6px}.modal-form .form-group input,.modal-form .form-group label,.modal-form .form-group textarea{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px}.modal-form .form-group input,.modal-form .form-group textarea{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.modal-form .form-group input:focus,.modal-form .form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.modal-form .form-group input:disabled,.modal-form .form-group textarea:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.6}.modal-form .form-group input.error,.modal-form .form-group textarea.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc354540}.modal-form .form-group textarea{min-height:80px;resize:vertical}.modal-form .form-group input[type=number]{-moz-appearance:textfield}.modal-form .form-group input[type=number]::-webkit-inner-spin-button,.modal-form .form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.modal-form .form-group .error-message{color:#dc3545;font-size:12px;margin-top:4px}.modal-form .general-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin-bottom:1rem;padding:12px}.submit-confirmation{margin-bottom:1.5rem}.submit-confirmation p{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5;margin:0 0 16px}.submit-confirmation p.warning{color:#dc3545;font-weight:500}.submit-confirmation p:last-child{margin-bottom:0}.modal-actions{border-top:1px solid #ddd;display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem}.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:500;line-height:1.5;min-height:44px;padding:10px 1rem;transition:all .2s ease}.btn-primary{background-color:#000!important;border:1px solid #000!important;color:#fff!important}.btn-primary:hover:not(:disabled){background-color:#333!important;border-color:#333!important;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.btn-primary:disabled{background-color:#6c757d!important;border-color:#6c757d!important;box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.btn-secondary:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media(max-width:768px){.timesheets .modal-form,.timesheets .modal-header{padding:1rem}.timesheets .modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.employee-detail-modal{display:flex;flex-direction:column;height:100%;width:100%}.employee-detail-modal .modal-tabs{border-bottom:1px solid #ddd;box-sizing:border-box;display:flex;flex-shrink:0;margin:0;padding:0 1rem;width:100%}.employee-detail-modal .modal-tabs .tab-button{background:#0000;border:none;border-bottom:2px solid #0000;color:#4b5563;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-align:center;transition:all .2s ease;width:50%}.employee-detail-modal .modal-tabs .tab-button:hover{background:#007bff0d;color:#007bff}.employee-detail-modal .modal-tabs .tab-button.active{background:#007bff0d;border-bottom-color:#007bff;color:#007bff}.employee-detail-modal .modal-body{margin-top:.5rem;padding:0 0 3rem}.employee-detail-modal .basic-info-tab{box-sizing:border-box;min-height:0;padding:.5rem 1rem 0;width:100%}.employee-detail-modal .basic-info-tab .edit-employee-form{box-sizing:border-box;max-width:100%;width:100%}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group{margin-bottom:2rem}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group label{color:#343a40;display:block;font-size:.875rem;font-weight:600;line-height:1.2;margin-bottom:.5rem}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group label .required{color:#dc3545}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group input,.employee-detail-modal .basic-info-tab .edit-employee-form .form-group select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5;padding:.5rem 1rem;transition:all .2s ease;width:100%}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group input:focus,.employee-detail-modal .basic-info-tab .edit-employee-form .form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group input.error,.employee-detail-modal .basic-info-tab .edit-employee-form .form-group select.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group input:disabled,.employee-detail-modal .basic-info-tab .edit-employee-form .form-group select:disabled{background-color:#f8f9fa;color:#6b7280;cursor:not-allowed}.employee-detail-modal .basic-info-tab .edit-employee-form .form-group .field-error{color:#dc3545;font-size:.75rem;line-height:1.4;margin-top:4px}.employee-detail-modal .basic-info-tab .edit-employee-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}@media(max-width:576px){.employee-detail-modal .basic-info-tab .edit-employee-form .form-row{grid-template-columns:1fr}}.employee-detail-modal .basic-info-tab .edit-employee-form .form-actions{border-top:1px solid #ddd;display:flex;gap:1rem;padding-top:1rem}@media(max-width:576px){.employee-detail-modal .basic-info-tab .edit-employee-form .form-actions{flex-direction:column}}.employee-detail-modal .rates-tab{box-sizing:border-box;min-height:0;padding:.5rem 1rem 0;width:100%}.employee-detail-modal .rates-tab .current-rate-summary{background:#f8f9fa;border-radius:4px;margin-bottom:2rem;padding:2rem}.employee-detail-modal .rates-tab .current-rate-summary h3{color:#343a40;font-size:1.2rem;font-weight:600;margin:0 0 1rem}.employee-detail-modal .rates-tab .current-rate-summary .current-rate-info{display:flex;flex-direction:column}.employee-detail-modal .rates-tab .current-rate-summary .current-rate-info .rate-amount{color:#28a745;font-size:1.5rem;font-weight:600}.employee-detail-modal .rates-tab .current-rate-summary .current-rate-info .rate-details{color:#4b5563;font-size:.875rem;margin-top:4px}.employee-detail-modal .rates-tab .current-rate-summary .no-current-rate span{color:#6b7280;font-style:italic}.employee-detail-modal .rates-tab .add-rate-section{border:1px solid #ddd;border-radius:4px;margin-bottom:2rem;padding:2rem}.employee-detail-modal .rates-tab .add-rate-section .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.employee-detail-modal .rates-tab .add-rate-section .section-header h3{color:#343a40;font-size:1.1rem;font-weight:600;margin:0}.employee-detail-modal .rates-tab .add-rate-section .section-header .add-rate-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.employee-detail-modal .rates-tab .add-rate-section .section-header .add-rate-btn:hover{background-color:#1a2e5b}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group{margin-bottom:1rem}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group label{color:#343a40;display:block;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group label .required{color:#dc3545}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group input{border:1px solid #ddd;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;padding:.5rem;transition:all .2s ease;width:100%}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group .field-error{color:#dc3545;font-size:.75rem;margin-top:4px}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-group .field-help{color:#6b7280;font-size:.75rem;line-height:1.4;margin-top:4px}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media(max-width:576px){.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-row{grid-template-columns:1fr}}.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-actions{display:flex;gap:.5rem;margin-top:1rem}@media(max-width:576px){.employee-detail-modal .rates-tab .add-rate-section .add-rate-form .form-actions{flex-direction:column}}.employee-detail-modal .rates-tab .rate-history-section h3{color:#343a40;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.employee-detail-modal .rates-tab .rate-history-section .loading-history,.employee-detail-modal .rates-tab .rate-history-section .no-history{color:#6b7280;font-style:italic;padding:2rem;text-align:center}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item{align-items:center;border:1px solid #ddd;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:1rem;transition:all .2s ease}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item.current{background:#28a7450d;border-color:#28a74533}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item.historical{background:#f3f4f680}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item:hover{box-shadow:0 2px 4px #0000001a}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-info{display:flex;flex-direction:column}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-info .rate-amount{color:#343a40;font-size:1rem;font-weight:600}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-info .rate-period{color:#4b5563;font-size:.875rem;margin-top:2px}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge{border-radius:4px;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge.current{background:#28a7451a;border:1px solid #28a74533;color:#28a745}.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item .rate-status .status-badge.historical{background:#6b72801a;border:1px solid #6b728033;color:#6b7280}@media(max-width:576px){.employee-detail-modal .rates-tab .rate-history-section .rate-history-list .rate-history-item{align-items:flex-start;flex-direction:column;gap:.5rem}}.employee-detail-modal .rates-tab .rate-history-section .employee-actions-section{border-top:1px solid #ddd;margin-bottom:3rem;margin-top:3rem;padding-bottom:2rem;padding-top:2rem}.employee-detail-modal .rates-tab .rate-history-section .employee-actions-section h4{color:#343a40;font-size:1rem;font-weight:600;margin:0 0 .5rem}.employee-detail-modal .rates-tab .rate-history-section .employee-actions-section .action-description{color:#4b5563;font-size:.875rem;line-height:1.4;margin:0 0 1rem}.employee-detail-modal .rates-tab .rate-history-section .employee-actions-section .action-button{margin-top:.5rem}.employee-detail-modal .modal-footer-actions{display:flex;gap:.5rem;justify-content:flex-end;width:100%}.employee-detail-modal .modal-footer-actions .btn-secondary{order:1}.employee-detail-modal .modal-footer-actions .btn-primary{order:2}@media(max-width:768px){.employee-detail-modal .modal-footer-actions{flex-direction:column;gap:.25rem}.employee-detail-modal .modal-footer-actions .btn-primary,.employee-detail-modal .modal-footer-actions .btn-secondary{order:0;width:100%}}.employee-detail-modal .btn-danger,.employee-detail-modal .btn-primary,.employee-detail-modal .btn-secondary,.employee-detail-modal .btn-success{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;min-width:120px;padding:.5rem 1rem;transition:all .2s ease}.employee-detail-modal .btn-danger:disabled,.employee-detail-modal .btn-primary:disabled,.employee-detail-modal .btn-secondary:disabled,.employee-detail-modal .btn-success:disabled{cursor:not-allowed;opacity:.6}.employee-detail-modal .btn-primary{background-color:#007bff;color:#fff}.employee-detail-modal .btn-primary:hover:not(:disabled){background-color:#1a2e5b}.employee-detail-modal .btn-secondary{background-color:#0000;border:1px solid #ddd;color:#4b5563}.employee-detail-modal .btn-secondary:hover:not(:disabled){background-color:#f8f9fa;border-color:#9ca3af}.employee-detail-modal .btn-danger{background-color:#dc3545;color:#fff}.employee-detail-modal .btn-danger:hover:not(:disabled){background-color:#bd2130}.employee-detail-modal .btn-success{background-color:#28a745;color:#fff}.employee-detail-modal .btn-success:hover:not(:disabled){background-color:#1e7e34}@media(max-width:768px){.employee-detail-modal{min-width:auto}.employee-detail-modal .modal-tabs{padding:0 .5rem}.employee-detail-modal .modal-tabs .tab-button{font-size:.875rem;padding:.5rem 1rem;width:50%}.employee-detail-modal .basic-info-tab,.employee-detail-modal .rates-tab{padding:.25rem .5rem 0}}.employee-list{background:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;height:100%}.employee-list .employee-list-header{border-bottom:1px solid #ddd;padding:1rem}.employee-list .employee-list-header h3{color:#343a40;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.employee-list .employee-list-header .search-section{margin-bottom:1rem}.employee-list .employee-list-header .search-section .search-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem 1rem;width:100%}.employee-list .employee-list-header .search-section .search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.employee-list .employee-list-header .search-section .search-input::placeholder{color:#999}.employee-list .employee-list-header .filter-section .filter-buttons{display:flex;gap:.25rem}.employee-list .employee-list-header .filter-section .filter-buttons button{background:#fff;border:1px solid #ddd;border-radius:4px;color:#343a40;cursor:pointer;font-size:.85rem;padding:.25rem .5rem;transition:all .2s ease}.employee-list .employee-list-header .filter-section .filter-buttons button:hover{background:#f8f9fa}.employee-list .employee-list-header .filter-section .filter-buttons button.active{background:#007bff;border-color:#007bff;color:#fff}.employee-list .employee-list-content{flex:1 1;overflow-y:auto;padding:.5rem 0}.employee-list .employee-list-content .no-employees{color:#666;padding:2rem;text-align:center}.employee-list .employee-list-content .no-employees p{margin:0}.employee-list .employee-list-content .employee-items{list-style:none;margin:0;padding:0}.employee-list .employee-list-content .employee-items li{margin:0}.employee-list .employee-list-content .employee-items li .employee-item{background:none;border:none;border-left:3px solid #0000;border-radius:0;cursor:pointer;padding:.5rem 1rem;text-align:left;transition:all .2s ease;width:100%}.employee-list .employee-list-content .employee-items li .employee-item:hover{background:#007bff0d}.employee-list .employee-list-content .employee-items li .employee-item.selected{background:#007bff1a;border-left-color:#007bff}.employee-list .employee-list-content .employee-items li .employee-item.selected .employee-name{color:#007bff;font-weight:500}.employee-list .employee-list-content .employee-items li .employee-item.inactive{opacity:.6}.employee-list .employee-list-content .employee-items li .employee-item.inactive .employee-name{color:#666}.employee-list .employee-list-content .employee-items li .employee-item .employee-info .employee-name{color:#343a40;font-size:1rem;font-weight:400;margin-bottom:.25rem;transition:color .2s ease}.employee-list .employee-list-content .employee-items li .employee-item .employee-info .employee-details{align-items:center;display:flex;font-size:.8rem;gap:.25rem}.employee-list .employee-list-content .employee-items li .employee-item .employee-info .employee-details .employee-type{color:#666;text-transform:capitalize}.employee-list .employee-list-content .employee-items li .employee-item .employee-info .employee-details .inactive-badge{background:#f1f3f4;border-radius:10px;color:#666;font-size:.7rem;font-weight:500;padding:2px 6px}.employee-list .employee-list-footer{background:#f8f9fa;border-top:1px solid #ddd;padding:.5rem 1rem}.employee-list .employee-list-footer .employee-count{color:#666;font-size:.8rem;margin:0;text-align:center}.employee-list.loading .loading-state{color:#666;padding:2rem;text-align:center}.employee-list.loading .loading-state p{margin:0}.all-timesheets{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;width:100%}.all-timesheets .all-timesheets-content{display:flex;gap:2rem;margin-top:1rem;min-height:600px;overflow:hidden}.all-timesheets .all-timesheets-content .employee-sidebar{flex-shrink:0;width:300px}.all-timesheets .all-timesheets-content .timesheet-viewer{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.all-timesheets .all-timesheets-content .timesheet-viewer .selected-employee-header{background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin-bottom:1rem;padding:1rem}.all-timesheets .all-timesheets-content .timesheet-viewer .selected-employee-header h2{color:#343a40;font-size:1.5rem;font-weight:600;margin:0 0 .25rem}.all-timesheets .all-timesheets-content .timesheet-viewer .selected-employee-header p{color:#666;font-size:.9rem;margin:0;text-transform:capitalize}.all-timesheets .all-timesheets-content .timesheet-viewer .no-timesheets{background:#f8f9fa;border-radius:4px;color:#666;margin:1rem 0;padding:2rem;text-align:center}.all-timesheets .all-timesheets-content .timesheet-viewer .no-timesheets p{font-size:1.1rem;margin:0}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info{align-items:center;background:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info h3{color:#343a40;font-size:1.2rem;margin:0}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info p{align-items:center;color:#666;display:flex;font-size:.9rem;gap:.5rem;margin:0}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info .status-badge{border-radius:12px;font-size:.8rem;font-weight:500;letter-spacing:.02em;padding:.25rem .5rem;text-transform:uppercase}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info .status-badge.draft{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info .status-badge.submitted{background:#d1ecf1;border:1px solid #b8daff;color:#0c5460}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info .status-badge.approved{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .week-info .status-badge.rejected{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .tabs{border-bottom:1px solid #ddd;display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .tabs button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .tabs button:hover{color:#343a40}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .tabs button.active{border-bottom:2px solid #007bff;color:#007bff}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .loading-timesheets{background:#f8f9fa;border-radius:4px;color:#666;padding:2rem;text-align:center}.all-timesheets .all-timesheets-content .timesheet-viewer .timesheet-content .loading-timesheets p{font-size:1.1rem;margin:0}.all-timesheets .all-timesheets-content .timesheet-viewer .no-employee-selected{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;flex-direction:column;height:400px;justify-content:center;text-align:center}.all-timesheets .all-timesheets-content .timesheet-viewer .no-employee-selected h3{color:#343a40;font-size:1.5rem;margin:0 0 1rem}.all-timesheets .all-timesheets-content .timesheet-viewer .no-employee-selected p{color:#666;font-size:1.1rem;margin:0}.all-timesheets-error,.all-timesheets-loading{align-items:center;display:flex;flex-direction:column;height:50vh;justify-content:center;text-align:center}.all-timesheets-error h3,.all-timesheets-loading h3{color:#343a40;margin:0 0 1rem}.all-timesheets-error p,.all-timesheets-loading p{color:#666;margin:0 0 1rem}.all-timesheets-error button,.all-timesheets-loading button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:background .2s ease}.all-timesheets-error button:hover,.all-timesheets-loading button:hover{background:#0062cc}@media(max-width:992px){.all-timesheets .all-timesheets-content{flex-direction:column;gap:1rem}.all-timesheets .all-timesheets-content .employee-sidebar{order:2;width:100%}.all-timesheets .all-timesheets-content .timesheet-viewer{order:1}}@media(max-width:768px){.all-timesheets{padding:1rem}.all-timesheets .all-timesheets-header h1{font-size:1.5rem}.all-timesheets .all-timesheets-header p{font-size:1rem}.all-timesheets .timesheet-viewer .week-info{align-items:flex-start;flex-direction:column;gap:.5rem}.all-timesheets .timesheet-viewer .tab-navigation{flex-wrap:wrap}}.form-content{padding-top:2rem}.form-sections .form-section{margin-bottom:2rem}.form-sections .form-section:last-child{margin-bottom:0}.form-sections .form-section .section-title{border-bottom:1px solid #ddd;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.project-details{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-top:.5rem;padding:1rem}.project-details .detail-row{display:flex;margin-bottom:.5rem}.project-details .detail-row:last-child{margin-bottom:0}.project-details .detail-row .label{font-weight:600;margin-right:1rem;min-width:80px}.project-details .detail-row .label,.project-details .detail-row .value{color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.project-details .detail-row .value{flex:1 1}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1 1}@media(max-width:768px){.form-row{flex-direction:column;gap:0}.form-row .form-group{margin-bottom:1rem}}.currency-input .currency-symbol{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600}.currency-input input{padding-left:calc(.5rem + 20px)}.currency-input input,.form-group input[type=date],.form-group input[type=number],.form-group input[type=text]{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;min-height:46px}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;color:#343a40;font-size:.875rem;padding:0 1rem}.form-group input[type=date]:focus,.form-group input[type=number]:focus,.form-group input[type=text]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.form-group input[type=date].error,.form-group input[type=number].error,.form-group input[type=text].error{border-color:#dc3545}.calculation-summary{background:#007bff0d;border:1px solid #007bff33;border-radius:4px;margin-top:1rem;padding:1rem}.calculation-summary .calc-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.calculation-summary .calc-row:last-child{margin-bottom:0}.calculation-summary .calc-row.total{border-top:1px solid #007bff4d;font-weight:600;margin-top:.5rem;padding-top:.5rem}.calculation-summary .calc-row.total .label,.calculation-summary .calc-row.total .value{color:#1a2e5b;font-size:1.1em}.calculation-summary .calc-row .label{color:#343a40}.calculation-summary .calc-row .label,.calculation-summary .calc-row .value{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.calculation-summary .calc-row .value{color:#007bff;font-weight:600}#notes-section{margin-top:2rem}textarea::placeholder{color:#999}.modal-content>.project-detail-modal{display:block;height:auto!important;max-height:100%;overflow:visible}.modal-content>.project-detail-modal .modal-body{max-height:calc(90vh - 200px);overflow-x:hidden;overflow-y:auto!important;padding:0!important}.modal-content>.project-detail-modal .project-detail-form{padding:2rem 1.2rem}.readonly-field-text{align-items:center;background:#0000;background-color:#f8f9fa4d;border:1px solid #0000;color:#343a40;color:#4b545c;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-style:italic;line-height:1.5;min-height:44px;padding:.25rem .5rem}.currency-input{align-items:center;display:flex;position:relative;width:100%}.currency-input .currency-symbol{color:#343a40;font-size:.875rem;font-weight:500;left:.5rem;pointer-events:none;position:absolute;z-index:1}.currency-input input[type=number]{-moz-appearance:textfield;padding-left:32px;padding-right:.5rem;width:100%}.currency-input input[type=number]::-webkit-inner-spin-button,.currency-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}textarea{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;line-height:1.5;min-height:80px;padding:.25rem .5rem;resize:vertical;transition:all .2s ease;width:100%}textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}textarea::placeholder{color:#96a0aa;font-style:italic}textarea.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.user-avatar-container{display:inline-block;position:relative}.user-avatar{align-items:center;background-color:#6c757d;border:none;border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;transition:all .2s ease;width:40px}.user-avatar:hover{background-color:#5a6268;box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.user-avatar:focus{box-shadow:0 0 0 2px #007bff4d;outline:none}.user-avatar .user-initials{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:600;line-height:1;text-transform:uppercase}.user-dropdown{animation:dropdownFadeIn .15s ease-out;background:#fff;border:1px solid #ddd;border-radius:4px;bottom:calc(100% + 8px);box-shadow:0 4px 16px #00000026;left:0;min-width:220px;position:absolute;z-index:1040}.user-dropdown .user-dropdown-header{border-bottom:1px solid #f0f0f0;padding:12px 16px}.user-dropdown .user-dropdown-header .user-email{color:#6c757d;font-size:14px;font-weight:500;word-break:break-word}.user-dropdown .user-dropdown-divider{background-color:#f0f0f0;height:1px}.user-dropdown .user-dropdown-actions{padding:8px 0}.user-dropdown .user-dropdown-actions .dropdown-action{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;gap:8px;padding:8px 16px;text-align:left;transition:background-color .2s ease;width:100%}.user-dropdown .user-dropdown-actions .dropdown-action:hover:not(:disabled){background-color:#f8f9fa}.user-dropdown .user-dropdown-actions .dropdown-action:disabled{color:#6c757d;cursor:not-allowed;opacity:.6}.user-dropdown .user-dropdown-actions .dropdown-action.sign-out-action{color:#dc3545}.user-dropdown .user-dropdown-actions .dropdown-action.sign-out-action:hover:not(:disabled){background-color:#dc35451a}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:576px){.user-avatar{height:36px;width:36px}.user-avatar .user-initials{font-size:13px}.user-dropdown{left:-8px;min-width:200px}.user-dropdown .user-dropdown-header{padding:10px 14px}.user-dropdown .user-dropdown-header .user-email{font-size:13px}.user-dropdown .user-dropdown-actions .dropdown-action{font-size:13px;padding:7px 14px}}
/*# sourceMappingURL=main.fda7f8b5.css.map*/