@charset "utf-8";

/* ===== Reset ===== */
html{overflow-y:scroll}
body{margin:0;padding:0;font-size:14px;font-family:'NanumSquare','Malgun Gothic',sans-serif;background:#F7F8FA;color:#333;line-height:1.6;-webkit-font-smoothing:antialiased}
html,h1,h2,h3,h4,h5,h6,form,fieldset,img{margin:0;padding:0;border:0}
h1,h2,h3,h4,h5,h6{font-family:'NanumSquare','Malgun Gothic',sans-serif}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
ul,dl,dt,dd{margin:0;padding:0;list-style:none}
legend{position:absolute;font-size:0;overflow:hidden}
label,input,button,select,img{vertical-align:middle}
input,button{margin:0;padding:0;font-family:inherit;font-size:1em}
input[type="submit"],button{cursor:pointer}
textarea,select{font-family:inherit;font-size:1em}
p{margin:0;padding:0;word-break:break-all}
hr{display:none}
a{color:#333;text-decoration:none}
*,*:before,*:after{box-sizing:border-box}
input[type=text],input[type=password],textarea{transition:border 0.2s;outline:none}
input[type=text]:focus,input[type=password]:focus,textarea:focus,select:focus{border-color:#1A56A0 !important;box-shadow:0 0 0 3px rgba(26,86,160,0.1)}

/* ===== 헤더 ===== */
#hd{background:#fff;position:sticky;top:0;z-index:100}
#hd_h1{position:absolute;font-size:0;overflow:hidden}

.hd_top{border-bottom:1px solid #F2F4F6}
.hd_inner{max-width:1100px;margin:0 auto;padding:0 24px}
.hd_top .hd_inner{display:flex;align-items:center;height:56px}

#logo a{display:flex;align-items:center}
#logo img{height:40px;width:auto}

.hd_right{margin-left:auto;display:flex;align-items:center;gap:12px}
#hd_sch{display:flex;align-items:center;background:#F2F4F6;border-radius:8px;border:0;padding:0}
#hd_sch #sch_stx{width:180px;height:36px;padding:0 12px;border:0;background:transparent;font-size:13px;color:#333}
#hd_sch #sch_stx::placeholder{color:#aaa}
#hd_sch #sch_submit{width:36px;height:36px;border:0;background:transparent;color:#999;font-size:14px}
#hd_sch #sch_submit:hover{color:#1A56A0}

.hd_login{display:flex;align-items:center;gap:4px;margin:0;padding:0}
.hd_login li a{font-size:13px;color:#666;padding:6px 12px;border-radius:6px;font-weight:600;transition:all 0.15s}
.hd_login li a:hover{color:#333;background:#F2F4F6}
.hd_login .btn_login{background:#1A56A0 !important;color:#fff !important;font-weight:700}
.hd_login .btn_login:hover{background:#144B8F !important}
.hd_login .btn_join{border:1px solid #D1D5DB;color:#333 !important}

/* 탭 네비 */
#gnb{border-bottom:1px solid #E5E8EB}
#gnb .hd_inner{display:flex;align-items:stretch}
.gnb_tabs{display:flex;gap:0;margin:0;padding:0}
.gnb_tabs li a{display:block;padding:14px 16px;font-size:14px;font-weight:700;color:#999;border-bottom:2px solid transparent;transition:all 0.15s}
.gnb_tabs li a:hover{color:#1A56A0}
.gnb_tabs li a.active{color:#1A56A0;border-bottom-color:#1A56A0}

/* 팝업 */
#hd_pop{z-index:1000;position:relative;max-width:1100px;margin:0 auto;height:0}
#hd_pop h2{position:absolute;font-size:0;overflow:hidden}
.hd_pops{position:absolute;border:1px solid #e9e9e9;background:#fff;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,0.1)}
.hd_pops img{max-width:100%}
.hd_pops_footer{padding:0;background:#000;color:#fff;text-align:left;position:relative}
.hd_pops_footer:after{display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button{padding:10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject{background:#000}
.hd_pops_footer .hd_pops_close{background:#393939;position:absolute;top:0;right:0}

/* ===== 메인 래퍼 ===== */
#wrapper{max-width:1100px;margin:0 auto;padding:32px 24px 60px}
.wrapper_inner{width:100%}
#container{min-height:400px}
#container_title{font-size:20px;font-weight:800;margin:0 0 20px}

/* ===== 히어로 배너 ===== */
.hero{display:flex;gap:20px;margin-bottom:28px}
.hero_main{flex:6;background:linear-gradient(135deg,#EEF2FF 0%,#F0F4FF 100%);border-radius:16px;padding:40px 36px;position:relative;overflow:hidden}
.hero_label{display:inline-block;background:#1A56A0;color:#fff;font-size:11px;font-weight:800;padding:4px 10px;border-radius:4px;margin-bottom:14px;letter-spacing:0.5px}
.hero_title{font-size:24px;font-weight:800;color:#111;line-height:1.35;margin-bottom:10px}
.hero_desc{font-size:14px;color:#6B7280;margin-bottom:20px;line-height:1.7}
.hero_btn{display:inline-flex;align-items:center;gap:6px;background:#1A56A0;color:#fff;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:700;transition:background 0.15s}
.hero_btn:hover{background:#144B8F;color:#fff}
.hero_btn i{font-size:11px}

.hero_side{flex:4;background:#fff;border:1px solid #E5E8EB;border-radius:16px;padding:24px}
.hero_side_title{font-size:16px;font-weight:800;color:#333;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #F2F4F6}
.hero_rank{margin:0;padding:0}
.hero_rank li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #F7F8FA}
.hero_rank li:last-child{border-bottom:0}
.hero_rank .rk{width:22px;height:22px;line-height:22px;text-align:center;background:#1A56A0;color:#fff;border-radius:5px;font-size:11px;font-weight:800;flex-shrink:0}
.hero_rank li a{flex:1;font-size:13px;color:#333;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero_rank li a:hover{color:#1A56A0}
.rk_empty{color:#bbb;font-size:13px}

/* ===== CTA 배너 ===== */
.cta_banner{display:flex;align-items:center;justify-content:space-between;background:#1A56A0;border-radius:12px;padding:20px 32px;margin-bottom:32px;gap:20px}
.cta_text strong{display:block;color:#fff;font-size:16px;font-weight:800}
.cta_text span{color:rgba(255,255,255,0.7);font-size:13px}
.cta_btn{display:inline-flex;align-items:center;gap:6px;border:1.5px solid rgba(255,255,255,0.5);color:#fff;padding:10px 22px;border-radius:8px;font-size:13px;font-weight:700;white-space:nowrap;transition:all 0.15s}
.cta_btn:hover{background:rgba(255,255,255,0.15);border-color:#fff;color:#fff}

/* ===== 카테고리 섹션 ===== */
.sec{margin-bottom:36px}
.sec_head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.sec_title{font-size:18px;font-weight:800;color:#111;margin:0}
.sec_title i{color:#1A56A0;margin-right:6px}
.sec_more{font-size:13px;color:#999;font-weight:600;transition:color 0.15s}
.sec_more:hover{color:#1A56A0}

.sec_grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.item{display:block;background:#fff;border:1px solid #eee;border-radius:12px;overflow:hidden;transition:all 0.2s;text-decoration:none;position:relative}
.item:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.12)}
.item_thumb{height:110px;background:#F7F8FA;display:flex;align-items:center;justify-content:center}
.item_thumb i{font-size:32px;color:#D1D5DB}
.item:hover .item_thumb i{color:#1A56A0}
.item_badge{position:absolute;top:10px;left:10px;display:inline-block;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:800;color:#fff;letter-spacing:0.5px}
.item_title{padding:12px 14px 4px;font-size:13px;font-weight:700;color:#333;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px;margin:0}
.item_meta{padding:6px 14px 12px;display:flex;gap:10px;font-size:11px;color:#999}
.item_meta i{margin-right:2px}
.item_empty{opacity:0.5;pointer-events:none}
.item_empty .item_title{text-align:center;color:#bbb;padding-top:16px}

/* ===== 푸터 ===== */
#ft{background:#1A1A1A;margin-top:0}
.ft_inner{max-width:1100px;margin:0 auto;padding:36px 24px}
.ft_top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #2A2A2A}
.ft_logo{font-size:16px;font-weight:800;color:#fff}
.ft_links a{font-size:13px;color:#9CA3AF;margin-left:20px;transition:color 0.15s}
.ft_links a:first-child{margin-left:0}
.ft_links a:hover{color:#fff}
.ft_info{font-size:12px;color:#9CA3AF;line-height:2}
.ft_info span{margin-right:16px}
.ft_copy{font-size:11px;color:#555;margin-top:16px;padding-top:16px;border-top:1px solid #2A2A2A}

#top_btn{position:fixed;bottom:24px;right:24px;width:42px;height:42px;line-height:42px;border:0;border-radius:50%;background:#1A56A0;color:#fff;font-size:14px;z-index:90;box-shadow:0 2px 10px rgba(0,0,0,0.15);cursor:pointer;transition:transform 0.15s}
#top_btn:hover{transform:translateY(-3px)}

/* ===== 유틸리티 ===== */
#hd_login_msg{position:absolute;top:0;left:0;font-size:0;overflow:hidden}
.msg_sound_only,.sound_only{display:inline-block !important;position:absolute;top:0;left:0;width:0;height:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}
#skip_to_container a{z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;overflow:hidden}
#skip_to_container a:focus,#skip_to_container a:active{width:100%;height:56px;background:#1A56A0;color:#fff;font-size:1.3em;font-weight:bold;text-align:center;text-decoration:none;line-height:2.8em}
.img_fix{width:100%;height:auto}

/* 캡챠 */
#captcha{display:inline-block;position:relative}
#captcha legend{position:absolute;font-size:0;overflow:hidden}
#captcha #captcha_img{height:40px;border:1px solid #ccc;vertical-align:top}
#captcha #captcha_mp3{width:40px;height:40px;border:0;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;cursor:pointer;border-radius:3px}
#captcha #captcha_reload{width:40px;height:40px;border:0;background:url('../../../img/captcha2.png') no-repeat 0 -40px;text-indent:-999px;cursor:pointer;border-radius:3px}
#captcha #captcha_key{margin-left:3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;font-size:16px;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info{display:block;margin:5px 0 0;font-size:12px}
#captcha.m_captcha audio{display:block;margin:0 0 5px;width:187px}
#captcha.m_captcha #captcha_img{width:160px;height:60px;border:1px solid #e9e9e9;display:block;margin:5px 0 3px}
#captcha.m_captcha #captcha_reload{position:static}
#captcha.m_captcha #captcha_reload span{display:none}
#captcha.m_captcha #captcha_key{width:115px;height:29px;border:1px solid #b8c9c2;background:#f7f7f7;line-height:29px;margin-left:3px}
#captcha.m_captcha #captcha_info{display:block;margin:5px 0 0;font-size:12px}
#captcha.m_captcha #captcha_mp3{width:31px;height:31px;vertical-align:top;text-indent:-9999px;border:none}

/* 에디터 */
.cke_sc{margin:0 0 5px;text-align:right}
.btn_cke_sc{display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc;background:#fafafa;line-height:1.9em;cursor:pointer}
.cke_sc_def{margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl{text-align:left;zoom:1;margin:0 0 5px}
.cke_sc_def dl:after{display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt,.cke_sc_def dd{float:left;padding:5px 0;border-bottom:1px solid #e9e9e9;margin:0}
.cke_sc_def dt{width:20%;font-weight:bold}
.cke_sc_def dd{width:30%}
#bo_v_con ul{display:block;list-style-type:disc;margin:1em 0;padding-left:40px}
#bo_v_con ol{display:block;list-style-type:decimal;margin:1em 0;padding-left:40px}
#bo_v_con li{display:list-item}

/* 버튼 */
a.btn,.btn{line-height:36px;height:36px;padding:0 14px;text-align:center;font-weight:700;border:0;border-radius:6px;transition:all 0.15s}
a.btn01,button.btn01{display:inline-block;padding:7px 12px;border:1px solid #E5E8EB;background:#fff;color:#333;border-radius:6px;margin:0}
a.btn01:hover,button.btn01:hover{background:#F7F8FA}
a.btn02,button.btn02{display:inline-block;padding:7px 12px;border:0;background:#333;color:#fff;border-radius:6px;margin:0}
.btn_confirm{text-align:right}
.btn_submit{border:0;background:#1A56A0;color:#fff;cursor:pointer;border-radius:6px;font-weight:700;padding:0 20px;height:42px;font-size:14px}
.btn_submit:hover{background:#144B8F}
.btn_close{border:1px solid #E5E8EB;cursor:pointer;border-radius:6px;background:#fff}
a.btn_close{text-align:center;line-height:42px}
a.btn_cancel,button.btn_cancel{display:inline-block;background:#969696;color:#fff;border-radius:6px}
.btn_cancel:hover{background:#aaa}
a.btn_frmline,button.btn_frmline{display:inline-block;width:128px;height:42px;border:0;background:#333;border-radius:6px;color:#fff;vertical-align:top;font-size:1em;padding:0}

a.btn_b01,.btn_b01{display:inline-block;color:#999;border:0;background:transparent}
.btn_b01:hover{color:#333}
a.btn_b02,.btn_b02{display:inline-block;background:#1A56A0;padding:0 14px;color:#fff;border:0;border-radius:6px;height:36px;line-height:36px}
a.btn_b02:hover,.btn_b02:hover{background:#144B8F}
a.btn_b03,.btn_b03{display:inline-block;background:#fff;border:1px solid #E5E8EB;color:#666;border-radius:6px;height:36px;line-height:34px;padding:0 14px}
a.btn_b03:hover,.btn_b03:hover{background:#F7F8FA}
a.btn_b04,.btn_b04{display:inline-block;background:#fff;border:1px solid #E5E8EB;color:#666;border-radius:6px;height:36px;line-height:34px;padding:0 14px}
a.btn_b04:hover,.btn_b04:hover{background:#F7F8FA}
a.btn_admin,.btn_admin{display:inline-block;color:#E53935}
.btn_admin:hover{color:#C62828}

/* 테이블 */
.tbl_wrap table{width:100%;border-collapse:collapse;background:#fff;border-top:1px solid #E5E8EB;border-bottom:1px solid #E5E8EB}
.tbl_wrap caption{padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01{margin:0 0 10px}
.tbl_head01 caption{padding:0;font-size:0;overflow:hidden}
.tbl_head01 thead th{padding:14px 8px;font-weight:700;text-align:center;border-bottom:1px solid #E5E8EB;font-size:12px;color:#666}
.tbl_head01 thead th input{vertical-align:top}
.tbl_head01 tfoot th,.tbl_head01 tfoot td{padding:10px 0;border-top:1px solid #E5E8EB;background:#F7F8FA;text-align:center}
.tbl_head01 tbody th{padding:8px 0;border-bottom:1px solid #F2F4F6}
.tbl_head01 td{color:#555;padding:12px 8px;border-bottom:1px solid #F2F4F6;line-height:1.5;word-break:break-all}
.tbl_head01 tbody tr:hover td{background:#F7F8FA}
.tbl_head01 a:hover{color:#1A56A0}
.tbl_head02{margin:0 0 10px}
.tbl_head02 caption{padding:0;font-size:0;overflow:hidden}
.tbl_head02 thead th{padding:8px;border-bottom:1px solid #E5E8EB;background:#F7F8FA;color:#666;font-size:12px;text-align:center}
.tbl_head02 thead a{color:#666}
.tbl_head02 thead th input{vertical-align:top}
.tbl_head02 tfoot th,.tbl_head02 tfoot td{padding:10px 0;border-top:1px solid #E5E8EB;background:#F7F8FA;text-align:center}
.tbl_head02 tbody th{padding:5px 0;border-bottom:1px solid #F2F4F6}
.tbl_head02 td{padding:8px;border-bottom:1px solid #F2F4F6;line-height:1.5;word-break:break-all}

.tbl_frm01{margin:0 0 20px}
.tbl_frm01 table{width:100%;border-collapse:collapse}
.tbl_frm01 th{width:70px;padding:10px 14px;border:1px solid #F2F4F6;border-left:0;background:#F7F8FA;text-align:left;font-weight:700;font-size:13px}
.tbl_frm01 td{padding:10px;border-top:1px solid #F2F4F6;border-bottom:1px solid #F2F4F6}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea,.frm_input{border:1px solid #E5E8EB;background:#fff;color:#333;border-radius:6px;padding:8px 12px}
.frm_input{height:42px}
.full_input{width:100%}
.half_input{width:49.5%}
.twopart_input{width:280px;margin-right:10px}
.tbl_frm01 textarea,.write_div textarea{width:100%;height:100px}
.tbl_frm01 .frm_file{display:block;margin-bottom:5px}
.tbl_frm01 .frm_info{display:block;padding:0 0 5px;line-height:1.4}

.list_01 ul{border-top:1px solid #E5E8EB}
.list_01 li{border-bottom:1px solid #F2F4F6;background:#fff;padding:12px 16px;position:relative}
.list_01 li:after{display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover{background:#F7F8FA}
.list_01 li.empty_li{text-align:center;padding:24px 0;color:#999}
.form_01 h2{font-size:16px;font-weight:800}
.form_01 li{margin-bottom:10px}
.form_01 ul:after,.form_01 li:after{display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input{float:left}
.form_01 .margin_input{margin-right:1%}
.form_01 textarea{height:100px;width:100%}
.form_01 .frm_label{display:inline-block;width:130px}
.empty_table{padding:50px 0 !important;text-align:center}
.empty_list{padding:20px 0 !important;color:#999;text-align:center}
.required,textarea.required{background-image:url('../img/require.png') !important;background-repeat:no-repeat !important;background-position:right top !important}

.td_board{width:80px;text-align:center}.td_category{width:80px;text-align:center}.td_chk{width:30px;text-align:center}
.td_date{width:60px;text-align:center}.td_datetime{width:110px;text-align:center}.td_group{width:80px;text-align:center}
.td_mb_id{width:100px;text-align:center}.td_mng{width:80px;text-align:center}.td_name{width:100px;text-align:left}
.td_nick{width:100px;text-align:center}.td_num{width:50px;text-align:center}.td_numbig{width:80px;text-align:center}
.td_stat{width:60px;text-align:center}
.txt_active{color:#43A047}.txt_done{color:#E53935}.txt_expired{color:#ccc}.txt_rdy{color:#8abc2a}

.new_win{position:relative}
.new_win .tbl_wrap{margin:0 20px}
.new_win #win_title{font-size:16px;font-weight:800;height:50px;line-height:30px;padding:10px 20px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.new_win #win_title .sv{font-size:12px;line-height:1.2em}
.new_win .win_ul{margin-bottom:15px;padding:0 20px}
.new_win .win_ul:after{display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li{float:left;background:#fff;text-align:center;padding:0 10px;border:1px solid #E5E8EB;border-radius:20px;margin-left:5px}
.new_win .win_ul li:first-child{margin-left:0}
.new_win .win_ul li a{display:block;padding:8px 0;color:#666}
.new_win .win_ul .selected{background:#1A56A0;border-color:#1A56A0}
.new_win .win_ul .selected a{color:#fff;font-weight:bold}
.new_win .win_desc{position:relative;margin:10px;border-radius:8px;background:#FFF3E0;color:#E65100;line-height:50px;padding:0 20px}
.new_win .win_desc:after{content:"";position:absolute;left:0;top:0;width:4px;height:50px;background:#E65100;border-radius:3px 0 0 3px}
.new_win .frm_info{font-size:12px;color:#999}
.new_win .win_total{float:right;line-height:30px;font-weight:700;font-size:12px;color:#1A56A0;background:#EFF3F8;padding:0 10px;border-radius:5px}
.new_win .new_win_con{margin:20px 0;padding:20px}
.new_win .new_win_con:after{display:block;visibility:hidden;clear:both;content:""}
.new_win .new_win_con2{margin:20px 0}
.new_win .btn_confirm:after{display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn{text-align:center}
.new_win .cert_btn{margin-bottom:30px;text-align:center}
.new_win .btn_close{padding:0 20px;height:45px}
.new_win .btn_submit{padding:0 20px;height:45px;font-weight:bold;font-size:14px}
.sch_word{color:#fff;background:#1A56A0;padding:2px 6px;border-radius:3px;margin:0 2px}
#validation_check{margin:100px auto;width:500px}
#validation_check h1{margin-bottom:20px;font-size:18px;font-weight:800}
#validation_check p{margin-bottom:20px;padding:30px 20px;border:1px solid #E5E8EB;background:#fff;border-radius:8px}

.sv_wrap{position:relative;font-weight:normal}
.sv_wrap .sv{z-index:1000;display:none;margin:5px 0 0;font-size:12px;background:#333;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15)}
.sv_wrap .sv:before{content:"";position:absolute;top:-6px;left:15px;border-style:solid;border-width:0 6px 6px;border-color:transparent transparent #333}
.sv_wrap .sv a{display:inline-block;padding:0 12px;line-height:34px;width:100px;color:#bbb}
.sv_wrap .sv a:hover{background:#000;color:#fff}
.sv_member{color:#333}
.sv_on{display:block !important;position:absolute;top:23px;left:0}
.sv_nojs .sv{display:block}

.pg_wrap{clear:both;display:flex;justify-content:center;width:100%;margin:20px 0}
.pg{display:flex;gap:4px;align-items:center}
.pg_page,.pg_current{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:6px;font-size:13px;border:0}
.pg_page{color:#666;background:#fff;border:1px solid #E5E8EB}
.pg a:focus,.pg a:hover{text-decoration:none}
.pg_page:hover{background:#F7F8FA}
.pg_start,.pg_prev,.pg_end,.pg_next{text-indent:-999px;overflow:hidden;padding:0;border:1px solid #E5E8EB;background:#fff;min-width:32px;height:32px;border-radius:6px}
.pg_start{background:url('../img/btn_first.gif') no-repeat 50% 50% #fff}
.pg_prev{background:url('../img/btn_prev.gif') no-repeat 50% 50% #fff}
.pg_end{background:url('../img/btn_end.gif') no-repeat 50% 50% #fff}
.pg_next{background:url('../img/btn_next.gif') no-repeat 50% 50% #fff}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover{background-color:#F7F8FA}
.pg_current{background:#1A56A0;color:#fff;font-weight:800;border:0}
.cheditor-popup-window *,.cheditor-popup-window :after,.cheditor-popup-window :before{box-sizing:content-box}
#copymove .win_desc{text-align:center;display:block}
#copymove .tbl_wrap{margin:20px}
#copymove .win_btn{padding:0 20px 20px}
.copymove_current{float:right;background:#E53935;padding:5px 10px;color:#fff;border-radius:4px;font-size:12px}
.copymove_currentbg{background:#F7F8FA}
#device_change{display:block;margin:0.3em;padding:0.5em 0;border:1px solid #E5E8EB;border-radius:8px;background:#fff;font-size:1.5em;text-align:center}

/* item_thumb 이미지 native lazy load 지원 */
.item_thumb{overflow:hidden}
.item_thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* ===== 햄버거 / 모바일 메뉴 (기본 숨김) ===== */
#hd_burger{display:none;width:40px;height:40px;border:0;background:transparent;cursor:pointer;
    flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-right:8px;border-radius:8px;transition:background 0.15s}
#hd_burger:hover{background:#F2F4F6}
#hd_burger span{display:block;width:22px;height:2px;background:#1f2937;border-radius:2px;transition:transform 0.2s, opacity 0.2s}
#hd_burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
#hd_burger[aria-expanded="true"] span:nth-child(2){opacity:0}
#hd_burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

#m_menu_overlay{display:none;position:fixed;inset:0;background:rgba(15,23,42,0.45);z-index:998;animation:m_fade 0.2s ease}
#m_menu_overlay.open{display:block}
@keyframes m_fade{from{opacity:0}to{opacity:1}}
#m_menu{position:fixed;top:0;right:-300px;width:300px;max-width:85vw;height:100vh;background:#fff;
    z-index:999;box-shadow:-8px 0 24px rgba(0,0,0,0.15);transition:right 0.25s cubic-bezier(0.4,0,0.2,1);
    display:flex;flex-direction:column;overflow-y:auto;font-family:'NanumSquare','Malgun Gothic',sans-serif}
#m_menu.open{right:0}
#m_menu .m_menu_head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #ECEEF1}
#m_menu .m_menu_title{font-size:15px;font-weight:800;color:#1f2937;letter-spacing:-0.3px}
#m_menu_close{width:32px;height:32px;border:0;background:transparent;font-size:24px;color:#6B7280;cursor:pointer;line-height:1;border-radius:6px;transition:background 0.15s}
#m_menu_close:hover{background:#F2F4F6;color:#1f2937}
#m_menu .m_search{display:flex;margin:14px 16px 8px;border:1.5px solid #E5E7EB;border-radius:10px;overflow:hidden;transition:border-color 0.15s}
#m_menu .m_search:focus-within{border-color:#1A56A0}
#m_menu .m_search input{flex:1;padding:10px 14px;border:0;outline:0;font-size:14px;font-family:inherit;background:transparent}
#m_menu .m_search button{border:0;background:#1A56A0;color:#fff;padding:0 14px;cursor:pointer}
#m_menu .m_nav{padding:8px 0 24px}
#m_menu .m_nav a{display:flex;align-items:center;gap:12px;padding:13px 22px;color:#374151;text-decoration:none;font-size:14px;font-weight:600;transition:background 0.12s}
#m_menu .m_nav a:hover{background:#F7F8FA;color:#1A56A0}
#m_menu .m_nav a i{width:18px;color:#9CA3AF;font-size:14px}
#m_menu .m_nav a:hover i{color:#1A56A0}
#m_menu .m_nav a.m_login{margin-top:6px;background:#1A56A0;color:#fff;font-weight:800}
#m_menu .m_nav a.m_login:hover{background:#144B8F;color:#fff}
#m_menu .m_nav a.m_login i{color:#fff}
#m_menu .m_nav_grp{padding:14px 22px 6px;font-size:11px;font-weight:800;color:#9CA3AF;letter-spacing:1px;text-transform:uppercase;border-top:1px solid #F3F4F6;margin-top:6px}
#m_menu .m_nav_grp:first-child{border-top:0;margin-top:0}

/* ===== 반응형 ===== */
@media(max-width:1024px){
    .sec_grid{grid-template-columns:repeat(2,1fr)}
    .hero{flex-direction:column}
    .hero_main{flex:none}
    .hero_side{flex:none}
}
@media(max-width:768px){
    .hd_inner{padding:0 12px}
    #hd_burger{display:flex}
    #gnb{display:none}
    #hd_sch{display:none}
    .hd_login{display:none}
    #hd_h1, #skip_to_container{position:absolute;left:-9999px}
    #logo img{max-height:36px;width:auto}
    .hd_top .hd_inner{height:52px}
    #wrapper{padding:16px 12px 36px}
    .sec_grid{grid-template-columns:repeat(2,1fr);gap:10px}
    .cta_banner{flex-direction:column;text-align:center;padding:18px}
    .upload_cta a{font-size:15px !important;padding:18px 16px !important}
    .ft_top{flex-direction:column;gap:14px;text-align:center}
    .ft_links{display:flex;flex-wrap:wrap;justify-content:center;gap:0 10px}
    .ft_links a{margin-left:0 !important;padding:4px 6px;font-size:12px}
    .ft_info{text-align:center;line-height:1.8}
    .ft_info span{display:inline-block;margin:0 6px}
}
@media(max-width:480px){
    .sec_grid{grid-template-columns:1fr;gap:14px}
    .item_thumb{height:140px}
    .hero_title{font-size:18px}
    .hero_desc{font-size:13px}
    .ft_inner{padding:24px 16px}
    .ft_info span{display:block;margin:2px 0}
    .upload_cta a{font-size:14px !important}
}
@media(max-width:375px){
    .hd_inner{padding:0 10px}
    #logo img{max-height:32px}
    .hd_top .hd_inner{height:48px}
    .item_thumb{height:120px}
}
