/* NAVER Developers reference: Nanum Barun Gothic regular body, clear bold headings. */
:root { --dw-text-font:'Nanum Barun Gothic','Malgun Gothic',sans-serif; --font-sans:var(--dw-text-font); }
#user_layout_root,#user_layout_root :is(h1,h2,h3,h4,p,div,span,a,button,input,select,textarea,label,th,td,li,summary) { font-family:var(--dw-text-font); }
#user_layout_root { font-size:15px; line-height:1.65; color:#444; background:#fff; }
#user_layout_root :is(h1,h2,h3,h4) { font-weight:400; letter-spacing:-.025em; }
#user_layout_root :is(input,select,textarea) { font-size:15px; }
#user_layout_root .dw-brand,#user_layout_root .dw-brand * { font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif; }
.dw-footer .dw-footer-top { padding:24px 0; }
@media(max-width:640px) { .dw-footer .dw-footer-top { padding:18px 0; } }

/* Measured reference: 14px / 400 / #595959 navigation; grey tables with 18px cells. */
#user_layout_root .dw-nav-trigger,#user_layout_root .dw-submenu a,#user_layout_root .dw-account>a:not(.dw-primary) { font-size:14px; font-weight:400; color:#595959; }
#user_layout_root .dw-nav-trigger:hover,#user_layout_root .dw-submenu a:hover { color:#2563eb; }
#user_layout_root main { background:#fff; }
#user_layout_root main :is(th,td) { font-size:15px; line-height:1.65; padding:18px; border-color:#e8e8ea; }
#user_layout_root main th { background:#f5f5f6; color:#343434; font-weight:700; }
#user_layout_root main td { color:#323332; font-weight:400; }
#user_layout_root main table { border-collapse:collapse; border-color:#e8e8ea; }
.dw-biz { max-width:1280px; margin:auto; padding:46px 36px 64px; }
#user_layout_root .dw-biz h1 { font-size:30px; line-height:1.4; color:#222; margin:0 0 10px; }
.dw-biz-heading>p { color:#666; margin:0; font-size:16px; }
.dw-center-links { display:flex; gap:32px; margin:28px 0 24px; border-bottom:1px solid #e8e8ea; }
.dw-center-links>a { padding:12px 0; font-size:15px; color:#595959; }
.dw-center-links>a[aria-current] { color:#2563eb; border-bottom:2px solid #2563eb; }
.dw-center-links span { margin-left:8px; }
.dw-biz-filters { display:grid; grid-template-columns:1.1fr 1fr .8fr 1.3fr auto auto; gap:10px; border:1px solid #e8e8ea; padding:20px; background:#fafafa; }
.dw-biz :is(input,select,button) { min-width:0; border:1px solid #d8dadd; border-radius:3px; background:#fff; color:#444; height:42px; padding:0 12px; font-weight:400; font-size:14px!important; }
.dw-biz select { width:100%; }
.dw-biz .dw-biz-search { background:#2563eb; border-color:#2563eb; color:#fff; }
.dw-biz button:focus-visible,.dw-biz a:focus-visible { outline:2px solid #2563eb; outline-offset:3px; }
.dw-biz button:disabled { cursor:default; opacity:.4; }
.dw-biz-results { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 0; margin:12px 0 8px; }
.dw-biz-results>p { margin:0; font-size:14px; color:#666; }
.dw-biz-count { color:#2563eb; font-weight:700; }
.dw-biz-result-filters { display:flex; gap:10px; min-width:290px; }
.dw-biz-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:28px; row-gap:36px; }
.dw-biz-card { min-width:0; padding-bottom:22px; border-bottom:1px solid #e8e8ea; }
.dw-biz-card>a { display:block; height:100%; text-decoration:none; color:#343434; }
.dw-biz-cover { aspect-ratio:1.82; padding:22px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid #e4e5e8; border-top:3px solid #2563eb; background:#f2f3f5; overflow:hidden; }
.dw-biz-cover-operate { background:#24272c; color:white; border-color:#24272c; border-top-color:#e94351; }
.dw-biz-cover-collect { background:#edf2fa; }
.dw-biz-cover-develop { background:#eef0f1; border-top-color:#444; }
.dw-biz-cover-label { font-size:10px; letter-spacing:1.5px; opacity:.75; }
.dw-biz-cover-title { font-size:clamp(20px,2vw,27px); max-width:95%; font-weight:700; line-height:1.4; word-break:keep-all; }
.dw-biz-cover-bottom { display:flex; justify-content:space-between; align-items:center; font-size:12px; }
.dw-biz-cover-bottom>span { font-size:24px; font-weight:400; }
.dw-biz-card-meta { display:flex; align-items:center; justify-content:space-between; font-size:12px; color:#666; margin:16px 0 8px; }
.dw-biz-card-meta>span:last-child { padding:2px 8px; background:#f5f5f6; color:#595959; }
#user_layout_root .dw-biz-card h2 { font-size:20px; color:#343434; line-height:1.5; margin:0 0 7px; }
.dw-biz-card a:hover h2 { color:#2563eb!important; }
.dw-biz-card p { margin:0; color:#666; font-size:14px; line-height:1.6; min-height:45px; }
.dw-biz-card-foot { display:flex; justify-content:space-between; gap:12px; margin-top:16px; font-size:14px; }
.dw-biz-card-foot>span:first-child { font-weight:700; }
.dw-biz-card-foot>span:last-child { color:#2563eb; }
.dw-biz-pagination { display:flex; justify-content:center; gap:5px; margin-top:36px; }
.dw-biz-pagination button[aria-current] { background:#2563eb; border-color:#2563eb; color:white; }
.dw-biz-empty { padding:70px 20px; border-top:1px solid #e8e8ea; border-bottom:1px solid #e8e8ea; text-align:center; }
#user_layout_root .dw-biz-empty h2 { font-size:22px; margin-bottom:12px; }
.dw-biz-empty p { color:#666; margin-bottom:20px; }
.dw-biz-availability { text-align:center; color:#666; font-size:13px; margin:24px 0 0; }

/* Editorial support list: the existing board owns data, access, filtering and pagination. */
#user_layout_root .dw-support-page { max-width:1280px; padding:0 36px 64px; }
.dw-support-banner { display:flex; align-items:center; gap:28px; padding:32px 0; margin-bottom:42px; border-bottom:1px solid #e8e8ea; }
.dw-support-banner>span { font-size:28px; color:#343434; flex-shrink:0; }
.dw-support-banner>p { border-left:1px solid #ddd; padding-left:28px; color:#666; font-size:15px; }
.dw-support-grid { display:grid; grid-template-columns:190px minmax(0,1fr); gap:48px; }
.dw-support-nav { display:flex; flex-direction:column; align-items:flex-start; gap:18px; padding-top:6px; }
.dw-support-nav>a { color:#595959; font-size:15px; }
.dw-support-nav>a[aria-current="page"] { font-weight:700; color:#2563eb; }
.dw-support-content { min-width:0; }
#user_layout_root .dw-notice-heading h1 { font-size:30px; color:#222; }
.dw-notice-heading { padding-bottom:18px; border-bottom:1px solid #e8e8ea; }
.dw-notice-list .dw-notice-items { box-shadow:none; border-radius:0; overflow:visible; border-top:1px solid #e8e8ea; }
.dw-notice-table-head { display:none!important; }
.dw-notice-list .dw-notice-row { padding:28px 0; background:transparent; border-bottom:1px solid #e8e8ea; }
.dw-notice-list .dw-notice-row:hover { background:#fafafa; }
.dw-notice-list .dw-notice-desktop { display:grid; grid-template-columns:auto auto 1fr!important; gap:12px 20px; padding:0; }
.dw-notice-desktop>div:first-child { display:none; }
.dw-notice-desktop>div:nth-child(2) { grid-column:1/-1; flex-wrap:wrap; }
.dw-notice-desktop>.dw-notice-author { grid-row:3; }
.dw-notice-desktop>.dw-notice-author>:first-child { display:none; }
.dw-notice-desktop>span { grid-row:3; text-align:left; color:#767676; font-size:12px; }
#user_layout_root .dw-notice-title { font-size:22px; font-weight:400; color:#434a53; line-height:1.5; white-space:normal; overflow:visible; }
.dw-notice-preview { font-size:14px; line-height:1.65; color:#666; margin-top:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dw-notice-mobile { display:none; }
#user_layout_root .dw-notice-detail { padding-top:44px; padding-bottom:64px; }
.dw-notice-detail :is(h1,h2) { line-height:1.5; }
.dw-notice-detail :is(.shadow,.shadow-sm,.shadow-lg) { box-shadow:none; border-radius:0; }
.dw-notice-detail .prose { color:#444; font-size:16px; line-height:1.8; }
.dark #user_layout_root main,.dark #user_layout_root { background:#16191e; color:#e5e7eb; }
.dark #user_layout_root main :is(h1,h2,h3,td),.dark #user_layout_root .dw-notice-title { color:#e5e7eb; }
.dark #user_layout_root main th,.dark .dw-biz-filters { background:#25282f; color:#e5e7eb; }
.dark .dw-biz :is(input,select,button),.dark .dw-notice-row:hover { background:#25282f; color:#e5e7eb; }
.dark .dw-biz :is(p,.dw-biz-card-meta),.dark .dw-support-banner>p,.dark .dw-support-nav>a,.dark .dw-notice-preview { color:#b9bec8; }
@media(max-width:1000px) {
 .dw-biz-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .dw-biz-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .dw-support-grid { grid-template-columns:150px minmax(0,1fr); gap:28px; }
}
@media(max-width:640px) {
 .dw-biz { padding:28px 20px 40px; }
 .dw-biz-filters { grid-template-columns:repeat(2,minmax(0,1fr)); padding:14px; }
 .dw-biz-filters>input { grid-column:1/-1; grid-row:3; }
 .dw-biz-filters>select:first-child { grid-column:1/-1; }
 .dw-biz-results { align-items:stretch; flex-direction:column; gap:12px; }
 .dw-biz-result-filters { min-width:0; }
 .dw-biz-grid { grid-template-columns:minmax(0,1fr); row-gap:26px; }
 .dw-biz-cover-title { font-size:26px; }
 .dw-center-links { gap:24px; }
 .dw-center-links>a { font-size:14px; }
 .dw-center-links span { margin-left:2px; }
 #user_layout_root .dw-support-page { padding:0 20px 40px; }
 .dw-support-banner { display:block; padding:24px 0; margin-bottom:22px; }
 .dw-support-banner>p { border:0; padding:10px 0 0; }
 .dw-support-grid { display:block; }
 .dw-support-nav { flex-direction:row; flex-wrap:wrap; gap:12px 24px; margin-bottom:26px; }
 #user_layout_root .dw-notice-heading h1 { font-size:26px; }
 .dw-notice-list .dw-notice-row { padding:22px 0; display:flex; flex-direction:column; }
 .dw-notice-list .dw-notice-desktop { display:none; }
 .dw-notice-mobile { display:flex; padding:0; order:1; }
 .dw-notice-mobile .truncate { white-space:normal; font-size:18px; font-weight:400; line-height:1.5; }
 .dw-notice-preview { order:2; }
 .dw-notice-mobile>div:last-child { flex-wrap:wrap; justify-content:flex-start; gap:8px; color:#767676; }
 .dw-notice-mobile>div:last-child>div:first-child>:first-child { display:none; }
}

.dw-notice-desktop>.dw-notice-preview { grid-column:1/-1; grid-row:2; margin:0; }
.dw-notice-mobile>.dw-notice-preview { order:0; }

@media(max-width:640px) {
 .dw-notice-mobile .dw-notice-number { display:none; }
 .dw-notice-mobile>div:first-child>.flex-1>div { flex-wrap:wrap; }
 #user_layout_root .dw-notice-mobile .dw-notice-title { flex-basis:100%; order:2; font-size:19px; line-height:1.5; }
 .dw-notice-mobile>div:first-child>.flex-1 { width:100%; }
}
