.base-table-container{overflow-x:auto;margin:2rem 0;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.base-table-title{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:var(--dark)}.base-table{width:100%;border-collapse:collapse;background:var(--light);font-size:.95rem}.base-table thead{background:var(--secondary);color:var(--dark);font-weight:600;position:sticky;top:0;z-index:10}.base-table th,.base-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--outlinegray)}.base-table th{cursor:default;user-select:none;white-space:nowrap}.base-table th:hover{background:var(--darkgray)}.base-table tbody tr{transition:background .15s ease}.base-table tbody tr:hover{background:var(--lightgray)}.base-table tbody tr:last-child td{border-bottom:none}.base-table td{vertical-align:top}.base-cards-container{margin:2rem 0}.base-cards-title{font-size:1.2rem;font-weight:600;margin-bottom:1.5rem;color:var(--dark)}.base-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.base-card{background:var(--light);border:1px solid var(--outlinegray);border-radius:8px;padding:1.25rem;transition:transform .2s ease,box-shadow .2s ease}.base-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.base-card-title{font-size:1.1rem;font-weight:600;margin:0 0 1rem;color:var(--dark)}.base-card-content{font-size:.9rem}.base-card-field{margin-bottom:.5rem}.base-card-field strong{color:var(--gray);margin-right:.5rem}.base-list-container{margin:2rem 0}.base-list-title{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:var(--dark)}.base-list{list-style:none;padding:0;margin:0}.base-list-item{padding:.75rem 0;border-bottom:1px solid var(--outlinegray)}.base-list-item:last-child{border-bottom:none}.base-list-item strong{color:var(--dark);font-weight:600}.base-list-properties{color:var(--gray);font-size:.9rem;margin-left:.5rem}@media(max-width:768px){.base-table{font-size:.85rem}.base-table th,.base-table td{padding:.5rem}.base-cards-grid{grid-template-columns:1fr}.base-card{padding:1rem}.base-table-container{margin:1rem 0}}[saved-theme=dark] .base-table{background:var(--light)}[saved-theme=dark] .base-table thead{background:var(--secondary)}[saved-theme=dark] .base-table tbody tr:hover{background:var(--darkgray)}[saved-theme=dark] .base-card{background:var(--light);border-color:var(--lightgray)}[saved-theme=dark] .base-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.3)}@font-face{font-family:atkinson hyperlegible;font-display:swap;font-weight:400;font-style:normal;src:url(/brain/fonts/woff2/Atkinson-Hyperlegible-Regular-102a.woff2)format("woff2")}@font-face{font-family:atkinson hyperlegible;font-display:swap;font-weight:400;font-style:italic;src:url(/brain/fonts/woff2/Atkinson-Hyperlegible-Italic-102a.woff2)format("woff2")}@font-face{font-family:atkinson hyperlegible;font-display:swap;font-weight:700;font-style:normal;src:url(/brain/fonts/woff2/Atkinson-Hyperlegible-Bold-102a.woff2)format("woff2")}@font-face{font-family:atkinson hyperlegible;font-display:swap;font-weight:700;font-style:italic;src:url(/brain/fonts/woff2/Atkinson-Hyperlegible-BoldItalic-102a.woff2)format("woff2")}@font-face{font-family:atkinson fallback;font-style:normal;font-weight:400;src:local("Arial"),local("Liberation Sans"),local("Arimo"),local("Helvetica Neue"),local("Helvetica");ascent-override:80.38%;descent-override:25.35%;line-gap-override:15.15%;size-adjust:99.03%}@font-face{font-family:atkinson fallback;font-style:normal;font-weight:700;src:local("Arial Bold"),local("Liberation Sans Bold"),local("Arimo Bold"),local("Helvetica Neue Bold"),local("Helvetica Bold");ascent-override:79.6%;descent-override:25.1%;line-gap-override:15%;size-adjust:100%}@font-face{font-family:atkinson fallback;font-style:italic;font-weight:400;src:local("Arial Italic"),local("Liberation Sans Italic"),local("Arimo Italic"),local("Helvetica Neue Italic"),local("Helvetica Oblique");ascent-override:80.38%;descent-override:25.35%;line-gap-override:15.15%;size-adjust:99.03%}@font-face{font-family:atkinson fallback;font-style:italic;font-weight:700;src:local("Arial Bold Italic"),local("Liberation Sans Bold Italic"),local("Arimo Bold Italic"),local("Helvetica Neue Bold Italic"),local("Helvetica Bold Oblique");ascent-override:79.6%;descent-override:25.1%;line-gap-override:15%;size-adjust:100%}@font-face{font-family:iosevka web;font-display:swap;font-weight:400;font-stretch:normal;font-style:normal;src:url(/brain/fonts/woff2/iosevka-regular-latin.woff2)format("woff2");unicode-range:U+0-17F,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+FB00-FB4F}@font-face{font-family:iosevka web;font-display:swap;font-weight:400;font-stretch:normal;font-style:normal;src:url(/brain/fonts/woff2/iosevka-regular.woff2)format("woff2");unicode-range:U+180-1FFF,U+2070-209F,U+20D0-218F,U+2200-10FFFF}@font-face{font-family:iosevka web;font-display:swap;font-weight:400;font-stretch:normal;font-style:italic;src:url(/brain/fonts/woff2/iosevka-italic-latin.woff2)format("woff2");unicode-range:U+0-17F,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+FB00-FB4F}@font-face{font-family:iosevka web;font-display:swap;font-weight:400;font-stretch:normal;font-style:italic;src:url(/brain/fonts/woff2/iosevka-italic.woff2)format("woff2");unicode-range:U+180-1FFF,U+2070-209F,U+20D0-218F,U+2200-10FFFF}@font-face{font-family:iosevka web;font-display:swap;font-weight:700;font-stretch:normal;font-style:normal;src:url(/brain/fonts/woff2/iosevka-bold-latin.woff2)format("woff2");unicode-range:U+0-17F,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+FB00-FB4F}@font-face{font-family:iosevka web;font-display:swap;font-weight:700;font-stretch:normal;font-style:normal;src:url(/brain/fonts/woff2/iosevka-bold.woff2)format("woff2");unicode-range:U+180-1FFF,U+2070-209F,U+20D0-218F,U+2200-10FFFF}@font-face{font-family:iosevka web;font-display:swap;font-weight:700;font-stretch:normal;font-style:italic;src:url(/brain/fonts/woff2/iosevka-bolditalic-latin.woff2)format("woff2");unicode-range:U+0-17F,U+2000-206F,U+20A0-20CF,U+2190-21FF,U+FB00-FB4F}@font-face{font-family:iosevka web;font-display:swap;font-weight:700;font-stretch:normal;font-style:italic;src:url(/brain/fonts/woff2/iosevka-bolditalic.woff2)format("woff2");unicode-range:U+180-1FFF,U+2070-209F,U+20D0-218F,U+2200-10FFFF}@font-face{font-family:iosevka fallback;font-style:normal;font-weight:400;src:local("Courier New"),local("Liberation Mono"),local("DejaVu Sans Mono"),local("Cousine"),local("Menlo");ascent-override:115.8%;descent-override:34.2%;line-gap-override:0%;size-adjust:83.33%}@font-face{font-family:iosevka fallback;font-style:normal;font-weight:700;src:local("Courier New Bold"),local("Liberation Mono Bold"),local("DejaVu Sans Mono Bold"),local("Cousine Bold"),local("Menlo Bold");ascent-override:115.8%;descent-override:34.2%;line-gap-override:0%;size-adjust:83.33%}@font-face{font-family:iosevka fallback;font-style:italic;font-weight:400;src:local("Courier New Italic"),local("Liberation Mono Italic"),local("DejaVu Sans Mono Oblique"),local("Cousine Italic"),local("Menlo Italic");ascent-override:115.8%;descent-override:34.2%;line-gap-override:0%;size-adjust:83.33%}@font-face{font-family:iosevka fallback;font-style:italic;font-weight:700;src:local("Courier New Bold Italic"),local("Liberation Mono Bold Italic"),local("DejaVu Sans Mono Bold Oblique"),local("Cousine Bold Italic"),local("Menlo Bold Italic");ascent-override:115.8%;descent-override:34.2%;line-gap-override:0%;size-adjust:83.33%}:root{--font-body:'Atkinson Hyperlegible', 'Atkinson Fallback', 'Piazzolla, serif;', 'Open Sans', sans-serif, system-ui, -apple-system, BlinkMacSystemFont, PingFang SC, Microsoft YaHei UI, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, Helvetica, Arial !important;--font-header:'Iosevka Web', 'Iosevka Fallback', 'Atkinson Hyperlegible', 'Atkinson Fallback', 'Inter';--font-mono:'Iosevka Web', 'Iosevka Fallback', 'Fira Code', 'Open Sans', monospace}html{scroll-behavior:smooth}html:lang(ar) p,html:lang(ar) h1,html:lang(ar) h2,html:lang(ar) h3,html:lang(ar) article,html:lang(ar) header{direction:rtl;text-align:right}html footer>p{text-align:center!important}.singlePageOrig{padding:4em 30vw}@media all and (max-width:1200px){.singlePageOrig{padding:25px 5vw}}.singlePage{display:flex;justify-content:center;margin:2em 12vw 0;padding:1vh 1.5em 2em;background-color:var(--global-background-secondary-color);border-radius:20px}@media all and (max-width:1200px){.singlePage{flex-direction:column;margin:.5em 5vw 0;padding:1vh 1em 2em;border-radius:12px}}body{margin:0;height:100vh;width:100vw;max-width:100%;box-sizing:border-box;background-color:var(--global-background-color)}h1,h2,h3,h4,h5,h6,thead{font-family:var(--font-header);color:var(--dark);font-weight:revert;margin:2rem 0 0;padding:2rem auto 1rem}h1:hover>.hanchor,h2:hover>.hanchor,h3:hover>.hanchor,h4:hover>.hanchor,h5:hover>.hanchor,h6:hover>.hanchor,thead:hover>.hanchor{color:var(--secondary)}.hanchor{font-family:var(--font-header);opacity:.8;transition:color .3s ease;color:var(--dark)}p,ul,text,a,tr,td,li,ol,ul{font-family:var(--font-body);color:var(--gray);fill:var(--gray);font-weight:revert;margin:revert;padding:revert}tbody,li,p{line-height:1.6em;font-size:1em;font-optical-sizing:auto;font-variant-numeric:oldstyle-nums proportional-nums}.mainTOC{border-radius:5px;padding:.75em 0}.mainTOC details summary{cursor:zoom-in;font-family:var(--font-header);color:var(--dark);font-weight:700;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.5em}.mainTOC details summary::-webkit-details-marker{display:none}.mainTOC details summary::after{content:"\203A";font-size:1.1em;line-height:1;opacity:.7;transition:transform .2s ease}.mainTOC details[open] summary{cursor:zoom-out}.mainTOC details[open] summary::after{transform:rotate(90deg)}.backlinks-container .mainTOC{padding:0}.backlinks-container .mainTOC details summary{font-size:.95em}.backlinks-container .mainTOC #TableOfContents{font-size:.9em}.backlinks-container .mainTOC #TableOfContents ul,.backlinks-container .mainTOC #TableOfContents ol{list-style:none;padding-left:.5em;margin:.4em 0}.backlinks-container .mainTOC #TableOfContents li{margin:.15em 0}.backlinks-container .mainTOC #TableOfContents a{text-decoration:none;color:var(--secondary);transition:color .15s ease}.backlinks-container .mainTOC #TableOfContents a:hover{color:var(--secondary)}.backlinks-container .mainTOC #TableOfContents a.toc-active{color:var(--dark);font-weight:600}@media all and (max-width:1200px){.mainTOC{display:none}}[saved-theme=dark] .mainTOC #TableOfContents a.toc-active{color:var(--outlinegray)}table{border:1px solid var(--outlinegray);width:100%;padding:1.5em;border-collapse:collapse}td,th{padding:.2em 1em;border:1px solid var(--outlinegray)}img{max-width:100%;height:auto;border-radius:3px;margin:1em 0}p>img+em{display:block;transform:translateY(-1em)}sup{line-height:0}blockquote{margin-left:0;border-left:3px solid var(--secondary);padding-left:1em;transition:border-color .2s ease}.footnotes p{margin:.5em 0}.pagination{list-style:none;padding-left:0;display:flex;margin-top:2em;gap:1.5em;justify-content:center}.pagination .disabled{opacity:.2}.pagination>li{text-align:center;display:inline-block}.pagination>li a{background-color:transparent!important}.pagination>li a[href$="#"],.pagination>li.active a{opacity:.2}article>h1{margin-top:.6em;padding-top:0;font-size:1.8em}article>.meta{margin:0 0 1em;opacity:.7}article>.meta .meta-label-short{display:none}@media all and (max-width:600px){article>.meta .meta-label-full{display:none}article>.meta .meta-label-short{display:inline}}article a{font-weight:600}article a.internal-link{text-decoration:none;background-color:rgba(210,126,153,.15);padding:0 .1em;margin:auto -.1em;border-radius:3px}article a.internal-link.broken{opacity:.5;background-color:transparent}article p{overflow-wrap:anywhere}.tags{list-style:none;padding-left:0}.tags .meta{margin:1.5em 0}.tags .meta>h1,.tags .meta>h2.tag-title{margin:0}.tags .meta>p{margin:0}.tags>li{display:inline-block;margin:.4em .2em}.tags>li>a{border-radius:8px;border:var(--outlinegray)1px solid;padding:.2em .5em}.tags>li>a::before{content:"#";margin-right:.3em;color:var(--outlinegray)}.backlinks a{font-weight:600;font-size:.9rem}sup>a{text-decoration:none;padding:0 .1em 0 .2em}#page-title{margin:0;white-space:nowrap}#page-title>a{font-family:var(--font-header)}.header-title{margin:0;font-size:2em;font-weight:700}.header-title>a{font-family:var(--font-header)}a{font-size:1em;font-weight:700;text-decoration:none;transition:all .2s ease;color:var(--secondary)}a:hover{color:var(--tertiary)!important}pre{font-family:var(--font-mono);padding:.75em;border-radius:5px;overflow-x:scroll}pre.mermaid{overflow-x:visible}.highlight{border:1px solid var(--outlinegray);border-radius:5px;overflow:hidden}code{font-family:var(--font-mono);font-size:.85em;padding:.15em .3em;border-radius:5px;background:var(--lightgray)}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}footer{margin-top:4em;text-align:center}footer ul{padding-left:0}hr{width:25%;margin:4em auto;height:2px;border-radius:1px;border-width:0;color:var(--dark);background-color:var(--dark)}.backlinks-container{display:flex;flex-direction:column;gap:1.25em;padding-left:1rem;position:sticky;top:0;max-height:100vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--outlinegray)transparent;padding-right:1vw;padding-top:5vh;padding-bottom:2vh;min-width:10rem;mask-image:linear-gradient(to bottom,black calc(100% - 2.5rem),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 2.5rem),transparent 100%)}.backlinks-container::-webkit-scrollbar{width:6px}.backlinks-container::-webkit-scrollbar-thumb{background:var(--outlinegray);border-radius:3px}@media all and (max-width:780px){.backlinks-container{position:static;max-height:none;overflow-y:visible;mask-image:none;-webkit-mask-image:none;padding-top:0}}.backlinks-container>ul,.backlinks-container .backlinks-details>ul{list-style:none;padding:0;margin:0}.backlinks-container .backlinks-details>ul{padding-left:.5em}.backlinks-container>ul>li,.backlinks-container .backlinks-details>ul>li{margin:.15em 0;padding:.1em 0;border:none;border-radius:0;line-height:1.35}.backlinks-container>h3{margin:0;padding:0;font-size:1em}.backlinks-container .backlinks-details>summary{cursor:zoom-in;font-family:var(--font-header);color:var(--dark);font-weight:700;font-size:.95em;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.5em;margin-bottom:.4em}.backlinks-container .backlinks-details>summary::-webkit-details-marker{display:none}.backlinks-container .backlinks-details>summary::after{content:"\203A";font-size:1.1em;line-height:1;opacity:.7;transition:transform .2s ease}.backlinks-container .backlinks-details[open]>summary{cursor:zoom-out}.backlinks-container .backlinks-details[open]>summary::after{transform:rotate(90deg)}.page-end{display:flex;flex-direction:row;gap:2em}@media all and (max-width:780px){.page-end{flex-direction:column}}.page-end>*{flex:1 0}.page-end .graph-wrapper{position:relative;border:var(--outlinegray)1px solid;border-radius:5px;box-sizing:border-box;min-height:400px;margin:.5em 0;overflow:hidden}.page-end #graph-container{min-height:400px}.page-end #graph-container>svg{margin-bottom:-5px}.rss-footer-link{display:flex;justify-content:center;margin:1em 0 .5em}.rss-footer-link a{display:inline-flex;color:var(--gray);opacity:.55;transition:opacity .2s ease,color .2s ease}.rss-footer-link a:hover{opacity:1;color:#d27e99}.centered{margin-top:30vh}.spacer{flex:auto}.header-fullwidth{background-color:var(--global-background-secondary-color);padding:.75em 12vw;margin:0;border-radius:0}@media all and (max-width:1200px){.header-fullwidth{padding:.75em 5vw}}.header-fullwidth>header{margin:0}.ssp-brand-logo{position:absolute;left:1.5vw;display:inline-flex;align-items:center;flex-shrink:0}.ssp-brand-logo img{height:38px;width:auto;margin:0;border-radius:4px;flex-shrink:0}@media all and (max-width:1200px){.ssp-brand-logo{position:static;left:auto;margin-right:.45em}}.header-icon--vault{display:none}:root[data-section=vault] .header-icon--brain{display:none}:root[data-section=vault] .header-icon--vault{display:inline-block}@media all and (max-width:1200px){#page-title{display:none}}.header-divider{display:inline-block;width:1px;height:1.2em;background-color:var(--gray);opacity:.35;margin:0 .6em;align-self:center}@media all and (max-width:768px){.header-divider{display:none}}@media all and (max-width:768px){header{position:relative}header>.icon-links,header .header-divider,header .newsletter,header .darkmode{display:none!important}header #search-icon{order:4;margin-left:auto;margin-right:.6em}header>.menu-toggle{order:5}}header{display:flex;flex-direction:row;align-items:center;margin:1em 0 2em}header>h1,header>.header-title{font-size:1.5em}@media all and (max-width:600px){header>nav{display:none}}header #search-icon{background-color:var(--header-background-color);border-radius:8px;height:2em;display:flex;align-items:center;cursor:pointer}header #search-icon>p{display:inline;padding:0 0 0 .8em;word-wrap:normal}@media screen and (min-width:768px){header #search-icon>p{padding:0 2em 0 2.5em}}header svg{cursor:pointer;width:18px;min-width:18px;margin:0 .2em}header svg:hover .search-path{stroke:var(--tertiary)}header svg .search-path{stroke:var(--gray);stroke-width:2px;transition:stroke .5s ease}.section-ul{list-style:none;margin-top:2em;padding-left:0}.section-li{margin-bottom:1em}.section-li>.section{display:flex;align-items:center}@media all and (max-width:600px){.section-li>.section .tags{display:none}}.section-li>.section h3>a{font-weight:700;margin:0}.section-li>.section p{margin:0;padding-right:1em;flex-basis:6em}.section-li h3{opacity:1;font-weight:700;margin:0}.section-li .meta{opacity:.6}@keyframes dropin{0%{display:none;opacity:0;visibility:hidden}1%{display:inline-block;opacity:0}100%{opacity:1;visibility:visible}}.popover{z-index:999;position:absolute;width:20rem;display:none;background-color:var(--light);padding:1rem;margin:1rem;border:1px solid var(--outlinegray);border-radius:5px;pointer-events:none;transition:opacity .2s ease,transform .2s ease;user-select:none;overflow-wrap:anywhere;box-shadow:6px 6px 36px rgba(0,0,0,.25)}@media all and (max-width:600px){.popover{display:none!important}}.popover.visible{opacity:1;visibility:visible;display:inline-block;animation:dropin .2s ease}.popover>h3{font-size:1rem;margin:.25rem 0}.popover>.meta{margin-top:.25rem;opacity:.5;font-family:var(--font-mono);font-size:.8rem}.popover>p{margin:0;padding:.5rem 0}.popover>p,.popover>a{font-size:1rem;font-weight:400;user-select:none}#contact_buttons{text-align:center;padding:1em 12vw 1.5em;font-family:var(--font-body);color:#161209}@media all and (max-width:1200px){#contact_buttons{padding:1em 5vw 1.5em}}#contact_buttons footer{width:100%;margin:3rem 0 1rem;line-height:1.25rem}#contact_buttons .footer-container{font-size:.875rem}#contact_buttons .footer-line{width:100%}#contact_buttons a{font-weight:400;color:#3150aa}#contact_buttons a:hover{color:#d27e99!important}[saved-theme=dark] #contact_buttons{color:#dcd7ba}[saved-theme=dark] #contact_buttons a{color:var(--secondary)}#webmentions{margin:0;position:relative;z-index:100;line-height:1.2em}#webmentions .comments{max-height:20em;overflow-x:hidden;overflow-y:scroll;font-size:80%}#webmentions h3{padding:2px}#webmentions .reacts img{margin:3px -1ex 1px 0}#webmentions img.missing{background:#fff;border:dashed #000 1px}#webmentions ul{list-style-type:none;padding-left:10px;padding-top:5px}#webmentions li{text-indent:-1em;padding-left:1em}#webmentions a.reaction{position:relative;text-decoration:none;text-shadow:0 0 3px #fff;margin-right:0;letter-spacing:-1ex;margin-right:1ex}#webmentions a.reaction img{max-height:1.3em;width:auto;margin-right:-1ex;border-radius:25%}#webmentions a.reaction sub{font-size:50%}#webmentions .comments li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#webmentions .comments li .text{color:#555;font-style:italic;text-decoration:none}.clipboard-button{position:absolute;display:flex;float:right;right:0;padding:.69em;margin:.5em;color:var(--outlinegray);border-color:var(--dark);background-color:var(--lightgray);filter:contrast(1.1);border:2px solid;border-radius:6px;font-size:.8em;z-index:1;opacity:0;transition:.12s}.clipboard-button>svg{fill:var(--light);filter:contrast(.3)}.clipboard-button:hover{cursor:pointer;border-color:var(--primary)}.clipboard-button:hover>svg{fill:var(--primary)}.clipboard-button:focus{outline:0}.highlight{position:relative}.highlight:hover>.clipboard-button{opacity:1;transition:.2s}.code-title{color:var(--primary);font-family:var(--font-mono);width:max-content;overflow-x:auto;display:inline-block;vertical-align:middle;font-weight:400;line-height:1em;position:relative;padding:.5em .6em .6em;max-width:calc(100% - 1.2em);margin-bottom:0;border:1px solid var(--outlinegray);border-bottom:none;border-top-left-radius:5px;border-top-right-radius:5px;font-size:.9em;background-color:var(--lightgray);filter:hue-rotate(-30deg)contrast(1)opacity(.8)}.code-title+.highlight{border-top-left-radius:0;border-top-right-radius:0}.code-title+pre{border-top-left-radius:0;border-top-right-radius:0}:root{--light:#faf8f8;--dark:#141021;--secondary:#FF5D62;--tertiary:#3150AA;--visited:#afbfc9;--primary:#f28482;--gray:#4e4e4e;--lightgray:#f0f0f0;--outlinegray:#dadada;--million-progress-bar-color:var(--secondary);--secondary-aa:#E0404A}#page-title>a{color:var(--secondary-aa)}.section-ul .section .meta{opacity:.8}[saved-theme=dark] .section-ul .section .meta{opacity:.6}article p a:not(.subscribe-button),article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a,article blockquote a{font-weight:400!important}[saved-theme=dark] article p a[href^=http]:not(.hanchor),[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a[href^=http]:not(.hanchor),[saved-theme=dark] article blockquote a[href^=http]:not(.hanchor){color:var(--gray);text-decoration:underline!important;text-decoration-color:var(--primary)!important;text-underline-offset:3px;text-decoration-thickness:2px}[saved-theme=dark] article p a[href^=http]:not(.hanchor):hover,[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a[href^=http]:not(.hanchor):hover,[saved-theme=dark] article blockquote a[href^=http]:not(.hanchor):hover{color:var(--primary)!important;text-decoration-color:var(--primary)!important}[saved-theme=dark] article p a.internal-link:not(.broken),[saved-theme=dark] article p a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button),[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link:not(.broken),[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button),[saved-theme=dark] article blockquote a.internal-link:not(.broken),[saved-theme=dark] article blockquote a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button){color:var(--gray);background-color:transparent;text-decoration:underline!important;text-decoration-color:var(--secondary)!important;text-underline-offset:3px;text-decoration-thickness:2px}[saved-theme=dark] article p a.internal-link:not(.broken):hover,[saved-theme=dark] article p a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover,[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link:not(.broken):hover,[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover,[saved-theme=dark] article blockquote a.internal-link:not(.broken):hover,[saved-theme=dark] article blockquote a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover{color:var(--secondary)!important;text-decoration-color:var(--secondary)!important}[saved-theme=dark] article p a.internal-link.broken,[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link.broken,[saved-theme=dark] article blockquote a.internal-link.broken{color:#8ba4b0;opacity:.85;background-color:transparent;text-decoration:underline dashed!important;text-decoration-color:#8ba4b0!important;text-underline-offset:3px;text-decoration-thickness:1px}[saved-theme=dark] article p a.internal-link.broken:hover,[saved-theme=dark] article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link.broken:hover,[saved-theme=dark] article blockquote a.internal-link.broken:hover{opacity:1}article p a[href^=http]:not(.hanchor),article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a[href^=http]:not(.hanchor),article blockquote a[href^=http]:not(.hanchor){color:var(--gray);text-decoration:underline!important;text-decoration-color:var(--secondary)!important;text-underline-offset:3px;text-decoration-thickness:2px}article p a[href^=http]:not(.hanchor):hover,article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a[href^=http]:not(.hanchor):hover,article blockquote a[href^=http]:not(.hanchor):hover{color:var(--secondary)!important;text-decoration-color:var(--secondary)!important}article p a.internal-link:not(.broken),article p a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button),article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link:not(.broken),article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button),article blockquote a.internal-link:not(.broken),article blockquote a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button){color:var(--gray);background-color:transparent;text-decoration:underline!important;text-decoration-color:var(--tertiary)!important;text-underline-offset:3px;text-decoration-thickness:2px}article p a.internal-link:not(.broken):hover,article p a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover,article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link:not(.broken):hover,article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover,article blockquote a.internal-link:not(.broken):hover,article blockquote a:not(.internal-link):not(.hanchor):not([href^=http]):not(.subscribe-button):hover{color:var(--tertiary)!important;text-decoration-color:var(--tertiary)!important}article p a.internal-link.broken,article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link.broken,article blockquote a.internal-link.broken{color:#000;opacity:.65;background-color:transparent;text-decoration:underline dashed!important;text-decoration-color:#555!important;text-underline-offset:3px;text-decoration-thickness:1px}article p a.internal-link.broken:hover,article li:not(.tags li):not(.mainTOC li):not(#contact_buttons li) a.internal-link.broken:hover,article blockquote a.internal-link.broken:hover{color:#666;text-decoration-color:#888!important}[saved-theme=dark]{--light:#1F1F28 !important;--dark:#FF5D62 !important;--secondary:#7093A3 !important;--secondary-aa:#7093A3 !important;--visited:#938AA9 !important;--tertiary:#E46876 !important;--primary:#D27E99 !important;--gray:#DCD7BA !important;--lightgray:#181820 !important;--outlinegray:#C8C093 !important}:root{--global-background-color:#ffffff;--global-background-secondary-color:#faf8f8;--global-font-secondary-color:#727070;--header-background-color:#eaecef}[saved-theme=dark]{--global-background-color:#181820 !important;--global-background-secondary-color:#1F1F28 !important;--global-font-secondary-color:#a9a9b3 !important;--header-background-color:#181820 !important}.hero-section{text-align:center;padding:2rem 1rem;margin-bottom:3rem;background:linear-gradient(135deg,rgba(255,93,98,.1) 0%,rgba(210,126,153,.1) 100%);border-radius:12px}.hero-section h1{font-size:3rem;margin-bottom:.5rem;background:linear-gradient(135deg,var(--secondary),var(--tertiary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-section h2{font-size:1.8rem;color:var(--tertiary);margin-bottom:1.5rem}.hero-description{font-size:1.2rem;max-width:800px;margin:0 auto;line-height:1.6}.about-section{margin:4rem 0 2rem;padding:1.5rem;background:linear-gradient(135deg,rgba(49,80,170,8%) 0%,rgba(210,126,153,8%) 100%);border-radius:12px}.principles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin:1.5rem 0}.principle-card{background:var(--light);padding:1.5rem;border-radius:8px;transition:transform .3s ease,box-shadow .3s ease;border:1px solid var(--outlinegray)}.principle-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.1);border-color:var(--secondary)}.principle-icon{font-size:2rem;margin-bottom:1rem}.principle-card h3{font-size:1.4rem;margin-bottom:.8rem;color:var(--secondary-aa)}.navigation-section{margin:2rem 0;padding:1.5rem;background:var(--lightgray);border-radius:12px}.nav-flex{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.nav-card{padding:1rem;background:var(--light);border-radius:8px;transition:transform .3s ease;display:flex;flex-direction:column}.nav-card:hover{transform:translateY(-5px)}.nav-icon{width:30px;height:30px;margin-bottom:.5rem;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.nav-icon--search,.nav-icon--links,.nav-icon--graph{background-color:var(--secondary)}.nav-icon--search{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E")}.nav-icon--links{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E")}.nav-icon--graph{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 2A2.5 2.5 0 0 1 12 4.5v15a2.5 2.5 0 0 1-5 0v-15A2.5 2.5 0 0 1 9.5 2Z'/%3E%3Cpath d='M14.5 4A2.5 2.5 0 0 1 17 6.5v11a2.5 2.5 0 0 1-5 0v-11A2.5 2.5 0 0 1 14.5 4Z'/%3E%3Cpath d='M19.5 7A2.5 2.5 0 0 1 22 9.5v6a2.5 2.5 0 0 1-5 0v-6A2.5 2.5 0 0 1 19.5 7Z'/%3E%3Cpath d='M4.5 7A2.5 2.5 0 0 1 7 9.5v6a2.5 2.5 0 0 1-5 0v-6A2.5 2.5 0 0 1 4.5 7Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 2A2.5 2.5 0 0 1 12 4.5v15a2.5 2.5 0 0 1-5 0v-15A2.5 2.5 0 0 1 9.5 2Z'/%3E%3Cpath d='M14.5 4A2.5 2.5 0 0 1 17 6.5v11a2.5 2.5 0 0 1-5 0v-11A2.5 2.5 0 0 1 14.5 4Z'/%3E%3Cpath d='M19.5 7A2.5 2.5 0 0 1 22 9.5v6a2.5 2.5 0 0 1-5 0v-6A2.5 2.5 0 0 1 19.5 7Z'/%3E%3Cpath d='M4.5 7A2.5 2.5 0 0 1 7 9.5v6a2.5 2.5 0 0 1-5 0v-6A2.5 2.5 0 0 1 4.5 7Z'/%3E%3C/svg%3E")}.nav-card h3{font-size:1.2rem;margin-bottom:.5rem;color:var(--secondary-aa)}.nav-card p{font-size:.95rem;margin:0}.moc-intro{font-size:1.1rem;margin-bottom:2rem;line-height:1.6}.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.topic-card{padding:1.5rem;border-radius:8px;background:var(--lightgray);transition:transform .3s ease,box-shadow .3s ease}.topic-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.1)}.topic-card h3{font-size:1.3rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--secondary);color:var(--secondary)}.topic-card h3 a{color:var(--secondary-aa);font-weight:700}.topic-card a{text-decoration:none;color:var(--tertiary);transition:color .2s ease}.topic-card a:hover{color:var(--secondary);text-decoration:underline}.topic-card.data-engineering{border-left:4px solid #ff5d62}.topic-card.pkm{border-left:4px solid #d27e99}.topic-card.deep-life{border-left:4px solid #e8aeb7}.topic-card.writing-reading{border-left:4px solid #e88b8b}.topic-card.productivity{border-left:4px solid #a18bd7}.topic-card.neovim{border-left:4px solid #6fb26f}.topic-card.digital-garden{border-left:4px solid #d9c482}.topic-card.programming{border-left:4px solid #6b9ac4}.topic-card.other{border-left:4px solid #999}.closing{font-size:1.2rem;text-align:center;margin:2rem 0;font-style:italic}.newsletter-section{margin-top:3rem;padding:2rem;text-align:center;background:linear-gradient(135deg,rgba(255,93,98,.1) 0%,rgba(210,126,153,.1) 100%);border-radius:12px}.newsletter-section p{max-width:620px;margin:0 auto;line-height:1.6}.newsletter-section p:first-of-type{font-size:1.1rem}.newsletter-section .newsletter-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.5rem;margin-top:1.75rem;font-size:.9rem;color:var(--gray)}.newsletter-section .newsletter-links a{color:var(--gray)!important}.newsletter-section .newsletter-links span{opacity:.5}.subscribe-button{display:inline-block;margin-top:1.5rem;padding:.8rem 1.5rem;background:linear-gradient(135deg,#FF5D62,#d27e99);color:#fff;text-decoration:none;border-radius:8px;font-weight:700;transition:transform .3s ease,box-shadow .3s ease}.subscribe-button:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.2);color:#fff!important}@media(max-width:768px){.hero-section h1{font-size:2.2rem}.hero-section h2{font-size:1.4rem}.principles-grid,.topic-grid{grid-template-columns:1fr}.nav-flex{grid-template-columns:1fr}}@media(max-width:992px) and (min-width:769px){.nav-flex{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.title-text{display:none}#page-title svg{transform:translateX(0)!important}#page-title{justify-content:center}}.webmentions-container{margin-top:2rem;font-size:.9rem}.webmentions-header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--lightgray)}.webmentions-header{font-size:1.1rem;font-weight:600;color:var(--secondary-aa);margin:0}.join-conversation{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--tertiary);text-decoration:none;transition:all .2s ease}.join-conversation:hover{color:var(--secondary);transform:translateY(-1px)}.webmentions-empty{margin:0;font-size:.85rem;color:var(--global-font-secondary-color)}.bluesky-icon{width:20px;height:20px;vertical-align:middle}.bluesky-icon-path{fill:currentColor}.webmentions-list{display:flex;flex-wrap:wrap;gap:.75rem;margin:0 0 1.5rem;padding:0;list-style:none}.reaction{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:2rem;transition:all .2s ease;text-decoration:none;background-color:var(--lightgray);color:var(--gray);border:1px solid var(--outlinegray)}.reaction:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1);color:var(--secondary);border-color:var(--secondary)}.reaction img{width:32px;height:32px;border-radius:50%;object-fit:cover}.webmention-comment{display:flex;gap:1rem;margin-bottom:1rem;padding:1rem;border-radius:.5rem;background-color:var(--lightgray);border:1px solid var(--outlinegray)}.comment-avatar{flex-shrink:0;padding:.25rem;border-radius:50%}.comment-avatar img{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block}.comment-content{flex-grow:1;min-width:0}.webmention-author{font-weight:600;color:var(--tertiary);text-decoration:none}.webmention-author:hover{color:var(--secondary);text-decoration:underline}.webmention-meta{font-size:.8rem;color:var(--gray);margin-top:.25rem}.webmention-meta time{margin-right:.5rem}.webmention-content{margin-top:.5rem;line-height:1.5}.webmentions-comments ul{list-style:none;padding:0;margin:0}[saved-theme=dark] .reaction{background-color:var(--light);border-color:var(--gray)}[saved-theme=dark] .webmention-comment{background-color:var(--light);border-color:var(--gray)}[saved-theme=dark] .comment-avatar{background-color:var(--darkgray)}@media(max-width:768px){.webmention-comment{display:grid;grid-template-columns:48px 1fr;gap:1rem;align-items:start;padding:.75rem}.comment-avatar{margin:.25rem}.comment-avatar img{width:40px;height:40px}.reaction{padding:.4rem .6rem}.reaction img{width:24px;height:24px}.webmentions-list{gap:.5rem}.webmentions-header-container{flex-direction:column;align-items:flex-start;gap:.5rem}.join-conversation{font-size:.8rem}.join-conversation span{font-size:.8rem}.bluesky-icon{width:16px;height:16px}}.article-hackernews-banner{padding:.5rem 1rem;font-size:.85rem;font-family:var(--font-body);position:relative;margin:0 0 1.5rem;color:#b54600;font-style:italic;text-align:right;background-color:transparent;border-top:1px dashed #eee;border-bottom:1px dashed #eee}[saved-theme=dark] .article-hackernews-banner{color:#f96;border-top:1px dashed #333;border-bottom:1px dashed #333}.article-hackernews-banner .hn-icon{font-style:normal}.article-hackernews-banner a{font-weight:400;color:var(--tertiary);text-decoration:underline;text-underline-offset:3px;border-bottom:none;transition:color .3s ease}[saved-theme=dark] .article-hackernews-banner a{color:var(--secondary)}.article-hackernews-banner a:hover{color:var(--secondary)}[saved-theme=dark] .article-hackernews-banner a:hover{color:var(--tertiary)}article p a.hn-badge[href][target],a.hn-badge{display:inline-flex;align-items:center;gap:.35em;margin-left:.7em;padding:0;vertical-align:middle;font-size:.86em;font-weight:400;line-height:1.6;white-space:nowrap;color:#cc5200!important;text-decoration:none!important;border:none;background-color:transparent;opacity:.8;transition:opacity .2s ease,color .2s ease}article p a.hn-badge[href][target]:hover,article p a.hn-badge[href][target]:focus-visible,a.hn-badge:hover,a.hn-badge:focus-visible{opacity:1;color:#cc5200!important;text-decoration:underline!important;text-decoration-color:rgba(255,102,0,.6)!important;text-underline-offset:3px;text-decoration-thickness:1px}[saved-theme=dark] article p a.hn-badge[href][target],[saved-theme=dark] a.hn-badge{color:#f96!important;text-decoration:none!important}[saved-theme=dark] article p a.hn-badge[href][target]:hover,[saved-theme=dark] article p a.hn-badge[href][target]:focus-visible,[saved-theme=dark] a.hn-badge:hover,[saved-theme=dark] a.hn-badge:focus-visible{color:#f96!important;text-decoration:underline!important;text-decoration-color:rgba(255,153,102,.6)!important}.hn-badge-mark{display:inline-flex;align-items:center;justify-content:center;width:1.25em;height:1.25em;border-radius:2px;background-color:#f60;color:#fff;font-family:var(--font-body);font-size:.82em;font-weight:700;font-style:normal;line-height:1}@media all and (max-width:600px){.hn-badge-text{display:none}.hn-badge::after{content:"HN"}}.toolkit-container{max-width:1400px;margin:0 auto;background:var(--light);border-radius:20px;padding:30px;box-shadow:0 20px 40px rgba(0,0,0,.1)}@media(max-width:768px){.toolkit-container{padding:20px;border-radius:12px;margin:0 10px}}.toolkit-header{text-align:center;margin-bottom:40px}.toolkit-header h1{font-size:2.5em;margin-bottom:10px;color:var(--dark)}@media(max-width:768px){.toolkit-header h1{font-size:2rem}}.toolkit-header p{font-size:1.1em;color:var(--gray);max-width:800px;margin:0 auto}@media(max-width:768px){.toolkit-header p{font-size:1rem;padding:0 10px}}.toolkit-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:30px 0}@media(max-width:768px){.toolkit-stats-grid{grid-template-columns:repeat(2,1fr);gap:15px;margin:20px 0}}@media(max-width:480px){.toolkit-stats-grid{grid-template-columns:1fr}}.toolkit-stat-card{background:var(--lightgray);padding:20px;border-radius:10px;text-align:center;box-shadow:0 5px 15px rgba(0,0,0,.1);border:1px solid var(--outlinegray)}@media(max-width:768px){.toolkit-stat-card{padding:15px}}.toolkit-stat-number{font-family:var(--font-header);font-size:2em;font-weight:700;color:var(--secondary)}@media(max-width:768px){.toolkit-stat-number{font-size:1.5em}}.toolkit-stat-label{color:var(--gray);font-size:.9em;margin-top:5px}@media(max-width:768px){.toolkit-stat-label{font-size:.8em}}.toolkit-knowledge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:40px}@media(max-width:768px){.toolkit-knowledge-grid{grid-template-columns:1fr;gap:20px;margin-bottom:30px}}@media(max-width:480px){.toolkit-knowledge-grid{grid-template-columns:1fr;gap:15px}}.toolkit-knowledge-category{background:var(--lightgray);border-radius:15px;padding:25px;box-shadow:0 10px 30px rgba(0,0,0,.1);border-left:5px solid;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}@media(max-width:768px){.toolkit-knowledge-category{padding:20px;border-radius:12px}}.toolkit-knowledge-category:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.15)}.toolkit-knowledge-category::before{content:'';position:absolute;top:0;right:0;width:100px;height:100px;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1));border-radius:50%;transform:translate(30px,-30px)}.toolkit-core-tech{border-left-color:#4caf50}.toolkit-devops{border-left-color:#2196f3}.toolkit-python{border-left-color:#ff9800}.toolkit-data-skills{border-left-color:#9c27b0}.toolkit-project-setup{border-left-color:#f44336}.toolkit-analytics{border-left-color:#00bcd4}.toolkit-utilities{border-left-color:#795548}.toolkit-ai-workflows{border-left-color:#e91e63}.toolkit-system-fundamentals{border-left-color:#607d8b}.toolkit-development-env{border-left-color:#ff5722}.toolkit-data-quality{border-left-color:#673ab7}.toolkit-category-title{font-family:var(--font-header);color:var(--gray);font-size:1.4em;font-weight:700;margin-bottom:15px;display:flex;align-items:center;gap:10px}@media(max-width:768px){.toolkit-category-title{font-size:1.2em}}.toolkit-category-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.8em}@media(max-width:768px){.toolkit-category-icon{width:25px;height:25px;font-size:.7em}}.toolkit-core-tech .toolkit-category-icon{background:#4caf50}.toolkit-devops .toolkit-category-icon{background:#2196f3}.toolkit-python .toolkit-category-icon{background:#ff9800}.toolkit-data-skills .toolkit-category-icon{background:#9c27b0}.toolkit-project-setup .toolkit-category-icon{background:#f44336}.toolkit-analytics .toolkit-category-icon{background:#00bcd4}.toolkit-utilities .toolkit-category-icon{background:#795548}.toolkit-ai-workflows .toolkit-category-icon{background:#e91e63}.toolkit-system-fundamentals .toolkit-category-icon{background:#607d8b}.toolkit-development-env .toolkit-category-icon{background:#ff5722}.toolkit-data-quality .toolkit-category-icon{background:#673ab7}.toolkit-tech-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.toolkit-tech-item{background:var(--light);padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:500;color:var(--gray);border:1px solid var(--outlinegray);transition:all .2s ease}@media(max-width:768px){.toolkit-tech-item{font-size:.8em;padding:5px 10px}}.toolkit-tech-item:hover{background:var(--secondary);color:#fff;transform:scale(1.05)}.toolkit-tech-item a{color:inherit;text-decoration:none;font-weight:inherit}.toolkit-evolution-note{background:var(--lightgray);color:var(--gray);padding:25px;border-radius:15px;margin-top:30px;text-align:center;border:1px solid var(--outlinegray)}@media(max-width:768px){.toolkit-evolution-note{padding:20px;margin-top:25px}}.toolkit-evolution-note h3{margin-top:0;font-size:1.3em}@media(max-width:768px){.toolkit-evolution-note h3{font-size:1.1em}}.cv-container{max-width:900px;margin:0 auto;padding:1rem}.cv-hero{text-align:center;margin-bottom:2rem}.cv-hero h1{font-size:2.5rem;margin-bottom:.5rem}@media(max-width:768px){.cv-hero h1{font-size:2rem}}.cv-hero h2{font-size:1.5rem;color:var(--tertiary);margin-bottom:1.5rem}@media(max-width:768px){.cv-hero h2{font-size:1.2rem}}.cv-intro-table{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-top:1rem}@media(max-width:768px){.cv-intro-table{flex-direction:column;gap:.5rem}}.cv-intro-item{display:flex;align-items:center;gap:.5rem}@media(max-width:768px){.cv-intro-item{justify-content:center}}.cv-intro-item span:not(.cv-label){color:rgba(255,255,255,.85)}.cv-label{font-family:var(--font-body);font-weight:600;color:var(--secondary)}.cv-section{margin-bottom:2rem}.cv-section h3{font-size:1.4rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--secondary);color:var(--secondary)}.cv-skills-grid{display:flex;flex-direction:column;gap:1rem}.cv-skill-category{display:flex;flex-direction:column;gap:.5rem}@media(min-width:768px){.cv-skill-category{flex-direction:row;align-items:flex-start}.cv-skill-category strong{min-width:180px;flex-shrink:0}}.cv-skill-category strong{font-family:var(--font-body);color:var(--secondary);font-weight:600}.cv-skill-category span{font-family:var(--font-body);line-height:1.5;color:var(--gray)}.cv-competencies-box{background:var(--lightgray);border:1px solid var(--outlinegray);border-radius:8px;padding:1.5rem;font-family:courier new,monospace;font-size:.9rem;line-height:1.6;color:var(--gray)}@media(max-width:768px){.cv-competencies-box{padding:1rem;font-size:.8rem}}.cv-experience-item{border-left:3px solid var(--secondary);padding-left:1.5rem;margin-bottom:2rem;position:relative}.cv-experience-item::before{content:'';position:absolute;left:-7px;top:0;width:12px;height:12px;background:var(--secondary);border-radius:50%;border:2px solid var(--light)}.cv-date-range{background:var(--secondary);color:#fff;padding:.3rem .8rem;border-radius:20px;font-family:var(--font-mono);font-size:.8rem;font-weight:600;display:inline-block;margin-bottom:.8rem}@media(max-width:768px){.cv-date-range{font-size:.7rem;padding:.2rem .6rem}}.cv-date-range{background:var(--secondary);color:#fff}[saved-theme=dark] .cv-date-range{background:var(--secondary);color:#fff}.cv-job-header{margin-bottom:1rem}.cv-job-title{color:var(--secondary);font-weight:600;font-size:1.2rem;margin:0 0 .3rem}@media(max-width:768px){.cv-job-title{font-size:1.1rem}}.cv-company-name{color:var(--gray);font-size:.95rem;margin:0;font-style:italic}.cv-key-projects{margin-top:1.5rem}.cv-key-projects h4{color:var(--tertiary);font-size:1rem;font-weight:600;margin-bottom:.8rem}.cv-highlight-list,.cv-project-list{list-style:none;padding:0;margin:0}.cv-highlight-list li,.cv-project-list li{margin-bottom:.8rem;padding-left:1.2rem;position:relative;line-height:1.5}.cv-highlight-list li::before,.cv-project-list li::before{content:'>';color:var(--secondary);position:absolute;left:0;font-weight:700}.cv-highlight-list li{margin-bottom:1rem}.cv-highlight-list li::before{content:'#';color:var(--secondary)}.cv-section a,.cv-highlight-list a,.cv-project-list a{color:var(--secondary);text-decoration:none}.cv-section a:hover,.cv-highlight-list a:hover,.cv-project-list a:hover{color:var(--tertiary);text-decoration:underline}.cv-footer{margin:3rem 0 2rem}.cv-footer h3{color:var(--tertiary);font-size:1.2rem;margin-bottom:1rem}.cv-references{text-align:center;padding:2rem 1rem;border-top:1px solid var(--outlinegray);margin-top:2rem;font-size:.9rem}.cv-references p{margin:.5rem 0}.cv-references a{color:var(--tertiary);text-decoration:none;margin:0 .5rem;transition:color .2s ease}.cv-references a:hover{color:var(--secondary);text-decoration:underline}@media(max-width:768px){.cv-references{font-size:.8rem}.cv-references a{margin:0 .3rem;display:inline-block}}[saved-theme=dark] .cv-competencies-box{color:var(--gray)}[saved-theme=dark] .cv-skill-category span{font-family:var(--font-body);color:var(--gray)}[saved-theme=dark] .cv-intro-item span:not(.cv-label){font-family:var(--font-body);color:var(--gray)}.cv-competencies-box{color:var(--gray);font-size:.8rem}.cv-skill-category span{font-family:var(--font-body);color:var(--gray)}.cv-intro-item span:not(.cv-label){font-family:var(--font-body);color:var(--gray)}@media(max-width:768px){.cv-container{padding:.5rem}.cv-section{margin-bottom:1.5rem}.cv-experience-item{padding-left:1rem}.cv-experience-item::before{left:-6px;width:10px;height:10px}}.lightbox-overlay{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease}.lightbox-overlay.lightbox-visible{opacity:1;pointer-events:auto}.lightbox-content{position:relative;background:var(--light);border-radius:8px;padding:1.5em;width:95vw;max-width:1400px;max-height:95vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.3)}.lightbox-close{position:absolute;top:.5em;right:.75em;font-size:1.5em;background:0 0;border:none;cursor:pointer;color:var(--gray);line-height:1}.lightbox-close:hover{color:var(--dark)}.expand-btn{position:absolute;top:.5em;right:.5em;background:var(--lightgray);border:1px solid var(--outlinegray);border-radius:4px;cursor:pointer;padding:.3em .4em;line-height:1;opacity:0;transition:opacity .15s;z-index:10;color:var(--gray)}.expand-btn:hover{color:var(--dark);background:var(--light)}[data-expandable]:hover .expand-btn{opacity:.8}@media(max-width:768px){.expand-btn{opacity:.6}}@media(prefers-reduced-motion:reduce){.lightbox-overlay{transition:none}}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.4rem;margin:1.5em 0}.gallery-grid a{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:4px;border:none;box-shadow:none}.gallery-grid img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:4px;transition:transform .2s ease}.gallery-grid a:hover img{transform:scale(1.05)}@media(max-width:600px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}.nl-footer{margin-top:2rem}.nl-footer-divider{height:1px;background:linear-gradient(to right,transparent,var(--outlinegray),transparent);margin-bottom:1.5rem}.nl-footer-inner{padding:0 0 1.5rem}.nl-footer-label{font-family:var(--font-header);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#c34043;margin-bottom:.4rem}.nl-footer-desc{font-size:.88rem;color:var(--gray);line-height:1.55;margin-bottom:1rem;opacity:.8}.nl-footer-form{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.nl-footer-email{flex:1;min-width:180px;padding:.45rem .75rem;border-radius:4px;font-size:.85rem;border:1px solid var(--outlinegray);background:var(--global-background-color);color:var(--gray);outline:none}.nl-footer-email:focus{border-color:var(--secondary)}.nl-footer-captcha{flex-shrink:0}.nl-footer-btn{padding:.45rem 1.1rem;border:none;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;background:var(--secondary);color:#181820;transition:opacity .15s ease;white-space:nowrap}.nl-footer-btn:hover{opacity:.85}[saved-theme=dark] .nl-footer-email{background:#2a2a37;border-color:#54546d;color:#dcd7ba}[saved-theme=dark] .nl-footer-email:focus{border-color:var(--secondary)}[saved-theme=dark] .nl-footer-label{color:var(--secondary)}[saved-theme=dark] .nl-footer-btn{color:#181820}@media(max-width:600px){.nl-footer-form{flex-direction:column;align-items:stretch}.nl-footer-email{width:100%;min-width:unset}.nl-footer-btn{width:100%;padding:.6rem}}.nl-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center;padding:28px;margin:1rem 0 1.5rem;border-radius:12px;border:1px solid var(--outlinegray);background:linear-gradient(135deg,rgba(255,93,98,.12) 0%,rgba(210,126,153,.12) 100%);font-family:var(--font-body)}.nl-hero-brand{display:inline-flex;align-items:center;gap:9px;margin-bottom:6px}.nl-hero-logo{width:30px;height:30px;display:inline-block;margin:0}.nl-hero-wordmark{font-family:var(--font-header);font-weight:800;letter-spacing:.02em;font-size:1rem;color:var(--gray)}.nl-hero-title{font-size:1.35rem;margin:.2rem 0 .4rem}.nl-hero-oneliner{font-size:1.02rem;color:var(--gray);margin:0 0 4px}.nl-hero-form{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:14px 0 6px}.nl-hero-email{order:1;flex:1;min-width:180px;padding:.6rem .8rem;border-radius:6px;font-size:.95rem;border:1px solid var(--outlinegray);background:var(--global-background-color);color:var(--gray);outline:none}.nl-hero-email:focus{border-color:var(--secondary)}.nl-hero-btn{order:2;padding:.6rem 1.3rem;border:none;border-radius:6px;font-size:.95rem;font-weight:700;cursor:pointer;white-space:nowrap;background:var(--secondary);color:#fff;transition:opacity .15s ease}.nl-hero-btn:hover{opacity:.85}.nl-hero-captcha{order:3;flex-basis:100%;margin-top:6px}.captcha altcha-widget{font-family:var(--font-body)}[saved-theme=dark] .captcha altcha-widget{--altcha-color-base:#2b2b2b;--altcha-color-border:#4a4a4a;--altcha-color-text:#e8e8e8;--altcha-color-footer-bg:#2b2b2b}.nl-hero-micro{font-size:.82rem;color:var(--global-font-secondary-color);margin:.3rem 0 0}.nl-hero-byline{display:flex;align-items:center;gap:10px;margin-top:16px}.nl-hero-byline img{width:38px;height:38px;border-radius:50%;object-fit:cover;margin:0;border:2px solid var(--light);box-shadow:0 1px 4px rgba(0,0,0,.2)}.nl-hero-byline-who{font-size:.85rem;line-height:1.3}.nl-hero-byline-who b{color:var(--gray)}.nl-hero-byline-who span{color:var(--global-font-secondary-color)}.nl-hero-byline-who a{color:var(--secondary);text-decoration:none}.nl-hero-byline-who a:hover{text-decoration:underline}.nl-hero-card{background:var(--light);border:1px solid var(--outlinegray);border-radius:10px;padding:18px}.nl-hero-card ul{list-style:none;padding:0;margin:10px 0 0}.nl-hero-card li{position:relative;padding:5px 0 5px 22px;font-size:.9rem}.nl-hero-card li::before{content:"\2713";position:absolute;left:0;color:var(--secondary);font-weight:700}.nl-hero-card-k{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--secondary)}.nl-curl{background:var(--header-background-color);color:var(--gray);border:1px solid var(--outlinegray);border-radius:8px;padding:12px 16px;font-family:var(--font-body);font-size:.9rem;margin:1.2rem 0}.nl-curl code{font-family:var(--font-mono);background:var(--global-background-secondary-color);color:var(--gray);border:1px solid var(--outlinegray);border-radius:4px;padding:2px 6px;font-size:.85em}.nl-curl a{color:var(--secondary);text-decoration:none}.nl-curl a:hover{text-decoration:underline}[saved-theme=dark] .nl-hero-email{background:#2a2a37;border-color:#54546d;color:#dcd7ba}[saved-theme=dark] .nl-hero-email:focus{border-color:var(--secondary)}[saved-theme=dark] .nl-hero-btn{color:#181820}@media(max-width:640px){.nl-hero{grid-template-columns:1fr;padding:22px}.nl-hero-email{flex-basis:100%;width:100%;min-width:unset}.nl-hero-btn{flex-basis:100%;width:100%;padding:.7rem}}.transclusion{position:relative;margin:1.2em 0}.transclusion blockquote{margin-bottom:0}.transclusion .transclusion-link{float:right;margin:.1em 0 .35em .9em;display:inline-flex;align-items:center;gap:.3em;font-size:.75em;line-height:1;opacity:.6;text-decoration:none;transition:opacity .2s ease}.transclusion .transclusion-link:hover{opacity:1}.transclusion .transclusion-link .transclusion-icon{flex-shrink:0;transform:translateY(-.05em)}.transclusion .transclusion-link span{border-bottom:1px solid transparent}.transclusion .transclusion-link:hover span{border-bottom-color:initial}:root{--badge-new:#76946A;--badge-upd:#587381}[saved-theme=dark]{--badge-upd:#7093A3}.update-badge{display:inline-block;margin-left:.5em;padding:.05em .5em;font-size:.62em;font-weight:400;line-height:1.5;letter-spacing:.02em;border-radius:.5em;white-space:nowrap;vertical-align:middle;color:var(--gray);border:1px solid transparent}.badge-new{border-color:var(--badge-new);background:color-mix(in srgb,var(--badge-new) 14%,transparent)}.badge-upd{border-color:var(--badge-upd);background:color-mix(in srgb,var(--badge-upd) 14%,transparent)}:root{--badge-del:#C34043;--nc-bg:#ffffff}[saved-theme=dark]{--nc-bg:#16161D !important}article>.meta{opacity:1;color:var(--global-font-secondary-color)}.note-changes{position:relative;display:inline-flex;align-items:center;gap:.4em;margin-left:.5em;vertical-align:middle;cursor:pointer;outline:none}.nc-dot{width:8px;height:8px;border-radius:50%;background:var(--badge-new);box-shadow:0 0 0 3px color-mix(in srgb,var(--badge-new) 20%,transparent)}.nc-label{color:var(--badge-upd);font-size:.92em;border-bottom:1px dotted var(--badge-upd)}.nc-popover{display:none;position:absolute;top:calc(100% + .5em);left:0;z-index:40;min-width:250px;max-width:360px;max-height:60vh;overflow-y:auto;overscroll-behavior:contain;padding:.7em .85em;font-size:.8rem;background:var(--nc-bg);border:1px solid var(--outlinegray);border-radius:.5em;box-shadow:0 10px 30px rgba(0,0,0,.32);opacity:.95;cursor:default;white-space:normal}.nc-popover::before{content:"";position:absolute;left:0;right:0;top:-.6em;height:.6em}.note-changes:hover .nc-popover,.note-changes:focus-within .nc-popover,.note-changes.nc-open .nc-popover{display:block}.nc-title{display:block;margin-bottom:.55em;font-size:.68em;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--global-font-secondary-color)}.nc-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75em;padding:.35em 0;border-bottom:1px solid color-mix(in srgb,var(--outlinegray) 55%,transparent)}.nc-row:last-child{border-bottom:0}.nc-when{color:var(--gray);font-size:.86em;white-space:nowrap}.nc-rel{margin-left:.5em;color:var(--global-font-secondary-color);font-size:.82em}.nc-delta{font-size:.82em;font-variant-numeric:tabular-nums;white-space:nowrap}.nc-add{color:var(--badge-new)}.nc-del{color:var(--badge-del)}.more-notes.notes-hidden{display:none}.bucket-divider{display:flex;align-items:center;gap:.6rem;margin:1.4rem 0 .2rem}.bucket-divider::before,.bucket-divider::after{content:"";flex:1;border-top:1px solid var(--lightgray)}.bucket-divider p{margin:0;font-family:var(--font-body);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--gray)}.show-more-btn{display:block;margin:1.2rem auto 0;font-family:var(--font-body);font-size:.9rem;color:var(--gray);background:0 0;border:1px solid var(--lightgray);border-radius:8px;padding:.45rem 1.2rem;cursor:pointer}.show-more-btn .count{font-size:.8rem;opacity:.85}.show-more-btn:hover{border-color:var(--secondary);color:var(--secondary)}.show-more-btn:hover .count{opacity:1}@media(scripting:none){.show-more-btn{display:none}}.recent-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.note-filter{display:flex;gap:.4rem}.filter-btn{font-family:var(--font-body);font-size:.68rem;letter-spacing:.04em;color:var(--gray);background:0 0;border:1px solid var(--lightgray);border-radius:999px;padding:.15em .7em;cursor:pointer}.filter-btn:hover{border-color:var(--secondary);color:var(--secondary)}.filter-btn.active{border-color:var(--gray);background:var(--lightgray)}.filter-btn-new.active{border-color:var(--badge-new);color:var(--badge-new);background:color-mix(in srgb,var(--badge-new) 14%,transparent)}.filter-btn-upd.active{border-color:var(--badge-upd);color:var(--badge-upd);background:color-mix(in srgb,var(--badge-upd) 14%,transparent)}.content-list.filter-new li.section-li:not(:has(.badge-new)),.content-list.filter-upd li.section-li:not(:has(.badge-upd)){display:none}.content-list.filter-new .more-notes:not(.notes-hidden):not(:has(.badge-new)),.content-list.filter-upd .more-notes:not(.notes-hidden):not(:has(.badge-upd)){display:none}@media(scripting:none){.note-filter{display:none}}.darkmode{min-width:30px;float:right;padding:.5em;position:relative}@media all and (max-width:450px){.darkmode{padding:.7em}}.darkmode>.toggle{display:none;box-sizing:border-box}.darkmode svg{opacity:0;position:absolute;width:20px;height:20px;top:calc(50% - 10px);margin:0 7px;fill:var(--gray);transition:opacity .1s ease}.newsletter{float:right;min-width:30px;position:relative}@media all and (max-width:450px){.newsletter{padding:1em}}.newsletter>.toggle{display:none;box-sizing:border-box}.newsletter svg{opacity:1;position:absolute;width:20px;height:20px;top:calc(50% - 10px);margin:0 7px;transition:opacity .1s ease}.toggle:checked~label>#dayIcon{opacity:0}.toggle:checked~label>#nightIcon{opacity:1}.toggle:not(:checked)~label>#dayIcon{opacity:1}.toggle:not(:checked)~label>#nightIcon{opacity:0}.icon-links{display:flex;align-items:center;flex-wrap:nowrap;padding:0 5px;margin-right:10px}@media all and (max-width:768px){.icon-links{overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.icon-links::-webkit-scrollbar{display:none}}.nav-item{margin-right:12px;white-space:nowrap}.nav-item:last-child{margin-right:0}@media all and (max-width:768px){.nav-item{margin-right:8px}}.icon-links a{color:var(--gray)!important;text-decoration:none;display:flex;align-items:center;padding:4px 9px;border-radius:8px;transition:background-color .22s ease,box-shadow .22s ease,color .22s ease}.icon-links a:hover{color:#d27e99!important;background:linear-gradient(135deg,rgba(255,93,98,.1),rgba(210,126,153,.1));box-shadow:0 0 0 1px rgba(255,93,98,.25),0 4px 14px rgba(255,93,98,.18)}.icon-links a svg{margin-right:6px;min-width:20px}@media all and (min-width:769px){.icon-links a svg{display:none}}@media all and (max-width:768px){.icon-links a svg{margin-right:0}}@media all and (max-width:768px){.icon-links a{padding:6px 0;border-radius:0;transition:color .2s ease,transform .2s ease}.icon-links a:hover{background:0 0;box-shadow:none;color:var(--secondary)!important;transform:translateY(-2px)}}[saved-theme=dark] .icon-links a{color:var(--global-font-secondary-color)!important}[saved-theme=dark] .icon-links a:hover{color:#d27e99!important;background:linear-gradient(135deg,rgba(255,93,98,.12),rgba(210,126,153,.12));box-shadow:0 0 0 1px rgba(210,126,153,.3),0 0 18px rgba(255,93,98,.18)}@media all and (max-width:768px){[saved-theme=dark] .icon-links a:hover{background:0 0;box-shadow:none;color:var(--secondary)!important}}[saved-theme=dark] .icon-links a svg{stroke:var(--global-font-secondary-color)}.nav-text{font-size:16px;font-weight:500}@media all and (max-width:768px){.nav-text{display:none}}.icon-links a.active{color:var(--dark)!important}.icon-links a.active svg{stroke:var(--dark)}.icon-links a.active .nav-text{font-weight:700}[saved-theme=dark] .icon-links a.active{color:#dcd7ba!important}[saved-theme=dark] .icon-links a.active svg{stroke:#dcd7ba}.menu-toggle,.mobile-menu{display:none}@media all and (max-width:768px){.menu-toggle{display:inline-flex;flex-direction:column;justify-content:center;background:0 0;border:none;padding:6px 4px;cursor:pointer;line-height:1}.menu-toggle span{display:block;width:1.5rem;height:2px;border-radius:3px;background:#161209;transition:all .3s ease-in-out}.menu-toggle span:nth-child(1){margin-bottom:.5rem}.menu-toggle span:nth-child(3){margin-top:.5rem}.menu-toggle.active span:nth-child(1){transform:rotate(45deg)translate(.4rem,.5rem)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(.4rem,-.5rem)}.mobile-menu{position:absolute;top:100%;left:0;width:100%;z-index:200;display:none;text-align:center;padding-top:.5rem;background:#f8f8f8;border-top:2px solid #2c678d;box-shadow:0 .125rem .25rem rgba(0,0,0,.1)}.mobile-menu.active{display:block}.mobile-menu .mobile-menu-item{display:block;width:100%;line-height:2.5rem;padding:0;background:0 0;border:none;font-family:var(--font-body);font-size:1rem;font-weight:400;color:var(--gray);text-decoration:none;cursor:pointer}.mobile-menu .mobile-menu-item svg{vertical-align:middle}.mobile-menu .mobile-menu-item:hover{color:#d27e99}.mobile-menu .mobile-menu-item.active{color:var(--dark);font-weight:700}}@media all and (max-width:768px){[saved-theme=dark] .menu-toggle span{background:#dcd7ba}[saved-theme=dark] .mobile-menu{background:#252627;border-top-color:#a9a9b3}[saved-theme=dark] .mobile-menu .mobile-menu-item{color:var(--global-font-secondary-color)}[saved-theme=dark] .mobile-menu .mobile-menu-item.active{color:#dcd7ba}}.sn-home,.sn-fn{display:none}.side-gutter{display:contents}@media only screen and (min-width:1420px){.singlePage.sn-on,body:has(.singlePage.sn-on) .header-fullwidth{--sn-margin:max(12vw, 280px)}.singlePage.sn-on{position:relative;margin-left:var(--sn-margin);margin-right:var(--sn-margin)}body:has(.singlePage.sn-on) .header-fullwidth{padding-left:var(--sn-margin);padding-right:var(--sn-margin)}.singlePage.sn-on>article{position:relative;flex:auto;min-width:0}.singlePage.sn-on .side-gutter{display:block;position:absolute;top:0;bottom:0;left:calc(16px - var(--sn-margin));width:calc(var(--sn-margin) - 16px - 24px)}.singlePage.sn-on .side-gutter .backlinks-container{padding-left:0;padding-right:0;min-width:0;overflow-x:hidden}.singlePage.sn-on blockquote.note-callout{--sn-c:var(--callout-note)}.singlePage.sn-on blockquote.info-callout{--sn-c:var(--callout-info)}.singlePage.sn-on blockquote.todo-callout{--sn-c:var(--callout-info)}.singlePage.sn-on blockquote.tip-callout{--sn-c:var(--callout-important)}.singlePage.sn-on blockquote.hint-callout{--sn-c:var(--callout-important)}.singlePage.sn-on blockquote.important-callout{--sn-c:var(--callout-important)}.singlePage.sn-on blockquote.warning-callout{--sn-c:var(--callout-warning)}.singlePage.sn-on blockquote.caution-callout{--sn-c:var(--callout-warning)}.singlePage.sn-on blockquote.attention-callout{--sn-c:var(--callout-warning)}.singlePage.sn-on blockquote.danger-callout{--sn-c:var(--callout-danger)}.singlePage.sn-on blockquote.error-callout{--sn-c:var(--callout-danger)}.singlePage.sn-on blockquote.example-callout{--sn-c:var(--callout-example)}.singlePage.sn-on blockquote.question-callout{--sn-c:var(--callout-question)}.singlePage.sn-on blockquote.help-callout{--sn-c:var(--callout-question)}.singlePage.sn-on blockquote.faq-callout{--sn-c:var(--callout-question)}.singlePage.sn-on blockquote.quote-callout{--sn-c:var(--callout-quote)}.singlePage.sn-on blockquote.cite-callout{--sn-c:var(--callout-quote)}.singlePage.sn-on blockquote.summary-callout{--sn-c:var(--callout-summary)}.singlePage.sn-on blockquote.abstract-callout{--sn-c:var(--callout-summary)}.singlePage.sn-on blockquote.tldr-callout{--sn-c:var(--callout-summary)}.singlePage.sn-on blockquote.bug-callout{--sn-c:var(--callout-bug)}.singlePage.sn-on blockquote.fail-callout{--sn-c:var(--callout-fail)}.singlePage.sn-on blockquote.failure-callout{--sn-c:var(--callout-fail)}.singlePage.sn-on blockquote.missing-callout{--sn-c:var(--callout-fail)}.singlePage.sn-on blockquote.done-callout{--sn-c:var(--callout-done)}.singlePage.sn-on blockquote.success-callout{--sn-c:var(--callout-done)}.singlePage.sn-on blockquote.check-callout{--sn-c:var(--callout-done)}.singlePage.sn-on .sn-side{position:absolute;right:calc(-1.5em - 258px);width:230px;box-sizing:border-box;margin:0;padding:0 0 0 .7rem!important;font-size:.82rem;line-height:1.45;color:var(--gray);background:0 0!important;border:0!important;border-left:2px solid var(--sn-c,var(--outlinegray))!important;border-radius:0;overflow:visible;opacity:.92;cursor:default;transition:opacity .15s}.singlePage.sn-on .sn-side:hover,.singlePage.sn-on .sn-side.sn-hot{opacity:1}.singlePage.sn-on blockquote.sn-side::before{content:attr(data-sn-type);position:absolute;left:-1.25rem;top:0;writing-mode:vertical-lr;text-orientation:upright;font-family:var(--font-header);font-size:.68rem;font-weight:700;line-height:1;letter-spacing:.05em;text-transform:capitalize;white-space:nowrap;color:var(--sn-c,var(--outlinegray))}.singlePage.sn-on blockquote.sn-side::after{display:none!important}.singlePage.sn-on blockquote.sn-side>p{margin:0 0 .5rem;padding:0!important;color:var(--gray);background:0 0!important;border-radius:0}.singlePage.sn-on blockquote.sn-side>p:last-child{margin-bottom:0}.singlePage.sn-on blockquote.sn-side>p:first-child{display:block;padding:0 0 .2rem!important;font-size:.78rem;font-weight:700;color:var(--gray)}.singlePage.sn-on blockquote.sn-side>p:first-child::before{display:none}.singlePage.sn-on blockquote.sn-side>p:first-child::after{display:none!important}.singlePage.sn-on blockquote.sn-side>ul,.singlePage.sn-on blockquote.sn-side>ol{margin:.25rem 0;padding-left:1.1rem}.singlePage.sn-on blockquote.sn-side li,.singlePage.sn-on blockquote.sn-side li a{color:var(--gray)}.singlePage.sn-on blockquote.sn-side.sn-notitle>p:first-child{font-size:.82rem;font-weight:400;padding-bottom:0!important}.singlePage.sn-on blockquote.sn-side.sn-notitle>p:first-child>br:first-child{display:none}.singlePage.sn-on blockquote.sn-side.callout-collapsed>*:not(:first-child){display:block!important}.singlePage.sn-on .sn-fn{display:block;font-size:.78rem;line-height:1.4;font-weight:400;font-style:normal;text-align:left;opacity:.82;border-left-color:var(--outlinegray)!important}.singlePage.sn-on .sn-fn p{display:inline;margin:0}.singlePage.sn-on .sn-fn .sn-fn-num{display:inline-block;min-width:1.1em;margin-right:.35em;font-family:var(--font-header);font-size:.72rem;font-weight:700;color:var(--gray)}.singlePage.sn-on .footnotes{display:none}.singlePage.sn-on .sn-home{display:block;position:relative;box-sizing:content-box;width:3.5rem;height:2px;padding:6px 0;margin:calc(-.55rem - 6px)0 calc(1.15rem - 6px)calc(var(--sn-i,0) * 2.6rem);overflow:visible}.singlePage.sn-on .sn-home::after{content:'';position:absolute;left:0;top:6px;width:2rem;height:2px;border-radius:1px;background:var(--sn-c,var(--outlinegray));opacity:.6;transition:opacity .15s,width .2s}.singlePage.sn-on .sn-home:hover::after,.singlePage.sn-on .sn-home.sn-hot::after{opacity:1;width:3rem}.singlePage.sn-on .sn-home:not([data-sn-i="0"]){margin-top:calc(-1.15rem - 8px)}}.chroma{overflow:hidden!important;background-color:var(--lightgray)!important}.chroma .lntable{width:auto!important;overflow:auto!important;display:block!important}.chroma pre{white-space:pre-wrap!important;word-wrap:break-word!important}.chroma .hl{display:block!important;width:100%!important}.chroma .lnt{margin-right:0!important;padding:0 0!important}.chroma .ln{margin-right:0!important;padding:0 0!important}.chroma .gd{color:#8b080b!important}.chroma .gi{font-weight:700!important}.lntd:first-of-type>.chroma{padding-right:0!important}.chroma code{font-family:var(--font-mono)!important;font-size:.85em!important;line-height:2em!important;background:0 0!important;padding:0!important;white-space:pre-wrap!important;word-wrap:break-word!important}.chroma{border-radius:5px!important;margin:0!important}pre.chroma{-moz-tab-size:4;-o-tab-size:4;tab-size:4}:root{--callout-summary:#00b0ff;--callout-bug:#f50057;--callout-danger:#ff1744;--callout-example:#7c4dff;--callout-fail:#ff5252;--callout-info:#00b8d4;--callout-note:#448aff;--callout-question:#64dd17;--callout-quote:#9e9e9e;--callout-done:#00c853;--callout-important:#00bfa5;--callout-warning:#ff9100}[saved-theme=dark]{--callout-summary:#00b0ff !important;--callout-bug:#f50057 !important;--callout-danger:#ff1744 !important;--callout-example:#7c4dff !important;--callout-fail:#ff5252 !important;--callout-info:#00b8d4 !important;--callout-note:#448aff !important;--callout-question:#64dd17 !important;--callout-quote:#9e9e9e !important;--callout-done:#00c853 !important;--callout-important:#00bfa5 !important;--callout-warning:#ff9100 !important}blockquote.callout-collapsible{cursor:pointer}blockquote.callout-collapsed>*:not(:first-child){display:none!important}blockquote.callout-collapsed>p:first-child{margin-bottom:0}blockquote[class*=-callout]{--cc:var(--callout-note);position:relative;margin-right:0;padding:.7rem 1.1rem .8rem 1.2rem;background-color:color-mix(in srgb,var(--cc) 7%,transparent);border:0;border-left:1px solid color-mix(in srgb,var(--cc) 75%,transparent);border-radius:0 12px 12px 0;font-size:.95em;line-height:1.6;color:var(--gray)}blockquote[class*=-callout]::after{display:none}blockquote[class*=-callout]>p{margin:0 0 .7rem;padding:0;color:var(--gray);background:0 0;border-radius:0}blockquote[class*=-callout]>p:last-child{margin-bottom:0}blockquote[class*=-callout]>ul,blockquote[class*=-callout]>ol{margin:.25rem 0 .7rem}blockquote[class*=-callout]>p:first-child{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;margin:0 0 .4rem;font-weight:700;line-height:1.35;color:var(--dark)}[saved-theme=dark] blockquote[class*=-callout]>p:first-child{color:var(--gray)}blockquote[class*=-callout]>p:first-child::before{font-family:var(--font-header);font-size:.7rem;font-weight:700;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--cc) 78%,black)}[saved-theme=dark] blockquote[class*=-callout]>p:first-child::before{color:var(--cc)}blockquote[class*=-callout]>p:first-child::after{display:none}blockquote[class*=-callout]>p:first-child>a{margin-block:0;font-weight:700!important}blockquote[class*=-callout]>p:first-child:has(>br:first-child){display:block;font-weight:400;color:var(--gray)}blockquote[class*=-callout]>p:first-child:has(>br:first-child)::before{display:block;margin-bottom:.35rem}blockquote[class*=-callout]>p:first-child:has(>br:first-child)>br:first-child{display:none}@media only screen and (max-width:680px){blockquote[class*=-callout]{padding:.6rem .9rem .7rem 1rem}}blockquote.summary-callout{--cc:var(--callout-summary)}blockquote.summary-callout>p:first-child::before{content:"summary"}blockquote.abstract-callout{--cc:var(--callout-summary)}blockquote.abstract-callout>p:first-child::before{content:"abstract"}blockquote.tldr-callout{--cc:var(--callout-summary)}blockquote.tldr-callout>p:first-child::before{content:"tldr"}blockquote.bug-callout{--cc:var(--callout-bug)}blockquote.bug-callout>p:first-child::before{content:"bug"}blockquote.danger-callout{--cc:var(--callout-danger)}blockquote.danger-callout>p:first-child::before{content:"danger"}blockquote.error-callout{--cc:var(--callout-danger)}blockquote.error-callout>p:first-child::before{content:"error"}blockquote.example-callout{--cc:var(--callout-example)}blockquote.example-callout>p:first-child::before{content:"example"}blockquote.fail-callout{--cc:var(--callout-fail)}blockquote.fail-callout>p:first-child::before{content:"fail"}blockquote.failure-callout{--cc:var(--callout-fail)}blockquote.failure-callout>p:first-child::before{content:"failure"}blockquote.missing-callout{--cc:var(--callout-fail)}blockquote.missing-callout>p:first-child::before{content:"missing"}blockquote.info-callout{--cc:var(--callout-info)}blockquote.info-callout>p:first-child::before{content:"info"}blockquote.todo-callout{--cc:var(--callout-info)}blockquote.todo-callout>p:first-child::before{content:"todo"}blockquote.note-callout{--cc:var(--callout-note)}blockquote.note-callout>p:first-child::before{content:"note"}blockquote.question-callout{--cc:var(--callout-question)}blockquote.question-callout>p:first-child::before{content:"question"}blockquote.help-callout{--cc:var(--callout-question)}blockquote.help-callout>p:first-child::before{content:"help"}blockquote.faq-callout{--cc:var(--callout-question)}blockquote.faq-callout>p:first-child::before{content:"faq"}blockquote.quote-callout{--cc:var(--callout-quote)}blockquote.quote-callout>p:first-child::before{content:"quote"}blockquote.cite-callout{--cc:var(--callout-quote)}blockquote.cite-callout>p:first-child::before{content:"cite"}blockquote.done-callout{--cc:var(--callout-done)}blockquote.done-callout>p:first-child::before{content:"done"}blockquote.success-callout{--cc:var(--callout-done)}blockquote.success-callout>p:first-child::before{content:"success"}blockquote.check-callout{--cc:var(--callout-done)}blockquote.check-callout>p:first-child::before{content:"check"}blockquote.important-callout{--cc:var(--callout-important)}blockquote.important-callout>p:first-child::before{content:"important"}blockquote.tip-callout{--cc:var(--callout-important)}blockquote.tip-callout>p:first-child::before{content:"tip"}blockquote.hint-callout{--cc:var(--callout-important)}blockquote.hint-callout>p:first-child::before{content:"hint"}blockquote.warning-callout{--cc:var(--callout-warning)}blockquote.warning-callout>p:first-child::before{content:"warning"}blockquote.caution-callout{--cc:var(--callout-warning)}blockquote.caution-callout>p:first-child::before{content:"caution"}blockquote.attention-callout{--cc:var(--callout-warning)}blockquote.attention-callout>p:first-child::before{content:"attention"}@keyframes popover-v2-dropin{0%{opacity:0;visibility:hidden}1%{opacity:0}100%{opacity:1;visibility:visible}}.popover-v2{z-index:999;position:fixed;overflow:visible;padding:1rem;left:0;top:0;will-change:transform;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}.popover-v2>.popover-v2-inner{position:relative;width:30rem;max-height:20rem;padding:1rem;font-weight:initial;font-style:initial;line-height:normal;font-size:.9rem;font-family:var(--bodyFont,inherit);border:1px solid var(--lightgray,#ddd);background-color:var(--light,#fff);color:var(--dark,#222);border-radius:5px;box-shadow:6px 6px 36px rgba(0,0,0,.25);overflow:auto;overscroll-behavior:contain;white-space:normal;cursor:default}.popover-v2>.popover-v2-inner[data-content-type*=pdf],.popover-v2>.popover-v2-inner[data-content-type*=image]{padding:0;max-height:100%}.popover-v2>.popover-v2-inner[data-content-type*=image] img{margin:0;border-radius:0;display:block;max-width:100%}.popover-v2>.popover-v2-inner[data-content-type*=pdf] iframe{width:100%;min-height:20rem;border:0}.popover-v2 h1,.popover-v2 h2,.popover-v2 h3{font-size:1rem;margin-top:.4rem}.popover-v2 p{margin:.4rem 0}.popover-v2 img{max-width:100%}.popover-v2 .meta{opacity:.7;font-style:italic;font-size:.85rem;color:var(--gray,#4e4e4e)}.popover-v2 .meta .meta-label-full{display:none}.popover-v2 .meta .meta-label-short{display:inline}.popover-v2 .e-content a[href^=http]:not(.hanchor){color:var(--gray);text-decoration:underline;text-decoration-color:var(--secondary);text-underline-offset:3px;text-decoration-thickness:2px}.popover-v2 .e-content a.internal-link:not(.broken),.popover-v2 .e-content a:not(.internal-link):not(.hanchor):not([href^=http]){color:var(--gray);background-color:transparent;text-decoration:underline;text-decoration-color:var(--tertiary);text-underline-offset:3px;text-decoration-thickness:2px}.popover-v2 .e-content a.internal-link.broken{color:#000;background-color:transparent;text-decoration:underline dashed;text-decoration-color:#555;text-underline-offset:3px;text-decoration-thickness:1px;cursor:not-allowed}[saved-theme=dark] .popover-v2 .e-content a[href^=http]:not(.hanchor){text-decoration-color:var(--primary)}[saved-theme=dark] .popover-v2 .e-content a.internal-link:not(.broken),[saved-theme=dark] .popover-v2 .e-content a:not(.internal-link):not(.hanchor):not([href^=http]){text-decoration-color:var(--secondary)}[saved-theme=dark] .popover-v2 .e-content a.internal-link.broken{color:#8ba4b0;opacity:.7;text-decoration-color:#8ba4b0}body[theme=dark] .popover-v2>.popover-v2-inner{background-color:#1f1f28;color:#dcd7ba;border-color:#54546d}body[theme=dark] .popover-v2 .meta{color:#c8c093}body[theme=dark] .popover-v2 .e-content a.internal-link:not(.broken),body[theme=dark] .popover-v2 .e-content a:not(.internal-link):not(.hanchor):not([href^=http]){color:#dcd7ba;text-decoration-color:#658594}body[theme=dark] .popover-v2 .e-content a[href^=http]:not(.hanchor){color:#dcd7ba;text-decoration-color:#d27e99}body[theme=dark] .popover-v2 .e-content a.internal-link.broken{color:#7e8a8a;text-decoration-color:#7e8a8a}html.light .popover-v2>.popover-v2-inner,html.ayu .popover-v2>.popover-v2-inner,html.burgundy .popover-v2>.popover-v2-inner,html.coal .popover-v2>.popover-v2-inner,html.kanagawa .popover-v2>.popover-v2-inner,html.navy .popover-v2>.popover-v2-inner,html.pinkrose .popover-v2>.popover-v2-inner,html.rust .popover-v2>.popover-v2-inner,html.tokyonight .popover-v2>.popover-v2-inner{background-color:var(--bg);color:var(--fg);border-color:var(--quote-border,var(--icons))}html.light .popover-v2 .meta,html.ayu .popover-v2 .meta,html.burgundy .popover-v2 .meta,html.coal .popover-v2 .meta,html.kanagawa .popover-v2 .meta,html.navy .popover-v2 .meta,html.pinkrose .popover-v2 .meta,html.rust .popover-v2 .meta,html.tokyonight .popover-v2 .meta{color:var(--icons)}html.light .popover-v2 .e-content a.internal-link:not(.broken),html.ayu .popover-v2 .e-content a.internal-link:not(.broken),html.burgundy .popover-v2 .e-content a.internal-link:not(.broken),html.coal .popover-v2 .e-content a.internal-link:not(.broken),html.kanagawa .popover-v2 .e-content a.internal-link:not(.broken),html.navy .popover-v2 .e-content a.internal-link:not(.broken),html.pinkrose .popover-v2 .e-content a.internal-link:not(.broken),html.rust .popover-v2 .e-content a.internal-link:not(.broken),html.tokyonight .popover-v2 .e-content a.internal-link:not(.broken){color:var(--fg);text-decoration-color:var(--links)}html.light .popover-v2 .e-content a[href^=http]:not(.hanchor),html.ayu .popover-v2 .e-content a[href^=http]:not(.hanchor),html.burgundy .popover-v2 .e-content a[href^=http]:not(.hanchor),html.coal .popover-v2 .e-content a[href^=http]:not(.hanchor),html.kanagawa .popover-v2 .e-content a[href^=http]:not(.hanchor),html.navy .popover-v2 .e-content a[href^=http]:not(.hanchor),html.pinkrose .popover-v2 .e-content a[href^=http]:not(.hanchor),html.rust .popover-v2 .e-content a[href^=http]:not(.hanchor),html.tokyonight .popover-v2 .e-content a[href^=http]:not(.hanchor){color:var(--fg);text-decoration-color:var(--inline-code-color)}html.light .popover-v2 .e-content a.internal-link.broken,html.ayu .popover-v2 .e-content a.internal-link.broken,html.burgundy .popover-v2 .e-content a.internal-link.broken,html.coal .popover-v2 .e-content a.internal-link.broken,html.kanagawa .popover-v2 .e-content a.internal-link.broken,html.navy .popover-v2 .e-content a.internal-link.broken,html.pinkrose .popover-v2 .e-content a.internal-link.broken,html.rust .popover-v2 .e-content a.internal-link.broken,html.tokyonight .popover-v2 .e-content a.internal-link.broken{color:var(--icons);text-decoration-color:var(--icons);text-decoration-style:dashed}@media(max-width:768px){.popover-v2{display:none!important}}.popover-v2.active-popover{animation:popover-v2-dropin .3s ease;animation-fill-mode:forwards;animation-delay:.15s}.popover-v2:hover{visibility:visible;opacity:1}#search-container{position:fixed;z-index:9999;left:0;top:0;width:100vw;height:100%;overflow-y:auto;display:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:rgba(0,0,0,.15)}:is(body[theme=dark],[saved-theme=dark]) #search-container{background:rgba(0,0,0,.4)}#search-space{width:50%;margin-top:15vh;margin-left:auto;margin-right:auto;margin-bottom:4em}@media(max-width:1200px){#search-space{width:90%}}#search-filters{display:flex;gap:.5em;flex-wrap:wrap;padding:.5em 1em;background:#fff;border:1px solid #ddd;border-bottom:none;border-top-left-radius:5px;border-top-right-radius:5px;box-shadow:0 14px 50px rgba(27,33,48,.12),0 10px 30px rgba(27,33,48,.16)}:is(body[theme=dark],[saved-theme=dark]) #search-filters{background:#1f1f28;border-color:#54546d}#search-filters button{background:0 0;border:1px solid #ccc;border-radius:4px;padding:.15em .55em;cursor:pointer;font-size:.8em;font-family:var(--font-body,inherit);color:#555}:is(body[theme=dark],[saved-theme=dark]) #search-filters button{border-color:#54546d;color:#a9a9b3}#search-filters button.active{background:#e8ecf7;border-color:#3150aa;font-weight:600;color:#3150aa}:is(body[theme=dark],[saved-theme=dark]) #search-filters button.active{background:#363646;border-color:#658594;color:#dcd7ba}#search-filters button:hover:not(.active){border-color:#aaa;color:#333}:is(body[theme=dark],[saved-theme=dark]) #search-filters button:hover:not(.active){border-color:#7e8a8a;color:#dcd7ba}#search-filters .search-fullpage-link{margin-left:auto;align-self:center;font-size:.72em;color:#999;text-decoration:none;white-space:nowrap;border-bottom:1px dotted transparent;transition:color .15s ease,border-color .15s ease}#search-filters .search-fullpage-link:hover{color:#555;border-bottom-color:initial}:is(body[theme=dark],[saved-theme=dark]) #search-filters .search-fullpage-link{color:#6b6b7b}:is(body[theme=dark],[saved-theme=dark]) #search-filters .search-fullpage-link:hover{color:#a9a9b3}#search-bar{display:block;width:100%;box-sizing:border-box;padding:.85em 1.1em;font-size:1.25em;font-family:var(--font-body,inherit);border:1px solid #ddd;border-top:none;border-bottom:none;background:#fff;color:#161209;box-shadow:0 14px 50px rgba(27,33,48,.12),0 10px 30px rgba(27,33,48,.16)}:is(body[theme=dark],[saved-theme=dark]) #search-bar{background:#1f1f28;border-color:#54546d;color:#dcd7ba}#search-bar::placeholder{color:#aaa}:is(body[theme=dark],[saved-theme=dark]) #search-bar::placeholder{color:#54546d}#search-bar:focus{outline:none}#results-container{background:#fff;border-bottom-left-radius:5px;border-bottom-right-radius:5px;box-shadow:0 14px 50px rgba(27,33,48,.12),0 10px 30px rgba(27,33,48,.16)}:is(body[theme=dark],[saved-theme=dark]) #results-container{background:#1f1f28}#results-container .result-card{display:block;width:100%;padding:1em;cursor:pointer;border:1px solid #ddd;border-bottom:none;background:#fff;text-align:left;font-family:var(--font-body,inherit);font-size:100%;line-height:1.4;margin:0;transition:background .15s ease}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card{background:#1f1f28;border-color:#54546d}#results-container .result-card:hover,#results-container .result-card:focus{background:rgba(180,180,180,.12);outline:none}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card:hover,:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card:focus{background:#2a2a37}#results-container .result-card:last-of-type{border-bottom-left-radius:5px;border-bottom-right-radius:5px;border-bottom:1px solid #ddd}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card:last-of-type{border-bottom-color:#54546d}#results-container .result-card h3,#results-container .result-card p{margin:0}#results-container .result-card h3{font-size:1em;font-weight:600;color:#3150aa}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card h3{color:#658594}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card:hover h3{color:#d27e99}#results-container .result-card p{font-size:.85em;color:#555;margin-top:.3em}:is(body[theme=dark],[saved-theme=dark]) #results-container .result-card p{color:#a9a9b3}.search-highlight{background-color:rgba(49,80,170,.15);padding:.05em .2em;border-radius:3px}:is(body[theme=dark],[saved-theme=dark]) .search-highlight{background-color:rgba(101,133,148,.3)}.source-badge{display:inline-block;font-size:.65em;padding:.1em .45em;border-radius:3px;margin-left:.5em;vertical-align:middle;font-weight:500}.source-badge.source-blog{background:rgba(37,99,235,.12);color:#2563eb}.source-badge.source-brain{background:rgba(22,163,74,.12);color:#16a34a}:is(body[theme=dark],[saved-theme=dark]) .source-badge.source-blog{background:rgba(101,133,148,.2);color:#658594}:is(body[theme=dark],[saved-theme=dark]) .source-badge.source-brain{background:rgba(22,163,74,.15);color:#76946a}.result-date{display:inline-block;font-size:.65em;color:#888;margin-left:.5em;vertical-align:middle}:is(body[theme=dark],[saved-theme=dark]) .result-date{color:#7e8a8a}:root:not([saved-theme=dark]) .bg{color:#272822;background-color:#fafafa}:root:not([saved-theme=dark]) .chroma{color:#272822;background-color:#fafafa}:root:not([saved-theme=dark]) .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root:not([saved-theme=dark]) .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}:root:not([saved-theme=dark]) .chroma .hl{background-color:#ffc}:root:not([saved-theme=dark]) .chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#6d6d6d}:root:not([saved-theme=dark]) .chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#686868}:root:not([saved-theme=dark]) .chroma .line{display:flex}:root:not([saved-theme=dark]) .chroma .k{color:#007289}:root:not([saved-theme=dark]) .chroma .kc{color:#007289}:root:not([saved-theme=dark]) .chroma .kd{color:#007289}:root:not([saved-theme=dark]) .chroma .kn{color:#c81e5c}:root:not([saved-theme=dark]) .chroma .kp{color:#007289}:root:not([saved-theme=dark]) .chroma .kr{color:#007289}:root:not([saved-theme=dark]) .chroma .kt{color:#007289}:root:not([saved-theme=dark]) .chroma .n{color:#111}:root:not([saved-theme=dark]) .chroma .na{color:#4e7400}:root:not([saved-theme=dark]) .chroma .nb{color:#111}:root:not([saved-theme=dark]) .chroma .bp{color:#111}:root:not([saved-theme=dark]) .chroma .nc{color:#4e7400}:root:not([saved-theme=dark]) .chroma .no{color:#007289}:root:not([saved-theme=dark]) .chroma .nd{color:#4e7400}:root:not([saved-theme=dark]) .chroma .ni{color:#111}:root:not([saved-theme=dark]) .chroma .ne{color:#4e7400}:root:not([saved-theme=dark]) .chroma .nf{color:#4e7400}:root:not([saved-theme=dark]) .chroma .fm{color:#111}:root:not([saved-theme=dark]) .chroma .nl{color:#111}:root:not([saved-theme=dark]) .chroma .nn{color:#111}:root:not([saved-theme=dark]) .chroma .nx{color:#4e7400}:root:not([saved-theme=dark]) .chroma .py{color:#111}:root:not([saved-theme=dark]) .chroma .nt{color:#c81e5c}:root:not([saved-theme=dark]) .chroma .nv{color:#111}:root:not([saved-theme=dark]) .chroma .vc{color:#111}:root:not([saved-theme=dark]) .chroma .vg{color:#111}:root:not([saved-theme=dark]) .chroma .vi{color:#111}:root:not([saved-theme=dark]) .chroma .vm{color:#111}:root:not([saved-theme=dark]) .chroma .l{color:#7758ae}:root:not([saved-theme=dark]) .chroma .ld{color:#985b00}:root:not([saved-theme=dark]) .chroma .s{color:#985b00}:root:not([saved-theme=dark]) .chroma .sa{color:#985b00}:root:not([saved-theme=dark]) .chroma .sb{color:#985b00}:root:not([saved-theme=dark]) .chroma .sc{color:#985b00}:root:not([saved-theme=dark]) .chroma .dl{color:#985b00}:root:not([saved-theme=dark]) .chroma .sd{color:#985b00}:root:not([saved-theme=dark]) .chroma .s2{color:#985b00}:root:not([saved-theme=dark]) .chroma .se{color:#7840ef}:root:not([saved-theme=dark]) .chroma .sh{color:#985b00}:root:not([saved-theme=dark]) .chroma .si{color:#985b00}:root:not([saved-theme=dark]) .chroma .sx{color:#985b00}:root:not([saved-theme=dark]) .chroma .sr{color:#985b00}:root:not([saved-theme=dark]) .chroma .s1{color:#985b00}:root:not([saved-theme=dark]) .chroma .ss{color:#985b00}:root:not([saved-theme=dark]) .chroma .m{color:#7758ae}:root:not([saved-theme=dark]) .chroma .mb{color:#7758ae}:root:not([saved-theme=dark]) .chroma .mf{color:#7758ae}:root:not([saved-theme=dark]) .chroma .mh{color:#7758ae}:root:not([saved-theme=dark]) .chroma .mi{color:#7758ae}:root:not([saved-theme=dark]) .chroma .il{color:#7758ae}:root:not([saved-theme=dark]) .chroma .mo{color:#7758ae}:root:not([saved-theme=dark]) .chroma .o{color:#c81e5c}:root:not([saved-theme=dark]) .chroma .ow{color:#c81e5c}:root:not([saved-theme=dark]) .chroma .p{color:#111}:root:not([saved-theme=dark]) .chroma .c{color:#6c6957}:root:not([saved-theme=dark]) .chroma .ch{color:#6c6957}:root:not([saved-theme=dark]) .chroma .cm{color:#6c6957}:root:not([saved-theme=dark]) .chroma .c1{color:#6c6957}:root:not([saved-theme=dark]) .chroma .cs{color:#6c6957}:root:not([saved-theme=dark]) .chroma .cp{color:#6c6957}:root:not([saved-theme=dark]) .chroma .cpf{color:#6c6957}:root:not([saved-theme=dark]) .chroma .ge{font-style:italic}:root:not([saved-theme=dark]) .chroma .gs{font-weight:700}[saved-theme=dark] .bg{color:#f8f8f2;background-color:#282a36}[saved-theme=dark] .chroma{color:#f8f8f2;background-color:#282a36}[saved-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[saved-theme=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}[saved-theme=dark] .chroma .hl{background-color:#ffc}[saved-theme=dark] .chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#8d8d8d}[saved-theme=dark] .chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}[saved-theme=dark] .chroma .line{display:flex}[saved-theme=dark] .chroma .k{color:#ff79c6}[saved-theme=dark] .chroma .kc{color:#ff79c6}[saved-theme=dark] .chroma .kd{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .kn{color:#ff79c6}[saved-theme=dark] .chroma .kp{color:#ff79c6}[saved-theme=dark] .chroma .kr{color:#ff79c6}[saved-theme=dark] .chroma .kt{color:#8be9fd}[saved-theme=dark] .chroma .na{color:#50fa7b}[saved-theme=dark] .chroma .nb{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .nc{color:#50fa7b}[saved-theme=dark] .chroma .nf{color:#50fa7b}[saved-theme=dark] .chroma .nl{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .nt{color:#ff79c6}[saved-theme=dark] .chroma .nv{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .vc{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .vg{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .vi{color:#8be9fd;font-style:italic}[saved-theme=dark] .chroma .s{color:#f1fa8c}[saved-theme=dark] .chroma .sa{color:#f1fa8c}[saved-theme=dark] .chroma .sb{color:#f1fa8c}[saved-theme=dark] .chroma .sc{color:#f1fa8c}[saved-theme=dark] .chroma .dl{color:#f1fa8c}[saved-theme=dark] .chroma .sd{color:#f1fa8c}[saved-theme=dark] .chroma .s2{color:#f1fa8c}[saved-theme=dark] .chroma .se{color:#f1fa8c}[saved-theme=dark] .chroma .sh{color:#f1fa8c}[saved-theme=dark] .chroma .si{color:#f1fa8c}[saved-theme=dark] .chroma .sx{color:#f1fa8c}[saved-theme=dark] .chroma .sr{color:#f1fa8c}[saved-theme=dark] .chroma .s1{color:#f1fa8c}[saved-theme=dark] .chroma .ss{color:#f1fa8c}[saved-theme=dark] .chroma .m{color:#bd93f9}[saved-theme=dark] .chroma .mb{color:#bd93f9}[saved-theme=dark] .chroma .mf{color:#bd93f9}[saved-theme=dark] .chroma .mh{color:#bd93f9}[saved-theme=dark] .chroma .mi{color:#bd93f9}[saved-theme=dark] .chroma .il{color:#bd93f9}[saved-theme=dark] .chroma .mo{color:#bd93f9}[saved-theme=dark] .chroma .o{color:#ff79c6}[saved-theme=dark] .chroma .ow{color:#ff79c6}[saved-theme=dark] .chroma .c{color:#6272a4}[saved-theme=dark] .chroma .ch{color:#6272a4}[saved-theme=dark] .chroma .cm{color:#6272a4}[saved-theme=dark] .chroma .c1{color:#6272a4}[saved-theme=dark] .chroma .cs{color:#6272a4}[saved-theme=dark] .chroma .cp{color:#ff79c6}[saved-theme=dark] .chroma .cpf{color:#ff79c6}[saved-theme=dark] .chroma .gd{color:#f55}[saved-theme=dark] .chroma .ge{text-decoration:underline}[saved-theme=dark] .chroma .gh{font-weight:700}[saved-theme=dark] .chroma .gi{color:#50fa7b;font-weight:700}[saved-theme=dark] .chroma .go{color:#44475a}[saved-theme=dark] .chroma .gu{font-weight:700}[saved-theme=dark] .chroma .gl{text-decoration:underline}