/*
Theme Name: PrepUpdate
Theme URI: https://prepupdate.in
Author: PrepUpdate Team
Description: PrepUpdate - India's #1 Sarkari Job Portal Theme. SEO-ready (meta tags, Open Graph, JSON-LD schema) with built-in Google AdSense support and drag & drop widgets.
Version: 3.0.0
License: GNU General Public License v2 or later
Text Domain: prepupdate
Tags: news, education, government, jobs, sarkari
*/

*{margin:0;padding:0;box-sizing:border-box}
:root{
  --orange:#e65c00;--orange-dark:#b84700;--orange-light:#fff3e0;
  --green:#1a7a3a;--green-light:#e8f5e9;
  --blue:#1565c0;--blue-light:#e3f2fd;
  --red:#c62828;--red-light:#ffebee;
  --purple:#6a1b9a;--purple-light:#f3e5f5;
  --teal:#00695c;--teal-light:#e0f2f1;
  --text:#1a1a1a;--text2:#444;--text3:#666;
  --border:#ddd;--bg:#f5f5f5;--white:#fff;
  --header-bg:#1a237e;--header2:#283593;
  --nav-bg:#e65c00;
}
body{font-family:'Noto Sans','Noto Sans Devanagari',Arial,sans-serif;background:var(--bg);color:var(--text);font-size:13px;line-height:1.5}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--orange);text-decoration:underline}
img{max-width:100%;height:auto}
ul{list-style:none}

#topbar{background:#111;color:#ccc;font-size:11px;padding:3px 0}
#topbar .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;justify-content:space-between;align-items:center}
#topbar .ticker{flex:1;overflow:hidden;white-space:nowrap}
#topbar .ticker span{display:inline-block;animation:scroll 35s linear infinite}
@keyframes scroll{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}
#topbar .links a{color:#aaa;margin-left:12px;font-size:11px}
#topbar .links a:hover{color:var(--orange)}

#masthead{background:linear-gradient(135deg,var(--header-bg) 0%,var(--header2) 100%);padding:10px 0}
#masthead .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;align-items:center;justify-content:space-between}
.logo-block{display:flex;align-items:center;gap:12px}
.logo-icon{width:52px;height:52px;background:var(--orange);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;flex-shrink:0}
.logo-text .name{font-size:24px;font-weight:700;color:#fff;letter-spacing:0.5px}
.logo-text .tagline{font-size:11px;color:#b3c5f0}
.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.header-search{display:flex}
.header-search input{padding:7px 12px;border:none;border-radius:4px 0 0 4px;font-size:12px;width:220px;outline:none}
.header-search button{background:var(--orange);color:#fff;border:none;padding:7px 14px;border-radius:0 4px 4px 0;cursor:pointer;font-size:12px;font-weight:600}
.header-links{display:flex;gap:8px}
.header-links a{background:rgba(255,255,255,0.12);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;border:1px solid rgba(255,255,255,0.2)}
.header-links a:hover{background:var(--orange);text-decoration:none}

#main-nav{background:var(--nav-bg);box-shadow:0 2px 4px rgba(0,0,0,0.2)}
#main-nav .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;flex-wrap:wrap}
#main-nav a{color:#fff;padding:9px 13px;display:block;font-size:12.5px;font-weight:600;border-right:1px solid rgba(255,255,255,0.15)}
#main-nav a:hover{background:rgba(0,0,0,0.2);text-decoration:none}
.nav-badge{background:#fff;color:var(--red);font-size:9px;padding:1px 4px;border-radius:2px;margin-left:3px;vertical-align:middle;font-weight:700}

#subnav{background:#fff;border-bottom:2px solid var(--orange);padding:5px 0}
#subnav .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;gap:4px;flex-wrap:wrap;align-items:center}
#subnav .label{font-size:11.5px;font-weight:700;color:var(--text3);margin-right:4px}
#subnav a{font-size:11.5px;color:var(--text2);padding:3px 8px;border:1px solid var(--border);border-radius:3px;background:#fafafa}
#subnav a:hover{background:var(--orange-light);color:var(--orange);border-color:var(--orange);text-decoration:none}

#stats-bar{background:var(--header-bg);color:#fff;padding:6px 0}
#stats-bar .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex}
.stat-item{flex:1;text-align:center;border-right:1px solid rgba(255,255,255,0.15);padding:4px 0}
.stat-item:last-child{border-right:none}
.stat-num{font-size:16px;font-weight:700;color:#ffd54f}
.stat-lbl{font-size:10px;color:#b3c5f0;margin-top:1px}

#marquee-bar{background:var(--orange-light);border-top:1px solid #ffcc80;border-bottom:1px solid #ffcc80;padding:5px 0;overflow:hidden}
#marquee-bar .inner{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;align-items:center;gap:8px}
.marquee-tag{background:var(--orange);color:#fff;padding:2px 8px;font-size:11px;font-weight:700;border-radius:2px;flex-shrink:0}
.marquee-wrap{overflow:hidden;flex:1}
.marquee-wrap span{display:inline-block;animation:mscroll 40s linear infinite;font-size:12px;color:var(--text2);white-space:nowrap}
@keyframes mscroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

#page-wrap{max-width:1280px;margin:0 auto;padding:10px 12px}
#content-area{display:grid;grid-template-columns:1fr 280px;gap:12px}

.sec-head{color:#fff;padding:6px 12px;display:flex;align-items:center;justify-content:space-between;border-radius:4px 4px 0 0}
.sec-head.orange{background:linear-gradient(90deg,var(--orange),var(--orange-dark))}
.sec-head.blue{background:linear-gradient(90deg,var(--blue),#0d47a1)}
.sec-head.green{background:linear-gradient(90deg,var(--green),#155724)}
.sec-head.red{background:linear-gradient(90deg,var(--red),#8b0000)}
.sec-head.purple{background:linear-gradient(90deg,var(--purple),#4a0072)}
.sec-head.teal{background:linear-gradient(90deg,var(--teal),#004d40)}
.sec-head.navy{background:linear-gradient(90deg,var(--header-bg),var(--header2))}
.sec-head h2{font-size:13px;font-weight:700;display:flex;align-items:center;gap:6px}
.sec-head h2::before{content:'';display:inline-block;width:3px;height:14px;background:rgba(255,255,255,0.7);border-radius:2px}
.sec-head a{color:rgba(255,255,255,0.85);font-size:11px;border:1px solid rgba(255,255,255,0.4);padding:2px 8px;border-radius:2px}
.sec-head a:hover{background:rgba(255,255,255,0.2);text-decoration:none}
.sec-box{background:#fff;border:1px solid var(--border);border-top:none;border-radius:0 0 4px 4px;margin-bottom:12px}

.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border)}
.quick-item{background:#fff;padding:10px 8px;text-align:center;transition:background 0.15s}
.quick-item:hover{background:var(--orange-light)}
.quick-item .qi-icon{font-size:22px;margin-bottom:4px}
.quick-item a{color:var(--text);font-size:11.5px;font-weight:600;display:block}
.quick-item a:hover{color:var(--orange);text-decoration:none}
.quick-item .qi-count{color:var(--text3);font-size:10px;margin-top:2px}

.tbl-list{width:100%;border-collapse:collapse}
.tbl-list tr{border-bottom:1px solid #f0f0f0}
.tbl-list tr:last-child{border-bottom:none}
.tbl-list tr:hover{background:#fafafa}
.tbl-list td{padding:6px 10px;vertical-align:top}
.tbl-list .date{color:var(--text3);font-size:11px;white-space:nowrap;width:80px}
.tbl-list .title a{color:var(--text);font-size:12.5px}
.tbl-list .title a:hover{color:var(--orange)}
.tbl-list .arrow{color:var(--orange);font-size:11px;white-space:nowrap}
.badge{display:inline-block;font-size:10px;padding:1px 6px;border-radius:2px;font-weight:600;margin-left:4px;vertical-align:middle}
.badge-new{background:#e53935;color:#fff}
.badge-hot{background:#ff6f00;color:#fff}
.badge-imp{background:#1565c0;color:#fff}

.board-tabs{display:flex;border-bottom:1px solid var(--border);background:#fff;flex-wrap:wrap}
.board-tab{padding:7px 14px;cursor:pointer;font-size:12px;color:var(--text3);border-bottom:2px solid transparent;margin-bottom:-1px}
.board-tab.active{color:var(--orange);border-bottom-color:var(--orange);font-weight:600}
.board-tab:hover{color:var(--orange)}
.board-content{display:none}
.board-content.active{display:block}

.highlight-strip{background:var(--red-light);border:1px solid #ffcdd2;border-radius:4px;padding:8px 12px;margin-bottom:10px;display:flex;align-items:center;gap:8px;font-size:12.5px}
.hl-badge{background:var(--red);color:#fff;padding:2px 8px;border-radius:2px;font-size:11px;font-weight:700;flex-shrink:0}
.highlight-strip a{color:var(--red);font-weight:600}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}

.exam-cats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.exam-cat{background:#fff;padding:8px 10px}
.exam-cat-head{font-size:11.5px;font-weight:700;color:var(--header-bg);margin-bottom:4px;border-bottom:1px dashed var(--border);padding-bottom:3px}
.exam-cat a{display:block;font-size:11px;color:var(--text2);padding:2px 0}
.exam-cat a:hover{color:var(--orange);text-decoration:none}

.date-table{width:100%;border-collapse:collapse}
.date-table tr{border-bottom:1px solid #f0f0f0}
.date-table tr:hover{background:#fafafa}
.date-table td{padding:6px 10px;font-size:12px;vertical-align:top}
.date-table .exam-name a{color:var(--text);font-weight:500}
.date-table .exam-name a:hover{color:var(--orange)}
.date-table .dt{color:var(--green);font-weight:600;white-space:nowrap;font-size:11.5px}
.date-table .type{color:var(--text3);font-size:11px}

.ca-list{list-style:none}
.ca-list li{border-bottom:1px solid #f0f0f0;padding:6px 10px}
.ca-list li:last-child{border-bottom:none}
.ca-list li a{color:var(--text);font-size:12.5px;line-height:1.4}
.ca-list li a:hover{color:var(--blue)}
.ca-tag{display:inline-block;font-size:10px;padding:1px 5px;border-radius:2px;margin-right:4px;font-weight:600}
.ca-date{color:var(--text3);font-size:11px;margin-top:2px}

.state-bar-box{background:#fff;border:1px solid var(--border);border-radius:4px;padding:8px 12px;margin-bottom:12px}
.state-bar-head{font-size:12px;font-weight:700;color:var(--text2);margin-bottom:6px}
.state-tags{display:flex;flex-wrap:wrap;gap:4px}
.state-tag{font-size:11px;color:var(--text2);padding:3px 8px;border:1px solid var(--border);border-radius:2px;background:#fafafa}
.state-tag:hover{background:var(--blue-light);color:var(--blue);border-color:var(--blue);text-decoration:none}

.view-all{text-align:center;padding:7px;background:#fafafa;border-top:1px solid #f0f0f0;font-size:12px}
.view-all a{color:var(--orange);font-weight:600}

.sidebar-widget{background:#fff;border:1px solid var(--border);border-radius:4px;margin-bottom:12px;overflow:hidden}
.sidebar-head{background:var(--header-bg);color:#fff;padding:7px 12px;font-size:12.5px;font-weight:700;display:flex;align-items:center;gap:6px}
.sidebar-head::before{content:'';display:inline-block;width:3px;height:12px;background:var(--orange);border-radius:2px}
.sidebar-list li{border-bottom:1px solid #f0f0f0}
.sidebar-list li:last-child{border-bottom:none}
.sidebar-list li a{display:flex;align-items:center;padding:6px 10px;color:var(--text);font-size:12px;gap:6px}
.sidebar-list li a::before{content:'▶';color:var(--orange);font-size:8px;flex-shrink:0}
.sidebar-list li a:hover{background:#fafafa;color:var(--orange);text-decoration:none}
.sidebar-badge{margin-left:auto;font-size:10px;padding:1px 5px;border-radius:2px}

.notif-box{padding:8px 10px}
.notif-item{display:flex;gap:6px;padding:5px 0;border-bottom:1px solid #f5f5f5;align-items:flex-start}
.notif-item:last-child{border-bottom:none}
.notif-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;flex-shrink:0}
.notif-item a{font-size:12px;color:var(--text);line-height:1.4}
.notif-item a:hover{color:var(--orange)}
.notif-date{font-size:10px;color:var(--text3);white-space:nowrap;margin-top:2px}

.ad-box{background:#f9f9f9;border:1px dashed #ccc;border-radius:4px;text-align:center;color:#aaa;font-size:11px;margin-bottom:12px;display:flex;align-items:center;justify-content:center}

.video-grid-wrap{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px}
.video-card{border-radius:4px;overflow:hidden;aspect-ratio:16/9;position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;text-align:center;padding:4px;font-weight:600}
.video-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;background:rgba(230,92,0,0.9);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}

.social-btn{padding:7px 10px;border-radius:4px;font-size:12px;font-weight:600;text-align:center;display:block;color:#fff;margin-bottom:6px}
.social-btn:hover{opacity:0.9;text-decoration:none;color:#fff}

#colophon{background:var(--header-bg);color:#ccc;margin-top:16px}
.footer-top{padding:20px 0;border-bottom:1px solid rgba(255,255,255,0.1)}
.footer-grid{max-width:1280px;margin:0 auto;padding:0 12px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.footer-col h4{color:#fff;font-size:13px;font-weight:700;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,0.15)}
.footer-col p{font-size:12px;color:#999;line-height:1.7;margin-bottom:8px}
.footer-col a{display:block;color:#aaa;font-size:12px;padding:2px 0;line-height:1.6}
.footer-col a:hover{color:var(--orange);text-decoration:none}
.footer-bottom{text-align:center;padding:10px;font-size:11px;color:#888}
.footer-bottom a{color:var(--orange)}

@media(max-width:900px){
  #content-area{grid-template-columns:1fr}
  .sidebar{display:none}
  .quick-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .two-col{grid-template-columns:1fr}
  .header-right{display:none}
}
@media(max-width:600px){
  .quick-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr}
  .exam-cats{grid-template-columns:1fr}
}

/* ===== CLASSIC THEME: BLOCK EDITOR CONTENT STYLING ===== */
/* These make Gutenberg blocks used INSIDE post/page content (drag & drop)
   look correct, without affecting the overall page layout via FSE. */
.entry-content,
.wp-block-post-content {
  font-size: 13.5px;
  line-height: 1.8;
}
.entry-content .wp-block-columns {
  gap: 12px;
}
.entry-content .wp-block-image img {
  border-radius: 4px;
}
.entry-content table {
  width: 100%;
  border-collapse: collapse;
}
.entry-content table td,
.entry-content table th {
  border: 1px solid #ddd;
  padding: 6px 10px;
}

/* ===== AD WIDGET STYLING ===== */
.ad-box-widget { margin-bottom: 12px; }
.ad-banner-full {
  max-width: 1280px;
  margin: 0 auto 10px;
  text-align: center;
}

/* ===== SOCIAL BUTTON (used by default Join Us widget) ===== */
.social-btn{padding:7px 10px;border-radius:4px;font-size:12px;font-weight:600;text-align:center;display:block;color:#fff;margin-bottom:6px}
.social-btn:hover{opacity:0.9;text-decoration:none;color:#fff}

/* ===== SINGLE POST TITLE ===== */
.single-post-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
  color: var(--text);
}
