:root{color-scheme:dark;--bg:#181818;--surface:#202020;--ink:#ededed;--muted:#a3a3a3;--line:#343434;--accent:#e5e5e5;--sans:"DM Sans",sans-serif;--display:"Manrope",sans-serif;--mono:"IBM Plex Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:disabled{cursor:default}::selection{background:var(--accent);color:#191919}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.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}[hidden]{display:none!important}.page-shell{max-width:1280px;padding:0 48px;margin:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:10;padding:12px 20px;background:var(--accent);color:var(--bg);border-radius:8px}.skip-link:focus{top:12px}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font:700 19px/1.4 var(--display);letter-spacing:-.6px}.brand img{width:38px;height:38px}.brand-divider{color:#5e5e5e;margin:0 14px;font-weight:400}.brand-product{font-weight:500;color:#bebebe}.header-nav{display:flex;gap:29px;align-items:center;font-size:14px}.header-nav a{display:flex;gap:7px;align-items:center;color:#c1c1c1;transition:color .18s}.header-nav a:hover{color:var(--accent)}.header-nav svg{width:14px;height:14px}.github-nav{border:1px solid #484848;padding:8px 15px;border-radius:7px}.hero{display:grid;grid-template-columns:1.06fr .94fr;gap:62px;align-items:center;padding:87px 0 80px}.eyebrow{font:500 11px/1.5 var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin:0 0 22px;display:flex;gap:9px;align-items:center}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #ffffff10}.hero h1{font:600 clamp(52px,5.4vw,72px)/1.08 var(--display);letter-spacing:-4px;margin:0 0 26px}.hero h1 span{color:var(--accent)}.hero h1:focus{outline:none}.hero-description{color:#aaaaaa;max-width:405px;font-size:16px;line-height:1.8;margin:0 0 28px}.primary-link{display:inline-flex;align-items:center;gap:24px;background:var(--accent);color:#1c1c1c;border-radius:7px;padding:12px 19px;font-size:14px;font-weight:650;transition:background .2s}.primary-link:hover{background:#ffffff}.primary-link svg{width:18px;height:18px}.hero-details{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11px;color:#939393;margin-top:21px}.detail-dot{width:3px;height:3px;background:#7e7e7e;border-radius:50%}.code-scene{position:relative;min-width:0;padding-top:17px}.scene-grid{position:absolute;inset:-35px -15px 0;z-index:-1;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:30px 30px;mask-image:radial-gradient(ellipse at center,black 15%,transparent 70%)}.code-window{border:1px solid #4c4c4c;background:#1c1c1c;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0b0b0b3b;transform:rotate(-2deg)}.code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #393939;background:#252525;font-size:12px;color:#d1d1d1}.code-toolbar>span:first-child{display:flex;align-items:center;gap:9px}.file-dot{width:7px;height:7px;border:1px solid #b0b0b0;transform:rotate(45deg)}.language-tag{font:10px var(--mono);color:#929292;letter-spacing:1px}.code-window pre{margin:0;padding:29px 0 29px;font:12px/2.1 var(--mono);color:#d6d6d6;overflow-x:auto}.code-line{padding-right:20px}.line-number{display:inline-block;width:43px;text-align:center;color:#545454;font-size:10px;user-select:none}.syntax-purple{color:#c4a2e6}.syntax-green{color:#e5e5e5}.syntax-blue{color:#8cbadb}.syntax-orange{color:#d8bc86}.syntax-comment{color:#828282}.code-reference{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-top:1px solid #393939;background:#222222;font-size:13px}.code-reference>span{display:grid;gap:3px}.code-reference-label{font-size:10px;color:#969696}.path-divider{color:#5c5c5c;margin:0 7px}.code-reference svg{color:var(--accent);width:17px;height:17px}.code-reference:hover{background:#2b2b2b}.scene-caption{font:10px var(--mono);color:#7c7c7c;display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:28px 16px 0}.caption-line{height:1px;width:32px;background:#4f4f4f}.catalog{padding-top:37px;border-top:1px solid var(--line)}.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:31px}.catalog-heading .eyebrow{font-size:10px;margin-bottom:9px;letter-spacing:1.5px}.catalog h2{font:600 30px/1.3 var(--display);letter-spacing:-1.3px;margin:0}.search-box{display:flex;align-items:center;gap:11px;border:1px solid #434343;border-radius:8px;background:#202020;padding:11px 12px 11px 14px;min-width:300px;cursor:text}.search-box:focus-within{border-color:var(--accent)}.search-box svg{color:#a1a1a1;width:17px;height:17px}.search-box input{min-width:0;width:100%;border:0;background:none;color:var(--ink);font-size:13px;outline:none}.search-box input::placeholder{color:#929292}.search-box input::-webkit-search-cancel-button{cursor:pointer}.search-box kbd{display:grid;place-items:center;border:1px solid #434343;border-radius:4px;width:21px;height:22px;font:11px var(--mono);color:#959595;flex-shrink:0}.catalog-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:23px}.filters{display:flex;flex-wrap:wrap;gap:6px}.filter{border:1px solid transparent;border-radius:6px;background:none;color:#a4a4a4;font-size:12px;display:flex;align-items:center;gap:8px;padding:7px 12px;transition:background .18s,color .18s,border-color .18s}.filter span{font:10px var(--mono);color:#848484}.filter:hover{background:#272727;color:#e3e3e3}.filter.is-active{border-color:#545454;background:#333333;color:#eeeeee}.filter.is-active span{color:#bebebe}.result-count{font:11px var(--mono);color:#8b8b8b;margin:0;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.project-card{min-width:0;display:flex;flex-direction:column;padding:24px 24px 19px;border:1px solid #3d3d3d;border-radius:10px;background:var(--surface);transition:background .2s,border-color .2s}.project-card:hover,.project-card:focus-within{border-color:#6f6f6f;background:#262626}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.project-symbol{width:41px;height:41px;border:1px solid #555555;border-radius:9px;display:flex;justify-content:center;align-items:center;position:relative;font:500 16px var(--mono);color:#cccccc;background:#303030}.symbol-dot{position:absolute;right:-3px;bottom:-3px;width:7px;height:7px;border-radius:50%;background:currentColor;border:2px solid var(--surface)}.tone-frameworks{color:#bababa;border-color:#4b4b4b;background:#2c2c2c}.tone-plugins{color:#c1c1c1;border-color:#515151;background:#2f2f2f}.tone-tools{color:#b8b8b8;border-color:#4c4c4c;background:#2b2b2b}.category-label{font:10px var(--mono);color:#939393}.project-card h3{margin:0 0 9px;font:650 19px/1.4 var(--display);letter-spacing:-.65px;overflow-wrap:anywhere}.project-title{transition:color .18s}.project-title:hover{color:var(--accent)}.project-description{font-size:13px;line-height:1.75;color:#a2a2a2;margin:0 0 23px;min-height:69px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:15px;border-top:1px solid #383838}.reference-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:550;color:#cecece;white-space:nowrap}.reference-link svg{width:15px;height:15px;transition:transform .2s}.reference-link:hover{color:var(--accent)}.reference-link:hover svg{transform:translateX(3px)}.project-sources{display:flex;gap:5px}.source-link{display:grid;place-items:center;width:28px;height:28px;border-radius:5px;opacity:.75;transition:opacity .18s,background .18s}.source-link:hover{opacity:1;background:#424242}.source-link span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.source-link img{object-fit:contain;width:15px;height:15px}.empty-state{text-align:center;padding:64px 20px;border:1px dashed #505050;border-radius:10px;background:#1d1d1d}.empty-state>svg{width:30px;height:30px;color:var(--accent)}.empty-state h3{font:600 20px var(--display);margin:16px 0 6px}.empty-state p{color:var(--muted);font-size:14px;margin:0 0 18px}.reset-filters{border:1px solid #606060;background:#373737;color:#e7e7e7;border-radius:6px;padding:8px 16px;font-size:13px}.guide-banner{display:flex;gap:19px;align-items:center;padding:26px 29px;margin-top:37px;border:1px solid #464646;border-radius:10px;background:#202020}.guide-symbol{width:44px;height:44px;display:grid;place-items:center;color:var(--accent);flex-shrink:0}.guide-symbol svg{width:29px;height:29px}.guide-banner h2{font:550 17px/1.4 var(--display);letter-spacing:-.4px;margin:0 0 5px}.guide-banner p{font-size:13px;color:#a6a6a6;margin:0}.guide-action{display:flex;align-items:center;gap:12px;font-size:13px;white-space:nowrap;margin-left:auto;color:#d5d5d5}.guide-action:hover{color:var(--accent)}.guide-action svg{width:15px;height:15px}.site-footer{margin-top:65px;border-top:1px solid var(--line);padding:28px 0}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font-size:14px;color:#949494;display:flex;align-items:center;gap:5px}.footer-brand span{color:#dcdcdc}.footer-brand svg{width:14px;height:14px;margin-left:5px}.footer-links{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;color:#a3a3a3}.footer-links a:hover,.footer-bottom a:hover{color:var(--accent)}.footer-bottom{margin-top:23px;font-size:11px;color:#8b8b8b}.back-to-top{position:fixed;bottom:20px;right:20px;width:42px;height:42px;border:1px solid #565656;border-radius:8px;background:#323232;color:#e0e0e0;z-index:5;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,visibility .2s,transform .2s,background .2s}.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:#474747}.noscript-note{color:var(--muted);font-size:13px}
@media(min-width:1400px){.hero{padding:100px 0 94px;gap:90px}}
@media(max-width:1050px){.page-shell{padding:0 32px}.hero{gap:34px;padding:65px 0}.hero h1{font-size:58px;letter-spacing:-3px}.code-window pre{font-size:10px}.code-toolbar{padding:14px;font-size:11px}.line-number{width:32px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-description{font-size:15px}.header-nav{gap:20px}.brand{font-size:17px}.catalog h2{font-size:27px}.search-box{min-width:260px}.project-description{min-height:46px}}
@media(max-width:760px){.page-shell{padding:0 23px}.site-header{height:83px}.brand-product,.brand-divider{display:none}.brand{font-size:19px}.header-nav{gap:18px;font-size:12px}.github-nav{padding:7px 10px}.hero{grid-template-columns:1fr;gap:30px;padding:47px 0 44px}.hero h1{font-size:clamp(48px,8.6vw,66px);letter-spacing:-2.8px;margin-bottom:20px}.eyebrow{font-size:10px;margin-bottom:20px}.hero-description{max-width:450px;margin-bottom:24px}.hero-details{margin-top:18px}.code-scene{max-width:500px;width:100%;padding-top:0;margin:0 auto}.code-window{transform:none}.code-window pre{font-size:12px;padding:23px 0}.code-toolbar{padding:14px 18px;font-size:12px}.line-number{width:38px}.scene-caption{margin-top:15px}.scene-grid{display:none}.catalog{padding-top:30px}.catalog-heading{align-items:stretch;flex-direction:column;gap:20px;margin-bottom:20px}.catalog h2{font-size:27px}.search-box{min-width:0}.search-box input{font-size:16px}.catalog-controls{align-items:start;flex-direction:column;gap:13px}.filter{padding:6px 9px;font-size:11px;gap:6px}.result-count{font-size:10px}.project-card{padding:21px 19px 17px}.project-card h3{font-size:18px}.project-description{min-height:69px}.card-bottom{flex-wrap:wrap}.guide-banner{padding:23px 20px;flex-wrap:wrap;gap:13px}.guide-symbol{display:none}.guide-action{margin-left:0}.site-footer{margin-top:44px}.footer-top{align-items:start;flex-direction:column;gap:18px}.footer-links{gap:15px 21px}.footer-bottom{padding-right:38px;font-size:11px;flex-wrap:wrap;gap:8px}.back-to-top{right:14px;bottom:14px}}
@media(max-width:500px){.project-grid{grid-template-columns:1fr;gap:12px}.project-description{min-height:0;max-width:360px}.project-card{padding:22px}.card-top{margin-bottom:17px}.card-bottom{flex-wrap:nowrap}.header-nav{gap:14px}.github-nav{border:0;padding:0}.github-nav img{display:none}.brand img{width:32px;height:32px}.code-window pre{font-size:10px}.line-number{width:31px}.hero h1{font-size:50px}.code-toolbar{font-size:11px}.guide-banner p{line-height:1.7}.footer-links{font-size:12px}.footer-bottom{flex-direction:column;align-items:start}}
@media(max-width:360px){.page-shell{padding:0 18px}.hero h1{font-size:44px}.brand{gap:8px;font-size:17px}.header-nav{gap:10px;font-size:11px}.code-toolbar{padding:13px}.code-window pre{font-size:9px}.hero-details{font-size:10px}.filter{padding:6px 7px}.catalog h2{font-size:24px}.project-card{padding:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Neutral surfaces keep the project artwork as the color accents. */
.hero{position:relative}.hero-copy{position:relative;z-index:1}.hero h1 span{color:var(--ink)}
.code-scene{isolation:isolate;padding-top:0}.code-window{transform:none;background:#1b1b1b;border-color:#3b3b3b;box-shadow:0 20px 60px #00000026}
.scene-grid{inset:-60px -22px;background-size:28px 28px;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);mask-image:radial-gradient(ellipse at center,black,transparent 72%)}
.project-logo{display:block;width:42px;height:42px;object-fit:contain;flex-shrink:0}
.project-symbol{background:#292929;border-color:#3c3c3c;color:#cfcfcf}
.guide-banner{transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease;transform-origin:center}
.guide-banner:focus-visible{background:#2c2c2c;border-color:#606060;box-shadow:0 18px 45px #00000040;transform:translateY(-4px)}
@media(hover:hover){.guide-banner:hover{background:#2c2c2c;border-color:#606060;box-shadow:0 18px 45px #00000040;transform:translateY(-5px) scale(1.008)}}
.footer-bottom{margin-top:0;font-size:13px;color:#a0a0a0}.footer-credit{display:flex;justify-content:center;align-items:center;gap:7px;font-size:11px;color:#787878;margin:22px 0 0}.footer-credit svg{width:13px;height:13px;color:#b78188;stroke-width:1.5}
@media(max-width:760px){.footer-bottom{font-size:12px}.guide-action{margin-left:0}.footer-credit{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.guide-banner:hover,.guide-banner:focus-visible{transform:none}}

/* Readable catalog controls and quieter card actions. */
.catalog h2{font-size:34px}.search-box{min-width:320px;padding:13px 15px}.search-box input{font-size:16px}.search-box svg{width:19px;height:19px}
.filter{font-size:15px;padding:9px 14px;gap:9px}.filter span{font-size:12px}.category-label{font-size:13px;color:#b0b0b0}.project-description{font-size:14px;line-height:1.8}.reference-link{font-size:13px}.project-sources{margin-left:auto}.card-bottom{min-height:46px}
@media(hover:hover) and (pointer:fine){.reference-link{opacity:0;pointer-events:none;transform:translateX(-4px);transition:opacity .2s,transform .2s}.project-card:hover .reference-link,.project-card:focus-within .reference-link{opacity:1;pointer-events:auto;transform:none}}
.primary-link svg{transition:transform .2s}.primary-link:hover svg,.primary-link:focus-visible svg{transform:translateX(3px)}
.footer-credit{font-size:13px;font-weight:500;color:#b8b8b8}.footer-credit svg{width:14px;height:14px}.back-to-top svg{width:22px;height:22px}
.code-window pre{min-height:250px;font-size:11px;line-height:1.9}.code-line{display:block;min-height:1.9em}.code-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-toolbar>span:first-child{min-width:0}.code-reference{gap:10px}.code-reference>span{min-width:0;font-size:12px}
@media(max-width:1050px) and (min-width:761px){.hero{grid-template-columns:1fr 1fr;gap:24px}.code-window pre{font-size:10px}.line-number{width:27px}}
@media(max-width:760px){.catalog h2{font-size:29px}.filter{font-size:14px;padding:8px 11px}.search-box{min-width:0}.project-description{font-size:14px}.code-window pre{font-size:11px}.code-reference>span{font-size:11px}}
@media(max-width:600px){.site-header{height:auto;flex-wrap:wrap;padding:20px 0;gap:17px}.header-nav{width:100%;justify-content:space-between;gap:12px;font-size:13px}.github-nav{padding:0;border:0}.code-window pre{font-size:10px}.line-number{width:27px}.catalog-controls{margin-bottom:24px}.filter{padding:8px 9px}.reference-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.primary-link:hover svg,.primary-link:focus-visible svg,.reference-link{transform:none}}

/* Match the catalog heading and search control on one baseline. */
.catalog-heading{align-items:center}.catalog h2{line-height:44px}.search-box{height:44px;padding:0 14px}.search-box input{line-height:24px}
.header-nav .github-nav{transition:color .18s,background .18s,border-color .18s}.github-nav:hover,.github-nav:focus-visible{background:#303030;border-color:#6b6b6b}
.code-toolbar{padding:15px 18px}.code-filename{font:550 14px/1.5 var(--sans);color:#e2e2e2;letter-spacing:.1px}.language-tag{font:550 12px/1.5 var(--sans);color:#c5c5c5;letter-spacing:.6px}
.code-window pre{display:flex;flex-direction:column;min-height:232px;padding:18px 0;font:13px/1.85 var(--mono);overflow-x:auto;white-space:normal}.code-window pre code{display:block;margin-block:auto;font:inherit;min-width:0}
.code-line{display:flex;min-height:1.85em;padding-right:18px;white-space:pre-wrap}.code-text{min-width:0;overflow-wrap:anywhere}.line-number{width:40px;flex:0 0 40px;font:12px/2.004 var(--mono);color:#919191}.syntax-comment{color:#a0a0a0}
.footer-credit svg{color:#ef4444}
@media(max-width:1050px) and (min-width:761px){.hero{grid-template-columns:.92fr 1.08fr}.code-window pre{font-size:12px}.line-number{font-size:11px;line-height:2.018}}
@media(max-width:760px){.catalog-heading{align-items:stretch}.code-window pre{font-size:13px}.line-number{font-size:12px;line-height:2.004}.search-box{width:100%}}
@media(max-width:600px){.header-nav .github-nav{border:1px solid #484848;padding:5px 10px}.code-toolbar{padding:13px 14px}.code-filename{font-size:13px}.code-window pre{font-size:12px;min-height:216px;padding:16px 0}.line-number{width:34px;flex-basis:34px;font-size:11px;line-height:2.018}.code-line{padding-right:14px}}


/* Empty editor rows are numbered along with the example. */
.language-tag{color:#a1a1a1}.code-window pre{min-height:0;padding:8px 0}.code-window pre code{margin-block:0}
@media(max-width:760px){.footer-bottom{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;padding-right:0;gap:10px}.footer-bottom>*{white-space:nowrap}.footer-credit{justify-content:center}}
@media(max-width:360px){.footer-bottom{font-size:11px}}
