/* UI v7: 업무현황 연결형 계획/실적 및 업무추가 모달 표준화 */
.wsPanelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.wsPanelHeader .wsPanelTitle{margin:0}
.wsSectionAction{border:1px solid #dbe3ff;background:#fff;color:#315efb;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.wsSectionAction:hover{background:#f5f7ff;border-color:#bcc9ff}
.wsMonthlyGoalRow{display:block!important;border:none!important;border-radius:0!important;overflow:visible!important;background:transparent!important}
.wsMonthlyGoalLine{display:grid;gap:12px;margin-bottom:12px}
.wsMonthlyGoalLine:last-child{margin-bottom:0}
.wsMonthlyGoalItem{appearance:none;width:100%;text-align:left;background:#fff;border:1px solid #e7ebf3!important;border-radius:14px;padding:18px 18px!important;display:flex;gap:13px;align-items:flex-start;min-height:120px;box-shadow:none;cursor:pointer;transition:.16s ease}
.wsMonthlyGoalItem:hover{border-color:#cad4ff!important;box-shadow:0 6px 18px rgba(49,94,251,.08);transform:translateY(-1px)}
.wsMonthlyGoalNum{width:38px;height:38px;border-radius:12px;font-size:14px;flex:0 0 auto;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;font-weight:900}
.wsMonthlyGoalBody{display:flex;flex-direction:column;min-width:0;flex:1}
.wsMonthlyGoalTitle{font-size:14px;line-height:1.4;margin-bottom:5px}
.wsMonthlyGoalCriterion{font-size:11.5px;color:#64748b;line-height:1.45;margin-bottom:8px}
.wsMonthlyGoalMeta{font-size:11px;color:#7b8495;margin-top:auto}
.wsGoalProgressText{font-size:11px;color:#475569;font-weight:700;margin-top:9px}
.wsGoalProgress{display:block;height:6px;background:#edf0f6;border-radius:99px;overflow:hidden;margin-top:5px}
.wsGoalProgress i{display:block;height:100%;background:linear-gradient(90deg,#4f46e5,#6f72f6);border-radius:99px}
.wsMoreGoalsBtn{display:block;margin:10px auto 0;border:1px solid #dbe3ff;background:#fff;color:#315efb;border-radius:10px;padding:8px 14px;font-weight:800;font-size:12px;cursor:pointer}
.wsTodayHead,.wsTodayRow{grid-template-columns:1.55fr .55fr .55fr 1.1fr!important}
.wsLinkedTask{font-size:11.5px;color:#5d6677;line-height:1.35}
.wsWeeklyRow{transition:.12s ease}
.wsWeeklyRow:hover,.wsTodayRow:hover{background:#fafbff}

/* 공통 업무 모달 */
#simpleModalBox.workFlowModal{padding:0!important;border-radius:18px!important;border:1px solid #e5e9f2!important;box-shadow:0 28px 80px rgba(15,23,42,.25)!important;overflow:hidden!important;max-height:90vh!important}
.workFlowModal .workModalHead{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px 18px;border-bottom:1px solid #edf0f5;background:#fff}
.workFlowModal .workModalEyebrow{font-size:10px;letter-spacing:.08em;color:#5965de;font-weight:900;margin-bottom:5px}
.workFlowModal .workModalHead h3{font-size:20px;margin:0;color:#111827}
.workModalClose{width:34px;height:34px;border:0;background:#f5f6f9;color:#667085;border-radius:10px;font-size:21px;line-height:1;cursor:pointer}
.workFlowModal>.workModalStep,.workFlowModal>.workModeTabs,.workFlowModal>.workField,.workFlowModal>#pmProjectArea,.workFlowModal>#pmDirectArea,.workFlowModal>#wtCandidateArea,.workFlowModal>#wtDirectArea,.workFlowModal>#swlWeeklyArea,.workFlowModal>#swlDirectArea,.workFlowModal>.quickHourRow,.workFlowModal>.workSegment,.workFlowModal>.workMemoToggle,.workFlowModal>#swlMemoWrap,.workFlowModal>.workSourceNote,.workFlowModal>p.notice,.workFlowModal>.workAllGoalList{margin-left:24px;margin-right:24px}
.workModalStep{font-size:13px;color:#1f2937;margin-top:18px;margin-bottom:9px}
.workModeTabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dde3ee;border-radius:11px;overflow:hidden;margin-bottom:14px;background:#f8fafc}
.workModeTabs.three{grid-template-columns:repeat(3,1fr)}
.workModeTabs button{border:0;border-right:1px solid #e4e8f0;background:transparent;color:#667085;padding:11px 10px;font-size:12px;font-weight:800;cursor:pointer}
.workModeTabs button:last-child{border-right:0}
.workModeTabs button.active{background:#5452e8;color:#fff}
.workField{margin-top:14px}
.workField label{display:block;font-size:12px;color:#475467;font-weight:800;margin-bottom:7px}
.workField label span{font-size:10px;color:#98a2b3;font-weight:700}
.workField input,.workField select,.workField textarea{width:100%;border:1px solid #d9dee8;border-radius:10px;padding:10px 11px;background:#fff;color:#1f2937;font-size:13px;outline:none}
.workField input:focus,.workField select:focus,.workField textarea:focus{border-color:#8d92ff;box-shadow:0 0 0 3px rgba(79,70,229,.08)}
.workField.twoCols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.workSourceNote{margin-top:14px;padding:11px 12px;background:#f7f8ff;border:1px solid #e3e6ff;border-radius:10px;font-size:11.5px;color:#586174}
.workCandidateList{border:1px solid #e1e5ed;border-radius:12px;overflow:hidden;max-height:260px;overflow-y:auto;background:#fff}
.workCandidateItem{width:100%;display:flex;align-items:flex-start;gap:10px;border:0;border-bottom:1px solid #edf0f4;background:#fff;text-align:left;padding:12px 13px;cursor:pointer}
.workCandidateItem:last-child{border-bottom:0}
.workCandidateItem:hover{background:#fafbff}.workCandidateItem.selected{background:#f2f3ff}
.workCandidateRadio{width:16px;height:16px;border-radius:50%;border:1.5px solid #aeb5c3;margin-top:2px;flex:0 0 auto}
.workCandidateItem.selected .workCandidateRadio{border:5px solid #4f46e5}
.workCandidateItem span:last-child,.workCandidateCheck span{display:flex;flex-direction:column;min-width:0}
.workCandidateItem b,.workCandidateCheck b{font-size:12.5px;color:#1f2937;line-height:1.35}
.workCandidateItem small,.workCandidateCheck small{font-size:10.5px;color:#7a8494;margin-top:4px}
.workCandidateEmpty{padding:18px;text-align:center;color:#7b8494;font-size:12px;background:#fafbfc}
.workCandidateCheck{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-bottom:1px solid #edf0f4;cursor:pointer;background:#fff}
.workCandidateCheck:last-child{border-bottom:0}.workCandidateCheck:hover{background:#fafbff}
.workCandidateCheck input{margin-top:3px;accent-color:#4f46e5}
.workSegment{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:2px}
.workSegment button{border:1px solid #dfe3eb;background:#fff;color:#596273;border-radius:9px;padding:9px;font-size:12px;font-weight:800;cursor:pointer}
.workSegment button.active{border-color:#7b7ff4;background:#f2f3ff;color:#4f46e5}
.workSegment.result button:nth-child(2).active{border-color:#9fd7ad;background:#ecf8ef;color:#218544}
.workSegment.result button:nth-child(3).active{border-color:#efcda4;background:#fff7ec;color:#b66a15}
.quickHourRow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) 1.25fr;gap:7px;margin-top:2px}
.swlQuickHour{border:1px solid #dfe3eb;background:#fff;color:#596273;border-radius:9px;padding:9px 5px;font-size:11px;font-weight:800;cursor:pointer}
.swlQuickHour.active{background:#edf8ef;border-color:#9fd7ad;color:#218544}
.customHour{display:flex;align-items:center;border:1px solid #dfe3eb;border-radius:9px;overflow:hidden;background:#fff}
.customHour input{width:100%;min-width:0;border:0;padding:8px 5px;text-align:right;outline:none}.customHour span{padding-right:7px;font-size:10px;color:#7b8494}
.todayWeeklyList{border:1px solid #e1e5ed;border-radius:12px;overflow:hidden;max-height:260px;overflow-y:auto}
.todayWeeklyChoice{display:flex;gap:10px;padding:11px 13px;border-bottom:1px solid #edf0f4;cursor:pointer;background:#fff}.todayWeeklyChoice:last-child{border-bottom:0}.todayWeeklyChoice:hover{background:#fafbff}.todayWeeklyChoice:has(input:checked){background:#f5f6ff}
.todayWeeklyChoice input{accent-color:#4f46e5;margin-top:3px}.todayWeeklyChoice span{display:flex;flex-direction:column}.todayWeeklyChoice b{font-size:12.5px}.todayWeeklyChoice small{font-size:10.5px;color:#6f7785;margin-top:5px;display:flex;align-items:center;gap:5px}
.workMemoToggle{border:0;background:transparent;color:#5965de;font-size:11.5px;font-weight:800;padding:0;margin-top:14px;cursor:pointer;text-align:left}
.workModalActions{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;margin-top:20px;padding:16px 24px 20px;border-top:1px solid #edf0f5;background:#fbfcfe}
.workModalActions button{min-width:92px;padding:10px 14px;border-radius:10px;font-weight:800}
.workAllGoalList{margin-top:18px;border:1px solid #e4e8ef;border-radius:12px;overflow:hidden}
.workAllGoalRow{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:12px 14px;border-bottom:1px solid #edf0f4}.workAllGoalRow:last-child{border-bottom:0}.workAllGoalRow>span{width:25px;height:25px;border-radius:8px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900}.workAllGoalRow div{display:flex;flex-direction:column}.workAllGoalRow b{font-size:12.5px}.workAllGoalRow small{font-size:10.5px;color:#7b8494;margin-top:4px}

@media(max-width:900px){
  .wsMonthlyGoalLine{grid-template-columns:1fr 1fr!important}
  .quickHourRow{grid-template-columns:repeat(3,1fr)}
  .workField.twoCols{grid-template-columns:1fr}
}
@media(max-width:620px){
  .wsMonthlyGoalLine{grid-template-columns:1fr!important}
  .workModeTabs.three{grid-template-columns:1fr}
  .workModeTabs.three button{border-right:0;border-bottom:1px solid #e4e8f0}.workModeTabs.three button:last-child{border-bottom:0}
  .quickHourRow{grid-template-columns:repeat(2,1fr)}
  .workModalActions{grid-template-columns:1fr 1fr}.workModalActions span{display:none}.workModalActions button{width:100%}
}
