/* STREAMING_CHUNK:Base & Reset */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700;900&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Noto Sans KR', sans-serif; color: #e0e0e0; line-height: 1.5; background-color: #121212; }
a { text-decoration: none; color: inherit; }
a:hover { text-decoration: underline; }
ul, ol, li { list-style: none; }
img { max-width: 100%; height: auto; display: block; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
em { font-style: normal; }

/* STREAMING_CHUNK:Layout Components */
.container { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
.content-wrapper { display: flex; gap: 30px; padding: 20px 0; margin-top: 20px; flex-wrap: wrap; }
.main-content { flex: 1; min-width: 0; background-color: #1e1e1e; padding: 30px; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.3); }
.aside.view-sidebar { width: 320px; flex-shrink: 0; display: flex; flex-direction: column; gap: 20px; }
@media (max-width: 992px) {
    .main-content { padding: 20px; }
    .aside.view-sidebar { width: 100%; }
}

/* STREAMING_CHUNK:Header Styles */
.site-header { background: #1e1e1e; border-bottom: 1px solid #333; position: sticky; top: 0; z-index: 1000; }
.header-top { display: flex; justify-content: space-between; align-items: center; padding: 15px 0; border-bottom: 1px solid #333; }
.site-logo { font-size: 28px; font-weight: 900; color: #fff; letter-spacing: -1px; }
.site-logo img { height: 60px;}
.site-logo span { color: #60a5fa; }
.header-search { display: flex; align-items: center; border: 2px solid #4b5563; border-radius: 20px; overflow: hidden; padding: 2px 10px; }
.header-search input { border: none; outline: none; padding: 5px; font-size: 14px; width: 150px; background: transparent; color: #fff; }
.header-search input::placeholder { color: #9ca3af; }
.header-search button { color: #9ca3af; font-weight: bold; padding: 0 5px; }

.main-nav { padding: 10px 0; }
.main-nav-list { position: relative; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.main-nav-list li { position: relative;}
.main-nav-list a { font-size: 16px; font-weight: 700; color: #d1d5db; padding: 5px 0; transition: color 0.2s; }
.main-nav-list a:hover { color: #60a5fa; text-decoration: none; }


/* 호버 시 밑줄 쫙 펼쳐지는 애니메이션 */
.main-nav-list li a::after {
    content: '';
    position: absolute;
    bottom: -12px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background-color: #60a5fa;
    transition: width 0.3s ease;
}

.main-nav-list li a.active, .main-nav-list li a:hover {
    color: #60a5fa;
    text-decoration: none;
}
.main-nav-list li a.active::after, .main-nav-list li a:hover::after {
    width: 100%;
}


/* STREAMING_CHUNK:Footer Styles */
.site-footer { background: #000; color: #9ca3af; padding: 40px 0 60px; font-size: 14px; margin-top: 40px; }
.footer-nav { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 20px; border-bottom: 1px solid #333; padding-bottom: 20px; }
.footer-nav a { color: #e5e7eb; font-weight: 500; }
.footer-nav a:hover { color: #fff; }
.footer-info { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 3px; line-height: 1.8; }
.footer-info strong { color: #d1d5db; }

/* STREAMING_CHUNK:Main Page - Slider */
.main-slider-wrap { position: relative; margin-top: 20px; overflow: hidden; border-radius: 8px; background: #1e1e1e; box-shadow: 0 2px 5px rgba(0,0,0,0.2); }
.slider-container { display: flex; transition: transform 0.4s ease-in-out; }
.slider-item { min-width: 100%; position: relative; }
.slider-item img { width: 100%; height: 400px; object-fit: cover; opacity: 0.85; }
.slider-content { position: absolute; bottom: 0; left: 0; width: 100%; padding: 40px 20px 20px; background: linear-gradient(transparent, rgba(0,0,0,0.9)); color: #fff; }
.slider-category {background: #000000;color: #fff;font-size: 12px;font-weight: bold;padding: 3px 8px;border-radius: 3px;display: inline-block;margin-bottom: 10px;}
.slider-title { font-size: 24px; font-weight: 700; line-height: 1.3; margin-bottom: 10px; }
.slider-controls { position: absolute; top: 50%; width: 100%; display: flex; justify-content: space-between; transform: translateY(-50%); padding: 0 10px; pointer-events: none; }
.slider-btn { background: rgba(0,0,0,0.6); width: 40px; height: 40px; border-radius: 50%; pointer-events: auto; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: bold; transition: background 0.2s; color: #fff; }
.slider-btn:hover { background: rgba(0,0,0,0.9); }

/* STREAMING_CHUNK:Main Page - Sections */
.section-title {font-size: 20px;font-weight: 900;margin: 40px 0 20px;color: #fff;}

.latest-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; }
.news-card { background: #242424; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,0.2); transition: transform 0.2s; border: 1px solid #333; }
.news-card:hover { transform: translateY(-3px); box-shadow: 0 5px 15px rgba(0,0,0,0.4); background: #000;  }
.news-card-thumb { height: 160px; overflow: hidden; }
.news-card-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; opacity: 0.9; }
.news-card:hover .news-card-thumb img { transform: scale(1.05); }
.news-card-info { padding: 15px; }
.news-card-cat {font-size: 12px;color: #a3a3a3;font-weight: bold;margin-bottom: 5px;display: block;}
.news-card-title { font-size: 16px; font-weight: 700; line-height: 1.4; margin-bottom: 8px; color: #e5e7eb; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.news-card-date { font-size: 12px; color: #9ca3af; }

/* STREAMING_CHUNK:Main Page - Category 3 Columns */
.category-columns-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-top: 40px; }
.category-col-header { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 2px solid #4b5563; padding-bottom: 10px; margin-bottom: 15px; }
.category-col-title { font-size: 18px; font-weight: 800; color: #fff; }
.category-col-more { font-size: 13px; color: #9ca3af; transition: color 0.2s; }
.category-col-more:hover { color: #60a5fa; text-decoration: none; }

.category-lead-article { margin-bottom: 15px; }
.category-lead-article .thumb { height: 180px; overflow: hidden; margin-bottom: 15px; border-radius: 4px; }
.category-lead-article .thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; opacity: 0.9; }
.category-lead-article:hover .thumb img { transform: scale(1.05); }
.category-lead-article .title { font-size: 17px; font-weight: 700; line-height: 1.4; margin-bottom: 8px; color: #e5e7eb; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.category-lead-article .desc { font-size: 14px; color: #9ca3af; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.category-list-article { padding: 15px 0; border-top: 1px solid #333; }
.category-list-article .title { font-size: 15px; font-weight: 500; color: #d1d5db; line-height: 1.4; }
.category-list-article:hover .title { color: #60a5fa; text-decoration: underline; }

/* STREAMING_CHUNK:Main Page - Exclusive & Features */
.exclusive-section { display: grid; grid-template-columns: 1fr 1.5fr 1fr; gap: 30px; margin-top: 20px; border-top: 2px solid #4b5563; padding-top: 30px; }
@media (max-width: 992px) {
    .exclusive-section { display: flex; flex-direction: column; }
    .exclusive-center-col { order: -1; margin-bottom: 20px; }
}

.exclusive-lead-article .thumb {height: 240px;overflow: hidden;margin-bottom: 15px;border-radius: 4px;}
.exclusive-lead-article .thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; opacity: 0.9; }
.exclusive-lead-article:hover .thumb img { transform: scale(1.05); }
.exclusive-lead-article .title { font-size: 22px; font-weight: 800; line-height: 1.4; margin-bottom: 12px; color: #fff; }
.exclusive-lead-article .desc {font-size: 14px;color: #9ca3af;line-height: 1.6;}

.exclusive-list-item { padding: 15px 0; border-bottom: 1px solid #333; }
.exclusive-list-item:first-child { padding-top: 0; }
.exclusive-list-item:last-child { border-bottom: none; }
.exclusive-list-item a { display: flex; gap: 15px; align-items: center; }
.exclusive-list-item .thumb {width: 110px;height: 110px;flex-shrink: 0;border-radius: 4px;overflow: hidden;}
.exclusive-list-item .thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; opacity: 0.9; }
.exclusive-list-item:hover .thumb img { transform: scale(1.05); }
.exclusive-list-item .info { flex: 1; display: flex; flex-direction: column; justify-content: center; }
.exclusive-list-item .cat { font-size: 12px; color: #9ca3af; margin-bottom: 4px; }
.exclusive-list-item .title { font-size: 15px; font-weight: 600; line-height: 1.4; color: #d1d5db; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.exclusive-list-item:hover .title { color: #60a5fa; text-decoration: underline; }
.exclusive-side-col.right-align-thumb .exclusive-list-item a { flex-direction: row-reverse; }

/* STREAMING_CHUNK:Main Page - Youtube */
.youtube-section { background: #000; padding: 40px 20px; margin-top: 40px; border-radius: 8px; border: 1px solid #222; }
.youtube-section .section-title { color: #fff; border-left-color: #ef4444; margin-top: 0; }
.video-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.video-card { position: relative; }
.video-thumb { position: relative; padding-top: 56.25%; background: #111; border-radius: 8px; overflow: hidden; }
.video-thumb img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.7; }
.play-icon {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 50px;height: 50px;background: rgb(68 119 239 / 90%);border-radius: 50%;display: flex;align-items: center;justify-content: center;color: #fff;font-size: 20px;padding-left: 4px;}
.video-title { color: #e5e7eb; margin-top: 10px; font-weight: 500; font-size: 15px; }

/* STREAMING_CHUNK:View Page */
.article-view-header { border-bottom: 2px solid #4b5563; padding-bottom: 20px; margin-bottom: 30px; }
.article-view-title { font-size: 28px; font-weight: 900; color: #fff; line-height: 1.4; margin-bottom: 15px; }
.article-view-meta { display: flex; gap: 15px; font-size: 14px; color: #9ca3af; }

.article-view-body { font-size: 16px; line-height: 1.8; color: #d1d5db; }
.article-view-body img { margin: 20px auto; max-width: 100%; height: auto; border-radius: 4px; opacity: 0.9; }
.article-tools { display: flex; gap: 10px; margin: 40px auto; padding-top: 20px; border-top: 1px solid #333; justify-content: center; }
.tool-btn { padding: 8px 20px; border: 1px solid #4b5563; border-radius: 20px; font-size: 14px; color: #d1d5db; transition: all 0.2s; background: transparent; }
.tool-btn:hover { background: #374151; color: #fff; border-color: #60a5fa; text-decoration: none; }

/* STREAMING_CHUNK:List Page */
.list-header { margin-bottom: 30px; border-bottom: 2px solid #60a5fa; padding-bottom: 10px; }
.list-title { font-size: 24px; font-weight: 800; color: #fff; }
.list-item { display: flex; gap: 20px; padding: 20px 0; border-bottom: 1px solid #333; }
.list-item-thumb { width: 200px; height: 130px; flex-shrink: 0; border-radius: 6px; overflow: hidden; }
.list-item-thumb img { width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.list-item-content { flex: 1; display: flex; flex-direction: column; justify-content: center; }
.list-item-title { font-size: 20px; font-weight: 700; margin-bottom: 10px; color: #e5e7eb; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.list-item-desc { font-size: 15px; color: #9ca3af; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.list-item-meta { font-size: 13px; color: #6b7280; }
@media (max-width: 600px) {
    .list-item { flex-direction: column; }
    .list-item-thumb { width: 100%; height: 200px; }
}

.pagination { display: flex; justify-content: center; gap: 5px; margin-top: 40px; }
.page-num { padding: 8px 12px; border: 1px solid #4b5563; border-radius: 4px; color: #d1d5db; font-size: 14px; background: transparent; }
.page-num.active { background: #3b82f6; color: #fff; border-color: #3b82f6; }
.page-num:hover:not(.active) { background: #374151; text-decoration: none; }

.section_09 { background: #1e1e1e; border: 1px solid #333; border-radius: 8px; padding: 20px; }
.section_09 h3 { font-size: 16px; font-weight: 800; border-bottom: 2px solid #60a5fa; padding-bottom: 10px; margin-bottom: 15px; color: #fff; }

.section_09 li:last-child { margin-bottom: 0; }
.section_09 a { display: flex; gap: 10px; align-items: center; }
.section_09 .thumb { width: 80px; height: 60px; flex-shrink: 0; border-radius: 4px; overflow: hidden; }
.section_09 .thumb img { width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.section_09 .info { flex: 1; }
.section_09 .tit { font-size: 14px; font-weight: 500; color: #d1d5db; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3; }
.section_09 .press { font-size: 11px; color: #9ca3af; display: block; margin-top: 4px; }

/* 광고 스타일 통합 다크모드 */
[class*=section_] h3 {
    color: #fff !important;}
.section_08 .tit,
.section_08 .lede {
    color: #fff !important;}

.section_09 h3 {
    border-bottom: 2px solid #999; }

.section_09 li {
    border-top: 1px solid #797979;
}


.ad_text_A, .ad_text_E, .ad_text_pic_D, .ad_text_r_A, .ad_text_r_D, .ad_text_pic_r_A, .ad_text_pic_r_C, .ad_text_pic_r_D, .ad_text_pic_B {
    background: #1e1e1e; border: 1px solid #333; padding: 15px; border-radius: 8px; margin-bottom: 20px;
}
.ad_text_A h4, .ad_text_E h4, .ad_text_pic_D h4, .ad_text_r_A h4, .ad_text_r_D h4, .ad_text_pic_r_A h4, .ad_text_pic_r_C h4, .ad_text_pic_r_D h4, .ad_text_pic_B h4 {
    color: #fff; border-bottom: 1px solid #333; padding-bottom: 10px; margin-bottom: 10px; font-size: 16px; font-weight: 700;
}
.ad_text_A h4 em, .ad_text_E h4 em, .ad_text_r_D h4 em, .ad_text_pic_B h4 em, .ad_text_pic_r_D h4 em {
    color: #60a5fa; font-weight: 800;
}
.ad_text_A ul li, .ad_text_E ul li, .ad_text_r_A ul li, .ad_text_r_D ul li { margin-bottom: 8px; }
.ad_text_A a, .ad_text_E a, .ad_text_r_A a, .ad_text_r_D a { color: #d1d5db; font-size: 14px; }
.ad_text_A a:hover, .ad_text_E a:hover, .ad_text_r_A a:hover, .ad_text_r_D a:hover { color: #60a5fa; text-decoration: underline; }


.ad_text_pic_D .thumb, .ad_text_pic_r_A .thumb, .ad_text_pic_r_C .thumb, .ad_text_pic_r_D .thumb { flex-shrink: 0; overflow: hidden; border-radius: 4px; }
.ad_text_pic_D .thumb img, .ad_text_pic_r_A .thumb img, .ad_text_pic_r_C .thumb img, .ad_text_pic_r_D .thumb img { width: 100%; height: auto; opacity: 0.9; }
.ad_text_pic_D .tit, .ad_text_pic_r_A .tit, .ad_text_pic_r_C .tit, .ad_text_pic_r_D .tit { color: #d1d5db; font-size: 13px; font-weight: 500; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ad_text_pic_r_C .thumb { position: relative; }
.ad_text_pic_r_C .rank_num { position: absolute; top: 0; left: 0; background: #dc2626; color: #fff; font-size: 11px; padding: 2px 5px; font-weight: bold; }

.ad_text_pic_B ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 15px; }
.ad_text_pic_B .thumb { width: 100%; height: 100px; border-radius: 4px; overflow: hidden; margin-bottom: 8px; }
.ad_text_pic_B .thumb img { width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.ad_text_pic_B .tit { font-size: 13px; color: #d1d5db; display: block; line-height: 1.4; }

/* STREAMING_CHUNK:About Page */
.about-header { text-align: center; padding: 40px 0; background: #1e1e1e; margin-bottom: 30px; border-radius: 8px; }
.about-header h2 { font-size: 32px; font-weight: 900; color: #fff; }

.tab-nav { display: flex; flex-wrap: wrap; border-bottom: 2px solid #333; margin-bottom: 30px; }
.tab-btn { flex: 1; padding: 15px; text-align: center; font-size: 14px; color: #9ca3af; background: #2d3748; border: 1px solid #333; border-bottom: none; margin-right: 2px; transition: all 0.2s; line-height: 1.3; }
.tab-btn:last-child { margin-right: 0; }
.tab-btn.active { background: #1e1e1e; color: #60a5fa; border-color: #333; border-top: 3px solid #60a5fa; padding-bottom: 16px; margin-bottom: -2px; }
.tab-btn:hover:not(.active) { background: #374151; color: #e5e7eb; }

.tab-content-panel { display: none; background: #1e1e1e; border-radius: 0 0 8px 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.2); max-width: 600px; margin: auto; }
.tab-content-panel.active { display: block; padding: 30px; }

.about-content-inner h3 { font-size: 24px; font-weight: 800; margin-bottom: 20px; color: #fff; }
.about-content-inner p { font-size: 16px; line-height: 1.8; color: #d1d5db; margin-bottom: 15px; }
.about-content-inner img { margin: 0 auto 30px; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.2); opacity: 0.9; }
.policy-list { margin: 20px 0; padding-left: 20px; }
.policy-list li { font-size: 16px; color: #d1d5db; line-height: 1.8; margin-bottom: 15px; }
.policy-list strong { color: #fff; display: block; margin-bottom: 5px; }
.contact-box { background: #2d3748; padding: 20px; margin-top: 20px; border-left: 4px solid #60a5fa; border-radius: 4px; }
.contact-box p { margin-bottom: 0; font-weight: 500; color: #e5e7eb; }

/* Alert 대체 커스텀 팝업 */
.custom-msg-box { position: fixed; bottom: 20px; left: 50%; transform: translateX(-50%); background-color: #374151; color: #fff; padding: 15px 30px; border-radius: 30px; box-shadow: 0 4px 6px rgba(0,0,0,0.3); z-index: 9999; transition: opacity 0.3s; opacity: 0; pointer-events: none; border: 1px solid #4b5563; }

@media (max-width: 600px) {
    .site-logo img { height: 48px;}
    .container { letter-spacing: -0.06rem; }
    .content-wrapper { padding: 0; margin-top: 0; }
    .main-nav-list { display: flex; justify-content: space-evenly; gap: 5px 10px; }
    .main-nav-list a { font-size: 15px; }
    .article-view-title { font-size: 22px; }
}

/* 기본 광고 배너 */
.ad-banner { width: 100%; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; cursor: pointer; margin: 2rem 0; padding:0; border-radius: 0; opacity: 0.9; }
.ad-bg { position: absolute; inset: 0; background: linear-gradient(to right, rgba(96,165,250,0.1), transparent, rgba(96,165,250,0.1)); opacity: 0.5; }
.ad-content { position: relative; z-index: 10; text-align: center; }
.ad-label { font-size: 10px; color: #9ca3af; text-transform: uppercase; letter-spacing: 0.1em; font-weight: bold; display: block; margin-bottom: 0.25rem; }
.ad-text { color: #d1d5db; font-weight: 500; }
@media (min-width: 768px) { .ad-text { font-size: 1.125rem; } }
.ad-badge { position: absolute; top: 3px; right: 3px; font-weight: bold; margin: auto; display: flex; align-items: center; font-size: 10px; background: rgba(0, 0, 0, 0.5); color: #cecdcd; padding: 2px 6px; border-radius: 3px; border: 1px solid #444; }

/* 우측 광고배너 */
.banner_ad { position:absolute; top:2px; right:2px; width: auto !important; height: 16px; z-index:1; cursor:pointer; }