@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#20241f;background:#f5f3ec;font-synthesis:none;--accent:#bd4d29;--line:#d9d9ce}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:1px solid var(--line);background:white;color:#20241f;padding:12px 18px;border-radius:6px;text-decoration:none;display:inline-block}button:hover,.button:hover{border-color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.primary{background:var(--accent);border-color:var(--accent);color:white}.shell{width:min(1180px,calc(100% - 48px));margin:auto}header{border-bottom:1px solid var(--line);padding:22px 0}nav{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.brand{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;text-decoration:none}.brand span{color:var(--accent)}.eyebrow{letter-spacing:.15em;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--accent)}.hero{padding:72px 0 38px}h1,h2,h3{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(34px,5.7vw,68px);line-height:1.05;max-width:920px;margin:16px 0 24px;overflow-wrap:anywhere}h2{font-size:30px}h3{font-size:21px;margin:10px 0}.lead{font-size:18px;line-height:1.65;max-width:750px;color:#53584f}.stats{display:flex;gap:40px;flex-wrap:wrap;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats strong{font-family:'Space Grotesk',sans-serif;font-size:32px;display:block}.stats span{font-size:13px;color:#53584f}.toolbar{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}label{display:block;font-size:13px}input,select,textarea{display:block;border:1px solid #b9bcb1;background:#fff;padding:12px;border-radius:5px;color:#20241f;margin-top:6px;max-width:100%}input{width:360px}select{width:240px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fffdfa;border:1px solid var(--line);border-radius:9px;padding:24px;display:flex;flex-direction:column;min-height:260px}.card h3{overflow-wrap:anywhere}.card p{font-size:14px;line-height:1.6;color:#53584f;flex:1}.tag{font:12px 'DM Sans',sans-serif;display:inline-block;background:#e9ecdf;border-radius:4px;padding:5px 8px;letter-spacing:.02em}.pass{color:#216946;background:#e6f1e8}.links{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.card .links{font-size:13px;margin-top:15px}.block{margin:34px 0;padding:28px;background:#fffdfa;border:1px solid var(--line);border-radius:9px;overflow:hidden}.block p{line-height:1.65}.meta{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;font-size:14px;margin:24px 0}.meta dt{color:#656b61;margin-bottom:7px}.meta dd{margin:0;overflow-wrap:anywhere}pre{background:#151d1b;color:#d5e5d8;padding:22px;border-radius:7px;overflow:auto;font:13px/1.7 monospace;white-space:pre-wrap;overflow-wrap:anywhere}code{font-size:.9em}details{margin:12px 0}summary{cursor:pointer;line-height:1.6;padding:12px 0;font-weight:600}.small{font-size:13px;color:#656b61}.notice{border-left:3px solid var(--accent);padding-left:18px;line-height:1.6}.empty{padding:35px 0}footer{margin-top:64px;padding:28px 0;border-top:1px solid var(--line);font-size:13px;color:#656b61}textarea{width:100%;min-height:220px;font:13px/1.6 monospace}.result{min-height:100px}.demo-output{min-height:80px}.status{font-size:14px;line-height:1.6}img{max-width:100%;height:auto}button:disabled{cursor:wait;opacity:.6}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.hero{padding-top:45px}}@media(max-width:560px){.grid,.meta{grid-template-columns:1fr}.shell{width:calc(100% - 32px)}.card,.block{padding:20px}.stats{gap:24px}.toolbar label,input,select{width:100%}.hero{padding-top:32px}}
