@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.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_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-geist-sans:"Inter","Inter Fallback"}@font-face{font-family:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/1d4eaed977255102-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:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f3f7e95f2dbc4fe4-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:Sora Fallback;src:local("Arial");ascent-override:85.29%;descent-override:25.50%;line-gap-override:0.00%;size-adjust:113.73%}.__className_ce197d{font-family:Sora,Sora Fallback;font-style:normal}.__variable_ce197d{--font-heading:"Sora","Sora Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9610d9e46709d722-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/747892c23ea88013-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/93f479601ee12b01-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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_9a8899{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_9a8899{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}[data-theme=light]{--bg:#F2EFE9;--bg-elevated:rgba(255,255,255,0.7);--fg:#1a1a1a;--fg-muted:#6C7A71;--fg-faint:#8a907e;--primary:#2D4F3E;--primary-hover:#243f31;--line:rgba(45,79,62,0.10);--surface:#eae6dd;--code-bg:#f6f5f2;--code-fg:#3b3f46;--inline-code-bg:rgba(45,79,62,0.06);--inline-code-fg:#2D4F3E;--card-bg:rgba(255,255,255,0.88);--card-border:rgba(45,79,62,0.10);--card-hover-border:rgba(45,79,62,0.22);--note-bg:rgba(45,79,62,0.05);--link-underline:rgba(45,79,62,0.3);--nav-bg:#2D4F3E;--nav-fg:#ffffff;--btn-bg:var(--primary);--btn-hover:var(--primary-hover);--hero-gradient:linear-gradient(180deg,var(--bg) 0%,#ebe7df 100%);--section-bg:#ffffff}[data-theme=dark]{--bg:#0c0f0e;--bg-elevated:rgba(20,26,23,0.8);--fg:#e8ece9;--fg-muted:#8a9b91;--fg-faint:#5e6e64;--primary:#6fcfa0;--primary-hover:#5cc08e;--line:#1e2722;--surface:#141a17;--code-bg:#141a17;--code-fg:#c4d4ca;--inline-code-bg:rgba(111,207,160,0.08);--inline-code-fg:#8ac9a0;--card-bg:rgba(255,255,255,0.025);--card-border:#1e2722;--card-hover-border:#6fcfa0;--note-bg:rgba(111,207,160,0.06);--link-underline:rgba(111,207,160,0.3);--nav-bg:#1a2e24;--nav-fg:#e8ece9;--btn-bg:var(--primary);--btn-hover:var(--primary-hover);--hero-gradient:linear-gradient(180deg,var(--bg) 0%,#0a0e0c 100%);--section-bg:#111815}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{transition:background .3s ease}body,html{background:var(--bg)}body{min-height:100vh;color:var(--fg);font-family:var(--font-geist-sans),sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}a{color:inherit}code,pre{font-family:var(--font-geist-mono),monospace}[data-theme=ocean]{--bg:#F5F5F0;--bg-elevated:rgba(255,255,255,0.7);--fg:#1a2a30;--fg-muted:#457B9D;--fg-faint:#6a98af;--primary:#264653;--primary-hover:#1d3640;--line:rgba(38,70,83,0.10);--surface:#eceee9;--code-bg:#f2f3ee;--code-fg:#264653;--inline-code-bg:rgba(38,70,83,0.06);--inline-code-fg:#264653;--card-bg:rgba(255,255,255,0.88);--card-border:rgba(38,70,83,0.10);--card-hover-border:rgba(0,139,139,0.3);--note-bg:rgba(0,139,139,0.05);--link-underline:rgba(0,139,139,0.3);--nav-bg:#264653;--nav-fg:#ffffff;--btn-bg:var(--primary);--btn-hover:var(--primary-hover);--hero-gradient:linear-gradient(180deg,var(--bg) 0%,#e8eae4 100%);--section-bg:#ffffff}:root,[data-theme=carolina]{--bg:#F9FAFB;--bg-elevated:rgba(255,255,255,0.8);--fg:#111827;--fg-muted:#4B5563;--fg-faint:#9CA3AF;--primary:#4A90C2;--primary-hover:#2F6FA3;--line:rgba(74,144,194,0.10);--surface:#F3F4F6;--code-bg:#F3F4F6;--code-fg:#1F2937;--inline-code-bg:rgba(74,144,194,0.07);--inline-code-fg:#1F4E73;--card-bg:rgba(255,255,255,0.9);--card-border:rgba(74,144,194,0.10);--card-hover-border:rgba(74,144,194,0.28);--note-bg:rgba(74,144,194,0.05);--link-underline:rgba(74,144,194,0.3);--nav-bg:#4A90C2;--nav-fg:#ffffff;--btn-bg:#4A90C2;--btn-hover:#2F6FA3;--hero-gradient:linear-gradient(180deg,var(--bg) 0%,#E6F0F8 100%);--section-bg:#ffffff}[data-theme=carolina] .syn-keyword{color:#1F4E73}[data-theme=carolina] .syn-string{color:#b45309}[data-theme=carolina] .syn-type{color:#4A90C2}[data-theme=carolina] .syn-method{color:#6b21a8}[data-theme=carolina] .syn-comment{color:#9CA3AF;font-style:italic}[data-theme=carolina] .syn-number{color:#2F6FA3}.syn-keyword{color:#2D4F3E}.syn-string{color:#b45309}.syn-type{color:#2D4F3E}.syn-method{color:#6b21a8}.syn-comment{color:#9ca3af;font-style:italic}.syn-number{color:#2D4F3E}[data-theme=ocean] .syn-keyword{color:#264653}[data-theme=ocean] .syn-string{color:#b45309}[data-theme=ocean] .syn-type{color:#008B8B}[data-theme=ocean] .syn-method{color:#457B9D}[data-theme=dark] .syn-keyword{color:#6fcfa0}[data-theme=dark] .syn-string{color:#d4a373}[data-theme=dark] .syn-type{color:#6fcfa0}[data-theme=dark] .syn-method{color:#e0c97f}[data-theme=dark] .syn-comment{color:#4a5e52;font-style:italic}[data-theme=dark] .syn-number{color:#8ac9a0}.skill-page{max-width:1040px;margin:0 auto;padding:40px 16px 56px;min-height:100vh;color:var(--fg)}.skill-page__header{margin-bottom:20px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--bg-elevated);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.skill-page h1{font-size:clamp(1.8rem,4vw,2.4rem);margin:0 0 12px;letter-spacing:-.04em}.skill-page__eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.skill-page__lead{margin:0;max-width:70ch;line-height:1.7;color:var(--fg-muted)}.skill-page pre{margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.55;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--fg-muted);padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.15)}