@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Outfit:wght@400;500;600;700&display=swap";.virtualized-grid{display:flex;flex-direction:column;background:#fff;overflow:auto;height:calc(100vh - 120px);position:relative}.virtualized-grid:focus{outline:none}.virtualized-grid-header{display:flex;position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--gray-300);min-width:fit-content}.virtualized-frozen-column{width:280px;flex-shrink:0;box-sizing:border-box;background:#fff;position:sticky;left:0;z-index:30;border-right:1px solid var(--gray-200);min-height:80px}.virtualized-date-headers{display:flex;flex-direction:column;position:relative;min-height:80px}.virtualized-month-row{display:flex;position:relative;height:20px;border-bottom:1px solid var(--gray-200)}.virtualized-month-header{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.03em;padding:.25rem .5rem;box-sizing:border-box;border-right:1px solid var(--gray-200);white-space:nowrap;overflow:visible}.virtualized-header-row{display:flex;position:relative;height:20px}.virtualized-header-cell{box-sizing:border-box;text-align:center;font-family:var(--font-mono);font-size:.6875rem;padding:.1875rem 0;color:var(--gray-400);text-transform:uppercase;letter-spacing:.03em}.virtualized-header-cell.day-number{font-weight:600;color:var(--gray-700);font-size:.75rem;letter-spacing:0;text-transform:none}.virtualized-header-cell.today{background:var(--today-bg);color:var(--today-text);font-weight:600}.virtualized-grid-body{min-width:fit-content}.virtualized-project-header{display:flex;align-items:stretch;background:var(--gray-100);min-width:fit-content}.virtualized-project-name{width:280px;flex-shrink:0;box-sizing:border-box;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:var(--font-display);font-weight:600;font-size:.8125rem;color:var(--gray-800);background:var(--gray-100);position:sticky;left:0;z-index:10;border-right:1px solid var(--gray-200);letter-spacing:-.01em}.virtualized-project-name:before{content:"";width:3px;height:14px;background:var(--accent-500);border-radius:1px;flex-shrink:0}.virtualized-project-spacer{flex:1}.virtualized-employee-row{display:flex;align-items:stretch;border-bottom:1px solid var(--gray-100);transition:background-color .1s ease}.virtualized-employee-row:hover,.virtualized-employee-row:hover .virtualized-employee-name{background:var(--gray-50)}.virtualized-employee-name{width:280px;flex-shrink:0;box-sizing:border-box;display:flex;align-items:center;padding:0 1rem 0 1.75rem;font-family:var(--font-display);font-size:.8125rem;font-weight:500;color:var(--gray-700);background:#fff;position:sticky;left:0;z-index:5;border-right:1px solid var(--gray-200);transition:background-color .1s ease}.virtualized-allocation-cells{display:flex;position:relative;flex:1}.virtualized-cell-wrapper{display:flex;align-items:stretch}.virtualized-cell-wrapper .allocation-cell{width:100%;height:100%}.allocation-cell.static-cell{display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--gray-700);-webkit-user-select:none;user-select:none;cursor:default}.allocation-cell.static-cell.has-value{font-weight:500}.active-cell-input{border:none;background:var(--accent-50);outline:2px solid var(--accent-400);outline-offset:-2px;border-radius:2px;text-align:center;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--gray-700);padding:0;box-sizing:border-box}.sidebar{display:flex;flex-direction:column;width:700px;border-left:1px solid var(--gray-200);background:#fff;height:100vh;position:fixed;top:0;right:0;z-index:200;box-shadow:var(--shadow-lg);animation:slideIn .2s ease-out;font-family:var(--font-display)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--gray-200)}.sidebar-header h2{margin:0;font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--gray-900);letter-spacing:-.01em}.sidebar-header button{background:transparent;border:none;padding:.375rem .5rem;cursor:pointer;font-size:.875rem;color:var(--gray-400);border-radius:6px;transition:all .15s ease}.sidebar-header button:hover{background:var(--gray-100);color:var(--gray-600)}.sidebar-header .generate-data-button{margin-left:auto;margin-right:.5rem;font-size:.75rem;padding:.25rem .5rem;background:var(--gray-100);color:var(--gray-600);border:1px dashed var(--gray-300)}.sidebar-header .generate-data-button:hover{background:var(--gray-200);border-color:var(--gray-400)}.sidebar-panels{display:flex;flex:1;overflow:hidden}.sidebar-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:1rem 1.25rem;min-width:0}.sidebar-panel:first-child{border-right:1px solid var(--gray-100)}.panel-header{flex-shrink:0}.panel-toggles{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.75rem}.panel-toggles label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--gray-500);cursor:pointer}.panel-toggles input[type=checkbox]{width:12px;height:12px;cursor:pointer;accent-color:var(--accent-500)}.sidebar-panel h3{margin:0 0 .75rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400)}.sidebar-search{margin-bottom:.75rem}.sidebar-search input{width:100%;box-sizing:border-box;padding:.4375rem .625rem;border:1px solid var(--gray-200);border-radius:6px;font-family:var(--font-display);font-size:.8125rem;outline:none;transition:all .15s ease;background:#fff}.sidebar-search input:focus{border-color:var(--accent-400);box-shadow:0 0 0 3px var(--accent-50)}.sidebar-search input::placeholder{color:var(--gray-400)}.sidebar-section{padding:1rem 1.25rem;border-bottom:1px solid var(--gray-100)}.sidebar-section h3{margin:0 0 .75rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400)}.sidebar-list{list-style:none;margin:0;padding:0;flex:1;overflow-y:auto}.panel-footer{flex-shrink:0;padding-top:.75rem;border-top:1px solid var(--gray-100);margin-top:.75rem}.panel-footer .add-button,.panel-footer .add-form{margin-top:0}.sidebar-list-item{display:flex;flex-direction:column;gap:0;border-radius:6px;transition:background-color .1s ease}.item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;color:var(--gray-700)}.item-actions{display:flex;gap:.125rem;opacity:0;transition:opacity .15s ease}.sidebar-list-item:hover .item-actions,.sidebar-list-item.archived .item-actions{opacity:1}.sidebar-list-item.archived .item-name{opacity:.5;text-decoration:line-through}.sidebar-list-item button,.item-actions button{background:transparent;border:none;padding:.25rem .375rem;cursor:pointer;font-family:var(--font-mono);font-size:.6875rem;color:var(--gray-400);border-radius:4px;transition:all .15s ease}.sidebar-list-item button:hover,.item-actions button:hover{background:var(--gray-200);color:var(--gray-700)}.add-button{width:100%;margin-top:.75rem;padding:.4375rem .5rem;background:transparent;border:1px dashed var(--gray-300);border-radius:6px;cursor:pointer;font-family:var(--font-display);font-size:.75rem;font-weight:500;color:var(--gray-400);transition:all .15s ease}.add-button:hover{background:var(--gray-50);border-color:var(--gray-400);color:var(--gray-600)}.add-form{margin-top:.75rem;padding:.875rem;background:var(--gray-50);border-radius:8px;display:flex;flex-direction:column;gap:.625rem}.add-form [data-react-aria-text-field]{display:flex;flex-direction:column;gap:.25rem}.add-form label{font-family:var(--font-mono);font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.add-form input[type=text]{padding:.4375rem .625rem;border:1px solid var(--gray-200);border-radius:6px;font-family:var(--font-display);font-size:.8125rem;outline:none;transition:all .15s ease;background:#fff}.add-form input[type=text]:focus{border-color:var(--accent-400);box-shadow:0 0 0 3px var(--accent-50)}.color-field{display:flex;flex-direction:column;gap:.25rem}.color-field label{font-family:var(--font-mono);font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.color-field input[type=color]{width:100%;height:28px;padding:2px;border:1px solid var(--gray-200);border-radius:6px;cursor:pointer;background:#fff}.form-actions{display:flex;gap:.5rem;margin-top:.25rem}.form-actions button{flex:1;padding:.4375rem .625rem;border:none;border-radius:6px;cursor:pointer;font-family:var(--font-display);font-size:.75rem;font-weight:500;transition:all .15s ease}.form-actions button:first-child{background:var(--accent-500);color:#fff}.form-actions button:first-child:hover{background:var(--accent-600)}.form-actions button:last-child{background:transparent;border:1px solid var(--gray-200);color:var(--gray-600)}.form-actions button:last-child:hover{background:var(--gray-100);color:var(--gray-700)}.sidebar-list-item.editing{display:block;padding:0}.sidebar-list-item.editing:hover{margin:0;padding:0;background:transparent}.edit-form{padding:.875rem;background:var(--gray-50);border-radius:8px;display:flex;flex-direction:column;gap:.625rem}.edit-form [data-react-aria-text-field]{display:flex;flex-direction:column;gap:.25rem}.edit-form label{font-family:var(--font-mono);font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.edit-form input[type=text]{padding:.4375rem .625rem;border:1px solid var(--gray-200);border-radius:6px;font-family:var(--font-display);font-size:.8125rem;outline:none;transition:all .15s ease;background:#fff}.edit-form input[type=text]:focus{border-color:var(--accent-400);box-shadow:0 0 0 3px var(--accent-50)}.edit-form .color-field{display:flex;flex-direction:column;gap:.25rem}.edit-form .color-field label{font-family:var(--font-mono);font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.edit-form .color-field input[type=color]{width:100%;height:28px;padding:2px;border:1px solid var(--gray-200);border-radius:6px;cursor:pointer;background:#fff}.employee-drag-area{display:flex;align-items:center;gap:.5rem;flex:1;cursor:grab;min-width:0}.employee-drag-area:active{cursor:grabbing}.employee-drag-area .item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drag-handle{padding:.25rem;color:var(--gray-400);font-size:.75rem;-webkit-user-select:none;user-select:none;flex-shrink:0}.sidebar-list-item.dragging{opacity:.5}.drop-indicator{display:none;font-size:.625rem;color:var(--accent-500);margin-left:.5rem}.sidebar-list-item.drop-target .drop-indicator{display:inline}.sidebar-project-header{display:flex;align-items:center;gap:.625rem;width:100%;min-height:36px;padding:.375rem .5rem;background:var(--gray-50);border-radius:6px;transition:background-color .15s ease}.sidebar-project-header:hover{background:var(--gray-100)}.sidebar-list-item.drop-target .sidebar-project-header{background:var(--accent-50)}.expand-toggle{background:transparent;border:none;width:20px;height:20px;padding:0;cursor:pointer;color:var(--gray-400);display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:4px;transition:all .15s ease}.expand-toggle:hover{background:var(--gray-200);color:var(--gray-600)}.project-color-bar{width:3px;height:18px;border-radius:1.5px;flex-shrink:0}.project-label{flex:1;font-family:var(--font-display);font-size:.8125rem;font-weight:600;color:var(--gray-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.assignment-count{font-family:var(--font-mono);font-size:.6875rem;font-weight:500;color:var(--gray-400);background:var(--gray-100);min-width:18px;height:18px;padding:0 .375rem;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.project-employee-list{list-style:none;margin:0;padding:.25rem 0 .5rem 1.25rem}.sidebar-employee-row{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;border-radius:4px;font-size:.8125rem;color:var(--gray-700)}.sidebar-employee-row:hover{background:var(--gray-50)}.sidebar-employee-row.drop-target-above{background:var(--accent-50);border-top:2px solid var(--accent-500)}.sidebar-employee-row.drop-target-below{background:var(--accent-50);border-bottom:2px solid var(--accent-500)}.sidebar-employee-row.deassigned{opacity:.5;cursor:pointer}.sidebar-employee-row.deassigned .sidebar-employee-name{text-decoration:line-through}.sidebar-employee-row.deassigned:hover{opacity:.7;background:var(--accent-50)}.sidebar-employee-row .drag-handle{cursor:grab;color:var(--gray-400)}.sidebar-employee-row .sidebar-employee-name{flex:1}.sidebar-employee-row .unassign-button{background:transparent;border:none;padding:.125rem .25rem;cursor:pointer;font-size:.625rem;color:var(--gray-400);opacity:0;transition:opacity .15s}.sidebar-employee-row:hover .unassign-button{opacity:1}.sidebar-employee-row .unassign-button:hover{color:var(--gray-700)}.sidebar-employee-row .lead-toggle{background:transparent;border:none;padding:.125rem;cursor:pointer;color:var(--gray-400);display:flex;align-items:center}.sidebar-employee-row .lead-toggle:hover,.sidebar-employee-row .lead-toggle[aria-label*="is lead"]{color:var(--accent-500)}.confirmation-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:300}.confirmation-dialog{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:var(--shadow-lg);max-width:300px}.confirmation-dialog p{margin:0 0 1rem;font-size:.875rem;color:var(--gray-700)}.confirmation-actions{display:flex;gap:.5rem;justify-content:flex-end}.confirmation-actions button{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer}.confirmation-actions button:first-child{background:var(--accent-500);border:none;color:#fff}.confirmation-actions button:last-child{background:transparent;border:1px solid var(--gray-200);color:var(--gray-600)}.toast{position:fixed;bottom:20px;right:20px;padding:12px 16px;border-radius:6px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #00000026;animation:toast-slide-in .2s ease-out;z-index:1000}.toast-error{background-color:#dc3545;color:#fff}.toast-success{background-color:#28a745;color:#fff}.toast-message{font-size:14px}.toast-close{background:none;border:none;color:inherit;font-size:18px;cursor:pointer;padding:0;line-height:1;opacity:.8}.toast-close:hover{opacity:1}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}:root{--font-display: "Outfit", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--gray-50: #fafaf9;--gray-100: #f5f5f4;--gray-200: #e7e5e4;--gray-300: #d6d3d1;--gray-400: #a8a29e;--gray-500: #78716c;--gray-600: #57534e;--gray-700: #44403c;--gray-800: #292524;--gray-900: #1c1917;--accent-50: #eef2ff;--accent-100: #e0e7ff;--accent-200: #c7d2fe;--accent-400: #818cf8;--accent-500: #6366f1;--accent-600: #4f46e5;--accent-700: #4338ca;--border-color: var(--gray-200);--bg-muted: var(--gray-100);--text-muted: var(--gray-500);--primary-color: var(--accent-500);--primary-hover: var(--accent-600);--allocation-0: transparent;--allocation-25: #fef3c7;--allocation-50: #fde68a;--allocation-75: #fbbf24;--allocation-100: #f59e0b;--overallocation-bg: #fecaca;--overallocation-text: #b91c1c;--today-bg: var(--accent-100);--today-border: var(--accent-400);--today-text: var(--accent-700);--weekend-bg: var(--gray-50);--past-bg: var(--gray-100);--past-text: var(--gray-400);--frozen-column-width: 140px;--cell-width: 44px;--cell-height: 32px;--header-height: 52px;--shadow-sm: 0 1px 2px rgba(28, 25, 23, .05);--shadow-md: 0 4px 12px rgba(28, 25, 23, .08);--shadow-lg: 0 8px 24px rgba(28, 25, 23, .12)}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--gray-50);font-family:var(--font-display)}.app-header{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;border-bottom:1px solid var(--border-color);background:#fff;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.app-header h1{margin:0;font-family:var(--font-display);font-size:1.125rem;font-weight:700;color:var(--gray-900);letter-spacing:-.02em}.sidebar-toggle{background:#fff;border:1px solid var(--gray-200);border-radius:8px;padding:.5rem .625rem;cursor:pointer;font-size:.8125rem;color:var(--gray-600);transition:all .2s ease;display:flex;align-items:center;gap:.375rem}.sidebar-toggle:hover{background:var(--gray-50);border-color:var(--gray-300);color:var(--gray-800)}.sidebar-toggle:focus-visible{outline:2px solid var(--accent-400);outline-offset:2px}.app-main{flex:1;overflow:auto;padding:0}nav[aria-label="Date navigation"]{display:flex;justify-content:center;align-items:center;gap:.375rem;padding:.75rem 1rem;background:#fff;border-bottom:1px solid var(--gray-200)}nav[aria-label="Date navigation"] button{background:#fff;border:1px solid var(--gray-200);border-radius:6px;padding:.4375rem .625rem;cursor:pointer;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--gray-600);transition:all .15s ease;min-width:32px}nav[aria-label="Date navigation"] button:hover{background:var(--gray-50);border-color:var(--gray-300);color:var(--gray-800)}nav[aria-label="Date navigation"] button:active{background:var(--gray-100);transform:translateY(1px)}nav[aria-label="Date navigation"] button:focus-visible{outline:2px solid var(--accent-400);outline-offset:2px}nav[aria-label="Date navigation"] span{font-family:var(--font-mono);font-size:.8125rem;font-weight:500;color:var(--gray-700);min-width:90px;text-align:center;margin-left:.75rem;letter-spacing:.01em}.capacity-grid{display:flex;flex-direction:column;min-width:fit-content;background:#fff}.capacity-grid:focus{outline:none}.capacity-grid-header{display:flex;position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--gray-300)}.capacity-grid-header .frozen-column{width:calc(var(--frozen-column-width) * 2);flex-shrink:0;box-sizing:border-box;background:#fff;position:sticky;left:0;z-index:30;border-right:1px solid var(--gray-200)}.capacity-grid-header [data-testid=day-names],.capacity-grid-header [data-testid=day-numbers],.capacity-grid-header [data-testid=week-numbers]{display:flex}.capacity-grid-header [data-testid=day-names] span,.capacity-grid-header [data-testid=day-numbers] span,.capacity-grid-header [data-testid=week-numbers] span{width:var(--cell-width);box-sizing:border-box;text-align:center;font-family:var(--font-mono);font-size:.6875rem;padding:.1875rem 0;color:var(--gray-400);text-transform:uppercase;letter-spacing:.03em}.capacity-grid-header [data-testid=day-numbers] span{font-weight:600;color:var(--gray-700);font-size:.75rem;letter-spacing:0;text-transform:none}.capacity-grid-header [data-testid=week-numbers] span{font-weight:500;color:var(--accent-500);font-size:.6875rem}.capacity-grid-header [data-testid=day-names] span.today,.capacity-grid-header [data-testid=day-numbers] span.today{background:var(--today-bg);color:var(--today-text);font-weight:600}.capacity-grid-header [data-testid=day-names] span.weekend,.capacity-grid-header [data-testid=day-numbers] span.weekend{color:var(--gray-400)}.date-headers,.capacity-grid-body{display:flex;flex-direction:column}.project-group{border-bottom:1px solid var(--gray-200)}.project-group:last-child{border-bottom:none}.grid-project-header{display:flex;align-items:stretch;background:var(--gray-100);min-width:fit-content}.project-name{width:calc(var(--frozen-column-width) * 2);flex-shrink:0;box-sizing:border-box;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:var(--font-display);font-weight:600;font-size:.8125rem;color:var(--gray-800);background:var(--gray-100);position:sticky;left:0;z-index:10;border-right:1px solid var(--gray-200);letter-spacing:-.01em}.project-name:before{content:"";width:3px;height:14px;background:var(--accent-500);border-radius:1px;flex-shrink:0}.grid-project-header-spacer{flex:1}.grid-employee-row{display:flex;align-items:stretch;border-bottom:1px solid var(--gray-100);transition:background-color .1s ease}.grid-employee-row:last-child{border-bottom:none}.grid-employee-row:hover,.grid-employee-row:hover .grid-employee-name{background:var(--gray-50)}.grid-employee-name{width:calc(var(--frozen-column-width) * 2);flex-shrink:0;box-sizing:border-box;display:flex;align-items:center;padding:0 1rem 0 1.75rem;font-family:var(--font-display);font-size:.8125rem;font-weight:500;color:var(--gray-700);background:#fff;position:sticky;left:0;z-index:5;border-right:1px solid var(--gray-200);transition:background-color .1s ease}.allocation-cells{display:flex}.allocation-cell{width:var(--cell-width);height:var(--cell-height);box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--gray-100);position:relative;transition:background-color .1s ease}.allocation-cell:last-child{border-right:none}.allocation-cell input{width:100%;height:100%;border:none;background:transparent;text-align:center;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--gray-700);padding:0;outline:none;transition:all .1s ease}.allocation-cell input:focus{background:var(--accent-50);outline:2px solid var(--accent-400);outline-offset:-2px;border-radius:2px}.allocation-cell input::placeholder{color:var(--gray-300)}.allocation-cell.has-value input{font-weight:500}.allocation-cell.allocation-low,.allocation-cell.allocation-medium,.allocation-cell.allocation-high,.allocation-cell.allocation-full{background:var(--gray-50)}.allocation-cell.allocation-full input{font-weight:600}.allocation-cell.readonly{background:var(--gray-100)}.allocation-cell.readonly input{color:var(--gray-400);cursor:not-allowed}.allocation-cell.overallocated{background:#fecaca}.allocation-cell.overallocated input{color:var(--overallocation-text);font-weight:600}.add-employee-row{display:flex;align-items:center;padding:.5rem 1rem .5rem 1.75rem;min-height:var(--cell-height)}.add-employee-row [data-rac]{font-size:.75rem}.add-employee-row button{background:transparent;border:1px dashed var(--gray-300);border-radius:4px;padding:.3125rem .625rem;cursor:pointer;font-family:var(--font-display);font-size:.75rem;font-weight:500;color:var(--gray-400);transition:all .15s ease}.add-employee-row button:hover{background:var(--gray-50);border-color:var(--gray-400);color:var(--gray-600)}.add-employee-row [data-rac] [role=listbox]{background:#fff;border:1px solid var(--gray-200);border-radius:8px;box-shadow:var(--shadow-lg);padding:.25rem;min-width:180px}.add-employee-row [data-rac] [role=option]{padding:.5rem .75rem;font-family:var(--font-display);font-size:.8125rem;border-radius:6px;cursor:pointer;transition:background-color .1s ease}.add-employee-row [data-rac] [role=option]:hover,.add-employee-row [data-rac] [role=option][data-focused]{background:var(--gray-100)}.allocation-cell.selected{background:var(--accent-100)}.allocation-cell.selected input{background:transparent;color:var(--accent-700)}.allocation-cell.anchor{outline:2px solid var(--accent-500);outline-offset:-2px;border-radius:2px;z-index:1}.allocation-cell.selected.overallocated{background:#fecaca}.allocation-cell.selected.overallocated input{color:var(--overallocation-text)}.selection-input{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid var(--gray-200);border-radius:12px;box-shadow:var(--shadow-lg);padding:1rem 1.5rem;font-family:var(--font-mono);font-size:1.5rem;font-weight:600;color:var(--gray-800);min-width:80px;text-align:center;z-index:1000}.allocation-cell.today{background:var(--accent-50);border-right-color:var(--accent-100)}.allocation-cell.today:not(.readonly) input{color:var(--accent-700)}.date-navigation-view-toggle{display:flex;gap:0;margin-left:1rem;border:1px solid var(--gray-200);border-radius:6px;overflow:hidden}.date-navigation-view-toggle button{background:#fff;border:none;border-right:1px solid var(--gray-200);padding:.4375rem .75rem;cursor:pointer;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--gray-500);transition:all .15s ease}.date-navigation-view-toggle button:last-child{border-right:none}.date-navigation-view-toggle button:hover{background:var(--gray-50);color:var(--gray-700)}.date-navigation-view-toggle button.active{background:var(--accent-500);color:#fff}.allocation-cell.weekend{background:var(--weekend-bg)}.allocation-cell.weekend input{color:var(--gray-400)}.date-headers-month-row{display:flex;border-bottom:1px solid var(--gray-200)}.date-headers-month-row span{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.03em;padding:.25rem .5rem;box-sizing:border-box;border-right:1px solid var(--gray-200);white-space:nowrap;overflow:visible}.allocation-cell.week-start{border-left:2px solid var(--gray-300)}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:var(--font-display);font-size:1rem;color:var(--gray-500)}.auth-loading{display:flex;justify-content:center;align-items:center;height:100vh;font-family:var(--font-display);font-size:1.25rem;color:var(--gray-500)}
