:root{--bg:#0f1117;--panel:#181b24;--line:#2a2f3d;--text:#e9ecf3;--muted:#9aa3b5;--accent:#f5b83d;--accent-ink:#1a1305;--radius:12px}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif}
a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}
img{max-width:100%;height:auto;display:block}
.sr-wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.sr-skip{position:absolute;left:-9999px}.sr-skip:focus{left:16px;top:8px;background:var(--accent);color:var(--accent-ink);padding:8px 12px;z-index:10}
.sr-header{border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0;z-index:5}
.sr-header__row{display:flex;align-items:center;gap:20px;min-height:60px;flex-wrap:wrap}
.sr-logo{font-weight:800;font-size:20px;color:var(--accent)}
.sr-nav{display:flex;gap:16px;flex:1;overflow-x:auto;white-space:nowrap}
.sr-user{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--muted)}
.sr-btn{background:var(--accent);color:var(--accent-ink);padding:8px 14px;border-radius:999px;font-weight:700;border:0;cursor:pointer;display:inline-block}
.sr-btn:hover{color:var(--accent-ink);filter:brightness(1.08)}.sr-btn--lg{padding:14px 26px;font-size:18px}
main.sr-wrap{padding-top:24px;padding-bottom:56px;min-height:60vh}
.sr-h1{font-size:clamp(24px,4vw,34px);line-height:1.3;margin:8px 0 16px}
h2{font-size:22px;margin:36px 0 14px}
.sr-hero{padding:28px 0 8px}.sr-hero p{color:var(--muted);max-width:720px}
.sr-grid{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.sr-card{display:block;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.sr-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.sr-card strong{display:block;padding:10px 12px 0}.sr-card span{display:block;padding:2px 12px 12px;color:var(--muted);font-size:13px}
.sr-cols{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.sr-links{padding-left:18px}
.sr-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0;padding:0;list-style:none}
.sr-facts li{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px}
.sr-facts b{display:block;color:var(--muted);font-size:13px;font-weight:500}
.sr-demo{position:relative;aspect-ratio:16/9;background:#000;border-radius:var(--radius);overflow:hidden;display:grid;place-items:center}
.sr-demo iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sr-demo__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.sr-demo__msg{position:relative;text-align:center;padding:16px}
.sr-note{color:var(--muted);font-size:14px}
.sr-prose{max-width:760px}.sr-prose h2{margin-top:40px}.sr-prose table{border-collapse:collapse;width:100%}
.sr-prose th,.sr-prose td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.sr-footer{border-top:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:14px;padding:24px 0}
.sr-footer__notice{color:var(--text);font-weight:700}.sr-footer nav{display:flex;gap:16px;flex-wrap:wrap}
@media (max-width:640px){.sr-user span{display:none}}
/* 그누보드 스킨(밝은 배경 기준)을 어두운 테마에서 읽히게 하는 덮어쓰기: 배경·글자색·테두리만 변수로 교체 */
.tbl_wrap table,.tbl_head01 tbody tr:hover td,#bo_list tbody .even td,#bo_list tbody td,#bo_v,.btn_bo_user li,.mbskin,#bo_w .wr_content.smarteditor2 iframe{background:var(--panel);color:var(--text)}
.tbl_wrap table{border-color:var(--line)}
.tbl_head01 thead th{color:var(--muted);border-bottom:1px solid var(--line)}
.tbl_head01 td,.tbl_head01 tbody th{color:var(--text);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tbl_head01 tbody tr:hover td{background:#20242f}
#bo_list .td_num,#bo_list .td_name,#bo_list .td_datetime,#bo_list .td_date{color:var(--muted)}
#bo_list .bo_tit a,#bo_v_title,#bo_v_con{color:var(--text)}
#bo_list_total,#bo_v_info,#bo_v_info *{color:var(--muted)}
#bo_v{border:1px solid var(--line);border-radius:var(--radius);padding:16px}
#bo_v_top,#bo_v_info,#bo_v_atc,#bo_vc article,#bo_vc_w,.bo_vc_w{border-color:var(--line)}
#bo_v_atc,#bo_v_con{color:var(--text)}
#bo_vc,#bo_vc article{background:transparent;color:var(--text)}
#bo_vc_w,.bo_vc_w{background:var(--panel)}
#bo_cate a{background:transparent;color:var(--muted);border-color:var(--line)}
#bo_cate a:hover,#bo_cate #bo_cate_on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.btn_bo_user li a,.btn_bo_user li button{color:var(--accent)}
.btn_bo_user li{border:1px solid var(--line);border-radius:6px}
.btn_submit,.btn_b01.btn_submit{background:var(--accent);color:var(--accent-ink);border-radius:999px;font-weight:700}
.btn_submit:hover{background:var(--accent);filter:brightness(1.08)}
.btn_cancel,.btn_b02{background:#2a2f3d;color:var(--text);border:1px solid var(--line)}
.btn_b01{color:var(--accent)}.btn_b01:hover{color:var(--text)}
.frm_input,.frm_input.full_input,select,textarea{background:#0f1117;color:var(--text);border:1px solid var(--line)}
.frm_info,.frm_info *{color:var(--muted)}
.pg_page,.pg_start,.pg_prev,.pg_end,.pg_next{background-color:var(--panel);border-color:var(--line);color:var(--muted)}
.pg_current{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.mbskin{border:1px solid var(--line);border-radius:var(--radius);padding:16px;max-width:560px;margin:0 auto}
.mbskin h2,.mbskin h1,.mbskin p,.mbskin label,.mbskin li{color:var(--text)}
.mbskin a{color:var(--accent)}
.lat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin:0}
.lat ul{margin:0;padding:0;list-style:none}.lat li,.lat a,.lat .lt_date{color:var(--text)}.lat .lt_date,.lat .lt_info{color:var(--muted)}
.lat .lat_title{display:none}
@media (max-width:640px){.tbl_head01 td,.tbl_head01 thead th{font-size:14px}#bo_list .td_name,#bo_list .td_num,#bo_list .td_date,#bo_list .td_datetime{width:auto}}
.sv_member,.sv_guest,#bo_list .td_name,#bo_list .td_name *,#bo_v_info .sv_member{color:var(--text)}
#bo_v_con,#bo_v_con *{color:var(--text)}
#bo_vc_w textarea,#bo_w .write_div input,.bo_w_info input{background:#0f1117;color:var(--text)}
.mbskin label,.mbskin .frm_label,.mbskin th,.mbskin td,.mbskin caption,.mbskin dt,.mbskin dd,.mbskin fieldset,.mbskin legend{color:var(--text)}
#fregister_term,#fregister_private{background:transparent}
.fregister_agree label,#fregister h2{color:var(--text)}
#fregister textarea{background:#0f1117;color:var(--text);border:1px solid var(--line)}
#login_fs,#mb_login_notmb{background:transparent}
#mb_login_notmb,#mb_login_od_wr{border-color:var(--line);color:var(--text)}
.mbskin .mbskin_box,#register_form,.register_form_inner,.fregister_terms div,#fregister_chkall,#find_info .new_win_con,#find_info .find_btn,#reg_result #result_email,#mb_login_notmb,#mb_login_od_wr,#guest_privacy{background:var(--panel);border-color:var(--line);color:var(--text)}
.mbskin{background:transparent;border:0;padding:0}
.mb_log_cate .join{background:#20242f;color:var(--muted)}
#fregister section,#fregister h2,#register_form h2,.register_form_inner{border-color:var(--line)}
.fregister_terms table th{background:#20242f;color:var(--text);border-color:var(--line)}
.fregister_terms table td{color:var(--text);border-color:var(--line)}
#mb_login_od_wr p{background:#20242f;color:var(--text)}
#fregister p,#member_cert_refresh p{color:#fff}
.mbskin h1,.mbskin h2,.mbskin legend,.mbskin .mb_log_cate h2{color:var(--text)}
input[type=checkbox]+label span,.chk_box input[type=checkbox]+label span{background:#0f1117;border-color:var(--line)}
.btn_close{background:#2a2f3d;color:var(--text);border:1px solid var(--line)}
.lat .lt_more{white-space:nowrap;width:auto;height:auto;padding:0;text-indent:0;color:var(--accent);position:static;display:block;text-align:right}
.lat li,.lat .empty_li{border-bottom-color:var(--line)}
.lat .empty_li{color:var(--muted)}
.sr-grid{align-items:start}
.sr-nav{scrollbar-width:none}.sr-nav::-webkit-scrollbar{display:none}
@media (max-width:640px){.sr-header__row{gap:8px 12px;padding-bottom:8px}.sr-user{margin-left:auto}.sr-nav{order:3;flex:1 1 100%}}
.cmt_btn{background:transparent;border-bottom-color:var(--line)}.cmt_btn b{color:var(--text)}
#bo_v_title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)} /* H1 과 중복되는 스킨 제목은 스크린리더용으로만 둔다 */
.bo_v_com,.btn_bo_user{background:transparent}
.sr-btn[hidden]{display:none} /* display:inline-block 이 hidden 속성을 덮지 않게 */
.sr-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 8px}.sr-filter[hidden],.sr-grid li[hidden]{display:none}
.sr-filter input{flex:1 1 220px;max-width:420px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:10px 16px;font:inherit}
.sr-filter input:focus{outline:2px solid var(--accent);outline-offset:1px}
