/* ==========================================================================
   TeluguPedia Custom Sepia Theme (protcom-) v11.0 for HTMLy CMS
   Fonts: Anek Telugu (Telugu) & Inter (English)
   ========================================================================== */
:root {
    --protcom-bg-main: #FBF7F0;         /* Light warm sepia paper */
    --protcom-bg-secondary: #F3E9D8;    /* Soft antique parchment */
    --protcom-bg-card: #FFFDF9;         /* Warm cream card surface */
    --protcom-text-dark: #2C1E14;       /* Deep espresso brown */
    --protcom-text-muted: #6E5544;      /* Muted warm umber */
    --protcom-accent-primary: #8C3B1A;  /* Traditional terracotta / rust */
    --protcom-accent-red: #D92D20;      /* Pure vibrant red for nav hover */
    --protcom-accent-gold: #C88A32;     /* Antique gold */
    --protcom-border: #DFCBB2;          /* Subtle sepia border */
    --protcom-shadow: 0 4px 14px rgba(60, 38, 22, 0.08);
    --protcom-radius: 8px;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body,
body.protcom-body {
    background-color: var(--protcom-bg-main) !important;
    color: var(--protcom-text-dark) !important;
    font-family: 'Inter', 'Anek Telugu', sans-serif !important;
    line-height: 1.7;
    font-size: 16px;
}

.protcom-en {
    font-family: 'Inter', sans-serif !important;
}

a {
    color: var(--protcom-text-dark);
    text-decoration: none;
    transition: all 0.2s ease;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.breadcrumb {
    display: none !important;
}

.protcom-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 18px;
}

.protcom-main-wrap {
    padding: 28px 0 10px;
    min-height: 65vh;
}

/* ==========================================================================
   STICKY HEADER, 3PX SUBTITLE MARGIN, THIN PIPE, RED HOVER & 3-DOTS OVERFLOW
   ========================================================================== */
.protcom-header {
    background-color: var(--protcom-bg-card);
    border-bottom: 2px solid var(--protcom-border);
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: var(--protcom-shadow);
}

.protcom-navbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 74px;
    gap: 14px;
}

.protcom-brand-group {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-shrink: 0;
}

.protcom-logo {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.protcom-logo-main {
    font-size: 1.65rem;
    font-weight: 700;
    color: var(--protcom-accent-primary);
    letter-spacing: -0.5px;
}

/* 3px top margin on subtitle */
.protcom-logo-sub {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--protcom-text-muted);
    letter-spacing: 0.2px;
    margin-top: 3px !important;
}

/* Ultra-thin 1px Pipe Divider */
.protcom-pipe-divider {
    display: inline-block;
    width: 1px;
    height: 34px;
    background-color: #C9B194;
    flex-shrink: 0;
}

.protcom-nav-wrapper {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.protcom-nav-links {
    display: flex;
    list-style: none;
    align-items: center;
    gap: 14px;
    flex-wrap: nowrap;
}

/* No Background Hover on Navbar Links - Red Text Hover Only */
.protcom-nav-links a {
    text-decoration: none;
    color: var(--protcom-text-dark);
    background: transparent !important;
    font-weight: 600;
    font-size: 1.02rem;
    padding: 6px 4px;
    white-space: nowrap;
    transition: color 0.18s ease;
}

.protcom-nav-links a:hover,
.protcom-nav-links a.protcom-active {
    background: transparent !important;
    color: var(--protcom-accent-red) !important;
}

.protcom-nav-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.protcom-icon-btn {
    background-color: var(--protcom-bg-secondary);
    border: 1px solid var(--protcom-border);
    color: var(--protcom-text-dark);
    width: 38px;
    height: 38px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.protcom-icon-btn:hover,
.protcom-icon-btn.protcom-active {
    background-color: var(--protcom-accent-primary);
    color: #ffffff;
    border-color: var(--protcom-accent-primary);
}

.protcom-hamburger-btn {
    display: none;
}

/* Desktop Vertical 3-Dots Pushdown Horizontal Bar */
.protcom-pushdown-more {
    max-height: 0;
    overflow: hidden;
    background-color: var(--protcom-bg-secondary);
    transition: max-height 0.3s ease, padding 0.3s ease;
    border-bottom: 0 solid var(--protcom-border);
}

.protcom-pushdown-more.protcom-open {
    max-height: 110px;
    padding: 12px 0;
    border-bottom: 1px solid var(--protcom-border);
}

.protcom-more-horizontal-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    list-style: none;
}

.protcom-more-horizontal-list a {
    font-weight: 600;
    font-size: 1rem;
    color: var(--protcom-text-dark);
    background: transparent !important;
    padding: 4px 2px;
}

.protcom-more-horizontal-list a:hover {
    color: var(--protcom-accent-red) !important;
}

/* ==========================================================================
   PUSHDOWN SEARCH & HTMLy 404 / SEARCH RESULTS FORM STYLING FIX
   ========================================================================== */
.protcom-pushdown-search {
    max-height: 0;
    overflow: hidden;
    background-color: var(--protcom-bg-secondary);
    transition: max-height 0.35s ease, padding 0.35s ease, border-color 0.35s ease;
    border-bottom: 0 solid var(--protcom-border);
}

.protcom-pushdown-search.protcom-open {
    max-height: 120px;
    padding: 16px 0;
    border-bottom: 1px solid var(--protcom-border);
}

.protcom-search-form,
.protcom-search-box-wrap form,
.search-404 form,
form.search-form {
    display: flex !important;
    align-items: stretch;
    gap: 10px;
    max-width: 720px;
    margin: 0 auto;
    width: 100%;
}

.protcom-search-box-wrap label,
.search-404 label,
form.search-form label {
    flex: 1;
    display: flex;
    margin: 0;
}

.protcom-search-box-wrap .screen-reader-text,
.search-404 .screen-reader-text {
    display: none !important;
}

.protcom-search-input,
.protcom-search-box-wrap input[type="search"],
.protcom-search-box-wrap input[type="text"],
.search-404 input[type="search"],
.search-404 input[type="text"],
input.search-field,
input[name="search"] {
    flex: 1;
    width: 100%;
    padding: 10px 16px;
    border: 1px solid var(--protcom-border);
    border-radius: 6px;
    background-color: var(--protcom-bg-card);
    color: var(--protcom-text-dark);
    font-family: 'Inter', 'Anek Telugu', sans-serif;
    font-size: 1rem;
    outline: none;
}

.protcom-search-input:focus,
.protcom-search-box-wrap input:focus,
.search-404 input:focus {
    border-color: var(--protcom-accent-primary);
}

.protcom-search-submit,
.protcom-search-box-wrap input[type="submit"],
.protcom-search-box-wrap button[type="submit"],
.protcom-search-box-wrap button,
.search-404 input[type="submit"],
.search-404 button[type="submit"],
.search-404 button,
input.search-submit {
    background-color: var(--protcom-accent-primary) !important;
    color: #ffffff !important;
    border: 1px solid var(--protcom-accent-primary) !important;
    padding: 10px 22px !important;
    border-radius: 6px !important;
    font-family: 'Inter', 'Anek Telugu', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.98rem !important;
    cursor: pointer !important;
    white-space: nowrap;
    transition: background-color 0.2s ease;
    height: auto !important;
    line-height: 1.3 !important;
}

.protcom-search-submit:hover,
.protcom-search-box-wrap input[type="submit"]:hover,
.protcom-search-box-wrap button:hover,
.search-404 input[type="submit"]:hover,
.search-404 button:hover,
input.search-submit:hover {
    background-color: #6e2c11 !important;
}

/* Pushdown Mobile Menu */
.protcom-pushdown-menu {
    max-height: 0;
    overflow: hidden;
    background-color: var(--protcom-bg-secondary);
    transition: max-height 0.4s ease;
    border-bottom: 0 solid var(--protcom-border);
}

.protcom-pushdown-menu.protcom-open {
    max-height: 520px;
    border-bottom: 2px solid var(--protcom-border);
}

.protcom-mobile-nav-list {
    list-style: none;
    padding: 14px 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.protcom-mobile-nav-list a {
    display: block;
    padding: 10px 14px;
    text-decoration: none;
    color: var(--protcom-text-dark);
    font-weight: 600;
    background-color: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: 6px;
    font-size: 0.98rem;
}

.protcom-mobile-nav-list a:hover {
    color: var(--protcom-accent-red) !important;
    border-color: var(--protcom-accent-red);
}

/* ==========================================================================
   3-SLIDE TEXT BANNER SECTION
   ========================================================================== */
.protcom-banner-slider {
    background: linear-gradient(135deg, #F4E7D3 0%, #E6CEAE 100%);
    border-bottom: 1px solid var(--protcom-border);
    padding: 40px 0 30px;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
}

.protcom-slide {
    display: none;
    text-align: center;
    animation: protcomFade 0.5s ease;
}

.protcom-slide.protcom-active {
    display: block;
}

@keyframes protcomFade {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

.protcom-banner-badge {
    display: inline-block;
    background-color: var(--protcom-accent-primary);
    color: #fff;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 12px;
}

.protcom-banner-title {
    font-size: 2.15rem;
    color: var(--protcom-text-dark);
    font-weight: 700;
    margin-bottom: 10px;
}

.protcom-banner-subtitle {
    font-size: 1.1rem;
    color: var(--protcom-text-muted);
    max-width: 780px;
    margin: 0 auto 20px;
}

.protcom-banner-strip {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 18px;
    align-items: center;
    justify-content: center;
    background-color: var(--protcom-bg-card);
    padding: 12px 24px;
    border-radius: var(--protcom-radius);
    border: 1px solid var(--protcom-border);
    box-shadow: var(--protcom-shadow);
    font-size: 0.98rem;
}

.protcom-strip-item strong {
    color: var(--protcom-accent-primary);
}

.protcom-banner-cta {
    display: inline-block;
    background-color: var(--protcom-accent-primary);
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 600;
    padding: 5px 14px;
    border-radius: 6px;
    font-size: 0.9rem;
}

.protcom-banner-cta:hover {
    background-color: #6e2c11;
}

.protcom-slider-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin-top: 22px;
}

.protcom-slider-arrow {
    background-color: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    color: var(--protcom-text-dark);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}

.protcom-slider-arrow:hover {
    background-color: var(--protcom-accent-primary);
    color: #fff;
}

.protcom-slider-dots {
    display: flex;
    gap: 8px;
}

.protcom-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #C9B194;
    border: none;
    cursor: pointer;
    transition: all 0.25s ease;
}

.protcom-dot.protcom-active {
    width: 26px;
    border-radius: 10px;
    background-color: var(--protcom-accent-primary);
}

/* ==========================================================================
   SECTIONS, ARCHIVE HEADERS & SEPIA CARDS
   ========================================================================== */
.protcom-section {
    margin-bottom: 42px;
}

.protcom-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid var(--protcom-border);
    padding-bottom: 10px;
    margin-bottom: 22px;
}

.protcom-section-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--protcom-accent-primary);
}

.protcom-view-all {
    text-decoration: none;
    color: var(--protcom-text-muted);
    font-weight: 600;
    font-size: 0.95rem;
}

.protcom-view-all:hover {
    color: var(--protcom-accent-primary);
}

.protcom-archive-header {
    background-color: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: var(--protcom-radius);
    padding: 20px 24px;
    margin-bottom: 24px;
    box-shadow: var(--protcom-shadow);
}

.protcom-archive-title {
    font-size: 1.65rem;
    font-weight: 700;
    color: var(--protcom-text-dark);
}

.protcom-archive-desc {
    font-size: 0.98rem;
    color: var(--protcom-text-muted);
    margin-top: 6px;
}

.protcom-posts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 22px;
}

.protcom-grid-4 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
}

.protcom-card {
    background-color: var(--protcom-bg-card);
    border: 1.5px solid var(--protcom-border);
    border-radius: var(--protcom-radius);
    padding: 20px;
    box-shadow: var(--protcom-shadow);
    transition: transform 0.2s ease, border-color 0.2s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.protcom-card:hover {
    transform: translateY(-3px);
    border-color: var(--protcom-accent-gold);
}

.protcom-card-meta-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    font-size: 0.84rem;
}

.protcom-card-cat a {
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary) !important;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 4px;
}

.protcom-card-date {
    color: var(--protcom-text-muted);
    font-size: 0.82rem;
}

.protcom-card-tag {
    display: inline-block;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--protcom-accent-primary);
    background-color: var(--protcom-bg-secondary);
    padding: 3px 10px;
    border-radius: 4px;
    margin-bottom: 10px;
    width: fit-content;
}

.protcom-card-title {
    font-size: 1.22rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 10px;
    color: var(--protcom-text-dark);
}

.protcom-pin-title-link {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: var(--protcom-text-dark);
}

.protcom-pin-title-link:hover {
    color: var(--protcom-accent-primary);
}

.protcom-card-type-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    flex-shrink: 0;
    margin-top: 2px;
}

.protcom-ic-article {
    background: var(--protcom-bg-secondary);
    color: var(--protcom-text-muted);
}

.protcom-ic-video {
    background: #FDECE8;
    color: #B42318;
}

.protcom-ic-image {
    background: #F5E8D3;
    color: var(--protcom-accent-primary);
}

.protcom-card-desc {
    color: var(--protcom-text-muted);
    font-size: 0.96rem;
    line-height: 1.55;
    margin-bottom: 16px;
}

.protcom-card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 4px;
}

.protcom-btn {
    display: inline-block;
    text-decoration: none;
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary) !important;
    font-weight: 600;
    font-size: 0.92rem;
    padding: 7px 14px;
    border-radius: 5px;
    text-align: center;
    border: 1px solid var(--protcom-border);
    transition: all 0.2s ease;
    width: 100%;
}

.protcom-btn:hover {
    background-color: var(--protcom-accent-primary);
    color: #ffffff !important;
}

.protcom-pin-admin {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.protcom-admin-pill {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: 4px;
}

.protcom-pill-view {
    background: var(--protcom-bg-secondary);
    color: var(--protcom-text-dark);
}

.protcom-pill-edit {
    background: #fef3c7;
    color: #b45309;
}

/* 12 Rasi Phalalu Grid */
.protcom-rasi-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 15px;
}

.protcom-rasi-box {
    background-color: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: var(--protcom-radius);
    padding: 15px;
    text-align: center;
    text-decoration: none;
    color: var(--protcom-text-dark);
    transition: all 0.2s ease;
}

.protcom-rasi-box:hover {
    background-color: var(--protcom-bg-secondary);
    border-color: var(--protcom-accent-primary);
}

.protcom-rasi-name {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--protcom-accent-primary);
    display: block;
}

.protcom-rasi-sub {
    font-size: 0.85rem;
    color: var(--protcom-text-muted);
}

.protcom-list {
    list-style: none;
    margin: 12px 0;
}

.protcom-list li {
    padding: 9px 0;
    border-bottom: 1px dashed var(--protcom-border);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

/* ==========================================================================
   SINGLE POST, CLEAN ICON-ONLY IMAGE TOOLBAR & VIDEO
   ========================================================================== */
.protcom-single-article,
.protcom-comments {
    background-color: var(--protcom-bg-card) !important;
    border: 1px solid var(--protcom-border) !important;
    border-radius: var(--protcom-radius) !important;
    box-shadow: var(--protcom-shadow);
    margin-bottom: 24px !important;
    overflow: hidden;
}

.protcom-comments {
    padding: 24px;
}

.protcom-edge-media {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.protcom-edge-image {
    background: transparent;
    text-align: left;
    border-bottom: 1px solid var(--protcom-border);
}

.protcom-img-viewport {
    width: 100%;
    overflow-x: auto;
}

.protcom-edge-image img {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin: 0 !important;
    transition: width 0.2s ease;
}

/* Actual Size & Zoom Modes for Mobile Image */
.protcom-img-viewport.protcom-img-actual-mode img {
    max-width: none !important;
}

.protcom-img-viewport.protcom-img-zoom-mode img {
    max-width: none !important;
}

/* Mobile Top Image Toolbar: NO BG Colour, NO Border Radius, NO Shadow, Larger Icons Only */
.protcom-img-toolbar-wrap {
    display: none;
    padding: 8px 12px;
    background: transparent !important;
    border-bottom: 1px solid var(--protcom-border);
    justify-content: center;
}

.protcom-img-toolbar-wrap.protcom-toolbar-visible {
    display: flex;
}

.protcom-img-pill-bar {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.protcom-img-tool-btn {
    background: transparent;
    border: none;
    color: #165B76;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.protcom-img-tool-btn:hover {
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
}

.protcom-img-tool-btn.protcom-tool-active {
    background-color: #003459 !important;
    color: #ffffff !important;
}

/* Desktop Video Player: Fixed 525px Height */
.protcom-video-aspect {
    position: relative !important;
    width: 100% !important;
    height: 525px !important;
    background: #000 !important;
    overflow: hidden !important;
}

.protcom-video-aspect iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
}

.protcom-article-inner {
    padding: 30px 28px !important;
}

.entry-title {
    font-size: 1.9rem;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 18px;
    color: var(--protcom-text-dark);
}

.entry-content p {
    margin-bottom: 16px;
    font-size: 1.06rem;
}

.entry-content img {
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 14px 0;
    border-radius: 6px;
}

.entry-content h2 {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 26px 0 12px;
    color: var(--protcom-accent-primary);
}

.entry-content h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 20px 0 10px;
    color: var(--protcom-text-dark);
}

.entry-content ul,
.entry-content ol {
    margin: 0 0 18px 0 !important;
    padding-left: 24px !important;
}

.entry-content li {
    margin-bottom: 7px;
    padding-left: 4px;
    line-height: 1.7;
}

.entry-content hr,
hr {
    border: 0;
    height: 1px;
    background: var(--protcom-border);
    margin: 28px 0 !important;
}

.protcom-quote {
    background-color: var(--protcom-bg-secondary);
    border-left: 4px solid var(--protcom-accent-primary);
    padding: 14px 18px;
    border-radius: 4px;
    margin-bottom: 18px;
    font-style: italic;
}

/* Share Button Row at End of Article (Above Related Posts) */
.protcom-article-share-row {
    margin-top: 22px;
    padding-top: 14px;
    border-top: 1px dashed var(--protcom-border);
    display: flex;
    justify-content: flex-end;
}

/* ==========================================================================
   SEPIA TABLE OF CONTENTS (TOC)
   ========================================================================== */
.protcom-pro-toc {
    background: var(--protcom-bg-main) !important;
    border: 1px solid var(--protcom-border) !important;
    border-radius: 8px !important;
    margin: 20px 0 26px !important;
    width: 100% !important;
    overflow: hidden;
}

.protcom-pro-toc-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    background: var(--protcom-bg-secondary);
    border-bottom: 1px solid var(--protcom-border);
    cursor: pointer;
    user-select: none;
}

.protcom-pro-toc-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1.02rem;
    color: var(--protcom-text-dark);
}

.protcom-toc-bars {
    display: inline-flex;
    flex-direction: column;
    gap: 3px;
    width: 16px;
}

.protcom-toc-bars span {
    display: block;
    width: 16px;
    height: 2px;
    background: var(--protcom-accent-primary);
    border-radius: 1px;
}

.protcom-pro-toc-btn {
    background: var(--protcom-accent-primary);
    color: #ffffff;
    border: none;
    border-radius: 14px;
    padding: 4px 12px;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    cursor: pointer;
}

.protcom-pro-toc-body {
    padding: 12px 18px;
    background: var(--protcom-bg-card);
}

.protcom-pro-toc-body ul,
.protcom-pro-toc-body ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.protcom-pro-toc-body li {
    margin: 0 !important;
    padding: 7px 4px !important;
    border-bottom: 1px dashed var(--protcom-border) !important;
    font-size: 0.96rem !important;
    display: flex;
    align-items: baseline;
}

.protcom-pro-toc-body li:last-child {
    border-bottom: none !important;
}

.protcom-pro-toc-body li:before {
    content: "\203A";
    color: var(--protcom-accent-primary);
    font-weight: 700;
    font-size: 1.1rem;
    margin-right: 10px;
}

.protcom-pro-toc-body li a {
    color: var(--protcom-text-dark) !important;
    font-weight: 500 !important;
}

.protcom-pro-toc-body li a:hover {
    color: var(--protcom-accent-primary) !important;
    text-decoration: underline !important;
}

/* ==========================================================================
   RELATED POSTS: LIST (DEFAULT 3-COLUMN) & BUTTONS VIEW TOGGLE
   ========================================================================== */
.protcom-related-box {
    margin-top: 24px;
    padding: 18px 20px;
    background: var(--protcom-bg-main);
    border: 1px solid var(--protcom-border);
    border-radius: 8px;
}

.protcom-related-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--protcom-border);
}

.protcom-related-title {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--protcom-accent-primary);
    display: flex;
    align-items: center;
    gap: 8px;
}

.protcom-related-title:before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 16px;
    background: var(--protcom-accent-primary);
}

.protcom-rel-view-switch {
    display: inline-flex;
    gap: 6px;
}

.protcom-rel-view-btn {
    background: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    color: var(--protcom-text-muted);
    width: 32px;
    height: 30px;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.protcom-rel-view-btn:hover,
.protcom-rel-view-btn.protcom-active {
    background: var(--protcom-accent-primary);
    color: #ffffff;
    border-color: var(--protcom-accent-primary);
}

.protcom-related-box ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px 18px;
}

.protcom-rel-hidden {
    display: none !important;
}

/* Default Mode: 3-Column List View */
.protcom-related-box.protcom-rel-mode-list ul li {
    border-bottom: 1px dashed var(--protcom-border);
    margin: 0 !important;
    padding: 0 !important;
}

.protcom-related-box.protcom-rel-mode-list ul li a {
    display: flex;
    align-items: center;
    padding: 7px 4px;
    font-size: 0.94rem;
    font-weight: 600;
    color: var(--protcom-text-dark);
    background: transparent;
    border: none;
}

.protcom-related-box.protcom-rel-mode-list ul li a:before {
    content: "\203A";
    color: var(--protcom-accent-primary);
    font-weight: 700;
    font-size: 1.15rem;
    margin-right: 8px;
    line-height: 1;
}

.protcom-related-box.protcom-rel-mode-list ul li a:hover {
    color: var(--protcom-accent-red);
}

/* Toggled Mode: Box Buttons View */
.protcom-related-box.protcom-rel-mode-buttons ul li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    padding: 10px 14px;
    border-radius: 6px;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--protcom-text-dark);
}

.protcom-related-box.protcom-rel-mode-buttons ul li a:after {
    content: "\2192";
    color: var(--protcom-accent-primary);
    font-weight: 700;
    margin-left: 8px;
}

.protcom-related-box.protcom-rel-mode-buttons ul li a:hover {
    border-color: var(--protcom-accent-primary);
    background: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
}

.protcom-rel-more-wrap {
    margin-top: 14px;
    text-align: center;
}

.protcom-rel-more-btn {
    background: var(--protcom-bg-card);
    color: var(--protcom-accent-primary);
    border: 1px solid var(--protcom-border);
    padding: 7px 18px;
    border-radius: 6px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    font-family: 'Inter', 'Anek Telugu', sans-serif;
}

.protcom-rel-more-btn:hover {
    background: var(--protcom-accent-primary);
    color: #ffffff;
}

/* ==========================================================================
   META BADGES & "Share | ShareIcon" BUTTON
   ========================================================================== */
.protcom-meta-badges {
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--protcom-border);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.protcom-badge-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
}

.protcom-badge-view {
    background: var(--protcom-bg-secondary);
    color: var(--protcom-text-dark) !important;
    border: 1px solid var(--protcom-border);
}

.protcom-badge-edit {
    background: #fef3c7;
    color: #b45309 !important;
    border: 1px solid #fde68a;
}

.protcom-badge-date {
    background: var(--protcom-bg-main);
    color: var(--protcom-text-muted) !important;
    border: 1px solid var(--protcom-border);
}

.protcom-badge-cat-wrap a {
    display: inline-flex;
    align-items: center;
    padding: 5px 11px;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    background: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary) !important;
    border: 1px solid var(--protcom-border);
}

.protcom-badge-cat-wrap a:hover {
    background: var(--protcom-accent-primary);
    color: #ffffff !important;
}

.protcom-badge-tags-wrap {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    font-size: 0;
}

.protcom-badge-tags-wrap a {
    display: inline-flex;
    align-items: center;
    padding: 5px 11px;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    background: #F4EFE6;
    color: #5C4433 !important;
    border: 1px solid var(--protcom-border);
}

.protcom-badge-tags-wrap a:before {
    content: "#";
    margin-right: 2px;
    opacity: 0.7;
}

.protcom-badge-tags-wrap a:hover {
    background: var(--protcom-accent-primary);
    color: #ffffff !important;
}

/* "Share | ShareIcon" Button */
.protcom-share-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
    border: 1px solid var(--protcom-border);
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 0.86rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.protcom-share-pipe {
    color: #B89F82;
    font-weight: 300;
}

.protcom-share-pill-btn:hover {
    background-color: var(--protcom-accent-primary);
    color: #ffffff;
    border-color: var(--protcom-accent-primary);
}

.protcom-share-pill-btn:hover .protcom-share-pipe {
    color: rgba(255, 255, 255, 0.55);
}

/* Social Share Fallback Modal */
.protcom-share-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(44, 30, 20, 0.55);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    padding: 16px;
}

.protcom-share-modal-backdrop.protcom-open {
    display: flex;
}

.protcom-share-modal {
    background: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: 10px;
    width: 100%;
    max-width: 360px;
    padding: 18px 20px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.protcom-share-modal-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--protcom-border);
    padding-bottom: 10px;
    margin-bottom: 14px;
    font-size: 1.05rem;
}

.protcom-share-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    color: var(--protcom-text-muted);
}

.protcom-share-modal-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.protcom-slink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 12px;
    border-radius: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 0.88rem;
    font-weight: 600;
    color: #ffffff !important;
    border: none;
    cursor: pointer;
    text-align: center;
}

.protcom-s-wa { background: #25D366; }
.protcom-s-fb { background: #1877F2; }
.protcom-s-tw { background: #0F1419; }
.protcom-s-tg { background: #229ED9; }
.protcom-s-copy {
    grid-column: span 2;
    background: var(--protcom-accent-primary);
}

/* Prev / Next Arrow Nav & Pagination */
.protcom-arrow-nav {
    margin-bottom: 28px;
}

.protcom-arrow-links {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.protcom-nav-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 40px;
    border-radius: 8px;
    background: var(--protcom-bg-card);
    border: 1.5px solid var(--protcom-border);
    color: var(--protcom-text-dark);
    box-shadow: var(--protcom-shadow);
}

.protcom-nav-arrow:hover {
    background: var(--protcom-accent-primary);
    color: #ffffff !important;
    border-color: var(--protcom-accent-primary);
}

.protcom-pagination {
    text-align: center;
    margin: 26px 0 40px;
}

.protcom-page-btn,
.protcom-page-current {
    display: inline-block;
    padding: 8px 16px;
    margin: 0 4px;
    border-radius: 6px;
    font-weight: 600;
    border: 1px solid var(--protcom-border);
    background-color: var(--protcom-bg-card);
}

.protcom-page-btn:hover {
    background-color: var(--protcom-accent-primary);
    color: #ffffff !important;
}

.protcom-page-current {
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
}

/* ==========================================================================
   SEPIA FOOTER
   ========================================================================== */
.protcom-footer {
    background-color: var(--protcom-text-dark);
    color: var(--protcom-bg-secondary);
    padding: 50px 0 25px;
    margin-top: 50px;
    border-top: 4px solid var(--protcom-accent-gold);
}

.protcom-footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 30px;
    margin-bottom: 35px;
}

.protcom-footer-title {
    font-size: 1.2rem;
    color: #ffffff;
    margin-bottom: 14px;
    border-bottom: 1px solid #4A3525;
    padding-bottom: 8px;
}

.protcom-footer-about {
    font-size: 0.95rem;
    opacity: 0.85;
}

.protcom-footer-links {
    list-style: none;
}

.protcom-footer-links li {
    margin-bottom: 8px;
}

.protcom-footer-links a {
    color: var(--protcom-bg-secondary) !important;
    text-decoration: none;
    font-size: 0.95rem;
    opacity: 0.85;
}

.protcom-footer-links a:hover {
    opacity: 1;
    color: var(--protcom-accent-gold) !important;
}

.protcom-copyright,
.protcom-copyright a {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #4A3525;
    font-size: 0.9rem;
    color: var(--protcom-bg-secondary) !important;
    opacity: 0.85;
}

/* ==========================================================================
   RESPONSIVE BREAKPOINTS (MOBILE EDGE-TO-EDGE MEDIA DIRECTLY UNDER NAVBAR)
   ========================================================================== */
@media screen and (max-width: 1080px) {
    .protcom-nav-links,
    .protcom-pipe-divider,
    .protcom-more-dots-btn {
        display: none !important;
    }

    .protcom-hamburger-btn {
        display: inline-flex;
    }

    .protcom-navbar {
        height: 64px;
        flex-wrap: nowrap;
    }

    .protcom-banner-title {
        font-size: 1.65rem;
    }
}

@media screen and (max-width: 955px) {
    /* Edge-to-Edge Single Post / Video right below Navbar on Mobile */
    .protcom-main-wrap.protcom-is-single-wrap {
        padding-top: 0 !important;
    }

    .protcom-main-wrap.protcom-is-single-wrap > .protcom-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .protcom-single-article {
        border-radius: 0 !important;
        border-left: none !important;
        border-right: none !important;
        border-top: none !important;
        box-shadow: none !important;
    }

    .protcom-edge-media,
    .protcom-edge-video,
    .protcom-video-aspect {
        border-radius: 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }

    .protcom-video-aspect {
        height: 0 !important;
        padding-bottom: 56.25% !important;
    }

    /* Content below Video/Image keeps comfortable padding */
    .protcom-article-inner {
        padding: 20px 18px 24px !important;
    }

    .protcom-arrow-nav,
    .protcom-comments {
        margin-left: 16px !important;
        margin-right: 16px !important;
    }

    .entry-title {
        font-size: 1.5rem !important;
    }

    .protcom-related-box ul {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 640px) {
    .protcom-mobile-nav-list,
    .protcom-posts-grid,
    .protcom-related-box ul {
        grid-template-columns: 1fr;
    }
}
/* ==========================================================================
   SEPIA TABLE STYLING FOR POSTS, PAGES & SUBPAGES (BORDERS & ALIGNMENT)
   ========================================================================== */
.protcom-table-responsive {
    width: 100%;
    overflow-x: auto;
    margin: 20px 0 24px;
    border-radius: 8px;
    border: 1px solid var(--protcom-border);
    box-shadow: 0 2px 8px rgba(60, 38, 22, 0.05);
}

.entry-content table,
table.protcom-table {
    width: 100%;
    border-collapse: collapse !important;
    border-spacing: 0;
    background-color: var(--protcom-bg-card);
    font-family: 'Inter', 'Anek Telugu', sans-serif;
    font-size: 0.98rem;
    margin: 0;
    border: 1px solid var(--protcom-border);
}

.protcom-table-responsive table {
    border: none !important;
}

.entry-content table thead th,
.entry-content table th,
table.protcom-table thead th {
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
    font-weight: 700;
    padding: 12px 15px;
    border: 1px solid var(--protcom-border) !important;
    text-align: left;
    vertical-align: middle;
    line-height: 1.45;
}

.entry-content table tbody td,
.entry-content table td,
table.protcom-table tbody td {
    padding: 11px 15px;
    border: 1px solid var(--protcom-border) !important;
    color: var(--protcom-text-dark);
    text-align: left;
    vertical-align: middle;
    line-height: 1.55;
}

.entry-content table tbody tr:nth-child(even),
table.protcom-table tbody tr:nth-child(even) {
    background-color: var(--protcom-bg-main);
}

.entry-content table tbody tr:hover,
table.protcom-table tbody tr:hover {
    background-color: #F6EFE2;
}

.entry-content table th[align="center"],
.entry-content table td[align="center"] {
    text-align: center !important;
}

.entry-content table th[align="right"],
.entry-content table td[align="right"] {
    text-align: right !important;
}

/* ==========================================================================
   STATIC PAGE BANNER: Original full-width slider relocated from layout.html.php
   ========================================================================== */
.protcom-banner-slider.protcom-static-banner {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-top: -28px;
    margin-bottom: 28px;
}

/* Main content wrapper already has zero top padding on mobile static pages. */
@media screen and (max-width: 955px) {
    .protcom-banner-slider.protcom-static-banner {
        margin-top: 0;
    }
}

/* ==========================================================================
   FONT SELECTION: 90% SCRIPT-WORD RULE (applied by layout.html.php)
   ========================================================================== */
.protcom-body .protcom-lang-te {
    font-family: 'Anek Telugu', 'Inter', sans-serif !important;
}
.protcom-body .protcom-lang-en {
    font-family: 'Inter', 'Anek Telugu', sans-serif !important;
}

/* ==========================================================================
   M1PRO: Default Inter, 90% script-specific font and accessible headings
   ========================================================================== */
.protcom-body,
.protcom-body button,
.protcom-body input,
.protcom-body textarea,
.protcom-body select,
.protcom-body .protcom-slider-arrow,
.protcom-body .protcom-dot {
    font-family: 'Inter', 'Anek Telugu', sans-serif !important;
}
.protcom-body .protcom-lang-te {
    font-family: 'Anek Telugu', 'Inter', sans-serif !important;
}
.protcom-body .protcom-lang-en,
.protcom-body .protcom-en {
    font-family: 'Inter', 'Anek Telugu', sans-serif !important;
}
/* Main page/article H1 sizing exactly as requested. H2/H3 preserve hierarchy. */
.protcom-body h1.entry-title,
.protcom-body h1.protcom-home-title,
.protcom-body h1.protcom-archive-title,
.protcom-body .entry-content h1 {
    font-size: clamp(1.85rem,3vw,2.5rem) !important;
}
.protcom-body .entry-content h2 {
    font-size: clamp(1.35rem,2.2vw,1.85rem);
}
.protcom-body .entry-content h3 {
    font-size: clamp(1.15rem,1.8vw,1.45rem);
}
/* Banner title is presentational content, never an H1/H2. */
.protcom-body .protcom-banner-title {
    font-size: clamp(1.85rem,3vw,2.5rem);
}
/* Static homepage places the banner AFTER the first article, not on the page's top edge. */
.protcom-banner-slider.protcom-front-banner {
    margin-top: 0;
}
@media screen and (max-width:955px) {
    .protcom-banner-slider.protcom-front-banner { margin-top: 0; }
}


/* ==========================================================================
   M1PRO: Compact mobile pushdown menu, centered images, responsive toolbar
   Changes scoped to navigation and post/page images only.
   ========================================================================== */
/* Text-sized buttons flow onto new centered rows instead of full-width rows. */
.protcom-mobile-nav-list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    justify-content: center;
    gap: 8px !important;
    padding: 12px 0 !important;
    grid-template-columns: none !important;
}
.protcom-mobile-nav-list > li {
    width: auto !important;
    min-width: 0;
    flex: 0 0 auto;
    margin: 0 !important;
}
.protcom-mobile-nav-list > li > a {
    display: inline-flex;
    width: auto;
    max-width: 100%;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    padding: 8px 12px;
}
/* Container opens to the actual number of wrapped rows. */
.protcom-pushdown-menu.protcom-open {
    max-height: min(75vh, 650px);
    overflow-y: auto;
}

/* Intrinsic-size photos are centered, not left-aligned, on desktop or mobile. */
.protcom-edge-image .protcom-img-viewport img {
    display: block;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.protcom-body .entry-content img {
    display: block;
    float: none !important;
    max-width: 100%;
    height: auto;
    margin: 14px auto !important;
}
/* Center linked images, too, without changing ordinary textual links. */
.protcom-body .entry-content a:has(> img:only-child),
.protcom-body .entry-content a:has(> picture:only-child) {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

/* Inserted only for oversized images in article/page Markdown content. */
.protcom-content-image-wrap {
    width: 100%;
    max-width: 100%;
    margin: 16px auto 20px;
    text-align: center;
}
.protcom-content-img-viewport {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}
.protcom-content-img-viewport img {
    display: block;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    height: auto !important;
}
/* Zoom must override the old featured-image width:auto!important rule. */
.protcom-body .protcom-img-viewport.protcom-img-actual-mode img {
    width: auto !important;
    max-width: none !important;
}
.protcom-body .protcom-img-viewport.protcom-img-zoom-mode img {
    width: var(--protcom-zoom-width, 150%) !important;
    max-width: none !important;
}
/* Toolbar is never exposed on desktop, including after device rotation. */
@media screen and (min-width: 956px) {
    .protcom-img-toolbar-wrap { display: none !important; }
}


/* ==========================================================================
   M1PRO: Panchangam & Calendar NAVBAR DROPDOWNS (desktop + mobile)
   Keep the desktop overflow and compact mobile menu behavior unchanged.
   ========================================================================== */
.protcom-nav-links > li.protcom-has-submenu,
.protcom-more-horizontal-list > li.protcom-has-submenu {
    display: inline-flex;
    align-items: center;
    gap: 0;
    flex-shrink: 0;
}
.protcom-submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 0;
    background: transparent;
    color: var(--protcom-text-dark);
    padding: 8px 4px;
    cursor: pointer;
    transition: color 0.18s ease;
    font-family: 'Inter', sans-serif;
}
.protcom-submenu-toggle:hover,
.protcom-submenu-toggle[aria-expanded="true"] {
    color: var(--protcom-accent-red);
}
.protcom-submenu-toggle svg,
.protcom-mobile-submenu-toggle svg {
    transition: transform 0.2s ease;
}
.protcom-submenu-toggle[aria-expanded="true"] svg,
.protcom-mobile-submenu-toggle[aria-expanded="true"] svg {
    transform: rotate(180deg);
}
/* Fixed dropdown avoids clipping by .protcom-nav-wrapper's overflow:hidden. */
.protcom-submenu-flyout {
    display: none;
    position: fixed;
    z-index: 1200;
    width: 265px;
    max-width: calc(100vw - 16px);
    max-height: min(65vh, 430px);
    overflow-y: auto;
    padding: 8px;
    background: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(44, 30, 20, 0.15);
}
.protcom-submenu-flyout.protcom-open { display: block; }
.protcom-submenu-flyout ul { list-style: none; padding: 0; margin: 0; }
.protcom-submenu-flyout li { margin: 0; padding: 0; }
.protcom-submenu-flyout a {
    display: block;
    padding: 10px 12px;
    border-radius: 5px;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.55;
    color: var(--protcom-text-dark);
    text-decoration: none;
}
.protcom-submenu-flyout a:hover,
.protcom-submenu-flyout a:focus-visible {
    background: var(--protcom-bg-secondary);
    color: var(--protcom-accent-red);
}
/* Parent stays text-width in the compact mobile flex layout. */
.protcom-mobile-parent-row {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    background: var(--protcom-bg-card);
    border: 1px solid var(--protcom-border);
    border-radius: 6px;
    overflow: hidden;
}
.protcom-mobile-nav-list > li.protcom-mobile-has-submenu > .protcom-mobile-parent-row > a {
    display: inline-flex;
    align-items: center;
    padding: 8px 6px 8px 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
}
.protcom-mobile-submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    min-width: 30px;
    padding: 5px 8px;
    color: var(--protcom-accent-primary);
    background: transparent;
    border: 0;
    border-left: 1px solid var(--protcom-border);
    font-family: 'Inter', sans-serif;
    cursor: pointer;
}
.protcom-mobile-nav-list > li.protcom-mobile-expanded {
    flex-basis: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.protcom-mobile-submenu { display: none; }
.protcom-mobile-submenu.protcom-open {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 7px;
    list-style: none;
    width: 100%;
    margin: 8px 0 3px;
    padding: 10px 5px;
    border: 1px solid var(--protcom-border);
    border-radius: 6px;
    background: var(--protcom-bg-main);
}
.protcom-mobile-submenu > li { margin: 0; padding: 0; }
.protcom-mobile-submenu a {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    white-space: nowrap;
    font-size: 0.89rem;
    background: var(--protcom-bg-card);
    color: var(--protcom-text-dark);
}
@media (max-width: 1080px) {
    .protcom-submenu-flyout { display: none !important; }
}

/* M1PRO AdSense TEST PREVIEW + LIVE CONTAINERS.
   Preview mode never calls Google. Placeholders are displayed to HTMLy admins only. */
.m1pro-ad-outer { margin-top: 18px; margin-bottom: 20px; }
.m1pro-ad-wrap {
    width: 100%;
    max-width: 100%;
    margin: 25px auto;
    clear: both;
    overflow: hidden;
    text-align: center;
    box-sizing: border-box;
}
.m1pro-ad-outer .m1pro-ad-wrap { margin: 0 auto; }
.m1pro-ad-preview {
    min-height: 115px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    padding: 18px;
    border: 1px dashed #b69f85;
    border-radius: 8px;
    background: #f6efe5;
    color: #66513e;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem;
}
.m1pro-ad-preview-label {
    font-size: 0.67rem;
    font-weight: 750;
    color: #946c4e;
    letter-spacing: 0.085em;
}
.m1pro-ad-preview strong { font-size: 0.92rem; font-weight: 600; }
.m1pro-ad-preview small { font-size: 0.73rem; opacity: 0.8; }
.m1pro-ad-live > .adsbygoogle { width: 100%; }
@media (max-width: 640px) {
    .m1pro-ad-preview { min-height: 95px; padding: 14px 12px; }
    .m1pro-ad-wrap { margin: 19px auto; }
}

/* ==========================================================================
   M1PRO: Panchangam calendar grid only (posts/pages)
   Center dates/headings; full-cell date links; mobile-friendly.
   Does not affect other HTMLy content tables.
   ========================================================================== */
.entry-content table.m1pro-calendar {
    width: 100%;
    table-layout: fixed;
}
.entry-content table.m1pro-calendar th,
.entry-content table.m1pro-calendar td {
    text-align: center !important;
    padding: 0 !important;
    width: 14.2857%;
    vertical-align: middle;
}
.entry-content table.m1pro-calendar th {
    padding: 10px 2px !important;
}
.entry-content table.m1pro-calendar td > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 50px;
    padding: 10px 2px;
    text-decoration: none;
    color: #1875c9;
    box-sizing: border-box;
}
.entry-content table.m1pro-calendar td > a:hover,
.entry-content table.m1pro-calendar td > a:focus-visible {
    background-color: var(--protcom-bg-secondary);
    color: var(--protcom-accent-primary);
}
@media (max-width: 640px) {
    .entry-content table.m1pro-calendar th {
        font-size: 0.78rem;
        padding: 8px 1px !important;
    }
    .entry-content table.m1pro-calendar td > a {
        min-height: 48px;
        padding: 8px 1px;
        font-size: 0.9rem;
    }
}
