@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_75b79f{font-family:Inter,Inter Fallback;font-style:normal}.__variable_75b79f{--font-sans:"Inter","Inter Fallback"}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_ed3508{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_ed3508{--font-heading:"Outfit","Outfit Fallback"}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/50cc6d76ab2a2da3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/0421fed624cfafec-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/e79147326f4a3c39-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/5b45b5fd85b63a3d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/ca1d48d650382c09-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/1e0245f199a3e64d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/443896d591e4f761-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Source Code Pro Fallback;src:local("Arial");ascent-override:73.11%;descent-override:20.28%;line-gap-override:0.00%;size-adjust:134.59%}.__className_01bd9e{font-family:Source Code Pro,Source Code Pro Fallback;font-style:normal}.__variable_01bd9e{--font-mono:"Source Code Pro","Source Code Pro Fallback"}:root{--bg-primary:#f8fafc;--bg-secondary:#ffffff;--bg-tertiary:#f1f5f9;--bg-card:rgba(255,255,255,0.85);--bg-card-hover:rgba(255,255,255,0.98);--bg-glass:rgba(255,255,255,0.82);--border-color:rgba(0,0,0,0.08);--border-color-hover:rgba(220,38,38,0.4);--border-glow:0 0 20px rgba(220,38,38,0.12);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-accent:#dc2626;--accent-red:#dc2626;--accent-crimson:#b91c1c;--accent-rose:#ef4444;--accent-cyan:#0284c7;--accent-indigo:#4f46e5;--accent-purple:#9333ea;--accent-emerald:#16a34a;--accent-amber:#d97706;--skill-5-bg:rgba(168,85,247,0.1);--skill-5-border:rgba(168,85,247,0.35);--skill-5-text:#7e22ce;--skill-5-hover-bg:rgba(168,85,247,0.18);--skill-5-hover-border:rgba(168,85,247,0.85);--skill-5-glow:rgba(168,85,247,0.2);--skill-4-bg:rgba(6,182,212,0.1);--skill-4-border:rgba(6,182,212,0.35);--skill-4-text:#0e7490;--skill-4-hover-bg:rgba(6,182,212,0.18);--skill-4-hover-border:rgba(6,182,212,0.85);--skill-4-glow:rgba(6,182,212,0.2);--skill-3-bg:rgba(16,185,129,0.1);--skill-3-border:rgba(16,185,129,0.35);--skill-3-text:#047857;--skill-3-hover-bg:rgba(16,185,129,0.18);--skill-3-hover-border:rgba(16,185,129,0.85);--skill-3-glow:rgba(16,185,129,0.2);--skill-2-bg:rgba(245,158,11,0.1);--skill-2-border:rgba(245,158,11,0.35);--skill-2-text:#b45309;--skill-2-hover-bg:rgba(245,158,11,0.18);--skill-2-hover-border:rgba(245,158,11,0.85);--skill-2-glow:rgba(245,158,11,0.2);--skill-1-bg:rgba(100,116,139,0.08);--skill-1-border:rgba(100,116,139,0.25);--skill-1-text:#475569;--skill-1-hover-bg:rgba(100,116,139,0.16);--skill-1-hover-border:rgba(100,116,139,0.65);--skill-1-glow:rgba(100,116,139,0.2);--gradient-primary:linear-gradient(135deg,#ef4444,#dc2626 50%,#991b1b);--gradient-card:linear-gradient(180deg,rgba(0,0,0,0.02),rgba(0,0,0,0));--gradient-glow:radial-gradient(circle at 50% 0%,rgba(220,38,38,0.08),transparent 70%);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-heading:"Outfit",var(--font-sans);--font-mono:"Source Code Pro","Fira Code","JetBrains Mono",monospace;--max-width:1200px;--navbar-height:72px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px;--transition-fast:0.15s ease;--transition-normal:0.25s ease;--transition-smooth:0.4s cubic-bezier(0.16,1,0.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--navbar-height) + 20px);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden;position:relative;transition:background-color var(--transition-normal),color var(--transition-normal)}body:before{content:"";position:fixed;top:-100px;left:50%;transform:translateX(-50%);width:800px;height:550px;background:radial-gradient(circle,rgba(239,68,68,.16) 0,rgba(225,29,72,.1) 40%,transparent 70%);filter:blur(70px);pointer-events:none;z-index:0;animation:ambientFloat 12s ease-in-out infinite alternate}@keyframes ambientFloat{0%{transform:translateX(-50%) translateY(0) scale(1)}to{transform:translateX(-47%) translateY(30px) scale(1.15)}}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}button,input,textarea{font-family:inherit;color:inherit;border:none;outline:none}ol,ul{list-style:none}img,svg{display:block}p{text-align:justify;text-justify:inter-word}foreignObject div,foreignObject p,foreignObject span,foreignObject text,svg div,svg p,svg span,svg text{text-align:initial;text-justify:auto}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 24px;position:relative;z-index:1}.gradient-text{background:linear-gradient(135deg,#ff4d6d,#ef4444 35%,#fb7185 70%,#ff4d6d);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);animation:gradientShimmer 6s linear infinite;display:inline-block}@keyframes gradientShimmer{0%{background-position:0}to{background-position:200%}}.section{padding:96px 0}.section-header{text-align:center;margin-bottom:56px}.section-badge{display:inline-flex;align-items:flex-start;gap:8px;padding:6px 16px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-full);font-size:.85rem;font-weight:600;color:var(--text-accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}.section-badge svg{margin-top:2px;flex-shrink:0}.section-title{font-family:var(--font-heading);font-size:2.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:12px}.section-subtitle{color:var(--text-secondary);font-size:1.1rem;margin:0 auto;text-align:center}.glass-panel{display:flex;flex-direction:column;background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 32px rgba(0,0,0,.12);transition:transform var(--transition-smooth),box-shadow var(--transition-smooth);position:relative;overflow:hidden}.glass-panel:not(.avatar-card):before{inset:0;border-top:3px solid var(--accent-red);border-right:1px solid var(--accent-red);-webkit-clip-path:polygon(-2px -2px,calc(100% + 2px) -2px,calc(100% + 2px) calc(var(--radius-lg) + 2px),-2px calc(var(--radius-lg) + 2px));clip-path:polygon(-2px -2px,calc(100% + 2px) -2px,calc(100% + 2px) calc(var(--radius-lg) + 2px),-2px calc(var(--radius-lg) + 2px));transition:border-top-width .14s ease .42s,-webkit-clip-path .15s ease .28s;transition:clip-path .15s ease .28s,border-top-width .14s ease .42s;transition:clip-path .15s ease .28s,border-top-width .14s ease .42s,-webkit-clip-path .15s ease .28s}.glass-panel:not(.avatar-card):after,.glass-panel:not(.avatar-card):before{content:"";position:absolute;border-radius:inherit;pointer-events:none;z-index:2;box-sizing:border-box}.glass-panel:not(.avatar-card):after{bottom:0;right:0;width:0;height:0;border-bottom:1px solid var(--accent-red);border-left:1px solid rgba(0,0,0,0);transition:height .14s linear 0s,border-left-color 0s linear .14s,width .14s linear .14s}.glass-panel:not(.avatar-card):hover:before{border-top-width:1px;-webkit-clip-path:polygon(-2px -2px,calc(100% + 2px) -2px,calc(100% + 2px) calc(100% + 2px),-2px calc(100% + 2px));clip-path:polygon(-2px -2px,calc(100% + 2px) -2px,calc(100% + 2px) calc(100% + 2px),-2px calc(100% + 2px));transition:border-top-width .14s ease 0s,-webkit-clip-path .14s ease .14s;transition:border-top-width .14s ease 0s,clip-path .14s ease .14s;transition:border-top-width .14s ease 0s,clip-path .14s ease .14s,-webkit-clip-path .14s ease .14s}.glass-panel:not(.avatar-card):hover:after{width:100%;height:100%;border-left-color:var(--accent-red);transition:width .14s linear .28s,border-left-color 0s linear .42s,height .14s linear .42s}@property --profile-border-angle{syntax:"<angle>";initial-value:0deg;inherits:false}.glass-panel.avatar-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--profile-border-angle,0deg),var(--accent-red) 0deg,rgba(239,68,68,.4) 35deg,transparent 85deg,transparent 95deg,rgba(239,68,68,.4) 145deg,var(--accent-red) 180deg,rgba(239,68,68,.4) 215deg,transparent 265deg,transparent 275deg,rgba(239,68,68,.4) 325deg,var(--accent-red) 1turn);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:3;box-sizing:border-box;animation:rotateProfileDualBorder 5s linear infinite;filter:drop-shadow(0 0 4px rgba(239,68,68,.45))}.glass-panel.avatar-card:after{display:none!important}@keyframes rotateProfileDualBorder{to{--profile-border-angle:360deg}}.glass-panel:hover{box-shadow:var(--border-glow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 20px rgba(225,29,72,.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 28px rgba(225,29,72,.5)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-color-hover);transform:translateY(-2px)}.btn-outline{background:rgba(0,0,0,0);color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline:hover{border-color:var(--text-accent);color:var(--text-accent);background:rgba(239,68,68,.06)}.btn-sm{padding:8px 16px;font-size:.85rem}.badge{display:inline-flex;align-items:flex-start;gap:6px;padding:4px 12px;border-radius:var(--radius-full);font-size:.8rem;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);transition:all var(--transition-fast)}.badge svg{margin-top:2px;flex-shrink:0}.badge:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-card-hover)}.badge-cyan{background:rgba(239,68,68,.12);color:#ff4d6d;border-color:rgba(239,68,68,.25)}.badge-emerald{background:rgba(16,185,129,.12);color:#10b981;border-color:rgba(16,185,129,.25)}.badge-purple{background:rgba(168,85,247,.12);color:#c084fc;border-color:rgba(168,85,247,.25)}.header{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);z-index:1100;transition:all var(--transition-normal)}.header-container{display:flex;align-items:center;justify-content:space-between;height:100%}.logo{gap:12px;font-family:var(--font-heading);font-size:1.25rem;letter-spacing:-.01em;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.logo,.logo-badge{display:flex;align-items:center;font-weight:800;flex-shrink:0}.logo-badge{width:38px;height:38px;background:var(--gradient-primary);border-radius:var(--radius-sm);justify-content:center;color:#fff;font-size:1rem}.logo-text{white-space:nowrap;display:inline-block}.nav-links{display:flex;align-items:center;gap:28px}.nav-link{color:var(--text-secondary);font-weight:500;font-size:.95rem;transition:color var(--transition-fast)}.nav-link.active,.nav-link:hover{color:var(--text-accent)}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.lang-toggle-btn{height:40px;min-width:62px;padding:0 12px;border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.84rem;font-weight:700;cursor:pointer;box-sizing:border-box;transition:all var(--transition-normal);flex-shrink:0}.lang-toggle-btn span{letter-spacing:.04em;font-size:.84rem}.lang-toggle-btn svg{flex-shrink:0}.lang-toggle-btn:hover{border-color:var(--border-color-hover);color:var(--text-accent);background:var(--bg-card-hover)}.mobile-menu-btn{display:none;width:40px;height:40px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);transition:all var(--transition-fast);flex-shrink:0}.mobile-menu-btn:hover{border-color:var(--border-color-hover);color:var(--text-accent);background:var(--bg-card-hover)}.drawer-wrapper{position:fixed;inset:0;z-index:1200;visibility:hidden;transition:visibility .35s ease;pointer-events:none}.drawer-wrapper.open{visibility:visible;pointer-events:auto}.drawer-wrapper.open .drawer-backdrop{opacity:1}.drawer-wrapper.open .drawer-panel{transform:translateX(0)}.drawer-backdrop{position:absolute;inset:0;background:rgba(11,15,25,.68);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .35s ease}.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(350px,86vw);background:rgba(255,255,255,.97);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-left:1px solid var(--border-color);box-shadow:-10px 0 40px rgba(0,0,0,.12);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);overflow:hidden}.drawer-header{justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.drawer-brand,.drawer-header{display:flex;align-items:center}.drawer-brand{gap:12px}.drawer-brand-text{display:flex;flex-direction:column}.drawer-brand-name{font-family:var(--font-heading);font-size:1.05rem;font-weight:800;color:var(--text-primary);line-height:1.2}.drawer-brand-sub{font-size:.75rem;color:var(--text-muted);font-weight:500}.drawer-close-btn{width:38px;height:38px;border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.drawer-close-btn:hover{color:var(--text-primary);border-color:var(--border-color-hover);background:var(--bg-card-hover)}.drawer-body{flex:1 1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:20px}.drawer-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding-left:4px}.drawer-nav-list{display:flex;flex-direction:column;gap:6px}.drawer-nav-item{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:600;font-size:.92rem;background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);box-sizing:border-box;transition:all var(--transition-fast)}.drawer-nav-item:hover{color:var(--text-accent);background:var(--bg-tertiary);border-color:var(--border-color);transform:translateX(3px)}.drawer-nav-item:hover .drawer-nav-arrow{opacity:1;transform:translateX(2px);color:var(--text-accent)}.drawer-nav-item.active{color:var(--text-accent);background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3)}.drawer-nav-icon{display:flex;align-items:center;justify-content:center;color:var(--text-accent);flex-shrink:0;margin-top:2px}.drawer-nav-label{flex:1 1}.drawer-badge{font-size:.72rem;padding:2px 8px}.drawer-nav-arrow{color:var(--text-muted);opacity:.5;transition:transform var(--transition-fast),opacity var(--transition-fast)}.drawer-actions-card{display:flex;flex-direction:column;gap:14px;padding:16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.drawer-cv-btn{width:100%;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;font-size:.9rem;font-weight:600;border-radius:var(--radius-md);box-sizing:border-box}.drawer-lang-selector{display:flex;flex-direction:column;gap:8px}.drawer-label-text{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.drawer-lang-pills{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.drawer-lang-pill{height:42px;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;box-sizing:border-box;transition:all var(--transition-fast)}.drawer-lang-pill:hover{color:var(--text-primary);border-color:var(--border-color-hover)}.drawer-lang-pill.active{background:var(--gradient-primary);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(225,29,72,.35)}.drawer-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:10px;flex-shrink:0;background:var(--bg-primary)}.drawer-social-links{display:flex;align-items:center;gap:8px}.drawer-social-btn{flex:1 1;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 10px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.82rem;font-weight:600;box-sizing:border-box;transition:all var(--transition-fast)}.drawer-social-btn:hover{color:var(--text-accent);border-color:var(--border-color-hover)}.drawer-footer-note{font-size:.72rem;color:var(--text-muted);text-align:center}.floating-actions-container{position:fixed;bottom:24px;right:20px;z-index:990;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}.floating-btn{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--transition-smooth);-webkit-user-select:none;-moz-user-select:none;user-select:none}.floating-btn-primary{padding:12px 20px;border-radius:var(--radius-full);background:var(--gradient-primary);color:#fff;font-weight:700;font-size:.88rem;box-shadow:0 6px 24px rgba(225,29,72,.45);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.floating-btn-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 32px rgba(225,29,72,.6)}.floating-btn-primary:active{transform:translateY(0) scale(.98)}.floating-btn-glow{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:fabShimmer 3.5s infinite}@keyframes fabShimmer{0%{left:-100%}40%,to{left:100%}}.floating-btn-text{letter-spacing:.02em}.floating-btn-secondary{width:44px;height:44px;border-radius:var(--radius-full);background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:0 4px 20px rgba(0,0,0,.2);animation:fadeIn .3s ease}.floating-btn-secondary:hover{transform:translateY(-2px);border-color:var(--border-color-hover);color:var(--text-accent)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-section{padding-top:calc(var(--navbar-height) + 60px);padding-bottom:80px;min-height:calc(100vh - var(--navbar-height));display:flex;align-items:center;width:100%}.hero-section .container{width:100%}.hero-grid{width:100%;display:grid;grid-template-columns:1fr 2fr;grid-gap:48px;gap:48px;align-items:center}.hero-status-pill{align-items:flex-start;gap:10px;padding:6px 18px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-full);font-size:.85rem;font-weight:600;color:#10b981;margin-bottom:24px}.desktop-only-status,.hero-status-pill{display:inline-flex}.mobile-only-status{display:none!important}.status-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;box-shadow:0 0 10px #10b981;animation:pulse 2s infinite;margin-top:5px;flex-shrink:0}@keyframes pulse{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.3);opacity:1}to{transform:scale(.95);opacity:.8}}.hero-name{font-family:var(--font-heading);font-size:3.5rem;font-weight:800;line-height:1.1;letter-spacing:-.03em;margin-bottom:12px}.hero-title{font-size:1.5rem;color:var(--text-secondary);font-weight:500;margin-bottom:20px}.hero-bio,.hero-content{width:100%}.hero-bio{color:var(--text-secondary);font-size:1.1rem;margin-bottom:32px;line-height:1.7}.hero-cta-group{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:40px}.hero-cta-group .btn{flex:1 1 170px;min-height:46px;justify-content:center;text-align:center;white-space:nowrap}.hero-stats-banner{margin-top:48px;padding:32px 36px;border-radius:var(--radius-lg);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:24px;gap:24px;justify-items:center;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.2)}.hero-stat-card,.hero-stats-banner{align-items:center;width:100%;position:relative}.hero-stat-card{display:flex;flex-direction:column;justify-content:center;text-align:center;transition:transform var(--transition-smooth)}.hero-stat-card:hover{transform:translateY(-3px)}.hero-stat-card:hover .hero-stat-label{color:var(--text-accent)}.hero-stat-card:not(:last-child):after{content:"";position:absolute;right:-12px;top:15%;height:70%;width:1px;background:var(--border-color);opacity:.6}.hero-stat-value{font-family:var(--font-heading);font-size:2.75rem;font-weight:800;line-height:1.1;margin-bottom:6px;letter-spacing:-.02em}.hero-stat-label{font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:4px;transition:color var(--transition-fast)}.hero-stat-subtext{font-size:.82rem;color:var(--text-accent);font-weight:500}.hero-visual{display:flex;justify-content:flex-start}.avatar-card,.hero-visual{width:100%;position:relative}.avatar-card{max-width:100%;padding:28px 24px;text-align:center;animation:floatCard 6s ease-in-out infinite}.avatar-card:hover .avatar-name{color:var(--text-accent)}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.avatar-wrapper{width:160px;height:160px;border-radius:50%;margin:0 auto 20px;padding:6px;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-normal)}.avatar-wrapper:hover{transform:scale(1.04)}.avatar-img{object-fit:cover;display:block}.avatar-img,.avatar-inner{width:100%;height:100%;border-radius:50%;background:var(--bg-secondary)}.avatar-inner{display:flex;align-items:center;justify-content:center;font-size:3.5rem;font-weight:800;color:var(--text-accent)}.avatar-inner,.avatar-name{font-family:var(--font-heading)}.avatar-name{font-size:1.35rem;font-weight:700;margin-bottom:6px;color:var(--text-primary);letter-spacing:-.01em;transition:color var(--transition-fast)}.avatar-status-pill{margin:4px auto 10px;padding:5px 14px;font-size:.8rem;display:inline-flex}.avatar-location{color:var(--text-muted);font-size:.88rem;margin-bottom:4px}.avatar-info-box{margin-top:16px;padding:12px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);font-family:"Source Code Pro",var(--font-mono);font-size:.85rem;color:var(--text-accent);text-align:left}.cursor-blink{display:inline-block;width:7px;height:13px;background-color:var(--accent-red);margin-left:5px;vertical-align:middle;animation:blinkCursor 1s step-end infinite}@keyframes blinkCursor{0%,to{opacity:1}50%{opacity:0}}.social-links{gap:12px;margin-top:16px}.social-icon-btn,.social-links{display:flex;justify-content:center}.social-icon-btn{width:42px;height:42px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);align-items:center;color:var(--text-primary);transition:all var(--transition-normal)}.social-icon-btn:hover{border-color:var(--text-accent);color:var(--text-accent);transform:translateY(-3px)}.principles-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.principle-card{padding:24px 20px;display:flex;flex-direction:column;height:100%;border-radius:var(--radius-lg);transition:all var(--transition-smooth)}.principle-card:hover{transform:translateY(-4px);box-shadow:var(--border-glow)}.principle-card:hover .principle-card-title{color:var(--text-accent)}.principle-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.principle-icon-badge{width:36px;height:36px;border-radius:8px;background:rgba(239,68,68,.1);color:var(--text-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.principle-card-title{font-size:1.1rem;font-weight:700;color:var(--text-primary);transition:color var(--transition-fast)}.principle-card-desc{color:var(--text-secondary);font-size:.92rem;line-height:1.6;margin:0}.timeline{position:relative;width:100%}.timeline:before{content:"";position:absolute;top:0;bottom:0;left:20px;width:2px;background:linear-gradient(180deg,var(--accent-red) 0,var(--accent-crimson) 100%)}.timeline-item{position:relative;padding-left:60px;margin-bottom:40px}.timeline-dot{position:absolute;left:11px;top:24px;width:20px;height:20px;border-radius:50%;background:var(--bg-primary);border:3px solid var(--accent-red);box-shadow:0 0 12px rgba(239,68,68,.5);z-index:2}.timeline-card{padding:32px;transition:transform var(--transition-smooth),border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.timeline-card:hover{transform:translateY(-3px);box-shadow:var(--border-glow)}.timeline-card:hover .timeline-role{color:var(--text-accent)}.timeline-header{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.timeline-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;width:100%}.timeline-role{font-family:var(--font-heading);font-size:1.35rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:0;flex:1 1 auto;transition:color var(--transition-fast)}.timeline-period-wrapper{display:flex;align-items:center;gap:8px;flex-shrink:0;text-align:right;padding-top:2px}.timeline-period{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);font-weight:500;white-space:nowrap}.timeline-company{font-size:1.05rem;color:var(--text-accent);font-weight:600;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;line-height:1.4}.timeline-summary{color:var(--text-secondary);margin-bottom:20px;font-size:1rem}.timeline-achievements{margin-bottom:24px;display:flex;flex-direction:column;gap:10px}.timeline-achievements b,.timeline-achievements strong{color:var(--text-primary);font-weight:700}.achievement-point{position:relative;padding-left:20px;color:var(--text-secondary);font-size:.95rem;line-height:1.55}.achievement-point b,.achievement-point strong{color:var(--text-primary);font-weight:700}.achievement-point:before{content:"▹";position:absolute;left:0;top:0;color:var(--text-accent);font-weight:700}.tech-tags-list{display:flex;flex-wrap:wrap;gap:8px}.project-view-tabs{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:36px}.project-view-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.92rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.project-view-tab:hover{color:var(--text-primary);border-color:var(--border-color-hover);transform:translateY(-2px)}.project-view-tab.active{background:var(--gradient-primary);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 4px 18px rgba(225,29,72,.35)}.view-tab-count{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-full);background:rgba(255,255,255,.15);color:inherit}.filter-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:36px}.filter-btn{padding:6px 16px;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.filter-btn.active,.filter-btn:hover{background:var(--bg-tertiary);color:var(--text-accent);border-color:var(--accent-primary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:24px;gap:24px}.project-card-compact{padding:24px;display:flex;flex-direction:column;justify-content:space-between;height:100%;cursor:pointer;border-radius:var(--radius-lg);transition:all var(--transition-smooth)}.project-card-compact:hover{transform:translateY(-4px);box-shadow:var(--border-glow)}.project-card-compact:hover .project-card-title{color:var(--text-accent)}.project-card-header{margin-bottom:16px}.project-meta-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.project-card-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;line-height:1.35;color:var(--text-primary);margin-bottom:6px;transition:color var(--transition-fast)}.project-company-tag{font-size:.82rem;color:var(--text-accent);font-weight:600;margin-bottom:10px}.project-card-desc{color:var(--text-secondary);font-size:.92rem;line-height:1.55;margin-bottom:14px}.project-card-footer{margin-top:auto}.project-actions-compact{display:flex;align-items:center;gap:10px;padding-top:14px;border-top:1px solid var(--border-color);width:100%}.project-actions-compact .btn{flex:1 1;min-width:0;width:auto;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.88rem;font-weight:600;border-radius:var(--radius-sm);transition:all var(--transition-normal);white-space:nowrap;padding:0 12px}.github-repo-card{padding:24px;display:flex;flex-direction:column;justify-content:space-between;height:100%;border-radius:var(--radius-lg);transition:all var(--transition-smooth)}.github-repo-card:hover{transform:translateY(-4px);box-shadow:var(--border-glow)}.github-repo-card:hover .project-card-title,.github-repo-card:hover .repo-link-title,.repo-source-badge{color:var(--text-accent)}.repo-source-badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;background:rgba(239,68,68,.1);padding:3px 10px;border-radius:var(--radius-full);border:1px solid rgba(239,68,68,.25)}.repo-date{font-size:.78rem;color:var(--text-muted)}.repo-title{margin-bottom:8px}.repo-link-title{color:var(--text-primary);text-decoration:none;transition:color var(--transition-fast)}.repo-link-title:hover{color:var(--text-accent)}.repo-desc{font-size:.9rem;line-height:1.5;margin-bottom:14px}.badge-topic,.repo-desc{color:var(--text-secondary)}.badge-topic{font-size:.75rem;background:rgba(255,255,255,.04);border:1px solid var(--border-color);padding:2px 8px;border-radius:var(--radius-sm)}.badge-tech-tag{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;transition:all var(--transition-fast)}.badge-tech-tag:hover{filter:brightness(1.2);transform:translateY(-1px)}.repo-stats-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;border-bottom:1px dashed var(--border-color)}.repo-lang-pill{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--text-primary)}.lang-color-dot{width:9px;height:9px;border-radius:50%;display:inline-block;box-shadow:0 0 6px currentColor}.repo-counts{display:flex;align-items:center;gap:12px}.repo-count-item{display:inline-flex;align-items:center;gap:4px;font-size:.82rem;font-weight:600;color:var(--text-secondary)}.repo-count-item svg{color:var(--accent-amber)}.repo-skeleton-card{padding:24px;min-height:220px;display:flex;flex-direction:column;justify-content:center}.skeleton-line{background:linear-gradient(90deg,rgba(255,255,255,.04) 25%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.04) 75%);background-size:200% 100%;border-radius:4px;animation:skeletonPulse 1.5s infinite}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.project-modal-dialog{max-width:calc(var(--max-width) - 48px);width:100%;padding:0!important;display:flex;flex-direction:column}.project-modal-body{padding:24px 24px 48px}.project-modal-body .article-body{margin-top:0}.skills-legend-bar{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:0 auto 36px;padding:8px 20px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);width:-moz-fit-content;width:fit-content;box-shadow:0 4px 18px rgba(0,0,0,.15)}.skills-legend-title{font-size:.82rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.skills-legend-items{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.skills-legend-item{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:.84rem;font-weight:600;padding:5px 14px;border-radius:var(--radius-full);transition:all var(--transition-fast);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}.skills-legend-item:focus-visible{outline:2px solid var(--accent-red);outline-offset:2px}.skills-legend-item.legend-all{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}.skills-legend-item.legend-all:hover{background:var(--bg-card-hover);border-color:var(--border-color-hover);color:var(--text-primary);transform:translateY(-1px)}.skills-legend-item.legend-all.active{background:var(--gradient-primary);border-color:var(--accent-red);color:#fff;box-shadow:0 0 16px rgba(225,29,72,.4);transform:translateY(-1px)}.skills-legend-item.legend-level-5{background:var(--skill-5-bg);border:1px solid var(--skill-5-border);color:var(--skill-5-text)}.skills-legend-item.legend-level-5:hover{background:var(--skill-5-hover-bg);border-color:var(--skill-5-hover-border);box-shadow:0 4px 14px var(--skill-5-glow);transform:translateY(-1px)}.skills-legend-item.legend-level-5.active{background:rgba(168,85,247,.32);border-color:#a855f7;color:#fff;box-shadow:0 0 18px rgba(168,85,247,.55),inset 0 0 0 1px #a855f7;transform:translateY(-1px)}.skills-legend-item.legend-level-4{background:var(--skill-4-bg);border:1px solid var(--skill-4-border);color:var(--skill-4-text)}.skills-legend-item.legend-level-4:hover{background:var(--skill-4-hover-bg);border-color:var(--skill-4-hover-border);box-shadow:0 4px 14px var(--skill-4-glow);transform:translateY(-1px)}.skills-legend-item.legend-level-4.active{background:rgba(6,182,212,.32);border-color:#06b6d4;color:#fff;box-shadow:0 0 18px rgba(6,182,212,.55),inset 0 0 0 1px #06b6d4;transform:translateY(-1px)}.skills-legend-item.legend-level-3{background:var(--skill-3-bg);border:1px solid var(--skill-3-border);color:var(--skill-3-text)}.skills-legend-item.legend-level-3:hover{background:var(--skill-3-hover-bg);border-color:var(--skill-3-hover-border);box-shadow:0 4px 14px var(--skill-3-glow);transform:translateY(-1px)}.skills-legend-item.legend-level-3.active{background:rgba(16,185,129,.32);border-color:#10b981;color:#fff;box-shadow:0 0 18px rgba(16,185,129,.55),inset 0 0 0 1px #10b981;transform:translateY(-1px)}.skills-legend-item.legend-level-2{background:var(--skill-2-bg);border:1px solid var(--skill-2-border);color:var(--skill-2-text)}.skills-legend-item.legend-level-2:hover{background:var(--skill-2-hover-bg);border-color:var(--skill-2-hover-border);box-shadow:0 4px 14px var(--skill-2-glow);transform:translateY(-1px)}.skills-legend-item.legend-level-2.active{background:rgba(245,158,11,.32);border-color:#f59e0b;color:#fff;box-shadow:0 0 18px rgba(245,158,11,.55),inset 0 0 0 1px #f59e0b;transform:translateY(-1px)}.skills-legend-item.legend-level-1{background:var(--skill-1-bg);border:1px solid var(--skill-1-border);color:var(--skill-1-text)}.skills-legend-item.legend-level-1:hover{background:var(--skill-1-hover-bg);border-color:var(--skill-1-hover-border);box-shadow:0 4px 14px var(--skill-1-glow);transform:translateY(-1px)}.skills-legend-item.legend-level-1.active{background:rgba(148,163,184,.32);border-color:#94a3b8;color:#fff;box-shadow:0 0 18px rgba(148,163,184,.55),inset 0 0 0 1px #94a3b8;transform:translateY(-1px)}.skills-compact-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.skill-card-compact{padding:22px;border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:flex-start;transition:all var(--transition-smooth);overflow:visible!important;position:relative;z-index:1}.skill-card-compact:hover{transform:translateY(-3px);box-shadow:var(--border-glow);z-index:10}.skill-card-compact:hover .skill-card-title{color:var(--text-accent)}.skill-card-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.skill-icon-badge{width:40px;height:40px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.skill-card-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--text-primary);margin-bottom:4px;transition:color var(--transition-fast)}.skill-card-desc{color:var(--text-muted);font-size:.82rem;line-height:1.4}.skills-pill-cluster{display:flex;flex-wrap:wrap;gap:8px}.skills-empty-state{padding:18px 12px;font-size:.82rem;color:var(--text-muted);font-style:italic;text-align:center;background:rgba(255,255,255,.02);border-radius:var(--radius-md);border:1px dashed var(--border-color);width:100%}.skill-pill-tag{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:var(--radius-full);font-size:.88rem;font-weight:600;cursor:default;transition:all var(--transition-fast)}.skill-pill-tag.level-5,.skill-pill-tag.level-mastery,.skill-pill-tag.skill-tag-5,.skill-pill-tag.skill-tag-expert,.skill-pill-tag.skill-tag-mastery{background:var(--skill-5-bg);border:1px solid var(--skill-5-border);color:var(--skill-5-text)}.skill-pill-tag.level-5:focus-visible,.skill-pill-tag.level-5:hover,.skill-pill-tag.level-mastery:focus-visible,.skill-pill-tag.level-mastery:hover,.skill-pill-tag.skill-tag-5:focus-visible,.skill-pill-tag.skill-tag-5:hover,.skill-pill-tag.skill-tag-expert:focus-visible,.skill-pill-tag.skill-tag-expert:hover,.skill-pill-tag.skill-tag-mastery:focus-visible,.skill-pill-tag.skill-tag-mastery:hover{background:var(--skill-5-hover-bg);border-color:var(--skill-5-hover-border);box-shadow:0 4px 18px var(--skill-5-glow);transform:translateY(-2px);z-index:20}.skill-pill-tag.level-4,.skill-pill-tag.level-advanced,.skill-pill-tag.skill-tag-4,.skill-pill-tag.skill-tag-advanced{background:var(--skill-4-bg);border:1px solid var(--skill-4-border);color:var(--skill-4-text)}.skill-pill-tag.level-4:focus-visible,.skill-pill-tag.level-4:hover,.skill-pill-tag.level-advanced:focus-visible,.skill-pill-tag.level-advanced:hover,.skill-pill-tag.skill-tag-4:focus-visible,.skill-pill-tag.skill-tag-4:hover,.skill-pill-tag.skill-tag-advanced:focus-visible,.skill-pill-tag.skill-tag-advanced:hover{background:var(--skill-4-hover-bg);border-color:var(--skill-4-hover-border);box-shadow:0 4px 18px var(--skill-4-glow);transform:translateY(-2px);z-index:20}.skill-pill-tag.level-3,.skill-pill-tag.level-proficient,.skill-pill-tag.skill-tag-3,.skill-pill-tag.skill-tag-proficient{background:var(--skill-3-bg);border:1px solid var(--skill-3-border);color:var(--skill-3-text)}.skill-pill-tag.level-3:focus-visible,.skill-pill-tag.level-3:hover,.skill-pill-tag.level-proficient:focus-visible,.skill-pill-tag.level-proficient:hover,.skill-pill-tag.skill-tag-3:focus-visible,.skill-pill-tag.skill-tag-3:hover,.skill-pill-tag.skill-tag-proficient:focus-visible,.skill-pill-tag.skill-tag-proficient:hover{background:var(--skill-3-hover-bg);border-color:var(--skill-3-hover-border);box-shadow:0 4px 18px var(--skill-3-glow);transform:translateY(-2px);z-index:20}.skill-pill-tag.level-2,.skill-pill-tag.level-intermediate,.skill-pill-tag.skill-tag-2,.skill-pill-tag.skill-tag-familiar,.skill-pill-tag.skill-tag-intermediate{background:var(--skill-2-bg);border:1px solid var(--skill-2-border);color:var(--skill-2-text)}.skill-pill-tag.level-2:focus-visible,.skill-pill-tag.level-2:hover,.skill-pill-tag.level-intermediate:focus-visible,.skill-pill-tag.level-intermediate:hover,.skill-pill-tag.skill-tag-2:focus-visible,.skill-pill-tag.skill-tag-2:hover,.skill-pill-tag.skill-tag-familiar:focus-visible,.skill-pill-tag.skill-tag-familiar:hover,.skill-pill-tag.skill-tag-intermediate:focus-visible,.skill-pill-tag.skill-tag-intermediate:hover{background:var(--skill-2-hover-bg);border-color:var(--skill-2-hover-border);box-shadow:0 4px 18px var(--skill-2-glow);transform:translateY(-2px);z-index:20}.skill-pill-tag.level-1,.skill-pill-tag.level-foundational,.skill-pill-tag.skill-tag-1,.skill-pill-tag.skill-tag-beginner,.skill-pill-tag.skill-tag-foundational,.skill-pill-tag.skill-tag-fundamental{background:var(--skill-1-bg);border:1px solid var(--skill-1-border);color:var(--skill-1-text)}.skill-pill-tag.level-1:focus-visible,.skill-pill-tag.level-1:hover,.skill-pill-tag.level-foundational:focus-visible,.skill-pill-tag.level-foundational:hover,.skill-pill-tag.skill-tag-1:focus-visible,.skill-pill-tag.skill-tag-1:hover,.skill-pill-tag.skill-tag-beginner:focus-visible,.skill-pill-tag.skill-tag-beginner:hover,.skill-pill-tag.skill-tag-foundational:focus-visible,.skill-pill-tag.skill-tag-foundational:hover,.skill-pill-tag.skill-tag-fundamental:focus-visible,.skill-pill-tag.skill-tag-fundamental:hover{background:var(--skill-1-hover-bg);border-color:var(--skill-1-hover-border);box-shadow:0 4px 18px var(--skill-1-glow);transform:translateY(-2px);z-index:20}.edu-cert-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px}.cert-card,.edu-card{padding:28px;margin-bottom:20px;transition:transform var(--transition-smooth),border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.cert-card:hover,.edu-card:hover{transform:translateY(-3px);box-shadow:var(--border-glow)}.edu-degree{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;color:var(--text-primary);margin-bottom:6px;transition:color var(--transition-fast)}.edu-card:hover .edu-degree{color:var(--text-accent)}.cert-card h4,.cert-title{transition:color var(--transition-fast)}.cert-card:hover .cert-title,.cert-card:hover h4,.edu-institution{color:var(--text-accent)}.edu-institution{font-weight:600;font-size:.95rem;margin-bottom:6px}.contact-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.contact-card{padding:24px 20px;display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--radius-lg);position:relative;transition:all var(--transition-smooth)}.contact-card:hover{transform:translateY(-4px);box-shadow:var(--border-glow)}.contact-card-icon,.contact-card:hover .contact-card-value{color:var(--text-accent)}.contact-card-icon{width:52px;height:52px;border-radius:var(--radius-md);background:rgba(239,68,68,.12);display:flex;align-items:center;justify-content:center;margin-bottom:20px}.contact-card-body{flex:1 1;margin-bottom:20px}.contact-card-label{font-size:.82rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.contact-card-value{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--text-primary);display:block;word-break:break-all;transition:color var(--transition-fast)}.contact-card-value:hover{color:var(--text-accent)}.contact-card-hint{font-size:.88rem;color:var(--text-secondary);margin-top:8px;line-height:1.5}.contact-card-actions{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--border-color);width:100%}.contact-card-actions .btn{flex:1 1;min-width:0;gap:8px;transition:all var(--transition-normal);white-space:nowrap;padding:0 12px}.contact-card-actions .badge,.contact-card-actions .btn{height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;border-radius:var(--radius-sm);box-sizing:border-box}.contact-card-actions .badge{width:100%}.footer{padding:48px 0;border-top:1px solid var(--border-color);background:var(--bg-primary);margin-top:40px}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.blog-page-root{height:calc(100vh - var(--navbar-height));width:100vw;max-width:100%;margin-top:var(--navbar-height);overflow:hidden;display:flex;flex-direction:column;background:var(--bg-primary);position:relative}.blog-mobile-toggle-bar{display:none;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.blog-mobile-filter-btn{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;padding:10px 16px;font-weight:600;border-radius:var(--radius-md)}.blog-sidebar-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1040;cursor:pointer}.blog-app-layout{display:grid;grid-template-columns:310px 1fr;height:100%;flex:1 1;min-height:0;width:100%;overflow:hidden;position:relative}@media(min-width:1600px){.blog-app-layout{grid-template-columns:340px 1fr}}.blog-sidebar{height:100%;max-height:100%;overflow:hidden;padding:22px 16px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:10;box-sizing:border-box}.blog-sidebar-mobile-header{display:none;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-color);flex-shrink:0}.blog-sidebar-categories-section{flex-shrink:0;margin-bottom:16px}.blog-sidebar-tags-section{flex:1 1;min-height:0;display:flex;flex-direction:column;padding-top:16px;border-top:1px solid var(--border-color);overflow:hidden}.sidebar-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-shrink:0}.sidebar-section-title{display:inline-flex;align-items:flex-start;gap:8px;font-family:var(--font-heading);font-size:.94rem;font-weight:700;color:var(--text-primary)}.sidebar-section-title svg{margin-top:2px;flex-shrink:0}.category-track-list{display:flex;flex-direction:column;gap:6px}.category-item-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:9px 12px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);color:inherit;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);position:relative}.category-item-row:hover{background:var(--bg-card-hover);transform:translateX(2px)}.category-item-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1}.category-icon-box{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;transition:all var(--transition-fast);border:1px solid var(--border-color)}.category-item-name{font-size:.88rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;transition:color var(--transition-fast)}.category-count-pill{font-size:.72rem;font-weight:600;padding:1px 7px;border-radius:var(--radius-full);background:rgba(255,255,255,.08);color:var(--text-muted);flex-shrink:0;transition:all var(--transition-fast)}.category-rich-tooltip{max-width:320px;width:max-content;padding:14px 16px;border-radius:var(--radius-md);background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color-hover);box-shadow:0 12px 32px rgba(0,0,0,.35);animation:tooltipSlideIn .18s ease-out;display:flex;flex-direction:column;gap:6px}.category-rich-tooltip:after,.category-rich-tooltip:before{display:none!important}@keyframes tooltipSlideIn{0%{opacity:0;transform:translateY(-50%) translateX(-8px)}to{opacity:1;transform:translateY(-50%) translateX(0)}}.tooltip-top-row{display:flex;align-items:center}.tooltip-title{font-family:var(--font-heading);font-size:.95rem;font-weight:700;color:var(--text-primary);line-height:1.3}.tooltip-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.45}.schedule-day-badge{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em;display:inline-flex;align-items:center;gap:4px}.category-icon-box.icon-all{background:rgba(220,38,38,.08);color:#dc2626;border-color:rgba(220,38,38,.25)}.category-item-row.day-all:hover{border-color:rgba(220,38,38,.45)}.category-item-row.day-all:hover .category-item-name{color:#dc2626}.category-item-row.day-all:hover .category-icon-box{border-color:#dc2626;box-shadow:0 0 8px rgba(220,38,38,.15)}.category-item-row.day-all.active{background:rgba(220,38,38,.08);border-color:#dc2626;box-shadow:0 0 14px rgba(220,38,38,.15)}.category-item-row.day-all.active .category-item-name{color:#dc2626;font-weight:700}.category-item-row.day-all.active .category-icon-box{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(220,38,38,.15)}.category-item-row.day-all.active .category-count-pill{background:rgba(220,38,38,.08);color:#dc2626;font-weight:700}.schedule-day-badge.badge-all{background:rgba(220,38,38,.08);color:#dc2626;border:1px solid rgba(220,38,38,.25)}.category-rich-tooltip.tooltip-day-all{border-color:rgba(220,38,38,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(220,38,38,.15)}.blog-card.card-day-all:before{border-top-color:#dc2626;border-right-color:#dc2626}.blog-card.card-day-all:after{border-bottom-color:#dc2626}.blog-card.card-day-all:hover{box-shadow:0 0 24px rgba(220,38,38,.15)}.blog-card.card-day-all:hover:after{border-left-color:#dc2626}.blog-card.card-day-all:hover .blog-title{color:#dc2626}.category-icon-box.icon-mon{background:rgba(2,132,199,.08);color:#0284c7;border-color:rgba(2,132,199,.25)}.category-item-row.day-mon:hover{border-color:rgba(2,132,199,.45)}.category-item-row.day-mon:hover .category-item-name{color:#0284c7}.category-item-row.day-mon:hover .category-icon-box{border-color:#0284c7;box-shadow:0 0 8px rgba(2,132,199,.15)}.category-item-row.day-mon.active{background:rgba(2,132,199,.08);border-color:#0284c7;box-shadow:0 0 14px rgba(2,132,199,.15)}.category-item-row.day-mon.active .category-item-name{color:#0284c7;font-weight:700}.category-item-row.day-mon.active .category-icon-box{background:linear-gradient(135deg,#38bdf8,#0284c7);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(2,132,199,.15)}.category-item-row.day-mon.active .category-count-pill{background:rgba(2,132,199,.08);color:#0284c7;font-weight:700}.schedule-day-badge.badge-mon{background:rgba(2,132,199,.08);color:#0284c7;border:1px solid rgba(2,132,199,.25)}.category-rich-tooltip.tooltip-day-mon{border-color:rgba(2,132,199,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(2,132,199,.15)}.blog-card.card-day-mon:before{border-top-color:#0284c7;border-right-color:#0284c7}.blog-card.card-day-mon:after{border-bottom-color:#0284c7}.blog-card.card-day-mon:hover{box-shadow:0 0 24px rgba(2,132,199,.15)}.blog-card.card-day-mon:hover:after{border-left-color:#0284c7}.blog-card.card-day-mon:hover .blog-title{color:#0284c7}.category-icon-box.icon-tue{background:rgba(5,150,105,.08);color:#059669;border-color:rgba(5,150,105,.25)}.category-item-row.day-tue:hover{border-color:rgba(5,150,105,.45)}.category-item-row.day-tue:hover .category-item-name{color:#059669}.category-item-row.day-tue:hover .category-icon-box{border-color:#059669;box-shadow:0 0 8px rgba(5,150,105,.15)}.category-item-row.day-tue.active{background:rgba(5,150,105,.08);border-color:#059669;box-shadow:0 0 14px rgba(5,150,105,.15)}.category-item-row.day-tue.active .category-item-name{color:#059669;font-weight:700}.category-item-row.day-tue.active .category-icon-box{background:linear-gradient(135deg,#34d399,#059669);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(5,150,105,.15)}.category-item-row.day-tue.active .category-count-pill{background:rgba(5,150,105,.08);color:#059669;font-weight:700}.schedule-day-badge.badge-tue{background:rgba(5,150,105,.08);color:#059669;border:1px solid rgba(5,150,105,.25)}.category-rich-tooltip.tooltip-day-tue{border-color:rgba(5,150,105,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(5,150,105,.15)}.blog-card.card-day-tue:before{border-top-color:#059669;border-right-color:#059669}.blog-card.card-day-tue:after{border-bottom-color:#059669}.blog-card.card-day-tue:hover{box-shadow:0 0 24px rgba(5,150,105,.15)}.blog-card.card-day-tue:hover:after{border-left-color:#059669}.blog-card.card-day-tue:hover .blog-title{color:#059669}.category-icon-box.icon-wed{background:rgba(126,34,206,.08);color:#7e22ce;border-color:rgba(126,34,206,.25)}.category-item-row.day-wed:hover{border-color:rgba(126,34,206,.45)}.category-item-row.day-wed:hover .category-item-name{color:#7e22ce}.category-item-row.day-wed:hover .category-icon-box{border-color:#7e22ce;box-shadow:0 0 8px rgba(126,34,206,.15)}.category-item-row.day-wed.active{background:rgba(126,34,206,.08);border-color:#7e22ce;box-shadow:0 0 14px rgba(126,34,206,.15)}.category-item-row.day-wed.active .category-item-name{color:#7e22ce;font-weight:700}.category-item-row.day-wed.active .category-icon-box{background:linear-gradient(135deg,#a855f7,#7e22ce);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(126,34,206,.15)}.category-item-row.day-wed.active .category-count-pill{background:rgba(126,34,206,.08);color:#7e22ce;font-weight:700}.schedule-day-badge.badge-wed{background:rgba(126,34,206,.08);color:#7e22ce;border:1px solid rgba(126,34,206,.25)}.category-rich-tooltip.tooltip-day-wed{border-color:rgba(126,34,206,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(126,34,206,.15)}.blog-card.card-day-wed:before{border-top-color:#7e22ce;border-right-color:#7e22ce}.blog-card.card-day-wed:after{border-bottom-color:#7e22ce}.blog-card.card-day-wed:hover{box-shadow:0 0 24px rgba(126,34,206,.15)}.blog-card.card-day-wed:hover:after{border-left-color:#7e22ce}.blog-card.card-day-wed:hover .blog-title{color:#7e22ce}.category-icon-box.icon-thu{background:rgba(180,83,9,.08);color:#b45309;border-color:rgba(180,83,9,.25)}.category-item-row.day-thu:hover{border-color:rgba(180,83,9,.45)}.category-item-row.day-thu:hover .category-item-name{color:#b45309}.category-item-row.day-thu:hover .category-icon-box{border-color:#b45309;box-shadow:0 0 8px rgba(180,83,9,.15)}.category-item-row.day-thu.active{background:rgba(180,83,9,.08);border-color:#b45309;box-shadow:0 0 14px rgba(180,83,9,.15)}.category-item-row.day-thu.active .category-item-name{color:#b45309;font-weight:700}.category-item-row.day-thu.active .category-icon-box{background:linear-gradient(135deg,#f59e0b,#b45309);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(180,83,9,.15)}.category-item-row.day-thu.active .category-count-pill{background:rgba(180,83,9,.08);color:#b45309;font-weight:700}.schedule-day-badge.badge-thu{background:rgba(180,83,9,.08);color:#b45309;border:1px solid rgba(180,83,9,.25)}.category-rich-tooltip.tooltip-day-thu{border-color:rgba(180,83,9,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(180,83,9,.15)}.blog-card.card-day-thu:before{border-top-color:#b45309;border-right-color:#b45309}.blog-card.card-day-thu:after{border-bottom-color:#b45309}.blog-card.card-day-thu:hover{box-shadow:0 0 24px rgba(180,83,9,.15)}.blog-card.card-day-thu:hover:after{border-left-color:#b45309}.blog-card.card-day-thu:hover .blog-title{color:#b45309}.category-icon-box.icon-fri{background:rgba(225,29,72,.08);color:#e11d48;border-color:rgba(225,29,72,.25)}.category-item-row.day-fri:hover{border-color:rgba(225,29,72,.45)}.category-item-row.day-fri:hover .category-item-name{color:#e11d48}.category-item-row.day-fri:hover .category-icon-box{border-color:#e11d48;box-shadow:0 0 8px rgba(225,29,72,.15)}.category-item-row.day-fri.active{background:rgba(225,29,72,.08);border-color:#e11d48;box-shadow:0 0 14px rgba(225,29,72,.15)}.category-item-row.day-fri.active .category-item-name{color:#e11d48;font-weight:700}.category-item-row.day-fri.active .category-icon-box{background:linear-gradient(135deg,#fb7185,#e11d48);color:#fff;border-color:rgba(0,0,0,0);box-shadow:0 2px 10px rgba(225,29,72,.15)}.category-item-row.day-fri.active .category-count-pill{background:rgba(225,29,72,.08);color:#e11d48;font-weight:700}.schedule-day-badge.badge-fri{background:rgba(225,29,72,.08);color:#e11d48;border:1px solid rgba(225,29,72,.25)}.category-rich-tooltip.tooltip-day-fri{border-color:rgba(225,29,72,.45);box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 20px rgba(225,29,72,.15)}.blog-card.card-day-fri:before{border-top-color:#e11d48;border-right-color:#e11d48}.blog-card.card-day-fri:after{border-bottom-color:#e11d48}.blog-card.card-day-fri:hover{box-shadow:0 0 24px rgba(225,29,72,.15)}.blog-card.card-day-fri:hover:after{border-left-color:#e11d48}.blog-card.card-day-fri:hover .blog-title{color:#e11d48}.sidebar-tags-cloud{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) rgba(0,0,0,0)}.sidebar-tags-cloud::-webkit-scrollbar{width:5px}.sidebar-tags-cloud::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.sidebar-tags-cloud::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:4px}.sidebar-tags-cloud::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25)}.sidebar-tag-pill{padding:4px 9px;border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.78rem;font-weight:600;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all var(--transition-fast)}.sidebar-tag-pill:hover{border-color:var(--border-color-hover);color:var(--text-primary);background:var(--bg-card-hover)}.sidebar-tag-pill.active{background:rgba(239,68,68,.15);border-color:var(--accent-red);color:var(--text-accent)}.sidebar-tag-pill .tag-count{font-size:.7rem;opacity:.75;padding:1px 5px;background:rgba(255,255,255,.08);border-radius:var(--radius-full)}.blog-main-scroll-area{height:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;box-sizing:border-box;background:var(--bg-primary);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) rgba(0,0,0,0)}.blog-main-scroll-area::-webkit-scrollbar{width:6px}.blog-main-scroll-area::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.blog-main-scroll-area::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:4px}.blog-main-scroll-area::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25)}.blog-main-inner-content{padding:22px clamp(20px,3vw,40px);max-width:100%;display:flex;flex-direction:column;gap:20px;box-sizing:border-box}.blog-hero-header{margin-bottom:4px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.blog-hero-header .section-title{font-size:2.15rem;margin-bottom:6px;letter-spacing:-.02em}.blog-hero-header .section-subtitle{margin:0;text-align:left;font-size:1rem;color:var(--text-secondary)}.blog-controls-panel{grid-column:1/-1;position:-webkit-sticky;position:sticky;top:16px;z-index:25;background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:none;transition:box-shadow var(--transition-normal),background var(--transition-normal),border-color var(--transition-normal)}.blog-controls-panel:after,.blog-controls-panel:before{display:none!important}.blog-controls-panel.is-stuck{background:rgba(255,255,255,.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-color:var(--border-color);box-shadow:0 12px 32px rgba(0,0,0,.08)}.blog-search-wrapper{position:relative;width:100%}.search-input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.blog-search-input{width:100%;height:46px;padding:0 44px 0 46px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-family:inherit;transition:all var(--transition-fast)}.blog-search-input:focus{border-color:var(--accent-red);box-shadow:0 0 0 3px rgba(239,68,68,.15);background:var(--bg-card-hover)}.search-clear-btn{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0);border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%}.search-clear-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.blog-active-chips-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--border-color);font-size:.85rem}.active-chips-label{gap:5px;color:var(--text-muted);font-weight:600;margin-right:4px}.active-chips-label,.filter-chip{display:inline-flex;align-items:center}.filter-chip{gap:6px;background:var(--bg-tertiary);border:1px solid var(--border-color-hover);border-radius:var(--radius-full);padding:3px 9px;color:var(--text-primary);font-size:.82rem}.filter-chip .chip-key{color:var(--text-muted)}.filter-chip .chip-remove-btn{background:rgba(0,0,0,0);border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;padding:0;margin-left:2px}.filter-chip .chip-remove-btn:hover{color:var(--accent-red)}.blog-results-meta{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;color:var(--text-muted);padding:0 4px}.btn-text-reset{background:rgba(0,0,0,0);border:none;color:var(--text-accent);font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:underline}.btn-text-reset:hover{opacity:.85}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:22px;gap:22px}.blog-card{padding:24px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:transform var(--transition-smooth),box-shadow var(--transition-smooth)}.blog-card:hover{transform:translateY(-4px)}.blog-card:hover .blog-title{color:var(--text-accent)}.blog-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;margin:10px 0 8px;color:var(--text-primary);line-height:1.35;transition:color var(--transition-fast)}.blog-summary{color:var(--text-secondary);font-size:.91rem;line-height:1.6;margin-bottom:16px}.blog-load-more-container{display:flex;justify-content:center;align-items:center;padding-top:16px;padding-bottom:22px;width:100%}.article-top-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.article-full-title{font-family:var(--font-heading);font-size:2.2rem;font-weight:800;color:var(--text-primary);line-height:1.25;margin:12px 0 16px}.article-meta-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--text-muted);font-size:.9rem;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.article-summary-callout{padding:18px 22px;background:rgba(239,68,68,.08);border-left:4px solid var(--accent-red);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:1.02rem;line-height:1.65;margin-bottom:32px}.article-bottom-bar{margin-top:48px;padding-top:24px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}@media(max-width:1024px){.blog-mobile-toggle-bar{display:block}.blog-app-layout{grid-template-columns:1fr}.blog-sidebar{position:fixed;top:0;left:0;bottom:0;width:320px;max-width:85vw;height:100vh;max-height:100vh;z-index:1050;transform:translateX(-100%);transition:transform var(--transition-smooth);box-shadow:var(--shadow-xl);background:var(--bg-primary)}.blog-sidebar.mobile-open{transform:translateX(0)}.blog-sidebar-mobile-header{display:flex}}@media(max-width:640px){.blog-main-inner-content{padding:16px}.blog-grid{grid-template-columns:1fr}.blog-hero-header .section-title{font-size:1.75rem!important}}.blog-modal-backdrop{position:fixed;top:var(--navbar-height);bottom:0;left:0;right:0;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.blog-modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-height:calc(100vh - var(--navbar-height) - 48px);overflow-y:auto;padding:32px 24px;position:relative;box-shadow:0 25px 50px -12px rgba(0,0,0,.5);animation:modalFadeIn .25s cubic-bezier(.16,1,.3,1)}.blog-article-modal,.blog-modal-content{max-width:calc(var(--max-width) - 48px);width:100%}.blog-article-modal{padding:0!important;display:flex;flex-direction:column}.modal-sticky-header{position:-webkit-sticky;position:sticky;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:var(--bg-secondary);border-bottom:1px solid rgba(0,0,0,0);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.modal-sticky-header.has-title{background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom-color:var(--border-color);box-shadow:0 4px 16px rgba(0,0,0,.06)}.modal-header-title-wrapper{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1}.modal-header-article-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(6px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}.modal-sticky-header.has-title .modal-header-article-title{opacity:1;transform:translateY(0);pointer-events:auto}.modal-sticky-header .modal-close-btn{position:static;margin-left:auto;flex-shrink:0}.article-modal-body{padding:24px 24px 48px}.article-modal-layout{display:flex;flex-direction:column;gap:24px}.article-modal-layout.has-toc{display:grid;grid-template-columns:1fr 260px;grid-gap:36px;gap:36px;align-items:start}.article-main-column{min-width:0}.article-toc-sidebar{position:-webkit-sticky;position:sticky;top:70px;max-height:calc(100vh - var(--navbar-height) - 160px);overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:18px 16px;transition:border-color var(--transition-fast)}.article-toc-sidebar:hover{border-color:var(--border-color-hover)}.article-toc-header{display:flex;align-items:flex-start;gap:8px;font-family:var(--font-heading);font-size:.86rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-color)}.article-toc-header svg{color:var(--accent-red);flex-shrink:0;margin-top:2px}.article-toc-nav{width:100%}.article-toc-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.article-toc-item{position:relative}.article-toc-item.level-1 .article-toc-link{font-weight:600;color:var(--text-secondary)}.article-toc-item.level-2 .article-toc-link{font-weight:400;font-size:.8rem;padding-left:20px;color:var(--text-muted)}.article-toc-item.active .article-toc-link{color:var(--text-accent);font-weight:700;background:rgba(239,68,68,.08);border-left-color:var(--accent-red);box-shadow:inset 2px 0 0 var(--accent-red)}.article-toc-item.active.level-2 .article-toc-link{color:var(--accent-rose);font-weight:600}.article-toc-link{display:block;font-size:.85rem;line-height:1.45;color:var(--text-muted);text-decoration:none;padding:6px 10px;border-radius:var(--radius-sm);border-left:2px solid rgba(0,0,0,0);transition:all var(--transition-fast);cursor:pointer}.article-toc-link:hover{color:var(--text-primary);background:var(--bg-tertiary);border-left-color:var(--border-color-hover)}.article-heading-target{scroll-margin-top:80px}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-close-btn{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);z-index:10}.modal-close-btn:hover{background:rgba(239,68,68,.2);color:#ef4444}.article-body{margin-top:24px;line-height:1.8}.article-body h2{font-family:var(--font-heading);color:var(--text-primary);margin:32px 0 14px;font-size:1.45rem;font-weight:700;line-height:1.35;border-bottom:1px solid var(--border-color);padding-bottom:8px}.article-body h3{margin:28px 0 12px;font-size:1.25rem}.article-body h3,.article-body h4{font-family:var(--font-heading);color:var(--text-primary);font-weight:600}.article-body h4{margin:20px 0 10px;font-size:1.1rem}.article-body p{margin-bottom:16px}.article-body ol,.article-body ul{padding-left:28px;margin-bottom:20px}.article-body ul{list-style:disc}.article-body ol{list-style:decimal}.article-body li{margin-bottom:8px;padding-left:4px}.article-body li:last-child{margin-bottom:0}.article-body li>ol,.article-body li>ul{margin-top:8px;margin-bottom:8px;padding-left:24px}.article-body li>p{margin-bottom:8px}.article-body li>p:last-child{margin-bottom:0}.article-body ul ul{list-style:circle}.article-body ul ul ul{list-style:square}.article-body ol ol{list-style:lower-alpha}.article-body ol ol ol{list-style:lower-roman}.article-body ol ul{list-style:disc}.article-body ul ol{list-style:decimal}.article-body code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:var(--font-mono);font-size:.88em;color:var(--accent-red)}.article-body .code-block-wrapper{margin:24px 0;background:#0d1117;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.2);position:relative}.article-body .code-block-wrapper .code-block-header{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;background:#161b22;border-bottom:1px solid rgba(255,255,255,.08)}.article-body .code-block-wrapper .code-block-header .code-mac-dots{display:flex;align-items:center;gap:6px}.article-body .code-block-wrapper .code-block-header .code-mac-dots .dot{width:10px;height:10px;border-radius:50%;display:inline-block}.article-body .code-block-wrapper .code-block-header .code-mac-dots .dot.dot-red{background:#ff5f56}.article-body .code-block-wrapper .code-block-header .code-mac-dots .dot.dot-yellow{background:#ffbd2e}.article-body .code-block-wrapper .code-block-header .code-mac-dots .dot.dot-green{background:#27c93f}.article-body .code-block-wrapper .code-block-header .code-lang-tag{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--accent-red);letter-spacing:.06em;font-family:var(--font-mono)}.article-body .code-block-wrapper pre{margin:0;padding:16px 20px;background:rgba(0,0,0,0);border:none;border-radius:0;overflow-x:auto;line-height:1.65;font-size:.9rem}.article-body .code-block-wrapper pre code{background:rgba(0,0,0,0);padding:0;color:#e6edf3;font-family:var(--font-mono)}.article-body .token-keyword{color:#ff7b72;font-weight:600}.article-body .token-type{color:#79c0ff;font-weight:500}.article-body .token-string{color:#a5d6ff}.article-body .token-number{color:#ffa657;font-weight:500}.article-body .token-comment{color:#8b949e;font-style:italic}.article-body .token-function{color:#d2a8ff;font-weight:500}.article-body .token-operator{color:#ff7b72}.article-body pre:not(.mermaid){background:#0d1117;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;overflow-x:auto;margin:20px 0}.article-body pre:not(.mermaid) code{background:rgba(0,0,0,0);padding:0;color:#e6edf3}.article-body .mermaid-rendered,.article-body pre.mermaid{position:relative;background:rgba(0,0,0,0);border:none;border-radius:var(--radius-md);padding:12px 0 20px;margin:20px 0;display:flex;justify-content:center;align-items:center;overflow-x:auto;box-shadow:none;cursor:zoom-in;transition:opacity var(--transition-fast);outline:none}.article-body .mermaid-rendered:focus-visible .mermaid-fit-hint,.article-body .mermaid-rendered:hover .mermaid-fit-hint,.article-body pre.mermaid:focus-visible .mermaid-fit-hint,.article-body pre.mermaid:hover .mermaid-fit-hint{opacity:1;transform:translateY(0);background:var(--text-accent);color:#fff;border-color:var(--text-accent)}.article-body .mermaid-rendered:focus-visible .mermaid-fit-hint svg,.article-body .mermaid-rendered:hover .mermaid-fit-hint svg,.article-body pre.mermaid:focus-visible .mermaid-fit-hint svg,.article-body pre.mermaid:hover .mermaid-fit-hint svg{color:#fff}.article-body .mermaid-rendered:focus-visible,.article-body pre.mermaid:focus-visible{outline:2px solid var(--text-accent);outline-offset:4px}.article-body .mermaid-rendered .mermaid-fit-hint,.article-body pre.mermaid .mermaid-fit-hint{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-size:.68rem;font-weight:600;line-height:1;white-space:nowrap;color:var(--text-accent);background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-full,9999px);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:.85;transform:translateY(0);transition:all var(--transition-fast);pointer-events:none;z-index:2}.article-body .mermaid-rendered .mermaid-fit-hint svg,.article-body pre.mermaid .mermaid-fit-hint svg{width:11px!important;height:11px!important;min-width:11px!important;max-width:11px!important;margin:0!important;display:inline-block!important;flex-shrink:0;stroke:currentColor}.article-body .mermaid-rendered>svg,.article-body pre.mermaid>svg{width:100%;min-width:280px;max-width:100%;height:auto;display:block;margin:0 auto;pointer-events:none;background:rgba(0,0,0,0)!important;font-family:var(--font-sans)!important}.article-body .mermaid-rendered>svg .actor,.article-body .mermaid-rendered>svg .label,.article-body .mermaid-rendered>svg .labelText,.article-body .mermaid-rendered>svg .loopText,.article-body .mermaid-rendered>svg .messageText,.article-body .mermaid-rendered>svg .nodeText,.article-body .mermaid-rendered>svg .noteText,.article-body .mermaid-rendered>svg div,.article-body .mermaid-rendered>svg foreignObject,.article-body .mermaid-rendered>svg p,.article-body .mermaid-rendered>svg span,.article-body .mermaid-rendered>svg text,.article-body .mermaid-rendered>svg tspan,.article-body pre.mermaid>svg .actor,.article-body pre.mermaid>svg .label,.article-body pre.mermaid>svg .labelText,.article-body pre.mermaid>svg .loopText,.article-body pre.mermaid>svg .messageText,.article-body pre.mermaid>svg .nodeText,.article-body pre.mermaid>svg .noteText,.article-body pre.mermaid>svg div,.article-body pre.mermaid>svg foreignObject,.article-body pre.mermaid>svg p,.article-body pre.mermaid>svg span,.article-body pre.mermaid>svg text,.article-body pre.mermaid>svg tspan{font-family:var(--font-sans)!important;text-align:center!important;text-justify:auto!important}.article-body .mermaid-rendered>svg .cluster-label,.article-body .mermaid-rendered>svg .subgraph-title,.article-body pre.mermaid>svg .cluster-label,.article-body pre.mermaid>svg .subgraph-title{text-align:left!important}.article-body blockquote{position:relative;background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-left:4px solid var(--accent-red);border-radius:var(--radius-lg);padding:18px 22px;margin:24px 0;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:transform var(--transition-smooth),box-shadow var(--transition-smooth),border-color var(--transition-smooth)}.article-body blockquote:hover{border-color:var(--border-hover,var(--border-color));border-left-color:var(--accent-red);box-shadow:0 8px 30px rgba(0,0,0,.12)}.article-body blockquote p{margin:0;line-height:1.75;color:var(--text-primary);font-size:.98rem}.article-body blockquote p+p{margin-top:10px}.article-body blockquote b,.article-body blockquote strong{color:var(--accent-red);font-weight:700}.article-body blockquote em,.article-body blockquote i{font-style:italic;color:var(--text-secondary)}.article-body blockquote code{background:var(--bg-tertiary)}.article-body b,.article-body strong{color:var(--text-primary);font-weight:700}.diagram-viewer-backdrop{position:fixed;inset:0;z-index:2100;background:rgba(241,245,249,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:diagramViewerFadeIn .22s cubic-bezier(.16,1,.3,1)}.diagram-viewer-backdrop,.diagram-viewer-content{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.diagram-viewer-content{position:relative;width:100vw;height:100vh;background:rgba(0,0,0,0);padding:0;border:none;box-shadow:none}.diagram-viewer-header{position:absolute;top:18px;left:20px;right:20px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;grid-gap:16px;gap:16px;z-index:2110;pointer-events:none}.diagram-viewer-header .diagram-viewer-info{display:flex;align-items:center;justify-self:start;min-width:0;max-width:100%;pointer-events:auto}.diagram-viewer-header .diagram-viewer-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-color);font-size:.78rem;font-weight:600;color:var(--text-primary);max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all var(--transition-fast)}.diagram-viewer-header .diagram-viewer-badge:hover{border-color:var(--border-color-hover);box-shadow:0 4px 20px rgba(255,56,92,.15)}.diagram-viewer-header .diagram-viewer-badge svg{color:var(--text-accent);flex-shrink:0}.diagram-viewer-header .diagram-viewer-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.diagram-viewer-header .diagram-viewer-controls{display:flex;align-items:center;justify-self:center;gap:4px;background:var(--bg-glass);padding:3px 6px;border-radius:var(--radius-full,9999px);border:1px solid var(--border-color);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 20px rgba(0,0,0,.15);pointer-events:auto}.diagram-viewer-header .diagram-viewer-zoom-level{display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;font-family:var(--font-mono);color:var(--text-accent);min-width:44px;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diagram-viewer-header .diagram-viewer-divider{width:1px;height:16px;background:var(--border-color);margin:0 3px}.diagram-viewer-header .diagram-viewer-actions{display:flex;align-items:center;justify-self:end;gap:12px;pointer-events:auto}.diagram-viewer-btn{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 8px;border-radius:var(--radius-sm);background:rgba(0,0,0,0);border:none;color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.diagram-viewer-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.diagram-viewer-btn:active{transform:scale(.95)}.diagram-viewer-close-btn{width:36px;height:36px;border-radius:50%;background:var(--bg-glass);border:1px solid var(--border-color);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px rgba(0,0,0,.2)}.diagram-viewer-close-btn:hover{background:var(--accent-red);color:#fff;border-color:var(--accent-red);box-shadow:0 0 16px rgba(255,56,92,.4);transform:scale(1.05)}.diagram-viewer-close-btn:active{transform:scale(.95)}.diagram-viewer-viewport{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diagram-viewer-viewport.is-dragging{cursor:-webkit-grabbing;cursor:grabbing}.diagram-viewer-canvas{width:95vw;height:86vh;max-width:95vw;max-height:86vh;display:flex;align-items:center;justify-content:center;transform-origin:center center;transition:transform .05s ease-out;border:none}.diagram-viewer-canvas svg{display:block;width:100%!important;height:100%!important;max-width:90vw!important;max-height:85vh!important;background:rgba(0,0,0,0)!important;padding:0!important;border:none!important;box-shadow:none!important;overflow:visible;object-fit:contain;font-family:var(--font-sans)!important}.diagram-viewer-canvas svg .actor,.diagram-viewer-canvas svg .label,.diagram-viewer-canvas svg .labelText,.diagram-viewer-canvas svg .loopText,.diagram-viewer-canvas svg .messageText,.diagram-viewer-canvas svg .nodeText,.diagram-viewer-canvas svg .noteText,.diagram-viewer-canvas svg div,.diagram-viewer-canvas svg foreignObject,.diagram-viewer-canvas svg p,.diagram-viewer-canvas svg span,.diagram-viewer-canvas svg text,.diagram-viewer-canvas svg tspan{font-family:var(--font-sans)!important;text-align:center!important;text-justify:auto!important}.diagram-viewer-canvas svg .cluster-label,.diagram-viewer-canvas svg .subgraph-title{text-align:left!important}.diagram-viewer-hint{position:absolute;bottom:16px;display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:var(--text-muted);background:var(--bg-glass);padding:6px 16px;border-radius:var(--radius-full,9999px);border:1px solid var(--border-color);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none;z-index:2110;box-shadow:0 4px 16px rgba(0,0,0,.1)}.diagram-viewer-hint strong{color:var(--text-accent)}@keyframes diagramViewerFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(max-width:900px){.mermaid-rendered .mermaid-fit-hint,pre.mermaid .mermaid-fit-hint{display:none!important}.article-modal-layout.has-toc{grid-template-columns:1fr}.article-toc-sidebar{display:none}.article-modal-body{padding:16px 20px 36px}.diagram-viewer-header{top:12px;left:12px;right:12px;grid-template-columns:1fr auto}.diagram-viewer-header .diagram-viewer-info{display:none}.diagram-viewer-header .diagram-viewer-controls{justify-self:start}.diagram-viewer-canvas{width:95vw;height:86vh;padding:20px 14px}.diagram-viewer-canvas svg{max-width:92vw!important;max-height:82vh!important;padding:0!important}}@media(max-width:640px){.blog-modal-backdrop{padding:12px 8px}.modal-sticky-header{padding:10px 14px;gap:12px}.article-modal-body{padding:12px 14px 28px}.modal-header-article-title{font-size:.95rem}.diagram-viewer-hint{display:none}}.print-cv-document{display:none!important}@media print{@page{size:A4 portrait;margin:6mm 10mm}body,html{width:100%!important;background:#fff!important;color:#0f172a!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:8pt!important;line-height:1.26!important;padding:0!important;margin:0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;text-size-adjust:100%!important}.app-root,.floating-actions-container,.web-only,main{display:block!important;position:static!important;margin:0!important;padding:0!important;border:none!important;background:rgba(0,0,0,0)!important;box-shadow:none!important;transform:none!important;width:100%!important;max-width:100%!important;pointer-events:none!important}#about,#blog,#contact,#education,#experience,#hero,#projects,#skills,.about-section,.app-header,.blog-container,.blog-controls-wrapper,.blog-header,.blog-main,.blog-modal-backdrop,.blog-sidebar,.btn,.button-floating,.contact-section,.drawer-backdrop,.drawer-panel,.drawer-wrapper,.education-section,.experience-section,.floating-btn,.footer,.header,.hero-section,.mobile-menu-btn,.projects-section,.skills-section,.theme-toggle-btn,body:after,body:before{display:none!important}.print-cv-document{display:block!important;width:100%!important;max-width:100%!important;background:#fff!important;color:#0f172a!important;padding:0!important;margin:0 auto!important;box-sizing:border-box!important}.print-page-1{page-break-after:always!important;break-after:page!important}.print-page-1,.print-page-2{box-sizing:border-box!important}.print-page-2{page-break-before:always!important;break-before:page!important;padding-top:0!important}.print-header{text-align:center;margin-bottom:5px;padding-bottom:4px;border-bottom:1.5px solid #0f172a}.print-name{font-family:var(--font-heading),-apple-system,sans-serif;font-size:15pt;font-weight:800;color:#b91c1c;letter-spacing:.04em;margin-bottom:1px}.print-title{font-size:8.8pt;font-weight:700;color:#b91c1c;letter-spacing:.03em;margin-bottom:3px}.print-contact-row{font-size:7.7pt;color:#475569;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:2px 8px;line-height:1.22}.print-contact-links{margin-top:1.5px}.print-section{margin-bottom:5px}.print-section-heading{font-family:var(--font-heading),-apple-system,sans-serif;font-size:8.8pt;font-weight:800;color:#b91c1c;letter-spacing:.04em;text-transform:uppercase;border-bottom:1.2px solid rgba(185,28,28,.45);padding-bottom:1px;margin-bottom:3px;break-after:avoid!important;page-break-after:avoid!important}.print-summary-text{font-size:7.8pt;color:#334155;line-height:1.27;text-align:justify;margin-bottom:1px}.print-skills-table{display:flex;flex-direction:column;gap:1.5px}.print-skill-row{font-size:7.7pt;line-height:1.22}.print-skill-category{color:#0f172a;margin-right:4px}.print-skill-list{color:#334155}.print-experience-list,.print-projects-list{display:flex;flex-direction:column;gap:4px}.print-cert-item,.print-edu-item,.print-exp-item,.print-proj-item{page-break-inside:avoid;break-inside:avoid}.print-cert-item{margin-top:3px}.print-edu-header,.print-exp-header,.print-proj-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:1px}.print-edu-title-group,.print-exp-title-group{flex:1 1 auto;min-width:0}.print-edu-degree,.print-exp-role,.print-proj-title{font-weight:700;font-size:8.4pt;color:#b91c1c}.print-edu-inst,.print-exp-company,.print-proj-company{font-weight:600;color:#0f172a;font-size:8.2pt}.print-proj-sub{font-size:8pt;line-height:1.22;margin-bottom:1px}.print-proj-role{font-weight:600;color:#b91c1c;font-size:8pt}.print-proj-separator{color:#94a3b8;margin:0 2px}.print-edu-period,.print-exp-meta{flex:0 0 auto;text-align:right;font-size:7.5pt;color:#64748b;font-style:italic;white-space:nowrap}.print-exp-summary,.print-proj-desc{font-size:7.7pt;color:#475569;font-style:italic;margin-bottom:1px;line-height:1.23}.print-edu-bullets,.print-exp-bullets,.print-proj-highlights{margin:1px 0 1.5px 10px;padding:0;list-style-type:disc}.print-edu-bullets li,.print-exp-bullets li,.print-proj-highlights li{font-size:7.7pt;color:#1e293b;line-height:1.24;margin-bottom:.5px;text-align:justify}.print-edu-bullets b,.print-edu-bullets strong,.print-exp-bullets b,.print-exp-bullets strong,.print-proj-highlights b,.print-proj-highlights strong{color:#0f172a;font-weight:700}.print-tech-stack{font-size:7.4pt;color:#475569;margin-top:.5px;line-height:1.22}.print-edu-gpa,.print-edu-highlight{text-align:justify;margin-top:.5px;margin-bottom:.5px}.print-cert-row,.print-edu-gpa,.print-edu-highlight{font-size:7.7pt;color:#334155;line-height:1.24}.print-page-break-avoid{page-break-inside:avoid;break-inside:avoid}}@media screen and (max-width:992px){.desktop-nav,.desktop-only-status,.header-lang-btn,.header-lang-group{display:none!important}.mobile-only-status{display:inline-flex!important}.mobile-menu-btn{display:flex!important}.header-actions{gap:8px}.logo{font-size:1.15rem;gap:10px}.logo-badge{width:36px;height:36px;font-size:.95rem}.hero-grid{grid-template-columns:1fr;text-align:center}.hero-visual{justify-content:center;width:100%}.avatar-card{width:100%;max-width:540px;margin:0 auto;padding:32px 28px}.hero-bio{margin-left:auto;margin-right:auto}.hero-cta-group{justify-content:center}.hero-stats-banner{grid-template-columns:repeat(2,1fr);gap:28px 20px;padding:24px 20px}.contact-cards-grid,.principles-grid,.skills-compact-grid{grid-template-columns:repeat(2,1fr);gap:16px}.hero-stat-card:nth-child(2):after{display:none}.contact-grid,.edu-cert-grid{grid-template-columns:1fr}.blog-article-modal{max-width:calc(var(--max-width) - 48px);width:100%}.article-modal-layout.has-toc{grid-template-columns:1fr;gap:24px}.article-toc-sidebar{position:static;max-height:none;margin-bottom:20px}}@media screen and (max-width:768px){.hero-name{font-size:2.5rem}.section-title{font-size:2rem}.timeline-item{padding-left:45px}}@media screen and (max-width:576px){.header-container{padding:0 16px}.logo{font-size:1.05rem;gap:8px}.logo-badge{width:32px;height:32px;font-size:.85rem}.mobile-menu-btn{width:36px;height:36px}.timeline-card{padding:24px 18px}.timeline-title-row{gap:10px}.timeline-role{font-size:1.15rem}.timeline-period{font-size:.78rem}.timeline-company{font-size:.95rem}.floating-actions-container{bottom:18px;right:14px}.floating-btn-primary{padding:10px 16px;font-size:.82rem}.floating-btn-secondary{width:40px;height:40px}.hero-stats-banner{grid-template-columns:1fr;gap:20px;padding:20px 16px}.avatar-card{width:100%;max-width:100%;padding:24px 18px}.contact-cards-grid,.principles-grid,.skills-compact-grid{grid-template-columns:1fr;gap:16px}.skills-legend-bar{width:100%;padding:10px 14px;gap:10px;margin-bottom:24px}.skills-legend-title{width:100%;text-align:center}.skills-legend-items{justify-content:center;gap:8px}.skills-legend-item{padding:3px 8px;font-size:.78rem}.hero-stat-card:after{display:none!important}.hero-stat-value{font-size:2.2rem}.blog-modal-backdrop{padding:12px}.blog-modal-content{padding:24px 16px;max-height:calc(100vh - var(--navbar-height) - 24px)}.project-modal-dialog{padding:0!important;max-height:calc(100vh - var(--navbar-height) - 20px);width:100%}.project-modal-header{padding:20px 56px 14px 16px}.project-modal-header .modal-close-btn{top:14px;right:14px;width:32px;height:32px}.project-modal-title{font-size:1.3rem}.project-modal-subtitle{font-size:.88rem}.project-modal-body{padding:16px 16px 24px}}