.tf-agenda-panel{overflow:hidden}.tf-agenda-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.tf-agenda-nav,.tf-agenda-views{display:flex;gap:6px;align-items:center}.tf-agenda-views{background:#f1f4f2;border-radius:12px;padding:4px}.tf-agenda-views button{border:0;background:transparent;border-radius:9px;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;color:#56615d}.tf-agenda-views button.active{background:#fff;color:#17352d;box-shadow:0 1px 4px #00000012}.tf-day-summary{display:flex;gap:18px;flex-wrap:wrap;padding:12px 14px;margin-bottom:12px;background:#f6faf7;border:1px solid #e5ece7;border-radius:12px}.tf-day-summary span{color:#65716c}.tf-day-board,.tf-calendar-scroll{width:100%;overflow:auto;border:1px solid #e5ebe7;border-radius:12px}.tf-calendar-grid{display:grid;grid-auto-rows:auto;background:#fff;min-width:900px}.tf-day-grid{grid-template-columns:78px repeat(var(--tech-count),minmax(190px,1fr));min-width:700px}.tf-week-grid,.tf-month-grid{grid-template-columns:78px repeat(calc(var(--day-count) * var(--tech-count)),minmax(150px,1fr));min-width:max-content}.tf-corner{height:62px;box-sizing:border-box;padding:12px 8px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7;background:#f7f9f8;color:#65716c;font-size:11px;font-weight:800;position:sticky;left:0;z-index:4}.tf-tech-head{height:62px;box-sizing:border-box;padding:9px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7;background:#f7f9f8;color:#17352d}.tf-tech-head b{font-size:12px}.tf-tech-head small{margin-top:3px;color:#718078;font-size:10px;font-weight:500}.tf-date-group{height:42px;box-sizing:border-box;padding:7px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid #dfe7e2;border-bottom:1px solid #dfe7e2;background:#edf5ef;color:#17352d}.tf-date-group b{font-size:12px}.tf-date-group small{font-size:10px;color:#718078;margin-top:2px}.tf-date-group.saturday{background:#f3f7f4}.tf-date-group.sunday,.tf-date-group.holiday{background:#f7eaea}.tf-calendar-head{display:contents}.tf-time-row{display:contents}.tf-hour-label{height:78px;box-sizing:border-box;display:flex;align-items:flex-start;justify-content:center;padding:10px 4px;border-right:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7;color:#68746f;font-size:12px;font-weight:800;background:#fbfcfb;position:sticky;left:0;z-index:3}.tf-time-cell{height:78px;box-sizing:border-box;padding:4px;border-right:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7;cursor:pointer;position:relative;background:#fff;min-width:0;overflow:visible}.tf-time-cell:hover{background:#f5faf4}.tf-free{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#c0c7c3;font-size:9px;text-transform:uppercase;letter-spacing:.04em;pointer-events:none}.tf-ag-event{position:relative;z-index:8;display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;box-sizing:border-box;border:0;border-left:4px solid #4d9f3d;background:#eaf5e8;border-radius:8px;padding:7px 8px;cursor:grab;color:#17352d;overflow:hidden;box-shadow:0 2px 7px #17352d12}.tf-ag-event:active{cursor:grabbing}.tf-ag-event.closed{border-left-color:#9aa49f;background:#f1f3f2}.tf-ag-event b{font-size:11px;line-height:1.25}.tf-ag-event span{font-size:10px;color:#65716c;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tf-ag-event em{font-style:normal;font-size:9px;color:#718078;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tf-drag-hint{position:absolute;right:5px;top:5px;font-style:normal;font-size:12px;color:#6d7a74;opacity:.65}.tf-ag-event.tf-dragging{opacity:.45;cursor:grabbing}.tf-time-cell.saturday{background:#f7faf8}.tf-time-cell.sunday,.tf-time-cell.holiday{background:#fff1f1}.tf-time-cell.saturday:hover{background:#eef6f0}.tf-time-cell.sunday:hover,.tf-time-cell.holiday:hover{background:#fde7e7}.tf-drop-target{background:#dff0df!important;box-shadow:inset 0 0 0 2px #4d9f3d}.tf-drop-target .tf-free{color:#4d9f3d;font-weight:800}.tf-quick-modal{max-width:620px}.tf-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tf-quick-grid .full{grid-column:1/-1}.tf-quick-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.tf-quick-actions .primary{min-width:150px}.tf-calendar-notice{display:flex;align-items:center;gap:8px;margin-bottom:10px;min-height:26px}.tf-calendar-notice:empty{display:none}.tf-holiday-label{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#fdecec;color:#a33a3a;font-size:10px;font-weight:800}@media(max-width:800px){.tf-agenda-toolbar{align-items:flex-start;flex-direction:column}.tf-quick-grid{grid-template-columns:1fr}.tf-quick-grid .full{grid-column:auto}.tf-day-grid{min-width:520px}.tf-week-grid,.tf-month-grid{min-width:max-content}.tf-tech-head{height:56px}.tf-date-group{height:40px}.tf-hour-label,.tf-time-cell{height:70px}.tf-agenda-views button{padding:8px 10px}.tf-drag-hint{display:none}}