/* ============================================================
   Shiva's Academy — modern theme (indigo / violet, clean white)
   Loaded last on every page.
   ============================================================ */
:root{
  --brand:#4f46e5; --brand-d:#4338ca; --brand2:#7c3aed; --brand-l:#eef2ff; --brand-l2:#f5f3ff;
  --grad:linear-gradient(135deg,#4f46e5 0%,#7c3aed 60%,#a855f7 100%);
  --ink:#0f172a; --ink2:#334155; --muted:#64748b; --line:#e2e8f0; --paper:#f8fafc;
  --green:#16a34a; --red:#e11d48; --amber:#f59e0b;
  --shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px -12px rgba(15,23,42,.12);
}
body{font-family:"Plus Jakarta Sans",system-ui,sans-serif;background:var(--paper);color:var(--ink)}
h1,h2,h3{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800;letter-spacing:-.025em}
:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}

/* logo: gradient monogram with a filled "answer bubble" */
.logo{background:var(--grad) !important;color:#fff !important;border-radius:12px !important;position:relative;font-family:"Plus Jakarta Sans",sans-serif !important;font-weight:800 !important;box-shadow:0 6px 16px -6px rgba(79,70,229,.6)}
.logo::after{content:"";position:absolute;right:-3px;bottom:-3px;width:12px;height:12px;border-radius:50%;background:var(--amber);border:2.5px solid #fff}

/* buttons */
.btn{border-radius:12px;font-weight:700}
.btn-primary{background:var(--grad);color:#fff;box-shadow:0 8px 20px -10px rgba(79,70,229,.8)}
.btn-primary:hover{background:var(--grad);filter:brightness(1.07)}
.btn-dark{background:var(--ink);color:#fff}
.btn-ghost{border:1.5px solid var(--line);background:#fff;color:var(--ink)}
.btn-ghost:hover{border-color:#c7d2fe;background:var(--brand-l)}
.tab{border:1.5px solid var(--line);border-radius:10px;background:#fff}
.tab.on{background:var(--brand);border-color:var(--brand);color:#fff}
.linkbtn,.more{color:var(--brand)}
.pill{background:var(--brand-l);color:var(--brand-d)}
.pill.ent{background:#fef3c7;color:#92400e}

/* cards & inputs */
.card,.panel,.kpi,.item,.chap,.notice,.topper,.concept,.note-row,.ed-card{border-color:var(--line) !important;border-radius:16px;box-shadow:var(--shadow)}
input,select,textarea{border-radius:12px;border-color:var(--line)}
input:focus,select:focus,textarea:focus{border-color:#a5b4fc;box-shadow:0 0 0 4px #eef2ff}
.kpi b{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800}
.kpi{position:relative}

/* status colours */
.st.c,.status.on,.sp-live{background:#dcfce7;color:#15803d}
.st.w,.status.off{background:#ffe4e6;color:#be123c}

/* modal */
.overlay{background:rgba(15,23,42,.45);backdrop-filter:blur(3px)}
.modal{border-radius:20px;box-shadow:0 30px 60px -20px rgba(15,23,42,.35)}

/* ---------- admin: white sidebar like modern SaaS ---------- */
body.admin{background:#f8fafc}
.side{background:#fff !important;border-right:1px solid var(--line);color:var(--ink2)}
.side-brand{border-bottom:1px solid var(--line) !important}
.side-brand b{color:var(--ink) !important;font-family:"Plus Jakarta Sans",sans-serif !important;font-weight:800}
.side-brand small{color:var(--muted) !important}
.side-h{color:#94a3b8 !important}
.side nav button{color:var(--ink2) !important}
.side nav button:hover{background:var(--paper) !important}
.side nav button.on{background:var(--brand-l) !important;color:var(--brand-d) !important;box-shadow:inset 3px 0 0 var(--brand)}
.topbar{background:rgba(248,250,252,.9) !important}
.side.open{box-shadow:0 0 0 100vmax rgba(15,23,42,.35)}

/* ---------- student app ---------- */
.dash-nav{background:#fff !important;color:var(--ink) !important;border-bottom:1px solid var(--line)}
.dash-nav .brand b{color:var(--ink) !important}
.dash-nav .brand small{color:var(--muted) !important}
.dark-chip{background:var(--brand-l) !important;color:var(--brand-d) !important}
.dark-chip .av{background:var(--grad) !important;color:#fff}
.hero-stu{background:var(--grad) !important;box-shadow:0 20px 40px -20px rgba(79,70,229,.6)}
.lvl-ring{background:conic-gradient(#fde68a var(--p),rgba(255,255,255,.2) 0) !important}
.lvl-ring::after{background:#5b4ee8 !important}
.mini-stats div{background:rgba(255,255,255,.14) !important}
.pred{background:linear-gradient(135deg,#eef2ff,#f5f3ff) !important;border-color:#c7d2fe !important}
.opt.sel{border-color:var(--brand);background:var(--brand-l)}
.opt.sel .k{background:var(--brand);border-color:var(--brand)}
.exam-bar{background:var(--ink)}
.res-hero{background:var(--grad)}
.stat{background:rgba(255,255,255,.14)}
.stat.big{background:#fff;color:var(--ink)}
.stat.big span{color:var(--muted)}
.pal button.cur{outline-color:var(--brand)}
.pal button.a{background:var(--green);border-color:var(--green)}
.exp{border-left-color:var(--brand)}
.bars div{background:linear-gradient(180deg,#818cf8,#4f46e5)}
.progress i{background:var(--grad)}
.qa.P{border-color:#86efac;background:#f0fdf4}

/* login cards */
.t-login{background:radial-gradient(60% 50% at 10% 0%,#e0e7ff 0,transparent 70%),radial-gradient(50% 40% at 100% 100%,#f3e8ff 0,transparent 70%),#f8fafc}

/* ---------- old public-site bits (inner pages, footer) ---------- */
.page-head{background:var(--grad) !important;color:#fff}
.page-head p{color:#e0e7ff !important}
.site-foot{background:#0f172a}
.cta-band{background:var(--grad)}
.cta-band .btn-primary{background:#fff;color:var(--brand-d);box-shadow:none}
.mini-stats span{color:rgba(255,255,255,.82) !important}
.hero-stu p{color:rgba(255,255,255,.85) !important}
.heatmap i.h1{background:#c7d2fe}.heatmap i.h2{background:#818cf8}.heatmap i.h3{background:#6366f1}.heatmap i.h4{background:#4338ca}
.heatmap i{background:#eef2f7}

/* Academy logo: the full logo replaces the small badge + name everywhere */
.logo{width:auto !important;height:56px !important;aspect-ratio:2229/2021;background:#fff url(../icons/logo.jpg) center/contain no-repeat !important;color:transparent !important;font-size:0 !important;border:0 !important;box-shadow:none !important;border-radius:0 !important}
.logo::after{display:none !important}
body.site .nav{height:88px}
body.site .brand .logo{height:76px !important}
body.site .site-foot .logo{height:96px !important;border-radius:12px !important;padding:6px;box-sizing:content-box}
.side-brand .logo{height:84px !important}
.side-brand{flex-direction:column;align-items:flex-start;gap:2px}
img[alt="Shiva's Academy logo"]{display:none !important}
.login-card .brand{flex-direction:column;align-items:center;text-align:center;gap:6px}
.login-card .brand .logo{height:120px !important}
