@charset "utf-8"; /* box */ /* 메인 */ header { background-color: var(--headergray); padding: 3px 30px; grid-area: header; position: absolute; top: 0; left: 0; width: 100%; z-index: 1; color: white; } /* .app-wrap{ border: 1px solid red; min-width: 1280px; } */ .wrapper { width: 100%; height: 100%; position: absolute; top: 15px; left: 0px; flex-wrap: nowrap; padding-top: 58.5px; font-family: 'Pretendard'; background-color: var(--white); } .main-nav { position: absolute; top: 21px; left: 0; width: 100%; z-index: 2; flex-wrap: nowrap; padding: 0 10px; background-color: var(--navbarblue); } .row { padding-top: 5px; padding-bottom: 5px; } .box { background-color: var(--white); height: 100%; padding: 15px; border-radius: 10px; box-shadow: 0 0 5px var(--light); } .box-title { font-size: 1.8rem; font-weight: bold; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid var(--dark); } .box-inner-title { font-size: 1.6rem; font-weight: bold; } .chart-title { font-size: 1.4rem; font-weight: bold; } .content-box { height: calc(100% - 48px); /* background-color: aliceblue; */ } /* btn */ .small-btn { width: 120px; padding: 5px 10px; border-radius: 5px; font-size: 1.3rem; } .large-btn { width: 100%; padding: 5px 15px; border-radius: 5px; } .icon-btn { padding: 5px; border-radius: 50%; } .close-btn { font-size: 1.6rem; font-weight: 900; } .logout-btn::before { content: ""; width: 1px; height: 10px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background-color: #aaa; } .close-btn { color: #d6def6; } .blue-btn, .blue-border-btn:hover { color: var(--white); transition: all 0.3s ease-in-out; } .red-btn, .red-border-btn:hover { background-color: var(--red); color: var(--white); transition: all 0.3s ease-in-out; } .green-btn, .green-border-btn:hover { background-color: var(--green); color: var(--white); transition: all 0.3s ease-in-out; } .orange-btn, .orange-border-btn:hover { background-color: var(--orange); color: var(--white); transition: all 0.3s ease-in-out; } .darkg-btn, .darkg-border-btn:hover { background-color: var(--darkG); color: var(--white); transition: all 0.3s ease-in-out; } .gray-btn, .gray-border-btn:hover { background-color: #eee; color: #333; transition: all 0.3s ease-in-out; } .blue-small-btn{ background-color: var(--white); border: 1px solid var(--navbarblue); padding: 1px 23px; border-radius: 5px; font-size: 1.3rem; font-weight: 500; } .blue-border-btn { border: 1px solid var(--blue); color: var(--blue); background-color: var(--white); } .red-border-btn { border: 1px solid var(--red); color: var(--red); background-color: var(--white); } .green-border-btn { border: 1px solid var(--green); color: var(--green); background-color: var(--white); } .orange-border-btn { border: 1px solid var(--orange); color: var(--orange); background-color: var(--white); } .darkg-border-btn { border: 1px solid #434343; color: #434343; background-color: var(--white); } .gray-border-btn { border: 1px solid #aaa; color: #aaa; background-color: var(--white); } .white-border-btn { border: 1px solid var(--white); color: var(--white); background-color: transparent; } .tp-btn { background-color: transparent; width: 15px; height: 15px; margin-left: 10px; } button:disabled { background-color: #eee; color: #333; } .del-icon-btn { width: 25px; height: 25px; padding: 5px; background-color: var(--red); color: var(--white); border-radius: 50%; } .set-icon-btn { width: 25px; height: 25px; padding: 5px; background-color: var(--darkG); color: var(--white); border-radius: 50%; } .green-excel-btn{ border: 1px solid var(--green); border-radius: 5px; padding: 5px 15px; font-size: 1.3rem; font-weight: 600; color: var(--green); } .red-del-btn{ border: 1px solid var(--red); border-radius: 5px; padding: 5px 15px; font-size: 1.3rem; font-weight: 600; color: var(--red); } .blue-save-btn{ border: 1px solid var(--navbarblue); border-radius: 5px; padding: 5px 15px; font-size: 1.3rem; font-weight: 600; color: var(--navbarblue); } /* 박스 컴포넌트 스타일 */ .component-wrap { width: 100%; height: 100%; padding: 8px; border-radius: 5px; background-color: #f8f8f8; } .data-title { font-size: 1.4rem; font-weight: 500; } .data-number, .data-caption { font-size: 1.6rem; font-weight: bold; } .data-unit { font-size: 1.4rem; font-weight: 200; } .data-icon { min-width: 30px; min-height: 30px; width: 40px; height: 40px; max-width: 100%; max-height: 100%; } .data-icon p { font-size: 1.6rem; font-weight: bold; text-align: center; line-height: 50px; background-color: var(--orange); border-radius: 5px; } /* 모달 */ .modal-wrapper { background-color: rgba(0, 0, 0, 0.5); position: fixed; width: 100%; height: 100%; top: 0; left: 0; display: flex; justify-content: center; align-items: center; z-index: 11000; } .modal-container { background: #fff; min-width: 500px; width: 50%; height: 80%; border-radius: 5px; display: grid; grid-template-rows: auto 1fr auto; padding: 20px; box-sizing: border-box; max-height: 95%; min-height: 500px; } .modal-title { width: 100%; font-size: 1.3rem; color: var(--navbarblue); border-bottom: 1px solid #d4cccc; padding: 10px 0; } .modal-subtitle { font-size: 1.3rem; font-weight: 600; } .modal-content-monthly { width: 100%; padding: 20px 0; overflow-y: auto; } .large-modal { width: 90%; } .small-modal { min-width: 200px; min-height: 200px; max-width: 450px; height: auto; max-height: 50%; } .list-modal { width: 80%; height: 80%; } .alert-write { font-size: 1.6rem; line-height: 180%; } .modal-content-monthly::-webkit-scrollbar { width: 10px; } .modal-content-monthly::-webkit-scrollbar-thumb { background-color: #6b6b6b; border-radius: 10px; background-clip: padding-box; border: 2px solid transparent; } .modal-content-monthly::-webkit-scrollbar-track { background-color: #eee; border-radius: 10px; box-shadow: inset 0px 0px 5px white; } .modal-end { width: 100%; padding: 15px 0; border-top: 1px solid #eee; } .alert-modal .modal-end button, .small-modal .modal-end button { margin-left: 0; } .full-input, .full-select { width: 100%; } /* margin */ /* margin-left 왼쪽 */ .ml0 { margin-left: 0%; } .ml1 { margin-left: 1%; } .ml2 { margin-left: 2%; } .ml3 { margin-left: 3%; } .ml4 { margin-left: 4%; } .ml5 { margin-left: 5%; } .ml6 { margin-left: 6%; } .ml7 { margin-left: 7%; } .ml8 { margin-left: 8%; } .ml9 { margin-left: 9%; } .ml10 { margin-left: 10%; } .ml15 { margin-left: 15%; } .ml20 { margin-left: 20%; } /* margin-right 오른쪽 */ .mr0 { margin-right: 0%; } .mr1 { margin-right: 1%; } .mr2 { margin-right: 2%; } .mr3 { margin-right: 3%; } .mr4 { margin-right: 4%; } .mr5 { margin-right: 5%; } .mr6 { margin-right: 6%; } .mr7 { margin-right: 7%; } .mr8 { margin-right: 8%; } .mr9 { margin-right: 9%; } .mr10 { margin-right: 10%; } .mr15 { margin-right: 15%; } .mr20 { margin-right: 20%; } /* margin-top 윗쪽 */ .mt0 { margin-top: 0%; } .mt1 { margin-top: 1%; } .mt2 { margin-top: 2%; } .mt3 { margin-top: 3%; } .mt4 { margin-top: 4%; } .mt5 { margin-top: 5%; } .mt6 { margin-top: 6%; } .mt7 { margin-top: 7%; } .mt8 { margin-top: 8%; } .mt9 { margin-top: 9%; } .mt10 { margin-top: 10%; } .mt15 { margin-top: 15%; } .mt20 { margin-top: 20%; } /* margin-bottom 아래쪽 */ .mb0 { margin-bottom: 0%; } .mb1 { margin-bottom: 1%; } .mb2 { margin-bottom: 2%; } .mb3 { margin-bottom: 3%; } .mb4 { margin-bottom: 4%; } .mb5 { margin-bottom: 5%; } .mb6 { margin-bottom: 6%; } .mb7 { margin-bottom: 7%; } .mb8 { margin-bottom: 8%; } .mb9 { margin-bottom: 9%; } .mb10 { margin-bottom: 10%; } .mb15 { margin-bottom: 15%; } .mb20 { margin-bottom: 20%; } /* padding */ .pd0 { padding: 0%; } .pd1 { padding: 1%; } .pd2 { padding: 2%; } .pd3 { padding: 3%; } .pd4 { padding: 4%; } .pd5 { padding: 5%; } .pd6 { padding: 6%; } .pd7 { padding: 7%; } .pd8 { padding: 8%; } .pd9 { padding: 9%; } .pd10 { padding: 10%; } .pd15 { padding: 15%; } .pd20 { padding: 20%; } /* padding-top */ .pt0 { padding-top: 0%; } .pt1 { padding-top: 1%; } .pt2 { padding-top: 2%; } .pt3 { padding-top: 3%; } .pt4 { padding-top: 4%; } .pt5 { padding-top: 5%; } .pt6 { padding-top: 6%; } .pt7 { padding-top: 7%; } .pt8 { padding-top: 8%; } .pt9 { padding-top: 9%; } .pt10 { padding-top: 10%; } .pt15 { padding-top: 15%; } .pt20 { padding-top: 20%; } /* padding-bottom */ .pb0 { padding-bottom: 0%; } .pb1 { padding-bottom: 1%; } .pb2 { padding-bottom: 2%; } .pb3 { padding-bottom: 3%; } .pb4 { padding-bottom: 4%; } .pb5 { padding-bottom: 5%; } .pb6 { padding-bottom: 6%; } .pb7 { padding-bottom: 7%; } .pb8 { padding-bottom: 8%; } .pb9 { padding-bottom: 9%; } .pb10 { padding-bottom: 10%; } .pb15 { padding-bottom: 15%; } .pb20 { padding-bottom: 20%; } /* text 정렬 */ .text-lf { text-align: left; } .text-ct { text-align: center; } .text-rg { text-align: right; } /* 기타 공용 */ .cursor { cursor: pointer; } .content-w20 { width: 20%; } .content-w30 { width: 30%; } .content-w50 { width: 50%; } .content-w60 { width: 60%; } .content-w70 { width: 70%; } .content-w100 { width: 100%; } .input-gray { background-color: var(--inputgray); text-align: left !important; } .box-overflow { height: 90%; min-height: 320px; max-height: 650px; overflow-y: auto; } .box-overflow::-webkit-scrollbar{ width: 2px; } .box-overflow::-webkit-scrollbar-thumb{ background-color: var(--navbarblue); } .rest-btn,.save-btn,.del-btn{ position: relative; } .rest-btn::before{ content: 'F11'; position: absolute; top: -30%; right: 0; background-color: var(--navbarblue); color: white; padding: 0 5px; border-radius: 10px; font-size: 1rem; } .save-btn::before{ content: 'F9'; position: absolute; top: -30%; right: 0; background-color: var(--navbarblue); color: white; padding: 0 5px; border-radius: 10px; font-size: 1rem; } .del-btn::before{ content: 'F8'; position: absolute; top: -30%; right: 0; background-color: var(--navbarblue); color: white; padding: 0 5px; border-radius: 10px; font-size: 1rem; } /* input checkbox */ /* checkbox settings 👇 */ .ui-checkbox { --primary-color: #005aab; --secondary-color: #fff; --primary-hover-color: #005aab; /* checkbox */ --checkbox-diameter: 20px; --checkbox-border-radius: 5px; --checkbox-border-color: #d9d9d9; --checkbox-border-width: 1px; --checkbox-border-style: solid; /* checkmark */ --checkmark-size: 1.2; } .ui-checkbox, .ui-checkbox *, .ui-checkbox *::before, .ui-checkbox *::after { -webkit-box-sizing: border-box; box-sizing: border-box; } .ui-checkbox { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: var(--checkbox-diameter); height: var(--checkbox-diameter); border-radius: var(--checkbox-border-radius); background: var(--secondary-color); border: var(--checkbox-border-width) var(--checkbox-border-style) var(--checkbox-border-color); -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; cursor: pointer; position: relative; } .ui-checkbox::after { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; -webkit-box-shadow: 0 0 0 calc(var(--checkbox-diameter) / 2.5) var(--primary-color); box-shadow: 0 0 0 calc(var(--checkbox-diameter) / 2.5) var(--primary-color); border-radius: inherit; opacity: 0; -webkit-transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46); -o-transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46); transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46); } .ui-checkbox::before { top: 40%; left: 50%; content: ""; position: absolute; width: 4px; height: 7px; border-right: 2px solid var(--secondary-color); border-bottom: 2px solid var(--secondary-color); -webkit-transform: translate(-50%, -50%) rotate(45deg) scale(0); -ms-transform: translate(-50%, -50%) rotate(45deg) scale(0); transform: translate(-50%, -50%) rotate(45deg) scale(0); opacity: 0; -webkit-transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6), opacity 0.1s; -o-transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6), opacity 0.1s; transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6), opacity 0.1s; } /* actions */ .ui-checkbox:hover { border-color: var(--primary-color); } .ui-checkbox:checked { background: var(--primary-color); border-color: transparent; } .ui-checkbox:checked::before { opacity: 1; -webkit-transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size)); -ms-transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size)); transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size)); -webkit-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s; -o-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s; transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s; } .ui-checkbox:active:not(:checked)::after { -webkit-transition: none; -o-transition: none; -webkit-box-shadow: none; box-shadow: none; transition: none; opacity: 1; }