@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-ext-wght-normal.cHuGMAiY.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-cyrillic-wght-normal.DwHjdM4S.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-greek-wght-normal.ece1310W.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-vietnamese-wght-normal.D-yuW59g.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-ext-wght-normal.CxNHBx-q.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(./source-serif-4-latin-wght-normal.D9elroTD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f4f4f8;--glass:#fff;--ink:#1e2140;--muted:#5f6382;--line:#d9dbe8;--violet:#5a3e9b;--violet-soft:#e8e2f4;--rose:#c93a73;--rose-soft:#f9e0ea;--font-ui:"Bricolage Grotesque Variable", system-ui, sans-serif;--font-read:"Source Serif 4 Variable", Georgia, serif;--radius:.5rem;--wrap:76rem;--read:48rem;--gutter:clamp(1rem, 4vw, 2rem)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-ui);margin:0;font-size:1.0625rem;line-height:1.55}h1,h2,h3{font-family:var(--font-ui);letter-spacing:-.02em;text-wrap:balance;margin:0 0 .6em;line-height:1.12}h1{font-size:clamp(2.1rem,5.5vw,3.6rem);font-weight:700}h2{font-size:clamp(1.45rem,3vw,2rem);font-weight:650}h3{letter-spacing:-.01em;font-size:1.2rem;font-weight:650}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--violet);text-underline-offset:.18em}a:hover{color:var(--rose)}:focus-visible{outline:3px solid var(--violet);outline-offset:2px;border-radius:2px}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.read{max-width:var(--read)}.serif{font-family:var(--font-read);font-size:1.1875rem;line-height:1.72}.muted{color:var(--muted)}.lead{color:var(--muted);max-width:36rem;font-size:1.25rem}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{font:inherit;border-radius:var(--radius);border:2px solid var(--violet);background:var(--violet);color:#fff;cursor:pointer;padding:.75rem 1.4rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-block}.btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}.btn.ghost{color:var(--violet);background:0 0}.btn.ghost:hover{background:var(--violet);border-color:var(--violet);color:#fff}.btn.danger{border-color:var(--rose);color:var(--rose);background:0 0}.btn.danger:hover{background:var(--rose);color:#fff}.btn.small{padding:.4rem .9rem;font-size:.95rem}label{margin-bottom:.35rem;font-weight:600;display:block}input[type=email],input[type=password],input[type=text],input[type=url]{width:100%}input[type=email],input[type=password],input[type=text],input[type=url],input[type=date],input[type=number],select,textarea{font:inherit;border:2px solid var(--line);border-radius:var(--radius);background:var(--glass);color:var(--ink);padding:.7rem .85rem}input:focus-visible{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-soft);outline:none}.field{margin-bottom:1.1rem}.hint{color:var(--muted);margin-top:.3rem;font-size:.95rem}.notice{border-left:4px solid var(--rose);background:var(--rose-soft);border-radius:0 var(--radius) var(--radius) 0;margin:0 0 1.2rem;padding:.9rem 1.1rem}.notice.calm{border-left-color:var(--violet);background:var(--violet-soft)}.rule{border:0;border-top:1px solid var(--line);margin:2.5rem 0}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.chips{flex-wrap:wrap;gap:.5rem;margin:0 0 1.2rem;padding:0;list-style:none;display:flex}.chips a{border:2px solid var(--line);color:var(--ink);background:var(--glass);border-radius:2rem;padding:.3rem .9rem;font-size:.95rem;text-decoration:none;display:inline-block}.chips a[aria-current]{background:var(--violet);border-color:var(--violet);color:#fff}.tool-cards{gap:1rem;max-width:48rem;margin:0;padding:0;list-style:none;display:grid}.tool-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--glass);padding:1.1rem 1.2rem}.tool-card h2,.tool-card h3{margin:0 0 .4rem}.tag-pill{background:var(--violet-soft);color:var(--violet);border-radius:1rem;padding:.05rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.tag-pill.bad{background:var(--rose-soft);color:var(--rose)}.tag-pill.neutral{background:var(--line);color:var(--ink)}.tool-head{max-width:46rem;padding-block:2.5rem 1rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.card-grid>li{content-visibility:auto;contain-intrinsic-size:auto 26rem;min-width:0;scroll-margin-top:1rem;display:flex}.pcard{background:var(--glass);border:1px solid var(--line);border-radius:calc(var(--radius) * 2);min-width:0;color:var(--ink);flex-direction:column;flex:1;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.pcard:hover{border-color:var(--violet);box-shadow:0 8px 24px -12px #5a3e9b59}.pcard:has(.stretch:focus-visible){border-color:var(--violet);box-shadow:0 8px 24px -12px #5a3e9b59}.pcard:has(.stretch):hover{transform:translateY(-2px)}.pcard:has(.stretch:focus-visible){transform:translateY(-2px)}.pcard:has(.stretch):hover .stretch{color:var(--rose)}.pcard .stretch{text-decoration:none}.pcard .stretch:after{content:"";border-radius:inherit;position:absolute;inset:0}.pcard .stretch:focus-visible{outline:none}.pcard .stretch:focus-visible:after{outline:2px solid var(--violet);outline-offset:2px;border-radius:calc(var(--radius) * 2)}.pcard-pic{border-radius:calc(var(--radius) * 2 - 1px) calc(var(--radius) * 2 - 1px) 0 0;background:linear-gradient(180deg, var(--paper), var(--glass));border-bottom:1px solid var(--line);padding:.63rem .63rem .42rem;display:block;position:relative;overflow:hidden}.pcard-mark{background:var(--violet);color:#fff;border-radius:1rem;padding:.1rem .55rem;font-size:.78rem;font-weight:600;position:absolute;top:.6rem;right:.6rem}.pcard-body{flex-direction:column;flex:1;gap:.4rem;padding:.85rem 1rem 1rem;display:flex}.pcard-body>p{margin:0}.pcard-title{letter-spacing:-.01em;color:var(--violet);margin:0;font-size:1.12rem;font-weight:650;line-height:1.25;display:block}.pcard-text{color:var(--muted);font-size:.93rem;display:block}.pcard-foot{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.3rem .8rem;padding-top:.5rem;font-size:.85rem;display:flex;margin-top:auto!important}@media (width<=40rem){.card-grid{grid-template-columns:1fr}}input,select,textarea{font-size:max(1rem,16px)}@media (width<=40rem){body{font-size:1rem}.serif{font-size:1.125rem;line-height:1.68}.lead{font-size:1.125rem}.chips a{align-items:center;min-height:2.5rem;display:inline-flex}.btn.small{min-height:2.5rem}.tool-head{padding-block:1.6rem .6rem}.tool-card{padding:1rem}.rule{margin:1.8rem 0}}@media print{body>div>header,body>div>footer,.no-print,.skip{display:none!important}header:has(.mark){display:none!important}footer:has(.legal){display:none!important}body{background:#fff}a{color:inherit;text-decoration:none}}.skip.svelte-12qhfyh{background:var(--ink);color:#fff;z-index:10;padding:.6rem 1rem;position:absolute;top:0;left:-999px}.skip.svelte-12qhfyh:focus{left:0}header.svelte-12qhfyh{border-bottom:1px solid var(--line);background:var(--paper)}.bar.svelte-12qhfyh{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:.9rem;display:flex}@media (width>=46.01rem){.bar.svelte-12qhfyh{grid-template-columns:minmax(5rem,1fr) auto;align-items:center;gap:.2rem 1.5rem;padding-block:.7rem;display:grid}.mark.svelte-12qhfyh{grid-column:1/-1}.find.svelte-12qhfyh{grid-column:1}.right.svelte-12qhfyh{grid-column:2}}.mark.svelte-12qhfyh{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:.55rem;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.mark.svelte-12qhfyh:hover{color:var(--ink)}nav.svelte-12qhfyh{flex-wrap:wrap;gap:1.4rem;display:flex}nav.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--ink);border-bottom:2px solid #0000;padding-block:.2rem;font-weight:500;text-decoration:none}nav.svelte-12qhfyh a:where(.svelte-12qhfyh):hover{color:var(--violet)}nav.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh){border-bottom-color:var(--rose)}.who.svelte-12qhfyh{cursor:pointer;border:1.5px solid var(--line);width:2.3rem;height:2.3rem;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;list-style:none;display:inline-flex}.who.svelte-12qhfyh svg:where(.svelte-12qhfyh){fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round}.who.svelte-12qhfyh::-webkit-details-marker{display:none}.who.svelte-12qhfyh:hover,.join.svelte-12qhfyh:hover .who:where(.svelte-12qhfyh){color:var(--violet);border-color:var(--violet)}.join.svelte-12qhfyh{color:var(--rose);white-space:nowrap;align-items:center;gap:.3rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.join.svelte-12qhfyh .who:where(.svelte-12qhfyh){border-color:var(--rose);position:relative}.join.svelte-12qhfyh .nudge:where(.svelte-12qhfyh){align-items:center;gap:.3rem;display:inline-flex}.join.svelte-12qhfyh .short:where(.svelte-12qhfyh),.join.svelte-12qhfyh .flat:where(.svelte-12qhfyh){display:none}.join.svelte-12qhfyh .arrow:where(.svelte-12qhfyh){fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.join.svelte-12qhfyh:hover{color:var(--violet)}@media (width>=46.01rem){.join.svelte-12qhfyh .nudge:where(.svelte-12qhfyh){align-items:flex-start;font-size:.8rem;position:absolute;bottom:calc(100% + .1rem);right:.55rem}.join.svelte-12qhfyh .bend:where(.svelte-12qhfyh){width:20px;height:22px}.join.svelte-12qhfyh .long:where(.svelte-12qhfyh){padding-top:.05rem}}.who.in.svelte-12qhfyh{color:var(--violet);background:var(--violet-soft);border-color:#0000}.join[aria-current=page].svelte-12qhfyh .who:where(.svelte-12qhfyh),.acct[open].svelte-12qhfyh .who:where(.svelte-12qhfyh){border-color:var(--rose)}.acct.svelte-12qhfyh{position:relative}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh){z-index:5;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);gap:.1rem;min-width:12rem;padding:.3rem;display:grid;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 6px 20px #1e21401f}.acct.svelte-12qhfyh .username:where(.svelte-12qhfyh){color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:16rem;margin:0;padding:.4rem .6rem .2rem;font-size:.82rem;overflow:hidden}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){color:var(--ink);white-space:nowrap;border-radius:.3rem;padding:.5rem .6rem;font-weight:500;text-decoration:none}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh):hover,.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) a[aria-current=page]:where(.svelte-12qhfyh){color:var(--violet);background:var(--violet-soft)}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) hr:where(.svelte-12qhfyh){border:0;border-top:1px solid var(--line);margin:.3rem .2rem}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) form:where(.svelte-12qhfyh){margin:0;display:grid}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) button:where(.svelte-12qhfyh){font:inherit;text-align:left;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:.3rem;padding:.5rem .6rem;font-weight:500}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) button:where(.svelte-12qhfyh):hover{color:var(--violet);background:var(--violet-soft)}main.svelte-12qhfyh{min-height:60vh}footer.svelte-12qhfyh{border-top:1px solid var(--line);margin-top:5rem;padding-block:1.8rem 2.4rem;font-size:.95rem}.foot.svelte-12qhfyh{gap:1rem;display:grid}.legal.svelte-12qhfyh{color:var(--muted);max-width:44rem;margin:0}footer.svelte-12qhfyh nav:where(.svelte-12qhfyh){gap:1.2rem}footer.svelte-12qhfyh nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){color:var(--muted);border-bottom:0;font-weight:400}footer.svelte-12qhfyh nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh):hover{color:var(--violet)}.find.svelte-12qhfyh{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);flex:10rem;align-items:stretch;max-width:20rem;margin:0;display:flex}.find.svelte-12qhfyh:focus-within{border-color:var(--violet);box-shadow:0 0 0 2px var(--violet-soft)}.find.svelte-12qhfyh input:where(.svelte-12qhfyh){min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:.4rem 0 .4rem .7rem;font-size:1rem}.find.svelte-12qhfyh button:where(.svelte-12qhfyh){min-width:2.4rem;color:var(--muted);cursor:pointer;border-radius:0 var(--radius) var(--radius) 0;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.find.svelte-12qhfyh button:where(.svelte-12qhfyh):hover{color:var(--violet)}.find.svelte-12qhfyh svg:where(.svelte-12qhfyh){fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}.together.svelte-12qhfyh{color:var(--rose);font-weight:500}.right.svelte-12qhfyh{flex-wrap:wrap;align-items:center;gap:1rem 1.6rem;display:flex}.lang.svelte-12qhfyh{gap:.15rem;margin:0;display:flex}.lang.svelte-12qhfyh button:where(.svelte-12qhfyh){font:inherit;letter-spacing:.04em;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.3rem;padding:.2rem .45rem;font-size:.8rem;font-weight:600}.lang.svelte-12qhfyh button:where(.svelte-12qhfyh):hover{color:var(--violet)}.langpick.svelte-12qhfyh{display:none}.langpick.svelte-12qhfyh summary:where(.svelte-12qhfyh){cursor:pointer;letter-spacing:.04em;color:var(--violet);background:var(--violet-soft);border-radius:.3rem;justify-content:center;align-items:center;gap:.3rem;min-width:3.4rem;min-height:2.6rem;font-size:.9rem;font-weight:600;list-style:none;display:inline-flex}.langpick.svelte-12qhfyh summary:where(.svelte-12qhfyh)::-webkit-details-marker{display:none}.langpick.svelte-12qhfyh summary:where(.svelte-12qhfyh):after{content:"";border:4px solid #0000;border-top-color:currentColor;margin-top:4px}.lang.svelte-12qhfyh button[aria-current=true]:where(.svelte-12qhfyh){background:var(--violet-soft);color:var(--violet)}@media (width<=46rem){.bar.svelte-12qhfyh{gap:.3rem .8rem;padding-block:.6rem 0}.mark.svelte-12qhfyh{font-size:1.05rem}.right.svelte-12qhfyh{display:contents}.lang.wide.svelte-12qhfyh{display:none}.find.svelte-12qhfyh{flex:1 0 100%;order:2;max-width:none;margin-top:.3rem}.find.svelte-12qhfyh input:where(.svelte-12qhfyh){min-height:2.6rem}.langpick.svelte-12qhfyh{margin-left:auto;display:block;position:relative}.langpick.svelte-12qhfyh .lang:where(.svelte-12qhfyh){z-index:5;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.2rem;padding:.3rem;position:absolute;top:calc(100% + .3rem);right:0;box-shadow:0 6px 20px #1e21401f}.lang.svelte-12qhfyh button:where(.svelte-12qhfyh){min-width:3rem;min-height:2.6rem;font-size:.9rem}header.svelte-12qhfyh nav:where(.svelte-12qhfyh){margin-left:calc(-1 * var(--gutter));padding-left:var(--gutter);flex-wrap:wrap;flex:1 1 0;order:3;gap:.6rem 1.2rem}header.svelte-12qhfyh nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){white-space:nowrap;padding-block:.6rem .55rem}.acct.svelte-12qhfyh,.join.svelte-12qhfyh{order:4}.join.svelte-12qhfyh .long:where(.svelte-12qhfyh),.join.svelte-12qhfyh .bend:where(.svelte-12qhfyh){display:none}.join.svelte-12qhfyh .short:where(.svelte-12qhfyh),.join.svelte-12qhfyh .flat:where(.svelte-12qhfyh){display:inline}.who.svelte-12qhfyh{width:2.5rem;height:2.5rem;margin-block:.2rem .4rem}.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh),.acct.svelte-12qhfyh .panel:where(.svelte-12qhfyh) button:where(.svelte-12qhfyh){align-items:center;min-height:2.6rem;display:flex}footer.svelte-12qhfyh nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){padding-block:.35rem;display:inline-block}footer.svelte-12qhfyh{padding-bottom:calc(2.4rem + env(safe-area-inset-bottom));margin-top:3.5rem}}@media (width<=28rem){.join.svelte-12qhfyh .nudge:where(.svelte-12qhfyh){display:none}.join.svelte-12qhfyh .who:where(.svelte-12qhfyh):after{content:"+";background:var(--rose);color:#fff;text-align:center;border-radius:50%;width:1rem;height:1rem;font-size:.8rem;font-weight:700;line-height:1rem;position:absolute;top:-.25rem;right:-.25rem}}
