/* Reference measurements: Gasengi uses Noto Sans KR, ~13px list text, 19px section headings. */
:root{--font-sans:'Noto Sans KR','Malgun Gothic',sans-serif;--deep-blue:#0d6efd;--text-main:#222;--sidebar-logo-muted:#222}
body{font-family:var(--font-sans);font-size:14.44px;line-height:1.5;letter-spacing:0;color:#222;background:#fff}
button,input,textarea,select{font-family:var(--font-sans)}
.community-header{max-width:1120px;min-height:96px;gap:32px;padding:0 12px;box-sizing:border-box}
.community-wordmark{display:block;font-size:29px;font-weight:700;letter-spacing:-1px;color:#242424;line-height:1.3;flex-shrink:0}
.community-wordmark span{display:block;border:0;padding:0;font-size:11px;color:#666;font-weight:400;letter-spacing:0;margin-top:4px}
.header-notice{border:1px solid #ddd;border-radius:5px;padding:11px 16px;max-width:540px;flex:1;font-size:13px;color:#444}
.header-notice b{font-size:10px;background:#263b60;color:white;padding:2px 5px;margin-right:10px;font-style:italic}
.header-help{font-size:13px;color:#555;text-decoration:none}
.portal-nav{max-width:1120px;margin:0 auto 30px;border:1px solid #d4d4d4;border-radius:5px;display:flex;align-items:center;padding:0 18px;min-height:56px;box-sizing:border-box;gap:24px}
.portal-nav .menu-list{display:flex;gap:24px;border:0;padding:0;margin:0;list-style:none}
.portal-nav .menu-btn{padding:16px 0;background:transparent;border:0;color:#222;font-size:15px;font-weight:700;border-radius:0;white-space:nowrap}
.portal-nav .menu-btn.active{color:#0d6efd;box-shadow:inset 0 -3px #0d6efd}
.portal-nav>a{font-size:14px;color:#333;text-decoration:none;font-weight:700;white-space:nowrap}
.page-wrap{max-width:1120px;grid-template-columns:minmax(0,1fr) 250px;gap:24px;margin:0 auto;align-items:start}
.main-area{grid-column:1;grid-row:1;min-width:0}
.sidebar{grid-column:2;grid-row:1;border:0;padding:0;width:auto;background:transparent}
.portal-login{padding:18px 16px;background:#f6f7f8;text-align:center;border:1px solid #eceeef}
.portal-login h2{font-size:19px;margin:0 0 12px;line-height:1.2;font-weight:700}
.portal-login p{font-size:12px;color:#777;margin:0 0 15px}
.topbar{margin:0;min-height:0;display:block}
.auth-area{display:flex;flex-direction:column;gap:9px;width:100%;align-items:stretch}
.auth-btn{font-size:13px;padding:10px;border-radius:4px;width:100%;background:white;color:#444;border:1px solid #d9dde1}
#openLoginBtn{background:#0d6efd;border-color:#0d6efd;color:white;font-weight:500}
.auth-welcome{line-height:1.9;overflow-wrap:anywhere;color:#333}
.password-help{display:block;text-align:right;font-size:11px;color:#777;margin-top:12px;text-decoration:none}
.sidebar-write{margin:12px 0 22px;background:#0d6efd;border-color:#0d6efd;border-radius:4px;font-size:13px;padding:11px}
.sidebar-write:hover,.write-btn:hover{background:#0b5ed7}
.portal-side-info{border-top:2px solid #333;padding:12px 0;margin-top:24px}
.portal-side-info h3{font-size:14px;margin:0 0 12px;font-weight:700}
.portal-side-info p,.portal-side-info div,.portal-side-info ol{font-size:12px;line-height:1.9;color:#666}
.portal-side-info ol{padding-left:20px}
.portal-banner{background:#f1f4f8;border:1px solid #e3e7ed;padding:24px 28px;margin-bottom:23px;min-height:158px;box-sizing:border-box}
.portal-banner>span{color:#55749e;font-size:12px}
.portal-banner h1{font-size:26px;line-height:1.4;margin:7px 0 10px;letter-spacing:-.6px;font-weight:700;color:#273a51}
.portal-banner p{font-size:13px;color:#647184;margin:0}
.hero-title,.board-title,.latest-card-title{font-size:19px;font-weight:700;line-height:1.2;color:#222;letter-spacing:0}
.hero-subtitle{font-size:12px;color:#777;margin-top:8px}
.intent-grid{gap:0;border:1px solid #ddd;border-radius:4px;overflow:hidden;margin-top:12px}
.intent-card{border:0;border-right:1px solid #ddd;border-radius:0;background:white;padding:13px;gap:5px;color:#333}
.intent-card:last-child{border-right:0}
.intent-card:hover{background:#f6f8fb}
.intent-kicker{font-size:11px;color:#888}
.intent-card strong{font-size:14px;color:#222;font-weight:500;letter-spacing:0}
.intent-card>span:not(.intent-kicker){font-size:11px;color:#777}
.intent-card b{color:#0d6efd;font-size:11px;font-weight:400}
.home-section{margin-bottom:25px}
.home-latest-grid{margin:0 0 30px;gap:22px}
.latest-card-header{padding:0 0 12px;border:0}
.latest-card-title{font-size:17px}
.latest-action-btn{font-size:11px;background:white!important;color:#555!important;border:1px solid #ddd;padding:3px 6px}
.latest-list{padding:0;border:1px solid #ddd;border-radius:4px;overflow:hidden;min-height:90px;margin:0}
.latest-item{padding:9px 12px;border-bottom:1px solid #ddd;margin:0;line-height:1.5}
.latest-list button{font-size:13px;color:#333;line-height:1.5}
.latest-item:last-child{border-bottom:0}
.latest-empty{font-size:12px;color:#777;padding:14px}
.board-header{border-bottom:2px solid #333;padding-bottom:12px}
#homeCommunitySection:not([hidden]) ~ #integratedBoard{border:0;border-radius:0;box-shadow:none}
.board-subtitle{font-size:12px;color:#777;margin-top:7px}
.write-btn{font-size:12px;background:#0d6efd;border-color:#0d6efd;border-radius:4px}
.community-guide{background:#f7f7f7;border-bottom:1px solid #ddd;font-size:12px;color:#555;padding:10px 12px}
.community-guide summary span{background:#283c60;color:white;border:0;border-radius:2px;font-size:10px;font-weight:500}
.community-guide p{font-size:13px;color:#555}
.board-table{border-color:#ddd}
.board-table th{background:#fafafa;color:#555;font-size:12px;border-color:#ddd;padding:9px 6px}
.board-table td{padding:9px 6px;border-color:#e5e5e5;font-size:12px;color:#777;line-height:1.5}
.post-title-btn{font-size:13px;font-weight:400;line-height:1.5;color:#333;letter-spacing:0}
.post-title-btn:hover{color:#0d6efd}
.title-meta{display:inline-block;background:#dc3545;border-radius:12px;color:white;padding:0 5px;line-height:1.4;font-size:10px}
.title-meta.is-empty{background:#000;color:#fff}
.portal-nav .menu-list{width:100%;justify-content:space-between;gap:15px}
.portal-nav .menu-btn{font-size:14px}
.home-section{margin-bottom:18px}
.portal-banner{min-height:0;padding:21px 26px;margin-bottom:22px}
.portal-banner h1{font-size:25px}
.topic-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px;margin-bottom:34px}
.topic-board{border:1px solid #dce1e7;border-radius:4px;overflow:hidden;background:#fff;min-width:0;display:flex;flex-direction:column}
.topic-board,.topic-board *{box-sizing:border-box}
.topic-board-header{display:flex;align-items:start;gap:9px;padding:16px 15px 0;min-height:80px;border-top:3px solid #283c60}
.topic-number{flex-shrink:0;font-size:11px;font-weight:700;color:#55749e;background:#edf2f8;padding:1px 5px;border-radius:3px;margin-top:2px}
.topic-board-header h3{font-size:17px;line-height:1.5;margin:0;font-weight:700;letter-spacing:-.4px;word-break:keep-all;overflow-wrap:anywhere;color:#222}
.topic-board-header p{font-size:11px;color:#687281;line-height:1.8;margin:5px 0 0;word-break:keep-all}
.topic-example{margin:10px 15px 13px;background:#f5f7fa;color:#4d5d71;padding:9px 10px;border-radius:3px;font-size:12px;line-height:1.8;min-height:62px;word-break:keep-all}
.topic-example>span{display:block;color:#7c8796;font-size:10px}
.topic-list-heading{display:flex;align-items:center;justify-content:space-between;margin:0 15px 7px;font-size:11px;color:#687281;gap:8px}
.topic-list-heading b{font-weight:400;margin-left:4px;color:#0d6efd}
.topic-list-heading button{border:0;background:none;font:inherit;color:#566579;padding:4px;cursor:pointer}
.topic-list-heading button:hover{color:#0d6efd;text-decoration:underline}
.topic-posts{border:0;border-top:1px solid #e6e9ed;border-radius:0;flex:1;min-height:84px}
.topic-posts .latest-item{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 15px;border-color:#edf0f3}
.topic-posts .latest-item-title{min-width:0;display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.7}
.topic-posts .post-title-btn{display:inline;text-align:left;white-space:normal;max-width:100%;overflow-wrap:anywhere;font-size:12px;vertical-align:baseline}
.topic-posts .latest-item-date{font-size:10px;white-space:nowrap;color:#9098a2;flex-shrink:0}
.topic-posts .latest-empty{padding:18px 15px;margin:0;font-size:12px;line-height:1.8}
.topic-ask{border:0;border-top:1px solid #e6e9ed;background:#fafbfd;color:#075bc7;font-size:13px;font-weight:700;padding:11px;width:100%;cursor:pointer}
.topic-ask:hover{background:#eef4fc}
.topic-board button:focus-visible,.secondary-boards button:focus-visible{outline:2px solid #0d6efd;outline-offset:-2px}
.board-sort-note{margin:4px 0 10px;color:#78818b;font-size:11px;line-height:1.7}
.secondary-boards{display:flex;gap:6px;margin:0 0 12px}
.secondary-boards .menu-btn{padding:4px 9px;border:1px solid #dde2e7;border-radius:3px;color:#66717e;background:#fff;font-size:11px;width:auto}
.secondary-boards .menu-btn.active{color:#185ca8;background:#f0f5fb;border-color:#aac6e7}
.board-title{word-break:keep-all;overflow-wrap:anywhere;line-height:1.5}
#qnaSubcategorySelect{width:100%;max-width:100%;box-sizing:border-box;font-size:12px}
.post-subcategory-tag{display:inline-block;background:#f1f3f5;color:#687281;font-size:10px;border-radius:2px;margin-right:5px}
.page-btn.active{background:#0d6efd;color:white;border-color:#0d6efd}
.hero-search-input,.hero-search-btn,.control-select{border-color:#d6d9dd;font-size:12px;color:#444}
.hero-search-btn{background:#f3f4f5}
.post-content{font-size:15px;line-height:1.8}
.site-footer{max-width:1120px;border-color:#ddd;color:#777;padding:22px 0}
.site-footer-disclaimer{font-size:11px}
[hidden]{display:none!important}
@media(max-width:1160px){.community-header,.portal-nav,.page-wrap,.site-footer{margin-left:18px;margin-right:18px}.page-wrap{grid-template-columns:minmax(0,1fr) 220px;gap:20px}.portal-nav,.portal-nav .menu-list{gap:20px}}
@media(max-width:760px){.community-header{min-height:83px;gap:12px}.community-wordmark{font-size:25px}.header-notice{display:none}.header-help{margin-left:auto}.portal-nav{padding:0 12px;min-height:48px;overflow-x:auto;gap:20px;margin-bottom:18px}.portal-nav .menu-list{gap:20px;flex-shrink:0}.portal-nav .menu-btn{font-size:13px;padding:13px 0}.portal-nav>a{font-size:12px}.page-wrap{display:flex;flex-direction:column;gap:18px}.sidebar{width:100%;order:0;display:flex;gap:10px;align-items:center}.portal-login{flex:1;padding:9px 12px;text-align:left;min-width:0}.portal-login h2,.portal-login p,.password-help,.portal-side-info{display:none}.auth-area{flex-direction:row;flex-wrap:wrap;gap:8px}.auth-btn{width:auto;padding:7px 13px}.sidebar-write{display:block;width:auto;margin:0;padding:12px;font-size:12px;flex-shrink:0}.main-area{order:1}.portal-banner{padding:20px;min-height:145px}.portal-banner h1{font-size:23px}.portal-banner p{font-size:12px}.hero-title,.board-title{font-size:19px}.intent-card{padding:11px 9px}.intent-card strong{font-size:13px}.home-latest-grid{grid-template-columns:1fr 1fr;gap:12px}.latest-card-title{font-size:15px}.latest-card-header{align-items:start;flex-wrap:wrap}.board-table td{padding:11px 8px}.post-title-btn{font-size:13px}.board-subtitle{font-size:12px}.community-guide{font-size:12px}.site-footer{padding:20px 0}}
@media(max-width:450px){.home-latest-grid{grid-template-columns:1fr}.community-header,.portal-nav,.page-wrap,.site-footer{margin-left:12px;margin-right:12px}.intent-card b{font-size:10px}.intent-kicker{font-size:10px}}
@media(max-width:1000px){.topic-board-grid{grid-template-columns:1fr}.topic-board-header{min-height:0}.topic-example{min-height:0}.portal-nav{overflow-x:auto}.portal-nav .menu-list{width:max-content;gap:20px;flex-shrink:0}}
@media(max-width:760px){.topic-board-grid{gap:18px;margin-bottom:26px}.topic-board-header h3{font-size:17px}.topic-board-header{padding:14px 13px 0}.topic-example{margin-left:13px;margin-right:13px}.topic-posts .latest-item{padding:10px 13px}.topic-posts .post-title-btn{font-size:13px}.topic-posts .latest-item-date{font-size:10px}.secondary-boards .menu-btn{font-size:11px}.portal-nav .menu-btn{font-size:13px}.board-title{font-size:18px}}

/* Compact community header and four primary boards. */
.community-header{min-height:116px}
.community-wordmark strong{display:block;font-size:34px;line-height:1.15;letter-spacing:-1.2px}
.community-wordmark .wordmark-tagline{margin:0 0 3px;font-size:11px}
.community-wordmark .wordmark-name{display:flex;align-items:baseline;gap:8px;margin:0}
.community-wordmark .wordmark-korean{margin:0;font-size:14px;color:#333;font-weight:500}
.community-wordmark .wordmark-description{margin:5px 0 0;font-size:11px;line-height:1.5;color:#626b75;word-break:keep-all}
.portal-nav .menu-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:12px}
.portal-nav .menu-list li{text-align:center}
.portal-nav .menu-btn{width:100%}
@media(max-width:760px){
 .community-header{flex-wrap:wrap;padding:12px 0;gap:12px;min-height:0}
 .community-wordmark strong{font-size:30px}
 .header-notice{display:block;order:3;flex:0 0 100%;box-sizing:border-box;font-size:11px;max-width:none;padding:8px 10px}
 .header-notice b{margin-right:5px}
 .portal-nav{padding:0 8px;overflow:visible}
 .portal-nav .menu-list{gap:4px;width:100%;flex-shrink:1}
 .portal-nav .menu-btn{font-size:12px;letter-spacing:-.5px}
}

.question-board-links{border-top:2px solid #283c60;margin-bottom:24px}
.question-board-links a{display:block;padding:16px 12px;border-bottom:1px solid #e1e5ea;font-size:15px;color:#273a51;text-decoration:none;word-break:keep-all;overflow-wrap:anywhere}
.question-board-links a:hover{background:#f6f8fb;color:#0d6efd}
.question-board-links a:focus-visible{outline:2px solid #0d6efd;outline-offset:-2px}

.site-guide-dialog{width:min(640px,calc(100% - 32px));max-height:85vh;box-sizing:border-box;padding:24px;border:1px solid #dce1e7;border-radius:8px;color:#333;overflow:auto}
.site-guide-dialog::backdrop{background:rgba(22,32,46,.45)}
.site-guide-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e1e5ea;padding-bottom:14px}
.site-guide-header h2{font-size:19px;margin:0;color:#273a51}
.site-guide-header form{margin:0}
.site-guide-header button{border:1px solid #d4d9e0;border-radius:4px;background:#fff;padding:6px 12px;cursor:pointer;white-space:nowrap}
.site-guide-copy h3{font-size:14px;line-height:1.6;color:#273a51;margin:22px 0 8px}
.site-guide-copy p{font-size:13px;line-height:1.9;margin:10px 0;word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:760px){.site-guide-dialog{padding:18px}.site-guide-header h2{font-size:17px}}

/* Shared monochrome symbols for the four subject boards. */
.topic-symbol{display:block;width:32px;height:32px;flex:0 0 32px}
.topic-board-header>div{min-width:0;width:100%}
.topic-board-header h3{display:flex;align-items:center;gap:10px}
.topic-board-header h3>span{min-width:0}
.topic-board-header p{margin-left:42px}
.topic-board-header{padding-bottom:14px}
.topic-board-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 10px;padding:12px 14px 10px;min-height:0}
.topic-board-header h3{min-width:0;font-size:16px;line-height:1.5}
.topic-board-header .topic-heading p{margin:3px 0 0 42px;font-size:12px;font-weight:500;color:#526070;line-height:1.6}
.topic-board-header>.topic-list-heading{width:auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:2px;margin:0;padding-top:2px;white-space:nowrap;line-height:1.5}
.topic-list-heading button{padding:2px 0 2px 5px;min-height:24px}
.topic-posts{display:block}
.pagination{flex-wrap:wrap}
.topic-posts .latest-item{min-height:39px;padding:8px 14px}
.topic-posts .latest-item-title{font-size:12px}
@media(max-width:760px){.topic-board-header{padding:12px}.topic-board-header h3{font-size:16px}.topic-posts .latest-item{padding:10px 12px;min-height:44px}.topic-posts .latest-item-title{font-size:13px}}
#boardTopicExample{margin:0 0 18px;min-height:0;padding:12px 14px}
.board-section:has(.write-panel.open) #boardTopicExample{display:none}
.question-board-links a{display:flex;align-items:center;gap:12px}
.question-board-links .topic-symbol{width:28px;height:28px;flex-basis:28px}

/* Reveal topic examples without shifting the surrounding menu. */
.question-board-links .topic-link-copy{display:grid;grid-template-columns:minmax(280px,325px) minmax(0,1fr);align-items:center;column-gap:24px;flex:1;min-width:0}
.question-board-links a{min-height:68px;box-sizing:border-box}
.question-board-links .topic-link-copy>span:first-child{font-weight:600}
.question-board-links .topic-hover-example{display:block;visibility:hidden;padding-left:20px;border-left:1px solid #e1e7ef;font-size:12px;line-height:1.7;font-weight:normal;color:#748195}
.question-board-links .topic-hover-example small{display:block;font-size:10px;color:#8193ab;margin-bottom:2px}
.question-board-links a:hover .topic-hover-example,.question-board-links a:focus .topic-hover-example{visibility:visible}
@media(hover:none){.question-board-links .topic-hover-example{visibility:visible}}


@media(max-width:760px){.question-board-links .topic-link-copy{grid-template-columns:1fr;gap:6px}.question-board-links .topic-hover-example{padding-left:0;border-left:0}.question-board-links .topic-hover-example small{display:inline;margin-right:8px}}

.sidebar-write:disabled,.sidebar-write:disabled:hover{background:#edf0f4;border-color:#d9dfe6;color:#8793a1;cursor:not-allowed;box-shadow:none}
