@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}body{-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%;height:auto}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}.wrap{max-width:var(--wrap, 1180px);margin-inline:auto;padding-inline:22px}.wrap-narrow{max-width:var(--wrap-narrow, 780px);margin-inline:auto;padding-inline:22px}.mt-xl{margin-top:84px}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 18px}.skip-link:focus{left:0}.header-inner{display:flex;align-items:center;gap:22px;height:70px}.site-header{position:sticky;top:0;z-index:50}.nav{display:flex;gap:5px;margin-left:auto;align-items:center;flex-wrap:wrap}.hero{position:relative;overflow:hidden;padding:76px 0 62px}.hero>.wrap{position:relative;z-index:2}.hero h1{max-width:15ch}.hero p{max-width:56ch;margin-top:20px}.hero-glyph{position:absolute;right:-3%;top:50%;transform:translateY(-50%) rotate(-9deg);font-size:clamp(13rem,27vw,24rem);line-height:1;pointer-events:none;user-select:none;z-index:1}.hero-kicker{display:inline-block;margin-bottom:20px}.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(252px,1fr))}.card{display:flex;flex-direction:column;overflow:hidden}.card a{display:flex;flex-direction:column;height:100%}.card-figure{overflow:hidden}.card-img{aspect-ratio:4/5;object-fit:cover;width:100%}.card-body{padding:15px 16px 17px;display:flex;flex-direction:column;gap:8px;flex:1}.card-meta{margin-top:auto;padding-top:4px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{display:inline-flex;align-items:center;gap:8px}.section-block{margin-top:62px;scroll-margin-top:96px}.thread-divider{display:flex;align-items:center;gap:16px;margin-bottom:8px}.section-block .sec-intro{margin-bottom:26px;max-width:58ch}.lines{list-style:none;padding:0;display:flex;flex-direction:column;gap:14px}.msg{display:flex;align-items:center;gap:12px}.bubble{position:relative;flex:0 1 auto}.copy-btn{flex-shrink:0;margin-left:auto;white-space:nowrap}.breadcrumbs{padding:24px 0 0}.post-head{padding:18px 0 30px}.post-head h1{margin-bottom:20px}.post-meta{display:flex;gap:9px;flex-wrap:wrap}.post-hero{overflow:hidden}.post-intro p+p{margin-top:16px}.pillar-intro{max-width:var(--wrap-narrow, 780px);margin-bottom:54px}.pillar-intro p+p{margin-top:16px}.jumpto{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:34px;padding:18px}.jumpto strong{width:100%}.tips{margin-top:62px;padding:26px 28px}.tips ul{margin:0;padding-left:20px}.tips li+li{margin-top:10px}.faq{margin-top:62px}.faq-item{padding:22px 0}.faq-item h3{margin-bottom:8px}.download-cta{display:inline-flex;align-items:center;gap:10px;margin-top:20px;padding:11px 17px;text-decoration:none;line-height:1.2}.ad-slot{margin:52px 0;min-height:90px;display:flex;align-items:center;justify-content:center}.ad-slot:empty{display:none}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:24px}.section-title a{white-space:nowrap}.pagination{display:flex;gap:11px;justify-content:center;align-items:center;margin-top:58px}.site-footer{margin-top:96px;padding:56px 0 36px}.footer-grid{display:grid;gap:36px;grid-template-columns:1.7fr 1fr 1fr 1fr}.footer-grid h2{margin-bottom:14px}.footer-grid ul{list-style:none;padding:0}.footer-grid li+li{margin-top:9px}.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:40px;padding-top:24px}.prose{max-width:66ch}.prose h2{margin:42px 0 14px}.prose h3{margin:26px 0 8px}.prose p+p,.prose ul,.prose ol{margin-top:15px}.prose ul,.prose ol{padding-left:22px}.prose li+li{margin-top:7px}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.header-inner{height:auto;padding:12px 0;flex-wrap:wrap;gap:10px}.nav{margin-left:0;width:100%;gap:4px}.hero{padding:52px 0 44px}.hero-glyph{right:-12%}.mt-xl{margin-top:60px}}@media(max-width:560px){.grid{grid-template-columns:1fr 1fr;gap:13px}.card-body{padding:11px 12px 14px;gap:6px}.footer-grid{grid-template-columns:1fr;gap:26px}.msg{gap:9px}.tips{padding:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.pin-wrap{position:relative}.pin-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;z-index:-1}.share-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:20px}.layout-2col{width:min(100% - 32px,var(--wrap));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:42px;align-items:start}.layout-2col>.col-main{min-width:0}@media(max-width:960px){.layout-2col{grid-template-columns:minmax(0,1fr);gap:34px}}.sidebar{position:sticky;top:84px;display:grid;gap:20px}@media(max-width:960px){.sidebar{position:static}}.side-box{padding:20px 22px}.side-title{font-size:1.05rem;margin:0 0 14px}.side-list{list-style:none;margin:0;padding:0;display:grid;gap:11px}.side-list a{display:block;line-height:1.4;text-decoration:none}.side-cats{gap:8px}.side-about p{margin:0 0 12px;font-size:.92rem;line-height:1.6}.side-link{font-size:.9rem;font-weight:600;text-decoration:none}.card-wide{display:grid;grid-template-columns:196px minmax(0,1fr);gap:20px;padding:16px;align-items:start}.cw-figure{display:block;aspect-ratio:4 / 3;overflow:hidden}.cw-figure img{width:100%;height:100%;object-fit:cover;display:block}.cw-body{min-width:0;display:grid;gap:9px}.cw-cat{justify-self:start;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:5px 10px;text-decoration:none}.cw-title{margin:0;font-size:1.22rem;line-height:1.25}.cw-title a{text-decoration:none;color:inherit}.cw-excerpt{margin:0;font-size:.94rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cw-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;font-size:.8rem}.cw-more{margin-left:auto;font-weight:650;text-decoration:none}@media(max-width:620px){.card-wide{grid-template-columns:minmax(0,1fr);gap:14px}.cw-figure{aspect-ratio:16 / 9}.cw-more{margin-left:0}}.list-stack{display:grid;gap:18px}.lines.numbered{counter-reset:line}.lines.numbered .msg{display:grid;grid-template-columns:2.1rem minmax(0,1fr) auto;gap:12px;align-items:baseline}.lines.numbered .msg:before{counter-increment:line;content:counter(line) ".";font-variant-numeric:tabular-nums;font-size:.9rem;opacity:.5}@media(max-width:520px){.lines.numbered .msg{grid-template-columns:1.6rem minmax(0,1fr) auto;gap:8px}}.sec-figure{margin:22px 0 4px}.sec-figure img{width:100%;height:auto;display:block}.sec-figure figcaption{margin-top:8px;font-size:.82rem;text-align:center}.byline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:.86rem;margin-top:12px}.byline .by-name{font-weight:650}.hero-samples{margin:26px 0 0;padding:0;list-style:none;display:grid;gap:10px;max-width:680px}.hero-samples .msg{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 15px}.hs-cat{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;white-space:nowrap}@media(max-width:620px){.hero-samples .msg{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.hs-cat{grid-column:1 / -1}}.hero-chips{margin-top:26px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px}.feature{display:grid;gap:5px;padding:20px;text-decoration:none;align-content:start}.ft-emoji{font-size:1.7rem;line-height:1}.ft-name{margin:6px 0 0;font-size:1.1rem}.ft-meta{font-size:.82rem}.post-lead{display:grid;grid-template-columns:260px minmax(0,1fr);gap:26px;align-items:start;margin-top:24px}.post-lead .post-hero{margin:0}.post-lead .post-hero img{width:100%;height:auto;display:block}.lead-body{display:grid;gap:18px;align-content:start}.lead-body .post-intro{margin-top:0}@media(max-width:760px){.post-lead{grid-template-columns:minmax(0,1fr);gap:20px}.post-lead .post-hero{max-width:300px;margin-inline:auto}}.share-row .download-cta{margin-top:0}.share-row>*{max-width:100%}@media(max-width:1100px){.post-lead .share-row{flex-direction:column;align-items:stretch}.post-lead .share-row .download-cta{justify-content:center}}.merged-block{margin-top:44px;scroll-margin-top:84px}.merged-sub{margin-top:26px}.merged-sub h3{margin:0 0 4px}.merged-faq{margin-top:26px}.merged-faq h4{margin:0 0 4px;font-size:1rem}.lines.numbered .msg{padding-block:9px}.lines.numbered .bubble{line-height:1.5}.merged-block{margin-top:64px}.merged-sub{margin-top:30px}.merged-sub h3{margin-bottom:2px}.block-intro{margin:10px 0 0;max-width:68ch}.side-count{display:block;font-size:.78rem;opacity:.7;margin-top:1px}[data-theme=bloom]{--bg:#fffafc;--surface:#fff;--surface-2:#fdf4f8;--surface-3:#f8ecf3;--ink:#2b2230;--ink-2:#6b5f73;--ink-3:#6f6478;--hair:#f0e4ec;--cat:#c2306b;--cat-soft:#fdeef4;--cat-on:#ffffff;--display:"Plus Jakarta Sans",-apple-system,system-ui,sans-serif;--sans:"Plus Jakarta Sans",-apple-system,system-ui,sans-serif;--wrap:1180px;--wrap-narrow:770px;--ease:cubic-bezier(.34,1.3,.44,1);--glow:0 10px 30px -10px color-mix(in srgb, var(--cat) 42%, transparent)}@media(prefers-color-scheme:dark){[data-theme=bloom]{--bg:#171320;--surface:#211b2c;--surface-2:#2a2237;--surface-3:#342a44;--ink:#f5eef8;--ink-2:#c3b6cd;--ink-3:#8d8199;--hair:#332a41;--cat-soft: color-mix(in srgb, var(--cat) 22%, var(--surface))}}[data-theme=bloom]{--cat-text: color-mix(in srgb, var(--cat) 92%, #000)}[data-theme=bloom] .themed{--cat-soft: color-mix(in srgb, var(--cat) 11%, var(--surface));--cat-text: color-mix(in srgb, var(--cat) 92%, #000)}@media(prefers-color-scheme:dark){[data-theme=bloom]{--cat-text: color-mix(in srgb, var(--cat) 52%, #fff)}[data-theme=bloom] .themed{--cat-soft: color-mix(in srgb, var(--cat) 24%, var(--surface));--cat-text: color-mix(in srgb, var(--cat) 52%, #fff)}}[data-theme=bloom] body{font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--bg)}[data-theme=bloom] :focus-visible{outline:3px solid var(--cat);outline-offset:3px;border-radius:12px}[data-theme=bloom] h1,[data-theme=bloom] h2,[data-theme=bloom] h3,[data-theme=bloom] h4{font-family:var(--display);font-weight:800;line-height:1.12;letter-spacing:-.03em}[data-theme=bloom] h1{font-size:clamp(2.3rem,5.6vw,3.9rem)}[data-theme=bloom] h2{font-size:clamp(1.5rem,3vw,2.1rem)}[data-theme=bloom] h3{font-size:1.08rem;font-weight:700}[data-theme=bloom] .skip-link{background:var(--cat);color:var(--cat-on);border-radius:0 0 14px}[data-theme=bloom] .site-header{background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--hair)}[data-theme=bloom] .brand{font-family:var(--display);font-weight:800;font-size:1.42rem;letter-spacing:-.04em;color:var(--ink)}[data-theme=bloom] .brand .dot{color:var(--cat-text)}[data-theme=bloom] .nav a{font-size:.9rem;font-weight:600;color:var(--ink-2);padding:8px 15px;border-radius:999px;transition:all .2s var(--ease)}[data-theme=bloom] .nav a:hover{background:var(--surface-2);color:var(--cat-text)}[data-theme=bloom] .nav a[aria-current=page]{background:var(--cat);color:var(--cat-on)}[data-theme=bloom] .hero{border-bottom:0;border-radius:0 0 44px 44px;background:linear-gradient(158deg,var(--cat-soft) 0%,var(--surface-2) 52%,var(--bg) 100%)}[data-theme=bloom] .hero p{font-size:1.11rem;color:var(--ink-2)}[data-theme=bloom] .hero-glyph{opacity:.2;filter:saturate(1.15)}[data-theme=bloom] .hero-kicker{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--cat);color:var(--cat-on);padding:9px 18px;border-radius:999px;box-shadow:var(--glow)}[data-theme=bloom] .card{background:var(--surface);border-radius:26px;box-shadow:0 3px 14px -6px #2b223024;transition:transform .28s var(--ease),box-shadow .28s var(--ease)}[data-theme=bloom] .card:hover{transform:translateY(-7px);box-shadow:0 20px 42px -14px color-mix(in srgb,var(--cat) 36%,transparent)}[data-theme=bloom] .card-figure{border-radius:26px 26px 0 0}[data-theme=bloom] .card-img{transition:transform .6s var(--ease)}[data-theme=bloom] .card:hover .card-img{transform:scale(1.06)}[data-theme=bloom] .card-body{padding:16px 19px 20px}[data-theme=bloom] .card-title{font-size:1.04rem;font-weight:800;line-height:1.26;letter-spacing:-.02em}[data-theme=bloom] .card-meta{font-size:.77rem;color:var(--ink-3);font-weight:600}[data-theme=bloom] .eyebrow{font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}[data-theme=bloom] .chip{padding:10px 19px;border-radius:999px;background:var(--surface);border:1px solid var(--hair);font-size:.89rem;font-weight:700;color:var(--ink-2);box-shadow:0 2px 8px -4px #2b223029;transition:all .24s var(--ease)}[data-theme=bloom] .chip:hover{transform:translateY(-3px);background:var(--cat);color:var(--cat-on);border-color:var(--cat);box-shadow:var(--glow)}[data-theme=bloom] .lines{gap:12px}[data-theme=bloom] .msg{padding:0}[data-theme=bloom] .bubble{max-width:none;flex:1;background:linear-gradient(135deg,var(--cat-soft),var(--surface));border:1px solid var(--hair);border-radius:20px;padding:17px 21px;font-size:1.03rem;line-height:1.55;color:var(--ink);font-weight:500;transition:transform .24s var(--ease),box-shadow .24s var(--ease)}[data-theme=bloom] .msg:hover .bubble{transform:translateY(-3px);box-shadow:0 14px 30px -12px color-mix(in srgb,var(--cat) 40%,transparent)}[data-theme=bloom] .copy-btn{padding:10px 18px;border-radius:999px;border:0;background:var(--cat);color:var(--cat-on);font-size:.79rem;font-weight:800;box-shadow:var(--glow);transition:all .22s var(--ease)}[data-theme=bloom] .copy-btn:hover{transform:translateY(-3px) scale(1.04)}[data-theme=bloom] .copy-btn.copied{background:#16a06a}[data-theme=bloom] .thread-divider:after{content:"";flex:1;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--hair),transparent)}[data-theme=bloom] .sec-intro{color:var(--ink-3);font-size:.95rem;font-weight:500}[data-theme=bloom] .breadcrumbs{font-size:.82rem;color:var(--ink-3);font-weight:600}[data-theme=bloom] .post-head h1{font-size:clamp(2.05rem,4.8vw,3.2rem)}[data-theme=bloom] .post-meta span{background:var(--surface-2);border:1px solid var(--hair);padding:6px 15px;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--ink-2)}[data-theme=bloom] .post-hero{border-radius:28px;box-shadow:0 18px 40px -18px color-mix(in srgb,var(--cat) 44%,transparent)}[data-theme=bloom] .post-intro p,[data-theme=bloom] .pillar-intro p{font-size:1.06rem;color:var(--ink-2);line-height:1.72}[data-theme=bloom] .jumpto{background:var(--surface-2);border-radius:22px}[data-theme=bloom] .jumpto strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:800}[data-theme=bloom] .jumpto a{font-size:.86rem;font-weight:700;padding:8px 15px;border-radius:999px;background:var(--surface);color:var(--ink-2)}[data-theme=bloom] .jumpto a:hover{background:var(--cat);color:var(--cat-on)}[data-theme=bloom] .tips{border-radius:26px;background:linear-gradient(150deg,var(--cat-soft),var(--surface-2));border:1px solid var(--hair)}[data-theme=bloom] .tips h2{font-size:1.3rem;margin-bottom:14px}[data-theme=bloom] .tips ul,[data-theme=bloom] .tips p{color:var(--ink-2)}[data-theme=bloom] .faq-item{border-bottom:1px solid var(--hair)}[data-theme=bloom] .faq-item:first-of-type{border-top:1px solid var(--hair)}[data-theme=bloom] .faq-item p{color:var(--ink-2)}[data-theme=bloom] .download-cta{padding:14px 26px;border-radius:999px;background:var(--cat);color:var(--cat-on);font-weight:800;font-size:.93rem;box-shadow:var(--glow);transition:all .24s var(--ease)}[data-theme=bloom] .download-cta:hover{transform:translateY(-3px) scale(1.02)}[data-theme=bloom] .section-title a{font-size:.88rem;font-weight:800;color:var(--cat-text)}[data-theme=bloom] .pagination a,[data-theme=bloom] .pagination span{padding:11px 20px;border-radius:999px;border:1px solid var(--hair);background:var(--surface);font-size:.87rem;font-weight:700;color:var(--ink-2)}[data-theme=bloom] .pagination a:hover,[data-theme=bloom] .pagination .current{background:var(--cat);color:var(--cat-on);border-color:var(--cat)}[data-theme=bloom] .site-footer{border-top:0;border-radius:44px 44px 0 0;background:var(--surface-2)}[data-theme=bloom] .footer-grid h2{font-size:.73rem;text-transform:uppercase;letter-spacing:.11em;color:var(--ink-3);font-weight:800}[data-theme=bloom] .footer-grid a{color:var(--ink-2);font-size:.91rem;font-weight:600}[data-theme=bloom] .footer-grid a:hover{color:var(--cat-text)}[data-theme=bloom] .footer-bottom{border-top:1px solid var(--hair);font-size:.84rem;color:var(--ink-3)}[data-theme=bloom] .prose p,[data-theme=bloom] .prose li{color:var(--ink-2)}[data-theme=bloom] .prose strong{color:var(--ink);font-weight:800}[data-theme=bloom] .prose a{color:var(--cat-text);font-weight:700}@media(max-width:560px){[data-theme=bloom] body{font-size:16px}[data-theme=bloom] .hero{border-radius:0 0 30px 30px}[data-theme=bloom] .bubble{padding:14px 16px;font-size:.98rem}[data-theme=bloom] .card-title{font-size:.93rem}}[data-theme=bloom] .pin-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:999px;background:#e60023;color:#fff;font-weight:800;font-size:.93rem;box-shadow:0 10px 30px -10px #e600238c;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}[data-theme=bloom] .pin-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 16px 34px -10px #e600239e;text-decoration:none;color:#fff}[data-theme=bloom] .side-box{background:var(--surface);border-radius:22px;box-shadow:0 3px 14px -6px #2b22301f}[data-theme=bloom] .side-title{font-family:var(--display);font-weight:800;letter-spacing:-.025em;color:var(--ink)}[data-theme=bloom] .side-list a{color:var(--ink-2);font-size:.92rem;font-weight:600;transition:color .18s var(--ease)}[data-theme=bloom] .side-list a:hover{color:var(--cat-text)}[data-theme=bloom] .side-cats a{font-size:.9rem;font-weight:600}[data-theme=bloom] .side-about p{color:var(--ink-2)}[data-theme=bloom] .side-link{color:var(--cat-text)}[data-theme=bloom] .card-wide{background:var(--surface);border-radius:24px;box-shadow:0 3px 14px -6px #2b223024;transition:transform .26s var(--ease),box-shadow .26s var(--ease)}[data-theme=bloom] .card-wide:hover{transform:translateY(-4px);box-shadow:0 18px 38px -16px color-mix(in srgb,var(--cat) 36%,transparent)}[data-theme=bloom] .cw-figure{border-radius:18px}[data-theme=bloom] .cw-figure img{transition:transform .6s var(--ease)}[data-theme=bloom] .card-wide:hover .cw-figure img{transform:scale(1.05)}[data-theme=bloom] .cw-cat{background:var(--cat);color:var(--cat-on);border-radius:999px}[data-theme=bloom] .cw-title{font-family:var(--display);font-weight:800;letter-spacing:-.028em}[data-theme=bloom] .cw-title a:hover{color:var(--cat-text)}[data-theme=bloom] .cw-excerpt{color:var(--ink-2)}[data-theme=bloom] .cw-meta{color:var(--ink-3)}[data-theme=bloom] .cw-more{color:var(--cat-text)}[data-theme=bloom] .lines.numbered .msg:before{color:var(--cat-text);font-weight:700;opacity:.65}[data-theme=bloom] .sec-figure img{border-radius:22px}[data-theme=bloom] .sec-figure figcaption{color:var(--ink-3)}[data-theme=bloom] .byline{color:var(--ink-3)}[data-theme=bloom] .byline .by-name{color:var(--ink-2)}[data-theme=bloom] .merged-block>.section-title{border-bottom:3px solid var(--cat);padding-bottom:9px}[data-theme=bloom] .merged-block>.section-title h2{font-size:clamp(1.55rem,3vw,2.15rem);letter-spacing:-.03em}[data-theme=bloom] .merged-sub h3{font-size:1.08rem;font-weight:750;color:var(--ink)}[data-theme=bloom] .merged-faq h4{font-weight:700;color:var(--ink)}[data-theme=bloom] .block-intro{color:var(--ink-2)}[data-theme=bloom] .side-count{color:var(--ink-3)}
