/* 여기에 light css 작성 */ /* 휴가 */ .fc-daygrid-event { pointer-events: none !important; } /* 이벤트 선 없게 */ .fc-event { border: none; } /* 오전 반차 그래프 (왼쪽 절반) */ .fc-daygrid-event.half-day-am { width: 50% !important; height: 8px !important; border-radius: 2px !important; font-size: 0px !important; } /* 오후 반차 그래프 (오른쪽 절반) */ .fc-daygrid-event.half-day-pm { width: 50% !important; height: 8px !important; margin-left: auto !important; border-radius: 2px !important; font-size: 0px !important; } /* 연차 그래프 (풀) */ .fc-daygrid-event.full-day { width: 100% !important; height: 8px !important; margin-left: auto !important; border-radius: 2px !important; font-size: 0px !important; } /* 공휴일,일요일 색상 */ .fc-day-sun .fc-daygrid-day-number, .fc-col-header-cell:first-child .fc-col-header-cell-cushion { color: #ff4500 !important; } /* 토요일 색상 */ .fc-day-sat .fc-daygrid-day-number, .fc-col-header-cell:last-child .fc-col-header-cell-cushion { color: #6076e0 !important; } /* 캘린더 날짜 왼쪽 상단 위치하게 */ .fc-daygrid-day-number { margin-right: auto; } /* 데이트피커 뾰족없게 */ .flatpickr-calendar:before, .flatpickr-calendar:after { display: none !important; } /* 기본 스타일은 그대로 두고, 데이트피커 인풋의 추가 스타일 정의 */ .fc-toolbar-title { cursor: pointer; } /* 클릭 가능한 날짜 (오늘 + 미래) */ .fc-daygrid-day.clickable { cursor: pointer; transition: background-color 0.2s ease-in-out; } /* 마우스를 올렸을 때 효과 */ .fc-daygrid-day.clickable:hover { background-color: rgba(0, 0, 0, 0.05); /* 연한 배경 효과 */ } /* 주말 (토요일, 일요일) 및 공휴일 */ .fc-day-sat-sun { cursor: not-allowed !important; } /* 과거 날짜 (오늘 이전) */ .fc-daygrid-day.past { cursor: not-allowed !important; } /* 기본 이벤트 스타일 */ .fc-daygrid-event { border: none !important; border-radius: 4px; } /* 오전 반차 활성화 영역 (왼쪽 절반) */ .selected-event.half-day-am { width: 50% !important; left: 0 !important; border-top-left-radius: 4px; border-bottom-left-radius: 4px; } /* 오후 반차 활성화 영역 (오른쪽 절반) */ .selected-event.half-day-pm { width: 50% !important; margin-left: auto !important; border-top-right-radius: 4px; border-bottom-right-radius: 4px; } /* 휴가 모달 */ .vac-modal-dialog { background: none !important; box-shadow: none !important; display: flex; align-items: flex-end; justify-content: center; width: 100%; height: 100%; padding-bottom: 20px; } .vac-modal-content { background: #fff; padding: 20px; box-shadow: 0px -4px 5px rgba(0, 0, 0, 0.1), 0px 4px 0px rgba(0, 0, 0, 0); max-width: 500px; width: 100%; position: relative; } .vac-modal-body { max-height: 140px; overflow-y: auto; } .vac-modal-text { font-size: 14px; text-align: center; margin-bottom: 20px; } .count-container { display: flex; align-items: center; justify-content: center; gap: 6px; margin-bottom: 10px; } .count-value { font-size: 23px; font-weight: bold; min-width: 50px; text-align: center; } .custom-button { background: none; border: none; width: 55px; height: 55px; font-size: 26px; color: white; border-radius: 50%; cursor: pointer; transition: all 0.2s; } .vac-modal-title { margin-bottom: 10px; } .vacation-item { display: flex; align-items: center; font-size: 16px; font-weight: bold; margin-bottom: 8px; padding: 5px 10px; border-radius: 5px; background: #f9f9f9; } .close-btn { position: absolute; top: 10px; right: 10px; background: none; border: none; font-size: 18px; cursor: pointer; } .close-btn:hover { color: #525252; } .count-btn { font-size: 18px; padding: 2px 10px; border: none; background: #2C3E50; color: white; border-radius: 5px; cursor: pointer; } .count-btn:hover { background: #1d2c44; } .count-btn:disabled { background: #cccccc; cursor: not-allowed; } .custom-button-container { display: flex; justify-content: flex-end; align-items: center; } .custom-button { background: none; border: none; padding: 10px; cursor: pointer; } .custom-button i { color: #282538; font-size: 25px; } .custom-button:hover i { color: #ff0800; } /* 휴가 사원프로필 */ .profile-list { display: flex; flex-wrap: wrap; gap: 15px; padding: 0; list-style: none; justify-content: flex-start; cursor: pointer; } .profile-item { display: flex; flex-direction: column; align-items: center; cursor: pointer; width: calc(33.33% - 10px); } /* 오전/오후반차,저장버튼 */ /* 버튼 기본 스타일 */ .vac-btn { transition: all 0.2sease-in-out; border: 2px solid transparent; } /* 마우스를 올렸을 때 */ .vac-btn:hover { filter: brightness(90%); box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); transform: scale(1.05); } /* 버튼이 눌렸을 때 */ .vac-btn:active { transform: scale(0.9); box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2); } /* 선택된 (눌린) 버튼 */ .vac-btn.active { box-shadow: 0px 4px 15px rgba(224, 224, 224, 0.3); transform: scale(1.1); } .vac-btn-warning{ color: #fff; background-color: #ffc144; border-color: #ffc144; box-shadow: 0 0.125rem 0.25rem 0 rgba(255, 171, 0, 0.4); font-size: 28px; } /* AM 버튼 (선택된 상태) */ .vac-btn-warning.active { background-color: #ff7300 !important; color: #fff;; } .vac-btn-info { color: #fff; background-color: #03c3ec; border-color: #03c3ec; box-shadow: 0 0.125rem 0.25rem 0 rgba(3, 195, 236, 0.4); font-size: 28px; } /* PM 버튼 (선택된 상태) */ .vac-btn-info.active { background-color: #0b5ed7 !important; color: white; } /* 버튼 기본 */ .vac-btn-success { transition: all 0.2s ease-in-out; background-color: #871919 !important; color: white; border: 2px solid transparent; font-size: 30px; } /* 버튼 활성화 */ .vac-btn-success.active { background-color: #ff0000 !important; color: white !important; border: 3px solid #eb9f9f !important; box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.3); transform: scale(1.1); } /* 버튼 비활성화 */ .vac-btn-success.disabled { background-color: #bbb8b8 !important; color: white !important; cursor: not-allowed !important; box-shadow: none; transform: none; opacity: 0.5; } /* 작은 화면에서 버튼 크기 조정 */ @media (max-width: 1700px) { .count-btn { width: 28px; height: 28px; font-size: 15px; } .count-container { display: flex; align-items: center; justify-content: center; gap: 0px; margin-bottom: 8px; } .count-value { font-size: 20px; } .custom-button { width: 45px; height: 45px; font-size: 22px; } .vac-grant-modal-title { font-size: 18px; } .vac-modal-text { font-size: 13px; } .vac-modal-title { font-size: 17px; margin-bottom: 10px; } .vacation-item { font-size: 13px; text-align: center; margin-bottom: 5px; } .vac-btn { width: 50px; height: 50px; font-size: 18px; } .vac-btn-success { font-size: 20px; width: 50px; height: 50px; } } @media (max-width: 1500px) { .vac-grant-modal-title { font-size: 14px; } .vac-modal-text { font-size: 11px; } .vac-modal-title { font-size: 13px; margin-bottom: 10px; } .close-btn { top: 5px; right: 5px; font-size: 13px; } .vacation-item { font-size: 11px; text-align: center; margin-bottom: 5px; } .vac-btn { width: 40px; height: 40px; font-size: 18px; } .vac-btn-success { font-size: 20px; width: 40px; height: 40px; } } .grayscaleImg { filter: grayscale(100%); } /* scrollbar 안보이게 */ .scrollbar-none { scrollbar-width: none; } /* project list */ .map { top: -160px; left: -5px; } @keyframes sparkle { 0% { color: #ffcc00; } 50% { color: red; } 100% { color: #ffcc00; } } .bxs-map { animation: sparkle 1s infinite; /* 1초마다 반복 */ } .popover-close { position: absolute; top: 1rem; right: 1rem; z-index: 2; background-color: #fff !important; box-shadow: 0 0.125rem 0.25rem rgba(161, 172, 184, 0.4); transition: all 0.23s ease 0.1s; transform: translate(23px, -25px); } .popover-close:hover { opacity: 1; outline: none; transform: translate(20px, -20px); } .end-project { background-color: #ddd !important; } /* project list end */