Jump to content

System messages

This is a list of system messages available in the MediaWiki namespace. Please visit MediaWiki Localisation and translatewiki.net if you wish to contribute to the generic MediaWiki localisation.
System messages
First pagePrevious pageNext pageLast page
Name Default message text
Current message text
cite_references_link_many_format (talk) (Translate) <sup>[[#$1|$2]]</sup>
cite_references_link_many_format_backlink_labels (talk) (Translate) a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do dp dq dr ds dt du dv dw dx dy dz ea eb ec ed ee ef eg eh ei ej ek el em en eo ep eq er es et eu ev ew ex ey ez fa fb fc fd fe ff fg fh fi fj fk fl fm fn fo fp fq fr fs ft fu fv fw fx fy fz ga gb gc gd ge gf gg gh gi gj gk gl gm gn go gp gq gr gs gt gu gv gw gx gy gz ha hb hc hd he hf hg hh hi hj hk hl hm hn ho hp hq hr hs ht hu hv hw hx hy hz ia ib ic id ie if ig ih ii ij ik il im in io ip iq ir is it iu iv iw ix iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js jt ju jv jw jx jy jz ka kb kc kd ke kf kg kh ki kj kk kl km kn ko kp kq kr ks kt ku kv kw kx ky kz la lb lc ld le lf lg lh li lj lk ll lm ln lo lp lq lr ls lt lu lv lw lx ly lz ma mb mc md me mf mg mh mi mj mk ml mm mn mo mp mq mr ms mt mu mv mw mx my mz na nb nc nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol om on oo op oq or os ot ou ov ow ox oy oz pa pb pc pd pe pf pg ph pi pj pk pl pm pn po pp pq pr ps pt pu pv pw px py pz qa qb qc qd qe qf qg qh qi qj qk ql qm qn qo qp qq qr qs qt qu qv qw qx qy qz ra rb rc rd re rf rg rh ri rj rk rl rm rn ro rp rq rr rs rt ru rv rw rx ry rz sa sb sc sd se sf sg sh si sj sk sl sm sn so sp sq sr ss st su sv sw sx sy sz ta tb tc td te tf tg th ti tj tk tl tm tn to tp tq tr ts tt tu tv tw tx ty tz ua ub uc ud ue uf ug uh ui uj uk ul um un uo up uq ur us ut uu uv uw ux uy uz va vb vc vd ve vf vg vh vi vj vk vl vm vn vo vp vq vr vs vt vu vv vw vx vy vz wa wb wc wd we wf wg wh wi wj wk wl wm wn wo wp wq wr ws wt wu wv ww wx wy wz xa xb xc xd xe xf xg xh xi xj xk xl xm xn xo xp xq xr xs xt xu xv xw xx xy xz ya yb yc yd ye yf yg yh yi yj yk yl ym yn yo yp yq yr ys yt yu yv yw yx yy yz za zb zc zd ze zf zg zh zi zj zk zl zm zn zo zp zq zr zs zt zu zv zw zx zy zz
cite_references_link_many_sep (talk) (Translate)
cite_references_link_one (talk) (Translate) <li id="$1"$4><span class="mw-cite-backlink">[[#$2|↑]]</span> $3</li>
cite_section_preview_references (talk) (Translate) Preview of references
cite_warning (talk) (Translate) Cite warning: $1
cite_warning_sectionpreview_no_text (talk) (Translate) <code><ref></code> tag with name <code>$1</code> cannot be previewed because it is defined outside the current section or not defined at all.
clearyourcache (talk) (Translate) <strong>Note:</strong> After publishing, you may have to bypass your browser's cache to see the changes. * <strong>Firefox / Safari:</strong> Hold <em>Shift</em> while clicking <em>Reload</em>, or press either <em>Ctrl-F5</em> or <em>Ctrl-R</em> (<em>⌘-R</em> on a Mac) * <strong>Google Chrome:</strong> Press <em>Ctrl-Shift-R</em> (<em>⌘-Shift-R</em> on a Mac) * <strong>Edge:</strong> Hold <em>Ctrl</em> while clicking <em>Refresh</em>, or press <em>Ctrl-F5</em>.
collapsible-collapse (talk) (Translate) Collapse
collapsible-collapse-all-text (talk) (Translate) Collapse all
collapsible-collapse-all-tooltip (talk) (Translate) Collapse all collapsible elements on the current page
collapsible-expand (talk) (Translate) Expand
collapsible-expand-all-text (talk) (Translate) Expand all
collapsible-expand-all-tooltip (talk) (Translate) Expand all collapsible elements on the current page
colon-separator (talk) (Translate) :
comma-separator (talk) (Translate) ,
common.css (talk) (Translate) /* CSS placed here will be applied to all skins */
/* ============================================================ URETHANE DESIGN — portable token sheet + generic components App-agnostic. Pair with 05-theme-engine.js, which sets on <html>: data-du-mode = light | dark (auto resolved by the engine) data-du-glass = faithful | modern | flat --du-h = accent hue (inline style, number) No-JS defaults: light + faithful + blue (205). Self-host this file (content-app CSP blocks CDNs). Link it LAST in <head> so it wins cascade ties against app CSS. ============================================================ */ /* ------------------------------------------------------------------ ACCESSIBLE CONTRAST (WCAG 2.x) — measured at hue 205, faithful glass. Body text target >=4.5:1 ; large text / icon glyph target >=3:1. Computed from the HSL token values below (sRGB relative luminance). LIGHT (data-du-mode="light") --du-text on --du-panel ....... 15.02:1 (body PASS) --du-text on --du-page ........ 13.12:1 (body PASS) --du-text on --du-panel2 ...... 14.05:1 (body PASS) --du-muted on --du-panel ........ 6.04:1 (body PASS) --du-muted on --du-page ......... 5.28:1 (body PASS) --du-link on --du-page ......... 6.27:1 (body PASS) --du-link on --du-panel ........ 7.18:1 (body PASS) --du-glyph on --du-face(mid) .... 3.06:1 (large/glyph PASS) DARK (data-du-mode="dark") --du-text on --du-panel ....... 12.70:1 (body PASS) --du-text on --du-page ........ 14.62:1 (body PASS) --du-text on --du-panel2 ...... 11.49:1 (body PASS) --du-muted on --du-panel ........ 5.81:1 (body PASS) --du-muted on --du-page ......... 6.69:1 (body PASS) --du-link on --du-page ......... 9.23:1 (body PASS) --du-link on --du-panel ........ 8.02:1 (body PASS) --du-glyph on --du-face(mid) ... 13.10:1 (large/glyph PASS) FIXED tile glyphs (mode-independent gradients; large glyph, >=3:1). The glyph centroid sits on the bright body bands; only the 1px 45% hard-break stop (the intentional bottom-lit recipe break) dips lower. hot glyph hsl(10 80% 19%) on --du-hot body band 60%L .. 5.06:1 PASS (worst single stop, 45% hard-break ............ 2.56:1) gold glyph hsl(35 90% 18%) on --du-gold body band 60%L .. 6.42:1 PASS (worst single stop, 45% hard-break ............ 3.17:1) ------------------------------------------------------------------ */ /* === TIER: PRIMITIVE === */ :root{ --du-h:205; --du-c:1; --du-star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38'%3E%3Cg fill='none' stroke='white' stroke-opacity='.14'%3E%3Crect x='11' y='11' width='16' height='16'/%3E%3Crect x='11' y='11' width='16' height='16' transform='rotate(45 19 19)'/%3E%3C/g%3E%3C/svg%3E"); --du-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='90' height='90' filter='url(%23n)'/%3E%3C/svg%3E"); /* === TIER: SEMANTIC === */ /* light base */ --du-page:hsl(var(--du-h) calc(30% * var(--du-c)) 93%); --du-panel:hsl(var(--du-h) calc(40% * var(--du-c)) 99%); --du-panel2:hsl(var(--du-h) calc(35% * var(--du-c)) 96%); --du-text:hsl(var(--du-h) calc(55% * var(--du-c)) 14%); --du-muted:hsl(var(--du-h) calc(20% * var(--du-c)) 38%); --du-line:hsl(var(--du-h) calc(28% * var(--du-c)) 86%); --du-link:hsl(var(--du-h) calc(80% * var(--du-c)) 31%); --du-glyph:hsl(var(--du-h) calc(62% * var(--du-c)) 21%); --du-gsh:0 -1px 0 hsl(var(--du-h) calc(90% * var(--du-c)) 97% / .6),0 1px 1px hsl(var(--du-h) calc(70% * var(--du-c)) 16% / .35); --du-tsh:0 1px rgb(255 255 255 / .4); --du-psh:0 2px 6px hsl(var(--du-h) calc(55% * var(--du-c)) 30% / .14); --du-chbev:inset 0 1px hsl(var(--du-h) calc(90% * var(--du-c)) 99% / .85),inset 0 -1px hsl(var(--du-h) calc(92% * var(--du-c)) 92% / .9); --du-tabbg:linear-gradient(180deg,hsl(var(--du-h) calc(32% * var(--du-c)) 86%),hsl(var(--du-h) calc(32% * var(--du-c)) 76%) 44%,hsl(var(--du-h) calc(46% * var(--du-c)) 59%) 45%,hsl(var(--du-h) calc(55% * var(--du-c)) 71%) 100%); --du-tabon:linear-gradient(180deg,#fff,hsl(var(--du-h) calc(50% * var(--du-c)) 92%) 60%,hsl(var(--du-h) calc(65% * var(--du-c)) 96%) 100%); --du-fade:linear-gradient(180deg,hsl(var(--du-h) calc(45% * var(--du-c)) 58% / .10),hsl(var(--du-h) calc(45% * var(--du-c)) 50% / .26)); /* light + faithful glass */ --du-chrome:linear-gradient(180deg,hsl(var(--du-h) calc(80% * var(--du-c)) 97%),hsl(var(--du-h) calc(58% * var(--du-c)) 82%) 44%,hsl(var(--du-h) calc(52% * var(--du-c)) 66%) 45%,hsl(var(--du-h) calc(56% * var(--du-c)) 73%) 76%,hsl(var(--du-h) calc(72% * var(--du-c)) 86%) 100%); --du-face:linear-gradient(180deg,hsl(var(--du-h) calc(85% * var(--du-c)) 98%) 0%,hsl(var(--du-h) calc(35% * var(--du-c)) 85%) 9%,hsl(var(--du-h) calc(35% * var(--du-c)) 74%) 44%,hsl(var(--du-h) calc(55% * var(--du-c)) 49%) 45%,hsl(var(--du-h) calc(58% * var(--du-c)) 57%) 65%,hsl(var(--du-h) calc(68% * var(--du-c)) 71%) 88%,hsl(var(--du-h) calc(90% * var(--du-c)) 86%) 100%); --du-prim:linear-gradient(180deg,hsl(var(--du-h) calc(78% * var(--du-c)) 88%) 0%,hsl(var(--du-h) calc(62% * var(--du-c)) 62%) 9%,hsl(var(--du-h) calc(60% * var(--du-c)) 53%) 44%,hsl(var(--du-h) calc(76% * var(--du-c)) 30%) 45%,hsl(var(--du-h) calc(72% * var(--du-c)) 38%) 65%,hsl(var(--du-h) calc(70% * var(--du-c)) 51%) 88%,hsl(var(--du-h) calc(88% * var(--du-c)) 70%) 100%); --du-edge:hsl(var(--du-h) calc(42% * var(--du-c)) 52%); --du-bev:inset 0 0 0 1px hsl(var(--du-h) calc(85% * var(--du-c)) 96% / .5),inset 0 1px hsl(var(--du-h) calc(90% * var(--du-c)) 99% / .95),inset 0 -1px hsl(var(--du-h) calc(95% * var(--du-c)) 88% / .95),inset 0 -2px hsl(var(--du-h) calc(70% * var(--du-c)) 68% / .45),0 1px 2px hsl(var(--du-h) calc(60% * var(--du-c)) 28% / .25); --du-glow:0 0 9px hsl(var(--du-h) calc(85% * var(--du-c)) 58% / .6); --du-hot:linear-gradient(180deg,hsl(26 100% 90%) 0%,hsl(22 92% 72%) 9%,hsl(20 88% 64%) 44%,hsl(12 85% 42%) 45%,hsl(14 84% 48%) 65%,hsl(20 90% 60%) 88%,hsl(30 100% 75%) 100%); --du-gold:linear-gradient(180deg,hsl(48 100% 88%) 0%,hsl(45 95% 72%) 9%,hsl(42 90% 62%) 44%,hsl(34 85% 42%) 45%,hsl(36 85% 48%) 65%,hsl(42 90% 60%) 88%,hsl(50 100% 76%) 100%); } html[data-du-mode="light"][data-du-glass="modern"]{ --du-chrome:linear-gradient(180deg,hsl(var(--du-h) calc(70% * var(--du-c)) 97%),hsl(var(--du-h) calc(52% * var(--du-c)) 84%) 72%,hsl(var(--du-h) calc(66% * var(--du-c)) 91%) 100%); --du-face:linear-gradient(180deg,hsl(var(--du-h) calc(70% * var(--du-c)) 98%),hsl(var(--du-h) calc(48% * var(--du-c)) 87%) 72%,hsl(var(--du-h) calc(64% * var(--du-c)) 93%) 100%); --du-prim:linear-gradient(180deg,hsl(var(--du-h) calc(72% * var(--du-c)) 58%),hsl(var(--du-h) calc(70% * var(--du-c)) 42%) 72%,hsl(var(--du-h) calc(75% * var(--du-c)) 56%) 100%); --du-edge:hsl(var(--du-h) calc(36% * var(--du-c)) 66%); --du-bev:inset 0 0 0 1px hsl(var(--du-h) calc(85% * var(--du-c)) 96% / .4),inset 0 1px hsl(var(--du-h) calc(90% * var(--du-c)) 99% / .9),inset 0 -1px hsl(var(--du-h) calc(90% * var(--du-c)) 88% / .7),0 1px 2px hsl(var(--du-h) calc(50% * var(--du-c)) 40% / .14); --du-glow:0 0 8px hsl(var(--du-h) calc(80% * var(--du-c)) 62% / .45); } html[data-du-mode="light"][data-du-glass="flat"]{ --du-chrome:hsl(var(--du-h) calc(42% * var(--du-c)) 88%); --du-face:hsl(var(--du-h) calc(40% * var(--du-c)) 97%); --du-prim:hsl(var(--du-h) calc(66% * var(--du-c)) 42%); --du-edge:hsl(var(--du-h) calc(26% * var(--du-c)) 76%); --du-bev:0 0 0 transparent; --du-glow:0 0 0 transparent; --du-hot:hsl(16 80% 48%); --du-gold:hsl(40 85% 50%); } html[data-du-mode="dark"]{ --du-page:hsl(var(--du-h) calc(26% * var(--du-c)) 9%); --du-panel:hsl(var(--du-h) calc(20% * var(--du-c)) 14%); --du-panel2:hsl(var(--du-h) calc(18% * var(--du-c)) 17%); --du-text:hsl(var(--du-h) calc(28% * var(--du-c)) 91%); --du-muted:hsl(var(--du-h) calc(13% * var(--du-c)) 62%); --du-line:hsl(var(--du-h) calc(17% * var(--du-c)) 23%); --du-link:hsl(var(--du-h) calc(82% * var(--du-c)) 72%); --du-glyph:hsl(var(--du-h) calc(38% * var(--du-c)) 90%); --du-gsh:0 -1px 0 rgb(0 0 0 / .5),0 1px 2px hsl(var(--du-h) calc(80% * var(--du-c)) 65% / .35); --du-tsh:0 1px rgb(0 0 0 / .4); --du-psh:0 2px 8px rgb(0 0 0 / .45); --du-chbev:inset 0 1px hsl(var(--du-h) calc(40% * var(--du-c)) 72% / .28),inset 0 -1px hsl(var(--du-h) calc(85% * var(--du-c)) 62% / .3); --du-tabbg:linear-gradient(180deg,hsl(var(--du-h) calc(22% * var(--du-c)) 24%),hsl(var(--du-h) calc(24% * var(--du-c)) 18%) 44%,hsl(var(--du-h) calc(32% * var(--du-c)) 11%) 45%,hsl(var(--du-h) calc(42% * var(--du-c)) 19%) 100%); --du-tabon:linear-gradient(180deg,hsl(var(--du-h) calc(26% * var(--du-c)) 34%),hsl(var(--du-h) calc(22% * var(--du-c)) 20%) 70%,hsl(var(--du-h) calc(32% * var(--du-c)) 24%) 100%); --du-fade:linear-gradient(180deg,hsl(var(--du-h) calc(60% * var(--du-c)) 60% / .08),hsl(var(--du-h) calc(60% * var(--du-c)) 55% / .2)); --du-chrome:linear-gradient(180deg,hsl(var(--du-h) calc(32% * var(--du-c)) 31%),hsl(var(--du-h) calc(34% * var(--du-c)) 21%) 44%,hsl(var(--du-h) calc(42% * var(--du-c)) 13%) 45%,hsl(var(--du-h) calc(44% * var(--du-c)) 17%) 76%,hsl(var(--du-h) calc(56% * var(--du-c)) 27%) 100%); --du-face:linear-gradient(180deg,hsl(var(--du-h) calc(32% * var(--du-c)) 42%) 0%,hsl(var(--du-h) calc(26% * var(--du-c)) 29%) 9%,hsl(var(--du-h) calc(28% * var(--du-c)) 23%) 44%,hsl(var(--du-h) calc(46% * var(--du-c)) 12%) 45%,hsl(var(--du-h) calc(46% * var(--du-c)) 16%) 65%,hsl(var(--du-h) calc(56% * var(--du-c)) 26%) 88%,hsl(var(--du-h) calc(72% * var(--du-c)) 40%) 100%); --du-prim:linear-gradient(180deg,hsl(var(--du-h) calc(70% * var(--du-c)) 64%) 0%,hsl(var(--du-h) calc(68% * var(--du-c)) 50%) 9%,hsl(var(--du-h) calc(70% * var(--du-c)) 44%) 44%,hsl(var(--du-h) calc(80% * var(--du-c)) 26%) 45%,hsl(var(--du-h) calc(76% * var(--du-c)) 32%) 65%,hsl(var(--du-h) calc(72% * var(--du-c)) 44%) 88%,hsl(var(--du-h) calc(85% * var(--du-c)) 60%) 100%); --du-edge:hsl(var(--du-h) calc(32% * var(--du-c)) 6%); --du-bev:inset 0 0 0 1px hsl(var(--du-h) calc(45% * var(--du-c)) 70% / .18),inset 0 1px hsl(var(--du-h) calc(45% * var(--du-c)) 76% / .4),inset 0 -1px hsl(var(--du-h) calc(88% * var(--du-c)) 66% / .5),inset 0 -2px hsl(var(--du-h) calc(70% * var(--du-c)) 45% / .35),0 1px 2px rgb(0 0 0 / .5); --du-glow:0 0 9px hsl(var(--du-h) calc(90% * var(--du-c)) 58% / .45); } html[data-du-mode="dark"][data-du-glass="modern"]{ --du-chrome:linear-gradient(180deg,hsl(var(--du-h) calc(26% * var(--du-c)) 23%),hsl(var(--du-h) calc(28% * var(--du-c)) 15%) 75%,hsl(var(--du-h) calc(40% * var(--du-c)) 22%) 100%); --du-face:linear-gradient(180deg,hsl(var(--du-h) calc(22% * var(--du-c)) 28%),hsl(var(--du-h) calc(24% * var(--du-c)) 18%) 75%,hsl(var(--du-h) calc(36% * var(--du-c)) 25%) 100%); --du-prim:linear-gradient(180deg,hsl(var(--du-h) calc(70% * var(--du-c)) 54%),hsl(var(--du-h) calc(72% * var(--du-c)) 38%) 75%,hsl(var(--du-h) calc(76% * var(--du-c)) 50%) 100%); --du-edge:hsl(var(--du-h) calc(28% * var(--du-c)) 6%); --du-bev:inset 0 0 0 1px hsl(var(--du-h) calc(40% * var(--du-c)) 70% / .15),inset 0 1px hsl(var(--du-h) calc(40% * var(--du-c)) 72% / .3),inset 0 -1px hsl(var(--du-h) calc(80% * var(--du-c)) 60% / .35),0 1px 2px rgb(0 0 0 / .35); --du-glow:0 0 8px hsl(var(--du-h) calc(85% * var(--du-c)) 58% / .35); } html[data-du-mode="dark"][data-du-glass="flat"]{ --du-chrome:hsl(var(--du-h) calc(24% * var(--du-c)) 16%); --du-face:hsl(var(--du-h) calc(21% * var(--du-c)) 21%); --du-prim:hsl(var(--du-h) calc(70% * var(--du-c)) 46%); --du-edge:hsl(var(--du-h) calc(18% * var(--du-c)) 26%); --du-bev:0 0 0 transparent; --du-glow:0 0 0 transparent; --du-hot:hsl(16 75% 45%); --du-gold:hsl(40 70% 42%); } /* === TIER: SEMANTIC (typography) === */ :root{ --du-body-size: 16px; --du-body-lh: 1.55; --du-body-track: 0; /* letter-spacing, LTR only */ --du-font-ui: Inter, ui-sans-serif, system-ui, sans-serif; --du-font-ar: "Noto Sans Arabic", "Noto Naskh Arabic", "Segoe UI", Tahoma, sans-serif; } html:lang(ar), html[lang="ar"], html[dir="rtl"]{ --du-body-size: 18px; /* ~+12% step-up: Arabic glyphs read smaller at same px */ --du-body-lh: 1.75; /* more leading for stacked harakat / voweled Qur'anic text */ --du-body-track: normal; /* NEVER letter-space cursive Arabic */ } /* === TIER: COMPONENT === */ /* ============ generic components (opt-in classes) ============ */ html{background:var(--du-page)} .du-body{background:var(--du-page);color:var(--du-text)} .du-chrome{background:var(--du-noise),var(--du-chrome);box-shadow:var(--du-chbev);border-bottom:1px solid var(--du-edge);color:var(--du-text);text-shadow:var(--du-tsh)} .du-chrome--hero{background:var(--du-star),var(--du-noise),var(--du-chrome)} html[data-du-glass="flat"] .du-chrome,html[data-du-glass="flat"] .du-chrome--hero{background:var(--du-chrome)} .du-panel{background:var(--du-panel);border:1px solid var(--du-edge);border-radius:9px;box-shadow:var(--du-psh);color:var(--du-text)} .du-panel2{background:var(--du-panel2)} .du-button{display:inline-flex;gap:7px;align-items:center;background:var(--du-face);border:1px solid var(--du-edge);border-radius:7px;box-shadow:var(--du-bev);color:var(--du-text);text-shadow:var(--du-tsh);padding:7px 15px;cursor:pointer;transition:box-shadow .15s,filter .15s;text-decoration:none} .du-button:hover{box-shadow:var(--du-bev),var(--du-glow);filter:brightness(1.06)} .du-button:active{transform:translateY(1px);filter:brightness(.93)} .du-button--primary{background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0 / .3);position:relative;overflow:hidden} .du-button--primary::after{content:"";position:absolute;top:0;inset-inline-start:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .5),transparent);transform:skewX(-20deg);transition:inset-inline-start .5s;pointer-events:none} .du-button--primary:hover::after{inset-inline-start:120%} .du-tile{width:30px;height:30px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:var(--du-face);border:1px solid var(--du-edge);box-shadow:var(--du-bev);color:var(--du-glyph);text-shadow:var(--du-gsh);cursor:pointer} .du-tile:hover{box-shadow:var(--du-bev),var(--du-glow);filter:brightness(1.07)} .du-tile:active{transform:translateY(1px);filter:brightness(.92)} .du-tile--hot{background:var(--du-hot);border-color:hsl(14 65% 34%);color:hsl(10 80% 19%);text-shadow:0 -1px 0 hsl(30 100% 88% / .7),0 1px 1px hsl(8 80% 12% / .4)} .du-tile--hot.du-pulse{animation:du-unread 3.2s ease-in-out infinite} .du-tile--gold{background:var(--du-gold);border-color:hsl(34 65% 36%);color:hsl(35 90% 18%);text-shadow:0 -1px 0 hsl(52 100% 88% / .75),0 1px 1px hsl(30 80% 12% / .4)} .du-input{background:var(--du-panel);border:1px solid var(--du-edge);border-radius:7px;color:var(--du-text);padding:6px 11px;box-shadow:inset 0 1px 2px hsl(var(--du-h) calc(40% * var(--du-c)) 35% / .18)} .du-input:focus{border-color:hsl(var(--du-h) calc(70% * var(--du-c)) 50%);box-shadow:0 0 6px hsl(var(--du-h) calc(85% * var(--du-c)) 58% / .4);outline:none} .du-tab{padding:7px 15px 8px;border:1px solid var(--du-edge);border-bottom:none;border-radius:8px 8px 0 0;background:var(--du-tabbg);color:var(--du-text);text-shadow:var(--du-tsh);box-shadow:inset 0 1px hsl(var(--du-h) calc(80% * var(--du-c)) 96% / .5);cursor:pointer} .du-tab:hover{filter:brightness(1.05)} .du-tab.on,.du-tab[aria-selected="true"]{background:var(--du-tabon);box-shadow:var(--du-chbev);font-weight:500} .du-crumb{background:hsl(var(--du-h) calc(50% * var(--du-c)) 52% / .13);padding:2px 10px;border-radius:99px;box-shadow:inset 0 1px hsl(var(--du-h) calc(80% * var(--du-c)) 94% / .5);color:var(--du-muted)} .du-pill{font-size:11px;padding:1px 8px;border-radius:99px;font-weight:500} .du-pill--new{background:linear-gradient(180deg,hsl(22 95% 70%),hsl(12 82% 46%) 60%,hsl(20 90% 58%));color:#fff;text-shadow:0 1px rgb(0 0 0 / .25);box-shadow:inset 0 1px rgb(255 255 255 / .5),inset 0 -1px hsl(28 100% 70% / .7)} .du-pill--mod{background:linear-gradient(180deg,hsl(145 55% 52%),hsl(148 65% 28%) 60%,hsl(143 55% 42%));color:#fff;text-shadow:0 1px rgb(0 0 0 / .25);box-shadow:inset 0 1px rgb(255 255 255 / .45),inset 0 -1px hsl(140 80% 60% / .6)} .du-quote{border-inline-start:3px solid hsl(var(--du-h) calc(60% * var(--du-c)) 55%);background:linear-gradient(180deg,hsl(var(--du-h) calc(55% * var(--du-c)) 50% / .06),hsl(var(--du-h) calc(55% * var(--du-c)) 50% / .14));box-shadow:inset 0 1px hsl(var(--du-h) calc(80% * var(--du-c)) 92% / .4);padding:7px 11px;color:var(--du-text);border-radius:0} .du-row-hover:hover{background:var(--du-fade)} .du-fade--gold{background:linear-gradient(180deg,hsl(42 95% 60% / .12),hsl(42 95% 55% / .3))} .du-fade--red{background:linear-gradient(180deg,hsl(8 75% 50% / .12),hsl(8 75% 45% / .26))} .du-dot{width:7px;height:7px;border-radius:50%;background:hsl(135 70% 45%);box-shadow:0 0 0 0 hsl(135 70% 45% / .5);animation:du-pulse 2.2s infinite} @keyframes du-unread{50%{box-shadow:var(--du-bev),0 0 8px hsl(18 92% 55% / .55)}} @keyframes du-pulse{70%{box-shadow:0 0 0 6px transparent}} @media (prefers-reduced-motion:reduce){ .du-tile--hot.du-pulse,.du-dot{animation:none} .du-button--primary::after{display:none} } /* Dawah.Wiki MediaWiki URETHANE layer: Vector 2022 selector mapping. */ body.skin-vector { margin: 0; background: var(--du-page) !important; color: var(--du-text) !important; font-family: var(--du-font-ui); font-size: var(--du-body-size); line-height: var(--du-body-lh); } html[dir="rtl"] body.skin-vector, body.rtl, .mw-content-rtl { font-family: var(--du-font-ar); line-height: var(--du-body-lh); letter-spacing: normal; } body.skin-vector a { color: var(--du-link); } body.skin-vector a:hover { text-decoration-thickness: 2px; } body.skin-vector ::selection { background: hsl(var(--du-h) calc(75% * var(--du-c)) 58% / .28); } .vector-header-container, .mw-header, .vector-sticky-header { background: var(--du-star), var(--du-noise), var(--du-chrome) !important; border-bottom: 1px solid var(--du-edge) !important; box-shadow: var(--du-chbev), 0 1px 0 hsl(var(--du-h) calc(50% * var(--du-c)) 30% / .18) !important; color: var(--du-text) !important; } .mw-header { min-height: 58px; } .mw-logo, .mw-logo-container { color: var(--du-text) !important; text-decoration: none !important; } .mw-logo-icon { width: 40px !important; height: 40px !important; border-radius: 9px !important; background: var(--du-face) !important; border: 1px solid var(--du-edge) !important; box-shadow: var(--du-bev) !important; padding: 2px; } .mw-logo-wordmark { filter: drop-shadow(0 1px rgb(255 255 255 / .28)); } .vector-user-links, .vector-header-end { color: var(--du-text) !important; } .vector-search-box input, .vector-search-box .cdx-text-input__input, #searchInput, input[type="search"], input[type="text"], textarea, select { background: var(--du-panel) !important; color: var(--du-text) !important; border: 1px solid var(--du-edge) !important; border-radius: 7px !important; box-shadow: inset 0 1px 2px hsl(var(--du-h) calc(40% * var(--du-c)) 35% / .18) !important; } .vector-search-box input:focus, .vector-search-box .cdx-text-input__input:focus, #searchInput:focus, input:focus, textarea:focus, select:focus { border-color: hsl(var(--du-h) calc(70% * var(--du-c)) 50%) !important; box-shadow: 0 0 6px hsl(var(--du-h) calc(85% * var(--du-c)) 58% / .4) !important; outline: 2px solid transparent !important; } .cdx-button, .mw-ui-button, .vector-dropdown-label, .vector-menu-tabs a, .vector-page-tools a, .vector-user-menu a { border-color: var(--du-edge) !important; color: var(--du-text) !important; text-shadow: var(--du-tsh); } .cdx-button:not(.cdx-button--weight-quiet), .mw-ui-button, .vector-dropdown-label { background: var(--du-face) !important; box-shadow: var(--du-bev) !important; } .cdx-button:hover, .mw-ui-button:hover, .vector-dropdown-label:hover, .vector-menu-tabs a:hover { filter: brightness(1.05); box-shadow: var(--du-bev), var(--du-glow) !important; } .mw-page-container { background: transparent !important; max-width: 1280px !important; margin-top: 18px !important; } .mw-page-container-inner { column-gap: 22px !important; } .mw-body, .mw-body-content, .vector-body { color: var(--du-text) !important; } .mw-body { background: var(--du-panel) !important; border: 1px solid var(--du-edge) !important; border-radius: 9px !important; box-shadow: var(--du-psh) !important; padding: clamp(18px, 2.4vw, 34px) !important; } .mw-body-header, .vector-page-titlebar, .vector-page-toolbar-container { border-color: var(--du-line) !important; } .mw-first-heading, .mw-page-title-main, .mw-parser-output h1, .mw-parser-output h2, .mw-parser-output h3 { color: var(--du-text) !important; letter-spacing: 0; } .mw-parser-output h2, .mw-parser-output h3 { border-bottom-color: var(--du-line) !important; } .mw-parser-output p, .mw-parser-output li, .mw-parser-output dd, .mw-parser-output td, .mw-parser-output th { font-size: 1rem; line-height: var(--du-body-lh); } body:not(.page-Main_Page) .mw-parser-output > p, body:not(.page-Main_Page) .mw-parser-output > ul, body:not(.page-Main_Page) .mw-parser-output > ol, body:not(.page-Main_Page) .mw-parser-output > blockquote { max-width: 72ch; } body.page-Main_Page .mw-first-heading { display: none !important; } .vector-main-menu, .vector-main-menu .vector-pinnable-element, .vector-toc, .vector-page-tools, .vector-appearance, .vector-dropdown-content { background: var(--du-panel2) !important; border: 1px solid var(--du-edge) !important; border-radius: 9px !important; box-shadow: var(--du-psh) !important; color: var(--du-text) !important; } .vector-main-menu .vector-menu-heading, .vector-toc .vector-pinnable-header-label, .vector-page-tools .vector-pinnable-header-label, .vector-menu-heading { color: var(--du-muted) !important; font-size: 11px !important; font-weight: 800 !important; letter-spacing: .06em; text-transform: uppercase; } html[dir="rtl"] .vector-main-menu .vector-menu-heading, html[dir="rtl"] .vector-toc .vector-pinnable-header-label, html[dir="rtl"] .vector-page-tools .vector-pinnable-header-label, html[dir="rtl"] .vector-menu-heading { letter-spacing: normal; } .vector-main-menu a, .vector-toc a, .vector-page-tools a, .vector-menu-content-list a { border-radius: 7px; color: var(--du-text) !important; } .vector-main-menu a:hover, .vector-toc a:hover, .vector-page-tools a:hover, .vector-menu-content-list a:hover, .vector-toc-list-item-active > .vector-toc-link { background: var(--du-fade) !important; text-decoration: none !important; } .vector-toc-numb, .mw-editsection, .mw-editsection a, #siteSub, .mw-parser-output .mw-empty-elt { color: var(--du-muted) !important; } .catlinks, .mw-parser-output .hatnote, .mw-parser-output blockquote, .mw-parser-output .quotebox, .mw-parser-output pre, .mw-parser-output code { background: linear-gradient(180deg, hsl(var(--du-h) calc(55% * var(--du-c)) 50% / .06), hsl(var(--du-h) calc(55% * var(--du-c)) 50% / .14)) !important; border: 1px solid var(--du-line) !important; border-inline-start: 3px solid hsl(var(--du-h) calc(60% * var(--du-c)) 55%) !important; border-radius: 0 !important; color: var(--du-text) !important; box-shadow: inset 0 1px hsl(var(--du-h) calc(80% * var(--du-c)) 92% / .4) !important; } .mw-parser-output pre, .mw-parser-output code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; white-space: pre-wrap; } .wikitable, .mw-parser-output table { background: var(--du-panel) !important; border-color: var(--du-line) !important; color: var(--du-text) !important; } .wikitable th, .wikitable td, .mw-parser-output table th, .mw-parser-output table td { border-color: var(--du-line) !important; } .wikitable th, .mw-parser-output table th { background: var(--du-panel2) !important; color: var(--du-muted) !important; } .mw-footer-container, .mw-footer, #footer { background: transparent !important; border-top: 0 !important; box-shadow: none !important; color: var(--du-muted) !important; } .mw-footer a, #footer a { color: var(--du-text) !important; text-decoration: none; } .mw-footer a:hover, #footer a:hover { color: var(--du-link) !important; text-decoration: underline; } #footer-icons, #footer-poweredbyico { display: none !important; } #footer-places, #footer-info, .dw-footer-links { display: flex !important; flex-wrap: wrap; gap: 8px 18px; align-items: center; list-style: none; padding: 0 !important; } #footer-places li, #footer-info li, .dw-footer-links li { margin: 0 !important; } #footer-info, #footer-info li { color: var(--du-muted) !important; } #footer-info-lastmod { display: none !important; } #footer-info-copyright { font-size: 12px !important; color: var(--du-muted) !important; } /* Main Page portal classes used by Plan 007 wikitext. */ .dw-mainpage { max-width: 1120px; margin-inline: auto; color: var(--du-text); } .dw-mainpage * { box-sizing: border-box; } .dw-hero { position: relative; overflow: hidden; background: var(--du-star), var(--du-noise), var(--du-chrome); border: 1px solid var(--du-edge); border-radius: 9px; box-shadow: var(--du-bev), var(--du-psh); padding: clamp(28px, 4vw, 54px); margin: 0 0 18px; } .dw-hero h1 { margin: 0 0 12px; max-width: 780px; color: var(--du-text) !important; font-size: clamp(2.2rem, 5vw, 4.2rem); line-height: .98; font-weight: 900; letter-spacing: -.045em; } html[dir="rtl"] .dw-hero h1 { letter-spacing: normal; line-height: 1.08; } .dw-hero p { max-width: 720px; margin: 0 0 22px; color: var(--du-text); font-size: clamp(1.05rem, 1.8vw, 1.35rem); line-height: 1.45; } html[dir="rtl"] .dw-hero p { line-height: 1.75; } .dw-button, .dw-button-wrap a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 8px; padding: 9px 18px; border-radius: 7px; border: 1px solid var(--du-edge); background: var(--du-prim); color: #fff !important; text-decoration: none !important; font-weight: 800; text-shadow: 0 1px rgb(0 0 0 / .35); box-shadow: var(--du-bev); } .dw-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 16px; } .dw-card { position: relative; min-height: 156px; background: var(--du-panel); border: 1px solid var(--du-edge); border-radius: 9px; box-shadow: var(--du-psh); padding: 18px; } .dw-card:hover { box-shadow: var(--du-psh), var(--du-glow); } .dw-card h2 { margin: 10px 0 8px !important; border: 0 !important; color: var(--du-text) !important; font-size: 1.25rem; font-weight: 900; line-height: 1.18; } .dw-card p { margin: 0 0 14px; color: var(--du-muted); } .dw-card .dw-cta { color: var(--du-link) !important; font-weight: 800; } .dw-stretch, .dw-card > a:last-child, .dw-cardlink a { position: absolute; inset: 0; z-index: 3; border-radius: 9px; overflow: hidden; text-indent: -9999px; } .dw-stretch:focus, .dw-card > a:last-child:focus, .dw-cardlink a:focus { outline: 3px solid hsl(var(--du-h) calc(80% * var(--du-c)) 55%); outline-offset: 3px; } .dw-tile { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; background: var(--du-face); border: 1px solid var(--du-edge); box-shadow: var(--du-bev); color: var(--du-glyph); font-size: 18px; font-weight: 900; text-shadow: var(--du-gsh); } .dw-crosslinks { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin: 16px 0; padding: 16px 18px; background: var(--du-panel2); border: 1px solid var(--du-edge); border-radius: 9px; color: var(--du-muted); } body.page-Main_Page .dw-crosslinks { display: none !important; } .dw-crosslinks a { font-weight: 700; text-decoration: none; } .dw-note { color: var(--du-muted); margin: 16px 0 0; } html[dir="rtl"] .dw-mainpage { text-align: right; } html[dir="rtl"] .dw-grid { direction: rtl; } html[dir="rtl"] .dw-card { text-align: right; } /* Main Page: suppress stock Vector controls so the approved portal board owns the page. */ body.page-Main_Page .mw-body-header, body.page-Main_Page .vector-page-titlebar, body.page-Main_Page .vector-page-toolbar, body.page-Main_Page .vector-appearance, body.page-Main_Page .vector-column-end, body.page-Main_Page .mw-table-of-contents-container { display: none !important; } body.page-Main_Page .mw-page-container-inner { display: block !important; } body.page-Main_Page .mw-content-container, body.page-Main_Page .mw-body { max-width: 1120px !important; margin-inline: auto !important; } body.page-Main_Page .mw-body { padding: clamp(18px, 2vw, 28px) !important; } .dw-mainpage a.external, .dw-mainpage a.external:visited { background-image: none !important; padding-inline-end: 0 !important; } .dw-button-wrap a, .dw-button-wrap a.external, .dw-button-wrap a.external:visited { background: var(--du-prim) !important; color: #fff !important; text-decoration: none !important; min-width: 220px !important; padding-inline: 28px !important; } .dw-cardlink a, .dw-cardlink a.external, .dw-cardlink a.external:visited { background: transparent !important; padding: 0 !important; } .dw-crosslinks a.external, .dw-crosslinks a.external:visited { background: transparent !important; padding-inline-end: 0 !important; } @media (max-width: 900px) { .mw-page-container { margin-top: 10px !important; } .mw-body { padding: 16px !important; } .dw-grid { grid-template-columns: 1fr; } .dw-hero { padding: 24px; } } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } } /* IMPLEMENTAUDIT wiki-ui-polish 2026-06-18: non-main Vector polish. Owner-gated payload only. Keep EN/AR synchronized. */ .duglobal.du-chrome{position:sticky;top:0;z-index:80;width:100%;margin:0;padding:0;border-radius:0;border-bottom:0} .duglobal{position:sticky;top:0;z-index:80} .duglobal::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--du-line);z-index:1} .duglobal *{box-sizing:border-box} .duglobal-in{box-sizing:border-box;width:100%;max-width:min(1660px,94vw);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:14px;padding-block:11px 0;padding-inline:clamp(16px,3vw,24px)} .duglobal .brand{grid-column:1;justify-self:start;align-self:center;display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--du-text);text-shadow:var(--du-tsh);font-weight:800;min-height:44px;min-width:0;flex:0 0 auto} .duglobal .brand .crest{width:42px;height:42px;border-radius:50%;background:var(--du-panel);border:1px solid var(--du-edge);box-shadow:var(--du-bev);display:block;object-fit:cover;overflow:hidden;flex:0 0 auto} .duglobal .brand .wm{font-size:15px;letter-spacing:0;white-space:nowrap} :root,[data-du-mode="light"]{--du-tabidle:hsl(var(--du-h) calc(30% * var(--du-c)) 90%);--du-tabidle-top:hsl(var(--du-h) calc(36% * var(--du-c)) 95%)} [data-du-mode="dark"]{--du-tabidle:hsl(var(--du-h) calc(22% * var(--du-c)) 19%);--du-tabidle-top:hsl(var(--du-h) calc(22% * var(--du-c)) 25%)} .duglobal .switch{grid-column:2;justify-self:center;align-self:end;position:relative;display:flex;align-items:flex-end;justify-content:center;gap:5px;min-width:0;overflow:visible;background:transparent;border:0;box-shadow:none;border-radius:0;padding:0} .duglobal .switch>a{align-self:flex-end;position:relative;z-index:2;padding:0 14px;height:34px;border:1px solid var(--du-edge);border-bottom:0;border-radius:9px 9px 0 0;background:var(--du-face);color:var(--du-text);text-shadow:var(--du-tsh);text-decoration:none;display:inline-flex;align-items:center;gap:7px;font-size:13.5px;white-space:nowrap;line-height:1} .duglobal .switch>a:hover{filter:brightness(1.04)} .duglobal .switch>a[aria-current="page"]{z-index:6;height:46px;font-weight:800;background:var(--du-panel);box-shadow:var(--du-chbev)} .duglobal .switch>a[aria-current="page"]::after{content:"";position:absolute;inset-inline:0;bottom:-1px;height:2px;background:var(--du-panel);z-index:5} .duglobal .switch>a .ic{width:15px;height:15px;display:inline-block;flex:0 0 auto;opacity:.86} .duglobal .switch>a .ic svg{width:15px;height:15px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round} .duglobal .brand *,.duglobal .switch>a *,.duglobal .langtog a *{pointer-events:none} .duglobal .gright{grid-column:3;justify-self:end;align-self:center;display:flex;align-items:center;gap:9px;min-width:0;flex:0 0 auto} .duglobal .langtog{display:inline-flex;border:1px solid var(--du-edge);border-radius:7px;overflow:hidden;box-shadow:var(--du-bev)} .duglobal .langtog a{padding:0 12px;height:30px;display:inline-flex;align-items:center;text-decoration:none;background:var(--du-face);color:var(--du-text);text-shadow:var(--du-tsh);font-size:13px;line-height:1} .duglobal .langtog a + a{border-inline-start:1px solid var(--du-edge)} .duglobal .langtog a[aria-current="true"]{background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0/.3)} #du-theme-slot{display:inline-flex;position:relative} .duglobal #du-fab{position:relative;transform:translateY(-1px)} .duglobal #du-panel{top:calc(100% + 8px)!important;bottom:auto!important;inset-inline-end:0!important} .duglobal .who{display:inline-flex;align-items:center;gap:7px;padding-inline-start:4px;color:var(--du-muted);font-size:12.5px;max-width:220px;white-space:nowrap;overflow:visible;text-overflow:clip} .duglobal .who .du-login{display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-shadow:0 1px 2px rgb(0 0 0 / .6),0 0 1px rgb(0 0 0 / .85);font-weight:900;font-size:14px;line-height:17px;white-space:nowrap;text-decoration:none!important;padding:9px 15px;transform:translateY(-8px);border-radius:12px;border:1px solid var(--du-edge);background:linear-gradient(rgb(0 0 0 / .38),rgb(0 0 0 / .38)),var(--du-prim);box-shadow:var(--du-bev)} .duglobal .who .du-login:hover{box-shadow:var(--du-bev),var(--du-glow);filter:brightness(1.06)} .duglobal ~ .vector-header-container #pt-login-2,.duglobal ~ .vector-header-container #pt-login{display:none!important} body.skin-vector .vector-header-container{z-index:70} body.skin-vector #p-search{flex:0 1 520px!important;max-width:520px!important;min-width:min(360px,calc(100vw - 32px))!important} body.skin-vector #searchform{max-width:520px!important;width:100%!important} body.skin-vector .cdx-search-input{border-radius:8px!important;box-shadow:var(--du-bev)!important;background:var(--du-panel)!important;border-color:var(--du-edge)!important;overflow:hidden} body.skin-vector #searchInput{background:var(--du-panel)!important;color:var(--du-text)!important;border-color:var(--du-edge)!important;box-shadow:none!important} html[dir="ltr"] body.skin-vector #searchInput{border-radius:7px 0 0 7px!important} html[dir="rtl"] body.skin-vector #searchInput{border-radius:0 7px 7px 0!important} body.skin-vector .cdx-search-input__end-button{background:var(--du-prim)!important;color:#fff!important;border-color:var(--du-edge)!important;text-shadow:0 1px rgb(0 0 0/.35)!important;box-shadow:var(--du-bev)!important;font-weight:800!important} html[dir="ltr"] body.skin-vector .cdx-search-input__end-button{border-radius:0 7px 7px 0!important} html[dir="rtl"] body.skin-vector .cdx-search-input__end-button{border-radius:7px 0 0 7px!important} .vector-pinned-container,#vector-toc-pinned-container,#vector-main-menu-pinned-container,#vector-page-tools-pinned-container,#vector-appearance-pinned-container,.vector-unpinned-container{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important} .vector-sticky-pinned-container::after{background:linear-gradient(rgb(0 0 0 / 0),var(--du-bg))!important} #vector-main-menu-dropdown>.vector-dropdown-content,#vector-page-tools-dropdown>.vector-dropdown-content,#vector-page-titlebar-toc>.vector-dropdown-content{background:var(--du-panel)!important;border:1px solid var(--du-edge)!important;border-radius:10px!important;box-shadow:var(--du-psh),0 10px 28px rgb(0 0 0/.28)!important;padding:0!important;overflow:hidden!important;color:var(--du-text)!important} #vector-main-menu-dropdown #vector-main-menu,#vector-page-tools-dropdown #vector-page-tools,#vector-page-titlebar-toc .vector-toc{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:var(--du-text)!important} .vector-main-menu .vector-pinnable-header,.vector-page-tools .vector-pinnable-header,.vector-appearance .vector-pinnable-header{background:linear-gradient(to bottom,rgb(255 255 255/.06),rgb(0 0 0/.06)),var(--du-panel2)!important;border-bottom:1px solid var(--du-line)!important;color:var(--du-text)!important;border-radius:0!important;padding:8px 10px!important} [data-du-mode="dark"] .vector-main-menu .vector-pinnable-header,[data-du-mode="dark"] .vector-page-tools .vector-pinnable-header,[data-du-mode="dark"] .vector-appearance .vector-pinnable-header{border-bottom-color:hsl(var(--du-h) calc(18% * var(--du-c)) 34%/.55)!important} .vector-pinnable-header-toggle-button{background:var(--du-face)!important;border:1px solid var(--du-edge)!important;border-radius:6px!important;box-shadow:var(--du-bev)!important;color:var(--du-text)!important;padding:5px 12px!important;min-width:42px!important;min-height:28px!important;line-height:1!important;text-align:center!important;text-transform:none!important;font:800 12px/1.1 var(--du-font,system-ui)!important} .vector-main-menu .mw-list-item>a,.vector-page-tools .mw-list-item>a,.vector-toc .vector-toc-link{border-radius:7px!important;color:var(--du-text)!important;text-decoration:none!important;min-height:30px!important} .vector-main-menu .mw-list-item>a:hover,.vector-main-menu .mw-list-item>a:focus-visible,.vector-page-tools .mw-list-item>a:hover,.vector-page-tools .mw-list-item>a:focus-visible,.vector-toc .vector-toc-link:hover,.vector-toc .vector-toc-link:focus-visible{background:var(--du-panel2)!important;outline:2px solid var(--du-link)!important;outline-offset:-2px!important} .vector-main-menu .mw-list-item.selected>a,.vector-toc .vector-toc-list-item-active>.vector-toc-link{background:var(--du-face)!important;box-shadow:var(--du-bev)!important;color:var(--du-text)!important} .vector-toc,.vector-appearance{padding:0!important;overflow:hidden!important} .vector-toc .vector-pinnable-header,.vector-appearance .vector-pinnable-header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:38px!important;padding-inline-end:10px!important} .vector-toc .vector-pinnable-header-label,.vector-appearance .vector-pinnable-header-label{color:var(--du-muted)!important;font-size:11px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important} .vector-toc .vector-pinnable-header{border-bottom-color:var(--du-line)!important} [data-du-mode="dark"] .vector-toc .vector-pinnable-header{border-bottom-color:hsl(var(--du-h) calc(18% * var(--du-c)) 34%/.55)!important} .vector-toc .vector-toc-list{padding:8px 10px 12px!important} .vector-toc .vector-toc-list-item{margin:0!important;padding:0!important;min-height:0!important} .vector-toc .vector-toc-list-item + .vector-toc-list-item{margin-top:4px!important} .vector-toc .vector-toc-list .vector-toc-list,.vector-toc .vector-toc-list .vector-toc-children,.vector-toc .vector-toc-list-item>ul,.vector-toc .vector-toc-list-item>ol{display:none!important;margin:0!important;padding:0!important;height:0!important;min-height:0!important;min-block-size:0!important} .vector-toc .vector-toc-link{box-sizing:border-box!important;position:relative!important;display:flex!important;align-items:center!important;min-height:34px!important;min-block-size:34px!important;block-size:auto!important;height:auto!important;padding:6px 10px 6px 13px!important;line-height:1.22!important;border:1px solid transparent!important;font-size:13.5px!important;font-weight:750!important} body.skin-vector .vector-toc .vector-toc-list-item .vector-toc-link{box-sizing:border-box!important;min-height:34px!important;min-block-size:34px!important;block-size:auto!important;height:auto!important;padding-block:6px!important;padding-inline:13px 10px!important} .vector-toc .vector-icon,.vector-toc .mw-ui-icon{display:none!important} .vector-toc .vector-toc-list-item-active::before,.vector-toc .vector-toc-list-item-active::after,.vector-toc .vector-toc-link::before,.vector-toc .vector-toc-link::after{display:none!important;content:none!important} .vector-toc .vector-toc-numb,.vector-toc .vector-toc-number{display:none!important} .vector-toc .vector-toc-text{display:block!important;color:inherit!important;min-height:0!important;padding:0!important;margin:0!important} .vector-toc .vector-toc-list-item-active>.vector-toc-link{background:linear-gradient(to bottom,hsl(var(--du-h) calc(35% * var(--du-c)) 88%/.92),hsl(var(--du-h) calc(40% * var(--du-c)) 78%/.86))!important;border-color:hsl(var(--du-h) calc(52% * var(--du-c)) 58%/.65)!important;color:#102d3f!important;text-shadow:0 1px rgb(255 255 255/.38)!important;font-weight:850!important;box-shadow:inset 0 1px rgb(255 255 255/.55),0 1px 2px rgb(0 0 0/.12)!important} [data-du-mode="dark"] .vector-toc .vector-toc-list-item-active>.vector-toc-link{background:linear-gradient(to bottom,hsl(var(--du-h) calc(35% * var(--du-c)) 88%/.94),hsl(var(--du-h) calc(40% * var(--du-c)) 76%/.9))!important;border-color:hsl(var(--du-h) calc(52% * var(--du-c)) 58%/.72)!important;color:#102d3f!important;text-shadow:0 1px rgb(255 255 255/.38)!important;box-shadow:inset 0 1px rgb(255 255 255/.55),0 1px 3px rgb(0 0 0/.32)!important} .vector-appearance .vector-pinnable-header{min-height:32px!important;padding:6px 10px!important} .vector-appearance .vector-appearance-text,.vector-appearance .vector-appearance-width{padding:6px 8px!important} .vector-appearance .vector-appearance-text + .vector-appearance-width{border-top:1px solid var(--du-line)!important} [data-du-mode="dark"] .vector-appearance .vector-appearance-text + .vector-appearance-width{border-top-color:hsl(var(--du-h) calc(18% * var(--du-c)) 34%/.55)!important} .vector-appearance .vector-menu-heading{display:block!important;box-sizing:border-box!important;color:var(--du-muted)!important;font-size:10.5px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important;margin:0 0 4px!important;padding:0 9px!important} .vector-appearance .vector-menu-content-list{display:grid!important;gap:0!important;margin:0!important;padding:0!important} .vector-appearance .cdx-radio{position:relative!important;display:block!important;min-height:24px!important;margin:0!important;padding:3px 9px 3px 27px!important;border-radius:6px!important;color:var(--du-text)!important;font-size:12.5px!important;opacity:1!important} .vector-appearance .cdx-radio:hover{background:var(--du-panel2)!important} .vector-appearance .cdx-radio::before{content:""!important;position:absolute!important;inline-size:7px!important;block-size:7px!important;inset-inline-start:11px!important;top:50%!important;transform:translateY(-50%)!important;border-radius:999px!important;background:transparent!important;border:1px solid var(--du-edge)!important;box-shadow:inset 0 1px rgb(255 255 255/.35),0 1px 1px rgb(0 0 0/.16)!important} .vector-appearance .cdx-radio:has(.cdx-radio__input:checked){background:linear-gradient(to bottom,rgb(255 255 255/.08),rgb(0 0 0/.04)),var(--du-panel2)!important;box-shadow:inset 0 1px rgb(255 255 255/.18),0 1px 1px rgb(0 0 0/.08)!important} .vector-appearance .cdx-radio:has(.cdx-radio__input:checked)::before{background:var(--du-link)!important;border-color:hsl(var(--du-h) calc(64% * var(--du-c)) 44%)!important;box-shadow:inset 0 1px rgb(255 255 255/.55),0 0 0 2px rgb(44 156 210/.12)!important} .vector-appearance .cdx-radio__label{color:var(--du-text)!important;opacity:1!important;font-size:12.5px!important;font-weight:700!important;line-height:1.1!important} .vector-appearance .cdx-radio--status-disabled .cdx-radio__label,.vector-appearance .cdx-radio[aria-disabled="true"] .cdx-radio__label,.vector-appearance .cdx-radio:has(input:disabled) .cdx-radio__label{color:var(--du-muted)!important;opacity:.86!important} .vector-appearance .cdx-radio__icon{display:none!important} .mw-helplink{color:var(--du-link)!important;font-weight:800!important;text-decoration:none!important} .mw-helplink:hover{text-decoration:underline!important} .mw-helplink-icon{opacity:.82!important;filter:none!important} .vector-page-toolbar{margin-block:12px 20px!important;border-top:1px solid var(--du-line)!important;padding-top:8px!important} .vector-page-toolbar-container{gap:8px!important;align-items:flex-end!important} .vector-menu-tabs .vector-menu-content-list{display:flex!important;align-items:flex-end!important;gap:6px!important} .vector-page-tools-landmark,#vector-page-tools-dropdown{display:flex!important;align-items:flex-end!important;align-self:flex-end!important;margin:0!important;padding:0!important} .vector-menu-tabs .mw-list-item{display:flex!important;align-items:flex-end!important;margin:0!important} .vector-menu-tabs .mw-list-item>a,#vector-page-tools-dropdown-label{box-sizing:border-box!important;background:var(--du-face)!important;border:1px solid var(--du-edge)!important;border-radius:8px 8px 0 0!important;box-shadow:var(--du-bev)!important;color:var(--du-text)!important;text-shadow:var(--du-tsh)!important;font-weight:750!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;height:34px!important;margin:0!important;padding:0 12px!important;transform:none!important} .vector-menu-tabs .mw-list-item.selected>a{height:38px!important;transform:translateY(1px)!important} #vector-page-tools-dropdown-label{min-width:74px!important;gap:6px!important} .vector-menu-tabs .mw-list-item.selected>a,#vector-page-tools-dropdown-checkbox:checked~#vector-page-tools-dropdown-label{background:var(--du-panel)!important;color:var(--du-text)!important;box-shadow:var(--du-chbev)!important} .vector-menu-tabs .mw-list-item>a:focus-visible,#vector-page-tools-dropdown-label:focus-visible{outline:3px solid var(--du-link)!important;outline-offset:2px!important} .mw-htmlform,.mw-htmlform-ooui,.mw-spcontent,.mw-search-form-wrapper,.searchresults,.mw-search-results-container,.mw-search-result,.mw-history-compareselectedversions,.mw-history-legend,.mw-pager-body,.mw-changeslist,.mw-recentchanges-table,.mw-specialpage-summary,.mw-category,.mw-allpages-table-form,.mw-changeslist-legend,body.skin-vector fieldset{background:var(--du-panel)!important;border:1px solid var(--du-edge)!important;border-radius:9px!important;box-shadow:var(--du-psh)!important;color:var(--du-text)!important;padding:12px!important} .mw-changeslist-legend *,.mw-changeslist-legend dt,.mw-changeslist-legend dd,body.skin-vector fieldset *{color:var(--du-text)!important} .mw-rcfilters-spinner{display:none!important} .mw-rcfilters-head{background:transparent!important;border:0!important;box-shadow:none!important;min-height:0!important;margin:8px 0 14px!important;padding:0!important} .mw-search-result,.mw-changeslist li,.mw-history-line,.mw-contributions-list li,.mw-pager-body li{background:var(--du-panel2)!important;border:1px solid var(--du-line)!important;border-radius:8px!important;margin-block:7px!important;padding:9px 11px!important;color:var(--du-text)!important} .mw-changeslist,.mw-recentchanges-table{color:var(--du-text)!important} .mw-changeslist h4,.mw-changeslist-date{color:var(--du-muted)!important;opacity:.94!important;font-weight:850!important} .mw-changeslist-line-prefix,.mw-enhanced-rc-nested{color:var(--du-muted)!important;opacity:1!important} .mw-changeslist abbr,.mw-enhanced-rc abbr,.mw-changeslist .mw-plusminus-pos,.mw-changeslist .mw-plusminus-neg{text-decoration:none!important;font-weight:900!important} .mw-plusminus-pos{color:hsl(135 76% 46%)!important}.mw-plusminus-neg{color:hsl(6 78% 58%)!important} .mw-search-result-heading a,.mw-changeslist a,.mw-history-line a,.mw-contributions-list a,.mw-pager-body a{color:var(--du-link)!important} .mw-rcfilters-ui-filterWrapperWidget,.mw-rcfilters-ui-filterTagMultiselectWidget,.mw-rcfilters-ui-cell,.oo-ui-widget,.oo-ui-popupWidget-popup,.oo-ui-dropdownWidget-handle,.oo-ui-inputWidget-input,.oo-ui-buttonElement-button,.cdx-text-input__input,.cdx-select-vue,.cdx-menu,.cdx-card{background:var(--du-panel)!important;border-color:var(--du-edge)!important;color:var(--du-text)!important;box-shadow:none!important} .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button,.cdx-button,.mw-ui-button{background:var(--du-face)!important;border-color:var(--du-edge)!important;color:var(--du-text)!important;box-shadow:var(--du-bev)!important;text-shadow:var(--du-tsh)!important} .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button:hover,.cdx-button:hover,.mw-ui-button:hover{filter:brightness(1.04)!important} #wpTextbox1{width:100%!important;max-width:100%!important;box-sizing:border-box!important;min-height:55vh!important;background:var(--du-panel)!important;color:var(--du-text)!important;border:1px solid var(--du-edge)!important;border-radius:9px!important;box-shadow:inset 0 1px 2px rgb(0 0 0/.18)!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-size:.95rem!important;line-height:1.55!important;padding:14px!important;resize:vertical!important} #wpTextbox1[readonly]{cursor:text!important} #wpTextbox1:focus{outline:3px solid var(--du-link)!important;outline-offset:2px!important} .mw-permissionerror-badaccess-groups{background:var(--du-panel2)!important;border:1px solid var(--du-line)!important;border-radius:9px!important;color:var(--du-muted)!important;padding:12px!important} .mw-footer-container{background:var(--du-panel2)!important;border-top:1px solid var(--du-edge)!important;box-shadow:none!important;color:var(--du-muted)!important;min-height:0!important;padding:0!important;margin-top:28px!important} #footer.mw-footer,.mw-footer{background:transparent!important;border:0!important;box-shadow:none!important;min-height:0!important;padding:16px clamp(16px,3vw,24px)!important;max-width:min(1680px,94vw)!important;margin-inline:auto!important;color:var(--du-muted)!important} #footer-info:empty{display:none!important} #footer-places{justify-content:center!important;gap:8px 11px!important;font-size:13px!important;font-weight:600!important} #footer-info{justify-content:center!important;gap:8px 11px!important;font-size:12px!important} #footer-places li{display:inline-flex!important;align-items:center!important;gap:8px!important} #footer-places li + li::before{content:"·"!important;color:var(--du-muted)!important;opacity:.55!important} #footer-places a,#footer-info a{color:var(--du-muted)!important;text-decoration:none!important} #footer-places a:hover,#footer-info a:hover{color:var(--du-link)!important} html[dir="rtl"] #firstHeading,html[dir="rtl"] .mw-first-heading{font-family:var(--du-font-ar),var(--du-font),system-ui,sans-serif!important;letter-spacing:0!important;line-height:1.15!important;word-break:normal!important;overflow-wrap:normal!important} html[dir="rtl"] .duglobal .switch>a{letter-spacing:0!important} @media(max-width:900px){ .duglobal-in{display:flex;flex-wrap:wrap;align-items:end;gap:8px 10px} .duglobal .switch{order:3;flex-basis:100%;height:auto;flex-wrap:wrap;justify-content:center} .duglobal .gright{margin-inline-start:auto}.duglobal .switch>a[aria-current="page"]{height:40px} body.skin-vector #p-search{min-width:0!important;max-width:100%!important;flex-basis:100%!important} .vector-page-toolbar-container{flex-wrap:wrap!important} } @media(max-width:560px){ .duglobal .switch>a{font-size:12.5px;padding:0 10px}.duglobal .brand .wm{display:none}.duglobal .who{max-width:150px}.duglobal .who .du-login{padding:8px 12px;font-size:13px;transform:translateY(-6px)} .mw-htmlform,.mw-htmlform-ooui,.mw-spcontent,.mw-search-form-wrapper,.searchresults,.mw-search-results-container,.mw-history-compareselectedversions,.mw-history-legend,.mw-pager-body,.mw-changeslist,.mw-recentchanges-table,.mw-specialpage-summary,.mw-category,.mw-allpages-table-form{padding:10px!important} html[dir="rtl"] .mw-changeslist,html[dir="rtl"] .mw-changeslist ul,html[dir="rtl"] .mw-changeslist li{margin-inline:0!important;padding-inline:0!important} html[dir="rtl"] .mw-changeslist-line,html[dir="rtl"] .mw-changeslist-line tbody,html[dir="rtl"] .mw-changeslist-line tr,html[dir="rtl"] .mw-changeslist-line td{display:block!important;max-width:100%!important;margin-inline:0!important;padding-inline:0!important} html[dir="rtl"] .mw-changeslist-title,html[dir="rtl"] .mw-changeslist-line-inner,html[dir="rtl"] .mw-changeslist-line-inner-comment,html[dir="rtl"] .comment{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important} } @media(max-width:340px){ .duglobal-in{padding-inline:8px;gap:6px 8px} .duglobal .gright{flex:1 1 0;justify-content:flex-end;flex-wrap:wrap;gap:5px 6px;max-width:100%} .duglobal .langtog a{padding:0 9px;min-width:31px} .duglobal #du-fab{transform:translateY(-1px) scale(.94);transform-origin:center} .duglobal .who{max-width:112px;padding-inline-start:0;flex:0 1 auto} .duglobal .who .du-login{max-width:112px;padding:7px 9px;font-size:12px;line-height:16px} } /* /IMPLEMENTAUDIT wiki-ui-polish 2026-06-18 */ /* IMPLEMENTAUDIT wiki-ui-hotfix 2026-06-18: final cascade guards for footer, side-panel seams, Main Page strip, and compact CTAs. Keep EN/AR synchronized. */ html body.page-Main_Page .dw-crosslinks { display: none !important; } html body .dw-button-wrap a, html body .dw-button-wrap a.external, html body .dw-button-wrap a.external:visited { min-width: 220px !important; padding-inline: 28px !important; } html body.skin-vector .vector-main-menu .vector-pinnable-header, html body.skin-vector .vector-page-tools .vector-pinnable-header, html body.skin-vector .vector-appearance .vector-pinnable-header, html body.skin-vector .vector-toc .vector-pinnable-header { border-bottom-color: var(--du-line) !important; } html[data-du-mode="dark"] body.skin-vector .vector-main-menu .vector-pinnable-header, html[data-du-mode="dark"] body.skin-vector .vector-page-tools .vector-pinnable-header, html[data-du-mode="dark"] body.skin-vector .vector-appearance .vector-pinnable-header, html[data-du-mode="dark"] body.skin-vector .vector-toc .vector-pinnable-header, html[data-du-mode="dark"] body.skin-vector .vector-appearance .vector-appearance-text + .vector-appearance-width { border-color: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; } html body.skin-vector .vector-pinnable-header-toggle-button { min-width: 48px !important; min-height: 28px !important; padding: 5px 12px !important; line-height: 1.1 !important; } html body.skin-vector .vector-toc .vector-icon, html body.skin-vector .vector-toc .mw-ui-icon, html body.skin-vector .vector-toc .vector-toc-toggle { display: none !important; } html body.skin-vector .vector-toc .vector-toc-list-item-active::before, html body.skin-vector .vector-toc .vector-toc-list-item-active::after, html body.skin-vector .vector-toc .vector-toc-link::before, html body.skin-vector .vector-toc .vector-toc-link::after { content: none !important; display: none !important; } html body.skin-vector .vector-toc .vector-toc-list-item-active > .vector-toc-link { box-shadow: inset 0 1px rgb(255 255 255 / .55), 0 1px 2px rgb(0 0 0 / .12) !important; } html[data-du-mode="dark"] body.skin-vector .vector-toc .vector-toc-list-item-active > .vector-toc-link { box-shadow: inset 0 1px rgb(255 255 255 / .55), 0 1px 3px rgb(0 0 0 / .32) !important; } html body.skin-vector .mw-footer-container { position: relative !important; left: 50% !important; width: 100vw !important; margin-left: -50vw !important; margin-right: 0 !important; margin-top: 28px !important; padding: 0 !important; background: var(--du-panel2) !important; border-top: 1px solid var(--du-edge) !important; box-shadow: none !important; color: var(--du-muted) !important; } html body.skin-vector #footer.mw-footer, html body.skin-vector .mw-footer { width: 100% !important; max-width: min(1660px, 94vw) !important; min-height: 0 !important; margin: 0 auto !important; padding: 16px clamp(16px, 3vw, 24px) !important; background: transparent !important; border: 0 !important; box-shadow: none !important; color: var(--du-muted) !important; text-align: center !important; } html body.skin-vector #footer-info, html body.skin-vector #footer-places { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: center !important; gap: 6px 11px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; } html body.skin-vector #footer-places { font-size: 13px !important; font-weight: 600 !important; line-height: 1.2 !important; } html body.skin-vector #footer-info { margin-top: 6px !important; font-size: 12px !important; line-height: 1.2 !important; } html body.skin-vector #footer-info-lastmod, html body.skin-vector #footer-info-viewcount { display: none !important; } html body.skin-vector #footer-info-copyright { display: inline-flex !important; color: var(--du-muted) !important; } html body.skin-vector #footer-places li { display: inline-flex !important; align-items: center !important; margin: 0 !important; padding: 0 !important; font-size: inherit !important; } html body.skin-vector #footer-places li + li::before { content: "·" !important; margin-inline-end: 11px !important; color: var(--du-muted) !important; opacity: .55 !important; font-weight: 700 !important; } html body.skin-vector #footer-places a, html body.skin-vector #footer-info a { color: var(--du-muted) !important; font-size: inherit !important; text-decoration: none !important; } html body.skin-vector #footer-places a:hover, html body.skin-vector #footer-info a:hover { color: var(--du-link) !important; } @media (max-width: 560px) { html body.skin-vector #footer.mw-footer, html body.skin-vector .mw-footer { padding-block: 14px !important; } } /* /IMPLEMENTAUDIT wiki-ui-hotfix 2026-06-18 */ /* IMPLEMENTAUDIT wiki-ui-hotfix-r3 2026-06-18: visual cleanup after live screenshot readback; keep the TOC rail flush and footer order canonical. */ html body .vector-toc .vector-toc-toggle, html body .vector-toc button.vector-toc-toggle, html body .vector-toc .cdx-button.vector-toc-toggle { position: absolute !important; inline-size: 0 !important; block-size: 0 !important; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; clip-path: inset(50%) !important; } html body .vector-toc .vector-toc-list-item { overflow: hidden !important; } html body .mw-footer-container { position: relative !important; left: 50% !important; width: 100vw !important; margin-left: -50vw !important; margin-right: 0 !important; margin-top: 28px !important; padding: 0 !important; background: var(--du-panel2) !important; border-top: 1px solid var(--du-edge) !important; box-shadow: none !important; } html body #footer.mw-footer, html body .mw-footer { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; max-width: min(1660px, 94vw) !important; margin: 0 auto !important; padding: 16px clamp(16px, 3vw, 24px) !important; background: transparent !important; border: 0 !important; box-shadow: none !important; } html body #footer-places { order: 1 !important; } html body #footer-info { order: 2 !important; margin-top: 6px !important; } /* /IMPLEMENTAUDIT wiki-ui-hotfix-r3 2026-06-18 */ /* IMPLEMENTAUDIT wiki-special-chrome-hotfix 2026-06-18: special-page chrome final guards for Vector/Codex generated widgets, menu padding, and seam-free wiki inner header under the site-wide URETHANE nav. */ html body.skin-vector { --background-color-interactive: var(--du-panel2) !important; --border-color-base: var(--du-edge) !important; --border-color-subtle: var(--du-line) !important; --border-color-muted: var(--du-line) !important; --box-shadow-color-base: rgb(0 0 0 / .22) !important; } html[data-du-mode="dark"] body.skin-vector { --background-color-interactive: hsl(var(--du-h) calc(18% * var(--du-c)) 18%) !important; --border-color-base: hsl(var(--du-h) calc(20% * var(--du-c)) 31% / .78) !important; --border-color-subtle: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; --border-color-muted: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; --box-shadow-color-base: rgb(0 0 0 / .5) !important; } html body.skin-vector .duglobal + .vector-header-container, html body.skin-vector .duglobal + .vector-header-container .mw-header, html body.skin-vector .duglobal + .vector-header-container .vector-sticky-header { background: transparent !important; border-bottom-color: var(--du-line) !important; box-shadow: none !important; } html body.skin-vector .duglobal + .vector-header-container .mw-header { min-height: 45px !important; padding-block: 5px !important; } html body.skin-vector .duglobal + .vector-header-container .mw-logo-icon { border-radius: 50% !important; } html body.skin-vector .mw-body-header, html body.skin-vector .vector-page-titlebar, html body.skin-vector .vector-page-toolbar, html body.skin-vector .vector-page-toolbar-container, html body.skin-vector .vector-page-titlebar::before, html body.skin-vector .vector-page-titlebar::after, html body.skin-vector .vector-page-toolbar::before, html body.skin-vector .vector-page-toolbar::after { border-color: var(--du-line) !important; box-shadow: none !important; } html[data-du-mode="dark"] body.skin-vector .mw-body-header, html[data-du-mode="dark"] body.skin-vector .vector-page-titlebar, html[data-du-mode="dark"] body.skin-vector .vector-page-toolbar, html[data-du-mode="dark"] body.skin-vector .vector-page-toolbar-container, html[data-du-mode="dark"] body.skin-vector .vector-page-titlebar::before, html[data-du-mode="dark"] body.skin-vector .vector-page-titlebar::after, html[data-du-mode="dark"] body.skin-vector .vector-page-toolbar::before, html[data-du-mode="dark"] body.skin-vector .vector-page-toolbar::after { border-color: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; } html body.skin-vector .vector-menu-heading, html body.skin-vector .vector-appearance .vector-menu-heading, html body.skin-vector .vector-page-tools .vector-menu-heading, html body.skin-vector .vector-main-menu .vector-menu-heading { border-color: var(--du-line) !important; border-bottom-color: var(--du-line) !important; box-shadow: none !important; padding-inline: 12px !important; } html[data-du-mode="dark"] body.skin-vector .vector-menu-heading, html[data-du-mode="dark"] body.skin-vector .vector-appearance .vector-menu-heading, html[data-du-mode="dark"] body.skin-vector .vector-page-tools .vector-menu-heading, html[data-du-mode="dark"] body.skin-vector .vector-main-menu .vector-menu-heading { border-color: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; border-bottom-color: hsl(var(--du-h) calc(18% * var(--du-c)) 34% / .55) !important; } html body.skin-vector .vector-main-menu .vector-menu-content-list, html body.skin-vector #vector-main-menu-dropdown .vector-menu-content-list { padding: 10px 12px 12px !important; } html body.skin-vector .vector-main-menu .mw-list-item > a, html body.skin-vector #vector-main-menu-dropdown .mw-list-item > a { display: flex !important; align-items: center !important; min-height: 32px !important; padding: 6px 10px !important; line-height: 1.25 !important; } html body.skin-vector #vector-main-menu-dropdown > .vector-dropdown-content, html body.skin-vector #vector-page-tools-dropdown > .vector-dropdown-content, html body.skin-vector #vector-page-titlebar-toc > .vector-dropdown-content, html body.skin-vector .vector-appearance, html body.skin-vector .vector-toc, html body.skin-vector #mw-panel-toc { border-color: var(--du-edge) !important; box-shadow: var(--du-psh), 0 10px 28px rgb(0 0 0 / .18) !important; } html[data-du-mode="dark"] body.skin-vector #vector-main-menu-dropdown > .vector-dropdown-content, html[data-du-mode="dark"] body.skin-vector #vector-page-tools-dropdown > .vector-dropdown-content, html[data-du-mode="dark"] body.skin-vector #vector-page-titlebar-toc > .vector-dropdown-content, html[data-du-mode="dark"] body.skin-vector .vector-appearance, html[data-du-mode="dark"] body.skin-vector .vector-toc, html[data-du-mode="dark"] body.skin-vector #mw-panel-toc { border-color: hsl(var(--du-h) calc(20% * var(--du-c)) 31% / .78) !important; box-shadow: var(--du-psh), 0 10px 28px rgb(0 0 0 / .35) !important; } html body.skin-vector .vector-pinnable-header-toggle-button { min-width: 56px !important; padding-inline: 14px !important; } html body.skin-vector .mw-htmlform, html body.skin-vector .mw-htmlform-ooui, html body.skin-vector .mw-spcontent, html body.skin-vector .mw-search-form-wrapper, html body.skin-vector .searchresults, html body.skin-vector .mw-search-results-container, html body.skin-vector .mw-search-result, html body.skin-vector .mw-history-compareselectedversions, html body.skin-vector .mw-history-legend, html body.skin-vector .mw-pager-body, html body.skin-vector .mw-changeslist, html body.skin-vector .mw-recentchanges-table, html body.skin-vector .mw-specialpage-summary, html body.skin-vector .mw-category, html body.skin-vector .mw-allpages-table-form, html body.skin-vector .mw-changeslist-legend, html body.skin-vector .oo-ui-fieldsetLayout, html body.skin-vector .oo-ui-panelLayout, html body.skin-vector .oo-ui-panelLayout-framed, html body.skin-vector fieldset { background: var(--du-panel) !important; border-color: var(--du-edge) !important; box-shadow: var(--du-psh) !important; } html[data-du-mode="dark"] body.skin-vector .mw-htmlform, html[data-du-mode="dark"] body.skin-vector .mw-htmlform-ooui, html[data-du-mode="dark"] body.skin-vector .mw-spcontent, html[data-du-mode="dark"] body.skin-vector .mw-search-form-wrapper, html[data-du-mode="dark"] body.skin-vector .searchresults, html[data-du-mode="dark"] body.skin-vector .mw-search-results-container, html[data-du-mode="dark"] body.skin-vector .mw-search-result, html[data-du-mode="dark"] body.skin-vector .mw-history-compareselectedversions, html[data-du-mode="dark"] body.skin-vector .mw-history-legend, html[data-du-mode="dark"] body.skin-vector .mw-pager-body, html[data-du-mode="dark"] body.skin-vector .mw-changeslist, html[data-du-mode="dark"] body.skin-vector .mw-recentchanges-table, html[data-du-mode="dark"] body.skin-vector .mw-specialpage-summary, html[data-du-mode="dark"] body.skin-vector .mw-category, html[data-du-mode="dark"] body.skin-vector .mw-allpages-table-form, html[data-du-mode="dark"] body.skin-vector .mw-changeslist-legend, html[data-du-mode="dark"] body.skin-vector .oo-ui-fieldsetLayout, html[data-du-mode="dark"] body.skin-vector .oo-ui-panelLayout, html[data-du-mode="dark"] body.skin-vector .oo-ui-panelLayout-framed, html[data-du-mode="dark"] body.skin-vector fieldset { border-color: hsl(var(--du-h) calc(20% * var(--du-c)) 31% / .78) !important; box-shadow: var(--du-psh) !important; } html body.skin-vector .oo-ui-inputWidget-input, html body.skin-vector .oo-ui-textInputWidget input, html body.skin-vector .cdx-text-input__input, html body.skin-vector input[type="search"], html body.skin-vector input[type="text"], html body.skin-vector textarea, html body.skin-vector select { border-color: var(--du-edge) !important; box-shadow: inset 0 1px 2px rgb(0 0 0 / .14) !important; } html[data-du-mode="dark"] body.skin-vector .oo-ui-inputWidget-input, html[data-du-mode="dark"] body.skin-vector .oo-ui-textInputWidget input, html[data-du-mode="dark"] body.skin-vector .cdx-text-input__input, html[data-du-mode="dark"] body.skin-vector input[type="search"], html[data-du-mode="dark"] body.skin-vector input[type="text"], html[data-du-mode="dark"] body.skin-vector textarea, html[data-du-mode="dark"] body.skin-vector select { border-color: hsl(var(--du-h) calc(20% * var(--du-c)) 31% / .78) !important; box-shadow: inset 0 1px 2px rgb(0 0 0 / .32) !important; } html body.skin-vector #du-fab { position: relative !important; } html body.skin-vector > div:has(> #du-fab) { position: fixed !important; right: 14px !important; left: auto !important; bottom: 14px !important; z-index: 9998 !important; } /* /IMPLEMENTAUDIT wiki-special-chrome-hotfix 2026-06-18 */ /* Keep the floating theme panel inside the viewport in RTL. */ html body.skin-vector #du-panel { inset-inline-start: auto !important; inset-inline-end: auto !important; left: auto !important; right: 0 !important; width: min(248px, calc(100vw - 28px)) !important; max-width: calc(100vw - 28px) !important; } /* IMPLEMENTAUDIT Plan014 2026-06-19: mobile wiki header/touch guards and footer content-box overflow fix. Keep EN/AR synchronized. */ html body #footer.mw-footer, html body .mw-footer { box-sizing: border-box !important; } @media (max-width: 560px) { .duglobal .switch>a { min-height: 44px !important; height: 44px !important; } .duglobal .switch>a[aria-current="page"] { min-height: 46px !important; height: 46px !important; } .duglobal .gright { gap: 6px !important; max-width: calc(100% - 50px) !important; } .duglobal .langtog a { min-height: 44px !important; height: 44px !important; min-width: 44px !important; padding-inline: 10px !important; justify-content: center !important; } .duglobal .who { max-width: none !important; min-width: 0 !important; padding-inline-start: 0 !important; overflow: visible !important; } .duglobal .who .du-login { min-height: 44px !important; max-width: none !important; padding: 10px 12px !important; font-size: 13px !important; line-height: 18px !important; transform: none !important; } } @media (max-width: 340px) { .duglobal .gright { flex: 1 1 100% !important; justify-content: center !important; max-width: 100% !important; } .duglobal .who, .duglobal .who .du-login { max-width: none !important; } } /* IMPLEMENTAUDIT 2026-06-19: honor Vector Appearance controls inside Dawah article skin. */ html.vector-feature-custom-font-size-clientpref-0 body.skin-vector:not(.page-Main_Page){ --du-wiki-reader-font:.94rem; --du-wiki-reader-line:1.55; --du-wiki-title-font:1.72rem; --du-wiki-h2-font:1.34rem; --du-wiki-h3-font:1.14rem; } html.vector-feature-custom-font-size-clientpref-1 body.skin-vector:not(.page-Main_Page){ --du-wiki-reader-font:1rem; --du-wiki-reader-line:var(--du-body-lh); --du-wiki-title-font:1.8rem; --du-wiki-h2-font:1.48rem; --du-wiki-h3-font:1.2rem; } html.vector-feature-custom-font-size-clientpref-2 body.skin-vector:not(.page-Main_Page){ --du-wiki-reader-font:1.12rem; --du-wiki-reader-line:1.68; --du-wiki-title-font:2.02rem; --du-wiki-h2-font:1.66rem; --du-wiki-h3-font:1.34rem; } body.skin-vector:not(.page-Main_Page) .mw-parser-output p, body.skin-vector:not(.page-Main_Page) .mw-parser-output li, body.skin-vector:not(.page-Main_Page) .mw-parser-output dd, body.skin-vector:not(.page-Main_Page) .mw-parser-output td, body.skin-vector:not(.page-Main_Page) .mw-parser-output th{ font-size:var(--du-wiki-reader-font,1rem)!important; line-height:var(--du-wiki-reader-line,var(--du-body-lh))!important; } body.skin-vector:not(.page-Main_Page) .mw-first-heading, body.skin-vector:not(.page-Main_Page) .mw-page-title-main{font-size:var(--du-wiki-title-font,1.8rem)!important;} body.skin-vector:not(.page-Main_Page) .mw-parser-output h2{font-size:var(--du-wiki-h2-font,1.48rem)!important;} body.skin-vector:not(.page-Main_Page) .mw-parser-output h3{font-size:var(--du-wiki-h3-font,1.2rem)!important;} html.vector-feature-limited-width-clientpref-1 body.skin-vector:not(.page-Main_Page){ --du-wiki-shell-max:1280px; --du-wiki-reader-measure:72ch; } html.vector-feature-limited-width-clientpref-0 body.skin-vector:not(.page-Main_Page){ --du-wiki-shell-max:none; --du-wiki-reader-measure:none; } body.skin-vector:not(.page-Main_Page) .mw-page-container{max-width:var(--du-wiki-shell-max,1280px)!important;} body.skin-vector:not(.page-Main_Page) .mw-parser-output>p, body.skin-vector:not(.page-Main_Page) .mw-parser-output>ul, body.skin-vector:not(.page-Main_Page) .mw-parser-output>ol, body.skin-vector:not(.page-Main_Page) .mw-parser-output>blockquote{max-width:var(--du-wiki-reader-measure,72ch)!important;} #vector-user-links-dropdown.vector-user-menu-logged-out{display:none!important;} @media(max-width:700px){ body.skin-vector:not(.page-Main_Page) #skin-client-prefs-vector-feature-limited-width{display:none!important;} } /* ============================================================ SHARED SINGLE-BAR NAV (matches dawah.wiki homepage) — scoped .dw-wikinav Replaces the old .duglobal wiki bar. Branded band (left) + shared tools (right): compress->expand products, EN|ع, split theme orb, login. ============================================================ */ .dw-wikinav{position:relative;z-index:5;width:100%;background:var(--du-noise),var(--du-chrome);box-shadow:var(--du-chbev);color:var(--du-text);text-shadow:var(--du-tsh)} html[data-du-glass="flat"] .dw-wikinav{background:var(--du-chrome)} .dw-wikinav::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--du-line);z-index:3} .dw-wikinav .dw-headin{position:relative;padding-inline:max(24px,calc((100vw - 1680px)/2 + 24px));padding-top:12px;padding-bottom:0} .dw-wikinav .dw-band{display:flex;align-items:flex-end;gap:22px;min-height:61px} .dw-wikinav .brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none;align-self:flex-end;margin:0 0 6px 0} .dw-wikinav .brand img{box-sizing:border-box;width:52px;height:52px;object-fit:contain;border-radius:50%;background:var(--du-panel);border:1px solid var(--du-edge);box-shadow:var(--du-psh);filter:contrast(1.05) saturate(1.05);flex:0 0 auto} .dw-wikinav .brand-title{font-size:24px;font-weight:900;letter-spacing:-.055em;line-height:1;color:var(--du-text);text-shadow:var(--du-tsh)} .dw-wikinav .brand-subtitle{margin-top:5px;color:var(--du-muted);font-size:12.5px;font-weight:500;text-shadow:none} .dw-wikinav .brand *{pointer-events:none} /* shared tools cluster, right side, glass seam aligned to the band seam */ .dw-wikinav .navtools{display:flex;align-items:center;gap:13px;margin-inline-start:auto;flex:0 0 auto;align-self:center;transform:translateY(-7.5px)} .dw-wikinav .seg{display:inline-flex;align-items:stretch;background:var(--du-face);border:1px solid var(--du-edge);border-radius:10px;box-shadow:var(--du-bev);overflow:hidden;flex:0 0 auto} .dw-wikinav .seg>a{position:relative;display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 14px;text-decoration:none;color:var(--du-glyph,var(--du-text));text-shadow:var(--du-gsh,var(--du-tsh));font-size:13.5px;font-weight:600;white-space:nowrap;border-inline-start:1px solid var(--du-edge)} .dw-wikinav .seg>a:first-child{border-inline-start:0} .dw-wikinav .seg>a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;flex:0 0 auto} .dw-wikinav .seg>a:hover{background:hsl(var(--du-h) calc(48% * var(--du-c)) 60% / .14)} .dw-wikinav .seg>a[aria-current="page"]{background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0/.3)} .dw-wikinav .seg>a:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--du-link)} .dw-wikinav .seg>a *{pointer-events:none} .dw-wikinav .seg.compact>a{padding:0 13px;height:40px;font-size:13px} .dw-wikinav .seg.icons>a{width:48px;padding:0;overflow:hidden;transition:width .22s cubic-bezier(.2,.7,.2,1)} .dw-wikinav .seg.icons>a .ic{position:absolute;inset-inline-start:0;top:0;width:48px;height:100%;display:grid;place-items:center;flex:0 0 auto} .dw-wikinav .seg.icons>a .ic svg{width:20px;height:20px;display:block} .dw-wikinav .seg.icons>a .lbl{padding-inline-start:48px;padding-inline-end:16px;white-space:nowrap;opacity:0;transition:opacity .15s ease .03s} .dw-wikinav .seg.icons>a:hover,.dw-wikinav .seg.icons>a:focus-visible,.dw-wikinav .seg.icons>a[aria-current="page"]{width:134px} .dw-wikinav .seg.icons>a:hover .lbl,.dw-wikinav .seg.icons>a:focus-visible .lbl,.dw-wikinav .seg.icons>a[aria-current="page"] .lbl{opacity:1} .dw-wikinav .langseg>a[lang="ar"]{font-size:15px} .dw-wikinav #du-theme-slot{display:inline-flex;flex:0 0 auto} .dw-wikinav .who{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto} .dw-wikinav .who .du-login{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--du-edge);background:linear-gradient(rgb(0 0 0 / .30),rgb(0 0 0 / .30)),var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0/.3);font-weight:800;font-size:13.5px;text-decoration:none;box-shadow:var(--du-bev)} .dw-wikinav .who .du-login:hover{box-shadow:var(--du-bev),var(--du-glow);filter:brightness(1.06)} /* orb panel must open downward from the top bar */ .dw-wikinav #du-panel{top:calc(100% + 8px)!important;bottom:auto!important;inset-inline-end:0!important} /* hide Vector's own login (the bar carries it) */ .dw-wikinav ~ .vector-header-container #pt-login-2,.dw-wikinav ~ .vector-header-container #pt-login{display:none!important} /* THEME ORB TILE (split light/dark accent sphere) */ .du-theme-tile{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--du-face);box-shadow:var(--du-bev);border:1px solid var(--du-edge);flex:0 0 auto;cursor:pointer;padding:0} .du-theme-tile:hover{box-shadow:var(--du-bev),var(--du-glow);filter:brightness(1.04)} .du-theme-tile:focus-visible{outline:none;box-shadow:var(--du-bev),0 0 0 3px var(--du-link)} .du-theme-tile.mini{width:34px;height:34px;border-radius:9px} .du-theme-orb{position:relative;width:28px;height:28px;border-radius:50%;overflow:hidden;flex:0 0 auto;border:1px solid hsl(var(--du-h) calc(58% * var(--du-c)) 32%);box-shadow:0 1px 2px rgb(0 0 0 / .3);background:linear-gradient(180deg, hsl(var(--du-h) calc(36% * var(--du-c)) 91%), hsl(var(--du-h) calc(56% * var(--du-c)) 74%) 46%, hsl(var(--du-h) calc(80% * var(--du-c)) 50%) 80%, hsl(var(--du-h) calc(86% * var(--du-c)) 44%)) left/50% 100% no-repeat, linear-gradient(180deg, hsl(var(--du-h) calc(28% * var(--du-c)) 15%), hsl(var(--du-h) calc(42% * var(--du-c)) 24%) 46%, hsl(var(--du-h) calc(80% * var(--du-c)) 42%) 80%, hsl(var(--du-h) calc(86% * var(--du-c)) 36%)) right/50% 100% no-repeat} .du-theme-tile.mini .du-theme-orb{width:22px;height:22px} .du-theme-orb::before{content:"";position:absolute;left:50%;top:8%;bottom:8%;width:1.5px;transform:translateX(-50%);border-radius:2px;z-index:3;background:rgb(255 255 255 / .62);box-shadow:0 0 3px rgb(255 255 255 / .4)} .du-theme-orb::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;z-index:2;background:radial-gradient(52% 40% at 35% 19%, rgb(255 255 255 / .8), rgb(255 255 255 / .12) 42%, transparent 62%),radial-gradient(125% 95% at 50% 128%, rgb(0 0 0 / .45), transparent 52%);box-shadow:inset 0 1px 1px rgb(255 255 255 / .5), inset 0 -5px 8px rgb(0 0 0 / .38)} .dubot{display:none} .dumore{display:contents} /* MOBILE (<=900px): brand-only bar + fixed bottom nav + More sheet */ @media(max-width:900px){ .dw-wikinav .desktoponly{display:none!important} .dw-wikinav .dw-band{min-height:0;gap:10px} .dw-wikinav .brand-subtitle{display:none} .dw-wikinav .brand img{width:40px;height:40px} .dw-wikinav .brand-title{font-size:19px} body.skin-vector{padding-bottom:calc(58px + max(6px,env(safe-area-inset-bottom)))} .dubot{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:60;align-items:stretch;background:var(--du-noise),var(--du-chrome);box-shadow:var(--du-chbev);border-top:1px solid var(--du-edge);padding-bottom:max(6px,env(safe-area-inset-bottom));color:var(--du-text);text-shadow:var(--du-tsh)} .dubot .botcell{flex:1 1 0;min-width:44px;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 2px 4px;text-decoration:none;color:var(--du-glyph,var(--du-text));text-shadow:var(--du-gsh,var(--du-tsh));position:relative;border-inline-start:1px solid hsl(var(--du-h) calc(30% * var(--du-c)) 60% / .22);background:transparent;font:inherit;cursor:pointer;list-style:none} .dubot .botcell::-webkit-details-marker{display:none} .dubot>.botcell:first-child,.dubot>.dumore:first-child .botcell{border-inline-start:0} .dubot .botcell svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7} .dubot .botcell .t{font-size:11px;font-weight:600;line-height:1;white-space:nowrap} .dubot .botcell[aria-current="page"]{color:var(--du-link)} .dubot .botcell[aria-current="page"]::before{content:"";position:absolute;top:0;inset-inline:20%;height:3px;border-radius:0 0 3px 3px;background:var(--du-prim)} .dubot .botcell:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--du-link)} .dubot .botcell *{pointer-events:none} .dumore{display:flex;flex:1 1 0;position:static} .dumore>summary{flex:1 1 0;display:flex;list-style:none} .dumore>summary .botcell{width:100%} .dumore[open]>summary .botcell{color:var(--du-link)} .dumore[open]::before{content:"";position:fixed;inset:0;z-index:62;background:rgb(0 0 0 / .38)} .dumore .sheet{position:fixed;inset-inline:8px;bottom:calc(60px + max(6px,env(safe-area-inset-bottom)));z-index:64;background:var(--du-panel);border:1px solid var(--du-edge);border-radius:14px;box-shadow:var(--du-psh),0 -8px 30px rgb(0 0 0/.3);padding:9px;text-shadow:var(--du-tsh)} .dumore .shead{font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--du-muted);padding:5px 10px 3px} .dumore .sgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:5px} .dumore .srow{display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 4px;border-radius:10px;text-decoration:none;color:var(--du-text);text-shadow:var(--du-tsh);font-size:12px;font-weight:600;min-height:60px;justify-content:center;background:var(--du-face);box-shadow:var(--du-bev);border:1px solid var(--du-edge)} .dumore .srow svg{width:22px;height:22px;fill:none;stroke:var(--du-glyph,var(--du-text));stroke-width:1.7} .dumore .srow[aria-current="page"]{background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0/.3)} .dumore .srow[aria-current="page"] svg{stroke:#fff} .dumore .sdiv{height:1px;background:var(--du-line);margin:9px 4px} .dumore .sutil{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px 3px} .dumore .sutil .lab{font-size:12.5px;color:var(--du-muted);font-weight:600} .dumore .sheet .seg{display:inline-flex;align-items:stretch;background:var(--du-face);border:1px solid var(--du-edge);border-radius:9px;box-shadow:var(--du-bev);overflow:hidden;flex:0 0 auto} .dumore .sheet .seg>a{display:inline-flex;align-items:center;height:34px;padding:0 14px;text-decoration:none;color:var(--du-glyph,var(--du-text));text-shadow:var(--du-gsh,var(--du-tsh));font-size:13px;font-weight:600;white-space:nowrap;border-inline-start:1px solid var(--du-edge)} .dumore .sheet .seg>a:first-child{border-inline-start:0} .dumore .sheet .seg>a[aria-current="page"]{background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0/.3)} .dumore .sheet .seg.langseg>a[lang="ar"]{font-size:15px} } @media (prefers-reduced-motion: reduce){.dw-wikinav .seg.icons>a{transition:none}} /* ===================== P0-05 wiki dark-mode adapter (additive) ===================== Bridges the Urethane theme system to native Vector 2022 night-mode mechanics. Native night-mode is enabled in LocalSettings; the orb drives it via Common.js. This block is intentionally small: keep all existing Urethane identity rules above. */ /* (1) Nav retint — the shared navbar follows the live Urethane accent on the wiki. Default accent (#2e8fc7 => --du-h:202) leaves it byte-identical; custom accents retint it. */ html { --du-base-h: var(--du-h); --du-base-c: var(--du-c); } /* (2) The Urethane orb is the single visible theme authority -> hide Vector's duplicate in-panel Color toggle. Text-size and Width controls are kept. */ #skin-client-prefs-skin-theme { display: none; } /* ===================== end P0-05 adapter ===================== */ #footer-icons{display:none!important} /* footer parity: hide PoweredBy badges */ /* ===== AUTHORITATIVE FOOTER PARITY with .dwn-foot (last block wins over all earlier footer CSS) ===== */ .mw-footer-container{position:relative!important;inset-inline-start:50%!important;width:100vw!important;max-width:100vw!important;margin-inline-start:-50vw!important;margin-inline-end:0!important;margin-top:28px!important;padding:0!important;background:var(--du-panel2)!important;border-top:1px solid var(--du-edge)!important;box-shadow:none!important;min-height:0!important} #footer.mw-footer,.mw-footer{display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;width:100%!important;max-width:none!important;margin:0!important;padding:16px max(24px,calc((100vw - 1680px)/2 + 24px))!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--du-muted)!important} #footer-places,#footer-info{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;list-style:none!important} #footer-places{order:1!important;gap:8px 11px!important;font-size:13px!important;font-weight:600!important;line-height:1.2!important} #footer-info{order:2!important;gap:8px 11px!important;font-size:12px!important;line-height:1.2!important;margin-top:0!important} #footer-places li,#footer-info li{display:inline-flex!important;align-items:center!important;gap:0!important;margin:0!important;padding:0!important;color:var(--du-muted)!important;font-size:inherit!important} #footer-places li + li::before{content:"·"!important;margin-inline-end:11px!important;color:var(--du-muted)!important;opacity:.55!important;font-weight:700!important} #footer-places a,#footer-info a,#footer-info-copyright{color:var(--du-muted)!important;text-decoration:none!important;font-size:inherit!important} #footer-places a:hover,#footer-info a:hover{color:var(--du-link)!important} #footer-icons,#footer-info-lastmod,#footer-info-viewcount,#footer-poweredbyico,.dw-footer-links{display:none!important} /* ===== end authoritative footer parity ===== */ /* === DAWAHWIKI A-WIKI LOGIN/LOGO DRY (P0-03, 2026-06-21) === Shared .dwn nav is the canonical brand + login. Hide native Vector duplicates. login: desktop-only (mobile shared login not surfaced; native is the only mobile login). logo : all viewports (redundant with shared "Dawah.Wiki" brand; home via shared Wiki/Home nav). */ #pt-login, #pt-login-2, #pt-createaccount, #pt-createaccount-2 { display: none !important; } .mw-logo { display: none !important; } /* === END A-WIKI DRY === */ /* === A1: mobile account section + wiki logged-in identity (P0-03, 2026-06-21) === */ .dwn-acct{background:var(--du-panel);border:1px solid var(--du-edge);border-radius:12px;box-shadow:var(--du-bev);padding:8px;margin:0 0 6px} .dwn-acct .acct-sub{display:block;color:var(--du-muted);font-size:11.5px;margin:1px 2px 7px} .du-login-m{display:flex;width:100%;box-sizing:border-box;justify-content:center;align-items:center;gap:8px;min-height:46px;font-size:14px} .du-login-m:focus-visible{outline:none;box-shadow:0 0 0 3px var(--du-link),var(--du-bev)} .dwn-acct-row{display:flex;align-items:center;gap:9px;width:100%;min-height:46px} .dwn-acct-row .who{display:flex;align-items:center;gap:8px;color:var(--du-text);font-weight:700;font-size:13.5px;flex:1 1 auto;min-width:0;text-decoration:none} .dwn-acct-row a.logout{min-height:40px;display:inline-flex;align-items:center;padding:0 13px;border-radius:9px;border:1px solid var(--du-edge);background:transparent;color:var(--du-text);text-decoration:none;font-weight:600;font-size:12.5px} .dwn-who .authorlink{display:inline-flex;align-items:center;gap:6px;color:var(--du-link);text-decoration:none;font-weight:700;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .dwn-who .authorlink .aname{text-decoration:none} .dwn-who .who-cta{margin-inline-start:9px;color:var(--du-muted);text-decoration:none;font-weight:600;font-size:12.5px} .dwn-who .who-cta:hover{color:var(--du-link)} /* === END A1 === */ /* === P0-06 wiki user-menu de-dup (BEGIN) === */ #pt-userpage-2, #pt-userpage-2-sticky-header, #pt-logout, #pt-logout-sticky-header { display: none !important; } #vector-user-links-dropdown #pt-userpage, #vector-user-links-dropdown-sticky-header #pt-userpage-sticky-header { display: list-item !important; } /* === P0-06 (END) === */ /* === P0-08 Arabic body/headings (BEGIN) — Noto Naskh for Arabic glyphs; Latin stays Inter === */ .mw-body-content:lang(ar), .mw-parser-output:lang(ar), .mw-first-heading:lang(ar){font-family:"Noto Naskh Arabic",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important} .mw-parser-output:lang(ar){line-height:1.9} /* === P0-08 (END) === */ /* === P0-08 headings (BEGIN) — literal Arabic stack beats #firstHeading var-rule + Libertine; Latin->Inter === */ html[dir="rtl"] #firstHeading, html[dir="rtl"] .mw-first-heading, html[dir="rtl"] .mw-parser-output h2:lang(ar), html[dir="rtl"] .mw-parser-output h3:lang(ar), html[dir="rtl"] .mw-parser-output h4:lang(ar){font-family:"Noto Naskh Arabic",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important} /* === P0-08 headings (END) === */
common.js (talk) (Translate) /* Any JavaScript here will be loaded for all users on every page load. */
/* URETHANE DESIGN — generic theme engine (app-agnostic). Pair with 02-tokens.css. Include synchronously in <head>. Sets on <html>: data-du-mode (light|dark, auto-resolved), data-du-glass (faithful|modern|flat), inline --du-h (accent hue) and --du-c (accent chroma). Prefs: localStorage 'dawahUrethane' + mirrored to a .dawah.wiki cookie so the choice follows users across subdomains. Defaults (owner-mandated): mode 'auto', glass 'faithful' (the 2006 look), accent '#2e8fc7' (blue). Optional: set window.DU_MOUNT = 'css selector' before this script to pick where the "Theme" switcher button mounts (default: fixed bottom corner). */ (function () { 'use strict'; var KEY = 'dawahUrethane'; var DEFAULTS = { mode: 'auto', glass: 'faithful', accent: '#2e8fc7', t: 0 }; var PRESETS = [ ['#2e8fc7', 'Urethane blue'], ['#29a395', 'Madinah teal'], ['#2ea05b', 'Palm green'], ['#d4912a', 'Desert amber'], ['#7a5cc7', 'Violet'], ['#cc3d77', 'Rose'] ]; function valid(p) { p = p || {}; return { mode: ['auto', 'light', 'dark'].indexOf(p.mode) >= 0 ? p.mode : DEFAULTS.mode, glass: ['faithful', 'modern', 'flat'].indexOf(p.glass) >= 0 ? p.glass : DEFAULTS.glass, accent: /^#[0-9a-fA-F]{6}$/.test(p.accent || '') ? p.accent : DEFAULTS.accent, t: typeof p.t === 'number' ? p.t : 0 }; } function readLocal() { try { return JSON.parse(localStorage.getItem(KEY) || 'null'); } catch (e) { return null; } } function readCookie() { var m = document.cookie.match(new RegExp('(?:^|; )' + KEY + '=([^;]*)')); if (!m) { return null; } try { return JSON.parse(decodeURIComponent(m[1])); } catch (e) { return null; } } function load() { var a = readLocal(), b = readCookie(); var p = (b && (!a || (b.t || 0) > (a.t || 0))) ? b : a; /* newer wins */ return valid(p); } function save(p) { p.t = Date.now(); var s = JSON.stringify(p); try { localStorage.setItem(KEY, s); } catch (e) { /* private mode */ } try { document.cookie = KEY + '=' + encodeURIComponent(s) + '; domain=.dawah.wiki; path=/; max-age=31536000; SameSite=Lax; Secure'; } catch (e) { /* file:// etc. */ } } function ensureResponsiveViewport() { var meta = document.querySelector('meta[name="viewport"]'); if (!meta) { meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); document.head.appendChild(meta); } var content = meta.getAttribute('content') || ''; if (content.indexOf('width=device-width') < 0) { meta.setAttribute('content', 'width=device-width, initial-scale=1'); } } ensureResponsiveViewport(); function hexToHue(hex) { var r = parseInt(hex.substr(1, 2), 16) / 255, g = parseInt(hex.substr(3, 2), 16) / 255, b = parseInt(hex.substr(5, 2), 16) / 255; var max = Math.max(r, g, b), min = Math.min(r, g, b), d = max - min, h = 0; if (d === 0) { return 205; } /* achromatic: keep blue chrome */ if (max === r) { h = ((g - b) / d) % 6; } else if (max === g) { h = (b - r) / d + 2; } else { h = (r - g) / d + 4; } return (Math.round(h * 60) + 360) % 360; } function hexToChroma(hex) { var r = parseInt(hex.substr(1, 2), 16) / 255, g = parseInt(hex.substr(3, 2), 16) / 255, b = parseInt(hex.substr(5, 2), 16) / 255; var d = Math.max(r, g, b) - Math.min(r, g, b); var base = 153 / 255; /* #2e8fc7, the default Urethane blue */ return Math.max(0, Math.min(1.25, d / base)); } var mq = window.matchMedia ? window.matchMedia('(prefers-color-scheme: dark)') : null; function apply() { var p = load(); var mode = p.mode === 'auto' ? (mq && mq.matches ? 'dark' : 'light') : p.mode; var de = document.documentElement; de.setAttribute('data-du-mode', mode); de.setAttribute('data-du-glass', p.glass); de.style.setProperty('--du-h', String(hexToHue(p.accent))); de.style.setProperty('--du-c', String(hexToChroma(p.accent))); /* P0-05: bridge the orb to Vector 2022 native night-mode (the orb stays the one theme authority) */ de.classList.remove('skin-theme-clientpref-day', 'skin-theme-clientpref-night', 'vector-feature-night-mode-disabled'); de.classList.add(mode === 'dark' ? 'skin-theme-clientpref-night' : 'skin-theme-clientpref-day'); duSyncNative(); } /* P0-05: write the native MediaWiki client preference so MW's own init agrees with the orb */ function duSyncNative() { var pp = load(); var m = pp.mode === 'auto' ? (mq && mq.matches ? 'dark' : 'light') : pp.mode; var want = m === 'dark' ? 'night' : 'day'; try { if (window.mw && mw.user && mw.user.clientPrefs && mw.user.clientPrefs.set) { mw.user.clientPrefs.set('skin-theme', want); return mw.user.clientPrefs.get('skin-theme') === want; } } catch (e) {} return false; } apply(); /* P0-05: re-assert native night-mode across MediaWiki's async init so the orb's choice wins steady-state */ [0, 400, 900, 1600, 2600, 4000].forEach(function (d) { setTimeout(duSyncNative, d); }); if (mq) { var onChange = function () { if (load().mode === 'auto') { apply(); } }; if (mq.addEventListener) { mq.addEventListener('change', onChange); } else if (mq.addListener) { mq.addListener(onChange); } } /* ---------------- switcher UI ---------------- */ function el(tag, cls, text) { var e = document.createElement(tag); if (cls) { e.className = cls; } if (text) { e.textContent = text; } return e; } function buildPanel(anchor) { var p = load(); var panel = el('div'); panel.id = 'du-panel'; panel.setAttribute('role', 'dialog'); panel.setAttribute('aria-label', 'Theme options'); panel.style.cssText = 'position:absolute;z-index:9999;inset-inline-end:0;bottom:calc(100% + 8px);width:248px;background:var(--du-panel);border:1px solid var(--du-edge);border-radius:10px;box-shadow:var(--du-psh),0 6px 22px rgb(0 0 0 / .25);padding:12px;color:var(--du-text);font-size:12px;text-align:start'; function section(title) { var h = el('h4', null, title); h.style.cssText = 'margin:0 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--du-muted)'; panel.appendChild(h); var row = el('div'); row.style.cssText = 'display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px'; panel.appendChild(row); return row; } function styleOpt(o, on) { o.style.cssText = 'flex:1;text-align:center;padding:5px 8px;border:1px solid var(--du-edge);border-radius:7px;cursor:pointer;white-space:nowrap;' + (on ? 'background:var(--du-prim);color:#fff;text-shadow:0 1px rgb(0 0 0 / .3)' : 'background:var(--du-face);box-shadow:var(--du-bev);color:var(--du-text);text-shadow:var(--du-tsh)'); } function opts(row, items, key, current) { items.forEach(function (it) { var o = el('span', null, it[1]); o.setAttribute('role', 'button'); o.tabIndex = 0; styleOpt(o, current === it[0]); var act = function () { var np = load(); np[key] = it[0]; save(np); apply(); Array.prototype.forEach.call(row.children, function (c, i) { styleOpt(c, items[i][0] === it[0]); }); }; o.addEventListener('click', act); o.addEventListener('keydown', function (ev) { if (ev.key === 'Enter' || ev.key === ' ') { ev.preventDefault(); act(); } }); row.appendChild(o); }); } opts(section('Mode'), [['auto', 'Auto'], ['light', 'Light'], ['dark', 'Dark']], 'mode', p.mode); opts(section('Glass'), [['faithful', '2006'], ['modern', 'Modern'], ['flat', 'Flat']], 'glass', p.glass); var crow = section('Accent'); function ring(s, on) { s.style.outline = on ? '2px solid var(--du-link)' : 'none'; s.style.outlineOffset = '2px'; } var swatches = []; PRESETS.forEach(function (pr) { var s = el('button'); s.type = 'button'; s.title = pr[1]; s.setAttribute('aria-label', pr[1]); s.style.cssText = 'width:24px;height:24px;border-radius:50%;border:1px solid var(--du-edge);cursor:pointer;padding:0;box-shadow:inset 0 1px rgb(255 255 255 / .55);background:' + pr[0]; ring(s, p.accent.toLowerCase() === pr[0]); s.addEventListener('click', function () { var np = load(); np.accent = pr[0]; save(np); apply(); swatches.forEach(function (x) { ring(x, x === s); }); picker.value = pr[0]; }); swatches.push(s); crow.appendChild(s); }); var picker = document.createElement('input'); picker.type = 'color'; picker.value = p.accent; picker.title = 'Custom color'; picker.setAttribute('aria-label', 'Custom accent color'); picker.style.cssText = 'width:34px;height:26px;padding:0;border:1px solid var(--du-edge);border-radius:6px;background:var(--du-panel);cursor:pointer'; picker.addEventListener('input', function () { var np = load(); np.accent = picker.value; save(np); apply(); swatches.forEach(function (x) { ring(x, false); }); }); crow.appendChild(picker); var note = el('p', null, 'Applies across dawah.wiki in this browser.'); note.style.cssText = 'color:var(--du-muted);font-size:11px;margin:2px 0 0'; panel.appendChild(note); anchor.appendChild(panel); try{requestAnimationFrame(function(){var vh=window.innerHeight,r=panel.getBoundingClientRect();if(r.bottom>vh-8){panel.style.transform='translateY('+(-(r.bottom-(vh-8)))+'px)';}});}catch(e){} return panel; } function mountTile(host, mini) { if (host.querySelector('.du-theme-tile')) { return; } var li = el('span'); li.style.position = 'relative'; li.style.display = 'inline-flex'; host.appendChild(li); var btn = el('button'); btn.type = 'button'; btn.className = 'du-theme-tile' + (mini ? ' mini' : ''); if (!mini) { btn.id = 'du-fab'; } btn.setAttribute('aria-haspopup', 'dialog'); btn.setAttribute('aria-label', 'Theme'); btn.title = 'Theme options'; var orb = el('span'); orb.className = 'du-theme-orb'; orb.setAttribute('aria-hidden', 'true'); btn.appendChild(orb); li.appendChild(btn); var panel = null; btn.addEventListener('click', function (ev) { ev.preventDefault(); if (panel) { panel.parentNode.removeChild(panel); panel = null; return; } panel = buildPanel(li); }); document.addEventListener('click', function (ev) { if (panel && !li.contains(ev.target)) { panel.parentNode.removeChild(panel); panel = null; } }); } function buildFab() { var slots = []; document.querySelectorAll('#du-theme-slot, #du-theme-slot-m, .du-theme-mount').forEach(function (m) { if (slots.indexOf(m) < 0 && !m.querySelector('.du-theme-tile')) { slots.push(m); } }); if (slots.length) { var fb = document.querySelector('.du-float-fallback'); if (fb) { fb.parentNode.removeChild(fb); } slots.forEach(function (m) { mountTile(m, !!(m.id && m.id.indexOf('-m') >= 0)); }); return; } if (document.getElementById('du-fab')) { return; } var li = el('div'); li.className = 'du-float-fallback'; li.style.cssText = 'position:fixed;bottom:14px;inset-inline-end:14px;z-index:9998'; document.body.appendChild(li); var fab = el('a', null, 'Theme'); fab.id = 'du-fab'; fab.href = '#'; fab.setAttribute('role', 'button'); fab.setAttribute('aria-haspopup', 'dialog'); fab.title = 'Theme options'; fab.style.cssText = 'display:inline-flex;align-items:center;gap:6px;cursor:pointer;user-select:none;padding:6px 12px;border:1px solid var(--du-edge);border-radius:7px;background:var(--du-face);box-shadow:var(--du-bev);color:var(--du-text);text-shadow:var(--du-tsh);text-decoration:none;font-size:12.5px'; var dot = el('span'); dot.setAttribute('aria-hidden', 'true'); dot.style.cssText = 'width:12px;height:12px;border-radius:50%;background:hsl(var(--du-h) calc(70% * var(--du-c)) 50%);box-shadow:inset 0 1px rgb(255 255 255 / .6)'; fab.insertBefore(dot, fab.firstChild); li.appendChild(fab); var panel = null; fab.addEventListener('click', function (ev) { ev.preventDefault(); if (panel) { panel.parentNode.removeChild(panel); panel = null; return; } panel = buildPanel(li); }); document.addEventListener('click', function (ev) { if (panel && !li.contains(ev.target)) { panel.parentNode.removeChild(panel); panel = null; } }); } window.__duMount = buildFab; if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', buildFab); } else { buildFab(); } })(); /* MediaWiki footer polish: replace stock wiki footer links with site-wide public links. */ (function () { 'use strict'; function ready(fn) { if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', fn); } else { fn(); } } function footerLinks() { var places = document.getElementById('footer-places'); if (!places) { return; } var info = document.getElementById('footer-info'); var isAr = (document.documentElement.lang || '').toLowerCase().indexOf('ar') === 0 || document.documentElement.dir === 'rtl'; var links = isAr ? [ ['عن', 'https://dawah.wiki/about'], ['الإرشادات', 'https://dawah.wiki/guidelines'], ['الخصوصية', 'https://dawah.wiki/privacy'], ['اتصل بنا', 'https://dawah.wiki/contact'] ] : [ ['About', 'https://dawah.wiki/about'], ['Guidelines', 'https://dawah.wiki/guidelines'], ['Privacy', 'https://dawah.wiki/privacy'], ['Contact', 'https://dawah.wiki/contact'] ]; if (places.getAttribute('data-dw-polished') !== '1') { places.textContent = ''; links.forEach(function (item) { var li = document.createElement('li'); var a = document.createElement('a'); a.href = item[1]; a.textContent = item[0]; li.appendChild(a); places.appendChild(li); }); places.setAttribute('data-dw-polished', '1'); } if (info) { info.textContent = ''; var copy = document.createElement('li'); copy.id = 'footer-info-copyright'; copy.textContent = isAr ? '© 2026 Dawah.Wiki. جميع الحقوق محفوظة.' : '© 2026 Dawah.Wiki. All rights reserved.'; info.appendChild(copy); } } ready(footerLinks); }()); /* IMPLEMENTAUDIT wiki-ui-polish 2026-06-18: canonical wiki platform nav. */ (function () { 'use strict'; window.DU_MOUNT = null; function ready(fn) { if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', fn); } else { fn(); } } function icon(name) { var paths = { home: '<path d="M3 10.5 12 3l9 7.5"/><path d="M5 9.5V21h5v-6h4v6h5V9.5"/>', wiki: '<path d="M5 5h14v14H5z"/><path d="M8 9h8M8 13h8"/>', forum: '<path d="M4 6h16v10H8l-4 4z"/>', markdown: '<path d="M3 7h18v10H3z"/><path d="M7 14V10l2 2 2-2v4M15 10v4M13 12l2 2 2-2"/>', gallery: '<path d="M4 5h16v14H4z"/><path d="m7 16 3-4 3 3 2-2 2 3"/><circle cx="9" cy="9" r="1.5"/>', qamus: '<path d="M7 4h9a3 3 0 0 1 3 3v13H8a3 3 0 0 1-3-3V6a2 2 0 0 1 2-2z"/><path d="M8 4v13a3 3 0 0 0 3 3"/>' }; return '<span class="ic" aria-hidden="true"><svg viewBox="0 0 24 24">' + (paths[name] || '') + '</svg></span>'; } function makeLink(item, currentHost) { var a = document.createElement('a'); a.href = item.href; a.innerHTML = icon(item.icon) + '<span>' + item.label + '</span>'; if (item.current || currentHost === item.host) { a.setAttribute('aria-current', 'page'); } return a; } function loginHref() { var login = document.querySelector('#pt-login-2 a, #pt-login a, a[href*="Special:UserLogin"]'); return login ? login.href : 'https://forum.dawah.wiki/ucp.php?mode=login'; } function moveThemeFab() { var slot = document.getElementById('du-theme-slot'); var fab = document.getElementById('du-fab'); if (!slot || !fab) { return; } var wrap = fab.parentElement; if (wrap && wrap.parentElement !== slot) { wrap.style.position = 'relative'; wrap.style.insetInlineEnd = ''; wrap.style.bottom = ''; wrap.style.zIndex = ''; slot.appendChild(wrap); } } function wireThemeDismissal() { if (wireThemeDismissal.done) { return; } wireThemeDismissal.done = true; document.addEventListener('keydown', function (ev) { if (ev.key !== 'Escape' || !document.getElementById('du-panel')) { return; } ev.preventDefault(); document.body.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window })); var fab = document.getElementById('du-fab'); if (fab) { fab.focus(); } }); } function wireMoreDismissal() { if (wireMoreDismissal.done) { return; } wireMoreDismissal.done = true; document.addEventListener('click', function (ev) { var opened = document.querySelectorAll('details.dwn-more[open]'); for (var i = 0; i < opened.length; i++) { var d = opened[i], s = d.querySelector('summary'), sh = d.querySelector('.sheet'); if (s && s.contains(ev.target)) { continue; } if (sh && sh.contains(ev.target)) { continue; } d.removeAttribute('open'); if (s) { try { s.focus(); } catch (e) {} } } }); document.addEventListener('keydown', function (ev) { if (ev.key === 'Escape' || ev.key === 'Esc') { var op = document.querySelectorAll('details.dwn-more[open]'); for (var i = 0; i < op.length; i++) { (function(o){var su=o.querySelector('summary');o.removeAttribute('open');if(su){try{su.focus();}catch(e){}}})(op[i]); } } }); } function ensureWikiNav() { if (document.querySelector('.dwn[data-dw-wiki-nav="1"]')) { return; } var header = document.querySelector('.vector-header-container'); if (!header || !document.body.classList.contains('skin-vector')) { return; } if (!document.querySelector('link[data-dwn-css]')) { var lk = document.createElement('link'); lk.rel = 'stylesheet'; lk.href = 'https://dawah.wiki/assets/nav.css'; lk.setAttribute('data-dwn-css', '1'); document.head.appendChild(lk); } var host = location.hostname; var isAr = host.indexOf('ar.') === 0 || document.documentElement.dir === 'rtl'; var wikiHref = isAr ? 'https://ar.dawah.wiki/' : 'https://en.dawah.wiki/'; var IC = { home: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M3 11.5 12 4l9 7.5"/><path d="M5 10.5V20h14v-9.5"/></svg>', wiki: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4 5h16v14H4z"/><path d="M8 9h8M8 13h8"/></svg>', forum: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4 5h16v10H9l-4 4z"/></svg>', md: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M3 6h18v12H3z"/><path d="M6 14V10l2 2 2-2v4M15 10v4M13 12h4"/></svg>', gallery: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4 5h16v14H4z"/><circle cx="9" cy="10" r="1.6"/><path d="M5 18l5-5 3 3 3-3 3 4"/></svg>', qamus: '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M6 4h11a2 2 0 0 1 2 2v14H8a2 2 0 0 1-2-2z"/><path d="M6 16h13"/></svg>', grid: '<svg viewBox="0 0 24 24" aria-hidden="true"><rect x="4" y="4" width="6.5" height="6.5" rx="1.4"/><rect x="13.5" y="4" width="6.5" height="6.5" rx="1.4"/><rect x="4" y="13.5" width="6.5" height="6.5" rx="1.4"/><rect x="13.5" y="13.5" width="6.5" height="6.5" rx="1.4"/></svg>' }; var login = loginHref(); var loginTxt = isAr ? 'دخول / تسجيل' : 'Login / Register'; var dwUser = (window.mw && mw.config && mw.config.get('wgUserName')) || null; var whoInner, acctInner; if (dwUser) { var dwUp = document.querySelector('#pt-userpage a, #pt-userpage-2 a'); var dwLo = document.querySelector('#pt-logout a, #pt-logout-2 a'); var dwUserHref = dwUp ? dwUp.getAttribute('href') : ('/wiki/User:' + encodeURIComponent(dwUser)); var dwLogoutHref = 'https://forum.dawah.wiki/ucp.php?mode=logout'; // SSO: sign out of the shared (forum) session; the wiki auto-logout hook then follows var dwSignout = isAr ? 'تسجيل الخروج' : 'Sign out'; var dwName = dwUser.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>'); var dwGroups = (window.mw && mw.config && mw.config.get('wgUserGroups')) || []; var dwRole = (dwGroups.indexOf('sysop') > -1 || dwGroups.indexOf('bureaucrat') > -1) ? ' <span class="dwn-user-role" data-role="admin">Admin</span>' : ((dwGroups.indexOf('dawah_editor') > -1 || dwGroups.indexOf('dawah_composer') > -1) ? ' <span class="dwn-user-role" data-role="editor">Editor</span>' : ''); var dwFid = (window.mw && mw.config && mw.config.get('wgDwForumUid')) || 0; var dwFname = (window.mw && mw.config && mw.config.get('wgDwForumName')) || ''; if (dwFname) { dwName = dwFname.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>'); } var dwProf = dwFid > 0 ? ('https://forum.dawah.wiki/memberlist.php?mode=viewprofile&u=' + dwFid) : dwUserHref; var dwAvatar = dwFid > 0 ? ('<a class="dwn-user-avatar" href="' + dwProf + '" rel="noopener nofollow ugc" aria-label="Profile"><img src="https://qamus.dawah.wiki/avatar/' + dwFid + '" alt="" width="28" height="28"></a>') : ''; whoInner = '<div class="dwn-user">' + dwAvatar + '<a class="dwn-user-main" href="' + dwProf + '" rel="noopener nofollow ugc"><span class="dwn-user-name"><bdi>' + dwName + '</bdi></span>' + dwRole + '</a><span class="dwn-user-actions"><a class="dwn-user-logout" href="' + dwLogoutHref + '" rel="nofollow">' + dwSignout + '</a></span></div>'; acctInner = whoInner; } else { whoInner = '<a class="du-login" href="' + login + '">' + loginTxt + '</a>'; acctInner = '<span class="acct-sub">' + (isAr ? 'سجّل الدخول للتحرير والمساهمة' : 'Sign in to edit and contribute') + '</span><a class="du-login du-login-m" href="' + login + '">' + loginTxt + '</a>'; } var acctHead = isAr ? 'الحساب' : 'Account'; var lang = '<div class="dwn-seg compact dwn-lang" role="group" aria-label="Language">' + '<a href="https://en.dawah.wiki/"' + (!isAr ? ' aria-current="page"' : '') + ' lang="en">EN</a>' + '<a href="https://ar.dawah.wiki/"' + (isAr ? ' aria-current="page"' : '') + ' lang="ar"><bdi dir="rtl">ع</bdi></a></div>'; var nav = document.createElement('header'); nav.className = 'dwn'; nav.setAttribute('role', 'banner'); nav.setAttribute('data-dw-wiki-nav', '1'); nav.innerHTML = '<div class="dwn-in">' + '<a class="dwn-brand" href="https://dawah.wiki/"><img class="dwn-crest" src="https://dawah.wiki/assets/dawahlogo.png" alt="" width="52" height="52"><span class="dwn-bt"><span class="dwn-title" lang="en">Dawah.Wiki</span><span class="dwn-sub">Knowledge. Clarity. Guidance.</span></span></a>' + '<div class="dwn-tools desktoponly">' + '<nav class="dwn-seg icons" role="navigation" aria-label="Platform">' + '<a href="' + wikiHref + '" aria-current="page"><span class="ic">' + IC.wiki + '</span><span class="lbl">Wiki</span></a>' + '<a href="https://forum.dawah.wiki/"><span class="ic">' + IC.forum + '</span><span class="lbl">Forum</span></a>' + '<a href="https://md.dawah.wiki/"><span class="ic">' + IC.md + '</span><span class="lbl">Markdown</span></a>' + '<a href="https://gallery.dawah.wiki/"><span class="ic">' + IC.gallery + '</span><span class="lbl">Gallery</span></a>' + '<a href="https://qamus.dawah.wiki/"><span class="ic">' + IC.qamus + '</span><span class="lbl">Qamus</span></a>' + '</nav>' + lang + '<span id="du-theme-slot" class="du-theme-mount"></span>' + '<div class="dwn-who">' + whoInner + '</div>' + '</div></div>'; var bot = document.createElement('nav'); bot.className = 'dwn-bot'; bot.setAttribute('aria-label', 'Primary'); bot.innerHTML = '<a class="cell" href="https://dawah.wiki/">' + IC.home + '<span class="t">Home</span></a>' + '<a class="cell" href="' + wikiHref + '" aria-current="page">' + IC.wiki + '<span class="t">Wiki</span></a>' + '<a class="cell" href="https://forum.dawah.wiki/">' + IC.forum + '<span class="t">Forum</span></a>' + '<details class="dwn-more"><summary class="cell" aria-haspopup="dialog" aria-label="More">' + IC.grid + '<span class="t">More</span></summary>' + '<div class="sheet" role="dialog" aria-label="More"><div class="shead">' + acctHead + '</div><div class="dwn-acct">' + acctInner + '</div><div class="sdiv"></div><div class="shead">Apps</div><div class="sgrid">' + '<a class="srow" href="https://md.dawah.wiki/">' + IC.md + 'Markdown</a>' + '<a class="srow" href="https://gallery.dawah.wiki/">' + IC.gallery + 'Gallery</a>' + '<a class="srow" href="https://qamus.dawah.wiki/">' + IC.qamus + 'Qamus</a>' + '</div><div class="sdiv"></div>' + '<div class="sutil"><span class="lab">' + (isAr ? 'اللغة' : 'Language') + '</span>' + lang + '</div>' + '<div class="sutil"><span class="lab">' + (isAr ? 'السمة' : 'Theme') + '</span><span id="du-theme-slot-m" class="du-theme-mount"></span></div>' + '</div></details>'; header.parentNode.insertBefore(nav, header); header.parentNode.insertBefore(bot, header); if (window.__duMount) { window.__duMount(); } wireThemeDismissal(); wireMoreDismissal(); } ready(ensureWikiNav); })(); /* /IMPLEMENTAUDIT wiki-ui-polish 2026-06-18 */ /* ===== DAWAHWIKI shared footer: hide MediaWiki's native footer and inject the canonical .dwn-foot used by every other surface (styled by nav.css; sticky via nav.css body:has(>.dwn-foot)). Self-contained; appended to MediaWiki:Common.js. ===== */ (function () { 'use strict'; function ready(fn) { if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', fn); } else { fn(); } } function injectFoot() { if (document.querySelector('footer.dwn-foot')) { return; } var nat = document.querySelector('.mw-footer-container'); if (nat) { nat.style.display = 'none'; } var isAr = (document.documentElement.lang || '').toLowerCase().indexOf('ar') === 0 || document.documentElement.dir === 'rtl'; var links = isAr ? [ ['عن', 'https://dawah.wiki/about'], ['الإرشادات', 'https://dawah.wiki/guidelines'], ['الخصوصية', 'https://dawah.wiki/privacy'], ['اتصل بنا', 'https://dawah.wiki/contact'] ] : [ ['About', 'https://dawah.wiki/about'], ['Guidelines', 'https://dawah.wiki/guidelines'], ['Privacy', 'https://dawah.wiki/privacy'], ['Contact', 'https://dawah.wiki/contact'] ]; var copyTxt = isAr ? '© 2026 Dawah.Wiki. جميع الحقوق محفوظة.' : '© 2026 Dawah.Wiki. All rights reserved.'; var f = document.createElement('footer'); f.className = 'dwn-foot'; f.setAttribute('role', 'contentinfo'); var fin = document.createElement('div'); fin.className = 'foot-in'; var nav = document.createElement('nav'); nav.className = 'foot-links'; nav.setAttribute('aria-label', 'Dawah.Wiki links'); links.forEach(function (it, i) { if (i) { var sp = document.createElement('span'); sp.className = 'sep'; sp.setAttribute('aria-hidden', 'true'); sp.textContent = '·'; nav.appendChild(sp); } var a = document.createElement('a'); a.href = it[1]; a.textContent = it[0]; nav.appendChild(a); }); var end = document.createElement('div'); end.className = 'foot-end'; var bdi = document.createElement('bdi'); bdi.textContent = copyTxt; end.appendChild(bdi); fin.appendChild(nav); fin.appendChild(end); f.appendChild(fin); document.body.appendChild(f); } ready(injectFoot); }()); /* === P0-06: surface userpage in the user dropdown as "User Profile" (main + sticky) === */ ( function () { function relabel() { [ '#vector-user-links-dropdown #pt-userpage a', '#vector-user-links-dropdown-sticky-header #pt-userpage-sticky-header a' ].forEach( function ( sel ) { var a = document.querySelector( sel ); if ( a ) { var s = a.querySelectorAll( 'span' ); if ( s.length && s[ s.length - 1 ].textContent !== 'User Profile' ) { s[ s.length - 1 ].textContent = 'User Profile'; } } } ); } relabel(); var n = 0, iv = setInterval( function () { relabel(); if ( ++n > 20 ) { clearInterval( iv ); } }, 250 ); window.addEventListener( 'scroll', function () { relabel(); }, { passive: true, once: true } ); }() );
compare-page1 (talk) (Translate) Page 1
compare-page2 (talk) (Translate) Page 2
compare-rev1 (talk) (Translate) Revision 1
compare-rev2 (talk) (Translate) Revision 2
compare-revision-not-exists (talk) (Translate) The revision you specified does not exist.
compare-submit (talk) (Translate) Compare
comparepages (talk) (Translate) Compare pages
comparepages-summary (talk) (Translate)  
compareselectedversions (talk) (Translate) Compare selected revisions
config-invalid-key (talk) (Translate) Invalid MediaWiki configuration parameter "$1": $2
config-missing-key (talk) (Translate) Missing MediaWiki configuration parameter "$1"
confirm (talk) (Translate) Confirm
confirm-markpatrolled-button (talk) (Translate) OK
confirm-markpatrolled-top (talk) (Translate) Mark revision $3 of $2 as patrolled?
confirm-mcrrestore-title (talk) (Translate) Restore a revision
confirm-mcrundo-title (talk) (Translate) Undo a change
confirm-purge-bottom (talk) (Translate) Purging a page clears the cache and forces the most current revision to appear.
confirm-purge-title (talk) (Translate) Purge this page
confirm-purge-top (talk) (Translate) Purge the cache of this page?
confirm-rollback-bottom (talk) (Translate) This action will instantly rollback the selected changes to this page.
confirm-rollback-button (talk) (Translate) OK
confirm-rollback-top (talk) (Translate) Revert edits to this page?
confirm-unwatch-button (talk) (Translate) OK
confirm-unwatch-top (talk) (Translate) Remove this page from your watchlist?
confirm-watch-button (talk) (Translate) OK
confirm-watch-button-expiry (talk) (Translate) Watch
confirm-watch-label (talk) (Translate) Watchlist time period:
confirm-watch-top (talk) (Translate) Add this page to your watchlist?
confirm_purge_button (talk) (Translate) OK
confirmable-confirm (talk) (Translate) Are {{GENDER:$1|you}} sure?
confirmable-no (talk) (Translate) No
confirmable-yes (talk) (Translate) Yes
First pagePrevious pageNext pageLast page