@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&family=Noto+Sans+Devanagari:wght@400;500;600;700;800&display=swap');

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: 'Noto Sans Devanagari', 'Poppins', Arial, Helvetica, sans-serif;
    background: linear-gradient(180deg, #ece7df 0%, #efece6 100%);
    color: #111;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    display: block;
}

#imgadminlogo {
    max-width: 100%;
}

.login-page-shell {
    min-height: 100vh;
    width: 100%;
    background: #f4f7f9;
    display: grid;
    place-items: center;
    padding: 36px 20px;
}

.login-card {
    width: min(1024px, 100%);
    display: grid;
    grid-template-columns: 1fr 1fr;
    box-shadow: 0 32px 80px rgba(0, 0, 0, 0.08);
    border-radius: 26px;
    overflow: hidden;
    background: #fff;
}

.login-side-panel {
    background: #0e5f3d;
    position: relative;
    padding: 40px 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: #fff;
}

.login-side-panel::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top left, rgba(255,255,255,0.12), transparent 42%),
                radial-gradient(circle at 90% 20%, rgba(255,255,255,0.08), transparent 30%);
    pointer-events: none;
}

.login-side-logo,
.login-side-copy,
.secure-panel {
    position: relative;
    z-index: 1;
}

.login-logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 22px;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.18);
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.login-side-copy h2 {
    margin: 28px 0 8px;
    font-size: 38px;
    line-height: 1.05;
}

.login-side-copy p {
    margin: 0;
    font-size: 15px;
    color: rgba(255,255,255,0.8);
    max-width: 300px;
}

.login-side-divider {
    width: 56px;
    height: 3px;
    background: #71ad82;
    border-radius: 999px;
    margin: 28px 0;
}

.secure-panel {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 22px 22px 20px;
    margin-top: 22px;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 24px;
    box-shadow: 0 24px 40px rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(10px);
}

.secure-panel .secure-icon {
    width: 54px;
    height: 54px;
    background: rgba(255,255,255,0.2);
    border-radius: 18px;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.secure-panel h3 {
    margin: 0;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: 0.01em;
}
        
.secure-panel p {
    margin: 8px 0 0;
    color: rgba(255,255,255,0.92);
    line-height: 1.7;
    max-width: 340px;
}

.login-home-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
    color: #0e5f3d;
    text-decoration: none;
    font-weight: 700;
    border: 1px solid #d5e8da;
    padding: 10px 16px;
    border-radius: 999px;
    background: #eef7ef;
}

.login-home-link:hover {
    background: #d8eedc;
}

.login-side-logo {
    display: inline-flex;
    text-decoration: none;
    color: inherit;
}

.login-side-logo:hover .login-logo-mark {
    transform: scale(1.02);
}

.input-with-icon {
    width: 100%;
    padding: 14px 18px 14px 56px;
    border: 1px solid #e2e7e3;
    border-radius: 16px;
    background: #f7fafb;
    color: #172924;
    font: inherit;
}
    
.login-side-artwork {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 240px;
    background: linear-gradient(180deg, rgba(14,95,61,0) 0%, rgba(14,95,61,0.95) 55%), url('/images/media.jpg');
    background-size: cover;
    background-position: center bottom;
    opacity: 0.24;
    z-index: 0;
}
    
.login-form-panel {
    padding: 44px 42px;
    background: #fff;
}

.login-form-header {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 30px;
}

.login-form-badge {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: rgba(14,95,61,0.08);
    color: #0e5f3d;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.login-form-header h1 {
    margin: 0;
    font-size: 32px;
}

.login-form-header p {
    margin: 6px 0 0;
    color: #5c6a65;
    font-size: 15px;
}

.form-group {
    display: grid;
    gap: 10px;
    margin-bottom: 18px;
}

.form-group label {
    font-weight: 700;
    color: #2f3b36;
}

.input-icon-group {
    position: relative;
}

.input-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #61786f;
    font-size: 16px;
}

.input-with-icon {
    width: 100%;
    padding: 14px 18px 14px 46px;
    border: 1px solid #e2e7e3;
    border-radius: 16px;
    background: #f7fafb;
    color: #172924;
    font: inherit;
}

.password-toggle {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    cursor: pointer;
    color: #61786f;
    font-size: 18px;
}

.form-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 24px;
}

.spaced-row {
    justify-content: space-between;
}

.checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: #324437;
}

.checkbox-label input {
    width: 18px;
    height: 18px;
    accent-color: #0e5f3d;
}

.text-link {
    color: #0e5f3d;
    font-weight: 700;
    text-decoration: none;
}

.login-submit-btn {
    width: 100%;
    justify-content: center;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    font-size: 16px;
    border-radius: 18px;
}

.button-icon {
    font-size: 18px;
}

.login-bottom-note {
    margin-top: 28px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #5c6a65;
    font-size: 14px;
}

.secure-icon-small {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #edf6ec;
    color: #0e5f3d;
    border-radius: 10px;
}

.login-page-shell .validation-summary {
    margin-bottom: 18px;
    color: #c8362c;
}

@media (max-width: 900px) {
    .login-card {
        grid-template-columns: 1fr;
    }

    .login-side-panel {
        padding: 28px 22px;
    }

    .login-form-panel {
        padding: 28px 22px;
    }
}

@media (max-width: 620px) {
    .login-card {
        border-radius: 18px;
    }

    .login-side-copy h2 {
        font-size: 32px;
    }

    .login-side-copy p,
    .secure-panel p,
    .login-form-header p {
        font-size: 14px;
    }
}

.site-shell {
    width: 100%;
    margin: 0 auto;
    background: linear-gradient(180deg, #f6f2eb 0%, #f0eadf 100%);
    min-height: 100vh;
    box-shadow: 0 0 0 1px rgba(26, 35, 30, 0.03);
}

.admin-page-shell {
    width: 90%;
    max-width: 1360px;
    margin: 0 auto;
    min-height: 100vh;
    padding: 28px 0 32px;
    background: transparent;
}

.top-bar {
    background: #d04b28;
    color: #fff;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 40px;
    font-size: 14px;
}
.top-bar1 {
    background: linear-gradient(90deg, #b8331d 0%, #d74b2b 32%, #c8442a 100%);
    color: #fff;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 42px;
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    box-shadow: inset 0 -1px rgba(255,255,255,0.16);
}

.top-date {
    font-weight: 400;
    opacity: 0.98;
}

.masthead-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffffff;
    border-bottom: 3px solid rgba(184,51,29,0.68);
    padding: 16px 20px 14px;
    box-shadow: 0 12px 28px rgba(18, 30, 24, 0.04);
}

.masthead-ad {
    width: 40%;
}
.masthead-ad {
    display: flex;
    align-items: center;
    justify-content: center;
}

.masthead-logo {
    width: 62%;
}

.masthead-logo img {
    max-height: 118px;
    width: auto;
/*    filter: drop-shadow(0 10px 18px rgba(0,0,0,0.08));*/
}

.masthead-ad {
    width: 38%;
}

.masthead-ad img {
    max-height: 120px;
    width: auto;
    border-radius: 12px;
   /* box-shadow: 0 8px 18px rgba(0,0,0,0.06);*/
}

.main-menu {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    align-items: center;
    gap: 12px;
    background: linear-gradient(180deg, #0f6842 0%, #0b4d35 100%);
    padding: 5px 22px;
    color: #fff;
    font-weight: 500;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 10px 26px rgba(12, 46, 33, 0.14);
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-left: 8%;
}

.nav-links:last-child {
    justify-content: flex-end;
    padding-left: 0;
    padding-right: 8%;
}

.nav-links a,
.site-footer a,
.day-link {
    color: #fff;
    text-decoration: none;
}

.nav-links a {
    position: relative;
    opacity: 0.96;
    transition: opacity 160ms ease, transform 160ms ease;
}

.nav-links a:hover {
    opacity: 1;
    transform: translateY(-1px);
}

.nav-links a.active,
.day-link.active {
    background: #fff;
    color: #0e5f3d;
    padding: 8px 12px;
    border-radius: 8px;
}

.day-navigation {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    padding: 12px 0;
    margin-bottom: 16px;
}

.day-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(255,255,255,0.16);
    transition: background-color 160ms ease, transform 120ms ease;
}

.day-link:hover {
    background: rgba(255,255,255,0.24);
    transform: translateY(-1px);
}

.nav-tagline {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-shadow: 0 1px 0 rgba(0,0,0,0.18);
    color: #f6f8f6;
    font-family: 'Noto Sans Devanagari', 'Poppins', Arial, Helvetica, sans-serif;
}

/* ── Old News Dropdown ── */
.old-news-dropdown {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.old-news-btn {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0.08));
    color: #fff;
    border: 1px solid rgba(255,255,255,0.38);
    border-radius: 10px;
    padding: 8px 16px 8px 18px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    letter-spacing: 0.02em;
    transition: all 180ms ease;
    font-family: inherit;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
}

.old-news-btn:hover,
.old-news-btn.active,
.old-news-btn[aria-expanded="true"] {
    background: linear-gradient(180deg, rgba(255,255,255,0.34), rgba(255,255,255,0.12));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.32), 0 6px 18px rgba(0,0,0,0.12);
}

.old-news-menu {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: -4px;
    min-width: 185px;
    background: #fffdf7;
    border: 1px solid rgba(14,95,61,0.14);
    border-radius: 12px;
    box-shadow: 0 18px 36px rgba(0,0,0,0.18);
    overflow: hidden;
    z-index: 999;
    flex-direction: column;
    padding: 6px 0;
}

.old-news-menu::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 18px;
    width: 16px;
    height: 16px;
    background: #fffdf7;
    border-left: 1px solid rgba(14,95,61,0.14);
    border-top: 1px solid rgba(14,95,61,0.14);
    transform: rotate(45deg);
}

.old-news-menu.open {
    display: flex;
}

.old-news-menu a {
    position: relative;
    display: block;
    padding: 8px 12px 8px 12px;
    color: #0e5f3d;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    border-bottom: 1px solid rgba(14,95,61,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.35), rgba(232,245,239,0));
    transition: background 150ms ease, color 150ms ease, transform 150ms ease;
    margin-left: 0;
    text-indent: 0;
    text-align: left;
}

.old-news-menu a:last-child {
    border-bottom: none;
}

.old-news-menu a:hover,
.old-news-menu a.selected {
    background: linear-gradient(180deg, #e8f5ef, #dff1e7);
    color: #093f2b !important;
    transform: translateX(2px);
}

/* ── No News Message ── */
.no-news-msg {
    text-align: center;
    padding: 60px 20px;
    color: #666;
    font-size: 18px;
    line-height: 1.8;
}


.nav-social {
    text-align: right;
    padding-right: 15%;
}

.content-shell {
    padding: 24px 20px 26px;
    background: linear-gradient(180deg, #f7f5f1 0%, #f2f3ee 100%);
    border-top: 1px solid rgba(14, 95, 61, 0.08);
}

.ad-strip {
    margin-bottom: 16px;
}

.ad-card {
    display: flex;
    justify-content: center;
    gap: 20px;
    padding: 12px;
    background: #fff;
    border: 1px solid #ddd;
}

.ad-card img {
    width: 180px;
    height: 90px;
    object-fit: cover;
}

.edition-bar {
    text-align: center;
    background: linear-gradient(180deg, #f2f2f2 0%, #e9ece9 100%);
    color: #1b3b2c;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 11px 12px;
    margin: 0 0 18px;
    border: 1px solid rgba(14,95,61,0.08);
    border-radius: 6px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

:root{
    --page-width: 90%;
    --side-ad-width: 12%;
    --center-gap: 4%;
    --tab-inactive-bg: #edf0ed;
    --tab-active-bg: linear-gradient(180deg, #0f6842 0%, #0b4d35 100%);
    --tab-inactive-color: #2b3d36;
    --tab-active-color: #fff;
}

/* Main paper layout: responsive 3-column with % widths */
.paper-layout {
    width: var(--page-width);
    max-width: 1400px;
    margin: 0 auto 30px;
    display: grid;
    grid-template-columns: var(--side-ad-width) 1fr var(--side-ad-width);
    gap: 12px;
    align-items: start;
    background: rgba(255,255,255,0.06);
}

.side-ad {
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
}

.side-ad img {
    width: 100%;
    height: auto;
    display: block;
    border: 5px solid #fff;
    box-shadow: 0 8px 18px rgba(27, 32, 28, 0.08);
    background: #fff;
    border-radius: 12px;
}

.center-paper {
    width: 100%;
    padding: 0;
}

/* Tabs & buttons styling */
.paper-tabs {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0 auto 8px;
    width: 100%;
}

.tabs-head {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 12px;
    padding: 10px 12px 0;
}

.tab-link {
    display: inline-block;
    background: var(--tab-inactive-bg);
    color: var(--tab-inactive-color);
    text-decoration: none;
    padding: 10px 16px;
    border-radius: 6px;
    font-weight: 800;
    border: 1px solid rgba(11,77,53,0.08);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
    transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease, color 160ms ease;
}

.tab-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(12, 46, 33, 0.08);
}

.tab-link.active {
    background: var(--tab-active-bg) !important;
    color: var(--tab-active-color) !important;
    box-shadow: 0 10px 20px rgba(14,95,61,0.18);
}

.tabs-body {
    border: 1px solid rgba(14,95,61,0.08);
    padding: 0;
    background: #fff;
    border-radius: 0px;
    overflow: hidden;
    box-shadow: 0 18px 28px rgba(17, 20, 18, 0.08);
}

.tab-panel {
    display: none;
    padding: 0;
}

.tab-panel.active {
    display: block;
}

/* Make the newspaper image fill its container horizontally (no left/right whitespace) */
.tab-panel img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
    margin: 0;
    padding: 0;
}

/* reduce top spacing under header */
.edition-bar{
    margin-top: 6px;
    margin-bottom: 12px;
    padding: 8px 12px;
    background: #f2f2f2;
    text-align: center;
}

/* reduce top spacing under header */
.edition-bar{
    margin-top: 6px;
    margin-bottom: 12px;
    padding: 8px 12px;
    background: #f2f2f2;
    text-align: center;
}

/* Footer styling tweak: full-width dark green bar with centered links */
.site-footer {
    background: linear-gradient(180deg, #0f6140 0%, #0a4d33 100%);
    color: #fff;
    padding: 20px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    border-top: 1px solid rgba(255,255,255,0.12);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.1), 0 -8px 24px rgba(8, 38, 28, 0.1);
}

.site-footer div {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
}

.site-footer a {
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    transition: opacity 160ms ease;
}

.site-footer a:hover {
    opacity: 0.9;
}

@media (max-width: 1100px) {
    .nav-links {
        padding-left: 4%;
    }

    .nav-links:last-child {
        padding-right: 4%;
    }
}

@media (max-width: 820px) {
    .main-menu {
        grid-template-columns: 1fr;
        gap: 10px;
        text-align: center;
    }

    .nav-links,
    .nav-links:last-child {
        justify-content: center;
        padding: 0;
        flex-wrap: wrap;
    }

    .nav-social {
        text-align: center;
        padding-right: 0;
    }
}

.empty-state {
    width: 100%;
    max-width: 900px;
    margin: 18px auto 24px;
    padding: 24px;
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 18px;
    text-align: center;
    color: #333;
    font-weight: 700;
}

.site-footer a {
    margin-left: 0;
}

/* Admin page common shell and layout */
.admin-page-shell {
    min-height: 100vh;
    padding: 0;
    background: #edf0ee;
}

.admin-page-body {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 0;
    align-items: stretch;
    min-height: calc(100vh - 120px);
    transition: grid-template-columns 180ms ease;
}

.admin-sidebar-panel {
    background: linear-gradient(180deg, #0d5c38 0%, #0d5035 100%);
    border-radius: 0;
    padding: 0 0 12px;
    color: #e6f0e8;
    min-height: 100%;
    box-shadow: inset -1px 0 0 rgba(255,255,255,0.1);
    width: 100%;
    overflow: hidden;
    transition: width 180ms ease, padding 180ms ease;
}

.sidebar-brand-wrap {
/*    display: flex;*/
    align-items: center;
    gap: 12px;
    padding: 18px 18px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.14);
    background: rgb(255 255 255);
}

.sidebar-brand-badge {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 55px;
    padding: 8px 12px 8px 8px;
    border-radius: 18px;
    background: rgba(255,255,255,0.96);
/*    box-shadow: 0 6px 20px rgba(0,0,0,0.08);*/
    overflow: hidden;
}

.sidebar-brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 100px;
    height: 38px;
    padding: 0 14px;
    border-radius: 12px;
    /* background: linear-gradient(180deg, #e53a2e 0%, #d62a1a 100%); */
    color: #fff;
    font-family: "Noto Sans Devanagari", "Mangal", serif;
    font-size: 2.1rem;
    font-weight: 800;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.02em;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
}

.sidebar-brand-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.sidebar-brand-title {
    color: #111;
    font-family: "Noto Sans Devanagari", "Mangal", serif;
    font-size: 1.9rem;
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.sidebar-brand-subtitle {
    color: #5a6060;
    font-family: "Noto Sans Devanagari", "Mangal", serif;
    font-size: 0.7rem;
    line-height: 1.25;
    letter-spacing: 0.01em;
    margin-top: 4px;
    white-space: nowrap;
}

.sidebar-brand-name {
    color: #111111;
    font-weight: bolder;
    font-size: 1.35rem;
    line-height: 1.2;
    font-family: "Noto Sans Devanagari", "Mangal", serif;
    letter-spacing: 0.02em;
}

.admin-sidebar-menu {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 10px;
}

.admin-sidebar-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 20px 18px 18px;
    color: #edf7f0;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.14rem;
    letter-spacing: 0.01em;
    border-left: 4px solid transparent;
    transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
    font-family: "Noto Sans Devanagari", "Mangal", "Segoe UI", sans-serif;
}

    .admin-sidebar-item.active,
    .admin-sidebar-item:hover {
        background: rgba(255,255,255,0.10);
        border-left-color: #e83d2f;
        color: #fff;
        box-shadow: inset 0 0 0 1px rgba(217, 240, 226, 0.18);
    }

.sidebar-icon {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #edf7f0;
}

.sidebar-icon svg {
    width: 26px;
    height: 26px;
    stroke: currentColor;
}

.sidebar-icon i {
    font-size: 1.35rem;
    line-height: 1;
}

.sidebar-text {
    flex: 1;
    min-width: 0;
}

.sidebar-arrow {
    opacity: 0.9;
    color: rgba(255,255,255,0.74);
    font-size: 1.5rem;
    line-height: 1;
    margin-left: 4px;
}

.sidebar-bottom {
    margin-top: 22px;
    border-top: 1px solid rgba(255,255,255,0.15);
    padding: 18px 18px 0;
}

.admin-page-shell.sidebar-collapsed .admin-page-body {
    grid-template-columns: 84px 1fr;
}

.admin-page-shell.sidebar-collapsed .admin-sidebar-panel {
    padding-left: 0;
    padding-right: 0;
}

.admin-page-shell.sidebar-collapsed .sidebar-brand-wrap {
    padding-left: 10px;
    padding-right: 10px;
}

.admin-page-shell.sidebar-collapsed .sidebar-brand-copy,
.admin-page-shell.sidebar-collapsed .sidebar-text,
.admin-page-shell.sidebar-collapsed .sidebar-arrow,
.admin-page-shell.sidebar-collapsed .nav-logout span {
    display: none;
}

.admin-page-shell.sidebar-collapsed .admin-sidebar-item {
    justify-content: center;
    gap: 0;
    padding-left: 0;
    padding-right: 0;
}

.admin-page-shell.sidebar-collapsed .sidebar-icon {
    margin: 0;
}

.admin-page-shell.sidebar-collapsed .sidebar-bottom {
    padding-left: 10px;
    padding-right: 10px;
}

.admin-page-shell.sidebar-collapsed .nav-logout {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
}

.nav-logout {
    width: 100%;
    background: transparent;
    color: #edf7f0;
    border: none;
    padding: 10px 6px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    cursor: pointer;
    font-family: "Noto Sans Devanagari", "Mangal", "Segoe UI", sans-serif;
}

.nav-logout svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
}

.admin-header-top,
.admin-header {
    background: #fff;
    border-radius: 0;
    padding: 18px 20px 18px 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    box-shadow: none;
    border-bottom: 1px solid rgba(35,54,45,0.12);
}

.admin-header-top {
    margin-bottom: 0;
    min-height: 90px;
    width: 100%;
}

.admin-header-spacer {
    flex: 1;
}

.admin-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
    flex-wrap: nowrap;
}

.admin-brand {
    display: none;
}

.admin-panel-card {
background: #fff;
border-radius: 0px;
box-shadow: 0 10px 30px rgba(15,45,35,0.05);
padding: 26px 22px 14px;
width: 100%;
border: 1px solid rgba(29,63,49,0.08);
}

.admin-upload-card {
   border-radius: 0;
   box-shadow: none;
   border: none;
   padding: 18px 18px 10px;
}

.page-header {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
gap: 18px;
margin-bottom: 24px;
}

.page-header-compact {
    margin-bottom: 16px;
}

.page-header h1 {
margin: 0;
font-size: 30px;
font-weight: 700;
letter-spacing: -0.02em;
}

.admin-action-toolbar {
display: flex;
flex-wrap: wrap;
gap: 12px;
}

.uploads-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 22px;
}

.summary-card {
    background: #fff;
    border: 1px solid rgba(16, 55, 42, 0.12);
    border-radius: 12px;
    padding: 18px 18px 12px;
    position: relative;
    overflow: hidden;
}

.summary-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: currentColor;
}

.summary-card-green { color: #0e5f3d; }
.summary-card-blue { color: #1e63d3; }
.summary-card-yellow { color: #d7a414; }

.summary-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 10px;
}

.summary-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(14,95,61,0.08);
    color: currentColor;
}

.summary-card-blue .summary-icon { background: rgba(30,99,211,0.08); }
.summary-card-yellow .summary-icon { background: rgba(215,164,20,0.12); }

.summary-icon svg {
    width: 22px;
    height: 22px;
    stroke: currentColor;
}

.summary-value {
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    color: #1b2320;
}

.summary-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1d2722;
    margin-top: 2px;
}

.summary-note {
    font-size: 0.76rem;
    color: #66726e;
    margin-top: 4px;
}

.page-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 18px 0 12px;
}

.search-wrap {
    position: relative;
    flex: 1;
    max-width: 475px;
}

.search-wrap svg {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    stroke: #6b726d;
}

.search-wrap input {
    width: 100%;
    height: 42px;
    padding: 0 16px 0 40px;
    border: 1px solid #dde4e0;
    border-radius: 8px;
    background: #fff;
    font: inherit;
    color: #1f2824;
}

.result-count {
    min-width: 140px;
    text-align: center;
    padding: 9px 14px;
    border: 1px solid #dfe6e2;
    border-radius: 8px;
    color: #3a433e;
    font-size: 0.96rem;
    background: #f7f9f8;
}

.search-toolbar {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    flex-wrap: wrap;
}

.date-filter-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 10px;
    border: 1px solid #dde4e0;
    border-radius: 8px;
    background: #fff;
    height: 42px;
}

.date-filter-wrap label {
    font-size: 0.82rem;
    color: #56615d;
    font-weight: 600;
}

.date-filter-wrap input {
    border: none;
    background: transparent;
    font: inherit;
    color: #1f2824;
    min-width: 140px;
    padding: 0;
}

.page-size-form {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    /*border: 1px solid #dfe6e2;*/
    border-radius: 8px;
    background: #fff;
    margin-left: auto;
}

.page-size-form label {
    font-size: 0.82rem;
    color: #505d58;
    font-weight: 600;
}

.page-size-form select {
    border: 1px solid #dfe6e2;
    border-radius: 8px;
    padding: 8px 10px;
    font: inherit;
    background: #fff;
    color: #1f2824;
}

.table-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 18px;
    flex-wrap: wrap;
}

.admin-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 0;
}

.page-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 36px;
    padding: 0 12px;
    border: 1px solid #dfe6e2;
    border-radius: 8px;
    background: #fff;
    color: #23342d;
    text-decoration: none;
    font-size: 0.92rem;
    font-weight: 600;
    transition: all 0.2s ease;
}

.page-button:hover {
    border-color: #c9d7d1;
    background: #f4f7f5;
}

.page-button.active {
    background: #0f5f3f;
    border-color: #0f5f3f;
    color: #fff;
}

.page-button.disabled {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}

.table-card {
width: 100%;
overflow-x: auto;
}

.table-card-legacy {
    border: 1px solid rgba(22, 39, 31, 0.08);
    border-radius: 10px;
    overflow: auto;
    overflow-y: hidden;
}

.admin-table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
min-width: 720px;
}

.admin-table th,
.admin-table td {
padding: 16px 14px;
background: #fff;
border: none;
vertical-align: middle;
}

.admin-table thead th {
background: #f8faf8;
color: #2c3a33;
font-weight: 700;
text-align: left;
border-bottom: 1px solid #ebefec;
}

.admin-table tbody tr {
background: #fff;
border-bottom: 1px solid #edf2ee;
}

.admin-table tbody tr:hover {
background: transparent;
}

.admin-table td {
color: #474f4b;
}

.admin-table-legacy tbody td {
    border-bottom: 1px solid #eef1ee;
}

.admin-table .thumbnail-cell {
width: 200px;
}

.admin-table .thumbnail-cell img {
width: 120px;
height: 72px;
object-fit: cover;
border-radius: 8px;
display: block;
border: 1px solid #e7ece8;
}

.table-actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 10px;
}

.table-actions form {
margin: 0;
}

.icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid #d8e3dc;
    background: #fff;
    color: #0f5f3f;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.icon-btn:hover,
.icon-btn:focus,
.icon-btn:focus-visible {
    background: transparent;
    box-shadow: none;
    outline: none;
}

.icon-btn.danger {
    color: #c13d3d;
}

.bulk-toolbar {
    margin: 0 0 12px;
    display: flex;
    justify-content: flex-start;
}

.bulk-delete-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #c65353;
    border-radius: 10px;
    background: linear-gradient(180deg, #d85c5c 0%, #bf4040 100%);
    color: #fff;
    padding: 12px 18px;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(191, 64, 64, 0.18);
    cursor: pointer;
}

.bulk-delete-btn:hover,
.bulk-delete-btn:focus,
.bulk-delete-btn:focus-visible {
    background: linear-gradient(180deg, #e06a6a 0%, #cb4a4a 100%);
    box-shadow: 0 10px 22px rgba(191, 64, 64, 0.24);
    transform: translateY(-1px);
}

.bulk-delete-btn[disabled] {
    opacity: 0.45;
    pointer-events: none;
    box-shadow: none;
}

.page-top-actions {
    margin: 12px 12px 8px;
}

.page-top-actions .icon-btn {
    box-shadow: 0 6px 14px rgba(15, 95, 63, 0.12);
}

.page-top-actions .icon-btn.edit {
    background: #0f5f3f;
    border-color: #0f5f3f;
    color: #fff;
}

.page-top-actions .icon-btn.danger {
    background: #fff1f1;
    border-color: #efb6b6;
    color: #c13d3d;
}

.page-top-actions .icon-btn:hover,
.page-top-actions .icon-btn:focus,
.page-top-actions .icon-btn:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 10px 18px rgba(15, 95, 63, 0.18);
}

@media (max-width: 992px) {
.admin-page-body {
    grid-template-columns: 1fr;
}

.admin-sidebar-panel {
    min-height: auto;
}

.admin-table {
    min-width: 100%;
}
}

.admin-menu-toggle {
    background: transparent;
    border: none;
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #1f1f1f;
    padding: 0;
    margin-left: 8px;
}

.admin-menu-toggle svg {
    width: 28px;
    height: 28px;
    stroke: currentColor;
}

.admin-date-card {
    background: #fff;
    border: 1px solid #cfcfcf;
    border-radius: 12px;
    padding: 10px 18px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #111;
    font-weight: 600;
    min-width: 300px;
    justify-content: center;
    font-size: 1.05rem;
    font-family: "Noto Sans Devanagari", "Mangal", "Segoe UI", sans-serif;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.4);
}

.admin-date-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    color: #1b1b1b;
    flex-shrink: 0;
}

.admin-date-icon svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
}

.admin-user-card {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 6px 0 6px 8px;
    background: transparent;
    border: none;
    box-shadow: none;
    min-width: 160px;
}

.admin-user-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #dde8e1;
    color: #1e1e1e;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    overflow: hidden;
}

.admin-user-avatar svg {
    width: 22px;
    height: 22px;
    stroke: currentColor;
}

.admin-user-meta {
    line-height: 1.2;
    text-align: left;
}

.admin-user-name,
.admin-user-role {
    margin: 0;
}

.admin-user-name {
    font-weight: 700;
    color: #1e1e1e;
    font-size: 1.05rem;
}

.admin-user-role {
    font-size: 0.82rem;
    color: #666;
    margin-top: 2px;
}

.page-header {
    margin-bottom: 24px;
}

.page-header h1 {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
}

.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #5a6b60;
    margin-top: 10px;
    font-size: 14px;
}

.breadcrumb a {
    color: #0e5f3d;
    text-decoration: none;
    font-weight: 600;
}

.breadcrumb span {
    color: #6c776d;
}

.admin-page-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.7fr);
    gap: 24px;
    margin-bottom: 40px;
}

.form-card,
.info-card,
.dashboard-stats,
.quick-actions,
.secure-panel {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 18px 46px rgba(15,45,35,0.05);
}

.form-card,
.info-card {
    padding: 28px;
}

.admin-form-grid {
    align-items: start;
}

.form-card-legacy {
    background: #f8faf8;
    border: 1px solid #dfe7e2;
    box-shadow: none;
}

.form-card-header {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
    padding-bottom: 12px;
}

.form-card-icon {
    width: 58px;
    height: 58px;
    border-radius: 14px;
    background: rgba(14,95,61,0.09);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0e5f3d;
    flex-shrink: 0;
}

.form-card-icon svg {
    width: 28px;
    height: 28px;
    stroke: currentColor;
}

.form-card h2,
.info-card-title {
    margin: 0;
    font-size: 19px;
    font-weight: 700;
    color: #1d2a24;
}

.form-card p {
    margin: 6px 0 0;
    color: #60716c;
    font-size: 15px;
    line-height: 1.5;
}

.info-card {
    border: 1px solid #dfe7e2;
    background: #f8faf8;
    box-shadow: none;
}

.info-card-title {
    margin-bottom: 18px;
    font-size: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.info-card-title::before {
    content: "i";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #dfeee7;
    color: #0e5f3d;
    font-weight: 800;
    font-size: 16px;
    font-family: Georgia, serif;
}

.info-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 16px;
}

.info-list li {
    position: relative;
    padding-left: 30px;
    color: #465650;
    line-height: 1.65;
    font-size: 15px;
}

.info-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: #0e5f3d;
    background: rgba(14,95,61,0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 800;
}

.form-group {
    display: grid;
    gap: 10px;
    margin-bottom: 20px;
}

.form-group label {
    font-weight: 700;
    color: #2f4238;
    font-size: 15px;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="password"],
.form-group input[type="number"],
.form-group select,
.form-group input[type="file"] {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #d8e0dc;
    border-radius: 10px;
    background: #fff;
    font: inherit;
    color: #232f2a;
    box-shadow: inset 0 1px 0 rgba(0,0,0,0.02);
}

.form-group input[type="file"] {
    padding: 10px 12px;
}

.form-group select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%230e5f3d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 16px 16px;
}

.hint-text {
    display: block;
    color: #6b776b;
    font-size: 13px;
    margin-top: 6px;
}

.field-validation {
    color: #c8362c;
    font-size: 13px;
}

.required {
    color: #d04b28;
}

.form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #0e5f3d;
    color: #fff;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 700;
    min-width: 180px;
    padding: 12px 22px;
    box-shadow: 0 8px 18px rgba(14,95,61,0.18);
}

.primary-btn svg {
    width: 18px;
    height: 18px;
    stroke: currentColor;
}

.secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #d9ddd8;
    color: #445546;
    padding: 12px 22px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
    min-width: 180px;
}

.narrow-header {
    margin-bottom: 18px;
}

.dashboard-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}

.stat-card {
    background: #fff;
    border-radius: 24px;
    padding: 24px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 20px 45px rgba(15,45,35,0.08);
}

.stat-icon {
    width: 72px;
    height: 72px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: #f1fbf4;
}

.stat-body .stat-title {
    font-size: 14px;
    color: #566556;
    margin-bottom: 8px;
}

.stat-body .stat-value {
    font-size: 32px;
    font-weight: 800;
}

.stat-body .stat-sub {
    color: #7a897a;
    font-size: 13px;
}

.card-green .stat-icon { background: #e7f5e8; }
.card-yellow .stat-icon { background: #fff8e8; }
.card-blue .stat-icon { background: #eef4ff; }

.quick-actions {
    padding: 0 0 0 0;
}

.quick-actions h3 {
    font-size: 20px;
    margin-bottom: 18px;
}

.actions-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.action-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid #f0f5f0;
    color: #1f3b2d;
    text-decoration: none;
    min-height: 120px;
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.action-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 32px rgba(15,45,35,0.08);
}

.action-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    background: #ecf7ef;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #0e5f3d;
}

.action-body .action-title {
    font-weight: 700;
    margin-bottom: 6px;
}

.action-body .action-sub {
    color: #606f62;
    font-size: 14px;
}

.action-arrow {
    margin-left: auto;
    color: #8a9a8d;
    font-size: 18px;
}

.secure-panel {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 26px;
    border: 1px solid #dce9de;
    background: #f6fbf7;
    border-radius: 20px;
    margin-top: 22px;
}

.secure-icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0e5f3d;
    color: #fff;
    font-size: 20px;
}

.secure-title {
    font-weight: 700;
    margin-bottom: 4px;
}

.secure-sub {
    color: #5c6e62;
    font-size: 14px;
}

.admin-page-footer {
    margin-top: 18px;
    padding: 0;
}

.admin-footer-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    color: #7a8378;
    font-size: 13px;
}

.admin-version {
    color: #9aa396;
}

@media (max-width: 1120px) {
    .admin-page-body,
    .actions-grid {
        grid-template-columns: 1fr;
    }
    .admin-sidebar-panel {
        min-height: auto;
    }
}

@media (max-width: 820px) {
    .admin-page-shell {
        padding: 16px;
    }

    .admin-header-top,
    .admin-page-body,
    .form-card,
    .info-card,
    .dashboard-stats,
    .quick-actions,
    .secure-panel {
        padding: 18px;
    }

    .admin-page-body {
        gap: 18px;
    }

    .admin-topbar,
    .admin-header {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-header-actions {
        justify-content: space-between;
        width: 100%;
    }
}

.login-box {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 12px;
    margin-top: 60px;
}

.login-header {
    background: #d04b28;
    color: #fff;
    padding: 18px 20px;
    border-radius: 12px 12px 0 0;
}

.field-row {
    display: grid;
    gap: 8px;
    margin: 18px 0;
}

.field-row input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
}

.primary-btn {
    background: #0e5f3d;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 700;
}

.validation-summary,
.field-validation {
    color: #b00020;
    font-size: 13px;
}

.dashboard-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 16px;
    margin: 20px 0;
}

.dashboard-actions,
.form-actions {
    display: flex;
    gap: 12px;
    align-items: center;
    margin: 20px 0;
    flex-wrap: wrap;
}

.form-group {
    display: grid;
    gap: 8px;
    margin-bottom: 18px;
}

.form-group label {
    font-weight: 700;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="password"],
.form-group input[type="number"],
.form-group input[type="file"] {
    width: 100%;
    padding: 10px 40px;
    border: 1px solid #cfcfcf;
    border-radius: 6px;
    font: inherit;
}

.secondary-btn {
    display: inline-block;
    background: #777;
    color: #fff;
    padding: 10px 18px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 700;
}

.success-message {
    background: #eafaf0;
    color: #0a7a3d;
    border: 1px solid #b7e4c4;
    border-radius: 6px;
    padding: 12px 14px;
    margin: 16px 0;
    font-weight: 700;
}

.stat-card {
    background: #f6f6f6;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    display: grid;
    gap: 8px;
}

.oldnews-header {
    background: #d04b28;
    color: #fff;
    padding: 20px;
    text-align: center;
}

.oldnews-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 18px 0;
}

.day-link {
    background: #004f32;
    padding: 10px 14px;
    border-radius: 6px;
}

.oldnews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}

.oldnews-card {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 14px;
}

.oldnews-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    margin-top: 12px;
}

@media (max-width: 720px) {
    .main-menu {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .nav-links,
    .nav-social {
        justify-content: center;
        padding: 0;
        text-align: center;
    }

    .masthead-wrap {
        flex-direction: column;
    }

    .masthead-logo,
    .masthead-ad {
        width: 100%;
    }

    .site-footer {
        flex-direction: column;
        gap: 12px;
    }
}

/* Admin dashboard specific styles */
.admin-layout{
    display: flex;
    min-height: 78vh;
}

.admin-sidebar{
    width: 260px;
    background: linear-gradient(180deg,#0e5f3d 0%, #08452a 100%);
    color: #fff;
    padding: 20px 12px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.admin-sidebar .logo img{ max-width: 180px; display:block; margin: 4px 8px; }

.sidebar-nav{ display:flex; flex-direction:column; gap:6px; margin-top: 18px; }
.sidebar-nav .nav-item{
    color: #dfeee6;
    padding: 12px 14px;
    border-radius: 6px;
    text-decoration: none;
    font-weight:700;
    display:flex;
    align-items:center;
    gap:10px;
}

.sidebar-nav .nav-item .nav-icon{ width:28px; display:inline-block; text-align:center; }
.sidebar-nav .nav-item .nav-text{ flex:1; }
.sidebar-nav .nav-item .nav-chevron{ width:18px; display:inline-flex; align-items:center; justify-content:center; }

.sidebar-nav .nav-item.active, .sidebar-nav .nav-item:hover{
    background: #114f39;
    color: #fff;
}

/* show red accent bar for active item like screenshot */
.sidebar-nav .nav-item.active::before{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 6px;
    background: #d04b28; /* red accent */
    border-radius: 4px 0 0 4px;
}

.sidebar-nav .nav-item{ position: relative; }

.sidebar-bottom{ margin-top:auto; }
.nav-logout{ width:100%; background:transparent; color:#fff; border:1px solid rgba(255,255,255,0.08); padding:10px 12px; border-radius:6px; font-weight:700; }

/* stat-card bottom accent line and layout to match screenshot */
.stat-card{ display:flex; gap:14px; align-items:center; padding:18px; border-radius:10px; background:#fff; box-shadow:0 4px 12px rgba(0,0,0,0.04); border-left:6px solid transparent; position:relative; overflow:visible; }
.stat-card::after{
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: -6px;
    height: 6px;
    border-radius: 0 0 6px 6px;
    background: transparent;
}
.card-green::after{ background: linear-gradient(90deg,#0e5f3d,#0e5f3d); }
.card-yellow::after{ background: linear-gradient(90deg,#e6b800,#e6b800); }
.card-blue::after{ background: linear-gradient(90deg,#2b66d7,#2b66d7); }

.stat-icon{ width:64px; height:64px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:transparent; }
.stat-icon svg{ width:48px; height:48px; }
.stat-body .stat-value{ font-size:28px; font-weight:900; margin-top:6px; color:#111; }

/* Quick actions -- inner white container with cards */
.quick-actions{ margin-top:20px; background:transparent; padding:0; }
.quick-actions > .actions-grid{ background:#fff; padding:18px; border-radius:10px; box-shadow:0 4px 10px rgba(0,0,0,0.03); }
.action-card{ display:flex; align-items:center; gap:12px; padding:18px; border-radius:8px; text-decoration:none; color:inherit; border:1px solid #eef6ee; }
.action-icon{ font-size:22px; width:56px; height:56px; background:#f4fbf6; color:#0e5f3d; display:flex; align-items:center; justify-content:center; border-radius:8px; }
.action-body .action-title{ font-weight:800; }
.action-sub{ color:#777; font-size:13px; }
.action-arrow{ margin-left:auto; color:#b7b7b7; font-size:20px; }
.admin-main{
    flex:1;
    padding: 28px 34px;
}

.admin-header{ display:flex; justify-content:space-between; align-items:center; gap:12px; }
.header-left h1{ margin:0; font-size:28px; }
.subtitle{ color:#666; margin:4px 0 0; }
.header-right{ display:flex; align-items:center; gap:12px; }
.date-box{ background:#fff; padding:10px 14px; border-radius:8px; border:1px solid #eee; box-shadow:0 2px 6px rgba(0,0,0,0.04); }
.admin-user{ display:flex; align-items:center; gap:10px; }
.avatar{ width:44px; height:44px; border-radius:50%; background:#e2f3ea; color:#0e5f3d; display:flex; align-items:center; justify-content:center; font-weight:700; }
.admin-name{ font-weight:700; }
.admin-role{ font-size:13px; color:#888; }

.dashboard-stats{ margin-top:18px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.stat-card{ display:flex; gap:14px; align-items:center; padding:18px; border-radius:10px; background:#fff; box-shadow:0 4px 12px rgba(0,0,0,0.04); border-left:6px solid transparent; }
.stat-icon{ font-size:28px; }
.stat-body .stat-title{ font-weight:700; color:#666; }
.stat-body .stat-value{ font-size:22px; font-weight:900; margin-top:6px; }
.stat-body .stat-sub{ color:#999; font-size:13px; }
.card-green{ border-left-color:#0e5f3d; }
.card-yellow{ border-left-color:#e6b800; }
.card-blue{ border-left-color:#2b66d7; }

.quick-actions{ margin-top:20px; background:#fff; padding:18px; border-radius:10px; box-shadow:0 4px 10px rgba(0,0,0,0.03); }
.quick-actions h3{ margin:0 0 12px 0; }
.actions-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.action-card{ display:flex; align-items:center; gap:12px; padding:14px; border-radius:8px; text-decoration:none; color:inherit; border:1px solid #eef6ee; }
.action-icon{ font-size:22px; width:44px; height:44px; background:#f4fbf6; color:#0e5f3d; display:flex; align-items:center; justify-content:center; border-radius:8px; }
.action-body .action-title{ font-weight:800; }
.action-sub{ color:#777; font-size:13px; }
.action-arrow{ margin-left:auto; color:#b7b7b7; font-size:20px; }

.secure-panel{ margin-top:18px; display:flex; gap:12px; align-items:center; background:#eefaf2; padding:12px 16px; border-radius:8px; }
.secure-icon{ font-size:22px; background:#fff; padding:8px; border-radius:8px; }
.secure-title{ font-weight:800; }
.secure-sub{ color:#666; }

.admin-footer{ margin-top:18px; color:#888; font-size:13px; }

@media (max-width: 920px){
    .dashboard-stats{ grid-template-columns:1fr; }
    .actions-grid{ grid-template-columns:1fr; }
    .admin-sidebar{ display:none; }
    .admin-layout{ flex-direction:column; }
    .admin-main{ padding:18px; }
}
.disabledMenu {
    pointer-events: none;
    cursor: default;
    opacity: 0.6;
}