@charset "utf-8";

/* Devinfo 콘텐츠 공통 표시 규칙: 실제 게시글과 Part 3 미리보기가 함께 사용합니다. */
#bo_v_title .bo_v_tit {
    overflow-wrap:anywhere;
    word-break:keep-all;
}

#bo_v_con {
    color:#263244;
    font-size:16px;
    line-height:1.85;
    overflow-wrap:anywhere;
    word-break:keep-all;
}

#bo_v_con h2 {
    margin:42px 0 16px;
    padding:0 0 11px;
    border-bottom:2px solid #dce6f3;
    color:#172033;
    font-size:1.55em;
    line-height:1.4;
    letter-spacing:-.025em;
}

#bo_v_con h2:first-child { margin-top:10px; }

#bo_v_con h3 {
    margin:30px 0 12px;
    color:#243653;
    font-size:1.2em;
    line-height:1.45;
}

#bo_v_con p { margin:0 0 18px; }

#bo_v_con ul,
#bo_v_con ol {
    margin:0 0 22px;
    padding-left:26px;
}

#bo_v_con li { margin:7px 0; }

#bo_v_con strong { color:#172033; }

#bo_v_con code {
    border-radius:4px;
    background:#edf2f7;
    color:#b42318;
    font-family:Consolas, Monaco, "Courier New", monospace;
    font-size:.92em;
    word-break:normal;
}

#bo_v_con :not(pre) > code { padding:2px 6px; }

#bo_v_con pre {
    max-width:100%;
    margin:18px 0 24px;
    padding:18px;
    overflow-x:auto;
    border:1px solid #26354c;
    border-radius:9px;
    background:#111827;
    color:#f8fafc;
    line-height:1.65;
    tab-size:4;
    -webkit-overflow-scrolling:touch;
}

#bo_v_con pre code {
    display:block;
    min-width:max-content;
    padding:0;
    background:transparent;
    color:inherit;
    white-space:pre;
}

#bo_v_con blockquote {
    margin:20px 0 24px;
    padding:14px 17px;
    border-left:4px solid #d97706;
    border-radius:0 7px 7px 0;
    background:#fff8e8;
    color:#5f460f;
}

#bo_v_con blockquote > :last-child { margin-bottom:0; }

#bo_v_con a,
#ctt_con a {
    color:#1d4ed8;
    text-decoration:underline;
    text-underline-offset:3px;
    overflow-wrap:anywhere;
}

#bo_v_con img,
#bo_v_con video,
#bo_v_con iframe,
#ctt_con img {
    max-width:100%;
    height:auto;
}

#bo_v_con figure {
    max-width:100%;
    margin:24px 0;
}

#bo_v_con figcaption {
    margin-top:8px;
    color:#64748b;
    font-size:.88em;
    text-align:center;
}

#bo_v_con table {
    display:block;
    width:100%;
    max-width:100%;
    margin:20px 0 26px;
    overflow-x:auto;
    border-collapse:collapse;
    white-space:nowrap;
    -webkit-overflow-scrolling:touch;
}

#bo_v_con th,
#bo_v_con td {
    padding:11px 13px;
    border:1px solid #d9e0e8;
    text-align:left;
}

#bo_v_con th { background:#f4f7fa; }

#bo_v_con hr {
    margin:34px 0;
    border:0;
    border-top:1px solid #d9e0e8;
}

#ctt_con .devinfo-static-content {
    max-width:780px;
    color:#263244;
    font-size:16px;
    line-height:1.85;
    overflow-wrap:anywhere;
    word-break:keep-all;
}

#ctt_con .devinfo-static-content h2 {
    margin:38px 0 14px;
    padding-bottom:10px;
    border-bottom:1px solid #d9e0e8;
    color:#172033;
    font-size:1.35em;
}

#ctt_con .devinfo-static-content p { margin:0 0 17px; }

#ctt_con .devinfo-static-content ul {
    margin:0 0 22px;
    padding-left:24px;
}

#ctt_con .devinfo-static-content li { margin:7px 0; }

#ctt_con .devinfo-static-lead {
    padding:20px 22px;
    border-left:4px solid #2563eb;
    background:#f4f7fb;
    color:#172033;
    font-size:1.05em;
}

#ctt_con .devinfo-policy-date {
    margin-top:34px;
    padding-top:16px;
    border-top:1px solid #d9e0e8;
    color:#64748b;
    font-size:.9em;
}

#bo_list .devinfo-list-summary {
    display:-webkit-box;
    max-width:760px;
    margin:7px 0 0;
    overflow:hidden;
    color:#667085;
    font-size:13px;
    font-weight:400;
    line-height:1.55;
    text-overflow:ellipsis;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

#sch_res_detail {
    max-width:100%;
    box-sizing:border-box;
}

.sch_res_list .sch_res_title,
.sch_res_list p {
    overflow-wrap:anywhere;
    word-break:keep-all;
}

.sch_res_list p {
    line-height:1.7;
}

.devinfo-error-page {
    max-width:720px;
    margin:50px auto 90px;
    padding:52px 32px;
    border-top:4px solid #2563eb;
    border-bottom:1px solid #d9e0e8;
    text-align:center;
}

.devinfo-error-page span {
    color:#2563eb;
    font:800 13px/1.2 "Space Grotesk", sans-serif;
    letter-spacing:.12em;
}

.devinfo-error-page h1 {
    margin:16px 0;
    color:#172033;
    font-size:clamp(30px, 5vw, 46px);
    letter-spacing:-.04em;
}

.devinfo-error-page p {
    margin:0 0 28px;
    color:#64748b;
    font-size:16px;
    line-height:1.7;
}

.devinfo-error-page nav {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
}

.devinfo-error-page a {
    display:inline-flex;
    min-height:44px;
    align-items:center;
    padding:0 18px;
    border:1px solid #172033;
    color:#172033;
    font-weight:700;
}

.devinfo-error-page a:first-child {
    background:#172033;
    color:#fff;
}

@media (max-width:640px) {
    #bo_v_title .bo_v_tit {
        font-size:1.45em;
        line-height:1.4;
    }

    #bo_v_con {
        font-size:15px;
        line-height:1.78;
    }

    #bo_v_con h2 {
        margin-top:34px;
        font-size:1.35em;
    }

    #bo_v_con h3 { font-size:1.12em; }
    #bo_v_con ul, #bo_v_con ol { padding-left:22px; }
    #bo_v_con pre { margin-left:-4px; margin-right:-4px; padding:14px; font-size:13px; }
    #ctt_con .devinfo-static-content { font-size:15px; line-height:1.78; }
    #ctt_con .devinfo-static-lead { padding:16px; }
    #sch_res_detail { padding:18px 14px; }
    #sch_res_detail select,
    #sch_res_detail .frm_input,
    #sch_res_detail .sch_wr,
    #sch_res_detail .btn_submit { width:100%; }
    #sch_res_detail .sch_wr { display:grid; grid-template-columns:minmax(0, 1fr) 74px; margin-top:10px; }
    #sch_res_detail .sch_wr .frm_input { min-width:0; }
    #sch_res_detail .sch_wr .btn_submit { width:74px; }
    #bo_list .devinfo-list-summary { font-size:12px; -webkit-line-clamp:2; }
    .devinfo-error-page { margin:24px auto 60px; padding:36px 18px; }
}
