/* Astudy final visual repair layer — intentionally small and high-specificity. */
:root{
  --af-bg:#f5f7fb;
  --af-surface:rgba(255,255,255,.88);
  --af-surface-solid:#fff;
  --af-text:#151827;
  --af-muted:#727a8e;
  --af-line:rgba(21,24,39,.09);
  --af-violet:#7567f8;
  --af-violet-2:#5e52df;
  --af-cyan:#35c9d8;
  --af-shadow:0 18px 55px rgba(22,28,45,.075);
}
body{background:radial-gradient(circle at 88% 5%,rgba(117,103,248,.075),transparent 24%),radial-gradient(circle at 10% 92%,rgba(53,201,216,.07),transparent 22%),var(--af-bg);color:var(--af-text)}
body.dark{background:radial-gradient(circle at 88% 5%,rgba(117,103,248,.12),transparent 24%),#080b12;color:#f4f6fb}

/* Brand / logo */
.brand,.auth-brand{align-items:center}
.brand .logo,.auth-brand .logo,.auth-showcase .logo{
  width:46px!important;height:46px!important;min-width:46px!important;
  border-radius:14px!important;
  display:grid!important;place-items:center!important;
  background:linear-gradient(145deg,#111a35,#080d1d)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 12px 30px rgba(3,8,25,.20)!important;
  overflow:hidden!important;
}
.brand-logo-img,.auth-brand .brand-logo-img,.auth-brand-light .brand-logo-img,.auth-mobile-brand .brand-logo-img{
  width:35px!important;height:35px!important;object-fit:contain!important;display:block!important;
  filter:none!important;mix-blend-mode:normal!important;
}
.auth-brand-light .logo{background:rgba(255,255,255,.08)!important}

/* Stable app shell */
.app{position:relative;z-index:1}
.sidebar{background:linear-gradient(180deg,#0b1222 0%,#0e1728 60%,#0a1220 100%)!important;border-color:rgba(255,255,255,.075)!important}
.sidebar .brand{padding-bottom:24px}
.sidebar .brand b{color:#f4f7fb}
.sidebar .nav{color:#a9b4c7!important}
.sidebar .nav.active{color:#fff!important}
.main{min-width:0}
.topbar{background:rgba(255,255,255,.78)!important;border-color:var(--af-line)!important;gap:16px;padding:0 14px!important}
body.dark .topbar{background:rgba(14,18,29,.78)!important}

/* Hero: fully styled, self-contained, and resistant to old .hero rules. */
.ultra-hero{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  min-height:340px!important;padding:42px 44px!important;margin-bottom:16px!important;
  display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr)!important;
  align-items:center!important;gap:24px!important;
  border:1px solid rgba(255,255,255,.09)!important;border-radius:30px!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 78% 45%,rgba(117,103,248,.30),transparent 28%),
    radial-gradient(circle at 100% 0%,rgba(53,201,216,.17),transparent 24%),
    linear-gradient(135deg,#111725 0%,#1a2033 52%,#202744 100%)!important;
  box-shadow:0 28px 80px rgba(21,25,45,.18)!important;
}
.ultra-hero:after{content:"";position:absolute;inset:auto -100px -150px auto;width:360px;height:360px;border-radius:50%;background:rgba(117,103,248,.11);filter:blur(8px);z-index:-1}
.ultra-hero-copy{min-width:0;position:relative;z-index:2}
.hero-kicker{font-weight:700!important;color:#c7ccda!important}
.ultra-hero h2{margin:17px 0 13px!important;font-size:clamp(30px,4.2vw,55px)!important;line-height:1.24!important;letter-spacing:-.045em!important;color:#fff!important}
.ultra-hero h2 strong{color:#aaa2ff!important}
.ultra-hero p{max-width:670px!important;margin:0!important;color:#b8bfd0!important;font-size:13px!important;line-height:2.05!important}
.hero-actions{margin-top:23px!important}
.hero-actions .primary{background:linear-gradient(135deg,#8b80ff,#6758ec)!important;color:#fff!important;box-shadow:0 12px 30px rgba(117,103,248,.28)!important}
.hero-ghost{color:#f0f2f8!important;background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.13)!important}
.hero-micro{color:#8f98ad!important;margin-top:25px!important}
.hero-micro b{color:#f2f4fa!important}
.hero-orbit{position:relative!important;height:260px!important;min-width:270px!important}
.orbit-ring{border-color:rgba(255,255,255,.10)!important}
.orbit-core{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.13)!important}

/* KPI and quick actions */
.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:11px!important;margin-bottom:17px!important}
.quick-actions>button{min-width:0!important;background:var(--af-surface)!important;border:1px solid var(--af-line)!important;color:var(--af-text)!important;backdrop-filter:blur(16px);box-shadow:var(--af-shadow)!important}
body.dark .quick-actions>button{background:rgba(255,255,255,.045)!important;color:#f2f4fa!important;border-color:rgba(255,255,255,.08)!important}
.quick-actions>button [data-icon]{background:rgba(117,103,248,.10)!important;color:var(--af-violet)!important}
.stats{gap:12px!important}
.stat.card{min-width:0;background:var(--af-surface)!important;border-color:var(--af-line)!important;box-shadow:var(--af-shadow)!important}
body.dark .stat.card,.dark .card{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.08)!important;color:#f2f4fa}
.stat strong{color:inherit!important}

/* All generic cards get a consistent surface without overriding special dark views. */
.main>.view.active .card{backdrop-filter:blur(12px)}
.grid2>.card,.advanced-grid>.card,.activity-card{border-color:var(--af-line)!important}
.section-head h3,.page-title h2,.page-head h1{color:inherit}

/* Fix icon containers so SVGs never collapse. */
[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
[data-icon] svg{width:18px;height:18px;display:block}
.hero-actions [data-icon]{width:18px;height:18px;margin-left:5px}

/* Search / profile */
.ultra-search{min-width:0!important}
.ultra-search input{font-size:13px!important}
.profile-pill{white-space:nowrap!important}

/* Footer credit is intentionally subtle and appears once. */
.site-footer{max-width:none!important;margin-top:32px!important;padding:24px 4px 8px!important;opacity:.8}
.site-footer-credit{opacity:.6!important;font-size:9px!important}

/* Prevent interaction layer from ever hiding content. */
.ui-reveal,.ultra-reveal{opacity:1!important;transform:none!important}
html.js-ready .ui-reveal,.html-ready .ui-reveal{opacity:1!important;transform:none!important}

/* Mobile */
@media(max-width:1050px){
  .ultra-hero{grid-template-columns:1fr!important;padding:34px!important}
  .hero-orbit{display:none!important}
  .quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .topbar{padding:0 8px!important}
  .ultra-hero{padding:28px 22px!important;min-height:0!important;border-radius:24px!important}
  .ultra-hero h2{font-size:34px!important}
  .ultra-hero p{font-size:12px!important}
  .hero-actions{flex-wrap:wrap!important}
  .hero-actions button{min-height:46px}
  .hero-micro{gap:14px!important;flex-wrap:wrap!important}
  .quick-actions{grid-template-columns:1fr 1fr!important}
}
@media(max-width:500px){
  .brand .logo{width:42px!important;height:42px!important;min-width:42px!important}
  .brand-logo-img{width:32px!important;height:32px!important}
  .ultra-hero h2{font-size:29px!important}
  .quick-actions{grid-template-columns:1fr!important}
  .hero-actions button{width:100%!important}
  .hero-micro{justify-content:space-between!important}
}

/* ASTUDY HORIZONTAL CARD LAYOUT */
.stats,.quick-actions,.analytics-kpis,.subjects-grid,.mission-grid,.achievement-grid{display:grid!important;grid-auto-flow:row!important;direction:rtl;align-items:stretch}
.stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.analytics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.subjects-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.mission-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.achievement-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.grid2,.advanced-grid,.analytics-grid{display:grid!important;grid-auto-flow:row!important;direction:rtl}
.grid2{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important}
.advanced-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr)!important}
.analytics-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr)!important}
.stats>*,.quick-actions>*,.analytics-kpis>*,.subjects-grid>*,.mission-grid>*,.achievement-grid>*{min-width:0;width:auto;justify-self:stretch;align-self:stretch}
@media(max-width:1050px){.stats,.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.subjects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.grid2,.advanced-grid,.analytics-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:720px){.stats,.quick-actions,.analytics-kpis,.subjects-grid,.mission-grid,.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:500px){.stats,.quick-actions,.analytics-kpis,.subjects-grid,.mission-grid,.achievement-grid{grid-template-columns:1fr!important}}

/* =========================================================
   ASTUDY SIDEBAR — FINAL RIGHT RTL NAVIGATION FIX
   ========================================================= */
:root{--sidebar-w:274px}
.app{min-height:100vh;direction:ltr}
.sidebar{direction:rtl;position:fixed!important;inset-block:0!important;right:0!important;left:auto!important;width:var(--sidebar-w)!important;height:100dvh!important;box-sizing:border-box!important;padding:20px 14px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;z-index:120!important;border-left:1px solid rgba(117,103,248,.12)!important;border-right:0!important;border-radius:0!important}
.sidebar-top{flex:0 0 auto!important;width:100%!important}
.sidebar .brand{height:66px!important;padding:4px 8px 18px!important;display:flex!important;align-items:center!important;gap:12px!important;border-bottom:1px solid var(--ultra-line,rgba(20,25,35,.08))!important;margin-bottom:14px!important}
.sidebar .logo{width:44px!important;height:44px!important;min-width:44px!important;border-radius:14px!important;background:linear-gradient(145deg,#0e1730,#070d20)!important;display:grid!important;place-items:center!important;overflow:hidden!important;border:1px solid rgba(117,103,248,.18)!important;box-shadow:0 12px 28px rgba(10,15,35,.18)!important}
.sidebar .brand-logo-img{width:34px!important;height:34px!important;object-fit:contain!important;filter:none!important}
.sidebar .brand>div:last-child{min-width:0!important;text-align:right!important}
.sidebar .brand b{font-size:19px!important;line-height:1.15!important;display:block!important}
.sidebar .brand small{font-size:9px!important;display:block!important;margin-top:5px!important;color:var(--ultra-muted,#7a8599)!important;white-space:nowrap!important}
.sidebar nav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:2px 2px 96px!important;scrollbar-width:thin!important;scrollbar-color:rgba(117,103,248,.34) transparent!important;display:flex!important;flex-direction:column!important;gap:5px!important}
.sidebar nav::-webkit-scrollbar{width:5px!important}.sidebar nav::-webkit-scrollbar-track{background:transparent!important}.sidebar nav::-webkit-scrollbar-thumb{background:rgba(117,103,248,.30)!important;border-radius:999px!important}.sidebar nav::-webkit-scrollbar-thumb:hover{background:rgba(117,103,248,.55)!important}
.sidebar .nav{position:relative!important;width:100%!important;min-height:45px!important;height:45px!important;flex:0 0 45px!important;box-sizing:border-box!important;margin:0!important;padding:0 13px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;text-align:right!important;direction:rtl!important;white-space:nowrap!important;overflow:hidden!important;border:1px solid transparent!important;border-radius:13px!important;background:transparent!important;color:var(--a-text,#445066)!important;font:inherit!important;font-size:12px!important;line-height:1!important;cursor:pointer!important;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease!important}
.sidebar .nav:before{display:none!important}
.sidebar .nav:hover{transform:translateX(-2px)!important;background:rgba(117,103,248,.065)!important;border-color:rgba(117,103,248,.10)!important;color:var(--a-text,#273047)!important}
.sidebar .nav.active{background:linear-gradient(90deg,rgba(117,103,248,.13),rgba(53,201,216,.055))!important;border-color:rgba(117,103,248,.16)!important;color:var(--a-text,#20283b)!important;box-shadow:inset -3px 0 0 #7567f8,0 8px 24px rgba(30,35,55,.045)!important}
.sidebar .nav [data-icon]{width:19px!important;height:19px!important;min-width:19px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;color:currentColor!important;opacity:.82!important}
.sidebar .nav [data-icon] svg{width:18px!important;height:18px!important;display:block!important}
.sidebar .nav .nav-label{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
.sidebar .side-tip{position:absolute!important;right:14px!important;left:14px!important;bottom:16px!important;box-sizing:border-box!important;margin:0!important;padding:12px 13px!important;border-radius:14px!important;background:rgba(255,255,255,.58)!important;border:1px solid var(--ultra-line,rgba(20,25,35,.08))!important;box-shadow:0 10px 30px rgba(20,25,35,.045)!important;z-index:5!important}
.sidebar .side-tip b{font-size:10px!important}.sidebar .side-tip small{font-size:9px!important;line-height:1.7!important}
.sidebar .mobile-close{display:none!important}
.main{direction:rtl!important;margin-right:var(--sidebar-w)!important;margin-left:0!important;width:calc(100% - var(--sidebar-w))!important;box-sizing:border-box!important;min-width:0!important}

.dark .sidebar{background:linear-gradient(180deg,#0b1020,#0d1424 62%,#09101d)!important;border-left-color:rgba(255,255,255,.07)!important}.dark .sidebar .brand{border-bottom-color:rgba(255,255,255,.07)!important}.dark .sidebar .nav{color:#aab5c7!important}.dark .sidebar .nav:hover{color:#fff!important;background:rgba(117,103,248,.10)!important}.dark .sidebar .nav.active{color:#fff!important;background:linear-gradient(90deg,rgba(117,103,248,.18),rgba(53,201,216,.08))!important}.dark .sidebar .side-tip{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.07)!important}

@media(max-width:1050px) and (min-width:761px){
  :root{--sidebar-w:88px}
  .sidebar{width:var(--sidebar-w)!important;padding:18px 10px!important}
  .sidebar .brand{height:58px!important;padding:2px 0 15px!important;justify-content:center!important}
  .sidebar .brand>div:last-child{display:none!important}
  .sidebar .logo{width:48px!important;height:48px!important}
  .sidebar .brand-logo-img{width:36px!important;height:36px!important}
  .sidebar nav{padding-bottom:20px!important}
  .sidebar .nav{justify-content:center!important;padding:0!important;gap:0!important;border-radius:14px!important}
  .sidebar .nav .nav-label{display:none!important}
  .sidebar .nav [data-icon]{width:21px!important;height:21px!important}
  .sidebar .side-tip{display:none!important}
  .main{margin-right:var(--sidebar-w)!important;width:calc(100% - var(--sidebar-w))!important}
}
@media(max-width:760px){
  .sidebar{right:-292px!important;left:auto!important;width:280px!important;transition:right .28s cubic-bezier(.2,.8,.2,1)!important;box-shadow:-25px 0 80px rgba(8,14,30,.22)!important}
  .nav-open .sidebar{right:0!important}
  .sidebar .mobile-close{display:grid!important;position:absolute!important;left:9px!important;top:9px!important;width:34px!important;height:34px!important;z-index:8!important}
  .sidebar .brand{padding-left:45px!important}
  .sidebar .nav{font-size:12px!important}
  .sidebar .nav .nav-label{display:block!important}
  .sidebar .side-tip{display:block!important}
  .main{margin-right:0!important;width:100%!important}
  .nav-open:after{content:"";position:fixed;inset:0;background:rgba(6,10,20,.48);backdrop-filter:blur(2px);z-index:110!important}
}


/* BLOG NAV VISIBILITY + SIDEBAR POLISH */
.sidebar-top nav { overflow-y:auto; overflow-x:hidden; scrollbar-width:thin; padding:8px 6px 18px; }
.sidebar-top nav::-webkit-scrollbar { width:7px; }
.sidebar-top nav::-webkit-scrollbar-track { background:transparent; }
.sidebar-top nav::-webkit-scrollbar-thumb { border-radius:999px; background:rgba(120,130,160,.28); }
.sidebar-top nav::-webkit-scrollbar-thumb:hover { background:rgba(120,130,160,.45); }
.nav.nav-blog { position:relative; }
.nav.nav-blog .nav-badge { margin-inline-start:auto; font-size:10px; line-height:1; padding:5px 7px; border-radius:999px; font-weight:800; background:linear-gradient(135deg,#6d5dfc,#26c6da); color:#fff; box-shadow:0 5px 16px rgba(79,70,229,.18); }
.nav.nav-blog:hover { transform:translateX(-2px); }
@media (max-width:720px){ .nav.nav-blog .nav-badge{display:none;} }
