:root{color-scheme:dark light;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;--font-ar: "IBM Plex Sans Arabic", system-ui, -apple-system, sans-serif;--font-en: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;--text-display: clamp(34px, 5.6vw, 58px);--text-h1: clamp(30px, 4.6vw, 44px);--text-h2: clamp(26px, 3.6vw, 38px);--text-h3: 19px;--text-body: 16px;--text-small: 14px;--text-meta: 13px;--text-label: 12.5px;--container: 1160px;--nav-h: 64px;--ease: cubic-bezier(.22, .61, .36, 1)}:root,html[data-theme=dark]{color-scheme:dark;--bg: #0a0a0f;--surface: #111118;--surface-elevated: #181820;--surface-2: #181820;--card: #111118;--primary: #7c5cfc;--primary-strong: #6a48f5;--primary-ink: #ffffff;--secondary: #22d3ee;--accent: #7c5cfc;--accent-strong: #6a48f5;--accent-solid: #7c5cfc;--accent-ink: #ffffff;--text-primary: #f5f7fa;--text-secondary: #a7adb8;--text-faint: #8b93a3;--text: #f5f7fa;--text-muted: #a7adb8;--border: #272a35;--border-strong: #3a3e4d;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--overlay: rgba(10, 10, 15, .82);--well: rgba(255, 255, 255, .03);--well-hover: rgba(255, 255, 255, .055);--accent-soft: rgba(124, 92, 252, .12);--accent-soft-border: rgba(124, 92, 252, .4);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 12px 32px -12px rgba(0, 0, 0, .65);--shadow-lg: 0 24px 64px -16px rgba(0, 0, 0, .7);--flutter-accent: #22d3ee;--datascience-accent: #7c5cfc;--backend-accent: #f59e0b;--hero-glow: rgba(124, 92, 252, .14);--selection: rgba(124, 92, 252, .32)}html[data-theme=light]{color-scheme:light;--bg: #f8f9fc;--surface: #ffffff;--surface-elevated: #f1f3f7;--surface-2: #f1f3f7;--card: #ffffff;--primary: #6847e8;--primary-strong: #5636d6;--primary-ink: #ffffff;--secondary: #0891b2;--accent: #6847e8;--accent-strong: #5636d6;--accent-solid: #6847e8;--accent-ink: #ffffff;--text-primary: #111318;--text-secondary: #5e6470;--text-faint: #8a90a0;--text: #111318;--text-muted: #5e6470;--border: #dde1e8;--border-strong: #c3c9d4;--success: #16a34a;--warning: #d97706;--error: #dc2626;--overlay: rgba(248, 249, 252, .86);--well: rgba(17, 19, 24, .03);--well-hover: rgba(17, 19, 24, .055);--accent-soft: rgba(104, 71, 232, .09);--accent-soft-border: rgba(104, 71, 232, .38);--shadow-sm: 0 1px 2px rgba(17, 19, 24, .07);--shadow-md: 0 12px 32px -14px rgba(17, 19, 24, .18);--shadow-lg: 0 24px 64px -20px rgba(17, 19, 24, .22);--flutter-accent: #0891b2;--datascience-accent: #6847e8;--backend-accent: #d97706;--hero-glow: rgba(104, 71, 232, .1);--selection: rgba(104, 71, 232, .22)}:root{--path-live-accent: var(--primary)}html[data-career=flutter]{--primary: #2dd4bf;--primary-text: #2dd4bf;--primary-strong: #14b8a6;--primary-ink: #052e2b;--secondary: #a78bfa;--accent: #2dd4bf;--accent-strong: #14b8a6;--accent-solid: #2dd4bf;--accent-ink: #052e2b;--accent-soft: rgba(45, 212, 191, .13);--accent-soft-border: rgba(45, 212, 191, .45);--hero-glow: rgba(45, 212, 191, .16);--selection: rgba(45, 212, 191, .35);--motif: repeating-radial-gradient( circle at 88% 8%, transparent 0 16px, color-mix(in srgb, var(--primary) 20%, transparent) 16px 17.5px )}html[data-theme=light][data-career=flutter]{--primary: #0d9488;--primary-text: #0d9488;--primary-strong: #0f766e;--primary-ink: #ffffff;--secondary: #7c3aed;--accent: #0d9488;--accent-strong: #0f766e;--accent-solid: #0d9488;--accent-ink: #ffffff;--accent-soft: rgba(13, 148, 136, .1);--accent-soft-border: rgba(13, 148, 136, .42);--hero-glow: rgba(13, 148, 136, .12);--selection: rgba(13, 148, 136, .25)}html[data-career=datascience]{--primary: #a78bfa;--primary-text: #a78bfa;--primary-strong: #8b5cf6;--primary-ink: #1e1b4b;--secondary: #22d3ee;--accent: #a78bfa;--accent-strong: #8b5cf6;--accent-solid: #a78bfa;--accent-ink: #1e1b4b;--accent-soft: rgba(167, 139, 250, .13);--accent-soft-border: rgba(167, 139, 250, .45);--hero-glow: rgba(167, 139, 250, .16);--selection: rgba(167, 139, 250, .35);--motif: radial-gradient( color-mix(in srgb, var(--primary) 26%, transparent) 1.4px, transparent 1.5px )}html[data-theme=light][data-career=datascience]{--primary: #7c3aed;--primary-text: #7c3aed;--primary-strong: #6d28d9;--primary-ink: #ffffff;--secondary: #0891b2;--accent: #7c3aed;--accent-strong: #6d28d9;--accent-solid: #7c3aed;--accent-ink: #ffffff;--accent-soft: rgba(124, 58, 237, .09);--accent-soft-border: rgba(124, 58, 237, .4);--hero-glow: rgba(124, 58, 237, .1);--selection: rgba(124, 58, 237, .22)}html[data-career=backend]{--primary: #fb923c;--primary-text: #fb923c;--primary-strong: #f97316;--primary-ink: #431407;--secondary: #facc15;--accent: #fb923c;--accent-strong: #f97316;--accent-solid: #fb923c;--accent-ink: #431407;--accent-soft: rgba(251, 146, 60, .13);--accent-soft-border: rgba(251, 146, 60, .45);--hero-glow: rgba(251, 146, 60, .15);--selection: rgba(251, 146, 60, .35);--motif: repeating-linear-gradient( 135deg, transparent 0 12px, color-mix(in srgb, var(--primary) 18%, transparent) 12px 13.5px )}html[data-theme=light][data-career=backend]{--primary: #ea580c;--primary-text: #c2410c;--primary-strong: #c2410c;--primary-ink: #ffffff;--secondary: #0d9488;--accent: #ea580c;--accent-strong: #c2410c;--accent-solid: #ea580c;--accent-ink: #ffffff;--accent-soft: rgba(234, 88, 12, .09);--accent-soft-border: rgba(234, 88, 12, .4);--hero-glow: rgba(234, 88, 12, .1);--selection: rgba(234, 88, 12, .22)}:root{--motif: repeating-radial-gradient( circle at 88% 8%, transparent 0 16px, color-mix(in srgb, var(--primary) 20%, transparent) 16px 17.5px )}html.theme-anim,html.theme-anim body,html.theme-anim .navbar,html.theme-anim .card,html.theme-anim .career-switcher,html.theme-anim .career-card,html.theme-anim .project-card{transition:background-color .24s var(--ease),border-color .24s var(--ease),color .24s var(--ease)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-block-start:calc(var(--nav-h) + 16px)}body{margin:0;background:var(--bg);color:var(--text-primary);font-family:var(--font-ar);font-size:var(--text-body);line-height:1.75;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html[lang=en] body{font-family:var(--font-en);line-height:1.65}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(720px 360px at 85% -8%,var(--hero-glow),transparent 62%)}img,svg{display:block;max-width:100%}h1,h2,h3,h4{line-height:1.25;margin:0;font-weight:700;color:var(--text-primary);text-wrap:balance}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}dl,dd{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}code,kbd,.mono{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}::selection{background:var(--selection)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(18px,4vw,32px)}.section{padding-block:clamp(var(--space-16),9vw,96px);border-top:1px solid var(--border)}.section:first-of-type{border-top:0}.section-head{max-width:720px;margin-block-end:clamp(34px,5vw,52px)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-label);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-text);margin-block-end:var(--space-3)}.eyebrow:before{content:"";width:22px;height:2px;border-radius:2px;background:var(--primary)}html[lang=ar] .eyebrow{letter-spacing:0;font-size:13px}.section-title{font-size:var(--text-h2);letter-spacing:-.01em;font-weight:800}.section-intro{margin-block-start:var(--space-3);color:var(--text-secondary);max-width:62ch;font-size:15.5px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.card-elevated{background:var(--surface-elevated);box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:11px 20px;border-radius:var(--radius-md);border:1px solid transparent;font-weight:600;font-size:14.5px;line-height:1.2;transition:transform .16s var(--ease),box-shadow .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{cursor:default;opacity:.85;transform:none}.btn-primary{background:var(--primary);color:var(--primary-ink)}.btn-primary:hover{background:var(--primary-strong);box-shadow:var(--shadow-md)}.btn-secondary{border-color:var(--border-strong);color:var(--text-primary);background:var(--well)}.btn-secondary:hover{border-color:var(--primary);color:var(--primary-text)}.btn-ghost{color:var(--text-secondary);padding-inline:var(--space-3);min-height:44px}.btn-ghost:hover{color:var(--text-primary);background:var(--well)}.btn-sm{min-height:38px;padding:8px 14px;font-size:13.5px}[dir=rtl] .btn-arrow{transform:scaleX(-1)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:700;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--well);color:var(--text-secondary);white-space:nowrap}.badge-active{color:var(--primary-ink);background:var(--path-accent, var(--primary));border-color:transparent;padding:4px 11px;font-size:12px;font-weight:700;border-radius:var(--radius-pill)}.badge-featured{color:var(--primary-text);background:var(--accent-soft);border:1px solid var(--accent-soft-border);padding:4px 11px;font-size:12px;font-weight:700;border-radius:var(--radius-pill)}.chip-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{padding:5px 12px;font-size:13px;color:var(--text-secondary);background:var(--well);border:1px solid var(--border);border-radius:var(--radius-pill)}.skip-link{position:fixed;inset-block-start:-60px;inset-inline-start:16px;z-index:200;padding:10px 16px;background:var(--primary);color:var(--primary-ink);border-radius:var(--radius-sm);font-weight:600;transition:inset-block-start .16s var(--ease)}.skip-link:focus-visible{inset-block-start:12px}.navbar{position:sticky;inset-block-start:0;z-index:100;background:var(--overlay);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-block-end:1px solid transparent}.navbar.is-scrolled{border-block-end-color:var(--border)}.navbar-inner{display:flex;align-items:center;gap:var(--space-5);min-block-size:var(--nav-h)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.01em;margin-inline-end:auto;white-space:nowrap;min-height:44px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--accent-soft);border:1px solid var(--accent-soft-border);color:var(--primary-text);font-size:15px;font-family:var(--font-mono)}.brand-name{max-inline-size:220px;overflow:hidden;text-overflow:ellipsis}.nav-links{display:flex;align-items:center;gap:2px}.nav-link{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:8px 11px;font-size:14px;font-weight:500;color:var(--text-secondary);border-radius:var(--radius-sm);white-space:nowrap;transition:color .15s var(--ease),background-color .15s var(--ease)}.nav-link:after{content:"";position:absolute;inset-inline:11px;inset-block-end:2px;block-size:2px;border-radius:2px;background:var(--primary);transform:scaleX(0);transform-origin:center;transition:transform .2s var(--ease)}.nav-link:hover{color:var(--text-primary);background:var(--well)}.nav-link.is-active{color:var(--text-primary)}.nav-link.is-active:after,.nav-link:hover:after{transform:scaleX(1)}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--well);color:var(--text-secondary);transition:color .15s var(--ease),border-color .15s var(--ease),background-color .15s var(--ease)}.theme-toggle:hover{color:var(--text-primary);border-color:var(--primary)}.lang-switcher{position:relative}.lang-trigger{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:13.5px;font-weight:600;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--well);transition:color .15s var(--ease),border-color .15s var(--ease)}.lang-trigger:hover,.lang-trigger[aria-expanded=true]{color:var(--text-primary);border-color:var(--primary)}.lang-menu{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + 8px);min-inline-size:150px;padding:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:110}.lang-option{display:block;width:100%;text-align:start;padding:10px 12px;min-height:40px;font-size:14px;border-radius:var(--radius-sm);color:var(--text-secondary)}.lang-option:hover{color:var(--text-primary);background:var(--well-hover)}.lang-option.is-active{color:var(--primary-text);background:var(--accent-soft)}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:40px;padding-inline:11px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--well)}.nav-burger span{display:block;block-size:2px;border-radius:2px;background:var(--text-primary);transition:transform .2s var(--ease),opacity .2s var(--ease)}.nav-burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger[aria-expanded=true] span:nth-child(2){opacity:0}.nav-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{position:relative;overflow:clip;padding-block:clamp(48px,7vw,88px) clamp(56px,8vw,96px);border-bottom:1px solid var(--border)}.hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:clamp(32px,5vw,64px);align-items:center}.hero-accent{position:absolute;inset-block-start:-140px;inset-inline-start:-80px;width:520px;height:420px;filter:blur(90px);opacity:.5;pointer-events:none;background:var(--hero-glow)}html[data-theme=light] .hero-accent{opacity:.8}.hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:var(--space-4)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 18%,transparent)}.hero-greeting{color:var(--text-secondary);font-size:15px;margin-block-end:10px}.hero-name{color:var(--primary-text);margin-inline-start:8px}.hero-title{font-size:var(--text-display);letter-spacing:-.025em;line-height:1.1;font-weight:800}.hero-title.is-placeholder{color:var(--text-faint)}[data-placeholder]{border-block-end:2px dashed var(--border-strong);padding-block-end:4px}.hero-pathline{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-block-start:18px;font-size:clamp(15px,2vw,17px);color:var(--text-secondary)}.path-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.hero-selected{color:var(--text-primary);font-weight:700}.hero-summary{margin-block-start:18px;max-width:60ch;color:var(--text-secondary);font-size:clamp(15px,1.9vw,16.5px)}.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block-start:30px}.hero-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-5)}.hero-side{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-4)}.code-card{overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-md)}.code-card-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--border);background:var(--surface-elevated)}.code-card-bar i{width:10px;height:10px;border-radius:50%;background:var(--border-strong)}.code-card-bar i:first-child{background:var(--error);opacity:.75}.code-card-bar i:nth-child(2){background:var(--warning);opacity:.75}.code-card-bar i:nth-child(3){background:var(--success);opacity:.75}.code-card-filename{margin-inline-start:8px;font-family:var(--font-mono);font-size:12px;color:var(--text-faint)}.code-card pre{margin:0;padding:16px 18px 18px;font-family:var(--font-mono);font-size:12.8px;line-height:1.75;overflow-x:auto;color:var(--text-secondary);direction:ltr;text-align:left}.code-k{color:var(--primary)}.code-s{color:var(--secondary)}.code-f{color:var(--text-primary)}.career-switcher{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.cs-heading h3{font-size:16.5px}.cs-heading p{margin-block:6px 16px;font-size:13.5px;color:var(--text-secondary)}.career-pills{display:flex;flex-direction:column;gap:10px}.career-pills.row{flex-direction:row;flex-wrap:wrap}.career-pill{display:flex;align-items:center;gap:var(--space-3);padding:13px 16px;min-height:52px;text-align:start;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--well);color:var(--text-secondary);transition:border-color .18s var(--ease),background-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease)}.career-pill:hover{color:var(--text-primary);border-color:var(--border-strong);transform:translateY(-1px)}.pill-index{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;font-size:12px;font-weight:700;font-family:var(--font-mono);color:var(--text-faint);border:1px solid var(--border-strong);border-radius:8px;transition:color .18s var(--ease),border-color .18s var(--ease),background-color .18s var(--ease)}.pill-label{font-weight:600;font-size:14.5px;line-height:1.4}.career-pill.is-active{color:var(--text-primary);border-color:var(--primary);background:var(--accent-soft)}.career-pill.is-active .pill-index{color:var(--primary-ink);background:var(--primary);border-color:transparent}.career-pill:focus-visible{outline-color:var(--pill-accent, var(--primary))}.about-grid-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,48px);align-items:start}.fade-swap{animation:fade-swap .32s var(--ease)}@keyframes fade-swap{0%{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}.about-text{font-size:clamp(16px,2vw,18px);line-height:1.9;color:var(--text-primary)}.about-highlights{padding:var(--space-6);border-inline-start:3px solid var(--path-live-accent, var(--primary));background:var(--surface);border-radius:var(--radius-md);border-top:1px solid var(--border);border-inline-end:1px solid var(--border);border-block-end:1px solid var(--border)}.about-highlights h3{font-size:15px;color:var(--text-secondary);font-weight:600;margin-block-end:14px}.about-highlights li{display:flex;gap:10px;align-items:baseline;padding-block:6px;font-size:14.5px}.tick{color:var(--path-live-accent, var(--primary));font-weight:700;flex-shrink:0}.career-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:var(--space-5)}.career-card{position:relative;display:flex;flex-direction:column;gap:14px;height:100%;padding:26px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--path-accent, var(--primary));transition:border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}.career-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.career-card.is-active{border-color:var(--path-accent);box-shadow:0 0 0 1px var(--path-accent),var(--shadow-md)}.cc-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cc-index{font-size:54px;font-weight:800;font-family:var(--font-mono);color:color-mix(in srgb,var(--path-accent) 68%,var(--text-primary));opacity:.9;font-variant-numeric:tabular-nums}.cc-title{font-size:var(--text-h3)}.cc-summary{color:var(--text-secondary);font-size:14.5px}.cc-sub{font-size:var(--text-label);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);margin-block-start:auto}html[lang=ar] .cc-sub{letter-spacing:0}.cc-strengths li{position:relative;padding-inline-start:18px;padding-block:3px;font-size:14px;color:var(--text-secondary)}.cc-strengths li:before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.62em;width:7px;height:7px;border-radius:2px;background:var(--path-accent);opacity:.85}.cc-select{margin-block-start:10px;width:100%}.timeline{position:relative;padding-inline-start:34px;display:flex;flex-direction:column;gap:26px;max-inline-size:860px}.timeline:before{content:"";position:absolute;inset-block-start:8px;inset-block-end:8px;inset-inline-start:8px;width:2px;border-radius:2px;background:var(--border-strong)}.timeline-item{position:relative}.timeline-node{position:absolute;inset-inline-start:-33px;inset-block-start:24px;width:14px;height:14px;border-radius:50%;border:3px solid var(--bg);box-shadow:0 0 0 1px var(--border-strong)}.timeline-card{padding:24px 26px}.tl-head{display:flex;flex-direction:column;gap:4px}.badge-path{font-size:12.5px;font-weight:700;letter-spacing:.02em}.tl-title{font-size:var(--text-h3);margin-block-start:2px}.tl-stack{color:var(--text-faint);font-size:13.5px;font-weight:600;font-family:var(--font-mono)}.tl-desc{margin-block-start:12px;color:var(--text-primary)}.tl-bullets{margin-block-start:12px;display:flex;flex-direction:column;gap:6px}.tl-bullets li{position:relative;padding-inline-start:18px;color:var(--text-secondary);font-size:14.5px}.tl-bullets li:before{content:"";position:absolute;inset-inline-start:2px;inset-block-start:.66em;width:6px;height:6px;border-radius:50%;background:var(--text-faint)}.edu-card{padding:clamp(26px,4vw,40px);border-inline-start:3px solid var(--path-live-accent, var(--primary));border-radius:var(--radius-md);background:var(--surface);border-top:1px solid var(--border);border-inline-end:1px solid var(--border);border-block-end:1px solid var(--border);box-shadow:var(--shadow-sm)}.edu-degree{font-size:clamp(20px,2.6vw,25px)}.edu-dates{color:var(--text-secondary);font-weight:500;font-size:.72em}.edu-spec{margin-block-start:10px;color:var(--text-secondary)}.edu-spec strong{color:var(--text-primary)}.edu-meta{display:flex;flex-wrap:wrap;gap:10px 36px;margin:18px 0 0}.edu-meta-row{display:flex;gap:8px;font-size:14.5px}.edu-meta dt{color:var(--text-faint)}.edu-meta dd{color:var(--text-primary);font-weight:600}.edu-coursework-title{margin-block:26px 14px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}html[lang=ar] .edu-coursework-title{letter-spacing:0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.skill-group{padding:22px 24px;border-top:2px solid transparent}.skill-group h3{font-size:15.5px;color:var(--primary-text);margin-block-end:12px}.skill-group ul{display:flex;flex-direction:column;gap:7px}.skill-group li{position:relative;padding-inline-start:16px;font-size:14px;color:var(--text-secondary);line-height:1.65}.skill-group li:before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.62em;width:6px;height:6px;border-radius:2px;background:var(--border-strong)}.skill-soft{border-style:dashed}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}.projects-grid>.reveal{display:grid}.project-card{display:flex;flex-direction:column;gap:10px;padding:26px;height:100%;transition:transform .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}.project-card:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.pc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pc-head h3{font-size:18px}.pc-stack{font-size:13px;font-weight:700;font-family:var(--font-mono);color:var(--path-live-accent, var(--primary))!important}.pc-desc{color:var(--text-secondary);font-size:14.5px}.pc-bullets{display:flex;flex-direction:column;gap:6px;margin-block-start:4px}.pc-bullets li{position:relative;padding-inline-start:16px;font-size:14px;color:var(--text-secondary)}.pc-bullets li:before{content:"";position:absolute;inset-inline-start:1px;inset-block-start:.66em;width:5px;height:5px;border-radius:50%;background:var(--text-faint)}.pc-links{display:flex;gap:8px 16px;flex-wrap:wrap;margin-block-start:auto;padding-block-start:14px}.pc-links-empty{margin-block-start:auto;padding-block-start:14px;font-size:13px;color:var(--text-faint);font-style:italic}.pc-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;font-size:14px;font-weight:600;color:var(--primary-text);border-radius:6px}.pc-link:hover{text-decoration:underline;text-underline-offset:4px}[dir=rtl] .pc-link svg{transform:scaleX(-1)}.certs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.cert-card{display:flex;align-items:flex-start;gap:16px;padding:22px 24px;height:100%}.cert-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;color:var(--primary-text);background:var(--accent-soft);border:1px solid var(--accent-soft-border);border-radius:var(--radius-md)}.cert-card h3{font-size:15.5px;line-height:1.5}.cert-meta{margin-block-start:6px;font-size:13px;color:var(--text-faint)}.langs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;max-inline-size:760px}.lang-card{padding:24px 26px}.lang-card h3{font-size:17px}.lang-card p{margin-block-start:6px;color:var(--text-secondary);font-size:14px}.lang-level{display:block;margin-block-start:14px;height:5px;border-radius:var(--radius-pill);background:var(--surface-elevated);overflow:hidden;position:relative}.lang-level:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:var(--level, 100%);background:var(--primary);border-radius:inherit}.lang-level.is-text{display:none}.cv-controls{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-block-end:var(--space-6)}.cv-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cv-group-label{width:100%;font-size:var(--text-label);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint)}html[lang=ar] .cv-group-label{letter-spacing:0}.cv-tab{min-height:40px;padding:8px 14px;font-size:13.5px;font-weight:600;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--well);color:var(--text-secondary);transition:border-color .15s var(--ease),color .15s var(--ease),background-color .15s var(--ease)}.cv-tab:hover{color:var(--text-primary);border-color:var(--border-strong)}.cv-tab.is-active{color:var(--primary-ink);background:var(--primary);border-color:transparent}.cv-doc{padding:clamp(26px,4vw,44px);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);max-inline-size:880px}.cv-doc-head{border-bottom:2px solid var(--primary);padding-block-end:var(--space-5);margin-block-end:var(--space-6)}.cv-role{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.01em}.cv-language-tag{display:inline-block;margin-block-start:8px}.cv-summary{color:var(--text-secondary);margin-block-start:12px;max-width:68ch}.cv-doc h4.cv-h{font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--primary-text);margin-block:var(--space-6) var(--space-3)}html[lang=ar] .cv-doc h4.cv-h{letter-spacing:0}.cv-doc ul.cv-list{display:flex;flex-direction:column;gap:8px}.cv-doc ul.cv-list li{position:relative;padding-inline-start:18px;color:var(--text-secondary);font-size:14.5px}.cv-doc ul.cv-list li:before{content:"";position:absolute;inset-inline-start:2px;inset-block-start:.62em;width:6px;height:6px;border-radius:2px;background:var(--primary);opacity:.7}.cv-job{padding-block:12px;border-top:1px dashed var(--border)}.cv-job:first-of-type{border-top:0;padding-block-start:0}.cv-job-title{font-weight:700;font-size:15.5px}.cv-job-meta{font-size:13px;color:var(--text-faint);font-family:var(--font-mono)}.cv-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block-start:var(--space-6)}.contact-card{padding:clamp(26px,4vw,40px);max-inline-size:760px}.contact-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px 28px}.contact-label{display:block;font-size:var(--text-label);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-block-end:6px}html[lang=ar] .contact-label{letter-spacing:0}.contact-value{font-size:15px;word-break:break-word}.contact-link{color:var(--primary-text);border-radius:4px}.contact-link:hover{text-decoration:underline;text-underline-offset:4px}.contact-empty{color:var(--text-secondary);font-style:italic}.footer{border-block-start:1px solid var(--border);padding-block:36px;background:var(--surface)}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-5)}.footer-name{font-weight:700}.footer-role{color:var(--text-faint);font-size:13.5px;margin-block-start:4px}.footer-paths{display:flex;gap:8px;flex-wrap:wrap}.footer-path{min-height:38px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);transition:color .15s var(--ease),border-color .15s var(--ease)}.footer-path:hover{color:var(--text-primary);border-color:var(--border-strong)}.footer-path.is-active{color:var(--primary-text);border-color:var(--primary)}.footer-meta{text-align:end;font-size:13px;color:var(--text-faint)}.footer-top{display:inline-block;min-height:32px;margin-block-start:6px;color:var(--text-secondary)}.footer-top:hover{color:var(--primary-text)}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s var(--ease),transform .55s var(--ease)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.reveal{opacity:1;transform:none}}@media (max-width: 1024px){.hero-inner{grid-template-columns:1fr}.hero-side{order:2}.about-grid-inner{grid-template-columns:1fr}}@media (max-width: 920px){.nav-links{position:absolute;inset-inline:0;inset-block-start:100%;flex-direction:column;align-items:stretch;gap:2px;padding:12px clamp(18px,4vw,32px) 18px;background:var(--surface);border-block-end:1px solid var(--border);box-shadow:var(--shadow-md);visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .18s var(--ease),transform .18s var(--ease),visibility .18s;pointer-events:none}.nav-links[data-open=true]{visibility:visible;opacity:1;transform:none;pointer-events:auto}.nav-link{padding:12px 10px;font-size:15px}.nav-link:after{display:none}.nav-link.is-active{color:var(--primary-text);background:var(--accent-soft)}.nav-burger{display:flex}}@media (max-width: 640px){.brand-name{display:none}.hero{padding-block-start:40px}.career-switcher{padding:16px}.code-card pre{font-size:11.8px}.timeline{padding-inline-start:26px}.timeline:before{inset-inline-start:5px}.timeline-node{inset-inline-start:-25px}.cv-doc{padding:22px}.footer-inner{flex-direction:column;align-items:flex-start}.footer-meta{text-align:start}}.avatar-img{display:block;flex-shrink:0;object-fit:cover;object-position:top center;background:var(--surface-elevated)}.avatar-fallback{display:grid;place-items:center;flex-shrink:0;font-weight:800;background:var(--accent-soft);border:1px solid var(--accent-soft-border);color:var(--primary-text)}.brand .avatar-img,.brand .avatar-fallback{border-radius:9px;border:1px solid var(--accent-soft-border)}.footer-avatar{border-radius:12px;border:2px solid var(--primary)}.portrait-card{position:relative}.portrait-frame{overflow:hidden;border:3px solid var(--primary);border-radius:var(--radius-lg);background:var(--surface);transform:rotate(2deg);box-shadow:10px 10px color-mix(in srgb,var(--primary) 55%,transparent);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}[dir=rtl] .portrait-frame{transform:rotate(-2deg);box-shadow:-10px 10px color-mix(in srgb,var(--primary) 55%,transparent)}.portrait-card:hover .portrait-frame{transform:rotate(0)}.portrait-frame img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:top center}.portrait-index{position:absolute;inset-block-start:-16px;inset-inline-end:10px;z-index:2;font-family:var(--font-mono);font-weight:800;font-size:14px;padding:6px 12px;color:var(--primary-ink);background:var(--primary);border-radius:var(--radius-sm);transform:rotate(-3deg);box-shadow:var(--shadow-md)}.portrait-tag{position:absolute;inset-block-end:14px;inset-inline-start:14px;z-index:2;font-size:13px;font-weight:700;padding:7px 14px;color:var(--primary-ink);background:color-mix(in srgb,var(--primary) 92%,black);border-radius:var(--radius-pill);max-inline-size:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-theme=light] .portrait-tag{background:var(--primary)}.hero-motif{position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--motif);background-size:var(--motif-size, auto);opacity:.55;pointer-events:none}html[data-career=datascience]{--motif-size: 22px 22px}.marquee{overflow:hidden;border-block:2px solid var(--primary);background:var(--surface);direction:ltr}.marquee-track{display:flex;width:max-content;will-change:transform;animation:marquee-scroll-ltr 60s linear infinite}html[dir=rtl] .marquee-track{animation-name:marquee-scroll-rtl}.marquee-track>span{display:flex;align-items:center;flex-shrink:0;padding:12px 4px;font-family:var(--font-mono);font-size:13.5px;font-weight:700;color:var(--text-secondary);white-space:nowrap}html[dir=rtl] .marquee-track>span{direction:rtl}.marquee-track>span>span{display:inline-flex;align-items:center;flex-shrink:0;white-space:nowrap}.marquee-track>span i{font-style:normal;color:var(--primary-text);margin-inline:26px}@keyframes marquee-scroll-ltr{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-scroll-rtl{0%{transform:translate(-50%)}to{transform:translate(0)}}.section-head{position:relative}.section-index{position:absolute;inset-inline-end:0;inset-block-start:-34px;font-family:var(--font-mono);font-weight:800;font-size:clamp(64px,9vw,108px);line-height:1;color:color-mix(in srgb,var(--primary) 20%,transparent);pointer-events:none;-webkit-user-select:none;user-select:none}.btn-primary{font-weight:700;border:1px solid var(--primary-strong);box-shadow:3px 3px color-mix(in srgb,var(--primary-strong) 60%,transparent)}.btn-primary:hover{background:var(--primary);transform:translate(-1px,-1px);box-shadow:5px 5px color-mix(in srgb,var(--primary-strong) 60%,transparent)}.btn-primary:active{transform:translate(2px,2px);box-shadow:0 0 color-mix(in srgb,var(--primary-strong) 60%,transparent)}.hero-title{font-size:clamp(40px,7vw,84px);font-weight:800}.career-card{overflow:clip}.career-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--card-motif);opacity:.55;pointer-events:none}.career-card>*{position:relative;z-index:1}[data-path=flutter]{--card-motif: repeating-radial-gradient( circle at 85% 10%, transparent 0 12px, color-mix(in srgb, var(--path-accent) 32%, transparent) 12px 13px )}[data-path=datascience]{--card-motif: radial-gradient( color-mix(in srgb, var(--path-accent) 38%, transparent) 1.3px, transparent 1.4px )}.career-card[data-path=datascience]:after{background-size:20px 20px}[data-path=backend]{--card-motif: repeating-linear-gradient( 135deg, transparent 0 10px, color-mix(in srgb, var(--path-accent) 30%, transparent) 10px 11px )}.cc-index{font-size:54px}@media (max-width: 640px){.section-index{font-size:52px;inset-block-start:-20px}.portrait-frame img{aspect-ratio:16 / 10}}@media (prefers-reduced-motion: reduce){.marquee-track{animation-duration:60s!important;animation-iteration-count:infinite!important}.fade-swap{animation:none}}@media print{.navbar,.hero,.footer,.skip-link,.cv-controls,.cv-actions{display:none!important}body,.section{background:#fff;color:#111;border:0;padding:0}.cv-doc{box-shadow:none;border:0;max-inline-size:none}}
