@import"https://fonts.cdnfonts.com/css/cmu-serif";@import"https://fonts.cdnfonts.com/css/tex-gyre-heros";@font-face{font-family:Amiri Quran;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/amiri-quran-arabic-400-normal-wRcqfVJx.woff2) format("woff2"),url(/assets/amiri-quran-arabic-400-normal-CZ144KtP.woff) format("woff")}.site-shell{min-height:var(--viewport-height, 100vh);--sidebar-width: 210px;--sidebar-offset: clamp(2rem, 3vw, 4.5rem);--sidebar-top-offset: clamp(2.8rem, 4vw, 4.2rem);--content-offset: calc(var(--sidebar-width) + var(--sidebar-offset));--content-gutter: clamp(1rem, 2.4vw, 2.5rem)}.container{width:min(1120px,calc(var(--viewport-width, 100vw) - var(--content-offset) - (var(--content-gutter) * 2)));max-width:100%;margin-inline:auto}.side-header{position:fixed;top:var(--sidebar-top-offset);left:var(--sidebar-offset);width:var(--sidebar-width);height:100vh;background:transparent;border-right:0;z-index:30;display:flex;flex-direction:column;justify-content:flex-start;padding-top:1.3rem}.side-header-top{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}.side-portrait{width:112px;height:112px;border-radius:50%;margin-bottom:1.25rem;margin-inline-start:2.3rem;border:2.5px solid #7dd6d3;position:relative;overflow:hidden;isolation:isolate;background:transparent}.portrait-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transform-origin:center;backface-visibility:hidden;will-change:transform,filter,opacity}.portrait-image.portrait-contain{object-fit:contain;background-color:transparent}.portrait-button{border:0;background:transparent;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;appearance:none;touch-action:manipulation;outline:none;box-shadow:none;perspective:900px;transform-style:preserve-3d}.portrait-button:focus,.portrait-button:active{outline:none;box-shadow:none}.portrait-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:50%}.menu-toggle{display:none;border:0;background:transparent;color:var(--text);font:inherit;padding:.2rem 0;cursor:pointer;letter-spacing:.02em;outline:none;-webkit-tap-highlight-color:transparent}.menu-toggle:hover{color:var(--accent)}.menu-toggle:focus,.menu-toggle:focus-visible,.menu-toggle:active{outline:none;box-shadow:none}.side-controls{position:fixed;top:max(.9rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));z-index:80;display:inline-flex;flex-direction:row;align-items:center;gap:.6rem;direction:ltr;unicode-bidi:isolate}.theme-toggle{border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 85%,transparent);color:var(--muted);font:inherit;font-size:.85rem;border-radius:6px;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease;box-sizing:border-box;direction:ltr;unicode-bidi:isolate}.theme-toggle{position:relative;width:3.3rem;height:1.7rem;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:flex-end;overflow:hidden;color:var(--muted)}.theme-toggle:before{content:"";position:absolute;left:.2rem;top:50%;width:1.2rem;height:1.2rem;border-radius:50%;background:color-mix(in srgb,var(--text) 90%,var(--bg));transform:translateY(-50%);transition:transform .25s ease,background-color .25s ease}.theme-toggle.is-light{justify-content:flex-start}.theme-toggle.is-light:before{transform:translate(1.6rem,-50%)}.theme-icon{position:relative;z-index:1;font-size:.85rem;line-height:1;padding-inline:.45rem;color:var(--muted)}.side-nav{width:100%;padding:0 1.2rem 2.2rem;margin-top:1.5rem;display:grid;gap:.55rem}.side-link-group{display:contents}.side-link{display:inline-flex;align-items:center;gap:.85rem;font-size:clamp(1.2rem,1.5vw,1.6rem);color:var(--muted);letter-spacing:-.015em;line-height:1.25;transition:color .26s cubic-bezier(.23,1,.32,1)}.side-link.is-active,.side-link:hover{color:var(--text)}.nav-dot{width:1.1rem;text-align:center;color:var(--text);font-size:.72em}.nav-arrow{display:inline-block;transform-origin:center}.nav-arrow-rotating-up{-webkit-animation:nav-arrow-rotate-up .36s cubic-bezier(.4,0,.2,1) forwards;animation:nav-arrow-rotate-up .36s cubic-bezier(.4,0,.2,1) forwards}.nav-arrow-rotating-down{-webkit-animation:nav-arrow-rotate-down .36s cubic-bezier(.4,0,.2,1) forwards;animation:nav-arrow-rotate-down .36s cubic-bezier(.4,0,.2,1) forwards}@-webkit-keyframes nav-arrow-rotate-up{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}@keyframes nav-arrow-rotate-up{0%{transform:rotate(0)}to{transform:rotate(-90deg)}}@-webkit-keyframes nav-arrow-rotate-down{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}@keyframes nav-arrow-rotate-down{0%{transform:rotate(0)}to{transform:rotate(90deg)}}.rocket-overlay{position:fixed;z-index:9999;pointer-events:none;color:var(--text);line-height:1;will-change:transform;-webkit-animation:rocket-fly .82s cubic-bezier(.16,1,.3,1) forwards;animation:rocket-fly .82s cubic-bezier(.16,1,.3,1) forwards}.rocket-char-up,.rocket-char-down{display:inline-block;font-size:.72em;transform-origin:center}.rocket-char-up{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.rocket-char-down{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@-webkit-keyframes rocket-fly{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(var(--rocket-travel, 0px));transform:translateY(var(--rocket-travel, 0px))}}@keyframes rocket-fly{0%{transform:translateY(0)}to{transform:translateY(var(--rocket-travel, 0px))}}.smoke-puff{position:fixed;width:5px;height:5px;border-radius:50%;background:var(--muted);z-index:9998;pointer-events:none;opacity:0;will-change:transform,opacity;-webkit-transform:translate(-50%,-50%) scale(.5);transform:translate(-50%,-50%) scale(.5);-webkit-animation:smoke-expand .35s ease-out forwards;animation:smoke-expand .35s ease-out forwards}@-webkit-keyframes smoke-expand{0%{opacity:.5;-webkit-transform:translate(-50%,-50%) scale(.5);transform:translate(-50%,-50%) scale(.5)}to{opacity:0;-webkit-transform:translate(-50%,calc(-50% + var(--smoke-drift, 10px))) scale(2.5);transform:translate(-50%,calc(-50% + var(--smoke-drift, 10px))) scale(2.5)}}@keyframes smoke-expand{0%{opacity:.5;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,calc(-50% + var(--smoke-drift, 10px))) scale(2.5)}}.mobile-menu-ornament{display:none}.content-shell{margin-left:var(--content-offset);padding-inline:var(--content-gutter);min-height:calc(var(--viewport-height, 100vh) - 70px);padding-top:clamp(.4rem,1vw,1rem)}.section-block{padding-block:clamp(2.8rem,4.6vw,5rem)}.page-pad{min-height:max(34rem,calc(var(--viewport-height, 100vh) - 90px))}.page-transition{animation:pageFade .45s cubic-bezier(.2,.8,.2,1)}.site-footer{margin-left:var(--content-offset);padding-inline:var(--content-gutter);border-top:0;margin-top:auto}.footer-row{padding-block:1.6rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;color:var(--muted);font-size:.9rem;text-align:center;width:100%}.footer-logo{width:min(130px,36vw);height:auto;display:block}.footer-brand{position:relative;display:inline-flex;align-items:center;justify-content:center}.footer-copyright{position:absolute;top:-.2rem;right:.1rem;font-size:clamp(.55rem,1.6vw,.7rem);color:var(--muted);letter-spacing:.08em}.portrait-modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:#05080c80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);perspective:1400px}.portrait-modal-close{position:absolute;top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));border:none;background:transparent;color:var(--text);font-size:1.5rem;line-height:1;cursor:pointer;padding:0;z-index:1}.portrait-modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portrait-modal-body{display:flex;flex-direction:column;align-items:center;gap:1.2rem;transform-style:preserve-3d;max-height:calc(100dvh - 4rem);max-height:calc(100vh - 4rem)}.portrait-modal-body .portrait-modal-image{flex-shrink:1;min-height:0}.portrait-modal-hint{color:var(--text);font-size:.95rem;margin:0;cursor:default;-webkit-user-select:none;user-select:none}.portrait-modal-image{width:min(82vmin,820px);aspect-ratio:1 / 1;border-radius:50%;position:relative;overflow:hidden;isolation:isolate;background:transparent;transform-style:preserve-3d;backface-visibility:hidden}.portrait-scan-ghost,.portrait-scan-band,.portrait-pixel-rain,.portrait-scan-bloom{position:absolute;inset:0;opacity:0;pointer-events:none}.portrait-scan-ghost{background-position:center;background-repeat:no-repeat;background-size:cover;mix-blend-mode:screen;will-change:transform,opacity,filter}.portrait-scan-ghost.portrait-contain{background-size:contain;background-color:transparent}.portrait-scan-ghost-a{filter:saturate(1.12) contrast(1.1)}.portrait-scan-ghost-b{filter:saturate(1.18) contrast(1.12)}.portrait-scan-band{background:linear-gradient(115deg,#0000,#6de7ff14 34%,#cdf9ffe0 48%,#6de7ff29 58%,#0000 74%),linear-gradient(180deg,#04081057,#0408100f 36%,#04081066),repeating-linear-gradient(180deg,#ffffff0f 0 1px,#fff0 1px 7px);mix-blend-mode:plus-lighter;will-change:opacity,transform,filter}.portrait-scan-bloom{background:radial-gradient(circle at 50% 42%,#8af1ff42,#0000 54%),radial-gradient(circle at 50% 55%,#ffffff24,#0000 70%);mix-blend-mode:screen;will-change:opacity,transform,filter}.portrait-pixel-rain{background:linear-gradient(115deg,#0000,#a5f1ff24 34%,#fffffffa 48%,#6de7ff3d 58%,#0000 74%),repeating-linear-gradient(90deg,#ffffffad 0 4px,#0000 4px 9px),repeating-linear-gradient(180deg,#6de7ff85 0 4px,#0000 4px 10px);mix-blend-mode:screen;will-change:opacity,transform,filter,background-position}.side-portrait{--portrait-sweep-distance: 128%;--portrait-ghost-shift: 7px;--portrait-bloom-strength: .55;--portrait-transition-duration: .46s;--portrait-pixel-drop: 10px}.portrait-modal-image{--portrait-sweep-distance: 136%;--portrait-ghost-shift: 14px;--portrait-bloom-strength: .92;--portrait-transition-duration: .56s;--portrait-pixel-drop: 20px}.side-portrait.is-transitioning{animation:portraitSignalFrame var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.portrait-modal-image.is-transitioning{animation:portraitSignalFrameModal var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-image,.portrait-modal-image.is-transitioning .portrait-image{animation:portraitSignalImage var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-scan-ghost,.side-portrait.is-transitioning .portrait-scan-band,.side-portrait.is-transitioning .portrait-pixel-rain,.side-portrait.is-transitioning .portrait-scan-bloom,.portrait-modal-image.is-transitioning .portrait-scan-ghost,.portrait-modal-image.is-transitioning .portrait-scan-band,.portrait-modal-image.is-transitioning .portrait-pixel-rain,.portrait-modal-image.is-transitioning .portrait-scan-bloom{opacity:1}.side-portrait.is-transitioning .portrait-scan-ghost-a,.portrait-modal-image.is-transitioning .portrait-scan-ghost-a{animation:portraitSignalGhostA var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-scan-ghost-b,.portrait-modal-image.is-transitioning .portrait-scan-ghost-b{animation:portraitSignalGhostB var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-scan-band,.portrait-modal-image.is-transitioning .portrait-scan-band{animation:portraitSignalBand var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-pixel-rain,.portrait-modal-image.is-transitioning .portrait-pixel-rain{animation:portraitPixelRain var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-scan-bloom,.portrait-modal-image.is-transitioning .portrait-scan-bloom{animation:portraitSignalBloom var(--portrait-transition-duration) cubic-bezier(.2,.82,.2,1)}.side-portrait.is-transitioning .portrait-scan-ghost-a,.side-portrait.is-transitioning .portrait-scan-ghost-b{opacity:.38}.side-portrait.is-transitioning .portrait-scan-bloom{opacity:var(--portrait-bloom-strength)}.side-portrait.is-transitioning .portrait-pixel-rain{opacity:.48;filter:blur(.45px)}.portrait-modal-image.is-transitioning .portrait-scan-ghost-a,.portrait-modal-image.is-transitioning .portrait-scan-ghost-b{opacity:.52}.portrait-modal-image.is-transitioning .portrait-pixel-rain{opacity:.62;filter:blur(.8px)}.portrait-modal-image.is-transitioning .portrait-scan-bloom{opacity:var(--portrait-bloom-strength)}.portrait-modal-image.is-transitioning .portrait-scan-band{filter:blur(1.2px)}.side-portrait.is-transitioning .portrait-scan-band{filter:blur(.65px)}@keyframes portraitSignalFrame{0%{transform:scale(1);filter:brightness(1) saturate(1);box-shadow:inset 0 0 #73e4ff00}18%{transform:scale(.985);filter:brightness(.9) saturate(.92);box-shadow:inset 0 0 0 1px #73e4ff14}50%{transform:scale(.994);filter:brightness(.82) saturate(1.08);box-shadow:inset 0 0 0 1px #daf7ff33,0 0 10px #73e4ff29}74%{transform:scale(1.006);filter:brightness(1.03) saturate(1.04);box-shadow:0 0 8px #73e4ff1f}to{transform:scale(1);filter:brightness(1) saturate(1);box-shadow:inset 0 0 #73e4ff00}}@keyframes portraitSignalFrameModal{0%{transform:scale(1);filter:brightness(1) saturate(1);box-shadow:inset 0 0 #73e4ff00}18%{transform:scale(.988);filter:brightness(.9) saturate(.94);box-shadow:inset 0 0 0 1px #73e4ff1a}50%{transform:scale(.996);filter:brightness(.8) saturate(1.1);box-shadow:inset 0 0 0 1px #daf7ff3d,0 0 26px #73e4ff2e}76%{transform:scale(1.004);filter:brightness(1.03) saturate(1.04);box-shadow:0 0 18px #73e4ff1f}to{transform:scale(1);filter:brightness(1) saturate(1);box-shadow:inset 0 0 #73e4ff00}}@keyframes portraitSignalImage{0%{transform:translateZ(0) scale(1);filter:brightness(1) contrast(1) saturate(1)}18%{transform:translateZ(0) scale(1.022);filter:brightness(.94) contrast(1.02) saturate(.96)}38%{transform:translate3d(calc(var(--portrait-ghost-shift) * -.28),0,0) scale(1.03);filter:brightness(.88) contrast(1.08) saturate(1.08)}52%{transform:translate3d(calc(var(--portrait-ghost-shift) * .18),0,0) scale(1.014);filter:brightness(1.06) contrast(1.12) saturate(1.1)}74%{transform:translateZ(0) scale(1.006);filter:brightness(1.02) contrast(1.02) saturate(1.03)}to{transform:translateZ(0) scale(1);filter:brightness(1) contrast(1) saturate(1)}}@keyframes portraitSignalGhostA{0%,to{opacity:0;transform:translateZ(0) scale(1);filter:hue-rotate(0deg) saturate(1)}28%{opacity:.18;transform:translate3d(calc(var(--portrait-ghost-shift) * -.55),0,0) scale(1.016);filter:hue-rotate(-18deg) saturate(1.34)}48%{opacity:.36;transform:translate3d(calc(var(--portrait-ghost-shift) * -1),0,0) scale(1.02);filter:hue-rotate(-26deg) saturate(1.44) brightness(1.08)}68%{opacity:.12;transform:translate3d(calc(var(--portrait-ghost-shift) * -.28),0,0) scale(1.008);filter:hue-rotate(-8deg) saturate(1.14)}}@keyframes portraitSignalGhostB{0%,to{opacity:0;transform:translateZ(0) scale(1);filter:hue-rotate(0deg) saturate(1)}26%{opacity:.14;transform:translate3d(calc(var(--portrait-ghost-shift) * .42),0,0) scale(1.014);filter:hue-rotate(20deg) saturate(1.28)}50%{opacity:.3;transform:translate3d(calc(var(--portrait-ghost-shift) * .86),0,0) scale(1.018);filter:hue-rotate(32deg) saturate(1.4) brightness(1.06)}70%{opacity:.1;transform:translate3d(calc(var(--portrait-ghost-shift) * .24),0,0) scale(1.006);filter:hue-rotate(10deg) saturate(1.1)}}@keyframes portraitSignalBand{0%{opacity:0;transform:translate3d(calc(var(--portrait-sweep-distance) * -1),0,0) skew(-14deg)}18%{opacity:.18}44%{opacity:.96;transform:translate3d(calc(var(--portrait-sweep-distance) * -.08),0,0) skew(-14deg)}56%{opacity:.92;transform:translate3d(calc(var(--portrait-sweep-distance) * .12),0,0) skew(-14deg)}86%{opacity:.08;transform:translate3d(var(--portrait-sweep-distance),0,0) skew(-14deg)}to{opacity:0;transform:translate3d(var(--portrait-sweep-distance),0,0) skew(-14deg)}}@keyframes portraitSignalBloom{0%,to{opacity:0;transform:scale(.98);filter:blur(0px)}28%{opacity:calc(var(--portrait-bloom-strength) * .48);transform:scale(1.012);filter:blur(6px)}50%{opacity:var(--portrait-bloom-strength);transform:scale(1.032);filter:blur(10px)}76%{opacity:calc(var(--portrait-bloom-strength) * .22);transform:scale(1.014);filter:blur(4px)}}@keyframes portraitPixelRain{0%{opacity:0;transform:translate3d(calc(var(--portrait-sweep-distance) * -1),0,0) skew(-14deg);background-position:0 0,0 0,0 0;filter:blur(0px)}24%{opacity:0;transform:translate3d(calc(var(--portrait-sweep-distance) * -.62),0,0) skew(-14deg);background-position:0 0,0 0,0 0}42%{opacity:.3;transform:translate3d(calc(var(--portrait-sweep-distance) * -.12),0,0) skew(-14deg);background-position:0 0,0 0,0 0;filter:blur(.15px)}50%{opacity:.9;transform:translate3d(0,calc(var(--portrait-pixel-drop) * .18),0) skew(-14deg);background-position:0 0,calc(var(--portrait-ghost-shift) * .3) calc(var(--portrait-pixel-drop) * .28),calc(var(--portrait-ghost-shift) * -.24) calc(var(--portrait-pixel-drop) * -.12);filter:blur(.55px)}58%{opacity:.8;transform:translate3d(calc(var(--portrait-sweep-distance) * .18),var(--portrait-pixel-drop),0) skew(-14deg);background-position:0 0,calc(var(--portrait-ghost-shift) * .52) calc(var(--portrait-pixel-drop) * 1),calc(var(--portrait-ghost-shift) * -.42) calc(var(--portrait-pixel-drop) * .56);filter:blur(.75px)}72%{opacity:.18;transform:translate3d(calc(var(--portrait-sweep-distance) * .64),calc(var(--portrait-pixel-drop) * .24),0) skew(-14deg);background-position:0 0,calc(var(--portrait-ghost-shift) * .2) calc(var(--portrait-pixel-drop) * .26),calc(var(--portrait-ghost-shift) * -.14) calc(var(--portrait-pixel-drop) * .12);filter:blur(.2px)}to{opacity:0;transform:translate3d(var(--portrait-sweep-distance),0,0) skew(-14deg);background-position:0 0,0 0,0 0;filter:blur(0px)}}@media(prefers-reduced-motion:reduce){.side-portrait.is-transitioning,.portrait-modal-image.is-transitioning,.side-portrait.is-transitioning .portrait-image,.portrait-modal-image.is-transitioning .portrait-image,.side-portrait.is-transitioning .portrait-scan-ghost,.portrait-modal-image.is-transitioning .portrait-scan-ghost,.side-portrait.is-transitioning .portrait-scan-band,.portrait-modal-image.is-transitioning .portrait-scan-band,.side-portrait.is-transitioning .portrait-pixel-rain,.portrait-modal-image.is-transitioning .portrait-pixel-rain,.side-portrait.is-transitioning .portrait-scan-bloom,.portrait-modal-image.is-transitioning .portrait-scan-bloom{animation:none}.side-portrait.is-transitioning .portrait-image,.portrait-modal-image.is-transitioning .portrait-image{opacity:.96;transition:opacity .12s linear}.side-portrait.is-transitioning .portrait-scan-ghost,.portrait-modal-image.is-transitioning .portrait-scan-ghost,.side-portrait.is-transitioning .portrait-scan-band,.portrait-modal-image.is-transitioning .portrait-scan-band,.side-portrait.is-transitioning .portrait-pixel-rain,.portrait-modal-image.is-transitioning .portrait-pixel-rain,.side-portrait.is-transitioning .portrait-scan-bloom,.portrait-modal-image.is-transitioning .portrait-scan-bloom{opacity:0}}@keyframes pageFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.site-shell{--sidebar-width: 180px;--sidebar-offset: clamp(1.2rem, 2vw, 2.5rem)}}:root[data-screen=wide] .site-shell{--sidebar-width: 230px;--sidebar-offset: clamp(2.4rem, 3vw, 5rem);--content-gutter: clamp(1.5rem, 2.8vw, 3.4rem)}:root[data-screen=wide] .container{width:min(1220px,calc(var(--viewport-width, 100vw) - var(--content-offset) - (var(--content-gutter) * 2)))}:root[data-screen=tablet] .site-shell{--content-gutter: clamp(1rem, 2.8vw, 1.6rem)}:root[data-screen=tablet] .page-pad{min-height:auto}@media(min-width:781px)and (max-height:900px){.site-shell{--sidebar-top-offset: clamp(1.45rem, 2.4vw, 2.2rem)}.side-header{padding-top:.8rem}.side-nav{margin-top:1.2rem}}@media(max-width:780px){.site-shell{--content-offset: 0px;--content-gutter: clamp(.8rem, 3vw, 1.2rem)}.side-header{position:sticky;top:0;width:100%;height:auto;border-right:0;border-bottom:0;flex-direction:column;align-items:stretch;gap:.6rem;padding:max(.8rem,env(safe-area-inset-top)) max(.8rem,env(safe-area-inset-right)) .5rem max(.8rem,env(safe-area-inset-left));background:var(--bg)}.side-header-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%}.side-controls{position:static;display:inline-flex;justify-self:start;align-items:center}.theme-toggle{font-size:.78rem}.side-portrait{width:54px;height:54px;margin-bottom:0;margin-inline-start:0}.portrait-button{grid-column:2;justify-self:center}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;grid-column:3;justify-self:end}.side-nav{display:none;gap:.7rem;padding:.75rem .5rem 1rem;margin-top:0;border-top:1px solid var(--line);background:var(--bg);text-align:center}.side-nav.is-open{display:grid;justify-items:center}.side-link{font-size:1.1rem;justify-content:center;gap:0;position:relative}.nav-dot{position:absolute;left:-1.2rem;width:0}.mobile-menu-ornament{display:flex;align-items:center;justify-content:center;gap:.7rem;width:min(220px,64vw);margin:.85rem auto .15rem;color:color-mix(in srgb,var(--muted) 34%,var(--line));opacity:.82}.mobile-menu-ornament:before,.mobile-menu-ornament:after{content:"";flex:1 1 auto;height:1px;background:linear-gradient(to var(--ornament-flow, right),transparent,currentColor 28%,currentColor 100%)}.mobile-menu-ornament:after{--ornament-flow: left}.mobile-menu-ornament-center{width:34px;height:14px;flex:0 0 auto;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 14' fill='none'%3E%3Cpath d='M1 13L7 2l6 11H1Z' stroke='%23959dab' stroke-width='1.1' stroke-linejoin='miter'/%3E%3Cpath d='M9 13l6-11 6 11H9Z' stroke='%23959dab' stroke-width='1.1' stroke-linejoin='miter'/%3E%3Cpath d='M17 13l6-11 6 11H17Z' stroke='%23959dab' stroke-width='1.1' stroke-linejoin='miter'/%3E%3C/svg%3E")}.content-shell,.site-footer{margin-left:0;margin-right:0}.site-footer{padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:420px){.site-shell{--content-gutter: .75rem}.side-portrait{width:44px;height:44px}.side-nav{gap:.5rem}}:root[data-screen=phone] .page-pad{min-height:auto}:root[data-screen=phone][data-orientation=landscape] .page-pad{padding-block:2rem}.section-title{max-width:68ch;margin-bottom:clamp(2.4rem,4vw,3.2rem);text-wrap:balance}.section-title h2{font-size:clamp(1.35rem,2.1vw,2rem);line-height:1.25}.loading-skip-hint{position:absolute;top:max(1.2rem,env(safe-area-inset-top));right:max(1.2rem,env(safe-area-inset-right));font-family:var(--font-base);font-size:clamp(.62rem,1.4vw,.76rem);color:var(--muted);opacity:.4;letter-spacing:.05em;-webkit-user-select:none;user-select:none;pointer-events:none}.loading-scramble{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:var(--bg);pointer-events:none}.loading-scramble-text{color:var(--loader-text);font-size:clamp(2.35rem,5.4vw,4.15rem);font-family:var(--font-loader-arabic);font-weight:400;letter-spacing:0;direction:rtl;unicode-bidi:plaintext;text-align:center;max-width:92vw;line-height:1.4;font-feature-settings:"liga" 1,"calt" 1,"kern" 1;font-variant-ligatures:common-ligatures contextual discretionary-ligatures;font-synthesis:none;text-rendering:geometricPrecision;text-shadow:var(--loader-text-shadow)}.loading-scramble-text.is-settled{animation:loaderCalligraphySettle .48s cubic-bezier(.2,.8,.2,1)}@media(max-width:768px){.section-title{margin-bottom:1.8rem}.section-title h2{font-size:clamp(1.3rem,6vw,1.8rem)}.loading-scramble-text{font-size:clamp(2rem,11.5vw,2.85rem);max-width:88vw}}@keyframes loaderCalligraphySettle{0%{opacity:.86;transform:translateY(4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.scroll-section .section-title{text-align:center;margin-inline:auto}.scroll-section{scroll-margin-top:1.5rem}:root[data-screen=phone] .scroll-section,:root[data-screen=tablet] .scroll-section{scroll-margin-top:5rem}.experience-list{width:min(100%,760px);margin-inline:auto;display:grid;gap:2.8rem}.experience-block{display:grid;gap:.3rem;text-wrap:pretty}.experience-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.experience-role{color:var(--text);font-size:clamp(1rem,1.25vw,1.12rem);font-weight:600;line-height:1.3}.experience-dates{color:var(--muted);font-size:clamp(.82rem,1vw,.9rem);font-weight:400;letter-spacing:.01em;white-space:nowrap}.experience-meta{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}.experience-company{color:var(--muted);font-size:clamp(.9rem,1.1vw,1rem);font-style:italic}.experience-company-link{color:var(--link)}.experience-location{color:var(--muted);font-size:clamp(.82rem,1vw,.9rem);opacity:.7}.experience-body{color:var(--muted);font-size:clamp(1rem,1.15vw,1.45rem);line-height:1.5;display:grid;gap:clamp(.65rem,1vw,.95rem)}.experience-body p{margin:0}.experience-body a{color:var(--link)}@media(max-width:768px){.experience-header,.experience-meta{flex-direction:column;gap:.15rem}}.about-prose{width:min(100%,760px);margin-inline:auto;color:var(--muted);font-size:clamp(1rem,1.15vw,1.45rem);line-height:1.5;padding-top:clamp(1.5rem,9vh,6rem);text-wrap:pretty}.about-prose a{color:var(--link)}.about-prose.bio-prose{padding-top:0}.about-prose.bio-prose p{text-indent:2em;margin-bottom:.75rem}.pong-section{padding-block:clamp(3.2rem,5vw,5rem) clamp(6rem,35vh,22rem)}.pong-shell{width:min(100%,760px);margin-inline:auto;display:grid;gap:.8rem}.pong-field{position:relative;width:100%;aspect-ratio:760 / 420;overflow:hidden;background:transparent;outline:none;touch-action:none}.pong-toggle{position:absolute;top:0;right:0;z-index:2;border:0;background:transparent;color:var(--muted);font:inherit;font-size:1rem;line-height:1;padding:.25rem 0;cursor:pointer}.pong-center-line{position:absolute;inset:1rem auto 1rem 50%;width:1px;background:repeating-linear-gradient(to bottom,var(--line) 0 12px,transparent 12px 24px);transform:translate(-50%)}.pong-paddle,.pong-ball{position:absolute;top:0;background:var(--text);will-change:top,left}.pong-paddle{width:calc(100% * 10 / 760);height:20%}.pong-paddle-player{left:calc(100% * 18 / 760)}.pong-paddle-ai{left:calc(100% * 732 / 760)}.pong-ball{left:0;width:calc(100% * 10 / 760);height:calc(100% * 10 / 420);border-radius:50%}.pong-instructions{color:var(--muted);font-size:.9rem;line-height:1.45;text-align:center}.pong-mobile-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pong-mobile-note{margin:0;max-width:min(100%,24rem);color:var(--muted);align-self:center;font-size:.76rem;line-height:1.35;text-wrap:pretty;text-align:left}.pong-mobile-rocker{flex-shrink:0;display:flex;flex-direction:column;gap:.4rem;background:transparent;border:none;width:3.4rem}.pong-mobile-button{display:flex;align-items:center;justify-content:center;width:100%;height:3.2rem;border:none;border-radius:0;background:#2c2c3a;color:#b8b8cc;font:inherit;font-size:1rem;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;transition:background-color .08s ease,color .08s ease}.pong-mobile-button:first-child{clip-path:polygon(50% 0%,100% 44%,100% 100%,0% 100%,0% 44%);padding-top:1.3rem}.pong-mobile-button:last-child{clip-path:polygon(0% 0%,100% 0%,100% 56%,50% 100%,0% 56%);padding-bottom:1.3rem}:root[data-theme=light] .pong-mobile-button{background:#8c8078;color:#f0ebe5}.pong-mobile-button-glyph{display:inline-block;line-height:1}.pong-mobile-button:active{background:#44445a;color:#e8e8f8}:root[data-theme=light] .pong-mobile-button:active{background:#6e6460;color:#f5f0ec}.pong-mobile-button:focus-visible{outline:2px solid #6a6a9a;outline-offset:2px}.about-prose p+p{margin-top:clamp(.95rem,1.5vw,1.5rem)}.about-greeting{color:var(--text);font-size:clamp(1rem,1.15vw,1.45rem);font-weight:500;margin-bottom:.2rem}.about-signature{font-family:Qwitcher Grypen,cursive;font-size:1.8em;font-weight:400;color:var(--muted);line-height:1.2;letter-spacing:-.04em;word-spacing:.3em}.projects-list{width:min(100%,760px);margin-inline:auto;display:grid;gap:.8rem}.project-row-link{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:1.1rem;padding:.85rem .4rem;width:100%;border-radius:8px;transition:color .2s ease}.project-year{color:var(--muted);font-weight:600;letter-spacing:.01em}.project-main{display:grid;gap:.25rem;justify-self:start;width:fit-content}.project-name{color:var(--link);font-size:clamp(1rem,1.25vw,1.12rem);font-weight:500;line-height:1.2}.project-summary{color:var(--muted);font-size:clamp(.98rem,1.2vw,1.28rem);line-height:1.45;max-width:62ch}.research-list,.certifications-list{width:min(100%,760px);margin-inline:auto;display:grid;gap:.8rem}.research-row-link,.certification-row-link{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:1.1rem;padding:.85rem .4rem;width:100%}.research-year,.certification-year{color:var(--muted);font-weight:600;letter-spacing:.01em}.research-name,.certification-name{font-size:clamp(1rem,1.25vw,1.12rem);font-weight:500;line-height:1.2}.research-name{color:var(--link)}.certification-name{color:var(--text)}.certification-name-link{color:var(--link)}.certification-name-link{width:fit-content}.research-summary,.certification-summary{color:var(--muted);font-size:clamp(.98rem,1.2vw,1.28rem);line-height:1.45;max-width:62ch}.research-main,.certification-main{display:grid;gap:.25rem;justify-self:start;width:fit-content}.certificate-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:1rem;background:#080b108c;-webkit-backdrop-filter:blur(28px) saturate(.8);backdrop-filter:blur(28px) saturate(.8)}.certificate-modal-card{width:min(960px,100%);height:min(88vh,980px)}.certificate-modal-close{position:absolute;top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));border:none;background:transparent;color:var(--text);font-size:1.5rem;line-height:1;cursor:pointer;padding:0;z-index:1}.certificate-modal-frame{width:100%;height:100%;border:0;background:#fff}.fun-facts-grid{width:min(100%,760px);margin-inline:auto;display:grid;gap:.5rem}.fun-fact-card{display:grid;grid-template-columns:1.4rem 1fr;align-items:baseline;gap:.8rem;padding:.5rem 0}.fun-fact-icon{font-size:.8rem;color:var(--muted)}.fun-fact-text{color:var(--text);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.6}.fun-fact-text a{color:var(--link)}.social-list{width:min(100%,760px);margin-inline:auto;display:grid;gap:.85rem;justify-items:center}.social-link{display:inline-grid;grid-template-columns:auto 1.15rem;align-items:center;justify-content:center;column-gap:.8rem;width:fit-content;color:var(--link);font-size:clamp(1.02rem,1.2vw,1.25rem);line-height:1.35}.dont-click-link{display:block;text-align:center;text-decoration:none;font-size:clamp(.65rem,1vw,.75rem);color:var(--muted);opacity:.55;margin-top:auto;padding-top:clamp(1.25rem,3vw,2rem)}.social-icon{width:1.15rem;height:1.15rem;display:inline-grid;place-items:center;color:var(--muted);flex-shrink:0;overflow:hidden}.social-icon svg{width:100%;height:100%;display:block}.social-icon img,.social-icon-image{width:100%;height:100%;display:block;object-fit:contain;filter:grayscale(1)}.social-section{display:flex;flex-direction:column;justify-content:center}.chat-shell{width:min(100%,760px);margin-inline:auto;display:grid;gap:1rem}.chat-intro{max-width:58ch;color:var(--muted);font-size:clamp(.98rem,1.1vw,1.08rem);line-height:1.6}.chat-log{min-height:18rem;max-height:min(30rem,60vh);overflow-y:auto;padding-block:1rem;padding-right:1rem;display:grid;gap:.95rem}.chat-empty{color:var(--muted);font-size:clamp(.98rem,1.1vw,1.05rem);line-height:1.6}.chat-entry{display:grid;gap:.3rem;align-items:start}.chat-entry-user{justify-items:end}.chat-entry-assistant{justify-items:start}.chat-role{color:var(--muted);font-size:.72rem;letter-spacing:.04em}.chat-bubble{max-width:min(70%,32rem);margin:0;padding:.6rem .85rem;border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:clamp(.9rem,1.1vw,1rem);line-height:1.55;background:transparent;white-space:pre-wrap}.chat-bubble-pending{color:var(--muted);font-style:italic}.chat-form{display:grid;gap:.75rem}.chat-label{color:var(--muted);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.chat-input-wrap{position:relative;border-radius:8px;overflow:hidden}.chat-input{width:100%;min-height:3.5rem;resize:none;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:1rem;line-height:1.6;padding:.9rem 1rem 3.5rem;outline:none;box-sizing:border-box}.chat-input::placeholder{color:var(--placeholder)}.chat-input:focus-visible{border-color:var(--accent)}.chat-input:disabled{opacity:.72}.chat-hint{color:var(--muted);font-size:.82rem}.chat-submit{position:absolute;bottom:.9rem;right:.6rem;width:2.1rem;height:2.1rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:var(--accent);color:var(--bg);cursor:pointer;transition:opacity .2s ease,background-color .2s ease}.chat-submit:hover:not(:disabled){opacity:.85}.chat-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-submit:disabled{cursor:default;opacity:.35}.chat-error{margin:0;color:#c75a5a;font-size:.92rem;line-height:1.5}:root[data-screen=wide] .about-prose,:root[data-screen=wide] .experience-list,:root[data-screen=wide] .projects-list,:root[data-screen=wide] .research-list,:root[data-screen=wide] .certifications-list,:root[data-screen=wide] .social-list,:root[data-screen=wide] .fun-facts-grid,:root[data-screen=wide] .chat-shell,:root[data-screen=wide] .pong-shell{width:min(100%,820px)}:root[data-screen=tablet] .about-prose,:root[data-screen=tablet] .experience-list,:root[data-screen=tablet] .projects-list,:root[data-screen=tablet] .research-list,:root[data-screen=tablet] .certifications-list,:root[data-screen=tablet] .social-list,:root[data-screen=tablet] .fun-facts-grid,:root[data-screen=tablet] .chat-shell,:root[data-screen=tablet] .pong-shell{width:min(100%,720px)}@media(max-width:768px){.about-prose{width:min(100%,680px);font-size:clamp(.95rem,4.2vw,1.2rem);line-height:1.55;padding-top:clamp(.75rem,4vh,2rem)}.projects-list,.pong-shell,.research-list,.certifications-list,.chat-shell{width:min(100%,680px)}.experience-list{width:min(100%,680px);gap:2.1rem}.experience-role{font-size:clamp(1rem,4.8vw,1.12rem)}.experience-company{font-size:clamp(.95rem,4vw,1rem)}.experience-body{font-size:clamp(.98rem,4vw,1.1rem);gap:.55rem}.research-row-link,.certification-row-link,.project-row-link{grid-template-columns:1fr;gap:.5rem;padding:.8rem 0;width:100%}.certificate-modal{padding:.75rem}.certificate-modal-card{height:min(82vh,720px)}.pong-mobile-button{height:3rem;font-size:.92rem}.pong-toggle{font-size:.92rem}.pong-instructions{font-size:.84rem}.pong-mobile-note{font-size:.72rem;max-width:18rem}.chat-log{min-height:15rem;max-height:none}.chat-actions{flex-direction:column;align-items:stretch}}@media(max-width:420px){.about-prose{font-size:clamp(.9rem,4vw,1rem);padding-top:clamp(.5rem,3vh,1.2rem)}.experience-list{gap:1.7rem}.experience-block{gap:.2rem}.experience-dates,.experience-location,.project-year,.research-year,.certification-year{font-size:.78rem}.section-title{font-size:clamp(1.4rem,6vw,1.8rem)}.pong-instructions{font-size:.78rem}.pong-shell{gap:.6rem}.pong-mobile-controls{align-items:center}.pong-mobile-rocker{width:2.8rem}.pong-mobile-note{font-size:.7rem;max-width:13rem}.pong-mobile-button{height:2.8rem;font-size:.88rem}.chat-log{padding-block:.85rem}.chat-bubble{padding:.45rem .7rem;font-size:.9rem}.chat-input{min-height:3.5rem;padding:.8rem .85rem 3.5rem}}:root[data-screen=phone] .social-link{width:100%;justify-content:center;text-align:center}:root[data-screen=phone] .dont-click-link{font-size:.68rem;padding-top:1.25rem;margin-top:0}:root[data-screen=tablet] .dont-click-link{padding-top:1.5rem}:root[data-screen=phone][data-orientation=landscape] .about-prose{padding-top:.25rem}:root[data-screen=phone] .certificate-modal-card{width:100%;height:min(calc(var(--viewport-height, 100vh) - 1rem),720px)}:root{--bg: #0d1117;--text: #e6e9ef;--muted: #a8b0bd;--placeholder: rgba(168, 176, 189, .75);--line: #2c323f;--accent: #97a9c8;--link: #7bafd4;--loader-text: #ffffff;--loader-text-shadow: 0 0 1px rgba(255, 255, 255, .35), 0 10px 24px rgba(0, 0, 0, .32);--font-base: "CMU Serif", "TeX Gyre Termes", "Times New Roman", Times, serif;--font-heading: "TeX Gyre Heros", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-loader-arabic: "Amiri Quran", "Amiri", serif;--viewport-height: 100vh;--viewport-width: 100vw;color-scheme:dark}:root[data-theme=light]{--bg: #fff8f0;--text: #1f1c19;--muted: #5e5751;--placeholder: rgba(94, 87, 81, .65);--line: #e3d6c8;--accent: #2d7f86;--link: #1a6faf;--loader-text: #111111;--loader-text-shadow: 0 0 1px rgba(17, 17, 17, .16), 0 10px 24px rgba(82, 61, 39, .18);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}html{scroll-behavior:smooth;font-size:18px;scrollbar-gutter:stable}body{background:var(--bg);color:var(--text);font-family:var(--font-base);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;transition:background-color .3s ease,color .3s ease}.grain-overlay{position:fixed;inset:0;z-index:130;pointer-events:none;background-repeat:repeat;background-size:128px 128px;opacity:.05;transform:translateZ(0);will-change:opacity;transition:opacity .3s ease}:root[data-theme=light] .grain-overlay{mix-blend-mode:multiply;opacity:.06}@media print{.grain-overlay{display:none}}@media(forced-colors:active){.grain-overlay{display:none}}@media(prefers-reduced-motion:reduce){.grain-overlay{transition:none}}body,.side-header,.side-nav,.site-footer{transition:background-color .3s ease,color .3s ease,border-color .3s ease}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:var(--font-heading)}h1,h2,h3,p{margin:0}ul{margin:0;padding:0;list-style:none}
