/* V4.0.0-4072 — desktop scheduling cleanup + schedule-linked attendance */

/* Attendance: show exactly why direct punch is available/blocked. */
.attendance-schedule-gate{display:flex;flex-direction:column;gap:4px;margin:10px 0 12px;padding:10px 12px;border:1px solid #dfe8e3;border-radius:12px;background:#f7faf8;font-size:13px;line-height:1.45}
.attendance-schedule-gate strong{font-size:13px}
.attendance-schedule-gate span{color:#66756e}
.attendance-schedule-gate.is-open{border-color:#cfe4da;background:#f1f8f5}
.attendance-schedule-gate.is-blocked{border-color:#ead9d5;background:#fff8f6}
.attendance-schedule-gate.is-blocked strong{color:#984b3a}

/* Assignment dialog: monthly workload reminder. */
.schedule-assign-load-hint{display:flex!important;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid #dfe8e3;border-radius:12px;background:#f7faf8}
.schedule-assign-load-hint strong{font-size:13px}
.schedule-assign-load-hint span{font-size:12px;color:#66756e;line-height:1.45}
.schedule-assign-load-hint em{font-size:12px;font-style:normal;font-weight:800;color:#23644f;background:#e9f4ef;border-radius:8px;padding:6px 8px;margin-top:2px}

/* General users no longer see the supervisor month calendar. */
.schedule-user-mode #scheduleSupervisorPanel{display:none!important}

/* Desktop only. Mobile scheduling layout from 4066 remains untouched. */
@media(min-width:901px){
  #schedulingView.schedule-supervisor-mode>.mobile-my-schedule-panel{display:block!important;max-width:980px;width:100%}

  #schedulingView .schedule-toolbar{
    display:grid!important;
    grid-template-columns:minmax(190px,.8fr) minmax(360px,1.25fr) minmax(420px,1.6fr);
    align-items:end!important;
    gap:14px!important;
    padding:14px 16px!important;
  }
  #schedulingView .schedule-company-control,
  #schedulingView .schedule-company-control label,
  #schedulingView .schedule-company-control select{width:100%;min-width:0!important}
  #schedulingView .schedule-month-nav{justify-content:center;flex-wrap:nowrap!important;min-width:0}
  #schedulingView .schedule-month-nav strong{min-width:110px;text-align:center;white-space:nowrap}
  #schedulingView .schedule-publish{justify-content:flex-end;flex-wrap:wrap!important;gap:6px!important}
  #schedulingView .schedule-publish>span{font-size:12px;color:#6b7872}

  #schedulingView .schedule-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:16px!important;align-items:start}
  #schedulingView .schedule-grid>.panel{height:auto!important;min-width:0}
  #schedulingView .schedule-management-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}

  #scheduleSupervisorPanel{overflow:visible!important;padding:16px!important}
  #scheduleCalendar{min-width:0!important;width:100%;grid-template-columns:repeat(7,minmax(0,1fr))!important;border-radius:12px;overflow:hidden}
  #scheduleCalendar .schedule-weekday{padding:9px 4px;font-size:13px}
  #scheduleCalendar .schedule-day{min-width:0;min-height:160px;padding:8px;overflow:hidden}
  #scheduleCalendar .schedule-date{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:8px;margin-bottom:7px;font-size:13px}
  #scheduleCalendar .schedule-day.muted{opacity:.48}
  #scheduleCalendar .schedule-empty-day{font-size:12px;color:#a1aaa5;padding:4px 0}
  #scheduleCalendar .schedule-add{margin-top:7px;min-height:30px;background:#fbfcfb}

  .schedule-shift-group{display:block;margin:5px 0;padding:6px;border:1px solid #e2ebe6;border-radius:9px;background:#f8fbf9;overflow:hidden}
  .schedule-shift-group>strong{display:block;margin-bottom:5px;font-size:11px;color:#4f645b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-shift-group>div{display:flex;flex-wrap:wrap;gap:4px}
  .schedule-person-chip{max-width:100%;border:0;border-radius:7px;background:#e8f3ee;color:#235f4b;padding:4px 6px;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-person-chip:hover{background:#dcece5}

  #schedulingView.schedule-user-mode>.mobile-my-schedule-panel{display:block!important;max-width:980px}
  #schedulingView.schedule-user-mode .schedule-grid{grid-template-columns:minmax(0,980px)!important}
  #schedulingView.schedule-user-mode #scheduleEmployeePanel{max-width:980px}

  .schedule-request-row{grid-template-columns:minmax(100px,1.1fr) minmax(100px,.9fr) minmax(70px,.7fr) minmax(120px,1fr) auto!important}
}
