.tt-site .blog-head{padding:72px 0 48px}.tt-site .blog-head h1{font-size:clamp(38px,5vw,58px)}.tt-site .blog-head .lead{max-width:760px;margin:18px 0 0;font-size:18px}.tt-site .post-list{padding:0 0 var(--sec);grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;list-style:none;display:grid}.tt-site .post-card{border:1.5px solid var(--ink);border-radius:var(--r);background:var(--card);box-shadow:var(--hard);transition:transform .16s var(--ease), box-shadow .16s var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.tt-site .post-card:hover{box-shadow:4px 4px 0 var(--brand);transform:translate(-1px,-1px)}.tt-site .post-card .cover{aspect-ratio:1200/630;object-fit:cover;background:var(--bg-soft);border-bottom:1px solid var(--line);width:100%;height:auto;display:block}.tt-site .post-card .card-body{padding:22px 24px 24px}.tt-site .post-card.featured{grid-column:1/-1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);display:grid}.tt-site .post-card.featured .cover{aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line);height:100%}.tt-site .post-card.featured .card-body{align-self:center;padding:36px 40px}.tt-site .post-card.featured h2{font-size:30px}.tt-site .post-card h2{letter-spacing:-.025em;margin:8px 0;font-size:22px;font-weight:700;line-height:1.2}.tt-site .post-card h2 a:after{content:"";border-radius:var(--r);position:absolute;inset:0}.tt-site .post-card h2 a:focus-visible{outline:none}.tt-site .post-card:has(h2 a:focus-visible){outline:2px solid var(--brand);outline-offset:3px}.tt-site .post-card p{color:var(--muted);margin:0;font-size:15.5px;line-height:1.55}.tt-site .post-meta{color:var(--muted);font-size:13px}.tt-site .post-meta .sep{color:var(--dim);margin:0 8px}.tt-site .post-author{color:var(--ink);margin-top:14px;font-size:13px;font-weight:600}.tt-site .draft-tag{font:600 10.5px/1.6 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:#92400e;background:#fbbf2438;border-radius:99px;margin-left:8px;padding:1px 8px;display:inline-block}.tt-site .blog-empty{padding:0 0 var(--sec);color:var(--muted);font-size:16px}.tt-site .blog-index .post-list{padding-bottom:64px}.tt-site .blog-index+.sec{padding-top:0}.tt-site article.post{padding-top:64px;padding-bottom:32px}.tt-site .blog-main:not(.blog-index)+.sec{padding-top:0}.tt-site .post-body{grid-template-columns:minmax(0,780px) minmax(0,300px);align-items:start;gap:64px;display:grid}.tt-site .post-main{min-width:0}.tt-site .post-rail{gap:28px;padding-top:4px;font-size:14px;display:grid;position:sticky;top:96px}.tt-site .rail-title{font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--subtle);margin:0 0 10px}.tt-site .toc ol{gap:9px;margin:0;padding:0;list-style:none;display:grid}.tt-site .toc a{color:var(--muted);line-height:1.4}.tt-site .toc a:hover{color:var(--brand)}.tt-site .rail-cta{border-radius:var(--r);background:var(--hl-soft);border:1px solid #dfe2ff;padding:22px}.tt-site .rail-cta-head{letter-spacing:-.02em;color:var(--ink);margin:0 0 6px;font-size:17px;font-weight:700}.tt-site .rail-cta-lead{color:var(--muted);margin:0 0 16px;line-height:1.5}@media (width<=1100px){.tt-site article.post{max-width:980px;margin:0 auto}.tt-site .post-body{grid-template-columns:minmax(0,1fr)}.tt-site .post-rail{display:none}}.tt-site .post-cover{border:1.5px solid var(--ink);border-radius:var(--r);width:100%;height:auto;box-shadow:var(--hard);background:var(--bg-soft);margin:0 0 36px;display:block}.tt-site .post-head{border-bottom:1px solid var(--line);margin-bottom:36px;padding-bottom:28px}.tt-site .post-head .back{color:var(--muted);font-size:14px;font-weight:600}.tt-site .post-head .back:hover{color:var(--brand)}.tt-site .post-head h1{letter-spacing:-.035em;margin:18px 0 16px;font-size:clamp(32px,4.4vw,48px);line-height:1.1}.tt-site .post-head .lead{max-width:none;margin:0 0 22px;font-size:20px}.tt-site .byline{align-items:center;gap:12px;font-size:14px;display:flex}.tt-site .byline .who{flex-direction:column;gap:2px;display:flex}.tt-site .byline .name{color:var(--ink);font-weight:600}.tt-site .byline a.name:hover{color:var(--brand)}.tt-site .avatar{background:var(--hl-soft);width:40px;height:40px;color:var(--brand);border-radius:99px;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.tt-site img.avatar{object-fit:cover;background:var(--bg-soft)}.tt-site .draft-banner{border-radius:var(--r-sm);color:#92400e;background:#fbbf2429;border:1px solid #fbbf2473;margin:0 0 28px;padding:12px 16px;font-size:14px}.tt-site .prose{color:#27272a;font-size:19px;line-height:1.7}.tt-site .prose>:first-child{margin-top:0}.tt-site .prose p{margin:0 0 22px}.tt-site .prose .chart-caption{margin-top:16px}.tt-site .prose h2{letter-spacing:-.025em;color:var(--ink);margin:52px 0 16px;font-size:28px;font-weight:700;line-height:1.2}.tt-site .prose :is(h2,h3){scroll-margin-top:104px}.tt-site .prose h3{letter-spacing:-.02em;color:var(--ink);margin:36px 0 12px;font-size:21px;font-weight:700;line-height:1.3}.tt-site .prose a{color:var(--brand);text-underline-offset:3px;text-decoration:underline #4640ea59}.tt-site .prose a:hover{text-decoration-color:currentColor}.tt-site .prose strong{color:var(--ink);font-weight:600}.tt-site .prose :is(ul,ol):not([class]){margin:0 0 22px;padding-left:1.3em}.tt-site .prose :is(ul,ol):not([class])>li{margin:6px 0;padding-left:.2em}.tt-site .prose ul:not([class]){list-style:outside}.tt-site .prose ol:not([class]){list-style:decimal}.tt-site .prose :is(ul,ol):not([class])>li::marker{color:var(--dim)}.tt-site .prose blockquote{border-left:3px solid var(--brand);color:var(--ink);margin:28px 0;padding:4px 0 4px 20px;font-size:19px}.tt-site .prose hr{border:0;border-top:1px solid var(--line-2);margin:44px 0}.tt-site .prose code{font-family:var(--mono);background:var(--bg-soft);border-radius:5px;padding:1px 5px;font-size:.88em}.tt-site .prose table{border-collapse:collapse;width:100%;margin:28px 0;font-size:15px}.tt-site .prose th,.tt-site .prose td{border-bottom:1px solid var(--line-2);text-align:left;padding:9px 12px 9px 0}.tt-site .prose th{color:var(--muted);font-weight:500}.tt-site .prose td:not(:first-child){font-variant-numeric:tabular-nums}.tt-site .author-box{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:14px;margin-top:48px;padding-top:28px;font-size:15px;line-height:1.55;display:flex}.tt-site .author-box .avatar{width:44px;height:44px}.tt-site .author-box strong{color:var(--ink);font-weight:600}.tt-site .author-box a{color:var(--brand);font-weight:600}@media (width<=1024px){.tt-site .post-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.tt-site .blog-head{padding:48px 0 32px}.tt-site .post-list{grid-template-columns:minmax(0,1fr);gap:20px}.tt-site .blog-index .post-list{padding-bottom:40px}.tt-site .post-card.featured{grid-template-columns:minmax(0,1fr)}.tt-site .post-card.featured .cover{aspect-ratio:1200/630;border-right:0;border-bottom:1px solid var(--line);height:auto}.tt-site .post-card.featured .card-body{padding:22px 20px}.tt-site .post-card.featured h2{font-size:22px}.tt-site article.post{padding-top:40px}.tt-site .prose{font-size:17px}.tt-site .post-head .lead{font-size:17.5px}}
