:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.grid-filter-panel{padding:6px;border-radius:12px;color:var(--mud-palette-text-primary);background-color:var(--mud-palette-surface);transition:box-shadow .3s cubic-bezier(.4,0,.2,1) 0ms;border:1px solid var(--mud-palette-lines-default)}.grid-filter-date-picker{cursor:pointer;position:relative;border-width:0px}.grid-filter-header{color:#000}.grid-filter-panel-top-row{margin-top:12px!important}.grid-filter-icon,.grid-filter-header{color:var(--mud-palette-text-primary)}.hourly-time-grid__table{border-collapse:collapse;width:100%;border-radius:12px}.hourly-time-grid__table th{font-size:12px!important;padding:10px 16px!important}.hourly-time-grid__table td{font-size:12px!important;padding:8px 16px!important}.hourly-time-grid__table input[type=checkbox]{accent-color:#4da6ff;width:16px;height:16px}.hourly-time-grid__pagination-controls button{font-size:12px!important;padding:6px 12px!important}.hourly-time-grid__controls-bar button{font-size:13px!important;padding:6px 12px!important}.date-range-picker-dialog .MuiDialog-paper{background-color:#1e1e1e;color:#ffffffde}.date-range-picker-dialog .MuiDialogTitle-root{background-color:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.12);color:#ffffffde;padding:16px 24px}.date-range-picker-dialog .MuiDialogContent-root{background-color:#1e1e1e;padding:24px}.date-range-picker-dialog .MuiDialogActions-root{background-color:#2a2a2a;border-top:1px solid rgba(255,255,255,.12);padding:16px 24px}.date-range-picker__quick-select{margin-bottom:16px}.date-range-picker__quick-select .MuiButton-outlined{border-color:#ffffff1f;color:#ffffffde;background-color:#2a2a2a}.date-range-picker__quick-select .MuiButton-outlined:hover{background-color:#4da6ff1a;border-color:#4da6ff;color:#4da6ff}.date-range-picker__range-display{background-color:#2a2a2a;border:1px solid rgba(255,255,255,.12);border-radius:4px}.date-range-picker__range-display .MuiTypography-caption{color:#ffffff80}.date-range-picker__range-display .MuiTypography-body1{color:#ffffffde}.date-range-picker__calendar{background-color:#2a2a2a;border-radius:4px;overflow:hidden;width:100%}.date-range-picker__calendar .MuiPickersCalendarHeader-root{color:#ffffffde;background-color:#2a2a2a;border-bottom:1px solid rgba(255,255,255,.12);padding:12px;margin:0}.date-range-picker__calendar .MuiPickersCalendarHeader-label{color:#ffffffde;font-weight:600}.date-range-picker__calendar .MuiPickersArrowSwitcher-button{color:#ffffffde}.date-range-picker__calendar .MuiPickersArrowSwitcher-button:hover{background-color:#4da6ff1a}.date-range-picker__calendar .MuiDayCalendar-header{background-color:#2a2a2a}.date-range-picker__calendar .MuiDayCalendar-weekDayLabel{color:#ffffff80;font-weight:600}.date-range-picker__calendar .MuiPickersDay-root{color:#ffffffde;background-color:transparent;border-radius:4px}.date-range-picker__calendar .MuiPickersDay-root:hover{background-color:#4da6ff26}.date-range-picker__calendar .MuiPickersDay-root.Mui-selected{background-color:#4da6ff!important;color:#fff!important;font-weight:600}.date-range-picker__calendar .MuiPickersDay-root.Mui-selected:hover{background-color:#4da6ffd9!important}.date-range-picker__calendar .MuiPickersDay-today{border:2px solid #4da6ff!important;background-color:#4da6ff0d}.date-range-picker__calendar .MuiPickersDay-today.Mui-selected{border-color:#fff!important}.date-range-picker__calendar .MuiPickersDay-root:not(.Mui-selected):not(.MuiPickersDay-today):focus{background-color:#4da6ff1a}.date-range-picker__calendar .MuiPickersDay-root.MuiPickersDay-dayOutsideMonth{color:#ffffff4d;opacity:.4}.date-range-picker__calendar .MuiPickersDay-root.Mui-disabled{color:#ffffff4d;opacity:.3}.date-range-picker__calendar .MuiDayCalendar-monthContainer,.date-range-picker__calendar .MuiDayCalendar-slideTransition{background-color:#2a2a2a}.date-range-picker__calendar .MuiPickersCalendarHeader-switchViewButton{color:#ffffffde}.date-range-picker__calendar .MuiPickersCalendarHeader-switchViewButton:hover{background-color:#4da6ff1a}.date-range-picker-dialog .MuiButton-outlined{border-color:#ffffff1f;color:#ffffffde;background-color:#2a2a2a}.date-range-picker-dialog .MuiButton-outlined:hover{background-color:#ffffff0d;border-color:#ffffff4d}.date-range-picker-dialog .MuiButton-contained{background-color:#4da6ff;color:#fff}.date-range-picker-dialog .MuiButton-contained:hover{background-color:#4da6ffd9;box-shadow:0 2px 4px #0003}.date-range-picker__section-label{color:#ffffff80;font-weight:500}.date-range-picker__calendar .MuiPickersDay-root.in-range{background-color:#4da6ff33!important;color:#ffffffde!important}.date-range-picker__calendar .MuiPickersDay-root.in-range:hover{background-color:#4da6ff4d!important}.date-range-picker__calendar .MuiPickersDay-root.range-start,.date-range-picker__calendar .MuiPickersDay-root.range-end{background-color:#4da6ff!important;color:#fff!important;font-weight:700}.date-range-picker__calendar .MuiPickersDay-root.range-start:not(.range-end){border-radius:50% 0 0 50%}.date-range-picker__calendar .MuiPickersDay-root.range-end:not(.range-start){border-radius:0 50% 50% 0}.date-range-picker__calendar .MuiPickersDay-root.range-start.range-end{border-radius:50%}.filter-panel{width:0;min-width:0;height:100%;background-color:var(--theme-background);border-right:none;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;color:var(--theme-text-primary)}.filter-panel.open{width:320px;min-width:320px;border-right:none;box-shadow:none}.filter-panel__header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:none;background-color:transparent;flex-shrink:0}.filter-panel__header-content{display:flex;flex-direction:column;gap:.25rem}.filter-panel__header h3{margin:0;font-size:1.1rem;font-weight:500;color:var(--theme-text-primary)}.filter-panel__current-view{font-size:.75rem;color:var(--theme-text-secondary);font-weight:400;text-transform:uppercase;letter-spacing:.5px}.filter-panel__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--theme-text-secondary);padding:.25rem .5rem;line-height:1;transition:color .2s ease}.filter-panel__close:hover{color:var(--theme-text-primary)}.filter-panel__content{padding:1rem;flex:1;overflow-y:auto;overflow-x:hidden}.filter-panel__section{margin-bottom:2rem}.filter-panel__section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--theme-text-primary, #333)}.filter-panel__content .MuiAccordion-root{background-color:transparent!important;background-image:none!important;color:var(--theme-text-primary);box-shadow:none!important;border:none;margin-bottom:0;border-radius:0!important}.filter-panel__content .MuiAccordion-root:first-of-type{border-top-left-radius:0!important;border-top-right-radius:0!important}.filter-panel__content .MuiAccordion-root:last-of-type{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.filter-panel__content .MuiAccordion-root:before{display:none}.filter-panel__content .MuiAccordionSummary-root{background-color:transparent;min-height:48px;padding:0 1rem;border-bottom:none}.filter-panel__content .MuiAccordionSummary-root:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,transparent)}.filter-panel__content .MuiAccordionSummary-content{margin:12px 0;width:100%}.filter-panel__content .MuiAccordionSummary-expandIconWrapper{color:var(--theme-text-secondary);transition:transform .2s ease}.filter-panel__content .MuiAccordionSummary-expandIconWrapper.Mui-expanded{transform:rotate(180deg)}.filter-panel__content .MuiAccordionDetails-root{padding:.5rem 1rem 1rem;display:flex;flex-direction:column;gap:.75rem;background-color:transparent;border-top:none}.filter-panel__accordion-title{margin:0;font-size:.9rem;font-weight:400;color:var(--theme-text-primary);letter-spacing:.02em}.filter-panel__accordion-controls{display:flex;justify-content:flex-end;margin-bottom:.75rem}.filter-panel__search-container{position:relative;margin-bottom:.75rem}.filter-panel__search-container:before{position:absolute;top:50%;transform:translateY(-50%);color:var(--theme-text-secondary);font-size:.9rem;pointer-events:none;z-index:1}.filter-panel__search-input{width:100%;padding:.5rem .5rem .5rem 2.25rem;border:1px solid var(--theme-divider);border-radius:4px;background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:.85rem;transition:border-color .2s ease,background-color .2s ease}.filter-panel__search-input:focus{outline:none;border-color:var(--theme-primary);background-color:var(--theme-paper)}.filter-panel__search-input::placeholder{color:var(--theme-text-secondary)}.filter-panel__search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--theme-text-secondary, #666);font-size:1rem;cursor:pointer;padding:.25rem;line-height:1;border-radius:var(--theme-border-radius, 4px);transition:color .2s ease,background-color .2s ease}.filter-panel__search-clear:hover{background-color:color-mix(in srgb,var(--theme-text-primary, #000) 5%,transparent);color:var(--theme-text-primary, #000)}.filter-panel__range-display{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--theme-background, #f9f9f9);border:1px solid var(--theme-divider, #e0e0e0);border-radius:var(--theme-border-radius, 4px);margin-bottom:1rem;font-weight:500;color:var(--theme-text-primary, #333)}.filter-panel__range-display span:first-child,.filter-panel__range-display span:last-child{color:var(--theme-primary, #007bff);font-weight:600}.range-slider-container{position:relative;width:100%;height:50px;margin:1.5rem 0}.range-slider-track{position:absolute;top:50%;transform:translateY(-50%);width:100%;height:6px;background:var(--theme-divider, #e0e0e0);border-radius:3px;pointer-events:none}.range-slider-range{position:absolute;height:100%;background:var(--theme-primary, #007bff);border-radius:3px;pointer-events:none;transition:all .1s ease}.range-slider-input{position:absolute;width:100%;height:6px;top:50%;transform:translateY(-50%);background:transparent;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}.range-slider-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--theme-paper, white);border:3px solid var(--theme-primary, #007bff);cursor:pointer;pointer-events:all;transition:all .2s ease;box-shadow:0 2px 4px #0003}.range-slider-input::-webkit-slider-thumb:hover{transform:scale(1.2);border-color:var(--theme-primary, #007bff);box-shadow:0 3px 6px #0000004d}.range-slider-input::-webkit-slider-thumb:active{transform:scale(1.1);box-shadow:0 2px 4px #0000004d}.range-slider-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--theme-paper, white);border:3px solid var(--theme-primary, #007bff);cursor:pointer;pointer-events:all;transition:all .2s ease;box-shadow:0 2px 4px #0003}.range-slider-input::-moz-range-thumb:hover{transform:scale(1.2);border-color:var(--theme-primary, #007bff);box-shadow:0 3px 6px #0000004d}.range-slider-input::-moz-range-thumb:active{transform:scale(1.1);box-shadow:0 2px 4px #0000004d}.range-slider-input--max{z-index:2}.range-slider-input--min{z-index:3}.filter-panel__values{display:flex;gap:1rem;margin-bottom:1rem}.filter-panel__value-input{flex:1;display:flex;flex-direction:column;gap:.5rem}.filter-panel__value-input label{font-size:.85rem;font-weight:500;color:var(--theme-text-secondary, #555)}.filter-panel__number-input{width:100%;padding:.5rem;border:1px solid var(--theme-divider, #e0e0e0);border-radius:var(--theme-border-radius, 4px);background-color:var(--theme-background, #f9f9f9);color:var(--theme-text-primary, #333);font-size:.9rem;transition:border-color .2s ease}.filter-panel__number-input:focus{outline:none;border-color:var(--theme-primary, #007bff);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary, #007bff) 20%,transparent)}.filter-panel__reset{width:100%;padding:.5rem 1rem;background-color:var(--theme-background, #f0f0f0);border:1px solid var(--theme-divider, #ccc);border-radius:var(--theme-border-radius, 4px);cursor:pointer;font-size:.9rem;color:var(--theme-text-primary, #333);transition:background-color .2s ease}.filter-panel__reset:hover{background-color:var(--theme-divider, #e0e0e0)}.filter-panel__reset-all{width:100%;padding:.75rem 1rem;background-color:var(--theme-primary, #007bff);color:#fff;border:none;border-radius:var(--theme-border-radius, 4px);cursor:pointer;font-size:.95rem;font-weight:600;transition:background-color .2s ease}.filter-panel__reset-all:hover{background-color:color-mix(in srgb,var(--theme-primary, #007bff) 85%,black)}.filter-panel__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.filter-panel__section-header h4{margin:0}.filter-panel__select-all{padding:.25rem .5rem;background-color:transparent;color:var(--theme-primary, #007bff);border:1px solid var(--theme-primary, #007bff);border-radius:var(--theme-border-radius, 4px);cursor:pointer;font-size:.8rem;transition:all .2s ease}.filter-panel__select-all:hover{background-color:var(--theme-primary, #007bff);color:#fff}.filter-panel__checkbox-list{height:200px;min-height:200px;max-height:200px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:4px;padding:0;background-color:var(--theme-paper)}.filter-panel__checkbox-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;cursor:pointer;border-radius:0;transition:background-color .2s ease;border-bottom:1px solid var(--theme-divider)}.filter-panel__checkbox-item:last-child{border-bottom:none}.filter-panel__checkbox-item:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))}.filter-panel__checkbox-item input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--theme-primary);flex-shrink:0}.filter-panel__checkbox-item span{flex:1;font-size:.85rem;color:var(--theme-text-primary)}.filter-panel__checkbox-item-count{font-size:.8rem;color:var(--theme-text-secondary);font-weight:400;padding:.15rem .5rem;border-radius:3px;background-color:color-mix(in srgb,var(--theme-text-primary) 5%,transparent)}.filter-panel__empty{padding:1rem;text-align:center;color:var(--theme-text-secondary, #999);font-style:italic;font-size:.85rem}.filter-panel__checkbox-list::-webkit-scrollbar{width:8px}.filter-panel__checkbox-list::-webkit-scrollbar-track{background:var(--scrollbar-track, #f1f1f1);border-radius:4px}.filter-panel__checkbox-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #888);border-radius:4px}.filter-panel__checkbox-list::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #555)}.filter-panel__status-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding:0 .5rem}.filter-panel__status-btn{flex:1;min-width:calc(50% - .375rem);display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem .75rem;border-radius:6px;border:1px solid var(--theme-divider);background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-panel__status-btn:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,var(--theme-paper));border-color:var(--theme-text-secondary)}.filter-panel__status-btn--duplicate.active{background-color:#ffc10733;border-color:#ffc107;color:#ffc107}.filter-panel__status-btn--duplicate.active:hover{background-color:#ffc1074d}.filter-panel__status-btn--error.active{background-color:#f4433633;border-color:#f44336;color:#f44336}.filter-panel__status-btn--error.active:hover{background-color:#f443364d}.filter-panel__status-icon{font-size:1rem}.filter-panel__status-label{font-size:.8rem}.filter-panel__status-count{background-color:color-mix(in srgb,var(--theme-text-primary) 15%,transparent);padding:.1rem .4rem;border-radius:10px;font-size:.75rem;font-weight:600;min-width:1.25rem;text-align:center}.filter-panel__status-btn--duplicate.active .filter-panel__status-count{background-color:#ffc10766;color:#fff}.filter-panel__status-btn--error.active .filter-panel__status-count{background-color:#f4433666;color:#fff}.filter-panel__status-btn--pto.active{background-color:#2196f333;border-color:#2196f3;color:#2196f3}.filter-panel__status-btn--pto.active:hover{background-color:#2196f34d}.filter-panel__status-btn--pto.active .filter-panel__status-count{background-color:#2196f366;color:#fff}.filter-panel__status-btn--pending.active{border-color:#ff9800;background-color:#ff9800b3}.filter-panel__status-btn--pending.active:hover{background-color:#f5c627cc}.filter-panel__status-btn--pending.active .filter-panel__status-count{background-color:#f5c62714;color:#fff}tr.allocation-row td.allocation-row__spacer,tr.allocation-row--grouped td.allocation-row__spacer{width:40px!important;max-width:40px!important;min-width:40px!important;padding:0!important;border-left:3px solid var(--theme-primary)!important}tr.allocation-row td.allocation-row__action-bar,tr.allocation-row td.allocation-row__empty,tr.allocation-row td.allocation-row__content,tr.allocation-row--grouped td.allocation-row__action-bar,tr.allocation-row--grouped td.allocation-row__empty,tr.allocation-row--grouped td.allocation-row__content{padding:12px 16px!important;border-bottom:1px solid var(--theme-divider)!important;vertical-align:top!important;background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))!important;overflow:visible!important;white-space:normal!important;max-width:none!important}tr.allocation-row td.allocation-row__action-bar,tr.allocation-row--grouped td.allocation-row__action-bar{padding:8px 12px!important;background-color:color-mix(in srgb,var(--theme-primary) 6%,var(--theme-paper))!important}.allocation-row__buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}tr.allocation-row td.allocation-row__empty,tr.allocation-row--grouped td.allocation-row__empty{text-align:center!important;color:var(--theme-text-secondary)!important;font-style:italic!important}tr.allocation-row--grouped td.allocation-row__action-bar,tr.allocation-row--grouped td.allocation-row__empty,tr.allocation-row--grouped td.allocation-row__content{background-color:color-mix(in srgb,var(--theme-primary) 6%,var(--theme-paper))!important}.allocation-row__edit-btn{padding:6px 14px;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.allocation-row__edit-btn:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.allocation-row__round-btn{padding:6px 14px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.allocation-row__round-btn:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.allocation-row__add-btn{padding:6px 14px;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.allocation-row__add-btn:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 2px 4px #0003}tr.allocation-row--void{opacity:.6}tr.allocation-row--void td,.allocation-row__content--void .allocation-row__label,.allocation-row__content--void .allocation-row__value{text-decoration:line-through;text-decoration-color:var(--theme-error, #f44336);color:var(--theme-text-secondary)!important}.hourly-time-grid{color:var(--theme-text-primary);height:calc(100vh - 90px);max-height:calc(100vh - 90px);overflow:hidden;position:relative}.hourly-time-grid__layout{display:flex;height:100%;width:100%;overflow:hidden}.hourly-time-grid__main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-left:20px;padding-right:20px;padding-bottom:10px;transition:margin-left .3s ease;height:100%}.hourly-time-grid__header{margin-bottom:10px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.hourly-time-grid__header-actions{display:flex;gap:12px;align-items:center}.filter-toggle-button{display:flex;align-items:center;gap:8px;padding:10px 16px;border:solid 1px var(--theme-divider);border-radius:var(--theme-border-radius, 4px);color:var(--mud-palette-text-primary);background-color:transparent;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.filter-toggle-button:hover{box-shadow:0 3px 6px #00000026;transform:translateY(-1px)}.filter-toggle-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.filter-icon{font-size:16px;display:inline-block;margin-right:auto}.hourly-time-grid__toolbar{display:flex;justify-content:flex-start;align-items:center;margin:16px 0;gap:16px;flex-wrap:wrap;flex-shrink:0}.hourly-time-grid__search-container{position:relative;flex:1;min-width:300px;max-width:500px}.hourly-time-grid__search-input{width:100%;padding:10px 40px 10px 16px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);font-size:14px;background-color:var(--theme-paper);color:var(--theme-text-primary);transition:border-color .2s,box-shadow .2s}.hourly-time-grid__search-input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 10%,transparent)}.hourly-time-grid__search-input::placeholder{color:var(--theme-text-secondary)}.hourly-time-grid__clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--theme-text-secondary);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:var(--theme-border-radius);transition:background-color .2s,color .2s}.hourly-time-grid__clear-btn:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,transparent);color:var(--theme-text-primary)}.hourly-time-grid__stats{font-size:14px;color:var(--theme-text-secondary);white-space:nowrap}.hourly-time-grid__loading{display:flex;justify-content:center;align-items:center;padding:40px;font-size:16px;color:var(--theme-text-secondary)}.hourly-time-grid__table-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;background-color:color-mix(in srgb,var(--theme-paper) 80%,transparent);z-index:20;font-size:16px;color:var(--theme-text-secondary)}.hourly-time-grid__error{padding:20px;background-color:color-mix(in srgb,var(--theme-error) 10%,transparent);border:1px solid color-mix(in srgb,var(--theme-error) 30%,transparent);border-radius:var(--theme-border-radius);color:var(--theme-error);flex-shrink:0}.hourly-time-grid__table-wrapper{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.hourly-time-grid__table-container{flex:1;overflow-y:auto;overflow-x:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);box-shadow:0 1px 3px color-mix(in srgb,var(--theme-text-primary) 10%,transparent);position:relative;min-height:0}.hourly-time-grid__controls-bar+.hourly-time-grid__table-wrapper .hourly-time-grid__table-container,.hourly-time-grid__controls-bar+.hourly-time-grid__table-wrapper{border-radius:0 0 var(--theme-border-radius) var(--theme-border-radius)}.hourly-time-grid__table{width:100%;border-collapse:collapse;background-color:var(--theme-paper);table-layout:fixed}.hourly-time-grid__table thead{position:sticky;top:0;z-index:10;background-color:var(--theme-background)}.hourly-time-grid__table th{background-color:var(--theme-background);padding:12px 16px;text-align:left;font-weight:600;border-bottom:2px solid var(--theme-divider);color:var(--theme-text-primary)}.sortable-header{display:flex;align-items:center;gap:4px}.sortable-header:hover{color:var(--theme-primary)}.hourly-time-grid__table td{padding:12px 16px;border-bottom:1px solid var(--theme-divider);color:var(--theme-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hourly-time-grid__table tbody tr:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));cursor:pointer}.hourly-time-grid__table tbody tr:last-child td{border-bottom:none}.hourly-time-grid__detail-key{font-weight:500;color:#4da6ff}.hourly-time-grid__resource{color:var(--theme-text-primary)}.hourly-time-grid__user{font-weight:500}.hourly-time-grid__date{color:var(--theme-text-secondary);white-space:nowrap}.hourly-time-grid__hours{text-align:right;font-weight:500;color:#4da6ff}.skeleton-row{animation:pulse 1.5s ease-in-out infinite}.skeleton-row td{padding:12px 16px}.skeleton-cell{height:16px;background:linear-gradient(90deg,color-mix(in srgb,var(--theme-divider) 60%,transparent),color-mix(in srgb,var(--theme-divider) 40%,transparent),color-mix(in srgb,var(--theme-divider) 60%,transparent));background-size:200% 100%;border-radius:4px;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.empty-state-row{cursor:default}.empty-state-row:hover{background-color:transparent!important}.empty-state-cell{padding:0!important;border-bottom:none!important}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;gap:16px}.empty-state__icon{font-size:64px;opacity:.3;filter:grayscale(1)}.empty-state__title{font-size:20px;font-weight:600;color:var(--theme-text-primary);margin:0}.empty-state__message{font-size:14px;color:var(--theme-text-secondary);max-width:400px;line-height:1.5}.hourly-time-grid__empty{padding:40px;text-align:center;color:var(--theme-text-secondary);font-style:italic}.hourly-time-grid__controls-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:var(--theme-background);border:1px solid var(--theme-divider);border-bottom:none;border-radius:var(--theme-border-radius) var(--theme-border-radius) 0 0;gap:16px;flex-wrap:wrap}.hourly-time-grid__expand-controls{display:flex;gap:8px}.hourly-time-grid__control-btn{padding:6px 12px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s}.hourly-time-grid__control-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.hourly-time-grid__pagination-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hourly-time-grid__page-info{font-size:13px;color:var(--theme-text-secondary);white-space:nowrap}.hourly-time-grid__page-size-select{padding:6px 10px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer}.hourly-time-grid__page-size-select:focus{outline:none;border-color:var(--theme-primary)}.hourly-time-grid__page-buttons{display:flex;align-items:center;gap:4px}.hourly-time-grid__page-btn{padding:6px 10px;font-size:13px;font-weight:600;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s;min-width:32px}.hourly-time-grid__page-btn:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.hourly-time-grid__page-btn:disabled{opacity:.4;cursor:not-allowed}.hourly-time-grid__page-number{font-size:13px;color:var(--theme-text-primary);padding:0 8px;white-space:nowrap}.hourly-time-grid__pagination{display:flex;align-items:center;gap:12px;padding:16px;background-color:var(--theme-background);border-top:1px solid var(--theme-divider);flex-shrink:0}.hourly-time-grid__pagination-btn{padding:6px 12px;border:1px solid var(--theme-divider);background-color:var(--theme-paper);color:var(--theme-text-primary);cursor:pointer;border-radius:var(--theme-border-radius);font-size:14px;transition:background-color .2s}.hourly-time-grid__pagination-btn:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))}.hourly-time-grid__pagination-btn:disabled{cursor:not-allowed;opacity:.5;background-color:var(--theme-background)}.hourly-time-grid__pagination-info{font-size:14px;color:var(--theme-text-primary)}.hourly-time-grid__pagination-input{width:60px;padding:4px 8px;margin-left:8px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:14px}.hourly-time-grid__pagination-select{padding:6px 12px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);font-size:14px;background-color:var(--theme-paper);color:var(--theme-text-primary);cursor:pointer}.hourly-time-grid__pagination-select:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))}.hourly-time-grid__actions{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 10%,transparent);border-left:4px solid var(--theme-warning, #ff9800);border-radius:var(--theme-border-radius);gap:16px;flex-shrink:0}.hourly-time-grid__changes-summary{font-weight:600;color:var(--theme-text-primary);font-size:14px}.hourly-time-grid__action-buttons{display:flex;gap:12px}.hourly-time-grid__btn{padding:8px 16px;border:none;border-radius:var(--theme-border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.hourly-time-grid__btn:disabled{opacity:.6;cursor:not-allowed}.hourly-time-grid__btn--save{background-color:var(--theme-success, #4caf50);color:#fff}.hourly-time-grid__btn--save:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-success, #4caf50) 85%,black);box-shadow:0 2px 4px #0003}.hourly-time-grid__btn--discard{background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider)}.hourly-time-grid__btn--discard:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-error, #f44336) 10%,var(--theme-paper));border-color:var(--theme-error, #f44336);color:var(--theme-error, #f44336)}.hourly-time-grid__btn--filter{background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider)}.hourly-time-grid__btn--filter:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary)}.hourly-time-grid__btn--filter-active{background-color:var(--theme-primary);color:#fff;border-color:var(--theme-primary)}.hourly-time-grid__btn--filter-active:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 85%,black)}.hourly-time-grid__btn--custom-fields{background:none;color:var(--mud-palette-text-primary);border:none;padding:8px 12px;font-size:14px;transition:all .2s}.hourly-time-grid__btn--custom-fields:hover{background-color:#ffffff0d;color:#ffffffe6}.hourly-time-grid__btn--clear-grouping{background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);display:flex;align-items:center;gap:6px;white-space:nowrap}.hourly-time-grid__btn--clear-grouping:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-error, #f44336) 10%,var(--theme-paper));border-color:var(--theme-error, #f44336);color:var(--theme-error, #f44336)}.hourly-time-grid__editable-value{display:inline-block;padding:4px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s;min-width:40px;text-align:center}.hourly-time-grid__readonly-value{display:inline-block;padding:4px 8px;min-width:40px;text-align:center}.hourly-time-grid__editable-value:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));outline:1px solid color-mix(in srgb,var(--theme-primary) 30%,transparent)}.hourly-time-grid__editable-value--edited{background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 20%,var(--theme-paper));font-weight:600;border:1px solid var(--theme-warning, #ff9800)}.hourly-time-grid__editable-value--edited:hover{background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 30%,var(--theme-paper));outline:1px solid var(--theme-warning, #ff9800)}.hourly-time-grid__editable-input{width:80px;padding:4px 8px;border:2px solid var(--theme-primary);border-radius:4px;background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:14px;text-align:center;transition:border-color .2s}.hourly-time-grid__editable-input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 20%,transparent)}.hourly-time-grid__edit-note{padding:12px 16px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-primary) 10%,transparent);border-left:4px solid var(--theme-primary);border-radius:var(--theme-border-radius);color:var(--theme-text-primary);font-size:14px}.hourly-time-grid__updating{display:inline-block;padding:4px 8px;color:var(--theme-text-secondary);font-style:italic;font-size:13px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.expand-button{background:none;border:none;cursor:pointer;padding:4px 8px;color:var(--theme-text-primary);font-size:14px;transition:all .2s;border-radius:4px;display:flex;align-items:center;justify-content:center}.expand-button:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));color:var(--theme-primary)}.expand-button:active{transform:scale(.95)}.row-expanded{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.allocation-row{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper));border-left:3px solid var(--theme-primary)}.allocation-row--grouped,.allocation-row__action-bar{background-color:color-mix(in srgb,var(--theme-primary) 6%,var(--theme-paper));border-left:3px solid var(--theme-primary)}.allocation-row--grouped .allocation-row__spacer{width:40px;min-width:40px}.allocation-row--grouped .allocation-row__content{padding-left:8px}.allocation-row__spacer{width:40px;padding:0}.allocation-row__content{padding:12px 16px;white-space:normal;overflow:visible}.allocation-row__empty{text-align:center;color:var(--theme-text-secondary);font-style:italic;padding:16px}.allocation-row__details{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr;gap:8px 16px;align-items:center;padding:8px 12px;background-color:var(--theme-paper);border-radius:var(--theme-border-radius);border:1px solid var(--theme-divider)}.allocation-row__label{font-weight:600;color:var(--theme-text-secondary);font-size:13px;white-space:nowrap}.allocation-row__value{color:var(--theme-text-primary);font-size:14px}.allocation-row__value--non-billable{color:var(--theme-warning, #ff9800);font-weight:600}.row-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--theme-primary)}.row-checkbox:hover{transform:scale(1.1)}.multi-select-action-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-primary) 10%,transparent);border-left:4px solid var(--theme-primary);border-radius:var(--theme-border-radius);gap:16px;flex-wrap:wrap;flex-shrink:0}.multi-select-action-bar__info{display:flex;align-items:center;gap:16px}.multi-select-action-bar__count{font-weight:600;color:var(--theme-text-primary);font-size:14px}.multi-select-action-bar__clear-btn{padding:6px 12px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);font-size:13px;cursor:pointer;transition:all .2s}.multi-select-action-bar__clear-btn:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 10%,var(--theme-paper));border-color:var(--theme-error, #f44336);color:var(--theme-error, #f44336)}.multi-select-action-bar__actions{display:flex;gap:12px;align-items:center}.multi-select-action-bar__update-btn{padding:8px 16px;background-color:var(--theme-primary);color:#fff;border:none;border-radius:var(--theme-border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.multi-select-action-bar__update-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 85%,black);box-shadow:0 2px 4px #0003}.multi-select-action-bar__void-btn{background-color:var(--theme-error, #f44336)!important}.multi-select-action-bar__void-btn:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 85%,black)!important}.dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.dialog{background-color:var(--theme-paper);border-radius:var(--theme-border-radius);box-shadow:0 4px 20px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow:auto;animation:slideIn .2s ease}.dialog__header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--theme-divider)}.dialog__title{margin:0;font-size:18px;font-weight:600;color:var(--theme-text-primary)}.dialog__close-btn{background:none;border:none;font-size:28px;color:var(--theme-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.dialog__close-btn:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 10%,transparent);color:var(--theme-error, #f44336)}.dialog__content{padding:24px}.dialog__message{margin:0 0 20px;color:var(--theme-text-primary);font-size:14px;line-height:1.5}.dialog__input-group{display:flex;flex-direction:column;gap:8px}.dialog__label{font-weight:500;color:var(--theme-text-primary);font-size:14px}.dialog__input{padding:10px 12px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);color:var(--theme-text-primary);font-size:14px;transition:border-color .2s}.dialog__input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 20%,transparent)}.dialog__footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--theme-divider);background-color:var(--theme-background)}.dialog__btn{padding:10px 20px;border:none;border-radius:var(--theme-border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.dialog__btn--cancel{background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider)}.dialog__btn--cancel:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,var(--theme-paper))}.dialog__btn--confirm{background-color:var(--theme-primary);color:#fff}.dialog__btn--confirm:hover{background-color:color-mix(in srgb,var(--theme-primary) 85%,black);box-shadow:0 2px 4px #0003}.dialog__description{margin:0 0 20px;color:var(--theme-text-primary);font-size:14px;line-height:1.5}.dialog__button{padding:10px 20px;border:none;border-radius:var(--theme-border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.dialog__button--secondary{background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider)}.dialog__button--secondary:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,var(--theme-paper))}.dialog__button--primary{background-color:var(--theme-primary);color:#fff}.dialog__button--primary:hover{background-color:color-mix(in srgb,var(--theme-primary) 85%,black);box-shadow:0 2px 4px #0003}.dialog__checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--theme-text-primary);font-size:14px;padding:8px;border-radius:var(--theme-border-radius);transition:background-color .2s}.dialog__checkbox-label:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,transparent)}.dialog__checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--theme-primary)}.non-billable-checkbox-container{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s}.non-billable-checkbox-container:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,transparent)}.non-billable-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--theme-primary);transition:transform .2s}.non-billable-checkbox:hover{transform:scale(1.1)}.non-billable-checkbox--edited{accent-color:var(--theme-warning, #ff9800)}.non-billable-label{font-size:14px;color:var(--theme-text-primary);-webkit-user-select:none;user-select:none}.voided-row{opacity:.6}.voided-row td{text-decoration:line-through;text-decoration-color:var(--theme-error, #f44336);color:var(--theme-text-secondary)!important}.pto-row{background-color:color-mix(in srgb,var(--theme-info, #2196f3) 8%,var(--theme-paper))!important}.pto-row:hover{background-color:color-mix(in srgb,var(--theme-info, #2196f3) 12%,var(--theme-paper))!important}.error-row{background-color:color-mix(in srgb,var(--theme-error, #f44336) 8%,var(--theme-paper))!important}.error-row:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 12%,var(--theme-paper))!important}.row-menu-button{color:var(--theme-text-secondary)!important;padding:4px!important}.row-menu-button:hover{color:var(--theme-text-primary)!important;background-color:color-mix(in srgb,var(--theme-text-secondary) 10%,transparent)!important}.row-menu .MuiPaper-root{background-image:none!important;--Paper-overlay: none !important;color:var(--theme-text-primary)!important;border:1px solid var(--theme-divider, rgba(255, 255, 255, .12))!important}.row-menu .MuiMenuItem-root{color:var(--theme-text-primary)!important;font-size:.875rem;padding:8px 16px}.row-menu .MuiMenuItem-root:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))!important}.hourly-time-grid__toolbar{display:flex;justify-content:flex-start;align-items:center;gap:12px}.hourly-time-grid__edit-actions{display:flex;align-items:center;gap:12px;margin-left:auto;margin-right:8px;padding:8px 12px;background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 10%,transparent);border-left:3px solid var(--theme-warning, #ff9800);border-radius:var(--theme-border-radius)}.hourly-time-grid__toolbar-actions{display:flex;align-items:center;border:solid 1px var(--theme-divider);border-radius:var(--theme-border-radius, 4px);gap:8px}.refresh-button{color:var(--mud-palette-text-primary)!important;padding:8px!important}.refresh-button:hover{color:#ffffffe6!important;background-color:#ffffff0d!important}.column-visibility-button{color:var(--mud-palette-text-primary)!important;padding:8px!important}.column-visibility-button:hover{color:#ffffffe6!important;background-color:#ffffff0d!important}.column-visibility-menu .MuiPaper-root{opacity:1!important;background-image:none!important;--Paper-overlay: none !important;color:var(--theme-text-primary)!important;border:1px solid var(--theme-divider, rgba(255, 255, 255, .12))!important;min-width:200px}.column-visibility-menu__header{padding:12px 16px;font-weight:600;font-size:.875rem;color:var(--theme-text-primary);border-bottom:1px solid var(--theme-divider, rgba(255, 255, 255, .12))}.column-visibility-menu__item{padding:8px 16px!important;display:flex!important;align-items:center!important;gap:8px!important;color:var(--theme-text-primary)!important;font-size:.875rem!important}.column-visibility-menu__item:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))!important}.column-visibility-checkbox{color:#ffffff80!important}.column-visibility-checkbox.Mui-checked{color:var(--theme-primary)!important}.grouping-button{color:var(--mud-palette-text-primary)!important;padding:8px!important}.grouping-button:hover{color:#ffffffe6!important;background-color:#ffffff0d!important}.grouping-menu .MuiPaper-root{opacity:1!important;background-image:none!important;--Paper-overlay: none !important;color:var(--theme-text-primary)!important;border:1px solid var(--theme-divider, rgba(255, 255, 255, .12))!important;min-width:200px}.grouping-menu__header{padding:12px 16px;font-weight:600;font-size:.875rem;color:var(--theme-text-primary);border-bottom:1px solid var(--theme-divider, rgba(255, 255, 255, .12))}.grouping-menu__item{padding:8px 16px!important;display:flex!important;align-items:center!important;gap:8px!important;color:var(--theme-text-primary)!important;font-size:.875rem!important}.grouping-menu__item:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))!important}.grouping-checkbox{color:#ffffff80!important}.grouping-checkbox.Mui-checked{color:var(--theme-primary)!important}.group-header-row{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper))!important;border-bottom:1px solid var(--theme-divider, rgba(255, 255, 255, .12));border-top:2px solid var(--theme-primary)}.group-header-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 20%,var(--theme-paper))!important}.group-header-row td{padding-top:10px!important;padding-bottom:10px!important}.group-header-cell{font-weight:600;color:var(--theme-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-header-cell--title{overflow:visible}.group-header-cell .group-header-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-header-cell--count{text-align:left}.group-header-count{font-size:.8rem;font-weight:500;color:var(--theme-text-secondary);background-color:color-mix(in srgb,var(--theme-primary) 20%,transparent);padding:2px 10px;border-radius:12px;white-space:nowrap}.group-header-cell--hours{text-align:left;font-weight:700;font-size:.938rem}.group-header-content{display:flex;align-items:center;gap:12px}.group-expand-button{background:none;border:none;color:var(--theme-text-primary);cursor:pointer;padding:4px 8px;font-size:.875rem;display:flex;align-items:center;justify-content:center;min-width:24px;height:24px}.group-expand-button:hover{background-color:#ffffff1a;border-radius:4px}.group-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--theme-primary)}.group-header-label{color:var(--theme-text-primary);font-size:.938rem;font-weight:600;flex:1}.grouped-child-row{background-color:var(--theme-paper)!important;border-left:3px solid var(--theme-primary)}.grouped-child-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))!important}.grouped-child-row td:first-child{padding-left:24px!important}.group-summary-cell{font-weight:600;text-align:right}.group-summary-value{color:var(--theme-text-primary);font-size:.875rem}.group-summary-row{background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-paper))!important;border-bottom:2px solid var(--theme-primary)}.group-summary-footer-cell{padding:8px 16px!important;text-align:right}.group-summary-total{font-weight:700;font-size:.938rem;color:var(--theme-text-primary)}.hourly-time-grid__table-footer{position:sticky;bottom:0;z-index:10;background-color:var(--theme-background)}.totals-row{background-color:var(--theme-background)!important;border-top:2px solid var(--theme-primary);font-weight:600}.totals-row:hover{background-color:var(--theme-background)!important;cursor:default}.totals-cell{padding:14px 16px!important;color:var(--theme-text-primary);border-bottom:none!important}.totals-cell--label{display:flex;align-items:center;gap:16px}.totals-label{font-weight:700;font-size:.938rem;color:var(--theme-text-primary)}.totals-entries{font-size:.8rem;font-weight:500;color:var(--theme-text-secondary);background-color:color-mix(in srgb,var(--theme-primary) 20%,transparent);padding:4px 12px;border-radius:12px;white-space:nowrap}.totals-cell--hours{font-weight:700;font-size:1rem;color:#4da6ff}.view-switcher-menu{position:relative}.view-switcher-menu__button{color:var(--mud-palette-text-primary)!important;padding:8px!important}.view-switcher-menu__button:hover{color:#ffffffe6!important;background-color:#ffffff0d!important}.view-switcher-menu__dropdown{position:absolute;top:100%;right:0;margin-top:4px;background-color:var(--theme-paper);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);box-shadow:0 4px 12px #0000004d;min-width:200px;z-index:1000;overflow:hidden}.view-switcher-menu__header{padding:12px 16px;font-weight:600;font-size:.875rem;color:var(--theme-text-primary);border-bottom:1px solid var(--theme-divider);background-color:var(--theme-background)}.view-switcher-menu__item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;border:none;background:none;color:var(--theme-text-primary);font-size:14px;text-align:left;cursor:pointer;transition:background-color .2s}.view-switcher-menu__item:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))}.view-switcher-menu__item--active{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper));font-weight:600}.view-switcher-menu__check{color:var(--theme-primary);font-weight:700;margin-left:8px}.hourly-time-grid__view-placeholder{display:flex;justify-content:center;align-items:center;padding:60px 20px;border:2px dashed var(--theme-divider);border-radius:var(--theme-border-radius);background-color:color-mix(in srgb,var(--theme-background) 50%,transparent)}.hourly-time-grid__view-placeholder p{color:var(--theme-text-secondary);font-size:16px;font-style:italic;margin:0}.job-select-dialog{width:600px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column}.job-select-dialog__current{display:flex;align-items:center;gap:8px;padding:12px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-radius:var(--theme-border-radius);border:1px solid var(--theme-divider)}.job-select-dialog__current-label{font-size:13px;color:var(--theme-text-secondary);font-weight:500}.job-select-dialog__current-value{font-size:14px;color:var(--theme-text-primary);font-weight:600}.job-select-dialog__search{margin-bottom:16px}.job-select-dialog__search-input{width:100%;box-sizing:border-box}.job-select-dialog__loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--theme-text-secondary);font-style:italic}.job-select-dialog__list{max-height:400px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper)}.job-select-dialog__empty{padding:40px 20px;text-align:center;color:var(--theme-text-secondary);font-style:italic}.job-select-dialog__item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--theme-divider);transition:background-color .15s}.job-select-dialog__item:last-child{border-bottom:none}.job-select-dialog__item:hover:not(.job-select-dialog__item--current){background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-paper))}.job-select-dialog__item--selected{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper));border-left:3px solid var(--theme-primary);padding-left:13px}.job-select-dialog__item--current{background-color:var(--theme-background);cursor:default;opacity:.7}.job-select-dialog__item-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.job-select-dialog__item-number{font-size:13px;font-weight:600;color:#4da6ff}.job-select-dialog__item-name{font-size:14px;color:var(--theme-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-select-dialog__item-type{font-size:12px;color:var(--theme-text-secondary);padding:2px 8px;background-color:var(--theme-background);border-radius:4px;flex-shrink:0}.job-select-dialog__item-badge{font-size:11px;font-weight:600;color:var(--theme-text-secondary);padding:2px 6px;background-color:var(--theme-divider);border-radius:4px;flex-shrink:0}.job-cell--clickable{cursor:pointer;padding:4px 8px;margin:-4px -8px;border-radius:var(--theme-border-radius);transition:background-color .15s}.job-cell--clickable:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,transparent);color:var(--theme-primary)}.job-cell--edited{background-color:color-mix(in srgb,var(--theme-warning) 20%,transparent)}.allocation-row__content--edited{background-color:color-mix(in srgb,var(--theme-warning) 10%,transparent)}.allocation-row__value--edited{background-color:color-mix(in srgb,var(--theme-warning) 20%,transparent);padding:2px 6px;border-radius:3px;font-weight:500}.phase-remap-dialog{width:700px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.phase-remap-dialog__info{margin-bottom:20px}.phase-remap-dialog__message{font-size:14px;color:var(--theme-text-primary);margin:0 0 8px}.phase-remap-dialog__auto-match-info{font-size:13px;color:var(--theme-success, #22c55e);margin:0;padding:8px 12px;background-color:color-mix(in srgb,var(--theme-success, #22c55e) 10%,var(--theme-paper));border-radius:var(--theme-border-radius)}.phase-remap-dialog__loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--theme-text-secondary);font-style:italic}.phase-remap-dialog__allocations{display:flex;flex-direction:column;gap:16px;max-height:450px;overflow-y:auto}.phase-remap-dialog__allocation{border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);padding:16px;background-color:var(--theme-paper)}.phase-remap-dialog__allocation--auto-matched{border-color:var(--theme-success, #22c55e);background-color:color-mix(in srgb,var(--theme-success, #22c55e) 5%,var(--theme-paper))}.phase-remap-dialog__allocation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--theme-divider)}.phase-remap-dialog__current-phase{display:flex;flex-direction:column;gap:4px}.phase-remap-dialog__label{font-size:12px;color:var(--theme-text-secondary);font-weight:500;display:flex;align-items:center;gap:8px}.phase-remap-dialog__value{font-size:14px;color:var(--theme-text-primary);font-weight:500}.phase-remap-dialog__hours{font-size:14px;font-weight:600;color:#4da6ff;padding:4px 10px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-radius:var(--theme-border-radius)}.phase-remap-dialog__new-phase{display:flex;flex-direction:column;gap:8px}.phase-remap-dialog__auto-badge{font-size:10px;font-weight:600;color:var(--theme-success, #22c55e);padding:2px 6px;background-color:color-mix(in srgb,var(--theme-success, #22c55e) 15%,transparent);border-radius:4px;text-transform:uppercase}.phase-remap-dialog__selected{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border:1px solid var(--theme-primary);border-radius:var(--theme-border-radius)}.phase-remap-dialog__selected-value{font-size:14px;color:var(--theme-text-primary);font-weight:500}.phase-remap-dialog__change-btn{font-size:12px;color:var(--theme-primary);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:var(--theme-border-radius);transition:background-color .15s}.phase-remap-dialog__change-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,transparent)}.phase-remap-dialog__phase-picker{display:flex;flex-direction:column;gap:8px}.phase-remap-dialog__search-input{padding:8px 12px;font-size:13px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);color:var(--theme-text-primary)}.phase-remap-dialog__search-input:focus{outline:none;border-color:var(--theme-primary)}.phase-remap-dialog__phase-list{max-height:150px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background)}.phase-remap-dialog__no-phases{padding:20px;text-align:center;color:var(--theme-text-secondary);font-style:italic;font-size:13px}.phase-remap-dialog__phase-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:none;text-align:left;cursor:pointer;border-bottom:1px solid var(--theme-divider);transition:background-color .15s}.phase-remap-dialog__phase-option:last-child{border-bottom:none}.phase-remap-dialog__phase-option:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))}.phase-remap-dialog__phase-option--match{background-color:color-mix(in srgb,var(--theme-success, #22c55e) 10%,var(--theme-paper))}.phase-remap-dialog__phase-option--match:hover{background-color:color-mix(in srgb,var(--theme-success, #22c55e) 20%,var(--theme-paper))}.phase-remap-dialog__phase-code{font-size:13px;font-weight:600;color:#4da6ff;min-width:80px}.phase-remap-dialog__phase-desc{font-size:13px;color:var(--theme-text-primary)}.phase-select-dialog{width:550px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column}.phase-select-dialog__info{display:flex;flex-direction:column;gap:8px;padding:12px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-paper));border-radius:var(--theme-border-radius);border:1px solid var(--theme-divider)}.phase-select-dialog__job,.phase-select-dialog__current{display:flex;align-items:center;gap:8px}.phase-select-dialog__label{font-size:12px;color:var(--theme-text-secondary);font-weight:500;min-width:90px}.phase-select-dialog__value{font-size:14px;color:var(--theme-text-primary);font-weight:500}.phase-select-dialog__search{margin-bottom:16px}.phase-select-dialog__search-input{width:100%;box-sizing:border-box}.phase-select-dialog__loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--theme-text-secondary);font-style:italic}.phase-select-dialog__list{max-height:350px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper)}.phase-select-dialog__empty{padding:40px 20px;text-align:center;color:var(--theme-text-secondary);font-style:italic}.phase-select-dialog__item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--theme-divider);transition:background-color .15s}.phase-select-dialog__item:last-child{border-bottom:none}.phase-select-dialog__item:hover:not(.phase-select-dialog__item--current){background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-paper))}.phase-select-dialog__item--selected{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper));border-left:3px solid var(--theme-primary);padding-left:13px}.phase-select-dialog__item--current{background-color:var(--theme-background);cursor:default;opacity:.7}.phase-select-dialog__item-code{font-size:13px;font-weight:600;color:#4da6ff;min-width:80px}.phase-select-dialog__item-desc{font-size:14px;color:var(--theme-text-primary);flex:1}.phase-select-dialog__item-badge{font-size:11px;font-weight:600;color:var(--theme-text-secondary);padding:2px 6px;background-color:var(--theme-divider);border-radius:4px;flex-shrink:0}.phase-select-dialog__item-badge--inactive{color:var(--theme-warning, #f59e0b);background-color:color-mix(in srgb,var(--theme-warning, #f59e0b) 15%,transparent)}.dialog--notes{width:700px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.dialog__content--scrollable{max-height:500px;overflow-y:auto;padding:24px}.dialog__loading,.dialog__error,.dialog__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:16px}.dialog__loading p,.dialog__empty p{color:var(--theme-text-secondary);font-style:italic;margin:0}.dialog__error p{color:var(--theme-error, #f44336);margin:0 0 16px}.notes-list{display:flex;flex-direction:column;gap:16px}.note-item{padding:16px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);transition:box-shadow .2s}.note-item:hover{box-shadow:0 2px 8px #0000001a}.note-item__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--theme-divider)}.note-item__author{font-weight:600;font-size:14px;color:var(--theme-primary)}.note-item__date{font-size:12px;color:var(--theme-text-secondary)}.note-item__text{font-size:14px;line-height:1.6;color:var(--theme-text-primary);white-space:pre-wrap;word-break:break-word}.note-item__footer{margin-top:12px;padding-top:8px;border-top:1px solid var(--theme-divider)}.note-item__modified{font-size:11px;color:var(--theme-text-secondary);font-style:italic}.add-time-entry-dialog{width:700px;max-width:90vw;max-height:90vh;overflow-y:auto;overflow-x:hidden}.add-time-entry-dialog__form{display:flex;flex-direction:column;gap:16px;overflow-x:hidden}.form-field{display:flex;flex-direction:column;gap:6px;position:relative}.form-field__label{font-size:14px;font-weight:500;color:var(--theme-text-primary)!important}.add-time-entry-dialog .form-field__label{color:var(--theme-text-primary)!important}.form-field__label .required{color:var(--theme-error, #f44336);margin-left:2px}.form-field__input,.form-field__select{padding:8px 12px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius, 4px);background-color:var(--theme-background);color:var(--theme-text-primary);font-size:14px;min-width:0}.form-field__input[type=date],.form-field__input[type=time],.form-field__input[type=datetime-local]{color-scheme:light dark}.form-field__input[type=date]::-webkit-calendar-picker-indicator,.form-field__input[type=time]::-webkit-calendar-picker-indicator,.form-field__input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:var(--theme-calendar-icon-filter, invert(0));cursor:pointer}.add-time-entry-dialog__allocations .allocation-row .form-field__input{padding-right:50px}.form-field__input:focus,.form-field__select:focus{outline:none;border-color:var(--theme-primary, #007bff)}.form-field__input:disabled,.form-field__select:disabled{opacity:.6;cursor:not-allowed}.form-field--checkbox{flex-direction:row;align-items:center}.form-field__checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--theme-text-primary)!important}.add-time-entry-dialog .form-field__checkbox-label{color:var(--theme-text-primary)!important}.form-field__checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.add-time-entry-dialog__allocations{margin-top:8px;padding:16px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius, 4px);background-color:color-mix(in srgb,var(--theme-paper) 98%,var(--theme-primary));overflow-x:hidden}.add-time-entry-dialog__allocations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.add-time-entry-dialog__allocations-header h4{margin:0;font-size:16px;font-weight:600;color:var(--theme-text-primary)!important}.add-time-entry-dialog__allocations .allocation-row{display:grid;grid-template-columns:30px 2fr 1fr 40px;gap:12px;align-items:end;margin-bottom:12px;padding:12px;border-radius:var(--theme-border-radius, 4px);background-color:var(--theme-paper);overflow:hidden;max-width:100%}.add-time-entry-dialog__allocations .allocation-row--totals{grid-template-columns:30px 1fr 1fr;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));border:1px solid var(--theme-divider);font-weight:500}.add-time-entry-dialog__allocations .allocation-row__number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:var(--theme-primary, #007bff);color:#fff;font-size:12px;font-weight:600;margin-bottom:8px}.add-time-entry-dialog__allocations .allocation-row--totals .allocation-row__number{background-color:var(--theme-success, #4caf50)}.add-time-entry-dialog__allocations .allocation-row__remove{width:32px;height:32px;min-width:32px;border:none;border-radius:50%;background-color:var(--theme-error, #f44336);color:#fff;font-size:20px;line-height:1;cursor:pointer;transition:background-color .2s;margin-bottom:8px;flex-shrink:0}.form-field__hint{font-size:11px;color:var(--theme-text-secondary, #999);margin-left:4px;font-weight:400}.form-field__percent{position:absolute;right:12px;bottom:10px;font-size:12px;color:var(--theme-text-secondary, #999);pointer-events:none}.add-time-entry-dialog__allocations .allocation-row__remove:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 85%,black)}.allocation-total{display:flex;flex-direction:column;gap:4px;color:var(--theme-text-primary)!important}.allocation-warning{color:var(--theme-warning, #ff9800);font-size:12px;font-weight:400}.btn{padding:8px 16px;border:none;border-radius:var(--theme-border-radius, 4px);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn--sm{padding:6px 12px;font-size:13px}.btn--secondary{background-color:var(--theme-primary, #007bff);color:#fff}.btn--secondary:hover{background-color:color-mix(in srgb,var(--theme-primary, #007bff) 85%,black)}.btn--secondary:disabled{opacity:.5;cursor:not-allowed}.add-time-entry-dialog .MuiAutocomplete-root{width:100%}.add-time-entry-dialog .MuiOutlinedInput-root{background-color:var(--theme-background)!important;color:var(--theme-text-primary)!important;font-size:14px}.add-time-entry-dialog .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline,.add-time-entry-dialog .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--theme-divider)!important}.add-time-entry-dialog .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--theme-primary, #007bff)!important;border-width:1px}.add-time-entry-dialog .MuiOutlinedInput-root.Mui-disabled{opacity:.6;background-color:var(--theme-background)!important}.add-time-entry-dialog .MuiOutlinedInput-input{padding:8px 12px!important;color:var(--theme-text-primary)!important;background-color:transparent!important}.add-time-entry-dialog .MuiAutocomplete-input::placeholder{color:var(--theme-text-secondary, #999);opacity:1}.add-time-entry-dialog .MuiAutocomplete-endAdornment{right:8px}.add-time-entry-dialog .MuiAutocomplete-endAdornment .MuiSvgIcon-root,.add-time-entry-dialog .MuiAutocomplete-clearIndicator,.add-time-entry-dialog .MuiAutocomplete-popupIndicator{color:var(--theme-text-secondary, #999)}.MuiAutocomplete-popper{z-index:9999!important}.MuiAutocomplete-paper{background-color:var(--theme-paper)!important;color:var(--theme-text-primary)!important;border:1px solid var(--theme-divider)!important}.MuiAutocomplete-listbox{padding:4px 0;background-color:var(--theme-paper)!important}.MuiAutocomplete-option{font-size:14px;padding:8px 16px!important;color:var(--theme-text-primary)!important;background-color:var(--theme-paper)!important}.MuiAutocomplete-option:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))!important}.MuiAutocomplete-option[aria-selected=true]{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper))!important}.MuiAutocomplete-option.Mui-focused{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))!important}.MuiAutocomplete-noOptions,.MuiAutocomplete-loading{color:var(--theme-text-secondary, #999);font-size:14px;padding:12px 16px}.allocation-edit-dialog{width:700px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.allocation-edit-dialog__info{display:flex;flex-direction:column;gap:8px;padding:12px;margin-bottom:16px;background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-paper));border-radius:var(--theme-border-radius);border:1px solid var(--theme-divider)}.allocation-edit-dialog__job,.allocation-edit-dialog__hours{display:flex;align-items:center;gap:8px}.allocation-edit-dialog__label{font-size:12px;color:var(--theme-text-secondary);font-weight:500;min-width:90px}.allocation-edit-dialog__value{font-size:14px;color:var(--theme-text-primary);font-weight:500}.allocation-edit-dialog__loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--theme-text-secondary);font-style:italic}.allocation-edit-dialog__allocations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.allocation-edit-dialog__allocations-header h4{margin:0;font-size:16px;font-weight:600;color:var(--theme-text-primary)}.allocation-edit-dialog__allocations{display:flex;flex-direction:column;gap:16px;max-height:450px;overflow-y:auto}.allocation-edit-dialog__empty{padding:40px 20px;text-align:center;color:var(--theme-text-secondary);font-style:italic}.allocation-edit-dialog__allocation{border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);padding:16px;background-color:var(--theme-paper)}.allocation-edit-dialog__allocation--void{opacity:.6;background-color:color-mix(in srgb,var(--theme-error, #f44336) 5%,var(--theme-paper))}.allocation-edit-dialog__allocation--void .allocation-edit-dialog__allocation-hours,.allocation-edit-dialog__allocation--void .allocation-edit-dialog__phase-code,.allocation-edit-dialog__allocation--void .allocation-edit-dialog__phase-desc,.allocation-edit-dialog__allocation--void label,.allocation-edit-dialog__allocation--void select,.allocation-edit-dialog__allocation--void input{text-decoration:line-through;text-decoration-color:var(--theme-error, #f44336);color:var(--theme-text-secondary)!important}.allocation-edit-dialog__allocation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--theme-divider)}.allocation-edit-dialog__allocation-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background-color:var(--theme-primary);color:#fff;font-size:14px;font-weight:600}.allocation-edit-dialog__allocation-hours{flex:1;font-size:14px;font-weight:600;color:#4da6ff;padding:4px 10px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-radius:var(--theme-border-radius);text-align:center}.allocation-edit-dialog__remove-btn{width:28px;height:28px;min-width:28px;border:none;border-radius:50%;background-color:var(--theme-error, #f44336);color:#fff;font-size:20px;line-height:1;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.allocation-edit-dialog__remove-btn:hover{background-color:color-mix(in srgb,var(--theme-error, #f44336) 85%,black)}.allocation-edit-dialog__allocation-body{display:flex;flex-direction:column;gap:16px}.allocation-edit-dialog__field-group{display:flex;flex-direction:column;gap:8px}.allocation-edit-dialog__selected-phase{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border:1px solid var(--theme-primary);border-radius:var(--theme-border-radius)}.allocation-edit-dialog__phase-display{display:flex;flex-direction:column;gap:2px;flex:1}.allocation-edit-dialog__phase-code{font-size:13px;font-weight:600;color:#4da6ff}.allocation-edit-dialog__phase-desc{font-size:13px;color:var(--theme-text-primary)}.allocation-edit-dialog__change-btn{font-size:12px;color:var(--theme-primary);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:var(--theme-border-radius);transition:background-color .15s}.allocation-edit-dialog__change-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,transparent)}.allocation-edit-dialog__phase-picker{display:flex;flex-direction:column;gap:8px}.allocation-edit-dialog__search-input{padding:8px 12px;font-size:13px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);color:var(--theme-text-primary)}.allocation-edit-dialog__search-input:focus{outline:none;border-color:var(--theme-primary)}.allocation-edit-dialog__phase-list{max-height:200px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background)}.allocation-edit-dialog__no-phases{padding:20px;text-align:center;color:var(--theme-text-secondary);font-style:italic;font-size:13px}.allocation-edit-dialog__phase-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:none;text-align:left;cursor:pointer;border-bottom:1px solid var(--theme-divider);transition:background-color .15s}.allocation-edit-dialog__phase-option:last-child{border-bottom:none}.allocation-edit-dialog__phase-option:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper))}.allocation-edit-dialog__input{padding:8px 12px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);color:var(--theme-text-primary);font-size:14px}.allocation-edit-dialog__input:focus{outline:none;border-color:var(--theme-primary)}.allocation-edit-dialog__totals{padding:16px;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius)}.allocation-edit-dialog__totals-row{display:flex;align-items:center;gap:8px;padding:4px 0;color:var(--theme-text-primary)}.allocation-edit-dialog__totals-row strong{min-width:120px}.weekly-review-view__controls{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:var(--theme-background);border:1px solid var(--theme-divider);border-bottom:none;border-radius:var(--theme-border-radius) var(--theme-border-radius) 0 0;gap:16px;flex-wrap:wrap}.weekly-review-view__expand-controls{display:flex;gap:8px}.weekly-review-view__control-btn{padding:6px 12px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s}.weekly-review-view__control-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.weekly-review-view__pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.weekly-review-view__page-info{font-size:13px;color:var(--theme-text-secondary);white-space:nowrap}.weekly-review-view__page-size{padding:6px 10px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer}.weekly-review-view__page-size:focus{outline:none;border-color:var(--theme-primary)}.weekly-review-view__page-buttons{display:flex;align-items:center;gap:4px}.weekly-review-view__page-btn{padding:6px 10px;font-size:13px;font-weight:600;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s;min-width:32px}.weekly-review-view__page-btn:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.weekly-review-view__page-btn:disabled{opacity:.4;cursor:not-allowed}.weekly-review-view__page-number{font-size:13px;color:var(--theme-text-primary);padding:0 8px;white-space:nowrap}.weekly-review-view__table-wrapper{flex:1;overflow-x:auto;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);box-shadow:0 1px 3px color-mix(in srgb,var(--theme-text-primary) 10%,transparent);position:relative;min-height:0}.weekly-review-view__table-container{display:flex;flex-direction:column;flex:1;min-height:0;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);box-shadow:0 1px 3px color-mix(in srgb,var(--theme-text-primary) 10%,transparent);overflow:hidden}.weekly-review-view__table-header{flex-shrink:0;overflow-x:hidden;background-color:var(--theme-background);border-bottom:2px solid var(--theme-divider)}.weekly-review-view__table-body-container{flex:1;overflow-y:auto;overflow-x:auto;min-height:200px;max-height:calc(100vh - 350px)}.weekly-review-view__table-footer{flex-shrink:0;overflow-x:hidden;background-color:var(--theme-background);border-top:2px solid var(--theme-primary)}.weekly-review-view__table--virtual{table-layout:fixed}.weekly-review-view__table--virtual tbody{display:block}.weekly-review-view__table--virtual tr{display:table;width:100%;table-layout:fixed;box-sizing:border-box}.weekly-review-view__table--virtual td{vertical-align:middle;height:100%;box-sizing:border-box}.weekly-review-view__table{width:100%;border-collapse:collapse;min-width:600px;background-color:var(--theme-paper)}.weekly-review-view__table thead{position:sticky;top:0;z-index:10}.weekly-review-view__header-cell{background-color:var(--theme-background);border-bottom:2px solid var(--theme-divider);padding:12px 16px;font-weight:600;text-align:center;color:var(--theme-text-primary);white-space:nowrap}.weekly-review-view__header-cell--sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s,color .2s}.weekly-review-view__header-cell--sortable:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-background));color:var(--theme-primary)}.weekly-review-view__header-cell--sorted{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-background));color:var(--theme-primary)}.weekly-review-view__header-cell--resource{text-align:left;width:180px;min-width:180px;position:sticky;left:0;z-index:11;background-color:var(--theme-background)}.weekly-review-view__header-cell--job{text-align:left;width:200px;min-width:200px;position:sticky;left:180px;z-index:11;background-color:var(--theme-background)}.weekly-review-view__header-cell--date{width:100px;min-width:100px}.weekly-review-view__header-cell--total{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-background))}.weekly-review-view__resource-row{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));cursor:pointer;transition:background-color .2s;min-height:42px}.weekly-review-view__resource-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.weekly-review-view__job-row{transition:background-color .2s;min-height:36px}.weekly-review-view__job-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.weekly-review-view__cell{border-bottom:1px solid var(--theme-divider);padding:10px 12px;text-align:center;color:var(--theme-text-primary);vertical-align:middle;line-height:1.3}.weekly-review-view__cell--resource-header{text-align:left;font-weight:600;width:180px;min-width:180px;position:sticky;left:0;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.weekly-review-view__resource-row:hover .weekly-review-view__cell--resource-header{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.weekly-review-view__cell--job-header{text-align:left;width:200px;min-width:200px;position:sticky;left:180px;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.weekly-review-view__resource-row:hover .weekly-review-view__cell--job-header{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.weekly-review-view__header-hours-value{cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s,color .2s;display:inline-block}.weekly-review-view__header-hours-value:hover{background-color:color-mix(in srgb,var(--theme-primary) 20%,var(--theme-paper));color:var(--theme-primary);outline:1px solid color-mix(in srgb,var(--theme-primary) 40%,transparent)}.weekly-review-view__header-hours-value--disabled{cursor:default;opacity:.7}.weekly-review-view__header-hours-value--disabled:hover{background-color:transparent;color:inherit;outline:none}.weekly-review-view__expand-icon{display:inline-block;width:16px;margin-right:8px;font-size:10px;color:var(--theme-text-secondary)}.weekly-review-view__cell--resource-indent{text-align:left;width:180px;min-width:180px;position:sticky;left:0;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word}.weekly-review-view__job-row:hover .weekly-review-view__cell--resource-indent{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.weekly-review-view__cell--job{text-align:left;width:200px;min-width:200px;position:sticky;left:180px;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider);padding-left:24px;word-wrap:break-word;overflow-wrap:break-word}.weekly-review-view__job-row:hover .weekly-review-view__cell--job{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.weekly-review-view__job-display{font-weight:500;color:var(--theme-text-primary);font-size:13px;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.weekly-review-view__cell--resource{text-align:left;font-weight:500;position:sticky;left:0;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider)}.weekly-review-view__resource-link{cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s,color .2s;display:inline-block;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;max-width:100%}.weekly-review-view__resource-link:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper));color:var(--theme-primary);text-decoration:underline}.weekly-review-view__resource-link--disabled{cursor:default;opacity:.7}.weekly-review-view__resource-link--disabled:hover{background-color:transparent;color:inherit;text-decoration:none}.weekly-review-view__row:hover .weekly-review-view__cell--resource{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))}.weekly-review-view__cell--hours{width:100px;min-width:100px}.weekly-review-view__cell--hours-header{width:100px;min-width:100px;font-weight:500;color:var(--theme-text-secondary)}.weekly-review-view__cell--total{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));font-weight:600;color:#4da6ff}.weekly-review-view__cell--total-header{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));color:#4da6ff}.weekly-review-view__empty-cell{color:var(--theme-text-secondary)}.weekly-review-view__editable-value{cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s;display:inline-block;min-width:40px}.weekly-review-view__editable-value:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));outline:1px solid color-mix(in srgb,var(--theme-primary) 30%,transparent)}.weekly-review-view__editable-value--edited{background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 20%,var(--theme-paper));font-weight:600;border:1px solid var(--theme-warning, #ff9800)}.weekly-review-view__editable-value--edited:hover{background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 30%,var(--theme-paper));outline:1px solid var(--theme-warning, #ff9800)}.weekly-review-view__multi-indicator{font-size:11px;color:var(--theme-text-secondary);font-weight:600}.weekly-review-view__editable-value--all-non-billable{color:var(--theme-warning, #ff9800);font-weight:600}.weekly-review-view__editable-value--all-non-billable:hover{background-color:color-mix(in srgb,var(--theme-warning, #ff9800) 15%,var(--theme-paper));outline:1px solid color-mix(in srgb,var(--theme-warning, #ff9800) 40%,transparent)}.weekly-review-view__editable-value--mixed-billable{border-left:3px solid var(--theme-warning, #ff9800);padding-left:5px}.weekly-review-view__non-billable-badge{display:inline-block;margin-left:4px;padding:1px 4px;font-size:9px;font-weight:700;background-color:var(--theme-warning, #ff9800);color:#fff;border-radius:3px;vertical-align:super;line-height:1}.weekly-review-view__mixed-badge{display:inline-block;margin-left:4px;padding:0 4px;font-size:12px;font-weight:700;color:var(--theme-warning, #ff9800);vertical-align:middle;line-height:1}.weekly-review-view__input{width:80px;padding:4px 8px;border:2px solid var(--theme-primary);border-radius:4px;background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:14px;text-align:center;transition:border-color .2s}.weekly-review-view__input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 20%,transparent)}.weekly-review-view__table tfoot{position:sticky;bottom:0;z-index:10}.weekly-review-view__totals-row{background-color:var(--theme-background);font-weight:600;border-top:2px solid var(--theme-primary)}.weekly-review-view__totals-row:hover{background-color:var(--theme-background);cursor:default}.weekly-review-view__totals-row .weekly-review-view__cell{border-bottom:none;padding:14px 16px}.weekly-review-view__totals-row .weekly-review-view__cell--resource{position:sticky;left:0;background-color:var(--theme-background);z-index:5}.weekly-review-view__cell--footer{text-align:left;width:180px;min-width:180px;position:sticky;left:0;background-color:var(--theme-background);z-index:5;border-bottom:none;vertical-align:middle}.weekly-review-view__cell--footer+.weekly-review-view__cell--footer{width:200px;min-width:200px;left:180px}.weekly-review-view__cell--footer-total{width:100px;min-width:100px;border-bottom:none;font-weight:700;font-size:1rem;color:#4da6ff;vertical-align:middle}.weekly-review-view__totals-row .weekly-review-view__cell--total{font-weight:700;font-size:1rem;color:#4da6ff}.multi-entry-edit-dialog__entries{display:flex;flex-direction:column;gap:12px;margin:16px 0;max-height:400px;overflow-y:auto}.multi-entry-edit-dialog__entry{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);gap:16px}.multi-entry-edit-dialog__entry:hover{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-background))}.multi-entry-edit-dialog__entry-info{flex:1;min-width:0}.multi-entry-edit-dialog__job{font-weight:600;color:var(--theme-text-primary);font-size:14px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-entry-edit-dialog__date{font-size:13px;color:var(--theme-primary);font-weight:500;margin-bottom:2px}.multi-entry-edit-dialog__meta{font-size:12px;color:var(--theme-text-secondary)}.multi-entry-edit-dialog__non-billable{color:var(--theme-warning, #ff9800);font-weight:600}.multi-entry-edit-dialog__controls{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.multi-entry-edit-dialog__hours-input{display:flex;align-items:center;gap:8px}.multi-entry-edit-dialog__crew-input{display:flex;align-items:center;justify-content:flex-start;gap:8px}.multi-entry-edit-dialog__hours-input .dialog__input{width:100px;text-align:center}.multi-entry-edit-dialog__hours-label{color:var(--theme-text-secondary);font-size:13px;white-space:nowrap}.multi-entry-edit-dialog__checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;padding:4px 8px;border-radius:var(--theme-border-radius);transition:background-color .2s;-webkit-user-select:none;user-select:none}.multi-entry-edit-dialog__checkbox-label:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,transparent)}.multi-entry-edit-dialog__checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--theme-warning, #ff9800)}.multi-entry-edit-dialog__checkbox-text{font-size:13px;color:var(--theme-text-primary);white-space:nowrap}.multi-entry-edit-dialog__total{padding:12px;margin-top:8px;background-color:color-mix(in srgb,var(--theme-primary) 10%,transparent);border-radius:var(--theme-border-radius);text-align:right;color:var(--theme-text-primary);font-size:16px}.multi-entry-edit-dialog__entry--voided{opacity:.6;background-color:color-mix(in srgb,var(--theme-error, #d32f2f) 5%,var(--theme-background))!important}.multi-entry-edit-dialog__entry--voided .multi-entry-edit-dialog__job,.multi-entry-edit-dialog__entry--voided .multi-entry-edit-dialog__date{text-decoration:line-through}.multi-entry-edit-dialog__checkbox-label--void .multi-entry-edit-dialog__checkbox{accent-color:var(--theme-error, #d32f2f)}.multi-entry-edit-dialog__checkbox-label--void .multi-entry-edit-dialog__checkbox-text{color:var(--theme-error, #d32f2f);font-weight:600}.allocated-hours-view__table-wrapper{flex:1;overflow-x:auto;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper);box-shadow:0 1px 3px color-mix(in srgb,var(--theme-text-primary) 10%,transparent);position:relative;min-height:0}.allocated-hours-view__table-container{display:flex;flex-direction:column;flex:1;min-height:0;border:1px solid var(--theme-divider);border-radius:0 0 var(--theme-border-radius) var(--theme-border-radius);background-color:var(--theme-paper);box-shadow:0 1px 3px color-mix(in srgb,var(--theme-text-primary) 10%,transparent);overflow:hidden}.allocated-hours-view__table-header{flex-shrink:0;overflow-x:hidden;background-color:var(--theme-background);border-bottom:2px solid var(--theme-divider)}.allocated-hours-view__table-body-container{flex:1;overflow-y:auto;overflow-x:auto;min-height:200px;max-height:calc(100vh - 380px)}.allocated-hours-view__table-footer{flex-shrink:0;overflow-x:hidden;background-color:var(--theme-background);border-top:2px solid var(--theme-primary)}.allocated-hours-view__table--virtual{table-layout:fixed}.allocated-hours-view__table--virtual tbody{display:block}.allocated-hours-view__table--virtual tr{display:table;width:100%;table-layout:fixed;box-sizing:border-box}.allocated-hours-view__table--virtual td{vertical-align:middle;height:100%;box-sizing:border-box}.allocated-hours-view__table{width:100%;border-collapse:collapse;min-width:700px;background-color:var(--theme-paper)}.allocated-hours-view__table thead{position:sticky;top:0;z-index:10}.allocated-hours-view__header-cell{background-color:var(--theme-background);border-bottom:2px solid var(--theme-divider);padding:12px 16px;font-weight:600;text-align:center;color:var(--theme-text-primary);white-space:nowrap}.allocated-hours-view__header-cell--sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s,color .2s}.allocated-hours-view__header-cell--sortable:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-background));color:var(--theme-primary)}.allocated-hours-view__header-cell--sorted{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-background));color:var(--theme-primary)}.allocated-hours-view__header-cell--resource{text-align:left;width:180px;min-width:180px;position:sticky;left:0;z-index:11;background-color:var(--theme-background)}.allocated-hours-view__header-cell--job{text-align:left;width:180px;min-width:180px;position:sticky;left:180px;z-index:11;background-color:var(--theme-background)}.allocated-hours-view__header-cell--phase{text-align:left;width:180px;min-width:180px;position:sticky;left:360px;z-index:11;background-color:var(--theme-background)}.allocated-hours-view__header-cell--date{width:100px;min-width:100px}.allocated-hours-view__header-cell--total{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-background))}.allocated-hours-view__resource-row{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));cursor:pointer;height:42px;transition:background-color .2s}.allocated-hours-view__resource-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.allocated-hours-view__cell{border-bottom:1px solid var(--theme-divider);padding:8px 12px;text-align:center;color:var(--theme-text-primary);vertical-align:middle}.allocated-hours-view__cell--resource-header{text-align:left;font-weight:600;width:180px;min-width:180px;position:sticky;left:0;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__resource-row:hover .allocated-hours-view__cell--resource-header{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.allocated-hours-view__cell--job-header{text-align:left;width:180px;min-width:180px;position:sticky;left:180px;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__resource-row:hover .allocated-hours-view__cell--job-header{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.allocated-hours-view__cell--phase-header{text-align:left;width:180px;min-width:180px;position:sticky;left:360px;background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper));z-index:5;border-right:1px solid var(--theme-divider);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__resource-row:hover .allocated-hours-view__cell--phase-header{background-color:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-paper))}.allocated-hours-view__cell--hours-header{width:100px;min-width:100px;font-weight:500;color:var(--theme-text-secondary)}.allocated-hours-view__cell--total-header{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));color:#4da6ff}.allocated-hours-view__expand-icon{display:inline-block;width:16px;margin-right:8px;font-size:10px;color:var(--theme-text-secondary)}.allocated-hours-view__phase-row{transition:background-color .2s;height:36px}.allocated-hours-view__phase-row:hover{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.allocated-hours-view__cell--resource-indent{text-align:left;width:180px;min-width:180px;position:sticky;left:0;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider)}.allocated-hours-view__phase-row:hover .allocated-hours-view__cell--resource-indent{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.allocated-hours-view__cell--job{text-align:left;width:180px;min-width:180px;position:sticky;left:180px;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider);padding-left:24px}.allocated-hours-view__phase-row:hover .allocated-hours-view__cell--job{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.allocated-hours-view__job-display{font-weight:500;color:var(--theme-text-primary);font-size:13px;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__cell--phase{text-align:left;width:180px;min-width:180px;position:sticky;left:360px;background-color:var(--theme-paper);z-index:5;border-right:1px solid var(--theme-divider);padding-left:16px;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__phase-row:hover .allocated-hours-view__cell--phase{background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper))}.allocated-hours-view__phase-code{font-weight:500;color:#4da6ff;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__phase-desc{color:var(--theme-text-secondary);font-size:13px;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.allocated-hours-view__cell--hours{width:100px;min-width:100px;color:var(--theme-text-primary)}.allocated-hours-view__cell--total{width:90px;min-width:90px;background-color:color-mix(in srgb,var(--theme-primary) 3%,var(--theme-paper));font-weight:500;color:#4da6ff}.allocated-hours-view__table tfoot{position:sticky;bottom:0;z-index:10}.allocated-hours-view__totals-row{background-color:var(--theme-background);font-weight:600;border-top:2px solid var(--theme-primary)}.allocated-hours-view__totals-row:hover{background-color:var(--theme-background);cursor:default}.allocated-hours-view__cell--footer{border-bottom:none;padding:14px 16px;text-align:left;width:180px;min-width:180px;position:sticky;left:0;background-color:var(--theme-background);z-index:5;vertical-align:middle}.allocated-hours-view__cell--footer-total{border-bottom:none;padding:14px 16px;width:100px;min-width:100px;color:#4da6ff;vertical-align:middle;font-weight:700;font-size:1rem}.allocated-hours-view__controls{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:var(--theme-background);border:1px solid var(--theme-divider);border-bottom:none;border-radius:var(--theme-border-radius) var(--theme-border-radius) 0 0;gap:16px;flex-wrap:wrap}.allocated-hours-view__expand-controls{display:flex;gap:8px}.allocated-hours-view__control-btn{padding:6px 12px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s}.allocated-hours-view__control-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.allocated-hours-view__pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.allocated-hours-view__page-info{font-size:13px;color:var(--theme-text-secondary);white-space:nowrap}.allocated-hours-view__page-size{padding:6px 10px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer}.allocated-hours-view__page-size:focus{outline:none;border-color:var(--theme-primary)}.allocated-hours-view__page-buttons{display:flex;align-items:center;gap:4px}.allocated-hours-view__page-btn{padding:6px 10px;font-size:13px;font-weight:600;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s;min-width:32px}.allocated-hours-view__page-btn:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.allocated-hours-view__page-btn:disabled{opacity:.4;cursor:not-allowed}.allocated-hours-view__page-number{font-size:13px;color:var(--theme-text-primary);padding:0 8px;white-space:nowrap}.allocated-hours-view__phase-clickable{cursor:pointer;padding:4px 8px;margin:-4px -8px;border-radius:var(--theme-border-radius);transition:background-color .15s;display:inline-block}.allocated-hours-view__phase-clickable:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,transparent)}.allocated-hours-view__phase-clickable:hover .allocated-hours-view__phase-code,.allocated-hours-view__phase-clickable:hover .allocated-hours-view__phase-desc{color:var(--theme-primary)}.allocated-hours-view__phase-actions{display:flex;align-items:center;gap:8px}.allocated-hours-view__round-btn{padding:2px 8px;background-color:#007bff;color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:.75rem;white-space:nowrap}.allocated-hours-view__round-btn:hover{background-color:#0056b3}.allocated-hours-view__cell--clickable{cursor:pointer;transition:background-color .15s ease}.allocated-hours-view__cell--clickable:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper))!important;text-decoration:underline}.corrections-dialog{max-width:700px;max-height:90vh;width:90vw;background-color:var(--theme-paper);color:var(--theme-text-primary)}.corrections-list{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.correction-item{border:2px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-background);overflow:hidden;transition:border-color .2s ease}.correction-item--void{border-color:var(--theme-error);background-color:color-mix(in srgb,var(--theme-error) 5%,var(--theme-background))}.correction-item__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:var(--theme-paper);border-bottom:1px solid var(--theme-divider)}.correction-item__number{font-weight:600;color:var(--theme-text-secondary);font-size:.875rem}.correction-item__type{display:flex;align-items:center}.correction-type-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.correction-type-badge--hours{background-color:color-mix(in srgb,var(--theme-info) 20%,transparent);color:var(--theme-info)}.correction-type-badge--job{background-color:color-mix(in srgb,var(--theme-primary) 20%,transparent);color:var(--theme-primary)}.correction-type-badge--void{background-color:color-mix(in srgb,var(--theme-error) 20%,transparent);color:var(--theme-error)}.correction-item__body{padding:1rem}.correction-change{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:.75rem;background-color:var(--theme-paper);border-radius:var(--theme-border-radius);border:1px solid var(--theme-divider)}.correction-change--void{background-color:color-mix(in srgb,var(--theme-error) 5%,var(--theme-paper));border-color:color-mix(in srgb,var(--theme-error) 30%,transparent)}.correction-change__row{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:150px}.correction-change__label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--theme-text-secondary);letter-spacing:.5px}.correction-change__value{font-size:1rem;font-weight:500;padding:.5rem;border-radius:var(--theme-border-radius);background-color:var(--theme-background);color:var(--theme-text-primary)}.correction-change__value--original{background-color:color-mix(in srgb,var(--theme-error) 15%,var(--theme-background));color:var(--theme-error)}.correction-change__value--updated{background-color:color-mix(in srgb,var(--theme-success) 15%,var(--theme-background));color:var(--theme-success)}.correction-change__value--void{background-color:color-mix(in srgb,var(--theme-error) 20%,var(--theme-background));color:var(--theme-error);font-weight:600}.correction-change__arrow{font-size:1.5rem;color:var(--theme-text-secondary);font-weight:700;align-self:center}.correction-change__diff{flex-basis:100%;text-align:center;padding:.5rem;font-weight:600;font-size:.875rem;color:var(--theme-info);background-color:color-mix(in srgb,var(--theme-info) 15%,var(--theme-background));border-radius:var(--theme-border-radius);margin-top:.5rem}.correction-void-warning{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:color-mix(in srgb,var(--theme-warning) 20%,var(--theme-background));border:2px solid var(--theme-warning);border-radius:var(--theme-border-radius);margin-bottom:1rem;flex-basis:100%}.correction-void-warning__icon{font-size:1.25rem}.correction-void-warning__text{font-weight:600;color:color-mix(in srgb,var(--theme-warning) 80%,black)}.correction-item__actions{padding:1rem;background-color:var(--theme-paper);border-top:1px solid var(--theme-divider)}.correction-action-buttons{display:flex;gap:.75rem;margin-bottom:1rem}.correction-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:2px solid;border-radius:var(--theme-border-radius);font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;background-color:var(--theme-paper);color:var(--theme-text-primary)}.correction-action-btn__icon{font-size:1.125rem;font-weight:700}.correction-action-btn--approve{border-color:var(--theme-success);color:var(--theme-success)}.correction-action-btn--approve:hover{background-color:color-mix(in srgb,var(--theme-success) 15%,var(--theme-paper));border-color:var(--theme-success)}.correction-action-btn--approve:active{background-color:color-mix(in srgb,var(--theme-success) 25%,var(--theme-paper))}.correction-action-btn--deny{border-color:var(--theme-error);color:var(--theme-error)}.correction-action-btn--deny:hover{background-color:color-mix(in srgb,var(--theme-error) 15%,var(--theme-paper));border-color:var(--theme-error)}.correction-action-btn--deny:active{background-color:color-mix(in srgb,var(--theme-error) 25%,var(--theme-paper))}.correction-decision{padding:1rem;border-radius:var(--theme-border-radius);border:2px solid}.correction-decision--approved{background-color:color-mix(in srgb,var(--theme-success) 15%,var(--theme-background));border-color:var(--theme-success)}.correction-decision--denied{background-color:color-mix(in srgb,var(--theme-error) 15%,var(--theme-background));border-color:var(--theme-error)}.correction-decision__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.correction-decision__badge{font-weight:600;font-size:1rem;display:flex;align-items:center;gap:.5rem}.correction-decision--approved .correction-decision__badge{color:var(--theme-success)}.correction-decision--denied .correction-decision__badge{color:var(--theme-error)}.correction-decision__reset{padding:.25rem .75rem;background-color:var(--theme-paper);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;color:var(--theme-text-primary)}.correction-decision__reset:hover{background-color:var(--theme-background);border-color:var(--theme-text-secondary)}.correction-decision__note{padding:.75rem;background-color:var(--theme-paper);border-radius:var(--theme-border-radius);font-size:.875rem;color:var(--theme-text-primary)}.correction-note-field{display:flex;flex-direction:column;gap:.5rem}.correction-note-field__label{font-weight:600;font-size:.875rem;color:var(--theme-text-primary)}.correction-note-field__textarea{width:100%;padding:.75rem;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);font-family:inherit;font-size:.875rem;resize:vertical;background-color:var(--theme-background);color:var(--theme-text-primary);transition:border-color .2s ease,box-shadow .2s ease}.correction-note-field__textarea:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 20%,transparent)}.correction-note-field__textarea::placeholder{color:var(--theme-text-secondary)}.dialog__loading,.dialog__error,.dialog__empty{padding:3rem 2rem;text-align:center;color:var(--theme-text-secondary);font-size:.875rem}.dialog__error{color:var(--theme-error)}.incremental-loading-bar{position:relative;width:100%;height:3px;background-color:transparent;overflow:hidden}.incremental-loading-bar__progress{height:100%;background:linear-gradient(90deg,var(--theme-primary, #1976d2) 0%,var(--theme-primary-light, #42a5f5) 50%,var(--theme-primary, #1976d2) 100%);background-size:200% 100%;animation:incremental-loading-sweep 1.5s ease-in-out infinite}@keyframes incremental-loading-sweep{0%{transform:translate(-100%);background-position:200% center}to{transform:translate(100%);background-position:-200% center}}.incremental-loading-bar{animation:incremental-loading-fade-in .2s ease-in}@keyframes incremental-loading-fade-in{0%{opacity:0}to{opacity:1}}.btn-primary,.btn-secondary,.btn-close,.btn-confirm,.btn-cancel,.btn-create,.btn-icon,.btn-icon-small,.btn-sm{padding:.5rem 1rem;font-size:.938rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-family:inherit}.btn-primary{background:#06c;color:#fff}.btn-primary:hover:not(:disabled){background:#0052a3}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background:#fff;color:#1a1a1a;border:1px solid #e0e0e0}.btn-secondary:hover:not(:disabled){background:#f5f5f5}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-close{padding:.5rem 1.5rem;background:#06c;color:#fff}.btn-close:hover{background:#0052a3}.btn-confirm.btn-primary{background:#06c;color:#fff}.btn-confirm.btn-primary:hover{background:#0052a3}.btn-confirm.btn-danger{background:#d32f2f;color:#fff}.btn-confirm.btn-danger:hover{background:#b71c1c}.btn-cancel{background:#fff;color:#1a1a1a;border:1px solid #e0e0e0}.btn-cancel:hover{background:#f5f5f5}.btn-create{padding:.75rem 1.5rem;font-size:1rem;background:#06c;color:#fff}.btn-create:hover{background:#0052a3}.btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;color:#999;font-size:1.5rem;line-height:1}.btn-icon:hover{background:#f5f5f5;color:#d32f2f}.btn-icon-small{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1;color:#1a1a1a}.btn-icon-small:hover{background:#06c;color:#fff;border-color:#06c}.btn-sm{padding:.375rem .75rem;font-size:.875rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field.full-width{grid-column:1 / -1}.form-field label{font-size:.875rem;font-weight:500;color:#333;margin-bottom:.25rem}.form-field input[type=text],.form-field input[type=number],.form-field input[type=date],.form-field textarea,.form-field select{padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;font-family:inherit;background-color:#fff;color:#1a1a1a}.form-field input[type=date]{-webkit-appearance:none;-moz-appearance:textfield;appearance:none}.form-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;width:20px;height:20px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.form-field input:disabled,.form-field textarea:disabled,.form-field select:disabled{background-color:#f5f5f5;cursor:not-allowed;color:#666}.form-field select option{background-color:#fff;color:#1a1a1a;padding:.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.readonly-field{padding:.5rem;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;color:#666;font-size:1rem}.field-hint{font-size:.75rem;color:#666;margin-top:.25rem;display:block}.duration-display{padding:.5rem;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;color:#666}.error-message{padding:.75rem;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;font-size:.875rem}.close-button{background:none;border:none;font-size:2rem;line-height:1;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.close-button:hover{background-color:#f0f0f0}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.dialog-header h2{margin:0;font-size:1.5rem;color:#1a1a1a}.table-container,.items-table-container,.groups-table-container{overflow-x:auto;margin-top:1rem}.items-table,.groups-table,.burn-table{width:100%;border-collapse:collapse;font-size:.875rem}.items-table thead,.groups-table thead,.burn-table thead{background-color:#f9f9f9;border-bottom:2px solid #e0e0e0}.items-table th,.groups-table th,.burn-table th{padding:.75rem;text-align:left;font-weight:600;color:#1a1a1a;font-size:.813rem;text-transform:uppercase;letter-spacing:.5px}.items-table td,.groups-table td,.burn-table td{padding:.75rem;border-bottom:1px solid #f0f0f0;color:#1a1a1a}.items-table tbody tr:hover,.groups-table tbody tr:hover,.burn-table tbody tr:hover{background-color:#f9f9f9}.items-table .numeric,.groups-table .numeric,.burn-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.burn-table th.numeric,.burn-table td.numeric{text-align:right}.burn-table tfoot{background-color:#f9f9f9;border-top:2px solid #e0e0e0;font-weight:600}.burn-table tfoot td{padding:1rem;font-size:1rem}.burn-table .no-data{text-align:center;color:#999;font-style:italic;padding:2rem}.item-note{font-size:.75rem;color:#666;margin-top:.25rem;font-style:italic}.empty-state,.empty-state-small{text-align:center;padding:2rem 1rem;color:#999}.empty-state-small{padding:2rem 1rem;font-size:.938rem}.empty-state p,.empty-state-small p{margin:0;font-size:1rem}.burn-value{font-family:Courier New,monospace;font-weight:600;color:#1a1a1a}.burn-value.total{font-size:1.125rem;color:#06c}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;min-height:400px;color:#fff}.loading-spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top-color:#06c;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-message{text-align:center;color:#fff}.loading-message p{margin:0 0 1rem;font-size:1.125rem;color:#1a1a1a;font-weight:500}.loading-steps{display:flex;flex-direction:column;gap:.5rem;align-items:center}.loading-step{font-size:.875rem;color:#666;padding:.25rem .75rem;background:#f5f5f5;border-radius:4px}.home-page{margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.home-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid #e0e0e0;color:#fff}.home-header h1{margin:0 0 .5rem;font-size:2.5rem;font-weight:700}.tagline{margin:0;font-size:1.125rem;color:#666}.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.tool-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:2rem;text-decoration:none;color:inherit;transition:all .2s ease;position:relative;display:flex;flex-direction:column;cursor:pointer}.tool-card:hover{border-color:#06c;box-shadow:0 4px 12px #0066cc26;transform:translateY(-2px)}.tool-icon{font-size:3rem;margin-bottom:1rem}.tool-card h2{margin:0 0 .75rem;font-size:1.375rem;color:#1a1a1a;font-weight:600}.tool-card p{margin:0;font-size:.938rem;color:#666;line-height:1.5;flex-grow:1}.tool-link-arrow{position:absolute;top:1.5rem;right:1.5rem;font-size:1.5rem;color:#06c;opacity:0;transition:opacity .2s ease}.tool-card:hover .tool-link-arrow{opacity:1}.home-footer{text-align:center;padding-top:2rem;border-top:1px solid #e0e0e0}.home-footer p{margin:0;color:#999;font-size:.938rem}@media (max-width: 768px){.tools-grid{grid-template-columns:1fr}.home-header h1{font-size:2rem}}.confirmation-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.confirmation-dialog{background:#fff;border-radius:8px;padding:0;min-width:400px;max-width:500px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column}.confirmation-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.confirmation-dialog-header h3{margin:0;font-size:1.25rem;color:#1a1a1a;font-weight:600}.confirmation-dialog-content{padding:1.5rem}.confirmation-dialog-content p{margin:0;color:#1a1a1a;font-size:.938rem;line-height:1.5}.confirmation-dialog-actions{display:flex;gap:.5rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid #e0e0e0}.resource-group-builder{min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.page-header{margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:1rem}.header-nav{margin-bottom:1rem}.back-link{color:#06c;text-decoration:none;font-size:.938rem;display:inline-flex;align-items:center;gap:.25rem;transition:color .2s}.back-link:hover{color:#0052a3;text-decoration:underline}.page-header h1{margin:0 0 .5rem;font-size:2rem;color:#fff}.page-description{margin:0;color:#666;font-size:1rem}.builder-layout{display:grid;grid-template-columns:320px 1fr;gap:2rem}@media (max-width: 1024px){.builder-layout{grid-template-columns:1fr}}.groups-sidebar{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;height:fit-content;max-height:calc(100vh - 200px);overflow-y:auto}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.sidebar-header h2{margin:0;font-size:1.125rem;color:#1a1a1a}.create-group-form{margin-bottom:1rem;padding:1rem;background:#f9f9f9;border-radius:4px}.create-group-form input{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.938rem;margin-bottom:.5rem}.groups-list{display:flex;flex-direction:column;gap:.75rem}.group-item{padding:1rem;background:#f9f9f9;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s}.group-item:hover{border-color:#06c;background:#f5f9ff}.group-item.active{border-color:#06c;background:#e6f2ff}.group-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.group-item-actions{display:flex;gap:.25rem;align-items:center}.group-item h3{margin:0;font-size:1rem;color:#1a1a1a;font-weight:600}.group-item-stats{display:flex;flex-direction:column;justify-content:space-between;font-size:.813rem;color:#666}.weekly-burn{font-weight:600;color:#06c}.group-details{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:2rem;min-height:500px}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.group-header h2{margin:0 0 .5rem;font-size:1.5rem;color:#1a1a1a}.group-name-display{cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:color .2s;-webkit-user-select:none;user-select:none}.group-name-display:hover{color:#06c}.group-name-display .edit-icon{font-size:1rem;opacity:0;transition:opacity .2s}.group-name-display:hover .edit-icon{opacity:.6}.group-name-edit{display:flex;align-items:center;gap:.5rem}.group-name-input{font-size:1.5rem;font-weight:600;padding:.25rem .5rem;border:2px solid #0066cc;border-radius:4px;font-family:inherit;color:#1a1a1a;min-width:200px}.group-name-input:focus{outline:none;border-color:#0052a3}.group-name-actions{display:flex;gap:.25rem}.group-weekly-burn{margin:0;font-size:1rem;color:#666}.group-weekly-burn strong{color:#06c;font-size:1.125rem}.add-item-form{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.add-item-form h3{margin:0 0 1rem;font-size:1.125rem;color:#1a1a1a}.items-table{width:100%;border-collapse:collapse;font-size:.938rem}.items-table thead{background:#f5f5f5}.items-table th{text-align:left;padding:.75rem;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e0e0e0;font-size:.875rem}.items-table th.numeric,.items-table td.numeric{text-align:right}.items-table th.actions,.items-table td.actions{text-align:center;width:100px}.action-buttons{display:inline-flex;gap:.25rem;align-items:center;justify-content:center}.items-table td{padding:.75rem;border-bottom:1px solid #e0e0e0}.items-table tbody tr:hover{background:#f9f9f9}.copy-group-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.copy-group-dialog{background:#fff;border-radius:8px;padding:0;min-width:400px;max-width:500px;box-shadow:0 4px 20px #00000026}.copy-group-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.copy-group-header h3{margin:0;font-size:1.25rem;color:#1a1a1a}.copy-group-content{padding:1.5rem}.copy-group-content p{margin:0 0 1rem;color:#1a1a1a;font-size:.938rem}.copy-group-content p strong{color:#06c}.copy-group-info{color:#666!important;font-size:.875rem!important;margin-bottom:1.5rem!important}.copy-group-actions{display:flex;gap:.5rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid #e0e0e0}.copy-group-actions button:disabled{opacity:.5;cursor:not-allowed}.resource-projection-page{width:100%;max-width:100%;margin:0;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;box-sizing:border-box}.projection-selector-section{display:flex;justify-content:flex-start;margin-bottom:1rem}.projection-summary{margin-bottom:2rem}.summary-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000000d}.summary-card h2{margin:0 0 .5rem;font-size:1.5rem;color:#1a1a1a}.summary-card .description{margin:0 0 1.5rem;color:#666;font-size:.95rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat{display:flex;flex-direction:column;gap:.5rem}.stat label{font-size:.875rem;color:#666;font-weight:500}.stat-value{font-size:1.25rem;font-weight:600;color:#1a1a1a}.stat-value.budget{color:#06c}.stat-value.over-budget{color:#d32f2f}.stat-value.under-budget{color:#2e7d32}.content-grid{display:flex;width:100%;flex-direction:row;gap:2rem}@media (max-width: 1024px){.content-grid{grid-template-columns:1fr}}.monthly-burn-section,.available-groups-section,.resource-groups-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.monthly-burn-section{width:50vw;height:68vh;overflow-y:auto}.available-groups-section{width:15vw;margin-bottom:2rem;height:68vh;overflow-y:auto}.resource-groups-section{width:25vw;margin-bottom:2rem;height:68vh;overflow-y:auto}.monthly-burn-section h2,.resource-groups-section h2,.available-groups-section h2{margin:0 0 1rem;font-size:1.25rem;color:#1a1a1a}.groups-container{min-height:200px;margin-top:1rem}.groups-list{display:flex;flex-direction:column;gap:1rem}.available-group-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:1rem;cursor:pointer;transition:all .2s}.available-group-card:hover{background:#f0f0f0;border-color:#06c;box-shadow:0 2px 4px #0066cc1a;transform:translateY(-1px)}.available-group-card h3{margin:0 0 .5rem;font-size:1rem;color:#1a1a1a}.group-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;padding:1rem;max-height:400px}.group-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.group-card h3{margin:0;font-size:1rem;color:#1a1a1a}.group-label{font-size:.875rem;color:#666;font-style:italic;margin-bottom:.5rem}.btn-edit-mapping,.btn-delete-mapping{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s;line-height:1}.btn-edit-mapping:hover{background-color:#f0f0f0}.btn-delete-mapping{color:#d32f2f}.btn-delete-mapping:hover{background-color:#ffebee;color:#b71c1c}.configured-group-details,.group-details{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem;color:#666;margin-bottom:.75rem}.configured-group-details{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;max-height:100px;overflow-y:auto}.group-burn-calculation{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e0e0e0;color:#1a1a1a}.burn-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem}.burn-row.total{font-weight:600;font-size:1rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e0e0e0}.group-item-header{color:#1a1a1a;font-size:1rem;font-weight:600}.actions-section{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px}.gantt-chart-section{width:100%;margin-bottom:2rem}.gantt-chart-section h2{margin:0 0 1rem;font-size:1.5rem;color:#1a1a1a}.resource-rate-chart-section{width:100%;margin-bottom:2rem}.resource-rate-chart-section h2{margin:0 0 1rem;font-size:1.5rem;color:#1a1a1a}.resource-group-chart-section{width:100%;margin-bottom:2rem}.resource-group-chart-section h2{margin:0 0 1rem;font-size:1.5rem;color:#1a1a1a}.chart-empty-state{padding:3rem;text-align:center;color:#999;background:#f9f9f9;border:1px dashed #e0e0e0;border-radius:8px}.chart-empty-state p{margin:0;font-size:1rem}.rate-chart-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:100%;padding:1.5rem;overflow-x:auto}.rate-chart-svg{width:100%;height:auto;min-width:800px}.axis-label{font-size:.875rem;font-weight:600;fill:#666}.axis-tick{font-size:.75rem;fill:#666}.grid-line{stroke:#e0e0e0;stroke-width:1;stroke-dasharray:2,2}.rate-line{stroke-linecap:round;stroke-linejoin:round}.rate-point{cursor:pointer;transition:r .2s}.rate-point:hover{r:6}.chart-legend{font-size:.813rem}.legend-text{fill:#1a1a1a;font-size:.813rem}.gantt-empty-state{padding:3rem;text-align:center;color:#999;background:#f9f9f9;border:1px dashed #e0e0e0;border-radius:8px}.gantt-empty-state p{margin:0;font-size:1rem}.gantt-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow-x:hidden;width:100%;overflow-y:visible}.gantt-timeline-header{display:flex;border-bottom:2px solid #e0e0e0;background:#f9f9f9;position:sticky;top:0;z-index:10}.gantt-row-label-header{width:200px;min-width:200px;padding:.75rem 1rem;font-weight:600;font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #e0e0e0;background:#f9f9f9}.gantt-timeline-area{flex:1;position:relative;width:100%;height:60px;border-left:1px solid #e0e0e0}.gantt-month-marker{position:absolute;top:0;height:100%;pointer-events:none}.gantt-month-line{position:absolute;top:0;left:0;width:1px;height:100%;background:#d0d0d0;z-index:1}.gantt-month-label{position:absolute;top:.5rem;left:.5rem;font-size:.75rem;color:#666;font-weight:500;white-space:nowrap;background:#f9f9f9;padding:.125rem .25rem;border-radius:2px}.gantt-month-label.clickable{cursor:pointer;transition:all .2s;pointer-events:auto}.gantt-month-label.clickable:hover{background:#e0e0e0;color:#06c;transform:scale(1.05)}.gantt-content{display:flex;flex-direction:column}.gantt-row{display:flex;border-bottom:1px solid #f0f0f0;min-height:60px;position:relative}.gantt-row:last-child{border-bottom:none}.gantt-row-label{width:200px;min-width:200px;padding:.75rem 1rem;border-right:1px solid #e0e0e0;background:#fafafa;display:flex;align-items:center;position:sticky;left:0;z-index:5}.gantt-group-name{font-size:.938rem;color:#1a1a1a;font-weight:500}.gantt-row .gantt-timeline-area{position:relative;min-height:60px;height:auto}.gantt-bar{position:absolute;height:40px;background:linear-gradient(135deg,#06c,#0052a3);border-radius:4px;border:1px solid #004080;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:all .2s;z-index:2;overflow:visible;display:flex;align-items:center;padding:0 .75rem}.gantt-bar:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px);z-index:3}.gantt-bar-label{font-size:.813rem;color:#fff;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center;flex-shrink:0;position:relative}.gantt-bar-quantity{font-size:.75rem;opacity:.9;margin-left:.25rem}.gantt-bar:nth-child(1){background:linear-gradient(135deg,#06c,#0052a3)}.gantt-bar:nth-child(2){background:linear-gradient(135deg,#388e3c,#2e7d32)}.gantt-bar:nth-child(3){background:linear-gradient(135deg,#d32f2f,#b71c1c)}.gantt-bar:nth-child(4){background:linear-gradient(135deg,#f57c00,#e65100)}.gantt-bar:nth-child(5){background:linear-gradient(135deg,#7b1fa2,#6a1b9a)}.gantt-bar:nth-child(6){background:linear-gradient(135deg,#0288d1,#01579b)}.gantt-bar:nth-child(7n+1){background:linear-gradient(135deg,#06c,#0052a3)}.gantt-bar:nth-child(7n+2){background:linear-gradient(135deg,#388e3c,#2e7d32)}.gantt-bar:nth-child(7n+3){background:linear-gradient(135deg,#d32f2f,#b71c1c)}.gantt-bar:nth-child(7n+4){background:linear-gradient(135deg,#f57c00,#e65100)}.gantt-bar:nth-child(7n+5){background:linear-gradient(135deg,#7b1fa2,#6a1b9a)}.gantt-bar:nth-child(7n+6){background:linear-gradient(135deg,#0288d1,#01579b)}.gantt-bar:nth-child(7n+7){background:linear-gradient(135deg,#c2185b,#880e4f)}.burn-schedule-filter{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.filter-label{font-size:.938rem;font-weight:500;color:#1a1a1a;white-space:nowrap}.group-filter-select{padding:.5rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:.938rem;font-family:inherit;background-color:#fff;color:#1a1a1a;cursor:pointer;min-width:200px;transition:border-color .2s,box-shadow .2s}.group-filter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.group-filter-select:hover{border-color:#06c}.burn-table tbody tr.month-row.clickable{cursor:pointer;transition:background-color .2s}.burn-table tbody tr.month-row.clickable:hover{background-color:#f0f0f0}.burn-table tbody tr.month-row.clickable td:first-child{display:flex;align-items:center;gap:.5rem}.expand-icon{display:inline-block;width:1rem;font-size:.75rem;color:#666;transition:transform .2s}.burn-table tbody tr.expanded-row{background-color:#f9f9f9}.burn-table tbody tr.expanded-row td{padding:0;border-top:none}.expanded-content{padding:1.5rem!important}.active-groups-container{width:100%}.active-groups-header{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1a1a1a}.no-active-groups{color:#999;font-style:italic;margin:0;padding:1rem 0}.active-groups-list{display:flex;flex-direction:column;gap:.75rem}.active-group-item{cursor:default;background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:1rem;transition:box-shadow .2s}.active-group-item.clickable{cursor:pointer;transition:background-color .2s,border-color .2s}.active-group-item.clickable:hover{background-color:#f0f7ff;border-color:#06c}.active-group-item:hover{box-shadow:0 2px 4px #0000001a}.active-group-header{display:flex;flex-direction:row;justify-content:flex-start;gap:.75rem;margin-bottom:.75rem}.active-group-name{font-weight:600;font-size:.938rem;color:#1a1a1a}.active-group-subtitle{font-size:.875rem;color:#666;font-style:italic}.active-group-details{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.875rem;color:#666}.active-group-details span{display:flex;align-items:center}.active-group-monthly-burn{font-weight:600;color:#1a1a1a;font-family:Courier New,monospace}.mapping-details-overlay,.month-details-overlay,.projection-selection-overlay,.create-projection-overlay,.create-mapping-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.mapping-details-dialog,.month-details-dialog,.projection-selection-dialog,.create-projection-dialog,.create-mapping-dialog{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;width:90%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.mapping-details-dialog{max-width:1200px}.month-details-dialog{max-width:1500px}.projection-selection-dialog{max-width:700px}.create-projection-dialog{max-width:600px;overflow-y:auto}.create-mapping-dialog{max-width:500px;overflow-y:auto}.mapping-details-header,.month-details-header,.projection-selection-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0;flex-shrink:0}.mapping-details-header h2,.month-details-header h2,.projection-selection-header h2{margin:0;font-size:1.5rem;color:#1a1a1a;font-weight:600}.mapping-details-content,.month-details-content,.projection-selection-content{padding:1.5rem;overflow-y:auto;flex:1}.details-section{margin-bottom:2rem}.details-section:last-child{margin-bottom:0}.details-section h3{margin:0 0 1rem;font-size:1.125rem;color:#1a1a1a;font-weight:600;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.detail-item span{font-size:.938rem;color:#1a1a1a;word-break:break-word}.mapping-details-actions,.month-details-actions,.projection-selection-actions{display:flex;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e0e0e0;flex-shrink:0}.projection-selection-actions{justify-content:center}.loading-state{text-align:center;padding:3rem 1rem;color:#666}.loading-state p{margin:0;font-size:1rem}.projections-list{display:flex;flex-direction:column;gap:.75rem}.projection-item{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:1rem;cursor:pointer;transition:all .2s}.projection-item:hover{background-color:#f0f7ff;border-color:#06c;box-shadow:0 2px 4px #0066cc1a}.projection-item-header{margin-bottom:.75rem}.projection-item-header h3{margin:0 0 .5rem;font-size:1.125rem;color:#1a1a1a;font-weight:600}.projection-description{margin:0;font-size:.875rem;color:#666;line-height:1.4}.projection-item-details{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.875rem;color:#666}.projection-item-details span{display:flex;align-items:center}.create-projection-form,.create-mapping-form{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.burn-calculation-display{padding:.75rem;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px}.burn-calculation-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem;color:#1a1a1a}.burn-calculation-row.total{font-weight:600;font-size:1rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e0e0e0}.burn-calculation-row .burn-value{font-family:Courier New,monospace;font-weight:600;color:#1a1a1a}.no-groups-message{color:#666;font-style:italic;padding:1rem 0}.resource-rate-chart-section{display:flex;flex-direction:row;gap:2rem;width:100%;margin-bottom:2rem}:root{--primary-font-size: 12px}.valid.modified:not([type=checkbox]){outline:1px solid #26b050}.invalid{outline:1px solid red}.validation-message{color:red}#blazor-error-ui{color-scheme:light only;background:#ffffe0;bottom:0;box-shadow:0 -1px 2px #0003;box-sizing:border-box;display:none;left:0;padding:.6rem 1.25rem .7rem;position:fixed;width:100%;z-index:1000}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff}.blazor-error-boundary:after{content:"An error has occurred."}.loading-progress{position:absolute;display:block;width:8rem;height:8rem;inset:20vh 0 auto 0;margin:0 auto}.loading-progress circle{fill:none;stroke:#e0e0e0;stroke-width:.6rem;transform-origin:50% 50%;transform:rotate(-90deg)}.loading-progress circle:last-child{stroke:#1b6ec2;stroke-dasharray:calc(3.141 * var(--blazor-load-percentage, 0%) * .8),500%;transition:stroke-dasharray .05s ease-in-out}.loading-progress-text{position:absolute;text-align:center;font-weight:700;inset:calc(20vh + 3.25rem) 0 auto .2rem}.loading-progress-text:after{content:var(--blazor-load-percentage-text, "Loading")}code{color:#c02d76}.header_text{font-size:1rem!important;white-space:nowrap}.job-tab-panel{max-height:100%;width:100%}.mud-dialog{border-radius:6px}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:var(--bs-secondary-color);text-align:end}.form-floating>.form-control-plaintext:focus::placeholder,.form-floating>.form-control:focus::placeholder{text-align:start}.combo-box-container{max-height:50px;position:relative}.combo-box-popover{width:100%;overflow-y:hidden}.virtualized-list-item{overflow-y:auto}.mud-table,.mud-data-grid{border-radius:12px}.mud-button{font-size:var(--primary-font-size)!important}.mud-toolbar .mud-button-label{font-size:14px!important}.grid-button{color:var(--mud-palette-text-primary)!important;white-space:nowrap!important;vertical-align:middle!important;text-align:left!important;font-size:var(--primary-font-size)!important}.mud-table-cell .mud-button-label{font-size:var(--primary-font-size)!important;padding:2px}.grid-button .mud-button-label{text-align:left!important;justify-content:start!important;align-items:center!important;font-weight:400!important}.center-col-content{text-align:center!important;justify-content:center!important;align-items:center!important}.mud-table-row{font-size:var(--primary-font-size)!important}.mud-table-cell{font-size:var(--primary-font-size)!important;text-align:left}.mud-table-head th{white-space:nowrap!important;text-align:left}.grid-search-box{height:100%;border-radius:5px!important}.grid-text{font-size:var(--primary-font-size)!important}.col-no-wrap{overflow-x:hidden;white-space:nowrap}.st-col-xxs,.st-col-xxs.mud-table-cell{width:25px!important}.st-col-xs,.st-col-xs.mud-table-cell{width:50px!important}.st-col-sm,.st-col-sm.mud-table-cell{width:120px!important}.st-col,.st-col.mud-table-cell{width:150px!important}.st-col-lg,.st-col-lg.mud-table-cell{width:200px!important}.st-col-xl,.st-col-xl.mud-table-cell{width:300px!important}.st-tab-header{padding:5px}.st-tab-panel{font-size:.78rem!important;min-height:25px!important;padding:4px!important}.st-card-sm{border:1px solid #e0e0e0;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;padding:10px;width:100%}.st-card-sm p{padding-top:5px;font-size:.78rem!important;line-height:1.4;font-weight:450}.st-card-md{border:1px solid #e0e0e0;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;padding:10px;width:100%}.st-row-sm{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;width:100%}.job-tab-grid{height:65vh;overflow-y:auto;width:100%}.st-dropdown-popover{overflow-y:hidden!important;max-height:100%!important}.grid-checkbox{margin-left:auto;margin-right:auto;height:18px;width:18px}.st-outlined{border:1px solid var(--mud-palette-lines-default)}.st-rounded{border-radius:12px}.dash-card{border-radius:12px;padding:10px;width:100%;margin-bottom:10px;min-height:5vh;border:1px solid var(--mud-palette-lines-default)}.dash-table{width:100%}.dash-chart{width:100%;height:35vh}.dialog-resource-list{min-height:50vh;width:100%}.documentation-container{position:fixed;top:0;left:0;width:100vw;height:100vh;padding:0;margin:0;overflow:hidden}.documentation-popup{width:100%;height:80vh;overflow:hidden}.documentation-iframe{width:100%;height:100%;border:none;display:block}.example-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:10px;background-color:#f5f5f5;border-radius:4px}.example-header span{font-size:12px;font-weight:500;color:#000000de}.example-header input{flex:1;max-width:300px;padding:8px 12px;font-size:12px;border:1px solid #e0e0e0;border-radius:4px;outline:none;transition:border-color .2s}.example-header input:focus{border-color:#234c7c}.example-header input::placeholder{color:#00000061}.export-button{padding:8px 16px;font-size:12px;font-weight:500;background-color:#234c7c;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s;white-space:nowrap}.export-button:hover{background-color:#1a3a5e}.export-button:active{background-color:#152f4d}.dark .example-header{background-color:#2d2d2d}.dark .example-header span{color:#ffffffde}.dark .example-header input{background-color:#1e1e1e;border-color:#424242;color:#ffffffde}.dark .example-header input:focus{border-color:#234c7c}.dark .example-header input::placeholder{color:#ffffff61}.dark .export-button{background-color:#234c7c;color:#fff}.dark .export-button:hover{background-color:#2d5a92}.dark .export-button:active{background-color:#1a3a5e}.invoice-grid{color:var(--theme-text-primary);height:calc(100vh - 90px);max-height:calc(100vh - 90px);overflow:hidden;position:relative;background-color:var(--theme-background)}.invoice-grid__main{display:flex;flex-direction:column;overflow:hidden;padding-left:20px;padding-right:20px;padding-bottom:10px;height:100%}.invoice-grid__header{margin-bottom:10px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.invoice-grid__content{flex:1;overflow:hidden;display:flex;flex-direction:column}.invoice-grid__error{padding:16px;margin:16px;background-color:color-mix(in srgb,var(--theme-error) 10%,var(--theme-paper));border:1px solid var(--theme-error);border-radius:var(--theme-border-radius);color:var(--theme-error);box-shadow:0 2px 4px color-mix(in srgb,var(--theme-error) 10%,transparent)}.invoice-grid__error strong{display:block;margin-bottom:8px}.invoice-grid-view{height:100%;display:flex;flex-direction:column}.invoice-table-wrapper{position:relative;flex:1;overflow:auto}.invoice-table-container{overflow:auto;height:100%;border:1px solid var(--theme-divider);border-radius:0 0 var(--theme-border-radius) var(--theme-border-radius);background-color:var(--theme-paper)}.invoice-table{width:100%;border-collapse:collapse;font-size:14px;background-color:var(--theme-paper);color:var(--theme-text-primary)}.invoice-table thead{position:sticky;top:0;background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%);z-index:10;box-shadow:0 2px 4px #0000000d}.invoice-table th{padding:12px 8px;text-align:left;font-weight:600;border-bottom:2px solid var(--theme-divider);background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%);white-space:nowrap;-webkit-user-select:none;user-select:none}.invoice-table td{padding:10px 8px;border-bottom:1px solid var(--theme-divider);vertical-align:middle}.invoice-table tbody tr{transition:background-color .15s ease}.invoice-table tbody tr:hover{background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%)}.invoice-table tbody tr.selected{background-color:color-mix(in srgb,var(--theme-primary) 20%,var(--theme-paper))}.invoice-table tbody tr.selected:hover{background-color:color-mix(in srgb,var(--theme-primary) 25%,var(--theme-paper))}.expand-button{background:none;border:none;cursor:pointer;font-size:14px;padding:4px 8px;color:var(--theme-primary);border-radius:var(--theme-border-radius);transition:background-color .2s}.expand-button:hover{background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper))}.expand-button:disabled{color:var(--theme-text-disabled);cursor:not-allowed}.row-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--theme-primary)}.edit-button,.export-button{padding:6px 14px;font-size:13px;cursor:pointer;border:none;border-radius:var(--theme-border-radius);transition:all .2s;font-weight:500;box-shadow:0 1px 3px #0000001f}.edit-button{background-color:var(--theme-primary);color:var(--theme-primary-contrast)}.edit-button:hover{background-color:color-mix(in srgb,var(--theme-primary) 90%,black);box-shadow:0 2px 4px #00000029}.export-button{background-color:var(--theme-success);color:var(--theme-success-contrast)}.export-button:hover{background-color:color-mix(in srgb,var(--theme-success) 90%,black);box-shadow:0 2px 4px #00000029}.actions-button{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;color:var(--theme-text-secondary);border-radius:var(--theme-border-radius);transition:background-color .2s}.actions-button:hover{background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%)}.expanded-row-content{padding:16px;background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%);border-top:1px solid var(--theme-divider)}.selected-count-banner{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:color-mix(in srgb,var(--theme-primary) 15%,var(--theme-paper));color:var(--theme-text-primary);border-bottom:1px solid var(--theme-divider);font-weight:500;gap:12px}.render-all-selected-btn{padding:6px 14px;font-size:13px;cursor:pointer;border:none;border-radius:var(--theme-border-radius);transition:all .2s;font-weight:500;background-color:var(--theme-primary);color:var(--theme-primary-contrast);box-shadow:0 1px 3px #0000001f}.render-all-selected-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 90%,black);box-shadow:0 2px 4px #00000029;transform:translateY(-1px)}.render-all-selected-btn:active{transform:translateY(0);box-shadow:0 1px 2px #0000001f}.invoice-notes-list-item{border:1px solid var(--theme-divider)}.invoice-job-purchase-order-section{background-color:var(--theme-background);color:var(--theme-text-primary)}.invoice-job-purchase-order-table{background-color:var(--theme-paper)!important;border:1px solid var(--theme-divider)!important}.invoice-job-purchase-order-table .MuiTable-root{background-color:var(--theme-paper)}.invoice-job-purchase-order-table .MuiTableHead-root{background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%)}.invoice-job-purchase-order-table .MuiTableCell-head{font-weight:600;border-bottom:2px solid var(--theme-divider);background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%);color:var(--theme-text-primary)}.invoice-job-purchase-order-table .MuiTableCell-body{color:var(--theme-text-primary);border-bottom:1px solid var(--theme-divider)}.invoice-job-purchase-order-table .MuiTableRow-root:hover{background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%)}.invoice-job-purchase-order-table .MuiTableHead-root:last-child .MuiTableRow-root{background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%)}.invoice-job-purchase-order-table .MuiTableHead-root:last-child .MuiTableCell-root{font-weight:600;border-top:2px solid var(--theme-divider);color:var(--theme-text-primary)}.invoice-controls-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:var(--theme-background);border:1px solid var(--theme-divider);border-bottom:none;border-radius:var(--theme-border-radius) var(--theme-border-radius) 0 0;gap:16px;flex-wrap:wrap}.invoice-controls-bar__expand-controls{display:flex;gap:8px}.invoice-controls-bar__control-btn{padding:6px 12px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s}.invoice-controls-bar__control-btn:hover{background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.invoice-controls-bar__pagination-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.invoice-controls-bar__page-info{font-size:13px;color:var(--theme-text-secondary);white-space:nowrap}.invoice-controls-bar__page-size-select{padding:6px 10px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:border-color .2s}.invoice-controls-bar__page-size-select:hover{border-color:var(--theme-primary)}.invoice-controls-bar__page-size-select:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-primary) 10%,transparent)}.invoice-controls-bar__page-buttons{display:flex;align-items:center;gap:4px}.invoice-controls-bar__page-btn{padding:6px 10px;font-size:13px;background-color:var(--theme-paper);color:var(--theme-text-primary);border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);cursor:pointer;transition:background-color .2s,border-color .2s;min-width:32px}.invoice-controls-bar__page-btn:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-paper));border-color:var(--theme-primary);color:var(--theme-primary)}.invoice-controls-bar__page-btn:disabled{opacity:.4;cursor:not-allowed;color:var(--theme-text-disabled)}.invoice-controls-bar__page-number{font-size:13px;color:var(--theme-text-secondary);padding:0 8px;white-space:nowrap}.invoice-controls-bar+.invoice-table-wrapper .invoice-table-container{border-radius:0 0 var(--theme-border-radius) var(--theme-border-radius)}@media (max-width: 768px){.invoice-table{font-size:12px}.invoice-table th,.invoice-table td{padding:6px 4px}.invoice-controls-bar{flex-direction:column;align-items:stretch}.invoice-controls-bar__pagination-controls{justify-content:center}}.job-cost-filter-panel{width:0;min-width:0;height:100%;background-color:var(--theme-background);border-right:none;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;color:var(--theme-text-primary)}.job-cost-filter-panel.open{width:320px;min-width:320px;border-right:none;box-shadow:none}.job-cost-filter-panel__header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:none;background-color:transparent;flex-shrink:0}.job-cost-filter-panel__header-content{display:flex;flex-direction:column;gap:.25rem}.job-cost-filter-panel__header h3{margin:0;font-size:1.1rem;font-weight:500;color:var(--theme-text-primary)}.job-cost-filter-panel__active-count{font-size:.75rem;color:var(--theme-primary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.job-cost-filter-panel__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--theme-text-secondary);padding:.25rem .5rem;line-height:1;transition:color .2s ease}.job-cost-filter-panel__close:hover{color:var(--theme-text-primary)}.job-cost-filter-panel__content{padding:1rem;flex:1;overflow-y:auto;overflow-x:hidden}.job-cost-filter-panel__section{margin-bottom:2rem}.job-cost-filter-panel__section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--theme-text-primary, #333)}.job-cost-filter-panel__content .MuiAccordion-root{background-color:transparent!important;background-image:none!important;color:var(--theme-text-primary);box-shadow:none!important;border:none;margin-bottom:0;border-radius:0!important}.job-cost-filter-panel__content .MuiAccordion-root:first-of-type{border-top-left-radius:0!important;border-top-right-radius:0!important}.job-cost-filter-panel__content .MuiAccordion-root:last-of-type{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.job-cost-filter-panel__content .MuiAccordion-root:before{display:none}.job-cost-filter-panel__content .MuiAccordionSummary-root{background-color:transparent;min-height:48px;padding:0 1rem;border-bottom:none}.job-cost-filter-panel__content .MuiAccordionSummary-root:hover{background-color:color-mix(in srgb,var(--theme-text-primary) 5%,transparent)}.job-cost-filter-panel__content .MuiAccordionSummary-content{margin:12px 0;width:100%}.job-cost-filter-panel__content .MuiAccordionSummary-expandIconWrapper{color:var(--theme-text-secondary);transition:transform .2s ease}.job-cost-filter-panel__content .MuiAccordionSummary-expandIconWrapper.Mui-expanded{transform:rotate(180deg)}.job-cost-filter-panel__content .MuiAccordionDetails-root{padding:.5rem 1rem 1rem;display:flex;flex-direction:column;gap:.75rem;background-color:transparent;border-top:none}.job-cost-filter-panel__accordion-title{margin:0;font-size:.9rem;font-weight:400;color:var(--theme-text-primary);letter-spacing:.02em;display:flex;align-items:center;gap:.5rem}.job-cost-filter-panel__filter-count{background-color:var(--theme-primary);color:#fff;font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:10px;min-width:1.25rem;text-align:center}.job-cost-filter-panel__search-container{position:relative;margin-bottom:.75rem}.job-cost-filter-panel__search-input{width:100%;padding:.5rem 2rem .5rem .75rem;border:1px solid var(--theme-divider);border-radius:4px;background-color:var(--theme-paper);color:var(--theme-text-primary);font-size:.85rem;transition:border-color .2s ease,background-color .2s ease;box-sizing:border-box}.job-cost-filter-panel__search-input:focus{outline:none;border-color:var(--theme-primary);background-color:var(--theme-paper)}.job-cost-filter-panel__search-input::placeholder{color:var(--theme-text-secondary)}.job-cost-filter-panel__search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--theme-text-secondary, #666);font-size:1rem;cursor:pointer;padding:.25rem;line-height:1;border-radius:var(--theme-border-radius, 4px);transition:color .2s ease,background-color .2s ease}.job-cost-filter-panel__search-clear:hover{background-color:color-mix(in srgb,var(--theme-text-primary, #000) 5%,transparent);color:var(--theme-text-primary, #000)}.job-cost-filter-panel__reset-all{width:100%;padding:.75rem 1rem;background-color:var(--theme-primary, #007bff);color:#fff;border:none;border-radius:var(--theme-border-radius, 4px);cursor:pointer;font-size:.95rem;font-weight:600;transition:background-color .2s ease,opacity .2s ease}.job-cost-filter-panel__reset-all:hover:not(:disabled){background-color:color-mix(in srgb,var(--theme-primary, #007bff) 85%,black)}.job-cost-filter-panel__reset-all:disabled{opacity:.5;cursor:not-allowed}.job-cost-filter-panel__checkbox-list{height:200px;min-height:200px;max-height:200px;overflow-y:auto;border:1px solid var(--theme-divider);border-radius:4px;padding:0;background-color:var(--theme-paper)}.job-cost-filter-panel__checkbox-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;cursor:pointer;border-radius:0;transition:background-color .2s ease;border-bottom:1px solid var(--theme-divider)}.job-cost-filter-panel__checkbox-item:last-child{border-bottom:none}.job-cost-filter-panel__checkbox-item:hover{background-color:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-paper))}.job-cost-filter-panel__checkbox-item input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--theme-primary);flex-shrink:0}.job-cost-filter-panel__checkbox-item span{flex:1;font-size:.85rem;color:var(--theme-text-primary)}.job-cost-filter-panel__empty{padding:1rem;text-align:center;color:var(--theme-text-secondary, #999);font-style:italic;font-size:.85rem}.job-cost-filter-panel__checkbox-list::-webkit-scrollbar{width:8px}.job-cost-filter-panel__checkbox-list::-webkit-scrollbar-track{background:var(--scrollbar-track, #f1f1f1);border-radius:4px}.job-cost-filter-panel__checkbox-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #888);border-radius:4px}.job-cost-filter-panel__checkbox-list::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #555)}.job-cost-grid{color:var(--theme-text-primary);height:calc(100vh - 90px);max-height:calc(100vh - 90px);overflow:hidden;position:relative;background-color:var(--theme-background);display:flex;flex-direction:row}.job-cost-grid__main{display:flex;flex-direction:column;overflow:hidden;padding-left:20px;padding-right:20px;padding-bottom:10px;height:100%;flex:1;min-width:0}.job-cost-grid__header{margin-bottom:10px;margin-top:10px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.job-cost-grid__content{flex:1;overflow:hidden;display:flex;flex-direction:column}.job-cost-grid__error{padding:16px;margin:16px;background-color:color-mix(in srgb,var(--theme-error) 10%,var(--theme-paper));border:1px solid var(--theme-error);border-radius:var(--theme-border-radius);color:var(--theme-error);box-shadow:0 2px 4px color-mix(in srgb,var(--theme-error) 10%,transparent)}.job-cost-grid__error strong{display:block;margin-bottom:8px}.job-cost-table-view{height:100%;display:flex;flex-direction:column}.job-cost-table-wrapper{position:relative;flex:1;overflow:auto}.job-cost-table-container{overflow:auto;height:100%;border:1px solid var(--theme-divider);border-radius:var(--theme-border-radius);background-color:var(--theme-paper)}.job-cost-table{width:100%;border-collapse:collapse;font-size:14px;background-color:var(--theme-paper);color:var(--theme-text-primary)}.job-cost-table thead{position:sticky;top:0;background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%);z-index:10;box-shadow:0 2px 4px #0000000d}.job-cost-table th{padding:12px 8px;text-align:left;font-weight:600;border-bottom:2px solid var(--theme-divider);background-color:color-mix(in srgb,var(--theme-paper) 95%,var(--theme-text-primary) 5%);white-space:nowrap;-webkit-user-select:none;user-select:none}.job-cost-table td{padding:10px 8px;border-bottom:1px solid var(--theme-divider);vertical-align:middle}.job-cost-table tbody{position:relative}.job-cost-table tbody tr{display:table-row;transition:background-color .15s ease}.job-cost-table tbody tr:hover{background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%)}.job-cost-table tbody tr[style*="position: absolute"] td{display:table-cell}.sortable-header{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.table-footer{display:flex;align-items:center;padding:12px 8px;font-weight:600;background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%);color:var(--theme-text-primary)}.job-cost-table-footer{position:sticky;bottom:0;display:flex;align-items:center;padding:12px 8px;font-weight:600;background-color:color-mix(in srgb,var(--theme-paper) 97%,var(--theme-text-primary) 3%);color:var(--theme-text-primary);border-top:2px solid var(--theme-divider);z-index:5}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:color-mix(in srgb,var(--theme-paper) 80%,transparent);display:flex;align-items:center;justify-content:center;z-index:100}.loading-spinner{padding:20px;background-color:var(--theme-paper);color:var(--theme-text-primary);border-radius:var(--theme-border-radius);box-shadow:0 2px 8px #0000001a;font-weight:600}.job-cost-table-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 0;margin-bottom:8px;flex-shrink:0}.job-cost-table-toolbar__left,.job-cost-table-toolbar__right{display:flex;align-items:center;gap:8px}@media (max-width: 768px){.job-cost-table{font-size:12px}.job-cost-table th,.job-cost-table td{padding:6px 4px}.job-cost-grid__header{gap:8px}}
