._1kqAeW_page{--g-bg:rgb(var(--tm-bg,248 250 252));--g-surface:rgb(var(--tm-surface,255 255 255));--g-surface-2:rgb(var(--tm-surface-2,241 245 249));--g-line:rgb(var(--tm-border,226 232 240));--g-ink:rgb(var(--tm-text,15 23 42));--g-muted:rgb(var(--tm-text-muted,71 85 105));--g-subtle:rgb(var(--tm-text-subtle,100 116 139));--g-primary:rgb(var(--tm-primary,79 70 229));--g-on-primary:rgb(var(--tm-on-primary,255 255 255));--g-soft:rgb(var(--tm-brand-50,238 242 255));--g-verified:rgb(var(--tm-verified,21 128 61));--g-verified-bg:rgb(var(--tm-verified-bg,220 252 231));--g-community:rgb(var(--tm-community,14 116 144));--g-community-bg:rgb(var(--tm-community-bg,207 250 254));--g-reviewed:rgb(var(--tm-reviewed,29 78 216));--g-reviewed-bg:rgb(var(--tm-reviewed-bg,219 234 254));--g-submitted:rgb(var(--tm-submitted,71 85 105));--g-submitted-bg:rgb(var(--tm-submitted-bg,241 245 249));--g-needs:rgb(var(--tm-needs-update,180 83 9));--g-needs-bg:rgb(var(--tm-needs-update-bg,254 243 199));--g-deprecated:rgb(var(--tm-deprecated,185 28 28));--g-deprecated-bg:rgb(var(--tm-deprecated-bg,254 226 226));--g-sponsored:rgb(var(--tm-sponsored,146 64 14));--g-sponsored-bg:rgb(var(--tm-sponsored-bg,255 247 237));--g-sponsored-border:rgb(var(--tm-sponsored-border,253 186 116));background:var(--g-bg);color:var(--g-ink);font-family:var(--tm-font-sans,"Be Vietnam Pro", "Segoe UI", sans-serif)}.dark ._1kqAeW_page{--g-bg:rgb(var(--tm-bg,2 6 23));--g-surface:rgb(var(--tm-surface,15 23 42));--g-surface-2:rgb(var(--tm-surface-2,30 41 59));--g-line:rgb(var(--tm-border,51 65 85));--g-ink:rgb(var(--tm-text,241 245 249));--g-muted:rgb(var(--tm-text-muted,148 163 184));--g-subtle:rgb(var(--tm-text-subtle,148 163 184));--g-primary:rgb(var(--tm-primary,129 140 248));--g-on-primary:rgb(var(--tm-on-primary,15 23 42));--g-soft:rgb(var(--tm-brand-900,49 46 129));--g-verified:rgb(var(--tm-verified,134 239 172));--g-verified-bg:rgb(var(--tm-verified-bg,20 83 45));--g-community:rgb(var(--tm-community,103 232 249));--g-community-bg:rgb(var(--tm-community-bg,22 78 99));--g-reviewed:rgb(var(--tm-reviewed,147 197 253));--g-reviewed-bg:rgb(var(--tm-reviewed-bg,30 58 138));--g-submitted:rgb(var(--tm-submitted,203 213 225));--g-submitted-bg:rgb(var(--tm-submitted-bg,51 65 85));--g-needs:rgb(var(--tm-needs-update,252 211 77));--g-needs-bg:rgb(var(--tm-needs-update-bg,120 53 15));--g-deprecated:rgb(var(--tm-deprecated,252 165 165));--g-deprecated-bg:rgb(var(--tm-deprecated-bg,127 29 29));--g-sponsored:rgb(var(--tm-sponsored,253 186 116));--g-sponsored-bg:rgb(var(--tm-sponsored-bg,67 20 7));--g-sponsored-border:rgb(var(--tm-sponsored-border,154 52 18))}._1kqAeW_page a{color:inherit;text-decoration:none}._1kqAeW_srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._1kqAeW_wrap{width:min(1280px,100% - 2rem);margin:0 auto}._1kqAeW_crumb{color:var(--g-muted);flex-wrap:wrap;gap:.35rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}._1kqAeW_crumb a:hover{text-underline-offset:3px;text-decoration:underline}._1kqAeW_crumb [aria-current=page]{color:var(--g-ink);font-weight:600}._1kqAeW_heroBand{background:var(--g-surface);border-bottom:1px solid var(--g-line);padding:1.5rem 0 1.25rem}._1kqAeW_heroHead{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:1rem;display:flex}._1kqAeW_h1{margin:0;font-size:clamp(1.75rem,2vw,2rem);line-height:1.25}._1kqAeW_lede{max-width:42rem;color:var(--g-muted);margin:.35rem 0 0}._1kqAeW_suggest{border:1px solid var(--g-line);background:var(--g-surface);color:var(--g-ink);border-radius:10px;align-self:flex-end;padding:.55rem .9rem;font-size:.875rem;font-weight:600}._1kqAeW_tabs{gap:.5rem;margin-top:1.25rem;padding-bottom:.25rem;display:flex;overflow-x:auto}._1kqAeW_tab{border:1px solid var(--g-line);background:var(--g-surface);height:2.25rem;color:var(--g-muted);border-radius:999px;flex:none;align-items:center;gap:.4rem;padding:0 1rem;font-size:.875rem;font-weight:600;display:inline-flex}._1kqAeW_tabOn{background:var(--g-ink);color:var(--g-bg);border-color:var(--g-ink)}._1kqAeW_tabCount{opacity:.7;font-variant-numeric:tabular-nums;font-size:.75rem}._1kqAeW_featured{color:inherit;margin-top:1.5rem;text-decoration:none}._1kqAeW_featured:hover{box-shadow:var(--tm-shadow-md)}._1kqAeW_kicker{color:var(--g-primary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}._1kqAeW_featured h2{margin:.4rem 0 0;font-size:1.5rem;line-height:1.3}._1kqAeW_featured p{color:var(--g-muted)}._1kqAeW_layout{gap:1.5rem;padding:1.5rem 0 3rem;display:grid}@media (min-width:1024px){._1kqAeW_layout{grid-template-columns:272px 1fr;align-items:start}}._1kqAeW_filters{border:1px solid var(--g-line);background:var(--g-surface);border-radius:14px;padding:.9rem 1rem 1rem}@media (min-width:1024px){._1kqAeW_filters{position:sticky;top:1rem}}._1kqAeW_filters h2{margin:0;font-size:1rem}._1kqAeW_filterHead{justify-content:space-between;align-items:center;gap:.5rem;display:flex}._1kqAeW_clear{color:var(--g-primary);font-size:.875rem;font-weight:600}._1kqAeW_group{border-top:1px solid var(--g-line);margin-top:.75rem;padding-top:.65rem}._1kqAeW_group summary{cursor:pointer;font-size:.875rem;font-weight:700}._1kqAeW_check{color:var(--g-muted);align-items:center;gap:.5rem;margin-top:.4rem;font-size:.875rem;display:flex}._1kqAeW_check span{flex:1}._1kqAeW_count{color:var(--g-subtle);font-variant-numeric:tabular-nums;font-size:.75rem}._1kqAeW_toolbar{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}._1kqAeW_search,._1kqAeW_sort{border:1px solid var(--g-line);background:var(--g-surface);height:2.5rem;color:var(--g-ink);font:inherit;border-radius:10px;padding:0 .75rem;font-size:.875rem}._1kqAeW_search{flex:1;min-width:12rem}._1kqAeW_apply{background:var(--g-primary);height:2.5rem;color:var(--g-on-primary);cursor:pointer;border:0;border-radius:10px;padding:0 .9rem;font-weight:700}._1kqAeW_resultCount{color:var(--g-muted);margin:0 0 .8rem;font-size:.875rem}._1kqAeW_grid{flex-direction:column;gap:1rem;display:flex}._1kqAeW_rowCard{border:1px solid var(--g-line);border-radius:var(--tm-radius-lg,14px);background:var(--g-surface);color:var(--g-ink);box-shadow:var(--tm-shadow-xs);flex-direction:column;gap:1rem;padding:1rem;display:flex;position:relative}._1kqAeW_rowCard:hover{box-shadow:var(--tm-shadow-md)}._1kqAeW_cardSponsored{border-color:var(--g-sponsored-border)}._1kqAeW_rowBody{flex-direction:column;gap:.35rem;min-width:0;display:flex}._1kqAeW_rowTopline{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}._1kqAeW_typeChip{z-index:1;border-radius:var(--tm-radius-sm,6px);background:var(--g-surface-2);max-width:100%;color:var(--g-muted);padding:.15rem .45rem;font-size:.75rem;font-weight:700;line-height:1.3;display:inline-flex;position:relative}._1kqAeW_cover{border-radius:var(--tm-radius-md,10px);background:var(--g-surface-2);flex:none;order:-1;width:100%;overflow:hidden}._1kqAeW_coverImg{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;display:block}@media (min-width:640px){._1kqAeW_rowCard{flex-direction:row;align-items:center;gap:1.25rem}._1kqAeW_rowBody{flex:60%;order:0}._1kqAeW_cover{flex:0 0 40%;order:0;width:40%;max-width:40%}}._1kqAeW_rowCard h3{margin:.35rem 0 0;font-size:1.05rem;line-height:1.4}._1kqAeW_rowCard h3 a:after{content:"";border-radius:inherit;position:absolute;inset:0}._1kqAeW_excerpt{color:var(--g-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.45rem 0 0;font-size:.875rem;display:-webkit-box;overflow:hidden}._1kqAeW_meta{color:var(--g-subtle);flex-wrap:wrap;align-items:center;gap:.45rem .75rem;margin-top:auto;padding-top:.75rem;font-size:.75rem;display:flex}._1kqAeW_badge,._1kqAeW_sponsored{z-index:1;white-space:nowrap;border-radius:999px;align-items:center;padding:.1rem .45rem;font-size:.75rem;font-weight:700;display:inline-flex;position:relative}._1kqAeW_verified{color:var(--g-verified);background:var(--g-verified-bg)}._1kqAeW_community_tested{color:var(--g-community);background:var(--g-community-bg)}._1kqAeW_reviewed{color:var(--g-reviewed);background:var(--g-reviewed-bg)}._1kqAeW_submitted{color:var(--g-submitted);background:var(--g-submitted-bg)}._1kqAeW_needs_update{color:var(--g-needs);background:var(--g-needs-bg)}._1kqAeW_deprecated{color:var(--g-deprecated);background:var(--g-deprecated-bg)}._1kqAeW_sponsored{color:var(--g-sponsored);background:var(--g-sponsored-bg);border:1px solid var(--g-sponsored-border)}._1kqAeW_pager{flex-direction:column;align-items:center;gap:.6rem;margin-top:1.5rem;display:flex}._1kqAeW_pages{align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}._1kqAeW_pageLink,._1kqAeW_pageCurrent,._1kqAeW_pageDisabled{border-radius:10px;place-items:center;width:2.5rem;height:2.5rem;font-size:.875rem;display:grid}._1kqAeW_pageCurrent{background:var(--g-primary);color:var(--g-on-primary);font-weight:700}._1kqAeW_pageLink:hover{background:var(--g-surface-2)}._1kqAeW_pageDisabled{color:var(--g-subtle)}._1kqAeW_range{color:var(--g-subtle);margin:0;font-size:.75rem}._1kqAeW_empty{border:1px dashed var(--g-line);background:var(--g-surface);text-align:center;border-radius:14px;padding:2.5rem 1rem}._1kqAeW_detailHero{background:var(--g-surface);border-bottom:1px solid var(--g-line);padding:1.5rem 0 2rem}._1kqAeW_detailHero h1{max-width:52rem;margin:.75rem 0 0;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.25}._1kqAeW_chips{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:1rem;display:flex}._1kqAeW_chip{border:1px solid var(--g-line);background:var(--g-surface-2);color:var(--g-muted);border-radius:8px;padding:.1rem .45rem;font-size:.75rem;font-weight:700}._1kqAeW_author{color:var(--g-ink);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}._1kqAeW_avatar{background:var(--g-surface-2);border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:.7rem;display:grid}._1kqAeW_detailGrid{gap:1.5rem;padding:1.5rem 0 2rem;display:grid}@media (min-width:1024px){._1kqAeW_detailGrid{grid-template-columns:200px minmax(0,1fr) 280px;align-items:start}}._1kqAeW_toc{font-size:.875rem}._1kqAeW_toc ol{margin:0;padding:0;list-style:none}._1kqAeW_toc a{color:var(--g-muted);border-left:2px solid #0000;padding:.35rem 0 .35rem .7rem;display:block}._1kqAeW_toc a:hover{color:var(--g-ink)}._1kqAeW_tocNested{padding-left:.7rem}@media (min-width:1024px){._1kqAeW_toc{position:sticky;top:1.25rem}._1kqAeW_tocMobile{display:none}}@media (max-width:1023px){._1kqAeW_tocDesktop{display:none}}._1kqAeW_article{min-width:0;max-width:720px}._1kqAeW_coverWide{border-radius:12px;height:16rem;position:relative}._1kqAeW_prose h2{margin:2rem 0 .6rem;scroll-margin-top:5rem;font-size:1.5rem}._1kqAeW_prose p,._1kqAeW_prose li{color:var(--g-muted);font-size:1.05rem;line-height:1.75}._1kqAeW_prose ul,._1kqAeW_prose ol{padding-left:1.2rem}._1kqAeW_prose a{color:var(--g-primary);text-underline-offset:3px;text-decoration:underline}._1kqAeW_tableWrap{margin:1rem 0;overflow-x:auto}._1kqAeW_prose table{border-collapse:collapse;width:100%;font-size:.95rem}._1kqAeW_prose th,._1kqAeW_prose td{border:1px solid var(--g-line);vertical-align:top;text-align:left;padding:.45rem .65rem}._1kqAeW_prose th{background:var(--g-surface-2);font-weight:650}._1kqAeW_faq ._1kqAeW_prose{margin-top:.55rem}._1kqAeW_callout{border-left:4px solid var(--g-primary);background:var(--g-soft);border-radius:10px;margin:1rem 0;padding:.8rem 1rem}._1kqAeW_calloutWarning{border-left-color:var(--g-needs);background:var(--g-needs-bg)}._1kqAeW_callout strong{margin-bottom:.25rem;display:block}._1kqAeW_code{color:#e2e8f0;background:#020617;border-radius:12px;margin:1rem 0;overflow:hidden}._1kqAeW_code header{color:#94a3b8;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem .8rem;font-size:.75rem;display:flex}._1kqAeW_code pre{white-space:pre-wrap;font-family:var(--tm-font-mono,ui-monospace, monospace);margin:0;padding:.9rem 1rem;font-size:.85rem;line-height:1.6}._1kqAeW_toolCard,._1kqAeW_sideCard,._1kqAeW_person,._1kqAeW_cta{border:1px solid var(--g-line);background:var(--g-surface);border-radius:14px}._1kqAeW_toolCard{align-items:center;gap:.8rem;margin:1rem 0;padding:.9rem;display:flex;position:relative}._1kqAeW_toolCard a:after,._1kqAeW_miniTool a:after{content:"";position:absolute;inset:0}._1kqAeW_mark{background:var(--g-primary);color:#fff;border-radius:10px;flex:none;place-items:center;width:2.6rem;height:2.6rem;font-weight:800;display:grid}._1kqAeW_toolCard p,._1kqAeW_miniTool p,._1kqAeW_sc p{color:var(--g-muted);margin:.15rem 0 0;font-size:.85rem}._1kqAeW_faq{border:1px solid var(--g-line);background:var(--g-surface);border-radius:12px;margin:.5rem 0;padding:.7rem .9rem}._1kqAeW_faq summary{cursor:pointer;font-weight:650}._1kqAeW_tags{flex-wrap:wrap;gap:.4rem;margin-top:1.5rem;display:flex}._1kqAeW_tag{background:var(--g-surface-2);color:var(--g-muted);border-radius:8px;padding:.15rem .45rem;font-size:.75rem}._1kqAeW_split{gap:.8rem;margin-top:1rem;display:grid}@media (min-width:700px){._1kqAeW_split{grid-template-columns:1fr 1fr}}._1kqAeW_sideCard,._1kqAeW_person,._1kqAeW_cta{padding:1rem}._1kqAeW_sideCard h2,._1kqAeW_person h2{margin:0 0 .6rem;font-size:1rem}._1kqAeW_miniTool,._1kqAeW_sc{border-top:1px solid var(--g-line);justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem 0;display:flex;position:relative}._1kqAeW_sc{background:var(--g-surface-2);border:0;border-radius:10px;margin-top:.45rem;padding:.5rem}._1kqAeW_sc a{font-family:var(--tm-font-mono,ui-monospace, monospace);font-size:.75rem;font-weight:700}._1kqAeW_cta{color:#fff;background:#020617;border:0}._1kqAeW_cta p{color:#cbd5e1;font-size:.875rem}._1kqAeW_cta a{background:var(--g-primary);color:var(--g-on-primary);border-radius:10px;margin-top:.8rem;padding:.55rem .8rem;font-weight:700;display:inline-flex}._1kqAeW_side{gap:.8rem;display:grid}@media (min-width:1024px){._1kqAeW_side{position:sticky;top:1.25rem}}._1kqAeW_related{border-top:1px solid var(--g-line);background:var(--g-surface);padding:2rem 0 2.5rem}._1kqAeW_related h2{margin:0 0 1rem;font-size:1.5rem}._1kqAeW_change{color:var(--g-muted);margin:0 0 .7rem;font-size:.875rem}._1kqAeW_change time{color:var(--g-subtle);font-size:.75rem;display:block}._1kqAeW_person li{gap:.6rem;margin:.5rem 0;list-style:none;display:flex}._1kqAeW_person ul{margin:0;padding:0}._1kqAeW_links a{color:var(--g-primary);font-size:.75rem}._1kqAeW_copy{z-index:1;border:1px solid var(--g-line);background:var(--g-surface);color:var(--g-ink);cursor:pointer;border-radius:8px;padding:.3rem .5rem;font-size:.75rem;font-weight:700;position:relative}._1kqAeW_code ._1kqAeW_copy{color:#e2e8f0;background:0 0;border-color:#fff3}
