/* SCU 기본 테마 — 디자인 결합 전 개발·검수용 최소 스타일. 깔끔하게만, 장식 없음. */
*{box-sizing:border-box}
html{font-size:15px}
body{margin:0;font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic","Apple SD Gothic Neo",sans-serif;color:#111;background:#fff;line-height:1.55;word-break:keep-all;letter-spacing:-.02em}
a{color:#1a4d8f;text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
table{border-collapse:collapse;width:100%}
h1,h2,h3{margin:0 0 .6em;line-height:1.3}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.muted{color:#777}
/* 헤더 · GNB */
.header{display:flex;align-items:center;gap:24px;max-width:1440px;margin:0 auto;padding:14px 40px;border-bottom:1px solid #ddd;flex-wrap:wrap}
.logo{font-size:1.25rem;margin:0}.logo a{color:#111}
.gnb{flex:1}
.gnb ul{list-style:none;margin:0;padding:0}
.gnb-depth1{display:flex;gap:4px;flex-wrap:wrap}
.gnb-depth1>li{position:relative}
.gnb-depth1>li>a{display:block;padding:8px 12px;font-weight:600;color:#222}
.gnb-depth1>li.active>a,.gnb-depth1>li>a:hover{color:#1a4d8f;text-decoration:none}
.gnb-depth2{display:none;position:absolute;top:100%;left:0;min-width:200px;background:#fff;border:1px solid #ccc;padding:6px 0;z-index:50}
.gnb-depth1>li:hover>.gnb-depth2,.gnb-depth1>li:focus-within>.gnb-depth2{display:block}
.gnb-depth2>li>a{display:block;padding:5px 14px;color:#222}
.gnb-depth2>li>a:hover{background:#f2f5fa;text-decoration:none}
.gnb-depth3{padding:0 0 4px 22px}.gnb-depth3>li>a{display:block;padding:2px 6px;font-size:.9rem;color:#555}
.header-search{display:flex;gap:4px}
.header-search input{padding:6px 8px;border:1px solid #bbb;width:180px}
.header-search button{padding:6px 10px;border:1px solid #bbb;background:#f5f5f5;cursor:pointer}
/* 경로 · 본문 */
.breadcrumb{max-width:1440px;margin:0 auto;padding:18px 40px 0;font-size:.9rem;color:#666}
.breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.breadcrumb li+li::before{content:"›";margin-right:6px;color:#aaa}
.content{max-width:1440px;margin:0 auto;padding:40px 40px 120px;min-height:50vh}
.layout-default,.page-department,.layout-full{display:flex;gap:clamp(16px,4vw,56px);align-items:flex-start}
.page-body{flex:1;min-width:0}
.page-title{font-size:clamp(26px,4.5vw,42px);font-weight:600;letter-spacing:-.05em;color:#2F3542;padding-bottom:43px;border-bottom:1px solid #666;margin-bottom:43px}
.page-lead{color:#555}
.sub-nav{width:clamp(180px,22vw,260px);flex:none;position:sticky;top:16px}
.sub-nav h2{display:flex;align-items:center;justify-content:center;height:clamp(64px,10vw,100px);margin:0;padding:0 10px;font-size:clamp(16px,1.4vw,22px);font-weight:700;color:#fff;background:linear-gradient(180deg,#4c8695 0%,#456e78 100%);text-align:center}
.sub-nav ul{list-style:none;margin:0;padding:0}
.sub-nav .sub-depth2{background:linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.2)),linear-gradient(0deg,rgba(90,178,217,.6),rgba(90,178,217,.6)),#5a8f9c}
.sub-nav a{display:flex;align-items:center;min-height:60px;padding:8px clamp(14px,3vw,20px);color:#fff;border-top:1px solid #fff;font-size:clamp(14px,1.1vw,18px)}
.sub-nav a:hover{text-decoration:none;background:rgba(0,0,0,.12)}
.sub-nav li.active>a{font-weight:600}
.sub-nav li.current>a{background:#46717c}
.sub-nav .sub-depth3 a{min-height:52px;padding-left:clamp(30px,3.5vw,40px);border-top:1px solid #509090;font-size:clamp(13px,1vw,16px)}
.sub-nav .sub-depth4 a{min-height:44px;padding-left:clamp(40px,5.5vw,70px);border-top:1px solid #509090;font-size:clamp(12px,.95vw,15px)}
/* 상단 히어로 띠(섹션 이미지 + 50% 스크림 + 섹션명) */
.page-hero{position:relative;height:244px;overflow:hidden;background:#333}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.5)}
.page-hero__inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.page-hero h2{margin:0;color:#fff;font-size:clamp(28px,5vw,42px);font-weight:600;letter-spacing:-.05em}
.editor-content{line-height:1.6;overflow-wrap:anywhere;font-size:clamp(14px,1.2vw,18px)}
.editor-content h3{font-size:clamp(18px,4vw,24px);font-weight:600;letter-spacing:-.05em;margin:43px 0 30px}
.editor-content h3:first-child{margin-top:0}
.editor-content h4{font-size:clamp(16px,2vw,20px);font-weight:600;margin:24px 0 12px}
.editor-content ol,.editor-content ul{padding-left:clamp(16px,4vw,20px);margin:0 0 12px}
.editor-content li{margin-bottom:4px}.editor-content li ul,.editor-content li ol{margin-top:6px;list-style:none;padding-left:clamp(14px,4vw,20px)}
.editor-content p{margin:0 0 12px}
.editor-content img{max-width:100%;height:auto}
.editor-content iframe,.editor-content video{max-width:100%}
.editor-content table{border:1px solid #ccc;max-width:100%;width:auto;min-width:50%}
.editor-content td,.editor-content th{border:1px solid #ccc;padding:6px;vertical-align:top}
.editor-content th{background:#f3f4f6}
@media (max-width:860px){.editor-content table:not(.page-tabs .tab-body>table){display:block;overflow-x:auto;white-space:nowrap;width:100%!important;max-width:100%}.editor-content td,.editor-content th{white-space:normal;min-width:90px}}
/* 탭 */
.tabs ul,.page-tabs ul,.cat-tabs ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid #ccc}
.tabs li a,.page-tabs li a,.cat-tabs li a{display:block;padding:8px 14px;border:1px solid #ccc;border-bottom:0;background:#f7f7f7;color:#333}
.tabs li.on a,.page-tabs li.on a,.cat-tabs li.on a,.tabs li.active a,.page-tabs li.active a,.cat-tabs li.active a{background:#fff;color:#1a4d8f;font-weight:600;margin-bottom:-1px;border-bottom:1px solid #fff}
.page-tabs .tabs ul{border:0;gap:0;margin:0 0 10px}
.page-tabs .tabs li{flex:1}
.page-tabs .tabs li a{display:flex;align-items:center;justify-content:center;height:clamp(44px,10vw,53px);border:0;background:#eee;color:#000;font-weight:700;font-size:clamp(14px,3.5vw,18px);text-align:center}
.page-tabs .tabs li.on a{background:#dcdb6399;margin:0;border:0}
.page-tabs .tab-body{overflow-x:auto;-webkit-overflow-scrolling:touch}
.page-tabs .tab-body>table{min-width:720px;width:100%;font-size:clamp(13px,3.2vw,15px);color:#333;border:0}
.page-tabs .tab-body>table th,.page-tabs .tab-body>table td{border:1px solid #d9d9d9;padding:clamp(8px,2.5vw,14px) clamp(10px,3vw,16px);line-height:1.5;vertical-align:middle;background:#fff}
.page-tabs .tab-body>table th{font-weight:600;background:#f7f7f7;text-align:center}
.page-tabs .tab-body>table td.category{width:clamp(80px,20vw,120px);font-weight:600;text-align:center}
.page-tabs .tab-body>table td{word-break:keep-all}
.page-lead{margin-bottom:43px}
/* 버튼 · 폼 */
.btn{display:inline-block;padding:7px 14px;border:1px solid #1a4d8f;background:#1a4d8f;color:#fff;border-radius:3px;cursor:pointer;font-size:.95rem;line-height:1.3}
.btn:hover{text-decoration:none;opacity:.9}
.btn.sec{background:#fff;color:#1a4d8f}.btn.sm{padding:2px 8px;font-size:.82rem;margin-left:4px}
.btns{margin:16px 0}
input[type=text],input[type=search],input[type=password],input[type=email],input[type=number],select,textarea{padding:6px 8px;border:1px solid #bbb;font:inherit;max-width:100%}
.form-error{color:#b3261e;background:#fdf1f0;padding:8px 10px;border:1px solid #f0c2bd}
.form-ok{color:#1e6b36;background:#eef8f0;padding:8px 10px;border:1px solid #bfe3c8}
.board-search,.search-form{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.write-form p,.admission-search p{margin:0 0 10px}.write-form label,.admission-search label{display:block}
.write-form label span,.admission-search label span{display:inline-block;min-width:110px;font-weight:600}
/* 게시판 */
.board-total{font-size:.9rem;color:#666;margin:0 0 6px}
.board-table th{background:#f3f4f6;border-top:2px solid #222;border-bottom:1px solid #ccc;padding:9px 8px;font-size:.93rem}
.board-table td{border-bottom:1px solid #e3e3e3;padding:8px;text-align:center;font-size:.93rem}
.board-table td.title,.board-table td.subject{text-align:left}
.board-table tr.notice td,.board-table tr.pinned td{background:#fafbfd}
.board-table .empty td{padding:40px;color:#888}
.pagination{margin:18px 0;text-align:center;font-size:.92rem}
.pagination a,.pagination strong{display:inline-block;min-width:28px;padding:4px 6px;margin:0 1px;border:1px solid #ddd;color:#333}
.pagination strong{background:#1a4d8f;color:#fff;border-color:#1a4d8f}
.post-header{border-top:2px solid #222;border-bottom:1px solid #ccc;padding:12px 8px}
.post-title{font-size:1.25rem;margin:0 0 6px}
.post-meta{font-size:.88rem;color:#666}.post-meta span+span::before{content:"|";margin:0 8px;color:#ccc}
.post-files{background:#f7f7f7;padding:8px 12px;font-size:.9rem;border-bottom:1px solid #e3e3e3}
.post-content{padding:20px 8px;min-height:120px}
.post-nav{border-top:1px solid #ccc;font-size:.92rem}.post-nav div{padding:8px;border-bottom:1px solid #e3e3e3}
.gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.gallery-grid li{border:1px solid #e3e3e3}.gallery-grid .thumb{aspect-ratio:4/3;background:#f2f2f2;overflow:hidden}.gallery-grid .thumb img{width:100%;height:100%;object-fit:cover}
.gallery-grid .title{display:block;padding:8px 10px}.gallery-grid .date{display:block;padding:0 10px 8px;font-size:.85rem;color:#777}
.webzine-list,.event-list,.professor-list,.comment-list,.faq-item{list-style:none;margin:0;padding:0}
.webzine-list>li,.event-list>li,.item{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid #e3e3e3}
.faq-item{border-bottom:1px solid #e3e3e3}.faq-item summary{padding:10px 6px;cursor:pointer;font-weight:600}.faq-answer{padding:0 6px 14px;color:#444}
.calendar{table-layout:fixed}.calendar th{background:#f3f4f6;padding:6px}.calendar td{vertical-align:top;height:90px;border:1px solid #e3e3e3;padding:4px;font-size:.85rem}.calendar .ev{display:block;margin-top:2px;padding:1px 4px;background:#eef3fa;border-radius:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cal-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.professor-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.professor{border:1px solid #e3e3e3;padding:12px;display:flex;gap:12px}
.comments{margin-top:24px}.comment-list>li{padding:10px 0;border-bottom:1px solid #eee}
/* 메인 */
.home-visual{max-width:1200px;margin:0 auto;padding:0 16px}
.home-visual .slide{background:#f3f5f8;padding:48px 32px;margin-bottom:16px;border:1px solid #e3e3e3}
.home-visual .slide.placeholder{color:#777}
.home-visual .slide h2{font-size:1.6rem}
.home-quick,.home-admission{max-width:1200px;margin:0 auto;padding:0 16px}
.home-quick ul,.home-admission ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.home-quick a{display:block;padding:10px 16px;border:1px solid #ccc;background:#fff;color:#222;border-radius:3px}
.home-admission li.result .btn{background:#fff;color:#1a4d8f}
.home-boards{max-width:1200px;margin:0 auto;padding:0 16px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.home-board h3{display:flex;justify-content:space-between;align-items:baseline;font-size:1.1rem;border-bottom:2px solid #222;padding-bottom:6px}
.home-board h3 .more{font-size:.82rem;font-weight:400;color:#666}
.home-board ul{list-style:none;margin:0;padding:0}
.home-board li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #eee}
.home-board li a{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#222}
.home-board li img{display:none}
.home-board time{color:#888;font-size:.85rem;flex:none}
/* 합격자 조회 */
.admission{max-width:820px}
.result-main{font-size:1.15rem;padding:14px;background:#f7f8fa;border:1px solid #e3e3e3}
.pass-div{color:#1a4d8f}.congrats{font-weight:600}
.pass-notice{margin-top:20px;padding:14px;border:1px solid #e3e3e3}
.notice-box,.notice{padding:12px 14px;background:#fafafa;border:1px solid #e3e3e3;margin-bottom:16px}
.oath{padding:14px;border:1px solid #ccc;background:#fafafa;max-height:280px;overflow:auto;font-size:.92rem}
/* 검색 · 사이트맵 · 푸터 */
.search-summary{color:#666;margin-bottom:12px}
.search-menus ul,.search-pages ul,.search-posts ul{list-style:none;margin:0;padding:0}
.search-posts li,.search-pages li{padding:10px 0;border-bottom:1px solid #eee}.snippet{color:#555;font-size:.92rem}
.sitemap{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.sitemap ul{list-style:none;margin:0;padding:0}.sitemap .sitemap-depth1>li>a{font-weight:700;display:block;padding:6px 0;border-bottom:2px solid #222;margin-bottom:6px}
.sitemap .sitemap-depth2 a{display:block;padding:3px 0}.sitemap .sitemap-depth3{padding-left:14px;font-size:.9rem}.sitemap .sitemap-depth3 a{color:#555}
.footer{border-top:1px solid #ddd;margin-top:40px;padding:20px 16px;font-size:.86rem;color:#666}
.footer>*{max-width:1200px;margin:0 auto 6px}
.footer-links{list-style:none;padding:0;display:flex;gap:14px;flex-wrap:wrap}
.footer address{font-style:normal}
/* 반응형 */
@media (max-width:860px){
  .header{gap:10px;padding:10px 20px}.gnb-depth1{gap:0}.gnb-depth1>li>a{padding:6px 8px}
  .breadcrumb{padding:12px 20px 0}.content{padding:20px 20px 80px}.page-hero{height:160px}
  .sub-nav{position:static}.sub-nav h2{height:56px}.sub-nav a{min-height:44px}
  .layout-default,.page-department,.layout-full{flex-direction:column;gap:16px}
  .sub-nav{width:100%}.sub-nav .sub-depth2{display:flex;flex-wrap:wrap}.sub-nav .sub-depth2>li{border:0}.sub-nav .sub-depth3,.sub-nav .sub-depth4{display:none}
  .board-table th:nth-child(n+4),.board-table td:nth-child(n+4){display:none}
}
