@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_4848a1b0-module__ermdUq__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_4848a1b0-module__ermdUq__variable{--ch-font-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/150f724d70372c02-s.0ibo8nq1_5r8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/750c737482d9de2f-s.0.oe-uv1--sd5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/5f402bd2d8eef81a-s.p.16whm0euli40m.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_54590724-module__cN506q__className{font-family:Newsreader,Newsreader Fallback;font-style:normal}.newsreader_54590724-module__cN506q__variable{--ch-font-serif:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_55e6eb3d-module__N1WJsq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_55e6eb3d-module__N1WJsq__variable{--ch-font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
html,body{margin:0;padding:0}.canvas-harness-page,.canvas-harness-page *,.canvas-harness-page :before,.canvas-harness-page :after{box-sizing:border-box}.canvas-harness-page{--ch-bg:#eef3f8;--ch-paper:#f6f9fc;--ch-ink:#0f1b2d;--ch-sub:#3b4a60;--ch-line:#d1dbe6;--ch-accent:#2f8fb5;--ch-accent2:#5bb7c9;--ch-warm:#8b5a3c;--ch-maxw:1240px;--ch-pad-x:clamp(20px, 4vw, 56px);background:var(--ch-bg);color:var(--ch-ink);font-family:var(--ch-font-sans), ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";min-height:100vh;font-size:16px;line-height:1.55;position:relative;overflow-x:hidden}.canvas-harness-page:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 1px 1px, var(--ch-line) .7px, transparent .7px);opacity:.5;z-index:0;background-size:22px 22px;position:absolute;inset:0}.canvas-harness-page main,.canvas-harness-page .ch-nav,.canvas-harness-page .ch-footer{z-index:1;position:relative}.canvas-harness-page a{color:inherit;text-decoration:none}.canvas-harness-page em{font-family:var(--ch-font-serif), Georgia, serif;font-style:italic;font-weight:400}.canvas-harness-page strong{font-weight:600}.canvas-harness-page code,.canvas-harness-page pre{font-family:var(--ch-font-mono), ui-monospace, "SF Mono", Menlo, monospace}.canvas-harness-page .ch-nav{z-index:50;padding:14px var(--ch-pad-x);background:color-mix(in oklab, var(--ch-bg) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid color-mix(in oklab, var(--ch-line) 60%, transparent);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.canvas-harness-page .ch-brand{align-items:baseline;gap:10px;display:flex}.canvas-harness-page .ch-brand-mark{filter:drop-shadow(0 1px 2px #0f1b2d26);width:26px;height:26px;transform:translateY(6px)}.canvas-harness-page .ch-brand-name{letter-spacing:-.01em;font-size:16px;font-weight:600;font-family:var(--ch-font-mono), ui-monospace, monospace;white-space:nowrap}.canvas-harness-page .ch-brand-version{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-sub);background:color-mix(in oklab, var(--ch-line) 60%, var(--ch-paper));border:.5px solid var(--ch-line);border-radius:999px;padding:2px 6px;font-size:11px}.canvas-harness-page .ch-nav-right{align-items:center;gap:22px;display:flex}.canvas-harness-page .ch-nav-right a{color:var(--ch-sub);font-size:14px;transition:color .15s}.canvas-harness-page .ch-nav-right a:hover{color:var(--ch-ink)}.canvas-harness-page .ch-nav-cta{background:var(--ch-ink);letter-spacing:-.005em;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex;color:var(--ch-bg)!important}.canvas-harness-page .ch-nav-cta:hover{background:color-mix(in oklab, var(--ch-ink) 85%, var(--ch-accent))}.canvas-harness-page .ch-nav-cta-glyph{font-size:12px}.canvas-harness-page .ch-nav-back{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-warm);border-bottom:1px solid color-mix(in oklab, var(--ch-warm) 35%, transparent);align-items:center;gap:6px;font-size:12px;display:inline-flex}.canvas-harness-page .ch-nav-back:hover{color:var(--ch-warm);border-bottom-color:var(--ch-warm)}.canvas-harness-page .ch-band{max-width:var(--ch-maxw);padding:90px var(--ch-pad-x) 90px;margin:0 auto}.canvas-harness-page .ch-band-paper{background:var(--ch-paper);border-top:1px solid var(--ch-line);border-bottom:1px solid var(--ch-line);max-width:none;margin-top:30px;margin-bottom:30px}.canvas-harness-page .ch-band-paper>*{max-width:var(--ch-maxw);margin-left:auto;margin-right:auto}.canvas-harness-page .ch-band-head{max-width:880px;margin-bottom:56px}.canvas-harness-page .ch-band-head h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(28px,3.6vw,46px);font-weight:500;line-height:1.12}.canvas-harness-page .ch-eyebrow{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-accent);letter-spacing:.02em;text-transform:lowercase;margin-bottom:14px;font-size:12px}.canvas-harness-page .ch-hero{max-width:var(--ch-maxw);padding:80px var(--ch-pad-x) 60px;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:56px;margin:0 auto;display:grid}.canvas-harness-page .ch-hero-title{letter-spacing:-.035em;text-wrap:balance;margin:6px 0 32px;font-size:clamp(40px,5.6vw,76px);font-weight:500;line-height:1.08}.canvas-harness-page .ch-hero-title em{color:var(--ch-accent);letter-spacing:-.015em}.canvas-harness-page .ch-hero-lede{color:var(--ch-sub);text-wrap:pretty;max-width:52ch;margin:0 0 28px;font-size:17px;line-height:1.6}.canvas-harness-page .ch-hero-lede strong{color:var(--ch-ink);font-weight:600}.canvas-harness-page .ch-hero-cta-row{gap:10px;margin-bottom:26px;display:flex}.canvas-harness-page .ch-btn{letter-spacing:-.005em;border-radius:999px;align-items:center;gap:6px;padding:12px 20px;font-size:14px;font-weight:500;transition:transform .15s,background .15s,color .15s;display:inline-flex}.canvas-harness-page .ch-btn:hover{transform:translateY(-1px)}.canvas-harness-page .ch-btn-ink{background:var(--ch-ink);color:var(--ch-bg)}.canvas-harness-page .ch-btn-ink:hover{background:color-mix(in oklab, var(--ch-ink) 88%, var(--ch-accent))}.canvas-harness-page .ch-btn-ghost{color:var(--ch-ink);border:1px solid var(--ch-line);background:0 0}.canvas-harness-page .ch-btn-ghost:hover{background:var(--ch-paper);border-color:var(--ch-ink)}.canvas-harness-page .ch-hero-meta{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-sub);flex-wrap:wrap;gap:18px;font-size:12px;display:flex}.canvas-harness-page .ch-hero-meta .ch-dot{background:var(--ch-accent);vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.canvas-harness-page .ch-hero-canvas{aspect-ratio:10/8;background:var(--ch-paper);border:1px solid var(--ch-line);width:100%;color:var(--ch-ink);border-radius:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffe6,0 22px 50px -30px #0f1b2d66,0 6px 20px -10px #0f1b2d33}.canvas-harness-page .ch-hero-canvas-cta{z-index:3;font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-ink);background:color-mix(in oklab, var(--ch-paper) 85%, transparent);-webkit-backdrop-filter:blur(8px);border:1px solid var(--ch-line);border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-size:11px;transition:color .15s,border-color .15s,transform .15s;display:inline-flex;position:absolute;top:12px;right:12px;box-shadow:0 1px 2px #0f1b2d0f}.canvas-harness-page .ch-hero-canvas-cta:hover{color:var(--ch-accent);border-color:var(--ch-accent);transform:translateY(-1px)}.canvas-harness-page .ch-hero-canvas-surface{-webkit-user-select:none;user-select:none;touch-action:none;position:absolute;inset:0;overflow:hidden}.canvas-harness-page .ch-hero-canvas-grid{background-image:radial-gradient(circle at 1px 1px, var(--ch-line) .9px, transparent .9px);pointer-events:none;opacity:.85;background-position:50%;position:absolute;inset:0}.canvas-harness-page .ch-hero-canvas-world{transform-origin:0 0;position:absolute;inset:0}.canvas-harness-page .ch-hero-canvas-edges{pointer-events:none;color:var(--ch-ink);position:absolute;top:-300px;left:-400px}.canvas-harness-page .ch-hc-node{background:var(--ch-paper);border:1px solid var(--ch-ink);box-shadow:2px 2px 0 var(--ch-ink);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:6px;padding:12px 14px;transition:box-shadow .12s,transform .12s;position:absolute}.canvas-harness-page .ch-hc-node:hover{box-shadow:3px 3px 0 var(--ch-accent);transform:translate(-1px,-1px)}.canvas-harness-page .ch-hc-node-title{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-accent);letter-spacing:.02em;margin-bottom:4px;font-size:11px}.canvas-harness-page .ch-hc-node-body{color:var(--ch-ink);font-size:13px;line-height:1.4}.canvas-harness-page .ch-hc-node-handles{pointer-events:none;position:absolute;inset:-3px}.canvas-harness-page .ch-hc-node-handles span{background:var(--ch-paper);border:1px solid var(--ch-accent);border-radius:1px;width:6px;height:6px;position:absolute}.canvas-harness-page .ch-hc-node-handles span:first-child{top:0;left:0}.canvas-harness-page .ch-hc-node-handles span:nth-child(2){top:0;right:0}.canvas-harness-page .ch-hc-node-handles span:nth-child(3){bottom:0;left:0}.canvas-harness-page .ch-hc-node-handles span:nth-child(4){bottom:0;right:0}.canvas-harness-page .ch-hc-node-tag{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-ink);background:linear-gradient(180deg, color-mix(in oklab, var(--ch-accent) 22%, var(--ch-paper)), var(--ch-paper));border-radius:6px;align-items:center;height:100%;margin:-12px -14px;padding:14px 16px;font-size:13px;display:flex}.canvas-harness-page .ch-hc-node-tag:before{content:"#";color:var(--ch-accent);margin-right:6px;font-weight:600}.canvas-harness-page .ch-hc-node-code{color:var(--ch-ink);white-space:pre;margin:0;font-size:11.5px;line-height:1.5}.canvas-harness-page .ch-hc-node-code:before{content:"board.tsx";color:var(--ch-sub);font-size:10px;font-family:var(--ch-font-mono), ui-monospace, monospace;margin-bottom:6px;display:block}.canvas-harness-page .ch-hero-canvas-chrome{pointer-events:none;font-family:var(--ch-font-mono), ui-monospace, monospace;justify-content:space-between;align-items:center;font-size:11px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.canvas-harness-page .ch-hcc-zoom{background:color-mix(in oklab, var(--ch-paper) 85%, transparent);-webkit-backdrop-filter:blur(8px);border:1px solid var(--ch-line);pointer-events:auto;border-radius:8px;align-items:center;gap:6px;padding:4px 6px;display:flex}.canvas-harness-page .ch-hcc-zoom button{appearance:none;font:inherit;cursor:pointer;width:22px;height:22px;color:var(--ch-ink);background:0 0;border:0;border-radius:5px;font-size:14px}.canvas-harness-page .ch-hcc-zoom button:hover{background:var(--ch-line)}.canvas-harness-page .ch-hcc-zoom span{text-align:center;min-width:38px;color:var(--ch-sub);font-size:11px}.canvas-harness-page .ch-hcc-reset{border-left:1px solid var(--ch-line);padding:0 8px;width:auto!important;color:var(--ch-sub)!important;border-radius:0 5px 5px 0!important;font-size:10px!important}.canvas-harness-page .ch-hcc-hint{color:var(--ch-sub);background:color-mix(in oklab, var(--ch-paper) 85%, transparent);-webkit-backdrop-filter:blur(8px);border:1px solid var(--ch-line);border-radius:8px;padding:4px 10px}.canvas-harness-page .ch-hero-visual-caption{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-sub);text-align:right;margin-top:10px;font-size:11px}.canvas-harness-page .ch-hero-visual-caption:before{content:"// ";opacity:.55}.canvas-harness-page .ch-proof{flex-direction:column;align-items:center;display:flex}.canvas-harness-page .ch-proof-frame{border:1px solid var(--ch-line);background:var(--ch-paper);border-radius:14px;width:100%;max-width:640px;overflow:hidden;box-shadow:inset 0 1px #ffffffe6,0 22px 50px -30px #0f1b2d66,0 6px 20px -10px #0f1b2d33}.canvas-harness-page .ch-proof-frame video{width:100%;height:auto;display:block}.canvas-harness-page .ch-proof-caption{text-align:center;max-width:520px;color:var(--ch-sub);margin:18px auto 0;font-size:13.5px;line-height:1.6}.canvas-harness-page .ch-proof-caption strong{color:var(--ch-ink);font-weight:600}.canvas-harness-page .ch-why-grid{grid-template-columns:repeat(2,1fr);gap:36px 56px;display:grid}.canvas-harness-page .ch-why-row{grid-template-columns:60px 1fr;align-items:start;gap:18px;display:grid}.canvas-harness-page .ch-why-num{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-accent);border-top:1px solid var(--ch-accent);margin-top:2px;padding-top:5px;font-size:13px}.canvas-harness-page .ch-why-row h4{letter-spacing:-.01em;margin:0 0 4px;font-size:18px;font-weight:600}.canvas-harness-page .ch-why-row p{color:var(--ch-sub);margin:0;font-size:14px;line-height:1.55}.canvas-harness-page .ch-what-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.canvas-harness-page .ch-what-card{background:var(--ch-bg);border:1px solid var(--ch-line);border-radius:12px;flex-direction:column;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;overflow:hidden}.canvas-harness-page .ch-what-card:hover{border-color:var(--ch-ink);transform:translateY(-2px);box-shadow:0 14px 30px -18px #0f1b2d4d}.canvas-harness-page .ch-what-card-mini{background:var(--ch-paper);border-bottom:1px solid var(--ch-line);padding:14px}.canvas-harness-page .ch-what-card-mini .ch-mini{border-radius:6px;width:100%;height:auto;display:block}.canvas-harness-page .ch-what-card-body{padding:18px 18px 22px}.canvas-harness-page .ch-what-card-tag{align-items:center;gap:10px;margin-bottom:10px;display:flex}.canvas-harness-page .ch-what-card-num{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-sub);font-size:11px}.canvas-harness-page .ch-what-card-tag code{background:color-mix(in oklab, var(--ch-accent) 14%, var(--ch-bg));color:var(--ch-accent);border:.5px solid color-mix(in oklab, var(--ch-accent) 30%, transparent);border-radius:999px;padding:2px 8px;font-size:11px}.canvas-harness-page .ch-what-card h3{letter-spacing:-.015em;margin:0 0 8px;font-size:18px;font-weight:600;line-height:1.25}.canvas-harness-page .ch-what-card p{color:var(--ch-sub);margin:0;font-size:13.5px;line-height:1.55}.canvas-harness-page .ch-beyond-grid{grid-template-columns:1fr 1fr;gap:48px;display:grid}.canvas-harness-page .ch-beyond-col{flex-direction:column;min-width:0;display:flex}.canvas-harness-page .ch-beyond-kicker{font-family:var(--ch-font-mono), ui-monospace, monospace;letter-spacing:.08em;color:var(--ch-accent);align-items:center;gap:8px;margin-bottom:12px;font-size:11px;display:inline-flex}.canvas-harness-page .ch-beyond-kicker:before{content:"";background:var(--ch-accent);width:18px;height:1px}.canvas-harness-page .ch-beyond-col h3{letter-spacing:-.02em;margin:0 0 16px;font-size:22px;font-weight:600;line-height:1.2}.canvas-harness-page .ch-beyond-list{flex-direction:column;gap:10px;margin:0 0 20px;padding:0;list-style:none;display:flex}.canvas-harness-page .ch-beyond-list li{color:var(--ch-sub);padding-left:16px;font-size:14px;line-height:1.55;position:relative}.canvas-harness-page .ch-beyond-list li:before{content:"";background:var(--ch-accent);border-radius:50%;width:5px;height:5px;position:absolute;top:9px;left:0}.canvas-harness-page .ch-beyond-list strong{color:var(--ch-ink);font-weight:600}.canvas-harness-page .ch-beyond-list code,.canvas-harness-page .ch-beyond-foot code{background:color-mix(in oklab, var(--ch-accent) 12%, var(--ch-bg));color:var(--ch-accent);border:.5px solid color-mix(in oklab, var(--ch-accent) 28%, transparent);border-radius:5px;padding:1px 6px;font-size:12px}.canvas-harness-page .ch-beyond-col .ch-code{margin-top:auto}.canvas-harness-page .ch-beyond-foot{color:var(--ch-sub);margin:14px 0 0;font-size:13px;line-height:1.55}.canvas-harness-page .ch-beyond-foot a{color:var(--ch-accent);border-bottom:1px solid color-mix(in oklab, var(--ch-accent) 40%, transparent)}.canvas-harness-page .ch-beyond-foot a:hover{border-color:var(--ch-accent)}.canvas-harness-page .ch-qs{grid-template-columns:1fr 1fr;gap:26px;display:grid}.canvas-harness-page .ch-qs-step{flex-direction:column;gap:12px;min-width:0;display:flex}.canvas-harness-page .ch-qs-step-num{font-family:var(--ch-font-mono), ui-monospace, monospace;letter-spacing:.08em;color:var(--ch-accent);font-size:11px}.canvas-harness-page .ch-code{background:var(--ch-ink);color:var(--ch-bg);border:1px solid color-mix(in oklab, var(--ch-ink) 85%, var(--ch-accent));min-width:0;font-family:var(--ch-font-mono), ui-monospace, monospace;border-radius:10px;overflow:hidden;box-shadow:0 12px 30px -22px #0f1b2d80}.canvas-harness-page .ch-code-head{border-bottom:1px solid color-mix(in oklab, var(--ch-bg) 12%, var(--ch-ink));justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.canvas-harness-page .ch-code-dots{gap:5px;display:flex}.canvas-harness-page .ch-code-dots i{background:color-mix(in oklab, var(--ch-bg) 20%, var(--ch-ink));border-radius:50%;width:9px;height:9px;display:block}.canvas-harness-page .ch-code-dots i:first-child{background:color-mix(in oklab, #ff5f57 70%, var(--ch-ink))}.canvas-harness-page .ch-code-dots i:nth-child(2){background:color-mix(in oklab, #febc2e 70%, var(--ch-ink))}.canvas-harness-page .ch-code-dots i:nth-child(3){background:color-mix(in oklab, #28c840 70%, var(--ch-ink))}.canvas-harness-page .ch-code-lang{color:color-mix(in oklab, var(--ch-bg) 55%, transparent);letter-spacing:.08em;text-transform:uppercase;font-size:10.5px}.canvas-harness-page .ch-code pre{white-space:pre;margin:0;padding:16px 18px 18px;font-size:13px;line-height:1.6;overflow-x:auto}.canvas-harness-page .ch-api-table{border:1px solid var(--ch-line);background:var(--ch-bg);border-radius:10px;overflow:hidden}.canvas-harness-page .ch-api-row{border-bottom:1px solid var(--ch-line);grid-template-columns:minmax(260px,1.4fr) minmax(90px,.5fr) minmax(0,2fr);align-items:baseline;gap:24px;padding:14px 20px;display:grid}.canvas-harness-page .ch-api-row:last-child{border-bottom:0}.canvas-harness-page .ch-api-row:hover{background:color-mix(in oklab, var(--ch-accent) 5%, var(--ch-bg))}.canvas-harness-page .ch-api-sig{color:var(--ch-ink);font-size:13px;font-weight:500}.canvas-harness-page .ch-api-ret{color:var(--ch-accent);font-size:12px}.canvas-harness-page .ch-api-doc{color:var(--ch-sub);font-size:13.5px;line-height:1.5}.canvas-harness-page .ch-api-foot{color:var(--ch-sub);margin-top:22px;font-size:13px}.canvas-harness-page .ch-api-foot a{color:var(--ch-accent);border-bottom:1px solid color-mix(in oklab, var(--ch-accent) 40%, transparent)}.canvas-harness-page .ch-api-foot a:hover{border-color:var(--ch-accent)}.canvas-harness-page .ch-built-on-row{grid-template-columns:1.4fr 1fr;gap:18px;display:grid}.canvas-harness-page .ch-built-card{border:1px solid var(--ch-line);background:var(--ch-paper);border-radius:12px;grid-template-columns:.95fr 1fr;gap:0;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid;overflow:hidden}.canvas-harness-page .ch-built-card:hover{border-color:var(--ch-ink);transform:translateY(-2px);box-shadow:0 18px 40px -22px #0f1b2d4d}.canvas-harness-page .ch-built-card-tile{border-right:1px solid var(--ch-line);background:var(--ch-bg)}.canvas-harness-page .ch-built-card-tile .ch-builton-svg{width:100%;height:100%;display:block}.canvas-harness-page .ch-built-card-tile-shot{min-height:220px;position:relative;overflow:hidden}.canvas-harness-page .ch-built-shot{object-fit:cover;object-position:left top}.canvas-harness-page .ch-built-card-meta{flex-direction:column;justify-content:center;padding:22px 24px;display:flex}.canvas-harness-page .ch-built-card-name{font-family:var(--ch-font-mono), ui-monospace, monospace;margin-bottom:8px;font-size:16px;font-weight:500}.canvas-harness-page .ch-built-card-blurb{color:var(--ch-sub);margin-bottom:12px;font-size:14px;line-height:1.55}.canvas-harness-page .ch-built-card-link{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-accent);font-size:12px}.canvas-harness-page .ch-built-card-empty{grid-template-columns:none;display:flex}.canvas-harness-page .ch-built-card-tile-empty{border-right:0;border:1.5px dashed var(--ch-line);color:var(--ch-sub);font-family:var(--ch-font-mono), ui-monospace, monospace;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;margin:6px;font-size:14px;display:flex}.canvas-harness-page .ch-built-card-empty-sub{color:color-mix(in oklab, var(--ch-sub) 60%, var(--ch-bg));font-size:11px}.canvas-harness-page .ch-faq{border-top:1px solid var(--ch-line)}.canvas-harness-page .ch-faq-item{border-bottom:1px solid var(--ch-line)}.canvas-harness-page .ch-faq-q{appearance:none;text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;grid-template-columns:56px 1fr 32px;align-items:center;gap:12px;padding:22px 4px;display:grid}.canvas-harness-page .ch-faq-q-num{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-accent);font-size:12px}.canvas-harness-page .ch-faq-q-text{letter-spacing:-.01em;font-size:17px;font-weight:500}.canvas-harness-page .ch-faq-q-chev{font-family:var(--ch-font-mono), ui-monospace, monospace;color:var(--ch-sub);text-align:right;font-size:18px}.canvas-harness-page .ch-faq-item.ch-open .ch-faq-q-chev{color:var(--ch-accent)}.canvas-harness-page .ch-faq-a{color:var(--ch-sub);max-width:70ch;padding:0 4px 24px 72px;font-size:14.5px;line-height:1.6}.canvas-harness-page .ch-footer{background:var(--ch-ink);color:var(--ch-bg);padding:70px var(--ch-pad-x) 36px}.canvas-harness-page .ch-footer-grid{max-width:var(--ch-maxw);grid-template-columns:2fr 1fr 1fr 1fr;align-items:start;gap:40px;margin:0 auto;display:grid}.canvas-harness-page .ch-footer-brand{align-items:center;gap:14px;display:flex}.canvas-harness-page .ch-footer-mark{filter:drop-shadow(0 2px 6px #0006);width:44px;height:44px}.canvas-harness-page .ch-footer-name{font-family:var(--ch-font-mono), ui-monospace, monospace;font-size:16px;font-weight:500}.canvas-harness-page .ch-footer-tag{font-family:var(--ch-font-serif), Georgia, serif;color:color-mix(in oklab, var(--ch-bg) 65%, transparent);font-size:14px;font-style:italic}.canvas-harness-page .ch-footer-col{flex-direction:column;gap:10px;display:flex}.canvas-harness-page .ch-footer-col-head{font-family:var(--ch-font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklab, var(--ch-accent2) 80%, var(--ch-bg));margin-bottom:4px;font-size:11px}.canvas-harness-page .ch-footer-col a{color:color-mix(in oklab, var(--ch-bg) 75%, transparent);font-size:14px}.canvas-harness-page .ch-footer-col a:hover{color:var(--ch-bg)}.canvas-harness-page .ch-footer-rule{max-width:var(--ch-maxw);background:color-mix(in oklab, var(--ch-bg) 18%, transparent);height:1px;margin:56px auto 18px}.canvas-harness-page .ch-footer-bottom{max-width:var(--ch-maxw);font-family:var(--ch-font-mono), ui-monospace, monospace;color:color-mix(in oklab, var(--ch-bg) 55%, transparent);justify-content:space-between;align-items:center;margin:0 auto;font-size:12px;display:flex}.canvas-harness-page .ch-footer-bottom code{background:color-mix(in oklab, var(--ch-bg) 8%, var(--ch-ink));border:1px solid color-mix(in oklab, var(--ch-bg) 14%, var(--ch-ink));color:var(--ch-bg);border-radius:6px;padding:5px 10px}@media (max-width:940px){.canvas-harness-page .ch-hero{grid-template-columns:1fr;gap:30px;padding-top:50px;padding-bottom:30px}.canvas-harness-page .ch-why-grid{grid-template-columns:1fr;gap:28px}.canvas-harness-page .ch-what-grid{grid-template-columns:1fr}.canvas-harness-page .ch-beyond-grid{grid-template-columns:1fr;gap:36px}.canvas-harness-page .ch-qs,.canvas-harness-page .ch-built-on-row{grid-template-columns:1fr}.canvas-harness-page .ch-footer-grid{grid-template-columns:1fr 1fr;gap:28px}.canvas-harness-page .ch-nav-right a:not(.ch-nav-cta):not(.ch-nav-back){display:none}.canvas-harness-page .ch-api-row{grid-template-columns:1fr;gap:4px}}@media (max-width:560px){.canvas-harness-page .ch-brand-version{display:none}.canvas-harness-page .ch-nav-right{gap:14px}}@media (max-width:400px){.canvas-harness-page .ch-nav-back{display:none}}
