/* Public inner pages only. The Vue homepage keeps its own layout. The header is NOT styled here: every page uses the
   shared header styles in style.css (the homepage header is the baseline); only additional items are styled below. */
:root{--reading-scale:1}
.news-inner{font-family:"Noto Sans Devanagari","Nirmala UI",system-ui,sans-serif;color:#17212c;font-weight:400;background:#fff}
.news-inner :is(button,a,input,select):focus-visible{outline:2px solid var(--red);outline-offset:3px}
.news-inner .breadcrumb-trail{margin-block:18px 0;font-size:11px;color:#7a838e}
.news-inner .breadcrumb-trail ol{gap:8px;flex-wrap:wrap}
.news-inner .breadcrumb-trail li:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55ch}
.news-inner .category-page{padding-block:22px 48px}
.news-inner .category-heading{position:relative;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid #dce0e4}
.news-inner .category-heading::after{content:"";position:absolute;bottom:-2px;width:64px;height:3px;background:var(--red);left:0}
.news-inner .category-heading h1{font-size:calc(32px * var(--reading-scale));font-weight:800;line-height:1.4;margin:0 0 6px}
.news-inner .category-heading p{margin:3px 0;font-size:13px;color:#697480}
.news-inner .category-heading .category-listing-count{position:absolute;right:0;bottom:18px;font-size:11px;color:#818891}
.news-inner .listing-layout{grid-template-columns:minmax(0,1fr) 285px;gap:32px;align-items:start}
.news-inner .listing-layout>*,.news-inner .news-lead-grid>*{min-width:0}
.news-inner .news-lead-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:22px 24px}
.news-inner .category-article-card{border:0;border-radius:0;padding:0;background:transparent;display:block;height:auto;min-width:0}
.news-inner .news-card-image{display:block;overflow:hidden;background:#f3f4f5;margin-bottom:12px}
.news-inner .news-card-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:2px;transition:transform .25s}
.news-inner .news-card-image:hover img{transform:scale(1.025)}
.news-inner .category-article-card h3{font-size:calc(18px * var(--reading-scale));font-weight:750;line-height:1.55;margin:0 0 8px}
.news-inner .category-article-card h3 a:hover{color:var(--red)}
.news-inner .category-article-card p{font-size:calc(13px * var(--reading-scale));line-height:1.8;color:#66707b;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-inner .category-article-card small{font-family:system-ui,sans-serif;color:var(--muted);font-size:10px;display:block;line-height:1.5}
.news-inner .category-article-card small.sponsored-label{color:#a15c00;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.news-inner .news-lead{grid-row:span 2;border-inline-end:1px solid #e3e5e8;padding-inline-end:24px}
.news-inner .news-lead h3{font-size:calc(27px * var(--reading-scale));line-height:1.5;margin-bottom:10px}
.news-inner .news-lead p{-webkit-line-clamp:3;font-size:calc(14px * var(--reading-scale))}
.news-inner .news-secondary .news-card-image{margin-bottom:8px}
.news-inner .news-secondary p{display:none}
.news-inner .news-secondary h3{font-size:calc(17px * var(--reading-scale))}
.news-inner .news-section-heading{font-size:20px;display:flex;align-items:center;gap:16px;border-block:1px solid #dce0e4;padding:14px 0;margin:28px 0 0}
.news-inner .news-section-heading span{font:10px system-ui,sans-serif;letter-spacing:1.4px;color:#8b929a}
.news-inner .news-feed .category-article-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid #e6e8ea}
.news-inner .news-feed .news-card-image{margin:0}
.news-inner .news-sidebar{display:grid;gap:28px}
.news-inner .news-sidebar .panel{padding:0;border:0;border-radius:0;box-shadow:none}
.news-inner .news-sidebar h2{font-size:19px;font-weight:800;margin:0;padding:0 0 12px;border-bottom:2px solid #17212c}
.news-inner .news-sidebar ol{list-style:none;margin:0;padding:0}
.news-inner .news-sidebar li{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid #e7e9ec;font-size:calc(13px * var(--reading-scale));line-height:1.65;font-weight:650}
.news-inner .news-rank{font:italic 27px Georgia,serif;color:#8b929a;flex:0 0 30px}
.news-inner .news-sidebar li a:hover{color:var(--red)}
.news-inner .news-sidebar .ad-slot:empty{display:none}
.news-inner .category-article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px;margin-top:24px}
.news-inner .listing-layout .category-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.news-inner .category-article-grid>.category-article-card:only-child{padding:0;max-width:none}
.news-inner .category-pagination{justify-content:center;border-top:1px solid #e6e8ea;padding-top:22px;font-size:12px;gap:20px;flex-wrap:wrap}
.news-inner .category-pagination a{padding:8px 14px;background:#f3f4f5;border-radius:3px}
/* Reading column: the outer shell is shared, the story itself keeps a comfortable measure (body text stays 76ch). */
.news-inner .public-story{max-width:880px;margin:0}
.news-inner .story-kicker{font-size:12px;font-weight:750;color:var(--red);display:flex;gap:10px;align-items:center;letter-spacing:.3px;margin-bottom:12px}
.news-inner .story-sponsored{font-size:12px;margin:0 0 10px}
.news-inner .public-story h1{font-size:calc(clamp(28px,2.8vw,40px) * var(--reading-scale));line-height:1.5;font-weight:800;margin:0 0 16px;letter-spacing:-.6px}
.news-inner .story-deck{font-size:calc(17px * var(--reading-scale));line-height:1.85;color:#66707b;margin:0 0 18px}
.news-inner .story-byline{display:flex;gap:10px;align-items:center;padding:14px 0 18px;border-bottom:1px solid #e2e5e8;margin-bottom:22px;font-size:12px}
.news-inner .byline-mark{width:36px;height:36px;border-radius:50%;background:#fff1f1;color:#c50012;display:grid;place-items:center;font-weight:800;font-size:19px}
.news-inner .story-byline time{display:block;font:11px system-ui,sans-serif;color:var(--muted);margin-top:5px}
.news-inner .story-byline a{font-weight:700}
.news-inner .story-figure{margin:0 0 24px}
.news-inner .article-hero{width:100%;height:auto;max-height:540px;object-fit:cover;border-radius:2px}
.news-inner .article-body{font-size:calc(18px * var(--reading-scale));line-height:1.95;max-width:76ch;margin:0}
.news-inner .article-body p{font-size:inherit;margin:0 0 22px}
.news-inner .article-body h2{font-size:calc(25px * var(--reading-scale));line-height:1.6}
.news-inner .article-body h3{font-size:calc(21px * var(--reading-scale));line-height:1.6}
.news-inner .story-topics{display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-top:1px solid #e1e5e9;padding-top:22px;margin-top:30px;font-size:12px}
.news-inner .story-topics a{padding:6px 12px;border:1px solid #e1e5e9;border-radius:3px;color:#56616d}
.news-inner .story-back{display:inline-block;margin-top:24px;font-size:13px;font-weight:700;color:var(--red-text)}
.news-inner .story-notice{padding:12px;background:#f6f7f8;font-size:13px}
.news-inner .page-title-band{background:#fff;min-height:0;border:0;padding:30px 0 0}
.news-inner .page-title-band .page-shell{border-bottom:1px solid #dce0e4;padding-bottom:20px;position:relative}
.news-inner .page-title-band .page-shell::after{content:"";width:60px;height:3px;background:var(--red);position:absolute;bottom:-2px;left:0}
.news-inner .page-title-band h1{font-size:calc(32px * var(--reading-scale));line-height:1.5;font-weight:800}
.news-inner .page-title-band p{font-size:13px;line-height:1.75;font-weight:400;color:#5f6b78;margin-top:6px}
.news-inner .inner-page{padding-block:28px 48px;min-height:42vh}
.news-inner .media-page-grid,.news-inner .platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.news-inner .media-card{border:0;border-radius:0;padding:0;background:#fff;margin:0;overflow:hidden}
.news-inner .media-card img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:3px}
.news-inner .media-card h2{font-size:calc(19px * var(--reading-scale));line-height:1.6;margin:14px 0 8px;font-weight:750}
.news-inner .media-card p,.news-inner .media-card figcaption{font-size:13px;color:#717a85;line-height:1.8;margin:8px 0}
.news-inner .media-card small{font-size:11px;color:var(--red);font-weight:650}
.news-inner .paper-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.news-inner .paper-card{display:flex;flex-direction:column;border:1px solid #e1e5e9;border-radius:8px;padding:16px;background:#fff;box-shadow:0 2px 10px #0000000d;transition:box-shadow .2s,transform .2s}
.news-inner .paper-card:hover{box-shadow:0 8px 22px #00000021;transform:translateY(-2px)}
.news-inner .paper-preview{min-height:0;margin:0;padding:14px 14px 10px;background:#f1f2f4;border:0;border-radius:4px;box-shadow:none;overflow:hidden;text-align:center}
.news-inner .paper-preview img{display:block;width:100%;max-height:340px;object-fit:contain;filter:drop-shadow(0 4px 6px #0002)}
.news-inner .paper-preview strong{display:none}
.news-inner .paper-preview span{font-size:12px;display:block;margin-top:10px;color:#5b6470}
.news-inner .paper-card h2{font-size:18px;line-height:1.5;margin:16px 0 14px}
.news-inner .paper-card a.full-red{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;padding:10px 16px;margin-top:auto;border-radius:6px;font-size:14px;font-weight:800;line-height:1.4;text-decoration:none;box-sizing:border-box}
.news-inner .panel{border-color:#e1e5e9;border-radius:4px;box-shadow:none;padding:22px}
.news-inner .panel h2{font-size:21px;line-height:1.6}
.news-inner .panel h3{font-size:18px;line-height:1.6}
.news-inner .panel p{font-size:14px;line-height:1.8;color:#65717d}
.news-inner .platform-form{max-width:620px;background:#fafbfc;border:1px solid #e4e7eb;border-radius:4px;padding:24px;margin:0 0 24px}
.news-inner .platform-form label{font-size:13px;line-height:1.6}
.news-inner .platform-form input,.news-inner .platform-form textarea,.news-inner .platform-form select{background:white;border:1px solid #dce0e5;border-radius:3px;padding:12px;font:14px system-ui,sans-serif;width:100%}
.news-inner .platform-form input[type=checkbox]{width:auto}
.news-inner .platform-links{gap:10px;flex-wrap:wrap;font-size:12px;margin-bottom:20px}
.news-inner .social-auth-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0;max-width:580px}
.news-inner .social-auth-link{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--card-bg);color:var(--ink);font-size:13px;font-weight:700;text-decoration:none}
.news-inner .social-auth-link:hover,.news-inner .social-auth-link:focus-visible{border-color:var(--red);color:var(--red);}
.news-inner .social-auth-link i{font-size:15px;}
@media (max-width:360px){.news-inner .social-auth-links{grid-template-columns:1fr}}
.news-inner .platform-links button,.news-inner .platform-links a{padding:8px 12px;border:1px solid #e0e4e8;border-radius:3px}
.news-inner .platform-links [aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}
.news-inner .control-bar{background:#f7f8f9;padding:16px;border:1px solid #e2e5e8;border-radius:3px}
.news-inner .news-empty{padding:32px;background:#f8f9fa;border:1px solid #e3e6e9;color:#75808b}
.news-inner .live-badge{display:inline-flex;align-items:center;font:700 10px system-ui,sans-serif;letter-spacing:1px;border-radius:3px;padding:6px 10px}
.news-inner [data-component=live]>.panel{border:0;border-left:3px solid var(--red);background:#fafafa;margin-bottom:20px;max-width:960px}
.news-inner footer.news-footer{margin-top:0}
@media(min-width:1000px){.news-inner .news-lead:only-child{grid-column:1/-1;grid-row:auto;border:0;padding:0;display:grid;grid-template-columns:1.3fr 1fr;gap:24px}}
@media(max-width:1100px){.news-inner .listing-layout{grid-template-columns:minmax(0,1fr) 245px;gap:24px}.news-inner .news-lead-grid{grid-template-columns:1.25fr 1fr;gap:18px}.news-inner .news-lead{padding-inline-end:18px}.news-inner .news-lead h3{font-size:calc(23px * var(--reading-scale))}}
@media(max-width:800px){.news-inner .listing-layout{grid-template-columns:minmax(0,1fr)}.news-inner .news-sidebar{grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid #e2e5e8;padding-top:24px}.news-inner .media-page-grid,.news-inner .platform-grid,.news-inner .paper-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-inner .category-page{padding-top:18px}.news-inner .public-story h1{font-size:calc(28px * var(--reading-scale))}}
@media(max-width:520px){.news-inner .news-lead-grid{display:block}.news-inner .news-lead{border:0;padding:0;margin-bottom:20px}.news-inner .news-lead h3{font-size:calc(25px * var(--reading-scale))}.news-inner .news-secondary{display:grid;grid-template-columns:116px minmax(0,1fr);gap:14px;padding-block:16px;border-top:1px solid #e2e5e8}.news-inner .news-secondary h3{font-size:calc(15px * var(--reading-scale))}.news-inner .news-secondary .news-card-image{margin:0}.news-inner .news-feed .category-article-card{grid-template-columns:116px minmax(0,1fr);gap:14px}.news-inner .news-feed h3{font-size:calc(16px * var(--reading-scale))}.news-inner .news-feed p{display:none}.news-inner .news-sidebar{grid-template-columns:1fr}.news-inner .category-heading h1,.news-inner .page-title-band h1{font-size:calc(28px * var(--reading-scale))}.news-inner .category-heading .category-listing-count{position:static}.news-inner .category-article-grid,.news-inner .listing-layout .category-article-grid{grid-template-columns:1fr}.news-inner .category-article-grid .category-article-card{border-bottom:1px solid #e2e5e8;padding-bottom:20px}.news-inner .media-page-grid,.news-inner .platform-grid,.news-inner .paper-grid{grid-template-columns:1fr}.news-inner .story-deck{font-size:calc(15px * var(--reading-scale))}.news-inner .article-body{font-size:calc(17px * var(--reading-scale))}.news-inner .platform-form{padding:18px}.news-inner .page-title-band{padding-top:22px}.news-inner .breadcrumb-trail li:last-child{max-width:27ch}.news-inner .inner-page{padding-top:22px}.news-inner .news-section-heading{font-size:18px}.news-inner .news-section-heading span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.news-inner .news-card-image img{transition:none}}

.news-inner .video-thumbnail{position:relative;display:block}.news-inner .video-play{position:absolute;left:16px;bottom:16px;background:var(--red);width:40px;height:40px;border-radius:50%;display:grid;place-items:center}.news-inner .video-play::after{content:"";border-left:11px solid white;border-block:7px solid transparent;margin-left:3px}.news-inner .media-card a:hover h2{color:var(--red)}
.news-inner .listing-layout .paper-grid,.news-inner .listing-layout .media-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:520px){.news-inner .listing-layout .paper-grid,.news-inner .listing-layout .media-page-grid{grid-template-columns:1fr}}
/* One divider above Related News: its heading already draws the section lines (border-block), so the section adds no
   second top border of its own (client: two lines with empty space above "संबंधित खबरें"). */
.news-inner .related-news{margin-top:36px}
.news-inner .related-news>.news-section-heading{margin-top:0}
/* Related News (client: "too big grid make it small", "hover UI not good"): a compact newspaper grid — four cards per
   row on desktops (five on very wide screens, so cards keep the same size), three on tablets/small desktops, compact thumbnail rows on phones; 16:9 images, headline (up to
   three lines) and date, no summary. The whole card responds to hover/keyboard focus with a subtle border/shadow,
   a red headline and a slight image zoom clipped to the card — no colour block, no movement. */
.news-inner .related-news .category-article-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 16px;margin-top:16px}
.news-inner :is(.related-news,.location-stories) .category-article-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid #e6e8eb;border-radius:8px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}
.news-inner :is(.related-news,.location-stories) .news-card-image{flex:none;margin:0;overflow:hidden;border-radius:0;background:#f3f4f5}
.news-inner :is(.related-news,.location-stories) .news-card-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0;transition:transform .25s ease}
.news-inner :is(.related-news,.location-stories) .news-card-copy{display:flex;flex:1;flex-direction:column;gap:4px;padding:10px 12px 12px}
.news-inner :is(.related-news,.location-stories) .category-article-card h3{display:-webkit-box;min-height:0;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:calc(15px * var(--reading-scale));line-height:1.45;font-weight:700}
.news-inner :is(.related-news,.location-stories) .category-article-card h3 a{color:#17212c;transition:color .2s ease}
.news-inner :is(.related-news,.location-stories) .category-article-card p{display:none}
.news-inner :is(.related-news,.location-stories) .category-article-card small{margin:0;font-size:11px;line-height:1.4}
.news-inner :is(.related-news,.location-stories) .category-article-card small:last-child{margin-top:auto;padding-top:2px}
.news-inner :is(.related-news,.location-stories) .category-article-card:hover,.news-inner :is(.related-news,.location-stories) .category-article-card:focus-within{border-color:#d3d8de;box-shadow:0 4px 14px rgba(15,23,42,.08)}
.news-inner :is(.related-news,.location-stories) .category-article-card:hover h3 a,.news-inner :is(.related-news,.location-stories) .category-article-card:focus-within h3 a{color:var(--red)}
.news-inner :is(.related-news,.location-stories) .category-article-card:hover .news-card-image img{transform:scale(1.03)}
.news-inner :is(.related-news,.location-stories) .category-article-card h3 a:focus-visible{outline:0}
.news-inner :is(.related-news,.location-stories) .category-article-card:has(h3 a:focus-visible){outline:2px solid var(--red);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.news-inner :is(.related-news,.location-stories) .category-article-card,.news-inner :is(.related-news,.location-stories) .news-card-image img,.news-inner :is(.related-news,.location-stories) .category-article-card h3 a{transition:none}.news-inner :is(.related-news,.location-stories) .category-article-card:hover .news-card-image img{transform:none}}
@media(min-width:1600px){.news-inner .related-news .category-article-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1199px){.news-inner .related-news .category-article-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .news-inner :is(.related-news,.location-stories) .category-article-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  .news-inner :is(.related-news,.location-stories) .category-article-card{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:start}
  .news-inner :is(.related-news,.location-stories) .news-card-image img{width:112px;height:84px;aspect-ratio:auto}
  .news-inner :is(.related-news,.location-stories) .news-card-copy{padding:8px 10px}
  .news-inner :is(.related-news,.location-stories) .category-article-card h3{font-size:calc(14px * var(--reading-scale))}
}
/* Outer width comes from the shared public shell (style.css: --shell / --shell-gutter), the same as the homepage. Phones use margins rather than padding so title-band rules stay on the content edge. */
@media(max-width:760px){.news-inner .page-shell{width:calc(100% - 2 * var(--shell-gutter));padding-inline:0}}
.news-inner .listing-layout{grid-template-columns:minmax(0,1fr) 345px;gap:24px}
.news-inner .news-sidebar{gap:16px;align-content:start;position:sticky;top:16px}
.news-inner .news-sidebar .panel{padding:16px 18px;border:1px solid #e1e5e9;border-radius:8px;background:#fff}
.news-inner .news-sidebar h2{font-size:19px;font-weight:800;padding-bottom:10px;border-bottom:2px solid var(--red);display:block}
.news-inner .news-sidebar li:last-child{border-bottom:0;padding-bottom:0}
.news-inner .sidebar-ad{border:1px solid #e1e5e9;border-radius:8px;background:#fff;padding:12px;text-align:center}
.news-inner .sidebar-ad[hidden]{display:none}
/* A slot still waiting for (or without) an ad has no content: no empty framed box; the frame returns with the ad. */
.news-inner .sidebar-ad:empty{margin:0;border:0;padding:0;background:none}
.news-inner .sidebar-ad .ad-label{display:block;color:#77818e;font-size:10px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
.news-inner .sidebar-ad img,.news-inner .sidebar-ad iframe{display:block;width:100%;height:auto;border:0;border-radius:4px}
@media(max-width:1100px){.news-inner .listing-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:800px){.news-inner .listing-layout{grid-template-columns:minmax(0,1fr)}.news-inner .news-sidebar{position:static}}
/* Selected category in the main navigation */
.news-inner .category-submenu a.is-active{box-shadow:inset 3px 0 0 var(--red,#c8102e)}
/* Article detail — right-hand area (client correction: "cover space — live / ads block"). The article column keeps its
   reading width (880px) and the right-hand area takes the rest, so no blank band opens between them. That area holds a
   rail (live event card, article sidebar ad — each only with real data) and the Trending sidebar: stacked when narrow,
   side by side when wide. An empty rail collapses, and the sidebar's panels then use the width. */
.news-inner .article-side{min-width:0;container-type:inline-size}
.news-inner .article-side-inner{display:flex;flex-direction:column;gap:16px;min-width:0}
.news-inner .article-rail{display:flex;flex-direction:column;gap:16px;min-width:0}
.news-inner .article-rail .panel{padding:16px 18px;border:1px solid #e1e5e9;border-radius:8px;background:#fff}
.news-inner .article-side-inner:not(:has(.live-rail-card,.article-rail>.public-ad-slot:not([hidden])))>.article-rail{display:none}
@media(min-width:1200px){.news-inner .story-page .listing-layout{grid-template-columns:minmax(0,880px) minmax(345px,1fr)}}
@container (min-width:700px){
  .news-inner .article-side-inner{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:24px;align-items:start}
  .news-inner .article-side-inner:not(:has(.live-rail-card,.article-rail>.public-ad-slot:not([hidden])))>.news-sidebar{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start}
}
/* Rail ads keep the creative's own size (centred), shrinking only to fit; a 300×250 rectangle is never upscaled. */
.news-inner .article-rail .public-ad-slot img{width:auto;max-width:100%;margin:0 auto}

/* Additional header items on inner pages (text-size controls, article tools): compact, inside the shared 32px top strip. */
.news-masthead .masthead-extras{display:flex;align-items:center;gap:10px}
.news-masthead .reading-controls{display:flex;align-items:center;gap:2px;padding-inline-end:10px;border-inline-end:1px solid var(--line)}
.news-masthead .reading-controls button{min-width:24px;height:24px;padding:0 4px;color:var(--ink);font:inherit;font-size:12px;font-weight:600;line-height:1}
.news-masthead .reading-controls button:hover{color:var(--red)}
.news-masthead .reading-controls button:disabled{opacity:.3;cursor:default}
.news-masthead .masthead-article-tools{display:flex;align-items:center;gap:10px;font-size:11px}
.news-masthead .masthead-article-tools:empty{display:none}
@media(max-width:760px){.news-masthead .masthead-extras{display:none}}
/* Article Tags & Topics row above the headline (client correction: replaces the publication/category eyebrow). Compact
   newspaper style: a small red label per group, tags as "#name" links, topics as outlined pills; wraps on narrow screens. */
.news-inner .story-taxonomy{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0 0 12px;font-size:12px;line-height:1.4}
.news-inner .story-taxonomy-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.news-inner .story-taxonomy-label{display:none}
.news-inner .story-chip{display:inline-flex;align-items:center;justify-content:center;min-height:30px;max-width:100%;padding:5px 11px;border-radius:999px;font-weight:600;line-height:1.25;text-align:center;overflow-wrap:anywhere}
.news-inner .story-chip.is-tag{background:#f3f4f6;color:#374151}
.news-inner .story-chip.is-topic{border:1px solid #f1b9bc;color:#b5121b}
.news-inner .story-chip:hover,.news-inner .story-chip:focus-visible{background:var(--red);border-color:var(--red);color:#fff}
.news-inner .story-chip:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

/* Location page (client: "look & feeling same as the home page"): the homepage's near-white page, white module cards
   (8px radius, hairline border, soft shadow), compact heading and district chips, and the compact story cards shared
   with Related News in a naturally sized grid (≈4 across at 1440). The sidebar column collapses when it has nothing. */
.news-inner:has(.is-location-page){background:#f6f7f9}
.news-inner .is-location-page .category-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 14px;padding:0;border:0}
.news-inner .is-location-page .category-heading::after{content:none}
.news-inner .is-location-page .category-heading h1{margin:0;font-size:calc(26px * var(--reading-scale));line-height:1.3}
.news-inner .is-location-page .category-heading p{flex-basis:100%;margin:0}
.news-inner .is-location-page .category-heading .category-listing-count{position:static;flex-basis:auto;order:1;padding:2px 10px;border-radius:999px;background:#fdeeee;color:var(--red);font:700 12px/1.6 'Noto Sans Devanagari',system-ui,sans-serif}
.news-inner .is-location-page .child-location-rail{margin:0 0 14px;padding:10px 12px;border:1px solid #eceef1;border-radius:8px;background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.06)}
.news-inner .is-location-page .child-location-rail .child-locations a{border-radius:6px;background:#fff;font-size:13px}
.news-inner .is-location-page .listing-layout{gap:16px}
.news-inner .is-location-page .listing-layout:not(:has(.news-sidebar :is(.panel,.sidebar-ad:not([hidden]),.homepage-ad))){grid-template-columns:minmax(0,1fr)}
.news-inner .is-location-page .listing-layout:not(:has(.news-sidebar :is(.panel,.sidebar-ad:not([hidden]),.homepage-ad)))>.news-sidebar{display:none}
.news-inner .location-stories,.news-inner .is-location-page #app>.category-article-grid{padding:14px 16px;border:1px solid #eceef1;border-radius:8px;background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.06)}
.news-inner .location-stories .section-head{margin:0 0 12px}
.news-inner .location-stories .section-head h2{margin:0;font-size:18px;font-weight:800;color:#17212c}
.news-inner .location-stories .category-article-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:0}
/* Server first paint: the same compact grid (the inline 16:9 image style is kept; summaries hidden). */
.news-inner .is-location-page #app>.category-article-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:0}
.news-inner .is-location-page #app>.category-article-grid>.category-article-card p{display:none}
.news-inner .is-location-page #app>.category-article-grid>.category-article-card h3{font-size:15px;line-height:1.45;margin:0 0 4px}
.news-inner .is-location-page #app>.category-article-grid img{margin-bottom:8px!important;border-radius:6px!important}
.news-inner .is-location-page .news-empty,.news-inner .is-location-page .category-empty-state{margin:0;padding:32px 16px;border:1px solid #eceef1;border-radius:8px;background:#fff;color:#5f6b78;text-align:center}
.news-inner .is-location-page .category-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin:14px 0 0;font-size:13px}
.news-inner .is-location-page .category-pagination a{padding:6px 12px;border:1px solid #e1e5e9;border-radius:6px;background:#fff;color:#17212c;font-weight:700}
.news-inner .is-location-page .category-pagination a:hover{border-color:var(--red);color:var(--red)}
@media(max-width:760px){
  .news-inner .is-location-page .category-heading h1{font-size:calc(22px * var(--reading-scale))}
  .news-inner .location-stories,.news-inner .is-location-page #app>.category-article-grid{padding:12px}
  .news-inner .is-location-page #app>.category-article-grid{grid-template-columns:minmax(0,1fr)}
}

/* Category/subcategory rail: reused on category first paint, article pages, and location-like chip rows. */
.news-inner .subcategory-rail{display:flex;align-items:center;gap:8px;width:min(100% - 2 * var(--shell-gutter),var(--shell));margin:10px auto 0;padding:10px 0;border-block:1px solid var(--line)}
.news-inner .subcategory-rail-label{flex:none;color:var(--red);font-size:13px;font-weight:800;line-height:1.4}
.news-inner .subcategory-list{display:flex;flex:1;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.news-inner .subcategory-list::-webkit-scrollbar{display:none}
.news-inner .subcategory-list a{flex:none;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--ink);font-size:13px;font-weight:700;line-height:1.4;white-space:nowrap}
.news-inner .subcategory-list a:hover,.news-inner .subcategory-list a:focus-visible{border-color:var(--red);color:var(--red)}
.news-inner .subcategory-list a.is-active{border-color:var(--red);background:var(--red);color:#fff}
.news-inner .subcategory-rail .rail-btn{display:grid;flex:none;place-items:center;width:28px;height:28px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--card-bg);color:var(--ink);font-size:13px}
.news-inner .subcategory-rail .rail-btn:hover:not(:disabled),.news-inner .subcategory-rail .rail-btn:focus-visible{border-color:var(--red);color:var(--red)}
.news-inner .subcategory-rail .rail-btn:disabled{opacity:.35;cursor:default}
@media(max-width:760px){.news-inner .subcategory-rail{width:100%;margin-top:8px;padding-inline:var(--shell-gutter)}.news-inner .subcategory-rail .rail-btn{display:none}}

/* Dark mode for article/listing inner pages. The site-wide toggle already sets html[data-theme]; these rules remove
   fixed light surfaces from article detail, related news, sidebar cards, comments/forms and rails. */
html[data-theme="dark"] .news-inner{color:var(--ink);background:var(--bg)}
html[data-theme="dark"] .news-inner :is(.category-heading,.news-section-heading,.story-byline,.story-topics,.category-pagination,.related-news>.news-section-heading){border-color:var(--line)}
html[data-theme="dark"] .news-inner :is(.category-heading p,.category-listing-count,.category-article-card p,.story-deck,.story-byline time,.story-figure-caption,.news-section-heading span,.panel p,.media-card p,.media-card figcaption){color:var(--muted)}
html[data-theme="dark"] .news-inner :is(.category-article-card h3 a,.public-story h1,.article-body,.article-body h2,.article-body h3,.article-body h4,.news-sidebar h2,.location-stories .section-head h2){color:var(--ink)}
html[data-theme="dark"] .news-inner :is(.panel,.news-sidebar .panel,.article-rail .panel,.sidebar-ad,.related-news .category-article-card,.location-stories .category-article-card,.is-location-page .category-empty-state,.location-stories,.is-location-page #app>.category-article-grid,.is-location-page .child-location-rail,.media-card,.paper-card,.platform-form,.control-bar,.news-empty,.story-notice){background:var(--card-bg);border-color:var(--line);box-shadow:none}
html[data-theme="dark"] .news-inner :is(.news-feed .category-article-card,.news-sidebar li,.news-lead,.news-secondary,.category-article-grid .category-article-card){border-color:var(--line)}
html[data-theme="dark"] .news-inner :is(.news-card-image,.related-news .news-card-image,.location-stories .news-card-image){background:var(--soft)}
html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card h3 a{color:var(--ink)}
html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card:hover,html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card:focus-within{border-color:#46556a;box-shadow:none}
html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card:focus-within{outline:2px solid var(--red);outline-offset:2px}
html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card:hover h3 a,html[data-theme="dark"] .news-inner :is(.related-news,.location-stories) .category-article-card:focus-within h3 a{color:var(--red)}
html[data-theme="dark"] .news-inner :is(.category-pagination a,.platform-links a,.platform-links button,.article-tools a,.article-tools button,.story-topics a,.subcategory-list a,.is-location-page .category-pagination a,.is-location-page .child-location-rail .child-locations a){background:var(--soft);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .news-inner :is(.category-pagination a,.platform-links a,.platform-links button,.article-tools a,.article-tools button,.story-topics a,.subcategory-list a):hover{border-color:var(--red);color:var(--red-text)}
/* Taxonomy chips: one hover/focus treatment in both themes (solid red, white text) - never red text on a red fill. */
html[data-theme="dark"] .news-inner .story-chip.is-tag{background:var(--soft);border:1px solid var(--line);color:var(--ink)}
html[data-theme="dark"] .news-inner .story-chip.is-topic{background:rgba(213,42,49,.12);border-color:rgba(255,123,131,.45);color:var(--red-text)}
html[data-theme="dark"] .news-inner :is(.story-taxonomy-label,.story-kicker){color:var(--red-text)}
html[data-theme="dark"] .news-inner .story-chip:is(:hover,:focus-visible){background:var(--red);border-color:var(--red);color:#fff}
html[data-theme="dark"] .news-inner :is(.subcategory-list a.is-active,.platform-links [aria-pressed=true]){background:var(--red);border-color:var(--red);color:#fff}
html[data-theme="dark"] .news-inner :is(.platform-form input,.platform-form textarea,.platform-form select,.search-panel,.search-form input){background:var(--card-bg);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .news-inner .byline-mark{background:rgba(213,42,49,.18);color:#ff7b83}
html[data-theme="dark"] .news-inner .news-rank{color:#667085}
html[data-theme="dark"] .news-inner .story-figure-meta{border-bottom-color:var(--line)}
html[data-theme="dark"] .news-inner .story-figure-caption{color:var(--muted)}
/* Search page (pages/search.blade.php + Public/Search.vue): compact heading, and a skeleton with the loaded page's
   geometry (filter bar + 16:9 cards) shown until results arrive, so there is no blank area or layout jump. */
.news-inner .search-page{padding-block:18px 48px}
.news-inner .search-heading{margin-bottom:20px}
.news-inner .search-heading p{font-size:14px}
.search-skeleton-bar{height:134px;border:1px solid var(--line);border-radius:8px;background:var(--card-bg)}
.search-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:22px 18px;margin-top:18px}
.search-skeleton-card{display:grid;gap:8px}
.search-skeleton-card span,.search-skeleton-card i{display:block;border-radius:6px;background:linear-gradient(90deg,var(--soft) 0%,var(--line) 50%,var(--soft) 100%);background-size:200% 100%;animation:search-shimmer 1.4s ease-in-out infinite}
.search-skeleton-card span{aspect-ratio:16/9}
.search-skeleton-card i{height:14px}
.search-skeleton-card i:last-child{width:60%}
@keyframes search-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.search-skeleton-card span,.search-skeleton-card i{animation:none}}
@media(max-width:520px){.search-skeleton-bar{height:190px}}
/* Title band (ePaper, legacy inner pages) follows the page surface in dark mode instead of staying white. */
html[data-theme="dark"] .news-inner .page-title-band{background:var(--bg);border-color:var(--line)}
html[data-theme="dark"] .news-inner .page-title-band h1{color:var(--ink)}
html[data-theme="dark"] .news-inner .page-title-band p{color:var(--muted)}
/* Saved article highlights: shared by the server first paint and the mounted Story.vue view. */
.news-inner .article-highlights-box{margin:18px 0 22px;padding:14px 18px;border:1px solid var(--line);border-inline-start:4px solid var(--red);border-radius:8px;background:var(--card-bg);color:var(--ink)}
.news-inner .article-highlights-box h2{margin:0 0 8px;color:var(--red-text);font-size:16px}
.news-inner .article-highlights-box ol{margin:0;padding-inline-start:22px}
.news-inner .article-highlights-box li{margin:6px 0;overflow-wrap:anywhere}
.news-inner .article-highlights-box li::marker{color:var(--red);font-weight:700}
html[data-theme="dark"] .news-inner .article-highlights-box{background:var(--card-bg);border-color:var(--line);color:var(--ink)}
