﻿@font-face{font-family:"Nunito";src:url("/assets/fonts/Nunito-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Nunito";src:url("/assets/fonts/Nunito-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}html{view-transition-name:none}:where(*,*::before,*::after){margin:0;padding:0;box-sizing:border-box;border:0 solid #e2e8f0}:where(html){color-scheme:dark light;-webkit-text-size-adjust:none;font-size:100%}:where([hidden]){display:none !important}@media(prefers-reduced-motion: no-preference){:where(html:focus-within){scroll-behavior:smooth}}:where(body){min-height:100vh;min-height:100dvh;line-height:1.5;font-family:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed;overflow-x:hidden}:where(input,button,textarea,select){font:inherit;color:inherit;background:rgba(0,0,0,0)}:where(textarea){resize:vertical}:where(label:has(>input:disabled),label:has(+input:disabled)){cursor:not-allowed}:where(button){border-style:solid}:where(a){text-underline-offset:.2ex}:where(ul,ol){list-style:none}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block;max-width:100%;height:auto;width:auto}:where(img,picture,svg){max-width:100%;max-height:100%}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(h1,h2,h3){line-height:calc(1em + .5rem)}:where(hr){border-width:1px 0 0 0;color:inherit;height:0;overflow:visible}:where(:focus-visible){outline:2px dashed var(--focus-color, Highlight);outline-offset:4px}:where(.visually-hidden:not(:where(:focus,:active,.not-visually-hidden))){clip-path:inset(50%) !important;height:1px !important;width:1px !important;overflow:hidden !important;position:absolute !important;white-space:nowrap !important;border:0 !important}a:is(:visited,:link,:hover,:focus-within){text-decoration:underline;text-underline-position:under;color:inherit}::selection{background-color:#13182d !important;color:#d14 !important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}html{font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{display:flex;flex-direction:column;position:relative;align-items:center}body::-webkit-scrollbar{width:.5rem}body::-webkit-scrollbar-thumb{background-color:var(--color-text-secondary);border-radius:1rem}body::-webkit-scrollbar-track{background-color:var(--color-bg-primary);border-radius:1rem}@supports not selector(::-webkit-scrollbar){html{scrollbar-width:thin;scrollbar-color:var(--color-text-secondary) var(--color-bg-primary)}}main{flex:1;width:100%;max-width:100%;margin-top:3rem;padding:0 1.5rem}@media(min-width: 1280px){main{max-width:1024px}}.content .content-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(18.75rem, 1fr));gap:1rem}@media(min-width: 768px){.content .content-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 767px){.content .content-grid{grid-template-columns:1fr}}.content .content-wrapper:not(:last-child)::after{content:"";display:block;height:1.875rem}.content .content-wrapper>h3{margin:1rem 0;color:var(--color-text-primary)}:root.font-fallback,:root.font-fallback *:not(code,pre,code *),:root.font-fallback *::before,:root.font-fallback *::after{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif !important}body{font-weight:400}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-text-primary);margin-bottom:1rem}h1>a.header-anchor,h2>a.header-anchor,h3>a.header-anchor,h4>a.header-anchor,h5>a.header-anchor,h6>a.header-anchor{color:var(--color-text-secondary);margin-left:.25rem;text-decoration:none;transition:opacity .15s ease;opacity:0}h1:hover>a.header-anchor,h2:hover>a.header-anchor,h3:hover>a.header-anchor,h4:hover>a.header-anchor,h5:hover>a.header-anchor,h6:hover>a.header-anchor{opacity:1}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-base)}h6{font-size:var(--font-size-sm)}p{margin-bottom:1rem}p:last-child{margin-bottom:0}p img{border:1px solid var(--color-border);box-shadow:var(--shadow-md);aspect-ratio:auto;margin:1.5rem 0;border-radius:.5rem;width:100%;max-width:100%;height:auto;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}p a{text-decoration-thickness:from-font;text-underline-position:under}p::selection,li::selection{color:#d14;background-color:#13182d}a{color:var(--color-primary);text-decoration:underline;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}strong,b{font-weight:700}em,i{font-style:italic}small{font-size:var(--font-size-sm)}blockquote{background-color:var(--color-bg-secondary);border-left:.25rem solid var(--color-border);padding:1rem 1.5rem;margin:1.5rem 0;font-style:italic;color:var(--color-text-secondary)}ul,ol{padding-left:1.5rem;margin-bottom:1rem}ul li,ol li{margin-bottom:.5rem}article ul,article ol{list-style-type:disc;margin-top:1rem;margin-bottom:1rem}article ul li,article ol li{margin:.75rem 0;line-height:1.7}article ul li a,article ol li a{word-wrap:break-word}article ol{list-style-type:decimal}article{margin-bottom:3.7rem}main hr{background-color:var(--color-secondary);border:none;border-radius:.5rem;height:.2rem;margin:1.6rem auto;width:15rem}table{display:block;overflow-x:auto;text-align:left;color:inherit;border-collapse:collapse;background-color:rgba(0,0,0,0);width:100%;max-width:100%;margin:1.5rem auto;font-size:.875rem}@media(max-width: 639px){table{font-size:.75rem}}table tbody,table thead,table tfoot{display:table;width:100%;min-width:100%;table-layout:fixed}table tr{display:table-row;width:100%}table td,table th{display:table-cell;border:1px solid var(--color-border);padding:.75rem 1rem;vertical-align:top;background-color:rgba(0,0,0,0);word-wrap:break-word;overflow-wrap:break-word}@media(max-width: 639px){table td,table th{padding:.5rem .75rem}}table th{text-align:left;font-weight:700}table::-webkit-scrollbar{height:.2rem}table::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:.8rem}table::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:.8rem}table::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.cp_embed_wrapper iframe{height:650px}:root{--color-primary: #cfd7c7;--color-primary-dark: #b8c1b0;--color-primary-light: #e6ebe1;--color-accent: #0b2027;--font-body: Nunito, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;--font-mono: JetBrains Mono, Fira Code, Consolas, Courier New, monospace;--font-size-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);--font-size-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);--font-size-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);--font-size-lg: clamp(1.125rem, 1rem + 0.625vw, 1.5rem);--font-size-xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);--font-size-2xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);--font-size-3xl: clamp(2.5rem, 2rem + 2.5vw, 4rem);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--radius-sm: 0.25rem;--radius-md: 0.5rem;--radius-lg: 1rem;--transition-fast: 150ms ease-in-out;--transition-base: 250ms ease-in-out}:root{--color-bg-primary: #0b2027;--color-bg-secondary: #1a3d47;--color-text-primary: #abb2a4;--color-text-secondary: rgba(207, 215, 199, 0.631372549);--color-border: #1a3d47;--color-background: #0b2027;--color-text: #abb2a4;--color-secondary: rgba(207, 215, 199, 0.631372549);--badge-private-bg: rgba(255, 193, 7, 0.15);--badge-private-text: rgb(255, 193, 7);--badge-private-border: rgba(255, 193, 7, 0.3);--badge-private-bg-hover: rgba(255, 193, 7, 0.25);--badge-private-border-hover: rgba(255, 193, 7, 0.5)}html[data-theme=light],html.light-theme{color-scheme:light;--color-bg-primary: #cfd7c7;--color-bg-secondary: #f3f4f6;--color-text-primary: #21292c;--color-text-secondary: #4f5a56;--color-border: #e5e7eb;--color-background: #cfd7c7;--color-text: #21292c;--color-secondary: #4f5a56;--badge-private-bg: rgba(255, 193, 7, 0.25);--badge-private-text: #996500;--badge-private-border: rgba(255, 193, 7, 0.5);--badge-private-bg-hover: rgba(255, 193, 7, 0.35);--badge-private-border-hover: rgba(255, 193, 7, 0.7)}html[data-theme=dark],html.dark-theme{color-scheme:dark;--color-bg-primary: #0b2027;--color-bg-secondary: #1a3d47;--color-text-primary: #abb2a4;--color-text-secondary: rgba(207, 215, 199, 0.631372549);--color-border: #1a3d47;--color-background: #0b2027;--color-text: #abb2a4;--color-secondary: rgba(207, 215, 199, 0.631372549)}html.high-contrast{--color-bg-primary: #000000 !important;--color-bg-secondary: #000000 !important;--color-text-primary: #ffff00 !important;--color-text-secondary: #ffffff !important;--color-border: #ffffff !important;--color-background: #000000 !important;--color-text: #ffff00 !important;--color-secondary: #ffffff !important}html.high-contrast body *{text-shadow:none !important;box-shadow:none !important}html.high-contrast body *:not(.page-container__about--download-data)::before,html.high-contrast body *:not(.page-container__about--download-data)::after{background-image:none !important}html.high-contrast a{color:#00ffff !important;text-decoration:underline !important;text-decoration-thickness:2px}html.terminal-mode{--color-bg-primary: #0d0d0d !important;--color-bg-secondary: #0d0d0d !important;--color-text-primary: #00ff41 !important;--color-text-secondary: #00ff41 !important;--color-border: #00ff41 !important;--color-background: #0d0d0d !important;--color-text: #00ff41 !important;--font-body: JetBrains Mono, Fira Code, Consolas, Courier New, monospace !important}html.terminal-mode::before{content:" ";display:block;position:fixed;top:0;left:0;bottom:0;right:0;background:linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%),linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));z-index:9999;background-size:100% 3px,3px 100%;pointer-events:none;opacity:.2}html.terminal-mode h1,html.terminal-mode h2,html.terminal-mode h3{display:flex;align-items:center}html.terminal-mode h1::after,html.terminal-mode h2::after,html.terminal-mode h3::after{content:"▊";margin-left:.5ch;color:var(--color-text-primary);animation:terminal-cursor 1s steps(2) infinite;will-change:opacity}html.terminal-mode ::selection{background:var(--color-text-primary);color:var(--color-background)}html.terminal-mode.terminal-resetting{pointer-events:none;animation:terminal-shake .15s infinite}html.terminal-mode.terminal-resetting body{animation:terminal-vignette-flicker .1s infinite;filter:brightness(3) contrast(1.5) blur(0.5px)}html.terminal-mode.terminal-resetting::before{opacity:.8;background-size:100% 1px,1px 100%}html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}html.reset-flash::before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.85) 100%);animation:pulse-flash .6s cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none;z-index:9999}html.reset-flash body{pointer-events:none}html[data-theme=dark].reset-flash::before,html.dark-theme.reset-flash::before{background:radial-gradient(circle, rgba(30, 30, 30, 0.95) 0%, rgba(20, 20, 20, 0.85) 100%)}html,body{color:var(--color-text);background-color:var(--color-background);font-family:var(--font-body);font-size:var(--font-size-base)}html:not(.js-loading):not(.no-transition):not(.reduce-motion) html,html:not(.js-loading):not(.no-transition):not(.reduce-motion) body{transition:background-color var(--transition-base),color var(--transition-base)}html.no-transition,html.no-transition *,html.no-transition *::before,html.no-transition *::after,html.no-transition body,html.js-loading,html.js-loading *,html.js-loading *::before,html.js-loading *::after,html.js-loading body{transition:none !important;animation-duration:.01ms !important}@keyframes rainbow{0%{background-position:0% 82%}50%{background-position:100% 19%}100%{background-position:0% 82%}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes blogPostFadeIn{from{opacity:0;transform:translateY(0.625rem)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0;transform:translateY(0.625rem)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes terminal-cursor{0%,100%{opacity:1}50%{opacity:0}}@keyframes pulse-flash{0%{opacity:0;transform:scale(0.95)}50%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.02)}}@keyframes terminal-shake{0%{transform:translate(0, 0)}20%{transform:translate(-3px, 2px)}40%{transform:translate(3px, -1px)}60%{transform:translate(-3px, -2px)}80%{transform:translate(3px, 1px)}100%{transform:translate(0, 0)}}@keyframes terminal-vignette-flicker{0%,100%{opacity:1}50%{opacity:.7}}.header{background-color:var(--color-bg-primary);width:100%}@media(max-width: 767px){.header{position:sticky;top:0;z-index:200}}.header nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem}.header nav .header__nav--logo a{font-size:clamp(1.5rem,1.25rem + 1.25vw,2rem);font-family:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:700;text-decoration:none;color:var(--color-text-primary);transition:opacity 150ms ease-in-out}.header nav .header__nav--logo a:hover{opacity:.7}.header nav [data-nav-type=mobile]{display:none}@media(max-width: 767px){.header nav [data-nav-type=mobile]{display:block}}.header nav [data-nav-type=mobile] .hamburger{background:none;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);font-size:clamp(1.125rem,1rem + .625vw,1.5rem);margin-left:2rem;cursor:pointer}.header nav [data-nav-type=mobile] .hamburger svg{width:clamp(1.125rem,1rem + .625vw,1.5rem);height:auto}.header nav [data-nav-type=mobile] .hamburger svg path{fill:currentColor}@media(max-width: 767px){.header nav [data-nav-type=desktop]{display:none}}.header nav [data-nav-type=desktop] ul{display:flex;align-items:center;justify-content:center;gap:2rem;list-style:none;font-size:clamp(1.125rem,1rem + .625vw,1.5rem);margin-bottom:0;padding-left:0}.header nav [data-nav-type=desktop] ul li{margin-bottom:0}.header nav [data-nav-type=desktop] ul li a{color:var(--color-text-primary);text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:.5rem;transition:all 150ms ease-in-out}.header nav [data-nav-type=desktop] ul li a:hover{background:var(--color-bg-secondary);opacity:.8}.header nav [data-nav-type=desktop] ul li a.nav__links__link--active{text-decoration:underline;font-weight:600}.blur-container{position:fixed;inset:0;background-color:rgba(0,0,0,.5);backdrop-filter:blur(4px);z-index:400;visibility:hidden;opacity:0;transition:visibility .3s ease,opacity .3s ease}.blur-container.active{visibility:visible;opacity:1}.blur-container.active .mobile-menu{transform:translateX(0)}.blur-container .mobile-menu{display:flex;flex-direction:column;position:fixed;top:0;right:0;width:15rem;height:100%;background-color:var(--color-bg-primary);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);padding:1rem 1.5rem;z-index:500;transform:translateX(100%);transition:transform .4s cubic-bezier(0.4, 0, 0.2, 1)}.blur-container .mobile-menu .close{background:none;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit;align-self:flex-end;cursor:pointer;margin-bottom:2rem}.blur-container .mobile-menu .close svg{width:clamp(1.125rem,1rem + .625vw,1.5rem)}.blur-container .mobile-menu .close svg path{fill:var(--color-text-primary)}.blur-container .mobile-menu ul{display:flex;flex-direction:column;align-items:flex-end;gap:1rem;list-style:none}.blur-container .mobile-menu ul li a{color:var(--color-text-primary);text-decoration:none;font-size:clamp(1.125rem,1rem + .625vw,1.5rem)}.blur-container .mobile-menu ul li a.nav__links__link--active{text-decoration:underline;font-weight:600}.blur-container .mobile-menu .attribution{margin-top:auto;text-align:right;color:var(--color-text-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem)}.footer{line-height:1.75;margin-top:auto;padding:4rem 1.5rem 6rem;text-align:center;color:var(--color-text-primary)}@media(max-width: 639px){.footer{padding:3rem 1rem 4rem}}.footer__container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}.footer__loadtime{min-height:1.2em;transition:color .3s ease}.footer__loadtime strong{color:var(--color-text-primary);font-weight:600}.footer__loadtime--green strong{color:#0cce6b}.footer__loadtime--orange strong{color:#ffa400}.footer__loadtime--red strong{color:#ff4e42}.footer__lighthouse{color:var(--color-text-primary)}.footer__content{display:flex;flex-direction:column;align-items:center;gap:.25rem}.footer__build-info{text-transform:capitalize}.footer__build-info span{font-weight:500;color:var(--color-text-primary)}.footer__credits,.footer__copyright{margin:0}.footer__credits a,.footer__copyright a{color:inherit;text-decoration:none;font-weight:500;transition:color 150ms ease-in-out}.footer__credits a:hover,.footer__copyright a:hover{color:var(--color-text-primary);text-decoration:underline}.footer__credits a:focus-visible,.footer__copyright a:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:.25rem}.footer__copyright{display:flex;align-items:center;justify-content:center;gap:.25rem}.footer__copyright .fa-copyright::before{margin-right:.25rem}.footer svg.heart{fill:red;animation:pulse 1.5s ease infinite;margin:0 .5rem;position:relative;width:1rem}.lighthouse-scores{display:flex;align-items:center;justify-content:center;gap:.5rem;list-style:none;padding:0;margin:0}.lighthouse-scores__item{display:flex;align-items:center;justify-content:center;width:2.8em;height:2.8em;border:2px solid var(--color-text-primary);border-radius:9999px;font-size:clamp(.75rem,.7rem + .25vw,.875rem);font-weight:600;line-height:1.2;padding:0;color:var(--color-text-primary);transition:transform 150ms ease-in-out,box-shadow 150ms ease-in-out}.lighthouse-scores__item:hover{transform:translateY(-2px) scale(1.1)}.lighthouse-scores__item--good{border-color:#0cce6b;color:#0cce6b}.lighthouse-scores__item--ok{border-color:#3b82f6;color:#3b82f6}.lighthouse-scores__item--average{border-color:#ffa400;color:#ffa400}.lighthouse-scores__item--poor{border-color:#ff4e42;color:#ff4e42}.skip-to-main,#skip-to-main{position:absolute;left:1rem;top:0;z-index:9999;padding:.5rem 1rem;background:var(--color-primary);color:var(--color-accent);text-decoration:none;font-weight:700;border-radius:var(--radius-md);transform:translateY(-10rem);transition:transform .4s ease-out}.skip-to-main:focus,#skip-to-main:focus{transform:translateY(0.5rem);outline:2px dashed var(--focus-color, currentColor);outline-offset:2px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);position:fixed;clip:auto;height:auto;margin:0;overflow:visible;width:auto;white-space:normal}@media(min-width: 768px){.skip-to-main,#skip-to-main{left:50%}.skip-to-main:focus,#skip-to-main:focus{transform:translate(-50%, 0.5rem)}}.page-intro{margin-bottom:2rem}.page-intro h1{margin-bottom:.5rem;color:var(--color-text-primary);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.page-intro p{max-width:45rem;margin:0;color:var(--color-text-secondary);line-height:1.75}.toggle-group{--toggle-gap-x: 1em;--toggle-gap-y: 0.5em;display:flex;flex-wrap:wrap;align-items:center;gap:var(--toggle-gap-y) var(--toggle-gap-x)}.toggle{--track-padding: 2px;--track-width: 2em;--track-height: 1em;--knob-size: 1em;--color-track-border: hsl(0, 75%, 54%);--color-track-bg: hsl(0, 75%, 80%);--color-icon-mark: hsl(0, 75%, 63%);--color-knob-bg: hsl(0, 75%, 54%);background:none;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit;display:inline-flex;align-items:center;cursor:pointer;font-family:inherit;line-height:1}.toggle[aria-pressed=true]{--color-track-border: hsl(156, 78%, 15%);--color-track-bg: hsl(156, 78%, 45%);--color-knob-bg: hsl(156, 78%, 15%)}.toggle:focus{outline:none}.toggle:focus .toggle-control{box-shadow:0 0 0 3px #89deff}@media(max-width: 1023px){.toggle.desktop-only{display:none !important}}@media(min-width: 768px)and (max-width: 1023px){.toggle.hide-on-ipad{display:none !important}}@media(min-width: 1024px){.toggle.mobile-only{display:none !important}}.toggle[disabled]{cursor:not-allowed;opacity:.35;pointer-events:none;filter:grayscale(1)}.toggle .toggle-control{display:inline-block;position:relative;margin-right:.5rem;width:var(--track-width);height:var(--track-height);padding:var(--track-padding);border:2px solid var(--color-track-border);background-color:var(--color-track-bg);border-radius:6.25em;box-sizing:content-box;transition:background-color .15s ease-in-out;flex-shrink:0}.toggle .toggle-control::after{content:"";position:absolute;top:var(--track-padding);left:var(--track-padding);width:var(--knob-size);height:var(--knob-size);border-radius:100%;transition:left .3s ease-in-out,background-color .15s ease-in-out;background:linear-gradient(to bottom left, transparent 42%, var(--color-icon-mark) 42%, var(--color-icon-mark) 58%, transparent 58%),linear-gradient(to bottom right, transparent 42%, var(--color-icon-mark) 42%, var(--color-icon-mark) 58%, transparent 58%),var(--color-knob-bg)}.toggle[aria-pressed=true] .toggle-control::after{left:calc(var(--knob-size) + var(--track-padding));background:var(--color-knob-bg)}.toggle .toggle-text{font-size:1em;line-height:1.5;transition:opacity 150ms ease-in-out}.toggle[aria-pressed=false] .toggle-text{opacity:.7;text-decoration:line-through}.modal{position:fixed;top:50%;right:0;transform:translateY(-50%);margin:0;max-width:400px;width:90%;border:1px solid var(--color-border);border-left:none;border-radius:0 .5rem .5rem 0;color:var(--color-text);background-color:var(--color-background);box-shadow:-10px 0 25px rgba(0,0,0,.5);overflow-y:auto}.modal::backdrop{background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}.modal__header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--color-border)}.modal__header h2{margin:0;font-size:1.25rem}.modal__close{cursor:pointer}.modal__body{padding:1rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal__footer{padding:1rem;border-top:1px solid var(--color-border);font-size:.85rem;background-color:rgba(var(--color-border), 0.05)}.modal__footer .modal__footer-note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0;color:var(--color-text-secondary);font-size:.85rem}.modal__footer .modal__footer-note svg.icon-info{flex-shrink:0;display:inline-block;vertical-align:middle;stroke:currentColor}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0}.settings-open{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:10000;display:flex;align-items:center;min-width:3rem;padding:1rem .75rem;color:var(--color-text);background-color:var(--color-background);border:1px solid var(--color-border);border-right:none;border-radius:.5rem 0 0 .5rem;box-shadow:-4px 0 12px rgba(0,0,0,.15);cursor:pointer;transition:all .3s ease}.settings-open:hover{padding-right:1rem}.settings-open:hover .settings-open__text{max-width:100px;opacity:1;margin-left:.5rem}.settings-open:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.settings-open__icon{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s ease}.settings-open__icon svg{width:100%;height:100%;display:block;stroke:currentColor;fill:none}.settings-open__text{max-width:0;overflow:hidden;white-space:nowrap;opacity:0;transition:max-width .3s ease,opacity .3s ease,margin .3s ease}#settings-modal[open]~.footer .settings-open__icon,dialog#settings-modal[open]~* .settings-open__icon,body:has(#settings-modal[open]) .settings-open__icon{transform:rotate(90deg)}.pagination-nav{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin:3rem 0;padding-top:1.5rem;border-top:1px solid var(--color-border)}.pagination-nav__link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9375rem;font-weight:500;color:var(--color-text-primary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.375rem;text-decoration:none !important;transition:all .2s ease;box-shadow:0 .125rem .25rem rgba(0,0,0,.05)}.pagination-nav__link svg{width:1rem;height:1rem;transition:transform .2s ease}.pagination-nav__link:hover:not(.pagination-nav__link--disabled){background-color:var(--color-bg-primary);border-color:var(--color-text-secondary);transform:translateY(-2px);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);text-decoration:none !important}.pagination-nav__link:hover:not(.pagination-nav__link--disabled).pagination-nav__link--prev svg{transform:translateX(-2px)}.pagination-nav__link:hover:not(.pagination-nav__link--disabled).pagination-nav__link--next svg{transform:translateX(2px)}.pagination-nav__link--disabled{opacity:.4;cursor:not-allowed;background-color:rgba(0,0,0,0);border:1px dashed var(--color-border);box-shadow:none}@media(max-width: 767px){.pagination-nav__link{padding:.375rem .75rem;font-size:.875rem}}.pagination-nav__pages{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.pagination-nav__current{font-weight:600;color:var(--color-text-primary)}.getMorePosts{display:flex;font-size:1.1rem;justify-content:space-between;padding:3rem 0 4rem;width:100%;gap:1.5rem}@media(max-width: 639px){.getMorePosts{flex-direction:column;padding:2rem 0;gap:1rem}}.getMorePosts__post{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;display:flex;flex-direction:column;justify-content:space-between;min-height:160px;opacity:.9;padding:1.5rem;text-decoration:none !important;transition:all .3s ease;width:50%}@media(max-width: 639px){.getMorePosts__post{width:100%;min-height:100%}}.getMorePosts__post:hover{opacity:1;background-color:var(--color-bg-primary);border-color:var(--color-text-secondary);transform:translateY(-2px);box-shadow:0 .25rem .75rem rgba(0,0,0,.1)}.getMorePosts__post:hover svg{transform:translateX(2px)}.getMorePosts__post.getMorePosts__prev-page:hover svg{transform:translateX(-2px)}.getMorePosts__post svg{width:1rem;height:1rem;transition:transform .2s ease}.getMorePosts__post p.post-title{flex-grow:1}.getMorePosts__post div.post-label{align-items:center;display:flex;justify-content:flex-end;margin-top:1.5rem;font-size:.875rem;color:var(--color-secondary);font-weight:600}.getMorePosts__post div.post-label svg{width:1rem;height:1rem;transition:transform .2s ease}.getMorePosts__post p{margin:0;font-weight:600}@media(max-width: 639px){.getMorePosts__prev-page{align-self:flex-start}}.getMorePosts__prev-page div.post-label{justify-content:flex-start;gap:.5rem;flex-direction:row}@media(max-width: 639px){.getMorePosts__next-page{align-self:flex-end}}.getMorePosts__next-page div.post-label{justify-content:flex-end;gap:.5rem;flex-direction:row}.blog-search-section{margin:0 0 2rem 0;padding:0 1rem}.blog-search-container{max-width:450px;margin:0 auto}.search-trigger-btn{width:100%;display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border:2px solid var(--color-border);border-radius:12px;background:var(--color-bg-secondary);font-size:1rem;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}.search-trigger-btn:hover{border-color:var(--color-secondary);color:var(--color-text-primary)}.search-trigger-btn:hover .search-kbd{border-color:var(--color-secondary);color:var(--color-secondary)}.search-trigger-btn span{flex:1;text-align:left}.search-trigger-btn .search-kbd{padding:.2rem .5rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;font-size:.75rem;font-family:var(--font-body);transition:inherit}.search-overlay{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}.search-overlay-backdrop{position:absolute;inset:0;background:var(--color-bg-primary);opacity:.95}.search-overlay-content{position:relative;width:100%;max-width:600px;max-height:80vh;background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.4);display:flex;flex-direction:column;overflow:hidden;animation:slideDown .3s cubic-bezier(0.16, 1, 0.3, 1)}.search-overlay-content .search-overlay-header{display:none}#search-modal-content{padding:1.5rem;overflow-y:auto;overflow-x:hidden !important;-ms-overflow-style:none;scrollbar-width:none}#search-modal-content::-webkit-scrollbar{display:none}#search-modal-content .pagefind-ui__form::before,#search-modal-content .pagefind-ui__search-clear,#search-modal-content .pagefind-ui__result-nested,#search-modal-content .pagefind-ui__filter-panel-label{display:none !important}#search-modal-content .pagefind-ui__filter-name,#search-modal-content .pagefind-ui__filter-group-label,#search-modal-content summary.pagefind-ui__filter-name,#search-modal-content .pagefind-ui__drawer,#search-modal-content .pagefind-ui__filter-panel,#search-modal-content .pagefind-ui__filter-block{display:block !important;width:100% !important;max-width:100% !important;overflow:visible !important}#search-modal-content .pagefind-ui__filter-name{color:var(--color-text-primary);font-size:clamp(.875rem,.8rem + .375vw,1rem)}#search-modal-content .pagefind-ui__drawer{display:none !important;gap:20px}#search-modal-content .pagefind-ui__message{color:var(--color-text-primary);font-size:clamp(.875rem,.8rem + .375vw,1rem);margin-bottom:0}#search-modal-content .pagefind-ui__search-input{width:100%;padding:1rem 1.25rem;font-size:1.1rem;border:2px solid var(--color-border);border-radius:12px;background:var(--color-bg-primary);color:var(--color-text-primary)}#search-modal-content .pagefind-ui__search-input:focus{outline:none;border-color:var(--color-secondary)}#search-modal-content .pagefind-ui__filter-group{display:flex !important;flex-flow:row nowrap !important;overflow:scroll hidden !important;width:auto !important;min-width:100% !important;gap:.6rem !important;padding:1rem 0 1rem 0 !important;margin:0;-webkit-overflow-scrolling:touch !important;scrollbar-width:thin;scrollbar-color:var(--color-secondary) rgba(0,0,0,0)}#search-modal-content .pagefind-ui__filter-group::-webkit-scrollbar{height:4px}#search-modal-content .pagefind-ui__filter-group::-webkit-scrollbar-thumb{background:var(--color-secondary);border-radius:4px}#search-modal-content .pagefind-ui__filter-value{flex:0 0 auto !important;position:relative !important;display:inline-flex !important;align-items:center;padding:.4rem .9rem !important;background:var(--color-bg-primary) !important;border:2px solid var(--color-border) !important;border-radius:20px !important;cursor:pointer;font-size:.8rem;color:var(--color-text-secondary);transition:all .2s ease}#search-modal-content .pagefind-ui__filter-value label{white-space:nowrap !important;font-size:.75rem !important;color:inherit !important;cursor:pointer !important;user-select:none !important}#search-modal-content .pagefind-ui__filter-value:hover,#search-modal-content .pagefind-ui__filter-value:has(input:checked){border-color:var(--color-secondary) !important;background:var(--color-bg-secondary) !important;color:var(--color-secondary) !important}#search-modal-content .pagefind-ui__filter-value input.pagefind-ui__filter-checkbox{position:absolute !important;inset:0 !important;opacity:0 !important;z-index:1 !important;cursor:pointer !important}#search-modal-content .pagefind-ui__result{position:relative !important;display:flex !important;flex-direction:column !important;padding:1rem 0 !important;margin:0 !important;border-top:none;border-bottom:none;transition:transform .2s ease;width:100% !important}#search-modal-content .pagefind-ui__result::before{content:"";position:absolute;inset:.2rem -0.75rem;background:var(--color-bg-primary);border-radius:8px;z-index:-1;opacity:0;transition:opacity .2s ease}#search-modal-content .pagefind-ui__result:hover{transform:translateX(4px);border-bottom-color:rgba(0,0,0,0)}#search-modal-content .pagefind-ui__result:hover::before{opacity:1}#search-modal-content .pagefind-ui__result:hover .pagefind-ui__result-title a{color:var(--color-secondary)}#search-modal-content .pagefind-ui__result-title a{font-size:1.2rem;font-weight:700;color:var(--color-text-primary);text-decoration:none;display:block;margin-bottom:.4rem}#search-modal-content .pagefind-ui__result-excerpt{color:var(--color-text-secondary);line-height:1.5;font-size:.9rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}#search-modal-content .pagefind-ui__result-excerpt mark{background:rgba(0,0,0,0);color:var(--color-primary);font-weight:700}.theme-toggle{cursor:pointer;background:rgba(0,0,0,0);border:0;opacity:0;position:fixed;isolation:isolate;bottom:3rem;left:2rem;z-index:10000;visibility:hidden;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease;padding:.25rem;width:4rem;height:4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box}.theme-toggle svg{width:2.5rem;height:2.5rem;fill:var(--color-text-primary);transition:fill .3s ease}.theme-toggle.show-theme-toggle{opacity:1;visibility:visible;transform:translateY(0)}.theme-toggle:focus,.theme-toggle:hover{outline:0;opacity:1;background:hsla(0,0%,50%,.2)}@media only screen and (max-width: 30rem){.theme-toggle{bottom:5rem;left:2rem;width:2rem;height:2rem}}html[data-theme=light] .theme-toggle svg,.light-theme .theme-toggle svg{fill:var(--color-text-primary, black)}html[data-theme=light] .toggle-circle,.light-theme .toggle-circle{transform:translateX(-15%)}html[data-theme=light] .toggle-sun,.light-theme .toggle-sun{transform:rotate(0.5turn)}html[data-theme=dark] .theme-toggle svg,.dark-theme .theme-toggle svg{fill:var(--color-text-primary, #cfd7c7)}html[data-theme=dark] .toggle-circle,.dark-theme .toggle-circle{transform:translateX(0)}.toggle-circle{transition:transform 500ms ease-out}.toggle-sun{transform-origin:center center;transition:transform 750ms cubic-bezier(0.11, 0.14, 0.29, 1.32)}.high-contrast .theme-toggle,.terminal-mode .theme-toggle{border:2px solid var(--color-text-primary);background:var(--color-bg-primary)}.back-to-top{position:fixed;bottom:3rem;right:2rem;z-index:100;opacity:0;visibility:hidden;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease,visibility .3s,background .2s ease;background:var(--button-bg, #333);border:none;border-radius:50%;width:3rem;height:3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15)}.back-to-top.show-back-to-top{opacity:.9;visibility:visible;transform:translateY(0)}.back-to-top:hover{opacity:1;background:var(--button-bg-hover, #555);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.2)}.back-to-top:active{transform:translateY(0)}.back-to-top:focus{outline:2px solid var(--button-bg-hover, #555);outline-offset:2px}.back-to-top svg{width:1.5rem;height:1.5rem;fill:var(--button-color, white);transition:transform .2s ease}.back-to-top:hover svg{transform:translateY(-2px)}@media only screen and (max-width: 43.125rem){.back-to-top{bottom:5rem;right:1.5rem;width:2.5rem;height:2.5rem}.back-to-top svg{width:1.25rem;height:1.25rem}}@media(prefers-reduced-motion: reduce){.back-to-top,.back-to-top svg{transition:none}.back-to-top:hover{transform:none}}@media print{.back-to-top{display:none}}