.dark{color-scheme:dark}.dark :focus-visible{outline-color:rgba(96,165,250,.35)}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;display:flex;flex-direction:column;font-family:system-ui,sans-serif;font-size:1.25rem;line-height:1.35;margin:0;padding:0;background-color:#f8fafc;color:#0f172a}.dark body{background-color:#001e28;color:#f8fafc}.site-container{margin:0 auto;padding:8%;box-sizing:border-box}@media(min-width:1020px){.site-container{padding:4%}}img{display:block;height:auto;max-width:100%;border-radius:.375rem}h1,h2,h3,h4,h5{font-weight:800;line-height:1.15;margin:3rem 0 1.25rem;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}h1{font-size:clamp(3rem,4rem,5rem)}h2{font-size:clamp(2rem,3rem,4rem)}h3{font-size:clamp(2rem,2.5rem,3rem)}h4{font-size:clamp(1.8rem,2rem,2.5rem)}h5{font-size:1.6rem}blockquote{border-left:4px solid rgba(0,0,0,8%);margin:1rem 0;padding-left:1rem;opacity:.8;font-style:italic}blockquote i,blockquote em{font-style:normal}.dark blockquote{border-left-color:rgba(255,255,255,.15)}.story-meta,.story-image-caption,.figure-caption{color:#475569;font-size:.875rem}a{text-decoration:none;transition:color .15s ease}a:hover,a:focus{color:orange}ul,ol{margin:1rem 0;padding-left:1.5rem}ul{list-style:disc}ol{list-style:decimal}li{margin:.3rem 0}ul ul,ol ol,ul ol,ol ul{margin:.25rem 0;padding-left:1.25rem}@view-transition{navigation: auto;
}del{opacity:.3}table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse}code{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;max-width:100%;background-color:#f5f5f5;padding:.25rem .5rem;border-radius:.5rem;font-family:monospace}.dark code{background-color:#334155}a{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.introduction-container{display:grid;grid-template-columns:1fr;grid-template-areas:"image" "content";gap:2rem;margin:0 auto;max-width:112rem;padding:0 0 1.5rem;position:relative}.introduction-image-wrapper{grid-area:image;position:relative;width:100%;max-width:none}.introduction-image{width:100%;height:auto;border-radius:.75rem;display:block}.introduction-welcome{position:absolute;bottom:-2rem;z-index:2;background-color:rgba(0,0,0,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1rem 1.6rem;border-radius:0 0 .65rem .65rem;text-align:center;color:#fff;font-size:1rem;line-height:1.25;display:flex;justify-content:center;align-items:center}.welcome-article{margin:0;padding:0}.stories-more{display:grid;place-items:center;padding:3rem}.introduction-content{grid-area:content;margin-left:auto;margin-right:auto;max-width:65ch}@media(min-width:1020px){.introduction-container{grid-template-columns:2fr 2fr;grid-template-areas:"image content";align-items:start;gap:4rem}.introduction-image-wrapper{grid-row:1;align-self:start}.introduction-welcome{font-size:1.4rem;line-height:1.25;bottom:0}.introduction-image{width:100%;height:auto;object-fit:contain}.introduction-content{margin-top:0}}@media(min-width:1400px){.introduction-container{grid-template-columns:1fr 2fr;grid-template-areas:"image content";gap:0}}.story-body{display:block;width:100%;margin:0 auto}.story-sidebar{top:2rem;align-self:start;margin-bottom:2rem;font-size:.75rem;font-weight:600;margin-top:1.5rem;margin-bottom:.5rem}.series-word{font-size:1rem;margin-top:.25rem}.series-name{font-size:1.25rem}.series-list{list-style-position:inside;list-style-type:disc}.story-sidebar li{margin:.25rem 0}.series-item{margin-bottom:.25rem}.toc-heading{font-size:1rem}.toc-nav{margin:0;padding:0}.toc-nav>*+*{margin-top:.25rem}.story-content,.introduction-content,.stories-intro,.reply-text,.mentions{max-width:70ch}@media(min-width:1020px){.story-body.has-sidebar{display:grid;grid-template-columns:minmax(14rem,18rem)1fr;column-gap:3rem;align-items:start}.story-sidebar{margin-bottom:0;position:sticky}.story-content{margin:0}}.figure,.story-image{margin:2rem 0;text-align:center}.hero-banner{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:1rem;margin:3rem 0;overflow:hidden;width:100%;height:14rem}@media(min-width:1020px){.hero-banner{height:18rem}}@media(min-width:1240px){.hero-banner{height:24rem}}@media(min-width:1900px){.hero-banner{height:36rem}}@media(min-width:2490px){.hero-banner{height:48rem}}.related-section{margin-top:16rem}.related-header{margin:0 0 1.5rem}.related-series{margin-bottom:2rem}.related-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem}.story-engagement{margin-top:16rem}.reply-by-email{margin-top:4rem}.reply-contacts{color:#475569;font-size:.75rem;margin-bottom:1.5rem}.list-empty{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.meta-separator{padding:0 .5rem}.meta-draft-badge{padding-left:.5rem}.breadcrumbs{color:#475569;font-size:1.25rem;margin:0;padding:0}.breadcrumbs>ol{align-items:center;display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0;padding:0}.breadcrumb-item{display:inline}.breadcrumb-hidden{display:none}.breadcrumb-separator{color:#3b82f688;padding:0 .25rem}.site-footer{font-size:.875rem;padding:3rem 1rem;text-align:center}.footer-menu{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:center;list-style:none;margin:1.75rem 0;padding:0}.footer-menu-icon{margin-right:.25rem}.footer-meta{align-items:center;color:#475569;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-left:auto;margin-right:auto;font-size:.6rem}.footer-controls{display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:1.25rem 0 1.75rem}.footer-theme-option{align-items:center;display:inline-flex;gap:.4rem;transition:opacity .2s ease}.footer-theme-option.light-mode{display:inline-flex}.footer-theme-option.dark-mode{display:none}.footer-theme-option.system-mode{display:none}.footer-theme-option.system-mode .icon-wrapper{display:inline-flex;align-items:center}.footer-theme-option.system-mode .icon-sun{display:inline-flex}.footer-theme-option.system-mode .icon-moon{display:none}@media(prefers-color-scheme:dark){.footer-theme-option.system-mode .icon-sun{display:none}.footer-theme-option.system-mode .icon-moon{display:inline-flex}}.dark .footer-theme-option.system-mode{display:none}.dark .footer-theme-option.light-mode{display:none}.dark .footer-theme-option.dark-mode{display:inline-flex}.footer-language-switcher{align-items:center;display:inline-flex;gap:.5rem}.footer-language-list{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.5rem}.footer-language-list a{color:#475569;font-weight:500;text-decoration:none;transition:color .15s ease}.dark .footer-language-list a{color:#fff}.search-wrapper{align-items:flex-start;backdrop-filter:blur(10px);display:flex;inset:0;justify-content:center;opacity:0;padding:2rem;pointer-events:none;position:fixed;transition:opacity .2s ease,visibility .2s ease;visibility:hidden;z-index:900}.search-wrapper.visible{opacity:1;pointer-events:auto;visibility:visible}.search-modal{background-color:rgb(258 250 252/.8);border:4px solid #e2e8f0;border-radius:1.5rem;max-width:52rem;overflow:hidden;width:100%}.dark .search-modal{background-color:rgb(0 30 40/.8);border-color:orange}#search-modal{max-width:60rem}.search-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.5rem 1.25rem}.search-form{align-items:center;display:flex;flex:1;gap:.5rem}.search-input{background-color:#f8fafc;border:2px solid #e2e8f0;border-radius:.75rem;color:#0f172a;flex:1;font-size:1rem;padding:.6rem 1rem;transition:border-color .15s ease,background-color .15s ease}.dark .search-input{background-color:grey}.search-input:focus{background-color:#f8fafc;border-color:#3b82f6;outline:none}.dark .search-input:focus{background-color:#001e28;border-color:orange;color:#fff}.search-icon{padding:1.5rem}.search-close{background:0 0;border:none;color:#475569;cursor:pointer;padding:1.5rem;transition:color .15s ease}.dark .search-close{color:#fff}.search-close:hover{color:orange}.search-results-area{max-height:70vh;overflow-y:auto;padding:1.75rem}.search-results,#search-results{list-style:none;padding:1rem}.search-result-item{display:flex;height:100%}.button{align-items:center;display:inline-flex;gap:.5rem;border:2px solid #ccc;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:500;justify-content:center;padding:1.2rem 1.8rem;text-decoration:none;transition:all .2s ease;color:#2563eb}.dark .button{color:#f8fafc;border-color:#2d4650}button.button{background-color:initial}.button:hover{border-color:orange;color:orange}.welcome-button{color:#f8fafc}.icon-wrapper{display:inline-flex;align-items:center;fill:currentColor;line-height:1;height:1rem;width:1rem}.icon-wrapper svg{fill:currentColor;height:1em;width:1em}.button-wrapper{display:flex;justify-content:center}.button-group{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;width:100%}.card,.search-card{border:2px solid #ccc;border-radius:1rem;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.dark .card,.dark .search-card{border-color:#2d4650}.card:hover,.search-card:hover{border-color:orange}.card-thumbnail,.search-card-cover{background-position:50%;background-size:cover;height:11rem;width:100%}.card-content,.search-card-body{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:1.5rem;text-align:center}.card-title,.search-card-title{font-size:1.25rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}.card-summary,.search-card-summary{color:#647894;font-size:.875rem;line-height:1.4;max-width:90%}.cards-grid,.search-results{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));width:100%;align-items:stretch;list-style:none;padding:0;margin:0}@media(max-width:380px){.cards-grid{grid-template-columns:1fr}}.card-link,.search-result-item,.search-card{width:100%;display:flex;flex-direction:column;box-sizing:border-box}.cards-grid.single-card{justify-content:center}.cards-grid:has(>.card-link:nth-child(1)):not(:has(>.card-link:nth-child(2))){display:flex;justify-content:center}.cards-grid:has(>.card-link:nth-child(1)):not(:has(>.card-link:nth-child(2))) .card{max-width:22rem;width:100%}.card-badge{position:absolute;top:.5rem;right:.5rem}.translations{display:inline-block;position:relative}.translations-toggle{align-items:center;cursor:pointer;display:flex;user-select:none}.translations-toggle .icon-wrapper{margin-right:.25rem}.translations-label{color:#475569;font-size:.875rem;font-weight:500;transition:color .2s ease}.translations-toggle:hover .translations-label,.translations-toggle:focus .translations-label{color:#3b82f6}.translations-menu{display:none;left:0;margin-top:.5rem;position:absolute;top:100%;z-index:20}.translations:hover .translations-menu,.translations:focus-within .translations-menu{display:block}.translations-menu-inner{backdrop-filter:blur(8px);background-color:rgba(255,255,255,.85);border-radius:.75rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);padding:1rem 1.25rem}.translation-item{align-items:center;display:flex;margin-bottom:.5rem;text-decoration:none}.translation-item:last-child{margin-bottom:0}.translation-item p{color:#475569;font-size:.875rem;font-weight:400;transition:color .2s ease}.translation-item:hover p,.translation-item:focus p{color:#3b82f6}.highlight-wrapper{display:block}.highlight{position:relative;z-index:0}.highlight:hover>.copy-button{visibility:visible}.copy-button{position:absolute;top:0;right:0;z-index:10;visibility:hidden;width:5rem;padding:.25rem 0;font-family:monospace;font-size:.875rem;cursor:pointer;opacity:.9;background-color:#e5e7eb;color:#374151;white-space:nowrap;border-radius:0 .375rem .375rem 0;overflow:hidden;text-overflow:ellipsis}.dark .copy-button{background-color:#4b5563;color:#e5e7eb}.copy-button:hover,.copy-button:focus,.copy-button:active,.copy-button:active:hover{background-color:#dbeafe}.dark .copy-button:hover,.dark .copy-button:focus,.dark .copy-button:active,.dark .copy-button:active:hover{background-color:#2563eb}.copy-textarea{position:absolute;opacity:.05;z-index:-10}.alert{align-items:flex-start;background-color:#d2e2fb;border:2px solid #e2e8f0;border-radius:1rem;display:flex;margin:1.5rem 0;padding:1.5rem;color:#3b82f6}.dark .alert{background-color:#1c3844;border-color:#1c3844;color:#fff}.alert-icon{align-items:center;color:#3b82f6;display:flex;flex-shrink:0;justify-content:center;margin-right:.5rem;min-height:2rem;min-width:2rem}.alert-content{flex:1}.alert-content p{margin:0 0 1rem}.alert-content p:last-child{margin-bottom:0}.badge-inner,.keyword-bubble{align-items:center;border-radius:.75rem;display:inline-flex;font-size:.75rem;font-weight:400;gap:.25rem;padding:.25rem 1rem;transition:all .15s ease}.keyword-bubble{background-color:#3b82f6;color:#f8fafc}.dark .keyword-bubble{background-color:#60a5fa;color:#001e28}.badge-inner{background-color:initial;border:2px solid #e2e8f0;color:#3b82f6;padding:1rem}.badge-inner:hover,.dark .badge-inner:hover{border-color:orange;background-color:orange}.dark .badge-inner{border-color:#3b82f6}.badge-outer{cursor:pointer;display:flex}.keywords-list{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}.keyword{display:flex;margin-top:.5rem}.keyword-bubble-inner{align-items:center;display:flex;flex-direction:row;gap:.25rem}.category-badge-link{margin-inline-end:.5rem;position:relative;text-decoration:none}.category-badge-link:hover{opacity:.85}.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:0 5%;margin:auto;font-size:clamp(1rem,2.5vw,1.6rem);color:grey}.dark .nav{color:#fff}.site-title a{font-weight:700;text-decoration:none}#menu{display:flex;flex-wrap:wrap;gap:1.5rem;list-style:none;margin:.5rem;padding:.5rem}.menu-item.current{opacity:.5}.story-heading{position:relative}.anchor-link{position:absolute;left:-2.7rem;width:1.5rem;top:0;opacity:.1;color:inherit;user-select:none;text-decoration:none!important}.story-heading:hover .anchor-link,.story-heading:focus-within .anchor-link,.anchor-link:focus{opacity:1}.anchor-link a{color:#0060df;text-decoration:none!important}.pagination{display:flex;flex-direction:row;gap:.5rem;justify-content:center;list-style:none;margin-top:2rem;padding:0}.page-link{border-radius:.375rem;color:#0f172a;display:block;min-width:1.8rem;padding:.25rem .5rem;text-align:center;text-decoration:none;transition:background-color .2s ease,color .2s ease}.page-link:hover,.page-link:focus{background-color:#2563eb;color:#f8fafc}.page-link.active{background-color:#3b82f6;color:#0f172a}.dark .page-link:hover,.dark .page-link:focus{background-color:#1e1ea5;color:#001e28}.dark .page-link.active{background-color:#60a5fa;color:#f8fafc}@media(min-width:1020px){.story-body{align-items:flex-start;flex-direction:row}.button-group{justify-content:flex-start}}.page-404{box-sizing:border-box;margin:0 auto;width:100%}#not-found-header{font-size:clamp(10rem,12vw,35rem);font-weight:900;color:transparent;-webkit-text-stroke:4px black;margin-bottom:-2rem}.dark #not-found-header{-webkit-text-stroke:4px white}#not-found-error{font-size:clamp(1rem,12vw,2rem);font-weight:600;line-height:1.2;padding-bottom:1rem}#not-found-description{font-size:clamp(1.2rem,12vw,1.5rem)}@media print{.story-content{color:#000;max-width:100%}}.bg{color:#cad3f5;background-color:#24273a}.chroma{color:#cad3f5;background-color:#24273a}.chroma .x{}.chroma .err{color:#ed8796}.chroma .cl{}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#474733}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .line{display:flex}.chroma .k{color:#c6a0f6}.chroma .kc{color:#f5a97f}.chroma .kd{color:#ed8796}.chroma .kn{color:#8bd5ca}.chroma .kp{color:#c6a0f6}.chroma .kr{color:#c6a0f6}.chroma .kt{color:#ed8796}.chroma .n{}.chroma .na{color:#8aadf4}.chroma .nb{color:#91d7e3}.chroma .bp{color:#91d7e3}.chroma .nc{color:#eed49f}.chroma .no{color:#eed49f}.chroma .nd{color:#8aadf4;font-weight:700}.chroma .ni{color:#8bd5ca}.chroma .ne{color:#f5a97f}.chroma .nf{color:#8aadf4}.chroma .fm{color:#8aadf4}.chroma .nl{color:#91d7e3}.chroma .nn{color:#f5a97f}.chroma .nx{}.chroma .py{color:#f5a97f}.chroma .nt{color:#c6a0f6}.chroma .nv{color:#f4dbd6}.chroma .vc{color:#f4dbd6}.chroma .vg{color:#f4dbd6}.chroma .vi{color:#f4dbd6}.chroma .vm{color:#f4dbd6}.chroma .l{}.chroma .ld{}.chroma .s{color:#a6da95}.chroma .sa{color:#ed8796}.chroma .sb{color:#a6da95}.chroma .sc{color:#a6da95}.chroma .dl{color:#8aadf4}.chroma .sd{color:#6e738d}.chroma .s2{color:#a6da95}.chroma .se{color:#8aadf4}.chroma .sh{color:#6e738d}.chroma .si{color:#a6da95}.chroma .sx{color:#a6da95}.chroma .sr{color:#8bd5ca}.chroma .s1{color:#a6da95}.chroma .ss{color:#a6da95}.chroma .m{color:#f5a97f}.chroma .mb{color:#f5a97f}.chroma .mf{color:#f5a97f}.chroma .mh{color:#f5a97f}.chroma .mi{color:#f5a97f}.chroma .il{color:#f5a97f}.chroma .mo{color:#f5a97f}.chroma .o{color:#91d7e3;font-weight:700}.chroma .ow{color:#91d7e3;font-weight:700}.chroma .p{}.chroma .c{color:#6e738d;font-style:italic}.chroma .ch{color:#6e738d;font-style:italic}.chroma .cm{color:#6e738d;font-style:italic}.chroma .c1{color:#6e738d;font-style:italic}.chroma .cs{color:#6e738d;font-style:italic}.chroma .cp{color:#6e738d;font-style:italic}.chroma .cpf{color:#6e738d;font-weight:700;font-style:italic}.chroma .g{}.chroma .gd{color:#ed8796;background-color:#363a4f}.chroma .ge{font-style:italic}.chroma .gr{color:#ed8796}.chroma .gh{color:#f5a97f;font-weight:700}.chroma .gi{color:#a6da95;background-color:#363a4f}.chroma .go{}.chroma .gp{}.chroma .gs{font-weight:700}.chroma .gu{color:#f5a97f;font-weight:700}.chroma .gt{color:#ed8796}.chroma .gl{text-decoration:underline}.chroma .w{}.chroma{background-color:unset!important}.chroma .hl{display:flex}.chroma .lnt{padding:0 0 0 12px}.highlight pre.chroma code{padding:8px 0}.highlight pre.chroma .line .cl,.chroma .ln{padding:0 10px}.chroma .lntd:last-of-type{width:100%}@font-face{font-family:InterVariable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/InterVariable.woff2)format("woff2")}@font-face{font-family:InterVariable;font-style:italic;font-weight:100 900;font-display:swap;src:url(/InterVariable-Italic.woff2)format("woff2")}@font-face{font-family:MonaspaceNeonVar;font-style:normal;font-weight:200 800;font-display:swap;src:url(/MonaspaceNeonVar.woff2)format("woff2")}