/*
 Theme Name:   Rakesh The Great Theme
 Theme URI:    http://example.com/twenty-sixteen-child/
 Description:  Twenty Sixteen Child Theme
 Author:       Rakesh
 Author URI:   http://example.com
 Template:     twentysixteen
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twentysixteenchild
*/

/* Custom styles for Twenty Sixteen theme */
/* Recent Posts header */
.home .site-main > header {
    margin-bottom: 2em;
}
.home .page-header h2 {
    font-size: 26px;
    margin: 0 0 1em;
    padding: 0;
}
/* Post article */
.site-main > article {
    margin-bottom: 2em;
    padding-bottom: 1em;
    border-bottom: 1px solid #d1d1d1;
}
.site-main > article:last-child {
    border-bottom: none;
}
/* Entry title */
.entry-title {
    font-size: 24px;
    margin-top: 0;
    margin-bottom: 0.75em;
    line-height: 1.3;
    font-weight: 700;
}
/* Featured image */
.post-thumbnail {
    margin-bottom: 1.5em;
    display: block;
    width: 100%;
}
.post-thumbnail img {
    display: block;
    max-width: 100%;
    height: auto;
}
/* Content layout */
.post-content-wrapper {
    display: flex;
    margin: 0;
    gap: 0;
    width: 100%;
    align-items: flex-start;
}
.entry-meta {
    flex: 0 0 20%;
    font-size: 13px;
    line-height: 1.5;
    color: #686868;
    padding-right: 0.5em;
    margin: 0;
    padding-top: 0;
}
.entry-content {
    flex: 1;
    padding-left: 0;
    margin-left: 0;
    margin-top: 0;
    padding-top: 8px; /* Add padding to align with author name */
}
/* Meta items */
.author-info {
    margin-bottom: 0.75em;
    margin-top: 0;
}
.author-label {
    font-weight: 600;
    color: #1a1a1a;
    margin-right: 0.3em;
}
.post-date {
    margin-bottom: 0.75em;
}
.post-categories {
    margin-bottom: 0.75em;
}
/* Post content styling */
.entry-content {
    margin: 0;
    padding: 0;
    padding-top: 8px; /* Add padding to align with author name */
}
.entry-content p {
    font-size: 15px;
    line-height: 1.6;
    margin-top: 0;
    margin-bottom: 1em;
    padding: 0;
}
.read-more-button {
    display: inline-block;
    background-color: #1a1a1a;
    border-radius: 2px;
    color: #fff;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-weight: 700;
    letter-spacing: 0.046875em;
    line-height: 1;
    padding: 0.75em 0.875em;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 13px;
    margin-bottom: 0;
}
.read-more-button:hover,
.read-more-button:focus {
    background-color: #007acc;
    color: #fff;
    outline: thin dotted;
}
/* Focus styles for accessibility */
a:focus {
    outline: thin dotted;
}
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}
/* Responsive adjustments */
@media screen and (max-width: 56.875em) {
    .post-content-wrapper {
        flex-direction: column;
    }
    
    .entry-meta {
        margin-bottom: 1em;
        padding-right: 0;
    }
    
    .entry-content {
        padding-top: 0; /* Reset padding on mobile */
    }
}

/* Custom Footer Styles */
.site-footer {
    padding: 2em 0;
}

.site-info {
    text-align: center;
    margin: 0 auto;
    padding: 0 1em;
}

.custom-footer-content {
    max-width: 1000px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.5;
    color: #686868;
}

.custom-footer-content p {
    margin: 0.5em 0;
}

.footer-links {
    margin-top: 0.5em;
}

.footer-links a {
    text-decoration: none;
    transition: color 0.2s;
}

.footer-links a:hover,
.footer-links a:focus {
    color: #333;
    text-decoration: underline;
}

/* 
 * Accessibility styles for navigation
 */

/* Ensure focus states are visible */
.main-navigation a:focus {
    outline: 2px solid #007acc;
    outline-offset: 2px;
}

/* Skip link styles */
.skip-link {
    position: absolute;
    top: -100px;
    left: 0;
    background: #f1f1f1;
    color: #21759b;
    font-size: 14px;
    font-weight: 700;
    height: auto;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    transition: top 0.3s ease;
    z-index: 100000;
}

.skip-link:focus {
    top: 5px;
    clip: auto !important;
}

/* Make keyboard navigation more visible */
.main-navigation li:focus-within > ul,
.main-navigation li.focus > ul {
    left: auto;
    display: block;
}

/* Ensure submenu parents have a visible state when submenu is open */
.main-navigation li.focus > a,
.main-navigation li:focus-within > a {
    color: #007acc;
}

/* Add menu button accessibility styles */
.menu-toggle {
    color: #1a1a1a;
    font-size: 16px;
    margin: 1.3125em 0;
    padding: 0.8125em 0.875em 0.6875em;
}

.menu-toggle:focus {
    outline: 2px solid #007acc;
    outline-offset: 2px;
}

/* Enhance submenu visibility for keyboard navigation */
.main-navigation .primary-menu > li > a[aria-expanded="true"] {
    color: #007acc;
}

/* Make sure submenus are visible when toggled via keyboard */
.main-navigation .primary-menu > li > a[aria-expanded="true"] + .sub-menu {
    display: block;
}

/* 
 * Improved sidebar widget styling with better accessibility
 */

/* Common styling for all sidebar widgets */
.sidebar .widget {
    margin-bottom: 3.5em;
    padding: 0;
    border-top: 4px solid #1a1a1a;
}

.sidebar .widget-title {
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.046875em;
    line-height: 1.3125;
    margin: 0 0 1.214em;
    text-transform: uppercase;
}

/* Featured Posts and Popular Posts styling to match Categories */
.sidebar .featured-posts-widget,
.sidebar .popular-posts-widget,
.sidebar .widget_categories {
    font-family: Merriweather, Georgia, serif;
}

/* Ensure proper font size for better readability */
.sidebar .widget_categories ul,
.sidebar .featured-posts-widget ul,
.sidebar .popular-posts-widget ul {
    font-size: 17px;  /* Increased from 16px for better readability */
    line-height: 1.8; /* Increased line height for better spacing */
    margin-left: 0;   /* Reset margin to match default styling */
    padding-left: 0;  /* Reset padding to match default styling */
    list-style: none; /* Match default Twenty Sixteen styling */
}

/* Improved spacing for sidebar category items */
.sidebar .widget_categories li,
.sidebar .featured-posts-widget li,
.sidebar .popular-posts-widget li {
    padding: 0.3em 0;   /* Reduced padding for tighter look */
    margin-bottom: 0;   /* Reset margin to ensure consistency */
    border-bottom: 1px solid rgba(0, 0, 0, 0.05); /* Subtle separator for cleaner appearance */
}

.sidebar .widget_categories li:last-child,
.sidebar .featured-posts-widget li:last-child,
.sidebar .popular-posts-widget li:last-child {
    border-bottom: none; /* Remove border from last item */
}

/* Give prominent styling to the links for better visibility */
.sidebar .widget_categories a,
.sidebar .featured-posts-widget a,
.sidebar .popular-posts-widget a {
    color: #1a1a1a;
    font-weight: 500;  /* Semi-bold for better readability */
    text-decoration: none;
    transition: color 0.2s;
    display: inline-block; /* Better for focus states */
    padding: 0.1em 0; /* Add slight padding to increase hit area */
}

/* High contrast hover/focus states for accessibility */
.sidebar .widget_categories a:hover,
.sidebar .widget_categories a:focus,
.sidebar .featured-posts-widget a:hover,
.sidebar .featured-posts-widget a:focus,
.sidebar .popular-posts-widget a:hover,
.sidebar .popular-posts-widget a:focus {
    color: #007acc;
    text-decoration: underline; /* Underline on hover/focus for better accessibility */
}

/* Fix for any custom featured/popular post meta info */
.sidebar .featured-posts-widget .post-date,
.sidebar .popular-posts-widget .post-date {
    display: block;
    font-size: 14px; /* Increased from 13px */
    font-style: italic;
    color: #686868;
    margin-top: 0.25em;
}

/* Ensure proper focus states for keyboard navigation */
.sidebar .widget_categories a:focus,
.sidebar .featured-posts-widget a:focus,
.sidebar .popular-posts-widget a:focus {
    outline: 2px solid #007acc; /* More visible focus outline */
    outline-offset: 2px;
}

/* Add consistent spacing for all widget content */
.sidebar .widget > ul,
.sidebar .widget > div {
    margin-bottom: 0;
}

/* Single Post Styling */
.single .entry-title {
    font-size: 28px;
    margin-bottom: 1em;
    font-weight: 700;
    line-height: 1.25;
}

/* Single Post Excerpt Styling */
.single .single-post-excerpt {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 2em;
    border-left: 4px solid #1a1a1a;
    padding-left: 1em;
    font-style: italic;
    color: #686868;
}

/* Regular content styling */
.single .entry-content > p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 1.5em;
}

/* Post content wrapper for single posts */
.single .post-content-wrapper {
    display: flex;
    margin: 0;
    gap: 0;
    width: 100%;
    align-items: flex-start;
}

.single .entry-meta {
    flex: 0 0 20%;
    font-size: 13px;
    line-height: 1.5;
    color: #686868;
    padding-right: 0.5em;
    margin: 0;
    padding-top: 0;
}

.single .entry-content {
    flex: 1;
    padding-left: 0;
    margin-left: 0;
    margin-top: 0;
    padding-top: 8px;
}

/* Post Taxonomy Styling - Updated Styles */
.post-taxonomy {
    margin-top: 2em;
    padding-top: 1.5em;
    border-top: 1px solid #d1d1d1;
    /* Added clear property to ensure it displays below all floated content */
    clear: both;
    /* Added padding bottom to create space between taxonomy and any plugin content */
    padding-bottom: 1.5em;
    /* Added bottom margin to ensure good spacing */
    margin-bottom: 2em;
}

.post-categories-footer,
.post-tags-footer {
    margin-bottom: 1.5em;
}

.post-tags-footer {
    margin-bottom: 0;
}

.taxonomy-heading {
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 0.5em;
    color: #1a1a1a;
}

.taxonomy-terms {
    font-family: Merriweather, Georgia, serif;
    font-size: 15px;
    line-height: 1.6;
    color: #686868;
    margin-bottom: 1em;
    /* Added padding to ensure terms don't touch each other */
    padding: 0.5em 0;
}

.taxonomy-terms a {
    color: #007acc;
    text-decoration: none;
    transition: color 0.2s;
    /* Added margin between tag/category links */
    margin-right: 0.5em;
    margin-bottom: 0.5em;
    display: inline-block;
}

.taxonomy-terms a:hover,
.taxonomy-terms a:focus {
    color: #686868;
    text-decoration: underline;
}

/* Plugin Content Area */
.plugin-content-area {
    margin-top: 2em;
    clear: both;
    width: 100%;
}

/* Fix for social sharing buttons */
.addtoany_share_save_container {
    clear: both;
    margin: 1em 0;
}

.addtoany_list a {
    padding: 5px;
}

/* Improve related posts accessibility */
.rltdpstsplgn-related-posts {
    margin-top: 1.5em;
}

.rltdpstsplgn-related-title {
    font-size: 18px;
    margin-bottom: 1em;
}

/* Add styling for our new hook section where plugins will appear */
.twentysixteen-child-after-taxonomy {
    margin-top: 1.5em;
    padding-top: 1em;
    border-top: 1px solid #f0f0f0;
}

/* Ensure screen reader accessibility */
.a2a_button_copy_link span,
.a2a_button_linkedin span,
.a2a_button_email span,
.a2a_button_whatsapp span,
.a2a_button_facebook span,
.a2a_button_x span,
.a2a_button_reddit span,
.a2a_dd span {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
}

/* Responsive adjustments for single posts */
@media screen and (max-width: 56.875em) {
    .single .post-content-wrapper {
        flex-direction: column;
    }

    .single .entry-meta {
        margin-bottom: 1.5em;
        padding-right: 0;
    }

    .single .entry-content {
        padding-top: 0;
    }

    .single .single-post-excerpt {
        margin-left: 0;
        margin-right: 0;
    }

    .post-taxonomy {
        margin-top: 1.5em;
        padding-top: 1em;
    }

    .taxonomy-heading {
        font-size: 15px;
    }

    .taxonomy-terms {
        font-size: 14px;
    }
}

/* ==========================================================================
   Author Card - Professional Author Section
   ========================================================================== */

.author-card {
    background: #ffffff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 24px;
    margin: 2em 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
}

.author-card-inner {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.author-card-avatar {
    flex-shrink: 0;
}

.author-card-avatar img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 3px solid #f5f5f5;
    object-fit: cover;
}

.author-card-content {
    flex: 1;
    min-width: 0;
}

.author-card-label {
    display: block;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #686868;
    margin-bottom: 4px;
}

.author-card-name {
    font-family: Merriweather, Georgia, serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 10px 0;
}

.author-card-name a {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.2s ease;
}

.author-card-name a:hover,
.author-card-name a:focus {
    color: #d35400;
}

.author-card-name a:focus {
    outline: 2px solid #d35400;
    outline-offset: 2px;
}

.author-card-bio {
    font-family: Merriweather, Georgia, serif;
    font-size: 14px;
    line-height: 1.7;
    color: #4a4a4a;
    margin: 0 0 16px 0;
}

.author-card-links {
    margin-top: 12px;
}

.author-card-posts-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #d35400;
    text-decoration: none;
    transition: color 0.2s ease;
}

.author-card-posts-link:hover,
.author-card-posts-link:focus {
    color: #b5843f;
    text-decoration: underline;
}

.author-card-posts-link:focus {
    outline: 2px solid #d35400;
    outline-offset: 2px;
}

.author-card-arrow {
    font-size: 16px;
    transition: transform 0.2s ease;
}

.author-card-posts-link:hover .author-card-arrow {
    transform: translateX(3px);
}

/* Responsive author card */
@media screen and (max-width: 56.875em) {
    .author-card {
        padding: 20px;
    }

    .author-card-inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .author-card-avatar img {
        width: 70px;
        height: 70px;
    }

    .author-card-name {
        font-size: 18px;
    }

    .author-card-bio {
        font-size: 13px;
    }
}

/* High contrast mode support for author card */
@media (forced-colors: active) {
    .author-card {
        border: 2px solid CanvasText;
    }

    .author-card-avatar img {
        border: 2px solid CanvasText;
    }

    .author-card-name a:focus,
    .author-card-posts-link:focus {
        outline: 2px solid Highlight;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .author-card-posts-link:hover .author-card-arrow {
        transform: none;
    }

    .author-card-name a,
    .author-card-posts-link {
        transition: none;
    }
}