.pub-brand{display:inline-flex;align-items:center;min-height:var(--sn-tap);border-radius:var(--sn-radius-sm);-webkit-tap-highlight-color:transparent}.sv2 .sv2-main.pub-land{max-width:560px}@media (min-width:1024px){.sv2 .sv2-main.pub-land{max-width:640px}}.sv2 .pub-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--sn-space-5) 0 var(--sn-space-6)}.sv2 .pub-mark{width:88px;height:80px;margin:0 0 var(--sn-space-5);color:var(--sn-primary)}.sv2 .pub-mark path{fill:currentColor}.sv2 .pub-hero__title{margin:0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-36);line-height:var(--sn-lh-tight);letter-spacing:var(--sn-track-display);color:var(--sn-text);text-wrap:balance}@media (min-width:600px){.sv2 .pub-hero__title{font-size:var(--sn-fs-48)}}.sv2 .pub-hero__lede{margin:var(--sn-space-3) 0 0;max-width:34ch;font-size:var(--sn-fs-18);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-hero__actions{display:flex;flex-direction:column;gap:var(--sn-space-2);width:100%;max-width:360px;margin-top:var(--sn-space-5)}.sv2 .pub-hero__note{margin:var(--sn-space-3) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-snug);color:var(--sn-text-muted)}@media (prefers-reduced-motion:no-preference){.sv2 .pub-mark path{opacity:0;transform-box:view-box;transform-origin:1024px 930px;animation:pub-petal var(--sn-dur-3) var(--sn-ease) forwards}.sv2 .pub-mark path:nth-child(2){animation-delay:90ms}.sv2 .pub-mark path:nth-child(3){animation-delay:.18s}.sv2 .pub-mark path:nth-child(4){animation-delay:.27s}.sv2 .pub-rise{animation:pub-rise var(--sn-dur-3) var(--sn-ease) .32s both}.sv2 .pub-rise--2{animation-delay:.42s}.sv2 .pub-rise--3{animation-delay:.52s}.sv2 .pub-app[data-reveal=on] .pub-reveal:not(.is-in){opacity:0;transform:translateY(8px)}.sv2 .pub-reveal{transition:opacity var(--sn-dur-3) var(--sn-ease),transform var(--sn-dur-3) var(--sn-ease)}}@keyframes pub-petal{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}@keyframes pub-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sv2 .pub-section{margin-top:var(--sn-space-6);padding-top:var(--sn-space-6);border-top:1px solid var(--sn-hairline)}.sv2 .pub-section__title{margin:var(--sn-space-1) 0 var(--sn-space-3);font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-28);line-height:var(--sn-lh-tight);letter-spacing:0;color:var(--sn-text);text-wrap:balance}@media (min-width:1024px){.sv2 .pub-section__title{font-size:var(--sn-fs-36)}}.sv2 .pub-section__text{margin:0;font-size:var(--sn-fs-16);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-steps{display:grid;gap:var(--sn-space-3);margin:var(--sn-space-5) 0 0;padding:0;list-style:none}.sv2 .pub-step{display:flex;align-items:center;gap:var(--sn-space-4)}.sv2 .pub-step__art{flex:none;display:flex}.sv2 .pub-step__title{margin:var(--sn-space-1) 0 0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-22);line-height:var(--sn-lh-tight);color:var(--sn-text)}.sv2 .pub-step__text{margin:var(--sn-space-1) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-figure{margin:var(--sn-space-5) 0 0}.sv2 .pub-mock{padding:var(--sn-space-5)}.sv2 .pub-mock__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sn-space-2)}.sv2 .pub-mock__head .ui-eyebrow{margin:0}.sv2 .pub-mock__name{margin:var(--sn-space-2) 0 var(--sn-space-2);padding-bottom:var(--sn-space-3);border-bottom:1px solid var(--sn-hairline);font-family:var(--sn-font-display);font-size:var(--sn-fs-28);line-height:var(--sn-lh-tight);letter-spacing:0;color:var(--sn-text)}.sv2 .pub-mock__list{margin:0;padding:0;list-style:none}.sv2 .pub-mock__list li{display:flex;align-items:flex-start;gap:var(--sn-space-3);padding:var(--sn-space-2) 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-snug);color:var(--sn-text-2)}.sv2 .pub-mock__list li+li{border-top:1px solid var(--sn-hairline)}.sv2 .pub-mock__list svg{color:var(--sn-success-text)}.sv2 .pub-tagrow{display:flex;flex-wrap:wrap;gap:var(--sn-space-2);margin-top:var(--sn-space-3)}.sv2 .pub-caption{margin:var(--sn-space-3) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-muted);text-align:center}.sv2 .pub-center{display:flex;justify-content:center;margin-top:var(--sn-space-1)}.sv2 .pub-promises{margin:var(--sn-space-5) 0 0;padding:0;list-style:none;border-radius:var(--sn-radius-lg);background:var(--sn-surface);box-shadow:var(--sn-elev-1)}.sv2 .pub-promise{display:flex;gap:var(--sn-space-4);padding:var(--sn-space-4)}.sv2 .pub-promise+.pub-promise{border-top:1px solid var(--sn-hairline)}.sv2 .pub-promise__icon{flex:none;display:flex;margin-top:2px;color:var(--sn-teal)}.sv2 .pub-promise__title{margin:0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-22);line-height:var(--sn-lh-tight);color:var(--sn-text)}.sv2 .pub-promise__text{margin:var(--sn-space-1) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-final{text-align:center}.sv2 .pub-final>.ui-btn{width:100%;max-width:360px;margin-top:var(--sn-space-5)}.sv2 .pub-footer{margin-top:var(--sn-space-7);padding-top:var(--sn-space-5);border-top:1px solid var(--sn-hairline);text-align:center}.sv2 .pub-footer__disc{margin:0 auto;max-width:48ch;font-size:var(--sn-fs-12);line-height:var(--sn-lh-body);color:var(--sn-text-muted)}.sv2 .pub-footer__links{display:flex;flex-wrap:wrap;justify-content:center;gap:0 var(--sn-space-1);margin-top:var(--sn-space-2)}.sv2 .pub-footer__links a{display:inline-flex;align-items:center;min-height:var(--sn-tap);padding:0 var(--sn-space-2);border-radius:var(--sn-radius-sm);font-size:var(--sn-fs-14);color:var(--sn-text-2);text-decoration:underline;text-decoration-color:var(--sn-border);text-underline-offset:3px}.sv2 .pub-footer__copy{margin:var(--sn-space-1) 0 0;font-size:var(--sn-fs-12);color:var(--sn-text-muted)}.sv2 .sv2-main.pub-sample{max-width:640px}.sv2 .pub-storyhead{margin:var(--sn-space-5) 0 0}.sv2 .pub-storyhead__title{margin:var(--sn-space-1) 0 0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-36);line-height:var(--sn-lh-tight);letter-spacing:0;color:var(--sn-text);text-wrap:balance}.sv2 .pub-storyhead__meta{margin:var(--sn-space-2) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-muted)}.sv2 .pub-fact{margin:0;font-size:var(--sn-fs-16);line-height:var(--sn-lh-body);color:var(--sn-text)}.sv2 .pub-fact+.pub-fact{margin-top:var(--sn-space-3)}.sv2 .pub-fact__key{font-weight:600}.sv2 .pub-quote{font-family:var(--sn-font-display);font-style:italic;letter-spacing:0}.sv2 .pub-src{display:inline-flex;flex-wrap:wrap;gap:var(--sn-space-1);margin-left:var(--sn-space-2);vertical-align:middle}.sv2 .pub-subhead{margin:var(--sn-space-5) 0 0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-18);line-height:var(--sn-lh-tight);color:var(--sn-text)}.sv2 .pub-timeline{margin:var(--sn-space-2) 0 0;padding:0;list-style:none}.sv2 .pub-timeline li{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:var(--sn-space-3);padding:var(--sn-space-3) 0;border-top:1px solid var(--sn-hairline)}.sv2 .pub-timeline__date{font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-muted);font-variant-numeric:tabular-nums}.sv2 .pub-timeline__event{font-size:var(--sn-fs-16);line-height:var(--sn-lh-body);color:var(--sn-text)}@media (max-width:420px){.sv2 .pub-timeline li{grid-template-columns:minmax(0,1fr);gap:var(--sn-space-1)}}.sv2 .pub-pattern+.pub-pattern{margin-top:var(--sn-space-4);padding-top:var(--sn-space-4);border-top:1px solid var(--sn-hairline)}.sv2 .pub-basis{margin:var(--sn-space-2) 0 0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-muted)}.sv2 .pub-area{padding:var(--sn-space-4)}.sv2 .pub-area+.pub-area{border-top:1px solid var(--sn-hairline)}.sv2 .pub-area__title{margin:0;font:600 var(--sn-fs-16)/var(--sn-lh-snug) var(--sn-font-ui);letter-spacing:-.01em;color:var(--sn-text)}.sv2 .pub-area__text{margin:var(--sn-space-1) 0 0;color:var(--sn-text-2)}.sv2 .pub-area__text,.sv2 .pub-disclaimer{font-size:var(--sn-fs-14);line-height:var(--sn-lh-body)}.sv2 .pub-disclaimer{margin:var(--sn-space-3) 0 0;color:var(--sn-text-muted)}.sv2 .sv2-main.pub-share{max-width:900px}@media (max-width:599px){.sv2 .sv2-main.pub-share{padding-left:var(--sn-space-4);padding-right:var(--sn-space-4)}}.sv2 .pub-sharehead{margin:var(--sn-space-2) 0 var(--sn-space-5)}.sv2 .pub-sharehead__title{margin:var(--sn-space-1) 0 0;font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-36);line-height:var(--sn-lh-tight);letter-spacing:0;color:var(--sn-text);text-wrap:balance}.sv2 .pub-sharehead__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sn-space-2) var(--sn-space-3);margin-top:var(--sn-space-3);font-size:var(--sn-fs-14);line-height:var(--sn-lh-snug);color:var(--sn-text-muted)}.sv2 .pub-sharedisc{margin:var(--sn-space-4) 0 0;max-width:72ch;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-sharehead__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sn-space-3);margin-top:var(--sn-space-4)}.sv2 .pub-pdfstatus{display:inline-flex;align-items:center;gap:var(--sn-space-2);margin:0;font-size:var(--sn-fs-14);line-height:var(--sn-lh-snug);color:var(--sn-text-2)}.sv2 .pub-pdfstatus--done{color:var(--sn-success-text)}.sv2 .pub-book{display:block;width:100%;min-height:480px;border:0}.sv2 .pub-book,.sv2 .pub-bookwait{border-radius:var(--sn-radius-lg);background:var(--sn-surface);box-shadow:var(--sn-elev-1)}.sv2 .pub-bookwait{display:flex;align-items:center;justify-content:center;gap:var(--sn-space-3);min-height:240px;font-size:var(--sn-fs-14);color:var(--sn-text-muted)}.sv2 .pub-sharecta{margin-top:var(--sn-space-5);text-align:center}.sv2 .pub-sharecta p{margin:0 auto;max-width:56ch;font-size:var(--sn-fs-14);line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-loading{display:flex;align-items:center;gap:var(--sn-space-3);padding:var(--sn-space-7) 0;font-size:var(--sn-fs-14);color:var(--sn-text-muted)}.sv2 .pub-loading,.sv2 .sv2-main.pub-status{justify-content:center}.sv2 .pub-status .ui-empty__art{width:auto}.sv2 .pub-status .ui-empty__title{font-size:var(--sn-fs-28)}.sv2 .pub-status__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sn-space-2)}.pub-globalbody{margin:0;background:var(--sn-white);color:var(--sn-text)}.pub-globalbody .sv2{min-height:100dvh;display:flex;flex-direction:column}.sv2 .pub-glance{margin:0 0 var(--sn-space-4);display:grid;gap:var(--sn-space-4)}.sv2 .pub-glance section{margin:0}.sv2 .pub-glance__label{margin:0 0 var(--sn-space-1);font:600 var(--sn-fs-14)/var(--sn-lh-snug) var(--sn-font-ui);color:var(--sn-text)}.sv2 .pub-glance__text{font-size:var(--sn-fs-16)}.sv2 .pub-glance__list,.sv2 .pub-glance__text{margin:0;line-height:var(--sn-lh-body);color:var(--sn-text-2)}.sv2 .pub-glance__list{padding-left:1.1em;font-size:var(--sn-fs-14)}.sv2 .pub-glance__test{font-weight:600;color:var(--sn-text)}.sv2 .pub-glance__more{margin:var(--sn-space-1) 0 0;font-size:var(--sn-fs-12);color:var(--sn-text-muted)}.sv2 .pub-sharedisc--full{margin:var(--sn-space-5) 0 0;font-size:var(--sn-fs-12)}.sv2 .pub-sharehead+.pub-glance{margin-top:0}.sv2 .pub-shareactions{margin:0 0 var(--sn-space-5)}.sv2 .pub-ask{margin-top:var(--sn-space-5);text-align:left}.sv2 .pub-ask__title{margin:0 0 var(--sn-space-3);font-family:var(--sn-font-display);font-weight:400;font-size:var(--sn-fs-22);color:var(--sn-text)}.sv2 .pub-ask__list{list-style:none;margin:0 0 var(--sn-space-4);padding:0}.sv2 .pub-ask__list li+li{margin-top:var(--sn-space-3);padding-top:var(--sn-space-3);border-top:1px solid var(--sn-hairline)}.sv2 .pub-ask__q{margin:0;font-weight:600;font-size:var(--sn-fs-16);color:var(--sn-text)}.sv2 .pub-ask__by{font-weight:400;color:var(--sn-text-2)}.sv2 .pub-ask__a{margin:var(--sn-space-1) 0 0;font-size:var(--sn-fs-16);color:var(--sn-text);white-space:pre-wrap}.sv2 .pub-ask__help,.sv2 .pub-ask__note,.sv2 .pub-ask__when{margin:var(--sn-space-2) 0 0;font-size:var(--sn-fs-14);color:var(--sn-text-2)}.sv2 .pub-ask__form>*+*{margin-top:var(--sn-space-3)}.sv2 .pub-ask__err{margin:0;color:var(--sn-error);font-size:var(--sn-fs-14)}.sv2-app{padding-top:var(--sn-safe-top);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.sv2-app:has(>.ui-topbar){padding-top:0}.sv2-main{padding-bottom:calc(40px + var(--sn-safe-bottom))}