/* CORIN2 community boards: presentation only, shared light/dark home palette. */
.cp-wrap:has(#content .board) {
  --cp-bg:#f2f6fc; --cp-panel:#fff; --cp-head-bg:#fff; --cp-soft-bg:#f4f7fc;
  --cp-ink:#192b43; --cp-sub:#617187; --cp-faint:#748399;
  --cp-line:#e6ecf4; --cp-line2:#d7e1ef;
  --cp-brand:#1768d7; --cp-brand-h:#1058bb; --cp-brand-ink:#fff;
  --cp-brand-soft:#eaf2ff; --cp-brand-border:#cddff6; --cp-link:#1768d7;
  --cp-radius:12px; --cp-shadow:0 3px 16px rgba(32,65,106,.035);
  min-height:100vh; background:var(--cp-bg); color:var(--cp-ink);
}
html.dark .cp-wrap:has(#content .board),html.rx_dark .cp-wrap:has(#content .board) {
  --cp-bg:#0e1520; --cp-panel:#172130; --cp-head-bg:#121c29; --cp-soft-bg:#1d2b3e;
  --cp-ink:#e5edf8; --cp-sub:#a5b4c9; --cp-faint:#91a3bb;
  --cp-line:#2a384c; --cp-line2:#364960;
  --cp-brand:#82b8ff; --cp-brand-h:#a6ceff; --cp-brand-ink:#132f50;
  --cp-brand-soft:#203954; --cp-brand-border:#365475; --cp-link:#82b8ff; --cp-shadow:none;
}
.cp-wrap:has(#content .board) .cp-head { border-bottom:1px solid var(--cp-line); }
.cp-wrap:has(#content .board) .cp-head-inner,
.cp-wrap:has(#content .board) .cp-foot-inner,
.cp-wrap:has(#content .board) .cp-shell { max-width:1680px; }
.cp-wrap:has(#content .board) .cp-head-search,
.cp-wrap:has(#content .board) .cp-theme-btn { border-radius:8px; }
.cp-wrap:has(#content .board) #content {
  background:var(--cp-panel); padding:24px; border:1px solid var(--cp-line);
  border-radius:12px; box-shadow:var(--cp-shadow); min-width:0;
}
.cp-wrap:has(#content .board) .cp-shell .cp-body { margin-top:0; }
.cp-wrap:has(#content .board) .cp-wing { position:static; gap:14px; }
.cp-wrap:has(#content .board) .cp-wing-adimg { border-radius:10px; }
.cp-wrap:has(#content .board) .cp-wing-links,
.cp-wrap:has(#content .board) .cp-side .cp-card {
  border:1px solid var(--cp-line); border-radius:10px; overflow:hidden;
  background:var(--cp-panel); box-shadow:var(--cp-shadow);
}
.cp-wrap:has(#content .board) .cp-wing-links strong,
.cp-wrap:has(#content .board) .cp-side .cp-card-head {
  background:var(--cp-soft-bg)!important; color:var(--cp-ink);
  border-bottom:1px solid var(--cp-line)!important; height:auto;
  padding:12px; margin:0; font-size:14px!important; line-height:1.5!important;
}
.cp-wrap:has(#content .board) .cp-wing-links a { height:auto; padding:9px 12px; font-size:13px; line-height:1.5; }
.cp-wrap:has(#content .board) .cp-side { gap:14px; }
.cp-wrap:has(#content .board) .cp-side .cp-card { padding:0; }
.cp-wrap:has(#content .board) .cp-side .cp-card-head a { color:var(--cp-sub); font-size:12px; }
.cp-wrap:has(#content .board) .cp-side-link { margin:0; padding:10px 12px; font-size:13px; }
.cp-wrap:has(#content .board) .cp-rank-list { padding:10px 12px; }
.cp-wrap .board { min-width:0; --cp-fs-md:14px; --cp-fs-sm:13px; --cp-fs-xs:12px; }
.cp-wrap .board .cp-board-top { min-height:0; padding:0 0 20px; border-bottom:0; gap:16px; }
.cp-wrap .board .cp-board-h1 { font-size:28px!important; font-weight:700; line-height:1.4; letter-spacing:-.5px; }
.cp-wrap .board .cp-board-title p { font-size:13px; line-height:1.6; margin-top:6px; }
.cp-wrap .board .cp-board-write-top {
  min-height:40px; height:auto; border-radius:7px; font-size:13px;
  background:#1768d7; border-color:#1768d7; color:#fff;
}
.cp-wrap .board .cp-board-write-top:hover { background:#1058bb; border-color:#1058bb; color:#fff; }
.cp-wrap .board .cp-board-nav { gap:8px; margin-bottom:18px; border-color:var(--cp-line); }
.cp-wrap .board .cp-board-nav a { min-height:46px; padding:0 10px; font-size:14px; font-weight:500; }
.cp-wrap .board .cp-board-nav a.on { font-weight:700; }
.cp-wrap .board .cp-board-nav a.on::after { left:10px; right:10px; bottom:0; height:2px; }
.cp-wrap .board .cp-board-listbar {
  padding:0 12px; min-height:44px; border:0; border-radius:8px 8px 0 0; background:var(--cp-soft-bg);
}
.cp-wrap .board .cp-board-listbar>strong { font-size:14px; }
.cp-wrap .board .cp-board-listbar nav { gap:12px; }
.cp-wrap .board .cp-board-listbar nav a { font-size:13px; min-height:44px; display:inline-flex; align-items:center; }
.cp-wrap .board .board_list { border:0; border-bottom:1px solid var(--cp-line); }
.cp-wrap .board .board_list thead th { height:38px; background:var(--cp-soft-bg); border-color:var(--cp-line); color:var(--cp-sub); font-size:12px; }
.cp-wrap .board .board_list tbody td { height:52px; padding:12px 6px; border-color:var(--cp-line); font-size:12px; line-height:1.6; }
.cp-wrap .board .board_list td.title { padding-left:10px; font-size:14px; }
.cp-wrap .board .board_list td.title>a { font-weight:500; }
.cp-wrap .board .board_list td.title>a:hover { color:var(--cp-brand); }
.cp-wrap .board .board_list td.author a { font-size:12px; gap:5px; }
.cp-wrap .board .board_list td.title a.replyNum { font-size:11px; border-radius:4px; padding:2px 5px; min-height:20px; }
.cp-wrap .board .board_list .cp-row-category { background:var(--cp-brand-soft); color:var(--cp-brand); padding:2px 6px; border-radius:4px; font-size:12px; }
.cp-wrap .board .board_list .cp-row-hot { font-size:11px; }
.cp-wrap .board .board_list tr.notice td { background:var(--cp-brand-soft); }
.cp-wrap .board .cTab { gap:6px; border:0; }
.cp-wrap .board .cTab>li>a { border:1px solid var(--cp-line); border-radius:6px; padding:7px 12px; font-size:13px; }
.cp-wrap .board .cTab>li.on>a { margin:0; background:var(--cp-brand-soft); border-color:var(--cp-brand-border); }
.cp-wrap .board .list_footer { margin-top:20px; }
.cp-wrap .board .pagination { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:5px; padding:0; margin:16px 0; }
.cp-wrap .board .pagination a,.cp-wrap .board .pagination strong {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:36px; min-height:36px; height:auto; padding:7px 10px;
  margin:0; border:1px solid var(--cp-line); border-radius:6px;
  background:var(--cp-panel); color:var(--cp-sub); font-size:13px; line-height:1.4;
}
.cp-wrap .board .pagination strong { background:var(--cp-brand-soft); color:var(--cp-brand); border-color:var(--cp-brand-border); }
.cp-wrap .board .list_footer .board_search { padding-top:14px; border-top:1px solid var(--cp-line); gap:8px; }
.cp-wrap .board .board_search select,.cp-wrap .board .board_search .iText { border-radius:7px; border:1px solid var(--cp-line2); background:var(--cp-panel); color:var(--cp-ink); }
.cp-wrap .board .board_search .btn { min-height:40px; padding:0 16px; border:1px solid var(--cp-line2); background:var(--cp-soft-bg); color:var(--cp-ink); }
.cp-wrap .board .btn { border-radius:7px; }
.cp-wrap .board .read_header { padding:0 0 16px; border-bottom:1px solid var(--cp-line); }
.cp-wrap .board .cp-read-boardline { margin-bottom:14px; font-size:13px; }
.cp-wrap .board .read_header h1 { font-size:26px!important; line-height:1.5; overflow-wrap:anywhere; letter-spacing:-.3px; }
.cp-wrap .board .read_header .meta { border:0; border-radius:8px; margin:0; padding:12px; gap:8px; font-size:13px; }
.cp-wrap .board .read_header .meta time,.cp-wrap .board .read_header .meta .sum { font-size:12px; }
.cp-wrap .board .read_body { padding:28px 4px; font-size:16px; line-height:1.85; }
.cp-wrap .board .read_body>.xe_content,.cp-wrap .board .read_body>.rhymix_content { font-size:16px; line-height:1.85; }
.cp-wrap .board .cp-read-foot { padding-top:16px; margin-top:16px; flex-wrap:wrap; }
.cp-wrap .board .cp-share-item { min-height:36px; border-radius:6px; }
.cp-wrap .board .cp-share-item.cp-share-icon { width:36px; }
.cp-wrap .board .cp-read-list { min-height:36px; }
.cp-wrap .board .cp-read-nav { border-radius:8px; }
.cp-wrap .board .cp-read-nav-item { min-height:48px; padding:10px 12px; }
.cp-wrap .board .feedback { border:1px solid var(--cp-line); border-radius:10px; margin-top:24px; }
.cp-wrap .board .feedback .fbHeader { padding:14px 16px; }
.cp-wrap .board .feedback .fbHeader h2 { font-size:16px; }
.cp-wrap .board .fbItem { padding:16px; }
.cp-wrap .board .fbItem .xe_content { font-size:15px; line-height:1.75; }
.cp-wrap .board .fbMeta { flex-wrap:wrap; gap:6px 10px; }
.cp-wrap .board .fbMeta .time { font-size:12px; }
.cp-wrap .board .cp-cmt-compose { border-radius:8px; }
.cp-wrap .board .write_header { padding:8px 0 12px; }
.cp-wrap .board input[name="title"] { border:1px solid var(--cp-line2); border-radius:8px; min-height:48px; padding:12px; font-size:16px; background:var(--cp-panel); color:var(--cp-ink); }
.cp-wrap .board .write_option { gap:8px 16px; padding:12px; background:var(--cp-soft-bg); border-radius:8px; font-size:13px; }
.cp-wrap .board .write_editor .cke { border:1px solid var(--cp-line2); border-radius:8px; }
.cp-wrap .board .write_editor .cke_inner,.cp-wrap .board .write_editor .cke_top { border-radius:8px 8px 0 0; }
.cp-wrap .board .write_editor .cke_bottom { border-radius:0 0 8px 8px; }
.cp-wrap .board .write_editor .rx_simpleeditor,.cp-wrap .board .write_editor .rx_editor_textarea { border-radius:8px; font-size:16px; line-height:1.75; }
.cp-wrap .board .write_footer { border-top:1px solid var(--cp-line); margin-top:18px; padding-top:16px; }
.cp-wrap .board .write_footer .btnArea .cp-write-submit { background:#1768d7; border-color:#1768d7; color:#fff; }
.cp-wrap .board .write_footer .btnArea .cp-write-submit:hover { background:#1058bb; border-color:#1058bb; color:#fff; }
.cp-wrap .board :is(a,button,input,select,textarea):focus-visible { outline:2px solid var(--cp-brand); outline-offset:2px; }
@media(min-width:1200px) {
  .cp-wrap:has(#content .board) .cp-shell { grid-template-columns:160px minmax(0,1fr) 240px; }
  .cp-wrap:has(#content .board) .cp-wing { width:100%; }
  .cp-wrap:has(#content .board) .cp-wing-adimg { width:100%; height:auto; }
  .cp-wrap:has(#content .board) .cp-wing-r .cp-wing-adimg img { height:auto; }
}
@media(min-width:1200px) and (max-width:1399px) {
  .cp-wrap:has(#content .board) .cp-shell { grid-template-columns:144px minmax(0,1fr) 216px; gap:12px; padding-left:16px; padding-right:16px; }
  .cp-wrap:has(#content .board) #content { padding:20px; }
}
@media(max-width:1199px) { .cp-wrap:has(#content .board) .cp-shell { padding-top:14px; } }
@media(max-width:640px) {
  .cp-wrap:has(#content .board) .cp-shell { padding:12px 10px 24px; }
  .cp-wrap:has(#content .board) #content { padding:18px 14px; border-radius:10px; }
  .cp-wrap .board .cp-board-top { padding-bottom:14px; gap:8px; }
  .cp-wrap .board .cp-board-h1 { font-size:24px!important; }
  .cp-wrap .board .cp-board-write-top { position:static; padding:8px 12px; min-width:0; min-height:40px; box-shadow:none; }
  .cp-wrap .board .cp-board-nav { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; overflow:visible; margin-bottom:14px; }
  .cp-wrap .board .cp-board-nav a { padding:0; justify-content:center; font-size:12px; min-height:44px; }
  .cp-wrap .board .cp-board-nav a.on::after { left:4px; right:4px; }
  .cp-wrap .board .cp-board-listbar { margin:0; padding:0 10px; }
  .cp-wrap .board .cp-board-listbar nav { gap:10px; }
  .cp-wrap .board .cp-board-listbar nav a { font-size:12px; }
  .cp-wrap .board .board_list tr { padding:14px 8px; }
  .cp-wrap .board .board_list tbody td { height:auto; padding:0; }
  .cp-wrap .board .board_list td.title { font-size:15px; line-height:1.65; padding:0; margin-bottom:6px; }
  .cp-wrap .board .board_list td.author { max-width:65%; }
  .cp-wrap .board .board_list td.author a { min-width:0; }
  .cp-wrap .board .board_list td.author,.cp-wrap .board .board_list td.time,.cp-wrap .board .board_list td.voteNum { font-size:12px; gap:4px; }
  .cp-wrap .board .board_search { align-items:stretch; }
  .cp-wrap .board .board_search select { flex:1 1 35%; font-size:14px; }
  .cp-wrap .board .board_search .iText { flex:1 1 55%; min-width:0; max-width:none; font-size:16px; }
  .cp-wrap .board .board_search .btn { flex:1 0 100%; background:var(--cp-brand-soft); color:var(--cp-brand); }
  .cp-wrap .board .read_header h1 { font-size:22px!important; }
  .cp-wrap .board .read_body { padding:22px 0; }
  .cp-wrap .board .read_header .meta { padding:10px; }
  .cp-wrap .board .cp-read-foot { gap:10px; }
  .cp-wrap .board .fbItem { padding:14px 12px; }
  .cp-wrap .board .write_footer .btnArea { gap:8px; }
  .cp-wrap .board .pagination a,.cp-wrap .board .pagination strong { min-width:34px; padding:7px 8px; font-size:12px; }
}
