/*
Theme Name: IIIT Ultra Theme
Theme URI: https://iiitinstitute.com/
Author: TT
Description: Fast magazine/education theme (Jannah-like UX, original code). 2-column desktop, app-like mobile, blocks-based home, ticker, TOC, progress bar, sticky sidebar.
Version: 3.3.0
License: GPLv2 or later
Text Domain: iiit-ultra-theme
*/
:root{
  --u-accent:#1b74e4;
  --u-accent2:#16a34a;
  --u-dark:#0b1220;
  --u-bg:#ffffff;
  --u-text:#0f172a;
  --u-muted:#64748b;
  --u-card:#ffffff;
  --u-border:#e2e8f0;
  --u-shadow:0 12px 30px rgba(2,8,23,.08);
  --u-radius:18px;
  --u-container:1180px;
  --u-logo-h:55px;
  --u-logo-h-m:42px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--u-bg);color:var(--u-text);line-height:1.65}
a{color:inherit;text-decoration:none}
a:hover{color:var(--u-accent)}
img{max-width:100%;height:auto}
.container{max-width:var(--u-container);margin:0 auto;padding:0 16px}
.card{background:var(--u-card);border:1px solid var(--u-border);border-radius:var(--u-radius);overflow:hidden;box-shadow:var(--u-shadow)}
.pad{padding:14px}
.meta{font-size:13px;color:var(--u-muted);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.kicker{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--u-accent)}
.title{margin:6px 0 8px;font-size:26px;line-height:1.18}
.title.sm{font-size:16px}
.thumb{aspect-ratio:16/9;background:#f1f5f9;display:block}
.thumb img{width:100%;height:100%;object-fit:cover}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;border:1px solid var(--u-border);background:#fff}
.btn.primary{background:var(--u-accent);border-color:var(--u-accent);color:#fff}
.btn.soft{background:#eff6ff;border-color:#dbeafe;color:#1d4ed8}
.btn:hover{transform:translateY(-1px)}
/* Topbar + header */
.topbar{background:var(--u-dark);color:#e5e7eb;font-size:13px}
.topbar .container{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:8px 16px}
.topbar a{color:#e5e7eb}
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--u-border)}
.header .row{display:flex;align-items:center;gap:14px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.2px}
.brand img{height:38px;width:auto}
.nav{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.nav a{display:inline-block;padding:9px 10px;border-radius:12px}
.nav a:hover{background:#f1f5f9}
.actions{display:flex;gap:10px;align-items:center}
.burger{display:none}
@media(max-width:980px){.nav{display:none}.burger{display:inline-flex}}
/* Mobile drawer */
.mobile{display:none;position:fixed;inset:0;background:rgba(2,8,23,.55);z-index:2500}
.mobile.open{display:block}
.panel{width:min(380px,92vw);height:100%;background:#fff;padding:14px}
.panel ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.panel a{display:block;padding:10px;border-radius:14px;border:1px solid var(--u-border)}
/* Layout */
.grid{display:grid;grid-template-columns:1.65fr .95fr;gap:20px;padding:18px 0 28px}
.grid.left{grid-template-columns:.95fr 1.65fr}
.grid.full{grid-template-columns:1fr}
@media(max-width:980px){.grid,.grid.left{grid-template-columns:1fr}}
.sidebar .widget{background:var(--u-card);border:1px solid var(--u-border);border-radius:var(--u-radius);padding:14px;box-shadow:var(--u-shadow);margin-bottom:14px}
.widget-title{margin:0 0 10px;font-size:16px;display:flex;gap:8px;align-items:center}
.widget-title:before{content:"";width:10px;height:10px;border-radius:3px;background:var(--u-accent);display:var(--u-wicon, inline-block)}
.sticky{position:sticky;top:92px}
/* Hero */
.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}
@media(max-width:980px){.hero{grid-template-columns:1fr}}
.list{display:grid;gap:12px}
.item{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:center}
@media(max-width:560px){.item{grid-template-columns:1fr}}
.badges{display:flex;gap:8px;flex-wrap:wrap}
.badge{border:1px solid var(--u-border);padding:7px 12px;border-radius:999px;font-size:13px;color:var(--u-muted);background:#fff}
.badge:hover{border-color:var(--u-accent);color:var(--u-accent)}
.section{margin-top:18px}
.section h2{margin:0 0 12px;font-size:18px}
/* Ticker */
.ticker{display:flex;gap:10px;align-items:center;background:var(--u-dark);color:#e5e7eb;border-radius:14px;padding:10px 12px;margin-top:14px;flex-wrap:wrap}
.ticker strong{background:var(--u-accent);color:#fff;border-radius:999px;padding:4px 10px;font-size:12px}
.ticker a{color:#e5e7eb}
/* Single: progress + toc */
.progress{position:fixed;left:0;top:0;height:3px;background:var(--u-accent);width:0;z-index:4000}
.toc{border:1px solid var(--u-border);border-radius:16px;padding:12px;background:#fff}
.toc h3{margin:0 0 8px;font-size:15px}
.toc a{display:block;padding:6px 8px;border-radius:10px;color:var(--u-muted)}
.toc a:hover{background:#f1f5f9;color:var(--u-accent)}
.entry-content h2, .entry-content h3{scroll-margin-top:90px}
.share{display:flex;gap:10px;flex-wrap:wrap}
.share a{border:1px solid var(--u-border);padding:8px 10px;border-radius:12px;font-size:13px;color:var(--u-muted)}
.share a:hover{border-color:var(--u-accent);color:var(--u-accent)}
/* Mobile bottom nav */
.bottomnav{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--u-border);padding:10px 12px;display:none;gap:10px;justify-content:space-around;z-index:2400}
.bottomnav a{font-size:12px;color:var(--u-muted);display:flex;flex-direction:column;align-items:center;gap:6px}
.bottomnav a span{width:10px;height:10px;border-radius:3px;background:#e2e8f0}
.bottomnav a.active{color:var(--u-accent)}
.bottomnav a.active span{background:var(--u-accent)}
@media(max-width:768px){.bottomnav{display:flex}}
/* Footer */
.footer{border-top:1px solid var(--u-border);background:var(--u-dark);color:#e5e7eb;padding:28px 0}
.footer a{color:#e5e7eb}
.footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}
@media(max-width:980px){.footer .cols{grid-template-columns:1fr}}
.footer small{color:#94a3b8}


/* --- Mobile drawer dropdown (built-in) --- */
#uMobile .panel ul{display:block}
#uMobile .panel ul li{position:relative;margin:0 0 8px}
#uMobile .panel ul li > a{display:flex;align-items:center;justify-content:space-between;gap:10px}
#uMobile .panel ul li.menu-item-has-children > a{padding-right:52px}
#uMobile .panel ul li .u-subtoggle{
  position:absolute;right:10px;top:9px;
  width:38px;height:38px;
  border:1px solid var(--u-border);
  background:#fff;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:14px;color:var(--u-muted);
}
#uMobile .panel ul li .u-subtoggle:hover{border-color:var(--u-accent);color:var(--u-accent)}
#uMobile .panel ul li ul.sub-menu{
  margin:8px 0 0 0;
  padding:8px;
  border:1px solid var(--u-border);
  border-radius:14px;
  background:#fff;
}
#uMobile .panel ul li.u-collapsed > ul.sub-menu{display:none}
#uMobile .panel ul li ul.sub-menu li a{border:1px solid var(--u-border);margin-top:8px}



/* Bottom nav with icons */
.bottomnav a{gap:6px}
.bottomnav a svg{display:block}
.bottomnav a span{display:block;font-size:11px;line-height:1}


/* Logo size (Customizer editable) */
.brand img,
.custom-logo{max-height:var(--u-logo-h);width:auto}
@media(max-width:768px){
  .brand img,
  .custom-logo{max-height:var(--u-logo-h-m)}
}
