:root{--canvas:#f7f5f1;--surface:#fff;--border:#e3ddd3;--ink:#1a1d1a;--muted:#5f6660;--action:#0f5c4e;--action-hover:#0b4a3f;--der:#1d4ed8;--die:#be1250;--das:#0f7a3d;--radius:12px;--maxw:62rem;--shadow:0 1px 2px #1a1d1a0f, 0 8px 24px -18px #1a1d1a4d}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--ink);margin:0;font-family:IBM Plex Sans Arabic,Segoe UI,system-ui,sans-serif;font-size:17px;line-height:1.75}h1,h2,h3{font-family:Tajawal,IBM Plex Sans Arabic,system-ui,sans-serif;line-height:1.35}h1{letter-spacing:-.01em;margin:0 0 .5rem;font-size:clamp(1.75rem,5vw,2.6rem);font-weight:800}h2{margin:2.5rem 0 .75rem;font-size:clamp(1.3rem,3.6vw,1.75rem);font-weight:700}h3{margin:1.5rem 0 .4rem;font-size:1.1rem;font-weight:700}p{margin:0 0 1rem}a{color:var(--action)}a:hover{color:var(--action-hover)}:focus-visible{outline:3px solid var(--action);outline-offset:2px;border-radius:4px}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.1rem}.de{letter-spacing:-.005em;direction:ltr;unicode-bidi:isolate;font-family:IBM Plex Sans,system-ui,sans-serif}.site-head{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#f7f5f1ed;position:sticky;top:0}.site-head .wrap{flex-wrap:wrap;align-items:center;gap:1rem;min-height:58px;display:flex}.brand{color:var(--ink);font-family:Tajawal,sans-serif;font-size:1.12rem;font-weight:800;text-decoration:none}.brand span{color:var(--action)}.site-nav{flex-wrap:wrap;gap:.35rem;margin-inline-start:auto;display:flex}.site-nav a{color:var(--muted);border-radius:999px;padding:.35rem .6rem;font-size:.93rem;font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--ink);background:#ece7de}.site-nav a[aria-current=page]{background:var(--action);color:#fff}main{padding:1.5rem 0 3rem}.crumbs{color:var(--muted);margin-bottom:1rem;font-size:.85rem}.crumbs a{text-decoration:none}.lede{color:var(--muted);max-width:46rem;font-size:1.06rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem;display:grid}.tool-card{color:inherit;flex-direction:column;gap:.35rem;text-decoration:none;display:flex}.tool-card h3{margin:0}.tool-card p{color:var(--muted);margin:0;font-size:.95rem}.tool-card .go{color:var(--action);margin-top:.6rem;font-weight:700}.tool-card:hover{border-color:var(--action)}.soon{opacity:.72;box-shadow:none}.badge{color:var(--muted);background:#ece7de;border-radius:999px;padding:.1rem .5rem;font-size:.74rem;font-weight:700;display:inline-block}.badge.live{color:var(--das);background:#dff1e7}.search-row{flex-wrap:wrap;gap:.5rem;display:flex}.search-row input{min-width:0;font:inherit;border:2px solid var(--border);color:var(--ink);background:#fff;border-radius:10px;flex:14rem;padding:.7rem .9rem;font-size:1.05rem}.search-row input:focus{border-color:var(--action);outline:none}.btn{font:inherit;cursor:pointer;background:var(--action);color:#fff;border:0;border-radius:10px;min-height:46px;padding:.7rem 1.2rem;font-weight:700}.btn:hover{background:var(--action-hover)}.btn.ghost{color:var(--action);border:2px solid var(--border);background:#fff}.btn.ghost:hover{border-color:var(--action);background:#fff}.hint{color:var(--muted);margin-top:.5rem;font-size:.87rem}.chips{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.chip{font:inherit;cursor:pointer;color:var(--ink);border:1px solid var(--border);background:#fff;border-radius:999px;min-height:34px;padding:.3rem .75rem;font-size:.88rem}.chip:hover{border-color:var(--action);color:var(--action)}.chip[aria-pressed=true]{background:var(--action);color:#fff;border-color:var(--action)}.parts{flex-wrap:wrap;gap:.4rem;margin:.2rem 0 .9rem;display:flex}.part{border:1px solid var(--border);background:#faf8f5;border-radius:8px;padding:.3rem .6rem;font-size:.95rem}.part b{color:var(--muted);letter-spacing:.02em;font-size:.72rem;font-weight:600;display:block}.aux{color:var(--muted);font-size:.88rem}.tbl-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.96rem}th,td{text-align:start;border-bottom:1px solid var(--border);padding:.5rem .6rem}thead th{color:var(--muted);white-space:nowrap;font-size:.82rem;font-weight:700}tbody tr:hover{background:#faf8f5}caption{text-align:start;color:var(--muted);padding-bottom:.4rem;font-size:.85rem}.gender{font-weight:700}.g-der{color:var(--der)}.g-die{color:var(--die)}.g-das{color:var(--das)}.gpill{text-align:center;color:#fff;border-radius:999px;min-width:3.1rem;padding:.05rem .5rem;font-size:.9rem;font-weight:700;display:inline-block}.gpill.g-der{background:var(--der);color:#fff}.gpill.g-die{background:var(--die);color:#fff}.gpill.g-das{background:var(--das);color:#fff}.quiz-word{margin:.2rem 0 .1rem;font-size:1.6rem;font-weight:600}.quiz-opts{flex-wrap:wrap;gap:.5rem;margin:.8rem 0;display:flex}.qbtn{font:inherit;cursor:pointer;border:2px solid var(--border);min-height:52px;color:var(--ink);background:#fff;border-radius:10px;flex:6rem;font-size:1.05rem;font-weight:700;transition:background .12s,color .12s,border-color .12s}.qbtn:hover:not(:disabled){border-color:var(--action)}.qbtn.right{border-color:var(--das);color:var(--das);background:#dff1e7}.qbtn.wrong{border-color:var(--die);color:var(--die);background:#fbe4ec}.qbtn:disabled{cursor:default}.quiz-fb{white-space:pre-line;min-height:2.4rem;font-weight:600}.quiz-fb .ok,.quiz-fb.ok{color:var(--das)}.quiz-fb .no,.quiz-fb.no{color:var(--die)}.progress{background:#ece7de;border-radius:999px;height:6px;margin:.2rem 0 .9rem;overflow:hidden}.progress i{background:var(--action);height:100%;transition:width .2s;display:block}.quiz-meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.2rem 0 .9rem;display:flex}.quiz-meta span{color:var(--muted);border:1px solid var(--border);background:#fff;border-radius:999px;padding:.15rem .7rem;font-size:.87rem;font-weight:700}.result-band{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:1.2rem}.result-level{color:var(--action);font-family:Tajawal,sans-serif;font-size:clamp(2.2rem,9vw,3.4rem);font-weight:800;line-height:1.1}.result-score{color:var(--muted);font-size:.95rem}.bars{gap:.55rem;margin:1rem 0;display:grid}.bar-row{grid-template-columns:8.5rem 1fr 3.2rem;align-items:center;gap:.6rem;font-size:.92rem;display:grid}.bar-track{background:#ece7de;border-radius:999px;height:10px;overflow:hidden}.bar-track i{background:var(--action);height:100%;display:block}.bar-row.weak .bar-track i{background:var(--die)}@media (width<=560px){.bar-row{grid-template-columns:1fr 2.6rem}.bar-row .bar-track{grid-column:1/-1}}.week{margin-bottom:.6rem}.week>summary{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.week-badge{color:var(--muted);white-space:nowrap;background:#ece7de;border-radius:999px;padding:.1rem .55rem;font-size:.74rem;font-weight:700}.week.done>summary .week-badge{color:var(--das);background:#dff1e7}.task{align-items:flex-start;gap:.55rem;padding:.3rem 0;display:flex}.task input{width:1.15rem;height:1.15rem;accent-color:var(--action);flex:none;margin-top:.35rem}.task label{cursor:pointer;font-size:.95rem}.task input:checked+label{color:var(--muted);text-decoration:line-through}.plan-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.prose{max-width:46rem}.prose ul,.prose ol{padding-inline-start:1.3rem}.prose li{margin-bottom:.35rem}details{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:.5rem;padding:.7rem .9rem}details summary{cursor:pointer;font-weight:700}details p{color:var(--muted);margin:.6rem 0 0}.related{flex-wrap:wrap;gap:.5rem;display:flex}.related a{border:1px solid var(--border);background:#fff;border-radius:999px;padding:.35rem .8rem;font-size:.93rem;font-weight:600;text-decoration:none}.related a:hover{border-color:var(--action)}.note{background:#fff8e8;border:1px solid #e8d9ae;border-radius:10px;padding:.7rem .9rem;font-size:.93rem}.site-foot{border-top:1px solid var(--border);color:var(--muted);padding:1.6rem 0 2.5rem;font-size:.9rem}.site-foot nav{flex-wrap:wrap;gap:.9rem;margin-bottom:.6rem;display:flex}.site-foot a{text-decoration:none}@media (width<=640px){body{font-size:16px}.site-nav{width:100%;margin-inline-start:0;padding-bottom:.35rem;overflow-x:auto}.site-head .wrap{padding-top:.5rem}.qbtn{flex:100%}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
