       :root {            --bcts-blue: #5b89a6; /* 로고 및 이미지 기반 메인 블루 */            --bcts-navy: #2c3e50;            --gray-bg: #f4f7f9;            --border: #e1e8ed;			--bg-white; #fffff;        }        * { margin: 0; padding: 0; box-sizing: border-box; }        body { font-family: 'Pretendard', sans-serif; color: #333; background-color:var(--bg-white); line-height: 1.6; }        a { text-decoration: none; color: inherit; }        ul { list-style: none; }        .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }        /* 상단 유틸리티 & 헤더 */        .top-bar { background: #fff; border-bottom: 1px solid #eee; padding: 8px 0; font-size: 13px; color: #666; }        .top-bar .container { display: flex; justify-content: flex-end; gap: 20px; }        header { background: #fff; padding: 0px 0; position: sticky; top: 0; z-index: 1000; border-bottom: 1px solid #f0f0f2;}        .header-content { display: flex; justify-content: space-between; align-items: center; }        .logo h1 { font-size: 24px; color: var(--bcts-navy); font-weight: 800; display: flex; align-items: center; gap: 10px; }        .logo span { font-size: 14px; color: var(--bcts-blue); font-weight: 500; display: block; }        .main-nav { display: flex; gap: 35px; }        .main-nav a { font-size: 17px; font-weight: 600; color: #444; }        .main-nav a:hover { color: var(--bcts-blue); }				/* Header 디자인         header {            position: fixed; top: 0; width: 100%; z-index: 1000;            background: rgba(26, 42, 90, 0.95);            backdrop-filter: blur(10px);            border-bottom: 1px solid rgba(255,255,255,0.1);        }        .nav-container {            max-width: var(--max-width); margin: 0 auto;            display: flex; justify-content: space-between; align-items: center;            height: 90px; padding: 0 20px;        }        .logo { font-size: 24px; font-weight: 900; color: #fff; letter-spacing: -1px; }        .logo span { color: var(--univ-gold); }        .gnb { display: flex; gap: 40px; }        .gnb a { color: rgba(255,255,255,0.8); font-size: 17px; font-weight: 600; }        .gnb a:hover { color: var(--univ-gold); }           */        /* 메인 그리드 레이아웃 */        .main-grid { display: grid; grid-template-columns: 2.5fr 1fr 1fr; gap: 25px; margin-top: 30px; }				/* 3. [추가] 모든 입력 요소 폰트 강제 초기화 */.premium-wrapper input,.premium-wrapper select,.premium-wrapper optgroup,.premium-wrapper option,.premium-wrapper textarea,.premium-wrapper button {    font-family: var(--font-noto) !important; /* 폼 요소는 가독성 좋은 노토산스 강제 적용 */    font-size: 14px;    color: var(--color-main);}/* 4. 전역 레이아웃 */.premium-main-wrapper, .premium-wrapper {    width: 100%;    max-width: 1100px;    margin: 0px auto;    font-family: var(--font-nanum);    color: var(--color-main);    line-height: 1.6;}/* ★ Font Awesome 아이콘 깨짐 방지 ★ */.premium-wrapper i[class^="fa-"], .premium-wrapper i[class*=" fa-"] {    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;    font-weight: 900; }/* 5. 제목 및 주요 UI 폰트 설정 */.premium-page-header h2,.view-title,.btn-premium,.btn-premium-blue,.premium-list-table th,.premium-list-table td,.subject-link,.comment-header,.attach-label,.badge-blue,.btn-dark-gray,.search-box-wrap select, /* 검색 카테고리 명시 */.search-box-wrap input   /* 검색어 입력창 명시 */{    font-family: var(--font-noto) !important;	}        /* 비주얼 슬라이더 영역 */        .main-visual { height: 530px; border-radius: 15px; overflow: hidden; position: relative; }        .main-visual img { width: 100%; height: 100%; object-fit: cover; }        .visual-caption { position: absolute; bottom: 0; left: 0; right: 0; padding: 40px; background: linear-gradient(transparent, rgba(0,0,0,0.7)); color: #fff; }        .visual-caption h2 { font-size: 28px; margin-bottom: 10px; }        /* 공지사항 & 정보 보드 */        .board-card { background: #fff; border-radius: 15px; padding: 25px; border: 1px solid var(--border); }        .board-card h3 { font-size: 18px; margin-bottom: 20px; color: var(--bcts-navy); display: flex; justify-content: space-between; align-items: center; }        .board-card h3 i { color: var(--bcts-blue); }        .board-list li { margin-bottom: 12px; font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: flex; align-items: center; gap: 8px; }        .board-list li::before { content: "•"; color: var(--bcts-blue); font-weight: bold; }        /* 퀵 버튼 (학사행정관리 등) */        .quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px;height:400px; }        .quick-item { background: #fff; border: 1px solid var(--border); padding: 20px 10px; text-align: center; border-radius: 12px; transition: 0.3s; }        .quick-item:hover { border-color: var(--bcts-blue); background: #f0f7ff; transform: translateY(-3px); }        .quick-item i { font-size: 24px; color: var(--bcts-blue); margin-bottom: 10px; display: block; }        .quick-item span { font-size: 13px; font-weight: 600; color: #555; }        /* 포토갤러리 */        .gallery-section { margin-top: 40px; padding-bottom: 0px; }        .gallery-title { font-size: 22px; font-weight: 700; margin-bottom: 20px; }        .gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }        .photo-item { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 6px rgba(0,0,0,0.05); }        .photo-item img { width: 100%; height: 180px; object-fit: cover; }        .photo-item p { padding: 15px; font-size: 14px; font-weight: 500; }        /* 푸터 */        footer { background: var(--bcts-navy); color: rgba(255,255,255,0.7); padding: 50px 0; font-size: 14px; }        .footer-info { display: flex; flex-direction: column; gap: 10px; }        .footer-links { margin-bottom: 20px; display: flex; gap: 20px; }        .footer-links a { color: #fff; font-weight: 600; }        /* 반응형 */        @media (max-width: 1024px) {            .main-grid { grid-template-columns: 1fr; }            .main-nav { display: none; } /* 실제로는 햄버거 메뉴로 대체 필요 */            .gallery-grid { grid-template-columns: repeat(2, 1fr); }        }				.new-tag ,.new-mark {			display: inline-flex;			align-items: center;			justify-content: center;			width: 18px;			height: 18px;			background: #28a745;			color: #fff;			border-radius: 50%;			font-size: 11px;			font-weight: bold;			line-height: 1;			margin-left: 5px;			vertical-align: middle;			box-shadow: 0 2px 6px rgba(40, 167, 69, 0.3);		}