/*
Theme Name: Hindi News Portal
Theme URI: https://example.com
Author: Custom
Author URI: https://example.com
Description: एक हिंदी न्यूज़ पोर्टल थीम जिसमें टॉप बार, कैटेगरी मेन्यू और कस्टमाइज़ेबल होमपेज सेक्शन हैं। डैशबोर्ड > एपियरेंस > कस्टमाइज़ से हर सेक्शन के लिए कैटेगरी चुनी जा सकती है।
Version: 1.0
Requires at least: 5.8
Requires PHP: 7.4
Tested up to: 6.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hindi-news
Tags: news, blog, custom-menu, custom-logo, featured-images, translation-ready

Hindi News Portal WordPress Theme
*/

:root{
  --orange: #e8641c;
  --orange-dark: #c94f0f;
  --dark: #1a1a1a;
  --gray-text: #444;
  --light-bg: #f7f7f7;
  --border: #e5e5e5;
}

* { box-sizing: border-box; }

body{
  margin:0;
  font-family: 'Noto Sans Devanagari','Noto Sans',Arial,sans-serif;
  color: var(--dark);
  background:#fff;
}

a{ color: inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
ul{ list-style:none; margin:0; padding:0; }

.container{
  max-width: 1320px;
  margin:0 auto;
  padding:0 16px;
}

/* ===== Top utility bar ===== */
.hn-topbar{
  border-bottom:1px solid var(--border);
  font-size:13px;
}
.hn-topbar .container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:42px;
}
.hn-topbar-left{ display:flex; align-items:center; gap:14px; }
.hn-weather{ display:flex; align-items:center; gap:6px; color:#333; }
.hn-social a{ margin-right:10px; font-size:15px; }
.hn-topbar-right{ display:flex; align-items:center; gap:16px; }
.hn-search-box{ display:flex; align-items:center; border:1px solid var(--border); border-radius:20px; padding:4px 10px; }
.hn-search-box input{ border:none; outline:none; font-size:13px; width:160px; background:transparent; }
.hn-epaper{
  background: var(--orange);
  color:#fff;
  padding:6px 14px;
  border-radius:4px;
  font-weight:600;
  display:flex; align-items:center; gap:6px;
}
.hn-login{ display:flex; align-items:center; gap:4px; color:#333; }

/* ===== Logo row ===== */
.hn-logo-row{ padding: 14px 0; text-align:center; border-bottom:1px solid var(--border); }
.hn-logo-row .site-title{ font-size:38px; font-weight:900; }
.hn-logo-row img.custom-logo{ max-height:70px; margin:0 auto; }
.hn-logo-row .site-description{ color:#777; font-size:13px; }
.hn-logo-row .site-title--logo{ display:inline-block; }
.hn-logo-row .hn-default-logo{ max-height:70px; width:auto; margin:0 auto; display:block; }

/* ===== Category nav ===== */
.hn-nav{
  background:#fff;
  border-bottom:2px solid var(--border);
}
.hn-nav .container{ display:flex; align-items:center; justify-content:space-between; height:52px; }
.hn-nav-menu{ display:flex; align-items:center; gap:26px; overflow-x:auto; }
.hn-nav-menu li a{
  font-weight:600;
  font-size:15px;
  white-space:nowrap;
  padding:6px 0;
  border-bottom:3px solid transparent;
}
.hn-nav-menu li a:hover,
.hn-nav-menu li.current-menu-item a{
  color: var(--orange);
  border-bottom-color: var(--orange);
}
.hn-nav-menu li.hn-original > a{ color: var(--orange); }
.hn-menu-toggle{ display:none; background:none; border:none; font-size:22px; cursor:pointer; }
.hn-city-select{
  border:1px solid var(--orange);
  color: var(--orange);
  padding:6px 12px;
  border-radius:20px;
  font-size:13px;
  display:flex; align-items:center; gap:6px;
  white-space:nowrap;
}

/* ===== Section heading ===== */
.hn-section{ padding:28px 0; border-bottom:8px solid var(--light-bg); }
.hn-section-head{
  display:flex; align-items:baseline; justify-content:space-between;
  margin-bottom:16px;
}
.hn-section-head h2{ font-size:26px; margin:0; font-weight:800; }
.hn-section-head a.more{ color:#777; font-size:14px; font-weight:600; }
.hn-section-tags{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:18px; }
.hn-section-tags a{
  border:1px solid var(--border);
  border-radius:20px;
  padding:6px 14px;
  font-size:13px;
  background:#fff;
}

/* ===== Card grid ===== */
.hn-grid{ display:grid; grid-template-columns: repeat(4,1fr); gap:20px; }
.hn-grid.cols-3{ grid-template-columns: repeat(3,1fr); }
.hn-grid.cols-2{ grid-template-columns: repeat(2,1fr); }
.hn-card{ background:#fff; }
.hn-card .thumb{ position:relative; border-radius:8px; overflow:hidden; aspect-ratio:16/10; background:#eee; }
.hn-card .thumb img{ width:100%; height:100%; object-fit:cover; }
.hn-card .thumb .logo-badge{
  position:absolute; top:8px; right:8px; background:rgba(255,255,255,.9);
  font-size:10px; padding:2px 6px; border-radius:3px; font-weight:700;
}
.hn-card h3{ font-size:15px; line-height:1.4; margin:10px 0 8px; font-weight:700; }
.hn-card .meta{ display:flex; align-items:center; justify-content:space-between; font-size:12px; }
.hn-card .meta .cat{ color: var(--orange); font-weight:700; }
.hn-card .meta .time{ color:#999; }

/* Featured / hero layout (first section like image 2) */
.hn-hero-grid{ display:grid; grid-template-columns: 1.3fr 1fr 1fr; gap:20px; }
.hn-hero-main .thumb{ aspect-ratio: 4/5; }
.hn-hero-main h3{ font-size:20px; }
.hn-hero-list{ display:flex; flex-direction:column; gap:16px; }
.hn-hero-list .hn-card{ display:flex; gap:14px; }
.hn-hero-list .hn-card .thumb{ width:130px; flex:none; aspect-ratio:4/3; }
.hn-hero-list .hn-card .body{ display:flex; flex-direction:column; justify-content:flex-start; }
.hn-hero-list .hn-card h3{ margin-top:0; font-size:14px; }

/* Sidebar */
.hn-content-wrap{ display:grid; grid-template-columns: 2.4fr 1fr; gap:30px; }
.hn-widget{ margin-bottom:30px; border:1px solid var(--border); border-radius:8px; padding:16px; }
.hn-widget h3{ margin-top:0; border-bottom:2px solid var(--orange); padding-bottom:8px; }

/* Single/Archive */
.hn-breadcrumb{ font-size:13px; color:#888; margin:16px 0; }
.hn-single-title{ font-size:30px; font-weight:800; margin:10px 0; }
.hn-single-meta{ color:#888; font-size:13px; margin-bottom:16px; }
.hn-single-content{ font-size:17px; line-height:1.8; }
.hn-single-content img{ border-radius:8px; margin:16px 0; }

/* Footer */
.hn-footer{ background:#1a1a1a; color:#ccc; padding:40px 0 20px; margin-top:20px; }
.hn-footer .container{ display:grid; grid-template-columns: repeat(4,1fr); gap:24px; }
.hn-footer h4{ color:#fff; margin-top:0; }
.hn-footer a{ color:#aaa; display:block; padding:4px 0; font-size:14px; }
.hn-footer-bottom{ text-align:center; padding-top:24px; margin-top:24px; border-top:1px solid #333; color:#777; font-size:13px; }

/* Responsive */
@media (max-width: 1024px){
  .hn-grid{ grid-template-columns: repeat(2,1fr); }
  .hn-hero-grid{ grid-template-columns: 1fr; }
  .hn-content-wrap{ grid-template-columns: 1fr; }
  .hn-footer .container{ grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 640px){
  .hn-topbar-left span.hn-weather-text,
  .hn-search-box{ display:none; }
  .hn-grid{ grid-template-columns: 1fr 1fr; }
  .hn-nav-menu{ display:none; }
  .hn-menu-toggle{ display:block; }
  .hn-nav.open .hn-nav-menu{ display:flex; flex-direction:column; align-items:flex-start; position:absolute; left:0; right:0; top:100%; background:#fff; padding:12px 16px; box-shadow:0 6px 12px rgba(0,0,0,.08); z-index:50; }
}
