.my-attendance[data-v-b407f874]{--att-primary:#00988b;--att-primary-soft:rgba(0,152,139,0.08);--att-border:#e8eef0;--att-text:#303133;--att-muted:#909399;padding:4px 4px 16px}.my-attendance__header[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--att-border)}.my-attendance__title[data-v-b407f874]{font-size:22px;font-weight:700;color:var(--att-primary);letter-spacing:.5px}.my-attendance__actions[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.my-attendance__summary[data-v-b407f874]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}.summary-card[data-v-b407f874]{position:relative;background:#fff;border:1px solid var(--att-border);border-radius:10px;padding:12px 14px 10px;overflow:hidden;-webkit-transition:-webkit-box-shadow .2s ease,-webkit-transform .2s ease;transition:-webkit-box-shadow .2s ease,-webkit-transform .2s ease;transition:box-shadow .2s ease,transform .2s ease;transition:box-shadow .2s ease,transform .2s ease,-webkit-box-shadow .2s ease,-webkit-transform .2s ease}.summary-card[data-v-b407f874]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--att-primary)}.summary-card[data-v-b407f874]:hover{-webkit-box-shadow:0 4px 14px rgba(0,80,70,.08);box-shadow:0 4px 14px rgba(0,80,70,.08);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.summary-card--teal[data-v-b407f874]:before{background:#00988b}.summary-card--blue[data-v-b407f874]:before{background:#409eff}.summary-card--green[data-v-b407f874]:before{background:#67c23a}.summary-card--orange[data-v-b407f874]:before{background:#e6a23c}.summary-card--purple[data-v-b407f874]:before{background:#8b7cf6}.summary-card__label[data-v-b407f874]{font-size:12px;color:var(--att-muted);margin-bottom:6px}.summary-card__value[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:4px;color:var(--att-text)}.summary-card__num[data-v-b407f874]{font-size:22px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.summary-card__unit[data-v-b407f874]{font-size:12px;color:var(--att-muted)}.summary-card__extra[data-v-b407f874]{margin-top:4px;font-size:11px;color:var(--att-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-attendance__legend[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:14px;margin-bottom:10px;padding:8px 12px;background:var(--att-primary-soft);border-radius:8px;font-size:12px;color:#606266}.legend-item[data-v-b407f874]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:5px}.legend-dot[data-v-b407f874]{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-dot--normal[data-v-b407f874]{background:#67c23a}.legend-dot--leave[data-v-b407f874]{background:#e6a23c}.legend-dot--absence[data-v-b407f874]{background:#f56c6c}.legend-dot--abnormal[data-v-b407f874]{background:#f2a65a}.legend-dot--overtime[data-v-b407f874]{background:#409eff}.legend-chip[data-v-b407f874]{display:inline-block;min-width:16px;height:14px;line-height:14px;border-radius:3px;font-size:10px}.legend-chip--holiday[data-v-b407f874]{background:#16a085}.legend-chip--weekend[data-v-b407f874]{background:#f56c6c}.legend-chip--tiaoxiu[data-v-b407f874]{background:#e6a23c}.legend-chip--workday[data-v-b407f874]{background:#909399}.legend-sep[data-v-b407f874]{color:#dcdfe6;margin:0 2px}.legend-tip[data-v-b407f874]{margin-left:auto;color:var(--att-muted)}.my-attendance__calendar[data-v-b407f874]{background:#fff;border:1px solid var(--att-border);border-radius:10px;overflow:hidden}.my-attendance__calendar[data-v-b407f874] .el-calendar__header{padding:12px 16px;border-bottom:1px solid var(--att-border)}.my-attendance__calendar[data-v-b407f874] .el-calendar__title{font-size:16px;font-weight:600;color:var(--att-text)}.my-attendance__calendar[data-v-b407f874] .el-calendar__body{padding:8px 10px 12px}.my-attendance__calendar[data-v-b407f874] .el-calendar-table thead th{padding:8px 0;color:var(--att-muted);font-weight:500}.my-attendance__calendar[data-v-b407f874] .el-calendar-table td{border-color:#f0f3f4}.my-attendance__calendar[data-v-b407f874] .el-calendar-table .el-calendar-day{height:110px!important;padding:3px;-webkit-box-sizing:border-box;box-sizing:border-box}.my-attendance__calendar[data-v-b407f874] .el-calendar-table .el-calendar-day:hover,.my-attendance__calendar[data-v-b407f874] .el-calendar-table td.is-selected{background:transparent}.cal-cell[data-v-b407f874]{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;padding:6px 7px 5px;border-radius:8px;cursor:pointer;border:1px solid transparent;background:#fff;-webkit-transition:background .15s ease,border-color .15s ease,-webkit-box-shadow .15s ease;transition:background .15s ease,border-color .15s ease,-webkit-box-shadow .15s ease;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease,-webkit-box-shadow .15s ease;position:relative;overflow:hidden}.cal-cell[data-v-b407f874]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}.cal-cell[data-v-b407f874]:hover{background:var(--att-primary-soft);border-color:rgba(0,152,139,.18)}.cal-cell.is-weekend[data-v-b407f874]:not(.is-other-month){background:#fafbfc}.cal-cell.is-other-month[data-v-b407f874]{opacity:.35;pointer-events:none}.cal-cell.is-today .cal-cell__day[data-v-b407f874]{background:var(--att-primary);color:#fff}.cal-cell.is-selected[data-v-b407f874]{background:rgba(0,152,139,.1);border-color:rgba(0,152,139,.4);-webkit-box-shadow:0 2px 8px rgba(0,152,139,.08);box-shadow:0 2px 8px rgba(0,152,139,.08)}.cal-cell--normal[data-v-b407f874]:before{background:#67c23a}.cal-cell--leave[data-v-b407f874]:before{background:#e6a23c}.cal-cell--absence[data-v-b407f874]:before{background:#f56c6c}.cal-cell--abnormal[data-v-b407f874]:before{background:#f2a65a}.cal-cell--overtime[data-v-b407f874]:before{background:#409eff}.cal-cell--sch-holiday[data-v-b407f874]{background:rgba(22,160,133,.06)}.cal-cell--sch-weekend[data-v-b407f874]{background:#fafbfc}.cal-cell--sch-tiaoxiu.is-rest-day[data-v-b407f874]{background:rgba(230,162,60,.08)}.cal-cell--sch-tiaoxiu[data-v-b407f874]:not(.is-rest-day){background:rgba(230,162,60,.05)}.cal-cell__top[data-v-b407f874]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:2px;min-height:22px}.cal-cell__top-right[data-v-b407f874],.cal-cell__top[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cal-cell__top-right[data-v-b407f874]{gap:3px;-ms-flex-negative:0;flex-shrink:0}.cal-cell__day[data-v-b407f874]{width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;font-size:13px;font-weight:600;color:var(--att-text)}.cal-cell.is-rest-day .cal-cell__day[data-v-b407f874]{color:#c62828}.cal-cell--sch-holiday .cal-cell__day[data-v-b407f874]{color:#0d7a63}.cal-cell__sch[data-v-b407f874]{font-size:10px;line-height:16px;padding:0 5px;border-radius:8px;white-space:nowrap;font-weight:600}.cal-cell__sch--holiday[data-v-b407f874]{color:#0d7a63;background:rgba(22,160,133,.14)}.cal-cell__sch--weekend[data-v-b407f874]{color:#c45656;background:rgba(245,108,108,.12)}.cal-cell__sch--tiaoxiu[data-v-b407f874]{color:#b88230;background:rgba(230,162,60,.16)}.cal-cell__sch--workday[data-v-b407f874]{color:#606266;background:rgba(144,147,153,.14)}.cal-cell__holiday-name[data-v-b407f874]{font-size:10px;line-height:1.2;color:#0d7a63;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.cal-cell__ot[data-v-b407f874]{font-size:10px;line-height:16px;padding:0 5px;border-radius:8px;color:#409eff;background:rgba(64,158,255,.12);white-space:nowrap;-ms-flex-item-align:start;align-self:flex-start}.day-schedule-banner[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:13px}.day-schedule-banner--holiday[data-v-b407f874]{background:rgba(22,160,133,.1);color:#0d7a63}.day-schedule-banner--weekend[data-v-b407f874]{background:rgba(245,108,108,.08);color:#c45656}.day-schedule-banner--tiaoxiu[data-v-b407f874]{background:rgba(230,162,60,.12);color:#b88230}.day-schedule-banner--workday[data-v-b407f874]{background:#f5f7fa;color:#606266}.day-schedule-banner__tag[data-v-b407f874]{font-weight:700;padding:1px 8px;border-radius:10px;background:hsla(0,0%,100%,.7)}.day-schedule-banner__type[data-v-b407f874]{font-weight:700}.day-schedule-banner__name[data-v-b407f874]{font-weight:600}.day-schedule-banner__desc[data-v-b407f874]{margin-left:auto;opacity:.85;font-size:12px}.cal-cell__status[data-v-b407f874]{-ms-flex-item-align:start;align-self:flex-start;max-width:100%;padding:1px 6px;border-radius:4px;font-size:11px;line-height:16px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-cell__status--normal[data-v-b407f874]{color:#529b2e;background:rgba(103,194,58,.12)}.cal-cell__status--leave[data-v-b407f874]{color:#b88230;background:rgba(230,162,60,.16)}.cal-cell__status--absence[data-v-b407f874]{color:#c45656;background:rgba(245,108,108,.12)}.cal-cell__status--abnormal[data-v-b407f874]{color:#b88230;background:rgba(230,162,60,.18)}.cal-cell__status--overtime[data-v-b407f874]{color:#337ecc;background:rgba(64,158,255,.12)}.cal-cell__time[data-v-b407f874]{margin-top:4px;font-size:11px;line-height:1.3;color:#606266;font-variant-numeric:tabular-nums;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-cell__hint[data-v-b407f874]{margin-top:4px;font-size:11px;line-height:1.3;color:#f56c6c}.day-action__absence[data-v-b407f874]{gap:6px;padding:10px 12px;margin-bottom:10px;border-radius:8px;background:rgba(245,108,108,.08);color:#f56c6c;font-size:13px}.day-action__absence[data-v-b407f874],.day-gantt__toolbar[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.day-gantt__toolbar[data-v-b407f874]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px;margin-bottom:12px;-ms-flex-wrap:wrap;flex-wrap:wrap}.day-gantt__legend[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;-ms-flex-wrap:wrap;flex-wrap:wrap}.gantt-leg[data-v-b407f874]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;font-size:12px;color:#606266}.gantt-leg[data-v-b407f874]:before{content:"";width:12px;height:8px;border-radius:2px}.gantt-leg--leave[data-v-b407f874]:before{background:#e6a23c}.gantt-leg--ot[data-v-b407f874]:before{background:#00988b}.gantt-leg--clock[data-v-b407f874]:before{background:#909399}.day-gantt__ops[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:4px}.day-gantt__tip[data-v-b407f874]{margin:-2px 0 10px;font-size:12px;color:#909399}.day-gantt__axis[data-v-b407f874],.day-gantt__row[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;min-height:44px}.day-gantt__label-col[data-v-b407f874]{width:72px;-ms-flex-negative:0;flex-shrink:0;padding-right:10px;-webkit-box-sizing:border-box;box-sizing:border-box}.day-gantt__track-col[data-v-b407f874]{position:relative;-webkit-box-flex:1;-ms-flex:1;flex:1;min-height:44px;background:#f7f9fa;border-radius:6px;overflow:hidden}.day-gantt__hours[data-v-b407f874]{height:22px;background:transparent;margin-bottom:4px}.day-gantt__hour[data-v-b407f874]{position:absolute;top:0;-webkit-transform:translateX(-50%);transform:translateX(-50%);font-size:11px;color:#909399;font-variant-numeric:tabular-nums}.day-gantt__row[data-v-b407f874]{margin-bottom:8px}.day-gantt__row-title[data-v-b407f874]{font-size:13px;font-weight:600;color:#303133;line-height:1.2;padding-top:8px}.day-gantt__row-sub[data-v-b407f874]{font-size:11px;color:#909399;margin-top:2px}.day-gantt__grid[data-v-b407f874]{position:absolute;inset:0;pointer-events:none}.day-gantt__grid-line[data-v-b407f874]{position:absolute;top:0;bottom:0;width:1px;background:rgba(0,0,0,.06)}.day-gantt__bar-wrap[data-v-b407f874]{position:absolute;top:8px;height:28px;z-index:1}.day-gantt__bar-wrap[data-v-b407f874]:hover{z-index:3}.day-gantt__bar[data-v-b407f874]{width:100%;height:100%;border-radius:4px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 6px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;cursor:pointer;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.08);box-shadow:0 1px 2px rgba(0,0,0,.08);-webkit-transition:-webkit-filter .15s ease,-webkit-transform .15s ease;transition:-webkit-filter .15s ease,-webkit-transform .15s ease;transition:filter .15s ease,transform .15s ease;transition:filter .15s ease,transform .15s ease,-webkit-filter .15s ease,-webkit-transform .15s ease}.day-gantt__bar[data-v-b407f874]:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.day-gantt__bar--leave[data-v-b407f874]{background:-webkit-gradient(linear,left top,right top,from(#f5c078),to(#e6a23c));background:linear-gradient(90deg,#f5c078,#e6a23c);color:#fff}.day-gantt__bar--ot[data-v-b407f874]{background:-webkit-gradient(linear,left top,right top,from(#26b3a4),to(#00988b));background:linear-gradient(90deg,#26b3a4,#00988b);color:#fff}.day-gantt__bar--clock[data-v-b407f874]{background:-webkit-gradient(linear,left top,right top,from(#c0c4cc),to(#909399));background:linear-gradient(90deg,#c0c4cc,#909399);color:#fff}.day-gantt__bar-text[data-v-b407f874]{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-gantt__empty[data-v-b407f874]{position:absolute;inset:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:12px;color:#c0c4cc}.day-gantt__empty[data-v-b407f874],.title[data-v-b407f874]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title[data-v-b407f874]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.title--font[data-v-b407f874]{font-size:20px;font-weight:700;color:var(--att-primary)}.title--button[data-v-b407f874]{text-align:right}@media (max-width:1200px){.my-attendance__summary[data-v-b407f874]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.my-attendance__header[data-v-b407f874]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.my-attendance__summary[data-v-b407f874]{grid-template-columns:repeat(2,minmax(0,1fr))}.legend-tip[data-v-b407f874]{margin-left:0;width:100%}}.attendance-form-dialog.el-dialog{margin-bottom:4vh;max-height:92vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.attendance-form-dialog .el-dialog__body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto;max-height:calc(92vh - 24px);padding-bottom:28px;-webkit-box-sizing:border-box;box-sizing:border-box}.attendance-form-dialog .title{position:sticky;top:0;z-index:2;background:#fff;padding-bottom:4px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.attendance-form-dialog .title--font{font-size:20px;font-weight:700;color:#00988b}.day-gantt-dialog .el-dialog__body{padding-top:8px;padding-bottom:20px}.day-gantt-tooltip{max-width:320px}.day-gantt-tip-body__title{font-weight:700;margin-bottom:6px}.day-gantt-tip-body__line{line-height:1.6;opacity:.95}