.cw-post{--ink: #06041A;--paper: #F3F5F4;--mint: #04FFD6;--violet: #8A5CFF;--soft: rgb(6 4 26 / .74);--hair: rgb(6 4 26 / .16);--softN: rgb(243 245 244 / .8);--sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;--mono: "DM Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--sh: 6px 6px 0 var(--ink);color-scheme:light}.cw-post *{box-sizing:border-box}.cw-post{-webkit-text-size-adjust:100%;margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;overflow-x:hidden}.cw-post .w{max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}@media(min-width:761px){.cw-post .w{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}.cw-post a:focus-visible,.cw-post button:focus-visible,.cw-post input:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.cw-post h1,.cw-post h2,.cw-post h3{margin:0;text-wrap:balance}.cw-post em{font-style:italic;font-weight:400}.cw-post h1 em,.cw-post h2 em{color:var(--violet)}.cw-post .kicker{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;display:flex;gap:10px;align-items:center}.cw-post .mark{display:inline-flex;gap:3px;flex:none}.cw-post .mark i{width:9px;height:9px;display:block;background:var(--mint);box-shadow:inset 0 0 0 1.5px var(--ink)}.cw-post .mark i+i{background:var(--violet)}.cw-post .link{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:2px solid var(--violet);padding-bottom:1px}.cw-post .pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;font-weight:500;border:2px solid var(--ink);border-radius:999px;padding:4px 11px;white-space:nowrap;background:var(--paper);color:var(--ink)}.cw-post [hidden]{display:none!important}.cw-post .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:no-preference){.cw-post.js .rise{opacity:0;transform:translateY(18px);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.8,.2,1.15)}.cw-post.js .rise.in{opacity:1;transform:none}}.cw-post .p-hero .p-narrow>*{max-width:840px}.cw-post .p-hero{padding:clamp(28px,5vw,56px) 0 clamp(28px,4vw,44px);border-bottom:2px solid var(--ink)}.cw-post .back{display:inline-flex;align-items:center;gap:8px;font:600 15px var(--sans);color:var(--ink);text-decoration:none;border-bottom:2px solid var(--violet);padding-bottom:1px;margin-bottom:30px}.cw-post .back svg{width:15px;height:15px}.cw-post .kline{width:18px;height:2px;background:var(--ink)}.cw-post .p-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font:500 13px var(--mono);color:var(--soft);margin-bottom:14px}.cw-post .p-meta>span{display:inline-flex;align-items:center;gap:6px}.cw-post .p-meta svg{width:14px;height:14px}.cw-post .p-hero h1{font-size:clamp(34px,4.6vw,58px);font-weight:500;letter-spacing:-.03em;line-height:1.06}.cw-post .p-excerpt{margin:18px 0 0;font-size:clamp(17px,1.6vw,20px);line-height:1.55;color:var(--soft);max-width:36em}.cw-post .p-main{padding:clamp(32px,5vw,56px) 0 clamp(40px,6vw,72px)}.cw-post .p-prose{max-width:68ch;font-size:18px;line-height:1.72;color:var(--ink)}.cw-post .p-prose>p:first-of-type{font-size:19.5px}.cw-post .p-prose p{margin:0 0 20px}.cw-post .p-prose h2{display:flex;align-items:baseline;gap:12px;margin:48px 0 16px;font-size:clamp(24px,2.4vw,30px);font-weight:600;letter-spacing:-.02em;line-height:1.2;scroll-margin-top:24px}.cw-post .p-prose h2:before{content:"";flex:none;width:12px;height:12px;background:var(--mint);box-shadow:inset 0 0 0 2px var(--ink);transform:translateY(-2px)}.cw-post .p-prose h3{margin:32px 0 12px;font-size:21px;font-weight:600}.cw-post .p-prose strong{font-weight:650}.cw-post .p-prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--violet);text-decoration-thickness:2px;text-underline-offset:3px}.cw-post .p-prose ul,.cw-post .p-prose ol{margin:0 0 22px;padding:0;list-style:none;display:grid;gap:10px}.cw-post .p-prose ul li{position:relative;padding-left:26px}.cw-post .p-prose ul li:before{content:"";position:absolute;left:2px;top:.62em;width:9px;height:9px;background:var(--mint);box-shadow:inset 0 0 0 1.5px var(--ink)}.cw-post .p-prose ol{counter-reset:n}.cw-post .p-prose ol li{position:relative;padding-left:40px;counter-increment:n}.cw-post .p-prose ol li:before{content:counter(n);position:absolute;left:0;top:.1em;width:26px;height:26px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:500 13px var(--mono);background:var(--paper)}.cw-post .tools{position:fixed;right:22px;bottom:18px;z-index:25;display:flex;flex-direction:column;gap:10px;width:min(260px,calc(100vw - 44px))}.cw-post .tool{background:var(--paper);border:2.5px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink);color:var(--ink)}.cw-post .demo{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;text-decoration:none;background:var(--mint);transition:transform .12s,box-shadow .12s}.cw-post .demo:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.cw-post .demo-ic{width:36px;height:36px;border:2px solid var(--ink);border-radius:8px;background:var(--paper);display:grid;place-items:center}.cw-post .demo-ic svg{width:18px;height:18px}.cw-post .demo-label{display:block;font:600 16px var(--sans)}.cw-post .demo-copy{display:none}.cw-post .prog{padding:10px 12px}.cw-post .prog-top{display:flex;justify-content:space-between;align-items:baseline;font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}.cw-post .prog-val{font-size:13px}.cw-post .prog-bar{margin-top:8px;height:8px;border:2px solid var(--ink);border-radius:999px;overflow:hidden;background:var(--paper)}.cw-post .prog-bar span{display:block;height:100%;background:var(--violet);transform-origin:left;transform:scaleX(0);will-change:transform}.cw-post .prog-cur{display:none}.cw-post .top{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;font:600 14px var(--sans);padding:10px 14px;cursor:pointer}.cw-post .top svg{width:14px;height:14px}@media(max-width:1100px){.cw-post .tools{width:min(240px,calc(100vw - 32px));right:16px}}@media(max-width:780px){.cw-post .p-prose{font-size:16.5px;line-height:1.75}.cw-post .p-prose>p:first-of-type{font-size:17px}.cw-post .p-prose h2{margin-top:40px;font-size:24px}.cw-post .tools{position:static;width:auto;margin:0 16px 40px}}.cw-post .p-author{display:flex;align-items:center;gap:12px;margin-top:20px;font-size:15px}.cw-post .p-author img{width:42px;height:42px;border-radius:50%;border:2px solid var(--ink)}.cw-post .p-author b{display:block;font-weight:600}.cw-post .p-author span{color:var(--soft)}.cw-post .p-picture{display:block;width:100%;max-width:840px;margin-top:24px;border:2.5px solid var(--ink);border-radius:12px;box-shadow:6px 6px 0 var(--ink)}.cw-post .p-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:68ch;margin-top:8px}.cw-post .p-tags .lab{font:500 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-right:4px}.cw-post .p-related{max-width:68ch;margin-top:44px;padding-top:28px;border-top:2px solid var(--ink)}.cw-post .p-related h2{font-size:clamp(24px,2.4vw,30px);font-weight:600;letter-spacing:-.02em}.cw-post .p-related ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:14px}.cw-post .p-related a{display:grid;gap:4px;padding:16px 18px;color:var(--ink);text-decoration:none;background:var(--paper);border:2.5px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink)}.cw-post .p-related a:hover{background:var(--mint)}.cw-post .p-related b{font-size:19px;font-weight:600}.cw-post .p-related span{color:var(--soft);font-size:15.5px}.cw-post .p-related small{font:500 11.5px var(--mono);letter-spacing:.05em;color:var(--soft)}
