.hx{--hx-page:#f9f8f6;--hx-surface:#fff;--hx-ink:#1c1917;--hx-soft:#57534e;--hx-faint:#78716c;--hx-border:#e7e5e4;--hx-strong:#a8a29e;--hx-marker:#d6d3d1;--hx-gap:#f3f1ed;--hx-ease:cubic-bezier(.22, 1, .36, 1);--hx-mono:var(--font-geist-mono), ui-monospace, monospace;background:var(--hx-page);min-height:100vh;color:var(--hx-ink);font-family:var(--font-geist-sans), ui-sans-serif, sans-serif;font-size:15px;line-height:24px;overflow-x:clip}.hx a{color:inherit}.hx a:focus-visible,.hx button:focus-visible,.hx textarea:focus-visible{outline:2px solid var(--hx-ink);outline-offset:2px;border-radius:6px}.hx-shell{max-width:1100px;margin:0 auto;padding:0 32px 96px}.hx-top{align-items:center;height:64px;display:flex}.hx-logo{letter-spacing:-.01em;font-size:18px;font-weight:650;text-decoration:none}.hx-grid{grid-template-columns:164px minmax(0,640px);column-gap:48px;display:grid}.hx-head{grid-column:2;margin-bottom:40px;padding-top:48px}.hx-h1{letter-spacing:-.02em;margin:0;font-size:32px;font-weight:650;line-height:38px}.hx-record{font-family:var(--hx-mono);color:var(--hx-faint);margin:10px 0 0;font-size:12px;font-weight:500;line-height:17px}.hx-lead{color:var(--hx-soft);margin:14px 0 0;font-size:16px;line-height:25px}.hx-lead a,.hx-body a{text-decoration:underline;-webkit-text-decoration-color:var(--hx-strong);text-decoration-color:var(--hx-strong);text-underline-offset:3px}.hx-lead a:hover,.hx-body a:hover{-webkit-text-decoration-color:var(--hx-ink);text-decoration-color:var(--hx-ink)}.hx-log{color:var(--hx-ink);text-decoration:underline;-webkit-text-decoration-color:var(--hx-marker);text-decoration-color:var(--hx-marker);text-underline-offset:3px;margin-top:12px;font-size:15px;line-height:22px;display:inline-block}.hx-log:hover{-webkit-text-decoration-color:var(--hx-ink);text-decoration-color:var(--hx-ink)}.hx-index{grid-area:1/1/span 2}.hx-index-inner{padding-top:48px;position:sticky;top:96px}.hx-index-year{margin:0 0 4px;font-size:13px;font-weight:600;line-height:18px}.hx-index-year+ul{margin:0 0 16px}.hx-index ul{padding:0;list-style:none}.hx-index-month{min-height:28px;font-family:var(--hx-mono);color:var(--hx-faint);transition:color .12s var(--hx-ease);justify-content:space-between;align-items:flex-start;gap:8px;padding:5px 0;font-size:12px;line-height:16px;text-decoration:none;display:flex}.hx-index-month:hover,.hx-index-month[data-active=true]{color:var(--hx-ink)}.hx-index-count{margin-inline-start:auto}.hx-index-rule{background:var(--hx-border);width:64px;height:1px;margin:6px 0 10px}.hx-cards{grid-template-columns:repeat(2,10px);justify-content:end;gap:3px;width:34px;padding-top:4px;display:grid}.hx-card{background:var(--hx-surface);border:1px solid var(--hx-marker);width:10px;height:8px;transition:border-color .12s var(--hx-ease);border-radius:2px}.hx-index-month[data-active=true] .hx-card{border-color:var(--hx-faint)}.hx-index-month .hx-card[data-active=true]{border-color:var(--hx-ink)}.hx-mindex{display:none}.hx-col{grid-column:2;min-width:0}.hx-month-h{font-family:var(--hx-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--hx-faint);border-bottom:1px solid var(--hx-border);margin:0;padding:8px 0;font-size:12px;font-weight:600;line-height:17px}.hx-month+.hx-month{margin-top:32px}.hx-month,.hx-day,.hx-post{scroll-margin-top:24px}.hx-post{border-bottom:1px solid var(--hx-border);padding:28px 0 32px}.hx-meta{font-family:var(--hx-mono);color:var(--hx-soft);flex-wrap:wrap;align-items:baseline;column-gap:12px;margin:0;font-size:12px;line-height:17px;display:flex}.hx-num{width:40px;color:var(--hx-soft);flex:none;font-size:11px;font-weight:600;line-height:16px}.hx-date{text-transform:uppercase;font-weight:500}.hx-ver{color:var(--hx-ink);font-weight:600}.hx-title{margin:8px 0 0;font-size:20px;font-weight:600;line-height:27px}.hx-body{margin-top:12px}.hx-body p{margin:0}.hx-body p+p{margin-top:12px}.hx-day{border-bottom:1px solid var(--hx-border);padding-top:28px}.hx-day-h{font-family:var(--hx-mono);text-transform:uppercase;color:var(--hx-soft);align-items:baseline;gap:12px;margin:0 0 4px;font-size:12px;font-weight:600;line-height:17px;display:flex}.hx-day-h span{text-transform:none;color:var(--hx-soft);font-weight:500}.hx-day .hx-post{padding:20px 0}.hx-day .hx-post:last-child{border-bottom:0;padding-bottom:32px}.hx-gap{background:var(--hx-gap);border-radius:16px;margin:48px 0;padding:20px}.hx-gap-h{font-family:var(--hx-mono);text-transform:uppercase;color:var(--hx-soft);margin:0;font-size:12px;font-weight:600;line-height:17px}.hx-gap p{color:var(--hx-soft);margin:6px 0 0}.hx-thread{margin-top:20px;border-inline-start:1px solid var(--hx-border);margin-inline-start:20px;padding-inline-start:16px}.hx-toggle{cursor:pointer;min-height:24px;font:inherit;color:var(--hx-soft);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:500;line-height:18px;display:inline-flex}.hx-toggle:hover{color:var(--hx-ink)}@media (pointer:coarse){.hx-toggle{min-height:32px}}.hx-toggle:disabled{cursor:default;color:var(--hx-faint)}.hx-toggle-n{font-family:var(--hx-mono);color:var(--hx-faint);font-size:12px}.hx-toggle svg{width:14px;height:14px}.hx-thread-status{color:var(--hx-faint);margin-inline-start:8px;font-size:12px;line-height:17px}.hx-retry{font:inherit;text-underline-offset:3px;color:var(--hx-soft);cursor:pointer;background:0 0;border:0;margin-inline-start:6px;padding:0;font-size:12px;text-decoration:underline}.hx-panel{transition:grid-template-rows .16s var(--hx-ease);grid-template-rows:0fr;display:grid}.hx-panel[data-open=true]{grid-template-rows:1fr}.hx-panel>div{min-height:0;overflow:hidden}.hx-panel-inner{padding:8px 0 4px}.hx-comments{margin:0;padding:0;list-style:none}.hx-comment{padding:10px 0}.hx-comment+.hx-comment{border-top:1px solid var(--hx-border)}.hx-cmeta{color:var(--hx-faint);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;line-height:17px;display:flex}.hx-cname{color:var(--hx-ink);font-weight:600}.hx-badge{border:1px solid var(--hx-strong);height:20px;font-family:var(--hx-mono);color:var(--hx-soft);border-radius:999px;align-items:center;padding:0 7px;font-size:10px;font-weight:600;line-height:14px;display:inline-flex}.hx-cbody{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;font-size:14px;line-height:22px}.hx-action{font:inherit;color:var(--hx-faint);cursor:pointer;background:0 0;border:0;margin-inline-start:auto;padding:0;font-size:12px}.hx-action:hover{color:var(--hx-ink);text-underline-offset:3px;text-decoration:underline}.hx-none{color:var(--hx-soft);margin:0;font-size:14px;line-height:22px}.hx-rule{color:var(--hx-soft);margin:10px 0 12px;font-size:12px;line-height:17px}.hx-pill{background:var(--hx-ink);height:36px;color:var(--hx-surface);font:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:600;line-height:18px;display:inline-flex}.hx-pill:disabled{opacity:.55;cursor:default}.hx-composer{gap:8px;display:grid}.hx-composer-name{color:var(--hx-ink);font-size:12px;font-weight:600;line-height:17px}.hx-textarea{resize:vertical;box-sizing:border-box;border:1px solid var(--hx-marker);background:var(--hx-surface);width:100%;min-height:88px;color:var(--hx-ink);font:inherit;border-radius:12px;padding:10px 12px;font-size:14px;line-height:21px}.hx-textarea::placeholder{color:var(--hx-faint)}.hx-composer-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hx-composer-note{color:var(--hx-faint);font-size:12px;line-height:17px}.hx-error{color:#b91c1c;margin:0;font-size:12px;line-height:17px}@media (max-width:960px){.hx-shell{padding:0 16px 72px}.hx-grid{display:block}.hx-index{display:none}.hx-head{margin-bottom:20px;padding-top:28px}.hx-h1{font-size:28px;line-height:34px}.hx-title{font-size:19px;line-height:25px}.hx-mindex{font-family:var(--hx-mono);margin:16px 0 12px;font-size:12px;line-height:16px;display:block}.hx-mindex p{flex-wrap:wrap;align-items:center;column-gap:14px;margin:0;display:flex}.hx-mindex b{width:40px;color:var(--hx-ink);font-weight:600}.hx-mindex a{min-height:32px;color:var(--hx-soft);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.hx-mindex a span{color:var(--hx-faint)}.hx-gap{margin:36px 0}.hx-thread{margin-inline-start:12px}}@media (prefers-reduced-motion:reduce){.hx-panel,.hx-card,.hx-index-month{transition:none}}
