@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');

/* ADMIN PAGE CUSTOM */
:root {
	--primary: #104E91;
	--point: #104E91;
	--point-sub: #4e9aec;
	--thick: #0f172a;
	--regular: #334155;
	--light: #64748b;
	--placeholder: #cbd5e1;
	--btn: #CCCCCC;
	--line: #e2e8f0;
	--bg: #f8fafc;
	--point-bg: #F0F8F8;
	--white: #FFFFFF;
	--error: #f43f5e;
}

body{font-family:"Noto Sans KR","Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";}
a{color:var(--point);}
a:hover{color:var(--point-sub);}

.gap-5{gap:0.5rem;}
.gap-20{gap:2rem;}
.fw-400{font-weight:400 !important;}
.fw-500{font-weight:500 !important;}
.fw-700{font-weight:700 !important;}
.flex-1{flex:1;}
.justify-content-evenly{justify-content:space-evenly;}
.table-fixed{table-layout:fixed;}
.maxw_152{max-width:152px;}
.minh_35{min-height:35px;}
.minh_38{min-height:38px;}
.cursor_default{cursor:default !important;}
.cursor_pointer{cursor:pointer !important;}

.admin_custom .content-wrapper{min-width:1100px; overflow-x:auto;}

/* color */
.admin_custom .btn-primary{background-color:var(--point); border-color:var(--point);}
.admin_custom .btn-primary:not(:disabled):not(.disabled).active, 
.admin_custom .btn-primary:not(:disabled):not(.disabled):active, 
.admin_custom .show>.btn-primary.dropdown-toggle{background-color:var(--point); border-color:var(--point);}
.admin_custom .btn-outline-primary{color:var(--point); border-color:var(--point);}
.admin_custom .btn-outline-primary:hover{color:#fff; background-color:var(--point); border-color:var(--point);}
.admin_custom .btn-outline-primary:not(:disabled):not(.disabled).active, 
.admin_custom .btn-outline-primary:not(:disabled):not(.disabled):active, 
.admin_custom .show>.btn-outline-primary.dropdown-toggle{background-color:var(--point); border-color:var(--point);}
.admin_custom .dropdown-item.active, .admin_custom .dropdown-item:active{background-color:var(--point);}

.admin_custom .page-link{color:var(--point);}
.admin_custom .page-item.active .page-link{background-color:var(--point); border-color:var(--point);}

.admin_custom .form-control:focus{border-color:var(--point);}
.admin_custom .custom-file-input:focus~.custom-file-label{border-color:var(--point);}
.admin_custom .icheck-primary>input:first-child:checked+input[type=hidden]+label::before, 
.admin_custom .icheck-primary>input:first-child:checked+label::before{background-color:var(--point); border-color:var(--point);}
.admin_custom .icheck-primary>input:first-child:not(:checked):not(:disabled):focus+input[type=hidden]+label::before, 
.admin_custom .icheck-primary>input:first-child:not(:checked):not(:disabled):focus+label::before{border-color:var(--point);}
.admin_custom .icheck-primary>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before, 
.admin_custom .icheck-primary>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:var(--point);}

.admin_custom .card-primary.card-outline{border-top:3px solid var(--point);}
.admin_custom .border-bottom{border-bottom:1px solid var(--regular) !important;}

/* input */
.admin_custom [class*=icheck-].type02>label{margin-left:7px;}
/* .admin_custom [class*=icheck-]>input[type=radio]:first-child+label::before{border-radius:0;} */

/* table */
.admin_custom .table th,
.admin_custom .table td{vertical-align:middle; font-size:15px; padding:0.75rem 0.3rem; word-break:keep-all;}
.admin_custom .table-responsive > table{margin-bottom:0;}

/* Header, Sidebar */
.admin_custom [class*=sidebar-dark-]{background-color:var(--regular);}
.admin_custom .main-header{min-width:1100px;}
.admin_custom .main-header .navbar-nav .nav-link>p{margin:0;}
.admin_custom .main-header .navbar-nav.ml-auto .nav-link>p{padding-right:20px;}
.admin_custom .main-header .navbar-nav .nav-link>p>.right{position:absolute; top:0.8rem; right:1rem;}
.admin_custom .main-sidebar .brand-link .brand-image{max-height:40px; margin-left:0.5rem;}
.admin_custom .main-sidebar .brand-text{font-size:1rem;}
.admin_custom .nav-pills .nav-link.active, 
.admin_custom .nav-pills .show>.nav-link{background-color:var(--point);}
.admin_custom .nav-pills .nav-link:not(.active):hover{color:var(--white);}
.admin_custom .navbar-light .navbar-nav .nav-link{color:var(--light);}
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .active>.nav-link, 
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .nav-link.active, 
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .nav-link.show, 
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .show>.nav-link{color:var(--point-sub) !important; font-weight:bold;}
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .nav-link.on{color:var(--point-sub) !important;}
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .nav-link:focus, 
.admin_custom .navbar-light .navbar-nav:not(.ml-auto) .nav-link:hover{color:var(--thick);}

/* card-header */
.admin_custom .card-header02{position:relative; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; padding:0.4rem 1.25rem; border-bottom:1px solid rgba(0,0,0,0.125); border-radius:0.25rem 0.25rem 0 0; background-color:transparent;}
.admin_custom .card-header02 > *{margin:0.3rem 0;}

.admin_custom .card-header03 {
	position: relative;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0.4rem 1.25rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.125);
	border-radius: 0.25rem 0.25rem 0 0;
	background-color: transparent;
}

.admin_custom .card-header03>* {
	margin: 0.3rem;
}

/* 로그인 */
.admin_custom.login-page, .admin_custom.register-page{background-color:var(--point-bg);}
.admin_custom.login-page .card-header{padding:2rem 0;}
.admin_custom.login-page .card-header a img{max-width:150px;}





/*+++++ ADD +++++*/
/* 텍스트 생략 */
.line_text1{display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* 테이블 스타일 */
.admin_custom .table td.ques_td{padding:0;}
.admin_custom .table td.ques_td > div + div{border-top:1px solid #dee2e6;}
.admin_custom .table td.ques_td .pd{padding:0.75rem;}
.admin_custom .table td.ques_td .w_50{width:calc(50% - 40px);}
.admin_custom .table td.ques_td p{display:flex; align-items:center; justify-content:center; width:80px;}

/* 입력폼 관련 */
.copy_hidden{position:absolute; top:0; left:0; width:1px; height:1px; padding:0; margin:0; border:0; opacity:0;}

.search_wrap{position:relative;}
/* .search_wrap .input_results{display:none;} */
.search_wrap .input_results table tbody tr{cursor:pointer;}
.search_wrap .input_results .table_head{padding-right:17px; background-color:#f8f9fa; border-top:1px solid #dee2e6; border-bottom:2px solid #dee2e6;}
.search_wrap .input_results .table_head .table thead th{border-top:0; border-bottom:0;}
.search_wrap .input_results .table_body{background-color:#fff; max-height:160px; overflow-y:scroll;}
.search_wrap.active input{border-radius:0.25rem 0.25rem 0 0;}
.search_wrap.active .input_results{display:block; padding:16px; border-radius:0 0 0.25rem 0.25rem; border:1px solid #ced4da; border-top:0;}

.img_upload_wrap{position:relative; min-height:132px; padding:16px; border-radius:0.25rem; border:1px solid #dee2e6; display:flex; align-items:center; gap:10px;}
.img_upload_wrap .upload_img{position:relative; width:160px; height:160px;}
.img_upload_wrap .upload_img button{position:absolute; top:-10px; right:-10px; width:30px; height:30px; padding:0 0 10px; line-height:25px;}
.img_upload_wrap .upload_img .img_wrap{border-radius:0.25rem; overflow:hidden;}
.img_upload_wrap .upload_img .img_wrap img{position:absolute; width:100%; height:100%; object-fit:fill;}
.img_upload_wrap .upload_btn{position:absolute; bottom:16px; right:16px; overflow:hidden;}
.img_upload_wrap .upload_btn input[type=file]{position:absolute; top:0; left:0; display:block; width:100%; height:100%; padding:0; padding-left:100px; margin:0; border:0; cursor:pointer;}

/* JAlert */
.btn-2xl{height:56px; border-radius:4px; font-size:16px;}
.btn_style02, .btn_style02:hover{color:var(--white); background-color:var(--point);}
.btn_style03, .btn_style03:hover{color:var(--white); background-color:var(--btn);}
.jconfirm.jconfirm-white .jconfirm-box, .jconfirm.jconfirm-light .jconfirm-box{border-radius:8px;}
.jconfirm .jconfirm-box{padding:40px 24px 24px; text-align:center;}
.jconfirm .jconfirm-box div.jconfirm-title-c{font-size:18px; font-weight:700; padding-bottom:20px;}
.jconfirm .jconfirm-box div.jconfirm-title-c img{max-width:48px; margin:0 auto;}
.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{font-size:14px; color:var(--regular); font-weight:500; overflow:visible !important;}
.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content *{word-break:break-all; white-space:pre-line;}
.jconfirm .jconfirm-box .jconfirm-buttons{display:flex; align-items:center; gap:8px; width:100%; margin-top:15px; padding-bottom:0;}
.jconfirm .jconfirm-box .jconfirm-buttons button,
.jconfirm .jconfirm-box .jconfirm-buttons button.btn-default,
.jconfirm.jconfirm-light .jconfirm-box .jconfirm-buttons button.btn-default,
.jconfirm.jconfirm-light .jconfirm-box .jconfirm-buttons button.btn-default:hover{flex:1; width:100%; margin:0;}

/* 모달 */
.modal_custom{position:fixed; top:0; left:0; right:0; bottom:0; display:flex; align-items:flex-start; justify-content:center; padding:40px 0; background-color:rgba(0,0,0,0.5); z-index:1050; opacity:0; visibility:hidden; transition:all 0.15s linear;}
.modal_wrap{width:96%; max-width:1000px; border:1px solid rgba(0,0,0,0.2); border-radius:0.3rem; background-color:#fff; box-shadow:0 0.5rem 1rem rgba(0,0,0,0.5);}
.modal_wrap.modal-lg{max-width:1000px;}
.modal_wrap.modal-md{max-width:500px;}
.modal_custom.show{opacity:1; visibility:visible; overflow-x:hidden; overflow-y:auto;}

/* 임상가척도 */
.clinician_wrap{position:fixed; top:50%; right:-990px; width:1000px; height:100vh; max-height:80%; transform:translateY(-50%); -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); z-index:1030; transition:all 0.5s;}
.clinician_wrap .clinician_btn{position:absolute; top:50%; right:100%; width:42px; background-color:#fff; transform:translateY(-50%); -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%);}
.clinician_wrap .clinician_btn:hover{background-color:#6c757d;}
.clinician_conts{width:0; height:100%; padding:0; border-radius:0.3rem; background-color:#fff; box-shadow:0 0.5rem 1rem rgba(0,0,0,0.5); overflow-y:auto; transition:all 0.5s;}
.clinician_wrap.show{right:10px;}
.clinician_wrap.show .clinician_btn{border-right:0; border-radius:0.25rem 0 0 0.25rem;}
.clinician_wrap.show .clinician_conts{width:100%; padding:1rem; border:1px solid rgba(0,0,0,0.2); }

/* 캘린더 */
.cal_month{display:flex; align-items:center; justify-content:space-between;}
.cal_month p{margin:0 18px; font-size:16px; color:var(--thick); font-weight:700; letter-spacing:-0.02rem;}
.cal_month button{position:relative; z-index:5;}
.cal_dates{margin-top:10px;}
.cal_dates ul{display:flex; flex-wrap:wrap; list-style:none; padding-left:0; margin-bottom:0; }
.cal_dates ul li{text-align:center;}
.cal_dates ul li p{margin:0;}
.cal_dates ul li.today{background-color:var(--point-bg);}
/* .cal_dates ul li.today p{position:relative; color:#fff !important; z-index:1;}
.cal_dates ul li.today p::before{content:''; position:absolute; top:calc(50% - 16px); left:calc(50% - 16px); display:block; width:32px; height:32px; border-radius:50%; background-color:var(--point); z-index:-1;} */
.cal_dates ul.cal_week{border-top:1px solid #dee2e6; background-color:#f8f9fa;}
.cal_dates ul.cal_week li{padding:8px 0; font-size:14px; color:var(--light);}
.cal_dates ul.cal_week_day li{padding:8px 0;}
.cal_dates ul.cal_date li{min-height:110px; padding:8px 4px; border-bottom:1px solid #dee2e6;}
.cal_dates ul.cal_date li p{margin:0 0 8px;}
.cal_dates ul.cal_date li button:disabled{cursor:default;}
.cal_dates ul.cal_date li .mark_text{display:flex; align-items:center; justify-content:space-between; width:100%; padding:2px 5px; margin-top:4px; border-radius:4px; font-size:14px;}
.cal_dates ul.cal_date li.holiday{background-color:#ffecee;}
.cal_dates ul.cal_date li.holiday span{color:#dc3545;}
.cal_dates.scroll .cal_week{padding-right:17px;}
.cal_dates.scroll .cal_week_day{padding-right:17px;}
.cal_dates.scroll .cal_date{max-height:500px; overflow:hidden scroll;}
.cal_dates.grid2 ul li{width:calc(100% / 2);}
.cal_dates.grid3 ul li{width:calc(100% / 3);}
.cal_dates.grid4 ul li{width:calc(100% / 4);}
.cal_dates.grid5 ul li{width:calc(100% / 5);}
.cal_dates.grid6 ul li{width:calc(100% / 6);}
.cal_dates.grid7 ul li{width:calc(100% / 7);}
.cal_dates.grid8 ul li{width:calc(100% / 8);}
.cal_dates.grid9 ul li{width:calc(100% / 9);}
.cal_dates.grid10 ul li{width:calc(100% / 10);}
.cal_dates.grid11 ul li{width:calc(100% / 11);}
.cal_dates.grid12 ul li{width:calc(100% / 12);}

.cal_mark_text{padding:7px 10px; margin-top:4px; border:1px solid transparent; border-radius:4px; font-size:14px;}

.cal_nodata{padding:24px 10px; border-top:1px solid #dee2e6; border-bottom:1px solid #dee2e6; background-color:#f8f9fa; font-weight:700; text-align:center;}

/* 캘린더 (fullcalendar) */
.cal_custom.mt-m40{margin-top:-40px;}
.cal_custom .fc .fc-header-toolbar{padding:0;}
.cal_custom .fc .fc-header-toolbar .fc-left{display:flex; align-items:center;}
.cal_custom .fc .fc-header-toolbar .fc-button{padding:0.375rem 0.75rem; border:1px solid var(--point); color:var(--point);}
.cal_custom .fc .fc-header-toolbar .fc-button:hover,
.cal_custom .fc .fc-header-toolbar .fc-button:focus,
.cal_custom .fc .fc-header-toolbar .fc-button:active{background-color:var(--point); color:var(--white);}
.cal_custom .fc .fc-header-toolbar .fc-button .fc-icon{width:100%; height:100%; margin:0; top:-50%;}
.cal_custom .fc .fc-header-toolbar .fc-button .fc-icon::after{width:100%; height:100%; font-size:100%; line-height:1;}
.cal_custom .fc .fc-header-toolbar .fc-button .fc-icon-left-single-arrow:after{top:0;}
.cal_custom .fc .fc-header-toolbar .fc-prev-button{border-radius:0.25rem 0 0 0.25rem;}
.cal_custom .fc .fc-header-toolbar .fc-next-button{border-radius:0 0.25rem 0.25rem 0; margin-left:-1px;}
.cal_custom .fc .fc-header-toolbar h2{margin:0 18px; font-size:16px; color:var(--thick); font-weight:700; letter-spacing:-0.02rem;}
.cal_custom .fc-widget-header{border:0 !important;}
.cal_custom .fc-widget-header table{border-top:1px solid #dee2e6;}
.cal_custom .fc-widget-header table thead{border:0;}
.cal_custom .fc-widget-header table thead th{border:0; padding:8px 0; font-size:14px; color:var(--light);}
.cal_custom .fc-widget-content{border:0; border-bottom:1px solid #dee2e6;}
.cal_custom .fc .fc-scroller{height:auto !important; overflow:auto !important;}
.cal_custom .fc-ltr .fc-basic-view .fc-day-top .fc-day-number{float:none; display:block; width:100%; text-align:center; font-size:16px;}
.cal_custom .fc-unthemed td.fc-today{background-color:var(--point-bg);}
.cal_custom .fc-h-event{border-color:var(--point); background-color:var(--point); color:var(--white); text-align:center; cursor:pointer;}

/* 로딩 */
.loading_wrap_lg{position:fixed; top:0; left:0; display:none; align-items:center; justify-content:center; width:100%; height:100%; background-color:rgba(0,0,0,0.5); z-index:1100;}
.loading_wrap_lg.show{display:flex;}
.loading_wrap_lg img{width:150px;}
.loading_wrap_sm{text-align:center;}
.loading_wrap_sm img{width:60px;}

/* 고정 버튼 */
.writing_btn{position:fixed; bottom:20px; right:20px; width:60px; height:60px; box-shadow:0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2); font-size:1.5rem;}

/*  */
.check_custom_wrap{display:flex; align-items:center;}
.check_custom_wrap .check_custom:not(:first-child){margin-left:-1px;}
.check_custom input{position:absolute; display:none; width:0; height:0; margin:0; padding:0; border:0; opacity:0; visibility:hidden;}
.check_custom label{border:1px solid #6c757d; padding:0.375rem 0.75rem; font-size:1rem; color:#6c757d; font-weight:400; line-height:1.5; cursor:pointer;}
.check_custom input:checked + label{background-color:#6c757d; color:#fff;}
