/* ============================================
   Present Bengal CMS — Main Stylesheet
   ============================================ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=Source+Sans+3:wght@300;400;600;700&family=Noto+Serif+Bengali:wght@400;600;700&display=swap');

:root{
  --red:#B91C1C;
  --red-dark:#7f1212;
  --red-light:#fee2e2;
  --black:#111;
  --gray-dark:#333;
  --gray:#666;
  --gray-light:#999;
  --border:#e0e0e0;
  --bg:#f5f5f5;
  --white:#fff;
  --ff-head:'Playfair Display',Georgia,serif;
  --ff-body:'Source Sans 3',Arial,sans-serif;
  --ff-bn:'Noto Serif Bengali',serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:var(--ff-body);background:var(--bg);color:var(--black);font-size:15px;line-height:1.6;}
a{color:var(--red);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;height:auto;display:block;}
.container{max-width:1100px;margin:0 auto;padding:0 16px;}

/* ---- BREAKING BAR ---- */
.breaking-bar{background:var(--red);color:#fff;padding:6px 0;font-size:13px;overflow:hidden;}
.breaking-bar .label{background:var(--red-dark);padding:6px 14px;font-weight:700;letter-spacing:1px;font-size:12px;text-transform:uppercase;margin-right:12px;white-space:nowrap;}
.breaking-bar .ticker{display:inline-block;animation:ticker 30s linear infinite;white-space:nowrap;}
@keyframes ticker{0%{transform:translateX(100vw)}100%{transform:translateX(-100%)}}

/* ---- TOPBAR ---- */
.topbar{background:#fff;border-bottom:1px solid var(--border);padding:4px 0;}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gray);}
.topbar-contact a{color:var(--gray);margin-left:14px;}
.topbar-contact a:hover{color:var(--red);}
.lang-switch button{padding:3px 10px;font-size:11px;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:3px;margin-left:4px;font-weight:600;}
.lang-switch button.active{background:var(--red);color:#fff;border-color:var(--red);}

/* ---- MASTHEAD ---- */
.masthead{text-align:center;padding:20px 0 10px;border-bottom:4px double #222;}
.masthead-name{font-family:var(--ff-head);font-size:64px;font-weight:900;color:var(--red);letter-spacing:3px;line-height:1;}
.masthead-name-bn{font-family:var(--ff-bn);font-size:54px;font-weight:700;color:var(--red);line-height:1.2;}
.masthead-tagline{font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--gray);margin:4px 0;}
.masthead-redbar{height:4px;background:var(--red);margin:8px 0 4px;}
.masthead-info{display:flex;justify-content:space-between;font-size:12px;color:var(--gray);padding:4px 0;}

/* ---- NAV ---- */
.main-nav{background:var(--red);}
.main-nav ul{display:flex;list-style:none;overflow-x:auto;}
.main-nav ul li a{display:block;padding:10px 16px;color:#fff;font-size:13px;font-weight:600;letter-spacing:0.5px;white-space:nowrap;transition:background 0.15s;}
.main-nav ul li a:hover{background:var(--red-dark);text-decoration:none;}
.main-nav ul li a.active{background:var(--red-dark);}

/* ---- HOMEPAGE GRID ---- */
.homepage{padding:20px 0;}
.section-head{display:flex;align-items:center;gap:10px;margin:20px 0 14px;}
.section-head h2{font-family:var(--ff-head);font-size:20px;font-weight:700;}
.section-head .line{flex:1;height:2px;background:var(--red);}
.section-head .tag{background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;letter-spacing:1px;text-transform:uppercase;}

/* Featured Grid */
.featured-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:20px;}
.featured-main .article-img{height:320px;object-fit:cover;width:100%;background:#eee;}
.featured-main .article-img-placeholder{height:320px;background:#f0f0f0;display:flex;align-items:center;justify-content:center;color:#bbb;font-size:40px;}
.featured-main h2{font-family:var(--ff-head);font-size:26px;font-weight:900;line-height:1.2;margin:10px 0 6px;}
.featured-main h2 a{color:var(--black);}
.featured-main h2 a:hover{color:var(--red);text-decoration:none;}
.featured-side{display:flex;flex-direction:column;gap:14px;}
.side-article{display:grid;grid-template-columns:90px 1fr;gap:10px;border-bottom:1px solid var(--border);padding-bottom:14px;}
.side-article:last-child{border-bottom:none;}
.side-article .thumb{height:65px;width:90px;object-fit:cover;background:#f0f0f0;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:20px;flex-shrink:0;}
.side-article h4{font-family:var(--ff-head);font-size:14px;font-weight:700;line-height:1.3;}
.side-article h4 a{color:var(--black);}
.side-article h4 a:hover{color:var(--red);text-decoration:none;}
.side-article .meta{font-size:11px;color:var(--gray-light);margin-top:4px;}

/* Category sections */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;}
.cat-article{border-bottom:1px solid var(--border);padding-bottom:14px;}
.cat-article .thumb{height:140px;object-fit:cover;width:100%;background:#f0f0f0;margin-bottom:8px;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:28px;}
.cat-article h3{font-family:var(--ff-head);font-size:16px;font-weight:700;line-height:1.3;margin-bottom:5px;}
.cat-article h3 a{color:var(--black);}
.cat-article h3 a:hover{color:var(--red);text-decoration:none;}
.cat-article p{font-size:13px;color:var(--gray);line-height:1.5;}
.cat-article .meta{font-size:11px;color:var(--gray-light);margin-top:5px;}

/* ---- ARTICLE PAGE ---- */
.article-page{padding:24px 0;}
.article-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;}
.article-main .cat-badge{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px;}
.article-main h1{font-family:var(--ff-head);font-size:34px;font-weight:900;line-height:1.2;margin-bottom:8px;}
.article-main h1.bn{font-family:var(--ff-bn);font-size:30px;}
.article-main .deck{font-size:17px;color:var(--gray-dark);font-style:italic;margin-bottom:10px;line-height:1.5;}
.article-meta{display:flex;gap:16px;font-size:12px;color:var(--gray-light);padding:10px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:16px;}
.article-meta span{display:flex;align-items:center;gap:4px;}
.article-body{font-size:16px;line-height:1.8;color:var(--gray-dark);}
.article-body.bn{font-family:var(--ff-bn);font-size:16px;line-height:2;}
.article-body p{margin-bottom:14px;}
.article-hero{width:100%;max-height:420px;object-fit:cover;margin-bottom:16px;}
.lang-toggle-btn{display:inline-block;padding:5px 14px;border:1.5px solid var(--red);border-radius:4px;font-size:13px;color:var(--red);cursor:pointer;background:#fff;font-weight:600;margin-bottom:12px;}
.lang-toggle-btn:hover{background:var(--red);color:#fff;}

/* Sidebar */
.sidebar .widget{background:#fff;border:1px solid var(--border);padding:14px;margin-bottom:16px;}
.sidebar .widget h4{font-family:var(--ff-head);font-size:15px;font-weight:700;border-bottom:2px solid var(--red);padding-bottom:6px;margin-bottom:12px;}
.sidebar .widget ul{list-style:none;}
.sidebar .widget ul li{border-bottom:1px solid var(--border);padding:8px 0;font-size:13px;line-height:1.4;}
.sidebar .widget ul li:last-child{border-bottom:none;}
.sidebar .widget ul li a{color:var(--black);font-weight:600;}
.sidebar .widget ul li a:hover{color:var(--red);}

/* ---- CARD ---- */
.card{background:#fff;border:1px solid var(--border);padding:16px;}

/* ---- BADGE ---- */
.badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;letter-spacing:0.8px;text-transform:uppercase;border-radius:2px;}
.badge-red{background:var(--red);color:#fff;}
.badge-green{background:#15803d;color:#fff;}
.badge-gray{background:#e5e5e5;color:#555;}

/* ---- META ---- */
.meta-info{font-size:12px;color:var(--gray-light);}

/* ---- FOOTER ---- */
.site-footer{background:#1a1a1a;color:#ccc;padding:30px 0 16px;margin-top:30px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;margin-bottom:20px;}
.footer-about .fn{font-family:var(--ff-head);font-size:24px;color:#fff;font-weight:900;margin-bottom:6px;}
.footer-about p{font-size:13px;line-height:1.7;color:#aaa;}
.site-footer h5{color:#fff;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid #333;padding-bottom:8px;margin-bottom:10px;}
.site-footer ul{list-style:none;}
.site-footer ul li{font-size:13px;padding:4px 0;}
.site-footer ul li a{color:#aaa;}
.site-footer ul li a:hover{color:var(--red);}
.footer-bottom{border-top:1px solid #333;padding-top:14px;display:flex;justify-content:space-between;font-size:12px;color:#666;}
.footer-bottom a{color:#888;margin-left:12px;}

/* ---- ADMIN BUTTON ---- */
.admin-link{position:fixed;bottom:16px;right:16px;background:var(--red);color:#fff;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,0.3);z-index:999;}
.admin-link:hover{background:var(--red-dark);text-decoration:none;color:#fff;}

/* ---- RESPONSIVE ---- */
@media(max-width:768px){
  .masthead-name{font-size:36px;}
  .featured-grid{grid-template-columns:1fr;}
  .cat-grid{grid-template-columns:1fr 1fr;}
  .article-layout{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .main-nav ul li a{padding:8px 12px;font-size:12px;}
}
@media(max-width:480px){
  .cat-grid{grid-template-columns:1fr;}
  .masthead-name{font-size:28px;}
}
