@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{color:#202923;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--muted:#667069;--line:#e8ece9;--accent:#187a45;--accent-soft:#edf7f0;--mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;background:#fff;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}button:disabled{cursor:wait}svg{flex-shrink:0}[hidden]{display:none!important}:focus-visible{outline-offset:4px;outline:3px solid #4c9e68}::selection{background:#d4ebdc}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:20;background:var(--accent);color:#fff;border-radius:6px;padding:12px 18px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid var(--line);height:76px}.header-inner,.page-shell{width:min(1280px,100% - 112px);margin-inline:auto}.header-inner{justify-content:space-between;align-items:center;gap:20px;height:100%;display:flex}.brand{letter-spacing:-.045em;align-items:center;gap:10px;font-size:1.3rem;font-weight:700;display:inline-flex}.brand-mark{background:var(--accent);color:#fff;border-radius:8px;place-items:center;width:32px;height:32px;padding-bottom:2px;font-family:Georgia,serif;font-size:1.65rem;line-height:1;display:grid}.brand-muted{color:var(--accent)}.header-links{align-items:center;gap:27px;font-size:.875rem;font-weight:500;display:flex}.header-links a{justify-content:center;align-items:center;gap:7px;min-height:40px;display:inline-flex}.language-link,.github-link{color:#4c5750}.header-links .contribute-link{border:1px solid #d8e0da;border-radius:6px;gap:6px;padding:0 13px}.intro{justify-content:space-between;align-items:center;gap:40px;padding:48px 0 42px;display:flex}.intro-copy{max-width:670px}.eyebrow{font-family:var(--mono);letter-spacing:.075em;color:var(--accent);align-items:center;gap:8px;margin:0 0 15px;font-size:.75rem;font-weight:500;display:flex}.status-dot{background:#379957;border-radius:50%;flex:0 0 6px;width:6px;height:6px}h1{letter-spacing:-.055em;margin:0;font-size:clamp(2rem,3.7vw,2.8rem);font-weight:650;line-height:1.13}.intro-description{max-width:630px;color:var(--muted);margin:17px 0 0;font-size:1rem;line-height:1.65}.intro-stats{flex-shrink:0;align-items:center;gap:30px;padding-right:6px;display:flex}.intro-stats>div{flex-direction:column;gap:5px;display:flex}.intro-stats strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:1.85rem;font-weight:550;line-height:1.1}.intro-stats div>span{color:var(--muted);font-size:.81rem}.stat-separator{border-left:1px solid var(--line);height:36px}.directory-layout{grid-template-columns:229px minmax(0,1fr);align-items:start;gap:40px;display:grid}.sidebar{scrollbar-width:thin;scrollbar-color:#dfe6e1 transparent;max-height:calc(100vh - 48px);padding-bottom:20px;padding-right:12px;position:sticky;top:24px;overflow-y:auto}.category-all,.category-link,.category-group-heading{border-radius:5px;justify-content:space-between;align-items:center;gap:8px;display:flex}.category-all{margin-bottom:25px;padding:12px 11px;font-size:.875rem;font-weight:550}.category-all>span:first-child{align-items:center;gap:9px;display:inline-flex}.category-count{font-variant-numeric:tabular-nums;color:#68766c;font-size:.75rem}.category-all[aria-current],.category-link[aria-current]{color:var(--accent);background:var(--accent-soft)}.category-all[aria-current] .category-count,.category-link[aria-current] .category-count{color:var(--accent)}.category-group{margin-bottom:22px}.category-group-heading{color:#47534b;letter-spacing:.065em;text-transform:uppercase;padding:5px 11px 10px;font-size:.75rem;font-weight:650}.category-group-heading>span:last-child{letter-spacing:0;color:#68766c;font-size:.75rem;font-weight:400}.category-group-heading[aria-current]{color:var(--accent)}.category-link{color:#667269;min-height:35px;padding:8px 11px;font-size:.84rem;line-height:1.4}.category-link>span:first-child{min-width:0}.sidebar-footer{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;padding:18px 11px 0;font-size:.75rem;line-height:1.5;display:flex}.results{min-width:0;scroll-margin-top:24px}.search-box{color:#68746c;background:#fcfdfc;border:1px solid #dce3de;border-radius:7px;align-items:center;gap:12px;height:52px;padding:0 15px;display:flex;box-shadow:0 1px 2px #152f2005}.search-box:focus-within{border-color:#479666;box-shadow:0 0 0 3px #187a4510}.search-box input{color:#26382c;background:0 0;border:0;outline:none;width:100%;min-width:0;height:100%;padding:0;font-size:1rem}.search-box input::placeholder{color:#7b857f}.search-box input::-webkit-search-cancel-button{display:none}.icon-button{background:0 0;border:0;border-radius:4px;place-items:center;width:32px;height:32px;padding:0;display:grid}.results-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:14px;padding:26px 0 15px;display:flex}.results-header h2{margin:0;font-size:.92rem;font-weight:600;line-height:1.5}#result-count{color:#68746c;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.78rem}.resource{border-bottom:1px solid var(--line);padding:22px 0 24px;scroll-margin-top:20px}.resource-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.resource h3{min-width:0;font-family:var(--mono);letter-spacing:-.025em;margin:0;font-size:.98rem;font-weight:500;line-height:1.5}.resource h3 a{overflow-wrap:anywhere}.resource h3 svg{vertical-align:-2px;color:#95a098;margin-left:7px;display:inline-block}.resource-type{letter-spacing:.015em;color:#69766d;flex-shrink:0;padding-top:4px;font-size:.75rem}.resource-description{color:#5e6a62;overflow-wrap:anywhere;margin-top:9px;font-size:.96rem;line-height:1.65}.resource-description p{margin:0}.description-details summary{list-style:none}.description-details summary::-webkit-details-marker{display:none}.description-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.details-toggle{color:#718477;align-items:center;gap:4px;margin-top:4px;font-size:.75rem;display:inline-flex}.when-open,.description-details[open] .description-preview,.description-details[open] .when-closed{display:none}.description-details[open] .when-open{display:inline}.description-details[open] .details-toggle{margin:0 0 5px}.description-details[open] .details-toggle svg{transform:rotate(90deg)}.resource-categories{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.resource-tag{color:#687a6d;background:#f1f4f2;border-radius:4px;padding:3px 7px;font-size:.75rem;line-height:1.5}.install-command{background:#f9faf9;border:1px solid #e9edea;border-radius:5px;align-items:center;gap:10px;min-height:39px;margin-top:14px;padding:0 4px 0 11px;display:flex}.command-prompt{font-family:var(--mono);color:#8c9990;user-select:none;font-size:.77rem}.install-command code{white-space:nowrap;min-width:0;font-family:var(--mono);color:#4a5f50;scrollbar-width:thin;flex:1;padding:10px 0;font-size:.75rem;line-height:1.45;overflow-x:auto}.copy-button{color:#6a7b6e;background:0 0;border:0;border-left:1px solid #e1e7e3;flex-shrink:0;justify-content:center;align-items:center;gap:6px;min-width:66px;min-height:31px;padding:0 7px;font-size:.75rem;display:inline-flex}.copy-button[data-copied]{color:var(--accent)}.install-instructions{color:var(--accent);align-items:center;gap:4px;margin-top:14px;font-size:.84rem;display:inline-flex}.empty-state{text-align:center;color:var(--muted);padding:80px 24px}.empty-state>svg{color:#9caaa0}.empty-state h3{color:#33483b;margin:18px 0 10px;font-size:1.15rem}.empty-state p{font-size:.94rem}.empty-state button{color:var(--accent);background:var(--accent-soft);border:1px solid #cbdccf;border-radius:5px;margin-top:8px;padding:10px 15px}.mobile-filter{display:none}.no-script{background:var(--accent-soft);color:var(--accent);padding:12px;font-size:.88rem;line-height:1.6}.site-footer{border-top:1px solid var(--line);justify-content:space-between;gap:28px;margin-top:60px;padding:30px 0 40px;display:flex}.footer-brand{letter-spacing:-.04em;font-size:1rem;font-weight:650}.footer-brand span{color:var(--accent)}.site-footer p{color:#68746c;margin:8px 0 0;font-size:.77rem;line-height:1.5}.footer-links{color:#6b776f;align-items:flex-start;gap:22px;padding-top:6px;font-size:.76rem;display:flex}.footer-links a{align-items:center;gap:3px;display:inline-flex}.copy-status{z-index:10;color:#fff;background:#243e2e;border-radius:6px;width:max-content;max-width:calc(100% - 32px);font-size:.875rem;line-height:1.5;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #142e2020}.copy-status:not(:empty){padding:11px 17px}@media (hover:hover){.header-links a:hover,.footer-links a:hover{color:var(--accent)}.category-link:hover,.category-group-heading:hover{color:var(--accent);background:#f5f8f5}.resource h3 a:hover,.resource h3 a:hover svg{color:var(--accent)}.resource-tag:hover{color:var(--accent);background:#e6f1e9}.copy-button:hover{color:var(--accent);background:#edf4ef}.icon-button:hover{background:#eff4f0}}@media (width>=1500px){.directory-layout{grid-template-columns:245px minmax(0,1fr);gap:60px}}@media (width<=1100px){.header-inner,.page-shell{width:calc(100% - 64px)}.directory-layout{grid-template-columns:208px minmax(0,1fr);gap:28px}.intro-stats{gap:20px}.intro-copy{max-width:560px}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:14px}}@media (width<=760px){.site-header{height:66px}.header-inner,.page-shell{width:calc(100% - 40px)}.brand{gap:8px;font-size:1.15rem}.brand-mark{width:29px;height:29px;font-size:1.5rem}.header-links{gap:16px;font-size:.8rem}.header-links a{min-height:44px}.header-links .github-link span{display:none}.header-links .github-link{min-width:32px}.header-links .contribute-link{display:none}.intro{align-items:flex-start;gap:24px;padding:32px 0 28px}.eyebrow{margin-bottom:12px;font-size:.75rem}h1{letter-spacing:-.05em;font-size:2.1rem}.intro-description{margin-top:13px;font-size:.94rem;line-height:1.65}.intro-stats{display:none}.directory-layout{display:block}.sidebar{display:none}.search-box{gap:10px;height:50px;padding-inline:12px}.search-box input{font-size:1rem}.mobile-filter{grid-template-columns:minmax(0,1fr);gap:7px;margin-top:16px;display:grid}.mobile-filter label{color:var(--muted);font-size:.77rem}.mobile-filter select{color:#47584c;background:#fff;border:1px solid #dce3de;border-radius:6px;width:100%;min-width:0;min-height:44px;padding:9px 10px;font-size:1rem}.results-header{gap:8px;padding-top:24px;padding-bottom:13px}.results-header h2{font-size:.875rem}#result-count{font-size:.75rem}.resource{padding:21px 0 23px}.resource-heading{gap:10px}.resource h3{font-size:.92rem}.resource-type{font-size:.75rem}.resource-description{font-size:.94rem}.resource-tag{min-height:30px;padding:6px 8px;font-size:.75rem}.install-command{gap:7px;padding-left:9px}.install-command code{padding:13px 0;font-size:.75rem}.copy-button{min-width:44px;min-height:40px}.copy-button [data-copy-label]{display:none}.copy-button[data-copied] [data-copy-label]{display:inline}.copy-button[data-copied] svg{display:none}.site-footer{flex-direction:column;gap:20px;margin-top:40px;padding:25px 0 30px}.footer-links{justify-content:flex-start;gap:18px}.footer-links a{min-height:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
