@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/plex-sans-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/plex-sans-600.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/plex-mono-400.woff2)format("woff2")}@font-face{font-family:Plex Sans fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);size-adjust:101.66%;ascent-override:100.83%;descent-override:27.05%;line-gap-override:0%}@font-face{font-family:Plex Mono fallback;src:local(Consolas),local(Menlo),local(DejaVu Sans Mono);size-adjust:109.13%;ascent-override:93.92%;descent-override:25.2%;line-gap-override:0%}:root{color-scheme:light dark;--bg:#121318;--surface:#1b1b21;--raised:#1f1f25;--high:#29292f;--well:#0d0e13;--line:#3a3b46;--line-strong:#686872;--hairline:#46464f9e;--hairline-soft:#46464f66;--diff-head-bg:#0d0e1373;--icon-ring:#ffffff1f;--bezel:#29292f;--screen:#121318;--shot-dark:block;--shot-light:none;--t1:#f1eff6;--t2:#c7c5d0;--t3:#93929e;--accent:#bac3ff;--accent-hi:#d3d8ff;--on-accent:#0d0e13;--accent-soft:#bac3ff24;--accent-line:#bac3ff57;--accent-wash:#bac3ff0b;--gold:#f4c33f;--removed:#ee9a90;--removed-soft:#ee9a901a;--removed-line:#ee9a90d9;--removed-ring:#ee9a9059;--sans:"IBM Plex Sans", "Plex Sans fallback", "Segoe UI", sans-serif;--mono:"IBM Plex Mono", "Plex Mono fallback", ui-monospace, Consolas, monospace;--r-xs:4px;--r-sm:8px;--r-well:10px;--r-md:12px;--r-lg:16px;--r-pill:999px;--gutter:clamp(16px, 5vw, 64px);--section:clamp(56px, 8vw, 96px);--max:1152px;--shadow-float:0 30px 70px #0405098c;--shadow-phone:inset 0 0 0 1px #ffffff17, 0 0 0 1px #040509b3, 0 24px 60px -10px #040509b3}:root[data-theme=dark]{color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--bg:#fbf8ff;--surface:#f5f2fa;--raised:#efedf4;--high:#e9e7ef;--well:#fff;--line:#c7c5d0;--line-strong:#767680;--hairline:#76768052;--hairline-soft:#76768033;--diff-head-bg:#ffffff8c;--icon-ring:#00000014;--bezel:#c7c5d0;--screen:#fbf8ff;--shot-dark:none;--shot-light:block;--t1:#1b1b21;--t2:#46464f;--t3:#686872;--accent:#4355b9;--accent-hi:#3a4aa8;--on-accent:#fff;--accent-soft:#4355b91f;--accent-line:#4355b957;--accent-wash:#4355b90d;--gold:#8a5a00;--removed:#b3261e;--removed-soft:#b3261e14;--removed-line:#b3261ebf;--removed-ring:#b3261e4d;--shadow-float:0 30px 70px #1b1b2124;--shadow-phone:inset 0 0 0 1px #fff, 0 0 0 1px #1b1b2129, 0 24px 60px -10px #1b1b212e}}:root[data-theme=light]{color-scheme:light;--bg:#fbf8ff;--surface:#f5f2fa;--raised:#efedf4;--high:#e9e7ef;--well:#fff;--line:#c7c5d0;--line-strong:#767680;--hairline:#76768052;--hairline-soft:#76768033;--diff-head-bg:#ffffff8c;--icon-ring:#00000014;--bezel:#c7c5d0;--screen:#fbf8ff;--shot-dark:none;--shot-light:block;--t1:#1b1b21;--t2:#46464f;--t3:#686872;--accent:#4355b9;--accent-hi:#3a4aa8;--on-accent:#fff;--accent-soft:#4355b91f;--accent-line:#4355b957;--accent-wash:#4355b90d;--gold:#8a5a00;--removed:#b3261e;--removed-soft:#b3261e14;--removed-line:#b3261ebf;--removed-ring:#b3261e4d;--shadow-float:0 30px 70px #1b1b2124;--shadow-phone:inset 0 0 0 1px #fff, 0 0 0 1px #1b1b2129, 0 24px 60px -10px #1b1b212e}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg);color:var(--t2);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3{color:var(--t1);letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:600;line-height:1.12}p,ul,ol,dl,dd,figure{margin:0}p,li,figcaption{text-wrap:pretty}ul,ol{padding:0;list-style:none}img{max-width:100%;height:auto;display:block}code{font-family:var(--mono);font-variant-numeric:tabular-nums}::selection{background:var(--accent);color:var(--on-accent)}a{color:var(--accent);text-decoration:none}.prose a,.note a,.faq__a a,.channel p a{text-underline-offset:3px;text-decoration:underline 1px;text-decoration-color:var(--accent-line)}.prose a:hover,.faq__a a:hover,.channel p a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{z-index:100;background:var(--accent);color:var(--on-accent);border-radius:0 0 var(--r-sm) 0;padding:12px 20px;font-weight:600;position:absolute;top:0;left:-9999px}.skip:focus{left:0}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section)}.section--cont{padding-block-start:0}.head{max-width:40rem;margin-bottom:clamp(28px,3.4vw,40px)}.split{grid-template-columns:minmax(0,1fr) minmax(0,auto);align-items:center;gap:clamp(36px,6vw,80px);display:grid}.split--flip{grid-template-columns:minmax(0,auto) minmax(0,1fr)}.split--flip>:first-child{order:2}.split>*{min-width:0}.split--next{margin-top:clamp(48px,6vw,80px)}.h1{letter-spacing:-.025em;margin-bottom:22px;font-size:clamp(38px,4.8vw,58px);line-height:1.04}.h1--page{margin-bottom:16px;font-size:clamp(34px,4.6vw,52px);line-height:1.06}.h2{margin-bottom:18px;font-size:clamp(28px,3.4vw,40px)}.h3{letter-spacing:-.01em;margin-bottom:10px;font-size:19px;line-height:1.25}.lede{color:var(--t2);max-width:22em;margin-bottom:12px;font-size:clamp(17px,1.6vw,19px);line-height:1.55}.body{color:var(--t2);max-width:37em;font-size:16px;line-height:1.65}.body--dim{color:var(--t3)}.small{color:var(--t2);font-size:14px;line-height:1.6}.label{font:400 12px/1.4 var(--mono);letter-spacing:0;text-transform:none;color:var(--t3)}.wordmark{letter-spacing:-.01em;color:var(--t1);font-weight:600}.wordmark b{font-weight:inherit;color:var(--gold)}.nowrap{white-space:nowrap}.i{flex:none;width:16px;height:16px}.actions{flex-wrap:wrap;gap:12px;display:flex}.btn{border-radius:var(--r-pill);min-height:48px;font:600 15px/1.2 var(--sans);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding-inline:22px;transition:background-color .15s,border-color .15s;display:inline-flex}.btn .i{width:17px;height:17px}.btn--trail{padding-inline:23px 19px}.btn--trail .i{opacity:.8;width:15px;height:15px}.btn--primary{background:var(--accent);color:var(--on-accent)}.btn--primary:hover{background:var(--accent-hi)}.btn--ghost{color:var(--t1);border-color:var(--line-strong)}.btn--ghost:hover{border-color:var(--t3);background:var(--raised)}.more{color:var(--accent);text-wrap:balance;padding-block:12px;font-size:15px;font-weight:600;line-height:20px;display:inline-block}.more .i{vertical-align:-3px;margin-left:8px;transition:transform .15s;display:inline-block}.more:hover .i{transform:translate(3px)}.more--ext:hover .i{transform:translate(2px,-2px)}.chip{border-radius:var(--r-pill);background:var(--well);border:1px solid var(--line);min-height:26px;color:var(--t2);white-space:nowrap;align-items:center;gap:6px;padding-inline:10px;font-size:12px;display:inline-flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.card{background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--r-md);padding:clamp(20px,2.4vw,26px)}.grid{gap:16px;display:grid}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.icotile{border-radius:var(--r-md);background:var(--accent-soft);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--accent-line);color:var(--accent);flex:none;place-items:center;display:inline-grid}.icotile .i{width:20px;height:20px}.nav{z-index:20;background:var(--bg);border-bottom:1px solid var(--hairline);position:sticky;top:0}[id]{scroll-margin-top:88px}.nav__in{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.brand{align-items:center;gap:10px;min-height:44px;font-size:19px;display:inline-flex}.brand img{width:30px;height:30px;box-shadow:0 0 0 1px var(--icon-ring);border-radius:8px;flex:none}.brand .wordmark{text-underline-offset:5px;text-decoration:underline 1px #0000;transition:text-decoration-color .15s}.brand:hover .wordmark{text-decoration-color:var(--line-strong)}.nav__links{align-items:center;gap:clamp(16px,2.4vw,32px);display:flex}.nav__links a{min-width:44px;min-height:44px;color:var(--t2);white-space:nowrap;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.nav__links a:hover,.nav__links a[aria-current]{color:var(--t1)}.nav__links a[aria-current]{text-decoration:underline 2px var(--accent);text-underline-offset:11px;text-decoration-skip-ink:none}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.theme{border:1px solid var(--hairline);border-radius:var(--r-pill);background:var(--surface);flex:none;align-items:center;height:36px;padding-inline:1px;display:none}.js .theme--nav{display:inline-flex}.js .nav__links{margin-inline-start:auto}.theme__btn{border-radius:var(--r-pill);width:44px;height:44px;color:var(--t3);font:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-block:-5px;padding:0;transition:color .15s;display:grid;position:relative}.theme__btn:before{content:"";border-radius:var(--r-pill);transition:background-color .15s;position:absolute;inset:7px 4px}.theme__btn .i{position:relative}.theme__btn:hover{color:var(--t1)}.theme__btn[aria-pressed=true]{color:var(--accent)}.theme__btn[aria-pressed=true]:before{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.theme__btn:focus-visible{outline:none}.theme__btn:focus-visible:before{outline:2px solid var(--accent);outline-offset:2px}.hero{border-bottom:1px solid var(--hairline-soft);padding-block:clamp(36px,4.6vw,60px) clamp(40px,4.6vw,56px)}.hero__head{grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);grid-template-areas:"h1 aside""act aside";column-gap:clamp(40px,5vw,64px);display:grid}.hero .h1{grid-area:h1;margin-bottom:30px}.hero__aside{grid-area:aside;align-self:end}.hero .actions{grid-area:act}.hero__aside .lede{color:var(--t1)}.hero__aside .body{max-width:none}.hero .diff{margin-top:clamp(36px,3.8vw,48px)}.query{font:400 13px/1.85 var(--mono);color:var(--t1);flex-wrap:wrap;column-gap:1ch;margin-top:26px;display:flex}.query>div{white-space:nowrap;display:flex}.query>div:first-child:before{content:"?";content:"?" / "";color:var(--accent)}.query>div+div:before{content:"&";content:"&" / "";color:var(--line-strong);margin-inline-end:.5ch}.query dt{color:var(--t3)}.query dd:before{content:"=";content:"=" / "";color:var(--line-strong)}.diff{--diff-fs:clamp(14px, 1.42vw, 18px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-float);overflow:hidden}.diff__head{border-bottom:1px solid var(--hairline-soft);background:var(--diff-head-bg);justify-content:space-between;align-items:center;gap:12px;padding:13px 22px;display:flex}.diff__host{font-family:var(--mono);color:var(--t3);font-size:12px}.diff__body{padding:22px 22px 6px}.diff__row dt{margin-bottom:8px}.diff__url{border-radius:var(--r-well);background:var(--well);border:1px solid var(--hairline-soft);font-size:var(--diff-fs);color:var(--t2);overflow-wrap:anywhere;padding:14px 16px;line-height:1.75;display:block}.diff__row--after .diff__url{color:var(--t1);border-color:var(--accent-line);background:var(--accent-wash)}.tok{border-radius:var(--r-xs);margin-inline:-1px;padding:1px 4px}.tok--kept{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.tok--removed{color:var(--removed);background:var(--removed-soft);text-decoration:line-through 1.5px var(--removed-line)}.tok--conv{color:var(--t1);box-shadow:inset 0 0 0 1px var(--line-strong)}.diff__step{color:var(--t3);font-family:var(--mono);align-items:center;gap:12px;margin:14px 0;font-size:12px;display:flex}.diff__step:after{content:"";background:var(--hairline-soft);flex:1;height:1px}.diff__node{border:1px solid var(--accent-line);width:28px;height:28px;color:var(--accent);background:var(--well);border-radius:9px;flex:none;place-items:center;display:grid}.diff__node .i{width:15px;height:15px}.diff__legend{border-top:1px solid var(--hairline-soft);grid-template-columns:22px auto minmax(0,1fr);gap:10px 12px;margin-top:18px;padding:16px 22px 20px;display:grid}.diff__legend li{grid-column:1/-1;grid-template-columns:subgrid;align-items:center;font-size:13.5px;display:grid}.diff__legend code{color:var(--t1);font-size:13px}.key{border-radius:6px;flex:none;place-items:center;width:22px;height:22px;display:grid}.key .i{width:12px;height:12px}.key--removed{background:var(--removed-soft);color:var(--removed);box-shadow:inset 0 0 0 1px var(--removed-ring)}.key--kept{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.diff--wide{box-shadow:none;grid-template-columns:minmax(0,1fr) minmax(0,300px);display:grid}.diff--wide .diff__head{grid-column:1/-1}.diff--wide .diff__body{padding:26px 30px 28px}.diff--wide .diff__legend{border-top:0;border-inline-start:1px solid var(--hairline-soft);grid-template-columns:22px minmax(0,1fr);align-content:center;gap:16px 12px;margin-top:0;padding:26px 30px}.diff--wide .diff__legend li{row-gap:4px;font-size:14px}.diff--wide .diff__legend li>span:last-child{color:var(--t2);grid-column:2}.minidiff{border-radius:var(--r-well);background:var(--well);border:1px solid var(--hairline-soft);font-family:var(--mono);overflow-wrap:anywhere;margin-top:18px;padding:12px 14px;font-size:12.5px;line-height:1.7}.minidiff>span{display:block}.minidiff .was{color:var(--t3)}.minidiff .now{color:var(--t1)}.minidiff .now:before{content:"→ " / "";color:var(--t3)}.minidiff .tok{padding:0 3px}.minidiff del.tok{display:inline-block}.minidiff .flag{color:var(--t1);text-decoration:underline dotted 1.5px var(--t3);text-underline-offset:3px}.minidiff .held{color:var(--t2)}.minidiff .held:before{content:"! " / "";color:var(--t3)}.phone{width:var(--phone-w,262px);background:var(--bezel);box-shadow:var(--shadow-phone);border-radius:38px 38px 0 0;flex:none;padding:8px 8px 0}.phone__screen{aspect-ratio:540/1200;background:var(--screen);border-radius:30px 30px 0 0;overflow:hidden}.phone__screen img{width:100%}.phone__img--dark{display:var(--shot-dark)}.phone__img--light{display:var(--shot-light)}.stage{border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(180deg, var(--raised), var(--surface) 72%);justify-content:center;align-items:flex-end;gap:clamp(14px,2vw,24px);padding:clamp(28px,3.6vw,44px) clamp(20px,3vw,40px) 0;display:flex;position:relative;overflow:hidden}.shot{width:100%}.shot--fit{justify-self:center;width:max-content;max-width:100%}.shot--fit>.cap{contain:inline-size}.cap{font:400 12px/1.55 var(--mono);color:var(--t3);align-items:baseline;gap:8px;margin-top:14px;display:flex}.cap:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-1px)}.cap code{color:var(--t2)}.stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stages>.shot{flex-direction:column;display:flex}.stages .stage{flex:1;padding-inline:clamp(16px,2vw,24px)}.shot--pair{--phone-w:clamp(168px, 17vw, 214px)}.shot--main,.shot--feature{--phone-w:clamp(240px, 21vw, 262px)}.crop--main .phone__screen{aspect-ratio:540/678}.crop--reader .phone__screen{aspect-ratio:540/768}.crop--share .phone__screen{aspect-ratio:540/690}.crop--guard .phone__screen{aspect-ratio:540/906}.crop--testlab .phone__screen{aspect-ratio:540/924}.crop--teach .phone__screen{aspect-ratio:540/1090}.note{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--hairline-soft);align-items:flex-start;gap:12px;max-width:37em;margin-top:24px;padding:16px 18px;display:flex}.note>.i{width:18px;height:18px;color:var(--accent);margin-top:2px}.note p{color:var(--t2);font-size:14.5px;line-height:1.6}.note p+p{margin-top:8px}.h-anchor{font:400 .8em/1 var(--mono);color:var(--accent);opacity:0;margin-inline-start:.35em;transition:opacity .15s}h2:hover>.h-anchor{opacity:1}@media (hover:none){.h2>.h-anchor{display:none}}.split--rows{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}.split--rows .head{margin-bottom:0}.rows{border-top:1px solid var(--hairline)}.rows>li{border-bottom:1px solid var(--hairline-soft);padding-block:22px 24px}.steps{counter-reset:step}.steps>li{counter-increment:step;grid-template-columns:48px minmax(0,1fr);column-gap:8px;display:grid}.steps>li:before{content:counter(step, decimal-leading-zero);content:counter(step, decimal-leading-zero) / "";font:400 13px/24px var(--mono);color:var(--accent);grid-row:span 2}.steps .h3{margin-bottom:6px}.steps strong{color:var(--t1);font-weight:600}.section-foot{margin-top:20px}.choices{margin-top:clamp(28px,3.6vw,40px)}.choice{grid-template-columns:40px minmax(0,1fr);align-content:start;gap:0 18px;display:grid}.choice .icotile{grid-row:span 3}.choice .h3{margin:9px 0 8px;font-size:17px}.choice .minidiff{margin-top:14px}.ledger{--ledger-gap:clamp(40px, 5.2vw, 64px);column-gap:var(--ledger-gap);border-block:1px solid var(--hairline);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ledger>li{padding-block:22px 24px;position:relative}.ledger>li+li:before{content:"";border-inline-start:1px solid var(--hairline-soft);position:absolute;inset-block:0;inset-inline-start:calc(var(--ledger-gap) / -2)}.ledger__t{letter-spacing:-.01em;margin-bottom:8px;font-size:16.5px;line-height:1.35}.appicon{aspect-ratio:1;width:clamp(96px,11vw,132px);box-shadow:0 0 0 1px var(--icon-ring);border-radius:26%;overflow:hidden}.appicon img{width:100%;height:100%}.get{border-top:1px solid var(--hairline);padding-top:clamp(24px,3vw,32px)}.get__head{flex-wrap:wrap;align-items:center;gap:20px 28px;display:flex}.get__title{flex:20rem;align-self:last baseline;min-width:0}.get .h2{margin-bottom:8px;font-size:clamp(26px,2.8vw,32px)}.get__more{align-self:last baseline;margin-inline-start:auto}.get__more .more{font-size:14px}.get .appicon{width:72px}.dest{border-top:1px solid var(--hairline-soft);margin-top:clamp(24px,3vw,32px)}.dest>li{align-items:center;gap:clamp(20px,2.6vw,32px);padding-block:16px;display:flex}.dest>li+li{border-top:1px solid var(--hairline-soft)}.dest>li:last-child{padding-bottom:0}.dest__url{min-width:0;color:var(--t3);overflow-wrap:anywhere;font-size:13.5px;line-height:1.7}.dest__host{color:var(--t1)}.dest .btn{flex:none;min-width:168px}.page-head{border-bottom:1px solid var(--hairline-soft);padding-block:clamp(48px,7vw,88px) clamp(36px,4.5vw,56px)}.page-head--open{border-bottom:0;padding-bottom:0}.page-head__in{align-items:center;gap:clamp(20px,3vw,32px);display:flex}.page-head .appicon{flex:none;width:clamp(64px,7vw,88px)}.page-head .lede{max-width:30em;margin:0}.channels{padding-block:clamp(36px,4.5vw,56px) 0}.channel-list{border-top:1px solid var(--hairline)}.channel{border-bottom:1px solid var(--hairline-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 40px;padding-block:24px;display:grid}.channel__text{gap:8px;max-width:46rem;display:grid}.channel h2{letter-spacing:-.015em;font-size:21px}.channel p{color:var(--t2);font-size:14.5px;line-height:1.6}.channel .dest__url{margin-top:2px}.channel .btn{min-width:200px}.article{padding-block:clamp(48px, 6vw, 80px) var(--section);grid-template-columns:minmax(0,68ch) minmax(0,280px);justify-content:space-between;align-items:start;gap:clamp(40px,6vw,88px);display:grid}.prose{color:var(--t2);font-size:17px;line-height:1.7}.prose>*+*{margin-top:1em}.prose h2{margin-top:56px;font-size:clamp(22px,2.4vw,28px);line-height:1.2;position:relative}.prose>h2:first-child{margin-top:0}.prose h2+*{margin-top:18px}.prose strong{color:var(--t1);font-weight:600}.prose .steps{margin-block:22px}.prose .rows>li{padding-block:16px;font-size:16px}.prose .steps>li:before{line-height:27px}.prose .note{max-width:none;margin-top:22px}.prose .h-anchor{text-decoration:none}@media (width>=901px){.prose .h-anchor{inset-inline-start:-1.1em;margin:0;position:absolute;top:.2em}}@media (width<=900px){.prose .h-anchor{opacity:1;color:var(--t3)}}@media (hover:none){.prose .h-anchor{opacity:1}}.aside{padding:22px;position:sticky;top:88px}.aside h2{letter-spacing:-.01em;margin-bottom:10px;font-size:17px}.aside p{font-size:14.5px;line-height:1.6}.aside ul{border-top:1px solid var(--hairline-soft);margin-top:14px;padding-top:6px}.aside .more{font-size:14px}.prose>.shot,.prose>.diff{margin-block:32px}.prose .shot--fit{justify-self:stretch;width:auto}.prose .shot--fit>.cap{text-align:center;justify-content:center}.prose .shot--fit>.cap>span{text-align:start}.prose>.minidiff{margin-block:24px 32px;padding:14px 16px;font-size:13.5px}.prose>p code{border-radius:var(--r-xs);background:var(--well);border:1px solid var(--hairline-soft);color:var(--t1);overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:1px 5px;font-size:.86em}.prose>.note>div{min-width:0}.prose>.actions{margin-top:32px}.prose .btn,.prose .more,.note .more{text-decoration:none}.note .more{margin-block:-12px;font-size:14.5px}.kbd-path{background:var(--well);border:1px solid var(--hairline);font-family:var(--mono);color:var(--t1);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px;padding:1px 7px;font-size:13.5px}.diff--guide{box-shadow:none}.diff__chips{flex-wrap:wrap;gap:8px;padding:18px 22px 0;display:flex}.diff__chips .chip{gap:8px;min-height:30px;padding-inline:4px 12px}.diff__chips code{color:var(--t1);font-size:12.5px}.chip .key{border-radius:5px;width:20px;height:20px}.chip .key .i{width:11px;height:11px}.diff__chips+.diff__body{padding-top:16px}.diff__foot{border-top:1px solid var(--hairline-soft);color:var(--t2);align-items:flex-start;gap:12px;margin-top:18px;padding:16px 22px 20px;font-size:14.5px;line-height:1.6;display:flex}.toc{margin-top:2px}.toc a{min-height:44px;color:var(--t2);align-items:center;padding-block:10px;font-size:14.5px;line-height:1.4;text-decoration:none;display:flex}.toc a:hover{color:var(--t1)}.faq{border-top:1px solid var(--hairline)}.faq>details{border-bottom:1px solid var(--hairline-soft)}.faq summary{cursor:pointer;letter-spacing:-.005em;min-height:56px;color:var(--t1);align-items:center;padding:18px 44px 18px 0;font-size:16.5px;font-weight:600;line-height:1.4;list-style:none;display:flex;position:relative}.faq summary::-webkit-details-marker{display:none}.faq__q{font:inherit;letter-spacing:inherit;color:inherit;text-wrap:inherit;margin:0}.faq summary:before,.faq summary:after{content:"";background:var(--accent);border-radius:1px;width:14px;height:1.5px;margin-top:-.75px;transition:transform .2s;position:absolute;top:50%;right:4px}.faq summary:after{transform:rotate(90deg)}.faq details[open]>summary:before{transform:rotate(45deg)}.faq details[open]>summary:after{transform:rotate(135deg)}.faq__a{max-width:62ch;color:var(--t2);padding:0 0 20px;font-size:15.5px;line-height:1.65}.faq__a strong{color:var(--t1);font-weight:600}.faq__a[id]{scroll-margin-top:150px}.page-ledger{padding-top:clamp(36px,4.5vw,56px)}.prose>.datatable{border-block:1px solid var(--hairline);margin-block:28px}.datatable table{border-collapse:collapse;width:100%;font-size:14.5px;line-height:1.55}.datatable th,.datatable td{text-align:left;vertical-align:top;padding:14px 18px}.datatable th:first-child,.datatable td:first-child{padding-inline-start:0}.datatable th:last-child,.datatable td:last-child{padding-inline-end:0}.datatable thead th{color:var(--t2);border-bottom:1px solid var(--hairline-soft);padding-block:12px;font-size:13px;font-weight:600;line-height:1.4}.datatable tbody tr+tr>*{border-top:1px solid var(--hairline-soft)}.datatable tbody th{width:26%;color:var(--t1);font-weight:600}.datatable td{color:var(--t2)}.datatable td,.datatable th,.datatable code{overflow-wrap:anywhere}.datatable__note{color:var(--t3);margin-top:2px;font-size:12.5px;font-weight:400;line-height:1.5;display:block}.lost{padding-block:clamp(36px, 4.5vw, 56px) var(--section)}.lost .actions{margin-top:28px}.linkcard{letter-spacing:-.01em;min-height:76px;color:var(--t1);justify-content:space-between;align-items:center;gap:16px;font-size:17px;font-weight:600;transition:border-color .15s,background-color .15s;display:flex}.linkcard__t{gap:2px;display:grid}.linkcard__path{letter-spacing:0;color:var(--t3);font-size:12.5px;font-weight:400}.linkcard .i{width:18px;height:18px;color:var(--accent);transition:transform .15s}.linkcard:hover{border-color:var(--line-strong);background:var(--raised)}.linkcard:hover .i{transform:translate(3px)}.foot{border-top:1px solid var(--hairline);padding-block:36px 40px}.foot__top{flex-wrap:wrap;align-items:center;gap:4px 18px;display:flex}.foot__tag{color:var(--t3);font-size:14px}.foot__top .theme{margin-inline-start:auto}.foot__nav{border-block:1px solid var(--hairline-soft);flex-wrap:wrap;justify-content:space-between;column-gap:28px;margin-top:18px;padding-block:6px;display:flex}.foot__nav ul{flex-wrap:wrap;gap:0 28px;display:flex}.foot__nav a{min-width:44px;color:var(--t2);padding-block:12px;font-size:14px;line-height:20px;display:inline-block}.foot__nav a:hover{color:var(--t1)}.foot__nav a .i{vertical-align:-1px;width:12px;height:12px;color:var(--t3);margin-left:4px}.foot__fine{color:var(--t3);grid-template-columns:minmax(0,46em) auto;justify-content:space-between;align-items:end;gap:12px 40px;margin-top:22px;font-size:12.5px;line-height:1.7;display:grid}.foot__made{flex-wrap:wrap;display:flex}.foot__made>span{white-space:nowrap}.foot__made>span:not(:last-child):after{content:" ·";content:" ·" / "";margin-inline-end:8px}.foot__fine a{color:var(--t2);text-decoration:underline 1px var(--line-strong);text-underline-offset:3px;margin-block:-14px;padding-block:14px;display:inline-block}.foot__fine a:hover{color:var(--t1);text-decoration-color:currentColor}@media (width<=960px){.hero__head{display:block}.hero .h1{margin-bottom:18px}.hero .actions{margin-top:26px}.diff--wide{grid-template-columns:minmax(0,1fr)}.diff--wide .diff__legend{border-inline-start:0;border-top:1px solid var(--hairline-soft)}}@media (width<=900px){.split,.split--flip{grid-template-columns:minmax(0,1fr)}.split--flip>:first-child{order:0}.split .shot--fit{justify-self:center}.grid--3,.grid--2{grid-template-columns:minmax(0,1fr)}.split--rows{grid-template-columns:minmax(0,1fr);gap:28px}.ledger{grid-template-columns:minmax(0,1fr)}.ledger>li{padding-block:20px}.ledger>li+li{border-top:1px solid var(--hairline-soft)}.ledger>li+li:before{content:none}.foot__fine,.article{grid-template-columns:minmax(0,1fr)}.aside{position:static}.aside:has(.toc)>h2,.aside .toc{display:none}.aside .toc+ul{border-top:0;margin-top:0;padding-top:0}.aside:has(.toc):not(:has(ul)){display:none}}@media (width<=700px){.js .nav__links .opt{display:none}}@media (width>=561px) and (width<=780px){.foot__nav .foot__site{grid-template-columns:repeat(4,auto);justify-content:start;column-gap:28px;display:grid}}@media (width<=560px){.nav__links .opt{display:none}.nav__links{gap:18px}.js .theme--nav{display:none}.js .theme--foot{display:inline-flex}.hero .actions{margin-top:22px}.hero .actions .btn{flex:100%}.prose>.actions .btn{white-space:normal;text-align:center;text-wrap:balance;flex:100%}.diff{--diff-fs:13px}.diff__head,.diff__legend,.diff__chips,.diff__foot{padding-inline:16px}.diff__body{padding:18px 16px 4px}.diff__url{padding:12px}.diff__legend{grid-template-columns:minmax(0,1fr)}.diff__legend li{grid-template-columns:22px minmax(0,1fr);gap:2px 12px}.diff__legend li span:last-child{grid-column:2}.diff--wide .diff__body,.diff--wide .diff__legend{padding:18px 16px 20px}.query{margin-top:22px;font-size:12.5px}.stage{padding:24px 16px 0}.shot--main,.shot--feature,.shot--pair{--phone-w:216px}.stages{grid-template-columns:minmax(0,1fr);gap:28px}.section{padding-block:48px}.section--cont{padding-block-start:0}.head{margin-bottom:28px}.choice{grid-template-columns:40px minmax(0,1fr);gap:0 14px}.choice .icotile{grid-row:auto}.choice .h3{align-self:center;margin:0}.choice>:not(.icotile):not(h3){grid-column:1/-1;margin-top:12px}.choice .minidiff{margin-top:14px}.steps>li{grid-template-columns:40px minmax(0,1fr);column-gap:4px}.get .appicon{width:56px}.get__head{flex-direction:column;align-items:flex-start;gap:18px}.get__title{flex:none;align-self:auto}.get__more{margin-inline-start:0;align-self:flex-start;margin-top:-8px}.dest>li{flex-direction:column;align-items:stretch;gap:10px}.dest .btn{width:100%}.page-head__in{flex-direction:column;align-items:flex-start;gap:18px}.page-head .appicon{width:64px}.prose{font-size:16.5px}.foot__top{gap:6px 14px}.foot__tag{flex-basis:100%;order:2}.foot__top .theme{order:1}.foot__nav{display:block}.foot__nav ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.foot__off{border-top:1px solid var(--hairline-soft);margin-top:6px;padding-top:6px}.foot__nav a{font-size:13.5px}.faq summary{padding:16px 40px 16px 0;font-size:16px}.faq__a{padding:0 0 16px;font-size:15px}.datatable table,.datatable tbody,.datatable tr,.datatable th,.datatable td{display:block}.datatable thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.datatable tbody tr{padding:16px 0}.datatable tbody tr+tr{border-top:1px solid var(--hairline-soft)}.datatable tbody tr+tr>*{border-top:0}.datatable tbody th,.datatable td{width:auto;padding:0}.datatable td{margin-top:10px}.datatable td:before{content:attr(data-label);content:attr(data-label) / "";color:var(--t3);margin-bottom:2px;font-size:12.5px;font-weight:600;line-height:1.5;display:block}.channel{grid-template-columns:minmax(0,1fr)}.channel .btn{width:100%}.lost .grid{gap:10px}.linkcard{min-height:64px}.lost .actions .btn{flex:100%}}@media (width<=420px){.brand{font-size:17px}.nav__links{gap:10px}}@media (width<=380px){.diff{--diff-fs:12.5px}.minidiff{padding-inline:12px;font-size:11.5px}.prose>.minidiff{padding-inline:12px;font-size:12.5px}.card{padding:16px}}@media (width<=374px){.nav .brand .wordmark{display:none}.nav__links{gap:14px}}@media (forced-colors:active){.tok--kept,.tok--conv,.icotile,.key{outline-offset:-1px;outline:1px solid canvastext}.tok--conv{outline-style:dashed}.faq summary:before,.faq summary:after{forced-color-adjust:none;background:canvastext}.diff__node{border-color:canvastext}.theme__btn[aria-pressed=true]{forced-color-adjust:none;color:highlighttext}.theme__btn[aria-pressed=true]:before{forced-color-adjust:none;background:highlight}.theme__btn:focus-visible:before{outline-offset:2px;outline:2px solid canvastext}}
