.v4-announce{min-height:38px;padding-block:.4rem;padding-inline:var(--v4-gutter);background:var(--v4-paper);color:var(--v4-ink);border-bottom:1px solid #1a1c1f14;justify-content:center;align-items:center;gap:.75rem;font-size:.875rem;display:flex}.v4-announce__text{color:var(--v4-grey)}.v4-announce__text strong{color:var(--v4-ink);font-weight:500}@media (max-width:700px){.v4-announce__detail{display:none}}.v4-nav{z-index:60;height:var(--v4-nav-h);margin-bottom:calc(var(--v4-nav-h) * -1);color:var(--v4-nav-fg);transition:background-color .26s var(--v4-ease), color .26s var(--v4-ease), box-shadow .26s var(--v4-ease);align-items:center;display:flex;position:sticky;top:0}.v4-nav--over-dark{--v4-nav-fg:var(--v4-paper);--v4-nav-cta-bg:var(--v4-paper);--v4-nav-cta-fg:var(--v4-ink)}.v4-nav--over-light{--v4-nav-fg:var(--v4-ink);--v4-nav-cta-bg:var(--v4-ink);--v4-nav-cta-fg:var(--v4-paper)}.v4-nav.is-scrolled{--v4-nav-fg:var(--v4-ink);--v4-nav-cta-bg:var(--v4-ink);--v4-nav-cta-fg:var(--v4-paper);-webkit-backdrop-filter:blur(14px)saturate(1.2);background:#faf8f4db;box-shadow:inset 0 -1px #1a1c1f14}.v4-nav.is-solid{background:var(--v4-paper);margin-bottom:0;position:sticky}.v4-nav.is-scrolled.is-on-dark{--v4-nav-fg:var(--v4-paper);--v4-nav-cta-bg:var(--v4-paper);--v4-nav-cta-fg:var(--v4-ink);background:#0e0f11b8;box-shadow:inset 0 -1px #faf8f41a}.v4-nav__inner{align-items:center;gap:2.5rem;width:100%;display:flex}.v4-nav__brand{letter-spacing:-.025em;align-items:center;gap:.6rem;font-size:1.125rem;font-weight:500;line-height:1;display:inline-flex}.v4-nav__brand svg{display:block}.v4-nav__links{align-items:center;gap:1.75rem;margin:0;padding:0;list-style:none;display:flex}.v4-nav__link{opacity:.86;transition:opacity .16s var(--v4-ease);font-size:.9375rem;font-weight:500}.v4-nav__link:hover{opacity:1}.v4-nav__right{align-items:center;gap:1.25rem;margin-left:auto;display:flex}.v4-nav__signin{opacity:.86;font-size:.9375rem;font-weight:500}.v4-nav__signin:hover{opacity:1}.v4-nav__cta{background:var(--v4-nav-cta-bg);color:var(--v4-nav-cta-fg);border-color:var(--v4-nav-cta-bg)}.v4-nav__group{position:relative}.v4-nav__trigger{font-family:var(--v4-font-sans);color:inherit;cursor:pointer;height:var(--v4-nav-h);background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.v4-nav__group.is-open .v4-nav__trigger{opacity:1}.v4-nav.has-menu{--v4-nav-fg:var(--v4-ink);--v4-nav-cta-bg:var(--v4-ink);--v4-nav-cta-fg:var(--v4-paper);background:var(--v4-paper);-webkit-backdrop-filter:none;box-shadow:none}.v4-nav.has-menu[data-tone=dark]{--v4-nav-fg:var(--v4-paper);--v4-nav-cta-bg:var(--v4-paper);--v4-nav-cta-fg:var(--v4-ink);background:var(--v4-ink-deep)}.v4-shelf{--v4-shelf-fg:var(--v4-ink);--v4-shelf-muted:var(--v4-grey);--v4-shelf-hair:#1a1c1f1f;--v4-shelf-hover:#1a1c1f0a;background:var(--v4-paper);color:var(--v4-shelf-fg);border-bottom:1px solid var(--v4-shelf-hair);opacity:0;visibility:hidden;transition:opacity .18s var(--v4-ease), transform .26s var(--v4-ease-out), visibility 0s linear .18s;z-index:70;position:absolute;top:100%;left:0;right:0;transform:translateY(-8px)}.v4-nav[data-tone=dark] .v4-shelf{--v4-shelf-fg:var(--v4-paper);--v4-shelf-muted:var(--v4-grey-dark);--v4-shelf-hair:#faf8f424;--v4-shelf-hover:#faf8f40f;background:var(--v4-ink-deep)}.v4-shelf.is-open{opacity:1;visibility:visible;transition:opacity .18s var(--v4-ease), transform .26s var(--v4-ease-out), visibility 0s;transform:none}.v4-shelf__inner{border-top:1px solid var(--v4-shelf-hair);flex-direction:column;gap:1.25rem;padding-top:1.5rem;padding-bottom:2.25rem;display:flex}.v4-shelf__label{color:var(--v4-shelf-muted)}.v4-shelf__grid{gap:.5rem 0;display:grid}.v4-shelf__grid--4{grid-template-columns:repeat(4,1fr)}.v4-shelf__grid--3{grid-template-columns:repeat(3,1fr)}.v4-shelf__item{border-left:1px solid var(--v4-shelf-hair);transition:background-color .14s var(--v4-ease);flex-direction:column;gap:.45rem;padding:.9rem 1.25rem .9rem 1.1rem;display:flex}.v4-shelf__item:hover,.v4-shelf__item:focus-visible{background:var(--v4-shelf-hover)}.v4-shelf__icon{width:30px;height:30px;color:var(--v4-shelf-fg);margin-bottom:.4rem}.v4-shelf__label-text{color:var(--v4-shelf-fg);font-size:.9375rem;font-weight:500}.v4-shelf__sub{color:var(--v4-shelf-muted);max-width:22em;font-size:.8125rem;line-height:1.4}.v4-nav__burger{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:none}@media (max-width:900px){.v4-nav__links,.v4-nav__signin{display:none}.v4-nav__burger{display:inline-flex}}.v4-drawer{z-index:70;background:var(--v4-ink-deep);color:var(--v4-paper);padding:var(--v4-gutter);flex-direction:column;gap:2rem;display:flex;position:fixed;inset:0}.v4-drawer__top{height:var(--v4-nav-h);justify-content:space-between;align-items:center;display:flex}.v4-drawer__scroll{flex-direction:column;flex:1;gap:1.75rem;min-height:0;display:flex;overflow-y:auto}.v4-drawer__group{flex-direction:column;gap:.5rem;display:flex}.v4-drawer__group .v4-label{color:var(--v4-grey-dark)}.v4-drawer__links{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.v4-drawer__links a{letter-spacing:-.02em;border-top:1px solid #faf8f424;padding:.7rem 0;font-size:1.375rem;font-weight:300;display:block}.v4-drawer__actions{gap:.75rem;margin-top:auto;display:flex}.v4-hero{min-height:100svh;color:var(--v4-paper);background:var(--v4-ink-deep);align-items:flex-end;display:flex;position:relative;overflow:hidden}.v4-hero__media{z-index:0;position:absolute;inset:0}.v4-hero__media img{object-fit:cover;object-position:center;width:100%;height:100%}.v4-hero__scrim{z-index:1;background:linear-gradient(#0e0f1100 40%,#0e0f1166 66%,#0e0f11db 100%),linear-gradient(90deg,#0e0f1166 0%,#0e0f1100 55%);position:absolute;inset:0}.v4-hero__placeholder{background:radial-gradient(120% 80% at 70% 20%, #2a3340 0%, transparent 60%), radial-gradient(90% 70% at 20% 90%, #1c2430 0%, transparent 60%), var(--v4-ink-deep);position:absolute;inset:0}.v4-hero__slot{right:var(--v4-gutter);top:calc(var(--v4-nav-h) + 1rem);z-index:3;font-family:var(--v4-font-mono);letter-spacing:.04em;color:#faf8f473;border:1px dashed #faf8f44d;border-radius:4px;padding:.4rem .6rem;font-size:.7rem;position:absolute}.v4-hero__content{z-index:2;width:100%;padding-bottom:clamp(2.5rem,6vw,5rem);padding-top:calc(var(--v4-nav-h) + 6rem);grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:end;gap:clamp(2rem,5vw,5rem);display:grid;position:relative}.v4-hero__title{color:var(--v4-paper)}.v4-hero__aside{border-left:1px solid #faf8f466;flex-direction:column;gap:1.5rem;max-width:30em;padding-left:1.5rem;display:flex}.v4-hero__aside p{color:#faf8f4eb}.v4-hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}.v4-hero .v4-btn--ghost{color:var(--v4-paper);border-color:#faf8f480}.v4-hero .v4-btn--ghost:hover{border-color:var(--v4-paper);background:#faf8f41f}@media (max-width:900px){.v4-hero__content{grid-template-columns:1fr;gap:2rem}.v4-hero__aside{border-top:1px solid #faf8f459;border-left:0;padding-top:1.25rem;padding-left:0}}.v4-strip{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.v4-strip__cell{background:var(--v4-bg-2);height:88px;color:var(--v4-muted);letter-spacing:-.01em;text-align:center;border-radius:6px;justify-content:center;align-items:center;padding-inline:1rem;font-size:.95rem;font-weight:500;display:flex}@media (max-width:900px){.v4-strip{grid-template-columns:repeat(2,1fr)}}.v4-tiles{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.v4-tile{aspect-ratio:3/4;border-radius:var(--v4-radius-tile);color:var(--v4-paper);isolation:isolate;text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.v4-tile .v4-field{z-index:0;transition:transform 1.2s var(--v4-ease-out)}.v4-tile:hover .v4-field{transform:scale(1.04)}.v4-tile__body{z-index:2;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;display:flex;position:relative}.v4-tile__name{letter-spacing:-.03em;font-size:clamp(1.5rem,2.2vw,2rem);font-weight:300;line-height:1}.v4-tile__sub{color:#faf8f4db;max-width:22em;font-size:.9375rem;line-height:1.4}.v4-tile__cta{color:var(--v4-paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#faf8f424;border-color:#faf8f459;margin-top:.75rem}.v4-tile__cta:hover{background:var(--v4-paper);color:var(--v4-ink);border-color:var(--v4-paper)}@media (max-width:1100px){.v4-tiles{grid-template-columns:repeat(2,1fr)}}.v4-acc{gap:.75rem;height:clamp(440px,58vh,640px);display:flex}.v4-acc__card{border-radius:var(--v4-radius-tile);min-width:0;color:var(--v4-paper);isolation:isolate;transition:flex-grow .76s var(--v4-ease-out);flex:1 1 0;position:relative;overflow:hidden}.v4-acc__card.is-active{flex-grow:2.6}.v4-acc__card .v4-field{z-index:0;transition:transform .9s var(--v4-ease-out)}.v4-acc__card.is-active .v4-field{transform:scale(1.03)}.v4-acc__body{z-index:2;flex-direction:column;justify-content:space-between;height:100%;padding:1.75rem;display:flex;position:relative}.v4-acc__icon{flex:none;width:36px;height:36px}.v4-acc__text{flex-direction:column;gap:.75rem;min-width:0;display:flex}.v4-acc__name{letter-spacing:-.03em;white-space:nowrap;margin:0;font-size:clamp(1.5rem,2.4vw,2.25rem);font-weight:300;line-height:1}.v4-acc__sub,.v4-acc__cta{opacity:0;width:22em;max-width:none;transition:opacity .16s var(--v4-ease), transform 0s linear .16s;transform:translateY(8px)}.v4-acc__sub{font-size:var(--v4-fs-small);color:#faf8f4db;margin:0;line-height:1.45}.v4-acc__cta{color:var(--v4-paper)}.v4-acc__card.is-active .v4-acc__sub,.v4-acc__card.is-active .v4-acc__cta{opacity:1;transition:opacity .36s var(--v4-ease) .24s, transform .48s var(--v4-ease-out) .24s;transform:none}@media (max-width:900px){.v4-acc{flex-direction:column;height:auto}.v4-acc__card{min-height:120px;transition:min-height .6s var(--v4-ease-out);flex:none}.v4-acc__card.is-active{min-height:340px}.v4-acc__body{min-height:inherit}.v4-acc__sub,.v4-acc__cta{width:auto;max-width:100%}}@media (prefers-reduced-motion:reduce){.v4-acc__card,.v4-acc__card .v4-field,.v4-acc__sub,.v4-acc__cta{transition:none}}.v4-triptych{grid-template-rows:auto minmax(5rem,1fr) auto auto;grid-template-columns:repeat(3,1fr);gap:0;display:grid}.v4-triptych__col{grid-row:span 4;grid-template-rows:subgrid;border-left:1px solid var(--v4-hair);row-gap:0;padding:.5rem 2rem .5rem 1.75rem;display:grid}.v4-triptych__col>.v4-stack{display:contents}.v4-triptych__head{flex-direction:column;grid-row:1;align-items:flex-start;gap:1.25rem;display:flex}.v4-triptych__icon{width:40px;height:40px;color:var(--v4-fg);margin-left:-4px}.v4-triptych__col .v4-h4{grid-row:3;margin-bottom:.75rem}.v4-triptych__col .v4-small{grid-row:4}.v4-triptych--compact{grid-template-rows:auto auto auto}.v4-triptych--compact .v4-triptych__col{grid-row:span 3}.v4-triptych--compact .v4-triptych__head{grid-row:1;margin-bottom:1.5rem}.v4-triptych--compact .v4-triptych__col .v4-h4{grid-row:2}.v4-triptych--compact .v4-triptych__col .v4-small{grid-row:3}@media (max-width:900px){.v4-triptych{grid-template-rows:none;grid-template-columns:1fr}.v4-triptych__col{flex-direction:column;gap:1.25rem;padding:1.5rem 0 1.5rem 1.25rem;display:flex}.v4-triptych__col>.v4-stack{display:flex}}.v4-columns{grid-template-columns:repeat(var(--cols,4), 1fr);grid-template-rows:auto auto auto;display:grid}.v4-columns__col{grid-row:span 3;grid-template-rows:subgrid;border-left:1px solid var(--v4-hair);min-width:0;padding:.5rem 1.75rem .5rem 1.5rem;display:grid}.v4-columns__icon{width:40px;height:40px;color:var(--v4-fg);margin:0 0 1.5rem -4px;display:block}.v4-columns__col .v4-h4{margin-bottom:.6rem}@media (max-width:1000px){.v4-columns{grid-template-rows:none;grid-template-columns:repeat(2,1fr);row-gap:2.5rem}.v4-columns__col{flex-direction:column;grid-row:auto;display:flex}}@media (max-width:600px){.v4-columns{grid-template-columns:1fr}}.v4-hero-field{text-align:center;min-height:92svh;color:var(--v4-paper);background:var(--v4-ink-deep);isolation:isolate;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.v4-hero-field .v4-field{z-index:0}.v4-hero-field__scrim{z-index:1;background:linear-gradient(#0e0f1100 30%,#0e0f111a 60%,#0e0f118c 100%);position:absolute;inset:0}.v4-hero-field__body{z-index:2;padding-top:calc(var(--v4-nav-h) + 3rem);flex-direction:column;align-items:center;gap:1.5rem;max-width:52rem;padding-bottom:4rem;display:flex;position:relative}.v4-hero-field__brand{letter-spacing:-.02em;align-items:center;gap:.75rem;font-size:1.125rem;font-weight:500;display:inline-flex}.v4-hero-field__brand svg{width:32px;height:32px}.v4-hero-field__brand span{letter-spacing:.01em;font-weight:400}.v4-hero-field__title{letter-spacing:var(--v4-track-display);text-wrap:balance;margin:0;font-size:clamp(2.5rem,5vw,4.75rem);font-weight:300;line-height:1.02}.v4-hero-field__lede{color:#faf8f4db;max-width:38em}.v4-spec{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-tile);background:var(--v4-fill);font-variant-numeric:tabular-nums;flex-direction:column;gap:1.5rem;margin:0;padding:1.75rem;display:flex}.v4-spec__head{flex-direction:column;gap:.6rem;display:flex}.v4-spec__title{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:1.375rem;font-weight:300;line-height:1.2}.v4-spec__headline{border-top:1px solid var(--v4-hair);border-bottom:1px solid var(--v4-hair);grid-template-columns:repeat(4,1fr);display:grid}.v4-spec__stat{flex-direction:column;gap:.5rem;padding:1.1rem 1rem 1.1rem 0;display:flex}.v4-spec__stat+.v4-spec__stat{border-left:1px solid var(--v4-hair);padding-left:1rem}.v4-spec__stat-value{letter-spacing:-.03em;font-size:clamp(2rem,3vw,2.75rem);font-weight:300;line-height:1}.v4-spec__code{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);font-family:var(--v4-font-mono);color:var(--v4-fg);background:#0e0f1159;margin:0;padding:1rem 1.1rem;font-size:.78rem;line-height:1.55;overflow-x:auto}.v4-spec__table{border-collapse:collapse;width:100%;font-size:.9rem}.v4-spec__table th{font-family:var(--v4-font-mono);letter-spacing:.04em;color:var(--v4-muted);border-bottom:1px solid var(--v4-hair-strong);white-space:nowrap;padding:0 .5rem .7rem 0;font-size:.7rem;font-weight:400}.v4-spec__table td{border-bottom:1px solid var(--v4-hair);vertical-align:top;padding:.7rem .5rem .7rem 0}.v4-spec__table th:last-child,.v4-spec__table td:last-child{padding-right:0}.v4-spec__table tr.is-muted td{color:var(--v4-muted)}.v4-spec__table tr.is-emphasis td{font-weight:500}.v4-spec__caption{font-size:var(--v4-fs-small);color:var(--v4-muted);flex-direction:column;gap:.75rem;display:flex}@media (max-width:700px){.v4-spec{padding:1.25rem}.v4-spec__headline{grid-template-columns:repeat(2,1fr)}.v4-spec__stat:nth-child(3){border-left:0;padding-left:0}.v4-spec__table{display:block;overflow-x:auto}}.v4-doc__hero{text-align:left;min-height:0;padding-top:calc(var(--v4-nav-h) + 5rem);align-items:flex-end;padding-bottom:clamp(2.5rem,5vw,4rem)}.v4-doc__hero-body{z-index:2;flex-direction:column;gap:clamp(2rem,4vw,3.5rem);display:flex;position:relative}.v4-doc{padding-top:var(--v4-section);padding-bottom:var(--v4-section);grid-template-columns:240px minmax(0,1fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.v4-doc__toc{top:calc(var(--v4-nav-h) + 1.5rem);flex-direction:column;gap:1rem;display:flex;position:sticky}.v4-doc__toc ol{border-top:1px solid var(--v4-hair);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.v4-doc__toc a{border-bottom:1px solid var(--v4-hair);color:var(--v4-muted);transition:color .16s var(--v4-ease);align-items:baseline;gap:.9rem;padding:.6rem 0;font-size:.9rem;display:flex}.v4-doc__toc a:hover{color:var(--v4-fg)}.v4-doc__toc-num{font-family:var(--v4-font-mono);letter-spacing:.04em;font-size:.7rem}.v4-doc__main{flex-direction:column;display:flex}.v4-doc__section{padding:calc(var(--v4-section) * .6) 0;border-top:1px solid var(--v4-hair);scroll-margin-top:calc(var(--v4-nav-h) + 1rem);flex-direction:column;gap:2.5rem;display:flex}.v4-doc__section:first-child{border-top:0;padding-top:0}.v4-doc__head{flex-direction:column;gap:1rem;display:flex}.v4-doc__body{flex-direction:column;gap:2rem;display:flex}.v4-chips{flex-wrap:wrap;gap:.5rem;display:flex}.v4-chip{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);height:32px;color:var(--v4-fg);align-items:center;padding:0 .8rem;font-size:.85rem;font-weight:500;display:inline-flex}.v4-doc__main,.v4-doc__body,.v4-doc__section{min-width:0}@media (max-width:900px){.v4-doc{grid-template-columns:minmax(0,1fr)}.v4-doc__toc{position:static}}.v4-contact{min-height:calc(100svh - var(--v4-nav-h));grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.v4-contact__media{background:var(--v4-ink-deep);min-height:60svh;color:var(--v4-paper);isolation:isolate;align-items:flex-end;display:flex;position:relative;overflow:hidden}.v4-contact__media img{object-fit:cover}.v4-contact__media-body{z-index:2;padding:4rem var(--v4-gutter) 3rem;flex-direction:column;gap:1.5rem;max-width:34rem;display:flex;position:relative}.v4-contact__media-body p{color:#faf8f4db}.v4-contact__channels{font-size:var(--v4-fs-small);border-top:1px solid #faf8f459;flex-direction:column;gap:.5rem;margin:0;padding:1.25rem 0 0;list-style:none;display:flex}.v4-contact__channels a{text-underline-offset:3px;-webkit-text-decoration:underline #faf8f466;text-decoration:underline #faf8f466}.v4-contact__form-wrap{padding:3rem var(--v4-gutter) 4rem;justify-content:center;align-items:center;display:flex}.v4-form{flex-direction:column;gap:1.5rem;width:100%;max-width:34rem;display:flex}.v4-form__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.v4-field-group{flex-direction:column;gap:.45rem;display:flex}.v4-field-group label{font-size:.9rem;font-weight:500}.v4-input,.v4-select,.v4-textarea{width:100%;font-family:var(--v4-font-sans);color:var(--v4-fg);background:var(--v4-bg-2);border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);transition:border-color .16s var(--v4-ease);padding:.7rem .85rem;font-size:.95rem}.v4-input::placeholder,.v4-textarea::placeholder{color:var(--v4-muted)}.v4-input:focus,.v4-select:focus,.v4-textarea:focus{border-color:var(--v4-fg);outline:none}.v4-textarea{resize:vertical;min-height:140px}.v4-form__error{font-size:var(--v4-fs-small);color:var(--v4-status-red,#b4361c);margin:0}.v4-form__honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.v4-form__success{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}@media (max-width:900px){.v4-contact{grid-template-columns:1fr}.v4-contact__form-wrap{padding-top:3rem}.v4-form__row{grid-template-columns:1fr}}.v4-endpoint{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);width:fit-content;font-family:var(--v4-font-mono);letter-spacing:.01em;color:var(--v4-fg);background:var(--v4-fill);align-self:flex-start;align-items:center;gap:.75rem;padding:.6rem .9rem;font-size:.85rem;display:inline-flex}.v4-endpoint__method{color:var(--v4-muted)}.v4-stats{grid-template-columns:repeat(4,1fr);display:grid}.v4-stats__cell{border-left:1px solid var(--v4-hair);flex-direction:column;gap:.9rem;padding:.25rem 1.5rem .5rem;display:flex}.v4-stats__value{letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(2.5rem,4.4vw,4rem);font-weight:300;line-height:1}@media (max-width:900px){.v4-stats{grid-template-columns:1fr 1fr;row-gap:2rem}}.v4-rows{flex-direction:column;display:flex}.v4-row{border-top:1px solid var(--v4-hair);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:2rem;padding:1.75rem 0;display:grid}.v4-row:last-child{border-bottom:1px solid var(--v4-hair)}.v4-row__title{letter-spacing:-.012em;margin:0;font-size:1.125rem;font-weight:400}.v4-row__detail{color:var(--v4-muted);max-width:40em;margin:0}@media (max-width:700px){.v4-row{grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0}}.v4-segment{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.v4-segment .v4-row{grid-template-columns:1fr;gap:.35rem;padding:1.25rem 0}.v4-segment__photo{aspect-ratio:4/5;border-radius:var(--v4-radius-tile);background:var(--v4-ink);isolation:isolate;justify-self:end;width:100%;max-width:520px;position:relative;overflow:hidden}.v4-segment__photo img{object-fit:cover;width:100%;height:100%}.v4-segment__frame{opacity:0;transition:opacity .3s var(--v4-ease)}.v4-segment__frame[data-on=true]{opacity:1}@media (prefers-reduced-motion:reduce){.v4-segment__frame{transition:none}}.v4-segment__placeholder{background:radial-gradient(100% 70% at 30% 20%, #2a3340 0%, transparent 60%), radial-gradient(80% 60% at 80% 90%, #1c2430 0%, transparent 60%), var(--v4-ink-deep);position:absolute;inset:0}.v4-segment__slot{z-index:3;font-family:var(--v4-font-mono);letter-spacing:.04em;color:#faf8f480;border:1px dashed #faf8f44d;border-radius:4px;padding:.4rem .6rem;font-size:.7rem;position:absolute;bottom:1rem;left:1rem}@media (max-width:900px){.v4-segment{grid-template-columns:1fr}.v4-segment__photo{aspect-ratio:4/3;order:-1;max-width:none}}.v4-showcase{border-radius:var(--v4-radius-tile);background:var(--v4-ink);aspect-ratio:3/2;color:var(--v4-paper);align-items:flex-end;padding:1.75rem;display:flex;position:relative;overflow:hidden}.v4-showcase__shot{border-radius:10px;width:100%;height:auto;position:absolute;top:8%;left:12%;overflow:hidden;box-shadow:0 40px 80px #00000073;-webkit-mask-image:linear-gradient(#000 55%,#0000 95%);mask-image:linear-gradient(#000 55%,#0000 95%)}.v4-showcase__title{letter-spacing:-.02em;font-size:1.375rem;font-weight:300;position:relative}.v4-closing{color:var(--v4-paper);background:var(--v4-ink-deep);text-align:center;padding-block:clamp(7rem,14vw,12rem) clamp(5rem,9vw,8rem);position:relative;overflow:hidden}.v4-closing__field{z-index:0;height:70%;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 20%,#0000 100%);mask-image:linear-gradient(#000 20%,#0000 100%)}.v4-closing__body{z-index:2;flex-direction:column;align-items:center;gap:1.75rem;display:flex;position:relative}.v4-closing__body p{color:#faf8f4cc;max-width:34em}.v4-closing .v4-btn--ghost{color:var(--v4-paper);border-color:#faf8f473}.v4-closing .v4-btn--ghost:hover{border-color:var(--v4-paper);background:#faf8f41f}.v4-footer{background:var(--v4-ink-deep);color:var(--v4-paper);padding-top:clamp(3rem,6vw,5rem);position:relative;overflow:hidden}.v4-footer__grid{grid-template-columns:minmax(0,4fr) repeat(4,minmax(0,2fr));gap:2rem;padding-bottom:4rem;display:grid}.v4-footer__brand{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.v4-footer__brand p{color:var(--v4-grey-dark);max-width:22em}.v4-footer__col{flex-direction:column;gap:.6rem;display:flex}.v4-footer__col .v4-label{color:var(--v4-grey-dark);margin-bottom:.5rem}.v4-footer__col a{color:#faf8f4db;font-size:.9375rem}.v4-footer__col a:hover{color:var(--v4-paper)}.v4-footer__legal{color:var(--v4-grey-dark);border-top:1px solid #faf8f41f;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.5rem 0;font-size:.8125rem;display:flex}.v4-footer__legal a:hover{color:var(--v4-paper)}.v4-footer__social{align-items:center;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex}.v4-footer__social a{color:var(--v4-grey-dark);transition:color .14s var(--v4-ease);justify-content:center;align-items:center;display:inline-flex}.v4-footer__social a:hover,.v4-footer__social a:focus-visible{color:var(--v4-paper);outline:0}.v4-footer__social svg{display:block}.v4-footer__giant{letter-spacing:-.05em;color:#faf8f40d;-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;text-align:center;font-size:clamp(4rem,17vw,19rem);font-weight:300;line-height:.78;display:block;transform:translateY(22%)}@media (max-width:900px){.v4-footer__grid{grid-template-columns:1fr 1fr}.v4-footer__brand{grid-column:1/-1}}.v4-hero__media.v4-grain:after{opacity:.28}.v4-programme{font-family:var(--v4-font-mono);letter-spacing:.04em;color:#faf8f4cc;border-top:1px solid #faf8f44d;flex-wrap:wrap;justify-content:center;gap:.75rem 2rem;margin:1.5rem 0 0;padding:1.25rem 0 0;font-size:.75rem;list-style:none;display:flex}.v4-plans{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.v4-plan{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-tile);flex-direction:column;gap:1rem;padding:2rem 1.75rem;display:flex}.v4-plan--featured{border-color:var(--v4-ink-deep)}.v4-plan__head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.v4-plan__name{letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:300}.v4-plan__badge{font-family:var(--v4-font-mono);letter-spacing:.04em;color:var(--v4-muted);white-space:nowrap;font-size:.68rem}.v4-plan__price{align-items:baseline;gap:.4rem;margin-top:.5rem;display:flex}.v4-plan__amount{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(2rem,2.8vw,2.6rem);font-weight:300;line-height:1}.v4-plan__unit{color:var(--v4-muted);font-size:.95rem}.v4-plan__tagline{min-height:4.6em;margin-top:.25rem}.v4-plan__features{flex-direction:column;flex:1;margin:.5rem 0 1rem;padding:0;list-style:none;display:flex}.v4-plan__features li{border-top:1px solid var(--v4-hair);font-size:var(--v4-fs-small);padding:.65rem 0}.v4-plan__features li:last-child{border-bottom:1px solid var(--v4-hair)}.v4-compare{border-top:1px solid var(--v4-hair);border-bottom:1px solid var(--v4-hair)}.v4-compare__toggle{cursor:pointer;justify-content:space-between;align-items:center;padding:1.25rem 0;font-size:1rem;font-weight:500;list-style:none;display:flex}.v4-compare__toggle::-webkit-details-marker{display:none}.v4-compare__toggle:after{content:"+";font-size:1.4rem;font-weight:300;line-height:1}.v4-compare[open] .v4-compare__toggle:after{content:"−"}.v4-compare__wrap{padding-bottom:1.5rem;overflow-x:auto}.v4-compare__table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:720px;font-size:.9rem}.v4-compare__table col.is-feature{width:38%}.v4-compare__table th{color:var(--v4-fg);text-align:center;border-bottom:1px solid var(--v4-hair-strong);padding:1rem .75rem;font-size:.95rem;font-weight:500}.v4-compare__table th:first-child{text-align:left;font-family:var(--v4-font-mono);letter-spacing:.04em;color:var(--v4-muted);padding-left:0;font-size:.7rem;font-weight:400}.v4-compare__table td{border-bottom:1px solid var(--v4-hair);vertical-align:middle;text-align:center;font-family:var(--v4-font-mono);letter-spacing:.02em;color:var(--v4-muted);padding:.8rem .75rem;font-size:.78rem}.v4-compare__table td:first-child{text-align:left;font-family:var(--v4-font-sans);letter-spacing:0;color:var(--v4-fg);padding-left:0;font-size:.9rem}.v4-compare__table tbody tr:hover td,.v4-compare__table th.is-highlight,.v4-compare__table td.is-highlight{background:var(--v4-fill)}.v4-compare__table tbody tr:hover td.is-highlight{background:#1a1c1f17}.v4-compare__yes,.v4-compare__no{vertical-align:middle;border-radius:50%;width:11px;height:11px;display:inline-block}.v4-compare__yes{background:var(--v4-fg)}.v4-compare__no{border:1px solid var(--v4-hair-strong)}.v4-compare__legend{font-family:var(--v4-font-mono);letter-spacing:.03em;color:var(--v4-muted);flex-wrap:wrap;gap:.5rem 1.75rem;padding:1rem 0 .25rem;font-size:.72rem;display:flex}.v4-compare__legend span{align-items:center;gap:.5rem;display:inline-flex}@media (max-width:900px){.v4-plans{grid-template-columns:1fr}}.v4-access{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.v4-access__card{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-tile);background:var(--v4-bg-2);flex-direction:column;align-items:flex-start;gap:1.25rem;padding:2rem 1.75rem;display:flex}.v4-access__head{justify-content:space-between;align-items:baseline;gap:1rem;width:100%;display:flex}.v4-access__tag{font-family:var(--v4-font-mono);letter-spacing:.04em;color:var(--v4-fg);border:1px solid var(--v4-hair-strong);border-radius:var(--v4-radius-btn);padding:.3rem .5rem;font-size:.7rem}.v4-access__card .v4-body{flex:1}@media (max-width:900px){.v4-access{grid-template-columns:1fr}}.v4-code{flex-direction:column;gap:.75rem;min-width:0;margin:0;display:flex}.v4-code pre{border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);background:var(--v4-ink-deep);color:var(--v4-paper);font-family:var(--v4-font-mono);tab-size:2;margin:0;padding:1.1rem 1.25rem;font-size:.8rem;line-height:1.6;overflow-x:auto}.v4-codetabs{flex-direction:column;gap:1rem;display:flex}.v4-endpoints{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.v4-endpoints li{border-top:1px solid var(--v4-hair);font-family:var(--v4-font-mono);letter-spacing:.01em;grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:baseline;gap:1rem;padding:.45rem 0;font-size:.82rem;display:grid}.v4-endpoints li:first-child{border-top:0;padding-top:0}.v4-endpoints__verb{color:var(--v4-muted);letter-spacing:.05em;font-size:.72rem}.v4-endpoints__path{color:var(--v4-fg)}.v4-endpoints__note{font-family:var(--v4-font-sans);font-size:var(--v4-fs-small);color:var(--v4-muted);letter-spacing:0}.v4-tool{font-family:var(--v4-font-mono);color:var(--v4-fg);font-size:.9rem}.v4-releases{padding-top:var(--v4-section);padding-bottom:var(--v4-section);flex-direction:column;display:flex}.v4-release{padding:calc(var(--v4-section) * .55) 0;border-top:1px solid var(--v4-hair);grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,5rem);display:grid}.v4-release:first-child{border-top:0;padding-top:0}.v4-release__meta{top:calc(var(--v4-nav-h) + 1.5rem);flex-direction:column;align-self:start;gap:.75rem;display:flex;position:sticky}.v4-release__version{letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:300;line-height:1}.v4-release__entry-head{align-items:flex-start;gap:.9rem;display:flex}.v4-release__icon{width:28px;height:28px;color:var(--v4-fg);flex:none;margin-top:-2px}@media (max-width:900px){.v4-release{grid-template-columns:1fr}.v4-release__meta{position:static}}.v4-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.v4-list li{border-top:1px solid var(--v4-hair);font-size:var(--v4-fs-body);max-width:44em;padding:.7rem 0 .7rem 1.5rem;position:relative}.v4-list li:last-child{border-bottom:1px solid var(--v4-hair)}.v4-list li:before{content:"";background:var(--v4-fg);border-radius:50%;width:6px;height:6px;position:absolute;top:1.25rem;left:.25rem}.v4-showcase-form{flex-direction:column;justify-self:end;gap:.5rem;width:100%;max-width:26rem;display:flex}.v4-showcase-form__row{gap:.5rem;display:flex}.v4-showcase-form__row .v4-input{flex:1}.v4-input--on-dark{color:var(--v4-paper);background:#faf8f414;border-color:#faf8f459}.v4-input--on-dark::placeholder{color:#faf8f480}.v4-input--on-dark:focus{border-color:var(--v4-paper)}.v4-showcase-body{flex-direction:column;gap:clamp(2.5rem,5vw,4rem);display:flex}.v4-showcase-body h2{font-size:var(--v4-fs-h2);letter-spacing:var(--v4-track-h2);margin:0;font-weight:300;line-height:1.06}.v4-showcase-body h3{letter-spacing:-.012em;margin:0;font-size:1.25rem;font-weight:400}.v4-showcase-body p{margin:0}.v4-showcase-empty{border:1px dashed var(--v4-hair-strong);border-radius:var(--v4-radius-tile);color:var(--v4-muted);max-width:40em;padding:2rem}.v4-showcase-error{border:1px solid var(--v4-status-red,#b4361c);border-radius:var(--v4-radius-btn);color:var(--v4-status-red,#b4361c);max-width:44em;padding:1.25rem 1.5rem}.v4-sc-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3.5rem;display:grid}.v4-sc-group{flex-direction:column;min-width:0;display:flex}.v4-sc-group__head{border-bottom:1px solid var(--v4-fg);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.75rem;display:flex}.v4-sc-group__title{letter-spacing:-.012em;margin:0;font-size:1.125rem;font-weight:400}.v4-sc-row{border-bottom:1px solid var(--v4-hair);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.2rem 1.5rem;padding:.85rem 0;display:grid}.v4-sc-row__name{font-size:var(--v4-fs-small);margin:0}.v4-sc-row__desc{color:var(--v4-muted);grid-column:1;margin:0;font-size:.8125rem;line-height:1.45}.v4-sc-row__value{font-family:var(--v4-font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:1/2/span 2;align-self:start;font-size:.9rem}.v4-sc-score{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:2rem 3.5rem;display:grid}.v4-sc-score__hero{top:calc(var(--v4-nav-h) + 1.5rem);flex-direction:column;gap:1.25rem;display:flex;position:sticky}.v4-sc-score__number{letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(4.5rem,9vw,8rem);font-weight:300;line-height:.95}.v4-sc-score__meta{flex-direction:column;gap:.5rem;display:flex}.v4-sc-actions{border-top:1px solid var(--v4-hair);align-items:center;gap:1rem;padding-top:1.25rem;display:flex}.v4-sc-dims{flex-direction:column;display:flex}.v4-sc-dim{border-top:1px solid var(--v4-hair);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem 1.5rem;padding:1rem 0;display:grid}.v4-sc-dim:last-child{border-bottom:1px solid var(--v4-hair)}.v4-sc-dim__name{font-size:var(--v4-fs-small);margin:0}.v4-sc-dim__value{font-family:var(--v4-font-mono);color:var(--v4-muted);white-space:nowrap;font-size:.8125rem}.v4-sc-dim__bar{background:var(--v4-hair);grid-column:1/-1;height:3px;position:relative;overflow:hidden}.v4-sc-dim__fill{background:var(--v4-fg);transition:width .24s var(--v4-ease);position:absolute;inset:0 auto 0 0}.v4-sc-dim__weight{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) 3rem;align-items:center;gap:1rem;display:grid}.v4-sc-dim__weight-label{font-family:var(--v4-font-mono);font-size:var(--v4-fs-label);letter-spacing:.04em;color:var(--v4-muted)}.v4-sc-dim__weight-value{font-family:var(--v4-font-mono);text-align:right;font-variant-numeric:tabular-nums;font-size:.8125rem}.v4-sc-range{appearance:none;background:var(--v4-hair-strong);cursor:pointer;outline:0;width:100%;height:2px;margin:0}.v4-sc-range::-webkit-slider-thumb{appearance:none;background:var(--v4-fg);border:0;border-radius:0;width:14px;height:14px}.v4-sc-range::-moz-range-thumb{background:var(--v4-fg);border:0;border-radius:0;width:14px;height:14px}.v4-sc-range:focus-visible::-webkit-slider-thumb{outline:1px solid var(--v4-fg);outline-offset:3px}@media (max-width:900px){.v4-sc-groups,.v4-sc-score{grid-template-columns:minmax(0,1fr)}.v4-sc-score__hero{position:static}}.v4-doc-md{flex-direction:column;gap:1rem;max-width:40em;display:flex}.v4-doc-md p{font-size:var(--v4-fs-body);margin:0;line-height:1.6}.v4-doc-md h3,.v4-doc-md h4{letter-spacing:-.012em;margin:.75rem 0 0;font-size:1.125rem;font-weight:400}.v4-doc-md h4{font-size:1rem}.v4-doc-md ul{font-size:var(--v4-fs-body);flex-direction:column;gap:.5rem;margin:0;padding-left:1.2rem;line-height:1.55;display:flex}.v4-doc-md blockquote{border-left:1px solid var(--v4-fg);color:var(--v4-muted);font-size:var(--v4-fs-small);margin:0;padding:.25rem 0 .25rem 1rem}.v4-doc-md code{font-family:var(--v4-font-mono);border:1px solid var(--v4-hair);border-radius:var(--v4-radius-btn);padding:.05rem .3rem;font-size:.88em}.v4-doc-md a{text-underline-offset:3px;text-decoration:underline}
.v4-page{padding:var(--app-pad);flex-direction:column;gap:1.25rem;max-width:1360px;display:flex}.v4-page__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.v4-page__eyebrow{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);letter-spacing:.04em;color:var(--app-fg-3);margin:0 0 .3rem}.v4-page__title{letter-spacing:-.015em;margin:0;font-size:20px;font-weight:500;line-height:1.15}.v4-page__sub{font-size:var(--app-fs);color:var(--app-fg-2);max-width:70ch;margin:.3rem 0 0}.v4-page__actions{flex-wrap:wrap;gap:.5rem;display:flex}.v4-page__ident{align-items:center;gap:1rem;min-width:0;display:flex}.v4-page__icon{border:1px solid var(--app-hair-2);border-radius:var(--app-radius);background:var(--app-panel);width:44px;height:44px;color:var(--app-accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.v4-page__icon svg{width:22px;height:22px}.v4-pagetabs{border-bottom:1px solid var(--app-hair);gap:.25rem;display:flex;overflow-x:auto}.v4-pagetab{height:36px;color:var(--app-fg-2);font-size:var(--app-fs);white-space:nowrap;transition:color .12s var(--v4-ease);border-bottom:1px solid #0000;align-items:center;margin-bottom:-1px;padding:0 .75rem;font-weight:500;text-decoration:none;display:inline-flex}.v4-pagetab:hover{color:var(--app-fg)}.v4-pagetab[aria-current=page]{color:var(--app-fg);border-bottom-color:var(--app-accent)}.v4-kpis.v4-kpis--auto{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.v4-kpis{background:var(--app-hair);border:1px solid var(--app-hair);border-radius:var(--app-radius);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.v4-kpi{background:var(--app-panel);flex-direction:column;gap:.35rem;min-width:0;padding:.9rem 1rem;display:flex}.v4-kpi__label{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);letter-spacing:.04em;color:var(--app-fg-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.v4-kpi__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:24px;font-weight:500;line-height:1.05;overflow:hidden}.v4-kpi__value--warn{color:var(--app-amber)}.v4-kpi__skeleton{background:var(--app-panel-3);border-radius:2px;width:3.5rem;height:22px;animation:1.2s ease-in-out infinite v4-app-pulse;display:block}.v4-kpi__hint{font-size:var(--app-fs-sm);color:var(--app-fg-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.v4-kpi__bar{background:var(--app-panel-3);border-radius:2px;height:3px;margin-top:.3rem;overflow:hidden}.v4-kpi__bar-fill{background:var(--app-accent);height:100%;transition:width .4s var(--v4-ease)}.v4-kpi__bar-fill--warn{background:var(--app-amber)}@keyframes v4-app-pulse{50%{opacity:.45}}.v4-grid--main{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:stretch;gap:1rem;display:grid}.v4-grid--main>.v4-panel--tall{grid-area:1/2/span 2}.v4-panel{background:var(--app-panel);border:1px solid var(--app-hair);border-radius:var(--app-radius);flex-direction:column;min-width:0;display:flex}.v4-panel__head{border-bottom:1px solid var(--app-hair);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-height:40px;padding:.35rem 1rem;display:flex}.v4-panel__title{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);letter-spacing:.04em;color:var(--app-fg-2)}.v4-panel__aside{align-items:center;gap:.75rem;display:inline-flex}.v4-panel__note{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-3)}.v4-panel__link{font-size:var(--app-fs-sm);color:var(--app-fg-2);white-space:nowrap;transition:color .12s var(--v4-ease);text-decoration:none}.v4-panel__link:hover{color:var(--app-fg)}.v4-panel__body{flex:1;min-width:0;padding:1rem}.v4-panel__body--flush{flex-direction:column;padding:0;display:flex}.v4-chart{flex-direction:column;gap:.75rem;display:flex}.v4-chart__summary{font-size:var(--app-fs-sm);color:var(--app-fg-2);flex-wrap:wrap;gap:1.5rem;display:flex}.v4-chart__summary strong{color:var(--app-fg);font-variant-numeric:tabular-nums;font-weight:500}.v4-chart__plot{grid-template-columns:auto minmax(0,1fr);gap:.5rem;height:160px;display:grid}.v4-chart__yaxis{font-family:var(--v4-font-mono);color:var(--app-fg-3);flex-direction:column;justify-content:space-between;align-items:flex-end;min-width:2rem;padding:0;font-size:10px;line-height:1;display:flex}.v4-chart__svg{width:100%;height:100%;display:block;overflow:visible}.v4-chart__grid{stroke:var(--app-hair);vector-effect:non-scaling-stroke}.v4-chart__grid--base{stroke:var(--app-hair-2)}.v4-chart__bar{fill:var(--app-accent);opacity:.75;transition:opacity .12s var(--v4-ease)}.v4-chart__bar:hover,.v4-chart__bar--last{opacity:1}.v4-chart__xaxis{font-family:var(--v4-font-mono);color:var(--app-fg-3);justify-content:space-between;padding-left:2.5rem;font-size:10px;display:flex}.v4-chart__empty{text-align:center;font-size:var(--app-fs-sm);color:var(--app-fg-3);margin:0;padding:3rem 0}.v4-chart__skeleton{background:var(--app-panel-2);border-radius:2px;height:200px;animation:1.2s ease-in-out infinite v4-app-pulse}.v4-seg{border:1px solid var(--app-hair-2);border-radius:2px;gap:2px;padding:2px;display:inline-flex}.v4-seg__btn{height:24px;color:var(--app-fg-2);font:inherit;font-size:var(--app-fs-sm);cursor:pointer;transition:background-color .12s var(--v4-ease), color .12s var(--v4-ease);background:0 0;border:0;border-radius:2px;padding:0 .6rem}.v4-seg__btn:hover{color:var(--app-fg)}.v4-seg .v4-seg__btn[aria-selected=true]{background:var(--app-panel-3);color:var(--app-fg)}.v4-apptabs{border-bottom:1px solid var(--app-hair);gap:.15rem;padding:.4rem 1rem 0;display:flex;overflow-x:auto}.v4-apptab{height:30px;color:var(--app-fg-3);font:inherit;font-size:var(--app-fs-sm);white-space:nowrap;cursor:pointer;transition:color .12s var(--v4-ease);background:0 0;border:0;border-bottom:1px solid #0000;align-items:center;gap:.4rem;margin-bottom:-1px;padding:0 .6rem;display:inline-flex}.v4-apptab:hover{color:var(--app-fg)}.v4-apptabs .v4-apptab[aria-selected=true]{color:var(--app-fg);border-bottom-color:var(--app-fg);background:0 0}.v4-apptab svg{width:12px;height:12px}.v4-connect{flex-direction:column;flex:1;min-width:0;display:flex}.v4-connect__row{border-bottom:1px solid var(--app-hair);font-size:var(--app-fs-sm);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.7rem 1rem;display:flex}.v4-connect__rowlabel{color:var(--app-fg-3);white-space:nowrap}.v4-connect__code{font-family:var(--v4-font-mono);font-size:var(--app-fs-sm);color:var(--app-fg);background:var(--app-panel-2);border:1px solid var(--app-hair);text-overflow:ellipsis;white-space:nowrap;border-radius:2px;min-width:0;padding:.1rem .45rem;overflow:hidden}.v4-connect__muted{color:var(--app-fg-2)}.v4-connect__rowlink,.v4-connect__status{margin-left:auto}.v4-connect__rowlink{font-size:var(--app-fs-sm);color:var(--app-fg-2);white-space:nowrap;text-decoration:none}.v4-connect__rowlink:hover{color:var(--app-fg)}.v4-connect__status{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-green);align-items:center;gap:.4rem;display:inline-flex}.v4-connect__status:before{content:"";background:var(--app-green);border-radius:50%;width:6px;height:6px}.v4-snippet{flex-direction:column;flex:1;min-width:0;display:flex}.v4-snippet__head{justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.v4-snippet__path{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-3);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.v4-snippet__copy{border:1px solid var(--app-hair-2);height:24px;color:var(--app-fg-2);font:inherit;font-size:var(--app-fs-xs);cursor:pointer;transition:color .12s var(--v4-ease), background-color .12s var(--v4-ease);background:0 0;border-radius:2px;flex-shrink:0;padding:0 .5rem}.v4-snippet__copy:hover{color:var(--app-fg);background:var(--app-panel-2)}.v4-snippet__pre{font-family:var(--v4-font-mono);color:var(--app-fg);white-space:pre;flex:1;margin:0;padding:0 1rem 1rem;font-size:12px;line-height:1.55;overflow-x:auto}.v4-snippet__hint{border-top:1px solid var(--app-hair);font-size:var(--app-fs-sm);color:var(--app-fg-2);margin:0;padding:.75rem 1rem}.v4-snippet__hint code,.v4-prose code{font-family:var(--v4-font-mono);color:var(--app-fg);font-size:.92em}.v4-grid--split{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:1rem;display:grid}.v4-grid--split-wide{grid-template-columns:minmax(0,2.3fr) minmax(0,1fr)}.v4-toolbar{border-bottom:1px solid var(--app-hair);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.v4-toolbar__spacer{flex:1}.v4-toolbar__count{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-3);white-space:nowrap}.v4-search{border:1px solid var(--app-hair-2);border-radius:var(--app-radius);background:var(--app-panel-2);min-width:220px;height:30px;color:var(--app-fg-3);align-items:center;gap:.45rem;padding:0 .6rem;display:inline-flex}.v4-search:focus-within{border-color:var(--app-fg)}.v4-search input{min-width:0;color:var(--app-fg);font:inherit;font-size:var(--app-fs-sm);background:0 0;border:0;outline:0;flex:1}.v4-search input::placeholder{color:var(--app-fg-3)}.v4-filter{flex-wrap:wrap;gap:.25rem;display:inline-flex}.v4-filter__btn{border:1px solid var(--app-hair-2);height:26px;color:var(--app-fg-2);font:inherit;font-size:var(--app-fs-xs);font-family:var(--v4-font-mono);cursor:pointer;transition:background-color .12s var(--v4-ease), color .12s var(--v4-ease);background:0 0;border-radius:2px;padding:0 .6rem}.v4-filter__btn:hover{color:var(--app-fg)}.v4-filter .v4-filter__btn[aria-pressed=true]{background:var(--app-panel-3);color:var(--app-fg);border-color:var(--app-hair-2)}.v4-pager{border-top:1px solid var(--app-hair);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.v4-pager__btn{border:1px solid var(--app-hair-2);height:26px;color:var(--app-fg-2);font:inherit;font-size:var(--app-fs-xs);cursor:pointer;background:0 0;border-radius:2px;padding:0 .6rem}.v4-pager__btn:hover:not(:disabled){color:var(--app-fg);background:var(--app-panel-2)}.v4-pager__btn:disabled{opacity:.4;cursor:default}.v4-detail{flex-direction:column;display:flex}.v4-detail__section{border-bottom:1px solid var(--app-hair);padding:.85rem 1rem}.v4-detail__section:last-child{border-bottom:0}.v4-detail__label{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);letter-spacing:.04em;color:var(--app-fg-3);margin-bottom:.5rem;display:block}.v4-detail__title{margin:0 0 .25rem;font-size:15px;font-weight:500}.v4-detail__text{font-size:var(--app-fs-sm);color:var(--app-fg-2);margin:0;line-height:1.5}.v4-detail__pre{border:1px solid var(--app-hair);background:var(--app-panel-2);font-family:var(--v4-font-mono);color:var(--app-fg);white-space:pre;border-radius:2px;margin:0;padding:.6rem .75rem;font-size:12px;line-height:1.5;overflow-x:auto}.v4-kv{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.v4-kv li{border-top:1px solid var(--app-hair);font-size:var(--app-fs-sm);grid-template-columns:minmax(120px,.9fr) minmax(0,1.4fr);gap:.25rem 1rem;padding:.5rem 0;display:grid}.v4-kv li:first-child{border-top:0}.v4-kv__k{font-family:var(--v4-font-mono);color:var(--app-fg);word-break:break-word;font-size:12px}.v4-kv__v{color:var(--app-fg-2);min-width:0}.v4-kv__v code{font-family:var(--v4-font-mono);color:var(--app-fg-3);font-size:11px}.v4-empty{text-align:center;padding:2rem 1rem}.v4-empty__title{font-size:var(--app-fs);margin:0 0 .25rem;font-weight:500}.v4-empty__body{max-width:48ch;font-size:var(--app-fs-sm);color:var(--app-fg-2);margin:0 auto;line-height:1.5}.v4-empty__body code{font-family:var(--v4-font-mono);color:var(--app-fg);font-size:.92em}.v4-empty__link{font-size:var(--app-fs-sm);color:var(--app-fg);text-underline-offset:3px;margin-top:.75rem;text-decoration:underline;display:inline-block}.v4-dir{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-3)}.v4-dir[data-dir=higher_is_better]{color:var(--app-green)}.v4-dir[data-dir=lower_is_better]{color:var(--app-amber)}@media (max-width:1000px){.v4-grid--split,.v4-grid--split-wide{grid-template-columns:minmax(0,1fr)}}.v4-app .v4-stack{flex-direction:column;gap:1rem;min-width:0;display:flex}.v4-cell-glyph{align-items:center;gap:.5rem;min-width:0;display:inline-flex}.v4-cell-glyph>span:first-child{width:16px;height:16px;color:var(--app-fg-3);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.v4-cell-glyph>span:first-child svg{width:14px;height:14px}.v4-cell-wrap{white-space:normal;line-height:1.4}.oga-data-table__td:has(>.v4-cell-wrap){white-space:normal}.v4-kv__req{font-family:var(--v4-font-mono);color:var(--app-amber);font-size:10px}.v4-panel__btn{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.v4-cell-mono{font-family:var(--v4-font-mono);font-size:12px}.v4-cell-muted{color:var(--app-fg-3)}.v4-cell-num{font-variant-numeric:tabular-nums}.v4-appchip{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);border:1px solid var(--app-hair-2);color:var(--app-fg-2);white-space:nowrap;border-radius:2px;padding:0 .4rem;line-height:18px;display:inline-block}.v4-table-empty{text-align:center;font-size:var(--app-fs-sm);color:var(--app-fg-3);padding:2rem 1rem}.v4-app .v4-form{flex-direction:column;gap:1rem;display:flex}.v4-app .v4-form__row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.v4-app .v4-form__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.v4-app .v4-field{background:0 0;flex-direction:column;gap:.35rem;min-width:0;display:flex;position:static;inset:auto;overflow:visible}.v4-app .v4-field__label{font-size:var(--app-fs-sm);font-weight:500}.v4-app .v4-field__hint{font-size:var(--app-fs-xs);color:var(--app-fg-3);line-height:1.45}.v4-app .v4-field__hint code{font-family:var(--v4-font-mono);color:var(--app-fg-2)}.v4-app .v4-field__error{font-size:var(--app-fs-xs);color:var(--app-red)}.v4-app .v4-input,.v4-app .v4-select,.v4-app .v4-textarea{width:100%;height:34px;font:inherit;font-size:var(--app-fs);color:var(--app-fg);background:var(--app-panel-2);border:1px solid var(--app-hair-2);border-radius:var(--app-radius);transition:border-color .12s var(--v4-ease);outline:0;padding:0 .7rem}.v4-app .v4-input::placeholder,.v4-app .v4-textarea::placeholder{color:var(--app-fg-3)}.v4-app .v4-input:focus,.v4-app .v4-select:focus,.v4-app .v4-textarea:focus{border-color:var(--app-fg)}.v4-app .v4-input:disabled,.v4-app .v4-select:disabled,.v4-app .v4-textarea:disabled{opacity:.5;cursor:default}.v4-app .v4-input--mono{font-family:var(--v4-font-mono);font-size:var(--app-fs-sm)}.v4-app .v4-input--sm{height:28px;font-size:var(--app-fs-sm)}.v4-app .v4-select{appearance:none;background-image:var(--app-select-icon);background-position:right .6rem center;background-repeat:no-repeat;padding-right:1.8rem}.v4-app .v4-textarea{resize:vertical;height:auto;min-height:96px;padding:.5rem .7rem;line-height:1.5}.v4-check{font-size:var(--app-fs-sm);color:var(--app-fg-2);cursor:pointer;align-items:flex-start;gap:.6rem;display:flex}.v4-check input{appearance:none;border:1px solid var(--app-hair-3);background:var(--app-panel-2);cursor:pointer;border-radius:2px;flex-shrink:0;width:16px;height:16px;margin:2px 0 0}.v4-check input:checked{background-color:var(--app-fg);border-color:var(--app-fg);background-image:var(--app-check-icon);background-position:50%;background-repeat:no-repeat}.v4-check input:focus-visible{outline:1px solid var(--app-fg);outline-offset:2px}.v4-radio-list{border:1px solid var(--app-hair);border-radius:var(--app-radius);background:var(--app-hair);flex-direction:column;gap:1px;display:flex;overflow:hidden}.v4-radio{background:var(--app-panel);cursor:pointer;align-items:flex-start;gap:.6rem;padding:.6rem .8rem;display:flex}.v4-radio:hover{background:var(--app-panel-2)}.v4-radio input{appearance:none;border:1px solid var(--app-hair-3);background:var(--app-panel-2);border-radius:50%;flex-shrink:0;width:14px;height:14px;margin:3px 0 0}.v4-radio input:checked{border:4px solid var(--app-fg);background:var(--app-bg)}.v4-radio__label{font-size:var(--app-fs);font-weight:500}.v4-radio__desc{font-size:var(--app-fs-sm);color:var(--app-fg-2)}.v4-note{border:1px solid var(--app-hair);border-left:2px solid var(--app-fg-3);border-radius:var(--app-radius);background:var(--app-panel);font-size:var(--app-fs-sm);color:var(--app-fg-2);padding:.7rem .9rem;line-height:1.5}.v4-note strong{color:var(--app-fg);font-weight:500}.v4-note code{font-family:var(--v4-font-mono);color:var(--app-fg)}.v4-note[data-tone=success]{border-left-color:var(--app-green)}.v4-note[data-tone=warn]{border-left-color:var(--app-amber)}.v4-note[data-tone=error]{border-left-color:var(--app-red);color:var(--app-red)}.v4-status{font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-2);white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.v4-status:before{content:"";background:var(--app-fg-3);border-radius:50%;flex-shrink:0;width:6px;height:6px}.v4-status[data-tone=ok]:before{background:var(--app-green)}.v4-status[data-tone=warn]:before{background:var(--app-amber)}.v4-status[data-tone=bad]:before{background:var(--app-red)}.v4-secret{border:1px solid var(--app-hair-2);border-radius:var(--app-radius);background:var(--app-panel-2);font-family:var(--v4-font-mono);font-size:var(--app-fs-sm);color:var(--app-fg);word-break:break-all;align-items:center;gap:.6rem;padding:.6rem .8rem;display:flex}.v4-secret__value{flex:1;min-width:0}.v4-iconbtn{border:1px solid var(--app-hair-2);width:26px;height:26px;color:var(--app-fg-2);cursor:pointer;transition:color .12s var(--v4-ease), background-color .12s var(--v4-ease);background:0 0;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.v4-iconbtn:hover{color:var(--app-fg);background:var(--app-panel-3)}.v4-iconbtn svg{width:13px;height:13px}.v4-inline-actions{align-items:center;gap:.35rem;display:inline-flex}.v4-textbtn{font:inherit;font-size:var(--app-fs-sm);color:var(--app-fg-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.v4-textbtn:hover{color:var(--app-fg)}.v4-textbtn--danger{color:var(--app-red)}.v4-link{color:var(--app-fg);text-underline-offset:3px;text-decoration:underline}.v4-desc{font-size:var(--app-fs-sm);color:var(--app-fg-2);max-width:70ch;margin:0;line-height:1.5}.v4-desc code{font-family:var(--v4-font-mono);color:var(--app-fg);font-size:.92em}.v4-switch{border:1px solid var(--app-hair-2);height:22px;font-family:var(--v4-font-mono);font-size:var(--app-fs-xs);color:var(--app-fg-2);cursor:pointer;transition:background-color .12s var(--v4-ease), color .12s var(--v4-ease);background:0 0;border-radius:2px;align-items:center;gap:.4rem;padding:0 .5rem;display:inline-flex}.v4-switch:before{content:"";background:var(--app-fg-3);border-radius:50%;width:6px;height:6px}.v4-switch[aria-checked=true]{background:var(--app-panel-3);color:var(--app-fg)}.v4-switch[aria-checked=true]:before{background:var(--app-green)}@media (max-width:1200px){.v4-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1000px){.v4-grid--main{grid-template-columns:minmax(0,1fr)}.v4-grid--main>.v4-panel--tall{grid-area:auto}}@media (max-width:640px){.v4-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}