
@font-face{
  font-family:"VazirmatnLocal";
  src:url("vazirmatn.ttf") format("truetype");
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
}
/* English My Conquer font */
@font-face {
  font-family: "MyConquerEnglish";
  src: url("bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

/* Dari and Pashto My Conquer font */
@font-face {
  font-family: "MyConquerLocal";
  src: url("sultan.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

/* English brand name */
html[lang="en"] [data-i18n="brandName"] {
  font-family: "MyConquerEnglish", Arial, sans-serif;
  font-weight: 700;
}

/* Dari brand name */
html[lang="fa"] [data-i18n="brandName"] {
  font-family: "MyConquerLocal", Tahoma, sans-serif;
  font-weight: 700;
}

/* Pashto brand name */
html[lang="ps"] [data-i18n="brandName"] {
  font-family: "MyConquerLocal", Tahoma, sans-serif;
  font-weight: 700;
}

:root{
  --page-bg:#080f1c;
  --bg:#030712;
  --bg2:#07101f;
  --surface:rgba(8,18,34,.62);
  --surface2:rgba(12,24,44,.82);
  --text:#fff;
  --muted:#b3bfd0;
  --line:rgba(65,166,255,.40);
  --cyan:#20c9ff;
  --blue:#2878ff;
  --purple:#8b45ff;
  --violet:#b05cff;
  --shadow:0 24px 70px rgba(0,0,0,.36);
}
html[data-theme="light"]{
  --page-bg:#f5f5f6;
  --bg:#ffffff;
  --bg2:#edf4ff;
  --surface:rgba(255,255,255,.72);
  --surface2:rgba(255,255,255,.92);
  --text:#0a1530;
  --muted:#4e6078;
  --line:rgba(35,92,190,.26);
  --cyan:#087dc4;
  --blue:#174ed9;
  --purple:#6b2dcc;
  --violet:#7c3aed;
  --shadow:0 18px 50px rgba(36,68,123,.14);
}
*{box-sizing:border-box}
.brand-text small,.footer-slogan{display:none!important}
html{scroll-behavior:smooth}
body{
  margin:0;min-height:100vh;overflow-x:hidden;
  font-family:"VazirmatnLocal",Tahoma,"Segoe UI",Arial,sans-serif;
  color:var(--text);
  background:var(--page-bg);
}

.brand-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
}
.brand-picture {
  display: flex;
  flex-shrink: 0;
}

.brand-picture img {
  width: 52px;
  height: 52px;
  display: block;
  object-fit: contain;
}

.brand-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2;
}

.brand-text strong {
  font-size: 1.1rem;
  font-weight: 800;
}

.brand-text small {
  margin-top: 4px;
  font-size: 0.72rem;
  opacity: 0.7;
}

/* Correct text alignment for every language */
html[dir="rtl"] .brand-text {
  text-align: right;
}

html[dir="ltr"] .brand-text {
  text-align: left;
}

@media (max-width: 480px) {
  .brand-picture img {
    width: 44px;
    height: 44px;
  }

  .brand-text strong {
    font-size: 0.95rem;
  }

  .brand-text small {
    font-size: 0.62rem;
  }
}
.feature-icon {
  width: 72px;
  height: 72px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.feature-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform 0.3s ease, filter 0.3s ease;
}

.feature-card:hover .feature-icon img {
  transform: scale(1.12);
  filter: drop-shadow(0 0 12px rgba(0, 200, 255, 0.7));
}
/* Hide the retired canvas if a cached legacy page still contains it. */
#mathCanvas{display:none!important}
.page-shell{position:relative;z-index:2;width:min(1450px,calc(100% - 28px));min-height:100vh;margin:auto;padding:18px 0;display:grid;grid-template-rows:auto 1fr auto;gap:16px}
.glass{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),var(--surface);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);box-shadow:var(--shadow)}
.site-header{position:relative;z-index:50;min-height:78px;border-radius:24px;padding:12px 18px;display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:22px}
.brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);min-width:0}
.brand-picture img{height:54px;width:auto;max-width:250px;object-fit:contain;display:block}
.brand-fallback{display:none}
.main-nav{display:flex;justify-content:center;gap:38px}
.main-nav a{color:var(--muted);text-decoration:none;font-weight:700;font-size:14px;position:relative;padding:18px 2px}
.main-nav a:hover{color:var(--text)}
.main-nav a.active,.main-nav a[aria-current]{color:var(--cyan)}
.main-nav a.active:after{content:none}
.header-actions{display:flex;gap:12px;align-items:center}
.glass-control{border:1px solid var(--line);background:var(--surface2);color:var(--text);box-shadow:0 0 20px rgba(32,201,255,.10);backdrop-filter:blur(14px)}
/* Account links are shared by every page, including pages without account.css. */
.account-entry{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;padding:0;border-radius:14px;color:var(--text);text-decoration:none}
.account-entry svg,.account-entry-icon{display:block;width:28px;height:28px;flex:none}
.account-entry:hover,.account-entry[aria-current="page"]{border-color:var(--cyan);color:var(--cyan)}
.account-entry:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
[data-account-link]{--account-status:#38d6a3}
html[data-theme="light"] [data-account-link]{--account-status:#087458}
.account-entry[data-account-state="signed-in"]{border-color:var(--account-status)}
.account-status-mark{fill:var(--account-status);stroke:none}
.account-status-check{stroke:var(--bg);stroke-width:2}
.mobile-nav [data-account-link]{display:flex;align-items:center;gap:10px}
.language{position:relative}
.language-button{height:44px;border-radius:14px;padding:0 14px;display:flex;align-items:center;gap:10px;min-width:112px;cursor:pointer}
.language-menu{position:absolute;top:52px;inset-inline-end:0;min-width:142px;padding:8px;border-radius:16px;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transition:.22s ease;z-index:20;box-shadow:0 0 30px rgba(139,69,255,.24),var(--shadow)}
.language.open .language-menu{opacity:1;visibility:visible;transform:none}
.language-menu button{width:100%;border:0;background:transparent;color:var(--text);padding:10px 12px;border-radius:11px;text-align:start;font:inherit;cursor:pointer}
.language-menu button:hover{background:linear-gradient(90deg,rgba(32,201,255,.12),rgba(139,69,255,.16));box-shadow:inset 0 0 18px rgba(139,69,255,.12)}
.theme-toggle{height:44px;width:76px;border-radius:999px;padding:4px;cursor:pointer}
.theme-track{height:100%;display:flex;align-items:center;justify-content:space-between}
.theme-symbol{width:30px;height:30px;display:grid;place-items:center;border-radius:50%}
html[data-theme="dark"] .moon,html[data-theme="light"] .sun{background:linear-gradient(135deg,var(--cyan),var(--purple));color:#fff;box-shadow:0 0 16px rgba(64,116,255,.48)}
.menu-toggle{
  display:none;width:44px;height:44px;padding:0 11px;border-radius:14px;
  cursor:pointer;position:relative;flex-direction:column;align-items:center;
  justify-content:center;gap:5px
}
.menu-toggle span{
  display:block;width:21px;height:2px;border-radius:999px;background:var(--text);
  transition:transform .25s ease,opacity .2s ease
}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{
  display:none;position:absolute;top:calc(100% + 10px);inset-inline-end:0;
  width:min(330px,calc(100vw - 28px));padding:12px;border-radius:20px;
  opacity:0;visibility:hidden;transform:translateY(-10px) scale(.98);
  transform-origin:top right;transition:opacity .22s ease,transform .22s ease,visibility .22s;
  z-index:100
}
html[dir="rtl"] .mobile-menu{transform-origin:top left}
.mobile-menu.open{opacity:1;visibility:visible;transform:none}
.mobile-nav{display:flex;flex-direction:column;gap:4px}
.mobile-nav a{
  color:var(--muted);text-decoration:none;font-weight:700;padding:12px 14px;
  border-radius:12px;transition:color .18s ease,background .18s ease
}
.mobile-nav a:hover,.mobile-nav a.active{
  color:var(--text);
  background:linear-gradient(90deg,rgba(32,201,255,.12),rgba(139,69,255,.16))
}
.mobile-theme-row{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin-top:8px;padding:12px 14px 4px;border-top:1px solid var(--line);
  color:var(--muted);font-weight:700;font-size:14px
}
.page-main{min-height:590px;display:grid;place-items:center;border-radius:28px;overflow:hidden}
.hero{text-align:center;max-width:760px;padding:74px 18px 100px}
.eyebrow{font-size:13px;letter-spacing:.06em;color:var(--cyan);font-weight:700;margin:0 0 18px}
.hero h1,.hero h2{margin:0;font-weight:900;line-height:1.2}
.hero h1{font-size:clamp(40px,5.2vw,72px)}
.hero h2{font-size:clamp(46px,6.1vw,84px);background:linear-gradient(90deg,var(--purple),var(--blue),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:clamp(16px,1.8vw,20px);line-height:2;color:var(--muted);margin:26px 0}
.status-pill{border:1px solid transparent;border-radius:999px;padding:14px 30px;min-width:250px;background:linear-gradient(var(--surface2),var(--surface2)) padding-box,linear-gradient(90deg,var(--cyan),var(--purple)) border-box;color:var(--text);font:inherit;font-weight:700;box-shadow:0 0 28px rgba(74,99,255,.20);cursor:pointer}
.gear{display:inline-block;margin-inline-end:12px;animation:spin 6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.downloads-main{min-height:auto;place-items:stretch;overflow:visible;scroll-margin-top:16px}
.downloads-section{width:100%;padding:54px 30px 64px}
.downloads-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(1180px,100%);margin:0 auto 28px}
.downloads-heading h1{font-size:clamp(30px,4vw,52px);line-height:1.2;margin:4px 0 10px;background:linear-gradient(90deg,var(--blue),var(--purple),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.downloads-heading p{margin:0;color:var(--muted);line-height:1.8}
.downloads-heading .section-kicker{color:var(--cyan);font-weight:800;letter-spacing:.04em}
.pdf-badge{flex:none;width:96px;height:96px;border:1px solid var(--line);border-radius:26px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(32,201,255,.12),rgba(139,69,255,.15));box-shadow:0 18px 50px rgba(75,77,255,.18),inset 0 1px rgba(255,255,255,.13)}
.pdf-badge svg{width:42px;height:42px;fill:var(--cyan);filter:drop-shadow(0 0 10px rgba(32,201,255,.35))}
.pdf-badge span{font:800 12px "Segoe UI",Arial,sans-serif;letter-spacing:.14em;color:var(--muted);margin-top:-15px}
.download-status{min-height:140px;display:flex;align-items:center;justify-content:center;gap:13px;color:var(--muted);font-weight:700}
.download-status[hidden],.downloads-table-wrap[hidden]{display:none}
.download-status.error{color:#ff718a}
.loading-ring{width:22px;height:22px;border:2px solid var(--line);border-top-color:var(--cyan);border-radius:50%;animation:spin .8s linear infinite}
.downloads-table-wrap{width:100%;border-radius:25px;padding:12px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:var(--purple) transparent;scrollbar-width:thin}
.downloads-table{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;min-width:0}
.grade-column{border:1px solid rgba(86,153,255,.20);border-radius:18px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));direction:var(--grade-direction,ltr);min-height:280px}
html[dir="rtl"] .grade-column{--grade-direction:rtl}
.grade-column header{min-height:82px;padding:15px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(32,201,255,.08),rgba(139,69,255,.11))}
.grade-emblem{display:flex;flex-direction:column;align-items:center;gap:5px;flex:0 0 64px}
.grade-cup{display:block;width:64px;height:64px;object-fit:contain}
.grade-number{width:36px;height:22px;display:grid;place-items:center;flex:none;border-radius:5px;background:#000;color:#fff;font-size:12px;line-height:1;font-weight:800;box-shadow:none}
.grade-column header small{display:block;color:var(--muted);font-size:12px;line-height:1.2}
.grade-column h2{margin:3px 0 0;font-size:19px;color:var(--text)}
.grade-column ul{list-style:none;margin:0;padding:9px}
.grade-column li+li{margin-top:7px}
.grade-column li a.book-download{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 9px 9px 11px;border:1px solid transparent;border-radius:13px;color:var(--text);text-decoration:none;background:rgba(255,255,255,.025);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
html[dir="rtl"] .grade-column li a.book-download{padding:9px 11px 9px 9px}
.grade-column li a.book-download:hover,.grade-column li a.book-download:focus-visible{transform:translateY(-2px);border-color:var(--line);background:linear-gradient(90deg,rgba(32,201,255,.09),rgba(139,69,255,.11));box-shadow:0 8px 22px rgba(12,49,112,.14);outline:none}
.book-name{min-width:0;font-weight:700;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.book-meta{direction:ltr;color:var(--muted);font-size:11px;white-space:nowrap}
.download-pdf-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(255,62,91,.11);border:1px solid rgba(255,92,114,.18);transition:transform .18s ease,background .18s ease}
.download-pdf-icon svg{width:20px;height:20px;fill:#ff5673}
.grade-column li a.book-download:hover .download-pdf-icon{transform:scale(1.08);background:rgba(255,62,91,.18)}
.grade-empty{margin:8px;padding:18px 10px;border:1px dashed var(--line);border-radius:13px;color:var(--muted);font-size:13px;line-height:1.7;text-align:center}
.download-noscript{color:var(--muted);text-align:center}
.about-hero{width:min(980px,94%);padding:42px 0 62px;text-align:center}
.section-kicker{color:var(--muted);font-size:13px;margin-bottom:8px}
.about-hero>h1{font-size:clamp(34px,4.8vw,58px);margin:0;background:linear-gradient(90deg,var(--blue),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.section-subtitle{color:var(--blue);font-weight:700;margin:8px 0 22px}
.about-card{border-radius:22px;padding:24px 28px;text-align:start;line-height:2.05}
.about-card p{margin:0 0 14px}.about-card p:last-child{margin-bottom:0}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.feature-card{border-radius:20px;padding:20px 16px}
.feature-icon{font-size:32px;color:var(--blue);text-shadow:0 0 14px rgba(36,104,255,.35)}
.feature-card h2{font-size:18px;margin:8px 0 6px}
.feature-card p{margin:0;color:var(--muted);font-size:14px}
.footer{min-height:66px;border-radius:22px;padding:10px 18px;display:grid;grid-template-columns:1.2fr auto 1fr auto;align-items:center;gap:18px}
.footer-slogan,.footer-copy,.footer-location{font-size:12px;color:var(--muted)}
.socials{display:flex;gap:10px;align-items:center}
.social{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.15);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;background:rgba(255,255,255,.03);position:relative}
.social svg{width:18px;height:18px;fill:var(--social-icon,#fff);transition:transform .18s ease}
html[data-theme="light"] .social svg{fill:var(--social-icon,#0d1a3a)}
.social:hover{transform:translateY(-3px) scale(1.16)}
.social:hover svg{transform:scale(1.08)}
.social:active{transform:scale(.90);filter:brightness(1.35)}
.social.telegram{--social-icon:#229ed9;--social-glow:34,158,217;box-shadow:0 0 14px rgba(var(--social-glow),.38)}
.social.instagram{box-shadow:0 0 14px rgba(139,69,255,.48)}
.social.youtube{--social-icon:#ff0000;--social-glow:255,0,0;box-shadow:0 0 14px rgba(var(--social-glow),.40)}
.social.whatsapp{--social-icon:#25d366;--social-glow:37,211,102}
.social.linkedin{box-shadow:0 0 14px rgba(0,135,255,.40)}
.social::after{content:"";position:absolute;inset:-3px;border-radius:50%;opacity:0;transform:scale(.7);border:1px solid var(--social-icon,var(--cyan))}
.social:active::after{animation:ripple .45s ease}
@keyframes ripple{0%{opacity:.8;transform:scale(.8)}100%{opacity:0;transform:scale(1.45)}}
@media (max-width:1000px){
  .site-header{grid-template-columns:minmax(0,1fr) auto}.main-nav{display:none}
  .desktop-theme-toggle{display:none}
  .account-entry{display:none}
  .menu-toggle{display:flex}
  .mobile-menu{display:block}
  .footer{grid-template-columns:1fr auto;justify-items:center;text-align:center}.footer-slogan,.footer-location{display:none}
}
@media (max-width:700px){
  .page-shell{width:min(100% - 14px,1450px);padding:7px 0;gap:10px}
  .site-header{border-radius:18px;min-height:68px;padding:10px 11px}
  .brand-picture img{height:42px;max-width:160px}
  .header-actions{gap:7px}.language-button{min-width:92px;height:40px;padding:0 10px}.theme-toggle{width:66px;height:40px}
  .hero{padding:56px 10px 80px}.page-main{min-height:560px}
  .downloads-main{min-height:auto}.downloads-section{padding:40px 8px 48px}.downloads-heading{align-items:flex-start;margin-bottom:20px;padding:0 7px}.pdf-badge{width:70px;height:70px;border-radius:20px}.pdf-badge svg{width:31px;height:31px}.pdf-badge span{font-size:10px;margin-top:-12px}.downloads-table-wrap{border-radius:19px;padding:8px}
  .feature-grid{grid-template-columns:1fr}.about-card{padding:20px 18px}
  .footer{border-radius:18px;grid-template-columns:1fr;gap:10px;padding:14px}.footer-copy{order:2}
}
@media (max-width:430px){
  .brand-picture img{height:36px;max-width:125px}.language-icon{display:none}.language-button{min-width:78px}
  .hero h1{font-size:36px}.hero h2{font-size:43px}.lead{font-size:14px}.status-pill{min-width:210px}
}


/* ===== Version 3 footer, mixed with Version 4 site ===== */
:root{--footer-purple:var(--purple);--line2:var(--line)}
.mega-footer{
  border-radius:25px;
  padding:24px 30px 16px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.25fr 1fr .9fr 1fr;
  gap:26px;
}
.footer-col{min-width:0}
.footer-col h3{margin:0;font-size:17px}
.title-line{
  width:46px;height:2px;margin:10px 0 18px;
  background:linear-gradient(90deg,var(--cyan),var(--purple));
  border-radius:99px;
  box-shadow:0 0 12px rgba(91,79,255,.28);
}
.footer-col p{margin:5px 0;color:var(--muted);font-size:13px;line-height:1.7}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.footer-logo-img{width:54px;height:42px;object-fit:contain;flex:none}
.footer-brand>div{display:flex;flex-direction:column}
.footer-brand-names{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}
.footer-brand-names strong{font:700 17px/1.25 "MyConquerEnglish",Arial,sans-serif;color:var(--text);direction:ltr}
.footer-brand-names span{font:700 14px/1.35 "MyConquerLocal",Tahoma,sans-serif;color:var(--text)}
.footer-brand small{font-size:9px;margin-top:6px;color:var(--muted);letter-spacing:.04em}
.dot{
  display:inline-block;width:6px;height:6px;margin-inline-end:8px;border-radius:50%;
  background:var(--purple);box-shadow:0 0 9px var(--purple)
}
.contact-link{
  display:block;width:max-content;max-width:100%;margin:8px 0;
  color:var(--text);text-decoration:none;font-size:12px
}
.contact-link:hover{color:var(--purple)}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin:4px 0}
.footer-links a,.text-link{
  color:var(--muted);text-decoration:none;background:none;border:0;padding:0;
  font:500 13px "VazirmatnLocal",Tahoma,"Segoe UI",Arial,sans-serif;cursor:pointer
}
.footer-links a:hover,.text-link:hover{color:var(--purple)}
.social-grid{display:flex;flex-wrap:wrap;gap:9px}
.social-v3{
  width:36px;height:36px;border-radius:10px;
  border:1px solid var(--line);background:rgba(255,255,255,.03)
}
.social-v3:hover,.social-v3:focus-visible{
  border-color:var(--social-icon,var(--purple));
  transform:translateY(-3px) scale(1.13);
  box-shadow:0 0 20px rgba(var(--social-glow,139,69,255),.42)
}
.social-v3:focus-visible,.mega-footer .social.social-v3:focus-visible{outline:2px solid var(--social-icon,var(--purple));outline-offset:3px}
.social-v3:active{transform:scale(.9)}
.social-v3.whatsapp{box-shadow:0 0 14px rgba(37,211,102,.38)}
.social-v3.whatsapp:hover{border-color:#25d366;box-shadow:0 0 20px rgba(37,211,102,.42)}
.app-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.app-badge{display:inline-flex;align-items:center;gap:7px;min-height:43px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.04);color:var(--text);text-align:start;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.app-badge:hover{transform:translateY(-2px);border-color:var(--cyan);box-shadow:0 5px 16px rgba(32,201,255,.18)}
.app-badge svg{width:25px;height:25px;fill:currentColor;flex:none}
.app-badge span{display:flex;flex-direction:column;line-height:1.15}
.app-badge small{font:500 8px/1.2 Arial,sans-serif;color:var(--muted);direction:ltr}
.app-badge b{font:700 12px/1.25 Arial,sans-serif;direction:ltr}
.mc-toast{position:fixed;z-index:10002;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:12px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--text);box-shadow:var(--shadow);transition:opacity .2s ease,transform .2s ease;font-size:14px}
.mc-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.forms-downloads{position:relative;z-index:1;overflow:visible;padding:22px;border-radius:20px}
.forms-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.forms-heading h2{margin:0;font-size:clamp(21px,3vw,30px)}
.forms-heading p{margin:7px 0 0;color:var(--muted);font-size:14px}
.forms-public-badge{padding:6px 10px;border:1px solid rgba(32,201,255,.4);border-radius:999px;color:var(--cyan);font-size:12px;white-space:nowrap}
.forms-filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr));align-items:end;gap:10px;margin:20px 0 14px}
.forms-filters label,.forms-filter-field{display:flex;flex-direction:column;min-width:0;gap:6px;color:var(--muted);font-size:12px;font-weight:600}
.forms-filters input{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02)),var(--surface2);color:var(--text);font:inherit;box-shadow:0 6px 20px rgba(8,14,28,.10),inset 0 1px 0 rgba(255,255,255,.06);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.forms-filters input::placeholder{color:var(--muted);opacity:.9}
.forms-filters input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(32,201,255,.18),0 8px 22px rgba(32,201,255,.12)}
html[data-theme="light"] .forms-filters input{background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(237,244,255,.95)),var(--surface2);box-shadow:0 8px 24px rgba(49,89,173,.08),inset 0 1px 0 rgba(255,255,255,.68)}
.forms-status{color:var(--muted);font-size:13px;margin-bottom:10px}
.forms-list-scroll{max-height:430px;overflow-y:auto;padding-inline-end:4px}
.forms-list{display:grid;gap:8px}
.form-download-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}
.form-file-icon{display:grid;place-items:center;width:38px;height:42px;border-radius:8px;background:rgba(255,86,115,.12);color:#ff5673;font:bold 9px Arial,sans-serif}
.form-file-info{display:flex;flex-direction:column;min-width:0}
.form-file-info strong{overflow-wrap:anywhere;font:600 13px/1.5 'VazirmatnLocal',Tahoma,Arial,sans-serif}
.form-file-info span{color:var(--muted);font-size:12px}
.form-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.form-download-card .site-button{min-height:36px;padding:7px 11px;font-size:12px}
.site-button.secondary-button{background:transparent;border:1px solid var(--line);color:var(--text)}
.site-button.secondary-button:hover{border-color:var(--purple);box-shadow:0 0 0 1px rgba(140,92,255,.16)}
@media(max-width:850px){.forms-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.forms-filters>:first-child{grid-column:1/-1}.form-download-card{grid-template-columns:36px minmax(0,1fr)}.form-actions{grid-column:2;justify-self:start}.form-download-card .site-button{justify-self:start}}
@media(max-width:560px){.forms-downloads{padding:16px}.forms-heading{flex-direction:column}.form-download-card{grid-template-columns:36px minmax(0,1fr)}.form-actions{grid-column:2;justify-self:start}.app-badges{justify-content:flex-start}}
.afghanistan-label{margin-top:17px!important}
.footer-bottom{
  margin-top:25px;padding-top:17px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:20px;align-items:center
}
.footer-bottom p{margin:0;color:var(--muted);font-size:11px}
.footer-slogan{letter-spacing:.02em}
.footer-slogan span{color:var(--purple)}
html[dir="rtl"] .footer-col{text-align:right}
html[dir="ltr"] .footer-col{text-align:left}
html[dir="ltr"] .footer-brand{direction:ltr}
html[dir="rtl"] .footer-brand{direction:rtl}

@media(max-width:1050px){
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .mega-footer{border-radius:18px;padding:23px 18px 16px}
  .footer-grid{grid-template-columns:1fr;gap:27px}
  .footer-bottom{flex-direction:column;text-align:center}
  .footer-brand{justify-content:flex-start}
}


button,
input,
select,
textarea,
option{
  font-family:"VazirmatnLocal",Tahoma,"Segoe UI",Arial,sans-serif;
}
/* Mobile menu — dark mode */
html[data-theme="dark"] .mobile-menu {
  background:
    linear-gradient(
      145deg,
      rgba(5, 14, 30, 0.97),
      rgba(24, 13, 52, 0.96)
    ) !important;

  border: 1px solid rgba(75, 165, 255, 0.35);

  -webkit-backdrop-filter: blur(40px) saturate(140%);
  backdrop-filter: blur(40px) saturate(140%);

  box-shadow:
    0 22px 60px rgba(0, 0, 0, 0.55),
    0 0 30px rgba(90, 70, 255, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);

  overflow: hidden;
}

/* Mobile menu — light mode */
html[data-theme="light"] .mobile-menu {
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.97),
      rgba(237, 244, 255, 0.96)
    ) !important;

  border: 1px solid rgba(40, 110, 210, 0.25);

  -webkit-backdrop-filter: blur(40px) saturate(130%);
  backdrop-filter: blur(40px) saturate(130%);

  box-shadow:
    0 22px 55px rgba(35, 65, 120, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);

  overflow: hidden;
}
.mobile-nav a {
  border: 1px solid transparent;
  transition:
    color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

.mobile-nav a:hover,
.mobile-nav a:focus-visible,
.mobile-nav a.active {
  color: var(--text);

  background:
    linear-gradient(
      90deg,
      rgba(32, 201, 255, 0.12),
      rgba(139, 69, 255, 0.15)
    );

  border-color: rgba(80, 160, 255, 0.18);
  transform: translateX(3px);
}

html[dir="rtl"] .mobile-nav a:hover,
html[dir="rtl"] .mobile-nav a:focus-visible,
html[dir="rtl"] .mobile-nav a.active {
  transform: translateX(-3px);
}

.mobile-theme-row {
  background: rgba(255, 255, 255, 0.025);
  border-radius: 14px;
  padding: 12px 14px;
}
html:not(.i18n-ready) [data-i18n] {
  visibility: hidden;
}


/* Grade rows: contain scrolling within each book list. */
.page-shell{grid-template-columns:minmax(0,1fr)}
.page-shell>*,.downloads-section,.downloads-table-wrap,.grade-column{min-width:0;max-width:100%}
.downloads-table-wrap{overflow:hidden}
.grade-column{min-height:0;direction:inherit}
.grade-column header{padding:16px 20px}
.grade-controls{display:flex;gap:8px;margin-inline-start:auto;flex-shrink:0}
.grade-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--cyan);font-size:24px;cursor:pointer}
.grade-controls button:disabled{opacity:.3;cursor:default}
.grade-controls button:not(:disabled):hover{background:var(--bg2);border-color:var(--cyan)}
.grade-controls button:focus-visible,.book-track:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
html[dir="rtl"] .grade-controls button .ui-icon{transform:scaleX(-1)}
.grade-column .book-track{display:flex;gap:12px;margin:16px;padding:4px 0 12px;overflow-x:auto;min-width:0;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--purple) transparent}
.grade-column .book-track>li{flex:0 0 calc((100% - 24px)/3);min-width:0;margin:0;scroll-snap-align:start}
.grade-column .book-track>li.grade-empty{flex-basis:100%;padding:18px;font-size:14px}
.grade-column li a.book-download{height:100%;min-height:92px;padding:16px;grid-template-columns:minmax(0,1fr) 40px;gap:6px 12px;border-color:var(--line)}
html[dir="rtl"] .grade-column li a.book-download{padding:16px}
.book-name{font-size:16px;grid-column:1;grid-row:1}
.book-meta{font-size:13px;grid-column:1;grid-row:2;justify-self:start}
.download-pdf-icon{grid-column:2;grid-row:1 / span 2;width:40px;height:40px}
@media(max-width:900px){.grade-column .book-track>li{flex-basis:calc((100% - 12px)/2)}}
@media(max-width:560px){
 .grade-column .book-track>li{flex-basis:100%}
 .grade-column header{padding:12px;gap:8px}
 .grade-controls{gap:6px}
 .downloads-heading{gap:12px}
 .downloads-heading>div:first-child{min-width:0}
}


/* Book information and a legible blue PDF document icon. */
.book-card{height:100%;border:1px solid var(--line);border-radius:14px;background:var(--surface2);overflow:hidden}
.grade-column li a.book-download{height:auto;border:0;border-radius:0;background:transparent;align-items:start}
.grade-column li a.book-download:hover,.grade-column li a.book-download:focus-visible{transform:none}
.book-label{color:var(--muted);font-weight:500}
.book-details{margin:0;padding:0 16px;font-size:14px;line-height:1.8}
.book-details>div{display:flex;flex-wrap:wrap;gap:0 6px;margin-bottom:5px}
.book-details dt{color:var(--muted)}
.book-details dd{margin:0;overflow-wrap:anywhere}
.book-publisher{color:var(--cyan);text-decoration:none}
.book-publisher:hover{text-decoration:underline}
.book-note{margin:12px 16px 16px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.download-pdf-icon{position:relative;width:40px;height:48px;border:0;border-radius:0;background:none;color:var(--cyan)}
.download-pdf-icon svg{width:40px;height:48px;fill:none}
.download-pdf-icon>span{position:absolute;top:22px;left:0;width:100%;text-align:center;font:800 10px Arial,sans-serif;line-height:12px;letter-spacing:0;direction:ltr}
.grade-column li a.book-download:hover .download-pdf-icon{background:none}
.pdf-badge{color:var(--cyan)}

/* Automatic count from the PDFs returned for this grade. */
.grade-column header>div:not(.grade-controls){min-width:0}
.grade-column h2{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}
.grade-book-count{font-size:14px;line-height:1.6;font-weight:500;color:var(--muted);white-space:nowrap}


/* Animated light behind each cup, without moving the cup or number. */
.grade-emblem{
  --cup-light:255,170,76;
  position:relative;
  isolation:isolate;
}
.grade-column:nth-child(n+4):nth-child(-n+6) .grade-emblem{--cup-light:50,155,255}
.grade-column:nth-child(n+7):nth-child(-n+9) .grade-emblem{--cup-light:199,130,255}
.grade-column:nth-child(n+10) .grade-emblem{--cup-light:79,221,255}
.grade-emblem::before,.grade-emblem::after{
  content:"";position:absolute;top:32px;left:50%;
  width:94px;height:94px;pointer-events:none;z-index:0;
  border-radius:50%;transform:translate(-50%,-50%);
}
.grade-emblem::before{
  background:repeating-conic-gradient(from 0deg,
    rgba(var(--cup-light),0) 0deg 14deg,
    rgba(var(--cup-light),.72) 19deg,
    rgba(var(--cup-light),0) 25deg 45deg);
  -webkit-mask-image:radial-gradient(circle,#000 12%,rgba(0,0,0,.85) 34%,transparent 71%);
  mask-image:radial-gradient(circle,#000 12%,rgba(0,0,0,.85) 34%,transparent 71%);
  animation:cup-rays-turn 18s linear infinite;
  opacity:.85;
}
.grade-emblem::after{
  width:82px;height:82px;
  background:radial-gradient(circle,rgba(var(--cup-light),.55) 0%,rgba(var(--cup-light),.22) 36%,transparent 70%);
  animation:cup-halo-breathe 3.8s ease-in-out infinite;
}
.grade-emblem .grade-cup,.grade-emblem .grade-number{position:relative;z-index:1}
.grade-column:nth-child(3n+2) .grade-emblem::before{animation-delay:-6s}
.grade-column:nth-child(3n) .grade-emblem::before{animation-delay:-12s}
html[data-theme="light"] .grade-emblem::before{opacity:.7}
html[data-theme="light"] .grade-emblem::after{opacity:.65}
@keyframes cup-rays-turn{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes cup-halo-breathe{
  0%,100%{transform:translate(-50%,-50%) scale(.9);opacity:.55}
  50%{transform:translate(-50%,-50%) scale(1.08);opacity:.9}
}
@media(prefers-reduced-motion:reduce){
  .grade-emblem::before,.grade-emblem::after{animation:none}
}


/* Products mega menu, scoped to preserve the site's existing navigation. */
.site-header{grid-template-columns:minmax(0,1fr) auto auto;gap:18px}
.main-nav{gap:clamp(14px,2vw,28px);align-items:center}
.main-nav>a{white-space:nowrap}
.products-trigger{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--muted);font:700 14px "VazirmatnLocal",Tahoma,Arial,sans-serif;cursor:pointer;padding:18px 2px;white-space:nowrap}
.products-trigger:hover,.products-trigger[aria-expanded="true"]{color:var(--cyan)}
.products-chevron{transition:transform .2s}
.products-trigger[aria-expanded="true"] .products-chevron{transform:rotate(180deg)}
.products-trigger:focus-visible,.products-panel a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:8px}
#desktopProductsSlot{position:static}
.products-panel[hidden]{display:none!important}
.products-panel{position:absolute;inset-inline:0;top:calc(100% + 10px);padding:24px;border-radius:22px;z-index:90;background:var(--surface2);max-height:calc(100dvh - 145px);overflow-y:auto;animation:products-enter .18s ease-out}
.products-grid{display:grid;grid-template-columns:minmax(160px,.9fr) repeat(3,minmax(0,1fr));gap:22px}
.products-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;border-radius:16px;background:linear-gradient(135deg,rgba(32,201,255,.12),rgba(139,69,255,.16));text-align:center}
.products-brand img{width:90px;height:90px;object-fit:contain}
.products-brand strong{font-size:22px}
.products-brand>span{font-size:13px;color:var(--muted)}
.products-column{min-width:0;padding-inline-start:18px;border-inline-start:1px solid var(--line)}
.products-column h3{margin:8px 0 14px;font-size:16px;color:var(--text)}
.products-column ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.products-column a{display:block;padding:10px 12px;color:var(--muted);font-size:14px;line-height:1.6;text-decoration:none;border-radius:10px;overflow-wrap:anywhere}
.products-column a:hover{background:linear-gradient(90deg,rgba(32,201,255,.10),rgba(139,69,255,.12));color:var(--text)}
.products-column a[aria-disabled="true"]{cursor:default}
@keyframes products-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){
 .site-header{grid-template-columns:minmax(0,1fr) auto}
 #desktopProductsSlot{display:none}
 #mobileMenu{max-height:calc(100dvh - 105px);overflow-y:auto!important;overscroll-behavior:contain}
 #mobileMenu .mobile-theme-row{margin:0 0 10px;padding:8px 12px 14px;border-top:0;border-bottom:1px solid var(--line);border-radius:0}
 .mobile-nav .products-trigger{width:100%;padding:12px 14px;justify-content:space-between;text-align:start;font-size:16px;border-radius:12px}
 #mobileProductsSlot .products-panel{position:static;max-height:none;padding:10px 0 0;margin-top:4px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
 .products-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 .products-brand{display:none}
 .products-column{padding:0 8px;border:0}
 .products-column+ .products-column{border-top:1px solid var(--line);padding-top:12px}
 .products-column h3{font-size:14px;color:var(--cyan)}
 .products-column a{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.products-panel{animation:none}.products-chevron{transition:none}}


/* Distribute desktop navigation across the space between brand and controls. */
@media(min-width:1001px){
  .site-header{grid-template-columns:auto minmax(0,1fr) auto}
  .main-nav{width:100%;min-width:0;justify-content:space-evenly;gap:12px}
  .main-nav>a,.main-nav>.products-trigger{justify-content:center;text-align:center}
  #desktopProductsSlot{display:contents}
}

/* One translated grade title, with its count on a separate line. */
.grade-heading h2{display:block;margin:0;font-size:19px;line-height:1.5}
.grade-heading .grade-book-count{display:block;margin:4px 0 0}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.grade-column>header{flex-wrap:wrap}
/* Tactile filter cards retain native checkbox behavior and saved selections. */
.grade-filters{display:flex;align-items:stretch;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:0;margin:0;margin-inline-start:auto;padding:0;border:0}
.grade-filter{display:flex;align-items:center;gap:9px;min-width:0;min-height:48px;padding:10px 13px;cursor:pointer;color:var(--muted);font-size:14px;font-weight:500;line-height:1.6;border:1px solid var(--line);border-radius:14px;background:var(--surface2);box-shadow:0 3px 10px rgba(3,7,18,.06),inset 0 1px 0 rgba(255,255,255,.05);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .14s ease,color .18s ease;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.grade-filter span{min-width:0;overflow-wrap:anywhere}
.grade-filter input{appearance:none;-webkit-appearance:none;display:block;box-sizing:border-box;width:22px;height:22px;margin:0;flex:0 0 22px;border:2px solid var(--muted);border-radius:7px;background:var(--bg2);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}
.grade-filter input:checked{border-color:transparent;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/18px 18px no-repeat,linear-gradient(135deg,var(--blue),var(--purple)) border-box;box-shadow:0 2px 8px rgba(40,120,255,.28)}
.grade-filter:has(input:checked){color:var(--text);background:linear-gradient(120deg,rgba(32,201,255,.12),rgba(139,69,255,.12)),var(--surface2);border-color:var(--blue);box-shadow:0 3px 14px rgba(40,120,255,.12),inset 0 1px 0 rgba(255,255,255,.08)}
.grade-filter:has(input:focus-visible){outline:2px solid var(--cyan);outline-offset:3px}
.grade-filter input:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.grade-filter:active{transform:translateY(1px) scale(.98)}
@media(hover:hover){.grade-filter:hover{color:var(--text);border-color:var(--cyan);box-shadow:0 4px 16px rgba(32,201,255,.12)}}
.grade-column>header .grade-controls{margin-inline-start:4px}
@media(max-width:1100px){
 .grade-column>header .grade-controls{margin-inline-start:auto}
 .grade-filters{order:4;flex:1 0 100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:4px 0 0;padding-top:10px;border-top:1px solid var(--line)}
}
@media(max-width:650px){.grade-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.grade-filter{font-size:13px;padding:10px;gap:8px}}
@media(prefers-reduced-motion:reduce){.grade-filter,.grade-filter input{transition:none}.grade-filter:active{transform:none}}
@media(forced-colors:active){.grade-filter{background:Canvas;box-shadow:none;border-color:ButtonText}.grade-filter:has(input:checked){background:Canvas;color:CanvasText;border-color:Highlight;box-shadow:none}.grade-filter input,.grade-filter input:checked{appearance:auto;-webkit-appearance:auto;background:none;box-shadow:none}.grade-filter:has(input:focus-visible){outline-color:Highlight}}


/* Static book summary; only the explicit footer link downloads the file. */
.book-card{display:flex;flex-direction:column}
.book-summary{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:6px 12px;align-items:start;min-height:92px;padding:16px;background:linear-gradient(90deg,rgba(32,201,255,.09),rgba(139,69,255,.11));box-shadow:0 8px 22px rgba(12,49,112,.14)}
.book-summary+.book-details{padding-top:14px}
.book-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 16px 0;padding:12px 0 16px;border-top:1px solid var(--line);margin-top:auto}
.book-card-footer .book-note{flex:1;min-width:0;margin:0;padding:0;border:0;font-size:14px}
.book-card-footer{flex-wrap:wrap}
.book-card-footer .book-note{flex-basis:100%}
.book-file-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}
.book-view-button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:42px;padding:8px 15px;border:1px solid var(--purple);border-radius:12px;background:rgba(139,69,255,.13);color:var(--text);font:700 14px/1.5 "VazirmatnLocal",Tahoma,Arial,sans-serif;cursor:pointer}
.book-view-button:hover{background:rgba(139,69,255,.23)}
.book-view-button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.book-file-actions .book-download-button{margin-inline-start:0}
.form-actions{flex-wrap:wrap}
.form-actions .form-preview-btn{border-color:var(--purple);background:rgba(139,69,255,.13)}
@property --download-ring-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
.book-download-button{--download-ring-angle:0deg;display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:42px;flex-shrink:0;margin-inline-start:auto;padding:8px 15px;border:2px solid transparent;border-radius:12px;background:linear-gradient(var(--bg2),var(--bg2)) padding-box,conic-gradient(from var(--download-ring-angle),var(--cyan),var(--blue),var(--purple),#ec79e9,var(--cyan)) border-box;color:var(--text);text-decoration:none;font:700 14px/1.5 "VazirmatnLocal",Tahoma,Arial,sans-serif;box-shadow:0 4px 14px rgba(57,108,255,.16);animation:download-ring-turn 4s linear infinite;transition:transform .14s ease,box-shadow .14s ease;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.book-download-button:hover{box-shadow:0 5px 20px rgba(74,110,255,.3)}
.book-download-button:active{transform:translateY(2px) scale(.95);box-shadow:0 1px 5px rgba(57,108,255,.18)}
.book-download-button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
@keyframes download-ring-turn{to{--download-ring-angle:360deg}}
@media(prefers-reduced-motion:reduce){.book-download-button{animation:none;transition:none}}

.grade-heading .grade-total-size{margin:3px 0 0;color:var(--muted);font-size:13px;font-weight:500;line-height:1.6;white-space:nowrap}

/* Native, keyboard-accessible sorting control in the site's glass palette. */
.grade-sort-row{display:flex;justify-content:flex-end;min-width:0;padding:14px 16px 0}
.grade-sort{display:flex;align-items:center;gap:10px;min-width:0;font-size:14px;color:var(--muted)}
.grade-sort-control,.forms-select-control{position:relative;display:block;min-width:0}
/* Language-style sorting menu; preserve the compact control dimensions. */
.grade-sort-button,.forms-select-button{width:225px;min-height:44px;max-width:100%;padding:9px 12px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;font:inherit;text-align:start;cursor:pointer}
.sort-value{min-width:0}
.sort-chevron{display:flex;color:var(--cyan);flex-shrink:0;transition:transform .2s}
.grade-sort-control.open .sort-chevron,.forms-select-control.open .sort-chevron{transform:rotate(180deg)}
.grade-sort-menu,.forms-select-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;width:100%;min-width:210px;padding:8px;border-radius:16px;z-index:30;box-shadow:0 0 30px rgba(139,69,255,.24),var(--shadow)}
.grade-sort-menu[hidden],.forms-select-menu[hidden]{display:none}
.grade-sort-menu button,.forms-select-menu button{display:block;width:100%;border:0;background:transparent;color:var(--text);padding:10px 12px;border-radius:11px;text-align:start;font:inherit;cursor:pointer}
.grade-sort-menu button:hover,.grade-sort-menu button:focus-visible,.grade-sort-menu button[aria-checked="true"],.forms-select-menu button:hover,.forms-select-menu button:focus-visible,.forms-select-menu button[aria-checked="true"]{background:linear-gradient(90deg,rgba(32,201,255,.12),rgba(139,69,255,.16));box-shadow:inset 0 0 18px rgba(139,69,255,.12)}
.grade-sort-button:focus-visible,.grade-sort-menu button:focus-visible,.forms-select-button:focus-visible,.forms-select-menu button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
/* Form filters share book sorting visuals, with room for translated province names. */
.forms-select-control{font-size:14px;font-weight:400;line-height:normal}
.forms-select-control.open{z-index:35}
.forms-select-button{width:100%;min-height:48px}
.forms-select-button .sort-value{overflow-wrap:anywhere}
.forms-select-menu{min-width:100%;max-height:min(320px,50vh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.forms-select-menu button{overflow-wrap:anywhere}
.downloads-table-wrap{overflow:visible}
.grade-column.sort-open{overflow:visible;position:relative;z-index:20}
.grade-column>header{border-radius:17px 17px 0 0}
.ui-icon{display:block;width:24px;height:24px;flex-shrink:0;pointer-events:none}
.language-icon{display:flex;align-items:center;color:var(--cyan)}
.language-icon .ui-icon{width:25px;height:25px}
.chevron,.products-chevron{display:inline-flex;align-items:center}
.chevron{transition:transform .2s}
.language.open .chevron{transform:rotate(180deg)}
.theme-symbol .ui-icon{width:23px;height:23px}
.grade-controls .ui-icon{width:26px;height:26px}
.gear{display:inline-flex;vertical-align:middle;animation:spin 12s linear infinite}
.gear .ui-icon{width:26px;height:26px}
.country-official-name{color:#42d990!important;font-size:13px;line-height:1.8;margin-top:5px!important}
html[data-theme="light"] .country-official-name{color:#147d48!important}
@media(max-width:560px){.grade-sort-row{padding:12px 12px 0}.grade-sort{width:100%}.grade-sort-control{flex:1}.grade-sort-button{width:100%}}
@media(max-width:430px){.language-button{padding:0 8px;gap:5px;min-width:0}.language-icon{display:flex}.language-icon .ui-icon{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.gear{animation:none}.chevron,.sort-chevron{transition:none}}
