@charset "UTF-8";

/*모바일 웹 폰트 크기 자동조정 문제*/
html {
-webkit-text-size-adjust: none; /*Chrome, Safari, newer versions of Opera*/
-moz-text-size-adjust: none; /*Firefox*/
-ms-text-size-adjust: none;  /*Ie*/
-o-text-size-adjust: none; /*old versions of Opera*/
}
/*html,body{width: 100%; height:100%; } 가로스크롤 짤림방지 위해 미디어쿼리에 나눔*/

body {  color:#000000; font-size:14px; font-weight: 500; line-height:1.3; letter-spacing:-0.05em;   }
/* 전역 리셋 */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box; /* 권장: 패딩/보더를 포함한 너비 계산 */
  font-family: 'Pretendard', 'Helvetica', 'Arial', sans-serif;
}

/*>>default style */
html, body {
  margin: 0;
  width: 100%;
  height: 100%;
  overflow-x: auto;   /* 가로 스크롤 허용 */
  overflow-y: hidden;   /* 세로 스크롤 막음 */
}

 table {border-spacing:0; border-collapse:collapse; }
/*td,th {}
input { }
dd,dt,ol,dl,ul,li {list-style:none;margin:0;padding:0;}
form {display:inline; width: 100%;}
label {display:none; }
label.show {display:inline; margin-right:5px;  }
label.show1 {display:inline; margin-right:0px;  }
label.show2 {display:inline; margin-right:12px; padding:0px 0px 0px 3px;position:relative;top:2px; }
label.show3 {display:inline; margin-left:-3px; margin-right:0px;   }
address, caption, cite, code, dfn, em, strong, th, var {font-style:normal;}
legend,caption, .hide {display:none; height:0; width:0; font-size:0;}
img,fieldset {vertical-align:top; border:0;}
p {margin:0;}*/



ul, ol {
    list-style: none;
    padding: 0;
    margin: 0;
}
a, button {margin:0; padding:0; border-spacing:0; cursor:pointer; border:0; background:none;}
blockquote, q {quotes: none;}
ins {text-decoration: none;}
del {text-decoration: line-through;}
hr {display: none;}
a	{ color:#000000; text-decoration: none; }
a, a:hover, a:focus, a:active{text-decoration: none;}
a:hover		{  }
.clear, .clear:after, .clear:before	{ clear:both; }
.skip, .blind, caption, legend  { position:absolute; width:0; height:0; margin:0 !important; padding:0 !important; font-size:0; line-height:0; text-indent:-3000px; border:none; overflow:hidden;  }



/* 폰트정의*/
.t_300 { font-weight:300 !important; }
.t_400 { font-weight:400 !important; }
.t_500 { font-weight:500 !important; }
.t_600 { font-weight:600 !important; }
.t_700 { font-weight:700 !important; }
.t_800 { font-weight:800 !important; }
.t_900 { font-weight:800 !important; }

.f10 {  font-size:10px; }
.f11 {  font-size:11px; }
.f12 {  font-size:12px; }
.f13 {  font-size:13px; }
.f14 {  font-size:14px; }
.f15 {  font-size:15px; }
.f16 {  font-size:16px; }
.f17 {  font-size:17px; }
.f18 {  font-size:18px; }
.f20 {  font-size:20px; }
.f22 {  font-size:22px; }
.f24 {  font-size:24px; }
.f26 {  font-size:26px; }
.f28 {  font-size:28px; }
.f30 {  font-size:30px; }
.f32 {  font-size:32px; }
.f34 {  font-size:34px; }
.f42 {  font-size:42px; }
.f44 {  font-size:44px; }
.f46 {  font-size:46px; }

/*폰트 굵기 및 색상*/
.t_white { color:#ffffff !important; }
.t_deepblue { color:#0084E9 !important; }
.t_deepgreen { color:#0389a5 !important; }
.t_blue { color:#0063D4 !important; }
.t_red { color:#E60023 !important; }
.t_green { color:#009556 !important; }
.t_emerald { color:#16b6c6 !important; }
.t_deepemerald { color:#118f9d !important; }
.t_orange { color:#ff8800 !important; }
.t_pink { color:#D94F96 !important; }
.t_brown { color:#c85c1b !important; }
.t_purple  { color:#330099 !important; }
.t_gray {  color:#8f8f8f !important; }
.t_deepgray {  color:#808080 !important; }
.t_yellow {  color:#ffdf00 !important; }
.t_main {  color:#0084E9 !important; }

.t_Medium { font-weight:400 !important; }
.t_regular { font-weight:500 !important; }
.t_bold { font-weight:600 !important; }
.t_semibold { font-weight:700 !important; }

.bpd0 { padding-bottom:0px !important }
.bpd5 { padding-bottom:5px !important }
.bpd10 { padding-bottom:10px !important }
.bpd20 { padding-bottom:20px !important }
.bpd30 { padding-bottom:30px !important }
.bpd40 { padding-bottom:40px !important }
.bpd50 { padding-bottom:50px !important }
.bpd60 { padding-bottom:60px !important }
.bpd70 { padding-bottom:70px !important }
.bpd80 { padding-bottom:80px !important }
.bpd90 { padding-bottom:90px !important }
.bpd100 { padding-bottom:100px !important }

.tpd0 { padding-top:0x !important }
.tpd5 { padding-top:5px !important }
.tpd10 { padding-top:10px !important }
.tpd20 { padding-top:20px !important }
.tpd30 { padding-top:30px !important }
.tpd40 { padding-top:40px !important }
.tpd50 { padding-top:50px !important }
.tpd60 { padding-top:60px !important }
.tpd70 { padding-top:70px !important }
.tpd80 { padding-top:80px !important }
.tpd90 { padding-top:90px !important }
.tpd100 { padding-top:100px !important }

.bmg0 { margin-bottom:0px !important }
.bmg5 { margin-bottom:5px !important }
.bmg10 { margin-bottom:10px !important }
.bmg20 { margin-bottom:20px !important }
.bmg30 { margin-bottom:30px !important }
.bmg40 { margin-bottom:40px !important }
.bmg50 { margin-bottom:50px !important }
.bmg60 { margin-bottom:60px !important }
.bmg70 { margin-bottom:70px !important }
.bmg80 { margin-bottom:80px !important }
.bmg90 { margin-bottom:90px !important }
.bmg100 { margin-bottom:100px !important }

.tmg0 { margin-top:0x !important }
.tmg5 { margin-top:5px !important }
.tmg10 { margin-top:10px !important }
.tmg20 { margin-top:20px !important }
.tmg30 { margin-top:30px !important }
.tmg40 { margin-top:40px !important }
.tmg50 { margin-top:50px !important }
.tmg60 { margin-top:60px !important }
.tmg70 { margin-top:70px !important }
.tmg80 { margin-top:80px !important }
.tmg90 { margin-top:90px !important }
.tmg100 { margin-top:100px !important }

.lmg1 {margin-left:1px;}
.lmg2 {margin-left:2px;}
.lmg3 {margin-left:3px;}
.lmg4 {margin-left:4px;}
.lmg5 {margin-left:5px;}

.rmg1 {margin-right:1px;}
.rmg2 {margin-right:2px;}
.rmg3 {margin-right:3px;}
.rmg4 {margin-right:4px;}
.rmg5 {margin-right:5px;}

.lrmg1 { margin-left:1px; margin-right:1px;}
.lrmg2 { margin-left:2px; margin-right:2px;}
.lrmg3 { margin-left:3px; margin-right:3px;}
.lrmg4 { margin-left:4px; margin-right:4px;}
.lrmg5 { margin-left:5px; margin-right:5px;}

.vw5 { width:5% !important; }
.vw10 { width:10% !important; }
.vw15 { width:15% !important; }
.vw20 { width:20% !important; }
.vw25 { width:25% !important; }
.vw30 { width:30% !important; }
.vw31 { width:31% !important; }
.vw32 { width:32% !important; }
.vw33 { width:33% !important; }
.vw34 { width:34% !important; }
.vw35 { width:35% !important; }
.vw40 { width:40% !important; }
.vw45 { width:45% !important; }
.vw50 { width:50% !important; }
.vw55 { width:55% !important; }
.vw60 { width:60% !important; }
.vw65 { width:65% !important; }
.vw70 { width:70% !important; }
.vw75 { width:75% !important; }
.vw80 { width:80% !important; }
.vw85 { width:85% !important; }
.vw90 { width:90% !important; }
.vw95 { width:95% !important; }
.vw100 { width:100% !important; }

.pxw5 { width:5px !important; }
.pxw10 { width:10px !important; }
.pxw15 { width:15px !important; }
.pxw20 { width:20px !important; }
.pxw25 { width:25px !important; }
.pxw30 { width:30px !important; }
.pxw31 { width:31px !important; }
.pxw32 { width:32px !important; }
.pxw33 { width:33px !important; }
.pxw34 { width:34px !important; }
.pxw35 { width:35px !important; }
.pxw40 { width:40px !important; }
.pxw45 { width:45px !important; }
.pxw50 { width:50px !important; }
.pxw55 { width:55px !important; }
.pxw60 { width:60px !important; }
.pxw65 { width:65px !important; }
.pxw70 { width:70px !important; }
.pxw75 { width:75px !important; }
.pxw80 { width:80px !important; }
.pxw85 { width:85px !important; }
.pxw90 { width:90px !important; }
.pxw95 { width:95px !important; }
.pxw100 { width:100px !important; }
.pxw150 { width:150px !important; }
.pxw160 { width:160px !important; }
.pxw170 { width:170px !important; }
.pxw180 { width:180px !important; }
.pxw190 { width:190px !important; }
.pxw200 { width:200px !important; }
.pxw250 { width:250px !important; }
.pxw260 { width:260px !important; }
.pxw270 { width:270px !important; }
.pxw280 { width:280px !important; }
.pxw290 { width:290px !important; }
.pxw300 { width:300px !important; }
.pxw350 { width:350px !important; }
.pxw400 { width:400px !important; }
.pxw450 { width:450px !important; }
.pxw500 { width:500px !important; }

/********** INPUT,SELECT 및 가로사이즈 지정 **********/
.w5 { width:5% !important;  }
.w10 { width:10% !important;  }
.w15 { width:15% !important;  }
.w20 { width:20% !important;  }
.w25 { width:25% !important;  }
.w30 { width:30% !important;  }
.w31 { width:31% !important;  }
.w32 { width:32% !important;  }
.w33 { width:33% !important;  }
.w34 { width:34% !important;  }
.w35 { width:35% !important;  }
.w40 { width:40% !important;  }
.w45 { width:45% !important;  }
.w50 { width:50% !important;  }
.w55 { width:55% !important;  }
.w60 { width:60% !important;  }
.w65 { width:65% !important;  }
.w70 { width:70% !important;  }
.w75 { width:75% !important;  }
.w80 { width:80% !important;  }
.w85 { width:85% !important;  }
.w90 { width:90% !important;  }
.w95 { width:95% !important;  }
.w100 { clear:both;width:100% !important;  }

/*테이블 width값(col속성 웹접근성위해 추가)*/
.tbl_w1 {width:1%;}
.tbl_w2 {width:2%;}
.tbl_w3 {width:3%;}
.tbl_w4 {width:4%;}
.tbl_w5 {width:5%;}
.tbl_w6 {width:6%;}
.tbl_w7 {width:7%;}
.tbl_w8 {width:8%;}
.tbl_w9 {width:9%;}
.tbl_w10 {width:10%;}
.tbl_w11 {width:11%;}
.tbl_w12 {width:12%;}
.tbl_w13 {width:13%;}
.tbl_w14 {width:14%;}
.tbl_w15 {width:15%;}
.tbl_w16 {width:16%;}
.tbl_w17 {width:17%;}
.tbl_w18 {width:18%;}
.tbl_w19 {width:19%;}
.tbl_w20 {width:20%;}
.tbl_w21 {width:21%;}
.tbl_w22 {width:22%;}
.tbl_w23 {width:23%;}
.tbl_w24 {width:24%;}
.tbl_w25 {width:25%;}
.tbl_w26 {width:26%;}
.tbl_w27 {width:27%;}
.tbl_w28 {width:28%;}
.tbl_w29 {width:29%;}
.tbl_w30 {width:30%;}
.tbl_w31 {width:31%;}
.tbl_w32 {width:32%;}
.tbl_w33 {width:33%;}
.tbl_w34 {width:34%;}
.tbl_w35 {width:35%;}
.tbl_w36 {width:36%;}
.tbl_w37 {width:37%;}
.tbl_w38 {width:38%;}
.tbl_w39 {width:39%;}
.tbl_w40 {width:40%;}
.tbl_w41 {width:41%;}
.tbl_w42 {width:42%;}
.tbl_w43 {width:43%;}
.tbl_w44 {width:44%;}
.tbl_w45 {width:45%;}
.tbl_w46 {width:46%;}
.tbl_w47 {width:47%;}
.tbl_w48 {width:48%;}
.tbl_w49 {width:49%;}
.tbl_w50 {width:50%;}
.tbl_w51 {width:51%;}
.tbl_w52 {width:52%;}
.tbl_w53 {width:53%;}
.tbl_w54 {width:54%;}
.tbl_w55 {width:55%;}
.tbl_w56 {width:56%;}
.tbl_w57 {width:57%;}
.tbl_w58 {width:58%;}
.tbl_w59 {width:59%;}
.tbl_w60 {width:60%;}
.tbl_w61 {width:61%;}
.tbl_w62 {width:62%;}
.tbl_w63 {width:63%;}
.tbl_w64 {width:64%;}
.tbl_w65 {width:65%;}
.tbl_w66 {width:66%;}
.tbl_w67 {width:67%;}
.tbl_w68 {width:68%;}
.tbl_w69 {width:69%;}
.tbl_w70 {width:70%;}
.tbl_w71 {width:71%;}
.tbl_w72 {width:72%;}
.tbl_w73 {width:73%;}
.tbl_w74 {width:74%;}
.tbl_w75 {width:75%;}
.tbl_w76 {width:76%;}
.tbl_w77 {width:77%;}
.tbl_w78 {width:78%;}
.tbl_w79 {width:79%;}
.tbl_w80 {width:80%;}
.tbl_w81 {width:81%;}
.tbl_w82 {width:82%;}
.tbl_w83 {width:83%;}
.tbl_w84 {width:84%;}
.tbl_w85 {width:85%;}
.tbl_w86 {width:86%;}
.tbl_w87 {width:87%;}
.tbl_w88 {width:88%;}
.tbl_w89 {width:89%;}
.tbl_w90 {width:90%;}
.tbl_w91 {width:91%;}
.tbl_w92 {width:92%;}
.tbl_w93 {width:93%;}
.tbl_w94 {width:94%;}
.tbl_w95 {width:95%;}
.tbl_w96 {width:96%;}
.tbl_w97 {width:97%;}
.tbl_w98 {width:98%;}
.tbl_w99 {width:99%;}
.tbl_w100 {width:100%;}

.space5 {float:left; width:100%; height:5px;}
.space10 {float:left; width:100%; height:10px;}
.space20 {float:left; width:100%; height:20px;}
.space30 {float:left; width:100%; height:30px;}
.space40 {float:left; width:100%; height:40px;}
.space50 {float:left; width:100%; height:50px;}
.space60 {float:left; width:100%; height:60px;}
.space70 {float:left; width:100%; height:70px;}
.space80 {float:left; width:100%; height:80px;}
.space90 {float:left; width:100%; height:90px;}
.space100 {float:left; width:100%; height:100px;}
.space110 {float:left; width:100%; height:110px;}
.space120 {float:left; width:100%; height:120px;}
.space130 {float:left; width:100%; height:130px;}
.space140 {float:left; width:100%; height:140px;}
.space150 {float:left; width:100%; height:150px;}
.space160 {float:left; width:100%; height:160px;}
.space170 {float:left; width:100%; height:170px;}
.space180 {float:left; width:100%; height:180px;}
.space190 {float:left; width:100%; height:190px;}
.space200 {float:left; width:100%; height:200px;}
.space210 {float:left; width:100%; height:210px;}
.space220 {float:left; width:100%; height:220px;}
.space230 {float:left; width:100%; height:230px;}
.space240 {float:left; width:100%; height:240px;}
.space250 {float:left; width:100%; height:250px;}

.mg10 { margin-bottom:10px !important }
.mg20 { margin-bottom:20px !important }
.mg30 { margin-bottom:30px !important }
.mg40 { margin-bottom:40px !important }
.mg50 { margin-bottom:50px !important }
.mg60 { margin-bottom:60px !important }
.mg70 { margin-bottom:70px !important }
.mg80 { margin-bottom:80px !important }
.mg90 { margin-bottom:90px !important }
.mg100 { margin-bottom:100px !important }


/*:::::::::::::::::::::::::::콤보박스 setting::::::::::::::::::::::::: */
input[type='text'],input[type='password'],input[type='image'],input[type='search'] {-webkit-appearance:none;-webkit-border-radius:0}
input[type='radio'], input[type='checkbox']  { position:relative;/*top:6px; left:-4px;*/  }

input[type="checkbox"]{width: 15px;  height: 15px; margin-right: 4px; }
input[type="radio"]{width:15px; height:15px; /*margin-right:4px;*/  }
input[type="radio"].top{position:relative;top:4px;  }

 /*크롬 input, select 색상지우기*/
input:-webkit-autofill { box-shadow: 0 0 0 1000px white inset !important; }
input {outline:none !important; }
select:-webkit-autofill { box-shadow: 0 0 0 1000px white inset !important; }
select {outline:none !important; }

input:focus, select:focus, option:focus, textarea:focus, button:focus{ outline: none; }

input, select  { background:#ffffff !important;  }
input {/* outline: none;-webkit-appearance:none;*/}
input[type="submit"], input[type="button"] {cursor: pointer !important;}
textarea{
    outline: none !important;         /* 포커스 시 생기는 테두리 제거 */
    text-decoration: none !important; /* 텍스트 밑줄 제거 */
    text-decoration-skip-ink: none !important;
}

/*placeholder 색상변경*/
input[type=text]{ime-mode:active;}
input[type=text]::-webkit-input-placeholder{color: rgb(0,0,0,.5);}
input[type=text]::-moz-placeholder{color: rgb(0,0,0,.5);}
input[type=text]:-ms-input-placeholder{color: rgb(0,0,0,.5);}

/*메인탑검색용*/
input.black[type=text]::-webkit-input-placeholder{color: rgb(0,0,0,.5);}
input.black[type=text]::-moz-placeholder{color: rgb(0,0,0,.5);}
input.black[type=text]:-ms-input-placeholder{color: rgb(0,0,0,.5);}

input[type=password]{}
input[type=password]::-webkit-input-placeholder{color: rgb(0,0,0,.5);}
input[type=password]::-moz-placeholder{color: rgb(0,0,0,.5);}
input[type=password]:-ms-input-placeholder{color: rgb(0,0,0,.5);}

textarea::placeholder { color: rgb(0,0,0,.5); }
textarea:focus::placeholder {
  opacity: 0; /* 포커스 시 사라짐 */
}

/*disabled 색상변경*/
input[type=radio]:disabled {background: none;}
/*input:read-only { color:rgb(0,0,0,.5); background: #ebebeb  !important; cursor: default !important;}*/
input:disabled { color:rgb(0,0,0,.5); background: #f1f1f1  !important; cursor: default !important;}

select:readonly { color:rgb(0,0,0,.5); background:#f1f1f1  !important; cursor: default !important;}
select:disabled { color:rgb(0,0,0,.5); background: #f1f1f1  !important; cursor: default !important;}

button:disabled { color:rgb(0,0,0,.5); background: #f1f1f1  !important; cursor: default !important;}

textarea:disabled { color:rgb(0,0,0,.5); background: #f1f1f1  !important; cursor: default !important;}

/********** INPUT **********/
input, select  {  height:28px; padding:0px 5px; border:1px #B8B8B8 solid; background:#ffffff;  border-radius:5px !important; }
select {  position:relative;top:0px;  }

input.none_brd {padding:0px 5px 0px 8px;  border:0px !important; } /*헤더용*/

input.base_readonly { background: #f1f1f1; }
input.right { text-align:right}
input.center { text-align:center}

input.w5 { width:5%  }
input.w10 { width:10%  }
input.w15 { width:15%  }
input.w20 { width:20%  }
input.w30 { width:30%  }
input.w40 { width:40%  }
input.w50 { width:50%  }
input.w60 { width:60%  }
input.w70 { width:70%  }
input.w80 { width:80%  }
input.w90 { width:90%  }
input.w100 { width:100%  }

input.wp50_wm100 { width:50%  }
input.wp50_wm50 { width:50%  }
input.wp50_wm70 { width:50%  }
input.wp25_wm100 { width:25%  }

select.wp50_wm100 { width:50%  }
select.wp50_wm50 { width:50%  }
select.wp50_wm70 { width:50%  }

/********** select **********/


select.none_brd   { border:0px !important; } /*헤더용*/

select.w5 { width:5%  }
select.w10 { width:10%  }
select.w20 { width:20%  }
select.w30 { width:30%  }
select.w40 { width:40%  }
select.w50 { width:50%  }
select.w60 { width:60%  }
select.w70 { width:70%  }
select.w80 { width:80%  }
select.w90 { width:90%  }
select.w100 { width:100%  }

.left10 { float:left; width:10%}
.left20 { float:left; width:20%}
.left30 { float:left; width:30%}
.left40 { float:left; width:40%}
.left50 { float:left; width:50%}

/********** textarea **********/
textarea { 
    font-family: 'Pretendard', 'Helvetica', 'Arial', sans-serif;
    color:#000000;  
    width:100%; 
    background:#ffffff;
    border:1px solid #D1D1D1; 
    padding:10px;
    border-radius:5px;
    resize: none;
}


/**======== 신규시작 ==========**/

/*스크롤디자인*/
*::-webkit-scrollbar {
    width: 8px; /* 세로 스크롤바 너비 */
    height: 8px; /* 가로 스크롤바 높이 */
}

*::-webkit-scrollbar-thumb {
    background: rgb(0, 0, 0, 0.3); /* 스크롤바 색상 */
    border-radius: 5px; /* 모서리 둥글게 */
}

*::-webkit-scrollbar-track {
    background: rgb(0, 0, 0, 0.2); /* 트랙 색상, 필요 시 수정 */
}

/*all_wrap 자식요소 강제 스크롤디자인*/
.all_wrap *::-webkit-scrollbar {
    width: 5px; /* 세로 스크롤바 너비 */
    height: 5px; /* 가로 스크롤바 높이 */
}

.all_wrap *::-webkit-scrollbar-thumb {
  background: rgb(0, 0, 0, 0.2); /* 스크롤바 색상 */
  border-radius: 8px;
}

.all_wrap *::-webkit-scrollbar-track {
  background: rgb(0, 0, 0, 0.1); /* 트랙 색상, 필요 시 수정 */
}

/*popup_box 팝업 자식요소 강제 스크롤디자인*/
.popup_box *::-webkit-scrollbar {
    width: 5px; /* 세로 스크롤바 너비 */
    height: 5px; /* 가로 스크롤바 높이 */
}

.popup_box *::-webkit-scrollbar-thumb {
  background: rgb(0, 0, 0, 0.2); /* 스크롤바 색상 */
  border-radius: 8px;
}

.allpopup_box_wrap *::-webkit-scrollbar-track {
  background: rgb(0, 0, 0, 0.1); /* 트랙 색상, 필요 시 수정 */
}



/*숨김처리 클래스*/
.hidden { 
    display:none
}

.hidden_vh { 
    visibility: hidden;
}

.hidden_ac { 
    position: absolute !important;
    width: 1px; 
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.hidden_op { 
    opacity: 0;
}

.hidden_pa { 
    position: absolute;
    left: -9999px;
}

/**======== 신규시작 ==========**/

/*커스텀체크박스*/
.checkbox_wrap {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    user-select: none;
    width: auto;     
    max-width: fit-content;
}

.label_text {
    color: rgb(0, 0, 0, 1)
}

/* 실제 checkbox 숨김 */
.checkbox_wrap input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* 커스텀 체크박스 */
.custom_checkbox {
    width: 20px;
    height: 20px;
    border: 1px solid #bbb;
    border-radius: 3px;
    background-color: #fff;
    box-sizing: border-box;
    transition: all 0.2s ease;
    position: relative;
}

/* hover */
.checkbox_wrap:hover .custom_checkbox {
    flex-shrink: 0 !important;
    /* border-color: #606CFD; */
}

/* checked 상태 */
.checkbox_wrap input[type="checkbox"]:checked + .custom_checkbox {
    background-color: #606CFD;
    /* border-color: #606CFD; */
}

/* 체크 표시 */
.checkbox_wrap input[type="checkbox"]:checked + .custom_checkbox::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 1px;
    width: 7px;
    height: 11px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* focus 접근성 */
.checkbox_wrap input[type="checkbox"]:focus + .custom_checkbox {
    /* outline: 2px solid rgba(96, 108, 253, 0.3);
    outline-offset: 2px; */
}

/* 차트 로딩 스피너 */
@keyframes chart-spin {
    to { transform: rotate(360deg); }
}
.chart-spinner {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 250px;
}
.chart-spinner__circle {
    width: 36px;
    height: 36px;
    border: 4px solid #e5e7eb;
    border-top-color: #3b82f6;
    border-radius: 50%;
    animation: chart-spin 0.8s linear infinite;
}