@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/public-sans-vietnamese-wght-normal.CtlIRbEm.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/public-sans-latin-ext-wght-normal.MQgHevqp.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/public-sans-latin-wght-normal.DdeTHZLK.woff2) format("woff2-variations");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}:root{--bg: #fafaf9;--bg-raised: #ffffff;--ink: #1c1917;--ink-text: #fafaf9;--text: #1c1917;--text-muted: #57534e;--line: #e7e5e4;--accent: #c2410c;--accent-dark: #9a3412;--accent-tint: #fff7ed;--accent-line: #fdba74;--verified: #166534;--verified-bg: #f0fdf4;--radius: 10px;--space: 1rem;--content-width: 66rem}*{box-sizing:border-box}[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible,.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}html{font-family:Public Sans Variable,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-size:1rem}h1,h2,h3{line-height:1.2;text-wrap:balance;letter-spacing:-.015em}h1{font-size:clamp(1.75rem,4.5vw,2.5rem);font-weight:750;margin:1.75rem 0 .75rem}h2{font-size:clamp(1.3rem,3vw,1.625rem);font-weight:700;margin-top:3rem}h3{font-weight:650}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent-dark)}.skip-link{position:absolute;left:-9999px;background:var(--bg-raised);padding:.5rem 1rem;z-index:10}.skip-link:focus{left:.5rem;top:.5rem}main{max-width:var(--content-width);margin:0 auto;padding:0 var(--space) 6rem}.capsule{background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--radius);padding:1rem 1.25rem;margin:1.25rem 0;font-size:1.0625rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:1.5rem 0 .5rem}.stats>div{background:var(--bg-raised);padding:1rem 1.25rem}.stats strong{display:block;font-size:clamp(1.375rem,3vw,1.75rem);font-weight:750;letter-spacing:-.02em}.stats span{font-size:.875rem;color:var(--text-muted)}@media(max-width:560px){.stats{grid-template-columns:1fr}}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.75rem;padding:0;margin:1.25rem 0;list-style:none}.tile{display:block;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.125rem;text-decoration:none;color:var(--text)}.tile:hover{border-color:var(--accent);color:var(--text)}.tile strong{color:var(--accent);font-weight:650}.tile:hover strong{color:var(--accent-dark)}.tile .muted{display:block;font-size:.875rem;margin-top:.125rem}.card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.375rem;margin:1rem 0}.card h3{margin:0 0 .25rem;font-size:1.125rem}.card h3 a{text-decoration:none}.card h3 a:hover{text-decoration:underline}.card-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line)}.card-footer a{text-decoration:none}.card-footer a:not(.badge){display:inline-flex;align-items:center;min-height:36px;padding:0 .875rem;border:1px solid var(--line);border-radius:999px;background:var(--bg-raised);font-size:.875rem;font-weight:550}.card-footer a:not(.badge):hover{border-color:var(--accent);background:var(--accent-tint)}.card-footer .badge{display:inline-flex;align-items:center;min-height:36px;padding:0 .875rem;font-size:.875rem}.badge{display:inline-block;font-size:.8125rem;font-weight:550;padding:.1875rem .625rem;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.badge-verified{color:var(--verified);background:var(--verified-bg);border-color:#bbf7d0}.badge-featured{color:var(--accent-dark);background:var(--accent-tint);border-color:var(--accent-line)}.chips{display:flex;flex-wrap:wrap;gap:.375rem;padding:0;margin:.625rem 0;list-style:none}.chips li{font-size:.8125rem;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:.1875rem .75rem;color:var(--text-muted)}.chips a{text-decoration:none}address{font-style:normal}.muted{color:var(--text-muted)}.updated{font-size:.875rem;color:var(--text-muted)}.btn,button,input,select,textarea{font:inherit}.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:600;border:0;border-radius:999px;padding:.75rem 1.5rem;min-height:44px;text-decoration:none;cursor:pointer}.btn:hover{background:var(--accent-dark);color:#fff}.btn:active{transform:translateY(1px)}label{display:block;font-weight:600;font-size:.9375rem;margin:1rem 0 .375rem}input,select,textarea{width:100%;min-height:44px;padding:.5rem .875rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}textarea{min-height:6rem}details{border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0;background:var(--bg-raised)}details summary{padding:.875rem 1.125rem;cursor:pointer;font-weight:600;min-height:44px}details summary:hover{color:var(--accent-dark)}details>:not(summary){padding:0 1.125rem;margin-bottom:1rem}details table{display:block;overflow:auto;max-height:24rem}details table th{position:sticky;top:0;background:var(--bg-raised)}@media(max-width:640px){details table thead{display:none}details table tbody{display:block}details table tr{display:flex;flex-wrap:wrap;gap:0 .875rem;padding:.625rem 0;border-bottom:1px solid var(--line)}details table td{display:block;border:0;padding:0}details table td:first-child{flex-basis:100%}details table td:not(:first-child){font-size:.875rem;color:var(--text-muted)}details table td:nth-child(3):not(:empty):before{content:"License "}details table td:empty{display:none}}table{border-collapse:collapse;width:100%;font-size:.9375rem}th{font-size:.8125rem;color:var(--text-muted);font-weight:600}th,td{text-align:left;padding:.5rem .625rem;border-bottom:1px solid var(--line)}.site-header{background:var(--ink)}.site-header nav{max-width:var(--content-width);margin:0 auto;padding:.875rem var(--space);display:flex;flex-wrap:wrap;gap:.375rem 1.375rem;align-items:center}.site-header a{color:var(--ink-text);text-decoration:none;font-size:.9375rem;opacity:.85}.site-header a:hover{opacity:1;color:var(--ink-text)}.site-header .brand{font-weight:700;font-size:1.0625rem;margin-right:auto;opacity:1}.site-header a[aria-current=page]{opacity:1;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:6px}.site-footer{background:var(--ink);color:var(--ink-text);margin-top:4rem}.site-footer>div{max-width:var(--content-width);margin:0 auto;padding:2rem var(--space);font-size:.875rem}.site-footer p{opacity:.75}.site-footer a{color:var(--ink-text)}.fab{position:fixed;right:1rem;bottom:1rem;z-index:5;box-shadow:0 4px 14px #1c19174d}.quote-popover{position:fixed;inset:auto 1rem 4.75rem auto;width:min(26rem,calc(100vw - 2rem));max-height:min(80dvh,42rem);overflow:auto;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px #1c191740;background:var(--bg-raised)}.quote-popover::backdrop{background:#1c19174d}.quote-popover .card{margin:0;border:0}.popover-close{position:absolute;top:.25rem;right:.25rem;min-width:44px;min-height:44px;background:none;border:0;font-size:1.5rem;line-height:1;color:var(--text-muted);cursor:pointer}.popover-close:hover{color:var(--text)}#quote{scroll-margin-top:1rem}.breadcrumbs{font-size:.875rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.25rem;color:var(--text-muted)}.breadcrumbs li+li:before{content:"›";margin-right:.25rem;color:var(--text-muted)}.breadcrumbs a{color:var(--text-muted)}.breadcrumbs a:hover{color:var(--accent-dark)}
