/* V4.0.0-4066 — mobile layout refinement */
@media (max-width:760px){
  /* Lift the two-row dock so the second row is fully visible above iPhone Safari/PWA safe area. */
  .mobile-dock{
    bottom:calc(10px + env(safe-area-inset-bottom))!important;
    grid-template-rows:repeat(2,50px)!important;
    height:auto!important;
    min-height:100px!important;
    padding:4px 8px!important;
    border-radius:18px!important;
    left:8px!important;
    right:8px!important;
    width:auto!important;
    box-shadow:0 8px 28px rgba(24,62,50,.16)!important;
  }
  .main{padding-bottom:138px!important}
  .mobile-dock-item{min-height:48px!important;padding:3px 2px!important}
  .mobile-dock-item .mobile-dock-icon{font-size:19px!important;line-height:20px!important}
  .mobile-dock-item span:last-child{font-size:11px!important;line-height:1.1!important}

  /* My schedule: compact monthly roster, similar to a real duty roster instead of a long card list. */
  .mobile-my-schedule-panel{padding:12px!important;overflow:hidden}
  .mobile-my-schedule-panel .panel-head{margin-bottom:8px!important}
  .mobile-my-schedule-panel .panel-head p{display:none!important}
  .mobile-schedule-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
  .mobile-schedule-nav{display:flex;align-items:center;gap:6px}.mobile-schedule-nav .btn{min-width:34px!important;width:34px!important;height:34px!important;padding:0!important;border-radius:10px!important}.mobile-schedule-nav strong{font-size:13px;white-space:nowrap}
  .mobile-my-schedule-list{display:block!important;overflow:hidden}
  .mobile-schedule-month{border:1px solid #dfe8e3;border-radius:14px;overflow:hidden;background:#fff}
  .mobile-schedule-weekdays,.mobile-schedule-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
  .mobile-schedule-weekdays>div{padding:7px 0;text-align:center;font-size:11px;font-weight:800;color:#62746c;background:#f5f8f6;border-bottom:1px solid #e6ece9}
  .mobile-schedule-day{position:relative;min-height:66px;padding:5px 3px;border-right:1px solid #edf1ef;border-bottom:1px solid #edf1ef;overflow:hidden;background:#fff}
  .mobile-schedule-day:nth-child(7n){border-right:0}
  .mobile-schedule-day.is-other{background:#fafbfa;color:#a6b0ab}
  .mobile-schedule-day.is-today{background:#eef8f4;box-shadow:inset 0 0 0 1.5px #2b8a69}
  .mobile-schedule-day-number{font-size:11px;font-weight:800;line-height:1;margin-bottom:4px}
  .mobile-schedule-chip{display:block;width:100%;margin-top:2px;padding:2px 3px;border-radius:5px;background:#e8f3ee;color:#23644f;font-size:9px;font-weight:800;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
  .mobile-schedule-more{display:block;margin-top:2px;font-size:8px;color:#738179;text-align:center}

  /* Pre-leave entry should feel like a short action section, not a second full desktop panel. */
  #scheduleEmployeePanel h3{margin-bottom:4px!important}
  #scheduleEmployeePanel .muted-text{font-size:12px!important}

  /* Attendance history is a vertical timeline; no horizontal scrolling. */
  #attendanceMyHistory .attendance-list{display:flex!important;flex-direction:column!important;gap:8px!important;overflow:visible!important}
  #attendanceMyHistory .attendance-row{width:100%!important;max-width:100%!important;grid-template-columns:minmax(0,1fr) auto!important}
}
