﻿
/* 1. 최상단에 웹폰트(Pretendard) 불러오기 */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");

/* 2. 돋움(Dotum) 폰트 완전 제거 및 새 폰트 덮어쓰기 */
.board-theme,
.board-theme .theme-list,
.board-theme .theme-detail,
.board-theme input,
.board-theme select,
.board-theme button {
    font-family: 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', '맑은 고딕', sans-serif !important;
    letter-spacing: -0.02em; /* 자간을 살짝 좁혀주면 훨씬 세련된 느낌이 납니다 */
}

.premium-card h4 {
    font-weight: 700 !important; /* 볼드 */
    letter-spacing: -0.03em;
    word-break: keep-all; /* 단어 단위로 줄바꿈 되게 하여 가독성 상승 */
}

.premium-card .sermon-speaker {
    font-weight: 600 !important;
}

.premium-card .sermon-meta {
    font-weight: 400 !important;
    color: #888;
}

form#sermon-search.modern-search-form select#sermon-control,
form#sermon-search.modern-search-form input#sermon-keyword {
    font-weight: 500 !important;
}

/* 기존 상세페이지 및 일반 리스트 제목 폰트도 세련되게 변경 */
.board-theme .theme-detail .detail-top .document-title h1,
.board-theme .theme-list table tbody td.document-title a {
    font-weight: 700 !important;
    letter-spacing: -0.03em;
}
/*
    sermon
*/
#dimodeBoard .board-actions { border:none; padding:30px;}
#sermon-top { margin-bottom:45px;}
.theme-list .container { padding:0px;}
#sermon-top h1 { padding-bottom:15px; border-bottom:2px solid #000; display:inline-block; font-size:28px; font-weight:bold; margin-top:0px; float:left; margin-right:50px;}
#sermon-play { float:none; position:absolute; z-index:8; top:17%; left:45%; width:40px; height:40px;}
.sermon-box > img { float:left;}
.sermon-box > a:hover { opacity:0.6; transition:0.3s;}
#sermon-control {height:45px; width:150px; font-size:20px; font-weight:500; margin-right:20px; border-radius:50px; padding:0px 15px;}
#sermon-kind { padding:0px; vertical-align:top;}
#sermon-button img { width:35px;}
#sermon-keyword { width:220px; height:45px; font-size:20px; font-weight:500; margin-right:20px; border-radius:50px; padding: 7px 20px;}
.btn-default { border-color:transparent;}
.btn { border:none; }
.input-group { float:left; width:650px; }
.btn-default:hover, .btn-default:active { background-color:transparent; border:none;}
.action-search { display:none;}
#sermon-search { display:table;}
.series-button { clear:both; margin-top:80px;}
.series-button .btn { border-radius: 10px; padding: 15px 20px; margin: 10px 20px 10px 0px; background-color: #fff; box-shadow: 1px 1px 6px 1px #aaa; text-decoration:none; color:#000; font-size:24px; line-height:30px;}
.series-button .btn span { font-size:20px; }
.series-button .btn:hover { background-color: #efefef; transition:0.2s all ease; font-weight:bold;}
.series-button a { text-decoration:none; color:#000; font-size:24px;}
select { width: 200px; height: 30px; padding-left: 10px; font-size: 18px; color: #006fff; border: 1px solid #006fff; border-radius: 3px; -webkit-appearance: none; /* 화살표 없애기 for chrome*/ -moz-appearance: none;    /* 화살표 없애기 for firefox*/
   appearance: none;         /* 화살표 없애기 공통*/
   background: url('../../../Layouts/kimpoch_Layout/Images/arow.png') no-repeat 85% 50%!important;
    background-size: 15% 30%; /* 화살표 아이콘 추가 */   
}
.sermon-box .title-image { width:100%; }
.sermon-box .sermon-play{position: absolute;top: 50%;text-align: center;width: 100%;border: none;
display: block;transform: translate(0,-50%);}
select::-ms-expand {
   display: none;            /* 화살표 없애기 for IE10, 11*/
}

select option {border-radius:50px; }

.sermon-content h4 { font-size: 22px;color: #000;font-weight: 600;margin-top: 0px;width: 65%;line-height: 1.3em;word-break:keep-all;
display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;height: 2.5em;overflow: hidden; margin-left:5px;}
.sermon-content h5{font-size: 17px;color: #828282;font-weight: 400;margin: 0;width: 100%;display: inline-block;
text-overflow: ellipsis;white-space: nowrap;overflow: hidden;}
.sermon-content img {width:25px;}
.sermon-content .sermon-date { position:absolute; bottom:0; font-size:17px; color:#828282; left: 5%; margin:0;bottom: 5%;}
.sermon-content .sermon-count{position:absolute; bottom:0; font-size:17px; color:#828282; left: 5%; margin:0;bottom: 20%;}
.sermon-content .sermon-speaker {position: absolute;bottom: 5%;font-size: 21px;color: #000;right: 5%;font-weight: 600;width: 50%;
margin: 0;text-align: right;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;}
.sermon-box { margin-bottom:70px;}
.sermon-box a { text-decoration:none; }
.list { font-size:25px; float:right; margin-top:20px; color:#000; text-decoration:none;}
.list:hover { text-decoration:none; color:#000;}

.board-theme .board-pages > span.prev,
.board-theme .board-pages > span.next {
    cursor: pointer;
    color: #666;
    padding: 10px;
}

.board-actions-left { display:none; }

.write-form { padding-top:250px;}

/* detail s */

#detail-bg { background-color:#000; padding:60px 0px; margin-top:50px;}
#downloadM{width: 100%;float: right;text-align: right;padding: 15px;}
#downloadM .mp3KORD i,
#downloadM .mp3ENGD i{color: #DB2230;font-size: 24px;letter-spacing: 0.5px;transition: all ease 0.2s;
padding: 15px;border: 2px solid #DB2230;border-radius: 25px;margin: 10px;}
#downloadM .mp3KORD:hover i,
#downloadM .mp3ENGD:hover i,
#downloadM .mp3KORD:focus i,
#downloadM .mp3ENGD:focus i{color:#fff;background-color:#DB2230;border-color:#fff;}
.board-share, #dimodeComment, .list-in-detail { display:none!important;}
.board-theme .theme-detail .detail-top .document-title h1 { float: none; color: #000; overflow: hidden; font-weight: bold; font-size:45px; margin-bottom:35px;}
.board-theme .theme-detail .detail-top .document-title h4 { font-size:29px; font-weight:500; border-bottom:1px solid #000; padding-bottom:30px; width:100%;display:inline-block;}
.board-theme .theme-detail .detail-top .document-title h4 span:nth-child(1){float:left;}
.board-theme .theme-detail .detail-top .document-title h4 span:nth-child(2){float:right;}
.board-theme .theme-detail .detail-top .document-title h5 { font-size:27px; font-weight:400; margin-top:30px; display:inline-block;}
.board-theme .theme-detail .detail-top .document-title span { font-size:30px; font-weight:400;}
.board-theme .container { padding:0px;}
/* board-list s */
.board-theme .theme-list {
    font-family: 돋움,Dotum,sans-serif;
    overflow: hidden;
    width: 100%;
}

/* 카테고리 알약 형태 (원본 클래스 덮어쓰기) */
.board-theme .theme-list .list-categories { display: flex !important; flex-wrap: wrap !important; gap: 0.8rem !important; margin-bottom: 2rem !important; clear: both !important; margin-top: 50px !important; justify-content: flex-start !important; }
.board-theme .theme-list .list-categories .category-group { display: block !important; margin: 0 !important; }
.board-theme .theme-list .list-categories .category-btn { padding: 0.6rem 1.5rem !important; font-size: 1.1rem !important; border-radius: 2rem !important; font-weight: 700 !important; transition: all 0.3s ease !important; border: none !important; cursor: pointer !important; margin: 0 !important; box-shadow: none !important; line-height: 1.4 !important; }

/* 비활성 카테고리 (원본 btn-default) */
.board-theme .theme-list .list-categories .category-btn.btn-default { background-color: #f1f3f5 !important; color: #333 !important; }
.board-theme .theme-list .list-categories .category-btn.btn-default:hover { background-color: #e9ecef !important; transform: translateY(-2px) !important; }

/* 활성 카테고리 (원본 btn-gray) */
.board-theme .theme-list .list-categories .category-btn.btn-gray { background-color: #111 !important; color: #fff !important; box-shadow: 0 0.4rem 0.8rem rgba(0,0,0,0.2) !important; }

/* 서브 카테고리 숨김 처리 방지 및 정렬 */
.board-theme .theme-list .list-categories .sub-category-group { width: 100%; margin-top: 10px; }
    
.board-theme .theme-list table {
        border-top-width: 1px;
    }

        .board-theme .theme-list table th,
        .board-theme .theme-list table td {
            font-size: 12px;
            text-align: center;
            padding: 14px;
        }

        .board-theme .theme-list table th {
            background: #fcfcfc;
            border-bottom-width: 1px;
            min-width: 70px;
        }

            .board-theme .theme-list table th.document-title {
                width: 50%;
            }

        .board-theme .theme-list table td.document-title {
            text-align: left;
        }

        .board-theme .theme-list table tr.notice td.document-no,
        .board-theme .theme-list table tr.notice td.document-title {
            font-weight: 600;
        }

        .board-theme .theme-list table tr td.document-added_file {
            padding-top: 5px;
            padding-bottom: 5px;
        }

            .board-theme .theme-list table tr td.document-added_file .file-ico {
                display: inline-block;
                width: 30px;
                height: 30px;
                background: #333;
                margin-top: 5px;
            }

        .board-theme .theme-list table th input,
        .board-theme .theme-list table td input {
            margin: 0;
        }

        .board-theme .theme-list table thead th.title {
            width: 50%;
        }

        .board-theme .theme-list table tbody td.document-title a {
            color: #333;
            text-align: left;
        }

            .board-theme .theme-list table tbody td.document-title a:hover {
                text-decoration: underline;
            }

            .board-theme .theme-list table tbody td.document-title a.comment-count {
                color: #333;
                margin-left: 6px;
                text-decoration: none;
                font-weight: 600;
            }

        .board-theme .theme-list table tbody td.document-title span.file {
            color: #000;
            vertical-align: middle;
        }

        .board-theme .theme-list table tbody td.document-title span.reserved {
            background: #444;
            color: #fff;
            padding: 2px 4px;
            margin-left: 6px;
        }

    .board-theme .theme-list .document-title a.active {
        text-decoration: underline;
    }

    .board-theme .theme-list .no-document {
        text-align: center;
        padding: 21px 0;
    }

.board-theme.list .board-pages {
    padding: 21px 0 30px 0;
    text-align: center;
    max-width: 1040px;
    margin: 0 auto;
}

    .board-theme.list .board-pages > span {
        padding-left: 11px;
        padding-right: 11px;
    }

        .board-theme.list .board-pages > span.page {
            margin-bottom: 5px;
            cursor: pointer;
            font-size: 13px;
            border-radius: 0;
        }

.board-theme.gallery .theme-list table {
    margin-bottom: 15px;
}

.board-theme.gallery .theme-list > .each-document {
    display: inline-block;
    vertical-align: top;
    width: 150px;
    margin-bottom: 5px;
}

    .board-theme.gallery .theme-list > .each-document > a.title-image {
        display: inline-block;
        width: 140px;
        height: 130px;
        position: relative;
        border: 1px solid #ddd;
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: 50% 50%;
        background-color: #000;
    }

        .board-theme.gallery .theme-list > .each-document > a.title-image > .no-image {
            position: absolute;
            left: 0;
            width: 100%;
            text-align: center;
            color: #333;
            margin-top: 0;
            height: 100%;
            top: 0;
            background: #eee;
        }

            .board-theme.gallery .theme-list > .each-document > a.title-image > .no-image span {
                position: absolute;
                top: 50%;
                left: 0;
                width: 100%;
                margin-top: -9px;
            }

        .board-theme.gallery .theme-list > .each-document > a.title-image > .list-items {
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.63);
            position: absolute;
            left: 0;
            top: 0;
            display: table;
            transition: opacity 0.21s;
            opacity: 0;
        }

        .board-theme.gallery .theme-list > .each-document > a.title-image:hover > .list-items {
            opacity: 1;
        }

        .board-theme.gallery .theme-list > .each-document > a.title-image > .list-items .items-wrapper {
            display: table-cell;
            color: #fff;
            vertical-align: middle;
        }

            .board-theme.gallery .theme-list > .each-document > a.title-image > .list-items .items-wrapper > .list-item {
                display: block;
                text-align: center;
            }

                .board-theme.gallery .theme-list > .each-document > a.title-image > .list-items .items-wrapper > .list-item.title {
                    font-size: 16px;
                    margin-bottom: 4px;
                }

    .board-theme.gallery .theme-list > .each-document > a.title {
        width: 140px;
        display: block;
        overflow: hidden;
        text-align: center;
        color: #333;
        margin-top: 1px;
        height: 24px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .sermon-box{width: 385px;}
    .sermon-box > .titleIMG{height:200px;}
    .sermon-content { background-color: #E5E5E5; clear:both; padding:20px; height:200px; position:relative;}
    .sermon-box .title,
    .sermon-box .titleIMG{display: inline-block; position: relative; float:left; width:100%;}
    .sermon-box .titleIMG #sermon-play{position: absolute;top: 50%;left: 45%;text-align: center;border: none;display: block;transform: translate(0,-50%);}
    .sermon-box .videovalue{position: absolute;right: 15%;top: 10%;}
    .sermon-box .videovalue:hover i{color:#fff;background-color:#DB2230;}
    .sermon-box .videovalue i{padding: 15px;font-size: 20px;background-color: #fff;border-radius: 50%;color:#DB2230;}
    .sermon-box .mp3value{position: absolute;right: 5%;top: 10%;}
    .sermon-box .mp3value:hover i{color:#fff;background-color:#DB2230;}
    .sermon-box .mp3value i{padding: 15px;font-size: 20px;background-color: #fff;border-radius: 50%;color:#DB2230;}
/* board-list e */

/* board-detail s */
.board-theme .theme-detail .detail-top {
    margin-top: 65px;
    display: inline-block;
    width: 100%;
}

    .board-theme .theme-detail .detail-top .document-title {
        color: #000;
        overflow: hidden;
        font-weight: bold;
        font-size:40px;
    }

        .board-theme .theme-detail .detail-top .document-title .category {
            margin-right: 3px;
        }

    .board-theme .theme-detail .detail-top .document-regdate {
        float: right;
    }

.board-theme .theme-detail .detail-upper {
    padding: 8px 14px;
    border-bottom: 1px solid #eee;
    display: inline-block;
    width: 100%;
}

    .board-theme .theme-detail .detail-upper .document-writer {
        float: left;
    }

    .board-theme .theme-detail .detail-upper .document-readed_count {
        float: right;
    }

.board-theme .theme-detail .detail-video > * {
}

.board-theme .theme-detail .detail-video > a.video-button {
    display: block;
    width: 100%;
    text-align: center;
    background: #4e4e4e;
    color: #fff;
    padding: 16px 0;
    border-radius: 2px;
    font-size: 14px;
    text-decoration: none;
}

.board-theme .theme-detail .detail-video iframe {
}

.board-theme .theme-detail .detail-audio > * {
    margin-top: 12px;
}

.board-theme .theme-detail .detail-audio-downlad {
    text-align: center;
    margin: 12px 0 21px 0;
}

    .board-theme .theme-detail .detail-audio-downlad > a {
        font-size: 14px;
        background: #07c;
        color: #fff;
        text-decoration: none;
        padding: 12px 24px;
        display: inline-block;
    }

.board-theme .theme-detail .detail-pdf iframe {
    width: 100%;
    height: 550px;
}

.board-theme .theme-detail .detail-content {
    padding: 14px;
    word-break: break-all;
    font-size: 13px;
}

    .board-theme .theme-detail .detail-content img {
        cursor: pointer;
    }
/* board-detail e */

/* board-write s */
.board-theme .theme-write {
    padding: 21px 21px 0 21px;
    background: #eee;
}

    .board-theme .theme-write .title-category {
        padding: 0;
    }

    .board-theme .theme-write .title-content {
        padding: 0;
    }

    .board-theme .theme-write .document-title {
        margin: 0;
    }

    .board-theme .theme-write .document-extended_keys {
        margin-top: 12px;
        padding: 1px;
    }

        .board-theme .theme-write .document-extended_keys table {
            border: 1px solid #ccc;
        }

            .board-theme .theme-write .document-extended_keys table tr {
                background: #f9f9f9;
            }

                .board-theme .theme-write .document-extended_keys table tr th {
                    font-size: 11px;
                    vertical-align: middle;
                }

                .board-theme .theme-write .document-extended_keys table tr td select,
                .board-theme .theme-write .document-extended_keys table tr td input {
                    font-size: 12px;
                }

                .board-theme .theme-write .document-extended_keys table tr td textarea {
                    width: 100% !important;
                    height: 120px;
                    min-height: 70px;
                }

        .board-theme .theme-write .document-extended_keys select {
            max-width: 210px;
        }

    .board-theme .theme-write .document-content {
        margin-top: 12px;
    }

        .board-theme .theme-write .document-content #cke_content {
            margin: 0 auto;
        }
/* board-write e */
#dimodeBoard.board-detail .board-share{display:inline-block!important;}
#sermon-button:active:hover{background-color:transparent!important;border-color:none!important;box-shadow:none!important;}
@media (min-width:1500px) and (max-width:1555px) {
    .sermon-content h4{width: 150px;}
    .sermon-box {width: 340px;}
    .sermon-box > .titleIMG,
    .sermon-box > .title {height: 165px;}
}
@media (min-width:1200px) and (max-width:1499px) {
    .series-button .btn { margin:5px;}
    .sermon-content h4 { font-size:20px; width: 140px;}
    .sermon-content h5 { font-size:15px;}
    .select .option {font-size:15px;}
    .sermon-content .sermon-date { font-size:15px;}
    .sermon-content .sermon-speaker { font-size:15px;}
.board-theme .theme-detail .detail-top .document-title h1 { font-size:30px;}
.board-theme .theme-detail .detail-top .document-title span { font-size:23px;}
.board-theme .theme-detail .detail-top .document-title h4 { font-size:24px; }
.board-theme .theme-detail .detail-top .document-title h5 { font-size:22px;}
    .series-button .btn { border-radius: 10px; padding: 10px 15px; margin: 10px 10px 10px 0px; background-color: #fff; box-shadow: 1px 1px 6px 1px #aaa; font-size:20px;}
.series-button .btn:hover { background-color: #e4e4e4; transition:0.2s all ease;}
.series-button a { text-decoration:none; color:#000; font-size:17px;}
        .series-button .btn span { font-size:15px; }
        .series-button .btn { line-height:25px; }
}

@media (min-width:992px) and (max-width:1199px) {
    .series-button .btn { margin:5px; font-size:13px;}
    .sermon-content h4 { font-size:17px; width: 120px;}
    .sermon-content h5 { font-size:14px;}
    .select .option {font-size:14px;}
    .sermon-content .sermon-date { font-size:14px;}
    .sermon-content .sermon-speaker { font-size:14px;}
     .sermon-content { height:150px;}
     #sermon-play { float: none; position: absolute; z-index: 10; top: 16%; left: 45%; width: 30px; height: 30px;}
     .board-theme .theme-detail .detail-top .document-title h1 { font-size:25px;}
    .board-theme .theme-detail .detail-top .document-title span { font-size:20px;}
    .board-theme .theme-detail .detail-top .document-title h4 { font-size:20px; }
    .board-theme .theme-detail .detail-top .document-title h5 { font-size:18px;}
    .series-button .btn { border-radius: 10px; padding: 10px 15px; margin: 10px 5px; background-color: #fff; box-shadow: 1px 1px 6px 1px #aaa;}
.series-button .btn:hover { background-color: #e4e4e4; transition:0.2s all ease;}
.series-button a { text-decoration:none; color:#000; font-size:14px;}
    #sermon-top h1 {font-size:24px;}
    #sermon-control { font-size:18px;}
        .series-button .btn span { font-size:12px; }
    .series-button .btn { line-height:20px; }
    .sermon-box {width: 310px;}
    .sermon-box > .titleIMG,
    .sermon-box > .title {height: 155px;}
}


@media (min-width:768px) and (max-width:991px) {
    .sermon-box {width: 240px;}
    .sermon-box > .titleIMG,
    .sermon-box > .title {height: 115px;}
    .sermon-box .videovalue i{padding:5px;font-size: 15px;}
    .sermon-box .mp3value i{padding:5px;font-size: 15px;}
    .board-theme .theme-list .list-categories{padding-top: 25px;}
    .board-theme .theme-list .list-categories .category-group .category-btn{font-size:17px;padding: 10px 15px;}
    #dimodeBoard .board-actions.top{display:none!important;}
    .board-theme .container { padding:0px 15px;}
    .theme-list .container { padding:0px 15px;}
.sermon-content h4 { font-size: 16px;width: 60%;margin: 0 0 15px;}
.sermon-content .sermon-count,
.sermon-content h5{font-size: 16px;}
    .series-button .btn { margin:5px; font-size:13px;}
    .sermon-content{height:155px!important; padding: 20px 10px;}
    .sermon-content .sermon-speaker{font-size:16px!important;}
        #sermon-top h1 { margin-bottom:30px;}
    .series-button { margin-top:145px;}
    .title-image { width:100%;}
.theme-detail { padding-top:100px;}
     .board-theme .theme-detail .detail-top .document-title h1 { font-size:25px;}
    .board-theme .theme-detail .detail-top .document-title span { font-size:20px;}
    .board-theme .theme-detail .detail-top .document-title h4 { font-size:20px; }
    .board-theme .theme-detail .detail-top .document-title h5 { font-size:18px;}
    .series-button .btn { border-radius: 10px; padding: 10px 15px; margin: 5px 5px 5px 0px; background-color: #fff; box-shadow: 1px 1px 6px 1px #aaa;}
.series-button .btn:hover { background-color: #e4e4e4; transition:0.2s all ease;}
.series-button a { text-decoration:none; color:#000; font-size:14px;}
    .series-button .btn span { font-size:12px; }
    .series-button .btn { line-height:25px; }
}

@media (max-width:767px) {
	#dimodeBoard .board-pages { padding:30px;}
	.sermon-content h4{font-size:17px; width: 200px;}
	#sermon-play { left:41%; top: 20%;}
	.sermon-content h5 { display:none; }
	.sermon-content .sermon-speaker { display:none; }
	.sermon-content .sermon-date { display:none; }
	.sermon-content { padding:15px 0px; text-align:center; height:110px;}
	.sermon-content a img { display:none; }
    #sermon-top { padding-top:0px; padding-right: 20px; padding-left:20px;}
    #sermon-top h1 { margin-bottom:15px; margin-left: 10px; font-size:23px;}
    .title-image { width:100%;}
    #sermon-kind { display:block;}
    .sermon-box { margin-bottom: 40px;}
    #dimodeBoard .board-actions.top{display:none!important;}
    #sermon-keyword { display: inline-block; margin-top: 15px; font-size: 15px; width:145px; margin-right:0px; margin-left:5px;height: 30px;}
    #sermon-control { font-size: 14px; width: 95px;  margin-top: 15px; margin-right:5px; margin-left:5px;height: 30px;}
    #sermon-search { display: inline-block; width: 100%; margin-bottom:15px; }
    #sermon-button {display: block;margin-top: 12px;float: left;padding: 5px;margin-right: 0;background-color:transparent!important;}
    .theme-detail { padding-top:50px;}
    .board-theme .theme-list .list-categories { justify-content: center !important; }
    .board-theme .theme-list .list-categories .category-group .category-btn{padding: 5px 10px;margin: 5px 10px 5px 0px;font-size: 17px;}
     .board-theme .theme-detail .detail-top .document-title h1 { font-size:20px; line-height:1.6em;}
    .board-theme .theme-detail .detail-top .document-title span { font-size:20px;}
    .board-theme .theme-detail .detail-top .document-title h4 { font-size:16px; padding-bottom:15px;}
    .board-theme .theme-detail .detail-top .document-title h5 { font-size:16px; margin-top:10px; float:left;}
    .board-theme .theme-detail .detail-top { margin-top:30px;}
    .list { margin-top:10px;}
    .series-button a { font-size:14px;}
    .series-button .btn { padding:10px;  margin: 6px 3px;}
    #sermon-button img { width:20px; margin-top:5px;}
    #sermon-play { width:30px; height:30px; }
    .theme-detail .container { padding:0px 35px; }
    .list { font-size:14px!important; }
    .series-button { padding:0px 5px;}
    .series-button .btn span { font-size:11px; }
    .series-button .btn { font-size:13px; }
    .series-button .btn { line-height:16px; }
    .sermon-box{width:100%; padding:0;}
    .sermon-box > .titleIMG,
    .sermon-box > .title{height:190px;}
}
@media (max-width:375px) {
}
@media (max-width:320px) {
    .sermon-box {width: 320px;}
    .sermon-box > .titleIMG,
    .sermon-box > .title {height: 160px;}
    .sermon-content h4 {font-size: 15px;width: 200px;text-align: left;}
    .sermon-box .videovalue i,
    .sermon-box .mp3value i{padding:10px;}
    .sermon-box .videovalue{right: 20%; top: 40%;}
    .sermon-box .mp3value{right: 5%; top: 40%;}
}

/* ==============================================================
   ★ 신규 프리미엄 갤러리 테마 CSS (충돌 방지용 독립 클래스 적용) ★
   (이전 답변에서 드렸던 List.cshtml 과 연동됩니다)
============================================================== */

/* 카테고리 알약 형태 */
.modern-categories { display: flex; flex-wrap: wrap; gap: 0.8rem; margin-bottom: 2rem; clear: both; margin-top: 50px; }
.modern-categories .category-btn { padding: 0.6rem 1.5rem; font-size: 1.1rem; border-radius: 2rem; font-weight: 700; transition: all 0.3s ease; border: none; cursor: pointer; }
.modern-categories .btn-light-premium { background-color: #f1f3f5; color: #333; }
.modern-categories .btn-light-premium:hover { background-color: #e9ecef; transform: translateY(-2px); }
.modern-categories .btn-dark-premium { background-color: #111; color: #fff; box-shadow: 0 0.4rem 0.8rem rgba(0,0,0,0.2); }

/* 모던 검색폼 우선순위 적용 (기존 ID 오버라이드) */
form#sermon-search.modern-search-form { display: flex; align-items: center; background: #fff; border: 2px solid #111; border-radius: 3rem; width: 100%; max-width: 100rem; margin-bottom: 3rem; overflow: hidden; padding: 0; }
.modern-search-form .search-select-wrap select#sermon-control { border: none; background: transparent; padding: 0 1rem 0 1.5rem; height: 3.5rem; font-size: 1rem; font-weight: 700; color: #111; outline: none; cursor: pointer; border-right: 1px solid #eee; width: auto; margin: 0; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.modern-search-form input#sermon-keyword { flex: 1; border: none; height: 3.5rem; padding: 0 1.5rem; font-size: 1rem; outline: none; width: auto; margin: 0; border-radius: 0; display: inline-block; }
.modern-search-form button#sermon-button { background: #111; color: #fff; border: none; width: 4.5rem; height: 3.5rem; font-size: 1.2rem; cursor: pointer; transition: background 0.3s ease; margin: 0; padding: 0; display: flex; align-items: center; justify-content: center; float: none; }
.modern-search-form button#sermon-button:hover { background: #DB2230; }

/* CSS Grid 카드 (절대 안 깨지는 16:9 비율 유지) */
.sermon-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); gap: 2rem; width: 100%; }
.premium-card { background: #fff; border-radius: 1rem; overflow: hidden; box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.08); transition: transform 0.3s ease, box-shadow 0.3s ease; display: flex; flex-direction: column; width: 100%; margin: 0; padding: 0; border: none; }
.premium-card:hover { transform: translateY(-0.5rem); box-shadow: 0 1rem 2rem rgba(0,0,0,0.15); }
.premium-card .titleIMG { display: block; position: relative; width: 100%; padding-top: 56.25%; background-color: #000; overflow: hidden; height: auto; margin: 0; }
.premium-card .title-image { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-size: cover; background-position: center; transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); opacity: 0.85; width: 100%; height: 100%; }
.premium-card .titleIMG:hover .title-image { transform: scale(1.08); opacity: 0.5; }
.premium-card .premium-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; font-size: 3.5rem; z-index: 2; opacity: 0.8; transition: all 0.3s ease; width: auto; height: auto; }
.premium-card .titleIMG:hover .premium-play { opacity: 1; transform: translate(-50%, -50%) scale(1.1); color: #DB2230; }

/* 갤러리 카드 콘텐츠 영역 */
.premium-card .premium-content { padding: 2.5rem 1.5rem 1.5rem; position: relative; flex: 1; display: flex; flex-direction: column; background: #fff; height: auto; text-align: left; }
.premium-card .sermon-actions { position: absolute; right: 1.5rem; top: -1.75rem; display: flex; gap: 0.5rem; z-index: 3; }
.premium-card .icon-btn { display: flex; align-items: center; justify-content: center; width: 3.5rem; height: 3.5rem; background-color: #111; border-radius: 50%; color: #fff; font-size: 1.2rem; box-shadow: 0 0.3rem 0.8rem rgba(0,0,0,0.3); transition: all 0.3s ease; text-decoration: none; padding: 0; }
.premium-card .icon-btn:hover { background-color: #DB2230; color: #fff; transform: translateY(-0.3rem); }
.premium-card h4 { font-size: 1.25rem; font-weight: 700; color: #111; margin: 0 0 1rem 0; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; width: 100%; height: auto; text-align: left; }
.premium-card .sermon-meta { display: flex; gap: 1rem; font-size: 0.9rem; color: #777; margin-bottom: 0.5rem; margin-top: auto; }
.premium-card .sermon-speaker { font-size: 1rem; font-weight: 700; color: #333; margin: 0; text-align: left; width: auto; position: static; }

/* 신규 프리미엄 갤러리 모바일 대응 */
@media (max-width: 767px) {
    form#sermon-search.modern-search-form { flex-direction: column; border-radius: 1rem; border: 1px solid #ddd; }
    .modern-search-form .search-select-wrap select#sermon-control { width: 100%; border-right: none; border-bottom: 1px solid #eee; text-align: center; margin: 0; }
    .modern-search-form input#sermon-keyword { width: 100%; text-align: center; margin: 0; height: 3.5rem; }
    .modern-search-form button#sermon-button { width: 100%; height: 3rem; margin: 0; float: none; border-radius: 0 0 1rem 1rem; }
    .sermon-grid { grid-template-columns: 1fr; }
    .premium-card .titleIMG { padding-top: 56.25%; }
}