@charset "utf-8";
/* =========================================================
   동남아 위키 - Community Layout
   DARK  : #0d0e0f / #101214 / #181a1c
   LIGHT : #ffffff / #f7f7f7 / #eeeeee
   MAIN  : var(--color-point)
   ========================================================= */
/* ===== Variables ===== */
:root { --color-point:#efaa27; --color-point-rgb:255,107,53; --radius-3:3px; --radius-8:8px; --radius-9:9px; --radius-10:10px; --radius-11:11px; --radius-12:12px; --radius-13:13px; --radius-14:14px; --radius-16:16px; }
/* ===== Reset ===== */
html, body { min-height:100%; }
body { margin:0; background:#0d0e0f; color:#f2f2f2; font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",Arial,sans-serif; font-size:15px; line-height:1.6; letter-spacing:-.2px; -webkit-font-smoothing:antialiased; }
*, *::before, *::after { box-sizing:border-box; }
img { max-width:100%; height:auto; }
button, input, textarea, select { font-family:inherit; }
a { color:inherit; }
::selection { background:var(--color-point); color:#0d0e0f; }
/* ===== Skip Navigation ===== */
.skip { margin:0; }
.skip>a { position:absolute; z-index:9999; left:0; top:-100px; width:100%; padding:12px; background:var(--color-point); color:#0d0e0f; text-align:center; text-decoration:none; }
.skip>a:focus { top:0; }
/* ===== Layout ===== */
.container, .footer>p { max-width:calc(100% - 48px); margin:0 auto; }
.header { position:relative; z-index:20; margin:0; }
.body { position:relative; z-index:1; }
.body::after, .header::after { content:""; display:block; clear:both; }
.header::after { display:none; }
.content { padding:0 0 96px; }
.content>*:first-child { margin-top:0; }
.content img { max-width:100%; height:auto; }
/* ===== Header Layout ===== */
.header { position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; }
.header>h1 { position:absolute; left:50%; top:0; transform:translateX(-50%); margin:0; padding:10px 0 22px; text-align:center; }
.header>h1>a, .header>h1 img { display:block; }
.header>h1 img { width:250px; height:auto; }
.header>.side { position:relative; z-index:50; display:flex; align-items:center; gap:12px; height:120px; }
.header>.header_left { position:relative; z-index:50; display:flex; align-items:center; height:120px; }
.gnb { flex:0 0 100%; }
/* ===== Login ===== */
.account { margin-right:0; }
.header .account .info { display:flex; align-items:center; gap:10px; margin:0; padding:0; list-style:none; }
.header .account .info>li { margin:0; padding:0; }
.header .account .info a { display:inline-flex; align-items:center; justify-content:center; gap:8px; height:38px; margin:0; padding:0 16px; border:1px solid #2c3034; border-radius:var(--radius-13); background:#101214; box-shadow:none; color:#f2f2f2; font-size:13px; font-weight:500; line-height:1; text-decoration:none; white-space:nowrap; transition:background .18s ease,color .18s ease,border-color .18s ease; }
.header .account .info a::before { content:""; display:block; flex:0 0 auto; width:17px; height:17px; background-color:#f2f2f2; -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; }
.header .account .info .user::before { -webkit-mask-image:url("./icon-user.png"); mask-image:url("./icon-user.png"); }
.header .account .info .admin::before { -webkit-mask-image:url("./icon-admin.png"); mask-image:url("./icon-admin.png"); }
.header .account .info .logout::before { -webkit-mask-image:url("./icon-logout.png"); mask-image:url("./icon-logout.png"); background-color:var(--color-point); }
.header .account .info .logout { border-color:var(--color-point); color:var(--color-point); }
.header .account .info a:hover, .header .account .info a:focus { border-color:#454a4f; background:#17191b; color:#fff; }
.header .account .info .logout:hover, .header .account .info .logout:focus { border-color:var(--color-point); background:rgba(var(--color-point-rgb),.08); color:var(--color-point); }
/* ===== Search ===== */
.header .search { position:relative; display:flex; align-items:center; margin:0; }
.header .search_icon { position:absolute; z-index:1; left:10px; top:48%; width:23px; height:23px; transform:translateY(-50%); background-color:#f2f2f2; -webkit-mask-image:url("./icon-search.png"); mask-image:url("./icon-search.png"); -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; pointer-events:none; }
.header .search>input { font-size:13px; vertical-align:middle; }
.header .search>input[type="text"] { width:200px; height:38px; margin:0; padding:0 42px 0 35px; border:1px solid #27292c; border-radius:var(--radius-13); background:#111315; color:#d0d0d0; outline:none; transition:background .18s ease,border-color .18s ease,box-shadow .18s ease; }
.header .search>input[type="text"]::placeholder { color:#777b80; }
.header .search>input[type="text"]:focus { background:#151719; border-color:#555b60; box-shadow:none; }
.header .search>input[type="submit"] { width:38px; height:38px; margin:0 0 0 -38px; padding:0; border:0; background:transparent; color:transparent; cursor:pointer; opacity:0; }
/* ===== Theme Toggle ===== */
html[data-theme="dark"] { color-scheme:dark; }
html[data-theme="light"] { color-scheme:light; }
.theme_toggle { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; margin:0; padding:0; border:1px solid #27292c; border-radius:var(--radius-13); background:#101214; color:#8c9196; font-size:16px; line-height:1; cursor:pointer; transition:border-color .18s ease,background .18s ease,color .18s ease; }
.theme_toggle::before { content:"\2600"; }
.theme_toggle:hover { border-color:var(--color-point); background:#151719; color:var(--color-point); }
.theme_toggle:focus { border-color:#555b60; background:#151719; color:#b9bdc1; outline:none; }
/* ===== GNB ===== */
.gnb { position:relative; z-index:10; height:56px; clear:both; border:0; border-top:1px solid #181a1c; background:#090a0b; font-size:15px; }
.gnb::before { display:none; }
.gnb ul { margin:0; padding:0; list-style:none; }
.gnb>ul { position:relative; display:flex; align-items:stretch; height:56px; background:#090a0b; opacity:1; }
.gnb.open>ul { height:auto; border-bottom:1px solid #1c1e20; }
.gnb>ul>li { position:relative; top:auto; float:none; margin:0; }
.gnb>ul>li>a { position:relative; display:flex; align-items:center; height:56px; padding:0 22px; border:0; color:#7e8388; font-size:15px; font-weight:500; text-decoration:none; transition:color .18s ease; }
.gnb>ul>li>a::after { display:none; }
.gnb>ul>li.active>a, .gnb>ul>li.hover>a, .gnb>ul>li>a:hover, .gnb>ul>li>a:focus { border:0; background:transparent; color:#f5f5f5; }
.gnb>ul>li.active>a { font-weight:500; }
.gnb>ul>li.active>a::before { content:""; position:absolute; left:22px; right:22px; bottom:0; height:3px; border-radius:var(--radius-3) var(--radius-3) 0 0; background:var(--color-point); box-shadow:0 0 12px rgba(var(--color-point-rgb),.18); }
/* ===== GNB Sub Menu ===== */
.gnb ul ul { position:absolute; z-index:30; top:56px; left:0; min-width:180px; height:0; margin:0; padding:8px; overflow:hidden; border:1px solid #292c2f; border-radius:0; background:#101214; box-shadow:0 16px 32px rgba(0,0,0,.5); }
.gnb.open ul ul { height:auto; margin-top:0; padding:8px; }
.gnb ul ul::before { display:none; }
.gnb ul ul a { display:block; padding:9px 14px; border-radius:var(--radius-8); color:#969ba0; font-size:14px; line-height:20px; text-decoration:none; transition:color .15s ease,background .15s ease; }
.gnb ul ul a:hover, .gnb ul ul a:focus { background:rgba(var(--color-point-rgb),.1); color:var(--color-point); text-decoration:none; }
/* ===== Visual ===== */
.visual { display:none; }
/* ===== Main Area ===== */
.site-main { min-height:600px; padding:0; background:#0d0e0f; }
/* ===== Main Page ===== */
.body.main { min-height:400px; padding-top:48px; }
/* ===== Sub Page ===== */
.body.sub { min-height:480px; padding-top:48px; padding-bottom:200px;}
/* ===== Content ===== */
.body.sub .content { float:right; width:calc(100% - 264px); padding:60px 0 96px; font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",Arial,sans-serif; color:#e4e4e4; }
.body.sub .content>* { box-sizing:border-box; }
.body.sub .content h1, .body.sub .content h2, .body.sub .content h3 { color:#f5f5f5; letter-spacing:-.5px; font-weight:500;}
.body.sub .content a { transition:color .15s ease,background-color .15s ease; }
.body.sub .content p { line-height:1.8; }
/* ===== LNB ===== */
.body.sub .lnb { float:left; width:232px; margin:0; }
.body.sub .lnb>h1 { position:relative; z-index:2; margin:0 0 24px; padding:0; }
.body.sub .lnb>h1>a { display:block; width:auto; height:auto; margin:0; padding:0 4px; border:0; border-radius:0; background:transparent; box-shadow:none; color:#f4f4f4; font-size:18px; font-weight:500; letter-spacing:-1px; line-height:36px; text-decoration:none; }
.body.sub .lnb ul { margin:0; padding:0; list-style:none; }
.body.sub .lnb>ul { padding:8px; border:1px solid #292c2f; border-radius:var(--radius-16); background:#101214; box-shadow:0 12px 35px rgba(0,0,0,.1); }
.body.sub .lnb ul a { display:block; color:#969ba0; font-size:15px; line-height:44px; text-decoration:none; transition:color .15s ease,background .15s ease; }
.body.sub .lnb>ul>li>a { position:relative; padding:0 16px; border-radius:var(--radius-11); }
.body.sub .lnb>ul>li>a:hover, .body.sub .lnb>ul>li>a:focus { background:#181a1c; color:#e8e8e8; }
.body.sub .lnb>ul>li.active>a { background:#291D0D; color:#EEA830; font-weight:500; }
.body.sub .lnb>ul>li.active>a::before { content:""; position:absolute; left:0; top:10px; bottom:10px; width:3px; border-radius:var(--radius-3); background:var(--color-point); box-shadow:0 0 10px rgba(var(--color-point-rgb),.25); }
.body.sub .lnb ul ul { padding:4px 0 8px; }
.body.sub .lnb li li>a { padding:0 16px 0 28px; border-radius:var(--radius-8); color:#73787d; font-size:14px; line-height:36px; }
.body.sub .lnb li li.active>a, .body.sub .lnb li li>a:hover, .body.sub .lnb li li>a:focus { background:#181a1c; color:var(--color-point); }
/* ===== Form Elements ===== */
.body.sub .content input[type="text"], .body.sub .content input[type="password"], .body.sub .content input[type="email"], .body.sub .content textarea, .body.sub .content select { box-sizing:border-box; padding:11px 14px; border:1px solid #2a2d30; border-radius:var(--radius-10); background:#101214; color:#f2f2f2; font-size:14px; outline:none; transition:border-color .15s ease,box-shadow .15s ease; }
.body.sub .content input::placeholder, .body.sub .content textarea::placeholder { color:#62676c; }
.body.sub .content input[type="text"]:focus, .body.sub .content input[type="password"]:focus, .body.sub .content input[type="email"]:focus, .body.sub .content textarea:focus, .body.sub .content select:focus { border-color:#555b60; background:#141719; box-shadow:none; outline:none; }
/* ===== Buttons ===== */
.body.sub .content button, .body.sub .content input[type="submit"], .body.sub .content input[type="button"] { box-sizing:border-box; padding:10px 18px; border:1px solid #2e3134; border-radius:var(--radius-10); background:#151719; color:#e4e4e4; font-size:14px; font-weight:400; cursor:pointer; transition:background .15s ease,border-color .15s ease,color .15s ease; }
.body.sub .content button:hover, .body.sub .content input[type="submit"]:hover, .body.sub .content input[type="button"]:hover { border-color:var(--color-point); background:#181a1c; color:var(--color-point); }
.body.sub .content button:focus, .body.sub .content input[type="submit"]:focus, .body.sub .content input[type="button"]:focus { border-color:#555b60; background:#181a1c; color:#e4e4e4; outline:none; }
/* ===== Board List ===== */
.board_list { width:100%; overflow:hidden; box-shadow:0 16px 45px rgba(0,0,0,.08); }
.post_list { width:100%; }
/* ===== Post ===== */
.post_card { position:relative; margin:0; border:0; border-bottom:1px solid #25282b; border-radius:0; background:transparent; overflow:hidden; transition:background .15s ease; }
.post_card:last-child { border-bottom:0; }
.post_card_link { position:relative; display:flex; align-items:center; gap:14px; padding:12px 0; color:inherit; text-decoration:none; }
.post_card a, .post_card a:hover, .post_card a:focus, .post_card a:active { text-decoration:none !important; }
/* ===== Post Number ===== */
.post_card_top { display:contents; }
.post_number { display:inline-flex; order:1; align-items:center; justify-content:center; flex:0 0 auto; min-width:28px; height:28px; padding:0 6px; border:1px solid #222528; border-radius:var(--radius-8); background:#191b1d; color:#92979c; font-size:12px; font-weight:500; }
/* ===== Notice ===== */
.post_badge { display:inline-flex; order:1; align-items:center; justify-content:center; flex:0 0 auto; min-width:44px; height:28px; padding:0 9px; border:1px solid rgba(var(--color-point-rgb),.22); border-radius:var(--radius-8); background:rgba(var(--color-point-rgb),.1); color:#ff7545; font-size:12px; font-weight:500; }
/* ===== Post Title ===== */
.post_card_title { order:2; flex:0 1 auto; min-width:0; overflow:hidden; color:#f0f0f0; font-size:15px; font-weight:500; letter-spacing:-.3px; white-space:nowrap; text-overflow:ellipsis; transition:color .15s ease; }
.post_card:hover .post_card_title { color:#fff; }
.post_title_text { vertical-align:middle; }
.post_comments { display:inline-block; vertical-align:middle; margin-left:5px; color:var(--color-point); font-size:13px; font-weight:500; line-height:1; }
.post_card_title > img { vertical-align:middle; }
.post_trackback { margin-left:5px; color:#8c9196; font-size:12px; }
/* ===== Post Meta ===== */
.post_card_meta { order:3; flex:0 0 auto; display:flex; align-items:center; gap:8px; color:#74797e; font-size:13px; font-weight:400; }
.post_author { color:#8d9297; }
.post_date { color:#74797e; }
/* ===== Views ===== */
.post_views { order:4; position:static; flex:0 0 auto; display:flex; align-items:center; justify-content:flex-end; gap:0px; min-width:30px; margin-left:auto; color:#83888d; font-size:12px; line-height:1; text-align:right; }
.post_views::before { content:""; display:block; flex:0 0 25px; width:25px; height:25px; margin:0; background:url("./icon-view.png") center/35px auto no-repeat; filter:brightness(1.8); }
html[data-theme="light"] .post_views::before { filter:none; }
.post_votes { order:5; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:flex-end; gap:5px; min-width:35px; margin-left:0; color:#83888d; font-size:12px; line-height:1; white-space:nowrap; }
.post_vote_icon { display:block; flex:none; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round;     }
html[data-theme="light"] .post_votes { color:#999; }
/* ===== Manager Checkbox ===== */
.post_check { display:none; }
/* ===== Empty List ===== */
.no_documents, .empty_list { padding:96px 20px; color:#74797e; font-size:15px; text-align:center; }
/* ===== List Footer ===== */
.list_footer { margin-top:32px; }
/* ===== Pagination ===== */
.list_footer .pagination { display:flex; justify-content:center; align-items:center; gap:6px; margin-bottom:24px; }
.list_footer .pagination a, .list_footer .pagination strong { display:inline-flex; align-items:center; justify-content:center; min-width:38px; height:38px; padding:0 12px; border-radius:var(--radius-9); color:#8d9297; font-size:14px; text-decoration:none; transition:background .15s ease,color .15s ease; }
.list_footer .pagination strong { background:#291D0D; color:#EEA830; font-weight:500; }
.list_footer .pagination a:hover, .list_footer .pagination a:focus { background:#181a1c; color:#fff; }
.list_footer .pagination a.direction { background:transparent !important; border:0 !important; box-shadow:none !important; color:#8d9297; font-size:0; }
.list_footer .pagination a.direction span { display:none; }
.list_footer .pagination a.direction::before { font-size:18px; line-height:1; }
.list_footer .pagination a.direction.prev::before { content:"«"; }
.list_footer .pagination a.direction.next::before { content:"»"; }
.list_footer .pagination a.direction:hover, .list_footer .pagination a.direction:focus { background:#181a1c !important; color:var(--color-point); }

/* ===== Write Button ===== */
.list_footer .btnArea { display:flex; justify-content:flex-end; gap:8px; margin-bottom:24px; }
.list_footer .btnArea .btn:first-child { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; min-height:44px; padding:0; overflow:hidden; border:0; border-radius:var(--radius-11); background:var(--color-point); color:transparent; font-size:0; line-height:0; text-decoration:none; }
.list_footer .btnArea .btn:first-child::before { transform:scale(1.5); content:""; display:block; width:20px; height:20px; background-color:#111; -webkit-mask-image:url("./icon-write.png"); mask-image:url("./icon-write.png"); -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; }

/* ===== Board Search ===== */
.list_footer .board_search { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:24px; }
.list_footer .board_search .iText { width:260px; height:42px; padding:0 16px; border:1px solid #2a2d30; border-radius:var(--radius-12); background:#101214; color:#f2f2f2; box-sizing:border-box; }
.list_footer .board_search select { height:42px; padding:0 12px; border:1px solid #2a2d30; border-radius:var(--radius-12); background:#101214; color:#f2f2f2; }
.list_footer .board_search .btn { height:42px; padding:0 18px; border:1px solid #2e3134; border-radius:var(--radius-12); background:#181a1c; color:#f2f2f2; font-weight:500; cursor:pointer; }
.list_footer .board_search .btn:hover { border-color:var(--color-point); color:var(--color-point); }
.list_footer .bsToggle { display:block; margin:0 auto 16px; border:0; background:none; color:#74797e; font-size:13px; cursor:pointer; }
.list_footer .tagSearch { display:block; margin-top:16px; color:#74797e; font-size:13px; text-align:center; text-decoration:none; }
/* ===== Footer ===== */
.footer { padding:40px 0 56px; border-top:1px solid #202224; background:#0b0c0d; color:#686d72; }
.footer p { margin:0; font-size:13px; line-height:1.7; }
.footer a { color:#898e93; text-decoration:none; }
.footer a:hover, .footer a:focus { color:var(--color-point); text-decoration:none; }
.footer>p { width:1200px; max-width:calc(100% - 48px); margin-left:auto; margin-right:auto; }
/* ===== GNB Submenu Fix ===== */
.gnb>ul>li>ul { display:none !important; height:auto !important; overflow:visible !important; }
.gnb>ul>li:hover>ul { display:block !important; }
.gnb.open>ul>li:hover>ul { display:block !important; }
/* ===== Font Fix ===== */
.post_card, .post_card *, .list_footer .btnArea, .list_footer .btnArea *, .list_footer .pagination, .list_footer .pagination * { font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",Arial,sans-serif; }
/* ===== CKEditor Theme Loading ===== */
.cke_wysiwyg_frame { visibility:hidden; }
.cke_wysiwyg_frame[data-theme-ready="true"] { visibility:visible; }
#fo_login_widget>.login-user { display:inline-flex; align-items:center; justify-content:center; gap:8px; height:38px; margin:0; padding:0 16px; border:1px solid #2c3034; border-radius:var(--radius-13); background:#101214; color:#f2f2f2; font-size:13px; font-weight:500; line-height:1; text-decoration:none; white-space:nowrap; transition:background .18s ease,color .18s ease,border-color .18s ease; }
#fo_login_widget>.login-user::before { content:""; display:block; flex:0 0 auto; width:17px; height:17px; background-color:#f2f2f2; -webkit-mask:url("./icon-user.png") center/contain no-repeat; mask:url("./icon-user.png") center/contain no-repeat; }
#fo_login_widget>.login-user:hover,#fo_login_widget>.login-user:focus { border-color:#454a4f; background:#17191b; color:#fff; outline:none; }


.read_header .post_vote_icon{margin-right: 6px; margin-top: 2px; }
/* =========================================================
   LIGHT MODE
   ========================================================= */
html[data-theme="light"] .theme_toggle { border-color:#e3e3e3; background:#fff; color:#737373; }
html[data-theme="light"] .theme_toggle::before { content:"\263E"; }
html[data-theme="light"] .theme_toggle:hover { border-color:var(--color-point); background:#fff7f4; color:var(--color-point); }
html[data-theme="light"] .theme_toggle:focus { border-color:#bfc3c6; background:#f7f7f7; color:#555; outline:none; }
/* ===== Light: Reset ===== */
html[data-theme="light"], html[data-theme="light"] body { background:#fafafa; }
html[data-theme="light"] body { color:#111; }
/* ===== Light: Header ===== */
html[data-theme="light"] .header { background:#fafafa; border-bottom:none; }
html[data-theme="light"] .header>h1>a { color:#111; }
html[data-theme="light"] .header .account .info a { border-color:#e3e3e3; background:#fff; color:#222; }
html[data-theme="light"] .header .account .info a:hover, html[data-theme="light"] .header .account .info a:focus { border-color:#c8c8c8; background:#f7f7f7; color:#111; }
html[data-theme="light"] .header .account .info .logout { border-color:var(--color-point); color:var(--color-point); }
html[data-theme="light"] .header .account .info .logout:hover, html[data-theme="light"] .header .account .info .logout:focus { border-color:var(--color-point); background:#fff7f4; color:var(--color-point); }
html[data-theme="light"] .header .search>input[type="text"] { border-color:#e3e3e3; background:#f7f7f7; color:#222; }
html[data-theme="light"] .header .search>input[type="text"]::placeholder { color:#999; }
html[data-theme="light"] .header .search>input[type="text"]:focus { border-color:#aeb2b6; background:#fff; box-shadow:none; }
/* ===== Light: GNB ===== */
html[data-theme="light"] .gnb { border-top:1px solid #eee; background:#fff; }
html[data-theme="light"] .gnb>ul { background:#fff; }
html[data-theme="light"] .gnb.open>ul { border-bottom:1px solid #e8e8e8; }
html[data-theme="light"] .gnb>ul>li>a { color:#777; }
html[data-theme="light"] .gnb>ul>li.active>a, html[data-theme="light"] .gnb>ul>li.hover>a, html[data-theme="light"] .gnb>ul>li>a:hover, html[data-theme="light"] .gnb>ul>li>a:focus { color:#111; }
html[data-theme="light"] .gnb ul ul { border-color:#e5e5e5; background:#fff; box-shadow:0 16px 32px rgba(0,0,0,.1); }
html[data-theme="light"] .gnb ul ul a { color:#737373; }
html[data-theme="light"] .gnb ul ul a:hover, html[data-theme="light"] .gnb ul ul a:focus { background:rgba(var(--color-point-rgb),.08); color:var(--color-point); }
/* ===== Light: Main ===== */
html[data-theme="light"] .site-main { background:#fafafa; }
html[data-theme="light"] .body.sub .content { color:#222; }
html[data-theme="light"] .body.sub .content h1, html[data-theme="light"] .body.sub .content h2, html[data-theme="light"] .body.sub .content h3 { color:#111; font-weight: 500;}
/* ===== Light: LNB ===== */
html[data-theme="light"] .body.sub .lnb>h1>a { color:#111; }
html[data-theme="light"] .body.sub .lnb>ul { border-color:#e6e6e6; background:#fff; box-shadow:0 12px 35px rgba(0,0,0,.03); }
html[data-theme="light"] .body.sub .lnb ul a { color:#777; }
html[data-theme="light"] .body.sub .lnb>ul>li>a:hover, html[data-theme="light"] .body.sub .lnb>ul>li>a:focus { background:#f7f7f7; color:#111; }
html[data-theme="light"] .body.sub .lnb>ul>li.active>a { background:rgba(var(--color-point-rgb),.08); color:var(--color-point); }
html[data-theme="light"] .body.sub .lnb li li>a { color:#8c8c8c; }
html[data-theme="light"] .body.sub .lnb li li.active>a, html[data-theme="light"] .body.sub .lnb li li>a:hover, html[data-theme="light"] .body.sub .lnb li li>a:focus { background:#f7f7f7; color:var(--color-point); }
/* ===== Light: Forms ===== */
html[data-theme="light"] .body.sub .content input[type="text"], html[data-theme="light"] .body.sub .content input[type="password"], html[data-theme="light"] .body.sub .content input[type="email"], html[data-theme="light"] .body.sub .content textarea, html[data-theme="light"] .body.sub .content select { border-color:#ddd; background:#fff; color:#111; }
html[data-theme="light"] .body.sub .content input::placeholder, html[data-theme="light"] .body.sub .content textarea::placeholder { color:#a3a3a3; }
html[data-theme="light"] .body.sub .content input[type="text"]:focus, html[data-theme="light"] .body.sub .content input[type="password"]:focus, html[data-theme="light"] .body.sub .content input[type="email"]:focus, html[data-theme="light"] .body.sub .content textarea:focus, html[data-theme="light"] .body.sub .content select:focus { border-color:#aeb2b6; background:#fff; box-shadow:none; outline:none; }
/* ===== Light: Buttons ===== */
html[data-theme="light"] .body.sub .content button, html[data-theme="light"] .body.sub .content input[type="submit"], html[data-theme="light"] .body.sub .content input[type="button"] { font-family:"Pretendard",sans-serif; border-color:#ddd; background:#f7f7f7; color:#222; }
/* ===== Light: Board ===== */
html[data-theme="light"] .board_list { background:#fafafa; box-shadow:none; }
html[data-theme="light"] .post_list { background:#fafafa; }
html[data-theme="light"] .post_card { border-bottom-color:#ededed; background:#fafafa; }
html[data-theme="light"] .post_number { border-color:#ececec; background:#f5f5f5; color:#777; }
html[data-theme="light"] .post_badge { border-color:rgba(var(--color-point-rgb),.18); background:rgba(var(--color-point-rgb),.08); color:#ed5b28; }
html[data-theme="light"] .post_card_title { color:#222; }
html[data-theme="light"] .post_card:hover .post_card_title { color:#111; }
html[data-theme="light"] .post_card_meta, html[data-theme="light"] .post_author { color:#888; }
html[data-theme="light"] .post_date { color:#999; }
html[data-theme="light"] .post_views, html[data-theme="light"] .post_views::before { color:#999; }
html[data-theme="light"] .no_documents, html[data-theme="light"] .empty_list { background:#fafafa; color:#999; }
/* ===== Light: Pagination ===== */
html[data-theme="light"] .list_footer .pagination a { color:#888; }
html[data-theme="light"] .list_footer .pagination strong { background:rgba(var(--color-point-rgb),.08); color:var(--color-point); }
html[data-theme="light"] .list_footer .pagination a:hover, html[data-theme="light"] .list_footer .pagination a:focus { background:#f1f1f1; color:#111; }
html[data-theme="light"] .list_footer .pagination a.direction { color:#777; }
html[data-theme="light"] .list_footer .pagination a.direction:hover, html[data-theme="light"] .list_footer .pagination a.direction:focus { background:#f1f1f1 !important; color:var(--color-point); }
/* ===== Light: Search ===== */
html[data-theme="light"] .list_footer .board_search .iText, html[data-theme="light"] .list_footer .board_search select { border-color:#ddd; background:#fff; color:#111; }
html[data-theme="light"] .list_footer .board_search .btn { border-color:#ddd; background:#f7f7f7; color:#222; }
/* ===== Light: Footer ===== */
html[data-theme="light"] .footer { border-top:1px solid #eaeaea; background:#fff; color:#aaa; }
html[data-theme="light"] .footer a { color:#737373; }
html[data-theme="light"] .footer a:hover, html[data-theme="light"] .footer a:focus { color:var(--color-point); }
html[data-theme="light"] .header .account .info .user::before,
html[data-theme="light"] .header .account .info .admin::before { background-color:#222; }
html[data-theme="light"] .header .account .info .logout::before { background-color:var(--color-point); }
html[data-theme="light"] #fo_login_widget>.login-user { border-color:#e3e3e3; background:#fff; color:#222;  }
html[data-theme="light"] #fo_login_widget>.login-user::before { background-color:#222; }
html[data-theme="light"] #fo_login_widget>.login-user:hover,html[data-theme="light"] #fo_login_widget>.login-user:focus { border-color:#c8c8c8; background:#f7f7f7; color:#111; }
html[data-theme="light"] .header .search_icon { background-color:#222; }
html[data-theme="light"] .list_footer .btnArea .btn:first-child::before { background-color:#111; }

/* PC 숨김처리 */
.footer_inner .theme_toggle,
.header_left .mobile_menu_toggle,
.mobile_menu,
.mobile_menu_dim { display:none; }
/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1248px){
.gnb { display:block; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; -ms-overflow-style:none; }
.gnb::-webkit-scrollbar { display:none; }
.gnb>ul { display:flex; width:max-content; min-width:0; height:56px; flex-wrap:nowrap; }
.gnb>ul>li { display:block; flex:none; }
.gnb>ul>li>a { display:flex; flex:none; white-space:nowrap; }
}
@media (max-width:900px){
.header { padding:0; }
.header>h1 { position:static; transform:none; order:-1; flex:0 0 100%; padding:20px 0 12px; text-align:center; }
.header>.header_left,.header>.side { height:auto; margin-bottom:14px; }
.gnb { margin:0; }
.header .search>input[type="text"] { width:150px; }
.gnb>ul>li>a { padding:0 16px; }
.gnb>ul>li.active>a::before { left:16px; right:16px; }
.body.main,.body.sub { padding-top:32px; }

/* 모바일 LNB */
.body.sub .lnb { float:none; width:100%; margin:0 0 24px; }

/* LNB 제목 */
.body.sub .lnb>h1 { margin:0 0 8px; padding:0; }
.body.sub .lnb>h1>a { display:block; padding:0; color:#f2f2f2; font-size:18px; font-weight:600; line-height:1.4; text-decoration:none; }

/* GNB처럼 가로 나열 + 스크롤 */
.body.sub .lnb>ul { display:flex; flex-wrap:nowrap; align-items:center; gap:0; width:100%; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.body.sub .lnb>ul::-webkit-scrollbar { display:none; }

/* 각 메뉴 */
.body.sub .lnb>ul>li { flex:0 0 auto; width:auto; margin:0; padding:0; border:0; }
.body.sub .lnb>ul>li>a { position:relative; display:flex; align-items:center; width:auto; height:48px; margin:0; padding:0 16px; border:0; border-radius:0; background:transparent; color:#9ba1a6; font-size:14px; font-weight:400; line-height:48px; text-align:center; text-decoration:none; white-space:nowrap; }

/* 첫 번째 메뉴 왼쪽 여백 제거 */
.body.sub .lnb>ul>li:first-child>a { padding-left:0; }


/* hover */
.body.sub .lnb>ul>li>a:hover,.body.sub .lnb>ul>li>a:focus { background:transparent; color:#f2f2f2; }

/* 활성 메뉴 */
.body.sub .lnb>ul>li.active>a { background:transparent; color:var(--color-point); font-weight:600; }

.body.sub .lnb>ul>li.active>a::before { display:none; }
.body.sub .lnb>ul>li.active>a::after { content:""; position:absolute; right:16px; bottom:0; left:16px; height:2px; border-radius:2px; background:var(--color-point); }
.body.sub .lnb>ul>li:first-child.active>a::after { left:0; }

/* 3차 메뉴 숨김 */
.body.sub .lnb>ul>li>ul { display:none; }

/* 본문 */
.body.sub .content { float:none; width:100%; padding-top:0; }


.read_header .post_vote_icon{ margin-top: 3px; margin-right: 5px;}
.post_vote_icon { display:block; flex:none; width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round;     margin-right: 0px;
margin-top: 0px;}

/* 라이트모드 */
html[data-theme="light"] .body.sub .lnb>h1>a { color:#222; }
html[data-theme="light"] .body.sub .lnb>ul { background:transparent; }
html[data-theme="light"] .body.sub .lnb>ul>li>a { background:transparent; color:#777; }
html[data-theme="light"] .body.sub .lnb>ul>li>a:hover,html[data-theme="light"] .body.sub .lnb>ul>li>a:focus { background:transparent; color:#222; }
html[data-theme="light"] .body.sub .lnb>ul>li.active>a { background:transparent; color:var(--color-point); }



/* MO 블록처리 */
.footer_inner .theme_toggle,
.header_left .mobile_menu_toggle,
.mobile_menu,
.mobile_menu_dim { display:block; }


/* MO 숨김처리 */
.header_left .theme_toggle { display:none; }



}
/* ===== Mobile Header ===== */
@media (max-width:600px){
.container,.footer>p { max-width:calc(100% - 32px); }
.header { position:relative; display:grid; grid-template-columns:1fr; grid-template-rows:44px auto auto; align-items:center; width:100%; padding:16px 0 0; }
.header>.header_left { position:absolute; z-index:3; top:16px; left:0; display:flex; align-items:center; justify-content:center; width:32px; height:44px; margin:0; }
.theme_toggle { display:flex; align-items:center; justify-content:center; width:30px; height:30px; margin:0; padding:0; border:0; border-radius:8px; background:transparent; }
.theme_toggle:hover,.theme_toggle:focus { border:0; background:rgba(255,255,255,.05); }
.header>h1 { position:absolute; z-index:1; top:16px; left:50%; width:auto; height:44px; margin:0; padding:0; transform:translateX(-50%); text-align:center; }
.header>h1>a { display:flex; align-items:center; justify-content:center; width:auto; height:44px; }
.header>h1 img { display:block; width:140px; max-width:none; height:auto; margin:0; }
.header>.side { display:contents; }
.header .account { position:absolute; z-index:100; top:16px; right:0; width:auto; height:44px; margin:0; }
.header .account .info { display:flex; align-items:center; justify-content:flex-end; width:auto; height:44px; gap:1px; margin:0; padding:0; }
.header .account .info>li { flex:none; min-width:0; margin:0; padding:0; }
.header .account .info a { display:flex; align-items:center; justify-content:center; width:28px; min-width:28px; height:28px; margin:0; padding:0; overflow:hidden; border:0; border-radius:7px; background:transparent; box-shadow:none; color:transparent; font-size:0; line-height:1; }
.header .account .info a::before { width:16px; height:16px; }
.header .account .info .user { width:24px; min-width:24px; height:28px; padding:0; color:transparent; font-size:0; }
.header .account .info .user::before { width:16px; height:16px; }
.header .account .info .admin,.header .account .info .logout { width:24px; min-width:24px; height:28px; padding:0; color:transparent; font-size:0; }
.header .account .info .admin::before,.header .account .info .logout::before { width:16px; height:16px; }
.header .account .info .admin::before { background-color:#a9adb1; }
.header .account .info .logout::before { background-color:var(--color-point); }
.header .account .info a:hover,.header .account .info a:focus { border:0; background:rgba(255,255,255,.05); }
.header .search { grid-column:1; grid-row:2; position:relative; display:flex; align-items:center; width:100%; margin:14px 0 16px; }
.header .search_icon { left:16px; top:50%; width:21px; height:21px; }
.header .search>input[type="text"] { width:100%; height:44px; padding:0 44px 0 42px; border-radius:13px; }
.header .search>input[type="submit"] { width:44px; height:44px; margin-left:-44px; }
.gnb { grid-column:1; grid-row:3; width:100%; height:52px; }
.gnb>ul { height:52px; }
.gnb>ul>li>a { height:52px; padding:0 14px; font-size:14px; }
.gnb>ul>li.active>a::before { left:14px; right:14px; }
html[data-theme="light"] .theme_toggle { border:0; background:transparent; }
html[data-theme="light"] .theme_toggle:hover,html[data-theme="light"] .theme_toggle:focus { border:0; background:rgba(0,0,0,.04); }
html[data-theme="light"] .header .account .info a { border:0; background:transparent; }
html[data-theme="light"] .header .account .info .user::before { background-color:#333; }
html[data-theme="light"] .header .account .info .admin::before { background-color:#555; }
html[data-theme="light"] .header .account .info .logout::before { background-color:var(--color-point); }
html[data-theme="light"] .header .account .info a:hover,html[data-theme="light"] .header .account .info a:focus { background:rgba(0,0,0,.04); }
#fo_login_widget>.login-user { width:28px; min-width:28px; height:28px; padding:0; border:0; border-radius:7px; background:transparent; color:transparent; font-size:0; margin-top:8px;}
#fo_login_widget>.login-user::before { width:16px; height:16px; }
.body.sub{ padding-bottom:20px }
.body.main,.body.sub { padding-top:24px; }
.body.sub .content { padding-bottom:56px; }
.post_card_link { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:4px 8px; padding:10px 0; }
.post_number, .post_badge { grid-column:1; grid-row:1; }
.post_card_title { grid-column:2 / 5; grid-row:1; min-width:0; }
.post_card_meta { grid-column:2; grid-row:2; display:block; min-width:0; margin-left:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.post_views { grid-column:3; grid-row:2; margin-left:0; min-width:0; white-space:nowrap; padding-top:2px;}
.post_votes { grid-column:4; grid-row:2; margin-left:0; min-width:0; }
.list_footer .board_search { flex-wrap:wrap; }
.list_footer .board_search .iText { width:100%; }
.list_footer .btnArea { justify-content:center; }
.footer { padding:40px 0 56px; border-top:1px solid #202224; background:#0b0c0d; color:#686d72; }
.footer_inner { display:flex; align-items:center; justify-content:space-between; width:1200px; max-width:calc(100% - 48px); margin:0 auto; }
.footer_inner p { margin:0; font-size:13px; line-height:1.7; }
.footer_inner a { color:#898e93; text-decoration:none; }
.footer_inner a:hover,.footer_inner a:focus { color:var(--color-point); text-decoration:none; }
.footer .theme_toggle { flex:0 0 auto; }
}
/* 모바일 햄버거메뉴 */
@media (max-width:900px){
.header .search { display:none; }
.theme_toggle_header { display:none; }
.mobile_menu_toggle { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; width:36px; height:36px; margin:0; padding:0; border:0; border-radius:8px; background:transparent; box-shadow:none; cursor:pointer; appearance:none; -webkit-appearance:none; }
.mobile_menu_toggle span { display:block; flex:0 0 auto; width:15px; height:1px; margin:5px 0px; padding:0; border:0; border-radius:0px; background:#e7e6e7; box-shadow:none; opacity:1; transform:none; transition:background .18s ease; }
.mobile_menu_toggle:hover,.mobile_menu_toggle:focus { border:0; background:rgba(255,255,255,.05); box-shadow:none; outline:none; }
.gnb { display:none; }
.mobile_menu_dim { display:block; position:fixed; z-index:9997; inset:0; background:rgba(0,0,0,.58); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .25s ease,visibility .25s ease; }
.mobile_menu_dim.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.mobile_menu { display:flex; position:fixed; z-index:9998; top:0; left:0; flex-direction:column; width:min(82vw,320px); height:100vh; height:100dvh; margin:0; padding:0; background:#101214; box-shadow:12px 0 40px rgba(0,0,0,.35); transform:translateX(-100%); visibility:hidden; transition:transform .28s ease,visibility .28s ease; }
.mobile_menu.is-open { transform:translateX(0); visibility:visible; }
.mobile_menu_header { display:flex; flex:0 0 auto; align-items:center; justify-content:space-between; height:55px; padding:0 20px;}
.mobile_menu_header strong { color:#f2f2f2; font-size:14px; font-weight:400; letter-spacing:.5px; }
.mobile_menu_close { position:relative; width:32px; height:32px; margin:0; padding:0; border:0; border-radius:8px; background:transparent; box-shadow:none; cursor:pointer; appearance:none; -webkit-appearance:none; }
.mobile_menu_close span { position:absolute; top:15px; left:7px; display:block; width:18px; height:2px; margin:0; padding:0; border:0; border-radius:2px; background:#f2f2f2; }
.mobile_menu_close span:first-child { transform:rotate(45deg); }
.mobile_menu_close span:last-child { transform:rotate(-45deg); }
.mobile_menu_close:hover,.mobile_menu_close:focus { border:0; background:rgba(255,255,255,.05); box-shadow:none; outline:none; }
.mobile_menu_nav { flex:1; min-height:0; padding:14px 12px; overflow-y:auto; -webkit-overflow-scrolling:touch; }
.mobile_menu_nav ul { margin:0; padding:0; list-style:none; }
.mobile_menu_nav>ul>li { margin:0 0 4px; padding:0; }
.mobile_menu_nav>ul>li>a { display:flex; align-items:center; min-height:48px; padding:0 14px; border-radius:10px; color:#d9dcdf; font-size:15px; font-weight:500; text-decoration:none; }
.mobile_menu_nav>ul>li>a:hover,.mobile_menu_nav>ul>li.active>a { background:rgba(var(--color-point-rgb),.1); color:var(--color-point); }
.mobile_menu_nav>ul>li>ul { display:block; position:static; width:auto; height:auto; margin:2px 0 8px; padding:0 0 0 12px; border:0; background:transparent; box-shadow:none; opacity:1; visibility:visible; }
.mobile_menu_nav>ul>li>ul>li { display:block; float:none; width:auto; height:auto; margin:0; padding:0; }
.mobile_menu_nav>ul>li>ul>li>a { display:flex; align-items:center; width:auto; min-height:40px; padding:0 14px; border-radius:8px; background:transparent; color:#777d82; font-size:14px; font-weight:400; line-height:normal; text-decoration:none; }
.mobile_menu_nav>ul>li>ul>li>a:hover,.mobile_menu_nav>ul>li>ul>li.active>a { background:#181a1c; color:var(--color-point); }
.mobile_menu_nav>ul>li>ul>li>ul { display:block; position:static; width:auto; height:auto; margin:0 0 6px; padding:0 0 0 14px; border:0; background:transparent; box-shadow:none; opacity:1; visibility:visible; }
.mobile_menu_nav>ul>li>ul>li>ul>li { display:block; float:none; width:auto; height:auto; margin:0; padding:0; }
.mobile_menu_nav>ul>li>ul>li>ul>li>a { display:flex; align-items:center; min-height:36px; padding:0 14px; color:#686d72; font-size:13px; font-weight:400; text-decoration:none; }
.mobile_menu_nav>ul>li>ul>li>ul>li>a:hover,.mobile_menu_nav>ul>li>ul>li>ul>li.active>a { color:var(--color-point); }
html[data-theme="light"] .mobile_menu_toggle span { background:#222; }
html[data-theme="light"] .mobile_menu_toggle:hover,html[data-theme="light"] .mobile_menu_toggle:focus { background:rgba(0,0,0,.04); }
html[data-theme="light"] .mobile_menu { background:#fff; box-shadow:12px 0 40px rgba(0,0,0,.12); }
html[data-theme="light"] .mobile_menu_header { border-bottom-color:#ededed; }
html[data-theme="light"] .mobile_menu_header strong { color:#111; }
html[data-theme="light"] .mobile_menu_close span { background:#222; }
html[data-theme="light"] .mobile_menu_close:hover,html[data-theme="light"] .mobile_menu_close:focus { background:rgba(0,0,0,.04); }
html[data-theme="light"] .mobile_menu_nav>ul>li>a { color:#333; }
html[data-theme="light"] .mobile_menu_nav>ul>li>a:hover,html[data-theme="light"] .mobile_menu_nav>ul>li.active>a { background:rgba(var(--color-point-rgb),.08); color:var(--color-point); }
html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li>a { color:#888; }
html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li>a:hover,html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li.active>a { background:#f7f7f7; color:var(--color-point); }
html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li>ul>li>a { color:#999; }
html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li>ul>li>a:hover,html[data-theme="light"] .mobile_menu_nav>ul>li>ul>li>ul>li.active>a { color:var(--color-point); }
body.mobile_menu_open { overflow:hidden; }
.mobile_menu_search { position:relative; display:flex; align-items:center; margin:0px 12px 30px; }
.mobile_menu_search::after { content:""; position:absolute; left:-12px; right:-12px; bottom:-20px; height:1px; background:#25282b; }
.mobile_menu_search_icon { position:absolute; z-index:1; left:12px; top:50%; width:22px; height:22px; transform:translateY(-50%); background-color:#f2f2f2; -webkit-mask-image:url("./icon-search.png"); mask-image:url("./icon-search.png"); -webkit-mask-position:center; mask-position:center; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; pointer-events:none; }
.mobile_menu_search>input[type="text"] { width:100%; height:44px; margin:0; padding:0 44px 0 44px; border:1px solid #292c2f; border-radius:var(--radius-13); background:#111315; color:#d0d0d0; font-size:13px; outline:none; }
.mobile_menu_search>input[type="text"]::placeholder { color:#777b80; }
.mobile_menu_search>input[type="text"]:focus { border-color:#555b60; background:#151719; }
.mobile_menu_search>input[type="submit"] { position:absolute; right:0; top:0; width:44px; height:44px; margin:0; padding:0; border:0; background:transparent; color:transparent; cursor:pointer; opacity:0; }
html[data-theme="light"] .mobile_menu_search_icon { background-color:#222; }
html[data-theme="light"] .mobile_menu_search>input[type="text"] { border-color:#e3e3e3; background:#f7f7f7; color:#222; }
html[data-theme="light"] .mobile_menu_search>input[type="text"]::placeholder { color:#999; }
html[data-theme="light"] .mobile_menu_search>input[type="text"]:focus { border-color:#aeb2b6; background:#fff; }
}
/* 홈 최신 글 */
/* Extra banners live beside home-posts, outside the welcome widget. */
.body.home-banner-page .content > .home-banner-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; width:1200px; max-width:100%; margin:24px auto 0; clear:both; box-sizing:border-box; }
.body.home-banner-page .content > .home-banner-grid > .home-banner-item { position:relative; aspect-ratio:3 / 1; min-width:0; overflow:hidden; }
.body.home-banner-page .content > .home-banner-grid .home-banner-placeholder { position:absolute; inset:0; display:block; width:100% !important; height:100% !important; max-width:100%; margin:0; object-fit:contain; }
@media (max-width:600px) {
    .body.home-banner-page .content > .home-banner-grid { gap:6px; margin-top:16px; }
}
.home-posts { display:grid; grid-template-columns:3fr 2fr; gap:20px; width:1200px; max-width:100%; margin:28px auto 0; }
.body .content > .home-posts {  display:flex; flex-direction: column;  clear:both; margin-top:0; padding-top:36px; }
.home-post-panel { min-width:0; padding:20px; border:1px solid #34393f; border-radius:12px; background:#101214; }
.body.sub .content .home-post-panel h2 { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 14px; font-size:18px; color:#f2f2f2; }
.body.sub .content .home-post-panel h2 a { flex-shrink:0; font-size:12px; font-weight:400; color:#b3bac3; text-decoration:none; }
.home-post-list { margin:0; padding:0; list-style:none; }
.home-post-list li + li { border-top:1px solid #292d32; }
.home-post-list a { display:flex; align-items:center; gap:6px; min-height:46px; padding:10px 0; text-decoration:none; }
.home-post-board { flex:0 0 auto; max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; color:#efaa27; }
.home-post-title { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; color:#e9edf1; }
.home-post-date { flex:0 0 auto; color:#b3bac3; font-size:12px; }
.home-post-list time.home-post-date { flex:0 0 32px; width:32px; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.home-post-votes + time.home-post-date { margin-left:-2px; }
.home-post-rank { flex:0 0 16px; width:16px; text-align:center; font-size:13px; font-weight:600; color:#929aa4; }
.home-post-rank-1 { color:#efaa27; }
.home-post-rank-2 { color:#c0c8d2; }
.home-post-rank-3 { color:#cd9164; }
html[data-theme="light"] .home-post-rank { color:#626b76; }
html[data-theme="light"] .home-post-rank-1 { color:#946000; }
html[data-theme="light"] .home-post-rank-2 { color:#687789; }
html[data-theme="light"] .home-post-rank-3 { color:#9b6037; }
.home-post-votes { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.home-post-votes { flex:0 0 auto; min-width:28px; font-variant-numeric:tabular-nums; }
.home-post-list a:hover .home-post-title { color:#efaa27; }
.home-post-list a:focus-visible { outline:2px solid #efaa27; outline-offset:2px; }
.home-post-empty { margin:0; padding:18px 0; color:#b3bac3; font-size:14px; }
html[data-theme="light"] .home-post-panel { background:#fff; border-color:#d5d9de; }
html[data-theme="light"] .body.sub .content .home-post-panel h2,
html[data-theme="light"] .home-post-title { color:#222; }
html[data-theme="light"] .home-post-list li + li { border-color:#e5e8ec; }
html[data-theme="light"] .home-post-date,
html[data-theme="light"] .home-post-empty,
html[data-theme="light"] .body.sub .content .home-post-panel h2 a { color:#626b76; }
html[data-theme="light"] .home-post-board { color:#946000; }
@media all and (max-width:600px) {
    .home-post-list a { gap:6px; }
    .home-posts { grid-template-columns:1fr; gap:14px; margin-top:20px; }
    .body .content > .home-posts { margin-top:0; padding-top:24px; }
    .home-post-panel { padding:16px; }
    .home-post-board { max-width:80px; }
}

/* CKEditor dialogs load skin CSS on demand; keep text and fields readable. */
body .cke_dialog { color-scheme:light; }
body .cke_dialog .cke_dialog_body,
body .cke_dialog .cke_dialog_contents,
body .cke_dialog .cke_dialog_contents_body { background:#fff !important; color:#222 !important; }
body .cke_dialog .cke_dialog_title,
body .cke_dialog .cke_dialog_footer { background:#f5f6f7 !important; color:#222 !important; border-color:#ccc !important; }
body .cke_dialog .cke_dialog_tabs { background:#fff !important; }
body .cke_dialog a.cke_dialog_tab { background:#f5f6f7 !important; color:#555 !important; border-color:#ccc !important; }
body .cke_dialog a.cke_dialog_tab_selected { background:#fff !important; color:#a85c00 !important; }
body .cke_dialog .cke_dialog_contents label,
body .cke_dialog .cke_dialog_ui_labeled_label,
body .cke_dialog .cke_dialog_ui_html { color:#222 !important; }
body .cke_dialog input.cke_dialog_ui_input_text,
body .cke_dialog input.cke_dialog_ui_input_password,
body .cke_dialog textarea.cke_dialog_ui_input_textarea,
body .cke_dialog select.cke_dialog_ui_input_select { background:#fff !important; color:#222 !important; border-color:#999 !important; -webkit-text-fill-color:#222; }
body .cke_dialog input::placeholder,
body .cke_dialog textarea::placeholder { color:#666 !important; -webkit-text-fill-color:#666; }
body .cke_dialog input.cke_dialog_ui_input_text:focus,
body .cke_dialog textarea.cke_dialog_ui_input_textarea:focus,
body .cke_dialog select.cke_dialog_ui_input_select:focus { border-color:#1677cc !important; outline:2px solid #1677cc; outline-offset:1px; }
body .cke_dialog .cke_dialog_ui_input_text[disabled],
body .cke_dialog .cke_dialog_ui_input_select[disabled] { background:#eee !important; color:#666 !important; -webkit-text-fill-color:#666; }
body .cke_dialog a.cke_dialog_ui_button { background:#f5f6f7 !important; color:#222 !important; border-color:#999 !important; }
body .cke_dialog a.cke_dialog_ui_button span { color:inherit !important; text-shadow:none !important; }
body .cke_dialog a.cke_dialog_ui_button_ok { background:#087f3e !important; color:#fff !important; border-color:#087f3e !important; }