@charset "utf-8";
/* 백과사전 전용 스타일. 기존 공통 CSS 및 .sub-con 외부 영역은 변경하지 않습니다. */
.sub-con .encyclopedia {
  --enc-blue: #004be0; --enc-mint: #00ffa8;
  position: relative; isolation: isolate; width: 100%; margin-top: 20px;
  padding: 32px 30px 34px; box-sizing: border-box; background: var(--enc-blue) url("../images/encyclopedia/background.png") left top / 924px 1074px repeat-y;
  color: #222; font-family: "Noto Sans Korean", "Noto Sans KR", "Malgun Gothic", sans-serif; font-size: 16px;
}
.sub-con .encyclopedia::before, .sub-con .enc-popup__body::before {
  content: none;
}
.sub-con .encyclopedia *, .sub-con .enc-dialog * { box-sizing: border-box; }
.sub-con .encyclopedia button, .sub-con .encyclopedia input, .sub-con .encyclopedia select,
.sub-con .enc-dialog button, .sub-con .enc-dialog input { font-family: inherit; }
.sub-con .encyclopedia button, .sub-con .enc-dialog button { cursor: pointer; }
.sub-con .encyclopedia img, .sub-con .enc-dialog img { max-width: 100%; vertical-align: middle; }
.sub-con .enc-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.sub-con .encyclopedia :focus-visible, .sub-con .enc-dialog :focus-visible { outline: 3px solid #ffdf40; outline-offset: 4px; }
.sub-con .enc-header { position: static; float: none; width: auto; min-width: 0; height: auto; min-height: 0; padding: 0; margin: 0; border: 0; background: none; display: grid; grid-template-columns: 140px minmax(0,1fr) 140px; align-items: start; gap: 14px; }
.sub-con .enc-title { margin: 0; padding: 0; border: 0; line-height: 1; background: none; text-align: center; }
.sub-con .enc-title::before, .sub-con .enc-title::after { display: none; }
.sub-con .enc-title img { display: block; width: 398px; height: auto; margin: 0 auto; }
.sub-con .enc-sticker { display: inline-flex; align-items: center; justify-content: center; min-width: 114px; height: 42px; padding: 0 15px 3px; color: #003d96; font-size: 17px; font-weight: 800; font-style: italic; line-height: 1.2; white-space: nowrap; border: 0; background: url("../images/encyclopedia/button.png") center / 100% 100% no-repeat; text-decoration: none; }
.sub-con .enc-sticker:hover { color: #001b50; filter: brightness(1.08); }
.sub-con .enc-sticker--guide { width: 135px; min-width: 0; background-image: url("../images/encyclopedia/button.png"); }
.sub-con .enc-sticker--small { min-width: 88px; background-image: url("../images/encyclopedia/button.png"); }
.sub-con .enc-header > .enc-sticker { margin-top: 18px; }
.sub-con .enc-header > .enc-sticker:last-child { justify-self: end; }
.sub-con .enc-categories { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); align-items: end; gap: 20px; margin: 20px 0 0; padding: 0; list-style: none; }
.sub-con .enc-categories li { min-width: 0; margin: 0; padding: 0; list-style: none; }
.sub-con .enc-category { display: flex; justify-content: center; align-items: end; position: relative; width: 100%; min-height: 112px; padding: 0 0 3px; border: 0; background: transparent; transition: transform .16s ease, filter .16s ease; }
.sub-con .enc-category img { display: block; width: auto; max-width: 100%; max-height: 110px; height: auto; }
.sub-con .enc-category:hover { transform: translateY(-5px); filter: brightness(1.06); }
.sub-con .enc-category[aria-pressed="true"]::after { content: ""; position: absolute; left: 20%; right: 20%; bottom: -9px; height: 3px; border-radius: 5px; background: var(--enc-mint); }
.sub-con .enc-toolbar { display: grid; grid-template-columns: 1fr minmax(0,497px) 1fr; align-items: center; gap: 12px; margin: 29px 0 38px; }
.sub-con .enc-search { grid-column: 2; display: flex; height: 45px; min-width: 0; margin: 0; border: 3px solid var(--enc-mint); border-radius: 6px; overflow: hidden; background: #fff; }
.sub-con .enc-search select { flex: 0 0 94px; width: 94px; height: 100%; padding: 0 10px; border: 0; border-right: 1px solid #d7d7d7; background-color: #fff; color: #222; font-size: 16px; }
.sub-con .enc-search input { flex: 1; width: 0; min-width: 0; height: 100%; margin: 0; padding: 0 13px; border: 0; border-radius: 0; color: #222; background: #fff; font-size: 16px; }
.sub-con .enc-search input::placeholder { color: #666; opacity: 1; }
.sub-con .enc-search button { flex: 0 0 70px; border: 0; border-radius: 0; color: var(--enc-mint); background: var(--enc-blue); font-size: 16px; font-weight: 700; }
.sub-con .enc-event-button { position: relative; justify-self: end; margin: 0; padding-left: 18px; }
.sub-con .enc-event-button img { position: absolute; width: 31px; height: 31px; left: -17px; top: -5px; }
.sub-con .enc-board { overflow: hidden; border-radius: 10px; background: white; }
.sub-con .enc-table { width: 100%; margin: 0; border: 0; border-collapse: collapse; table-layout: fixed; color: #333; background: white; font-size: 16px; line-height: 1.45; }
.sub-con .enc-table col.enc-col-number { width: 70px; }
.sub-con .enc-table col.enc-col-category { width: 112px; }
.sub-con .enc-table col.enc-col-date { width: 108px; }
.sub-con .enc-table col.enc-col-views { width: 65px; }
.sub-con .enc-table th { height: 46px; padding: 10px 4px; border: 0; border-bottom: 1px solid #ddd; background: #f7f7f8; color: #333; font-size: 16px; font-weight: 600; text-align: center; }
.sub-con .enc-table td { height: 63px; padding: 9px 4px; border: 0; border-bottom: 1px solid #ddd; color: #333; text-align: center; vertical-align: middle; }
.sub-con .enc-table tbody tr:last-child td { border-bottom: 0; }
.sub-con .enc-table .enc-subject { padding-left: 12px; padding-right: 12px; text-align: left; }
.sub-con .enc-subject__line { display: flex; align-items: center; gap: 6px; min-width: 0; }
.sub-con .enc-subject__line > a { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #111; font-size: 16px; line-height: 1.5; text-decoration: none; }
.sub-con .enc-subject__line > a:hover { color: #004be0; text-decoration: underline; }
.sub-con .enc-recommend { flex: 0 0 16px; width: 16px; height: 17px; }
.sub-con .enc-reply-icon { flex: 0 0 13px; width: 13px; height: 13px; }
.sub-con .enc-author { display: block; margin: 2px 0 0; font-size: 14px; line-height: 1.4; color: #666; overflow-wrap: anywhere; }
.sub-con .enc-row--reply .enc-author { padding-left: 19px; }
.sub-con .enc-badge { display: inline-flex; justify-content: center; align-items: center; width: 90px; max-width: 100%; min-height: 32px; padding: 5px 7px; border-radius: 30px; font-size: 14px; line-height: 1.2; color: #252525; white-space: nowrap; background: #ffbce5; }
.sub-con .enc-badge--educator { background: #ffda78; }
.sub-con .enc-badge--policy { background: #86c8ff; }
.sub-con .enc-badge--event { background: #26f6ad; }
.sub-con .enc-badge--free { background: #d89cff; }
.sub-con .enc-mobile-label { display: none; }
/* @note 2026-10-13: 페이지네이션 중앙 정렬 수정 시작 */
.sub-con .enc-bottom { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 16px; margin-top: 29px; }
/* 페이지 개수와 관계없이 콘텐츠 중앙에 정렬하고 우측 버튼은 별도 칸에 배치. */
.sub-con .enc-bottom > .enc-pagination { grid-column: 2; grid-row: 1; justify-self: center; }
.sub-con .enc-bottom > .enc-actions { grid-column: 3; grid-row: 1; justify-self: end; }
@media (max-width: 1180px) {
  .sub-con .enc-bottom { grid-template-columns: minmax(0,1fr); }
  .sub-con .enc-bottom > .enc-pagination { grid-column: 1; }
  .sub-con .enc-bottom > .enc-actions { grid-column: 1; grid-row: 2; justify-self: end; }
}
/* @note 2026-10-13: 페이지네이션 중앙 정렬 수정 끝 */
.sub-con .enc-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; margin: 0; }
.sub-con .enc-pagination a, .sub-con .enc-pagination span { display: inline-flex; justify-content: center; align-items: center; width: 34px; height: 35px; padding: 0; border: 1px solid var(--enc-mint); color: var(--enc-mint); background: transparent; font-size: 17px; font-weight: 700; text-decoration: none; line-height: 1; }
.sub-con .enc-pagination a[aria-current="page"] { color: #003a99; background: var(--enc-mint); }
.sub-con .enc-pagination .enc-page-arrow, .sub-con .enc-pagination .enc-page-gap { width: 24px; border: 0; }
.sub-con .enc-actions { display: flex; justify-content: flex-end; gap: 12px; }
/* Native dialog stays inside .sub-con in the DOM, with its own top-layer backdrop. */
.sub-con .enc-dialog { width: min(724px, calc(100% - 32px)); max-width: 724px; max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; border: 0; border-radius: 12px; color: #fff; background: #004be0; font-family: "Noto Sans KR", "Malgun Gothic", sans-serif; overscroll-behavior: contain; scrollbar-width: thin; }
.sub-con .enc-dialog { scroll-padding-block: 20px 85px; }
.sub-con .enc-dialog:not([open]) { display: none; }
.sub-con .enc-dialog::backdrop { background: rgba(0,0,0,.70); }
.sub-con .enc-popup__body { position: relative; isolation: isolate; padding: 25px 28px 30px; text-align: center; background: #004be0 url("../images/encyclopedia/background.png") left top / 924px 1074px repeat-y; }
.sub-con .enc-popup__top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; }
.sub-con .enc-popup__campaign { width: 278px; height: auto; }
.sub-con .enc-popup__links { display: flex; gap: 12px; margin-left: auto; }
.sub-con .enc-popup__links .enc-sticker { min-width: 70px; height: 34px; font-size: 16px; padding: 0 10px 3px; }
.sub-con .enc-popup__hero { display: block; width: min(468px,100%); height: auto; margin: 26px auto 6px; }
.sub-con .enc-popup__label { display: inline-block; margin: 0; padding: 3px 9px; color: #003a99; background: #00ffa8; font-size: 19px; font-weight: 800; line-height: 1.3; }
.sub-con .enc-popup__period { margin: 10px 0 25px; color: white; font-size: 21px; font-weight: 600; line-height: 1.5; }
.sub-con .enc-popup__intro { margin: 0 0 25px; color: white; font-size: 23px; font-weight: 500; line-height: 1.45; word-break: keep-all; }
.sub-con .enc-popup__intro strong { color: #fff500; font-weight: 800; }
.sub-con .enc-popup__steps { list-style: none; margin: 12px 0 26px; padding: 0; color: white; font-size: 18px; line-height: 1.8; word-break: keep-all; }
.sub-con .enc-popup__steps li { margin: 0; padding: 0; list-style: none; }
.sub-con .enc-popup__write { display: inline-block; width: 285px; max-width: 100%; height: auto; padding: 0; background: none; }
.sub-con .enc-popup__write img { display: block; width: 100%; height: auto; }
.sub-con .enc-popup__footer { position: sticky; bottom: 0; display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 12px 20px; color: #fff; background: #0036a4; }
.sub-con .enc-popup__footer label { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #fff; font-size: 15px; cursor: pointer; }
.sub-con .enc-popup__footer input { width: 18px; height: 18px; margin: 0; accent-color: #00ffa8; }
.sub-con .enc-popup__close { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-width: 70px; min-height: 36px; padding: 2px 0; border: 0; color: #fff; background: transparent; font-size: 18px; }
.sub-con .enc-popup__close span { font-size: 28px; line-height: 1; }
@media (max-width: 1180px) and (min-width: 1001px) {
  .sub-con .encyclopedia { padding-inline: 22px; }
  .sub-con .enc-header { grid-template-columns: 125px minmax(0,1fr) 115px; gap: 8px; }
  .sub-con .enc-sticker--guide { width: 125px; font-size: 16px; }
  .sub-con .enc-categories { gap: 12px; }
  .sub-con .enc-table col.enc-col-category { width: 98px; }
  .sub-con .enc-table col.enc-col-number { width: 50px; }

}
@media (max-width: 767px) {
  .sub-con .encyclopedia { padding: 25px 18px 26px; }
  .sub-con .enc-header { grid-template-columns: 1fr 1fr; gap: 16px; align-items: center; }
  .sub-con .enc-title { grid-column: 1 / -1; grid-row: 1; }
  .sub-con .enc-title img { width: min(398px,92%); }
  .sub-con .enc-header > .enc-sticker { margin-top: 0; }
  .sub-con .enc-categories { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 23px 16px; margin: 25px 0 0; }
  .sub-con .enc-category { min-height: 110px; }
  .sub-con .enc-toolbar { grid-template-columns: minmax(0,1fr); gap: 16px; margin: 29px 0 24px; }
  .sub-con .enc-search { grid-column: 1; width: 100%; height: 46px; }
  .sub-con .enc-search select { flex-basis: 78px; width: 78px; padding-left: 8px; font-size: 14px; }
  .sub-con .enc-search input { padding-inline: 9px; font-size: 14px; }
  .sub-con .enc-search button { flex-basis: 54px; font-size: 15px; }
  .sub-con .enc-table, .sub-con .enc-table tbody { display: block; }
  .sub-con .enc-table colgroup, .sub-con .enc-table thead { display: none; }
  .sub-con .enc-table tr { display: grid; grid-template-columns: 1fr auto; padding: 16px; gap: 7px 14px; border-bottom: 1px solid #ddd; }
  .sub-con .enc-table tr:last-child { border: 0; }
  .sub-con .enc-table td { display: block; width: auto; height: auto; padding: 0; border: 0; font-size: 13px; text-align: left; }
  .sub-con .enc-table .enc-number { display: none; }
  .sub-con .enc-table .enc-category-cell { grid-column: 1 / -1; }
  .sub-con .enc-table .enc-subject { grid-column: 1 / -1; padding: 0; }
  .sub-con .enc-subject__line { align-items: flex-start; }
  .sub-con .enc-subject__line > a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; overflow-wrap: anywhere; line-height: 1.5; }
  .sub-con .enc-subject__line > img { margin-top: 4px; }
  .sub-con .enc-author { font-size: 12px; margin-top: 5px; }
  .sub-con .enc-mobile-label { display: inline; color: #777; margin-right: 4px; }
  .sub-con .enc-table .enc-views { text-align: right; }
  .sub-con .enc-badge { width: auto; min-width: 74px; min-height: 26px; padding: 4px 12px; font-size: 12px; }
  .sub-con .enc-row--reply .enc-category-cell { display: none; }
  .sub-con .enc-bottom { gap: 22px; margin-top: 24px; } /* @note 2026-10-13: 중앙 정렬 Grid에 맞춘 모바일 간격 */
  .sub-con .enc-pagination { gap: 5px; }
  .sub-con .enc-pagination a, .sub-con .enc-pagination span { width: 30px; height: 33px; font-size: 15px; }
  .sub-con .enc-pagination .enc-page-tail { display: none; }
  .sub-con .enc-actions { justify-content: center; width: 100%; }
  .sub-con .enc-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); border-radius: 10px; }
  .sub-con .enc-popup__body { padding: 22px 18px 26px; }
  .sub-con .enc-popup__top { justify-content: center; gap: 15px; }
  .sub-con .enc-popup__campaign { width: min(278px,100%); }
  .sub-con .enc-popup__links { margin: 0; }
  .sub-con .enc-popup__hero { margin-top: 22px; }
  .sub-con .enc-popup__label { font-size: 16px; }
  .sub-con .enc-popup__period { margin-bottom: 22px; font-size: 16px; }
  .sub-con .enc-popup__intro { font-size: 19px; }
  .sub-con .enc-popup__steps { font-size: 15px; text-align: left; line-height: 1.7; }
  .sub-con .enc-popup__steps li + li { margin-top: 8px; }
  .sub-con .enc-popup__write { width: 250px; height: auto; }
  .sub-con .enc-popup__footer { padding: 10px 14px; gap: 8px; }
  .sub-con .enc-popup__footer label { font-size: 13px; }
}
@media (max-width: 374px) {
  .sub-con .encyclopedia { padding-inline: 12px; }
  .sub-con .enc-categories { gap: 20px 10px; }
  .sub-con .enc-category { min-height: 94px; }
  .sub-con .enc-pagination { gap: 3px; }
  .sub-con .enc-pagination a, .sub-con .enc-pagination span { width: 27px; }
}
@media (prefers-reduced-motion: reduce) {
  .sub-con .enc-category { transition: none; }
}


/* 쓰기 페이지 전용: 공통 영역 및 리스트 스타일에 영향을 주지 않습니다. */
.sub-con .enc-write { margin-top: 10px; padding-top: 32px; }
.sub-con .encw-title { display: block; width: 324px; max-width: 90%; height: auto; margin: 0 auto; }
.sub-con .encw-heading { margin: -2px 0 16px; padding: 0; border: 0; background: none; color: #fff; font-size: 26px; font-weight: 600; line-height: 1.25; }
.sub-con .encw-heading::before, .sub-con .encw-heading::after { display: none; }
.sub-con .encw-form { margin: 0; padding: 0; }
.sub-con .encw-panel { padding: 16px; border-radius: 10px; background: #fff; }
.sub-con .encw-profile { display: grid; grid-template-columns: repeat(3,100px minmax(0,1fr)); margin: 0; padding: 0; border-top: 1px solid #d4d4d4; border-bottom: 1px solid #d4d4d4; font-size: 16px; }
.sub-con .encw-profile dt, .sub-con .encw-profile dd { display: flex; align-items: center; min-height: 45px; margin: 0; padding: 10px 20px; color: #222; font-weight: 400; line-height: 1.4; overflow-wrap: anywhere; }
.sub-con .encw-profile dt { justify-content: center; padding-inline: 10px; background: #f1f1f1; border-right: 1px solid #d4d4d4; }
.sub-con .encw-row { display: grid; grid-template-columns: 100px minmax(0,1fr); border-bottom: 1px solid #d4d4d4; }
.sub-con .encw-label { display: flex; align-items: center; justify-content: flex-start; gap: 2px; margin: 0; padding: 15px 20px; background: #f1f1f1; border-right: 1px solid #d4d4d4; color: #222; font-size: 16px; line-height: 1.5; font-weight: 400; }
.sub-con .encw-required { color: #d63223; }
.sub-con .encw-control { min-width: 0; padding: 10px 0 10px 20px; }
.sub-con .encw-categories { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; min-width: 0; padding: 0; margin: 0; border: 0; }
.sub-con .encw-option { display: inline-flex; align-items: center; gap: 6px; margin: 0; cursor: pointer; }
.sub-con .encw-option input { position: static; opacity: 1; appearance: auto; width: 14px; height: 14px; margin: 0; accent-color: #004be0; flex-shrink: 0; }
.sub-con .encw-option .enc-badge { width: 90px; min-height: 32px; font-size: 14px; }
.sub-con .encw-option input:checked + .enc-badge { box-shadow: 0 0 0 2px #004be0; }
.sub-con .enc-write .encw-input { display: block; width: 100%; min-width: 0; height: 36px; margin: 0; padding: 7px 10px; border: 1px solid #ccc; border-radius: 0; background: #fff; color: #222; font-size: 16px; box-shadow: none; }
.sub-con .encw-input::placeholder, .sub-con .encw-body::placeholder { color: #999; opacity: 1; }
.sub-con .encw-editor { width: 100%; min-width: 0; border: 1px solid #d8d8d8; background: #fff; }
.sub-con .encw-editor .damoEditor { width: 100%; min-width: 0; margin: 0; border: 0; }
.sub-con .encw-editor .toolbar { display: block; width: 100%; height: auto; min-height: 64px; padding: 4px; border: 0; border-bottom: 1px solid #ddd; background: #f4f5f7; box-sizing: border-box; }
.sub-con .encw-editor .toolbar .subbar { display: flex; flex-wrap: wrap; align-items: center; width: 100%; height: auto; margin: 0; padding: 0; }
.sub-con .encw-editor .toolbar .damoButton, .sub-con .encw-editor .toolbar .damoSelectButton, .sub-con .encw-editor .toolbar .damoSelectBox { flex: 0 0 auto; }
.sub-con .encw-editor .toolbar .damoButton { display: inline-block; width: 26px; height: 26px; margin: 1px; padding: 0; border: 1px solid transparent; background: transparent url('../images/encyclopedia/write-editor-icons.png') no-repeat; vertical-align: middle; cursor: default; }
.sub-con .encw-editor .toolbar .damoSelectBox { display: inline-flex !important; align-items: center; height: 26px; margin: 1px; border: 1px solid #c6c6c6; border-radius: 2px; font-size: 12px; line-height: 22px; }
.sub-con .encw-editor .toolbar .selecttitle { display: block; padding-left: 3px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 12px; line-height: 22px; }
.sub-con .encw-editor .toolbar .dropbutton { display: inline-block; width: 16px; height: 24px; flex-shrink: 0; background: url('../images/encyclopedia/write-editor-icons.png') no-repeat; }
.sub-con .encw-editor .toolbar .damoSelectButton { display: inline-flex; align-items: center; width: 36px; height: 28px; margin: 1px; border: 1px solid transparent; border-radius: 2px; }
.sub-con .encw-editor .toolbar .damoSelectButton .damoButton { width: 24px; height: 24px; margin: 0; border: 0; }
.sub-con .encw-editor .toolbar .buttonDisable { opacity: .5; }
.sub-con .encw-editor .toolbar .damoSelectBoxPanel, .sub-con .encw-editor .toolbar .morePn { display: none !important; }
.sub-con .encw-body { display: block; width: 100%; min-width: 0; height: 210px; min-height: 210px; margin: 0; padding: 12px 14px; border: 0; border-radius: 0; color: #222; background: #fff; resize: vertical; font-family: inherit; font-size: 16px; line-height: 1.65; box-shadow: none; }
.sub-con .encw-editor-bottom { display: flex; flex-wrap: wrap; align-items: center; min-height: 23px; padding: 2px 5px; border-top: 1px solid #ddd; background: #f7f7f7; color: #344050; font-size: 10px; line-height: 1.3; }
.sub-con .encw-editor-bottom span { padding: 0 7px; border-right: 1px solid #d5d5d5; }
.sub-con .encw-editor-bottom .encw-editor-resize { margin-left: auto; border: 0; color: #777; }
.sub-con .encw-file-notes { list-style: none; padding: 0; margin: 2px 0 13px; font-size: 15px; color: #444; line-height: 1.75; word-break: keep-all; }
.sub-con .encw-file-notes li { margin: 0; padding: 0 0 0 15px; text-indent: -15px; list-style: none; }
.sub-con .encw-file-row { display: flex; gap: 8px; align-items: stretch; min-width: 0; }
.sub-con .encw-file-row + .encw-file-row { margin-top: 8px; }
.sub-con .encw-file-picker { display: flex; flex: 1; min-width: 0; position: relative; overflow: hidden; height: 36px; border: 1px solid #ccc; background: #fff; cursor: pointer; }
.sub-con .encw-file-name { flex: 1; min-width: 0; padding: 7px 10px; color: #222; font-size: 15px; line-height: 20px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.sub-con .encw-file-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 36px; background: #ccc; }
.sub-con .encw-file-icon img { display: block; width: 16px; height: 17px; }
.sub-con .encw-file-picker input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.sub-con .encw-file-picker:focus-within { outline: 3px solid #004be0; outline-offset: 2px; }
.sub-con .encw-file-button { display: flex; align-items: center; justify-content: center; flex: 0 0 36px; width: 36px; height: 36px; padding: 0; border: 0; background: #ccc; color: #59606a; font-size: 27px; font-weight: 500; line-height: 1; }
.sub-con .encw-row--files .encw-control { padding-block: 13px 16px; }
.sub-con .encw-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 29px; }
.sub-con .encw-actions-right { display: flex; gap: 12px; }
.sub-con .encw-actions .enc-sticker { min-width: 88px; height: 40px; padding-inline: 12px; }
.sub-con .encw-actions .encw-list { min-width: 70px; background-image: url('../images/encyclopedia/button.png'); }
@media (max-width:1180px) and (min-width:1001px) {
  .sub-con .encw-profile { grid-template-columns: repeat(3,75px minmax(0,1fr)); }
  .sub-con .encw-profile dd { padding-inline: 12px; }
  .sub-con .encw-categories { gap: 12px; }
}
@media (max-width:767px) {
  .sub-con .enc-write { padding: 25px 16px; }
  .sub-con .encw-title { max-width: 100%; }
  .sub-con .encw-heading { margin: 20px 0 13px; font-size: 21px; }
  .sub-con .encw-panel { padding: 12px; }
  .sub-con .encw-profile { grid-template-columns: 72px minmax(0,1fr); }
  .sub-con .encw-profile dt, .sub-con .encw-profile dd { min-height: 39px; padding: 8px 12px; font-size: 14px; }
  .sub-con .encw-profile dt:not(:first-child), .sub-con .encw-profile dd:not(:nth-child(2)) { border-top: 1px solid #ddd; }
  .sub-con .encw-row { display: block; padding-top: 12px; }
  .sub-con .encw-label { display: flex; border: 0; padding: 0; background: #fff; font-size: 15px; font-weight: 600; }
  .sub-con .encw-control { padding: 10px 0 13px; }
  .sub-con .encw-categories { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 10px; }
  .sub-con .encw-option { gap: 5px; }
  .sub-con .encw-option .enc-badge { width: auto; min-width: 0; flex: 1; max-width: 100px; min-height: 30px; padding: 5px 7px; font-size: 12px; }
  .sub-con .enc-write .encw-input { height: 40px; font-size: 16px; }
  .sub-con .encw-editor .toolbar { min-height: 0; }
  .sub-con .encw-editor .toolbar .subbar { column-gap: 1px; }
  .sub-con .encw-body { min-height: 300px; height: 320px; padding: 10px; font-size: 15px; line-height: 1.65; }
  .sub-con .encw-editor-bottom { font-size: 9px; }
  .sub-con .encw-editor-bottom .encw-editor-resize { display: none; }
  .sub-con .encw-file-notes { font-size: 13px; line-height: 1.7; }
  .sub-con .encw-file-notes li + li { margin-top: 5px; }
  .sub-con .encw-file-row { gap: 5px; }
  .sub-con .encw-file-name { padding-inline: 7px; font-size: 12px; }
  .sub-con .encw-file-icon { flex-basis: 30px; }
  .sub-con .encw-file-button { flex-basis: 32px; width: 32px; }
  .sub-con .encw-actions { gap: 10px; margin-top: 23px; }
  .sub-con .encw-actions-right { gap: 8px; }
  .sub-con .encw-actions .enc-sticker { min-width: 80px; font-size: 15px; padding-inline: 10px; }
  .sub-con .encw-actions .encw-list { min-width: 64px; }
}
@media (max-width:374px) {
  .sub-con .enc-write { padding-inline: 12px; }
  .sub-con .encw-panel { padding: 10px; }
  .sub-con .encw-actions .enc-sticker { min-width: 74px; font-size: 14px; }
  .sub-con .encw-actions .encw-list { min-width: 56px; }
}


/* 백과사전 상세 전용: .sub-con 밖과 기존 리스트/쓰기 스타일은 변경하지 않습니다. */
.sub-con .enc-detail { margin-top: 10px; padding-top: 32px; }
.sub-con .encd-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sub-con .encd-logo { display: block; width: 207px; max-width: 55%; height: auto; }
.sub-con .encd-title { margin: 12px 0 6px; padding: 0; border: 0; background: none; color: #fff; font-size: 25px; font-weight: 500; line-height: 1.45; letter-spacing: -.045em; overflow-wrap: anywhere; word-break: keep-all; }
.sub-con .encd-title::before, .sub-con .encd-title::after, .sub-con .encd-comments-title::before, .sub-con .encd-comments-title::after { display: none; }
.sub-con .encd-meta { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 20px; align-items: end; color: #d7e6ff; font-size: 16px; line-height: 1.65; }
.sub-con .encd-meta p { margin: 0; color: inherit; font-size: inherit; line-height: inherit; }
.sub-con .encd-meta-line { grid-column: 1; overflow-wrap: anywhere; }
.sub-con .encd-keywords { display: flex; flex-wrap: wrap; gap: 0 5px; }
.sub-con .encd-like { grid-column: 2; grid-row: 1 / 4; align-self: end; display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 100px; min-height: 35px; margin: 0; padding: 5px 12px; border: 1px solid #88b4ff; border-radius: 30px; color: #fff; background: transparent; font-size: 15px; line-height: 1.3; }
.sub-con .encd-like[aria-pressed="true"] { color: #004be0; background: #fff; }
/* @note 2026-10-14 */
.sub-con .encd-body { margin-top: 25px;margin-bottom: 15px; padding: 20px; border-radius: 10px; background: #fff; color: #333; font-size: 16px; line-height: 1.62; overflow-wrap: anywhere; }
.sub-con .encd-body p { margin: 0; color: inherit; font-size: inherit; line-height: inherit; }
.sub-con .encd-body a { display: inline; color: #333; text-decoration: none; overflow-wrap: anywhere; word-break: break-all; }
.sub-con .encd-body a:hover { text-decoration: underline; }
.sub-con .encd-body img, .sub-con .encd-body video { max-width: 100%; height: auto; }
.sub-con .encd-body iframe { max-width: 100%; }
.sub-con .encd-attachments { margin-top: 20px; padding-top: 15px; border-top: 1px solid #ddd; }
.sub-con .encd-attachments h5 { margin: 0 0 8px; color: #222; font-size: 15px; }
.sub-con .encd-attachments ul { margin: 0; padding: 0; list-style: none; }
.sub-con .encd-attachments li { list-style: none; }
.sub-con .encd-attachments a { color: #004be0; text-decoration: underline; }
.sub-con .encd-comments-title { display: flex; align-items: center; gap: 9px; margin: 27px 0 14px; padding: 0 6px; border: 0; color: #fff; background: none; font-size: 21px; font-weight: 500; line-height: 1.35; }
.sub-con .encd-comment-count { display: inline-flex; align-items: center; justify-content: center; min-width: 27px; min-height: 26px; padding: 1px 6px; border-radius: 3px; color: #004be0; background: #a5c4ff; font-size: 15px; font-style: normal; }
.sub-con .encd-comments-panel { overflow: hidden; border-radius: 10px; background: #f7f7f9; }
.sub-con .encd-comment-form { display: grid; grid-template-columns: minmax(0,1fr) 80px; align-items: start; gap: 14px; margin: 0; padding: 18px 20px; border-bottom: 1px solid #d8dbe0; background: #fff; }
.sub-con .encd-comment-form textarea { display: block; min-width: 0; width: 100%; min-height: 68px; height: 68px; margin: 0; padding: 0; border: 0; border-radius: 0; color: #333; background: #fff; resize: vertical; font-family: inherit; font-size: 16px; line-height: 1.65; box-shadow: none; }
.sub-con .encd-comment-form textarea::placeholder { color: #888; opacity: 1; }
.sub-con .encd-comment-submit { display: flex; flex-direction: column; align-items: center; gap: 9px; }
.sub-con .encd-counter { color: #666; font-size: 14px; line-height: 1.3; white-space: nowrap; }
.sub-con .encd-register { display: inline-flex; align-items: center; justify-content: center; width: 70px; min-width: 70px; height: 39px; margin: 0; padding: 0 9px 2px; border: 0; color: #fff; background: url('../images/encyclopedia/detail-button-register.png') center / 100% 100% no-repeat; font-size: 16px; font-weight: 700; line-height: 1.2; }
.sub-con .encd-comment-list, .sub-con .encd-replies { margin: 0; padding: 0 20px; list-style: none; }
.sub-con .encd-comment { padding: 14px 0 12px; border-bottom: 1px dotted #c4cbd3; list-style: none; }
.sub-con .encd-comment:last-child { border: 0; }
.sub-con .encd-comment-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; color: #666; font-size: 14px; line-height: 1.4; }
.sub-con .encd-user { width: 18px; height: 17px; }
.sub-con .encd-comment-meta strong { color: #444; font-size: 14px; font-weight: 500; }
.sub-con .encd-comment-meta time { color: #777; font-size: 14px; }
.sub-con .encd-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 3px; border: 0; background: transparent; }
.sub-con .encd-icon-button img { display: block; width: 14px; height: auto; }
.sub-con .encd-comment-text { margin: 5px 0 0; color: #333; font-size: 16px; line-height: 1.6; overflow-wrap: anywhere; }
.sub-con .encd-reply-toggle { margin: 0 0 0 auto; padding: 3px 5px; border: 0; background: transparent; color: #586a80; font-size: 13px; }
.sub-con .encd-replies { padding: 0 0 0 28px; margin-top: 10px; border-top: 1px dotted #c4cbd3; }
.sub-con .encd-comment--reply { position: relative; padding-top: 12px; }
.sub-con .encd-comment--reply::before { content: "↳"; position: absolute; left: -23px; top: 13px; color: #004be0; font-size: 19px; }
.sub-con .encd-inline-form { margin-top: 12px; border: 1px solid #d8dbe0; border-radius: 4px; padding: 12px; }
.sub-con .encd-cancel { padding: 2px 6px; border: 0; color: #666; background: transparent; font-size: 13px; }
.sub-con .encd-inline-form[hidden], .sub-con .encd-attachments[hidden] { display: none; }
.sub-con .encd-neighbors { margin-top: 29px; border-top: 1px solid #7aa5ed; }
.sub-con .encd-neighbor { display: grid; grid-template-columns: 96px minmax(0,1fr); align-items: center; gap: 0; min-height: 45px; border-bottom: 1px solid #7aa5ed; }
.sub-con .encd-neighbor-label { display: flex; gap: 12px; align-items: center; padding: 10px; color: #00ffa8; font-size: 16px; font-style: italic; font-weight: 600; }
.sub-con .encd-neighbor a { display: block; padding: 10px 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #e5eeff; font-size: 16px; line-height: 1.45; text-decoration: none; }
.sub-con .encd-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 29px; }
.sub-con .encd-actions-right { display: flex; gap: 10px; }
/* @note 2026-10-15 */
.sub-con .encd-actions-right { margin-left: auto; }
/* //@note 2026-10-15 */
.sub-con .encd-actions .enc-sticker { min-width: 70px; height: 40px; padding-inline: 12px; background-image: url('../images/encyclopedia/button.png'); }
.sub-con .encd-actions .encd-review-button { min-width: 127px; background-image: url('../images/encyclopedia/button.png'); }
/* 검토의견 팝업: PPT 11쪽 기준, 상세 디자인의 파랑/민트 컬러 적용. */
.sub-con .encd-dialog { width: min(520px,calc(100% - 32px)); max-width: 520px; max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; border: 0; border-radius: 10px; background: #fff; color: #222; font-family: "Noto Sans Korean", "Noto Sans KR", "Malgun Gothic", sans-serif; }
.sub-con .encd-dialog:not([open]) { display: none; }
.sub-con .encd-dialog::backdrop { background: rgba(0,0,0,.65); }
.sub-con .encd-dialog-top { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 3px solid #00ffa8; background: #004be0; }
.sub-con .encd-dialog-title { margin: 0; padding: 0; color: #fff; font-size: 23px; font-weight: 600; line-height: 1.35; background: none; }
.sub-con .encd-dialog-close { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin: 0; padding: 0; border: 0; color: #fff; background: transparent; font-size: 30px; line-height: 1; }
.sub-con .encd-review-form { margin: 0; padding: 24px; }
.sub-con .encd-review-form textarea { display: block; width: 100%; min-height: 150px; margin: 0; padding: 12px; border: 1px solid #bfc7d0; border-radius: 3px; resize: vertical; font-family: inherit; font-size: 16px; line-height: 1.6; color: #222; background: #fff; }
.sub-con .encd-review-count { margin: 6px 0 14px; text-align: right; color: #666; font-size: 14px; }
.sub-con .encd-review-help { margin: 0; color: #555; font-size: 14px; line-height: 1.7; word-break: keep-all; }
.sub-con .encd-review-footer { margin-top: 22px; text-align: center; }
.sub-con .encd-dialog button { cursor: pointer; font-family: inherit; }
.sub-con .encd-dialog :focus-visible { outline: 3px solid #ffd647; outline-offset: 3px; }
@media (max-width:767px) {
  .sub-con .enc-detail { padding: 24px 16px; }
  .sub-con .encd-top { gap: 14px; }
  .sub-con .encd-logo { width: 175px; max-width: 60%; }
  .sub-con .encd-title { margin: 17px 0 12px; font-size: 21px; line-height: 1.5; letter-spacing: -.035em; }
  .sub-con .encd-meta { grid-template-columns: minmax(0,1fr); font-size: 14px; line-height: 1.6; gap: 5px; }
  .sub-con .encd-like { grid-column: 1; grid-row: auto; justify-self: end; margin-top: 6px; min-height: 36px; font-size: 14px; }
  .sub-con .encd-body { padding: 16px; margin-top: 18px; font-size: 15px; line-height: 1.75; }
  .sub-con .encd-comments-title { font-size: 19px; margin-top: 24px; padding-left: 0; }
  .sub-con .encd-comment-form { grid-template-columns: minmax(0,1fr); gap: 9px; padding: 16px; }
  .sub-con .encd-comment-form textarea { min-height: 80px; height: 80px; font-size: 15px; }
  .sub-con .encd-comment-submit { flex-direction: row; justify-content: flex-end; gap: 12px; }
  .sub-con .encd-comment-list { padding: 0 16px; }
  .sub-con .encd-comment { padding-block: 14px; }
  .sub-con .encd-comment-meta { gap: 5px; }
  .sub-con .encd-comment-meta strong, .sub-con .encd-comment-meta time { font-size: 12px; }
  .sub-con .encd-comment-text { font-size: 14px; }
  .sub-con .encd-reply-toggle { margin-left: 0; }
  .sub-con .encd-replies { padding-left: 18px; }
  .sub-con .encd-comment--reply::before { left: -18px; }
  .sub-con .encd-inline-form { padding: 10px; }
  .sub-con .encd-neighbor { grid-template-columns: 75px minmax(0,1fr); }
  .sub-con .encd-neighbor-label { padding: 10px 4px; gap: 6px; font-size: 14px; }
  .sub-con .encd-neighbor a { font-size: 14px; }
  .sub-con .encd-actions { gap: 10px; }
  .sub-con .encd-actions-right { gap: 7px; }
  .sub-con .encd-actions .enc-sticker { min-width: 58px; padding-inline: 8px; font-size: 15px; }
  .sub-con .encd-actions .encd-review-button { min-width: 115px; font-size: 14px; }
  .sub-con .encd-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); }
  .sub-con .encd-dialog-top { padding: 15px 18px; }
  .sub-con .encd-dialog-title { font-size: 21px; }
  .sub-con .encd-review-form { padding: 18px; }
}
@media (max-width:374px) {
  .sub-con .enc-detail { padding-inline: 12px; }
  .sub-con .encd-actions { gap: 5px; }
  .sub-con .encd-actions .encd-review-button { min-width: 108px; }
}

/* 답글: 원문 분류/키워드를 그대로 표시. 기존 쓰기 화면 공통 스타일 사용. */
.sub-con .enc-reply .encw-categories:disabled .encw-option { cursor: default; }
.sub-con .enc-reply .encw-categories input:disabled { cursor: default; }
.sub-con .enc-reply .encw-input[readonly] { background: #f5f6f8; color: #555; }

/* 나의 게시물 / 이용안내 */
.sub-con .enc-mypage,.sub-con .enc-guide { margin-top:10px; }
.sub-con .encm-logo { display:block;width:397px;max-width:90%;height:auto;margin:0 auto 10px; }
.sub-con .encm-heading { margin:0 0 18px;padding:0;color:#fff;font-size:25px;line-height:1.4;background:none; }
.sub-con .encm-heading::before,.sub-con .encm-heading::after,.sub-con .encg-title::before,.sub-con .encg-title::after,.sub-con .encg-section h5::before,.sub-con .encg-section h5::after { display:none; }
.sub-con .encm-tabs { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin-bottom:30px; }
.sub-con .encm-tab { display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px 10px;min-width:0;padding:18px 20px;border:3px solid var(--status);border-radius:10px;color:#fff;background:#004be0;box-shadow:3px 3px 0 #003297;text-align:left; }
.sub-con .encm-tab[aria-pressed="true"] { background:#0036aa;box-shadow:inset 0 0 0 2px #fff,3px 3px 0 #003297; }
.sub-con .encm-tab img { width:32px;height:30px;object-fit:contain; }
.sub-con .encm-tab b { font-size:28px;line-height:1.1;font-weight:500; }
.sub-con .encm-tab span { grid-column:1/-1;font-size:21px;line-height:1.3;white-space:nowrap; }
.sub-con .encm-posts { margin:0;padding:0;list-style:none; }
.sub-con .encm-card { position:relative;min-height:98px;margin:0 0 7px;padding:22px 112px 18px 24px;border-radius:10px;background:#fff;list-style:none;color:#333; }
.sub-con .encm-card[hidden] { display:none; }
.sub-con .encm-subject { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#333;font-size:16px;line-height:1.55;text-decoration:none;overflow-wrap:anywhere; }
.sub-con .encm-category { color:#555;font-weight:400; }
.sub-con .encm-category::after { content:' | ';color:#bbb;margin:0 5px; }
.sub-con .encm-card time { display:block;margin-top:8px;color:#888;font-size:15px; }
.sub-con .encm-status { position:absolute;right:20px;top:20px;min-width:70px;padding:8px 10px;border-radius:3px;text-align:center;font-size:14px;line-height:1.4; }
.sub-con .encm-status--approved { color:#3575ff;background:#e0e9ff; }
.sub-con .encm-status--revision { color:#ec657a;background:#fde8ec; }
.sub-con .encm-status--draft { color:#009e89;background:#dcf5f0; }
.sub-con .encm-status--pending { color:#626b75;background:#e4e6e9; }
.sub-con .encm-reason { margin:6px 0 0;color:#666;font-size:14px;line-height:1.65;overflow-wrap:anywhere; }
.sub-con .encm-reason::before { content:'!';display:inline-flex;justify-content:center;align-items:center;width:17px;height:17px;margin-right:6px;border-radius:50%;color:#fff;background:#ec657a;font-size:12px;font-weight:bold; }
/* @note 2026-10-15 */
.sub-con .encm-bottom { display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;margin-top:30px; }
.sub-con .encm-bottom .enc-pagination { grid-column:2;grid-row:1;justify-self:center; }
.sub-con .encm-bottom .encm-actions { grid-column:3;grid-row:1;justify-self:end; }
/* //@note 2026-10-15 */
.sub-con .encm-actions { display:flex;gap:12px; }
.sub-con .encm-empty { padding:30px;text-align:center;color:#fff; }
.sub-con .encm-empty[hidden] { display:none; }
.sub-con .encg-frame { padding:0 28px 30px;border:3px solid #00ffa8;border-radius:10px;color:#dce8ff; }
.sub-con .encg-campaign { display:table;margin:-2px auto 25px;padding:10px 20px;border-radius:0 0 18px 18px;background:#00ffa8;color:#003ebc;font-size:17px;font-weight:700;text-align:center; }
.sub-con .encg-title { margin:0 0 14px;padding:0;border:0;background:none;color:#fff;font-size:36px;line-height:1.4;text-align:center;letter-spacing:-.05em; }
.sub-con .encg-intro { max-width:630px;margin:0 auto 32px;color:inherit;font-size:18px;line-height:1.65;text-align:center;word-break:keep-all; }
.sub-con .encg-section { margin-top:30px; }
.sub-con .encg-section h5 { margin:0 0 10px;padding:0;color:#fff;background:none;font-size:23px;line-height:1.4; }
.sub-con .encg-section p,.sub-con .encg-section li { color:inherit;font-size:18px;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere; }
.sub-con .encg-section p { margin:0; }
.sub-con .encg-section ul { margin:0;padding-left:13px; }
.sub-con .encg-section li { padding-left:0;list-style:disc; }
.sub-con .encg-section a { color:inherit;text-decoration:underline;text-underline-offset:3px; }
.sub-con .encg-actions { display:flex;justify-content:flex-end;gap:12px;margin-top:25px; }
/* @note 2026-10-14 */
.sub-con .encw-revision-note { margin:20px 0;padding:15px 18px;border:1px solid #f2a1ac;border-radius:6px;color:#753643;background:#fff1f3;font-size:15px;line-height:1.65; }
/* //@note 2026-10-14 */
.sub-con .encw-revision-note strong { display:block;margin-bottom:5px; }
@media(max-width:767px) {
  .sub-con .enc-mypage,.sub-con .enc-guide { padding:24px 16px; }
  .sub-con .encm-heading { font-size:22px;margin-top:18px; }
  .sub-con .encm-tabs { grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px; }
  .sub-con .encm-tab { padding:12px 9px;gap:10px 4px;border-width:2px;border-radius:7px; }
  .sub-con .encm-tab img { width:24px;height:24px; }
  .sub-con .encm-tab b { font-size:23px; }
  .sub-con .encm-tab span { font-size:16px; }
  .sub-con .encm-card { padding:16px; }
  .sub-con .encm-status { position:static;display:table;margin-bottom:9px;padding:5px 8px;min-width:0;font-size:12px; }
  .sub-con .encm-subject { font-size:15px; }
  .sub-con .encm-card time,.sub-con .encm-reason { font-size:13px; }
  /* @note 2026-10-15 */
  .sub-con .encm-bottom { grid-template-columns:minmax(0,1fr);gap:20px; }
  .sub-con .encm-bottom .enc-pagination { grid-column:1; }
  .sub-con .encm-bottom .encm-actions { grid-column:1;grid-row:2; }
  /* //@note 2026-10-15 */
  .sub-con .encg-frame { padding:0 16px 24px;border-width:2px; }
  .sub-con .encg-campaign { padding:10px;font-size:13px;line-height:1.5; }
  .sub-con .encg-title { font-size:26px;word-break:keep-all; }
  .sub-con .encg-intro { font-size:15px;text-align:left; }
  .sub-con .encg-section { margin-top:25px; }
  .sub-con .encg-section h5 { font-size:20px; }
  .sub-con .encg-section p,.sub-con .encg-section li { font-size:15px; }
}

/* @note 2026-10-13: 제출완료 페이지 신규 스타일 시작 (모바일 포함) */
.sub-con .enc-complete { margin-top:10px;min-height:768px;padding:53px 30px 52px;text-align:center; }
.sub-con .encc-logo { display:block;width:324px;max-width:90%;height:auto;margin:0 auto; }
.sub-con .encc-check { display:flex;align-items:center;justify-content:center;width:103px;height:103px;margin:40px auto 27px;border-radius:50%;background:#00ffa8;box-shadow:2px 2px 0 #00329a; }
.sub-con .encc-check img { display:block;width:54px;height:51px; }
.sub-con .encc-heading { margin:0;padding:0;background:none;border:0;color:#fff;font-size:29px;font-weight:500;line-height:1.45;letter-spacing:-.05em;word-break:keep-all; }
.sub-con .encc-heading::before,.sub-con .encc-heading::after { display:none; }
.sub-con .encc-description { margin:12px 0 28px;color:#dce8ff;font-size:20px;font-weight:400;line-height:1.65;letter-spacing:-.04em;word-break:keep-all; }
.sub-con .encc-receipt { width:433px;max-width:100%;margin:0 auto;padding:8px 20px;border-radius:10px;background:#fff;color:#333;text-align:left; }
.sub-con .encc-receipt>div { display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;min-height:54px;border-bottom:1px dotted #bdc5d0; }
.sub-con .encc-receipt>div:last-child { border-bottom:0; }
.sub-con .encc-receipt dt,.sub-con .encc-receipt dd { margin:0;padding:12px 8px;font-size:18px;line-height:1.6;overflow-wrap:anywhere; }
.sub-con .encc-receipt dt { padding-left:28px;font-weight:500; }
.sub-con .encc-receipt dd { font-weight:400; }
.sub-con .encc-actions { display:flex;justify-content:center;gap:12px;margin-top:70px; }
@media(max-width:767px) {
  .sub-con .enc-complete { min-height:0;padding:36px 16px; }
  .sub-con .encc-logo { width:280px;max-width:100%; }
  .sub-con .encc-check { width:88px;height:88px;margin:34px auto 24px; }
  .sub-con .encc-check img { width:46px;height:auto; }
  .sub-con .encc-heading { font-size:24px; }
  .sub-con .encc-description { margin:14px 0 24px;font-size:16px; }
  .sub-con .encc-receipt { padding:8px 12px; }
  .sub-con .encc-receipt>div { grid-template-columns:82px minmax(0,1fr); }
  .sub-con .encc-receipt dt,.sub-con .encc-receipt dd { padding:12px 4px;font-size:15px; }
  .sub-con .encc-actions { margin-top:38px;gap:12px; }
}

/* @note 2026-10-13: 제출완료 페이지 신규 스타일 끝 */
