.portfolio-theme--paper{--ink:#202d40;--ink-soft:#536177;--paper:#f7f9fc;--surface:#fff;--soft-border:#ccd5e3;--color-primary:#275baa;--color-primary-hover:#183e79;--color-primary-surface:#dce9ff;--color-secondary:#485271;--color-secondary-hover:#2e3651;--color-secondary-surface:#e5e9f3;--color-tertiary:#2c6070;--color-tertiary-hover:#1d4552;--color-tertiary-surface:#dceff2;--color-accent:#694b2a;--color-accent-surface:#f5e7d3;--theme-page:#e5eaf1;--theme-chrome:#172c48;--theme-width:1120px}.portfolio-theme--ink{--ink:#e3eaf4;--ink-soft:#abbacc;--paper:#0f1722;--surface:#151f2d;--soft-border:#36465b;--color-primary:#9acbff;--color-primary-hover:#cee6ff;--color-primary-surface:#1c3552;--color-secondary:#cfbdf4;--color-secondary-hover:#e9ddff;--color-secondary-surface:#302845;--color-tertiary:#9bdcdd;--color-tertiary-hover:#caf2f0;--color-tertiary-surface:#163c41;--color-accent:#f0cb9e;--color-accent-surface:#423528;--theme-page:#0f1722;--theme-chrome:#0b111b;--theme-width:1360px;--theme-grid-opacity:.15;--theme-color-scheme:dark;--theme-close-filter:invert(1)}.portfolio-theme--graphite{--ink:#26313e;--ink-soft:#586475;--paper:#f6f8fb;--surface:#fbfcfe;--soft-border:#c8d1dc;--color-primary:#245775;--color-primary-hover:#163e56;--color-primary-surface:#dcebf4;--color-secondary:#5e4d73;--color-secondary-hover:#41334f;--color-secondary-surface:#ebe1f3;--color-tertiary:#326565;--color-tertiary-hover:#214b4b;--color-tertiary-surface:#dcecea;--color-accent:#775131;--color-accent-surface:#f2e3d3;--theme-page:#252e3b;--theme-chrome:#111923;--theme-width:1200px}.portfolio-theme--sand{--ink:#37312b;--ink-soft:#6d6155;--paper:#f3eee5;--surface:#fffcf6;--soft-border:#d8cbbc;--color-primary:#7a4c27;--color-primary-hover:#593517;--color-primary-surface:#efdfca;--color-secondary:#705140;--color-secondary-hover:#50372b;--color-secondary-surface:#e9dcd2;--color-tertiary:#3d6260;--color-tertiary-hover:#294846;--color-tertiary-surface:#dde8df;--color-accent:#7a412c;--color-accent-surface:#f1ddce;--theme-page:#f3eee5;--theme-chrome:#4a3b30;--theme-width:1080px}.portfolio-theme--forest{--ink:#dfefe7;--ink-soft:#aec8bc;--paper:#0c211b;--surface:#142f26;--soft-border:#3a5b4c;--color-primary:#a0dfbd;--color-primary-hover:#d0f4dd;--color-primary-surface:#214a3a;--color-secondary:#c5d7f2;--color-secondary-hover:#e3edff;--color-secondary-surface:#293e51;--color-tertiary:#a8e0e6;--color-tertiary-hover:#d0f4f5;--color-tertiary-surface:#20444b;--color-accent:#efc89e;--color-accent-surface:#423526;--theme-page:#091c16;--theme-chrome:#071710;--theme-width:1240px;--theme-color-scheme:dark;--theme-close-filter:invert(1)}.portfolio-theme--lavender{--ink:#302b3c;--ink-soft:#676077;--paper:#f6f3fb;--surface:#fcfbff;--soft-border:#d3cbe3;--color-primary:#654d92;--color-primary-hover:#49356f;--color-primary-surface:#e5dbf6;--color-secondary:#5a4774;--color-secondary-hover:#402f57;--color-secondary-surface:#e9dff4;--color-tertiary:#365c78;--color-tertiary-hover:#26445c;--color-tertiary-surface:#dce9f5;--color-accent:#82573a;--color-accent-surface:#f4e4d6;--theme-page:#e9e5f1;--theme-chrome:#39304f;--theme-width:1160px}.portfolio-theme--blue{--ink:#253b4a;--ink-soft:#526a7a;--paper:#f2f7fb;--surface:#fff;--soft-border:#c8dce9;--color-primary:#205d89;--color-primary-hover:#154565;--color-primary-surface:#dbeefa;--color-secondary:#3f5870;--color-secondary-hover:#293e53;--color-secondary-surface:#e0eaf3;--color-tertiary:#31686a;--color-tertiary-hover:#204b4d;--color-tertiary-surface:#dcefeb;--color-accent:#835431;--color-accent-surface:#f4e4d2;--theme-page:#e5eff7;--theme-chrome:#183a52;--theme-width:1320px;--theme-band:#edf5fb}.portfolio-theme--linen{--ink:#363830;--ink-soft:#64675c;--paper:#faf7ef;--surface:#fffdf8;--soft-border:#d8d3c5;--color-primary:#415f50;--color-primary-hover:#2a4537;--color-primary-surface:#e0e9dc;--color-secondary:#63604b;--color-secondary-hover:#474331;--color-secondary-surface:#ece8d7;--color-tertiary:#3e6677;--color-tertiary-hover:#284b5c;--color-tertiary-surface:#e1ecf0;--color-accent:#865442;--color-accent-surface:#f2e2d6;--theme-page:#eae6dc;--theme-chrome:#383d32;--theme-width:960px}.portfolio-theme--wide{--ink:#1f3438;--ink-soft:#54707a;--paper:#f6fffb;--surface:#fff;--soft-border:#cde7e4;--color-primary:#176d62;--color-primary-hover:#10544d;--color-primary-surface:#c9e9dc;--color-secondary:#655082;--color-secondary-hover:#4d3868;--color-secondary-surface:#ded5f3;--color-tertiary:#285c72;--color-tertiary-hover:#1c4558;--color-tertiary-surface:#cce9f2;--color-accent:#71452c;--color-accent-surface:#f4d4bd;--theme-page:#f1faf6;--theme-chrome:#1b4849;--theme-width:1760px;--theme-grid-opacity:.1;--theme-gutter:clamp(.75rem, 2vw, 2.5rem)}.portfolio-theme--canvas{--ink:#272f3b;--ink-soft:#5e6672;--paper:#f5f7f9;--surface:#fff;--soft-border:#cdd3dc;--color-primary:#2b475f;--color-primary-hover:#1a3147;--color-primary-surface:#e0e8ef;--color-secondary:#454b5a;--color-secondary-hover:#2d3340;--color-secondary-surface:#e7e9ef;--color-tertiary:#455e6b;--color-tertiary-hover:#2c4653;--color-tertiary-surface:#e1eaed;--color-accent:#765334;--color-accent-surface:#f0e5d7;--theme-page:#dce1e8;--theme-chrome:#292f3b;--theme-width:1480px}.portfolio-theme--ink-ivory{--ink:#303b3a;--ink-soft:#56615d;--paper:#f8f6ef;--surface:#fdfcf7;--soft-border:#bfc6bb;--color-primary:#355f50;--color-primary-hover:#254537;--color-primary-surface:#e0e9dd;--color-secondary:#4e5870;--color-secondary-hover:#353e54;--color-secondary-surface:#e3e7ef;--color-tertiary:#365f6b;--color-tertiary-hover:#254550;--color-tertiary-surface:#deeaed;--color-accent:#795362;--color-accent-surface:#f1e2e5;--theme-page:#f8f6ef;--theme-chrome:#eeeee5;--theme-nav-ink:#374941;--theme-header-bg:var(--color-secondary);--theme-header-ink:var(--paper);--theme-header-toggle-filter:none}.portfolio-theme--ink-porcelain{--ink:#343d49;--ink-soft:#59616d;--paper:#fbf8f4;--surface:#fffdfb;--soft-border:#c0c6cd;--color-primary:#3d5f80;--color-primary-hover:#294661;--color-primary-surface:#e1eaf2;--color-secondary:#5e586f;--color-secondary-hover:#413c52;--color-secondary-surface:#e8e2ee;--color-tertiary:#416565;--color-tertiary-hover:#2c4a4a;--color-tertiary-surface:#dfeceb;--color-accent:#77545c;--color-accent-surface:#f1e3e6;--theme-page:#fbf8f4;--theme-chrome:#eeece8;--theme-nav-ink:#37495b}.portfolio-theme--ink-peach{--ink:#41404a;--ink-soft:#625b60;--paper:#fcf3ed;--surface:#fffaf6;--soft-border:#cbbdb8;--color-primary:#8a504b;--color-primary-hover:#643b37;--color-primary-surface:#f1ddd7;--color-secondary:#525e6c;--color-secondary-hover:#394452;--color-secondary-surface:#e3e8ec;--color-tertiary:#3b675d;--color-tertiary-hover:#284a42;--color-tertiary-surface:#deebe3;--color-accent:#805267;--color-accent-surface:#f1e1ea;--theme-page:#fcf3ed;--theme-chrome:#f2e5df;--theme-nav-ink:#584348}.portfolio-theme--ink-sage{--ink:#35413a;--ink-soft:#566257;--paper:#f4f6ee;--surface:#fcfdf6;--soft-border:#bcc8b7;--color-primary:#38664f;--color-primary-hover:#254b38;--color-primary-surface:#dde9dc;--color-secondary:#4a626b;--color-secondary-hover:#324851;--color-secondary-surface:#dfebed;--color-tertiary:#3f5d79;--color-tertiary-hover:#2b425b;--color-tertiary-surface:#dee7f1;--color-accent:#76535e;--color-accent-surface:#efdfe3;--theme-page:#f4f6ee;--theme-chrome:#e7ece0;--theme-nav-ink:#394d3f}.portfolio-theme--ink-mist{--ink:#393d47;--ink-soft:#5f5d68;--paper:#f7f4f0;--surface:#fdfbf8;--soft-border:#c3c1c8;--color-primary:#625676;--color-primary-hover:#473c59;--color-primary-surface:#e8e1ed;--color-secondary:#4c5d74;--color-secondary-hover:#344258;--color-secondary-surface:#dfe7f0;--color-tertiary:#46665c;--color-tertiary-hover:#304b42;--color-tertiary-surface:#dee8df;--color-accent:#7d5360;--color-accent-surface:#f0e0e5;--theme-page:#f7f4f0;--theme-chrome:#eee7e8;--theme-nav-ink:#45414f}.portfolio-theme--ink-oat{--ink:#393f43;--ink-soft:#5c6261;--paper:#f7f4e8;--surface:#fffdf4;--soft-border:#c4c4b8;--color-primary:#365e65;--color-primary-hover:#25444a;--color-primary-surface:#dfeaec;--color-secondary:#4d5d72;--color-secondary-hover:#354358;--color-secondary-surface:#e4e8ef;--color-tertiary:#3f5f7b;--color-tertiary-hover:#2c455c;--color-tertiary-surface:#dee9f3;--color-accent:#80505d;--color-accent-surface:#f0dfe4;--theme-page:#f7f4e8;--theme-chrome:#ece9dc;--theme-nav-ink:#434b49}:is(.portfolio-theme--ink-ivory,.portfolio-theme--ink-porcelain,.portfolio-theme--ink-peach,.portfolio-theme--ink-sage,.portfolio-theme--ink-mist,.portfolio-theme--ink-oat){--theme-width:1360px;--theme-grid-opacity:.28;--theme-toggle-filter:invert(1)}.portfolio-theme--parchment{--ink:#393028;--ink-soft:#605143;--paper:#ecdfc8;--surface:#f5ead7;--soft-border:#b7a386;--color-primary:#68442e;--color-primary-hover:#482d1d;--color-primary-surface:#e1c9a9;--color-secondary:#414f5c;--color-secondary-hover:#2b3640;--color-secondary-surface:#dce1df;--color-tertiary:#46563e;--color-tertiary-hover:#2e3c28;--color-tertiary-surface:#dce0ca;--color-accent:#713e35;--color-accent-surface:#ebcec0;--theme-page:#ecdfc8;--theme-chrome:#dfcdaf;--theme-nav-ink:#493b2e}.portfolio-theme--parchment-toasted,.portfolio-theme--parchment-sheet{--ink:#352c25;--ink-soft:#594938;--paper:#dfcbae;--surface:#eee0c9;--soft-border:#aa9072;--color-primary:#603c28;--color-primary-hover:#422719;--color-primary-surface:#d5b48e;--color-secondary:#485039;--color-secondary-hover:#303724;--color-secondary-surface:#d8d9bc;--color-tertiary:#3c5260;--color-tertiary-hover:#273944;--color-tertiary-surface:#d4dedf;--color-accent:#703c35;--color-accent-surface:#e6c4b4;--theme-page:#dfcbae;--theme-chrome:#cdb594;--theme-nav-ink:#403226}.portfolio-theme--parchment-sepia,.portfolio-theme--parchment-sepia-frame{--ink:#2e261f;--ink-soft:#44382c;--paper:#cdb590;--surface:#e2ceb0;--soft-border:#947858;--color-primary:#51321f;--color-primary-hover:#362014;--color-primary-surface:#c6a078;--color-secondary:#343f48;--color-secondary-hover:#222c33;--color-secondary-surface:#c8d0cd;--color-tertiary:#39452b;--color-tertiary-hover:#252f1b;--color-tertiary-surface:#c5c9a7;--color-accent:#62352a;--color-accent-surface:#dcb09a;--theme-page:#cdb590;--theme-chrome:#bca17b;--theme-nav-ink:#32271d}.portfolio-theme--parchment-olive,.portfolio-theme--parchment-olive-sheet{--ink:#35352a;--ink-soft:#555241;--paper:#e2d6bd;--surface:#efe7d4;--soft-border:#a8a084;--color-primary:#485034;--color-primary-hover:#303723;--color-primary-surface:#d1d3b5;--color-secondary:#5d4538;--color-secondary-hover:#402e25;--color-secondary-surface:#dfcbbb;--color-tertiary:#3b5260;--color-tertiary-hover:#273945;--color-tertiary-surface:#d5dfdf;--color-accent:#6a3b36;--color-accent-surface:#e7c9b9;--theme-page:#e2d6bd;--theme-chrome:#d1c6a8;--theme-nav-ink:#3d3e2c}:is(.portfolio-theme--parchment,.portfolio-theme--parchment-toasted,.portfolio-theme--parchment-sepia,.portfolio-theme--parchment-olive){--theme-width:1360px;--theme-grid-opacity:.24;--theme-toggle-filter:invert(1)}:is(.portfolio-theme--parchment-sheet,.portfolio-theme--parchment-sepia-frame,.portfolio-theme--parchment-olive-sheet){--theme-grid-opacity:0;--theme-content-grid:color-mix(in srgb, var(--soft-border) 24%, transparent);--theme-chrome:var(--theme-page);--theme-toggle-filter:invert(1);--theme-gutter:clamp(1.5rem, 4vw, 4rem)}.portfolio-theme--parchment-sheet{--theme-page:#faf8f2;--theme-width:1200px;--theme-frame-radius:.65rem}.portfolio-theme--parchment-sepia-frame{--theme-page:#f3f1ec;--theme-width:1400px;--theme-frame-radius:.15rem;--theme-frame-width:2px}.portfolio-theme--parchment-olive-sheet{--theme-page:#fbfaf5;--theme-width:1080px;--theme-frame-radius:.85rem}.public-shell.portfolio-themed{--bs-body-color:var(--ink);--bs-emphasis-color:var(--ink);--bs-secondary-color:var(--ink-soft);--bs-body-bg:var(--surface);--bs-border-color:var(--soft-border);--pink:var(--color-accent-surface);--cyan:var(--color-tertiary-surface);--yellow:var(--color-accent-surface);--green:var(--color-primary-surface);--orange:var(--color-accent-surface);--violet:var(--color-secondary-surface);--blue:var(--color-tertiary-surface);--theme-chrome-ink:var(--theme-nav-ink,#f0f5fb);--theme-code-ink:#e8edf4;--theme-code-bg:#17202e;--theme-inset:clamp(1rem, 3vw, 3rem);color:var(--ink);background:var(--theme-page);color-scheme:var(--theme-color-scheme,light);overflow-x:clip}.portfolio-themed:before{background-image:linear-gradient(var(--soft-border) 1px, transparent 1px), linear-gradient(90deg, var(--soft-border) 1px, transparent 1px);opacity:var(--theme-grid-opacity,0)}.public-shell.portfolio-themed .container{max-width:var(--theme-width)}.public-shell.portfolio-themed>main{width:calc(100% - 2 * var(--theme-gutter,2rem));min-width:0;padding-inline:var(--theme-inset);padding-block:var(--theme-inset)!important}.portfolio-themed.portfolio-surface--sheet>main{border:1px solid var(--soft-border);background:var(--surface);border-radius:.85rem;margin-block:2rem}.portfolio-themed.portfolio-surface--frame>main{border:2px solid var(--soft-border);background:var(--surface);border-radius:.25rem;margin-block:1.5rem}.portfolio-themed.portfolio-surface--bands>main{background:var(--surface);margin-block:1.5rem}.portfolio-themed.portfolio-surface--parchment>main{border:var(--theme-frame-width,1px) solid var(--soft-border);border-radius:var(--theme-frame-radius);background-color:var(--paper);background-image:linear-gradient(var(--theme-content-grid) 1px, transparent 1px), linear-gradient(90deg, var(--theme-content-grid) 1px, transparent 1px);background-size:26px 26px;margin-block:clamp(1.25rem,3vw,3rem)}.portfolio-surface--bands .flow-hero{border-block:1px solid var(--soft-border);background:var(--theme-band);padding:clamp(1.25rem,3vw,2.5rem)}.portfolio-surface--bands .portfolio-switcher{background:var(--theme-band);padding:1rem 1.25rem}.portfolio-themed .flow-hero:before,.portfolio-themed .flow-hero:after,.portfolio-themed .article-shell:before{background:radial-gradient(circle, var(--color-primary-surface), transparent);opacity:.12}.portfolio-themed>.top-nav,.portfolio-themed>.site-footer{color:var(--theme-chrome-ink);background:var(--theme-chrome);border-color:var(--soft-border)}.portfolio-themed>.top-nav{--theme-chrome-ink:var(--theme-header-ink,var(--theme-nav-ink,#f0f5fb));background:var(--theme-header-bg,var(--theme-chrome))}.portfolio-themed .top-nav :is(.navbar-brand,.nav-link),.portfolio-themed .footer-legal-links a{color:var(--theme-chrome-ink)}.portfolio-themed .navbar-toggler{color:var(--theme-chrome-ink);border-color:color-mix(in srgb, var(--theme-chrome-ink) 35%, transparent)}.portfolio-themed .navbar-toggler-icon{filter:var(--theme-header-toggle-filter,var(--theme-toggle-filter,none))}.portfolio-themed .top-nav :is(.navbar-brand,.nav-link):is(:hover,:focus-visible),.portfolio-themed .footer-legal-links a:is(:hover,:focus-visible){color:var(--theme-chrome-ink);text-underline-offset:.25em;text-decoration:underline}.portfolio-themed :is(.top-nav,.site-footer) :focus-visible{outline:2px solid var(--theme-chrome-ink);outline-offset:4px}.portfolio-themed :is(.writing-date,.mono-label,.profile-section .experience-company){color:var(--color-accent);background:var(--color-accent-surface)}.portfolio-themed .writing-list--compact .writing-date{color:var(--color-accent);background:var(--color-accent-surface);box-shadow:none}.portfolio-themed :is(.context-description,.tldr-line){color:var(--color-accent);background:var(--color-accent-surface)}.portfolio-themed :is(.flow-section,.profile-section):before{background:var(--color-primary)}.public-shell.portfolio-themed main a.subcategory-link{background:var(--color-tertiary-surface)}.portfolio-themed .reading-sidebar{color:var(--ink);background:var(--surface)}.portfolio-themed .reading-sidebar .btn-close{filter:var(--theme-close-filter,none)}.portfolio-themed :is(.category-link,.pill-tag){color:var(--color-tertiary);background:var(--color-tertiary-surface);border-color:var(--soft-border)}.portfolio-themed .markdown-body pre{color:var(--theme-code-ink);background:var(--theme-code-bg);border-color:var(--soft-border)}.portfolio-themed .post-content pre>code:not(.hljs){color:var(--theme-code-ink)}.portfolio-themed .post-content :not(pre)>code{color:var(--color-secondary);background:var(--color-secondary-surface)}.public-shell.portfolio-themed :is(.btn,main a):focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;box-shadow:none}.portfolio-themed .cookie-consent__button:hover{color:var(--color-primary);background:var(--color-primary-surface)}.portfolio-themed :is(.cookie-consent,.cookie-settings) :focus-visible{outline-color:var(--color-primary)}.portfolio-theme-picker{flex-basis:100%;min-width:0}.portfolio-theme-picker summary{cursor:pointer;width:fit-content;padding:.35rem 0}.portfolio-theme-picker summary:focus-visible,.portfolio-design-picker summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.portfolio-theme-intro{margin-block:1rem .5rem}.portfolio-theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.portfolio-theme-option{border-top:1px solid var(--soft-border);grid-template-columns:3.5rem minmax(0,1fr);gap:.75rem;height:100%;padding-block:.65rem;display:grid}.portfolio-theme-option[aria-current=true]{outline-offset:4px;outline:2px solid}.portfolio-theme-description{color:var(--ink-soft);margin-top:.3rem;font-weight:400;line-height:1.6;display:block}.portfolio-theme-swatch{border:1px solid var(--soft-border);border-radius:.25rem;grid-template-columns:repeat(2,1fr);height:3rem;display:grid;overflow:hidden}.portfolio-theme-swatch i:first-child{background:var(--theme-page)}.portfolio-theme-swatch i:nth-child(2){background:var(--theme-swatch-content,var(--surface))}.portfolio-theme-swatch:is(.portfolio-theme--parchment-sheet,.portfolio-theme--parchment-sepia-frame,.portfolio-theme--parchment-olive-sheet){--theme-swatch-content:var(--paper)}.portfolio-theme-swatch i:nth-child(3){background:var(--color-primary)}.portfolio-theme-swatch i:nth-child(4){background:var(--color-secondary-surface)}@media (width<=767.98px){.public-shell.portfolio-themed>main{width:calc(100% - 1.25rem);padding-inline:1rem;padding-block:1.5rem!important}.portfolio-themed.portfolio-surface--sheet>main,.portfolio-themed.portfolio-surface--frame>main,.portfolio-themed.portfolio-surface--bands>main,.portfolio-themed.portfolio-surface--parchment>main{margin-block:.75rem}.portfolio-theme-options{grid-template-columns:minmax(0,1fr)}}