:root{color:#26313d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f6f8;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:0;min-height:100vh;margin:0}button,input{font-family:inherit}code{background:#fff;border:1px solid #d7dde4;border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--border:#d8d8d8;--line:#ececec;--text:#26323f;--muted:#6e7781;--surface:#fff;--header:#f7f8fa;--weekend:#f2f2f2;--resource-width:238px}.plannerApp{background:var(--surface);color:var(--text);flex-direction:column;height:100vh;min-height:520px;font:13px/1.35 Arial,Helvetica,sans-serif;display:flex}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;flex:none;align-items:center;gap:14px;min-height:58px;padding:8px 14px;display:flex}.reloadButton,.toolbarButton{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#f7f8fa;border-radius:4px;align-self:end;height:28px;padding:0 8px;font-weight:600}.activeToolbarButton{color:#174ea6;background:#e8f1ff;border-color:#8ab4f8}.reloadButton:disabled,.toolbarButton:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.toolbarTitle{font-size:15px;font-weight:700}.toolbarMeta{color:var(--muted);font-size:12px}.linkButton{color:#1a73e8;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.toolbar label{color:var(--muted);gap:3px;display:grid}.toolbar input,.toolbar select{border:1px solid var(--border);color:var(--text);border-radius:4px;height:28px;padding:0 8px}.dateFieldControl{align-items:center;display:flex;position:relative}.dateFieldControl input[type=text]{border-top-right-radius:0;border-bottom-right-radius:0;width:130px}.datePickerButton{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#f7f8fa;border-left:0;border-radius:0 4px 4px 0;justify-content:center;align-items:center;width:34px;height:28px;padding:0;font-size:14px;display:inline-flex}.datePickerButton:hover{background:#edf2f7}.nativeDatePicker{opacity:0;pointer-events:none;position:absolute;top:28px;right:0;width:1px!important;height:1px!important}.toolbar .searchBox{min-width:220px}.checkGroup{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.checkControl{align-items:center;gap:6px!important;display:flex!important}.checkControl input{height:auto}.plannerFrame{flex:auto;position:relative;overflow:auto}.plannerHeader{background:var(--header);border-bottom:1px solid var(--border);z-index:12;min-width:max-content;display:flex;position:sticky;top:0}.resourceHeader{background:var(--header);border-right:1px solid var(--border);color:var(--muted);flex:0 0 var(--resource-width);z-index:15;align-items:end;height:66px;padding:0 12px 9px;font-weight:700;display:flex;position:sticky;left:0}.timelineHeader{flex:none}.monthRow,.dayRow{display:flex}.monthCell{border-right:1px solid var(--border);color:var(--muted);justify-content:center;align-items:center;height:30px;display:flex}.dayCell{border-right:1px solid var(--line);flex:0 0 34px;height:27px}.headerDay{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;height:36px;display:flex}.headerDay span{color:var(--text);font-size:12px}.headerDay small{font-size:10px}.weekend{background:var(--weekend)}.overlapDay{background:#f8df82}.weekend.overlapDay{background:#f2c94c}.plannerRows{min-width:max-content}.plannerRow{border-bottom:1px solid var(--line);min-width:max-content;transition:background .12s,opacity .12s,transform .12s;display:flex;position:relative}.guideDividerRow{border-bottom:0}.guideDividerRow:after{content:"";pointer-events:none;z-index:6;background:#7d8790;height:2px;position:absolute;bottom:-1px;left:0;right:0}.draggingRow{opacity:.55}.dropTargetBefore,.dropTargetAfter,.assignmentDropTarget{background:#eef6ff}.assignmentDropTarget .resourceCell{background:#e0f0ff}.dropTargetBefore:before,.dropTargetAfter:after{content:"";z-index:20;background:#1a73e8;height:3px;position:absolute;left:0;right:0}.dropTargetBefore:before{top:-1px}.dropTargetAfter:after{bottom:-2px}.shiftRowUp{transform:translateY(-6px)}.shiftRowDown{transform:translateY(6px)}.resourceCell{background:var(--surface);border-right:1px solid var(--border);flex:0 0 var(--resource-width);z-index:8;grid-template-columns:24px minmax(0,1fr) 70px;align-items:center;height:27px;padding:0 12px;display:grid;position:sticky;left:0}.dragHandle,.dragHandleSpacer{justify-content:center;align-items:center;width:18px;height:22px;display:inline-flex}.dragHandle{color:var(--muted);cursor:grab;background:0 0;border:0;padding:0;font-weight:700}.dragHandle:active{cursor:grabbing}.resourceCellTop{align-items:start;padding-top:5px}.resourceName{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;display:inline-flex;overflow:hidden}.collapseButton{color:#174ea6;cursor:pointer;background:#e8f1ff;border:1px solid #8ab4f8;border-radius:4px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:13px;font-weight:700;display:inline-flex}.collapseButton:hover{background:#d2e3fc}.resourceLang{color:var(--muted);text-align:right}.rowTimeline{flex:none;position:relative}.gridLayer{display:flex;position:absolute;inset:0}.barLayer{z-index:2;position:absolute;inset:3px 0}.assignmentBar{color:#fff;cursor:grab;text-shadow:0 1px 1px #0003;white-space:nowrap;z-index:2;border:0;border-radius:4px;justify-content:flex-start;align-items:center;gap:4px;height:21px;padding:0 8px;display:flex;position:absolute;top:0;overflow:hidden}.assignmentBar:active{cursor:grabbing}.assignmentBar:hover{filter:brightness(.94)}.assignmentBar.secondGuide{opacity:.68}.assignmentBar.secondGuide:hover{opacity:.86}.assignmentBar span{text-align:left;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.assignmentBar em{flex:none;font-style:normal;line-height:1;display:inline-block}.assignmentBar .slotIcon{flex:none;font-size:13px;line-height:1;display:inline-block}.assignmentBar.hasWarning{outline-offset:-1px;outline:2px solid #f2c94c}.overlapPanel{border-bottom:1px solid var(--border);flex:none;max-height:190px;padding:8px 14px;overflow:auto}.availabilityPanel{border-bottom:1px solid var(--border);flex:none;max-height:260px;padding:8px 14px;overflow:auto}.availabilityControls{flex-wrap:wrap;align-items:end;gap:10px 14px;display:flex}.availabilityControls strong{align-self:center;margin-right:8px}.availabilityControls label{color:var(--muted);gap:3px;display:grid}.availabilityControls input,.availabilityControls select{border:1px solid var(--border);color:var(--text);border-radius:4px;height:28px;padding:0 8px}.availabilityControls .dateFieldControl input[type=text]{width:130px}.availabilityResults{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:8px;display:grid}.availabilityGroup{min-width:0}.availabilityGroupTitle{color:var(--text);margin-bottom:5px;font-weight:700}.availabilityGroupTitle span{color:var(--muted);font-weight:400}.availabilityResult{border-top:1px solid var(--line);grid-template-columns:160px 150px minmax(0,1fr);align-items:center;gap:8px;min-height:28px;padding:4px 0;display:grid}.availabilityGuide{grid-template-columns:minmax(0,1fr) 32px;display:grid}.availabilityGuide strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.availabilityGuide span,.availabilityScore,.availabilityEmpty{color:var(--muted)}.miniTimeline{gap:1px;display:grid;overflow:hidden}.miniDay{color:#4f5b67;text-align:center;border-radius:2px;height:18px;font-size:9px;line-height:18px;display:inline-block}.mini-free{background:#f4f6f8}.mini-request{color:#1f5130;background:#b8e6c2;font-weight:700}.mini-busy{background:#d4d4d4}.mini-edge{color:#553f00;background:#f2c94c;font-weight:700}.overlapPanelHeader,.overlapItem{align-items:center;gap:10px;display:flex}.overlapPanelHeader{justify-content:space-between;margin-bottom:6px}.overlapList{gap:4px;display:grid}.overlapItem{color:var(--muted);min-height:24px}.overlapGuide{color:var(--text);min-width:150px;font-weight:700}.overlapRecord{border:1px solid var(--border);color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:#fff;border-radius:3px;max-width:220px;height:22px;padding:0 6px;line-height:20px;display:inline-block;overflow:hidden}.emptyOverlapList{color:var(--muted)}.legend{border-top:1px solid var(--border);flex-wrap:wrap;flex:none;align-items:center;gap:14px 18px;padding:10px 14px;display:flex}.legendItem{color:var(--muted);align-items:center;gap:7px;display:inline-flex}.legendItem i{border-radius:3px;width:24px;height:16px;display:inline-block}.legendIcon{text-align:center;width:18px;line-height:1;display:inline-block}.emptyState{max-width:640px;margin:40px auto;padding:24px}
