:root{--text: #171b21;--muted: #5b6470;--accent: #1e5eff;--accent-dark: #1348cc;--border: #d9dde3;--bg-subtle: #f4f6f9;--max-width: 68rem}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);line-height:1.6;-webkit-text-size-adjust:100%}body{margin:0}a{color:var(--accent)}a:hover{color:var(--accent-dark)}h1,h2,h3{line-height:1.25}h1{font-size:clamp(1.7rem,4vw,2.4rem);margin:0 0 .5rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.25rem}.site-header{border-bottom:1px solid var(--border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:.9rem;padding-bottom:.9rem;gap:1rem}.site-logo{font-weight:800;font-size:1.15rem;color:var(--text);text-decoration:none;letter-spacing:-.02em}.site-logo span{color:var(--accent)}.site-nav{display:flex;gap:1.25rem}.site-nav a{color:var(--text);text-decoration:none;font-weight:500;font-size:.95rem}.site-nav a:hover{color:var(--accent)}main{padding:2.5rem 0 4rem}.page-intro{color:var(--muted);font-size:1.05rem;max-width:44rem;margin:0 0 2rem}.hero{margin-bottom:1rem}.hero .page-intro{margin-bottom:1.25rem}.hero-badges{display:flex;flex-wrap:wrap;gap:.5rem .75rem;list-style:none;padding:0;margin:0 0 1.5rem}.hero-badges li{font-size:.8rem;font-weight:600;color:var(--muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:999px;padding:.25rem .75rem}.crumbs{font-size:.8rem;margin-bottom:1.25rem}.crumbs ol{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:0;color:var(--muted)}.crumbs li:not(:last-child):after{content:"›";margin-left:.4rem;color:var(--border)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--accent);text-decoration:underline}.crumbs [aria-current=page]{color:var(--text);font-weight:500}.toolgrid-search{max-width:30rem;margin:1.5rem 0 0}.toolgrid-search input{width:100%;padding:.65rem .9rem;font:inherit;border:1px solid var(--border);border-radius:10px}.toolgrid-search input:focus{outline:2px solid var(--accent);outline-offset:1px}.toolgrid-count{color:var(--muted);font-weight:400;font-size:.95rem}.tool-card[hidden]{display:none}#toolgrid-empty{border:1px dashed var(--border);border-radius:10px;padding:1rem;color:var(--muted);margin-top:1.5rem}.home-more{margin-top:1rem;font-size:.95rem}.home-lede{color:var(--muted);max-width:46rem;margin:.25rem 0 0}.home-section{margin-top:1rem}.home-cols{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:720px){.home-cols{grid-template-columns:1fr 1fr 1fr}}.home-cols h3{margin:0 0 .4rem;font-size:1.05rem}.home-cols p{margin:0;color:var(--muted);font-size:.95rem}.site-footer{border-top:1px solid var(--border);padding:1.5rem 0 2rem;color:var(--muted);font-size:.875rem}.site-footer .container{display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between}.site-footer a{color:var(--muted)}.card-grid{display:grid;grid-template-columns:1fr;gap:1rem;padding:0;margin:1.5rem 0;list-style:none}@media(min-width:640px){.card-grid{grid-template-columns:1fr 1fr}}.card{position:relative;border:1px solid var(--border);border-radius:12px;padding:1.25rem 3rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.4rem;transition:border-color .15s ease,box-shadow .15s ease}.card:after{content:"→";position:absolute;top:1.15rem;right:1.25rem;color:var(--muted);font-size:1.05rem;line-height:1.4;transition:transform .15s ease,color .15s ease}.card:hover{border-color:var(--accent);box-shadow:0 4px 16px #1e5eff1a}.card:hover:after{transform:translate(4px);color:var(--accent)}.card h3{margin:0;font-size:1.1rem}.card h3 a{text-decoration:none;color:var(--text)}.card h3 a:after{content:"";position:absolute;inset:0;border-radius:inherit}.card:hover h3 a{color:var(--accent)}.card h3 a:focus-visible{outline:none}.card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.card p{margin:0;color:var(--muted);font-size:.925rem}.section-title{font-size:1.4rem;margin:3rem 0 .5rem}.tool-switch{display:flex;flex-wrap:wrap;gap:.4rem;margin:-.75rem 0 1.5rem}.tool-pill{font-size:.8rem;font-weight:600;padding:.3rem .75rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);text-decoration:none;background:#fff;white-space:nowrap}a.tool-pill:hover{color:var(--accent);border-color:var(--accent)}.tool-pill-current,.tool-pill-current:hover{background:var(--accent);border-color:var(--accent);color:#fff}.tool-meta{font-size:.8rem;color:var(--muted);margin:.75rem 0 0}.faq{max-width:44rem}.faq h3{margin:1.5rem 0 .35rem;font-size:1.05rem}.faq p{margin:0;color:var(--muted)}.embed-block{max-width:44rem;margin-top:1rem}.embed-block pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:10px;padding:1rem;overflow-x:auto;font-size:.8rem;line-height:1.5}.prose{max-width:44rem}.prose img{max-width:100%;height:auto}.prose pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:10px;padding:1rem;overflow-x:auto;font-size:.875rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.archive-search-wrap{margin:0 0 2rem;max-width:30rem}.archive-search-wrap input{width:100%;padding:.65rem .9rem;font:inherit;border:1px solid var(--border);border-radius:10px}.archive-search-wrap input:focus{outline:2px solid var(--accent);outline-offset:1px}.archive-meta{color:var(--muted);font-size:.85rem;margin:.4rem 0 0}.archive-group h2{font-size:1.15rem;margin:2rem 0 .5rem;text-transform:capitalize}.archive-group-count{color:var(--muted);font-weight:400;font-size:.9rem}.archive-list{list-style:none;padding:0;margin:0}.archive-item{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;border-bottom:1px solid var(--bg-subtle)}.archive-item[hidden]{display:none}.archive-item a{text-decoration:none}.archive-item a:hover{text-decoration:underline}.archive-date{color:var(--muted);font-size:.8rem;white-space:nowrap}.prose table{border-collapse:collapse;display:block;overflow-x:auto;font-size:.9rem;margin:1.25rem 0}.prose th,.prose td{border:1px solid var(--border);padding:.45rem .7rem;text-align:left}.prose thead th{background:var(--bg-subtle)}.prose blockquote{border-left:3px solid var(--border);margin-left:0;padding-left:1rem;color:var(--muted)}.article-meta{color:var(--muted);font-size:.875rem;margin:0 0 2rem}
