.bloghead{background:var(--ink);color:#fff}.bloghead__inner{display:flex;align-items:center;gap:1.25rem;min-height:4rem;flex-wrap:wrap;padding-block:.75rem}.bloghead a{text-decoration:none}.bloghead__name{font:700 1.6rem/1 barlow condensed,sans-serif}.bloghead__blog{display:inline-flex;align-items:center;gap:.5rem;font:600 1.15rem/1 barlow condensed,sans-serif;opacity:.85}.bloghead__blog:hover,.bloghead__name:hover{text-decoration:underline;text-decoration-color:initial}.bloghead__lang{margin-left:auto;display:flex;gap:.35rem;font:600 .95rem/1 barlow condensed,sans-serif}.bloghead__lang a,.bloghead__lang span{padding:.35rem .55rem;border:1px solid rgb(255 255 255/.35)}.bloghead__lang span{background:#fff;color:var(--ink);border-color:#fff}.bloghead__lang a:hover{background:rgb(255 255 255/.12)}:root{--trail-yellow:#e2b007}.mark--yellow{--c:var(--trail-yellow)}.catnav{display:flex;flex-wrap:wrap;gap:.6rem;margin:-.5rem 0 1.75rem}.catnav .sign{box-shadow:inset 0 -3px 0 var(--ink)}.catnav .sign--red{box-shadow:inset 0 -3px 0 var(--trail-red)}.catnav .sign--blue{box-shadow:inset 0 -3px 0 var(--trail-blue)}.catnav .sign--green{box-shadow:inset 0 -3px 0 var(--trail-green)}.catnav .sign--yellow{box-shadow:inset 0 -3px 0 var(--trail-yellow)}.catnav .sign.is-active{background:var(--ink);color:#fff}.catnav .sign .mark{width:1.2rem;height:.85rem}.sign__count{color:var(--stone);font-weight:500}.sign:hover .sign__count,.sign.is-active .sign__count{color:rgb(255 255 255/.7)}.cats{display:flex;flex-wrap:wrap;gap:1rem;margin:0 0 .4rem!important}.cat{display:inline-flex;align-items:center;gap:.45rem;font:600 .95rem/1 barlow condensed,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)!important;text-decoration:none}.cat .mark{width:1.2rem;height:.85rem}.cat:hover{text-decoration:underline}.postlist{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}.postlist__item{padding-block:1.4rem;border-bottom:1px solid var(--rule)}.postlist__item.has-cover{display:grid;grid-template-columns:18rem 1fr;gap:1.75rem;align-items:start}.postlist__cover{display:block;aspect-ratio:16/9;overflow:hidden;background:#fff;border:1px solid var(--rule)}.postlist__cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.postlist__cover:hover img{transform:scale(1.03)}.postlist__item h2{font-size:1.75rem;font-weight:600;line-height:1.15}.postlist__item h2 a{text-decoration:none}.postlist__item h2 a:hover{text-decoration:underline}.postlist__item p{margin:.35rem 0 0;color:var(--stone);max-width:52rem}.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0 0}.tags span{font-size:.85rem;font-weight:500;color:var(--ink);background:#fff;border:1px solid var(--rule);padding:.1rem .5rem}.post__cover{margin:1.5rem 0 .5rem;border:1px solid var(--rule);background:#fff}.post__cover img{display:block;width:100%;height:auto}.post{max-width:46rem;padding-top:3rem}.post__head .cats{margin-bottom:.75rem!important}.post__head h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:700;line-height:1.05}.post__meta{margin:.75rem 0 0;color:var(--stone)}.post__head{padding-bottom:1.5rem;border-bottom:2px solid var(--ink)}.post__body{padding-top:.5rem}.post__body h2{font-size:1.9rem;font-weight:600;margin:2.5rem 0 .75rem}.post__body h3{font-size:1.4rem;font-weight:600;margin:1.75rem 0 .5rem}.post__body p,.post__body ul,.post__body ol{margin:0 0 1rem}.post__body li{margin-bottom:.3rem}.post__body a{text-decoration-color:var(--trail-blue)}.post__body img{max-width:100%;height:auto}.post__body code{font:.88em/1.5 jetbrains mono,ui-monospace,monospace;background:#fff;border:1px solid var(--rule);padding:.05em .3em}.post__body pre code{background:0 0;border:0;padding:0}.post__body .highlight,.post__body pre{margin:0 0 1.25rem}.post__body pre{overflow-x:auto;padding:.9rem 1rem;background:#fff;border:1px solid var(--rule);border-left:3px solid var(--ink);font-size:.9rem}.post__body .chroma{background:#fff}.post__body table{width:100%;border-collapse:collapse;margin:0 0 1.25rem;font-size:.95rem;display:block;overflow-x:auto}.post__body th,.post__body td{text-align:left;vertical-align:top;padding:.45rem .75rem .45rem 0;border-bottom:1px solid var(--rule)}.post__body th{border-bottom:2px solid var(--ink);font-weight:600}.post__body blockquote{margin:0 0 1.25rem;padding-left:1rem;border-left:3px solid var(--rule);color:var(--stone)}.alert{margin:0 0 1.25rem;padding:.75rem 1rem;background:#fff;border-left:4px solid var(--trail-blue)}.alert>:last-child{margin-bottom:0}.alert__title{margin:0 0 .25rem;font:600 1.05rem/1.2 barlow condensed,sans-serif;text-transform:uppercase;letter-spacing:.03em}.alert--tip{border-color:var(--trail-green)}.alert--warning,.alert--important{border-color:#c98a00}.alert--caution{border-color:var(--trail-red)}.download{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;background:var(--ink);color:#fff;font:600 1.05rem/1 barlow condensed,sans-serif;text-decoration:none!important}.download:hover{background:var(--trail-blue)}.footer a{color:inherit}@media(max-width:40rem){.postlist__item.has-cover{grid-template-columns:1fr;gap:.9rem}.bloghead__lang{margin-left:0}}.chroma .err{color:#f6f8fa;background-color:#82071e}.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:#dedede}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .line{display:flex}.chroma .k{color:#cf222e}.chroma .kc{color:#cf222e}.chroma .kd{color:#cf222e}.chroma .kn{color:#cf222e}.chroma .kp{color:#cf222e}.chroma .kr{color:#cf222e}.chroma .kt{color:#cf222e}.chroma .na{color:#1f2328}.chroma .nc{color:#1f2328}.chroma .no{color:#0550ae}.chroma .nd{color:#0550ae}.chroma .ni{color:#6639ba}.chroma .nl{color:#900;font-weight:700}.chroma .nn{color:#24292e}.chroma .nx{color:#1f2328}.chroma .nt{color:#0550ae}.chroma .nb{color:#6639ba}.chroma .bp{color:#6a737d}.chroma .nv{color:#953800}.chroma .vc{color:#953800}.chroma .vg{color:#953800}.chroma .vi{color:#953800}.chroma .vm{color:#953800}.chroma .nf{color:#6639ba}.chroma .fm{color:#6639ba}.chroma .s{color:#0a3069}.chroma .sa{color:#0a3069}.chroma .sb{color:#0a3069}.chroma .sc{color:#0a3069}.chroma .dl{color:#0a3069}.chroma .sd{color:#0a3069}.chroma .s2{color:#0a3069}.chroma .se{color:#0a3069}.chroma .sh{color:#0a3069}.chroma .si{color:#0a3069}.chroma .sx{color:#0a3069}.chroma .sr{color:#0a3069}.chroma .s1{color:#0a3069}.chroma .ss{color:#032f62}.chroma .m{color:#0550ae}.chroma .mb{color:#0550ae}.chroma .mf{color:#0550ae}.chroma .mh{color:#0550ae}.chroma .mi{color:#0550ae}.chroma .il{color:#0550ae}.chroma .mo{color:#0550ae}.chroma .o{color:#0550ae}.chroma .ow{color:#0550ae}.chroma .or{color:#0550ae}.chroma .p{color:#1f2328}.chroma .c{color:#57606a}.chroma .ch{color:#57606a}.chroma .cm{color:#57606a}.chroma .c1{color:#57606a}.chroma .cs{color:#57606a}.chroma .cp{color:#57606a}.chroma .cpf{color:#57606a}.chroma .gd{color:#82071e;background-color:#ffebe9}.chroma .ge{color:#1f2328}.chroma .gi{color:#116329;background-color:#dafbe1}.chroma .go{color:#1f2328}.chroma .gl{text-decoration:underline}.chroma .w{color:#fff}