@charset "UTF-8";
@import url(./_token.css);

/* =======================================================
    reset 
======================================================= */
*, ::after, ::before { margin: 0; padding: 0; box-sizing: border-box; font-size: 1em; font-family: inherit; color: inherit; outline: none; }
html { overflow-y: scroll; }
html.scroll-none { overflow-y: hidden; }
header, footer, section, article, aside, nav, main, hr, figure, figcaption, details, summary { display: block; }
label, input, button, select { vertical-align: middle; }
h1, h2, h3, h4, h5, h6, th, dt { font-weight: inherit; }
strong { font-weight: 700; }
b { font-weight: 600; }
small { font-size: 0.875em; }
img { vertical-align: top; }
a { text-decoration: none; }
ul, ol { list-style: none; }
table { border-collapse: collapse; width: 100%; }
hr, fieldset { border: none; }
textarea { width: 100%; resize: vertical; }
input, select, textarea, button, a { transition: var(--ts-sm); }
button, label, [type="submit"], [type="button"] { cursor: pointer; }
::-moz-placeholder, ::placeholder, .placeholdersjs { opacity: 0.7; }
input:focus, select:focus, textarea:focus, button:focus { border-color: var(--primary-hv) !important; box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1); position: relative; }
::selection {  background-color: var(--primary-bg); color: var(--primary-dk); }

/* 화면낭독기 사용자용 */
caption, legend,
.sr_only, #hd_login_msg, 
.sound_only, .msg_sound_only { clip-path: inset(50%); white-space: nowrap; border-width: 0; width: 1px; height: 1px; margin: -1px; padding: 0; position: absolute; overflow: hidden; }

/* 본문 바로가기 */
#skip_to_container a { position: fixed; left: 0; right: 0;; top: 0; z-index: var(--z-fixed); width: 100%; font-size: 1.25em; padding: 0.75em 1em; color: #fff; background-color: rgba(0,0,0,0.6); text-align: center; outline: none; backdrop-filter: blur(0.2em); transform: translateY(-100%); }
#skip_to_container a:focus { transform: translateY(0); }
#skip_to_container a:hover { background-color: rgba(0,0,0,0.8); }

/* ie6 이미지 너비 지정 */
.img_fix { width: 100%; height: auto; }

/* 자바스크립트 alert 대안 */
#validation_check { max-width: var(--container-xxs); width: 100%; margin: 0 auto; height: calc(var(--vh) * 100); display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 1.5em; }
#validation_check h1 { font-size: 1.375em; font-weight: 700; }
#validation_check p { width: 100%; font-size: 1em; padding: 1em 1.25em; border: 1px solid #ddd; }

/* cheditor 이슈 */
.cheditor-popup-window *, 
.cheditor-popup-window *::before, 
.cheditor-popup-window *::after { box-sizing: content-box; }

/* ckeditor 단축키 */
.smarteditor2 { position: relative; }
.cke_sc { font-size: 0.75rem; margin-bottom: 0.5em; position: relative; display: flex; justify-content: flex-end; align-items: center; }
.btn_cke_sc_close { display: none; }
.btn_cke_sc { display: inline-flex; justify-content: center; align-items: center; background-color: #fafafa; border: 1px solid #ddd; color: #686868; padding: 0 0.5em; height: 1.875em; border-radius: var(--radius-xs); }
.cke_sc_def { position: absolute; top: 100%; right: 0; margin-top: 0.25em; z-index: var(--z-dropdown); overflow: hidden; border: 1px solid #eee; border-radius: var(--radius-sm); background-color: rgba(255, 255, 255, 0.5); backdrop-filter: blur(0.1em); box-shadow: var(--shadow-sm); }
.cke_sc_def dl { display: grid; grid-template-columns: repeat(4,1fr); text-align: left; white-space: nowrap; }
.cke_sc_def dt, .cke_sc_def dd { padding: 0.5em 1em; }
.cke_sc_def dt { font-weight: 600; }

/* 캡챠 자동등록방지 기본 */
#captcha { font-size: 0.8125rem; display: inline-grid; grid-template-columns: repeat(4, max-content); gap: 0.25em 0.25em; text-align: left; }
#captcha_img, #captcha_key, #captcha button { height: 3em; border: 1px solid #ddd; }
#captcha_info { grid-column: 1/-1; color: #999; }
#captcha_key { padding: 0 0.375em; font-size: 1.5em; height: 2em; width: 5em; }
#captcha button { aspect-ratio: 1/1; text-indent: -999px; overflow: hidden; color: #999; background-color: #fafafa; }
#captcha button:hover { background-color: #f3f3f3; color: #333; }
#captcha button::before { font-family: 'remixicon'; display: flex; justify-content: center; align-items: center; text-indent: 0; width: 100%; height: 100%; font-size: 1.375em; transition: color var(--ts-sm); }
#captcha_mp3::before { content: "\f2a1"; }
#captcha_reload::before { content: "\f33e"; }

/* 필수입력 */
.require { color: var(--error-hv); font-style: normal; margin: 0 0.25em; }
.required { background: url('../img/require.png') no-repeat right top !important; }

/* 읽기전용,비활성화 */
/*[readonly], [disabled] { filter: grayscale(1); background: #fafafa; color: #999; cursor: default; }*/
/*[readonly]:focus, [disabled]:focus { box-shadow: none; }*/
.readonly, .disabled { filter: grayscale(1); background: #fafafa; color: #aaa; cursor: default; }
.readonly:focus, .disabled:focus { box-shadow: none; }

/* 자료 없는 목록 */
.empty_table,
.empty_list,
.empty_li { color: #999; text-align: center; grid-column: 1/-1; flex-grow: 1; width: 100%; }
.empty_table { padding: 8em 0 !important;}
.empty_list,
.empty_li { padding: 6em 0 !important; }

/* 폼스타일 */
.frm_input, select, textarea { background-color: #fff; border: 1px solid #ddd; border-radius: var(--radius-xs); }
.frm_input, select { padding: 0.625em; } 
textarea { padding: 0.425em 0.625em; min-height: 8em; line-height: 1.4; vertical-align: top; } 
.full_input { width: 100%; }
.half_input { width: calc((100% - 1em)/2); }
.frm_info { color: #999; display: flex; justify-content: flex-start; align-items: flex-start; gap: 0.25em; padding: 0.25em 0;}
.frm_info i { font-size: 1.25em; flex-shrink: 0; }
.frm_info span { font-size: 0.9375em; padding: 0.25em 0; flex-grow: 1; }

.chk_box input { display: none; }
.chk_box label { display: inline-flex; justify-content: flex-start; align-items: center; gap: 0.25em; font-weight: 400; line-height: 1; vertical-align: top; }
.chk_box label span { border: 1px solid #ccc; display: block; width: 1.125em; height: 1.125em; border-radius: var(--radius-xs); }
.chk_box input:checked + label span { border-color: var(--primary); background: var(--primary) url(../img/chk.png) no-repeat center; }

/* 버튼 */
.btn, 
.btn01, .btn02, 
.btn_submit, .btn_cancel, .btn_close, .btn_frmline,
.btn_admin, .btn_b01, .btn_b02, .btn_b03, .btn_b04 { display: inline-flex; justify-content: center; align-items: center; line-height: 1; border: 1px solid transparent; background-color: transparent; vertical-align: top; border-radius: var(--radius-xs); }
.btn01 { color: #686868; border-color: #dddddd; background-color: #f5f5f5; }
.btn02 { color: #ffffff; border-color: #686868; background-color: #686868; }
.btn_submit  { color: #ffffff; border-color: var(--primary); background-color: var(--primary); }
.btn_cancel  { color: var(--primary); border-color: var(--primary); }
.btn_close   { color: #686868; border-color: #eeeeee; background-color: #eeeeee; }
.btn_frmline { color: #ffffff; border-color: #333333; background-color: #333333; flex-shrink: 0; padding: 0.625em 1.25em; gap: 0.5em; }
.btn_confirm { display: flex; justify-content: center; gap: 0.5em; margin-top: 2em; }
.btn_confirm a,
.btn_confirm button { font-size: 1.125em; flex: 1 1 20%; max-width: 12em; height: 3.25em; gap: 0.5em; }

/* 게시판용 버튼 */
.btn_admin, .btn_b01 { width: 2em; aspect-ratio: 1/1; }
.btn_admin { color: var(--error); }
.btn_admin:hover { color: var(--error-hv); }
.btn_b01 { color: #bbb; }
.btn_b01:hover { color: #333; }
.btn_b02 { color: #ffffff; border-color: var(--primary); background-color: var(--primary); }
.btn_b03 { color: #686868; border-color: #dddddd; }
.btn_b04 { color: #686868; border-color: #eeeeee; background-color: #eeeeee; }

/* 기본테이블 */
.tbl_wrap table { border-top: 2px solid #000; }
.tbl_wrap tr { border-bottom: 1px solid #ddd; }
.tbl_wrap th,
.tbl_wrap td { padding: 1em 0.625em; }
.tbl_head01 { text-align: center; }
.tbl_head02 { text-align: left; }
.tbl_head02 th { background-color: #fafafa; }

/* 폼 테이블 */
.tbl_frm01 th { background-color: #fafafa; }

/* 테이블 항목별 정의 */
.td_board { width: 5em; }
.td_category { width: 5em; }
.td_chk { width: 2.5em; }
.td_date { width: 3.75em; }
.td_datetime { width: 6.875em; }
.td_default { width: 3.75em; }
.td_dvr { width: 6.25em; }
.td_group { width: 5em; }
.td_mb_id { width: 6.25em; }
.td_mng { width: 5em; }
.td_mngsmall { width: 6.25em; }
.td_name { width: 6.25em; }
.td_namesmall { width: 3.125em; }
.td_nick { width: 6.25em; }
.td_num { width: 3.125em; }
.td_numbig, .td_num2 { width: 5em; }
.td_stat { width: 3.75em; }
.td_statsmall { width: 3.125em; }
.td_imgsmall { width: 3.75em; }
.td_md { width: 10em; }
.td_email { width: 15em; }

/* 폼 리스트 */
.form_01 h2 { font-size: 1.125em; padding: 0.5em 0; margin-bottom: 0.5em; font-weight: 700; border-bottom: 2px solid #000; }
.form_01 ul { display: flex; flex-wrap: wrap; gap: 0.5em 1em; margin-bottom: 1em; }
.form_01 li:not(.half_input) { width: 100%; }

/* 사이드뷰 */
.sv_wrap { position: relative; }
.sv { position: absolute; top: 100%; left: 0; margin-top: 0.25em; z-index: var(--z-dropdown); overflow: hidden; border: 1px solid #eee; border-radius: var(--radius-sm); background-color: #ffffff; backdrop-filter: blur(0.1em); box-shadow: var(--shadow-sm); transition: var(--ts-md); }
.sv a { font-size: 0.875rem; height: 2em; padding: 0 0.5em; white-space: nowrap; aspect-ratio: 4.5/1; display: flex; justify-content: flex-start; align-items: center; color: #686868; }
.sv a:hover { background-color: #f3f3f3; color: #111; }
.sv { opacity: 0; transform: translateY(1em); pointer-events: none; }
.sv_on, .sv.is-open { opacity: 1; transform: translateY(0); pointer-events: auto; }

/* 페이징 */
.pg { display: flex; justify-content: center; align-items: center; gap: 0.5em; }
.pg_wrap { margin-top: 3rem; font-size: 0.9375em; line-height: 1.6; }
.pg_current, .pg_page { width: 2.5em; gap: 0; aspect-ratio: 1/1; display: inline-flex; justify-content: center; align-items: center; border-radius: var(--radius-xs); }
.pg_current { background-color: var(--primary); color: #fff; font-weight: inherit; }
.pg_page { border: 1px solid #ddd; color: #999; }
.pg_page:hover { border-color: var(--primary); color: var(--primary); }
[class*="pg_page pg_"] { position: relative; overflow: hidden; }
[class*="pg_page pg_"]::after { width: 100%; height: 100%; display: inline-flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0; background-color: #fff; font-family: "remixicon"; font-size: 1.375em; }
.pg_start::after { content:"\f2e3"; }
.pg_prev::after { content:"\ea64"; }
.pg_next::after { content:"\ea6e"; }
.pg_end::after { content:"\f2e5"; }

/* 임시저장 */
#autosave_count { font-size: 0.75em; padding: 0.25em 0.5em; background-color: #fff; color: #333; }
#autosave_pop { max-width: 20em; position: absolute; top: 100%; text-align: left; transition: 0.45s ease; z-index: 100; overflow: hidden; background-color: #fff; opacity: 0; transform: translateY(1em); pointer-events: none; border-radius: var(--radius-sm); box-shadow: var(--shadow-sm); right: 0; margin-top: 0.25em; }
#autosave_pop_on,
#autosave_pop.is-open { opacity: 1; transform: translateY(0); pointer-events: auto; }
#autosave_pop ul { font-size: 0.8125em; padding: 0.5em; }
#autosave_pop li { padding: 0.25em 0.5em; display: flex; justify-content: space-between; align-items: center; gap: 0.5em; }
#autosave_pop a,
#autosave_pop span { display: inline-flex; justify-content: flex-start; align-items: center; gap: 0.25em; }
#autosave_pop a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; text-overflow: ellipsis; word-break: break-all; color: #495057; }
#autosave_pop a:hover { text-decoration: underline; }
#autosave_pop span { flex-shrink: 0; font-size: 0.9375em; color: #adb5bd; }
#autosave_pop button { height: calc(var(--em) * 0.8125 * 0.9375 * 1.5); aspect-ratio: 1/1; font-size: 0; position: relative; display: inline-block; }
#autosave_pop button::before { content: "\eb99"; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: calc(var(--em) * 0.8125 * 0.9375 * 1.25); font-family: "remixicon"; font-style: normal; transition: color var(--ts-fast); }
#autosave_pop button:hover { color: var(--error-rgb); }

/* 새창 기본 스타일 */
.new_win { font-size: 0.875em; margin-top: 3.5em; padding: 1.25em 1em 1.25em; position: relative; display: flex; flex-direction: column; gap: 1em; }
#win_title { display: flex; align-items: center; gap: 0.5em; font-size: 1.25em; line-height: 1; padding: 0 1em; width: 100%; height: 2.8em; box-shadow: var(--shadow-sm); position: fixed; left: 0; top: 0; background-color: #fff; z-index: var(--z-fixed); }
.win_total { font-size: 0.8125em; margin-left: auto; }
.win_ul { display: flex; justify-content: flex-start; align-items: center; gap: 0.5em; }
.win_ul li { background-color: #f3f3f3; color: #999; border-radius: var(--radius-full); }
.win_ul li:not(.selected):hover { background-color: var(--primary-bg); color: var(--primary-hv); }
.win_ul .selected { background-color: var(--primary); color: #fff; }
.win_ul a { display: inline-flex; justify-content: center; align-items: center; padding: 0.5em 1em; }
.win_btn { display: grid; grid-template-columns: repeat(auto-fit,minmax(30%, max-content)); gap: 0.5em; justify-content: center; align-items: center; margin-top: 2em; }
.win_btn > * { padding: 0.875em 1em; }

/* 팝업레이어 */
#hd_pop { width: 100%; position: relative; z-index: var(--z-fixed); max-width: 1360px; margin-left: auto; margin-right: auto; }
#hd_pop h2 { clip-path: inset(50%); white-space: nowrap; border-width: 0; width: 1px; height: 1px; margin: -1px; padding: 0; position: absolute; overflow: hidden; }
.hd_pops { width: 100%; max-width: 500px; position: absolute; box-shadow: var(--shadow-lg); border-radius: var(--radius-md); overflow: hidden; left: 0 !important; top: calc(var(--vh) * 20) !important; }
.hd_pops_con { width: 100% !important; height: auto !important; }
.hd_pops_con img { max-width: 100%; }
.hd_pops_footer { display: flex; justify-content: flex-start; }
.hd_pops_footer button { border: 0; color: #fff; padding: 0.625em 1em; }
.hd_pops_reject { background-color: #111; flex-grow: 1; text-align: left; }
.hd_pops_close { background-color: #393939; flex-shrink: 0; }

/* 모달창 */
.modal { position: fixed; left: 0; top: 0; bottom: 0; right: 0; background-color: rgba(0,0,0,0.5); z-index: var(--z-modal); display: none; }
.modal_box { width: 90%; max-width: var(--container-xs); position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background-color: #fff; border-radius: var(--radius-md); box-shadow: var(--shadow-lg); overflow: hidden; }
.modal_title { padding: 0.75em 1.25em; border-bottom: 1px solid #e1e1e1; display: flex; justify-content: space-between; align-items: center; }
.modal_title h3 { font-size: 1.25em; font-weight: 700; }
.modal_close { font-size: 1.25em; background-color: transparent; border: 0; }
.modal_close i { }
.modal_con { padding: 0.75em 1.25em; height: 20em; overflow: hidden scroll; background-color: #fafafa; color: #686868; line-height: 1.5; }

/* ==============================================================
    custom
============================================================== */
/* 유틸리티 */
.container { width: 100%; max-width: var(--container-lg); margin-left: auto; margin-right: auto; }
.profile_img img { border-radius: var(--radius-full); }
.badge { display: inline-flex; justify-content: center; align-items: center; padding: 0.375em 0.75em;  border-radius: var(--radius-full); background-color: var(--primary-bg); color: var(--primary-hv); }
.icon { display: inline-flex; justify-content: center; align-items: center; aspect-ratio: 1/1; }
.emph { color: var(--primary); }
.ellipsis { width: 100%; display: -webkit-box !important; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; -ms-text-overflow: ellipsis; text-overflow: ellipsis; }

/* 폼 리스트 */
.frm_list { display: flex; flex-wrap: wrap; gap: 0.625em 1em; }
.frm_item { width: 100%; flex-grow: 1; }
.frm_item.half { width: calc((100% - 1em)/2) }
.frm_label { display: none; }
.frm_label strong { color: var(--error-hv); font-weight: 400; }
.frm_box { width: 100%; display: flex; align-items: flex-start; gap: 0.5em; position: relative; }
.frm_box .frm_input,
.frm_box .frm_att { flex-grow: 1; }
.frm_att { display: flex; justify-content: flex-start; align-items: center; color: #686868; border: 1px solid #ddd; border-radius: var(--radius-xs); padding: 0.625em 0.875em; gap: 0.625em; transition: var(--ts-sm); }
.frm_att [type=file] { display: none; }
.frm_att .att_icon { flex-shrink: 0; transition: var(--ts-sm); }
.frm_att .att_input { flex-grow: 1; height: 100%; border: 0; font-weight: 400; transition: var(--ts-sm); }
.frm_att:hover { border-color: var(--primary-hv); color: var(--primary); }
.frm_att:hover ::placeholder { color: var(--primary); opacity: 1; }

/* ==============================================================
    content
============================================================== */
.ctt_admin { text-align: right; }

/* ==============================================================
    board
============================================================== */
/* 상단 */
.bo_top { display: flex; justify-content: space-between; align-items: center; margin: 1em 0 0.5em; position: relative; z-index: 100;}

/* 사용자 버튼 */
.bo_user_btn { display: flex; gap: 0.25em; justify-content: flex-start; align-items: center; }
.bo_user_opt { position: relative; }
.bo_user_opt-list { position: absolute; top: 100%; text-align: left; transition: 0.45s ease; z-index: 100; overflow: hidden; background-color: rgba(255, 255, 255, 0.8); -webkit-backdrop-filter: blur(0.2em); backdrop-filter: blur(0.2em); border-radius: 0.5rem; box-shadow: 0 0.375rem 0.75rem rgba(0, 0, 0, 0.1); right: 0; padding: 0.25em 0; opacity: 0; transform: translateY(1em); pointer-events: none; }
.bo_user_opt-list.is-open { opacity: 1; transform: translateY(0); pointer-events: auto; z-index: 100; }
.bo_user_opt-list li { color: #888; }
.bo_user_opt-list li:hover { color: #191919; }
.bo_user_opt-list button, .bo_user_opt-list a { padding: 0.25em 0.5em; font-size: 0.875em; display: flex; justify-content: flex-start; align-items: center; gap: 0.25em; white-space: nowrap; background-color: transparent; border: 0; }

/* 작성 */
.bo_w {  }

/* 상세 */
.bo_v_title { font-size: 2em; font-weight: 700; }
.bo_v_info { font-size: 0.9375em; display: flex; justify-content: flex-start; align-items: center; gap: 1em; color: #686868; }
.bo_v_con { min-height: calc(var(--vh) * 35); border-top: 1px solid #ddd; padding-top: 1.5em; margin-top: 1em; line-height: 1.6; }
.bo_v_con img { max-width: 100%; height: auto; margin-bottom: 1em; }
.bo_v_img a { display: inline-block; vertical-align: top; }
.bo_v_att { margin-top: 1em; display: flex; flex-direction: column; gap: 0.5em; }
.bo_v_att .att_txt { font-weight: 500; }
.bo_v_att .att_cnt { font-size: 0.875em; opacity: 0.8; }

/* 목록 */
.bo_l {  }
.bo_subject,
.bo_subject a { text-align: left; display: flex; justify-content: flex-start; align-items: center; gap: 0.25em; }
.bo_subject a:hover { text-decoration: underline; }

.bo_status { font-size: 0.875em; padding: 0.375em 0.875em; border-radius: var(--radius-full); background-color: var(--primary-bg); color: var(--primary); }
.bo_status.is-done { background-color: #eee; color: #777; }

.bo_icon { font-size: 0.875em; }
.bo_icon i { font-style: normal; display: inline-block; }
.bo_icon b { color: var(--primary-dk); }
.bo_icon .ri-reply-fill { transform: rotate(180deg); color: #aaa; }
.bo_icon .ri-lock-fill { color: #686868; }
.bo_icon .ri-bard-fill { color: #ffc400; }
.bo_icon .ri-heart-3-fill { color: #ff1719; }
.bo_icon .ri-download-2-line { color: #6416ff; }
.bo_icon .ri-link { color: #1673ff; }

/* 게시판 검색 */
.bo_search { margin-top: 1em; }
.bo_search .search_box { display: flex; justify-content: flex-end; gap: 0.5em; }
.bo_search .search_bar { display: inline-flex; justify-content: flex-start; align-items: center; color: #686868; border: 1px solid #ddd; border-radius: var(--radius-xs); transition: var(--ts-sm); vertical-align: top; }
.bo_search .search_input,
.bo_search .search_btn { padding: 0.625em; line-height: 1; border: 0; background-color: transparent; vertical-align: top; }

/* 갤러리형 */
.gallery a { display: inline-block; vertical-align: top; }
.gallery .all_chk { margin-bottom: 1em; }
.gallery_list { display: grid; grid-template-columns: repeat(4 ,1fr); gap: 2.5em 1.25em; }
.gallery_item { position: relative; }
.gallery_thumb { width: 100%; aspect-ratio: 1/1; margin-bottom: 1em; border: 1px solid #eee; border-radius: var(--radius-md); overflow: hidden; }
.gallery_thumb a { width: 100%; height: 100%; }
.gallery_thumb img { width: 100%; height: 100%; object-fit: cover; }
.gallery_subj { font-size: 1.5em; font-weight: 600; }
.gallery_subj a {  }
.gallery_info { font-size: 1.125em; font-weight: 400; color: #999; display: flex; justify-content: flex-start; align-items: center; gap: 0.5em; margin-top: 0.25em; }
.gallery_chk { position: absolute; left: 0; top: 0; margin: 1em; }
.gallery_chk label span { background-color: #fff; }

/* ==============================================================
    skin/member
============================================================== */
.mbskin { max-width: var(--container-xxs); margin-left: auto; margin-right: auto; text-align: center; }
.mbskin h1 { font-size: 1.375em; font-weight: 700; margin-bottom: 1em; }
.mbskin  fieldset { display: flex; flex-direction: column; gap: 0.5em; margin-top: 1em; }
.mbskin .btn_submit { height: 2.5em; font-size: 1.125em; }
.mbskin_box { width: 80%; margin: auto; }

/* 회원가입 */
.register { max-width: var(--container-sm); margin-left: auto; margin-right: auto; }
.fregister_agree { position: absolute; top: 0; right: 0; padding: 0.75em; }
.fregister_agree input { display: none; }
.fregister_agree label { display: flex; justify-content: flex-start; align-items: center; gap: 0.5em; }
.fregister_agree label span { border: 1px solid #ccc; display: block; width: 1.125em; height: 1.125em; border-radius: var(--radius-xs); }
.fregister_agree input:checked + label span { border-color: var(--primary); background: var(--primary) url(../img/chk.png) no-repeat center; }
#fregister_chkall { position: static; padding: 0; margin-top: 1.25em; font-weight: 700; }

#fregister p { padding-top: 0.5em; color: #686868; }
#fregister section { position: relative; margin-top: 1em; }
#fregister h2 { font-size: 1.125em; font-weight: 600; padding: 0.5em 0; border-bottom: 2px solid #000; }
#fregister textarea { border-radius: 0; background-color: #f7f7f7; border-color: #ddd; }
#fregister_private table { text-align: center; }
#fregister_private tr { border-bottom: 1px solid #ddd; }
#fregister_private th,
#fregister_private td { padding: 0.875em; }
#fregister_private th { background-color: #f7f7f7; }

/* 로그인 */
#login_info { display: flex; justify-content: space-between; }
#login_join { margin-top: 2em; display: flex; justify-content: center; gap: 0.5em; color: #aaa; }
#login_join a { color: #686868; font-weight: 600; }
#login_join a:hover { color: var(--primary); }

/* 비밀번호 확인 */
#pw_confirm p { color: #686868; }
#pw_confirm p strong { display: block; }


















/* =======================================================
    debug
======================================================= */
#debug { position: fixed; left: 0; bottom: 0; margin: 1em; background-color: rgba(0,0,0,0.6); color: #00ffd5; padding: 0.5em 1em; }
