/* PE-Class v1.14.32 — PC 학교스포츠클럽 전용 정렬
 * 769px 이상에서 상단 3카드·명단 표와 출석 달력 상세 모달에만 적용합니다.
 */
@media (min-width:769px){
  .clubPcTopGrid{
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.45fr) minmax(0,.82fr);
    gap:16px;
    align-items:stretch;
    width:100%;
    min-width:0;
  }

  .clubPcTopGrid>.clubPcTopCard{
    width:auto!important;
    min-width:0!important;
    height:540px;
    min-height:540px;
    max-height:540px;
    padding:18px!important;
    overflow:hidden;
    display:flex;
    flex-direction:column;
  }

  .clubPcTopGrid>.clubPcTopCard>h3{
    margin:0 0 14px;
    line-height:1.25;
    flex:0 0 auto;
  }

  .clubPcTopGrid input,
  .clubPcTopGrid select,
  .clubPcTopGrid textarea,
  .clubPcTopGrid .btn{
    min-width:0;
    font-size:13px;
  }

  .clubPcTopGrid input,
  .clubPcTopGrid select{
    height:38px;
    padding:8px 10px;
  }

  .clubPcTopGrid .btn{
    min-height:38px;
    padding:8px 11px;
    white-space:nowrap;
  }

  /* 왼쪽: 부서 관리 */
  .clubDepartmentPanel .clubDepartmentCreateRow{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
    align-items:center;
    flex:0 0 auto;
  }

  .clubDepartmentPanel .clubDepartmentCreateRow>*{
    width:100%;
    margin:0;
  }

  .clubDepartmentPanel #addClubBtn{
    grid-column:1 / -1;
  }

  .clubDepartmentPanel .clubDeptList{
    flex:1 1 auto;
    min-height:0;
    margin-top:12px;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding-right:3px;
  }

  .clubDepartmentPanel .clubDept{
    flex:0 0 auto;
    padding:10px;
    gap:7px;
  }

  /* 중앙: 명단 관리 */
  .clubMemberPanel #clubMemberBox{
    flex:1 1 auto;
    min-height:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }

  .clubMemberPanel #clubMemberBox>.empty{
    margin:auto 0;
    padding:24px 8px;
  }

  .clubMemberPanel .clubMemberHead{
    margin-bottom:10px;
    gap:8px;
    flex:0 0 auto;
  }

  .clubMemberPanel .clubMemberHead>div{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .clubMemberPanel #deleteClubBtn{
    min-height:34px;
    padding:6px 9px;
    font-size:12px;
  }

  .clubMemberPanel .clubMemberHead>.clubDepartmentHeadActions{
    display:flex;
    flex:0 0 auto;
    align-items:center;
    gap:6px;
    width:auto;
    overflow:visible;
    white-space:nowrap;
  }

  .clubMemberPanel .clubDepartmentHeadActions .btn{
    width:auto!important;
    min-width:0!important;
    min-height:34px!important;
    padding:6px 9px!important;
    font-size:11.5px!important;
  }

  .clubMemberPanel .clubMemberQuickActions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    width:100%;
    min-width:0;
    margin:0 0 10px;
    flex:0 0 auto;
  }

  .clubMemberPanel .clubMemberQuickActions>.btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-width:0;
    min-height:38px;
    height:38px;
    padding:6px 7px;
    font-size:11.5px;
    letter-spacing:-.2px;
    line-height:1.2;
    white-space:nowrap;
  }

  .clubMemberPanel .clubMemberEntry{
    display:grid!important;
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    gap:7px!important;
    align-items:center!important;
    margin-bottom:8px!important;
    flex:0 0 auto;
  }

  .clubMemberPanel .clubMemberEntry>*{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }

  .clubMemberPanel #cmGrade,
  .clubMemberPanel #cmClass,
  .clubMemberPanel #cmNo,
  .clubMemberPanel #cmGender{
    grid-column:span 3;
  }

  .clubMemberPanel #cmName{
    grid-column:span 5;
  }

  .clubMemberPanel #cmPhone{
    grid-column:span 7;
  }

  .clubMemberPanel #addClubMemberBtn{
    grid-column:1 / -1;
  }

  .clubMemberPanel .clubImportRow{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
    align-items:stretch!important;
    margin-bottom:8px!important;
    flex:0 0 auto;
  }

  .clubMemberPanel .clubImportRow>*{
    min-width:0!important;
    width:100%!important;
    margin:0!important;
  }

  .clubMemberPanel{container-type:inline-size;container-name:club-member-panel}

  .clubMemberPanel .clubRosterGradePicker{
    display:grid!important;
    grid-template-columns:minmax(max-content,1fr) minmax(86px,112px)!important;
    gap:7px!important;
    align-items:center!important;
    box-sizing:border-box!important;
    padding:5px 7px 5px 10px!important;
    white-space:nowrap!important;
  }

  .clubMemberPanel .clubRosterGradePicker>span{
    display:block!important;
    min-width:max-content!important;
    line-height:1.25!important;
  }

  .clubMemberPanel .clubRosterGradePicker>select{
    width:100%!important;
    min-width:86px!important;
  }

  .clubMemberPanel .clubImportRow>.btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    white-space:nowrap!important;
  }

  .clubMemberPanel .clubSchoolRosterHint{
    display:flex!important;
    align-items:center!important;
    min-height:42px!important;
    padding:5px 8px!important;
    box-sizing:border-box!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
    word-break:keep-all!important;
  }

  @container club-member-panel (min-width:430px){
    .clubMemberPanel .clubImportRow{
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
  }

  .clubMemberPanel #clubImportBox:not(:empty){
    flex:0 1 150px;
    min-height:70px;
    max-height:150px;
    overflow:auto;
    margin-bottom:8px;
  }

  .clubMemberPanel #clubImportBox .importPanel{
    margin:0;
    padding:9px;
  }

  .clubMemberPanel #clubImportBox .studentPickGrid{
    max-height:88px;
    grid-template-columns:1fr;
  }

  .clubMemberPanel .clubMemberTableWrap{
    flex:1 1 auto;
    min-height:120px;
    max-height:none;
    width:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    scrollbar-gutter:stable;
    box-sizing:border-box;
    margin-top:0;
  }

  .clubMemberPanel .clubMemberTable{
    width:100%;
    min-width:0!important;
    table-layout:fixed;
    box-sizing:border-box;
  }

  .clubMemberPanel .clubMemberTable col.clubColSequence{width:8%}
  .clubMemberPanel .clubMemberTable col.clubColGrade{width:8%}
  .clubMemberPanel .clubMemberTable col.clubColClass{width:8%}
  .clubMemberPanel .clubMemberTable col.clubColNumber{width:11%}
  .clubMemberPanel .clubMemberTable col.clubColName{width:28%}
  .clubMemberPanel .clubMemberTable col.clubColGender{width:10%}
  .clubMemberPanel .clubMemberTable col.clubColManage{width:27%}

  .clubMemberPanel .clubMemberTable th,
  .clubMemberPanel .clubMemberTable td{
    overflow:hidden;
    box-sizing:border-box;
  }

  .clubMemberPanel .clubMemberTable th{
    position:sticky;
    top:0;
    z-index:2;
    padding:7px 2px;
    background:#f3f6fa;
    font-size:10.5px;
    letter-spacing:-.25px;
    text-overflow:clip;
  }

  .clubMemberPanel .clubMemberTable td{
    padding:6px 3px;
    font-size:11px;
    text-overflow:ellipsis;
  }

  .clubMemberPanel .clubMemberTable th:last-child,
  .clubMemberPanel .clubMemberTable td:last-child{
    padding-left:2px!important;
    padding-right:3px!important;
  }

  .clubMemberPanel .clubMemberActions{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:100%;min-width:0}
  .clubMemberPanel .clubMemberTable .clubMemberEdit,
  .clubMemberPanel .clubMemberTable .clubMemberDelete{
    width:100%!important;
    min-width:0!important;
    min-height:26px!important;
    padding:4px 2px!important;
    font-size:9.5px!important;
    box-sizing:border-box!important;
  }
  .clubMemberPanel .clubMemberTable .clubMemberDelete{padding-left:1px!important;padding-right:1px!important}

  body.clubMemberActionModalOpen{overflow:hidden!important}
  .clubMemberActionModal{z-index:720;padding:18px}
  .clubMemberActionModal>.modalCard{box-sizing:border-box;overflow:hidden}
  .clubMemberActionModalHead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
  .clubMemberActionModalHead>div{min-width:0}
  .clubMemberActionModalHead h3{margin:0 0 5px;font-size:20px}
  .clubMemberActionModalHead p{margin:0;color:#718096;font-size:13px;line-height:1.45;word-break:keep-all}
  .clubMemberActionModalHead>.btn{flex:0 0 auto;min-height:38px;padding:7px 12px}

  .clubRosterUploadModalCard{width:min(460px,94vw);padding:20px}
  .clubRosterUploadModalForm{display:grid;gap:12px}
  .clubRosterUploadModalForm label{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:10px;font-size:13px;font-weight:900;color:#475569}
  .clubRosterUploadModalForm select{width:100%;min-width:0;height:44px}
  .clubRosterUploadGuide{padding:12px 13px;border:1px solid #dbe7f2;border-radius:10px;background:#f7fbff;color:#64748b;font-size:12px;line-height:1.55;word-break:keep-all}
  .clubRosterUploadModalForm>.btn{width:100%;min-height:44px}

  .clubMemberCreateModalCard{width:min(620px,94vw);padding:20px}
  .clubMemberCreateForm{margin:0}
  .clubMemberCreateGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  .clubMemberCreateGrid label{display:grid;gap:6px;min-width:0}
  .clubMemberCreateGrid label>span{font-size:13px;font-weight:900;color:#475569}
  .clubMemberCreateGrid label.wide{grid-column:span 2}
  .clubMemberCreateGrid input,.clubMemberCreateGrid select{width:100%;min-width:0;height:44px;margin:0}
  .clubMemberCreateActions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
  .clubMemberCreateActions>.btn{min-width:110px;min-height:42px}

  .clubStatsTable th:first-child,
  .clubStatsTable td:first-child{ text-align:center!important; vertical-align:middle!important; }

  .clubMemberEditModalCard{width:min(620px,94vw);overflow:hidden}
  .clubMemberEditModalHead{align-items:flex-start;gap:16px}
  .clubMemberEditModalHead h3{margin:0 0 4px}
  .clubMemberEditModalHead p{margin:0}
  .clubMemberEditGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
  .clubMemberEditGrid label{display:grid;gap:6px;min-width:0}
  .clubMemberEditGrid label span{font-weight:800;color:#475569;font-size:13px}
  .clubMemberEditGrid label.wide{grid-column:span 2}
  .clubMemberEditGrid input,.clubMemberEditGrid select{width:100%;min-width:0;height:44px}
  .clubMemberEditActions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}

  /* 오른쪽: QR 출석 */
  .clubQrPanel>.hint{
    margin:0 0 10px;
    line-height:1.45;
    flex:0 0 auto;
  }

  .clubQrPanel .formGrid{
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
    margin:0 0 10px;
    flex:0 0 auto;
  }

  .clubQrPanel .formGrid label{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    align-items:center;
    gap:8px;
    margin:0;
  }

  .clubQrPanel .formGrid input,
  .clubQrPanel .formGrid select{
    width:100%;
  }

  .clubQrPanel .clubQrActions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    flex:0 0 auto;
  }

  .clubQrPanel .clubQrActions>*{
    width:100%;
    margin:0;
  }

  .clubQrPanel #qrLinkBox{
    width:100%;
    min-height:58px;
    height:58px;
    max-height:58px;
    padding:8px 10px;
    margin-top:10px;
    resize:none;
    flex:0 0 auto;
  }

  .clubQrPanel .qrPreviewBox{
    flex:1 1 auto;
    min-height:0;
    margin-top:10px;
    overflow:auto;
    align-items:flex-start;
  }

  .clubQrPanel .qrPreviewBox>.empty{
    width:100%;
    padding:24px 8px;
  }

  .clubQrPanel .qrCard{
    width:100%;
    max-width:230px;
    padding:8px;
    gap:3px;
    border-radius:12px;
  }

  .clubQrPanel .qrCard img{
    width:120px;
    height:120px;
  }

  .clubQrPanel .qrCard b,
  .clubQrPanel .qrCard span,
  .clubQrPanel .qrCard small{
    font-size:12px;
    max-width:100%;
    overflow-wrap:anywhere;
  }

  /* 출석 달력의 부서별 학생 상세 모달 — 이 모달 표만 가로 스크롤 없이 맞춥니다. */
  #clubCalModal .clubCalAttendanceModalCard{
    width:min(720px,96vw);
    max-width:96vw;
    box-sizing:border-box;
    overflow-x:hidden;
  }

  #clubCalModal .clubCalAttendanceModalHead{
    flex-wrap:nowrap;
    min-width:0;
  }

  #clubCalModal .clubCalAttendanceModalHead h3{
    overflow:hidden;
    min-width:0;
    margin-right:8px;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  #clubCalModal .clubCalAttendanceTableWrap{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    overflow-x:hidden;
  }

  #clubCalModal .clubCalAttendanceTable{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
  }

  #clubCalModal .clubCalAttendanceTable col.clubCalAttendanceStudentCol{width:38%}
  #clubCalModal .clubCalAttendanceTable col.clubCalAttendanceStatusCol{width:18%}
  #clubCalModal .clubCalAttendanceTable col.clubCalAttendanceMemoCol{width:44%}

  #clubCalModal .clubCalAttendanceTable th,
  #clubCalModal .clubCalAttendanceTable td{
    min-width:0!important;
    box-sizing:border-box;
    padding:9px 8px!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
    word-break:keep-all;
  }

  #clubCalModal .clubCalAttendanceTable th:nth-child(2),
  #clubCalModal .clubCalAttendanceTable td:nth-child(2){
    text-align:center!important;
    white-space:nowrap!important;
  }

  #clubCalModal .clubCalAttendanceTable .clubCalAttendanceStudent{
    overflow:hidden;
    text-overflow:ellipsis;
  }

}

/* v1.15.47 — 출석 달력 연습 기록 일괄 처리·배경 스크롤 잠금 */
html.clubCalModalOpen,
body.clubCalModalOpen{overflow:hidden!important;overscroll-behavior:none!important}
body.clubCalModalOpen{position:fixed!important;top:var(--club-cal-modal-scroll-top,0)!important;left:0!important;right:0!important;width:100%!important}
@media (min-width:769px){
  #clubCalModal .clubCalAttendanceModalToolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;margin:14px 0 12px}
  #clubCalModal .clubCalAttendanceModalToolbar .btn{width:100%;min-width:0;min-height:40px;padding:7px 8px;box-sizing:border-box;white-space:nowrap}
  #clubCalModal .clubCalBulkPresent{border-color:#77c79a;background:#eefaf4;color:#187a46}
  #clubCalModal .clubCalBulkAbsent{border-color:#efb1b1;background:#fff3f3;color:#bb3737}
  #clubCalModal .clubCalAttendanceModalToolbar .btn:disabled{opacity:.48;cursor:not-allowed}
}

/* v1.15.41 — PC 스포츠클럽 출석 일괄 입력 컨트롤 */
.clubAttendancePanel .attendanceControls{
  display:grid!important;
  grid-template-columns:minmax(170px,1.35fr) minmax(120px,.85fr) repeat(4,minmax(104px,.72fr))!important;
  align-items:end!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
.clubAttendancePanel .attendanceControls>label,
.clubAttendancePanel .attendanceControls>.btn{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.clubAttendancePanel .attendanceControls input,
.clubAttendancePanel .attendanceControls select,
.clubAttendancePanel .attendanceControls>.btn{
  height:42px!important;
  min-height:42px!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  font-size:13px!important;
  white-space:nowrap!important;
}
.clubAttendancePanel .clubBulkPresent{
  border-color:#7bcaa0!important;
  background:#eefaf4!important;
  color:#187a46!important;
}
.clubAttendancePanel .clubBulkAbsent{
  border-color:#efb1b1!important;
  background:#fff3f3!important;
  color:#bb3737!important;
}
.clubAttendancePanel .clubBulkAttendanceBtn:disabled{opacity:.48!important;cursor:not-allowed!important}
.clubAttendancePanel .clubAttendanceTable .attStatus{
  text-align:center!important;
  text-align-last:center!important;
}
.clubAttendancePanel .clubAttendanceTable .attMemo::placeholder{
  text-align:center!important;
}

/* v1.15.21 — PC·iPad 부서명 변경 모달 */
@media (min-width:769px){
  .clubDepartmentRenameModalCard{
    width:min(460px,94vw);
    padding:20px;
    overflow:hidden;
  }
  .clubDepartmentRenameForm{display:grid;gap:18px}
  .clubDepartmentRenameForm label{
    display:grid;
    gap:7px;
    margin:0;
    color:#475569;
    font-size:13px;
    font-weight:900;
  }
  .clubDepartmentRenameForm input{
    width:100%;
    min-width:0;
    height:46px;
    margin:0;
    box-sizing:border-box;
    font-size:15px;
  }
  .clubDepartmentRenameActions{
    display:flex;
    justify-content:flex-end;
    gap:8px;
  }
  .clubDepartmentRenameActions .btn{min-width:104px;min-height:42px}
}

/* v1.15.20 — PC·iPad 전체 학생 가져오기 모달 시각 정돈 (동작/데이터 로직 변경 없음) */
@media (min-width:769px){
  .clubImportModal{padding:28px}
  .clubImportModalBackdrop{
    background:rgba(28,47,67,.58);
  }
  .clubImportModalPanel{
    width:min(940px,calc(100vw - 56px));
    max-height:min(86vh,800px);
    border:1px solid #cdddeb;
    border-radius:20px;
    background:#f8fbfe;
    box-shadow:0 24px 64px rgba(18,50,77,.28),0 2px 8px rgba(18,50,77,.1);
  }
  .clubImportModalHeader{
    position:relative;
    align-items:center;
    padding:21px 24px;
    border-bottom:1px solid #d7e5f0;
    background:linear-gradient(135deg,#eff8ff 0%,#f8fcff 55%,#edf7f3 100%);
  }
  .clubImportModalHeader>div{
    position:relative;
    min-width:0;
    padding-left:58px;
  }
  .clubImportModalHeader>div::before{
    content:"👥";
    position:absolute;
    left:0;
    top:50%;
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border:1px solid #c7ddeb;
    border-radius:14px;
    background:#fff;
    box-shadow:0 5px 14px rgba(47,128,199,.12);
    font-size:22px;
    transform:translateY(-50%);
  }
  .clubImportModalHeader h3{
    margin:0 0 5px;
    color:#173b5b;
    font-size:22px;
    line-height:1.25;
    letter-spacing:-.35px;
  }
  .clubImportModalHeader p{
    overflow:hidden;
    margin:0;
    color:#667d91;
    font-size:13px;
    line-height:1.45;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .clubImportModalClose{
    width:42px;
    height:42px;
    flex-basis:42px;
    border:1px solid #cfdeea;
    border-radius:12px;
    background:rgba(255,255,255,.9);
    color:#49657d;
    box-shadow:0 3px 10px rgba(18,50,77,.08);
    font-size:19px;
    line-height:1;
  }
  .clubImportModalClose:hover{
    border-color:#9fc4df;
    background:#fff;
    color:#2474ac;
  }
  .clubImportModalBody{
    min-height:320px;
    padding:20px 22px 22px;
    background:#f8fbfe;
  }
  .clubSchoolImportFilters{
    grid-template-columns:150px 150px minmax(240px,1fr);
    gap:12px;
    margin-bottom:14px;
    padding:15px;
    border:1px solid #d5e4ef;
    border-radius:15px;
    background:#fff;
    box-shadow:0 4px 14px rgba(32,83,120,.06);
  }
  .clubSchoolImportFilters label{
    gap:7px;
    color:#415e76;
    font-size:12px;
    font-weight:900;
  }
  .clubSchoolImportFilters label>span::before{
    content:"";
    display:inline-block;
    width:5px;
    height:5px;
    margin:0 6px 2px 0;
    border-radius:50%;
    background:#3a91c9;
  }
  .clubSchoolImportFilters select,
  .clubSchoolImportFilters input{
    height:44px;
    margin:0;
    border:1px solid #ccdbe7;
    border-radius:10px;
    background-color:#fbfdff;
    color:#253f55;
    font-size:14px;
  }
  .clubSchoolImportFilters select:focus,
  .clubSchoolImportFilters input:focus{
    border-color:#4b9bd0;
    outline:3px solid rgba(75,155,208,.14);
  }
  .clubImportModalToolbar{
    min-height:66px;
    margin-bottom:14px;
    padding:12px 14px;
    border:1px solid #d9e6ef;
    border-radius:14px;
    background:#f1f7fb;
  }
  .clubImportModalToolbar>div:first-child{gap:3px;min-width:150px}
  .clubImportModalToolbar #clubSchoolVisibleCount{
    color:#176a9f;
    font-size:15px;
    letter-spacing:-.15px;
  }
  .clubImportModalToolbar .hint{
    color:#71879a;
    font-size:12px;
    line-height:1.4;
  }
  .clubImportModalActions{
    flex-wrap:nowrap;
    gap:7px;
  }
  .clubImportModalActions .btn{
    min-height:38px;
    padding:7px 12px;
    border-radius:9px;
    box-shadow:none;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
  }
  .clubImportModalActions #clubImportCheckedBtn{
    border-color:#25a867;
    background:#29b66f;
    color:#fff;
  }
  .clubImportModalActions #clubImportCheckedBtn:hover{background:#209b5d}
  .clubImportModalGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    max-height:46vh;
    margin-top:0;
    padding:10px;
    border:1px solid #d7e4ee;
    border-radius:15px;
    background:#eef5fa;
  }
  .clubImportModalGrid .studentPick{
    min-width:0;
    min-height:44px;
    margin:0;
    padding:10px 11px;
    border:1px solid #d6e3ec;
    border-radius:10px;
    background:#fff;
    box-shadow:0 2px 7px rgba(31,73,104,.05);
    color:#29445a;
    cursor:pointer;
    line-height:1.35;
  }
  .clubImportModalGrid .studentPick:hover{
    border-color:#80b9dc;
    background:#f8fcff;
  }
  .clubImportModalGrid .studentPick input{
    flex:0 0 auto;
    width:17px;
    height:17px;
    margin:0;
    accent-color:#2f8fc8;
  }
  .clubImportModalGrid .studentPick span{
    overflow:hidden;
    min-width:0;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .clubImportModalGrid .studentPick.disabled{
    border-color:#e1e7ec;
    background:#f4f6f8;
    box-shadow:none;
    color:#7b8b98;
    cursor:not-allowed;
  }
  .clubImportModalGrid>.empty{
    grid-column:1/-1;
    padding:42px 16px;
    border-radius:10px;
    background:#fff;
    color:#71879a;
  }
}


/* v1.14.55 — 스포츠클럽 명단 수정·출석 달력 수정 */
@media (min-width:769px){
  #clubCalModal .clubCalAttendanceTable th:first-child,
  #clubCalModal .clubCalAttendanceTable td:first-child,
  #clubCalModal .clubCalAttendanceTable th:nth-child(3),
  #clubCalModal .clubCalAttendanceTable td:nth-child(3){text-align:center!important;vertical-align:middle!important}
  #clubCalModal .clubCalAttendanceTable select,
  #clubCalModal .clubCalAttendanceTable input{width:100%;min-width:0;height:38px;box-sizing:border-box;text-align:center}
  #clubCalModal .clubCalAttendanceModalActions{flex-wrap:nowrap;gap:8px}
  #clubCalModal .clubCalAttendanceModalActions .btn{white-space:nowrap}
}
