/* Nerdly · student app (design v3) */
:root{
  --bg:#F4F5F8; --surface:#FFFFFF; --surface-2:#F7F8FA; --surface-3:#F0F1F5; --fg:#17161C; --muted:#5E6270; --border:#E3E5EB; --input:#D5D8E0;
  --primary:#F0B03A; --primary-ink:#7A4F00; --primary-fg:#1A1406; --primary-soft:#FFF4DB; --ring:rgba(240,176,58,.5);
  --ok:#17834B; --ok-bg:#E2F4EA; --bad:#C93C35; --bad-bg:#FBE8E7; --info:#3B6FD8;
  --ink:#17161C; --ink-fg:#FFFFFF; --hero-ink:#1A1406; --glass:rgba(255,255,255,.45); --blob:rgba(255,255,255,.3);
  --shadow:0 1px 2px rgba(23,22,28,.04),0 10px 30px -18px rgba(23,22,28,.25);
  --font:"Nunito","IBM Plex Sans Arabic",ui-sans-serif,system-ui,"Segoe UI",Tahoma,sans-serif;
  --display:"Baloo Bhaijaan 2","IBM Plex Sans Arabic",var(--font); --numf:"Nunito",ui-sans-serif,system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  --r-xl:26px; --r-lg:20px; --r-md:14px; --r-sm:10px; --side:256px; color-scheme:light;
}
[data-theme="dark"]{
  --bg:#111015; --surface:#1B1A20; --surface-2:#202026; --surface-3:#24232A; --fg:#F5F4F7; --muted:#A9A8B2; --border:#2E2D35; --input:#3A3942;
  --primary:#F2B544; --primary-ink:#F6C565; --primary-fg:#1A1406; --primary-soft:#2D2516; --ring:rgba(242,181,68,.45);
  --ok:#54C987; --ok-bg:#183224; --bad:#F27B72; --bad-bg:#3A1F1E; --info:#7FA6FF;
  --ink:#F5F4F7; --ink-fg:#17161C; --glass:rgba(255,255,255,.35);
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 18px 40px -24px rgba(0,0,0,.8); color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,select,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
[hidden]{display:none!important}
a{color:var(--primary-ink)}
h1,h2,h3,h4{margin:0;line-height:1.25}
.muted{color:var(--muted)}
.ltr{direction:ltr}
.ltr-auto{unicode-bidi:plaintext}
.stack{display:flex;flex-direction:column;gap:14px}
.num{font-family:var(--numf);font-variant-numeric:tabular-nums}

/* brand */
.brand{display:flex;align-items:center;gap:10px;padding:2px 8px;background:none;border:0;color:inherit}
.logo{width:38px;height:38px;border-radius:11px;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:22px;line-height:1;flex:none}
.brand b{font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:.2px}

/* shell */
.shell{display:grid;grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh}
.col{min-width:0}
.side{position:sticky;top:0;height:100vh;background:var(--surface);border-inline-end:1px solid var(--border);display:flex;flex-direction:column;padding:22px 16px;gap:16px}
.nav{display:flex;flex-direction:column;gap:2px}
.nav button,.nav-admin{display:flex;align-items:center;gap:12px;border:0;background:none;min-height:44px;padding:0 12px;border-radius:12px;font-weight:600;font-size:14.5px;color:var(--muted);text-align:start;text-decoration:none}
.nav button svg{width:20px;height:20px;flex:none}
.nav button:hover{background:var(--surface-2);color:var(--fg)}
.nav button[aria-current="page"]{background:var(--surface-3);color:var(--fg);font-weight:700}
.nav button[aria-current="page"] svg{color:var(--primary-ink)}
.nav .count{margin-inline-start:auto;font-size:12px;font-weight:800;color:var(--bad);font-variant-numeric:tabular-nums}
.nav-admin{font-size:13px;color:var(--primary-ink);font-weight:800}
.balance{margin-top:auto;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:9px;background:var(--surface-3)}
.bal-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px}
.bal-row b{font-size:15px;font-weight:800;font-family:var(--numf);font-variant-numeric:tabular-nums}
.bal-row span{color:var(--muted)}
.bal-bar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}
.bal-bar i{display:block;height:100%;background:var(--primary);border-radius:999px}
.bal-bar.ink i{background:var(--ink)}
.linkbtn{border:0;background:none;color:var(--primary-ink);font-weight:700;font-size:13.5px;padding:4px 0;text-align:start}
.linkbtn.muted{color:var(--muted)}
.side-foot{display:flex;gap:6px}
.iconbtn{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--fg);flex:none}
.iconbtn.round{border-radius:50%}
.iconbtn svg{width:18px;height:18px}
.side-foot .acct{flex:1;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:0 8px;min-width:0;text-align:start}
.side-foot .acct span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:13px}
.ava{width:30px;height:30px;border-radius:50%;background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;font-weight:800;font-size:14px;flex:none}
.ava.lg{width:56px;height:56px;font-size:22px}
.main{min-width:0;padding:28px clamp(20px,3vw,48px) 60px;max-width:none;width:100%;flex:1} /* زي container-fluid: المحتوى بياخد عرض الشاشة كله بهوامش مرنة */
.mtop,.mnav{display:none}
@media (max-width:900px){
  .shell{grid-template-columns:minmax(0,1fr)}
  .side{display:none}
  .main{padding:8px 16px calc(96px + env(safe-area-inset-bottom,0px))}
  .mtop{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:20;background:var(--bg);padding:12px 16px 8px}
  .mtop .brand{padding:0}.mtop .logo{width:34px;height:34px;font-size:20px;border-radius:10px}.mtop .brand b{font-size:22px}
  .pills{display:flex;gap:6px}
  .pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:var(--surface);border-radius:999px;height:40px;padding:0 12px;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;font-family:"Nunito",var(--font)}
  .pill.round{width:40px;padding:0;justify-content:center}
  .pill svg{width:15px;height:15px;color:var(--muted)}
  .mnav{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--surface);border-top:1px solid var(--border);padding:8px 8px calc(10px + env(safe-area-inset-bottom,0px))}
  .mnav button{border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;min-height:44px;font-size:11.5px;font-weight:600;color:var(--muted);padding:0}
  .mnav button svg{width:22px;height:22px}
  .mnav button[aria-current="page"]{color:var(--fg);font-weight:800}
  .mnav .fab span{width:56px;height:56px;margin-top:-28px;border-radius:18px;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center;box-shadow:0 10px 22px -8px rgba(240,176,58,.8)}
  .mnav .fab svg{width:26px;height:26px}
}
body.focus .side,body.focus .mnav,body.focus .mtop{display:none}
body.focus .shell{grid-template-columns:minmax(0,1fr)}
body.focus .main{max-width:none;margin:0;width:100%;padding:0 clamp(16px,2.5vw,40px) 40px}

/* shared */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}
.btn{border:1px solid var(--border);background:var(--surface);min-height:44px;padding:0 18px;border-radius:var(--r-md);font-weight:700;font-size:14.5px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;text-decoration:none;color:var(--fg)}
.btn:hover:not(:disabled){border-color:var(--muted)}
.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-fg);font-weight:800}
.btn.primary:hover:not(:disabled){filter:brightness(1.04);border-color:var(--primary)}
.btn.dark{background:#17161C;border-color:#17161C;color:#fff;font-weight:800}
.btn.dark:hover:not(:disabled){border-color:#17161C;filter:brightness(1.25)}
.btn.glass{background:var(--glass);border-color:transparent;color:#17161C}
.btn.ghost{background:transparent;border-color:transparent}
.btn.ghost:hover:not(:disabled){background:var(--surface-3)}
.btn.lg{min-height:52px;padding:0 24px;font-size:15.5px;border-radius:16px}
.btn.sm{min-height:36px;padding:0 12px;font-size:13px;border-radius:10px}
.btn.pillbtn{border-radius:999px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn svg{width:17px;height:17px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.page-head h1{font-family:var(--display);font-size:34px;font-weight:800;line-height:1.15}
.page-head p{margin:4px 0 0;color:var(--muted);max-width:70ch}
.sec{margin-top:28px}
.sec-sm{margin-top:16px}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.sec-head h2{font-size:18px;font-weight:700}
.grid{display:grid;gap:14px}
.grid.tight{gap:10px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.gauto{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
@media (max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.g2,.g3{grid-template-columns:minmax(0,1fr)}.page-head h1{font-size:28px}.gauto{grid-template-columns:minmax(0,1fr)}.hide-sm{display:none}}
.split{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start}
.split-main{flex:999 1 480px;min-width:0}
.split-side{flex:1 1 300px;max-width:380px;display:flex;flex-direction:column;gap:14px}
@media (max-width:760px){.split-side{max-width:none}}
.empty{color:var(--muted);font-size:14px;padding:22px;border:1.5px dashed var(--input);border-radius:var(--r-lg);text-align:center;margin:0}
.err{background:var(--bad-bg);color:var(--bad);border-radius:var(--r-md);padding:10px 14px;font-size:14px}
.note{background:var(--primary-soft);color:var(--fg);border-radius:var(--r-md);padding:12px 16px;font-size:14px}
.note.ok{background:var(--ok-bg);color:var(--ok)}
.tag{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--surface-3);color:var(--muted);white-space:nowrap}
.tag.gold{background:var(--primary-soft);color:var(--primary-ink)}
.tag.ok{background:var(--ok-bg);color:var(--ok)}.tag.bad{background:var(--bad-bg);color:var(--bad)}
.meter{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.meter i{display:block;height:100%;border-radius:999px;background:var(--primary)}
.meter.ok i{background:var(--ok)}.meter.bad i{background:var(--bad)}
label.f,div.f{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13.5px}
.inp{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-height:48px;padding:0 14px;font-size:15px;width:100%;min-width:0}
.inp:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}
.inp.sm{min-height:36px;padding:0 10px;font-size:13px;border-radius:10px;width:auto}
.auth .inp,.spec-page .inp{background:var(--surface-3)}
select.inp{padding:0 12px}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.spin{width:20px;height:20px;border-radius:50%;border:3px solid var(--primary-soft);border-top-color:var(--primary);animation:spin 1s linear infinite;flex:none}
@keyframes spin{to{transform:rotate(360deg)}}
.seg{display:inline-flex;background:var(--surface-3);border-radius:14px;padding:4px;gap:4px;align-self:flex-start}
.seg button{border:0;background:transparent;min-height:36px;padding:0 14px;border-radius:10px;font-size:13.5px;font-weight:700;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.seg.big button{min-height:42px;padding:0 18px;font-size:14px}
.seg.big button[aria-pressed="true"]{background:#17161C;color:#fff}
.seg.full{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-self:stretch}
.seg.full button{min-height:40px;white-space:nowrap;padding:0 8px}
.chk{display:flex;align-items:flex-start;gap:10px;font-size:14px;cursor:pointer;font-weight:500}
.chk input,.row-line input[type=checkbox]{width:22px;height:22px;margin:1px 0 0;accent-color:var(--primary);flex:none}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1px solid var(--border);background:transparent;border-radius:999px;min-height:36px;padding:0 14px;font-size:13.5px;font-weight:700}
.chip[aria-pressed="true"]{border-color:#17161C;background:#17161C;color:#fff}
[data-theme="dark"] .chip[aria-pressed="true"],[data-theme="dark"] .seg.big button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.hint{font-size:12.5px;color:var(--muted);font-weight:500}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:90;background:#17161C;color:#fff;padding:12px 18px;border-radius:var(--r-md);font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.3);max-width:90vw}
.toast.err{background:var(--bad);color:#fff}
@media (max-width:900px){.toast{bottom:100px}}
.stepper{display:flex;align-items:center;gap:8px}
.stepper .step{width:48px;height:48px;flex:none;border-radius:14px;border:1px solid var(--border);background:var(--surface);font-size:22px;font-weight:700;line-height:1}
.stepper .inp{text-align:center;font-size:20px;font-weight:800;border:1.5px solid var(--primary);-moz-appearance:textfield}
.stepper .inp::-webkit-inner-spin-button,.stepper .inp::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.stepper .btn{min-height:48px}

/* hero (amber card with Dr. Nerd) */
.hero{position:relative;background:var(--primary);color:var(--hero-ink);border-radius:var(--r-xl);padding:26px 28px;overflow:hidden;min-height:220px;display:flex;align-items:center}
.hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;max-width:min(460px,62%)}
.hero .kicker{font-size:14px;font-weight:700;opacity:.8}
.hero h1{font-family:var(--display);font-weight:800;font-size:34px;line-height:1.15}
.hero h2{font-family:var(--display);font-weight:800;font-size:28px;line-height:1.2}
.hero p{margin:0;font-size:15px;font-weight:500;line-height:1.6}
.hero .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.hero-blob{position:absolute;inset-inline-end:10px;bottom:-70px;width:280px;height:280px;border-radius:50%;background:var(--blob)}
.hero-nerd{position:absolute;inset-inline-end:24px;bottom:-18px;width:250px;height:auto;z-index:1;pointer-events:none}
.hero.slim{min-height:170px}
.hero.slim .hero-nerd{width:190px}.hero.slim .hero-blob{width:220px;height:220px}
@media (max-width:640px){
  .hero{min-height:214px;padding:20px 20px 20px;align-items:flex-start}
  .hero-copy{max-width:58%}
  .hero h1{font-size:30px}.hero h2{font-size:22px}.hero p{font-size:14px}
  .hero-nerd{width:172px;inset-inline-end:-6px;bottom:-14px}
  .hero-blob{width:210px;height:210px;inset-inline-end:-26px;bottom:-40px}
  .hero.slim .hero-nerd{width:120px}
}

/* auth */
.auth{min-height:100vh;display:flex;flex-wrap:wrap;background:var(--surface)}
.auth-form{flex:1 1 480px;display:flex;align-items:center;justify-content:center;padding:40px 24px}
.auth-box{width:min(400px,100%);display:flex;flex-direction:column;gap:16px}
.auth-box .brand{padding:0;margin-bottom:14px}
.auth-box h1{font-family:var(--display);font-size:34px;font-weight:800;line-height:1.15}
.auth-art{flex:1 1 480px;background:var(--primary);color:var(--hero-ink);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:64px 56px;min-height:520px}
.auth-copy{position:relative;z-index:2}
.auth-art h2{font-family:var(--display);font-weight:800;font-size:clamp(30px,3.2vw,44px);line-height:1.15;max-width:460px}
.auth-art p{margin:14px 0 0;font-size:16px;font-weight:500;max-width:420px}
.art-stage{position:absolute;inset:auto 0 0 0;height:440px}
.art-stage .blob{position:absolute;bottom:-140px;left:50%;width:520px;height:520px;margin-left:-260px;border-radius:50%;background:var(--blob)}
.art-stage .nerd{position:absolute;bottom:-10px;left:50%;width:380px;margin-left:-190px}
.art-stage .bubble{position:absolute;bottom:330px;left:50%;margin-left:110px;background:#fff;color:#17161C;border-radius:18px 18px 4px 18px;padding:10px 14px;font-size:14.5px;font-weight:600;box-shadow:0 10px 24px -12px rgba(0,0,0,.35);white-space:nowrap}
.gbtn{min-height:44px;display:flex;justify-content:center}
.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;margin-top:12px}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--border)}
.pw{position:relative;display:block}
.pw .inp{padding-inline-end:50px}
.pw button{position:absolute;inset-inline-end:3px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);width:44px;height:44px;display:grid;place-items:center;border-radius:10px}
.pw button svg{width:20px;height:20px}
.phone{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;direction:ltr}
.phone input.inp{direction:ltr;text-align:left}
@media (max-width:900px){
  .auth{flex-direction:column-reverse;flex-wrap:nowrap;background:var(--primary)}
  .auth-art{flex:none;min-height:300px;height:300px;padding:22px 22px}
  .auth-copy{display:none}
  .art-stage{height:300px}
  .art-stage .blob{width:300px;height:300px;margin-left:-150px;bottom:-60px}
  .art-stage .nerd{width:230px;margin-left:-115px;bottom:-6px}
  .art-stage .bubble{bottom:auto;top:74px;left:auto;right:18px;margin:0;font-size:13px;border-radius:16px 16px 16px 4px}
  .auth-form{flex:1;background:var(--surface);border-radius:28px 28px 0 0;padding:24px 22px 32px;align-items:flex-start;position:relative;z-index:2;margin-top:-6px}
  .auth-box .brand{display:none}
  .auth-box h1{font-size:28px}
}

/* specialty */
.spec-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:var(--bg)}
.spec-card{width:min(920px,100%);background:var(--surface);border:1px solid var(--border);border-radius:32px;padding:34px 38px;display:flex;flex-direction:column;gap:22px}
.spec-head{display:flex;align-items:center;gap:18px}
.spec-head img{width:120px;flex:none}
.spec-head h1{font-family:var(--display);font-weight:800;font-size:34px;line-height:1.15}
.spec-head p{margin:4px 0 0}
.spec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.spec{min-height:160px;border-radius:22px;padding:18px;border:1px solid var(--border);background:transparent;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px;text-align:start}
.spec[aria-checked="true"]{background:var(--primary-soft);border:2px solid var(--primary)}
.spec .ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:#17161C}
.spec .ic svg{width:28px;height:28px}
.spec b{font-size:17px;font-weight:800}
.spec small{font-size:12.5px;color:var(--muted)}
.spec-more{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-end}
.spec-foot{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);padding-top:18px}
.t-med{background:#F6D9E1}.t-dent{background:#D6E6FF}.t-pt{background:#DDF1E4}.t-nurse{background:#FFE6B3}.t-x{background:#EADFFB}
@media (max-width:760px){
  .spec-page{align-items:flex-start;padding:0;background:var(--surface)}
  .spec-card{border:0;border-radius:0;padding:20px 20px 28px;gap:18px}
  .spec-head img{width:86px}.spec-head h1{font-size:26px}
  .spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .spec{min-height:128px;padding:14px}.spec .ic{width:46px;height:46px}
  .spec-foot{border:0;padding:0}.spec-foot .btn.primary{flex:1}
}

/* home */
.home-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px}
.week{padding:22px;display:flex;flex-direction:column;gap:12px}
.week h2{font-size:16px;font-weight:700}
.week .big{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.week .big b{font-family:var(--numf);font-weight:900;font-size:44px;line-height:1}
.week .bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;align-items:end;height:90px}
.week .bars span{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;font-size:11px;color:var(--muted)}
.week .bars i{display:block;width:100%;border-radius:6px;background:var(--surface-3);min-height:4px}
.week .bars i.on{background:var(--primary)}
@media (max-width:1000px){.home-top{grid-template-columns:minmax(0,1fr)}.card.week{display:none}}
.bal-cards{display:none}
@media (max-width:900px){
  .bal-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
  .balc{padding:14px 16px;display:flex;flex-direction:column;align-items:stretch;text-align:start;gap:2px}
  .balc span{font-size:12.5px;color:var(--muted);font-weight:600}
  .balc b{font-family:var(--numf);font-size:26px;font-weight:800;line-height:1.2}
  .balc .bar{display:block;height:6px;border-radius:4px;background:var(--surface-3);margin-top:8px;overflow:hidden}
  .balc .bar i{display:block;height:100%;background:var(--primary);border-radius:4px}
  .balc .bar.ink i{background:var(--ink)}
}
.upload-cta{margin-top:14px;width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--r-lg);border:1.5px dashed var(--primary);background:var(--surface);text-align:start}
.upload-cta .ic,.drop .ic{width:46px;height:46px;border-radius:14px;background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;flex:none}
.upload-cta .ic svg,.drop .ic svg{width:22px;height:22px}
.upload-cta .grow{flex:1;display:flex;flex-direction:column}
.upload-cta b{font-size:15px}.upload-cta small{color:var(--muted);font-size:13px}
.upload-cta .chev{width:18px;height:18px;color:var(--muted)}

.stat{padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.stat b{font-size:26px;font-weight:900;font-family:var(--numf);font-variant-numeric:tabular-nums;line-height:1.25}
.stat span{font-size:13px;color:var(--muted);font-weight:600}
.subj{padding:0;display:flex;flex-direction:column;text-align:start;border:1px solid var(--border);background:var(--surface);border-radius:var(--r-lg);overflow:hidden}
.subj:hover{border-color:var(--muted)}
.subj .top{display:flex;align-items:center;gap:12px;padding:14px 16px 0}
.subj .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.subj h3{font-size:15.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.subj .meta{font-size:12.5px;color:var(--muted)}
.subj .pctv{font-family:var(--numf);font-weight:800;font-size:19px}
.subj .meter{margin:12px 16px 0;height:6px}
.subj .tags{display:flex;gap:6px;padding:10px 16px 14px;flex-wrap:wrap}
.dot{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-weight:800;font-size:16px;color:#17161C;flex:none}
.subj.add{border-style:dashed;align-items:center;justify-content:center;color:var(--muted);min-height:130px;font-weight:700}
.c-amber{background:#FFE6B3}.c-teal{background:#CDEFE8}.c-violet{background:#E4DBFB}.c-rose{background:#F6D9E1}.c-sky{background:#D6E6FF}.c-lime{background:#E3F2C9}
.list{display:flex;flex-direction:column;gap:8px}
.item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);background:var(--surface);border-radius:16px;min-height:60px}
.item .grow{flex:1;min-width:0}
.item b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14.5px}
.item small{color:var(--muted);font-size:12.5px}
.item .pct{font-size:17px;font-weight:800;font-family:var(--numf);font-variant-numeric:tabular-nums;min-width:52px;text-align:center}
.item .acts{display:flex;gap:4px;flex-wrap:wrap}
.item .ic{width:38px;height:38px;border-radius:11px;background:var(--surface-3);color:var(--muted);display:grid;place-items:center;flex:none}
.item .ic svg{width:18px;height:18px}
.item.click{cursor:pointer}
.item.click:hover{border-color:var(--muted)}
.stem-s{direction:ltr;text-align:left;font-size:14px;font-weight:600;color:var(--fg);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:"Nunito",var(--font)}

/* subject band */
.band{background:var(--c,#F6D9E1);color:#17161C;border-radius:var(--r-xl);padding:18px 24px 22px;display:flex;flex-direction:column;gap:14px}
.band .iconbtn{background:#fff;border-color:transparent;color:#17161C}
.band-top{display:flex;align-items:center;gap:10px}
.band-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}
.band h1{font-family:var(--display);font-weight:800;font-size:38px;line-height:1.1}
.band p{margin:2px 0 0;color:#4A4D58;font-size:14px}
.band .stat{background:#fff;border:0;color:#17161C}.band .stat span{color:#5E6270}
.band .btn{border-color:transparent}
.band .btn.sm.glass{background:#fff}
[data-theme="dark"] .band{--c:#3A2730;color:var(--fg)}
[data-theme="dark"] .band .iconbtn,[data-theme="dark"] .band .stat,[data-theme="dark"] .band .btn.glass{background:var(--surface);color:var(--fg)}
[data-theme="dark"] .band p,[data-theme="dark"] .band .stat span{color:var(--muted)}
@media (max-width:640px){.band{padding:14px 16px 18px}.band h1{font-size:30px}.band .row{width:100%}.band .row .btn{flex:1}}

/* analysis */
.ana{padding:18px 20px;display:flex;flex-direction:column;gap:10px}
.ana h2{font-size:16px;font-weight:700}
.ana-head{display:flex;align-items:center;gap:10px}
.ana-head img{width:44px}
.sec-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}
.sec-row:first-child{border-top:0}
.sec-row b{font-size:14px;font-family:"Nunito",var(--font)}
.sec-row small{display:block;color:var(--muted);font-size:12.5px}
.sec-row .v{font-weight:800;font-family:var(--numf);font-variant-numeric:tabular-nums;min-width:48px;text-align:end}
@media (max-width:640px){.sec-row{grid-template-columns:minmax(0,1fr) auto}.sec-row .meter{grid-column:1/-1;order:3}}

/* exam */
.ex-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 0 10px;position:sticky;top:0;z-index:15;background:var(--bg)}
.ex-title{flex:1;min-width:180px;display:flex;flex-direction:column;align-items:center;text-align:center}
.ex-title h2{font-size:15.5px;font-weight:700}
.ex-title small{font-size:12.5px;color:var(--muted);font-family:"Nunito",var(--font);font-weight:600}
.ex-title small b{color:var(--fg)}
.timer{display:inline-flex;align-items:center;gap:8px;background:#17161C;color:#fff;height:44px;padding:0 16px;border-radius:999px}
.timer svg{width:18px;height:18px}
.timer b{font-family:var(--numf);font-weight:800;font-size:17px;letter-spacing:.5px;font-variant-numeric:tabular-nums}
.timer.low{background:var(--bad)}
.ex-progress{height:6px;border-radius:4px;background:var(--surface-3);overflow:hidden;margin-bottom:10px}
.ex-progress i{display:block;height:100%;background:var(--primary);border-radius:4px;width:0;transition:width .3s}
.dots{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px;direction:ltr}
.dots button{min-width:32px;height:32px;border-radius:9px;border:1px solid var(--border);background:var(--surface);font-size:12px;font-weight:800;color:var(--muted);padding:0 4px;position:relative;font-family:var(--numf);font-variant-numeric:tabular-nums}
.dots button.cur{background:#17161C;border-color:#17161C;color:#fff}
.dots button.done{background:var(--primary);border-color:transparent;color:#1A1406}
.dots button.ok{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}
.dots button.no{background:var(--bad-bg);border-color:var(--bad);color:var(--bad)}
.dots button.cur.ok,.dots button.cur.no,.dots button.cur.done{background:#17161C;color:#fff;border-color:#17161C}
.dots button.flag{border:2px dashed var(--fg)}
[data-theme="dark"] .dots button.cur,[data-theme="dark"] .timer{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.ex-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:24px;align-items:start}
body.mode-exam .ex-grid{grid-template-columns:minmax(0,1fr);max-width:900px;margin:0 auto}
body.mode-exam .tutor,body.mode-exam #exVoice{display:none}
@media (max-width:1000px){.ex-grid{grid-template-columns:minmax(0,1fr)}}
.q{display:flex;flex-direction:column;gap:12px;min-width:0}
.q-card{padding:22px 26px;display:flex;flex-direction:column;gap:12px}
.q-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.q-meta .sp,.q-actions .sp{flex:1}
.qtool{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);border-radius:999px;min-height:36px;padding:0 12px;font-size:12.5px;font-weight:700;color:var(--muted)}
.qtool svg{width:15px;height:15px}
.qtool[aria-pressed="true"]{color:var(--primary-ink);background:var(--primary-soft);border-color:transparent}
.qtool[aria-pressed="true"] svg{fill:currentColor}
.qtool.on{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}
.qimg{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;cursor:zoom-in;align-self:flex-start;max-width:100%}
.qimg img{display:block;max-width:100%;max-height:340px;object-fit:contain}
.stem{font-size:19px;font-weight:600;line-height:1.55;margin:0;direction:ltr;text-align:left;font-family:"Nunito",var(--font)}
.opts{display:flex;flex-direction:column;gap:9px;direction:ltr}
.opt{display:flex;align-items:center;gap:14px;text-align:left;width:100%;border:1.5px solid var(--border);background:var(--surface);border-radius:18px;min-height:60px;padding:10px 16px;font-size:16px;font-weight:600;font-family:"Nunito",var(--font);transition:border-color .15s,background .15s}
.opt:hover:not(:disabled){border-color:var(--primary)}
.opt .k{flex:none;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-weight:800;font-size:14px;background:var(--surface-3);color:var(--fg)}
.opt span{min-width:0}
.opt[aria-checked="true"]{border:2px solid var(--primary);background:var(--primary-soft)}
.opt[aria-checked="true"] .k{background:var(--primary);color:var(--primary-fg)}
.opt.right{border-color:var(--ok);background:var(--ok-bg)}.opt.right .k{background:var(--ok);color:#fff}
.opt.wrong{border-color:var(--bad);background:var(--bad-bg)}.opt.wrong .k{background:var(--bad);color:#fff}
.opt.dim{opacity:.55}
.opt:disabled{cursor:default}
.q-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.why{padding:16px 20px;display:flex;flex-direction:column;gap:9px}
.why h3{font-size:13px;color:var(--muted);font-weight:800}
.why p{margin:0;display:flex;gap:10px;font-size:14.5px;line-height:1.7}
.why p b{flex:none;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-size:12px;background:var(--surface-3);color:var(--muted);font-family:var(--numf)}
.why p.ok b{background:var(--ok);color:#fff}
.why .src{font-size:12.5px;color:var(--muted)}
.tutor{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column;position:sticky;top:110px}
.t-stage{position:relative;height:210px;background:var(--primary);overflow:hidden}
.t-stage .blob{position:absolute;bottom:-90px;left:50%;width:290px;height:290px;margin-left:-145px;border-radius:50%;background:var(--blob)}
.t-nerd{position:absolute;bottom:-18px;left:50%;width:214px;margin-left:-107px;transform-origin:50% 90%}
.t-badge{position:absolute;top:14px;inset-inline-start:14px;background:#17161C;color:#fff;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px;display:flex;align-items:center;gap:6px}
.t-badge i{width:8px;height:8px;border-radius:50%;background:var(--primary)}
.speaking .t-nerd,.speaking .t-mini{animation:talk .5s ease-in-out infinite}
.thinking .t-nerd,.thinking .t-mini{animation:think 1.6s ease-in-out infinite}
.speaking .t-badge i{animation:pulse 1s infinite}
@keyframes talk{25%{transform:translateY(-3px) rotate(-3deg)}75%{transform:translateY(-1px) rotate(3deg)}}
@keyframes think{50%{transform:rotate(-6deg)}}
@keyframes pulse{50%{opacity:.3}}
.t-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px}
.t-head{display:flex;align-items:center;gap:10px}
.t-mini{display:none;width:84px;flex:none;margin:-54px 0 -4px;transform-origin:50% 90%}
.t-name{flex:1;min-width:0}
.t-name strong{font-size:15px;font-weight:800;display:block}
.status{font-size:12px;font-weight:700;color:var(--primary-ink);display:block;min-height:18px}
.chat{display:flex;flex-direction:column;gap:9px;max-height:340px;min-height:90px;overflow-y:auto}
.msg{max-width:94%;padding:10px 14px;border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.7}
.msg.t{align-self:flex-start;background:var(--surface-3);border-start-start-radius:4px}
.msg.me{align-self:flex-end;background:var(--primary-soft);border-start-end-radius:4px}
.msg.ev{align-self:center;background:none;color:var(--muted);font-size:12px;padding:0}
.msg.err{align-self:stretch;background:var(--bad-bg);color:var(--bad);font-size:13px}
.compose{display:flex;gap:6px;align-items:center;border:1px solid var(--border);border-radius:16px;padding:5px}
.compose .inp{border:0;min-height:42px;background:transparent;box-shadow:none}
.compose .btn{min-height:42px;padding:0 14px;border-radius:12px}
.mic{width:42px;height:42px;flex:none;border-radius:12px;border:0;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center}
.mic svg{width:20px;height:20px}
.mic.on{background:var(--bad);color:#fff}
.dock-toggle{display:none}
@media (max-width:1000px){
  .ex-grid{padding-bottom:calc(var(--dock-h,220px) + 10px)}
  body.mode-exam .ex-grid{padding-bottom:0}
  .tutor{position:fixed;left:10px;right:10px;bottom:0;top:auto;z-index:40;border-radius:24px 24px 0 0;border-bottom:0;max-height:46vh;box-shadow:0 -14px 40px -14px rgba(0,0,0,.35);overflow:visible}
  .tutor.open{max-height:84vh}
  .t-stage{display:none}
  /* دكتور نيرد طالع من الشات: صورته فوق حافة المحادثة */
  .t-mini{display:block;position:absolute;top:-70px;inset-inline-start:8px;width:108px;margin:0;z-index:3;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));pointer-events:none}
  .t-head{padding-inline-start:110px;min-height:40px}
  .t-body{padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));gap:8px;min-height:0;display:flex;flex-direction:column;max-height:inherit}
  .dock-toggle{display:inline-flex;border:1px solid var(--border);background:var(--surface-3);border-radius:999px;padding:0 12px;min-height:32px;align-items:center;font-size:12px;font-weight:700;color:var(--muted)}
  #exTone{display:none}
  .chat{max-height:none;min-height:0;flex:1 1 auto;overflow-y:auto}
  .tutor:not(.open) .chat{max-height:24vh}
  .tutor:not(.open) .chat > .msg:not(.latest){display:none}
  .chat .msg.t.latest{position:relative}
  .compose{flex:none;background:var(--surface)}
  .compose .inp{font-size:15px}
  .compose .mic{width:44px;height:44px}
  .q-card{padding:16px 18px}.stem{font-size:16.5px}.opt{font-size:15px;min-height:54px;padding:8px 14px}
  .ex-top{padding:12px 0 8px;gap:10px}
  .ex-title{align-items:flex-start;text-align:start}
  body.focus .main{padding:0 16px 24px}
}

/* results */
.res-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px}
@media (max-width:900px){.res-grid{grid-template-columns:minmax(0,1fr)}}
.res-score{padding:22px;display:flex;align-items:center;gap:18px}
.ring{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;flex:none}
.ring div{width:104px;height:104px;border-radius:50%;background:var(--surface);display:grid;place-items:center;text-align:center;align-content:center}
.ring b{font-size:32px;font-weight:900;line-height:1;font-family:var(--numf);font-variant-numeric:tabular-nums}
.ring small{color:var(--muted);font-size:12.5px;font-family:var(--numf);font-weight:700}
.res-legend{display:flex;flex-direction:column;gap:8px;font-size:14px}
.res-legend span{display:flex;gap:8px;align-items:center}
.res-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}
.res-nerd{min-height:190px}
.res-nerd .hero-nerd{width:210px}
.times{display:flex;align-items:flex-end;gap:3px;height:140px;padding-top:6px;direction:ltr}
.times i{flex:1;max-width:24px;border-radius:4px 4px 0 0;min-height:3px;background:var(--surface-3)}
.times i.ok{background:var(--ok)}.times i.no{background:var(--bad)}
.legend{display:flex;gap:14px;font-size:12px;color:var(--muted);flex-wrap:wrap}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}
.wrong-item{padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.wrong-item .stem{font-size:15px}
.ans{font-size:14px;display:flex;flex-direction:column;gap:3px;direction:ltr;text-align:left;font-family:"Nunito",var(--font);font-weight:600}
.ans .no{color:var(--bad)}.ans .ok{color:var(--ok)}
.ex{font-size:14px;color:var(--muted);margin:0}

/* marks CTA */
.cta-card{position:relative;background:var(--primary);color:var(--hero-ink);border-radius:24px;padding:22px;overflow:hidden;display:flex;flex-direction:column;gap:8px;min-height:340px}
.cta-card .big-n{font-family:var(--numf);font-weight:900;font-size:46px;line-height:1}
.cta-card .cta-t{font-family:var(--display);font-weight:800;font-size:22px;line-height:1.25}
.cta-card .cta-s{font-size:14px;font-weight:500;line-height:1.6;max-width:230px}
.cta-card .btn{align-self:flex-start;margin-top:6px;position:relative;z-index:2}
.cta-card img{position:absolute;inset-inline-end:-20px;bottom:-20px;width:180px}
@media (max-width:760px){.cta-card{min-height:200px;order:-1}.cta-card img{width:130px}}

/* banks */
.spec-chip{height:44px;padding:0 16px;border-radius:999px;border:0;background:#F6D9E1;color:#17161C;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:8px}
.spec-chip svg{width:18px;height:18px}
.spec-chip small{font-weight:600;opacity:.7;font-size:13px}
.bundle{position:relative;background:#17161C;color:#fff;border-radius:26px;padding:28px 30px;overflow:hidden;display:flex;flex-direction:column;gap:8px;margin-bottom:16px;min-height:200px}
.bundle .tagx{align-self:flex-start;padding:4px 12px;border-radius:999px;background:#F0B03A;color:#1A1406;font-size:12.5px;font-weight:800}
.bundle h3{font-family:var(--display);font-weight:800;font-size:30px;line-height:1.2;max-width:520px;position:relative;z-index:2}
.bundle p{margin:0;color:#C9C8D0;font-size:15px;position:relative;z-index:2;max-width:520px}
.bundle .btn{align-self:flex-start;margin-top:8px;background:#fff;color:#17161C;border-color:#fff;position:relative;z-index:2;border-radius:999px;font-weight:800}
.bundle img{position:absolute;inset-inline-end:40px;bottom:-20px;width:210px}
@media (max-width:640px){.bundle{padding:18px 18px;min-height:0;padding-inline-end:120px}.bundle h3{font-size:21px}.bundle p{font-size:13px}.bundle img{width:128px;inset-inline-end:-8px;bottom:-10px}}
.bank{padding:18px;display:flex;flex-direction:column;gap:12px;text-align:start;border:1px solid var(--border);background:var(--surface);border-radius:22px;color:var(--fg)}
.bank:hover{border-color:var(--muted)}
.bank .top{display:flex;align-items:center;gap:12px}
.bank .bic{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-family:var(--numf);font-weight:800;font-size:15px;color:#17161C;flex:none}
.bank h3{font-size:17px;font-weight:800;font-family:"Nunito",var(--font)}
.bank .meta{font-size:13px;color:var(--muted)}
.bank .desc{font-size:13.5px;color:var(--muted);line-height:1.6;margin:0}
.bank .foot{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}
.bank .foot .meter{flex:1;height:7px;min-width:80px}
.bank .price-p{height:38px;padding:0 14px;border-radius:999px;background:var(--primary);color:var(--primary-fg);font-weight:800;display:inline-flex;align-items:center;font-size:13.5px}
.pools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:760px){.pools{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pool{border-radius:18px;padding:12px 14px;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);text-align:start;font-weight:600}
.pool[aria-pressed="true"]{background:var(--primary-soft);border:2px solid var(--primary)}
.pool .box{width:22px;height:22px;border-radius:6px;border:2px solid var(--input);flex:none;display:grid;place-items:center}
.pool[aria-pressed="true"] .box{background:var(--primary);border-color:var(--primary)}
.pool[aria-pressed="true"] .box::after{content:"";width:10px;height:6px;border:2.5px solid #1A1406;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.pool b{display:block;font-family:var(--numf);font-size:22px;font-weight:800;line-height:1.2}
.pool small{font-size:12.5px;color:var(--muted)}
.mods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:1100px){.mods{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mod{min-height:72px;border-radius:18px;padding:12px 14px;display:flex;align-items:center;gap:12px;text-align:start;background:var(--surface);border:1px solid var(--border);color:var(--fg)}
.mod[aria-pressed="true"]{background:var(--primary-soft);border:2px solid var(--primary)}
.mod .ring-s{width:46px;height:46px;border-radius:50%;flex:none;display:grid;place-items:center}
.mod .ring-s span{width:36px;height:36px;border-radius:50%;background:var(--surface);display:grid;place-items:center;font-family:var(--numf);font-size:11px;font-weight:800}
.mod .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.mod b{font-family:"Nunito",var(--font);font-weight:800;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mod small{font-size:12.5px;color:var(--muted)}
.topics{margin-top:14px;background:var(--surface);border:2px solid var(--primary);border-radius:22px;padding:6px 20px 14px}
.topics-head{display:flex;justify-content:space-between;align-items:center;min-height:54px;gap:10px;flex-wrap:wrap}
.topics-head b{font-family:"Nunito",var(--font);font-size:17px;font-weight:800}
.topics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
@media (max-width:640px){.topics-grid{grid-template-columns:minmax(0,1fr)}}
.topic{min-height:50px;display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);font-family:"Nunito",var(--font);font-size:15px;font-weight:600;cursor:pointer;direction:ltr}
.topic input{width:20px;height:20px;accent-color:var(--primary);margin:0;flex:none}
.topic span{flex:1}
.topic small{color:var(--muted);font-size:13px;min-width:34px;text-align:right}
.topics .row{margin-top:10px}
@media (max-width:760px){
  .mods{display:flex;flex-direction:column}
  .mod-wrap{border:1px solid var(--border);border-radius:18px;background:var(--surface);overflow:hidden}
  .mod-wrap.open{border:2px solid var(--primary)}
  .mod-wrap .mod{border:0;background:transparent;width:100%}
  .mod-wrap .topics{margin:0;border:0;border-radius:0;padding:0 14px 12px}
}
.builder{padding:20px;display:flex;flex-direction:column;gap:14px;position:sticky;top:20px}
.builder h2{font-size:16px;font-weight:800}
.builder p{margin:0;font-size:13.5px;line-height:1.6}

/* plans */
.mine{background:#17161C;color:#fff;border-radius:26px;padding:24px 28px;display:flex;flex-wrap:wrap;gap:28px;align-items:center}
.mine .who{flex:1 1 200px;display:flex;flex-direction:column;gap:4px}
.mine .who span{font-size:13px;color:#C9C8D0}
.mine .who b{font-family:var(--display);font-weight:800;font-size:30px;line-height:1.2}
.mine .m{flex:1 1 220px;display:flex;flex-direction:column;gap:8px}
.mine .m div{display:flex;justify-content:space-between;font-size:13.5px;color:#C9C8D0}
.mine .m div b{color:#fff;font-family:var(--numf)}
.mine .m i{display:block;height:8px;border-radius:4px;background:#34333B;overflow:hidden}
.mine .m i i{height:100%;background:#F0B03A;border-radius:4px}
.mine .m.w i i{background:#fff}
.plan{padding:20px;display:flex;flex-direction:column;gap:8px;border-radius:22px}
.plan.best{background:var(--primary-soft);border:2px solid var(--primary)}
.plan h3{font-family:var(--display);font-size:24px;font-weight:800;display:flex;justify-content:space-between;gap:8px;align-items:center}
.price{font-size:28px;font-weight:900;line-height:1.1;font-family:var(--numf);font-variant-numeric:tabular-nums}
.price small{font-size:14px;color:var(--muted);font-weight:700}
.plan ul{margin:4px 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}
.plan li{display:flex;gap:8px}
.plan li::before{content:"✓";color:var(--ok);font-weight:800}
.plan .btn{margin-top:auto}
.plan.addon{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;background:var(--surface-3);border:1px solid var(--border)}
.plan.addon .price{font-size:22px}
.pay{padding:20px;display:flex;flex-direction:column;gap:12px;margin-top:16px}
.pay p{margin:0;white-space:pre-wrap}
.nerd-note{display:flex;align-items:center;gap:12px;background:var(--primary-soft);border-radius:22px;padding:16px 18px;font-size:14px;line-height:1.6}
.nerd-note img{width:76px;flex:none}

/* modal + sheet */
.overlay{position:fixed;inset:0;z-index:60;background:rgba(23,22,28,.5);display:grid;place-items:center;padding:20px}
[data-theme="dark"] .overlay{background:rgba(0,0,0,.65)}
.modal{width:min(500px,100%);max-height:92vh;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px;background:var(--surface);border-radius:28px;box-shadow:0 40px 80px -30px rgba(0,0,0,.5);position:relative}
.modal h3{font-family:var(--display);font-size:24px;font-weight:800;line-height:1.2}
.m-foot{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.m-foot .muted{flex:1;font-size:13.5px}
.grab{display:none}
.options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.option{border:1px solid var(--border);background:transparent;border-radius:18px;padding:14px;text-align:start;display:flex;flex-direction:column;gap:4px;min-height:96px;color:var(--fg)}
.option b{font-size:15.5px;font-weight:800}
.option small{color:var(--muted);font-size:12.5px;line-height:1.5;font-weight:500}
.option[aria-pressed="true"]{border:2px solid var(--primary);background:var(--primary-soft)}
.options.three{grid-template-columns:repeat(3,1fr)}
.options.three .option{min-height:64px;align-items:center;justify-content:center;text-align:center;padding:10px}
.opt-rows{display:flex;flex-direction:column;background:var(--surface-3);border-radius:16px;padding:4px 14px}
.row-line{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:600;border-top:1px solid var(--border);margin:0}
.opt-rows > :first-child{border-top:0}
.opt-rows .hint{padding:0 0 8px}
.opt-rows .hint:empty{display:none}
.linkrow{border:0;border-top:1px solid var(--border);background:none;width:100%;text-decoration:none;color:var(--fg);text-align:start}
.tone-preview{display:flex;align-items:flex-end;gap:10px;margin-top:4px}
.tone-preview img{width:70px;flex:none}
.tone-preview span{flex:1;background:var(--surface-3);border-radius:16px 16px 16px 4px;padding:10px 14px;font-size:14px;line-height:1.6;margin-bottom:10px;font-weight:500}
.ac-head{display:flex;align-items:center;gap:14px}
.modal.wide{width:min(840px,100%);padding:0;flex-direction:row;gap:0;overflow:hidden;max-height:94vh}
.m-side{flex:0 0 280px;background:var(--primary);color:var(--hero-ink);padding:28px 24px 0;display:flex;flex-direction:column;gap:10px;position:relative;min-height:440px}
.m-side h3{font-size:28px}
.m-side p{margin:0;font-size:14.5px;font-weight:500;line-height:1.6}
.m-side img{position:absolute;bottom:-8px;inset-inline-end:28px;width:210px}
.m-body{flex:1;min-width:0;padding:26px 28px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;position:relative}
.m-close{position:absolute;top:14px;inset-inline-end:14px;width:40px;height:40px;background:var(--surface-3);border:0}
.m-body > .grid{margin-top:22px}
.m-mobilehead{display:none}
.drop{border:1.5px dashed var(--primary);background:var(--primary-soft);border-radius:18px;padding:16px 18px;display:flex;align-items:center;gap:14px;cursor:pointer}
.drop.over{background:var(--surface-3)}
.drop .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.drop b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drop small{font-size:13px;color:var(--muted)}
.drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
@media (max-width:760px){
  .overlay.sheet{place-items:end stretch;padding:0}
  .overlay.sheet .modal{width:100%;max-height:94vh;max-height:94dvh;border-radius:28px 28px 0 0;padding:10px 20px calc(22px + env(safe-area-inset-bottom,0px))}
  .grab{display:block;width:44px;height:5px;border-radius:3px;background:var(--border);align-self:center;flex:none}
  .modal.wide{flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain} /* المحتوى الطويل يعمل سكرول بدل ما يتقص */
  .m-side{display:none}
  .m-body{padding:0;overflow:visible}
  .m-body > .grid{margin-top:0}
  .m-close{display:none}
  .m-mobilehead{display:flex;align-items:center;gap:12px}
  .m-mobilehead img{width:64px;flex:none}
  .bubble-s{flex:1;background:var(--surface-3);border-radius:16px 16px 4px 16px;padding:10px 12px;font-size:13.5px;line-height:1.5}
  .m-foot .btn.lg{flex:1}
  .options.three{grid-template-columns:repeat(3,1fr)}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@media (max-width:760px){
  .ex-top{flex-wrap:nowrap}.ex-title{min-width:0}.ex-title h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .timer{height:40px;padding:0 12px}.timer b{font-size:15px}
  .mod-wrap .topics-head b{display:none}
  .marks-side{order:-1}
}

/* مستوى السؤال */
.tag.lv{font-weight:800}
.tag.lv.easy,.lvchip.top,.lvchip.good{background:var(--ok-bg);color:var(--ok)}
.tag.lv.medium,.lvchip.mid{background:var(--primary-soft);color:var(--primary-ink)}
.tag.lv.hard,.lvchip.weak{background:var(--bad-bg);color:var(--bad)}
.lvchip{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;background:var(--surface-3);color:var(--muted)}
/* تقرير المذاكرة */
.report{padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.report h2{font-size:17px;font-weight:700;margin:0}
.report .ana-head p{margin:2px 0 0;font-size:13px}
.rp-unit{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:8px}
.rp-unit:first-child{border-top:0;padding-top:0}
.rp-unit > .h{display:flex;align-items:center;gap:10px;justify-content:space-between}
.rp-unit > .h b{font-size:15px}
.rp-item{background:var(--surface-2);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.rp-item .h{display:flex;align-items:center;gap:8px;justify-content:space-between}
.rp-item .h b{font-size:14px;font-family:"Nunito",var(--font);min-width:0;overflow-wrap:anywhere}
.rp-item .h .v{font-family:var(--numf);font-weight:800;font-size:13px;color:var(--muted);white-space:nowrap}
.rp-item small{color:var(--muted);font-size:12.5px}
.rp-item .pg{color:var(--fg);font-weight:700}
.rp-item ul{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:3px;font-size:13.5px}
.rp-item .meter{margin-top:2px}

/* ===================== خطتي + التايمر + وقت المذاكرة ===================== */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.brand .langsw{margin-inline-start:auto;border:1px solid var(--border);background:var(--surface);border-radius:999px;height:32px;padding:0 12px;font:inherit;font-size:12.5px;font-weight:700;color:var(--fg)}
.nav .count.gold{color:var(--primary-ink);background:var(--primary-soft);border-radius:999px;padding:0 8px}
.sdot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:none;margin-inline-end:6px;vertical-align:middle}
.num{font-family:var(--numf);font-variant-numeric:tabular-nums}
/* شريط التايمر الصغير */
.tpill{position:fixed;z-index:35;inset-inline:16px;bottom:calc(84px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:10px;background:#17161C;color:#fff;border-radius:999px;padding:7px 7px 7px 14px;box-shadow:0 12px 30px -8px rgba(23,22,28,.45)}
[dir="rtl"] .tpill{padding:7px 14px 7px 7px}
.tpill .dot{width:10px;height:10px;border-radius:50%;background:#F0B03A;flex:none}
.tpill.brk .dot{background:#54C987}.tpill.paused .dot{background:#8A8994}
.tpill .grow{flex:1;min-width:0;border:0;background:none;color:inherit;font:inherit;text-align:start;display:flex;flex-direction:column;line-height:1.2;padding:0}
.tpill .grow b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tpill .grow small{font-size:11.5px;color:#C9C8D0}
.tpill .t{font-family:var(--numf);font-size:19px;font-variant-numeric:tabular-nums}
.tpill .tb{width:38px;height:38px;border-radius:50%;border:0;background:#F0B03A;color:#1A1406;display:grid;place-items:center}.tpill .tb svg{width:15px;height:15px}
@media (min-width:901px){.tpill{display:none}}
body.has-pill .main{padding-bottom:150px}
.side-timer{display:flex;align-items:center;gap:10px;background:#17161C;color:#fff;border:0;border-radius:16px;padding:12px;font:inherit;text-align:start}
.side-timer i{width:10px;height:10px;border-radius:50%;background:#F0B03A;flex:none}.side-timer.brk i{background:#54C987}
.side-timer .grow{flex:1;min-width:0;display:flex;flex-direction:column}.side-timer .grow b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-timer small{color:#A9A8B2;font-size:11.5px}
.side-timer .t{font-family:var(--numf);font-size:18px}
/* الرئيسية */
.hero h1.long{font-size:clamp(21px,2.6vw,28px);line-height:1.3}
.home-mini{margin-top:14px;grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media (max-width:400px){.card.mini{flex-direction:column;align-items:flex-start;gap:8px}}
.card.mini{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);text-align:start;font:inherit;color:var(--fg)}
.card.mini b{font-family:var(--numf);font-size:18px;display:block}.card.mini small{font-size:12.5px;color:var(--muted)}
.card.mini.wide{width:100%}
.ringm{--p:0;width:56px;height:56px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--primary) calc(var(--p)*1%),var(--surface-3) 0);position:relative}
.ringm::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--surface)}
.ringm b{position:relative;font-size:12.5px!important}.ringm.sm{width:40px;height:40px}.ringm.sm::before{inset:6px}
.flame{width:56px;height:56px;border-radius:16px;background:#FFE9D6;color:#C25A00;display:grid;place-items:center;flex:none}.flame svg{width:26px;height:26px}
[data-theme="dark"] .flame{background:#3A2616;color:#F6A35C}
.plan-card{margin-top:14px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.plan-card .sec-head{margin:0}.plan-card .task{border:0;padding:8px 0;border-radius:0;background:none;border-top:1px solid var(--border)}.plan-card .task:first-child{border-top:0}
/* صفحة خطتي */
.plan-prog{align-items:center;gap:12px}.plan-prog .meter{width:120px}
.plan-tabs{margin-bottom:12px}
.quick{display:flex;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:6px;margin-bottom:14px}
.quick .inp{border:0;background:transparent;box-shadow:none;flex:1;min-width:0}
.tgroup{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.tgroup h3{font-size:14px;font-weight:800;margin:0}.tgroup.late h3{color:var(--bad)}.tgroup.done h3{color:var(--muted)}
.task{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:10px 12px}
.task.late{border-color:color-mix(in srgb,var(--bad) 35%,var(--border))}
.tcheck{width:28px;height:28px;border-radius:50%;border:2px solid #C5C8D0;background:var(--surface);flex:none;display:grid;place-items:center;color:transparent;padding:0}
.tcheck svg{width:14px;height:14px}.task.late .tcheck{border-color:var(--bad)}
.tcheck[aria-pressed="true"]{background:var(--ok);border-color:var(--ok);color:#fff}
.tmain{flex:1;min-width:0;border:0;background:none;font:inherit;color:inherit;text-align:start;display:flex;flex-direction:column;gap:2px;padding:0;cursor:pointer}
.tmain b{font-size:14.5px;font-weight:600}.tmeta{font-size:12px;color:var(--muted);display:flex;align-items:center;flex-wrap:wrap}
.task.done .tmain b{text-decoration:line-through;color:var(--muted)}.task.done{background:var(--surface-2)}
.tprog{display:flex;align-items:center;gap:8px;margin-top:3px}.tprog .meter{flex:1;height:6px}.tprog .num{font-size:11.5px;color:var(--muted)}
.tauto{font-size:11.5px;color:var(--info,#3B6FD8)}
.tplay{width:38px;height:38px;border-radius:50%;border:0;background:var(--surface-3);color:var(--fg);display:grid;place-items:center;flex:none}.tplay svg{width:13px;height:13px}
.tplay:hover{background:var(--primary);color:var(--primary-fg)}
[dir="rtl"] .tplay svg,[dir="rtl"] .tb svg use[href="#i-play"]{transform:none}
.task.pop{animation:pop .35s ease}@keyframes pop{50%{transform:scale(1.03)}}
.nerd-card{display:flex;gap:12px;align-items:center;background:var(--primary-soft);border-radius:20px;padding:12px 14px;margin-bottom:12px}
.nerd-card img{width:58px;flex:none}.nerd-card p{margin:0 0 8px;font-size:14px;line-height:1.55}.nerd-card .row{gap:6px}
.exam-cd{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:12px;border:1px solid var(--border)}
.exam-cd .cd{width:50px;height:50px;border-radius:14px;background:#EDE8FC;color:#4A35A8;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}
[data-theme="dark"] .exam-cd .cd{background:#2A2342;color:#B7A8F5}
.exam-cd .cd b{font-family:var(--numf);font-size:19px;line-height:1}.exam-cd .cd small{font-size:11px}
.exam-cd .grow{display:flex;flex-direction:column;flex:1;min-width:0}.exam-cd .grow small{font-size:12.5px}
.exrow{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--border);flex-wrap:wrap}.exrow .inp{width:auto}
/* كارت التايمر */
.tcard{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border)}
.tcard.idle{align-items:flex-start;cursor:pointer}.tcard.idle b{font-size:16px}.tcard.idle small{font-size:13px}
.tcard.live{background:#17161C;color:#F5F4F7;border-color:#17161C;align-items:center}.tcard.live small{color:#A9A8B2;font-size:12.5px}
.ringl{--deg:0deg;width:170px;height:170px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#F0B03A var(--deg),#2B2A31 0);position:relative}
.ringl.brk{background:conic-gradient(#54C987 var(--deg),#2B2A31 0)}
.ringl::before{content:"";position:absolute;inset:12px;border-radius:50%;background:#17161C}
.ringl>div{position:relative;display:flex;flex-direction:column;align-items:center}.ringl b{font-size:40px;line-height:1}
.fz-b{width:56px;height:56px;border-radius:50%;border:0;background:#2B2A31;color:#F5F4F7;display:grid;place-items:center;font:inherit;font-family:var(--numf);font-weight:800;font-size:15px}
.fz-b svg{width:18px;height:18px}.fz-b.big{width:84px;height:84px;background:#F0B03A;color:#1A1406;box-shadow:0 10px 30px -6px rgba(240,176,58,.5)}.fz-b.big svg{width:28px;height:28px}
.fz-b.sm{width:44px;height:44px}.tcard .row{gap:12px;align-items:center}.tcard .fz-b:not(.sm){width:58px;height:58px;background:#F0B03A;color:#1A1406}
.weekmini{text-align:start;font:inherit;color:inherit;border:1px solid var(--border);gap:10px}
.wbars{height:80px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:end}
.wbars i{display:block;border-radius:6px;background:#F6C565}.wbars i.on{background:var(--fg)}
/* شاشة التركيز */
.fzview{position:fixed;inset:0;z-index:80;background:#111015;color:#F5F4F7;display:flex;flex-direction:column;align-items:center;gap:14px;padding:calc(16px + env(safe-area-inset-top,0px)) 18px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto}
.fzview .muted{color:#A9A8B2}
.fz-top{width:100%;max-width:520px;display:flex;align-items:center;justify-content:space-between}
.fz-top .iconbtn{background:#1B1A20;color:#F5F4F7;border:0}
.fz-dots{display:flex;gap:6px}.fz-dots i{width:9px;height:9px;border-radius:999px;background:#34333B}.fz-dots i.done{background:#F0B03A}.fz-dots i.cur{width:22px;background:#F6C565}
.fz-sub{display:flex;align-items:center;gap:4px;min-height:34px;padding:0 14px;border-radius:999px;background:#1B1A20;font-size:13.5px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fz-ring{--deg:0deg;width:min(300px,76vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#F0B03A var(--deg),#24232A 0);position:relative;margin-top:4px;flex:none}
.fz-ring.brk{background:conic-gradient(#54C987 var(--deg),#24232A 0)}
.fz-ring::before{content:"";position:absolute;inset:16px;border-radius:50%;background:#111015}
.fz-ring>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px}
.fz-ring span{font-size:14px;font-weight:700;color:#F6C565}.fz-ring.brk span{color:#7EDDA6}
.fz-ring b{font-family:var(--numf);font-size:clamp(52px,17vw,76px);line-height:1;letter-spacing:1px;font-variant-numeric:tabular-nums}
.fz-ring small{font-size:13px;color:#A9A8B2}
.fz-ctrl{display:flex;align-items:center;gap:18px}
.fz-skip{background:transparent;border:1px solid #2E2D35;color:#F5F4F7}
.fz-nerd{width:100%;max-width:520px;display:flex;gap:10px;align-items:flex-end}
.fz-nerd img{width:76px;flex:none}.fz-say{flex:1;background:#1B1A20;border-radius:18px;padding:10px 12px;font-size:13.5px;line-height:1.55}
[dir="rtl"] .fz-say{border-bottom-right-radius:4px}[dir="ltr"] .fz-say{border-bottom-left-radius:4px}
.fz-stats{width:100%;max-width:520px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.fz-stats div{background:#1B1A20;border-radius:14px;padding:10px;text-align:center}.fz-stats b{font-family:var(--numf);font-size:18px;display:block}.fz-stats small{font-size:11.5px;color:#A9A8B2}
.fz-done{width:100%;max-width:520px;background:transparent;border:1px solid #2E2D35;color:#F5F4F7}
body.fz-open{overflow:hidden}
/* وقت المذاكرة */
.daybars{display:flex;flex-direction:column;gap:8px}
.db-area{position:relative;height:170px;display:flex;gap:6px;align-items:flex-end;padding-top:16px}
.db-area .goal{position:absolute;inset-inline:0;border-top:1.5px dashed #E0B860;z-index:1}
.db-area span{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;min-width:0}
.db-area em{font-style:normal;font-size:10.5px;color:var(--muted);font-family:var(--numf)}
.db-area span>i{width:100%;max-width:38px;border-radius:7px 7px 3px 3px;background:#F6C565;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.db-area span.hit>i{background:var(--primary)}.db-area span>i>i{display:block;background:var(--fg);opacity:.85}
.db-area span.on em{color:var(--fg);font-weight:800}
.db-lbl{display:flex;gap:6px}.db-lbl span{flex:1;text-align:center;font-size:11.5px;color:var(--muted);min-width:0;white-space:nowrap;overflow:hidden}
.srcs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.srcs div{background:var(--surface-2);border-radius:14px;padding:12px}.srcs b{font-size:20px;display:block}.srcs small{font-size:12.5px;color:var(--muted)}
.card.stat small{font-size:12px;color:var(--muted)}.card.stat small.ok{color:var(--ok);font-weight:700}.card.stat small.bad{color:var(--bad);font-weight:700}
/* مهمة جديدة + التايمر */
.kinds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.kinds button{min-height:60px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);font:inherit;font-size:12.5px;font-weight:700;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.kinds svg{width:18px;height:18px}.kinds button[aria-pressed="true"]{border:1.5px solid var(--primary);background:var(--primary-soft);color:var(--primary-ink)}
.wdays{display:flex;gap:6px;flex-wrap:wrap}
.wdays button{width:38px;height:38px;border-radius:50%;border:0;background:var(--surface-3);font:inherit;font-size:13px;font-weight:700;color:var(--fg)}
.wdays button[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.tmodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tmodes button{border-radius:16px;border:1px solid var(--border);background:var(--surface);padding:12px;text-align:start;font:inherit;color:var(--fg);display:flex;flex-direction:column;gap:2px}
.tmodes button b{font-size:14.5px}.tmodes .num{font-weight:800;font-size:20px}.tmodes small{font-size:12px;color:var(--muted)}
.tmodes button[aria-pressed="true"]{border:2px solid var(--primary);background:var(--primary-soft)}.tmodes button[aria-pressed="true"] .num{color:var(--primary-ink)}
.goalbar{display:flex;align-items:center;gap:12px;background:#17161C;color:#fff;border-radius:16px;padding:10px 14px}
.goalbar:empty{display:none}.goalbar .grow{display:flex;flex-direction:column}.goalbar small{color:#C9C8D0;font-size:12.5px}
.goalbar .ringm::before{background:#17161C}
.miss{align-items:center;text-align:center}.miss img{width:130px}.miss p{font-size:16px;line-height:1.6;margin:0}
.steps{margin:0;padding-inline-start:22px;display:flex;flex-direction:column;gap:10px;font-size:14.5px;line-height:1.55}
.logo.big{width:56px;height:56px;font-size:28px;border-radius:16px;flex:none}
/* إنجليزي (LTR) */
[dir="ltr"] body{font-family:"Nunito","IBM Plex Sans Arabic",ui-sans-serif,system-ui,sans-serif}
[dir="ltr"] .hero h1,[dir="ltr"] .page-head h1{font-family:"Nunito",var(--display);font-weight:900}

@media (max-width:900px){#plSide .tcard.live{display:none}#plSide{gap:12px}}
#plSide{display:flex;flex-direction:column;gap:14px}

/* زرار اللغة في صفحة الدخول على الموبايل + أسهم الاتجاه في الإنجليزي */
@media (max-width:900px){.auth .langsw-m{display:block}}
.langsw-m{display:none;position:absolute;top:calc(14px + env(safe-area-inset-top,0px));inset-inline-end:14px;z-index:5;border:1px solid rgba(0,0,0,.12);background:rgba(255,255,255,.85);border-radius:999px;height:34px;padding:0 14px;font:inherit;font-size:13px;font-weight:800;color:#17161C}
[dir="ltr"] svg:has(use[href="#i-next"]),[dir="ltr"] svg:has(use[href="#i-back"]){transform:scaleX(-1)}

/* ---------- راجعها من المحاضرة: الكارت تحت الشرح + عارض الصفحة ---------- */
.lref{margin-top:12px;background:#FFF8E8;border:1px solid #F3D9A0;border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}
[data-theme="dark"] .lref{background:#2A2214;border-color:#5A4720}
.lref-h{display:flex;align-items:center;gap:10px}
.lref-ic{width:34px;height:34px;border-radius:10px;background:var(--primary);color:var(--primary-fg);display:grid;place-items:center;flex:none}.lref-ic svg{width:18px;height:18px}
.lref-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.lref-t b{font-size:13.5px}.lref-t small{font-size:12px;color:#6B5320;direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[dir="ltr"] .lref-t small{text-align:left}
[data-theme="dark"] .lref-t small{color:#D9C08A}
.lref-pg{height:28px;padding:0 10px;border-radius:999px;background:#17161C;color:#fff;display:flex;align-items:center;gap:4px;font-size:12.5px;font-weight:700;flex:none;white-space:nowrap}
[data-theme="dark"] .lref-pg{background:#F5F4F7;color:#17161C}
.lref-pg b{font-family:var(--numf)}
.lref blockquote{margin:0;padding:10px 12px;background:var(--surface);border-radius:12px;font-size:13.5px;line-height:1.6;direction:ltr;text-align:left;unicode-bidi:plaintext}
.lref .btn.primary{width:100%;min-height:46px;justify-content:center;gap:8px}.lref .btn svg{width:18px;height:18px}
.lref.slim{flex-direction:row;align-items:center;gap:10px}
.lref.slim .btn{min-height:40px;padding:0 14px;border-radius:12px;background:#17161C;color:#fff;border:0;flex:none}
[data-theme="dark"] .lref.slim .btn{background:#F5F4F7;color:#17161C}

.pdfv .modal{width:min(760px,100%);height:min(92vh,980px);max-height:none;padding:0;gap:0;overflow:hidden}
.pdfv .grab{margin-top:8px}
.pv-head{display:flex;align-items:center;gap:10px;padding:12px 16px}
.pv-head .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.pv-head h3{margin:0;font-family:var(--font);font-size:15.5px;font-weight:800}
#pvSub{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
[dir="ltr"] #pvSub{text-align:left}
.pv-stage{flex:1;min-height:0;position:relative;background:#ECEDF1}
[data-theme="dark"] .pv-stage{background:#0B0A0E}
.pv-body{position:absolute;inset:0;overflow:auto;padding:14px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.pv-wrap{position:relative;margin:0 auto;direction:ltr;background:#fff;border-radius:4px;box-shadow:0 8px 24px -12px rgba(23,22,28,.35)}
.pv-wrap canvas{display:block;border-radius:4px}
.pv-marks{position:absolute;inset:0;pointer-events:none}
.pv-marks i{position:absolute;background:rgba(252,212,60,.5);border-radius:3px;mix-blend-mode:multiply;box-shadow:0 0 0 1px rgba(226,170,20,.45)}
.pv-load{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;color:#5E6270;font-size:14px;pointer-events:none}
.pv-err{position:absolute;inset:auto 16px 50% 16px;text-align:center}
.pv-zoom{position:absolute;inset-inline-end:14px;bottom:14px;display:flex;flex-direction:column;gap:6px}
.pv-zoom button{width:44px;height:44px;border-radius:14px;border:0;background:#17161C;color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px -6px rgba(0,0,0,.4)}
.pv-zoom button svg{width:18px;height:18px}.pv-zoom button:disabled{opacity:.35}
.pv-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}
.pv-foot .row{display:flex;gap:8px}.pv-foot .btn{flex:1;min-height:46px;justify-content:center}.pv-foot .btn.primary{flex:1.4}
.pv-legend{margin:0;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.pv-legend i{width:12px;height:12px;border-radius:3px;background:#FCE38A;border:1px solid #E9C95A;flex:none}
@media (max-width:760px){ .overlay.pdfv .modal{height:92vh;height:92dvh;max-height:none;padding:0} }
/* على الكمبيوتر: الصفحة بتفتح في العمود اللي جنب السؤال، والسؤال فاضل باين */
@media (min-width:1024px){
  .overlay.pdfv{display:flex;justify-content:flex-end;align-items:stretch;padding:16px;background:rgba(23,22,28,.18)}
  .overlay.pdfv .modal{width:min(46vw,700px);height:auto;border-radius:24px}
  .overlay.pdfv .grab{display:none}
}

/* ---------- الغلطات والمراجعة (مادة ← محاضرة ← جزء) ---------- */
.mk-head{align-items:flex-end;flex-wrap:wrap;gap:14px}
.mk-tabs{display:flex;gap:6px;background:var(--surface-3);padding:4px;border-radius:14px;min-width:300px}
.mk-tabs button{flex:1;height:42px;border:0;border-radius:11px;background:transparent;color:var(--fg);font:inherit;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 12px}
.mk-tabs button[aria-selected="true"]{background:var(--ink);color:var(--ink-fg)}
.mk-n{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--surface);color:var(--fg);font-family:var(--numf);font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.mk-tabs button[aria-selected="true"] .mk-n{background:var(--primary);color:var(--primary-fg)}
.mk-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start;margin-top:18px}
.mk-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:16px}
.mk-sum{background:var(--primary);color:var(--primary-fg);border-radius:22px;padding:16px;display:flex;flex-direction:column;gap:12px}
.mk-sum.rv{background:var(--surface);color:var(--fg);border:1px solid var(--border)}
.mk-sum-top{display:flex;align-items:center;gap:12px}
.mk-sum-top .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mk-sum-top b{font-size:17px}.mk-sum-top .grow span{font-size:12.5px;opacity:.85;line-height:1.5}
.mk-ring{--p:0;width:54px;height:54px;border-radius:50%;background:conic-gradient(#17161C calc(var(--p)*1%),rgba(26,20,6,.18) 0);display:grid;place-items:center;flex:none}
.mk-ring span{width:42px;height:42px;border-radius:50%;background:var(--primary);display:grid;place-items:center;font-family:var(--numf);font-weight:800;font-size:12px}
.mk-bm{width:44px;height:44px;border-radius:14px;background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;flex:none}.mk-bm svg{width:20px;height:20px}
.mk-sum-act{display:flex;gap:8px;flex-wrap:wrap}.mk-sum-act .btn{flex:1;min-height:44px;justify-content:center;white-space:nowrap}
.mk-sum .btn.dark{background:#17161C;color:#fff;border-color:#17161C}
.mk-soft{background:rgba(255,255,255,.55);border:0;color:#1A1406}
.mk-subs{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:8px;display:flex;flex-direction:column;gap:2px}
.mk-subs button{min-height:44px;border:0;border-radius:12px;background:transparent;color:var(--fg);font:inherit;font-size:14px;display:flex;align-items:center;gap:8px;padding:0 12px;text-align:start}
.mk-subs button span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mk-subs button b{font-family:var(--numf);color:var(--muted);font-weight:700}
.mk-subs button[aria-pressed="true"]{background:var(--surface-3);font-weight:700}.mk-subs button[aria-pressed="true"] b{color:var(--fg)}
.mk-subs i,.mk-subh i,.mk-lhead small i{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}
.mk-main{display:flex;flex-direction:column;gap:10px;min-width:0}
.mk-subh{display:flex;align-items:center;gap:8px;margin-top:6px}.mk-subh:first-child{margin-top:0}
.mk-subh b{font-size:15px}.mk-subh > span{flex:1;font-size:13px;color:var(--muted)}
.mk-lec{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:12px 14px;display:flex;align-items:center;gap:12px;font:inherit;color:inherit;text-align:start;width:100%}
.mk-lec:hover{border-color:var(--input)}
.mk-lec .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.mk-lec b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mk-lec small{font-size:12.5px;color:var(--muted)}
.mk-cnt{width:42px;height:42px;border-radius:12px;background:var(--bad-bg);color:var(--bad);display:grid;place-items:center;font-family:var(--numf);font-weight:800;font-size:16px;flex:none}
.mk-cnt.sm{width:auto;min-width:30px;height:30px;padding:0 8px;border-radius:9px;font-size:13px}
.mk-bar{height:5px;border-radius:999px;background:var(--surface-3);overflow:hidden}.mk-bar i{display:block;height:100%;background:var(--ok);border-radius:999px}
.mk-chev{width:18px;height:18px;color:var(--muted);flex:none}
.mk-lhead{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:12px 14px;display:flex;flex-direction:column;gap:12px}
.mk-lh1{display:flex;align-items:center;gap:10px}.mk-lh1 .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.mk-lh1 small{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:6px}.mk-lh1 b{font-size:16.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-lh2{display:flex;gap:8px;flex-wrap:wrap}.mk-lh2 .btn{flex:1;min-height:44px;justify-content:center;gap:6px;white-space:nowrap}.mk-lh2 .btn svg{width:17px;height:17px}
.mk-sort{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.mk-sort button{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--fg);font:inherit;font-size:12.5px}
.mk-sort button[aria-pressed="true"]{background:var(--ink);color:var(--ink-fg);border-color:var(--ink);font-weight:700}
.mk-lbody{display:flex;flex-direction:column;gap:8px}
.mk-lbody.wide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.mk-list{display:flex;flex-direction:column;gap:8px;min-width:0}
.mk-sec{font-size:13px;margin-top:6px}.mk-sec:first-child{margin-top:0}.mk-sec span{color:var(--muted)}
.mk-item{background:var(--surface);border:1px solid var(--border);border-radius:16px;display:flex;flex-wrap:wrap;align-items:center;overflow:hidden}
.mk-item.open{border-color:var(--ink)}
.mk-row{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:11px 14px;border:0;background:transparent;font:inherit;color:inherit;text-align:start;min-height:56px}
.mk-row .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.mk-stem{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-row small{font-size:12px;color:var(--muted)}.mk-miss{color:var(--bad);font-weight:700}
.mk-item.open .mk-chev{transform:rotate(180deg)}
.mk-bmbtn{width:44px;height:44px;margin-inline-end:8px;border-radius:12px;border:1px solid var(--border);background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;flex:none}
.mk-bmbtn svg{width:17px;height:17px;fill:currentColor}
.mk-det{flex-basis:100%;padding:4px 14px 14px;display:flex;flex-direction:column;gap:10px}
.mk-detail{position:sticky;top:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:20px;min-width:0}
.mk-detail .mk-det{padding:16px}
.mk-q{margin:0;font-size:15px;font-weight:600;line-height:1.55;text-align:start}
.mk-img{max-width:100%;border-radius:12px;border:1px solid var(--border)}
.mk-ans{padding:9px 12px;border-radius:12px;font-weight:600;font-size:13.5px;text-align:left}
.mk-ans.no{background:var(--bad-bg);color:var(--bad)}.mk-ans.ok{background:var(--ok-bg);color:var(--ok)}.mk-ans small{font-weight:500;font-size:11.5px}
.mk-why{margin:0;font-size:13.5px;line-height:1.7}
.mk-dact{display:flex;gap:8px;flex-wrap:wrap}.mk-dact .btn{flex:1;min-height:44px;justify-content:center;white-space:nowrap}
.mk-empty{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:36px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.mk-empty h2{margin:0;font-family:var(--display);font-size:24px}.mk-empty p{margin:0;color:var(--muted);max-width:420px;line-height:1.7}
.mk-empty .row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.mk-done{width:110px;height:110px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center}.mk-done svg{width:48px;height:48px}
.mk-undo{position:fixed;z-index:70;inset-inline:16px;bottom:calc(96px + env(safe-area-inset-bottom,0px));max-width:460px;margin:0 auto;background:#17161C;color:#fff;border-radius:16px;padding:10px 12px 10px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 12px 30px -10px rgba(0,0,0,.45)}
.mk-undo span{flex:1;font-size:13.5px}.mk-undo button{min-height:38px;padding:0 14px;border:0;border-radius:10px;background:#F0B03A;color:#1A1406;font:inherit;font-weight:800}
@media (min-width:1024px){ .mk-undo{bottom:24px} }
/* صفحة المادة */
.mk-sjcard{display:flex;flex-direction:column;gap:12px}
.mk-sjh{display:flex;align-items:center;gap:10px}.mk-sjh .grow{flex:1;min-width:0;display:flex;flex-direction:column}.mk-sjh b{font-size:16px}.mk-sjh .grow span{font-size:13px;color:var(--muted)}
.mk-sjic{width:42px;height:42px;border-radius:12px;background:var(--bad-bg);color:var(--bad);display:grid;place-items:center;flex:none}.mk-sjic svg{width:20px;height:20px}
.mk-sjl{display:flex;flex-direction:column;gap:8px}
.mk-sjrow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;background:var(--surface-2)}
.mk-sjrow b{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-sjb{display:flex;gap:8px;flex-wrap:wrap}.mk-sjb .btn{flex:1;min-height:44px;justify-content:center}
@media (max-width:1023px){
  .mk-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .mk-side{position:static}
  .mk-subs{flex-direction:row;overflow-x:auto;background:transparent;border:0;padding:0;gap:8px;scrollbar-width:none}
  .mk-subs::-webkit-scrollbar{display:none}
  .mk-subs button{flex:none;min-height:38px;border:1px solid var(--border);background:var(--surface);border-radius:999px;font-size:13px;padding:0 14px}
  .mk-subs button span{flex:none}
  .mk-subs button[aria-pressed="true"]{background:var(--ink);color:var(--ink-fg);border-color:var(--ink)}.mk-subs button[aria-pressed="true"] b{color:var(--ink-fg)}
}
@media (max-width:760px){ .mk-tabs{min-width:0;width:100%} .mk-head > div:first-child p{display:none} }
.mk-item.open .mk-stem{white-space:normal;font-size:15px;line-height:1.55}
@media (max-width:1023px){ .mk-grid.in-lec .mk-side{display:none} }
/* البنوك: جامعتي / بنوك عامة + صور البنوك */
.btabs{margin-bottom:14px;width:100%;max-width:420px}.btabs button{flex:1}
.uni-chip{width:100%;max-width:560px;min-height:50px;border-radius:16px;border:1px solid var(--border);background:var(--surface);color:var(--fg);display:flex;align-items:center;gap:10px;padding:0 14px;margin-bottom:14px;font-size:14px;text-align:start}
.uni-chip .uni-ic{width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,#2B4C9B,#6B4FD8);flex:none}
.uni-chip .t{flex:1;min-width:0}.uni-chip .ch{font-size:13px;font-weight:700;color:var(--primary-ink)}
.bank.has-img{padding:0;overflow:hidden;gap:10px}
.bank.has-img>.top,.bank.has-img>.desc,.bank.has-img>.foot{padding-inline:18px}.bank.has-img>.foot{padding-bottom:18px}
.bank .bimg{display:block;aspect-ratio:1200/630;max-height:170px;width:100%;background:var(--surface-3) center/cover;position:relative}
.bank .bbadge{position:absolute;top:10px;inset-inline-start:10px;min-height:26px;padding:0 10px;border-radius:999px;background:#fff;color:#17161C;font-size:12px;font-weight:800;display:flex;align-items:center}
.bank .bbadge.free{background:#E2F4EA;color:#12693C}.bank .bbadge.open{background:#17161C;color:#fff}
/* البنك: اختيار المواضيع + المصدر + الترتيب الذكي */
.bk-pick{padding:6px 18px 12px}
.bk-pick-h{display:flex;align-items:center;gap:10px;min-height:54px;flex-wrap:wrap}
.bk-pick-h h2{font-size:16px;font-weight:800;flex:1}
.bk-pick-h .muted{font-size:13px}
.bk-tree{display:flex;flex-direction:column}
.bk-mod{border-top:1px solid var(--border)}
.bk-row{display:flex;align-items:center;gap:10px;min-height:60px;padding:6px 0}
.bk-chk{flex:1;min-width:0;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:15px}
.bk-chk input,.bk-topic input{width:20px;height:20px;accent-color:var(--primary);flex:none;min-height:0}
.bk-nm{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.bk-nm b{font-weight:700}.bk-nm small{font-size:12.5px;font-weight:500}
.bk-tg{width:36px;height:36px;border:0;background:var(--surface-3);border-radius:10px;color:var(--fg);display:grid;place-items:center;flex:none}
.bk-tg svg{width:16px;height:16px;transition:transform .15s}
.bk-mod.open .bk-tg svg{transform:rotate(180deg)}
.bk-topics{display:flex;flex-direction:column;padding-inline-start:30px}
.bk-mod:not(.open) .bk-topics{display:none}
.bk-topic{display:flex;align-items:center;gap:10px;min-height:52px;padding:4px 0;border-top:1px dashed var(--border);cursor:pointer;font-size:14.5px}
.bk-mod.off,.bk-topic.off{opacity:.55}
.bk-src{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:640px){.bk-src{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bk-s{border-radius:18px;padding:12px 14px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:var(--surface);border:1px solid var(--border);text-align:start;font-weight:700;color:var(--fg);font-size:14px}
.bk-s b{font-family:var(--numf);font-size:22px;font-weight:800;line-height:1.2}
.bk-s.bad b{color:var(--bad)}
.bk-s small{font-size:12px;color:var(--muted);font-weight:600}
.bk-s[aria-checked="true"]{background:var(--primary-soft);border:2px solid var(--primary);padding:11px 13px}
.bk-s:disabled{opacity:.5}
.bk-order{font-size:13px;line-height:1.7;margin:10px 0 0}
.bk-quick{display:flex;gap:8px;flex-wrap:wrap}
.bk-chips{margin-top:-4px}
.q-memo{align-self:flex-start;font-size:13px;font-weight:700;color:var(--bad);background:var(--bad-bg);border-radius:10px;padding:6px 12px;margin-top:10px}
.topup-b{margin-top:8px}
/* البنك: مستواك وآخر امتحان */
.bk-level{padding:14px 18px;margin-bottom:14px;display:flex;flex-direction:column;gap:12px}
.bk-lv{display:flex;align-items:center;gap:14px}
.ring-s.big{width:64px;height:64px;border-radius:50%;flex:none;display:grid;place-items:center}
.ring-s.big span{width:50px;height:50px;border-radius:50%;background:var(--surface);display:grid;place-items:center;font-family:var(--numf);font-size:15px;font-weight:800}
.bk-lv .grow,.bk-last .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.bk-lv b,.bk-last b{font-size:15px;font-weight:800}.bk-lv small,.bk-last small{font-size:13px}
.bk-last{display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);padding-top:12px;flex-wrap:wrap}
.bk-last-n{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.bk-last-n span{font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px}
.bk-last-n .ok{background:var(--ok-bg);color:var(--ok)}.bk-last-n .no{background:var(--bad-bg);color:var(--bad)}.bk-last-n .rv{background:var(--primary-soft);color:var(--primary-ink)}
.bk-lv-act{display:flex;gap:8px;flex-wrap:wrap}
.lref.info{background:var(--surface-2);border-color:var(--border)}
.mk-quote{margin:8px 0 0;padding:8px 12px;border-inline-start:3px solid var(--primary);background:var(--surface-2);border-radius:8px;font-size:13.5px;line-height:1.6}
