:root {
    --premium-shell-bg: #f5f4f1;
    --premium-surface: #ffffff;
    --premium-surface-soft: #f1f4f7;
    --premium-line: #d6dde6;
    --premium-line-strong: #b8c3d1;
    --premium-text: #1c2835;
    --premium-text-soft: #516478;
    --premium-accent: #2f516a;
    --premium-accent-strong: #213f56;
    --premium-shadow-xl: 0 30px 76px rgba(21, 36, 51, 0.16);
    --premium-shadow-lg: 0 14px 34px rgba(26, 44, 61, 0.11);
    --premium-shadow-md: 0 8px 22px rgba(32, 50, 69, 0.08);
    --premium-radius-xl: 30px;
    --premium-radius-lg: 18px;
    --premium-radius-md: 13px;
}

body {
    color: var(--premium-text);
    background:
        radial-gradient(1200px 720px at 7% 8%, rgba(138, 160, 184, 0.2), transparent 60%),
        radial-gradient(1150px 780px at 94% 86%, rgba(164, 180, 198, 0.24), transparent 66%),
        #dce1e9;
}

body::before {
    opacity: 0.1;
}

body.dark-mode {
    color-scheme: dark;
    --premium-shell-bg: #141a22;
    --premium-surface: #1a222d;
    --premium-surface-soft: #212b39;
    --premium-line: #2f3a48;
    --premium-line-strong: #435164;
    --premium-text: #edf2f9;
    --premium-text-soft: #b7c3d4;
    --premium-accent: #8eb7d9;
    --premium-accent-strong: #a8c7e2;
    --premium-shadow-xl: 0 36px 86px rgba(1, 4, 8, 0.66);
    --premium-shadow-lg: 0 18px 42px rgba(2, 7, 12, 0.46);
    --premium-shadow-md: 0 10px 24px rgba(4, 10, 16, 0.35);

    /* Legacy tokens used across older stylesheet layers. */
    --surface: #161f2a;
    --surface-soft: #1d2835;
    --surface-muted: #263443;
    --text: #edf3fb;
    --text-soft: #b6c5d7;
    --line: #334658;
    --line-strong: #4a6076;
    --accent: #79a4c8;
    --accent-strong: #a8c7e2;
    --danger: #f2a8b3;
    --success: #9ddcc6;
    --warning: #e0c789;

    /* Timeless layer tokens. */
    --tm-bg: #101821;
    --tm-shell: #171f2a;
    --tm-surface: #1e2935;
    --tm-surface-soft: #243342;
    --tm-line: #334658;
    --tm-line-strong: #4a6177;
    --tm-text: #edf3fb;
    --tm-text-soft: #b7c6d9;
    --tm-accent: #6f9fc5;
    --tm-accent-strong: #4c79a2;
    --tm-shadow-xl: 0 34px 84px rgba(2, 7, 14, 0.7);
    --tm-shadow-lg: 0 18px 44px rgba(3, 10, 18, 0.5);
    --tm-shadow-md: 0 10px 24px rgba(4, 12, 20, 0.36);
}

.site-shell {
    width: min(1320px, calc(100% - 1.25rem));
    margin: 0.9rem auto 1.7rem;
    border: 1px solid var(--premium-line);
    border-radius: var(--premium-radius-xl);
    background: var(--premium-shell-bg);
    box-shadow: var(--premium-shadow-xl);
}

.site-shell::before {
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.74), transparent 24%),
        radial-gradient(860px 420px at -14% -5%, rgba(159, 177, 197, 0.14), transparent 62%);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 280;
}

.navbar {
    padding: 1.05rem 0;
    border-bottom: 1px solid var(--premium-line);
    backdrop-filter: blur(12px);
    background: linear-gradient(
        180deg,
        rgba(245, 246, 248, 0.9),
        rgba(245, 246, 248, 0.72)
    );
}

body.dark-mode .navbar {
    background: linear-gradient(
        180deg,
        rgba(20, 27, 36, 0.9),
        rgba(20, 27, 36, 0.72)
    );
}

.nav-wrapper,
.nav-wrapper-home {
    grid-template-columns: minmax(0, 470px) minmax(0, 1fr) auto;
    gap: 0.88rem;
    min-height: 92px;
}

.logo-image {
    width: clamp(320px, 30vw, 520px);
    max-height: 132px;
    filter: drop-shadow(0 8px 16px rgba(19, 31, 44, 0.1));
}

.nav-menu {
    gap: 0.34rem;
}

.nav-menu a,
.dropbtn {
    min-height: 58px;
    padding: 0.66rem 0.86rem;
    border: 1px solid transparent;
    border-radius: 14px;
    color: var(--premium-text);
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.nav-menu a:hover,
.dropbtn:hover,
.nav-menu a.is-current {
    border-color: var(--premium-line);
    background: var(--premium-surface-soft);
    color: var(--premium-text);
    text-decoration: none;
}

.dropdown-content {
    border: 1px solid var(--premium-line);
    border-radius: var(--premium-radius-md);
    background: var(--premium-surface);
    box-shadow: var(--premium-shadow-lg);
}

.language-switcher select,
.theme-toggle {
    min-height: 3.05rem;
    border: 1px solid var(--premium-line-strong);
    border-radius: 15px;
    background: var(--premium-surface);
    color: var(--premium-text);
    font-weight: 700;
}

.theme-toggle {
    width: 3.05rem;
    height: 3.05rem;
}

.search-bar {
    padding: 0.75rem 0 0.96rem;
    border-bottom: 1px solid var(--premium-line);
}

.search-form {
    max-width: 780px;
    margin: 0 auto;
    gap: 0.5rem;
}

.search-form input,
.search-form button {
    height: 3rem;
    border-radius: 14px;
}

.search-form input {
    border: 1px solid var(--premium-line-strong);
    background: var(--premium-surface);
    color: var(--premium-text);
    font-size: 1rem;
}

.search-form button {
    border: 0;
    background: linear-gradient(138deg, var(--premium-accent), var(--premium-accent-strong));
    font-size: 0.9rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.site-main {
    padding: 1.25rem 0 2.35rem;
}

p,
li,
label,
input,
select,
textarea {
    color: var(--premium-text-soft);
}

.page-header h1,
.archive-header h1,
.search-header h1,
.admin-header h1,
.contact-section h1,
.about-page .page-header h1 {
    font-size: clamp(2.15rem, 3vw, 3.1rem);
    line-height: 1.03;
    color: var(--premium-text);
}

.hero-banner,
.todays-newspaper-section,
.page-content,
.main-content,
.sidebar,
.widget,
.archive-section,
.archive-sidebar,
.archive-main,
.search-result,
.article-card,
.contact-form,
.admin-section,
.stat-card,
.stat-box,
.live-widgets-section,
.live-widget-card,
.about-section,
.value-item,
.newspaper-card,
.archive-pdf-item,
.archive-article-item {
    border: 1px solid var(--premium-line);
    border-radius: var(--premium-radius-lg);
    background: var(--premium-surface);
    box-shadow: var(--premium-shadow-md);
}

.hero-banner {
    position: relative;
    overflow: hidden;
    grid-template-columns: minmax(0, 1.42fr) minmax(250px, 1fr);
    gap: 1.05rem;
    padding: 1.15rem;
    background:
        linear-gradient(128deg, rgba(255, 255, 255, 0.96), rgba(240, 244, 249, 0.96)),
        radial-gradient(500px 280px at 88% 10%, rgba(137, 158, 182, 0.2), transparent 72%);
}

body.dark-mode .hero-banner {
    background:
        linear-gradient(128deg, rgba(27, 36, 48, 0.98), rgba(24, 31, 42, 0.96)),
        radial-gradient(500px 280px at 88% 10%, rgba(120, 149, 178, 0.2), transparent 72%);
}

.hero-content h2 {
    font-size: clamp(2.5rem, 5.2vw, 4.9rem);
    line-height: 0.88;
    letter-spacing: -0.034em;
}

.hero-kicker {
    font-size: 0.73rem;
    letter-spacing: 0.15em;
    color: var(--premium-text-soft);
}

.hero-lead {
    max-width: 690px;
    font-size: 1.04rem;
    line-height: 1.62;
    color: var(--premium-text-soft);
}

.hero-chip {
    border: 1px solid var(--premium-line);
    background: var(--premium-surface);
    color: var(--premium-text-soft);
    font-size: 0.83rem;
    font-weight: 700;
}

.article-card,
.search-result,
.archive-article-item,
.archive-pdf-item {
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.article-card:hover,
.search-result:hover,
.archive-article-item:hover,
.archive-pdf-item:hover {
    transform: translateY(-2px);
    border-color: var(--premium-line-strong);
    box-shadow: var(--premium-shadow-lg);
}

.btn,
.btn-primary,
.btn-secondary,
.btn-view,
.btn-download,
.btn-edit,
.btn-delete,
.btn-danger,
.btn-small {
    min-height: 2.9rem;
    border-radius: 12px;
    font-size: 0.95rem;
}

.btn-primary,
.btn-download,
button.btn-primary {
    background: linear-gradient(138deg, var(--premium-accent), var(--premium-accent-strong));
    box-shadow: 0 10px 24px rgba(30, 58, 84, 0.24);
}

.btn-secondary,
.btn-view,
.btn-edit,
.btn-small {
    border-color: var(--premium-line-strong);
    background: var(--premium-surface-soft);
    color: var(--premium-text);
}

.live-widgets-section {
    margin-top: 1rem;
    background: linear-gradient(
        155deg,
        rgba(250, 252, 255, 0.97),
        rgba(242, 246, 251, 0.96)
    );
}

body.dark-mode .live-widgets-section {
    background: linear-gradient(
        155deg,
        rgba(26, 35, 46, 0.98),
        rgba(23, 31, 41, 0.96)
    );
}

.live-widgets-head h2,
.live-widget-card h3,
.footer-section h3 {
    color: var(--premium-text);
}

.live-widgets-meta,
.live-widget-loading,
.live-widget-empty,
.live-widget-error,
.live-weather-condition,
.live-weather-meta,
.live-quote-name,
.footer-section p,
.footer-section li,
.footer-bottom p {
    color: var(--premium-text-soft);
}

.live-weather-location,
.live-weather-temp,
.live-quote-symbol,
.live-quote-price {
    color: var(--premium-text);
}

.footer {
    border-top: 1px solid var(--premium-line);
    background: linear-gradient(
        180deg,
        rgba(238, 242, 247, 0.95),
        rgba(231, 236, 242, 0.95)
    );
}

body.dark-mode .footer {
    background: linear-gradient(
        180deg,
        rgba(21, 30, 39, 0.96),
        rgba(18, 26, 34, 0.95)
    );
}

.footer-section a,
.footer-section strong,
.footer-bottom a {
    color: var(--premium-text);
}

.footer-section a:hover,
.footer-bottom a:hover {
    color: var(--premium-accent);
}

.about-page .about-section p,
.about-page .value-item p,
.contact-section p,
.contact-form label {
    font-size: 1.03rem;
    line-height: 1.72;
}

.about-page .values-grid {
    gap: 0.8rem;
}

.odisha-glance-spotlight {
    margin: 1rem 0;
    border: 1px solid var(--premium-line);
    border-radius: var(--premium-radius-lg);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(241, 246, 251, 0.95));
    box-shadow: var(--premium-shadow-md);
    display: grid;
    grid-template-columns: minmax(240px, 0.95fr) minmax(0, 1.25fr);
    gap: 0.95rem;
    overflow: hidden;
}

.odisha-glance-spotlight-media {
    min-height: 240px;
}

.odisha-glance-spotlight-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.odisha-glance-spotlight-content {
    padding: 0.94rem 0.98rem 1rem 0.22rem;
}

.odisha-glance-kicker {
    margin: 0 0 0.22rem;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--premium-text-soft);
}

.odisha-glance-spotlight-content h3 {
    margin: 0 0 0.35rem;
    font-size: clamp(1.34rem, 2.2vw, 2rem);
    line-height: 1.04;
}

.odisha-glance-spotlight-content p {
    margin: 0 0 0.66rem;
    line-height: 1.58;
}

.odisha-glance-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.36rem;
    margin-bottom: 0.72rem;
}

.odisha-glance-chips span {
    display: inline-flex;
    align-items: center;
    padding: 0.24rem 0.56rem;
    border-radius: 999px;
    border: 1px solid var(--premium-line);
    background: var(--premium-surface);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    color: var(--premium-text-soft);
}

.odisha-glance-cta {
    min-height: 2.72rem;
}

.premium-pdf-host .ppv-shell {
    border-radius: 14px;
    border-color: var(--premium-line);
    box-shadow: 0 12px 30px rgba(25, 46, 66, 0.15);
}

.premium-pdf-host .ppv-toolbar,
.premium-pdf-host .ppv-status {
    background: linear-gradient(
        180deg,
        rgba(245, 249, 253, 0.98),
        rgba(236, 243, 250, 0.95)
    );
}

.premium-pdf-host .ppv-toolbar {
    position: sticky;
    top: 0;
    z-index: 5;
}

body.dark-mode .premium-pdf-host .ppv-toolbar,
body.dark-mode .premium-pdf-host .ppv-status {
    background: linear-gradient(
        180deg,
        rgba(28, 39, 52, 0.98),
        rgba(25, 35, 47, 0.96)
    );
}

input[type="text"],
input[type="email"],
input[type="search"],
input[type="date"],
input[type="number"],
input[type="password"],
textarea,
select {
    border: 1px solid var(--premium-line-strong);
    border-radius: 12px;
    background: var(--premium-surface);
    color: var(--premium-text);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(47, 81, 106, 0.23);
    border-color: #47759a;
}

/* Comprehensive dark-mode override across all pages/components. */
body.dark-mode {
    background:
        radial-gradient(1200px 760px at 10% 8%, rgba(86, 114, 142, 0.28), transparent 62%),
        radial-gradient(1100px 840px at 94% 90%, rgba(65, 91, 118, 0.26), transparent 66%),
        #0d141d;
    color: var(--premium-text);
}

body.dark-mode::before {
    opacity: 0.15;
}

body.dark-mode .site-shell {
    border-color: #425368;
    background: linear-gradient(160deg, #192430, #151e29);
    box-shadow: 0 40px 96px rgba(1, 6, 12, 0.72);
}

body.dark-mode .site-shell::before {
    background:
        linear-gradient(155deg, rgba(161, 186, 210, 0.11), transparent 30%),
        radial-gradient(850px 360px at -10% -4%, rgba(92, 121, 148, 0.2), transparent 66%);
}

body.dark-mode .site-header::after {
    background: linear-gradient(90deg, #7ea8cb, #b8d3ea, #7ea8cb);
}

body.dark-mode :is(
    h1, h2, h3, h4, h5, h6,
    .section-title,
    .stat-number,
    .stat-value,
    .live-weather-location,
    .live-weather-temp,
    .live-quote-symbol,
    .live-quote-price,
    .pdf-info h4,
    .paper-title,
    .switch-title
) {
    color: var(--premium-text);
}

body.dark-mode :is(
    p, li, small, label, .text-muted, .muted-inline, .page-subtitle, .archive-date-subtitle,
    .newsletter-note, .social-note, .advertise-note, .pdf-mobile-hint, .pdf-info p,
    .paper-kicker, .paper-subtitle, .paper-description, .paper-preview-hint,
    .paper-preview-head p, .switch-subtitle, .maintenance-help, .maintenance-current,
    .live-widgets-meta, .live-widget-loading, .live-widget-empty, .live-widget-error,
    .live-weather-condition, .live-weather-meta, .live-quote-name, .live-quote-change.is-flat
) {
    color: var(--premium-text-soft);
}

body.dark-mode :is(
    .main-content, .sidebar, .widget, .archive-section, .search-result, .pdf-card,
    .page-content, .admin-section, .contact-form, .article-form, .category-form, .admin-form,
    .archive-main, .archive-sidebar, .date-picker-box, .newspaper-card, .about-section,
    .values-grid .value-item, .todays-newspaper-section, .article-full, .archive-pdf-item,
    .archive-article-item, .stat-card, .stat-box, .achievements-page, .advertise-page,
    .page-header, .archive-header, .search-header, .category-header, .pdf-library-header, .admin-header
) {
    border-color: #43576d;
    background: linear-gradient(162deg, #1d2936, #18222d);
    box-shadow: 0 12px 28px rgba(2, 8, 15, 0.38);
}

body.dark-mode .hero-banner {
    border-color: #4a6077;
    background:
        linear-gradient(130deg, rgba(34, 47, 63, 0.98), rgba(28, 39, 52, 0.97)),
        radial-gradient(520px 260px at 94% 10%, rgba(130, 160, 191, 0.22), transparent 74%);
}

body.dark-mode .odisha-glance-spotlight {
    border-color: #4a617a;
    background: linear-gradient(158deg, #243446, #1d2b3b);
}

body.dark-mode .odisha-glance-chips span {
    border-color: #4d6580;
    background: #26374a;
    color: #d2e3f4;
}

body.dark-mode :is(.hero-chip, .editorial-pill, .hero-visual-card) {
    border-color: #4f6781;
    background: linear-gradient(168deg, #253445, #1f2d3d);
    color: #d2e2f3;
}

body.dark-mode :is(
    .paper-face-front,
    .paper-face-back,
    .paper-preview-shell,
    .paper-preview-frame,
    .pdf-viewer-wrapper,
    .pdf-unavailable,
    .no-today-edition,
    .pdf-frame-loading,
    .newspaper-pdf-frame
) {
    border-color: #4f6781;
    background: linear-gradient(165deg, #223244, #1c2a3a);
    color: #d7e6f7;
}

body.dark-mode :is(.article-meta span, .result-meta span, .archive-article-meta span, .pdf-stats) {
    border-color: #4a6076;
    background: #243344;
    color: #cde0f3;
}

body.dark-mode :is(
    .btn-secondary, .btn-view, .btn-edit, .btn-small,
    .newspaper-actions a:not(:first-child),
    .share-btn, .social-links a, .paper-mini-btn, .quick-date-btn, .date-link,
    .pagination a, .share-icons-mini a, .archive-clear-btn
) {
    border-color: #4e6680;
    background: linear-gradient(170deg, #27384a, #223245);
    color: #e2eefb;
}

body.dark-mode :is(
    .btn-secondary:hover, .btn-view:hover, .btn-edit:hover, .btn-small:hover,
    .newspaper-actions a:not(:first-child):hover,
    .share-btn:hover, .social-links a:hover, .paper-mini-btn:hover, .quick-date-btn:hover,
    .date-link:hover, .pagination a:hover, .share-icons-mini a:hover
) {
    border-color: #6f8ead;
    background: linear-gradient(150deg, #30475f, #294056);
    color: #ffffff;
}

body.dark-mode :is(
    .quick-date-btn.active,
    .date-link.active,
    .pagination a.active
) {
    border-color: transparent;
    background: linear-gradient(140deg, var(--premium-accent), var(--premium-accent-strong));
    color: #f5fbff;
}

body.dark-mode :is(.btn-delete, .btn-danger, .alert-error, .status-inactive, .status-draft, .status-failed) {
    border-color: #905969;
    background: linear-gradient(165deg, #432833, #392129);
    color: #f3c5d1;
}

body.dark-mode :is(.btn-primary, .btn-download, button.btn-primary, .search-form button) {
    background: linear-gradient(142deg, #6e97bc, #4f7ca3);
    color: #f4faff;
    box-shadow: 0 12px 28px rgba(10, 24, 39, 0.42);
}

body.dark-mode .alert-success {
    border-color: #3f8468;
    background: linear-gradient(165deg, #1f3b31, #1b3128);
    color: #b9efd9;
}

body.dark-mode :is(.status-active, .status-published, .status-sent) {
    border-color: #3f8768;
    background: linear-gradient(165deg, #244338, #1f382f);
    color: #b9f2db;
}

body.dark-mode .status-pending {
    border-color: #8f7a49;
    background: linear-gradient(165deg, #413821, #372f1c);
    color: #f0dbab;
}

body.dark-mode .navbar,
body.dark-mode .search-bar {
    border-bottom-color: #425369;
}

body.dark-mode .nav-menu a,
body.dark-mode .dropbtn {
    color: #deebf8;
}

body.dark-mode .nav-icon {
    color: #b8cde2;
}

body.dark-mode .nav-menu a:hover,
body.dark-mode .dropbtn:hover,
body.dark-mode .nav-menu a.is-current {
    border-color: #5f7893;
    background: #2a3a4c;
    color: #f6fbff;
}

body.dark-mode .dropdown-content {
    border-color: #4f6781;
    background: linear-gradient(165deg, #233243, #1d2a39);
}

body.dark-mode .dropdown-content a {
    color: #dfeaf6;
}

body.dark-mode .dropdown-content a span {
    color: #a8bdd2;
}

body.dark-mode :is(.language-switcher select, .theme-toggle, .hamburger) {
    border-color: #4f6781;
    background: linear-gradient(165deg, #253548, #223244);
    color: #e7f1fb;
}

body.dark-mode .hamburger span {
    background: #dbe9f8;
}

body.dark-mode :is(
    input[type="text"], input[type="email"], input[type="search"], input[type="date"],
    input[type="number"], input[type="password"], textarea, select
) {
    border-color: #506a84;
    background: #1e2c3b;
    color: #ecf4fd;
}

body.dark-mode :is(input, textarea)::placeholder {
    color: #8ea5bd;
    opacity: 1;
}

body.dark-mode :is(.breadcrumb, .article-info-bar, .related-item, .empty-archive, .no-articles, .no-results, .search-prompt, .result-count, .login-tip) {
    border-color: #49617b;
    background: linear-gradient(162deg, #233243, #1d2b3b);
}

body.dark-mode :is(.read-more, .breadcrumb a, main p a, .contact-section a, .about-page a) {
    color: #d6e8f9;
}

body.dark-mode :is(.read-more:hover, .breadcrumb a:hover, main p a:hover, .contact-section a:hover, .about-page a:hover) {
    color: #ffffff;
}

body.dark-mode .widget-list li {
    border-bottom-color: #3f556b;
}

body.dark-mode .admin-table {
    border-color: #4b627b;
    background: #1b2734;
}

body.dark-mode .admin-table th {
    border-bottom-color: #4b627b;
    background: #253548;
    color: #d8e7f6;
}

body.dark-mode .admin-table td {
    border-bottom-color: #3d5167;
    color: #d4e3f3;
    background: rgba(31, 44, 58, 0.72);
}

body.dark-mode .table-wrap {
    border: 1px solid #455c74;
    border-radius: 12px;
    background: #18222e;
}

body.dark-mode .rate-table th {
    background: #233446;
    color: #d6e6f7;
}

body.dark-mode .rate-table td {
    color: #d0e0f0;
}

body.dark-mode .admin-action-card {
    border-color: #4a6178;
    background: linear-gradient(166deg, #243447, #1d2a3a);
}

body.dark-mode .admin-action-card h3 {
    color: #ebf4fd;
}

body.dark-mode .admin-action-card p {
    color: #b9cbde;
}

body.dark-mode .switch-toggle {
    border-color: #4f6781;
    background: linear-gradient(162deg, #233345, #1f2d3d);
}

body.dark-mode .switch-track {
    border-color: #6983a0;
    background: linear-gradient(180deg, #3f566c, #34485d);
}

body.dark-mode .switch-thumb {
    border-color: #607b98;
    background: #e8f2fc;
}

body.dark-mode .achievement-card {
    border-color: #4f6781;
    background: linear-gradient(165deg, #233345, #1d2b3b);
}

body.dark-mode :is(.achievement-table-thumb, .achievement-preview-image) {
    border-color: #4f6781;
}

body.dark-mode .live-status {
    border-color: #607c99;
    background: #32465c;
    color: #d8e7f8;
}

body.dark-mode .live-status-ok {
    border-color: #4f8f75;
    background: #214037;
    color: #bdf2dc;
}

body.dark-mode .live-status-warn {
    border-color: #8f7a49;
    background: #463b20;
    color: #f1ddad;
}

body.dark-mode .live-status-error {
    border-color: #8f5567;
    background: #4a2a35;
    color: #f2c4d0;
}

body.dark-mode .live-status-loading {
    border-color: #5d7b9b;
    background: #28425a;
    color: #d1e7fb;
}

body.dark-mode .newspaper-share,
body.dark-mode .newspaper-share-buttons,
body.dark-mode .share-buttons {
    border-top-color: #475f79;
}

body.dark-mode .newspaper-share-label {
    color: #b7cbdf;
}

body.dark-mode .footer {
    border-top-color: #415469;
    background:
        linear-gradient(180deg, rgba(18, 27, 36, 0.98), rgba(14, 21, 29, 0.98)),
        #101821;
}

body.dark-mode .footer-section {
    border-color: rgba(86, 107, 130, 0.25);
}

body.dark-mode .footer-section a,
body.dark-mode .footer-bottom a {
    color: #e4effb;
}

body.dark-mode .footer-section a:hover,
body.dark-mode .footer-bottom a:hover {
    color: #ffffff;
}

body.dark-mode .admin-fab {
    border-color: #6482a0;
    background: linear-gradient(145deg, #3f5f7f, #304c67);
    color: #eef6ff;
    box-shadow: 0 16px 34px rgba(1, 7, 14, 0.48);
}

body.dark-mode a:focus-visible,
body.dark-mode button:focus-visible,
body.dark-mode input:focus-visible,
body.dark-mode select:focus-visible,
body.dark-mode textarea:focus-visible {
    box-shadow: 0 0 0 3px rgba(137, 176, 208, 0.42);
    border-color: #7ea6c9;
}

@media (max-width: 1120px) {
    .site-shell {
        width: calc(100% - 0.5rem);
        margin: 0.25rem auto 1rem;
        border-radius: 18px;
    }

    .navbar {
        padding: 1rem 0;
    }

    .nav-wrapper,
    .nav-wrapper-home {
        grid-template-columns: minmax(0, 1fr) auto auto;
        min-height: 84px;
        gap: 0.56rem;
    }

    .logo-image {
        width: clamp(180px, 52vw, 300px);
        max-height: 78px;
    }

    .site-main {
        padding: 0.84rem 0 calc(1.2rem + env(safe-area-inset-bottom));
    }

    .hamburger {
        min-width: 56px;
        min-height: 56px;
        border-radius: 14px;
    }

    .nav-menu {
        position: fixed;
        top: var(--menu-top, 104px);
        left: max(8px, env(safe-area-inset-left));
        right: max(8px, env(safe-area-inset-right));
        bottom: max(8px, env(safe-area-inset-bottom));
        margin: 0;
        padding: 0.72rem;
        display: none;
        overflow-y: auto;
        border-radius: 18px;
        border: 1px solid var(--premium-line-strong);
        background: rgba(248, 250, 253, 0.98);
        box-shadow: var(--premium-shadow-lg);
        z-index: 320;
    }

    body.dark-mode .nav-menu {
        background: rgba(21, 29, 39, 0.98);
    }

    .nav-menu.active {
        display: flex;
    }

    .nav-menu a,
    .dropbtn {
        width: 100%;
        min-height: 60px;
        justify-content: flex-start;
        font-size: 0.97rem;
        letter-spacing: 0.03em;
        text-transform: none;
        border: 1px solid transparent;
    }

    .nav-menu .nav-icon {
        display: inline-flex;
    }

    .dropdown-content {
        margin-top: 0.32rem;
        border-radius: 10px;
    }

    body.menu-open .site-header::before {
        content: "";
        position: fixed;
        inset: 0;
        background: rgba(14, 22, 32, 0.26);
        backdrop-filter: blur(2px);
        z-index: 300;
        pointer-events: none;
    }

    .search-form {
        grid-template-columns: 1fr;
    }

    .search-form input,
    .search-form button {
        height: 2.9rem;
    }

    .archive-date-header h2 {
        font-size: clamp(1.32rem, 4.9vw, 1.8rem);
        line-height: 1.12;
    }

    .hero-banner {
        grid-template-columns: 1fr;
        gap: 0.76rem;
        padding: 0.9rem;
    }

    .hero-content h2 {
        font-size: clamp(2rem, 9.2vw, 3.2rem);
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.45rem;
    }

    .hero-actions .btn-primary,
    .hero-actions .btn-secondary {
        width: 100%;
    }

    .odisha-glance-spotlight {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .odisha-glance-spotlight-media {
        min-height: 190px;
    }

    .odisha-glance-spotlight-content {
        padding: 0.82rem;
    }

    .content-wrapper,
    .archive-wrapper,
    .stats-grid,
    .achievements-grid,
    .live-widgets-grid,
    .admin-action-grid,
    .about-page .values-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .page-header h1,
    .archive-header h1,
    .search-header h1,
    .admin-header h1,
    .contact-section h1,
    .about-page .page-header h1 {
        font-size: clamp(1.75rem, 6.8vw, 2.3rem);
    }

    .main-content,
    .sidebar,
    .archive-main,
    .archive-sidebar,
    .page-content,
    .contact-section,
    .about-page,
    .admin-section {
        padding: 0.84rem;
        border-radius: 14px;
    }

    .newspaper-actions,
    .pdf-footer,
    .share-buttons,
    .admin-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 0.45rem;
    }

    .newspaper-actions a,
    .pdf-footer a,
    .share-btn,
    .btn,
    .btn-primary,
    .btn-secondary,
    .btn-view,
    .btn-download,
    .btn-edit,
    .btn-delete,
    .btn-danger,
    .btn-small {
        width: 100%;
    }

    .share-buttons,
    .newspaper-share-buttons {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.46rem;
    }

    .share-buttons h4 {
        grid-column: 1 / -1;
        margin-bottom: 0.1rem;
    }

    .share-btn {
        justify-content: center;
        text-align: center;
    }

    .article-content h3,
    .archive-article-content h4,
    .result-title,
    .widget-list li,
    .widget-list li a,
    .about-page .about-section p,
    .contact-section p {
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .social-links {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0.44rem;
    }

    .social-links a {
        min-height: 2.8rem;
        justify-content: center;
        border-radius: 12px;
    }

    .about-page .about-section p,
    .about-page .value-item p,
    .contact-section p,
    .contact-form label {
        font-size: 1rem;
        line-height: 1.66;
    }

    .about-page .about-section h2,
    .contact-section h2 {
        font-size: 1.2rem;
        line-height: 1.25;
    }

    .about-page .values-grid .value-item {
        padding: 0.72rem;
    }

    .article-info-bar {
        align-items: flex-start;
        gap: 0.5rem;
    }

    .reading-info,
    .share-icons-mini {
        font-size: 0.9rem;
        line-height: 1.4;
    }

    .reading-info span,
    .share-icons-mini span {
        white-space: normal;
    }

    .contact-form input,
    .contact-form textarea,
    .contact-form select {
        min-height: 2.9rem;
        font-size: 1rem;
    }

    .contact-form textarea {
        min-height: 9rem;
    }

    .premium-pdf-host .ppv-controls {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 0.14rem;
    }

    .premium-pdf-host .ppv-controls::-webkit-scrollbar {
        display: none;
    }

    .premium-pdf-host .ppv-controls .ppv-btn,
    .premium-pdf-host .ppv-controls .ppv-link,
    .premium-pdf-host .ppv-controls .ppv-page-field,
    .premium-pdf-host .ppv-controls .ppv-zoom {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .premium-pdf-host .ppv-status {
        font-size: 0.76rem;
        line-height: 1.35;
    }

    .premium-pdf-host .ppv-toolbar {
        grid-template-columns: 1fr;
        gap: 0.46rem;
        padding: 0.56rem;
    }

    .premium-pdf-host .ppv-controls {
        justify-content: flex-start;
    }

    .premium-pdf-host .ppv-controls-links .ppv-btn,
    .premium-pdf-host .ppv-controls-links .ppv-link {
        flex: 1 1 160px;
    }

    .premium-pdf-host .ppv-body {
        grid-template-columns: 1fr;
    }

    .premium-pdf-host .ppv-thumbs {
        display: none;
    }

    .premium-pdf-host .ppv-stage {
        height: min(calc(var(--app-vh, 1vh) * 70), 760px);
        max-height: min(calc(var(--app-vh, 1vh) * 70), 760px);
    }

    img,
    iframe,
    video {
        max-width: 100%;
    }
}

@media (max-width: 980px) {
    .language-switcher {
        display: none;
    }
}

@media (max-width: 680px) {
    .site-shell {
        border-radius: 15px;
    }

    .logo-image {
        width: clamp(148px, 54vw, 220px);
        max-height: 68px;
    }

    .theme-toggle {
        width: 2.75rem;
        height: 2.75rem;
        min-height: 2.75rem;
    }

    .about-page .about-section p,
    .about-page .value-item p,
    .contact-section p,
    .contact-form label {
        font-size: 1rem;
        line-height: 1.62;
    }

    .hero-kicker {
        font-size: 0.66rem;
    }

    .hero-chip {
        font-size: 0.8rem;
    }

    .odisha-glance-chips span {
        font-size: 0.74rem;
    }

    .share-buttons,
    .newspaper-share-buttons {
        grid-template-columns: 1fr;
    }

    .social-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .premium-pdf-host .ppv-stage {
        height: min(calc(var(--app-vh, 1vh) * 64), 620px);
        max-height: min(calc(var(--app-vh, 1vh) * 64), 620px);
    }

    .premium-pdf-host[data-mode="home"] .ppv-stage {
        height: min(calc(var(--app-vh, 1vh) * 50), 460px);
        max-height: min(calc(var(--app-vh, 1vh) * 50), 460px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .article-card,
    .search-result,
    .archive-article-item,
    .archive-pdf-item,
    .btn,
    .btn-primary,
    .btn-secondary,
    .btn-view,
    .btn-download,
    .btn-edit,
    .btn-delete,
    .btn-danger,
    .btn-small {
        transition: none !important;
    }
}
