.v7{--bg-0:#0a0a0a;--bg-1:#111110;--bg-2:#171715;--line:#24231f;--line-strong:#34332e;--ink-1:#ecebe6;--ink-2:#c2c0b8;--ink-3:#8f8d85;--acid:#d4ff00;--red:#ff5a3d;--amber:#ffb020;--mono:var(--font-jetbrains-mono),ui-monospace,Menlo,monospace;--sans:var(--font-schibsted),"Helvetica Neue",Arial,sans-serif;--gutter:clamp(1rem,4.5vw,3.5rem);min-height:100dvh;overflow-x:clip;background:var(--bg-0);color:var(--ink-1);font-family:var(--sans);letter-spacing:normal;-webkit-font-smoothing:antialiased}.v7 *,.v7 :after,.v7 :before{box-sizing:border-box}.v7 ::selection{background:var(--acid);color:var(--bg-0)}.v7 a:focus-visible,.v7 button:focus-visible,.v7 summary:focus-visible{outline:2px solid var(--acid);outline-offset:3px}.v7 section[id]{scroll-margin-top:4.5rem}.v7-acid{color:var(--acid)}.v7-red{color:var(--red)}.v7-amber{color:var(--amber)}.v7-dim{color:var(--ink-3)}.v7-wrap{max-width:calc(1440px - 2 * var(--gutter));margin:0 auto}.v7-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:2rem;padding:.8rem var(--gutter);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg-0) 92%,transparent);backdrop-filter:blur(6px);font-family:var(--mono)}.v7-nav__brand{display:inline-flex;align-items:center}.v7-logo{display:block;height:28px;width:auto}.v7-nav__links{display:flex;gap:1.5rem;margin-left:auto;font-size:.82rem}.v7-nav__links a{color:var(--ink-3)}.v7-nav__links a:before{content:"./";color:transparent;transition:color .15s}.v7-nav__links a:hover{color:var(--ink-1)}.v7-nav__links a:hover:before{color:var(--acid)}.v7-nav__menu{display:none;color:var(--ink-2);font-family:var(--mono);font-size:.82rem}.v7-lang{display:flex;border:1px solid var(--line-strong)}.v7-lang button{padding:.25rem .5rem;color:var(--ink-3);font-family:var(--mono);font-size:.72rem}.v7-lang button[aria-pressed=true]{background:var(--acid);color:var(--bg-0);font-weight:700}.v7-hero{max-width:1440px;margin:0 auto;padding:clamp(3rem,7vw,5.5rem) var(--gutter) clamp(3rem,6vw,4.5rem)}.v7-hero__meta{margin:0 0 1.5rem;color:var(--ink-3);font-family:var(--mono);font-size:.8rem}.v7-hero__title{margin:0;font-family:var(--mono);font-weight:800;font-size:clamp(1.6rem,3.2vw,2.8rem);line-height:1.1;letter-spacing:-.04em}.v7-hero__cursor{display:inline-block;width:.55em;height:.9em;margin-left:.08em;vertical-align:-.05em;background:var(--acid);animation:v7-blink 1.1s steps(1) infinite}.v7-hero__lede{max-width:40rem;margin:0;color:var(--ink-2);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.55}.v7-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}.v7-ping{display:inline-grid;gap:.15rem;padding:.8rem 1.1rem;background:var(--acid);color:var(--bg-0);font-family:var(--mono);font-size:1rem;font-weight:800}.v7-ping__dollar{opacity:.55}.v7-ping__reply{max-height:0;overflow:hidden;font-size:.7rem;font-weight:500;transition:max-height .2s steps(3)}.v7-ping:focus-visible .v7-ping__reply,.v7-ping:hover .v7-ping__reply{max-height:1.2rem}.v7-readlink{color:var(--ink-1);font-family:var(--mono);font-size:.92rem;border-bottom:1px solid var(--ink-3)}.v7-readlink:hover{color:var(--acid);border-bottom-color:var(--acid)}.v7-postlink{color:var(--ink-1);font-family:var(--mono);font-weight:700;font-size:clamp(1.05rem,1.6vw,1.3rem)}.v7-postlink__arrow{display:inline-block;margin-left:.45rem;color:var(--ink-3);transition:transform .15s}.v7-postlink:hover{color:var(--acid)}.v7-postlink:hover .v7-postlink__arrow{color:var(--acid);transform:translateX(3px)}.v7-scope{display:inline-block;margin-top:1.5rem;color:var(--acid);font-family:var(--mono);font-weight:700}.v7-scope:hover{color:var(--bg-0);background:var(--acid)}.v7-proof{display:grid;gap:.9rem;padding:1.25rem var(--gutter);border-block:1px solid var(--line);font-family:var(--mono);font-size:.84rem}.v7-proof__clients{gap:.4rem 1.25rem;margin:0}.v7-proof__clients,.v7-proof__creds{display:flex;flex-wrap:wrap;align-items:baseline}.v7-proof__creds{gap:.6rem 2rem}.v7-proof ul{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:0;padding:0;list-style:none}.v7-proof a{color:var(--ink-1)}.v7-proof a:hover{color:var(--acid)}.v7-proof__creds a{color:var(--ink-2)}.v7-block{max-width:1440px;margin:0 auto;padding:clamp(4rem,9vw,6.5rem) var(--gutter)}.v7-block--alt{max-width:none;background:var(--bg-1);border-block:1px solid var(--line)}.v7-block__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,30rem);gap:1.5rem 3rem;align-items:end;margin-bottom:clamp(2.5rem,5vw,3.5rem)}.v7-h2{margin:0;font-family:var(--mono);font-weight:800;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.05;letter-spacing:-.04em}.v7-lede{margin:0;color:var(--ink-2);font-size:1.05rem;line-height:1.6}.v7-tree{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line-strong);background:var(--bg-1);font-family:var(--mono);font-size:clamp(.8rem,1.1vw,.95rem);line-height:1.75}.v7-tree p{margin:0}.v7-tree__dir+.v7-tree__dir{margin-top:.6rem}.v7-tree__dirname{color:var(--acid);font-weight:800}.v7-tree__label{margin-left:1.25rem;color:var(--ink-1);font-weight:500}.v7-tree__branch{color:var(--line-strong);white-space:pre}.v7-tree__comment{display:flex;color:var(--ink-3)}.v7-tree__leaf{display:flex;color:var(--ink-1)}.v7-tree__leaf:hover{background:var(--bg-2)}.v7-posts{margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}.v7-post{display:grid;grid-template-columns:9rem 1fr;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.v7-post__date{padding-top:.2rem;color:var(--ink-3);font-family:var(--mono);font-size:.85rem}.v7-post__sub{margin:.35rem 0 0;color:var(--ink-2);line-height:1.5}.v7-cves{margin-top:3rem;overflow-x:auto;font-family:var(--mono);font-size:.85rem}.v7-cves__cmd{margin:0 0 1rem;color:var(--ink-2)}.v7-cves table{width:100%;border-collapse:collapse}.v7-cves th{padding:.5rem 1rem .5rem 0;border-bottom:1px solid var(--line-strong);color:var(--ink-3);font-weight:500;text-align:left}.v7-cves td{padding:.55rem 1rem .55rem 0;border-bottom:1px solid var(--line);color:var(--ink-2);white-space:nowrap}.v7-cves td a{color:var(--ink-1)}.v7-cves td a:hover{color:var(--bg-0);background:var(--acid)}.v7-cves tr:hover td{background:var(--bg-2)}.v7-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}.v7-step{padding:1.5rem 1.5rem 0 0}.v7-step+.v7-step{padding-left:1.5rem;border-left:1px solid var(--line)}.v7-step__n{color:var(--acid);font-family:var(--mono);font-size:.85rem}.v7-step__t{margin:.75rem 0 .6rem;font-family:var(--mono);font-size:1.35rem;font-weight:800}.v7-step__body{margin:0;color:var(--ink-2);line-height:1.55}.v7-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line-strong)}.v7-tier{position:relative;padding:2rem 1.75rem}.v7-tier+.v7-tier{border-left:1px solid var(--line-strong)}.v7-tier--common{background:var(--bg-0);box-shadow:inset 0 2px 0 var(--acid)}.v7-tier__flag{position:absolute;top:.8rem;right:1rem;color:var(--acid);font-family:var(--mono);font-size:.72rem}.v7-tier__name{margin:0;font-family:var(--mono);font-size:1.5rem;font-weight:800;letter-spacing:-.03em}.v7-tier__time{margin:.4rem 0 1.25rem;color:var(--ink-3);font-family:var(--mono);font-size:.85rem}.v7-tier__body{margin:0;color:var(--ink-2);line-height:1.55}.v7-tier__list{margin:1.25rem 0 0;padding:0;list-style:none;font-family:var(--mono);font-size:.82rem;line-height:1.9;color:var(--ink-2)}.v7-tier__list li:before{content:"+ ";color:var(--acid)}.v7-tiers__note{max-width:52rem;margin:1.5rem 0 0;color:var(--ink-3);font-size:.9rem;line-height:1.55}.v7-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem}.v7-faq__catname{margin:0 0 .5rem;color:var(--acid);font-family:var(--mono);font-size:.78rem;font-weight:700}.v7-faq__item{border-top:1px solid var(--line)}.v7-faq__item summary{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;cursor:pointer;list-style:none;font-weight:500}.v7-faq__item summary::-webkit-details-marker{display:none}.v7-faq__item summary:after{content:"[+]";color:var(--ink-3);font-family:var(--mono);font-size:.8rem}.v7-faq__item[open] summary:after{content:"[-]";color:var(--acid)}.v7-faq__item p{margin:0 0 1rem;color:var(--ink-2);line-height:1.6;white-space:pre-line}.v7-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:start;border-top:1px solid var(--line)}.v7-contact__title{margin:0 0 1.5rem;font-family:var(--mono);font-weight:800;font-size:clamp(2rem,4.6vw,3.9rem);line-height:1.04;letter-spacing:-.045em}.v7-channels{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:1rem 2.5rem;margin:2rem 0 0;font-family:var(--mono);font-size:.88rem}.v7-channels dt{color:var(--ink-3);font-size:.74rem}.v7-channels dd{margin:.2rem 0 0}.v7-channels a{color:var(--ink-1)}.v7-channels a:hover{color:var(--acid)}.v7-form{display:grid;gap:1rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line-strong);background:var(--bg-1);font-family:var(--mono)}.v7-form__head{display:grid;gap:.25rem;margin:0 0 .5rem;font-size:.82rem}.v7-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.v7-form label{display:grid;gap:.35rem}.v7-form label>span{color:var(--ink-3);font-size:.74rem}.v7-form label>span:before{content:"--"}.v7-form input,.v7-form textarea{width:100%;padding:.7rem .8rem;border:1px solid var(--line-strong);border-radius:0;background:var(--bg-0);color:var(--ink-1);font:inherit;font-size:.9rem;caret-color:var(--acid)}.v7-form input::placeholder,.v7-form textarea::placeholder{color:#5f5d56}.v7-form input:focus,.v7-form textarea:focus{outline:none;border-color:var(--acid)}.v7-form textarea{resize:vertical;min-height:8rem}.v7-form__hp{position:absolute;left:-9999px;width:1px;height:1px}.v7-form__submit{justify-self:start;padding:.8rem 1.1rem;border:1px solid var(--acid);color:var(--ink-1);font-family:var(--mono);font-weight:800}.v7-form__submit:hover:not(:disabled){background:var(--acid);color:var(--bg-0)}.v7-form__submit:hover:not(:disabled) .v7-acid{color:var(--bg-0)}.v7-form__submit:disabled{opacity:.6;cursor:default}.v7-form__err{margin:0;color:var(--red);font-size:.85rem}.v7-form__ok{margin:0;color:var(--acid);font-size:.85rem}.v7-footer{padding:3rem var(--gutter) 1.5rem;border-top:1px solid var(--line);font-family:var(--mono);font-size:.8rem}.v7-footer__grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:2rem;max-width:1440px;margin:0 auto}.v7-footer h4{margin:0 0 .6rem;color:var(--ink-3);font-size:.74rem;font-weight:500;text-transform:lowercase}.v7-footer p{margin:0;line-height:1.8}.v7-footer a,.v7-footer p{color:var(--ink-2)}.v7-footer a:hover{color:var(--acid)}.v7-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;max-width:1440px;margin:2.5rem auto 0;padding-top:1.25rem;border-top:1px solid var(--line);color:var(--ink-3);font-size:.74rem}.v7-footer__legal{display:flex;flex-wrap:wrap;gap:1.25rem}.v7-footer__legal a,.v7-footer__legal button{color:var(--ink-3);font:inherit}.v7-footer__legal a:hover,.v7-footer__legal button:hover{color:var(--ink-1)}@keyframes v7-blink{50%{opacity:0}}@media (max-width:1080px){.v7-nav__links{display:none}.v7-nav__links.is-open{position:absolute;top:100%;left:0;right:0;display:grid;gap:0;margin:0;padding:.5rem var(--gutter) 1rem;border-bottom:1px solid var(--line);background:var(--bg-0)}.v7-nav__links.is-open a{padding:.65rem 0;border-bottom:1px solid var(--line)}.v7-nav__menu{display:block}.v7-lang{margin-left:auto}}@media (max-width:960px){.v7-block__head,.v7-contact,.v7-faq,.v7-steps,.v7-tiers{grid-template-columns:minmax(0,1fr)}.v7-step,.v7-step+.v7-step{padding:1.25rem 0;border-left:0;border-bottom:1px solid var(--line)}.v7-tier+.v7-tier{border-left:0;border-top:1px solid var(--line-strong)}.v7-post{grid-template-columns:minmax(0,1fr);gap:.3rem}.v7-channels{grid-template-columns:repeat(2,auto)}.v7-footer__grid{grid-template-columns:1fr 1fr}.v7-tree__label{display:block;margin-left:4ch}}@media (max-width:560px){.v7-footer__grid,.v7-form__row{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.v7-hero__cursor{animation:none}.v7-nav__links a:before,.v7-ping__reply,.v7-postlink__arrow{transition:none}}.v7-cves__vendor{color:var(--ink-1)}.v7-sub{display:flex;flex-direction:column}.v7-sub .v6-main{flex:1}.v7-sub .h-display{font-family:var(--mono);font-weight:800;letter-spacing:-.045em;font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.02}.v7-sub .h-display .acc{font-weight:800}.v7-sub .eyebrow{font-family:var(--mono);color:var(--ink-3);letter-spacing:.08em;text-transform:lowercase}.v7-sub .eyebrow-num{font-family:var(--mono);font-style:normal;font-size:.8rem}.v7-sub .eyebrow-num:before{content:"$ ";color:var(--ink-3)}.v7-sub .lede{font-family:var(--sans);color:var(--ink-2)}.v7-sub .blog-index,.v7-sub .legal-sec{padding-top:clamp(3.5rem,8vw,6rem)}.v7-sub .blog-card-title,.v7-sub .blog-featured-title,.v7-sub .legal-h{font-family:var(--mono);font-weight:800;letter-spacing:-.035em}.v7-sub .blog-card,.v7-sub .blog-featured-card{border-radius:0}.v7-sub .blog-featured-card{border:1px solid var(--line-strong);background:var(--bg-1);box-shadow:none}.v7-sub .blog-featured-card:hover{border-color:var(--acid);transform:none}.v7-sub .blog-featured-cover,.v7-sub .post-cover{border-radius:0}.v7-sub .post-title{font-family:var(--mono);font-weight:800;letter-spacing:-.045em}.v7-sub .post-h2,.v7-sub .post-h3{font-family:var(--mono);letter-spacing:-.03em}.v7-sub .legal-p,.v7-sub .post-ol-body,.v7-sub .post-p,.v7-sub .post-ul-body{font-family:var(--sans)}.v7-sub .post-quote-body{font-family:var(--sans);font-style:normal}.v7-sub .btn{border-radius:0;font-family:var(--mono)}.v7-sub .btn-primary{background:var(--acid);color:var(--bg-0);box-shadow:none}.v7-sub .blog-featured-title{font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.08}.v7-sub .blog-featured-title .acc{display:block;margin-top:.5rem;font-family:var(--sans);font-weight:500;font-size:.55em;line-height:1.35;letter-spacing:0}.v7-proof__nato{display:inline-flex;align-items:center;gap:.75rem}.v7-proof__nato img{display:block;height:36px;width:auto}.v7-proof__creds{align-items:center}.v7-hero__kicker{margin:clamp(2rem,5vw,3.25rem) 0 .75rem;color:var(--ink-3);font-family:var(--mono);font-size:.85rem}.v7-hero__kicker:before{content:"// "}.v7-break{display:flex;flex-wrap:wrap;gap:0 .45em;margin:0;padding:0;list-style:none;font-family:var(--mono);font-weight:800;font-size:clamp(2.6rem,9.2vw,8.6rem);line-height:1.08;letter-spacing:-.06em}.v7-break__name{position:relative;display:block;color:var(--ink-1)}.v7-break__a,.v7-break__b{display:block;transition:transform .45s cubic-bezier(.2,.9,.2,1.15),color .2s;will-change:transform}.v7-break__a{clip-path:polygon(0 0,100% 0,100% 47%,91% 56%,82% 45%,70% 59%,58% 46%,46% 60%,33% 47%,21% 58%,9% 46%,0 55%)}.v7-break__b{position:absolute;inset:0;clip-path:polygon(0 55%,9% 46%,21% 58%,33% 47%,46% 60%,58% 46%,70% 59%,82% 45%,91% 56%,100% 47%,100% 100%,0 100%)}.v7-break__cve{position:absolute;left:.1em;top:50%;z-index:2;padding:.15rem .45rem;background:var(--bg-0);color:var(--acid);font-size:clamp(.62rem,1.05vw,.95rem);font-weight:700;letter-spacing:0;line-height:1.3;white-space:nowrap;opacity:0;transform:translateY(-50%) scaleX(.2);transform-origin:left center;transition:opacity .15s,transform .3s steps(6);pointer-events:none}.v7-break__name.is-broken .v7-break__a{transform:translate(-.03em,-.16em) rotate(-1.4deg);color:var(--acid)}.v7-break__name.is-broken .v7-break__b{transform:translate(.05em,.16em) rotate(1.1deg);color:var(--acid)}.v7-break__name.is-broken .v7-break__cve{opacity:1;transform:translateY(-50%) scaleX(1)}.v7-hero__foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem 3rem;align-items:end;margin-top:clamp(2rem,5vw,3rem);padding-top:1.75rem;border-top:1px solid var(--line)}.v7-hero__lede strong{color:var(--ink-1);font-weight:700}.v7-hero__shell{color:var(--ink-3);font-family:var(--mono);font-size:.82rem}.v7-hero__shell kbd{display:inline-block;padding:.05rem .4rem;border:1px solid var(--line-strong);color:var(--acid);font:inherit}.v7-hero__shell:hover{color:var(--ink-1)}.v7-nav__shell{color:var(--ink-3);font-family:var(--mono);font-size:.82rem}.v7-nav__shell:hover{color:var(--acid)}.v7-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:var(--gutter);background:rgba(5,5,5,.82);backdrop-filter:blur(4px)}.v7-overlay__panel{position:relative;width:min(100%,760px)}.v7-overlay__close{position:absolute;top:-1.9rem;right:0;color:var(--ink-3);font-family:var(--mono);font-size:.8rem}.v7-overlay__close:hover{color:var(--acid)}.v7-overlay .v7sh{min-height:24rem;max-height:min(34rem,80dvh)}.v7-research{position:relative;overflow:hidden}.v7-research>.v7-wrap{position:relative;z-index:1}.v7-hexleak{position:absolute;inset:0;z-index:0;width:100%;height:100%}.v7-research .v7-cves,.v7-research .v7-posts{background:color-mix(in srgb,var(--bg-1) 86%,transparent)}@media (max-width:960px){.v7-hero__foot{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.v7-break__a,.v7-break__b,.v7-break__cve{transition:none}}.v7-cover{position:relative;container-type:inline-size;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:1200/630;overflow:hidden;padding:4.5cqw 5cqw;border:1px solid var(--line-strong);background:var(--bg-0);color:var(--ink-1);font-family:var(--mono)}.v7-cover__hex{position:absolute;inset:0;margin:0;padding:3cqw;color:var(--ink-3);opacity:.12;font:inherit;font-size:1.55cqw;line-height:1.55;white-space:pre;pointer-events:none}.v7-cover__bottom,.v7-cover__top{position:relative;display:flex;justify-content:space-between;gap:2cqw;color:var(--ink-3);font-size:1.9cqw;text-transform:lowercase}.v7-cover__bottom span:first-child{color:var(--ink-2)}.v7-cover__word{position:relative;align-self:flex-start;font-weight:800;line-height:1;letter-spacing:-.06em}.v7-cover__a,.v7-cover__b{display:block;color:var(--acid);transition:transform .4s cubic-bezier(.2,.9,.2,1.15)}.v7-cover__a{clip-path:polygon(0 0,100% 0,100% 47%,91% 56%,82% 45%,70% 59%,58% 46%,46% 60%,33% 47%,21% 58%,9% 46%,0 55%);transform:translate(-.02em,-.1em) rotate(-1.2deg)}.v7-cover__b{position:absolute;inset:0;clip-path:polygon(0 55%,9% 46%,21% 58%,33% 47%,46% 60%,58% 46%,70% 59%,82% 45%,91% 56%,100% 47%,100% 100%,0 100%);transform:translate(.03em,.1em) rotate(.9deg)}.v7-cover__label{position:absolute;left:.08em;top:50%;padding:.3cqw 1cqw;background:var(--bg-0);color:var(--ink-1);font-size:2.1cqw;font-weight:700;letter-spacing:0;line-height:1.3;white-space:nowrap;transform:translateY(-50%)}.v7-cover__label.is-disputed{color:var(--amber)}.v7-cover-host:focus-visible .v7-cover__a,.v7-cover-host:hover .v7-cover__a{transform:translate(-.03em,-.17em) rotate(-1.8deg)}.v7-cover-host:focus-visible .v7-cover__b,.v7-cover-host:hover .v7-cover__b{transform:translate(.05em,.17em) rotate(1.3deg)}.v7-cover--hero{width:100%}.v7-blog__cmd{margin:0 0 .75rem;color:var(--ink-3);font-family:var(--mono);font-size:.85rem}.v7-blog__list{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}.v7-blog__item{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;padding:clamp(1.5rem,3vw,2.25rem) 0;border-bottom:1px solid var(--line);color:inherit}.v7-blog__item:hover .v7-cover{border-color:var(--acid)}.v7-blog__body{display:grid;gap:.75rem}.v7-blog__meta{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;color:var(--ink-3);font-size:.8rem}.v7-blog__meta,.v7-blog__title{margin:0;font-family:var(--mono)}.v7-blog__title{font-weight:800;font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.08;letter-spacing:-.04em}.v7-blog__item:hover .v7-blog__title{color:var(--acid)}.v7-blog__sub{margin:0;color:var(--ink-1);font-size:1.05rem;line-height:1.45}.v7-blog__excerpt{display:-webkit-box;margin:0;overflow:hidden;color:var(--ink-3);line-height:1.55;-webkit-line-clamp:3;-webkit-box-orient:vertical}.v7-blog__tags{display:flex;flex-wrap:wrap;gap:.3rem .9rem;margin:0;color:var(--ink-3);font-family:var(--mono);font-size:.75rem}.v7-blog__read{color:var(--acid);font-family:var(--mono);font-size:.85rem;font-weight:700}.v7-sub .post-cover{max-width:1200px;padding-top:clamp(1.5rem,4vw,2.5rem)}@media (max-width:860px){.v7-blog__item{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.v7-cover__a,.v7-cover__b{transition:none}}.v7-sub .post-title-word{margin-right:.3em}.v7-sub .post-cover{max-width:1040px}.v7-pricing{position:relative;overflow:hidden}.v7-pricing>.v7-wrap{position:relative;z-index:1}.v7-race{position:absolute;inset:0;z-index:0;width:100%;height:100%}.v7-pricing .v7-tier{background:color-mix(in srgb,var(--bg-1) 88%,transparent)}.v7-pricing .v7-tier--common{background:color-mix(in srgb,var(--bg-0) 92%,transparent)}.v7p{max-width:calc(1024px + 2 * var(--gutter));margin:0 auto;padding:0 var(--gutter) 2rem}.v7p-head{max-width:720px;margin:clamp(2.5rem,7vw,4.5rem) 0 2.25rem}.v7p-path{margin:0 0 1.25rem;color:var(--ink-3);font-family:var(--mono);font-size:.82rem}.v7p-path a{color:var(--acid)}.v7p-title{margin:0;font-family:var(--mono);font-weight:800;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.06;letter-spacing:-.045em;text-wrap:balance}.v7p-sub{margin:1rem 0 0;color:var(--ink-2);font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.5}.v7p-meta{display:flex;flex-wrap:wrap;gap:.75rem 2.25rem;margin:1.75rem 0 0;padding-top:1.25rem;border-top:1px solid var(--line);font-family:var(--mono);font-size:.85rem}.v7p-meta dt{color:var(--ink-3);font-size:.72rem}.v7p-meta dd{margin:.2rem 0 0;color:var(--ink-1)}.v7p-meta a{color:var(--acid)}.v7p-cover{margin:0 0 clamp(2.5rem,6vw,4rem)}.v7p-grid{display:grid;grid-template-columns:minmax(0,720px) 240px;gap:4rem}.v7p-body{grid-column:1;grid-row:1;min-width:0}.v7p-side{grid-column:2;grid-row:1}.v7p-toc--side{position:sticky;top:5.5rem;max-height:calc(100dvh - 7rem);overflow-y:auto;font-family:var(--mono);font-size:.76rem}.v7p-toc__head{margin:0 0 .75rem;color:var(--ink-3)}.v7p-toc__list{margin:0;padding:0;list-style:none;border-left:1px solid var(--line-strong)}.v7p-toc__list a{display:grid;grid-template-columns:2.2em 1fr;overflow-wrap:anywhere;padding:.35rem 0 .35rem .9rem;margin-left:-1px;border-left:1px solid transparent;color:var(--ink-3);line-height:1.4}.v7p-toc__list a:hover{color:var(--ink-1)}.v7p-toc__list a[aria-current]{color:var(--ink-1);border-left-color:var(--acid)}.v7p-toc__num{color:var(--acid)}.v7p-toc--inline{display:none;margin:0 0 2.5rem;padding:.9rem 1rem;border:1px solid var(--line-strong);font-family:var(--mono);font-size:.85rem}.v7p-toc--inline summary{cursor:pointer;color:var(--ink-2)}.v7p-toc--inline .v7p-toc__list{margin-top:.75rem}.v7p-body{color:var(--ink-2);font-family:var(--sans);font-size:1.08rem;line-height:1.75}.v7p-body>p{margin:0 0 1.35rem}.v7p-body a,.v7p-body strong{color:var(--ink-1)}.v7p-body a{text-decoration:underline;text-decoration-color:var(--acid);text-underline-offset:.2em}.v7p-body a:hover{color:var(--acid)}.v7p-body h2{position:relative;margin:3.5rem 0 1.25rem;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--ink-1);font-family:var(--mono);font-weight:800;font-size:clamp(1.4rem,2.4vw,1.75rem);line-height:1.2;letter-spacing:-.035em;scroll-margin-top:5rem}.v7p-anchor{display:inline-block;min-width:2.3em;color:var(--acid)!important;text-decoration:none!important;font-size:.8em}.v7p-body h3{margin:2.25rem 0 .75rem;color:var(--ink-1);font-family:var(--mono);font-weight:700;font-size:1.15rem;letter-spacing:-.02em}.v7p-body ol,.v7p-body ul{margin:0 0 1.5rem;padding-left:1.4rem}.v7p-body li{margin:.4rem 0;padding-left:.3rem}.v7p-body ul li::marker{color:var(--acid);content:"→  "}.v7p-body ol li::marker{color:var(--acid);font-family:var(--mono);font-size:.85em}.v7p-body hr{margin:3rem 0;border:0;border-top:1px dashed var(--line-strong)}.v7p-icode{padding:.08em .35em;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-1);font-family:var(--mono);font-size:.86em;word-break:break-word}.v7p-body blockquote{margin:2rem 0;padding:.25rem 0 .25rem 1.25rem;border-left:2px solid var(--acid);color:var(--ink-1)}.v7p-body blockquote p{margin:0 0 .75rem}.v7p-body blockquote footer{color:var(--ink-3);font-family:var(--mono);font-size:.8rem}.v7p-code{margin:1.75rem 0 2rem;border:1px solid var(--line-strong);background:var(--bg-1)}.v7p-code figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.5rem .9rem;border-bottom:1px solid var(--line-strong);color:var(--ink-3);font-family:var(--mono);font-size:.74rem}.v7p-code__lang{color:var(--acid)}.v7p-code pre{margin:0;padding:1rem .9rem;overflow-x:auto;color:var(--ink-1);font-family:var(--mono);font-size:.82rem;line-height:1.65;tab-size:4}.v7p-table{margin:1.75rem 0 2rem;overflow-x:auto;border:1px solid var(--line-strong)}.v7p-table table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.55}.v7p-table th{width:32%;background:var(--bg-1);color:var(--ink-3);font-family:var(--mono);font-size:.74rem;font-weight:500;text-align:left;text-transform:lowercase}.v7p-table td,.v7p-table th{padding:.7rem 1rem;border-bottom:1px solid var(--line);vertical-align:top}.v7p-table td{color:var(--ink-1)}.v7p-table tr:last-child td,.v7p-table tr:last-child th{border-bottom:0}.v7p-video{margin:2rem 0}.v7p-video video{display:block;width:100%;border:1px solid var(--line-strong);background:#000}.v7p-video figcaption{margin-top:.6rem;color:var(--ink-3);font-size:.85rem}.v7p-foot{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--line-strong)}.v7p-footnote{color:var(--ink-3);font-size:.9rem}.v7p-bio{margin:1.5rem 0;padding:1.25rem;border:1px solid var(--line-strong);background:var(--bg-1);font-size:.95rem}.v7p-bio p{margin:0 0 .5rem}.v7p-bio__head{font-family:var(--mono);font-size:.8rem;color:var(--ink-3)}.v7p-tags{gap:.35rem 1rem;color:var(--ink-3);font-size:.78rem}.v7p-nav,.v7p-tags{display:flex;flex-wrap:wrap;font-family:var(--mono)}.v7p-nav{justify-content:space-between;gap:1rem;margin-top:2rem;font-size:.88rem}.v7p-nav a{color:var(--acid);text-decoration:none}.v7p-nav a:hover{color:var(--ink-1)}.v7-sub .post-progress{position:fixed;top:0;left:0;z-index:60;height:2px;background:var(--acid)}@media (max-width:1100px){.v7p{max-width:calc(720px + 2 * var(--gutter))}.v7p-grid{grid-template-columns:minmax(0,1fr)}.v7p-body{grid-column:1}.v7p-side{display:none}.v7p-toc--inline{display:block}}.v7sh{display:flex;flex-direction:column;min-height:26rem;max-height:34rem;border:1px solid var(--line-strong);background:var(--bg-1);font-family:var(--mono);font-size:.86rem;line-height:1.6;cursor:text}.v7sh__bar{display:flex;justify-content:space-between;padding:.45rem .85rem;border-bottom:1px solid var(--line-strong);color:var(--ink-3);font-size:.72rem}.v7sh__body{flex:1;overflow-y:auto;padding:.85rem .85rem .5rem;scrollbar-width:thin}.v7sh__line{white-space:pre-wrap;word-break:break-word;color:var(--ink-1)}.v7sh__line--dim{color:var(--ink-3)}.v7sh__line--hit{color:var(--red)}.v7sh__line--link a{color:var(--ink-1);text-decoration:none;border-bottom:1px dotted var(--ink-3)}.v7sh__line--link a:hover{color:var(--bg-0);background:var(--acid);border-bottom-color:transparent}.v7sh__line--cmd{margin-top:.6rem}.v7sh__line--cmd:first-child{margin-top:0}.v7sh__prompt{color:var(--acid);white-space:nowrap}.v7sh__form{display:flex;gap:.5ch;margin-top:.6rem}.v7sh__input{flex:1;min-width:0;padding:0;border:0;outline:none;background:transparent;color:var(--ink-1);font:inherit;caret-color:var(--acid)}.v7sh:focus-within{border-color:var(--acid)}.v7sh__chips{display:flex;flex-wrap:wrap;gap:.4rem;padding:.6rem .85rem;border-top:1px solid var(--line-strong)}.v7sh__chip{padding:.25rem .55rem;border:1px solid var(--line-strong);background:transparent;color:var(--ink-2);font:inherit;font-size:.76rem;cursor:pointer}.v7sh__chip:before{content:"> ";color:var(--ink-3)}.v7sh__chip:hover{border-color:var(--acid);color:var(--acid)}.v7sh__chip:focus-visible{outline:2px solid var(--acid);outline-offset:2px}.v7sh__sound{padding:0;border:0;background:transparent;color:var(--ink-3);font:inherit;cursor:pointer}.v7sh__sound[aria-pressed=true]{color:var(--acid)}.v7sh__sound:hover{color:var(--ink-1)}.v7sh__sound:focus-visible{outline:2px solid var(--acid);outline-offset:2px}