:root{--journal-bg:var(--ground);--journal-panel:var(--ground-2);--journal-line:var(--line);--journal-text:var(--ink);--journal-muted:var(--ink-3);--journal-purple:var(--brand);--journal-kicker:var(--brand-2);--journal-flow-gap:clamp(28px, 3.6vh, 40px)}.journal-preview,.journal-page,.article-page{color:var(--journal-text)}.journal-preview{z-index:2;padding:var(--section-space) max(5vw, 2rem);background:0 0;position:relative;overflow:hidden}.journal-preview__inner,.journal-shell{width:min(var(--container,1240px), 100%);margin:0 auto}.journal-page .grain-overlay{opacity:.2;position:fixed;-webkit-mask-image:none;mask-image:none}.journal-logo{align-items:center;display:inline-flex}.journal-logo img{flex:none;width:auto;height:24px}.footer .journal-logo img{height:22px}.journal-page .nav__links a[aria-current=page],.journal-page .nav__menu a[aria-current=page]{color:var(--ink);background:rgb(var(--overlay-ink) / .06)}.journal-preview__header{margin-bottom:var(--intro-space);justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.journal-preview__header .journal-preview__all{flex:none;margin:0 0 .2rem}.journal-preview__actions{align-items:center;display:flex}.journal-preview__nav{display:none}.journal-preview .eyebrow{color:var(--journal-kicker)}.journal-kicker,.article-kicker{color:var(--journal-kicker);font-family:var(--text,"Inter", system-ui, sans-serif);font-weight:600;font-size:var(--type-label,.75rem);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.15rem;line-height:1;display:block}.journal-preview h2{max-width:var(--measure-section-title,18ch);font-size:var(--type-display-section);font-weight:600;line-height:var(--leading-section,1.04);letter-spacing:0;text-wrap:balance;margin:0}.journal-page h1{max-width:14ch;font-size:var(--type-display-section);font-weight:600;line-height:var(--leading-section,1.04);letter-spacing:0;text-wrap:balance;margin:0}.journal-preview__all,.journal-card__link,.article-back{color:var(--journal-text);text-decoration:none}.journal-preview__all{color:color-mix(in srgb, var(--ink) 72%, transparent);transition:color .3s var(--ease);align-items:center;gap:.55rem;margin-top:0;padding:.45rem 0;font-size:.92rem;font-weight:500;display:inline-flex;position:relative}.journal-preview__all:before,.journal-preview__all:after{content:"";height:1px;position:absolute;bottom:0;left:0;right:0}.journal-preview__all:before{background:var(--line-2)}.journal-preview__all:after{background:var(--stroke-brand-strong);transform-origin:0;transition:transform .48s var(--ease-pop);transform:scaleX(0)}.journal-preview__all:is(:hover,:focus-visible){color:var(--ink)}.journal-preview__all:is(:hover,:focus-visible):after{transform:scaleX(1)}.journal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.1rem,2vw,1.7rem);display:grid}.journal-preview .journal-grid{align-items:stretch;gap:clamp(1.25rem,2vw,1.75rem)}.journal-card{min-width:0}.journal-card__link{outline:none;display:block}.journal-preview .journal-card__link{grid-template-rows:auto 1fr;gap:1.15rem;height:100%;display:grid}.journal-preview .journal-card{padding-inline:0}.journal-preview .journal-cover{height:auto;min-height:0;box-shadow:none}.journal-cover{--cover-a:rgb(var(--brand-rgb) / .72);--cover-b:rgb(var(--brand-2-rgb) / .34);--cover-a-x:22%;--cover-a-y:30%;--cover-b-x:84%;--cover-b-y:82%;--cover-pad:clamp(1.5rem, 2.4vw, 2.5rem);aspect-ratio:16/10;min-height:0;padding:var(--cover-pad);border-radius:var(--radius-sm);isolation:isolate;background:var(--journal-panel);transition:none;display:grid;position:relative;overflow:hidden}.journal-card__link:is(:hover,:focus-visible) .journal-cover{filter:none;transform:none}.journal-card__link--static{cursor:default}.journal-card__link--static:is(:hover,:focus-visible) .journal-cover{filter:none;transform:none}.journal-cover:before,.journal-cover:after{content:"";pointer-events:none;position:absolute}@property --cover-zoom{syntax:"<percentage>";inherits:false;initial-value:100%}.cover-itms-90683{--cover-image:url(/v2/blog/covers/itms-90683.webp)}.cover-data-safety{--cover-image:url(/v2/blog/covers/data-safety.webp)}.cover-target-api{--cover-image:url(/v2/blog/covers/target-api-36.webp)}.cover-43{--cover-image:url(/v2/blog/covers/guideline-4-3.webp)}.cover-privacy{--cover-image:url(/v2/blog/covers/privacy-manifest.webp)}.cover-appfollow-alternative{--cover-image:url(/v2/blog/covers/appfollow-alternative.webp)}.cover-ops{--cover-image:url(/v2/blog/covers/store-ops.webp)}.journal-cover.cover-itms-90683,.journal-cover.cover-data-safety,.journal-cover.cover-target-api,.journal-cover.cover-43,.journal-cover.cover-privacy,.journal-cover.cover-appfollow-alternative,.journal-cover.cover-ops,.article-cover.cover-itms-90683,.article-cover.cover-data-safety,.article-cover.cover-target-api,.article-cover.cover-43,.article-cover.cover-privacy,.article-cover.cover-appfollow-alternative,.article-cover.cover-ops{background-color:var(--journal-panel);background-image:linear-gradient(180deg, #080c1405, #080c142e), var(--cover-image);background-position:50%;background-repeat:no-repeat;background-size:100% 100%,cover}.journal-cover:is(.cover-itms-90683,.cover-data-safety,.cover-target-api,.cover-43,.cover-privacy,.cover-appfollow-alternative,.cover-ops){background-size:100% 100%, var(--cover-zoom) var(--cover-zoom);transition:--cover-zoom 1.2s var(--ease-out)}.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-itms-90683,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-data-safety,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-target-api,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-43,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-privacy,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-appfollow-alternative,.journal-card__link:not(.journal-card__link--static):is(:hover,:focus-visible) .journal-cover.cover-ops{--cover-zoom:103%}.journal-cover.cover-itms-90683:before,.journal-cover.cover-data-safety:before,.journal-cover.cover-target-api:before,.journal-cover.cover-43:before,.journal-cover.cover-privacy:before,.journal-cover.cover-appfollow-alternative:before,.journal-cover.cover-ops:before{z-index:0;background:linear-gradient(135deg,#090d1614,#0000 45%,#090d1624)}.journal-cover.cover-itms-90683:after,.journal-cover.cover-data-safety:after,.journal-cover.cover-target-api:after,.journal-cover.cover-43:after,.journal-cover.cover-privacy:after,.journal-cover.cover-appfollow-alternative:after,.journal-cover.cover-ops:after{z-index:0;opacity:.08;mix-blend-mode:soft-light;background:url(/v2/hero-ribbed-texture-slate-v2.png) 50%/cover no-repeat;-webkit-mask-image:none;mask-image:none}.journal-cover:before{z-index:-2;background:radial-gradient(88% 104% at var(--cover-a-x) var(--cover-a-y), var(--cover-a), transparent 68%), radial-gradient(92% 110% at var(--cover-b-x) var(--cover-b-y), var(--cover-b), transparent 72%), linear-gradient(145deg, var(--ground-2) 0%, var(--ground) 78%);inset:0}.journal-cover:after{z-index:-1;opacity:.16;background-image:linear-gradient(rgb(var(--brand-rgb) / .32), #5b2cc914), url(/v2/hero-ribbed-texture-slate-v2.png);background-blend-mode:color, screen;transition:opacity .35s var(--ease);background-position:50%,50% 52%;background-repeat:no-repeat;background-size:100% 100%,cover;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 94%);mask-image:linear-gradient(#000,#0000 94%)}.journal-card__link:is(:hover,:focus-visible) .journal-cover:after{opacity:.12}.journal-card__link--static:is(:hover,:focus-visible) .journal-cover:after{opacity:.18}.journal-cover--purple,.cover-43{--cover-a:rgb(var(--brand-rgb) / .78);--cover-b:rgb(var(--brand-2-rgb) / .38);--cover-a-x:20%;--cover-a-y:30%;--cover-b-x:86%;--cover-b-y:82%}.journal-cover--blue,.cover-privacy{--cover-a:rgb(var(--blue-rgb) / .72);--cover-b:#5c74ee6b;--cover-a-x:22%;--cover-a-y:38%;--cover-b-x:86%;--cover-b-y:82%}.journal-cover--violet,.cover-ops{--cover-a:rgb(var(--brand-rgb) / .76);--cover-b:#6043c77a;--cover-a-x:18%;--cover-a-y:32%;--cover-b-x:88%;--cover-b-y:82%}.journal-cover__eyebrow,.journal-cover__title{z-index:1;left:var(--cover-pad);right:var(--cover-pad);color:#f8f5fc;position:absolute}.journal-cover__eyebrow{top:var(--cover-pad);font:500 .72rem/1.2 var(--mono,ui-monospace, monospace);letter-spacing:.16em;text-transform:uppercase;color:#f8f5fcc7}.journal-cover__title{bottom:var(--cover-pad);font:600 clamp(1.5rem, 2.15vw, 2rem)/1.08 var(--display,sans-serif);letter-spacing:0;padding-bottom:.06em}.journal-card__body{padding:1.4rem 0 0}.journal-preview .journal-card__body{grid-template-rows:auto minmax(2.36em,auto) minmax(1rem,1fr) auto;align-content:stretch;height:100%;padding:0;display:grid}.journal-preview .journal-card__cta{grid-row:4;margin-top:0}.journal-card__meta{width:100%;color:var(--ink-3);font-size:var(--type-meta,.8125rem);transition:color .25s var(--ease);justify-content:space-between;gap:1rem;margin-bottom:.8rem;display:flex}.journal-card__meta-detail{white-space:nowrap;align-items:center;gap:.65rem;display:inline-flex}.journal-card__meta-detail time{color:var(--ink-3)}.journal-card h3{max-width:24ch;font-size:var(--type-card-title,clamp(1.125rem, 1.2vw, 1.375rem));text-wrap:balance;transition:color .25s var(--ease);margin:0;font-weight:600;line-height:1.18}.journal-card__cta{color:var(--ink-2);font-size:var(--type-small);transition:color var(--dur-fast) var(--ease);place-self:end start;align-items:center;gap:.45rem;margin-top:1rem;padding:.35rem 0;font-weight:500;line-height:1;display:inline-flex}.journal-card__cta>span{position:relative}.journal-card__cta>span:after{content:"";background:var(--brand-2);transform-origin:0;height:1px;transition:transform var(--dur-base) var(--ease-out);position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.journal-card__cta .ico{width:14px;height:14px}.journal-card__link:is(:hover,:focus-visible) .journal-card__cta{color:var(--ink)}.journal-card__link:is(:hover,:focus-visible) .journal-card__cta>span:after{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.journal-card__cta>span:after{transition:none}}.journal-card__link:focus-visible{outline:1px solid rgb(var(--brand-2-rgb) / .5);outline-offset:7px;border-radius:var(--radius-sm)}.journal-card__link--static:is(:hover,:focus-visible) .journal-card__body{transform:none}.journal-card__link--static:is(:hover,:focus-visible) .journal-card__meta{color:var(--ink-3)}.journal-card__link--static:is(:hover,:focus-visible) h3{color:inherit}.journal-card p{max-width:38ch;color:var(--journal-muted);font-size:var(--type-body,1rem);line-height:var(--leading-body,1.58);margin:.85rem 0 0}.journal-page,.article-page{background:var(--journal-bg);min-height:100vh;padding:0}.article-page{padding:0}.journal-page .journal-shell{z-index:1;width:min(calc(100% - var(--gutter) * 2), var(--container,1240px));position:relative}.journal-nav{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:center;min-height:92px;display:flex}.journal-brand{color:var(--journal-text);font-size:1.5rem;font-weight:650;text-decoration:none}.journal-nav__links{align-items:center;gap:1.5rem;display:flex}.journal-nav__links a{color:var(--journal-muted);text-decoration:none}.journal-nav__cta{border:1px solid var(--stroke-brand-strong);border-radius:var(--radius-pill);background:#9568ff1f;padding:.75rem 1.15rem;color:var(--journal-text)!important}.journal-hero{padding:clamp(9rem, 18vh, 12rem) 0 var(--journal-flow-gap);grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);align-items:end;gap:clamp(3rem,7vw,7rem);display:grid}.journal-hero p{max-width:34ch;color:var(--journal-muted);font-size:var(--type-body-lg,clamp(1.0625rem, 1.2vw, 1.1875rem));line-height:var(--leading-body,1.58);text-align:right;text-wrap:balance;justify-self:end;margin:0}.journal-controls{z-index:2;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;grid-template-columns:max-content minmax(0,1fr);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;display:grid;position:relative;top:auto}.journal-type{width:max-content;max-width:100%}.journal-view{justify-self:end}.journal-view .tabs__tab .ico{opacity:.8}.journal-published{color:var(--ink-3);gap:.55rem;font-size:.75rem;font-weight:500;display:grid}.journal-date-select{display:block;position:relative}.journal-date-select__toggle{border:1px solid var(--line-2);border-radius:var(--radius-md);width:100%;min-height:42px;color:var(--ink-2);background:var(--ui-bg);cursor:pointer;font:500 .8rem/1.2 var(--text);text-align:left;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);outline:none;justify-content:space-between;align-items:center;gap:16px;padding:8px 14px 8px 12px;display:flex}.journal-date-select__toggle:is(:hover,:focus-visible),.journal-date-select.is-open .journal-date-select__toggle{border-color:var(--stroke-brand-strong);background:rgb(var(--overlay-ink) / .045)}.journal-date-select__toggle i{width:8px;height:8px;color:var(--ink-3);transition:transform var(--dur-mid) var(--ease-out), color var(--dur-fast) var(--ease);border-bottom:1.5px solid;border-right:1.5px solid;flex:none;margin-top:-4px;transform:rotate(45deg)}.journal-date-select.is-open .journal-date-select__toggle i{color:var(--brand-2);transform:translateY(4px)rotate(225deg)}.journal-date-select__options{z-index:6;border:1px solid var(--line-2);border-radius:var(--radius-md);background:var(--ui-bg);box-shadow:0 18px 48px -20px rgb(var(--overlay-shadow) / .95), 0 1px 0 rgb(var(--overlay-ink) / .04) inset;gap:3px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0}.journal-date-select__options[hidden]{display:none}.journal-date-select__options button{width:100%;min-height:34px;color:var(--ink-3);font:500 .8rem/1.2 var(--text);text-align:left;transition:color var(--dur-instant) var(--ease), background var(--dur-instant) var(--ease);border-radius:5px;padding:8px 10px}.journal-date-select__options button:is(:hover,:focus-visible){color:var(--ink);background:rgb(var(--overlay-ink) / .055);outline:none}.journal-date-select__options button[aria-selected=true]{color:var(--ink);background:rgb(var(--brand-rgb) / .16)}.journal-search-tools{justify-content:flex-end;justify-self:end;align-items:center;gap:.65rem;width:auto;min-width:0;max-width:100%;display:flex;position:relative}.journal-filter-menu{flex:none;position:relative}.journal-filter-toggle{border-color:var(--line-2);min-width:94px;min-height:44px;color:var(--ink-2);background:var(--ui-bg);font-size:var(--type-small);gap:8px;padding:0 15px}.journal-filter-toggle:is(:hover,:focus-visible),.journal-filter-toggle.has-filters{color:var(--ink);border-color:rgb(var(--brand-2-rgb) / .34);background:rgb(var(--brand-rgb) / .08)}.journal-filter-count{border-radius:var(--radius-pill);min-width:20px;height:20px;color:var(--ink);background:var(--brand);font-size:var(--type-label);place-items:center;padding:0 6px;line-height:1;display:inline-grid}.journal-filter-count[hidden]{display:none}.journal-filter-panel{z-index:30;border:1px solid var(--line-2);background:var(--ui-bg);width:min(330px,100vw - 32px);box-shadow:0 24px 70px -24px rgb(var(--overlay-shadow) / .9), 0 1px 0 rgb(var(--overlay-ink) / .04) inset;border-radius:10px;padding:18px;position:absolute;top:calc(100% + 10px);right:0}.journal-filter-panel[hidden]{display:none}.journal-filter-panel__head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:16px;display:flex}.journal-filter-panel__head strong{font-size:var(--type-small);color:var(--ink);font-weight:500}.journal-filter-panel__head button{color:var(--ink-3);font:500 var(--type-label)/1 var(--text);transition:color var(--dur-fast) var(--ease);align-items:center;gap:5px;padding:4px;display:inline-flex}.journal-filter-panel__head button:hover{color:var(--brand-2)}.journal-clear-icon{width:13px;height:13px;transition:transform var(--dur-slow) var(--ease-out)}.journal-filter-panel__head button:is(:hover,:focus-visible) .journal-clear-icon{transform:rotate(-45deg)}.journal-topic-checks{border:0;grid-template-columns:1fr 1fr;gap:9px 20px;margin:16px 0 0;padding:0;display:grid}.journal-topic-checks legend{width:100%;color:var(--ink-3);font-size:var(--type-label);margin:0 0 10px;padding:0;font-weight:500}.journal-topic-checks label{min-width:0;color:var(--ink-2);cursor:pointer;font-size:var(--type-label);align-items:center;gap:8px;display:flex}.journal-topic-checks input{appearance:none;border:1px solid var(--line-2);border-radius:var(--radius-xs);background:rgb(var(--overlay-ink) / .025);flex:none;place-items:center;width:17px;height:17px;display:grid}.journal-topic-checks input:before{content:"";width:10px;height:10px;transition:transform var(--dur-instant) var(--ease-out);background:#fff;transform:scale(0);-webkit-mask:url(/v2/icons/check.svg) 50%/contain no-repeat;mask:url(/v2/icons/check.svg) 50%/contain no-repeat}.journal-topic-checks input:checked{border-color:var(--brand-2);background:var(--brand)}.journal-topic-checks input:checked:before{transform:scale(1)}.journal-topic-checks input:focus-visible{outline:2px solid rgb(var(--brand-2-rgb) / .55);outline-offset:2px}.journal-search-wrap{flex:0 0 360px;width:360px;min-width:240px;display:block;position:relative}.journal-search__icon{--i:url(/v2/icons/magnifying-glass.svg);z-index:1;width:17px;height:17px;color:var(--journal-muted);pointer-events:none;transition:color var(--dur-fast) var(--ease);position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.journal-search{border:1px solid var(--line-2);border-radius:var(--radius-pill);width:100%;min-height:44px;color:var(--journal-text);background:var(--ui-bg);font:400 var(--type-control,.9375rem)/1.2 var(--text);transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);outline:none;padding:0 4.75rem 0 2.75rem}.journal-search::-webkit-search-cancel-button{appearance:none}.journal-search::-ms-clear{display:none}.journal-search::placeholder{color:var(--ink-3);opacity:1}.journal-search-wrap:focus-within .journal-search__icon{color:var(--journal-text)}.journal-search__shortcut{color:var(--journal-muted);pointer-events:none;transition:opacity var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);gap:3px;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.journal-search__shortcut kbd{border:1px solid var(--line-2);min-width:22px;height:22px;color:var(--ink-3);background:var(--ui-bg);box-shadow:0 1px 0 rgb(var(--overlay-ink) / .045) inset, 0 1px 2px rgb(var(--overlay-shadow) / .24);font:500 var(--type-label)/1 var(--text);border-radius:5px;place-items:center;padding:0 5px;display:grid}.journal-search-wrap:focus-within .journal-search__shortcut{opacity:0;transform:translateY(-50%)scale(.94)}.journal-search__clear{z-index:2;border-radius:var(--radius-circle);width:28px;height:28px;color:var(--journal-muted);font:300 20px/1 var(--text);opacity:.62;cursor:pointer;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.journal-search__clear:hover{color:var(--journal-text);background:rgb(var(--overlay-ink) / .055);opacity:1}.journal-search__clear:focus-visible{outline:1px solid var(--stroke-brand-strong);outline-offset:2px}.journal-search__clear[hidden]{display:none}.journal-search:focus{border-color:var(--stroke-brand-strong);background:var(--ui-bg-2);box-shadow:none}.journal-index-grid{padding-top:var(--journal-flow-gap);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:3.25rem 1.6rem;display:grid}.journal-index-grid .journal-card,.journal-index-grid .journal-card__link{height:100%}.journal-index-grid .journal-card__link{grid-template-rows:auto 1fr;display:grid}.journal-list-head{display:none}.journal-empty{min-height:clamp(240px,34vh,380px);color:var(--journal-muted);text-align:center;grid-column:1/-1;place-content:center;justify-items:center;gap:.5rem;display:grid}.journal-empty__icon{border:1px solid var(--journal-line);border-radius:var(--radius-circle);background:rgb(var(--overlay-ink) / .04);place-items:center;width:46px;height:46px;margin-bottom:.35rem;display:grid}.journal-empty__icon .ico{background:var(--ink-3);width:20px;height:20px}.journal-empty[hidden]{display:none}.journal-empty strong{color:var(--journal-text);font-size:1.35rem;font-weight:500}.journal-empty span{font-size:.92rem}.journal-load-more-wrap{justify-content:center;margin-top:clamp(2.75rem,5vw,4.5rem);display:flex}.journal-load-more{min-width:154px;min-height:46px}.journal-page .journal-cover{height:auto;min-height:0}.journal-page .journal-cover:after{opacity:.2;-webkit-mask-image:linear-gradient(to bottom, rgb(var(--overlay-shadow) / .88), rgb(var(--overlay-shadow) / .48) 72%, transparent 100%);-webkit-mask-image:linear-gradient(to bottom, rgb(var(--overlay-shadow) / .88), rgb(var(--overlay-shadow) / .48) 72%, transparent 100%);mask-image:linear-gradient(to bottom, rgb(var(--overlay-shadow) / .88), rgb(var(--overlay-shadow) / .48) 72%, transparent 100%)}.js .journal-page.is-entering .journal-hero>p,.js .journal-page.is-entering .journal-controls,.js .journal-page.is-entering .journal-index-grid .journal-card{opacity:0;transform:translateY(14px)}.js .journal-page.is-entering.is-content-ready .journal-hero>p,.js .journal-page.is-entering.is-content-ready .journal-controls,.js .journal-page.is-entering.is-content-ready .journal-index-grid .journal-card{opacity:1;transition:opacity .58s var(--ease-out), transform .58s var(--ease-out);transform:none}.js .journal-page.is-entering.is-content-ready .journal-hero>p{transition-delay:70ms}.js .journal-page.is-entering.is-content-ready .journal-controls{transition-delay:.14s}.js .journal-page.is-entering.is-content-ready .journal-index-grid .journal-card{transition-delay:calc(.19s + var(--card-index,0) * 38ms)}.js .journal-page .journal-hero h1{opacity:0;filter:blur(6px);transform:translateY(28px)}.js .journal-page.is-content-ready .journal-hero h1{animation:heroCopyIn var(--dur-ambient) var(--ease-out) var(--dur-fast) both}.journal-page .journal-card__body{grid-template-rows:auto auto minmax(1rem,1fr) auto;height:100%;padding-top:1rem;display:grid}.journal-page .journal-card h3{min-height:2.36em}.journal-page .journal-card__cta{grid-row:4;margin-top:0}.journal-index-grid.is-list{padding-top:2.25rem;display:block}.journal-index-grid.is-list .journal-list-head{border-bottom:1px solid var(--journal-line);color:var(--ink-3);font:500 .68rem/1.2 var(--text);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:116px minmax(280px,.9fr) minmax(110px,.22fr) 112px 78px 132px;gap:1.25rem;padding:0 1rem .8rem;display:grid}.journal-index-grid.is-list .journal-list-head>:first-child{grid-column:1/3}.journal-index-grid.is-list .journal-card{border-bottom:1px solid var(--journal-line)}.journal-index-grid.is-list .journal-card__link{min-height:110px;transition:background var(--dur-fast) var(--ease);grid-template-rows:auto;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:1.25rem;padding:.9rem 1rem;display:grid}.journal-index-grid.is-list a.journal-card__link:hover{background:rgb(var(--overlay-ink) / .025)}.journal-index-grid.is-list .journal-cover{border-radius:var(--radius-xs);width:116px;height:76px;min-height:0}.journal-index-grid.is-list .journal-card__body{grid-template-rows:auto;grid-template-columns:minmax(280px,.9fr) minmax(110px,.22fr) 112px 78px 132px;align-items:center;gap:1.25rem;height:auto;padding:0;display:grid}.journal-index-grid.is-list .journal-card__meta{display:contents}.journal-index-grid.is-list .journal-card__meta>:first-child{grid-area:1/2}.journal-index-grid.is-list .journal-card__meta-detail{display:contents}.journal-index-grid.is-list .journal-card__meta-detail time{grid-area:1/3}.journal-index-grid.is-list .journal-card__meta-detail>:last-child{grid-area:1/4}.journal-index-grid.is-list .journal-card h3{text-wrap:balance;grid-area:1/1;max-width:36ch;min-height:0;font-size:1.05rem;line-height:1.28}.journal-index-grid.is-list .journal-card__cta{grid-area:1/5;place-self:center start;margin:0;padding-block:0}.journal-footer-lp{margin-top:clamp(6rem,11vh,9rem)}.article-shell{z-index:1;width:min(calc(100% - var(--gutter) * 2), 1060px);margin:0 auto;position:relative}.article-header{text-align:center;padding:clamp(9rem,18vh,12rem) 0 clamp(2.25rem,5vh,3.5rem)}.article-header h1{max-width:20ch;font-size:var(--type-display-article);font-weight:600;line-height:var(--leading-display,1);letter-spacing:0;text-wrap:balance;margin:0 auto}.article-meta{color:var(--journal-muted);font-size:var(--type-small,.875rem);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 18px;margin-top:1.35rem;display:flex}.article-share{border:1px solid var(--line-2);border-radius:var(--radius-pill);min-height:38px;color:var(--ink-2);background:rgb(var(--overlay-ink) / .035);transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);align-items:center;gap:8px;margin-left:6px;padding:8px 13px;display:inline-flex}.article-share:hover{color:var(--ink);border-color:var(--stroke-brand);background:rgb(var(--overlay-ink) / .055)}.article-share .ico{--i:url(/v2/icons/link.svg)}.article-cover{border-radius:var(--radius-sm);background:radial-gradient(88% 104% at var(--cover-a-x) var(--cover-a-y), var(--cover-a), transparent 68%), radial-gradient(92% 110% at var(--cover-b-x) var(--cover-b-y), var(--cover-b), transparent 72%), linear-gradient(145deg, var(--ground-2) 0%, var(--ground) 78%);height:clamp(300px,34vw,460px);min-height:0;margin-bottom:clamp(4rem,8vh,6rem)}.js .article-page.is-entering .article-header>*,.js .article-page.is-entering .article-cover,.js .article-page.is-entering .article-layout{opacity:0;transform:translateY(12px)}.js .article-page.is-entering.is-content-ready .article-header>*,.js .article-page.is-entering.is-content-ready .article-cover,.js .article-page.is-entering.is-content-ready .article-layout{opacity:1;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transform:none}.js .article-page.is-entering.is-content-ready .article-header>:nth-child(2){transition-delay:55ms}.js .article-page.is-entering.is-content-ready .article-header>:nth-child(3){transition-delay:.105s}.js .article-page.is-entering.is-content-ready .article-cover{transition-delay:.145s}.js .article-page.is-entering.is-content-ready .article-layout{transition-delay:.19s}.article-layout{grid-template-columns:210px minmax(0,720px);justify-content:center;gap:clamp(3rem,7vw,7rem);display:grid}.article-toc{color:var(--ink-4);align-self:start;font-size:.88rem;position:sticky;top:8rem}.article-toc a{color:inherit;margin:.75rem 0;text-decoration:none;display:block}.article-body{width:min(100%,650px);color:var(--ink-2);margin-inline:auto;font-size:1.04rem;line-height:1.75}.article-body>p{margin:1.2rem 0}.article-body>.article-lead{color:var(--ink);margin-top:0;font-size:1.2rem;line-height:1.62}.article-body ol,.article-body ul{gap:.7rem;margin:1.5rem 0;padding-left:1.2rem;display:grid}.article-body ol{list-style:decimal}.article-body ul{list-style:outside}.article-body pre{border:1px solid var(--journal-line);border-radius:var(--radius-sm);background:var(--ground-2);max-width:100%;box-shadow:0 1px 0 rgb(var(--overlay-ink) / .035) inset;transition:border-color var(--dur-base), background var(--dur-base);margin:2rem 0;padding:3rem 1.5rem 1.45rem;position:relative;overflow:hidden}.article-body pre code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;display:block}.article-code-copy{border:1px solid rgb(var(--overlay-ink) / .13);border-radius:var(--radius-xs);min-height:24px;color:var(--ink-2);background:rgb(var(--overlay-ink) / .06);font:500 var(--type-label)/1 var(--mono,ui-monospace, monospace);letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:none;transition:transform var(--dur-fast) var(--ease), color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);align-items:center;gap:.34rem;padding:.28rem .42rem;display:inline-flex;position:absolute;top:.72rem;right:.72rem}.article-code-copy .ico{--i:url(/v2/icons/copy.svg);width:13px;height:13px}.article-code-copy:hover{color:var(--ink);border-color:rgb(var(--overlay-ink) / .24);background:rgb(var(--overlay-ink) / .08);transform:translateY(-1px)}.article-body pre:hover{border-color:var(--stroke-brand);background:var(--ground-3)}.article-body pre.is-copied .article-code-copy{color:var(--ink);border-color:rgb(var(--brand-2-rgb) / .45);background:rgb(var(--brand-rgb) / .34)}.article-body h2{color:var(--journal-text);font-size:var(--type-display-feature);font-weight:600;line-height:var(--leading-feature,1.12);letter-spacing:0;margin:3.6rem 0 1rem}.article-body h2:first-child{margin-top:0}.article-body h3{color:var(--journal-text);font-size:var(--type-card-title,1.25rem);margin:2.4rem 0 .75rem;line-height:1.25}.article-body a{color:var(--brand-2);text-decoration:underline;-webkit-text-decoration-color:rgb(var(--brand-2-rgb) / .26);text-decoration-color:rgb(var(--brand-2-rgb) / .26);text-underline-offset:.22em;transition:color var(--dur-fast), text-decoration-color var(--dur-fast)}.article-body a:hover{color:var(--brand);text-decoration-color:currentColor}.article-body code{border:1px solid var(--journal-line);border-radius:var(--radius-xs);background:rgb(var(--overlay-ink) / .045);color:var(--ink);font:.9em/1.45 var(--mono);-webkit-box-decoration-break:clone;box-decoration-break:clone;cursor:text;padding:.16em .42em}.article-body pre code{max-width:100%;color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:0 0;border:0;padding:0;font-size:.84rem;line-height:1.7;display:block}.article-note,.article-checklist,.article-callout{border-left:2px solid var(--stroke-brand-strong);background:rgb(var(--brand-rgb) / .065);margin:2rem 0}.article-callout{padding:1.15rem 1.3rem}.article-callout strong{color:var(--ink);margin-bottom:.35rem;font-weight:500;display:block}.article-callout p{color:var(--ink-2);margin:0}.article-tip{border:1px solid var(--journal-line);border-radius:var(--radius-sm);background:rgb(var(--overlay-ink) / .025);grid-template-columns:34px minmax(0,1fr);align-items:center;gap:.9rem;margin:2rem 0;padding:1rem 1.1rem;display:grid}.article-tip__icon{border-radius:var(--radius-circle);width:34px;height:34px;color:var(--brand-3);background:rgb(var(--brand-rgb) / .16);font:600 .9rem/1 var(--display);place-items:center;display:grid}.article-tip p{color:var(--ink-2);margin:0}.article-tip strong{color:var(--ink);font-weight:600}.article-body ul.article-checklist{gap:0;padding:.35rem 1.3rem;list-style:none}.article-checklist li{border-bottom:1px solid var(--stroke-subtle);margin:0;padding:.9rem 0 .9rem 1.35rem;line-height:1.55;position:relative}.article-checklist li:last-child{border-bottom:0}.article-checklist li:before{content:"";border-radius:var(--radius-circle);background:var(--brand-2);width:5px;height:5px;box-shadow:0 0 0 3px rgb(var(--brand-rgb) / .1);position:absolute;top:1.52rem;left:0}.article-media{width:min(980px, calc(100vw - (2 * var(--gutter))));margin:clamp(2.5rem,6vh,4rem) 50%;transform:translate(-50%)}.article-media img{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);width:100%;height:auto;box-shadow:0 32px 90px -48px rgb(var(--overlay-shadow) / .96);display:block}.article-media figcaption{color:var(--ink-4);font:500 var(--type-label)/1.5 var(--mono);letter-spacing:.02em;margin-top:.8rem}.article-feedback{max-height:var(--feedback-height,120px);border:1px solid var(--journal-line);border-radius:var(--radius-sm);background:rgb(var(--overlay-ink) / .025);opacity:1;transition:opacity var(--dur-slower) var(--ease), translate .5s var(--ease-out), max-height .52s var(--ease-out), margin-top .52s var(--ease-out), padding-block .52s var(--ease-out), border-color var(--dur-slower) var(--ease);justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(3rem,7vh,4.5rem);padding:.85rem 1rem;display:flex;overflow:hidden;translate:0}.article-feedback.is-dismissing{opacity:0;pointer-events:none;border-color:#0000;max-height:0;margin-top:0;padding-block:0;translate:0 8px}.article-feedback[hidden]{display:none}.article-feedback p{color:var(--ink-2);font-size:var(--type-small);margin:0;font-weight:500}.article-feedback__actions{flex:none;gap:.45rem;display:flex}.article-feedback__actions button{border:1px solid var(--journal-line);border-radius:var(--radius-circle);width:36px;height:36px;color:var(--ink-3);background:rgb(var(--overlay-ink) / .025);transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);place-items:center;display:grid}.article-feedback__actions button:hover{color:var(--ink);border-color:var(--stroke-brand)}.article-feedback__actions button.is-selected{color:#fff;border-color:var(--stroke-brand-strong);background:var(--brand)}.article-feedback__actions .ico{width:16px;height:16px}.article-feedback__up{--i:url(/v2/icons/thumbs-up.svg)}.article-feedback__down{--i:url(/v2/icons/thumbs-down.svg)}.copy-toast{right:max(20px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));z-index:90;border:1px solid var(--line-2);border-radius:var(--radius-md);color:var(--ink);background:color-mix(in srgb, var(--ground-2) 96%, transparent);box-shadow:0 16px 42px -24px rgb(var(--overlay-shadow) / .96), 0 1px 0 rgb(var(--overlay-ink) / .055) inset;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;pointer-events:none;transition:opacity var(--dur-fast), translate var(--dur-base) var(--ease-out);align-items:center;gap:.5rem;padding:.62rem .76rem;font-size:.78rem;display:flex;position:fixed;translate:0 8px}.copy-toast__icon{background:var(--brand-3);flex:none;width:15px;height:15px;-webkit-mask:url(/v2/icons/check.svg) 50%/contain no-repeat;mask:url(/v2/icons/check.svg) 50%/contain no-repeat}.copy-toast.is-error .copy-toast__icon{display:none}.copy-toast.is-visible{opacity:1;translate:0}@media (width<=640px){.copy-toast{bottom:12px;right:12px}}.article-page .journal-footer-lp{margin-top:clamp(6rem,12vh,10rem)}@media (width<=900px){.journal-hero,.article-layout{grid-template-columns:1fr}.journal-hero{padding-bottom:var(--journal-flow-gap);gap:1.25rem}.journal-hero p{text-align:left;justify-self:start}.journal-grid,.journal-index-grid{grid-template-columns:1fr}.journal-preview .journal-grid{gap:0}.journal-preview .journal-card{padding:2rem 0}.journal-preview .journal-card:first-child{padding-top:0}.journal-preview .journal-cover{height:auto}.journal-preview__header{flex-direction:column;gap:1.25rem}.journal-preview__header .journal-preview__all{margin-top:0}.journal-controls{border-top:0;grid-template-columns:minmax(0,1fr);padding-top:0}.journal-type{scrollbar-width:none;grid-column:1/-1;width:100%;max-width:100%;display:flex;overflow-x:auto}.journal-type .tabs__tab{white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0;padding-inline:4px;font-size:.7rem}.journal-type::-webkit-scrollbar{display:none}.journal-search-tools{grid-area:2/1;width:100%}.journal-view{display:none}.article-toc{border-bottom:1px solid var(--journal-line);padding-bottom:1.5rem;position:static}}@media (width<=620px){html,body{max-width:100%;overflow-x:clip}.journal-kicker,.article-kicker{margin-bottom:var(--mobile-eyebrow-title-gap,16px)}.journal-hero p{font-size:var(--mobile-section-lede-size,.9375rem);line-height:1.55}.journal-preview{padding:var(--section-space) 1.25rem}.journal-preview__inner{flex-direction:column;display:flex}.journal-preview__header{align-items:stretch;gap:1.75rem;margin-bottom:1.5rem}.journal-preview h2{max-width:14ch;font-size:var(--mobile-section-title-size,clamp(2.35rem, 9.5vw, 2.65rem));line-height:1.02}.journal-preview__actions{justify-content:space-between;gap:1rem;width:100%}.journal-preview__nav{gap:.5rem;display:flex}.journal-preview__nav button{border:1px solid var(--line-2);border-radius:var(--radius-circle);background:var(--ui-bg);width:42px;height:42px;color:var(--ink);box-shadow:0 1px 0 rgb(var(--overlay-ink) / .045) inset;transition:opacity var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);place-items:center;display:grid}.journal-preview__nav button:first-child .ico{rotate:180deg}.journal-preview__nav button:disabled{opacity:.32;cursor:default}.journal-preview__nav button:not(:disabled):is(:hover,:focus-visible){border-color:var(--stroke-brand);background:color-mix(in srgb, var(--brand) 10%, var(--ui-bg))}.journal-preview__nav .ico{width:17px;height:17px}.journal-preview__header .journal-preview__all{align-self:center;width:auto;margin:0}.journal-preview .journal-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;gap:1rem;width:100%;display:flex;overflow-x:auto}.journal-preview .journal-grid::-webkit-scrollbar{display:none}.journal-preview .journal-card{scroll-snap-align:start;flex:0 0 100%;padding:0}.journal-cover{min-height:0}.journal-preview .journal-cover{height:auto}.journal-nav__links a:not(.journal-nav__cta){display:none}.journal-index-grid.is-list{padding-top:1.5rem}.journal-index-grid.is-list .journal-list-head{display:none}.journal-index-grid.is-list .journal-card__link{grid-template-columns:82px minmax(0,1fr);gap:.85rem;min-height:98px;padding:.8rem 0}.journal-index-grid.is-list .journal-cover{width:82px;height:58px}.journal-index-grid.is-list .journal-card__body{grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem}.journal-index-grid.is-list .journal-card__meta{grid-area:2/1;justify-content:flex-start;gap:.65rem;margin:0;font-size:.72rem;display:flex}.journal-index-grid.is-list .journal-card__meta>:first-child{text-align:left;grid-area:auto}.journal-index-grid.is-list .journal-card__meta-detail{gap:.65rem;display:inline-flex}.journal-index-grid.is-list .journal-card__meta-detail time{display:none}.journal-index-grid.is-list .journal-card__meta-detail>:last-child{text-align:left;grid-area:auto}.journal-index-grid.is-list .journal-card h3{grid-area:1/1/auto/-1;font-size:.98rem}.journal-index-grid.is-list .journal-card__cta{grid-area:2/2;font-size:.75rem}.journal-controls{grid-template-columns:1fr;top:auto}.journal-type{width:100%;max-width:100%}.journal-type .tabs__tab{flex:1 1 0;min-width:0;padding-inline:4px;font-size:.7rem}.journal-search-tools{grid-area:2/1;grid-template-columns:minmax(0,1fr) auto;width:100%;display:grid}.journal-search-wrap{grid-column:1;width:100%;min-width:0}.journal-filter-menu{grid-column:2}.journal-filter-toggle{min-width:86px;padding-inline:13px}.journal-filter-panel{right:0}.journal-search{padding-right:2.75rem}.journal-search__shortcut{display:none}.article-header{text-align:left}.article-header h1{margin-left:0;margin-right:0}.article-meta{justify-content:flex-start}.article-share{margin-left:0}.article-cover{aspect-ratio:16/10;height:auto;margin-bottom:clamp(2.5rem,6vh,4rem)}}@media (prefers-reduced-motion:reduce){.tabs__thumb,.journal-date-select__toggle i,.journal-search,.tabs__tab,.journal-topic,.js .journal-page .journal-hero .journal-kicker,.js .journal-page .journal-hero h1,.js .journal-page.is-entering .journal-hero>*,.js .journal-page.is-entering .journal-controls,.js .journal-page.is-entering .journal-index-grid .journal-card,.js .article-page.is-entering .article-header>*,.js .article-page.is-entering .article-cover,.js .article-page.is-entering .article-layout,.article-feedback{transition:none}.js .journal-page .journal-hero .journal-kicker,.js .journal-page .journal-hero h1{opacity:1;filter:none;animation:none;transform:none}}.journal-page:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(62% 76% at 82% 34%, #8679fe29, transparent 72%), linear-gradient(180deg, color-mix(in srgb, var(--ground-2) 16%, transparent), transparent 62%);height:clamp(520px,68vh,860px);position:absolute;inset:0 0 auto}.journal-page,.article-page{isolation:isolate;position:relative;overflow-x:clip}.article-page.journal-page:before,.article-page.journal-page:after{content:none}@media (prefers-reduced-motion:reduce){.journal-page:before{transform:none;animation:none!important}}.journal-load-more-wrap[hidden]{display:none}@media (width<=960px){.journal-preview__all,.tabs__tab{min-height:40px}}
