/*
 Theme Name:   ContentOcean Newspaper Pro
 Theme URI:    https://contentocean.in
 Description:  ContentOcean Child Theme for Mobile responsive News Website. Using this child theme you can easily create any type of News Website. This GeneratePress Child theme design by contentocean.in
 Author:       ContentOcean.in
 Author URI:   https://contentocean.in
 Template:     generatepress
 Version:      1.6.0
*/

/* ==========================================================================
   1. Base & Header Styles
   ========================================================================== */
.main-navigation {
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.wp-block-image img {
    margin-bottom: 20px;
    border-radius: 7px;
}

.inb-scroll-menu {
    background: white;
    display: block !important;
    color: black;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    position: fixed;
    box-shadow: 0 3px 4px rgb(0 0 0 / 13%) !important;
    z-index: 10000;
    border-top: 1px solid #ccc;
}

.page-header-image-single .attachment-full {
    box-shadow: rgba(23, 43, 99, .3) 0 7px 28px;
    border-radius: 16px;
    margin-bottom: -5px;
    transition: opacity 0.3s ease-in-out;
}

.contentocean-banner-ads {
    margin-bottom: 15px;
}

/* ==========================================================================
   2. Layout & GenerateBlocks Integration
   ========================================================================== */
.auto-width.gb-query-loop-wrapper {
    flex: 1;
}

@media (min-width: 768px) {
    .sticky-container > .gb-inside-container, 
    .sticky-container {
        position: sticky;
        top: 80px;
    }
    
    #right-sidebar .inside-right-sidebar {
        height: 100%;
    }
}

select#wp-block-categories-1 {
    width: 100%;
}

/* ==========================================================================
   3. Single Post Typography & Elements (Including News Summary)
   ========================================================================== */
/* Transferred from functions.php for better performance */
.single-post .cntocn-news-summary {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    margin: 8px 0 20px;
    color: #555555;
}

.single-post .cntocn-news-summary p {
    margin: 0;
}

.post-dates {
    font-size: 12px;
    font-weight: 400;
    color: var(--text-1);
}

/* Rank Math Breadcrumbs */
.rank-math-breadcrumb p {
    background: #e5e8ec;
    color: #000000;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
}

@media (max-width: 768px) {
    .rank-math-breadcrumb p {
        margin: 0px 10px;
    }
}

/* Table of Contents */
#toc_container {
    background: transparent;
    border: 1px solid #aaa;
    padding: 0px;
}

#toc_container span.toc_toggle {
    font-weight: 400;
    background: #fff;
    padding: 3px 20px;
    font-size: 18px;
    text-transform: capitalize;
    text-align: center;
    display: block;
}

#toc_container li a {
    display: block;
    width: 100%;
    color: var(--link-text);
    padding: 10px 1em;
    border-top: 1px solid #aaa;
}

/* Tag Cloud */
.widget_epcl_tag_cloud a, 
.widget_tag_cloud a, 
.wp-block-tag-cloud a {
    font-size: 12px !important;
    margin-bottom: 8px;
    margin-right: 8px;
}

.widget_epcl_tag_cloud a, 
.widget_tag_cloud a, 
.wp-block-tag-cloud a,  
div.tags a {
    color: #333333;
    display: inline-block;
    padding: 4px 15px;
    line-height: 1.2;
    margin-right: 10px;
    background: #fff;
    border: 1px solid #333333;
    border-radius: 25px;
}

/* ==========================================================================
   4. Social Sharing & Interactive Elements
   ========================================================================== */
.sticky-social-icons {
    position: fixed !important;
    right: 0 !important;
    top: 45% !important;
}

/* WhatsApp and Telegram Animations */
.whatsapphighlight {
    animation: contentoceanTheme-GreenBorderAnimation 1s infinite;
    will-change: border-color;
}

@keyframes contentoceanTheme-GreenBorderAnimation {
    0% { border-color: transparent; }
    50% { border-color: #25d366; }
    100% { border-color: transparent; }
}

.telegramhighlight {
    animation: contentoceanTheme-BlueBorderAnimation 1s infinite;
    will-change: border-color;
}

@keyframes contentoceanTheme-BlueBorderAnimation {
    0% { border-color: transparent; }
    50% { border-color: #0086ce; }
    100% { border-color: transparent; }
}

/* Social Share Buttons */
.wpjankari-social-wrapper {
    margin: 20px 5px;
    font-size: 0;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
}

.wpjankari-social-sharing {
    padding: 8px;
    margin: 4px;
    border-radius: 3px;
    flex: 1;
    transition: background-color 0.3s, transform 0.3s, box-shadow 0.3s;
}

.wpjankari-social-sharing:hover {
    transform: translateY(-3px);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}

.wpjankari-social-sharing svg {
    position: relative;
    top: 0.15em;
    display: inline-block;
}

@media only screen and (max-width: 600px) {
    .wpjankari-social-sharing {
        display: inline-block;
    }
}

/* Social Colors */
.wpjankari-social-facebook { fill: #fff; background-color: #3b5998; }
.wpjankari-social-twitter { fill: #fff; background-color: #000; }
.wpjankari-social-whatsapp { fill: #fff; background-color: #25d366; }
.wpjankari-social-telegram { fill: #fff; background-color: #027ebd; }
.wpjankari-social-more { fill: #fff; background-color: #000; }

/* ==========================================================================
   5. Footer & Utilities
   ========================================================================== */
.sticky-footer-menu {
    position: fixed;
    height: 60px;
    width: 100%;
    bottom: 0;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    z-index: 23235;
}

@media only screen and (min-width: 960px) {
    .sticky-footer-menu {
        display: none !important;
    }
}

/* Reduced Motion Utility */
@media (prefers-reduced-motion: no-preference) {
    .animate {
        opacity: 0;
        transform: translateY(100px);
        transition: opacity 1s ease, transform 0.5s ease;
        will-change: opacity, transform;
    }

    .animate.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    /* Disable animation in the editor preview */
    .editor-styles-wrapper .animate {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

/* BREAKING NEWS BAR */
.cntocn-breaking-bar {
    width: 100%;
    background: #e62117;
    color: #fff;
    overflow: hidden;
    font-family: inherit;
    z-index: 99;
}

.cntocn-breaking-bar-inner {
    display: flex;
    align-items: center;
}

.cntocn-breaking-label {
    background: #e62117;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 14px;
    white-space: nowrap;
    z-index: 2;
    box-shadow: 5px 0 15px rgba(0,0,0,0.2);
}

.cntocn-breaking-ticker {
    flex: 1;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.cntocn-breaking-track {
    display: flex;
    white-space: nowrap;
    padding-left: 100%; /* Start off-screen */
    animation: cntocn-marquee 20s linear infinite; /* Speed of scroll */
}

.cntocn-breaking-item {
    display: flex;
    align-items: center;
    padding-right: 50px; /* Space between news items */
}

.cntocn-breaking-arrow {
    margin-right: 10px;
    width: 0; 
    height: 0; 
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 8px solid #fff;
}

.cntocn-breaking-link {
    color: #fff !important;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
}

/* THE MAGIC: Infinite Scrolling Animation */
@keyframes cntocn-marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); } /* Halfway point of the doubled track */
}

/* Pause on hover */
.cntocn-breaking-ticker:hover .cntocn-breaking-track {
    animation-play-state: paused;
}