/* Главный ограничитель */
.page-wrapper {
    max-width: 1400px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

/* Внутренний контейнер */
.cm-container {
    max-width: 1400px !important;
    width: 100% !important;
}

/* Убираем отступы между колонками */
.cm-row,
.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Убираем внутренние паддинги колонок */
.cm-col-lg-6,
.cm-col-md-6,
.cm-col-12 {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

/* Карточка на всю ширину */
.grid-post-holder,
.card {
    width: 100% !important;
}

/* Картинка растягивается */
.post_thumb img {
    width: 100% !important;
    height: auto !important;
    display: block;
}

/* Убираем лишние отступы у figure */
.imghover {
    margin: 0 !important;
}

/* ===================================== */
/* === START: ВЕРХНИЙ SEO БЛОК ==== */
/* ===================================== */

.seo-text-wrapper {
    max-width: 860px;
    margin: 18px auto 24px;
    text-align: center;
}

.cm_blog_page .seo-text {
    background: #f5f5f5;
    border-radius: 10px;
    padding: 14px 18px;
    border: 1px solid #e2e2e2;
    font-size: 13px;
    line-height: 1.35;
    color: #444;
    max-height: 130px;
    overflow: hidden;
    position: relative;
    text-align: left;
}

.cm_blog_page .seo-text::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 35px;
    background: linear-gradient(to bottom, rgba(245,245,245,0), #f5f5f5);
}

.cm_blog_page .seo-text p {
    margin-bottom: 6px;
}

.cm_blog_page .seo-text p:first-child {
    font-size: 13.5px;
    color: #222;
}

.seo-toggle {
    display: inline-block;
    margin-top: 12px;
    padding: 8px 16px;
    background: #ff3d00;
    color: #fff;
    border-radius: 6px;
    border: none;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
}

.seo-toggle:hover {
    background: #e63600;
}

.seo-text.open {
    max-height: none !important;
}

.seo-text.open::after {
    display: none;
}

.cm_blog_page .main-title {
    text-align: center;
    font-size: 26px;
    margin: 18px 0 10px;
    font-weight: 700;
    color: #111;
    line-height: 1.25;
}

.cm_blog_page .main-title::after {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    background: #ff3d00;
    margin: 6px auto 0;
    border-radius: 2px;
}

@media (max-width: 768px) {
    .cm_blog_page .seo-text {
        padding: 12px 14px;
        font-size: 12.5px;
        line-height: 1.3;
        max-height: 110px;
    }

    .cm_blog_page .seo-text.open {
        max-height: none !important;
    }

    .cm_blog_page .seo-text p:first-child {
        font-size: 13px;
    }

    .cm_blog_page .main-title {
        font-size: 21px;
        margin: 14px 0 8px;
    }

    .seo-toggle {
        font-size: 12.5px;
    }
}

/* ===================================== */
/* === END: ВЕРХНИЙ SEO БЛОК ====== */
/* ===================================== */


/* ===================================== */
/* === START: НИЖНИЙ SEO БЛОК ======= */
/* ===================================== */

.cm_blog_page .seo-text-bottom {
    width: 100%;
    max-width: 900px;
    margin: 35px auto 25px;
    padding: 18px 22px;
    background: #fafafa;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.04);
    position: relative;
}

.cm_blog_page .seo-text-bottom::before {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    background: #ff3d00;
    border-radius: 2px;
    position: absolute;
    top: 0;
    left: 20px;
}

.cm_blog_page .seo-text-bottom p {
    margin-bottom: 8px;
    line-height: 1.45;
    font-size: 13.8px;
    color: #444;
}

.cm_blog_page .seo-text-bottom p:first-child {
    color: #222;
    font-weight: 500;
}

.cm_blog_page .seo-text-bottom p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .cm_blog_page .seo-text-bottom {
        padding: 14px 16px;
        margin: 25px 0 20px;
    }

    .cm_blog_page .seo-text-bottom p {
        font-size: 13px;
        line-height: 1.4;
    }
}

/* ===================================== */
/* === END: НИЖНИЙ SEO БЛОК ========= */
/* ===================================== */


/* ===================================== */
/* === CATEGORY CARDS ================== */
/* ===================================== */

.category-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    margin: 25px 0;
}

.cat-card {
    display: block;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    text-align: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.cat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

.cat-card img {
    width: 100%;
    height: auto;
    display: block;
}

.cat-title {
    position: static;
    background: none;
    color: #111;
    padding: 10px 8px;
    font-size: 14px;
    font-weight: 500;
}

.cat-block-title {
    font-size: 20px;
    font-weight: 600;
    margin: 25px 0 15px;
}

@media (max-width: 768px) {
    .category-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ===================================== */
/* === SWIPER CATEGORY SLIDER ========== */
/* ===================================== */

.catSwiper {
    max-width: 1200px;
    margin: 10px auto 20px;
    padding: 5px 0;
}

.catSwiper .swiper-slide {
    width: auto;
}

.catSwiper .slider-card {
    display: block;
    width: 160px;
}

.catSwiper .slider-card img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
}

@media (max-width: 768px) {
    .catSwiper .slider-card {
        width: 45vw;
    }
}

.swiper-button-next,
.swiper-button-prev {
    color: #fff;
}


/* ===================== */
/* === SIDEBAR START === */
/* ===================== */

.sidebar-widget-area {
    padding-left: 10px;
}

.sidebar-widget-area .widget {
    background: #ffffff;
    border: 1px solid #eaeaea;
    border-radius: 12px;
    padding: 18px 16px 16px;
    margin-bottom: 20px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.04);
    transition: all 0.2s ease;
}

.sidebar-widget-area .widget:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(0,0,0,0.06);
}

.sidebar-widget-area .widget-title {
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}

.sidebar-widget-area .widget-title h2 {
    font-size: 19px;
    font-weight: 800;
    letter-spacing: 0.2px;
    margin: 0;
    color: #111;
}

.sidebar-widget-area .widget-title h2::after {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    background: #ff5a2c;
    margin-top: 8px;
    border-radius: 20px;
}

.sidebar-widget-area .widget ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-widget-area .widget ul li {
    border-bottom: 1px solid #f3f3f3;
    padding: 2px 0;
}

.sidebar-widget-area .widget ul li:last-child {
    border-bottom: none;
}

.sidebar-widget-area .widget ul li a {
    display: block;
    padding: 12px 0;
    font-size: 15.5px;
    line-height: 1.5;
    color: #111;
    text-decoration: none;
    transition: all 0.2s ease;
}

.sidebar-widget-area .widget ul li a:hover {
    color: #ff5a2c;
    padding-left: 6px;
}

.sidebar-widget-area .widget ul li a::before {
    content: "•";
    color: #ff5a2c;
    font-size: 16px;
    margin-right: 8px;
}

.sidebar-widget-area .widget_search input[type="search"] {
    border-radius: 8px;
    border: 1px solid #ddd;
}

.sidebar-widget-area .widget_search input[type="submit"] {
    border-radius: 8px;
}

/* ===================== */
/* === SIDEBAR END === */
/* ===================== */


/* ========================================================= */
/* === КАТЕГОРИИ В КАРТОЧКАХ ПОСТОВ ======================== */
/* ========================================================= */

.grid-post-holder .entry_cats {
    margin-bottom: 5px;
    line-height: 1;
}

.grid-post-holder .entry_cats ul.post-categories {
    margin: 0;
    padding: 0;
}

.grid-post-holder .entry_cats ul.post-categories li {
    display: inline-block;
    margin-right: 2px;
    margin-bottom: 2px;
}

.grid-post-holder .entry_cats ul.post-categories li a {
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.1;
    padding: 3px 8px;
    background: #ff6a00;
    color: #ffffff;
    border-radius: 6px;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.grid-post-holder .entry_cats ul.post-categories li:hover a,
.grid-post-holder .entry_cats ul.post-categories li a:hover {
    background: #ff944d;
    color: #ffffff;
}

.grid-post-holder .entry_cats ul.post-categories li a:before,
.grid-post-holder .entry_cats ul.post-categories li a:after {
    display: none;
}

/* ========================================================= */
/* === ДОБАВКА: КАТЕГОРИИ ВНУТРИ ПОСТА ===================== */
/* ========================================================= */

.single-post .entry_cats {
    margin-bottom: 5px;
    line-height: 1;
    font-size: 0; /* убирает запятые */
}

.single-post .entry_cats a {
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.1;
    padding: 3px 8px;
    background: #ff6a00;
    color: #ffffff;
    border-radius: 6px;
    text-decoration: none;
    margin: 2px 4px 2px 0;
    transition: background-color 0.15s ease;
}

.single-post .entry_cats a:hover {
    background: #ff944d;
    color: #ffffff;
}

/* убираем иконку темы */
.single-post .entry_cats .cm-meta-icon {
    display: none;
}
/* ========================================================= */
/* === ЗАГОЛОВКИ КАРТОЧЕК ПОСТОВ =========================== */
/* ========================================================= */

.post_title h2,
.post_title h2 a,
.entry-title,
.entry-title a,
.card_content h2,
.card_content h2 a {
    font-size: 17px;
    line-height: 1.25;
    font-weight: 700;
    color: #111111;
    text-decoration: none;
    transition: color 0.2s ease;
}

.post_title h2 a,
.entry-title a,
.card_content h2 a {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.post_title h2 a:hover,
.entry-title a:hover,
.card_content h2 a:hover {
    color: #ff6a00;
}

.post_title,
.entry-title,
.card_content h2 {
    margin-top: 6px;
    margin-bottom: 6px;
}


/* ========================================================= */
/* === КАРТОЧКА ПОСТА ====================================== */
/* ========================================================= */

.card {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
    transition: all 0.25s ease;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.10);
}

.card_content {
    padding: 12px 14px;
}

.post_thumb img {
    border-radius: 10px 10px 0 0;
}


/* ========================================================= */
/* === КАРУСЕЛЬ: ПЛАВНЫЙ HOVER ============================ */
/* ========================================================= */

.swiper-slide .slider-card {
    display: block;
    overflow: hidden;
    border-radius: 12px;
    transition: box-shadow 0.25s ease;
}

.swiper-slide .slider-card img {
    width: 100%;
    display: block;
    transition: transform 0.35s ease, filter 0.35s ease;
}

.swiper-slide:hover .slider-card {
    box-shadow: 0 8px 18px rgba(0,0,0,0.12);
}

.swiper-slide:hover .slider-card img {
    transform: scale(1.04);
    filter: brightness(0.95);
}


/* ===================================== */
/* === HEADER FINAL ==================== */
/* ===================================== */

.main-navigation {
    background: #1f1f1f;
    border-radius: 12px;
    margin: 15px 0 20px;
    padding: 8px 12px;
}

.primary-navigation {
    background: transparent !important;
}

.main-navigation ul {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-navigation ul li a {
    display: block;
    padding: 10px 14px;
    font-size: 15px;
    font-weight: 600;
    color: #eaeaea;
    text-decoration: none;
    border-radius: 8px;
    background: transparent;
    transition: all 0.2s ease;
}

.primary-navigation.dark ul li a {
    background: transparent !important;
    color: #eaeaea !important;
}

@media (min-width: 769px) {
    .main-navigation ul li > a:hover,
    .main-navigation ul li:hover > a,
    .main-navigation ul li.current-menu-item > a,
    .main-navigation ul li.current_page_item > a {
        background: #ff5a2c !important;
        color: #ffffff !important;
        border-radius: 8px !important;
    }

    .main-navigation ul li > a:hover *,
    .main-navigation ul li:hover > a * {
        color: #ffffff !important;
    }
}

.primary-navigation.dark ul li a:hover *,
.primary-navigation.dark ul li:hover > a * {
    color: #ffffff !important;
}

.primary-navigation.dark ul li.current-menu-item > a,
.primary-navigation.dark ul li.current_page_item > a {
    background: #ff5a2c !important;
    color: #ffffff !important;
}

@media (max-width: 768px) {
    .main-navigation {
        padding: 10px;
        border-radius: 10px;
    }

    .main-navigation ul {
        display: block;
    }

    .main-navigation ul li {
        margin-bottom: 6px;
    }

    .main-navigation ul li a {
        background: #2a2a2a;
        padding: 12px;
        border-radius: 8px;
        color: #ffffff;
    }

    .primary-navigation.dark ul li a:hover,
    .primary-navigation.dark ul li:hover > a {
        background: #ff5a2c !important;
        color: #ffffff !important;
    }
}

.primary-navigation ul li a:before,
.primary-navigation ul li a:after {
    display: none !important;
}

.primary-navigation ul li > a:hover,
.primary-navigation ul li:hover > a {
    background: #ff5a2c !important;
    color: #ffffff !important;
    border-radius: 8px !important;
}

.primary-navigation ul li > a:hover *,
.primary-navigation ul li:hover > a * {
    color: #ffffff !important;
}


/* ===================================== */
/* === RELATED POSTS BLOCK ============= */
/* ===================================== */

.cm-related-posts {
    margin: 40px 0;
}

.cm-related-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #222;
}

.cm-related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.cm-related-item {
    display: block;
    text-decoration: none;
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #eeeeee;
    transition: 0.25s ease;
}

.cm-related-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

.cm-related-thumb {
    width: 100%;
    overflow: hidden;
}

.cm-related-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.cm-related-name {
    padding: 10px;
    font-size: 14px;
    font-weight: 600;
    color: #333333;
    line-height: 1.3;
}

@media (max-width: 1024px) {
    .cm-related-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .cm-related-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .cm-related-name {
        font-size: 13px;
        padding: 8px;
    }
}


/* ===================================== */
/* === REMOVE LOGO OUTLINE ============= */
/* ===================================== */

.logo a:focus,
.logo a:active,
.site-logo a:focus,
.site-logo a:active,
.custom-logo-link:focus,
.custom-logo-link:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

.logo img:focus,
.logo img:active,
.custom-logo:focus,
.custom-logo:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}



/* ===================================================== */
/* BADGE ОБНОВЛЁН */
/* ===================================================== */

.post_thumb,
.post-thumbnail,
.grid-post-holder,
.thumbnail-wrapper{
    position:relative;
}

.erokomiksi-updated-badge{

    position:absolute;
    top:12px;
    right:12px;
    z-index:999;

    padding:8px 14px;

    background:
        linear-gradient(
            135deg,
            #ff003c 0%,
            #ff2f63 100%
        );

    color:#fff;

    font-size:14px;
    font-weight:800;

    line-height:1;

    border-radius:12px;

    text-transform:uppercase;
    letter-spacing:.4px;

    box-shadow:
        0 0 14px rgba(255,0,60,.55),
        0 6px 16px rgba(0,0,0,.28);

    border:1px solid rgba(255,255,255,.18);

    backdrop-filter:blur(3px);

    pointer-events:none;
}

/* glow */

.erokomiksi-updated-badge:before{

    content:'';

    position:absolute;
    inset:0;

    border-radius:12px;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.35);

}

/* мобилки */

@media(max-width:768px){

    .erokomiksi-updated-badge{

        top:8px;
        right:8px;

        padding:6px 10px;

        font-size:11px;

        border-radius:10px;

    }

}

/* ===================================================== */
/* END */
/* ===================================================== */







/* =========================================================
   DMCA ЗАЩИТА ДЛЯ ТИТУЛЬНОЙ КАРТИНКИ КОМИКСА
   ---------------------------------------------------------
   Этот CSS нужен для:
   - отображения DMCA badge поверх первой картинки;
   - размещения badge справа сверху;
   - красивого внешнего вида;
   - hover-эффекта;
   - чтобы badge не ломал вёрстку сайта.

   Используется только вместе с:
   <div class="comic-cover-protected">
   и
   <div class="comic-dmca-overlay">
   ========================================================= */


/* =========================================================
   ОСНОВНОЙ БЛОК ТИТУЛЬНОЙ КАРТИНКИ
   ---------------------------------------------------------
   Делает контейнер "относительным",
   чтобы DMCA badge мог позиционироваться
   поверх картинки.
   ========================================================= */

.comic-cover-protected{
position:relative;
display:inline-block;
width:100%;
}


/* =========================================================
   БЛОК DMCA BADGE
   ---------------------------------------------------------
   Размещает плашку:
   - справа сверху;
   - поверх картинки;
   - выше остальных элементов.
   ========================================================= */

.comic-dmca-overlay{
position:absolute;
top:15px;
right:15px;
z-index:20;
}


/* =========================================================
   СТИЛЬ САМОЙ КАРТИНКИ BADGE
   ---------------------------------------------------------
   Настройка:
   - размера;
   - прозрачности;
   - скругления;
   - тени;
   - плавности анимации.
   ========================================================= */

.comic-dmca-overlay img{
max-width:170px;
height:auto;
opacity:.92;
border-radius:6px;
transition:.2s;
box-shadow:0 2px 10px rgba(0,0,0,.35);
}


/* =========================================================
   ЭФФЕКТ ПРИ НАВЕДЕНИИ
   ---------------------------------------------------------
   Badge слегка увеличивается
   и становится более ярким.
   ========================================================= */

.comic-dmca-overlay img:hover{
opacity:1;
transform:scale(1.03);
}